@verdocs/web-sdk 5.0.75 → 5.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (376) hide show
  1. package/dist/cjs/{Datastore-Dn_pL6x4.js → Datastore-CIzsoGWH.js} +7 -6
  2. package/dist/cjs/Datastore-CIzsoGWH.js.map +1 -0
  3. package/dist/cjs/index-Be9PlTB7.js +10 -10
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/verdocs-build.cjs.entry.js +1 -1
  6. package/dist/cjs/verdocs-build.cjs.entry.js.map +1 -1
  7. package/dist/cjs/verdocs-build.entry.cjs.js.map +1 -1
  8. package/dist/cjs/verdocs-button.verdocs-help-icon.verdocs-text-input.entry.cjs.js.map +1 -0
  9. package/dist/cjs/verdocs-button_3.cjs.entry.js +177 -0
  10. package/dist/cjs/verdocs-button_3.cjs.entry.js.map +1 -0
  11. package/dist/cjs/verdocs-checkbox.verdocs-component-error.verdocs-loader.verdocs-select-input.verdocs-template-field-properties.entry.cjs.js.map +1 -0
  12. package/dist/cjs/{verdocs-checkbox_6.cjs.entry.js → verdocs-checkbox_5.cjs.entry.js} +3 -91
  13. package/dist/{verdocs-web-sdk/verdocs-checkbox.verdocs-component-error.verdocs-loader.verdocs-select-input.verdocs-template-field-properties.verdocs-text-input.entry.esm.js.map → cjs/verdocs-checkbox_5.cjs.entry.js.map} +1 -1
  14. package/dist/cjs/verdocs-contact-picker.cjs.entry.js +7 -3
  15. package/dist/cjs/verdocs-contact-picker.cjs.entry.js.map +1 -1
  16. package/dist/cjs/verdocs-contact-picker.entry.cjs.js.map +1 -1
  17. package/dist/cjs/verdocs-envelope-recipient-link.verdocs-envelope-update-recipient.entry.cjs.js.map +1 -0
  18. package/dist/cjs/{verdocs-envelope-recipient-link.cjs.entry.js → verdocs-envelope-recipient-link_2.cjs.entry.js} +91 -4
  19. package/dist/cjs/verdocs-envelope-recipient-link_2.cjs.entry.js.map +1 -0
  20. package/dist/cjs/verdocs-envelope-recipient-summary.cjs.entry.js +1 -1
  21. package/dist/cjs/verdocs-envelope-sidebar.cjs.entry.js +51 -1
  22. package/dist/cjs/verdocs-envelope-sidebar.cjs.entry.js.map +1 -1
  23. package/dist/cjs/verdocs-envelope-sidebar.entry.cjs.js.map +1 -1
  24. package/dist/cjs/verdocs-field-attachment_13.cjs.entry.js +2 -2
  25. package/dist/cjs/verdocs-field-attachment_13.cjs.entry.js.map +1 -1
  26. package/dist/cjs/verdocs-field-payment.cjs.entry.js +1 -1
  27. package/dist/cjs/verdocs-kba-dialog_3.cjs.entry.js +1 -1
  28. package/dist/cjs/verdocs-menu-panel_2.cjs.entry.js +1 -1
  29. package/dist/cjs/verdocs-preview.verdocs-send.verdocs-template-attachments.verdocs-template-build-tabs.verdocs-template-fields.verdocs-template-roles.verdocs-template-settings.entry.cjs.js.map +1 -1
  30. package/dist/cjs/verdocs-preview_7.cjs.entry.js +1 -3
  31. package/dist/cjs/verdocs-preview_7.cjs.entry.js.map +1 -1
  32. package/dist/cjs/verdocs-radio-button.cjs.entry.js +1 -1
  33. package/dist/cjs/verdocs-radio-button.cjs.entry.js.map +1 -1
  34. package/dist/cjs/verdocs-radio-button.entry.cjs.js.map +1 -1
  35. package/dist/cjs/verdocs-sign.cjs.entry.js +1 -1
  36. package/dist/cjs/verdocs-template-document-page_2.cjs.entry.js +1 -1
  37. package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
  38. package/dist/collection/collection-manifest.json +1 -0
  39. package/dist/collection/components/controls/verdocs-radio-button/verdocs-radio-button.css +2 -2
  40. package/dist/collection/components/embeds/verdocs-build/verdocs-build.js +4 -4
  41. package/dist/collection/components/embeds/verdocs-build/verdocs-build.js.map +1 -1
  42. package/dist/collection/components/embeds/verdocs-send/verdocs-send.js +8 -10
  43. package/dist/collection/components/embeds/verdocs-send/verdocs-send.js.map +1 -1
  44. package/dist/collection/components/envelopes/verdocs-envelope-recipient-link/verdocs-envelope-recipient-link.js +1 -1
  45. package/dist/collection/components/envelopes/verdocs-envelope-recipient-link/verdocs-envelope-recipient-link.js.map +1 -1
  46. package/dist/collection/components/envelopes/verdocs-envelope-sidebar/verdocs-envelope-sidebar.js +52 -0
  47. package/dist/collection/components/envelopes/verdocs-envelope-sidebar/verdocs-envelope-sidebar.js.map +1 -1
  48. package/dist/collection/components/envelopes/verdocs-envelope-update-recipient/verdocs-envelope-update-recipient.css +96 -0
  49. package/dist/collection/components/envelopes/verdocs-envelope-update-recipient/verdocs-envelope-update-recipient.js +224 -0
  50. package/dist/collection/components/envelopes/verdocs-envelope-update-recipient/verdocs-envelope-update-recipient.js.map +1 -0
  51. package/dist/collection/components/fields/verdocs-field-radio/verdocs-field-radio.css +2 -2
  52. package/dist/collection/utils/Datastore.js +2 -2
  53. package/dist/collection/utils/Datastore.js.map +1 -1
  54. package/dist/components/index.js +2 -0
  55. package/dist/components/index.js.map +1 -1
  56. package/dist/components/{p-CWHHlD3o.js → p-B3jMBr0M.js} +9 -5
  57. package/dist/components/p-B3jMBr0M.js.map +1 -0
  58. package/dist/components/{p-Cn4wVEX4.js → p-B8nK0hJl.js} +4 -4
  59. package/dist/components/{p-Cn4wVEX4.js.map → p-B8nK0hJl.js.map} +1 -1
  60. package/dist/components/{p-DgfjnZPa.js → p-BGMd4wA7.js} +4 -4
  61. package/dist/components/{p-DgfjnZPa.js.map → p-BGMd4wA7.js.map} +1 -1
  62. package/dist/components/{p-03kDzdlZ.js → p-BHKb3X7a.js} +3 -3
  63. package/dist/components/{p-03kDzdlZ.js.map → p-BHKb3X7a.js.map} +1 -1
  64. package/dist/components/{p-CqQzEyUV.js → p-Bb2F00K4.js} +4 -4
  65. package/dist/components/{p-CqQzEyUV.js.map → p-Bb2F00K4.js.map} +1 -1
  66. package/dist/components/{p-z0ZD30Bi.js → p-BwIyL1sF.js} +4 -4
  67. package/dist/components/{p-z0ZD30Bi.js.map → p-BwIyL1sF.js.map} +1 -1
  68. package/dist/components/{p-Dw5jTBu3.js → p-C2Fb8G6A.js} +4 -4
  69. package/dist/components/{p-Dw5jTBu3.js.map → p-C2Fb8G6A.js.map} +1 -1
  70. package/dist/components/{p-IcjPGPO7.js → p-CPRS8f3I.js} +3 -3
  71. package/dist/components/{p-IcjPGPO7.js.map → p-CPRS8f3I.js.map} +1 -1
  72. package/dist/components/{p-CNJfehtH.js → p-Crehnwtj.js} +4 -4
  73. package/dist/components/{p-CNJfehtH.js.map → p-Crehnwtj.js.map} +1 -1
  74. package/dist/components/{p-B8HdsDVX.js → p-CunjhIft.js} +3 -3
  75. package/dist/components/{p-B8HdsDVX.js.map → p-CunjhIft.js.map} +1 -1
  76. package/dist/components/{p-CDTU_UJD.js → p-D3n1gA61.js} +5 -5
  77. package/dist/components/p-D3n1gA61.js.map +1 -0
  78. package/dist/components/{p-iwNYe5a0.js → p-DB-CFkUZ.js} +4 -4
  79. package/dist/components/{p-iwNYe5a0.js.map → p-DB-CFkUZ.js.map} +1 -1
  80. package/dist/components/{p-Cue-TDgY.js → p-DDAZR40U.js} +3 -3
  81. package/dist/components/{p-Cue-TDgY.js.map → p-DDAZR40U.js.map} +1 -1
  82. package/dist/components/{p-Cfx8TNcj.js → p-DGRiUZlM.js} +15 -15
  83. package/dist/components/{p-Cfx8TNcj.js.map → p-DGRiUZlM.js.map} +1 -1
  84. package/dist/components/{p-CpHTrnj5.js → p-DGiDigbo.js} +4 -6
  85. package/dist/components/p-DGiDigbo.js.map +1 -0
  86. package/dist/components/{p-B6IuryK-.js → p-DQh221R1.js} +4 -4
  87. package/dist/components/{p-B6IuryK-.js.map → p-DQh221R1.js.map} +1 -1
  88. package/dist/components/{p-BPEZpcEQ.js → p-D_x2HuZp.js} +4 -4
  89. package/dist/components/{p-BPEZpcEQ.js.map → p-D_x2HuZp.js.map} +1 -1
  90. package/dist/components/{p-C_IIZj49.js → p-DmsV595e.js} +8 -7
  91. package/dist/components/p-DmsV595e.js.map +1 -0
  92. package/dist/components/p-GUGCYQ6F.js +138 -0
  93. package/dist/components/p-GUGCYQ6F.js.map +1 -0
  94. package/dist/components/{p-De7UWCgq.js → p-WhDWrMQm.js} +4 -4
  95. package/dist/components/{p-De7UWCgq.js.map → p-WhDWrMQm.js.map} +1 -1
  96. package/dist/components/{p-iOb94GB3.js → p-X6ujIO0j.js} +3 -3
  97. package/dist/components/{p-iOb94GB3.js.map → p-X6ujIO0j.js.map} +1 -1
  98. package/dist/components/{p-B6hVXdpp.js → p-XHSVTLB0.js} +4 -4
  99. package/dist/components/{p-B6hVXdpp.js.map → p-XHSVTLB0.js.map} +1 -1
  100. package/dist/components/{p-C3_yeGdH.js → p-dIi8HYZ5.js} +3 -3
  101. package/dist/components/{p-C3_yeGdH.js.map → p-dIi8HYZ5.js.map} +1 -1
  102. package/dist/components/{p-eiHT7SZQ.js → p-kaKbklxN.js} +15 -15
  103. package/dist/components/{p-eiHT7SZQ.js.map → p-kaKbklxN.js.map} +1 -1
  104. package/dist/components/{p-BqWxusTA.js → p-ke4RFlpQ.js} +14 -14
  105. package/dist/components/{p-BqWxusTA.js.map → p-ke4RFlpQ.js.map} +1 -1
  106. package/dist/components/verdocs-build.js +22 -22
  107. package/dist/components/verdocs-build.js.map +1 -1
  108. package/dist/components/verdocs-contact-picker.js +1 -1
  109. package/dist/components/verdocs-envelope-recipient-link.js +1 -1
  110. package/dist/components/verdocs-envelope-recipient-summary.js +1 -1
  111. package/dist/components/verdocs-envelope-sidebar.js +65 -8
  112. package/dist/components/verdocs-envelope-sidebar.js.map +1 -1
  113. package/dist/components/verdocs-envelope-update-recipient.d.ts +11 -0
  114. package/dist/components/verdocs-envelope-update-recipient.js +9 -0
  115. package/dist/components/verdocs-envelope-update-recipient.js.map +1 -0
  116. package/dist/components/verdocs-field-attachment.js +1 -1
  117. package/dist/components/verdocs-field-checkbox.js +1 -1
  118. package/dist/components/verdocs-field-date.js +1 -1
  119. package/dist/components/verdocs-field-dropdown.js +1 -1
  120. package/dist/components/verdocs-field-initial.js +1 -1
  121. package/dist/components/verdocs-field-payment.js +2 -2
  122. package/dist/components/verdocs-field-radio.js +1 -1
  123. package/dist/components/verdocs-field-signature.js +1 -1
  124. package/dist/components/verdocs-field-textarea.js +1 -1
  125. package/dist/components/verdocs-field-textbox.js +1 -1
  126. package/dist/components/verdocs-field-timestamp.js +1 -1
  127. package/dist/components/verdocs-preview.js +1 -1
  128. package/dist/components/verdocs-radio-button.js +1 -1
  129. package/dist/components/verdocs-radio-button.js.map +1 -1
  130. package/dist/components/verdocs-send.js +1 -1
  131. package/dist/components/verdocs-sign.js +2 -2
  132. package/dist/components/verdocs-template-attachments.js +1 -1
  133. package/dist/components/verdocs-template-build-tabs.js +1 -1
  134. package/dist/components/verdocs-template-document-page.js +1 -1
  135. package/dist/components/verdocs-template-field-properties.js +1 -1
  136. package/dist/components/verdocs-template-fields.js +1 -1
  137. package/dist/components/verdocs-template-role-properties.js +1 -1
  138. package/dist/components/verdocs-template-roles.js +1 -1
  139. package/dist/components/verdocs-template-settings.js +1 -1
  140. package/dist/components/verdocs-view.js +1 -1
  141. package/dist/custom-elements.json +21 -0
  142. package/dist/esm/{Datastore-C_IIZj49.js → Datastore-DmsV595e.js} +8 -7
  143. package/dist/esm/Datastore-DmsV595e.js.map +1 -0
  144. package/dist/esm/index-CF7i8guW.js +10 -10
  145. package/dist/esm/loader.js +1 -1
  146. package/dist/esm/verdocs-build.entry.js +1 -1
  147. package/dist/esm/verdocs-build.entry.js.map +1 -1
  148. package/dist/esm/verdocs-button.verdocs-help-icon.verdocs-text-input.entry.js.map +1 -0
  149. package/dist/esm/verdocs-button_3.entry.js +173 -0
  150. package/dist/esm/verdocs-button_3.entry.js.map +1 -0
  151. package/dist/esm/verdocs-checkbox.verdocs-component-error.verdocs-loader.verdocs-select-input.verdocs-template-field-properties.entry.js.map +1 -0
  152. package/dist/esm/{verdocs-checkbox_6.entry.js → verdocs-checkbox_5.entry.js} +4 -91
  153. package/dist/esm/verdocs-checkbox_5.entry.js.map +1 -0
  154. package/dist/esm/verdocs-contact-picker.entry.js +7 -3
  155. package/dist/esm/verdocs-contact-picker.entry.js.map +1 -1
  156. package/dist/esm/verdocs-envelope-recipient-link.verdocs-envelope-update-recipient.entry.js.map +1 -0
  157. package/dist/esm/{verdocs-envelope-recipient-link.entry.js → verdocs-envelope-recipient-link_2.entry.js} +91 -5
  158. package/dist/esm/verdocs-envelope-recipient-link_2.entry.js.map +1 -0
  159. package/dist/esm/verdocs-envelope-recipient-summary.entry.js +1 -1
  160. package/dist/esm/verdocs-envelope-sidebar.entry.js +52 -2
  161. package/dist/esm/verdocs-envelope-sidebar.entry.js.map +1 -1
  162. package/dist/esm/verdocs-field-attachment_13.entry.js +2 -2
  163. package/dist/esm/verdocs-field-attachment_13.entry.js.map +1 -1
  164. package/dist/esm/verdocs-field-payment.entry.js +1 -1
  165. package/dist/esm/verdocs-kba-dialog_3.entry.js +1 -1
  166. package/dist/esm/verdocs-menu-panel_2.entry.js +1 -1
  167. package/dist/esm/verdocs-preview.verdocs-send.verdocs-template-attachments.verdocs-template-build-tabs.verdocs-template-fields.verdocs-template-roles.verdocs-template-settings.entry.js.map +1 -1
  168. package/dist/esm/verdocs-preview_7.entry.js +1 -3
  169. package/dist/esm/verdocs-preview_7.entry.js.map +1 -1
  170. package/dist/esm/verdocs-radio-button.entry.js +1 -1
  171. package/dist/esm/verdocs-radio-button.entry.js.map +1 -1
  172. package/dist/esm/verdocs-sign.entry.js +1 -1
  173. package/dist/esm/verdocs-template-document-page_2.entry.js +1 -1
  174. package/dist/esm/verdocs-web-sdk.js +1 -1
  175. package/dist/esm-es5/Datastore-DmsV595e.js +2 -0
  176. package/dist/esm-es5/Datastore-DmsV595e.js.map +1 -0
  177. package/dist/esm-es5/index-CF7i8guW.js +1 -1
  178. package/dist/esm-es5/loader.js +1 -1
  179. package/dist/esm-es5/verdocs-build.entry.js +1 -1
  180. package/dist/esm-es5/verdocs-build.entry.js.map +1 -1
  181. package/dist/esm-es5/verdocs-button.verdocs-help-icon.verdocs-text-input.entry.js.map +1 -0
  182. package/dist/esm-es5/verdocs-button_3.entry.js +2 -0
  183. package/dist/esm-es5/verdocs-button_3.entry.js.map +1 -0
  184. package/dist/esm-es5/verdocs-checkbox.verdocs-component-error.verdocs-loader.verdocs-select-input.verdocs-template-field-properties.entry.js.map +1 -0
  185. package/dist/esm-es5/verdocs-checkbox_5.entry.js +2 -0
  186. package/dist/esm-es5/verdocs-checkbox_5.entry.js.map +1 -0
  187. package/dist/esm-es5/verdocs-contact-picker.entry.js +1 -1
  188. package/dist/esm-es5/verdocs-contact-picker.entry.js.map +1 -1
  189. package/dist/esm-es5/verdocs-envelope-recipient-link.verdocs-envelope-update-recipient.entry.js.map +1 -0
  190. package/dist/esm-es5/verdocs-envelope-recipient-link_2.entry.js +2 -0
  191. package/dist/esm-es5/verdocs-envelope-recipient-link_2.entry.js.map +1 -0
  192. package/dist/esm-es5/verdocs-envelope-recipient-summary.entry.js +1 -1
  193. package/dist/esm-es5/verdocs-envelope-sidebar.entry.js +1 -1
  194. package/dist/esm-es5/verdocs-envelope-sidebar.entry.js.map +1 -1
  195. package/dist/esm-es5/verdocs-field-attachment_13.entry.js +1 -1
  196. package/dist/esm-es5/verdocs-field-attachment_13.entry.js.map +1 -1
  197. package/dist/esm-es5/verdocs-field-payment.entry.js +1 -1
  198. package/dist/esm-es5/verdocs-kba-dialog_3.entry.js +1 -1
  199. package/dist/esm-es5/verdocs-menu-panel_2.entry.js +1 -1
  200. package/dist/esm-es5/verdocs-preview.verdocs-send.verdocs-template-attachments.verdocs-template-build-tabs.verdocs-template-fields.verdocs-template-roles.verdocs-template-settings.entry.js.map +1 -1
  201. package/dist/esm-es5/verdocs-preview_7.entry.js +2 -2
  202. package/dist/esm-es5/verdocs-preview_7.entry.js.map +1 -1
  203. package/dist/esm-es5/verdocs-radio-button.entry.js +1 -1
  204. package/dist/esm-es5/verdocs-radio-button.entry.js.map +1 -1
  205. package/dist/esm-es5/verdocs-sign.entry.js +1 -1
  206. package/dist/esm-es5/verdocs-template-document-page_2.entry.js +1 -1
  207. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  208. package/dist/types/components/embeds/verdocs-build/verdocs-build.d.ts +2 -2
  209. package/dist/types/components/embeds/verdocs-send/verdocs-send.d.ts +3 -3
  210. package/dist/types/components/envelopes/verdocs-envelope-sidebar/verdocs-envelope-sidebar.d.ts +3 -1
  211. package/dist/types/components/envelopes/verdocs-envelope-update-recipient/verdocs-envelope-update-recipient.d.ts +50 -0
  212. package/dist/types/components.d.ts +85 -8
  213. package/dist/types/utils/Datastore.d.ts +1 -1
  214. package/dist/verdocs-web-sdk/{p-a2ba1316.system.entry.js → p-0134d663.system.entry.js} +2 -2
  215. package/dist/verdocs-web-sdk/p-0134d663.system.entry.js.map +1 -0
  216. package/dist/verdocs-web-sdk/p-1c66bd2c.system.entry.js +2 -0
  217. package/dist/verdocs-web-sdk/p-1c66bd2c.system.entry.js.map +1 -0
  218. package/dist/verdocs-web-sdk/p-3aabadbe.entry.js +2 -0
  219. package/dist/verdocs-web-sdk/{p-0bb8015d.entry.js.map → p-3aabadbe.entry.js.map} +1 -1
  220. package/dist/verdocs-web-sdk/{p-1653b309.system.entry.js → p-4175122c.system.entry.js} +3 -3
  221. package/dist/verdocs-web-sdk/p-4175122c.system.entry.js.map +1 -0
  222. package/dist/verdocs-web-sdk/{p-c8369ea0.entry.js → p-45f59906.entry.js} +2 -2
  223. package/dist/verdocs-web-sdk/p-48299322.entry.js +2 -0
  224. package/dist/verdocs-web-sdk/p-48299322.entry.js.map +1 -0
  225. package/dist/verdocs-web-sdk/{p-4b2b090e.entry.js → p-49522ebb.entry.js} +2 -2
  226. package/dist/verdocs-web-sdk/p-49522ebb.entry.js.map +1 -0
  227. package/dist/verdocs-web-sdk/p-50c4a3da.system.entry.js +2 -0
  228. package/dist/verdocs-web-sdk/p-50c4a3da.system.entry.js.map +1 -0
  229. package/dist/verdocs-web-sdk/{p-1d0463ad.system.entry.js → p-65a5d2d4.system.entry.js} +2 -2
  230. package/dist/verdocs-web-sdk/p-69c97fa9.system.entry.js +4 -0
  231. package/dist/verdocs-web-sdk/p-69c97fa9.system.entry.js.map +1 -0
  232. package/dist/verdocs-web-sdk/p-759b5749.entry.js +2 -0
  233. package/dist/verdocs-web-sdk/p-759b5749.entry.js.map +1 -0
  234. package/dist/verdocs-web-sdk/{p-894e2058.entry.js → p-76215a73.entry.js} +2 -2
  235. package/dist/verdocs-web-sdk/{p-caf258c9.entry.js → p-791184e5.entry.js} +2 -2
  236. package/dist/verdocs-web-sdk/p-791184e5.entry.js.map +1 -0
  237. package/dist/verdocs-web-sdk/p-832e4346.entry.js +2 -0
  238. package/dist/verdocs-web-sdk/p-832e4346.entry.js.map +1 -0
  239. package/dist/verdocs-web-sdk/{p-821becae.system.entry.js → p-8c98a765.system.entry.js} +2 -2
  240. package/dist/verdocs-web-sdk/p-9f4c393c.system.entry.js +2 -0
  241. package/dist/verdocs-web-sdk/p-9f4c393c.system.entry.js.map +1 -0
  242. package/dist/verdocs-web-sdk/p-BH-YVoIR.system.js.map +1 -0
  243. package/dist/verdocs-web-sdk/p-BXdHDPn2.system.js.map +1 -0
  244. package/dist/verdocs-web-sdk/p-BsWaGIkx.system.js.map +1 -0
  245. package/dist/verdocs-web-sdk/p-C2JOLTNG.system.js.map +1 -0
  246. package/dist/verdocs-web-sdk/{p-CWs7NRzr.system.js.map → p-CC3tLap5.system.js.map} +1 -1
  247. package/dist/verdocs-web-sdk/{p-DZurf5no.system.js.map → p-CYHTkSId.system.js.map} +1 -1
  248. package/dist/verdocs-web-sdk/p-CmnBGerV.system.js +2 -0
  249. package/dist/verdocs-web-sdk/p-CmnBGerV.system.js.map +1 -0
  250. package/dist/verdocs-web-sdk/p-CwXSduhy.system.js +1 -1
  251. package/dist/verdocs-web-sdk/{p-Cz3XayQm.system.js.map → p-CzcrfRov.system.js.map} +1 -1
  252. package/dist/verdocs-web-sdk/p-Czs72bg4.system.js.map +1 -0
  253. package/dist/verdocs-web-sdk/p-DAWcoDTu.system.js.map +1 -0
  254. package/dist/verdocs-web-sdk/{p-DRzyvgiA.system.js.map → p-DM4F2Fmu.system.js.map} +1 -1
  255. package/dist/verdocs-web-sdk/p-DOuKoKCI.system.js.map +1 -0
  256. package/dist/verdocs-web-sdk/{p-DKkhksIM.system.js.map → p-DR2NwM3E.system.js.map} +1 -1
  257. package/dist/verdocs-web-sdk/p-DmsV595e.js +2 -0
  258. package/dist/verdocs-web-sdk/p-DmsV595e.js.map +1 -0
  259. package/dist/verdocs-web-sdk/p-DyIimYwQ.system.js.map +1 -0
  260. package/dist/verdocs-web-sdk/{p-DjtXr8Iv.system.js.map → p-QrafNGv0.system.js.map} +1 -1
  261. package/dist/verdocs-web-sdk/{p-e5f90a18.system.entry.js → p-a224a4cc.system.entry.js} +2 -2
  262. package/dist/verdocs-web-sdk/{p-6d8c780d.system.entry.js → p-a37e8f84.system.entry.js} +2 -2
  263. package/dist/verdocs-web-sdk/{p-d16c03d8.system.entry.js → p-ac05c34d.system.entry.js} +2 -2
  264. package/dist/verdocs-web-sdk/p-ac60c75d.entry.js +2 -0
  265. package/dist/verdocs-web-sdk/p-ac60c75d.entry.js.map +1 -0
  266. package/dist/verdocs-web-sdk/{p-524c1693.system.entry.js → p-bec52dd1.system.entry.js} +2 -2
  267. package/dist/verdocs-web-sdk/p-c16b24c0.system.entry.js +2 -0
  268. package/dist/verdocs-web-sdk/p-c16b24c0.system.entry.js.map +1 -0
  269. package/dist/verdocs-web-sdk/{p-5d4a9e54.entry.js → p-d0b7bbc5.entry.js} +3 -3
  270. package/dist/verdocs-web-sdk/p-d0b7bbc5.entry.js.map +1 -0
  271. package/dist/verdocs-web-sdk/{p-bb96a9af.entry.js → p-d8b36d95.entry.js} +2 -2
  272. package/dist/verdocs-web-sdk/{p-5355587b.entry.js → p-e15b7c92.entry.js} +2 -2
  273. package/dist/verdocs-web-sdk/{p-a231248c.system.entry.js → p-e63c903a.system.entry.js} +2 -2
  274. package/dist/verdocs-web-sdk/p-e63c903a.system.entry.js.map +1 -0
  275. package/dist/verdocs-web-sdk/p-e8713631.entry.js +3 -0
  276. package/dist/verdocs-web-sdk/p-e8713631.entry.js.map +1 -0
  277. package/dist/verdocs-web-sdk/{p-3b68bc50.entry.js → p-f28a1014.entry.js} +2 -2
  278. package/dist/verdocs-web-sdk/p-f28a1014.entry.js.map +1 -0
  279. package/dist/verdocs-web-sdk/{p-bde78dab.system.entry.js → p-f4a3d054.system.entry.js} +2 -2
  280. package/dist/verdocs-web-sdk/p-f4a3d054.system.entry.js.map +1 -0
  281. package/dist/verdocs-web-sdk/{p-65f4a435.entry.js → p-fb00149a.entry.js} +2 -2
  282. package/dist/verdocs-web-sdk/p-fih-g25U.system.js.map +1 -0
  283. package/dist/verdocs-web-sdk/verdocs-build.entry.esm.js.map +1 -1
  284. package/dist/verdocs-web-sdk/verdocs-button.verdocs-help-icon.verdocs-text-input.entry.esm.js.map +1 -0
  285. package/dist/verdocs-web-sdk/verdocs-checkbox.verdocs-component-error.verdocs-loader.verdocs-select-input.verdocs-template-field-properties.entry.esm.js.map +1 -0
  286. package/dist/verdocs-web-sdk/verdocs-contact-picker.entry.esm.js.map +1 -1
  287. package/dist/verdocs-web-sdk/verdocs-envelope-recipient-link.verdocs-envelope-update-recipient.entry.esm.js.map +1 -0
  288. package/dist/verdocs-web-sdk/verdocs-envelope-sidebar.entry.esm.js.map +1 -1
  289. package/dist/verdocs-web-sdk/verdocs-preview.verdocs-send.verdocs-template-attachments.verdocs-template-build-tabs.verdocs-template-fields.verdocs-template-roles.verdocs-template-settings.entry.esm.js.map +1 -1
  290. package/dist/verdocs-web-sdk/verdocs-radio-button.entry.esm.js.map +1 -1
  291. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  292. package/package.json +3 -3
  293. package/dist/cjs/Datastore-Dn_pL6x4.js.map +0 -1
  294. package/dist/cjs/verdocs-button.verdocs-help-icon.entry.cjs.js.map +0 -1
  295. package/dist/cjs/verdocs-button_2.cjs.entry.js +0 -89
  296. package/dist/cjs/verdocs-button_2.cjs.entry.js.map +0 -1
  297. package/dist/cjs/verdocs-checkbox.verdocs-component-error.verdocs-loader.verdocs-select-input.verdocs-template-field-properties.verdocs-text-input.entry.cjs.js.map +0 -1
  298. package/dist/cjs/verdocs-checkbox_6.cjs.entry.js.map +0 -1
  299. package/dist/cjs/verdocs-envelope-recipient-link.cjs.entry.js.map +0 -1
  300. package/dist/cjs/verdocs-envelope-recipient-link.entry.cjs.js.map +0 -1
  301. package/dist/components/p-CDTU_UJD.js.map +0 -1
  302. package/dist/components/p-CWHHlD3o.js.map +0 -1
  303. package/dist/components/p-C_IIZj49.js.map +0 -1
  304. package/dist/components/p-CpHTrnj5.js.map +0 -1
  305. package/dist/esm/Datastore-C_IIZj49.js.map +0 -1
  306. package/dist/esm/verdocs-button.verdocs-help-icon.entry.js.map +0 -1
  307. package/dist/esm/verdocs-button_2.entry.js +0 -86
  308. package/dist/esm/verdocs-button_2.entry.js.map +0 -1
  309. package/dist/esm/verdocs-checkbox.verdocs-component-error.verdocs-loader.verdocs-select-input.verdocs-template-field-properties.verdocs-text-input.entry.js.map +0 -1
  310. package/dist/esm/verdocs-checkbox_6.entry.js.map +0 -1
  311. package/dist/esm/verdocs-envelope-recipient-link.entry.js.map +0 -1
  312. package/dist/esm-es5/Datastore-C_IIZj49.js +0 -2
  313. package/dist/esm-es5/Datastore-C_IIZj49.js.map +0 -1
  314. package/dist/esm-es5/verdocs-button.verdocs-help-icon.entry.js.map +0 -1
  315. package/dist/esm-es5/verdocs-button_2.entry.js +0 -2
  316. package/dist/esm-es5/verdocs-button_2.entry.js.map +0 -1
  317. package/dist/esm-es5/verdocs-checkbox.verdocs-component-error.verdocs-loader.verdocs-select-input.verdocs-template-field-properties.verdocs-text-input.entry.js.map +0 -1
  318. package/dist/esm-es5/verdocs-checkbox_6.entry.js +0 -2
  319. package/dist/esm-es5/verdocs-checkbox_6.entry.js.map +0 -1
  320. package/dist/esm-es5/verdocs-envelope-recipient-link.entry.js +0 -2
  321. package/dist/esm-es5/verdocs-envelope-recipient-link.entry.js.map +0 -1
  322. package/dist/verdocs-web-sdk/p-03c76a24.system.entry.js +0 -2
  323. package/dist/verdocs-web-sdk/p-03c76a24.system.entry.js.map +0 -1
  324. package/dist/verdocs-web-sdk/p-0bb8015d.entry.js +0 -2
  325. package/dist/verdocs-web-sdk/p-13c9ac73.entry.js +0 -3
  326. package/dist/verdocs-web-sdk/p-13c9ac73.entry.js.map +0 -1
  327. package/dist/verdocs-web-sdk/p-1653b309.system.entry.js.map +0 -1
  328. package/dist/verdocs-web-sdk/p-255c74a9.entry.js +0 -2
  329. package/dist/verdocs-web-sdk/p-255c74a9.entry.js.map +0 -1
  330. package/dist/verdocs-web-sdk/p-2a183b90.system.entry.js +0 -4
  331. package/dist/verdocs-web-sdk/p-2a183b90.system.entry.js.map +0 -1
  332. package/dist/verdocs-web-sdk/p-3b68bc50.entry.js.map +0 -1
  333. package/dist/verdocs-web-sdk/p-3fc4da27.system.entry.js +0 -2
  334. package/dist/verdocs-web-sdk/p-3fc4da27.system.entry.js.map +0 -1
  335. package/dist/verdocs-web-sdk/p-4b2b090e.entry.js.map +0 -1
  336. package/dist/verdocs-web-sdk/p-5018b5b8.entry.js +0 -2
  337. package/dist/verdocs-web-sdk/p-5018b5b8.entry.js.map +0 -1
  338. package/dist/verdocs-web-sdk/p-5d4a9e54.entry.js.map +0 -1
  339. package/dist/verdocs-web-sdk/p-8c9f35ab.system.entry.js +0 -2
  340. package/dist/verdocs-web-sdk/p-8c9f35ab.system.entry.js.map +0 -1
  341. package/dist/verdocs-web-sdk/p-BZkYMpVF.system.js.map +0 -1
  342. package/dist/verdocs-web-sdk/p-Bh0IfLXk.system.js.map +0 -1
  343. package/dist/verdocs-web-sdk/p-BhRjT9GK.system.js.map +0 -1
  344. package/dist/verdocs-web-sdk/p-C4Tt0CYc.system.js.map +0 -1
  345. package/dist/verdocs-web-sdk/p-CMiFaQiI.system.js +0 -2
  346. package/dist/verdocs-web-sdk/p-CMiFaQiI.system.js.map +0 -1
  347. package/dist/verdocs-web-sdk/p-C_IIZj49.js +0 -2
  348. package/dist/verdocs-web-sdk/p-C_IIZj49.js.map +0 -1
  349. package/dist/verdocs-web-sdk/p-DG0Ibgqe.system.js.map +0 -1
  350. package/dist/verdocs-web-sdk/p-Dgk4ByEW.system.js.map +0 -1
  351. package/dist/verdocs-web-sdk/p-EQbSTcUE.system.js.map +0 -1
  352. package/dist/verdocs-web-sdk/p-UTpMOeny.system.js.map +0 -1
  353. package/dist/verdocs-web-sdk/p-a231248c.system.entry.js.map +0 -1
  354. package/dist/verdocs-web-sdk/p-a2ba1316.system.entry.js.map +0 -1
  355. package/dist/verdocs-web-sdk/p-aaf3cb2c.entry.js +0 -2
  356. package/dist/verdocs-web-sdk/p-aaf3cb2c.entry.js.map +0 -1
  357. package/dist/verdocs-web-sdk/p-bde78dab.system.entry.js.map +0 -1
  358. package/dist/verdocs-web-sdk/p-caf258c9.entry.js.map +0 -1
  359. package/dist/verdocs-web-sdk/p-d0bc16f9.entry.js +0 -2
  360. package/dist/verdocs-web-sdk/p-d0bc16f9.entry.js.map +0 -1
  361. package/dist/verdocs-web-sdk/p-eb539d8f.system.entry.js +0 -2
  362. package/dist/verdocs-web-sdk/p-eb539d8f.system.entry.js.map +0 -1
  363. package/dist/verdocs-web-sdk/p-x6a7ykMn.system.js.map +0 -1
  364. package/dist/verdocs-web-sdk/verdocs-button.verdocs-help-icon.entry.esm.js.map +0 -1
  365. package/dist/verdocs-web-sdk/verdocs-envelope-recipient-link.entry.esm.js.map +0 -1
  366. /package/dist/verdocs-web-sdk/{p-c8369ea0.entry.js.map → p-45f59906.entry.js.map} +0 -0
  367. /package/dist/verdocs-web-sdk/{p-1d0463ad.system.entry.js.map → p-65a5d2d4.system.entry.js.map} +0 -0
  368. /package/dist/verdocs-web-sdk/{p-894e2058.entry.js.map → p-76215a73.entry.js.map} +0 -0
  369. /package/dist/verdocs-web-sdk/{p-821becae.system.entry.js.map → p-8c98a765.system.entry.js.map} +0 -0
  370. /package/dist/verdocs-web-sdk/{p-e5f90a18.system.entry.js.map → p-a224a4cc.system.entry.js.map} +0 -0
  371. /package/dist/verdocs-web-sdk/{p-6d8c780d.system.entry.js.map → p-a37e8f84.system.entry.js.map} +0 -0
  372. /package/dist/verdocs-web-sdk/{p-d16c03d8.system.entry.js.map → p-ac05c34d.system.entry.js.map} +0 -0
  373. /package/dist/verdocs-web-sdk/{p-524c1693.system.entry.js.map → p-bec52dd1.system.entry.js.map} +0 -0
  374. /package/dist/verdocs-web-sdk/{p-bb96a9af.entry.js.map → p-d8b36d95.entry.js.map} +0 -0
  375. /package/dist/verdocs-web-sdk/{p-5355587b.entry.js.map → p-e15b7c92.entry.js.map} +0 -0
  376. /package/dist/verdocs-web-sdk/{p-65f4a435.entry.js.map → p-fb00149a.entry.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["verdocsPreviewCss","VerdocsPreview","exports","class_1","hostRef","this","templateListenerId","endpoint","VerdocsEndpoint","getDefault","templateId","loading","template","prototype","disconnectedCallback","unlistenToTemplate","listenToTemplate","Store","subscribe","getTemplate","_this","store","delListener","onTemplateIdChanged","newTemplateId","console","log","componentWillLoad","loadSession","session","concat","e","_a","sdkError","emit","SDKError","message","_b","response","status","_c","data","handlePageRendered","_e","render","h","Host","documents","map","document","pageNumbers","integerSequence","pages","Fragment","pageNumber","pageSize","page_sizes","width","height","template_id","documentId","id","disabled","editable","done","virtualWidth","virtualHeight","onPageRendered","layers","name","type","getRoleNames","roles","role","getRoleIndex","role_name","Math","max","findIndex","verdocsSendCss","editIcon","startIcon","stepIcon","doneIcon","VerdocsSend","class_2","DefaultEndpoint","environment","containerId","random","toString","substring","showPickerForId","sessionContacts","sending","rolesCompleted","recomputeRolesCompleted","reset","onSessionChanged","_endpoint","_session","profile","me","first_name","last_name","email","phone","getOrganizationContacts","then","contacts","__spreadArray","catch","rolesAtLevel","forEach","level","sequence","length","push","__assign","isValidEmail","getSequenceNumbers","sequences","Object","keys","s","sort","a","b","getRolesAtLevel","filter","index","getLevelIcon","class","innerHTML","handleSelectContact","preventDefault","detail","handleClickRole","stopPropagation","handleSend","details","initial_reminder","followup_reminders","recipients","values","beforeSendResult","beforeSend","defaultPrevented","createEnvelope","r","send","envelope_id","envelope","VerdocsToast","error","handleCancel","exit","style","display","levels","rolesAssigned","recipient","allRolesAssigned","sendable","is_sendable","unknown","roleName","formatFullName","elId","roleIndex","rgba","getRGBA","completed","backgroundColor","border","onClick","anchor","onClickAway","onExit","onNext","contactSuggestions","templateRole","onSearchContacts","searchContacts","label","size","variant","verdocsTemplateAttachmentsCss","VerdocsTemplateAttachments","class_3","uploading","progressLabel","progressPercent","showDeleteError","confirmDeleteDocument","handleUploadProgress","percent","handleUpload","file","createTemplateDocument","bind","_l","sent","_k","templateUpdated","event","e_1","_d","handleNext","next","confirmDelete","deleteTemplateDocument","handleDelete","getFileIcon","mime","PdfIcon","JpgIcon","PngIcon","DocIcon","FileIcon","title","PageCountIcon","TrashIcon","showPercent","onFileSelected","heading","showCancel","verdocsTemplateBuildTabsCss","HelpIcon","CopyIcon","STEPS","VerdocsTemplateBuildTabs","class_4","step","onStepChanged","newStep","setStep","tab","stepChanged","copyTemplateId","navigator","clipboard","writeText","duration","warn","canEditRoles","canEditFields","canPreview","fields","selectedStepIndex","indexOf","onSelectTab","selectedTab","tabs","icon","is_public","_f","is_personal","_g","counter","format","Date","_h","created_at","_j","verdocsTemplateFieldsCss","iconTextbox","iconCheck","iconRadio","iconDatepicker","iconSignature","iconInitial","iconTimestamp","iconDropdown","iconAttachment","separator","menuOptions","tooltip","VerdocsTemplateFields","class_5","toolbarTargetId","placing","showMustSelectRole","selectedRoleName","pageHeights","cachedPageInfo","handleKeyDown","ev","key","componentDidRender","interact","dynamicDrop","toolbarTarget","getElementById","toolbarEl","remove","append","componentWillUpdate","find","attachFieldAttributes","pageInfo","field","el","addEventListener","setAttribute","String","xScale","yScale","naturalHeight","page","getFieldId","makeDraggable","draggable","listeners","move","handleMoveField","end","handleMoveEnd","oldX","target","getAttribute","oldY","newX","dx","newY","dy","updateCssTransform","naturalWidth","_m","_o","renderedHeight","clientRect","getBoundingClientRect","parent","parentElement","parentRect","defaultWidth","defaultHeight","left","bottom","newPageNumber","parseInt","min","_p","viewCoordinatesToPageCoordinates","x","y","params","updateField","updatedField","_u","newTemplate","JSON","parse","stringify","fieldIndex","updateTemplate","removeAttribute","removeCssTransform","_q","_r","_s","setControlStyles","e_2","generateFieldName","i","fieldName","some","viewX","viewY","xMax","yMax","floor","handleClickPage","clickedX","offsetX","clickedY","offsetY","cachedPage","coords","document_id","required","validator","default","placeholder","group","settings","multiline","readonly","options","createField","newField","selectableRoles","value","full_name","onSubmit","onInput","option","text","t","module","n","o","getOwnPropertySymbols","getOwnPropertyDescriptor","enumerable","apply","I","arguments","defineProperty","configurable","writable","getOwnPropertyDescriptors","defineProperties","Symbol","iterator","constructor","assign","hasOwnProperty","call","propertyIsEnumerable","Array","isArray","l","from","slice","test","TypeError","window","userAgent","match","w","u","c","d","capture","passive","p","removeEventListener","f","matches","msMatchesSelector","webkitMatchesSelector","g","host","nodeType","parentNode","P","m","v","k","classList","className","replace","R","defaultView","getComputedStyle","currentStyle","DOMMatrix","WebKitCSSMatrix","CSSMatrix","MSCSSMatrix","D","getElementsByTagName","O","scrollingElement","documentElement","X","top","right","innerHeight","innerWidth","Y","M","B","children","jt","ghost","dragged","F","lastElementChild","previousElementSibling","j","nodeName","toUpperCase","clone","E","scrollLeft","scrollTop","clientWidth","scrollWidth","clientHeight","scrollHeight","overflowX","overflowY","body","S","round","_","setTimeout","H","C","Polymer","jQuery","Zepto","dom","cloneNode","T","L","animated","K","getTime","A","captureAnimationState","animation","rect","thisAnimationDuration","fromRect","addAnimationState","removeAnimationState","splice","Number","animateAll","clearTimeout","prevFromRect","prevToRect","toRect","sqrt","pow","animate","animationResetTimer","animationTime","animatingX","animatingY","forRepaintDummy","offsetWidth","easing","N","W","initializeByDefault","z","mount","pluginName","pluginEvent","eventCanceled","cancel","sortable","initializePlugins","defaults","modifyOption","getEventProperties","eventProperties","optionListeners","G","rootEl","targetEl","cloneEl","toEl","fromEl","oldIndex","newIndex","oldDraggableIndex","newDraggableIndex","originalEvent","putSortable","extraEventProperties","charAt","substr","CustomEvent","createEvent","initEvent","bubbles","cancelable","to","item","pullMode","lastPutMode","dispatchEvent","U","evt","q","dragEl","Z","parentEl","$","ghostEl","Q","J","nextEl","tt","lastDownEl","et","nt","cloneHidden","ot","dragStarted","mt","ct","activeSortable","active","it","at","rt","lt","hideGhostForTarget","Xt","unhideGhostForTarget","Yt","cloneNowHidden","cloneNowShown","dispatchSortableEvent","V","st","ut","dt","ht","pt","ft","gt","vt","bt","yt","wt","Dt","Et","St","_t","Ct","Tt","xt","Ot","Mt","At","Nt","It","createElement","Pt","cssText","pointerEvents","kt","paddingLeft","paddingRight","borderLeftWidth","borderRightWidth","marginLeft","marginRight","flexDirection","gridTemplateColumns","split","float","clear","Rt","join","checkPull","pull","checkPut","put","revertClone","stopImmediatePropagation","Bt","touches","clientX","clientY","emptyInsertThreshold","_onDragOver","Ft","_isOutsideThisEl","handle","swapThreshold","invertSwap","invertedSwapThreshold","removeCloneOnHide","direction","ghostClass","chosenClass","dragClass","ignore","preventOnFilter","setData","textContent","dropBubble","dragoverBubble","dataIdAttr","delay","delayOnTouchOnly","touchStartThreshold","devicePixelRatio","forceFallback","fallbackClass","fallbackOnBody","fallbackTolerance","fallbackOffset","supportPointer","nativeDraggable","_onTapStart","get","Ht","onMove","draggedRect","related","relatedRect","willInsertAfter","Lt","Kt","Wt","zt","contains","_getDirection","pointerType","shadowRoot","path","composedPath","checked","button","isContentEditable","tagName","trim","_prepareDragStart","ownerDocument","nextSibling","_lastX","_lastY","_onDrop","_disableDelayedDragEvents","_triggerDragStart","_disableDelayedDrag","_delayedDragTouchMoveHandler","_dragStartTimer","abs","_onTouchMove","_onDragStart","selection","empty","getSelection","removeAllRanges","_dragStarted","_appendGhost","_nulling","_emulateDragOver","elementFromPoint","appendChild","dataTransfer","_hideClone","cloneId","insertBefore","_loopId","setInterval","effectAllowed","_dragStartId","_ignoreWhileAnimating","nextElementSibling","isOwner","axis","revert","dragRect","targetRect","canSort","fromSortable","changed","insertion","_showClone","_offMoveEvents","_offUpEvents","clearInterval","removeChild","save","handleEvent","dropEffect","toArray","src","href","charCodeAt","set","closest","destroy","querySelectorAll","utils","on","off","css","is","extend","throttle","toggleClass","nextTick","cancelNextTick","detectDirection","getChild","expando","create","Gt","Ut","qt","Vt","Zt","$t","Qt","Jt","version","te","pid","ee","ne","oe","scroll","scrollSensitivity","scrollSpeed","scrollFn","vx","vy","layer","bubbleScroll","changedTouches","onSpill","ie","re","startIndex","dragStart","drop","ae","le","se","ce","ue","de","he","pe","fe","ge","sortableIndex","ve","forceAutoScrollFallback","_handleAutoScroll","_handleFallbackAutoScroll","dragOverCompleted","dragOverBubble","nulling","swapClass","dragOverValid","swap","isEqualNode","swapItem","avoidImplicitDeselect","_deselectMultiDrag","_checkKeyDown","_checkKeyUp","selectedClass","multiDragKey","multiDragKeyDown","isMultiDrag","delayStartGlobal","delayEnded","setupClone","showClone","hideClone","dragStartGlobal","multiDrag","dragOver","dragOverAnimationCapture","dragOverAnimationComplete","shiftKey","nullingGlobal","destroyGlobal","shift","select","deselect","multiDragElement","items","clones","oldIndicies","newIndicies","toLowerCase","verdocsTemplateRolesCss","settingsIcon","plusIcon","iconSigner","iconApprover","iconCC","VerdocsTemplateRoles","class_6","showingRoleDialog","sender","dragging","sortableRefs","cleanupSortables","sr","sequenceNumbers","Sortable","onEnd","onChoose","onUnchoose","fromSeq","dataset","toSeq","fromIndex","toIndex","sortableRoles","ras","getRolesAtSequence","renumberRequests","entries","targetSeq","targetOrder","order","updateTemplateRole","Promise","all","__awaiter","__generator","handleSubmit","getSortedRoles","renumberTemplateRoles","targetOrderMinusOne","reduce","acc","seq","rolesUpdated","getNextRoleName","nextNumber","callCreateRole","createTemplateRole","delegator","handleAddRole","handleAddStep","roleNames","nextSequence","autocomplete","onClose","onDelete","verdocsTemplateSettingsCss","MS_PER_DAY","VerdocsTemplateSettings","class_7","visibility","sendReminders","initialReminder","followupReminders","dirty","onCheckedChange"],"sources":["src/components/embeds/verdocs-preview/verdocs-preview.scss?tag=verdocs-preview","src/components/embeds/verdocs-preview/verdocs-preview.tsx","src/utils/Templates.ts","src/components/embeds/verdocs-send/verdocs-send.scss?tag=verdocs-send","src/components/embeds/verdocs-send/verdocs-send.tsx","src/components/templates/verdocs-template-attachments/verdocs-template-attachments.scss?tag=verdocs-template-attachments","src/components/templates/verdocs-template-attachments/verdocs-template-attachments.tsx","src/components/templates/verdocs-template-build-tabs/verdocs-template-build-tabs.scss?tag=verdocs-template-build-tabs","src/components/templates/verdocs-template-build-tabs/verdocs-template-build-tabs.tsx","src/components/templates/verdocs-template-fields/verdocs-template-fields.scss?tag=verdocs-template-fields","src/components/templates/verdocs-template-fields/verdocs-template-fields.tsx","node_modules/sortablejs/Sortable.min.js","src/components/templates/verdocs-template-roles/verdocs-template-roles.scss?tag=verdocs-template-roles","src/components/templates/verdocs-template-roles/verdocs-template-roles.tsx","src/components/templates/verdocs-template-settings/verdocs-template-settings.scss?tag=verdocs-template-settings","src/components/templates/verdocs-template-settings/verdocs-template-settings.tsx"],"sourcesContent":["@import '../../../theme.scss';\n\nverdocs-preview {\n font-family: $verdocs-primary-font;\n display: flex;\n padding: 15px;\n row-gap: 15px;\n min-height: 200px;\n position: relative;\n align-items: center;\n box-sizing: border-box;\n flex-direction: column;\n\n div,\n canvas {\n box-sizing: border-box;\n }\n}\n","import {getTemplate, integerSequence, ITemplate, VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {Event, EventEmitter, Host, Component, Prop, h, State, Fragment, Watch} from '@stencil/core';\nimport {SDKError} from '../../../utils/errors';\nimport {Store} from '../../../utils/Datastore';\n\n/**\n * Display a template preview experience. This will display the template's attached\n * documents with signing fields overlaid on each page. Fields will be color-coded\n * by recipient, and will be read-only (cannot be filled, moved, or altered).\n *\n * ```ts\n * <verdocs-preview\n * templateId={TEMPLATE_ID}\n * onSdkError={({ detail }) => { console.log('SDK error', detail) }\n * />\n * ```\n */\n@Component({\n tag: 'verdocs-preview',\n styleUrl: 'verdocs-preview.scss',\n shadow: false,\n})\nexport class VerdocsPreview {\n private templateListenerId = null;\n\n /**\n * The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.\n */\n @Prop() endpoint: VerdocsEndpoint = VerdocsEndpoint.getDefault();\n\n /**\n * The ID of the template to create the document from.\n */\n @Prop() templateId: string | null = null;\n\n /**\n * Event fired if an error occurs. The event details will contain information about the error. Most errors will\n * terminate the process, and the calling application should correct the condition and re-render the component.\n */\n @Event({composed: true}) sdkError: EventEmitter<SDKError>;\n\n @State() loading = true;\n @State() template: ITemplate | null = null;\n\n disconnectedCallback() {\n this.unlistenToTemplate();\n }\n\n async listenToTemplate() {\n this.unlistenToTemplate();\n Store.subscribe(\n 'templates',\n this.templateId,\n () => getTemplate(this.endpoint, this.templateId),\n false,\n (template: ITemplate) => {\n this.template = template;\n this.loading = false;\n },\n );\n }\n\n unlistenToTemplate() {\n if (this.templateListenerId) {\n Store.store.delListener(this.templateListenerId);\n this.templateListenerId = null;\n }\n }\n\n @Watch('templateId')\n onTemplateIdChanged(newTemplateId: string) {\n console.log('[PREVIEW] Template ID changed', newTemplateId);\n this.listenToTemplate();\n }\n\n async componentWillLoad() {\n try {\n this.endpoint.loadSession();\n if (!this.endpoint.session) {\n console.log('[PREVIEW] Unable to start builder session, must be authenticated');\n return;\n }\n\n if (!this.templateId) {\n console.log(`[PREVIEW] Missing required template ID ${this.templateId}`);\n return;\n }\n\n this.listenToTemplate();\n } catch (e) {\n console.log('[PREVIEW] Error with preview session', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n }\n }\n\n handlePageRendered(_e: any) {\n // const pageInfo = e.detail as IDocumentPageInfo;\n // const fields = (this.template?.fields || []).filter(field => field.page === pageInfo.pageNumber);\n // console.log('[PREVIEW] Page rendered', pageInfo, fields);\n // fields.forEach(field => renderDocumentField(field, pageInfo, {disabled: true, editable: false, draggable: false}));\n }\n\n render() {\n if (this.loading) {\n return (\n <Host>\n <verdocs-loader />\n </Host>\n );\n }\n\n return (\n <Host>\n {(this.template?.documents || []).map(document => {\n const pageNumbers = integerSequence(1, document.pages);\n return (\n <Fragment>\n {pageNumbers.map(pageNumber => {\n const pageSize = document.page_sizes?.[pageNumber] || {width: 612, height: 792};\n\n return (\n <verdocs-template-document-page\n templateId={document.template_id}\n documentId={document.id}\n pageNumber={pageNumber}\n disabled={true}\n editable={false}\n done={false}\n virtualWidth={pageSize.width}\n virtualHeight={pageSize.height}\n onPageRendered={e => this.handlePageRendered(e)}\n layers={[\n {name: 'page', type: 'canvas'},\n {name: 'controls', type: 'div'},\n ]}\n />\n );\n })}\n </Fragment>\n );\n })}\n </Host>\n );\n }\n}\n","import {ITemplate} from '@verdocs/js-sdk';\n\nexport const getRoleNames = (template: ITemplate | null) => (template?.roles || []).map(role => role.name);\n\nexport const getRoleIndex = (template: ITemplate | null, role_name: string) =>\n Math.max(\n getRoleNames(template).findIndex(name => name === role_name),\n 0,\n );\n","@import '../../../theme.scss';\n\nverdocs-send {\n padding: 10px;\n position: relative;\n background: #ffffff;\n flex-direction: column;\n font-family: $verdocs-primary-font;\n\n &.sendable {\n display: flex;\n }\n\n .recipients {\n position: relative;\n }\n\n // To avoid the need to compute things like heights, this layer is simply displayed \"on top\" of all the level rows. Its\n // background obscures the horizontal lines.\n .left-line {\n top: 32px;\n left: 20px;\n z-index: 1;\n width: 12px;\n bottom: 30px;\n position: absolute;\n background: #ffffff;\n border-left: 3px dotted #9b9b9b;\n }\n\n .level {\n display: flex;\n column-gap: 10px;\n margin-left: 50px;\n position: relative;\n flex-direction: row;\n padding: 8px 0 4px 0;\n border-bottom: 1px solid #97979744;\n\n .level-icon {\n top: 14px;\n z-index: 2;\n left: -40px;\n width: 24px;\n height: 24px;\n position: absolute;\n background: #ffffff;\n\n svg {\n fill: #00000089;\n }\n }\n\n .recipient {\n height: 30px;\n display: flex;\n flex: 0 0 30px;\n color: #000000;\n cursor: pointer;\n font-size: 14px;\n align-items: center;\n border-radius: 30px;\n flex-direction: row;\n background: #dddddd;\n white-space: nowrap;\n border: 2px solid #dddddd;\n padding: 2px 10px 2px 14px;\n\n .icon {\n width: 22px;\n height: 22px;\n flex: 0 0 22px;\n margin: 0 0 0 10px;\n\n svg {\n width: 22px;\n height: 22px;\n fill: #333333;\n outline: none;\n }\n }\n }\n\n .complete {\n flex: 1;\n height: 30px;\n display: flex;\n color: #000000;\n font-size: 14px;\n align-items: center;\n flex-direction: row;\n padding: 3px 10px 3px 2px;\n }\n }\n\n .buttons {\n display: flex;\n margin-top: 10px;\n column-gap: 15px;\n flex-direction: row;\n }\n\n verdocs-contact-picker {\n left: 0;\n top: 41px;\n z-index: 10;\n position: absolute;\n border: 1px solid #dddddd;\n box-shadow: 0 0 6px 3px rgb(0 0 0 / 10%);\n }\n}\n","import {Component, Prop, State, h, Event, EventEmitter, Host, Method, Watch} from '@stencil/core';\nimport {createEnvelope, formatFullName, getTemplate, getOrganizationContacts, getRGBA, isValidEmail, VerdocsEndpoint} from '@verdocs/js-sdk';\nimport type {ICreateEnvelopeFromTemplateRequest, ICreateEnvelopeRecipientFromTemplate, IEnvelope, IRecipient, ITemplate} from '@verdocs/js-sdk';\nimport {IContactSearchEvent} from '../../envelopes/verdocs-contact-picker/verdocs-contact-picker';\nimport {getRoleIndex, getRoleNames} from '../../../utils/Templates';\nimport {DefaultEndpoint} from '../../../utils/Environment';\nimport {VerdocsToast} from '../../../utils/Toast';\nimport {SDKError} from '../../../utils/errors';\nimport {Store} from '../../../utils/Datastore';\n\nconst editIcon =\n '<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>';\n\nconst startIcon =\n '<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>';\n\nconst stepIcon =\n '<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>';\n\nconst doneIcon =\n '<svg focusable=\"false\" aria-hidden=\"true\" viewBox=\"0 0 24 24\" tabindex=\"-1\"><path d=\"m18 7-1.41-1.41-6.34 6.34 1.41 1.41L18 7zm4.24-1.41L11.66 16.17 7.48 12l-1.41 1.41L11.66 19l12-12-1.42-1.41zM.41 13.41 6 19l1.41-1.41L1.83 12 .41 13.41z\"></path></svg>';\n\n/**\n * Display a form to send a template to one or more recipients in an envelope for signing.\n * Host applications should ensure the template is \"sendable\" before displaying this component.\n * To be sendable, a template must have at least one document attached, at least one participant\n * defined, and at least one field assigned to every \"signer\" participant. This component will\n * hide itself if the template is not sendable.\n *\n * ```ts\n * <verdocs-send\n * templateId={TEMPLATE_ID}\n * onBeforeSend={({ detail })) => { console.log('Sending... Show a spinner...', detail) }\n * onSend={({ detail }) => { console.log('Sent! Hide the spinner...', detail) }\n * onExit={({ detail }) => { console.log('Send cancelled.', detail) }\n * onSdkError={({ detail }) => { console.log('SDK error', detail) }\n * />\n * ```\n */\n@Component({\n tag: 'verdocs-send',\n styleUrl: 'verdocs-send.scss',\n shadow: false,\n})\nexport class VerdocsSend {\n private templateListenerId = null;\n\n /**\n * The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.\n */\n @Prop() endpoint: VerdocsEndpoint = DefaultEndpoint;\n\n /**\n * The ID of the template to create the document from.\n */\n @Prop({reflect: true}) templateId: string | null = null;\n\n /**\n * The environment the control is being called from, e.g. 'web'. This has an impact on how certain\n * operations such as email communications are handled to ensure users receive the correct URLs for\n * their invitations. Setting this to unknown values may produce unexpected/incorrect behaviors.\n * If environment is not known, do this set this property.\n */\n @Prop() environment: string = '';\n\n /**\n * The user is sending an envelope the form and clicked send.\n */\n @Event({composed: true}) beforeSend: EventEmitter<{recipients: ICreateEnvelopeRecipientFromTemplate[]; name: string; template_id: string; template: ITemplate}>;\n\n /**\n * The user completed the form and clicked send.\n */\n @Event({composed: true}) send: EventEmitter<{recipients: ICreateEnvelopeRecipientFromTemplate[]; name: string; template_id: string; envelope_id: string; envelope: IEnvelope}>;\n\n /**\n * Event fired when the step is cancelled. This is called exit to avoid conflicts with the JS-reserved \"cancel\" event name.\n */\n @Event({composed: true}) exit: EventEmitter;\n\n /**\n * Event fired if an error occurs. The event details will contain information about the error. Most errors will\n * terminate the process, and the calling application should correct the condition and re-render the component.\n */\n @Event({composed: true}) sdkError: EventEmitter<SDKError>;\n\n /**\n * Event fired when the user enters text in a search field. The parent application may use this to update\n * the `contactSuggestions` property.\n */\n @Event({composed: true}) searchContacts: EventEmitter<IContactSearchEvent>;\n\n @State() containerId = `verdocs-send-${Math.random().toString(36).substring(2, 11)}`;\n @State() showPickerForId = '';\n @State() sessionContacts = [];\n @State() sending = false;\n @State() rolesCompleted: Record<string, Partial<IRecipient>> = {};\n\n @State() loading = true;\n @State() template: ITemplate | null = null;\n\n disconnectedCallback() {\n this.unlistenToTemplate();\n }\n\n async listenToTemplate() {\n console.log('[SEND] Loading template', this.templateId);\n this.unlistenToTemplate();\n Store.subscribe(\n 'templates',\n this.templateId,\n () => getTemplate(this.endpoint, this.templateId),\n true,\n (template: ITemplate) => {\n console.log('[SEND] Got new template', template);\n this.template = template;\n this.loading = false;\n this.rolesCompleted = {};\n this.recomputeRolesCompleted();\n },\n );\n }\n\n unlistenToTemplate() {\n if (this.templateListenerId) {\n Store.store.delListener(this.templateListenerId);\n this.templateListenerId = null;\n }\n }\n\n @Method() async reset() {\n this.rolesCompleted = {};\n }\n\n @Watch('templateId')\n onTemplateIdChanged(newTemplateId: string) {\n console.log('[SEND] Template ID changed', newTemplateId);\n this.listenToTemplate();\n }\n\n async componentWillLoad() {\n try {\n this.endpoint.onSessionChanged((_endpoint, _session, profile) => {\n if (!profile) {\n return;\n }\n\n const me = {\n id: profile.id,\n first_name: profile.first_name,\n last_name: profile.last_name,\n email: profile.email,\n phone: profile.phone,\n };\n\n if (profile) {\n this.sessionContacts = [me];\n\n getOrganizationContacts(this.endpoint)\n .then(contacts => {\n console.log('[SEND] Got contacts', contacts);\n this.sessionContacts = [...contacts, me];\n })\n .catch(e => {\n console.log('[SEND] Error getting contacts', e);\n });\n }\n });\n\n this.endpoint.loadSession();\n\n if (!this.endpoint.session) {\n console.log('[SEND] Unable to start Send operation, must be authenticated');\n return;\n }\n\n if (!this.templateId) {\n console.log(`[SEND] Missing required template ID ${this.templateId}`);\n return;\n }\n\n this.listenToTemplate();\n } catch (e) {\n console.log('[SEND] Error with send session', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n }\n }\n\n recomputeRolesCompleted() {\n this.rolesCompleted = {};\n\n const rolesAtLevel: Record<number, Partial<IRecipient>[]> = {};\n (this.template?.roles || []).forEach(role => {\n const level = role.sequence;\n rolesAtLevel[level] ||= [];\n const id = `r-${level}-${rolesAtLevel[level].length}`;\n rolesAtLevel[level].push({...role, id, role_name: role.name, first_name: role.first_name, last_name: role.last_name});\n\n // if (role.first_name && (isValidEmail(role.email) || isValidPhone(role.phone))) {\n if (role.first_name && isValidEmail(role.email)) {\n this.rolesCompleted[id] = {...role, id, role_name: role.name, first_name: role.first_name, last_name: role.last_name};\n }\n });\n }\n\n getSequenceNumbers() {\n // This is cleaner with a Set but we found a regression in some target environments where\n // this breaks down. Reverting to an older technique while we diagnose it.\n const sequences: Record<number, boolean> = {};\n (this.template?.roles || []).forEach(role => {\n sequences[role.sequence] = true;\n });\n return Object.keys(sequences)\n .map(s => +s)\n .sort((a, b) => a - b);\n }\n\n getRolesAtLevel(level: number) {\n const rolesAtLevel = (this.template?.roles || [])\n .filter(role => role.sequence === level)\n .map((role, index) => ({\n ...role,\n id: `r-${level}-${index}`,\n role_name: role.name,\n first_name: role.first_name,\n last_name: role.last_name,\n }));\n return rolesAtLevel as Partial<IRecipient>[];\n }\n\n getLevelIcon(level: 'start' | 'end' | 'sequence') {\n if (level === 'start') {\n return <div class=\"level-icon\" innerHTML={startIcon} />;\n } else if (level === 'end') {\n return <div class=\"level-icon\" innerHTML={doneIcon} />;\n } else {\n return <div class=\"level-icon\" innerHTML={stepIcon} />;\n }\n }\n\n handleSelectContact(e: any, role: Partial<IRecipient>) {\n e.preventDefault();\n this.rolesCompleted[role.id] = {...role, ...e.detail};\n this.showPickerForId = '';\n }\n\n handleClickRole(e: any, role: Partial<IRecipient>) {\n e.stopPropagation();\n this.showPickerForId = role.id;\n }\n\n handleSend(e: any) {\n if (this.sending) {\n console.log('[SEND] Skipping duplicate send', e);\n return;\n }\n\n console.log('[SEND] Sending', e);\n e.preventDefault();\n e.stopPropagation();\n\n this.sending = true;\n\n const details: ICreateEnvelopeFromTemplateRequest = {\n template_id: this.templateId,\n name: this.template?.name || 'New Envelope',\n environment: this.environment,\n initial_reminder: 0,\n followup_reminders: 0,\n recipients: Object.values(this.rolesCompleted) as ICreateEnvelopeRecipientFromTemplate[],\n };\n\n const beforeSendResult = this.beforeSend.emit({...details, name: details.name!, template: this.template});\n if (beforeSendResult.defaultPrevented) {\n console.log('[SEND] Send cancelled by parent', details);\n this.sending = false;\n return;\n }\n\n console.log('[SEND] Creating envelope', details);\n createEnvelope(this.endpoint, details)\n .then(r => {\n console.log('[SEND] Send envelope', r);\n this.reset().catch((e: any) => console.log('Unknown Error', e));\n this.sending = false;\n this.send?.emit({...details, name: details.name!, envelope_id: r.id, envelope: r});\n })\n .catch(e => {\n console.log('[SEND] Send error', e);\n VerdocsToast(e.response?.data?.error || 'Error creating envelope, please try again later.');\n this.sending = false;\n this.sdkError?.emit(e);\n });\n }\n\n handleCancel(e: any) {\n e.stopPropagation();\n this.exit?.emit();\n }\n\n render() {\n if (this.loading) {\n return (\n <Host>\n <verdocs-loader />\n </Host>\n );\n }\n\n if (!this.endpoint.session) {\n return (\n <Host style={{display: 'flex'}}>\n <verdocs-component-error message=\"You must be authenticated to use this module.\" />\n </Host>\n );\n }\n\n const levels = this.getSequenceNumbers();\n const rolesAssigned = Object.values(this.rolesCompleted).filter(recipient => isValidEmail(recipient.email) && recipient.first_name && recipient.last_name);\n const allRolesAssigned = rolesAssigned.length >= getRoleNames(this.template).length;\n\n return (\n <Host class={{sendable: this.template?.is_sendable}}>\n <div class=\"recipients\">\n <div class=\"left-line\" />\n <div class={`level level-start`}>\n {this.getLevelIcon('start')}\n <div class=\"complete\">Send Envelope</div>\n </div>\n\n {levels.map(level => (\n <div class={`level level-${level}`}>\n {this.getLevelIcon('sequence')}\n\n {this.getRolesAtLevel(level).map(role => {\n const unknown = !role.email || !role.first_name || !role.last_name;\n const roleName = this.rolesCompleted[role.id]?.first_name ? formatFullName(this.rolesCompleted[role.id]) : unknown ? role.role_name : formatFullName(role);\n const elId = `verdocs-send-recipient-${role.role_name}`;\n const roleIndex = getRoleIndex(this.template, role.role_name);\n const rgba = getRGBA(roleIndex);\n const completed = rolesAssigned.findIndex(r => r.role_name === role.role_name) > -1;\n\n const style = {\n backgroundColor: rgba,\n border: completed ? '2px solid #55bc81' : '2px solid #dddddd',\n };\n\n return unknown ? (\n <div class=\"recipient\" data-ri={roleIndex} data-rn={role.role_name} style={style} onClick={e => this.handleClickRole(e, role)} id={elId}>\n {roleName}\n <div class=\"icon\" innerHTML={editIcon} />\n {this.showPickerForId === role.id && (\n <verdocs-portal anchor={elId} onClickAway={() => (this.showPickerForId = '')}>\n <verdocs-contact-picker\n onExit={() => (this.showPickerForId = '')}\n onNext={e => this.handleSelectContact(e, role)}\n contactSuggestions={this.sessionContacts}\n templateRole={this.rolesCompleted[role.id] ?? role}\n onSearchContacts={e => this.searchContacts?.emit(e.detail)}\n />\n </verdocs-portal>\n )}\n </div>\n ) : (\n <div class=\"recipient\" data-ri={roleIndex} data-rn={role.role_name} style={style} onClick={e => this.handleClickRole(e, role)} id={elId}>\n {/*<div class=\"recipient\" data-ri={roleIndex} data-rn={role.role_name} style={{borderColor: rgba}} onClick={e => this.handleClickRole(e, role)} id={elId}>*/}\n {roleName}\n <div class=\"icon\" innerHTML={editIcon} />\n {this.showPickerForId === role.id && (\n <verdocs-portal anchor={elId} onClickAway={() => (this.showPickerForId = '')}>\n <verdocs-contact-picker\n onExit={() => (this.showPickerForId = '')}\n onNext={e => this.handleSelectContact(e, role)}\n contactSuggestions={this.sessionContacts}\n templateRole={(this.rolesCompleted[role.id] ?? role) as IRecipient}\n onSearchContacts={e => this.searchContacts?.emit(e.detail)}\n />\n </verdocs-portal>\n )}\n </div>\n );\n })}\n </div>\n ))}\n\n <div class={`level level-done`}>\n {this.getLevelIcon('end')}\n <div class=\"complete\">Signing Complete</div>\n </div>\n </div>\n\n <div class=\"buttons\">\n <verdocs-button label=\"Cancel\" size=\"small\" variant=\"outline\" onClick={e => this.handleCancel(e)} disabled={this.sending} />\n <verdocs-button label=\"Send\" size=\"small\" disabled={!allRolesAssigned || this.sending} onClick={e => this.handleSend(e)} />\n {this.sending && <verdocs-spinner />}\n </div>\n </Host>\n );\n }\n}\n","@import '../../../theme.scss';\n\nverdocs-template-attachments {\n font-family: $verdocs-primary-font;\n\n h5 {\n font-size: 16px;\n font-weight: bold;\n margin: 0 0 10px 0;\n color: $verdocs-grey-blue;\n }\n\n .attachments {\n margin: 0 0 40px 0;\n }\n\n .attachment {\n display: flex;\n padding: 5px 0;\n column-gap: 15px;\n align-items: center;\n flex-direction: row;\n color: $label-color;\n\n &:hover {\n .trash-icon {\n display: flex;\n }\n\n .pages {\n display: none;\n }\n }\n }\n\n svg {\n width: 28px;\n height: 28px;\n fill: $verdocs-bg-4;\n margin: 2px 0 0 0;\n }\n\n .file-icon {\n flex: 0;\n }\n\n .pages {\n width: 24px;\n height: 24px;\n flex: 0 0 24px;\n padding-left: 4px;\n position: relative;\n margin: -10px 0 0 0;\n\n .pages-icon {\n top: 0;\n left: 0;\n width: 24px;\n height: 24px;\n position: absolute;\n }\n\n .count {\n top: 11px;\n left: 7px;\n z-index: 1;\n width: 18px;\n font-size: 12px;\n font-weight: 500;\n position: absolute;\n text-align: center;\n letter-spacing: -2px;\n }\n }\n\n .filename {\n flex: 1;\n display: block;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n border-bottom: 1px dotted #cccccc;\n }\n\n .trash-icon {\n flex: 0;\n display: none;\n\n &:hover {\n cursor: pointer;\n }\n }\n\n verdocs-file-chooser {\n margin: 10px 0;\n border: 2px dashed #979797;\n }\n\n .loader-wrapper {\n background-color: $verdocs-grey-4;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n position: relative;\n width: 320px;\n height: 320px;\n text-align: center;\n border: 2px dashed #979797;\n justify-content: flex-end;\n }\n\n .progress-wrapper {\n padding: 20px;\n }\n\n .buttons {\n display: flex;\n column-gap: 8px;\n margin-top: 16px;\n align-items: center;\n flex-direction: row;\n justify-content: flex-end;\n\n .flex-fill {\n flex: 1;\n }\n }\n\n ::placeholder {\n color: $verdocs-bg-2;\n }\n}\n","import {Component, h, Event, EventEmitter, Prop, Host, State} from '@stencil/core';\nimport {createTemplateDocument, deleteTemplateDocument, getTemplate, ITemplate, ITemplateDocument, VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {DocIcon, FileIcon, JpgIcon, PageCountIcon, PdfIcon, PngIcon, TrashIcon} from '../../../utils/Icons';\nimport {SDKError} from '../../../utils/errors';\nimport {Store} from '../../../utils/Datastore';\n\n/**\n * Displays an edit form that allows the user to view, add, or remove a template's attachments.\n * Note that an active session and valid template ID must be supplied.\n */\n@Component({\n tag: 'verdocs-template-attachments',\n styleUrl: 'verdocs-template-attachments.scss',\n shadow: false,\n})\nexport class VerdocsTemplateAttachments {\n private templateListenerId = null;\n\n /**\n * The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.\n */\n @Prop() endpoint: VerdocsEndpoint = VerdocsEndpoint.getDefault();\n\n /**\n * The template ID to edit.\n */\n @Prop() templateId: string = '';\n\n /**\n * Event fired when the step is cancelled. This is called exit to avoid conflicts with the JS-reserved \"cancel\" event name.\n */\n @Event({composed: true}) exit: EventEmitter;\n\n /**\n * Event fired when the user clicks the next button.\n */\n @Event({composed: true}) next: EventEmitter<{template: ITemplate}>;\n\n /**\n * Event fired when the user updates the template.\n */\n @Event({composed: true}) templateUpdated: EventEmitter<{endpoint: VerdocsEndpoint; template: ITemplate; event: string}>;\n\n /**\n * Event fired if an error occurs. The event details will contain information about the error. Most errors will\n * terminate the process, and the calling application should correct the condition and re-render the component.\n */\n @Event({composed: true}) sdkError: EventEmitter<SDKError>;\n\n @State() uploading = false;\n @State() progressLabel = 'Uploading...';\n @State() progressPercent = 0;\n @State() showDeleteError = false;\n @State() confirmDeleteDocument: ITemplateDocument | null = null;\n\n @State() loading = true;\n @State() template: ITemplate | null = null;\n\n async componentWillLoad() {\n try {\n this.endpoint.loadSession();\n\n if (!this.templateId) {\n console.log(`[ROLES] Missing required template ID ${this.templateId}`);\n return;\n }\n\n if (!this.endpoint.session) {\n console.log('[ROLES] Unable to start builder session, must be authenticated');\n return;\n }\n\n this.listenToTemplate();\n } catch (e) {\n console.log('[TEMPLATE ATTACHMENTS] Error loading template', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n }\n }\n\n disconnectedCallback() {\n this.unlistenToTemplate();\n }\n\n async listenToTemplate() {\n this.unlistenToTemplate();\n Store.subscribe(\n 'templates',\n this.templateId,\n () => getTemplate(this.endpoint, this.templateId),\n false,\n (template: ITemplate) => {\n this.template = template;\n this.loading = false;\n },\n );\n }\n\n unlistenToTemplate() {\n if (this.templateListenerId) {\n Store.store.delListener(this.templateListenerId);\n this.templateListenerId = null;\n }\n }\n\n handleCancel(e) {\n e.stopPropagation();\n this.exit.emit();\n }\n\n handleUploadProgress(percent: number) {\n if (percent >= 99) {\n this.progressPercent = 100;\n this.progressLabel = 'Processing...';\n } else {\n this.progressPercent = percent;\n }\n }\n\n async handleUpload(e) {\n e.stopPropagation();\n\n const file = e.detail.file as File;\n if (!file) {\n return;\n }\n\n console.log('[ATTACHMENTS] Uploading...', file);\n\n this.uploading = true;\n this.progressLabel = 'Uploading...';\n\n try {\n const template = await createTemplateDocument(this.endpoint, this.templateId, file, this.handleUploadProgress.bind(this));\n console.log('[ATTACHMENTS] Created attachment', template);\n\n // TODO: Just updated it in place.\n this.template = await Store.getTemplate(this.endpoint, this.templateId, true);\n console.log('[ATTACHMENTS] Updated template', this.template);\n\n this.templateUpdated?.emit({endpoint: this.endpoint, template: this.template, event: 'attachments'});\n\n this.uploading = false;\n this.progressLabel = '';\n this.progressPercent = 0;\n } catch (e) {\n console.log('[ATTACHMENTS] Error creating template', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n this.uploading = false;\n }\n }\n\n handleNext(e: any) {\n e.stopPropagation();\n this.uploading = false;\n this.progressLabel = '';\n this.progressPercent = 0;\n this.next?.emit({template: this.template});\n }\n\n async confirmDelete() {\n await deleteTemplateDocument(this.endpoint, this.templateId, this.confirmDeleteDocument.id);\n // TODO: Update it in place\n this.template = await Store.getTemplate(this.endpoint, this.templateId, true);\n console.log('[ATTACHMENTS] New template', this.template);\n this.confirmDeleteDocument = null;\n }\n\n async handleDelete(document: ITemplateDocument) {\n if ((this.template?.documents || []).length > 1) {\n this.confirmDeleteDocument = document;\n } else {\n this.showDeleteError = true;\n }\n }\n\n getFileIcon(document: ITemplateDocument) {\n switch (document.mime) {\n case 'application/pdf':\n return PdfIcon;\n case 'image/jpeg':\n return JpgIcon;\n case 'image/png':\n return PngIcon;\n case 'application/msword':\n case 'application/vnd.openxmlformats-officedocument.wordprocessingml.document':\n return DocIcon;\n }\n\n return FileIcon;\n }\n\n render() {\n if (!this.endpoint.session) {\n return (\n <Host>\n <verdocs-component-error message=\"You must be authenticated to use this module.\" />\n </Host>\n );\n }\n\n if (this.loading) {\n return (\n <Host class=\"loading\">\n <verdocs-loader />\n </Host>\n );\n }\n\n // This is meant to be a companion for larger visual experiences so we just go blank on errors for now.\n if (!this.endpoint.session || !this.template) {\n return <Host class=\"empty\" />;\n }\n\n return (\n <Host>\n <h5>Existing Attachments</h5>\n\n <div class=\"attachments\">\n {(this.template?.documents || []).map(document => (\n <div class=\"attachment\">\n <div class=\"file-icon\" innerHTML={this.getFileIcon(document)} />\n <div class=\"filename\" title={document.name}>\n {document.name}\n </div>\n <div class=\"pages\">\n <div class=\"count\">{document.pages}</div>\n <div class=\"pages-icon\" innerHTML={PageCountIcon} />\n </div>\n <div class=\"trash-icon\" innerHTML={TrashIcon} onClick={() => this.handleDelete(document)} />\n </div>\n ))}\n </div>\n\n <h5>Attach a New Document</h5>\n\n {this.uploading ? (\n <div class=\"loader-wrapper\">\n <verdocs-loader />\n\n {this.progressLabel && (\n <div class=\"progress-wrapper\">\n <verdocs-progress-bar showPercent={true} percent={this.progressPercent} label={this.progressLabel} />\n </div>\n )}\n </div>\n ) : (\n <verdocs-file-chooser onFileSelected={e => this.handleUpload(e)} />\n )}\n\n <div class=\"buttons\">\n <verdocs-button variant=\"outline\" label=\"Cancel\" size=\"small\" onClick={e => this.handleCancel(e)} disabled={this.uploading} />\n <verdocs-button label=\"Next\" size=\"small\" onClick={e => this.handleNext(e)} disabled={!(this.template?.documents || []).length || this.uploading} />\n </div>\n\n {this.showDeleteError && (\n <verdocs-ok-dialog heading=\"Unable to Delete Attachment\" message=\"Templates must contain at least one attachment.\" onNext={() => (this.showDeleteError = false)} />\n )}\n\n {this.confirmDeleteDocument && (\n <verdocs-ok-dialog\n heading=\"Delete this Attachment?\"\n message=\"This operation cannot be undone. All fields placed<br />on the deleted attachment will also be removed.\"\n onNext={() => this.confirmDelete()}\n showCancel={true}\n onExit={() => {\n this.confirmDeleteDocument = null;\n }}\n />\n )}\n </Host>\n );\n }\n}\n","@import '../../../theme.scss';\n\nverdocs-template-build-tabs {\n flex: 1;\n gap: 15px;\n display: flex;\n align-items: center;\n flex-direction: row;\n font-family: $verdocs-primary-font;\n\n verdocs-button-panel {\n svg {\n transform: scale(0.8);\n }\n }\n\n verdocs-template-attachments,\n verdocs-template-roles {\n margin: 20px;\n }\n\n verdocs-template-fields {\n border-top: 1px solid #777777;\n }\n\n verdocs-template-attachments {\n padding: 20px;\n background: #ffffff;\n }\n\n verdocs-template-fields {\n width: 100%;\n }\n\n verdocs-preview {\n flex: 1;\n }\n}\n\n.template-details-panel {\n .row {\n display: flex;\n flex-direction: row;\n gap: 8px;\n margin: 10px 0;\n }\n\n label {\n flex: 0 0 70px;\n }\n\n .value {\n flex: 1;\n font-weight: 300;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .icon-button {\n cursor: pointer;\n opacity: 0.8;\n flex: 0;\n width: 18px;\n height: 18px;\n\n svg {\n stroke: #000000;\n width: 18px;\n height: 18px;\n }\n\n &:hover {\n opacity: 1;\n }\n }\n}\n","import {format} from 'date-fns';\nimport {getTemplate, ITemplate, VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {Component, Prop, h, Event, EventEmitter, Host, Watch, State} from '@stencil/core';\nimport {VerdocsToast} from '../../../utils/Toast';\nimport {SDKError} from '../../../utils/errors';\nimport {Store} from '../../../utils/Datastore';\n\nconst HelpIcon =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" width=\"24\" fill=\"#5c6575\"><path d=\"M11.925 18q.55 0 .938-.387.387-.388.387-.938 0-.55-.387-.925-.388-.375-.938-.375-.55 0-.925.375t-.375.925q0 .55.375.938.375.387.925.387Zm-.95-3.85h1.95q0-.8.2-1.287.2-.488 1.025-1.288.65-.625 1.025-1.213.375-.587.375-1.437 0-1.425-1.025-2.175Q13.5 6 12.1 6q-1.425 0-2.35.775t-1.275 1.85l1.775.7q.125-.45.55-.975.425-.525 1.275-.525.725 0 1.1.412.375.413.375.888 0 .475-.287.9-.288.425-.713.775-1.075.95-1.325 1.475-.25.525-.25 1.875ZM12 22.2q-2.125 0-3.988-.8-1.862-.8-3.237-2.175Q3.4 17.85 2.6 15.988 1.8 14.125 1.8 12t.8-3.988q.8-1.862 2.175-3.237Q6.15 3.4 8.012 2.6 9.875 1.8 12 1.8t3.988.8q1.862.8 3.237 2.175Q20.6 6.15 21.4 8.012q.8 1.863.8 3.988t-.8 3.988q-.8 1.862-2.175 3.237Q17.85 20.6 15.988 21.4q-1.863.8-3.988.8Zm0-2.275q3.325 0 5.625-2.3t2.3-5.625q0-3.325-2.3-5.625T12 4.075q-3.325 0-5.625 2.3T4.075 12q0 3.325 2.3 5.625t5.625 2.3ZM12 12Z\"/></svg>';\n\nconst CopyIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M15.75 17.25v3.375c0 .621-.504 1.125-1.125 1.125h-9.75a1.125 1.125 0 0 1-1.125-1.125V7.875c0-.621.504-1.125 1.125-1.125H6.75a9.06 9.06 0 0 1 1.5.124m7.5 10.376h3.375c.621 0 1.125-.504 1.125-1.125V11.25c0-4.46-3.243-8.161-7.5-8.876a9.06 9.06 0 0 0-1.5-.124H9.375c-.621 0-1.125.504-1.125 1.125v3.5m7.5 10.375H9.375a1.125 1.125 0 0 1-1.125-1.125v-9.25m12 6.625v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H9.75\" /></svg>`;\n\nconst STEPS = ['attachments', 'roles', 'settings', 'fields', 'preview'];\nexport type TVerdocsBuildStep = 'attachments' | 'roles' | 'settings' | 'fields' | 'preview';\n\n/**\n * Display a set of tabs for the template builder.\n */\n@Component({\n tag: 'verdocs-template-build-tabs',\n styleUrl: 'verdocs-template-build-tabs.scss',\n shadow: false,\n})\nexport class VerdocsTemplateBuildTabs {\n private templateListenerId = null;\n\n /**\n * The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.\n */\n @Prop() endpoint: VerdocsEndpoint = VerdocsEndpoint.getDefault();\n\n /**\n * The ID of the template to create the document from. Unlike most other components, this is an optional parameter here.\n * If the template ID is known, `step` may also be specified to force displaying a specific step in the creation process.\n * If it is not specified, `step` will be ignored and the create step will be shown.\n */\n @Prop({reflect: true, mutable: true}) templateId: string | null = null;\n\n /**\n * The step in the creation process to display.\n */\n @Prop({reflect: true, mutable: true}) step: TVerdocsBuildStep = 'preview';\n\n /**\n * Event fired if an error occurs. The event details will contain information about the error. Most errors will\n * terminate the process, and the calling application should correct the condition and re-render the component.\n */\n @Event({composed: true}) sdkError: EventEmitter<SDKError>;\n\n /**\n * Event fired when the user selects a different step.\n */\n @Event({composed: true}) stepChanged: EventEmitter<TVerdocsBuildStep>;\n\n @State() loading = true;\n @State() template: ITemplate | null = null;\n\n disconnectedCallback() {\n this.unlistenToTemplate();\n }\n\n async listenToTemplate() {\n this.unlistenToTemplate();\n Store.subscribe(\n 'templates',\n this.templateId,\n () => getTemplate(this.endpoint, this.templateId),\n false,\n (template: ITemplate) => {\n this.template = template;\n this.loading = false;\n },\n );\n }\n\n unlistenToTemplate() {\n if (this.templateListenerId) {\n Store.store.delListener(this.templateListenerId);\n this.templateListenerId = null;\n }\n }\n\n @Watch('templateId')\n onTemplateIdChanged(newTemplateId: string) {\n console.log('[BUILD_TABS] Template ID changed', newTemplateId);\n this.listenToTemplate();\n }\n\n @Watch('step')\n onStepChanged(newStep: TVerdocsBuildStep) {\n console.log('[BUILD_TABS] Step changed', newStep);\n }\n\n async componentWillLoad() {\n try {\n this.endpoint.loadSession();\n if (!this.endpoint.session) {\n console.log('[BUILD_TABS] Unable to start builder session, must be authenticated');\n return;\n }\n\n if (!this.templateId) {\n this.step = 'attachments';\n console.log('[BUILD_TABS] Missing required template ID, forcing view to attachments');\n return;\n }\n\n this.listenToTemplate();\n } catch (e) {\n console.log('[BUILD_TABS] Error loading template', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n }\n }\n\n setStep(e: any) {\n console.log('[BUILD_TABS] Selected step', e.detail.tab.id);\n e.stopPropagation();\n e.preventDefault();\n this.step = e.detail.tab.id;\n this.stepChanged?.emit(e.detail.tab.id);\n }\n\n copyTemplateId() {\n navigator.clipboard\n .writeText(this.templateId)\n .then(() => {\n VerdocsToast('Template ID copied', {style: 'success', duration: 3000});\n })\n .catch(e => {\n console.warn('[BUILD_TABS] Error copying to clipboard', e);\n this.sdkError?.emit(e);\n });\n }\n\n render() {\n if (this.loading) {\n return (\n <Host>\n <verdocs-loader />\n </Host>\n );\n }\n\n if (!this.endpoint.session) {\n return (\n <Host>\n <verdocs-component-error message=\"You must be authenticated to use this module.\" />\n </Host>\n );\n }\n\n const canEditRoles = (this.template?.documents || []).length > 0;\n let canEditFields = canEditRoles && (this.template?.roles || []).length > 0;\n const canPreview = canEditFields && (this.template?.fields || []).length > 0;\n\n let selectedStepIndex = Math.max(STEPS.indexOf(this.step), 0);\n if (!canPreview && selectedStepIndex >= 4) {\n selectedStepIndex = 3;\n }\n if (!canEditFields && selectedStepIndex >= 3) {\n selectedStepIndex = 1;\n }\n if (!canEditRoles && selectedStepIndex >= 1) {\n selectedStepIndex = 0;\n }\n\n return (\n <Host>\n <verdocs-tabs\n onSelectTab={e => this.setStep(e)}\n selectedTab={selectedStepIndex}\n tabs={[\n {id: 'attachments', disabled: false, label: 'Attachment(s)'},\n {id: 'roles', disabled: !canEditRoles, label: 'Roles'},\n {id: 'settings', disabled: !canEditFields, label: 'Settings'},\n {id: 'fields', disabled: !canEditFields, label: 'Fields'},\n {id: 'preview', disabled: !canPreview, label: 'Preview/Send'},\n ]}\n />\n\n {this.templateId && (\n <div class=\"info\">\n <verdocs-button-panel icon={HelpIcon}>\n <div class=\"template-details-panel\">\n <h6>Template Details</h6>\n <div class=\"row\">\n <label>ID:</label>\n <div class=\"value\">{this.templateId}</div>\n <div class=\"icon-button\" innerHTML={CopyIcon} onClick={() => this.copyTemplateId()} />\n </div>\n <div class=\"row\">\n <label>Name:</label>\n <div class=\"value\">{this.template?.name}</div>\n </div>\n <div class=\"row\">\n <label>Visibility:</label>\n <div class=\"value\">{this.template?.is_public ? 'Public' : this.template?.is_personal ? 'Private' : 'Shared'}</div>\n </div>\n <div class=\"row\">\n <label>Created:</label>\n <div class=\"value\">{this.template?.counter ? format(new Date(this.template?.created_at), 'P p') : ''}</div>\n </div>\n <div class=\"row\">\n <label>Used:</label>\n <div class=\"value\">{this.template?.counter} time(s)</div>\n </div>\n </div>\n </verdocs-button-panel>\n </div>\n )}\n </Host>\n );\n }\n}\n","@import '../../../theme.scss';\n\nverdocs-template-fields {\n font-family: $verdocs-primary-font;\n position: relative;\n display: block;\n min-height: 600px;\n\n .page-0 {\n padding: 65px 15px 0 15px;\n box-sizing: border-box;\n\n .user-placed-fields {\n height: 100px;\n position: relative;\n background: #ffffff;\n box-shadow: 0 0 10px 5px #0000000f;\n\n .title {\n top: 0;\n left: 0;\n color: #ffffff;\n font-size: 12px;\n padding: 3px 6px;\n font-weight: bold;\n position: absolute;\n background: $verdocs-grey-blue;\n }\n }\n }\n\n .pages {\n display: flex;\n padding: 15px;\n row-gap: 15px;\n min-height: 200px;\n position: relative;\n align-items: center;\n box-sizing: border-box;\n flex-direction: column;\n\n div,\n canvas {\n box-sizing: border-box;\n }\n }\n\n #verdocs-template-fields-toolbar {\n width: 100%;\n height: 50px;\n display: flex;\n column-gap: 15px;\n font-weight: 700;\n padding: 0 20px 0 0; // Right-only to better balance the visual\n align-items: center;\n flex-direction: row;\n color: $verdocs-grey-3;\n justify-content: center;\n background: $verdocs-grey-blue;\n\n > verdocs-select-input {\n margin: 0;\n }\n\n svg {\n width: 24px;\n height: 24px;\n }\n\n .add-for {\n margin: 0;\n font-weight: 500;\n color: $verdocs-grey-3;\n }\n\n verdocs-select-input {\n margin: 0 20px 0 0;\n }\n\n @media all and (max-width: 1000px) {\n column-gap: 8px;\n padding: 0 10px 0 0; // Right-only to better balance the visual\n\n svg {\n transform: scale(0.8);\n }\n\n .add-for,\n verdocs-select-input {\n display: none;\n }\n }\n\n @media all and (max-width: 600px) {\n column-gap: 6px;\n\n svg {\n transform: scale(0.6);\n }\n\n .separator,\n .add-for,\n verdocs-select-input {\n display: none;\n }\n }\n }\n\n &.placing-attachment {\n cursor:\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m10.55 16.55 7.275-7.275L16.05 7.5l-5.5 5.45-2.675-2.65L6.1 12.075Zm-5.375 4.925q-1.125 0-1.887-.763-.763-.762-.763-1.887V5.175q0-1.125.763-1.888.762-.762 1.887-.762h13.65q1.125 0 1.888.762.762.763.762 1.888v13.65q0 1.125-.762 1.887-.763.763-1.888.763Zm0-2.65h13.65V5.175H5.175v13.65Zm0-13.65v13.65-13.65Z'/%3E%3C/svg%3E\")\n 16 16,\n pointer;\n }\n\n &.placing-checkbox {\n cursor:\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m10.55 16.55 7.275-7.275L16.05 7.5l-5.5 5.45-2.675-2.65L6.1 12.075Zm-5.375 4.925q-1.125 0-1.887-.763-.763-.762-.763-1.887V5.175q0-1.125.763-1.888.762-.762 1.887-.762h13.65q1.125 0 1.888.762.762.763.762 1.888v13.65q0 1.125-.762 1.887-.763.763-1.888.763Zm0-2.65h13.65V5.175H5.175v13.65Zm0-13.65v13.65-13.65Z'/%3E%3C/svg%3E\")\n 16 16,\n pointer;\n }\n\n &.placing-date {\n cursor:\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath fill='%23000000' d='M7.6 13.925q-.55 0-.925-.375t-.375-.925q0-.55.375-.937.375-.388.925-.388t.925.388q.375.387.375.937t-.375.925q-.375.375-.925.375Zm4.4 0q-.55 0-.925-.375t-.375-.925q0-.55.375-.937.375-.388.925-.388t.925.388q.375.387.375.937t-.375.925q-.375.375-.925.375Zm4.4 0q-.55 0-.925-.375t-.375-.925q0-.55.375-.937.375-.388.925-.388t.925.388q.375.387.375.937t-.375.925q-.375.375-.925.375ZM5.3 22.85q-1.325 0-2.238-.912-.912-.913-.912-2.238V6.3q0-1.325.912-2.238.913-.912 2.238-.912H6v-2h2.575v2h6.85v-2H18v2h.7q1.325 0 2.238.912.912.913.912 2.238v13.4q0 1.325-.912 2.238-.913.912-2.238.912Zm0-3.15h13.4V10H5.3v9.7ZM5.3 8h13.4V6.3H5.3Zm0 0V6.3 8Z'/%3E%3C/svg%3E\")\n 16 16,\n pointer;\n }\n\n &.placing-dropdown {\n cursor:\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24' stroke-width='1.5' stroke='currentColor'%3E%3Cpath stroke='%23000000' stroke-linecap='round' stroke-linejoin='round' d='M3 4.5h14.25M3 9h9.75M3 13.5h9.75m4.5-4.5v12m0 0l-3.75-3.75M17.25 21L21 17.25' /%3E%3C/svg%3E\")\n 16 16,\n pointer;\n }\n\n &.placing-initial {\n cursor:\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='M6.225 20.775V7h-5V3.225H15V7h-5v13.775Zm9.775 0v-8h-3V9h9.775v3.775h-3v8Z'/%3E%3C/svg%3E\")\n 16 16,\n pointer;\n }\n\n &.placing-payment {\n cursor:\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m10.55 16.55 7.275-7.275L16.05 7.5l-5.5 5.45-2.675-2.65L6.1 12.075Zm-5.375 4.925q-1.125 0-1.887-.763-.763-.762-.763-1.887V5.175q0-1.125.763-1.888.762-.762 1.887-.762h13.65q1.125 0 1.888.762.762.763.762 1.888v13.65q0 1.125-.762 1.887-.763.763-1.888.763Zm0-2.65h13.65V5.175H5.175v13.65Zm0-13.65v13.65-13.65Z'/%3E%3C/svg%3E\")\n 16 16,\n pointer;\n }\n\n &.placing-radio {\n cursor:\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='M12 17q2.075 0 3.538-1.463Q17 14.075 17 12t-1.462-3.538Q14.075 7 12 7 9.925 7 8.463 8.462 7 9.925 7 12q0 2.075 1.463 3.537Q9.925 17 12 17Zm0 5.85q-2.275 0-4.25-.85t-3.438-2.312Q2.85 18.225 2 16.25q-.85-1.975-.85-4.25T2 7.75q.85-1.975 2.312-3.438Q5.775 2.85 7.75 2q1.975-.85 4.25-.85t4.25.85q1.975.85 3.438 2.312Q21.15 5.775 22 7.75q.85 1.975.85 4.25T22 16.25q-.85 1.975-2.312 3.438Q18.225 21.15 16.25 22q-1.975.85-4.25.85Zm0-3.15q3.25 0 5.475-2.225Q19.7 15.25 19.7 12q0-3.25-2.225-5.475Q15.25 4.3 12 4.3q-3.25 0-5.475 2.225Q4.3 8.75 4.3 12q0 3.25 2.225 5.475Q8.75 19.7 12 19.7Zm0-7.7Z'/%3E%3C/svg%3E\")\n 16 16,\n pointer;\n }\n\n &.placing-signature {\n cursor:\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m9.225 21.225 4.65-4.65h8.45v4.65Zm-5.35-2.2H5.05l8.5-8.5-1.175-1.175-8.5 8.5Zm14.25-9.95L13.8 4.8l1.325-1.325q.625-.65 1.525-.663.9-.012 1.6.663l1.225 1.175q.675.675.663 1.562-.013.888-.663 1.513ZM16.7 10.55 6 21.225H1.675V16.9L12.35 6.225Zm-3.725-.625-.6-.575 1.175 1.175Z'/%3E%3C/svg%3E\")\n 16 16,\n pointer;\n }\n\n &.placing-textarea {\n cursor:\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='M3.225 20.725v-3.15h11.55v3.15Zm0-4.775V12.8h17.55v3.15Zm0-4.75V8.05h17.55v3.15Zm0-4.775v-3.15h17.55v3.15Z'/%3E%3C/svg%3E\")\n 16 16,\n pointer;\n }\n\n &.placing-textbox {\n cursor:\n url(\"data:image/svg+xml,%3Csvg width='32' height='15' viewBox='0 0 32 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='path-1-inside-1_1401_24' fill='white'%3E%3Cpath d='M0 0H32V15H0V0Z'/%3E%3C/mask%3E%3Cpath d='M0 0H32V15H0V0Z' fill='%234C56CB' fill-opacity='0.1'/%3E%3Cpath d='M0 0V-1H-1V0H0ZM0 15H-1V16H0V15ZM0 1H32V-1H0V1ZM32 14H0V16H32V14ZM1 15V0H-1V15H1Z' fill='%234C56CB' mask='url(%23path-1-inside-1_1401_24)'/%3E%3Cpath d='M3 11.8V8.65H14.15V11.8H3ZM3 6.65V3.5H20.15V6.65H3Z' fill='%234C56CB'/%3E%3Cline x1='31.5' y1='1' x2='31.5' y2='14' stroke='%234C56CB' stroke-opacity='0.32' stroke-dasharray='1 1'/%3E%3C/svg%3E%0A\")\n 0 14,\n pointer;\n }\n\n &.placing-timestamp {\n cursor:\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath fill='%23000000' d='M9 1h6v2H9zm10.03 6.39 1.42-1.42c-.43-.51-.9-.99-1.41-1.41l-1.42 1.42C16.07 4.74 14.12 4 12 4c-4.97 0-9 4.03-9 9s4.02 9 9 9 9-4.03 9-9c0-2.12-.74-4.07-1.97-5.61zM13 14h-2V8h2v6z'%3E%3C/path%3E%3C/svg%3E\")\n 16 16,\n pointer;\n }\n}\n","import interact from 'interactjs';\nimport {Component, h, Event, EventEmitter, Prop, Host, State, Listen, Watch} from '@stencil/core';\nimport {createField, getTemplate, integerSequence, ITemplate, ITemplateField, TFieldType, updateField, VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {defaultHeight, defaultWidth, getFieldId, removeCssTransform, setControlStyles, updateCssTransform} from '../../../utils/utils';\nimport {IDocumentPageInfo} from '../../../utils/Types';\nimport {VerdocsToast} from '../../../utils/Toast';\nimport {SDKError} from '../../../utils/errors';\nimport {Store} from '../../../utils/Datastore';\n\nconst iconTextbox = '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" width=\"24\"><path fill=\"#ffffff\" d=\"M3.425 16.15V13h11.15v3.15Zm0-5.15V7.85h17.15V11Z\"/></svg>';\n\nconst iconCheck =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" width=\"24\"><path fill=\"#ffffff\" d=\"m10.55 16.55 7.275-7.275L16.05 7.5l-5.5 5.45-2.675-2.65L6.1 12.075Zm-5.375 4.925q-1.125 0-1.887-.763-.763-.762-.763-1.887V5.175q0-1.125.763-1.888.762-.762 1.887-.762h13.65q1.125 0 1.888.762.762.763.762 1.888v13.65q0 1.125-.762 1.887-.763.763-1.888.763Zm0-2.65h13.65V5.175H5.175v13.65Zm0-13.65v13.65-13.65Z\"/></svg>';\n\nconst iconRadio =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" width=\"24\"><path fill=\"#ffffff\" d=\"M12 17q2.075 0 3.538-1.463Q17 14.075 17 12t-1.462-3.538Q14.075 7 12 7 9.925 7 8.463 8.462 7 9.925 7 12q0 2.075 1.463 3.537Q9.925 17 12 17Zm0 5.85q-2.275 0-4.25-.85t-3.438-2.312Q2.85 18.225 2 16.25q-.85-1.975-.85-4.25T2 7.75q.85-1.975 2.312-3.438Q5.775 2.85 7.75 2q1.975-.85 4.25-.85t4.25.85q1.975.85 3.438 2.312Q21.15 5.775 22 7.75q.85 1.975.85 4.25T22 16.25q-.85 1.975-2.312 3.438Q18.225 21.15 16.25 22q-1.975.85-4.25.85Zm0-3.15q3.25 0 5.475-2.225Q19.7 15.25 19.7 12q0-3.25-2.225-5.475Q15.25 4.3 12 4.3q-3.25 0-5.475 2.225Q4.3 8.75 4.3 12q0 3.25 2.225 5.475Q8.75 19.7 12 19.7Zm0-7.7Z\"/></svg>';\n\nconst iconDatepicker =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" width=\"24\"><path fill=\"#ffffff\" d=\"M7.6 13.925q-.55 0-.925-.375t-.375-.925q0-.55.375-.937.375-.388.925-.388t.925.388q.375.387.375.937t-.375.925q-.375.375-.925.375Zm4.4 0q-.55 0-.925-.375t-.375-.925q0-.55.375-.937.375-.388.925-.388t.925.388q.375.387.375.937t-.375.925q-.375.375-.925.375Zm4.4 0q-.55 0-.925-.375t-.375-.925q0-.55.375-.937.375-.388.925-.388t.925.388q.375.387.375.937t-.375.925q-.375.375-.925.375ZM5.3 22.85q-1.325 0-2.238-.912-.912-.913-.912-2.238V6.3q0-1.325.912-2.238.913-.912 2.238-.912H6v-2h2.575v2h6.85v-2H18v2h.7q1.325 0 2.238.912.912.913.912 2.238v13.4q0 1.325-.912 2.238-.913.912-2.238.912Zm0-3.15h13.4V10H5.3v9.7ZM5.3 8h13.4V6.3H5.3Zm0 0V6.3 8Z\"/></svg>';\n\nconst iconSignature =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" width=\"24\"><path fill=\"#ffffff\" d=\"m9.225 21.225 4.65-4.65h8.45v4.65Zm-5.35-2.2H5.05l8.5-8.5-1.175-1.175-8.5 8.5Zm14.25-9.95L13.8 4.8l1.325-1.325q.625-.65 1.525-.663.9-.012 1.6.663l1.225 1.175q.675.675.663 1.562-.013.888-.663 1.513ZM16.7 10.55 6 21.225H1.675V16.9L12.35 6.225Zm-3.725-.625-.6-.575 1.175 1.175Z\"/></svg>';\n\nconst iconInitial =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" width=\"24\"><path fill=\"#ffffff\" d=\"M6.225 20.775V7h-5V3.225H15V7h-5v13.775Zm9.775 0v-8h-3V9h9.775v3.775h-3v8Z\"/></svg>';\n\nconst iconTimestamp =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" width=\"24\"><path fill=\"#ffffff\" d=\"M9 1h6v2H9zm10.03 6.39 1.42-1.42c-.43-.51-.9-.99-1.41-1.41l-1.42 1.42C16.07 4.74 14.12 4 12 4c-4.97 0-9 4.03-9 9s4.02 9 9 9 9-4.03 9-9c0-2.12-.74-4.07-1.97-5.61zM13 14h-2V8h2v6z\"></path></svg>';\n\nconst iconDropdown =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" width=\"24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke=\"#ffffff\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M3 4.5h14.25M3 9h9.75M3 13.5h9.75m4.5-4.5v12m0 0l-3.75-3.75M17.25 21L21 17.25\" /></svg>';\n\nconst iconAttachment =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\" class=\"size-6\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m18.375 12.739-7.693 7.693a4.5 4.5 0 0 1-6.364-6.364l10.94-10.94A3 3 0 1 1 19.5 7.372L8.552 18.32m.009-.01-.01.01m5.699-9.941-7.81 7.81a1.5 1.5 0 0 0 2.112 2.13\" /></svg>';\n\nconst separator = '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 14.707 14.707\"><g><rect x=\"6.275\" y=\"0\" fill=\"#ffffff7f\" width=\"1\" height=\"15\"/></g></svg>';\n\nconst menuOptions = [\n {id: 'signature', tooltip: 'Signature', icon: iconSignature, class: 'signature'},\n {id: 'initial', tooltip: 'Initials', icon: iconInitial, class: 'initial'},\n {id: 'sep1', tooltip: '', icon: separator, class: 'separator'},\n {id: 'textbox', tooltip: 'Text Box', icon: iconTextbox, class: 'textbox'},\n {id: 'checkbox', tooltip: 'Check Box', icon: iconCheck, class: 'checkbox'},\n {id: 'radio', tooltip: 'Radio Button', icon: iconRadio, class: 'radio'},\n {id: 'dropdown', tooltip: 'Dropdown', icon: iconDropdown, class: 'dropdown'},\n {id: 'sep2', tooltip: '', icon: separator, class: 'separator'},\n {id: 'date', tooltip: 'Date', icon: iconDatepicker, class: 'date'},\n {id: 'timestamp', tooltip: 'Timestamp', icon: iconTimestamp, class: 'timestamp'},\n // {id: 'sep3', tooltip: '', icon: separator},\n {id: 'attachment', tooltip: 'Attachment', icon: iconAttachment, class: 'attachment'},\n // {id: 'payment', tooltip: 'Payment', icon: 'P'},\n];\n\n/**\n * Displays a builder experience for laying out fields in a template. Note that this experience requires a large display area to\n * present all of the required controls, so it is primarily intended to be used in desktop environments.\n */\n@Component({\n tag: 'verdocs-template-fields',\n styleUrl: 'verdocs-template-fields.scss',\n shadow: false,\n})\nexport class VerdocsTemplateFields {\n private templateListenerId = null;\n\n /**\n * The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.\n */\n @Prop() endpoint: VerdocsEndpoint = VerdocsEndpoint.getDefault();\n\n /**\n * The ID of the template to create the document from.\n */\n @Prop({reflect: true, mutable: true}) templateId: string | null = null;\n\n /**\n * If set, (recommended), the host application should create a <DIV> element with a unique ID. When this\n * component renders, the toolbar will be removed from its default location and placed in the target element.\n * This allows the parent application to more easily control its placement and scroll effects.\n *\n * The movement of the toolbar to the target container is not dynamic - it is performed only on the initial\n * render. Host applications should not conditionally render this container. If the toolbar's visibility must\n * be externally controlled, use CSS display options to hide/show it instead.\n */\n @Prop() toolbarTargetId: string | null = null;\n\n /**\n * Event fired if an error occurs. The event details will contain information about the error. Most errors will\n * terminate the process, and the calling application should correct the condition and re-render the component.\n */\n @Event({composed: true}) sdkError: EventEmitter<SDKError>;\n\n /**\n * Event fired when the template is updated in any way. May be used for tasks such as cache invalidation or reporting to other systems.\n */\n @Event({composed: true}) templateUpdated: EventEmitter<{endpoint: VerdocsEndpoint; template: ITemplate; event: string}>;\n\n @Event({composed: true}) fieldsUpdated: EventEmitter<{endpoint: VerdocsEndpoint; templateId: string; event: 'added' | 'deleted' | 'updated'; fields: ITemplateField[]}>;\n\n @State() placing: TFieldType | null = null;\n @State() showMustSelectRole = false;\n @State() selectedRoleName = '';\n\n @State() loading = true;\n @State() template: ITemplate | null = null;\n\n pageHeights: Record<number, number> = {};\n\n @Watch('templateId')\n onTemplateIdChanged() {\n this.listenToTemplate();\n }\n\n // Stop field-placement mode if ESC is pressed\n @Listen('keydown', {target: 'document'})\n handleKeyDown(ev: KeyboardEvent) {\n if (ev.key === 'Escape') {\n this.placing = null;\n }\n }\n\n async componentWillLoad() {\n try {\n this.endpoint.loadSession();\n\n if (!this.templateId) {\n console.log(`[FIELDS] Missing required template ID ${this.templateId}`);\n return;\n }\n\n if (!this.endpoint.session) {\n console.log('[FIELDS] Unable to start builder session, must be authenticated');\n return;\n }\n\n this.listenToTemplate();\n } catch (e) {\n console.log('[FIELDS] Error with fields session', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n }\n }\n\n componentDidRender() {\n interact.dynamicDrop(true);\n\n const toolbarTarget = this.toolbarTargetId ? document.getElementById(this.toolbarTargetId) : null;\n const toolbarEl = document.getElementById('verdocs-template-fields-toolbar');\n if (toolbarTarget && toolbarEl) {\n console.log('[FIELDS] Moving toolbar');\n toolbarEl.remove();\n toolbarTarget.append(toolbarEl);\n }\n }\n\n componentWillUpdate() {\n // If a new role was added and there were none yet so far, or the \"selected\" role was deleted, reset our selection\n const roles = this.template?.roles || [];\n if (!this.selectedRoleName || !roles.find(role => role && role.name === this.selectedRoleName)) {\n this.selectedRoleName = roles[0]?.name || '';\n console.log('[FIELDS] Selected new role', this.selectedRoleName);\n }\n }\n\n disconnectedCallback() {\n this.unlistenToTemplate();\n }\n\n async listenToTemplate() {\n this.unlistenToTemplate();\n Store.subscribe(\n 'templates',\n this.templateId,\n () => getTemplate(this.endpoint, this.templateId),\n false,\n (template: ITemplate) => {\n this.template = template;\n this.loading = false;\n\n if (!this.selectedRoleName) {\n this.selectedRoleName = template.roles?.[0]?.name || '';\n }\n },\n );\n }\n\n unlistenToTemplate() {\n if (this.templateListenerId) {\n Store.store.delListener(this.templateListenerId);\n this.templateListenerId = null;\n }\n }\n\n attachFieldAttributes(pageInfo: IDocumentPageInfo, field: ITemplateField, el: HTMLInputElement) {\n // el.addEventListener('input', e => this.handleFieldChange(field, e));\n el.addEventListener('settingsChanged', () => {\n this.templateUpdated?.emit({endpoint: this.endpoint, template: this.template, event: 'added-field'});\n });\n el.addEventListener('deleted', () => {\n el.remove();\n this.templateUpdated?.emit({endpoint: this.endpoint, template: this.template, event: 'updated-field'});\n });\n el.setAttribute('templateid', this.templateId);\n el.setAttribute('fieldname', field.name);\n el.setAttribute('pageNumber', String(pageInfo.pageNumber));\n el.setAttribute('xScale', String(pageInfo.xScale));\n el.setAttribute('yScale', String(pageInfo.yScale));\n el.setAttribute('name', field.name);\n }\n\n cachedPageInfo: Record<number, IDocumentPageInfo> = {};\n handlePageRendered(e: any) {\n const pageInfo = e.detail as IDocumentPageInfo;\n // console.log('[FIELDS] Page rendered', pageInfo.pageNumber, pageInfo.xScale, pageInfo.yScale);\n this.cachedPageInfo[pageInfo.pageNumber] = pageInfo;\n\n this.pageHeights[pageInfo.pageNumber] = pageInfo.naturalHeight;\n\n (this.template?.fields || [])\n .filter(field => field && field.page === pageInfo.pageNumber)\n .forEach(field => {\n const id = getFieldId(field);\n const el = document.getElementById(id);\n if (el) {\n el.setAttribute('fieldname', field.name);\n el.setAttribute('pagenumber', String(field.page));\n this.makeDraggable(el);\n }\n });\n }\n\n makeDraggable(el: HTMLElement) {\n interact(el).draggable({\n listeners: {\n move: this.handleMoveField.bind(this),\n end: this.handleMoveEnd.bind(this),\n },\n });\n }\n\n async handleMoveField(event: any) {\n const oldX = +(event.target.getAttribute('posX') || 0);\n const oldY = +(event.target.getAttribute('posY') || 0);\n const xScale = +(event.target.getAttribute('xScale') || 1);\n const yScale = +(event.target.getAttribute('yScale') || 1);\n const newX = event.dx / xScale + oldX;\n const newY = event.dy / yScale + oldY;\n event.target.setAttribute('posX', newX);\n event.target.setAttribute('posy', newY);\n updateCssTransform(event.target, 'translate', `${newX}px, ${newY}px`);\n }\n\n async handleMoveEnd(event: any) {\n const name = event.target.getAttribute('fieldname');\n const field = (this.template?.fields || []).find(field => field.name === name);\n if (!field) {\n console.log('[FIELDS] Unable to find field', name, event.target);\n return;\n }\n\n const pageNumber = event.target.getAttribute('pagenumber');\n let {naturalWidth = 612, naturalHeight = 792, renderedHeight = 792} = this.cachedPageInfo[pageNumber];\n const clientRect = event.target.getBoundingClientRect();\n const parent = event.target.parentElement;\n const parentRect = parent.getBoundingClientRect();\n\n const width = field.width || defaultWidth(field.type);\n const height = field.height || defaultHeight(field.type);\n\n // These two being backwards is not a mistake. Left measures \"over\" from the left\n // (positive displacement) while bottom measures \"up\" from the bottom (negative displacement).\n const newX = Math.max(clientRect.left - parentRect.left, 0);\n let newY = Math.max(renderedHeight - (parentRect.bottom - clientRect.bottom), 0);\n\n let newPageNumber = parseInt(pageNumber);\n if (newY > renderedHeight) {\n newPageNumber = Math.min(newPageNumber + 1, (this.template?.documents || [])?.[0]?.pages || 1);\n newY -= renderedHeight;\n renderedHeight = this.cachedPageInfo[newPageNumber].renderedHeight;\n\n console.log('Next page', {newPageNumber, newY, renderedHeight});\n } else if (newY < 0) {\n newPageNumber = Math.max(newPageNumber - 1, 1);\n renderedHeight = this.cachedPageInfo[newPageNumber].renderedHeight;\n newY += renderedHeight;\n console.log('[FIELDS] Next page', {newPageNumber, newY, renderedHeight});\n }\n\n const {x, y} = this.viewCoordinatesToPageCoordinates(newX, newY, pageNumber, naturalWidth - width, naturalHeight - height);\n try {\n const params = {x, y, page: newPageNumber};\n const updatedField = await updateField(this.endpoint, this.templateId, name, params);\n console.log('[FIELDS] Updated', updatedField);\n\n const newTemplate = JSON.parse(JSON.stringify(this.template));\n const fieldIndex = newTemplate.fields.findIndex(field => field.name === name);\n if (fieldIndex > -1) {\n newTemplate.fields[fieldIndex] = updatedField;\n }\n\n Store.updateTemplate(this.templateId, newTemplate);\n event.target.removeAttribute('posX');\n event.target.removeAttribute('posY');\n removeCssTransform(event.target);\n const {xScale = 1, yScale = 1} = this.cachedPageInfo[pageNumber];\n setControlStyles(event.target, updatedField, xScale, yScale);\n this.templateUpdated?.emit({endpoint: this.endpoint, template: newTemplate, event: 'updated-field'});\n } catch (e) {\n VerdocsToast('Error updating field, please try again later', {style: 'error'});\n console.log('[FIELDS] Error updating field', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n event.target.removeAttribute('posX');\n event.target.removeAttribute('posY');\n removeCssTransform(event.target);\n }\n }\n\n generateFieldName(type: string, pageNumber: number) {\n let i = 1;\n let fieldName: string;\n do {\n fieldName = `${type}P${pageNumber}-${i}`;\n i++;\n } while ((this.template?.fields || []).some(field => field && field.name === fieldName));\n\n return fieldName;\n }\n\n // Scale the X,Y clicks to the virtual page dimensions. Also ensure the field doesn't go off the page.\n viewCoordinatesToPageCoordinates(viewX: number, viewY: number, pageNumber: number, xMax: number, yMax: number) {\n const {xScale = 1, yScale = 1, renderedHeight = 792} = this.cachedPageInfo[pageNumber];\n const x = Math.floor(Math.min(viewX / xScale, xMax));\n const y = Math.floor(Math.min(Math.max(renderedHeight - viewY, 0) / yScale, yMax));\n return {x, y};\n }\n\n async handleClickPage(e: any, pageNumber: number) {\n if (this.placing) {\n const clickedX = e.offsetX;\n const clickedY = e.offsetY;\n\n const width = defaultWidth(this.placing);\n const height = defaultHeight(this.placing);\n\n const cachedPage = this.cachedPageInfo[pageNumber];\n const {naturalWidth = 612, naturalHeight = 792} = cachedPage;\n\n const coords = this.viewCoordinatesToPageCoordinates(clickedX, clickedY, pageNumber, naturalWidth - width, naturalHeight - height);\n const x = Math.floor(coords.x);\n const y = Math.floor(coords.y);\n\n const field: ITemplateField = {\n name: this.generateFieldName(this.placing, pageNumber), // 'textboxP1-22',\n role_name: this.selectedRoleName,\n template_id: this.templateId,\n document_id: cachedPage.documentId,\n type: this.placing,\n required: this.placing !== 'radio',\n page: pageNumber,\n validator: null,\n label: null,\n default: null,\n placeholder: null,\n group: null,\n settings: {},\n x,\n y,\n width,\n height,\n multiline: false,\n readonly: false,\n options: this.placing === 'radio' ? [{id: 'option-1', label: 'Option 1'}] : [],\n };\n console.log('[FIELDS] Will save new field', field);\n\n const newField = await createField(this.endpoint, this.templateId, field);\n console.log('[FIELDS] Saved field', newField);\n\n const newTemplate = JSON.parse(JSON.stringify(this.template));\n newTemplate.fields.push(newField);\n Store.updateTemplate(this.templateId, newTemplate);\n this.templateUpdated?.emit({endpoint: this.endpoint, template: newTemplate, event: 'added-field'});\n\n this.placing = null;\n }\n }\n\n render() {\n if (this.loading) {\n return (\n <Host>\n <verdocs-loader />\n </Host>\n );\n }\n\n if (!this.endpoint.session) {\n return (\n <Host>\n <verdocs-component-error message=\"You must be authenticated to use this module.\" />\n </Host>\n );\n }\n\n const selectableRoles = (this.template?.roles || []).map(role => ({value: role.name, label: role.full_name ? `${role.name}: ${role.full_name}` : role.name}));\n\n return (\n <Host class={this.placing ? {[`placing-${this.placing}`]: true} : {}} onSubmit={() => {}}>\n <div id=\"verdocs-template-fields-toolbar\">\n <div class=\"add-for\">Add field:</div>\n <verdocs-select-input value={this.selectedRoleName} options={selectableRoles} onInput={(e: any) => (this.selectedRoleName = e.target.value)} />\n\n {menuOptions.map(option => (\n <verdocs-toolbar-icon\n text={option.tooltip}\n icon={option.icon}\n class={option.class}\n onClick={() => {\n // We ignore empty-tooltip entries because they're separators\n if (option.tooltip) {\n // We require a role to be selected first\n if (this.selectedRoleName) {\n this.placing = option.id as TFieldType;\n } else {\n this.showMustSelectRole = true;\n }\n }\n }}\n />\n ))}\n </div>\n\n {/* <div class=\"page-0\" ref={el => (this.page0El = el as HTMLDivElement)}>*/}\n {/* <div class=\"user-placed-fields\">*/}\n {/* <div class=\"title\">User-Placed Fields</div>*/}\n {/* <verdocs-field-signature*/}\n {/* field={testField}*/}\n {/* style={{width: '82px', height: '41px', left: '20px', top: '40px', transform: 'scale(1,1)', backgroundColor: getRGBA(0)}}*/}\n {/* moveable={true}*/}\n {/* editable={true}*/}\n {/* />*/}\n {/* </div>*/}\n {/*</div>*/}\n\n <div class=\"pages\">\n {(this.template?.documents || []).map(document => {\n const pageNumbers = integerSequence(1, document.pages);\n\n return pageNumbers.map(page => {\n const pageSize = document.page_sizes[page];\n\n return (\n <verdocs-template-document-page\n templateId={this.templateId}\n documentId={document.id}\n pageNumber={page}\n virtualWidth={pageSize?.width || 612}\n virtualHeight={pageSize?.height || 792}\n disabled={true}\n editable={true}\n done={false}\n onClick={(e: PointerEvent) => this.handleClickPage(e, page)}\n onPageRendered={e => this.handlePageRendered(e)}\n layers={[\n {name: 'page', type: 'canvas'},\n {name: 'controls', type: 'div'},\n ]}\n />\n );\n });\n })}\n </div>\n {this.showMustSelectRole && (\n <verdocs-ok-dialog\n heading=\"Unable to add field\"\n message={(this.template?.roles || []).length > 0 ? 'Please select a role before adding fields.' : 'Please add at least one role before adding fields.'}\n onNext={() => (this.showMustSelectRole = false)}\n />\n )}\n </Host>\n );\n }\n}\n","/*! Sortable 1.15.6 - MIT | git://github.com/SortableJS/Sortable.git */\n!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=t||self).Sortable=e()}(this,function(){\"use strict\";function e(e,t){var n,o=Object.keys(e);return Object.getOwnPropertySymbols&&(n=Object.getOwnPropertySymbols(e),t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),o.push.apply(o,n)),o}function I(o){for(var t=1;t<arguments.length;t++){var i=null!=arguments[t]?arguments[t]:{};t%2?e(Object(i),!0).forEach(function(t){var e,n;e=o,t=i[n=t],n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t}):Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(i)):e(Object(i)).forEach(function(t){Object.defineProperty(o,t,Object.getOwnPropertyDescriptor(i,t))})}return o}function o(t){return(o=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t})(t)}function a(){return(a=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n,o=arguments[e];for(n in o)Object.prototype.hasOwnProperty.call(o,n)&&(t[n]=o[n])}return t}).apply(this,arguments)}function i(t,e){if(null==t)return{};var n,o=function(t,e){if(null==t)return{};for(var n,o={},i=Object.keys(t),r=0;r<i.length;r++)n=i[r],0<=e.indexOf(n)||(o[n]=t[n]);return o}(t,e);if(Object.getOwnPropertySymbols)for(var i=Object.getOwnPropertySymbols(t),r=0;r<i.length;r++)n=i[r],0<=e.indexOf(n)||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n]);return o}function r(t){return function(t){if(Array.isArray(t))return l(t)}(t)||function(t){if(\"undefined\"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t[\"@@iterator\"])return Array.from(t)}(t)||function(t,e){if(t){if(\"string\"==typeof t)return l(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return\"Map\"===(n=\"Object\"===n&&t.constructor?t.constructor.name:n)||\"Set\"===n?Array.from(t):\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?l(t,e):void 0}}(t)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function l(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}function t(t){if(\"undefined\"!=typeof window&&window.navigator)return!!navigator.userAgent.match(t)}var y=t(/(?:Trident.*rv[ :]?11\\.|msie|iemobile|Windows Phone)/i),w=t(/Edge/i),s=t(/firefox/i),u=t(/safari/i)&&!t(/chrome/i)&&!t(/android/i),c=t(/iP(ad|od|hone)/i),n=t(/chrome/i)&&t(/android/i),d={capture:!1,passive:!1};function h(t,e,n){t.addEventListener(e,n,!y&&d)}function p(t,e,n){t.removeEventListener(e,n,!y&&d)}function f(t,e){if(e&&(\">\"===e[0]&&(e=e.substring(1)),t))try{if(t.matches)return t.matches(e);if(t.msMatchesSelector)return t.msMatchesSelector(e);if(t.webkitMatchesSelector)return t.webkitMatchesSelector(e)}catch(t){return}}function g(t){return t.host&&t!==document&&t.host.nodeType?t.host:t.parentNode}function P(t,e,n,o){if(t){n=n||document;do{if(null!=e&&(\">\"!==e[0]||t.parentNode===n)&&f(t,e)||o&&t===n)return t}while(t!==n&&(t=g(t)))}return null}var m,v=/\\s+/g;function k(t,e,n){var o;t&&e&&(t.classList?t.classList[n?\"add\":\"remove\"](e):(o=(\" \"+t.className+\" \").replace(v,\" \").replace(\" \"+e+\" \",\" \"),t.className=(o+(n?\" \"+e:\"\")).replace(v,\" \")))}function R(t,e,n){var o=t&&t.style;if(o){if(void 0===n)return document.defaultView&&document.defaultView.getComputedStyle?n=document.defaultView.getComputedStyle(t,\"\"):t.currentStyle&&(n=t.currentStyle),void 0===e?n:n[e];o[e=!(e in o||-1!==e.indexOf(\"webkit\"))?\"-webkit-\"+e:e]=n+(\"string\"==typeof n?\"\":\"px\")}}function b(t,e){var n=\"\";if(\"string\"==typeof t)n=t;else do{var o=R(t,\"transform\")}while(o&&\"none\"!==o&&(n=o+\" \"+n),!e&&(t=t.parentNode));var i=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return i&&new i(n)}function D(t,e,n){if(t){var o=t.getElementsByTagName(e),i=0,r=o.length;if(n)for(;i<r;i++)n(o[i],i);return o}return[]}function O(){var t=document.scrollingElement;return t||document.documentElement}function X(t,e,n,o,i){if(t.getBoundingClientRect||t===window){var r,a,l,s,c,u,d=t!==window&&t.parentNode&&t!==O()?(a=(r=t.getBoundingClientRect()).top,l=r.left,s=r.bottom,c=r.right,u=r.height,r.width):(l=a=0,s=window.innerHeight,c=window.innerWidth,u=window.innerHeight,window.innerWidth);if((e||n)&&t!==window&&(i=i||t.parentNode,!y))do{if(i&&i.getBoundingClientRect&&(\"none\"!==R(i,\"transform\")||n&&\"static\"!==R(i,\"position\"))){var h=i.getBoundingClientRect();a-=h.top+parseInt(R(i,\"border-top-width\")),l-=h.left+parseInt(R(i,\"border-left-width\")),s=a+r.height,c=l+r.width;break}}while(i=i.parentNode);return o&&t!==window&&(o=(e=b(i||t))&&e.a,t=e&&e.d,e&&(s=(a/=t)+(u/=t),c=(l/=o)+(d/=o))),{top:a,left:l,bottom:s,right:c,width:d,height:u}}}function Y(t,e,n){for(var o=M(t,!0),i=X(t)[e];o;){var r=X(o)[n];if(!(\"top\"===n||\"left\"===n?r<=i:i<=r))return o;if(o===O())break;o=M(o,!1)}return!1}function B(t,e,n,o){for(var i=0,r=0,a=t.children;r<a.length;){if(\"none\"!==a[r].style.display&&a[r]!==jt.ghost&&(o||a[r]!==jt.dragged)&&P(a[r],n.draggable,t,!1)){if(i===e)return a[r];i++}r++}return null}function F(t,e){for(var n=t.lastElementChild;n&&(n===jt.ghost||\"none\"===R(n,\"display\")||e&&!f(n,e));)n=n.previousElementSibling;return n||null}function j(t,e){var n=0;if(!t||!t.parentNode)return-1;for(;t=t.previousElementSibling;)\"TEMPLATE\"===t.nodeName.toUpperCase()||t===jt.clone||e&&!f(t,e)||n++;return n}function E(t){var e=0,n=0,o=O();if(t)do{var i=b(t),r=i.a,i=i.d}while(e+=t.scrollLeft*r,n+=t.scrollTop*i,t!==o&&(t=t.parentNode));return[e,n]}function M(t,e){if(!t||!t.getBoundingClientRect)return O();var n=t,o=!1;do{if(n.clientWidth<n.scrollWidth||n.clientHeight<n.scrollHeight){var i=R(n);if(n.clientWidth<n.scrollWidth&&(\"auto\"==i.overflowX||\"scroll\"==i.overflowX)||n.clientHeight<n.scrollHeight&&(\"auto\"==i.overflowY||\"scroll\"==i.overflowY)){if(!n.getBoundingClientRect||n===document.body)return O();if(o||e)return n;o=!0}}}while(n=n.parentNode);return O()}function S(t,e){return Math.round(t.top)===Math.round(e.top)&&Math.round(t.left)===Math.round(e.left)&&Math.round(t.height)===Math.round(e.height)&&Math.round(t.width)===Math.round(e.width)}function _(e,n){return function(){var t;m||(1===(t=arguments).length?e.call(this,t[0]):e.apply(this,t),m=setTimeout(function(){m=void 0},n))}}function H(t,e,n){t.scrollLeft+=e,t.scrollTop+=n}function C(t){var e=window.Polymer,n=window.jQuery||window.Zepto;return e&&e.dom?e.dom(t).cloneNode(!0):n?n(t).clone(!0)[0]:t.cloneNode(!0)}function T(t,e){R(t,\"position\",\"absolute\"),R(t,\"top\",e.top),R(t,\"left\",e.left),R(t,\"width\",e.width),R(t,\"height\",e.height)}function x(t){R(t,\"position\",\"\"),R(t,\"top\",\"\"),R(t,\"left\",\"\"),R(t,\"width\",\"\"),R(t,\"height\",\"\")}function L(n,o,i){var r={};return Array.from(n.children).forEach(function(t){var e;P(t,o.draggable,n,!1)&&!t.animated&&t!==i&&(e=X(t),r.left=Math.min(null!==(t=r.left)&&void 0!==t?t:1/0,e.left),r.top=Math.min(null!==(t=r.top)&&void 0!==t?t:1/0,e.top),r.right=Math.max(null!==(t=r.right)&&void 0!==t?t:-1/0,e.right),r.bottom=Math.max(null!==(t=r.bottom)&&void 0!==t?t:-1/0,e.bottom))}),r.width=r.right-r.left,r.height=r.bottom-r.top,r.x=r.left,r.y=r.top,r}var K=\"Sortable\"+(new Date).getTime();function A(){var e,o=[];return{captureAnimationState:function(){o=[],this.options.animation&&[].slice.call(this.el.children).forEach(function(t){var e,n;\"none\"!==R(t,\"display\")&&t!==jt.ghost&&(o.push({target:t,rect:X(t)}),e=I({},o[o.length-1].rect),!t.thisAnimationDuration||(n=b(t,!0))&&(e.top-=n.f,e.left-=n.e),t.fromRect=e)})},addAnimationState:function(t){o.push(t)},removeAnimationState:function(t){o.splice(function(t,e){for(var n in t)if(t.hasOwnProperty(n))for(var o in e)if(e.hasOwnProperty(o)&&e[o]===t[n][o])return Number(n);return-1}(o,{target:t}),1)},animateAll:function(t){var c=this;if(!this.options.animation)return clearTimeout(e),void(\"function\"==typeof t&&t());var u=!1,d=0;o.forEach(function(t){var e=0,n=t.target,o=n.fromRect,i=X(n),r=n.prevFromRect,a=n.prevToRect,l=t.rect,s=b(n,!0);s&&(i.top-=s.f,i.left-=s.e),n.toRect=i,n.thisAnimationDuration&&S(r,i)&&!S(o,i)&&(l.top-i.top)/(l.left-i.left)==(o.top-i.top)/(o.left-i.left)&&(t=l,s=r,r=a,a=c.options,e=Math.sqrt(Math.pow(s.top-t.top,2)+Math.pow(s.left-t.left,2))/Math.sqrt(Math.pow(s.top-r.top,2)+Math.pow(s.left-r.left,2))*a.animation),S(i,o)||(n.prevFromRect=o,n.prevToRect=i,e=e||c.options.animation,c.animate(n,l,i,e)),e&&(u=!0,d=Math.max(d,e),clearTimeout(n.animationResetTimer),n.animationResetTimer=setTimeout(function(){n.animationTime=0,n.prevFromRect=null,n.fromRect=null,n.prevToRect=null,n.thisAnimationDuration=null},e),n.thisAnimationDuration=e)}),clearTimeout(e),u?e=setTimeout(function(){\"function\"==typeof t&&t()},d):\"function\"==typeof t&&t(),o=[]},animate:function(t,e,n,o){var i,r;o&&(R(t,\"transition\",\"\"),R(t,\"transform\",\"\"),i=(r=b(this.el))&&r.a,r=r&&r.d,i=(e.left-n.left)/(i||1),r=(e.top-n.top)/(r||1),t.animatingX=!!i,t.animatingY=!!r,R(t,\"transform\",\"translate3d(\"+i+\"px,\"+r+\"px,0)\"),this.forRepaintDummy=t.offsetWidth,R(t,\"transition\",\"transform \"+o+\"ms\"+(this.options.easing?\" \"+this.options.easing:\"\")),R(t,\"transform\",\"translate3d(0,0,0)\"),\"number\"==typeof t.animated&&clearTimeout(t.animated),t.animated=setTimeout(function(){R(t,\"transition\",\"\"),R(t,\"transform\",\"\"),t.animated=!1,t.animatingX=!1,t.animatingY=!1},o))}}}var N=[],W={initializeByDefault:!0},z={mount:function(e){for(var t in W)!W.hasOwnProperty(t)||t in e||(e[t]=W[t]);N.forEach(function(t){if(t.pluginName===e.pluginName)throw\"Sortable: Cannot mount plugin \".concat(e.pluginName,\" more than once\")}),N.push(e)},pluginEvent:function(e,n,o){var t=this;this.eventCanceled=!1,o.cancel=function(){t.eventCanceled=!0};var i=e+\"Global\";N.forEach(function(t){n[t.pluginName]&&(n[t.pluginName][i]&&n[t.pluginName][i](I({sortable:n},o)),n.options[t.pluginName]&&n[t.pluginName][e]&&n[t.pluginName][e](I({sortable:n},o)))})},initializePlugins:function(n,o,i,t){for(var e in N.forEach(function(t){var e=t.pluginName;(n.options[e]||t.initializeByDefault)&&((t=new t(n,o,n.options)).sortable=n,t.options=n.options,n[e]=t,a(i,t.defaults))}),n.options){var r;n.options.hasOwnProperty(e)&&(void 0!==(r=this.modifyOption(n,e,n.options[e]))&&(n.options[e]=r))}},getEventProperties:function(e,n){var o={};return N.forEach(function(t){\"function\"==typeof t.eventProperties&&a(o,t.eventProperties.call(n[t.pluginName],e))}),o},modifyOption:function(e,n,o){var i;return N.forEach(function(t){e[t.pluginName]&&t.optionListeners&&\"function\"==typeof t.optionListeners[n]&&(i=t.optionListeners[n].call(e[t.pluginName],o))}),i}};function G(t){var e=t.sortable,n=t.rootEl,o=t.name,i=t.targetEl,r=t.cloneEl,a=t.toEl,l=t.fromEl,s=t.oldIndex,c=t.newIndex,u=t.oldDraggableIndex,d=t.newDraggableIndex,h=t.originalEvent,p=t.putSortable,f=t.extraEventProperties;if(e=e||n&&n[K]){var g,m=e.options,t=\"on\"+o.charAt(0).toUpperCase()+o.substr(1);!window.CustomEvent||y||w?(g=document.createEvent(\"Event\")).initEvent(o,!0,!0):g=new CustomEvent(o,{bubbles:!0,cancelable:!0}),g.to=a||n,g.from=l||n,g.item=i||n,g.clone=r,g.oldIndex=s,g.newIndex=c,g.oldDraggableIndex=u,g.newDraggableIndex=d,g.originalEvent=h,g.pullMode=p?p.lastPutMode:void 0;var v,b=I(I({},f),z.getEventProperties(o,e));for(v in b)g[v]=b[v];n&&n.dispatchEvent(g),m[t]&&m[t].call(e,g)}}function U(t,e){var n=(o=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}).evt,o=i(o,q);z.pluginEvent.bind(jt)(t,e,I({dragEl:Z,parentEl:$,ghostEl:Q,rootEl:J,nextEl:tt,lastDownEl:et,cloneEl:nt,cloneHidden:ot,dragStarted:mt,putSortable:ct,activeSortable:jt.active,originalEvent:n,oldIndex:it,oldDraggableIndex:at,newIndex:rt,newDraggableIndex:lt,hideGhostForTarget:Xt,unhideGhostForTarget:Yt,cloneNowHidden:function(){ot=!0},cloneNowShown:function(){ot=!1},dispatchSortableEvent:function(t){V({sortable:e,name:t,originalEvent:n})}},o))}var q=[\"evt\"];function V(t){G(I({putSortable:ct,cloneEl:nt,targetEl:Z,rootEl:J,oldIndex:it,oldDraggableIndex:at,newIndex:rt,newDraggableIndex:lt},t))}var Z,$,Q,J,tt,et,nt,ot,it,rt,at,lt,st,ct,ut,dt,ht,pt,ft,gt,mt,vt,bt,yt,wt,Dt=!1,Et=!1,St=[],_t=!1,Ct=!1,Tt=[],xt=!1,Ot=[],Mt=\"undefined\"!=typeof document,At=c,Nt=w||y?\"cssFloat\":\"float\",It=Mt&&!n&&!c&&\"draggable\"in document.createElement(\"div\"),Pt=function(){if(Mt){if(y)return!1;var t=document.createElement(\"x\");return t.style.cssText=\"pointer-events:auto\",\"auto\"===t.style.pointerEvents}}(),kt=function(t,e){var n=R(t),o=parseInt(n.width)-parseInt(n.paddingLeft)-parseInt(n.paddingRight)-parseInt(n.borderLeftWidth)-parseInt(n.borderRightWidth),i=B(t,0,e),r=B(t,1,e),a=i&&R(i),l=r&&R(r),s=a&&parseInt(a.marginLeft)+parseInt(a.marginRight)+X(i).width,t=l&&parseInt(l.marginLeft)+parseInt(l.marginRight)+X(r).width;if(\"flex\"===n.display)return\"column\"===n.flexDirection||\"column-reverse\"===n.flexDirection?\"vertical\":\"horizontal\";if(\"grid\"===n.display)return n.gridTemplateColumns.split(\" \").length<=1?\"vertical\":\"horizontal\";if(i&&a.float&&\"none\"!==a.float){e=\"left\"===a.float?\"left\":\"right\";return!r||\"both\"!==l.clear&&l.clear!==e?\"horizontal\":\"vertical\"}return i&&(\"block\"===a.display||\"flex\"===a.display||\"table\"===a.display||\"grid\"===a.display||o<=s&&\"none\"===n[Nt]||r&&\"none\"===n[Nt]&&o<s+t)?\"vertical\":\"horizontal\"},Rt=function(t){function l(r,a){return function(t,e,n,o){var i=t.options.group.name&&e.options.group.name&&t.options.group.name===e.options.group.name;if(null==r&&(a||i))return!0;if(null==r||!1===r)return!1;if(a&&\"clone\"===r)return r;if(\"function\"==typeof r)return l(r(t,e,n,o),a)(t,e,n,o);e=(a?t:e).options.group.name;return!0===r||\"string\"==typeof r&&r===e||r.join&&-1<r.indexOf(e)}}var e={},n=t.group;n&&\"object\"==o(n)||(n={name:n}),e.name=n.name,e.checkPull=l(n.pull,!0),e.checkPut=l(n.put),e.revertClone=n.revertClone,t.group=e},Xt=function(){!Pt&&Q&&R(Q,\"display\",\"none\")},Yt=function(){!Pt&&Q&&R(Q,\"display\",\"\")};Mt&&!n&&document.addEventListener(\"click\",function(t){if(Et)return t.preventDefault(),t.stopPropagation&&t.stopPropagation(),t.stopImmediatePropagation&&t.stopImmediatePropagation(),Et=!1},!0);function Bt(t){if(Z){t=t.touches?t.touches[0]:t;var e=(i=t.clientX,r=t.clientY,St.some(function(t){var e=t[K].options.emptyInsertThreshold;if(e&&!F(t)){var n=X(t),o=i>=n.left-e&&i<=n.right+e,e=r>=n.top-e&&r<=n.bottom+e;return o&&e?a=t:void 0}}),a);if(e){var n,o={};for(n in t)t.hasOwnProperty(n)&&(o[n]=t[n]);o.target=o.rootEl=e,o.preventDefault=void 0,o.stopPropagation=void 0,e[K]._onDragOver(o)}}var i,r,a}function Ft(t){Z&&Z.parentNode[K]._isOutsideThisEl(t.target)}function jt(t,e){if(!t||!t.nodeType||1!==t.nodeType)throw\"Sortable: `el` must be an HTMLElement, not \".concat({}.toString.call(t));this.el=t,this.options=e=a({},e),t[K]=this;var n,o,i={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(t.nodeName)?\">li\":\">*\",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return kt(t,this.options)},ghostClass:\"sortable-ghost\",chosenClass:\"sortable-chosen\",dragClass:\"sortable-drag\",ignore:\"a, img\",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(t,e){t.setData(\"Text\",e.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:\"data-id\",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:\"sortable-fallback\",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:!1!==jt.supportPointer&&\"PointerEvent\"in window&&(!u||c),emptyInsertThreshold:5};for(n in z.initializePlugins(this,t,i),i)n in e||(e[n]=i[n]);for(o in Rt(e),this)\"_\"===o.charAt(0)&&\"function\"==typeof this[o]&&(this[o]=this[o].bind(this));this.nativeDraggable=!e.forceFallback&&It,this.nativeDraggable&&(this.options.touchStartThreshold=1),e.supportPointer?h(t,\"pointerdown\",this._onTapStart):(h(t,\"mousedown\",this._onTapStart),h(t,\"touchstart\",this._onTapStart)),this.nativeDraggable&&(h(t,\"dragover\",this),h(t,\"dragenter\",this)),St.push(this.el),e.store&&e.store.get&&this.sort(e.store.get(this)||[]),a(this,A())}function Ht(t,e,n,o,i,r,a,l){var s,c,u=t[K],d=u.options.onMove;return!window.CustomEvent||y||w?(s=document.createEvent(\"Event\")).initEvent(\"move\",!0,!0):s=new CustomEvent(\"move\",{bubbles:!0,cancelable:!0}),s.to=e,s.from=t,s.dragged=n,s.draggedRect=o,s.related=i||e,s.relatedRect=r||X(e),s.willInsertAfter=l,s.originalEvent=a,t.dispatchEvent(s),c=d?d.call(u,s,a):c}function Lt(t){t.draggable=!1}function Kt(){xt=!1}function Wt(t){return setTimeout(t,0)}function zt(t){return clearTimeout(t)}jt.prototype={constructor:jt,_isOutsideThisEl:function(t){this.el.contains(t)||t===this.el||(vt=null)},_getDirection:function(t,e){return\"function\"==typeof this.options.direction?this.options.direction.call(this,t,e,Z):this.options.direction},_onTapStart:function(e){if(e.cancelable){var n=this,o=this.el,t=this.options,i=t.preventOnFilter,r=e.type,a=e.touches&&e.touches[0]||e.pointerType&&\"touch\"===e.pointerType&&e,l=(a||e).target,s=e.target.shadowRoot&&(e.path&&e.path[0]||e.composedPath&&e.composedPath()[0])||l,c=t.filter;if(!function(t){Ot.length=0;var e=t.getElementsByTagName(\"input\"),n=e.length;for(;n--;){var o=e[n];o.checked&&Ot.push(o)}}(o),!Z&&!(/mousedown|pointerdown/.test(r)&&0!==e.button||t.disabled)&&!s.isContentEditable&&(this.nativeDraggable||!u||!l||\"SELECT\"!==l.tagName.toUpperCase())&&!((l=P(l,t.draggable,o,!1))&&l.animated||et===l)){if(it=j(l),at=j(l,t.draggable),\"function\"==typeof c){if(c.call(this,e,l,this))return V({sortable:n,rootEl:s,name:\"filter\",targetEl:l,toEl:o,fromEl:o}),U(\"filter\",n,{evt:e}),void(i&&e.preventDefault())}else if(c=c&&c.split(\",\").some(function(t){if(t=P(s,t.trim(),o,!1))return V({sortable:n,rootEl:t,name:\"filter\",targetEl:l,fromEl:o,toEl:o}),U(\"filter\",n,{evt:e}),!0}))return void(i&&e.preventDefault());t.handle&&!P(s,t.handle,o,!1)||this._prepareDragStart(e,a,l)}}},_prepareDragStart:function(t,e,n){var o,i=this,r=i.el,a=i.options,l=r.ownerDocument;n&&!Z&&n.parentNode===r&&(o=X(n),J=r,$=(Z=n).parentNode,tt=Z.nextSibling,et=n,st=a.group,ut={target:jt.dragged=Z,clientX:(e||t).clientX,clientY:(e||t).clientY},ft=ut.clientX-o.left,gt=ut.clientY-o.top,this._lastX=(e||t).clientX,this._lastY=(e||t).clientY,Z.style[\"will-change\"]=\"all\",o=function(){U(\"delayEnded\",i,{evt:t}),jt.eventCanceled?i._onDrop():(i._disableDelayedDragEvents(),!s&&i.nativeDraggable&&(Z.draggable=!0),i._triggerDragStart(t,e),V({sortable:i,name:\"choose\",originalEvent:t}),k(Z,a.chosenClass,!0))},a.ignore.split(\",\").forEach(function(t){D(Z,t.trim(),Lt)}),h(l,\"dragover\",Bt),h(l,\"mousemove\",Bt),h(l,\"touchmove\",Bt),a.supportPointer?(h(l,\"pointerup\",i._onDrop),this.nativeDraggable||h(l,\"pointercancel\",i._onDrop)):(h(l,\"mouseup\",i._onDrop),h(l,\"touchend\",i._onDrop),h(l,\"touchcancel\",i._onDrop)),s&&this.nativeDraggable&&(this.options.touchStartThreshold=4,Z.draggable=!0),U(\"delayStart\",this,{evt:t}),!a.delay||a.delayOnTouchOnly&&!e||this.nativeDraggable&&(w||y)?o():jt.eventCanceled?this._onDrop():(a.supportPointer?(h(l,\"pointerup\",i._disableDelayedDrag),h(l,\"pointercancel\",i._disableDelayedDrag)):(h(l,\"mouseup\",i._disableDelayedDrag),h(l,\"touchend\",i._disableDelayedDrag),h(l,\"touchcancel\",i._disableDelayedDrag)),h(l,\"mousemove\",i._delayedDragTouchMoveHandler),h(l,\"touchmove\",i._delayedDragTouchMoveHandler),a.supportPointer&&h(l,\"pointermove\",i._delayedDragTouchMoveHandler),i._dragStartTimer=setTimeout(o,a.delay)))},_delayedDragTouchMoveHandler:function(t){t=t.touches?t.touches[0]:t;Math.max(Math.abs(t.clientX-this._lastX),Math.abs(t.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){Z&&Lt(Z),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var t=this.el.ownerDocument;p(t,\"mouseup\",this._disableDelayedDrag),p(t,\"touchend\",this._disableDelayedDrag),p(t,\"touchcancel\",this._disableDelayedDrag),p(t,\"pointerup\",this._disableDelayedDrag),p(t,\"pointercancel\",this._disableDelayedDrag),p(t,\"mousemove\",this._delayedDragTouchMoveHandler),p(t,\"touchmove\",this._delayedDragTouchMoveHandler),p(t,\"pointermove\",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(t,e){e=e||\"touch\"==t.pointerType&&t,!this.nativeDraggable||e?this.options.supportPointer?h(document,\"pointermove\",this._onTouchMove):h(document,e?\"touchmove\":\"mousemove\",this._onTouchMove):(h(Z,\"dragend\",this),h(J,\"dragstart\",this._onDragStart));try{document.selection?Wt(function(){document.selection.empty()}):window.getSelection().removeAllRanges()}catch(t){}},_dragStarted:function(t,e){var n;Dt=!1,J&&Z?(U(\"dragStarted\",this,{evt:e}),this.nativeDraggable&&h(document,\"dragover\",Ft),n=this.options,t||k(Z,n.dragClass,!1),k(Z,n.ghostClass,!0),jt.active=this,t&&this._appendGhost(),V({sortable:this,name:\"start\",originalEvent:e})):this._nulling()},_emulateDragOver:function(){if(dt){this._lastX=dt.clientX,this._lastY=dt.clientY,Xt();for(var t=document.elementFromPoint(dt.clientX,dt.clientY),e=t;t&&t.shadowRoot&&(t=t.shadowRoot.elementFromPoint(dt.clientX,dt.clientY))!==e;)e=t;if(Z.parentNode[K]._isOutsideThisEl(t),e)do{if(e[K])if(e[K]._onDragOver({clientX:dt.clientX,clientY:dt.clientY,target:t,rootEl:e})&&!this.options.dragoverBubble)break}while(e=g(t=e));Yt()}},_onTouchMove:function(t){if(ut){var e=this.options,n=e.fallbackTolerance,o=e.fallbackOffset,i=t.touches?t.touches[0]:t,r=Q&&b(Q,!0),a=Q&&r&&r.a,l=Q&&r&&r.d,e=At&&wt&&E(wt),a=(i.clientX-ut.clientX+o.x)/(a||1)+(e?e[0]-Tt[0]:0)/(a||1),l=(i.clientY-ut.clientY+o.y)/(l||1)+(e?e[1]-Tt[1]:0)/(l||1);if(!jt.active&&!Dt){if(n&&Math.max(Math.abs(i.clientX-this._lastX),Math.abs(i.clientY-this._lastY))<n)return;this._onDragStart(t,!0)}Q&&(r?(r.e+=a-(ht||0),r.f+=l-(pt||0)):r={a:1,b:0,c:0,d:1,e:a,f:l},r=\"matrix(\".concat(r.a,\",\").concat(r.b,\",\").concat(r.c,\",\").concat(r.d,\",\").concat(r.e,\",\").concat(r.f,\")\"),R(Q,\"webkitTransform\",r),R(Q,\"mozTransform\",r),R(Q,\"msTransform\",r),R(Q,\"transform\",r),ht=a,pt=l,dt=i),t.cancelable&&t.preventDefault()}},_appendGhost:function(){if(!Q){var t=this.options.fallbackOnBody?document.body:J,e=X(Z,!0,At,!0,t),n=this.options;if(At){for(wt=t;\"static\"===R(wt,\"position\")&&\"none\"===R(wt,\"transform\")&&wt!==document;)wt=wt.parentNode;wt!==document.body&&wt!==document.documentElement?(wt===document&&(wt=O()),e.top+=wt.scrollTop,e.left+=wt.scrollLeft):wt=O(),Tt=E(wt)}k(Q=Z.cloneNode(!0),n.ghostClass,!1),k(Q,n.fallbackClass,!0),k(Q,n.dragClass,!0),R(Q,\"transition\",\"\"),R(Q,\"transform\",\"\"),R(Q,\"box-sizing\",\"border-box\"),R(Q,\"margin\",0),R(Q,\"top\",e.top),R(Q,\"left\",e.left),R(Q,\"width\",e.width),R(Q,\"height\",e.height),R(Q,\"opacity\",\"0.8\"),R(Q,\"position\",At?\"absolute\":\"fixed\"),R(Q,\"zIndex\",\"100000\"),R(Q,\"pointerEvents\",\"none\"),jt.ghost=Q,t.appendChild(Q),R(Q,\"transform-origin\",ft/parseInt(Q.style.width)*100+\"% \"+gt/parseInt(Q.style.height)*100+\"%\")}},_onDragStart:function(t,e){var n=this,o=t.dataTransfer,i=n.options;U(\"dragStart\",this,{evt:t}),jt.eventCanceled?this._onDrop():(U(\"setupClone\",this),jt.eventCanceled||((nt=C(Z)).removeAttribute(\"id\"),nt.draggable=!1,nt.style[\"will-change\"]=\"\",this._hideClone(),k(nt,this.options.chosenClass,!1),jt.clone=nt),n.cloneId=Wt(function(){U(\"clone\",n),jt.eventCanceled||(n.options.removeCloneOnHide||J.insertBefore(nt,Z),n._hideClone(),V({sortable:n,name:\"clone\"}))}),e||k(Z,i.dragClass,!0),e?(Et=!0,n._loopId=setInterval(n._emulateDragOver,50)):(p(document,\"mouseup\",n._onDrop),p(document,\"touchend\",n._onDrop),p(document,\"touchcancel\",n._onDrop),o&&(o.effectAllowed=\"move\",i.setData&&i.setData.call(n,o,Z)),h(document,\"drop\",n),R(Z,\"transform\",\"translateZ(0)\")),Dt=!0,n._dragStartId=Wt(n._dragStarted.bind(n,e,t)),h(document,\"selectstart\",n),mt=!0,window.getSelection().removeAllRanges(),u&&R(document.body,\"user-select\",\"none\"))},_onDragOver:function(n){var o,i,r,t,e,a=this.el,l=n.target,s=this.options,c=s.group,u=jt.active,d=st===c,h=s.sort,p=ct||u,f=this,g=!1;if(!xt){if(void 0!==n.preventDefault&&n.cancelable&&n.preventDefault(),l=P(l,s.draggable,a,!0),O(\"dragOver\"),jt.eventCanceled)return g;if(Z.contains(n.target)||l.animated&&l.animatingX&&l.animatingY||f._ignoreWhileAnimating===l)return A(!1);if(Et=!1,u&&!s.disabled&&(d?h||(i=$!==J):ct===this||(this.lastPutMode=st.checkPull(this,u,Z,n))&&c.checkPut(this,u,Z,n))){if(r=\"vertical\"===this._getDirection(n,l),o=X(Z),O(\"dragOverValid\"),jt.eventCanceled)return g;if(i)return $=J,M(),this._hideClone(),O(\"revert\"),jt.eventCanceled||(tt?J.insertBefore(Z,tt):J.appendChild(Z)),A(!0);var m=F(a,s.draggable);if(m&&(S=n,c=r,x=X(F((E=this).el,E.options.draggable)),E=L(E.el,E.options,Q),!(c?S.clientX>E.right+10||S.clientY>x.bottom&&S.clientX>x.left:S.clientY>E.bottom+10||S.clientX>x.right&&S.clientY>x.top)||m.animated)){if(m&&(t=n,e=r,C=X(B((_=this).el,0,_.options,!0)),_=L(_.el,_.options,Q),e?t.clientX<_.left-10||t.clientY<C.top&&t.clientX<C.right:t.clientY<_.top-10||t.clientY<C.bottom&&t.clientX<C.left)){var v=B(a,0,s,!0);if(v===Z)return A(!1);if(D=X(l=v),!1!==Ht(J,a,Z,o,l,D,n,!1))return M(),a.insertBefore(Z,v),$=a,N(),A(!0)}else if(l.parentNode===a){var b,y,w,D=X(l),E=Z.parentNode!==a,S=(S=Z.animated&&Z.toRect||o,x=l.animated&&l.toRect||D,_=(e=r)?S.left:S.top,t=e?S.right:S.bottom,C=e?S.width:S.height,v=e?x.left:x.top,S=e?x.right:x.bottom,x=e?x.width:x.height,!(_===v||t===S||_+C/2===v+x/2)),_=r?\"top\":\"left\",C=Y(l,\"top\",\"top\")||Y(Z,\"top\",\"top\"),v=C?C.scrollTop:void 0;if(vt!==l&&(y=D[_],_t=!1,Ct=!S&&s.invertSwap||E),0!==(b=function(t,e,n,o,i,r,a,l){var s=o?t.clientY:t.clientX,c=o?n.height:n.width,t=o?n.top:n.left,o=o?n.bottom:n.right,n=!1;if(!a)if(l&&yt<c*i){if(_t=!_t&&(1===bt?t+c*r/2<s:s<o-c*r/2)?!0:_t)n=!0;else if(1===bt?s<t+yt:o-yt<s)return-bt}else if(t+c*(1-i)/2<s&&s<o-c*(1-i)/2)return function(t){return j(Z)<j(t)?1:-1}(e);if((n=n||a)&&(s<t+c*r/2||o-c*r/2<s))return t+c/2<s?1:-1;return 0}(n,l,D,r,S?1:s.swapThreshold,null==s.invertedSwapThreshold?s.swapThreshold:s.invertedSwapThreshold,Ct,vt===l)))for(var T=j(Z);(w=$.children[T-=b])&&(\"none\"===R(w,\"display\")||w===Q););if(0===b||w===l)return A(!1);bt=b;var x=(vt=l).nextElementSibling,E=!1,S=Ht(J,a,Z,o,l,D,n,E=1===b);if(!1!==S)return 1!==S&&-1!==S||(E=1===S),xt=!0,setTimeout(Kt,30),M(),E&&!x?a.appendChild(Z):l.parentNode.insertBefore(Z,E?x:l),C&&H(C,0,v-C.scrollTop),$=Z.parentNode,void 0===y||Ct||(yt=Math.abs(y-X(l)[_])),N(),A(!0)}}else{if(m===Z)return A(!1);if((l=m&&a===n.target?m:l)&&(D=X(l)),!1!==Ht(J,a,Z,o,l,D,n,!!l))return M(),m&&m.nextSibling?a.insertBefore(Z,m.nextSibling):a.appendChild(Z),$=a,N(),A(!0)}if(a.contains(Z))return A(!1)}return!1}function O(t,e){U(t,f,I({evt:n,isOwner:d,axis:r?\"vertical\":\"horizontal\",revert:i,dragRect:o,targetRect:D,canSort:h,fromSortable:p,target:l,completed:A,onMove:function(t,e){return Ht(J,a,Z,o,t,X(t),n,e)},changed:N},e))}function M(){O(\"dragOverAnimationCapture\"),f.captureAnimationState(),f!==p&&p.captureAnimationState()}function A(t){return O(\"dragOverCompleted\",{insertion:t}),t&&(d?u._hideClone():u._showClone(f),f!==p&&(k(Z,(ct||u).options.ghostClass,!1),k(Z,s.ghostClass,!0)),ct!==f&&f!==jt.active?ct=f:f===jt.active&&ct&&(ct=null),p===f&&(f._ignoreWhileAnimating=l),f.animateAll(function(){O(\"dragOverAnimationComplete\"),f._ignoreWhileAnimating=null}),f!==p&&(p.animateAll(),p._ignoreWhileAnimating=null)),(l===Z&&!Z.animated||l===a&&!l.animated)&&(vt=null),s.dragoverBubble||n.rootEl||l===document||(Z.parentNode[K]._isOutsideThisEl(n.target),t||Bt(n)),!s.dragoverBubble&&n.stopPropagation&&n.stopPropagation(),g=!0}function N(){rt=j(Z),lt=j(Z,s.draggable),V({sortable:f,name:\"change\",toEl:a,newIndex:rt,newDraggableIndex:lt,originalEvent:n})}},_ignoreWhileAnimating:null,_offMoveEvents:function(){p(document,\"mousemove\",this._onTouchMove),p(document,\"touchmove\",this._onTouchMove),p(document,\"pointermove\",this._onTouchMove),p(document,\"dragover\",Bt),p(document,\"mousemove\",Bt),p(document,\"touchmove\",Bt)},_offUpEvents:function(){var t=this.el.ownerDocument;p(t,\"mouseup\",this._onDrop),p(t,\"touchend\",this._onDrop),p(t,\"pointerup\",this._onDrop),p(t,\"pointercancel\",this._onDrop),p(t,\"touchcancel\",this._onDrop),p(document,\"selectstart\",this)},_onDrop:function(t){var e=this.el,n=this.options;rt=j(Z),lt=j(Z,n.draggable),U(\"drop\",this,{evt:t}),$=Z&&Z.parentNode,rt=j(Z),lt=j(Z,n.draggable),jt.eventCanceled||(_t=Ct=Dt=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),zt(this.cloneId),zt(this._dragStartId),this.nativeDraggable&&(p(document,\"drop\",this),p(e,\"dragstart\",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),u&&R(document.body,\"user-select\",\"\"),R(Z,\"transform\",\"\"),t&&(mt&&(t.cancelable&&t.preventDefault(),n.dropBubble||t.stopPropagation()),Q&&Q.parentNode&&Q.parentNode.removeChild(Q),(J===$||ct&&\"clone\"!==ct.lastPutMode)&&nt&&nt.parentNode&&nt.parentNode.removeChild(nt),Z&&(this.nativeDraggable&&p(Z,\"dragend\",this),Lt(Z),Z.style[\"will-change\"]=\"\",mt&&!Dt&&k(Z,(ct||this).options.ghostClass,!1),k(Z,this.options.chosenClass,!1),V({sortable:this,name:\"unchoose\",toEl:$,newIndex:null,newDraggableIndex:null,originalEvent:t}),J!==$?(0<=rt&&(V({rootEl:$,name:\"add\",toEl:$,fromEl:J,originalEvent:t}),V({sortable:this,name:\"remove\",toEl:$,originalEvent:t}),V({rootEl:$,name:\"sort\",toEl:$,fromEl:J,originalEvent:t}),V({sortable:this,name:\"sort\",toEl:$,originalEvent:t})),ct&&ct.save()):rt!==it&&0<=rt&&(V({sortable:this,name:\"update\",toEl:$,originalEvent:t}),V({sortable:this,name:\"sort\",toEl:$,originalEvent:t})),jt.active&&(null!=rt&&-1!==rt||(rt=it,lt=at),V({sortable:this,name:\"end\",toEl:$,originalEvent:t}),this.save())))),this._nulling()},_nulling:function(){U(\"nulling\",this),J=Z=$=Q=tt=nt=et=ot=ut=dt=mt=rt=lt=it=at=vt=bt=ct=st=jt.dragged=jt.ghost=jt.clone=jt.active=null,Ot.forEach(function(t){t.checked=!0}),Ot.length=ht=pt=0},handleEvent:function(t){switch(t.type){case\"drop\":case\"dragend\":this._onDrop(t);break;case\"dragenter\":case\"dragover\":Z&&(this._onDragOver(t),function(t){t.dataTransfer&&(t.dataTransfer.dropEffect=\"move\");t.cancelable&&t.preventDefault()}(t));break;case\"selectstart\":t.preventDefault()}},toArray:function(){for(var t,e=[],n=this.el.children,o=0,i=n.length,r=this.options;o<i;o++)P(t=n[o],r.draggable,this.el,!1)&&e.push(t.getAttribute(r.dataIdAttr)||function(t){var e=t.tagName+t.className+t.src+t.href+t.textContent,n=e.length,o=0;for(;n--;)o+=e.charCodeAt(n);return o.toString(36)}(t));return e},sort:function(t,e){var n={},o=this.el;this.toArray().forEach(function(t,e){e=o.children[e];P(e,this.options.draggable,o,!1)&&(n[t]=e)},this),e&&this.captureAnimationState(),t.forEach(function(t){n[t]&&(o.removeChild(n[t]),o.appendChild(n[t]))}),e&&this.animateAll()},save:function(){var t=this.options.store;t&&t.set&&t.set(this)},closest:function(t,e){return P(t,e||this.options.draggable,this.el,!1)},option:function(t,e){var n=this.options;if(void 0===e)return n[t];var o=z.modifyOption(this,t,e);n[t]=void 0!==o?o:e,\"group\"===t&&Rt(n)},destroy:function(){U(\"destroy\",this);var t=this.el;t[K]=null,p(t,\"mousedown\",this._onTapStart),p(t,\"touchstart\",this._onTapStart),p(t,\"pointerdown\",this._onTapStart),this.nativeDraggable&&(p(t,\"dragover\",this),p(t,\"dragenter\",this)),Array.prototype.forEach.call(t.querySelectorAll(\"[draggable]\"),function(t){t.removeAttribute(\"draggable\")}),this._onDrop(),this._disableDelayedDragEvents(),St.splice(St.indexOf(this.el),1),this.el=t=null},_hideClone:function(){ot||(U(\"hideClone\",this),jt.eventCanceled||(R(nt,\"display\",\"none\"),this.options.removeCloneOnHide&&nt.parentNode&&nt.parentNode.removeChild(nt),ot=!0))},_showClone:function(t){\"clone\"===t.lastPutMode?ot&&(U(\"showClone\",this),jt.eventCanceled||(Z.parentNode!=J||this.options.group.revertClone?tt?J.insertBefore(nt,tt):J.appendChild(nt):J.insertBefore(nt,Z),this.options.group.revertClone&&this.animate(Z,nt),R(nt,\"display\",\"\"),ot=!1)):this._hideClone()}},Mt&&h(document,\"touchmove\",function(t){(jt.active||Dt)&&t.cancelable&&t.preventDefault()}),jt.utils={on:h,off:p,css:R,find:D,is:function(t,e){return!!P(t,e,t,!1)},extend:function(t,e){if(t&&e)for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t},throttle:_,closest:P,toggleClass:k,clone:C,index:j,nextTick:Wt,cancelNextTick:zt,detectDirection:kt,getChild:B,expando:K},jt.get=function(t){return t[K]},jt.mount=function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];(e=e[0].constructor===Array?e[0]:e).forEach(function(t){if(!t.prototype||!t.prototype.constructor)throw\"Sortable: Mounted plugin must be a constructor function, not \".concat({}.toString.call(t));t.utils&&(jt.utils=I(I({},jt.utils),t.utils)),z.mount(t)})},jt.create=function(t,e){return new jt(t,e)};var Gt,Ut,qt,Vt,Zt,$t,Qt=[],Jt=!(jt.version=\"1.15.6\");function te(){Qt.forEach(function(t){clearInterval(t.pid)}),Qt=[]}function ee(){clearInterval($t)}var ne,oe=_(function(n,t,e,o){if(t.scroll){var i,r=(n.touches?n.touches[0]:n).clientX,a=(n.touches?n.touches[0]:n).clientY,l=t.scrollSensitivity,s=t.scrollSpeed,c=O(),u=!1;Ut!==e&&(Ut=e,te(),Gt=t.scroll,i=t.scrollFn,!0===Gt&&(Gt=M(e,!0)));var d=0,h=Gt;do{var p=h,f=X(p),g=f.top,m=f.bottom,v=f.left,b=f.right,y=f.width,w=f.height,D=void 0,E=void 0,S=p.scrollWidth,_=p.scrollHeight,C=R(p),T=p.scrollLeft,f=p.scrollTop,E=p===c?(D=y<S&&(\"auto\"===C.overflowX||\"scroll\"===C.overflowX||\"visible\"===C.overflowX),w<_&&(\"auto\"===C.overflowY||\"scroll\"===C.overflowY||\"visible\"===C.overflowY)):(D=y<S&&(\"auto\"===C.overflowX||\"scroll\"===C.overflowX),w<_&&(\"auto\"===C.overflowY||\"scroll\"===C.overflowY)),T=D&&(Math.abs(b-r)<=l&&T+y<S)-(Math.abs(v-r)<=l&&!!T),f=E&&(Math.abs(m-a)<=l&&f+w<_)-(Math.abs(g-a)<=l&&!!f);if(!Qt[d])for(var x=0;x<=d;x++)Qt[x]||(Qt[x]={});Qt[d].vx==T&&Qt[d].vy==f&&Qt[d].el===p||(Qt[d].el=p,Qt[d].vx=T,Qt[d].vy=f,clearInterval(Qt[d].pid),0==T&&0==f||(u=!0,Qt[d].pid=setInterval(function(){o&&0===this.layer&&jt.active._onTouchMove(Zt);var t=Qt[this.layer].vy?Qt[this.layer].vy*s:0,e=Qt[this.layer].vx?Qt[this.layer].vx*s:0;\"function\"==typeof i&&\"continue\"!==i.call(jt.dragged.parentNode[K],e,t,n,Zt,Qt[this.layer].el)||H(Qt[this.layer].el,e,t)}.bind({layer:d}),24))),d++}while(t.bubbleScroll&&h!==c&&(h=M(h,!1)));Jt=u}},30),n=function(t){var e=t.originalEvent,n=t.putSortable,o=t.dragEl,i=t.activeSortable,r=t.dispatchSortableEvent,a=t.hideGhostForTarget,t=t.unhideGhostForTarget;e&&(i=n||i,a(),e=e.changedTouches&&e.changedTouches.length?e.changedTouches[0]:e,e=document.elementFromPoint(e.clientX,e.clientY),t(),i&&!i.el.contains(e)&&(r(\"spill\"),this.onSpill({dragEl:o,putSortable:n})))};function ie(){}function re(){}ie.prototype={startIndex:null,dragStart:function(t){t=t.oldDraggableIndex;this.startIndex=t},onSpill:function(t){var e=t.dragEl,n=t.putSortable;this.sortable.captureAnimationState(),n&&n.captureAnimationState();t=B(this.sortable.el,this.startIndex,this.options);t?this.sortable.el.insertBefore(e,t):this.sortable.el.appendChild(e),this.sortable.animateAll(),n&&n.animateAll()},drop:n},a(ie,{pluginName:\"revertOnSpill\"}),re.prototype={onSpill:function(t){var e=t.dragEl,t=t.putSortable||this.sortable;t.captureAnimationState(),e.parentNode&&e.parentNode.removeChild(e),t.animateAll()},drop:n},a(re,{pluginName:\"removeOnSpill\"});var ae,le,se,ce,ue,de=[],he=[],pe=!1,fe=!1,ge=!1;function me(n,o){he.forEach(function(t,e){e=o.children[t.sortableIndex+(n?Number(e):0)];e?o.insertBefore(t,e):o.appendChild(t)})}function ve(){de.forEach(function(t){t!==se&&t.parentNode&&t.parentNode.removeChild(t)})}return jt.mount(new function(){function t(){for(var t in this.defaults={scroll:!0,forceAutoScrollFallback:!1,scrollSensitivity:30,scrollSpeed:10,bubbleScroll:!0},this)\"_\"===t.charAt(0)&&\"function\"==typeof this[t]&&(this[t]=this[t].bind(this))}return t.prototype={dragStarted:function(t){t=t.originalEvent;this.sortable.nativeDraggable?h(document,\"dragover\",this._handleAutoScroll):this.options.supportPointer?h(document,\"pointermove\",this._handleFallbackAutoScroll):t.touches?h(document,\"touchmove\",this._handleFallbackAutoScroll):h(document,\"mousemove\",this._handleFallbackAutoScroll)},dragOverCompleted:function(t){t=t.originalEvent;this.options.dragOverBubble||t.rootEl||this._handleAutoScroll(t)},drop:function(){this.sortable.nativeDraggable?p(document,\"dragover\",this._handleAutoScroll):(p(document,\"pointermove\",this._handleFallbackAutoScroll),p(document,\"touchmove\",this._handleFallbackAutoScroll),p(document,\"mousemove\",this._handleFallbackAutoScroll)),ee(),te(),clearTimeout(m),m=void 0},nulling:function(){Zt=Ut=Gt=Jt=$t=qt=Vt=null,Qt.length=0},_handleFallbackAutoScroll:function(t){this._handleAutoScroll(t,!0)},_handleAutoScroll:function(e,n){var o,i=this,r=(e.touches?e.touches[0]:e).clientX,a=(e.touches?e.touches[0]:e).clientY,t=document.elementFromPoint(r,a);Zt=e,n||this.options.forceAutoScrollFallback||w||y||u?(oe(e,this.options,t,n),o=M(t,!0),!Jt||$t&&r===qt&&a===Vt||($t&&ee(),$t=setInterval(function(){var t=M(document.elementFromPoint(r,a),!0);t!==o&&(o=t,te()),oe(e,i.options,t,n)},10),qt=r,Vt=a)):this.options.bubbleScroll&&M(t,!0)!==O()?oe(e,this.options,M(t,!1),!1):te()}},a(t,{pluginName:\"scroll\",initializeByDefault:!0})}),jt.mount(re,ie),jt.mount(new function(){function t(){this.defaults={swapClass:\"sortable-swap-highlight\"}}return t.prototype={dragStart:function(t){t=t.dragEl;ne=t},dragOverValid:function(t){var e=t.completed,n=t.target,o=t.onMove,i=t.activeSortable,r=t.changed,a=t.cancel;i.options.swap&&(t=this.sortable.el,i=this.options,n&&n!==t&&(t=ne,ne=!1!==o(n)?(k(n,i.swapClass,!0),n):null,t&&t!==ne&&k(t,i.swapClass,!1)),r(),e(!0),a())},drop:function(t){var e,n,o=t.activeSortable,i=t.putSortable,r=t.dragEl,a=i||this.sortable,l=this.options;ne&&k(ne,l.swapClass,!1),ne&&(l.swap||i&&i.options.swap)&&r!==ne&&(a.captureAnimationState(),a!==o&&o.captureAnimationState(),n=ne,t=(e=r).parentNode,l=n.parentNode,t&&l&&!t.isEqualNode(n)&&!l.isEqualNode(e)&&(i=j(e),r=j(n),t.isEqualNode(l)&&i<r&&r++,t.insertBefore(n,t.children[i]),l.insertBefore(e,l.children[r])),a.animateAll(),a!==o&&o.animateAll())},nulling:function(){ne=null}},a(t,{pluginName:\"swap\",eventProperties:function(){return{swapItem:ne}}})}),jt.mount(new function(){function t(o){for(var t in this)\"_\"===t.charAt(0)&&\"function\"==typeof this[t]&&(this[t]=this[t].bind(this));o.options.avoidImplicitDeselect||(o.options.supportPointer?h(document,\"pointerup\",this._deselectMultiDrag):(h(document,\"mouseup\",this._deselectMultiDrag),h(document,\"touchend\",this._deselectMultiDrag))),h(document,\"keydown\",this._checkKeyDown),h(document,\"keyup\",this._checkKeyUp),this.defaults={selectedClass:\"sortable-selected\",multiDragKey:null,avoidImplicitDeselect:!1,setData:function(t,e){var n=\"\";de.length&&le===o?de.forEach(function(t,e){n+=(e?\", \":\"\")+t.textContent}):n=e.textContent,t.setData(\"Text\",n)}}}return t.prototype={multiDragKeyDown:!1,isMultiDrag:!1,delayStartGlobal:function(t){t=t.dragEl;se=t},delayEnded:function(){this.isMultiDrag=~de.indexOf(se)},setupClone:function(t){var e=t.sortable,t=t.cancel;if(this.isMultiDrag){for(var n=0;n<de.length;n++)he.push(C(de[n])),he[n].sortableIndex=de[n].sortableIndex,he[n].draggable=!1,he[n].style[\"will-change\"]=\"\",k(he[n],this.options.selectedClass,!1),de[n]===se&&k(he[n],this.options.chosenClass,!1);e._hideClone(),t()}},clone:function(t){var e=t.sortable,n=t.rootEl,o=t.dispatchSortableEvent,t=t.cancel;this.isMultiDrag&&(this.options.removeCloneOnHide||de.length&&le===e&&(me(!0,n),o(\"clone\"),t()))},showClone:function(t){var e=t.cloneNowShown,n=t.rootEl,t=t.cancel;this.isMultiDrag&&(me(!1,n),he.forEach(function(t){R(t,\"display\",\"\")}),e(),ue=!1,t())},hideClone:function(t){var e=this,n=(t.sortable,t.cloneNowHidden),t=t.cancel;this.isMultiDrag&&(he.forEach(function(t){R(t,\"display\",\"none\"),e.options.removeCloneOnHide&&t.parentNode&&t.parentNode.removeChild(t)}),n(),ue=!0,t())},dragStartGlobal:function(t){t.sortable;!this.isMultiDrag&&le&&le.multiDrag._deselectMultiDrag(),de.forEach(function(t){t.sortableIndex=j(t)}),de=de.sort(function(t,e){return t.sortableIndex-e.sortableIndex}),ge=!0},dragStarted:function(t){var e,n=this,t=t.sortable;this.isMultiDrag&&(this.options.sort&&(t.captureAnimationState(),this.options.animation&&(de.forEach(function(t){t!==se&&R(t,\"position\",\"absolute\")}),e=X(se,!1,!0,!0),de.forEach(function(t){t!==se&&T(t,e)}),pe=fe=!0)),t.animateAll(function(){pe=fe=!1,n.options.animation&&de.forEach(function(t){x(t)}),n.options.sort&&ve()}))},dragOver:function(t){var e=t.target,n=t.completed,t=t.cancel;fe&&~de.indexOf(e)&&(n(!1),t())},revert:function(t){var n,o,e=t.fromSortable,i=t.rootEl,r=t.sortable,a=t.dragRect;1<de.length&&(de.forEach(function(t){r.addAnimationState({target:t,rect:fe?X(t):a}),x(t),t.fromRect=a,e.removeAnimationState(t)}),fe=!1,n=!this.options.removeCloneOnHide,o=i,de.forEach(function(t,e){e=o.children[t.sortableIndex+(n?Number(e):0)];e?o.insertBefore(t,e):o.appendChild(t)}))},dragOverCompleted:function(t){var e,n=t.sortable,o=t.isOwner,i=t.insertion,r=t.activeSortable,a=t.parentEl,l=t.putSortable,t=this.options;i&&(o&&r._hideClone(),pe=!1,t.animation&&1<de.length&&(fe||!o&&!r.options.sort&&!l)&&(e=X(se,!1,!0,!0),de.forEach(function(t){t!==se&&(T(t,e),a.appendChild(t))}),fe=!0),o||(fe||ve(),1<de.length?(o=ue,r._showClone(n),r.options.animation&&!ue&&o&&he.forEach(function(t){r.addAnimationState({target:t,rect:ce}),t.fromRect=ce,t.thisAnimationDuration=null})):r._showClone(n)))},dragOverAnimationCapture:function(t){var e=t.dragRect,n=t.isOwner,t=t.activeSortable;de.forEach(function(t){t.thisAnimationDuration=null}),t.options.animation&&!n&&t.multiDrag.isMultiDrag&&(ce=a({},e),e=b(se,!0),ce.top-=e.f,ce.left-=e.e)},dragOverAnimationComplete:function(){fe&&(fe=!1,ve())},drop:function(t){var o,i,r,a,n,e,l,s=t.originalEvent,c=t.rootEl,u=t.parentEl,d=t.sortable,h=t.dispatchSortableEvent,p=t.oldIndex,t=t.putSortable,f=t||this.sortable;s&&(o=this.options,i=u.children,ge||(o.multiDragKey&&!this.multiDragKeyDown&&this._deselectMultiDrag(),k(se,o.selectedClass,!~de.indexOf(se)),~de.indexOf(se)?(de.splice(de.indexOf(se),1),ae=null,G({sortable:d,rootEl:c,name:\"deselect\",targetEl:se,originalEvent:s})):(de.push(se),G({sortable:d,rootEl:c,name:\"select\",targetEl:se,originalEvent:s}),s.shiftKey&&ae&&d.el.contains(ae)?(r=j(ae),a=j(se),~r&&~a&&r!==a&&function(){for(var e,t=r<a?(e=r,a):(e=a,r+1),n=o.filter;e<t;e++)~de.indexOf(i[e])||P(i[e],o.draggable,u,!1)&&(n&&(\"function\"==typeof n?n.call(d,s,i[e],d):n.split(\",\").some(function(t){return P(i[e],t.trim(),u,!1)}))||(k(i[e],o.selectedClass,!0),de.push(i[e]),G({sortable:d,rootEl:c,name:\"select\",targetEl:i[e],originalEvent:s})))}()):ae=se,le=f)),ge&&this.isMultiDrag&&(fe=!1,(u[K].options.sort||u!==c)&&1<de.length&&(n=X(se),e=j(se,\":not(.\"+this.options.selectedClass+\")\"),!pe&&o.animation&&(se.thisAnimationDuration=null),f.captureAnimationState(),pe||(o.animation&&(se.fromRect=n,de.forEach(function(t){var e;t.thisAnimationDuration=null,t!==se&&(e=fe?X(t):n,t.fromRect=e,f.addAnimationState({target:t,rect:e}))})),ve(),de.forEach(function(t){i[e]?u.insertBefore(t,i[e]):u.appendChild(t),e++}),p===j(se)&&(l=!1,de.forEach(function(t){t.sortableIndex!==j(t)&&(l=!0)}),l&&(h(\"update\"),h(\"sort\")))),de.forEach(function(t){x(t)}),f.animateAll()),le=f),(c===u||t&&\"clone\"!==t.lastPutMode)&&he.forEach(function(t){t.parentNode&&t.parentNode.removeChild(t)}))},nullingGlobal:function(){this.isMultiDrag=ge=!1,he.length=0},destroyGlobal:function(){this._deselectMultiDrag(),p(document,\"pointerup\",this._deselectMultiDrag),p(document,\"mouseup\",this._deselectMultiDrag),p(document,\"touchend\",this._deselectMultiDrag),p(document,\"keydown\",this._checkKeyDown),p(document,\"keyup\",this._checkKeyUp)},_deselectMultiDrag:function(t){if(!(void 0!==ge&&ge||le!==this.sortable||t&&P(t.target,this.options.draggable,this.sortable.el,!1)||t&&0!==t.button))for(;de.length;){var e=de[0];k(e,this.options.selectedClass,!1),de.shift(),G({sortable:this.sortable,rootEl:this.sortable.el,name:\"deselect\",targetEl:e,originalEvent:t})}},_checkKeyDown:function(t){t.key===this.options.multiDragKey&&(this.multiDragKeyDown=!0)},_checkKeyUp:function(t){t.key===this.options.multiDragKey&&(this.multiDragKeyDown=!1)}},a(t,{pluginName:\"multiDrag\",utils:{select:function(t){var e=t.parentNode[K];e&&e.options.multiDrag&&!~de.indexOf(t)&&(le&&le!==e&&(le.multiDrag._deselectMultiDrag(),le=e),k(t,e.options.selectedClass,!0),de.push(t))},deselect:function(t){var e=t.parentNode[K],n=de.indexOf(t);e&&e.options.multiDrag&&~n&&(k(t,e.options.selectedClass,!1),de.splice(n,1))}},eventProperties:function(){var n=this,o=[],i=[];return de.forEach(function(t){var e;o.push({multiDragElement:t,index:t.sortableIndex}),e=fe&&t!==se?-1:fe?j(t,\":not(.\"+n.options.selectedClass+\")\"):j(t),i.push({multiDragElement:t,index:e})}),{items:r(de),clones:[].concat(he),oldIndicies:o,newIndicies:i}},optionListeners:{multiDragKey:function(t){return\"ctrl\"===(t=t.toLowerCase())?t=\"Control\":1<t.length&&(t=t.charAt(0).toUpperCase()+t.substr(1)),t}}})}),jt});","@import '../../../theme.scss';\n\nverdocs-template-roles {\n display: block;\n max-width: 600px;\n font-family: $verdocs-primary-font;\n\n .roles {\n display: flex;\n flex-direction: column;\n gap: 10px;\n margin-top: 10px;\n\n .sequence {\n gap: 10px;\n //height: 34px;\n display: flex;\n flex-wrap: wrap;\n font-weight: 500;\n padding: 0 0 8px 0;\n flex-direction: row;\n border-bottom: 1px dotted #e3e3e3;\n\n &.add-sequence {\n color: #777777;\n line-height: 34px;\n }\n }\n\n .sequence-label {\n font-size: 18px;\n line-height: 32px;\n }\n\n .sequence-roles {\n gap: 10px;\n display: flex;\n position: relative;\n flex-wrap: wrap;\n flex-direction: row;\n }\n\n .role {\n height: 32px;\n cursor: move;\n display: flex;\n max-width: 200px;\n position: relative;\n border-radius: 32px;\n background-color: #eff7fb;\n box-sizing: border-box;\n padding: 0 14px 0 34px;\n border: 1px solid #ccc;\n flex-direction: column;\n\n .role-name {\n font-size: 14px;\n overflow: hidden;\n font-weight: 400;\n line-height: 30px;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n\n .icons {\n position: absolute;\n left: 1px;\n top: -3px;\n cursor: pointer;\n padding: 5px;\n z-index: 10;\n\n .gear-button {\n display: none;\n transform: scale(1.1);\n margin: 4px 0 0 1px;\n }\n\n .type-icon {\n opacity: 0.6;\n display: block;\n transform: scale(0.8);\n }\n\n &:hover {\n .gear-button {\n display: block;\n }\n\n .type-icon {\n display: none;\n }\n }\n }\n }\n }\n\n > form {\n display: flex;\n flex-direction: column;\n background-color: $verdocs-grey-4;\n\n // The extra right padding helps ensure when dragged elements move to absolute positioning\n padding: 12px;\n\n h5 {\n font-size: 16px;\n font-weight: bold;\n color: $verdocs-grey-blue;\n margin: 0 0 10px 0;\n }\n\n label {\n display: block;\n font-size: 14px;\n font-weight: 500;\n margin: 0 0 4px 0;\n color: $verdocs-bg-4;\n }\n\n input {\n border: none;\n font-size: 18px;\n padding: 3px 6px 3px 0;\n background: transparent;\n border-bottom: 1px solid $verdocs-dark-blue;\n\n &:focus {\n outline: none;\n }\n }\n }\n\n .row.add-sequence {\n display: none;\n }\n\n .add-role {\n opacity: 0.3;\n padding: 0 10px;\n cursor: pointer;\n background: none;\n height: 32px;\n border: 1px solid #cccccc;\n border-radius: 32px;\n\n //transform: scale(0.75);\n\n &:hover {\n opacity: 1;\n }\n\n //svg {\n // width: 32px;\n // height: 32px;\n //}\n }\n\n .add-step {\n margin: 0;\n padding: 0;\n border: none;\n opacity: 0.5;\n cursor: pointer;\n background: none;\n\n &:hover {\n opacity: 1;\n }\n\n svg {\n width: 32px;\n height: 32px;\n }\n }\n\n &.dragging {\n .row.add-sequence {\n display: flex;\n }\n }\n\n .buttons {\n display: flex;\n column-gap: 8px;\n margin-top: 16px;\n flex-direction: row;\n }\n\n .empty {\n font-size: 13px;\n margin-top: 15px;\n margin-bottom: 5px;\n\n svg {\n width: 16px;\n height: 16px;\n stroke: #666666;\n margin-bottom: 2px;\n display: inline-block;\n }\n }\n\n .sequence-roles {\n display: flex;\n max-width: 400px;\n }\n\n ::placeholder {\n color: $verdocs-bg-2;\n }\n}\n","import Sortable from 'sortablejs';\nimport {Component, h, Element, Event, EventEmitter, Host, Prop, State} from '@stencil/core';\nimport {createTemplateRole, formatFullName, getTemplate, IRole, ITemplate, updateTemplateRole, VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {SDKError} from '../../../utils/errors';\nimport {Store} from '../../../utils/Datastore';\n\nconst settingsIcon =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20\" width=\"20\" fill=\"#00000089\"><path d=\"m8.021 17.917-.313-2.5q-.27-.125-.625-.334-.354-.208-.625-.395l-2.312.979-1.979-3.438 1.979-1.5q-.021-.167-.031-.364-.011-.198-.011-.365 0-.146.011-.344.01-.198.031-.385l-1.979-1.5 1.979-3.417 2.312.958q.271-.187.615-.385t.635-.344l.313-2.5h3.958l.313 2.5q.312.167.625.344.312.177.604.385l2.333-.958 1.979 3.417-1.979 1.521q.021.187.021.364V10q0 .146-.01.333-.011.188-.011.396l1.958 1.5-1.979 3.438-2.312-.979q-.292.208-.615.395-.323.188-.614.334l-.313 2.5Zm1.937-5.355q1.063 0 1.813-.75t.75-1.812q0-1.062-.75-1.812t-1.813-.75q-1.041 0-1.802.75-.76.75-.76 1.812t.76 1.812q.761.75 1.802.75Zm0-1.333q-.5 0-.864-.364-.365-.365-.365-.865t.365-.865q.364-.364.864-.364t.865.364q.365.365.365.865t-.365.865q-.365.364-.865.364ZM10.021 10Zm-.854 6.583h1.666l.25-2.187q.605-.167 1.136-.49.531-.323 1.031-.802l2.021.875.854-1.375-1.792-1.354q.105-.333.136-.635.031-.303.031-.615 0-.292-.031-.573-.031-.281-.115-.635l1.792-1.396-.834-1.375-2.062.875q-.438-.438-1.021-.781-.583-.344-1.125-.49l-.271-2.208H9.167l-.271 2.208q-.584.146-1.125.458-.542.313-1.042.792l-2.021-.854-.833 1.375 1.75 1.354q-.083.333-.125.646-.042.312-.042.604t.042.594q.042.302.125.635l-1.75 1.375.833 1.375 2.021-.854q.479.458 1.021.771.542.312 1.146.479Z\"/></svg>';\n\nconst plusIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"#ffffff\" viewBox=\"0 0 24 24\" strokeWidth={1.5} stroke=\"currentColor\"><path strokeLinecap=\"round\" strokeLinejoin=\"round\" d=\"M12 9v6m3-3H9m12 0a9 9 0 11-18 0 9 9 0 0118 0z\" /></svg>`;\n\nconst iconSigner =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" width=\"24\"><path d=\"m9.225 21.225 4.65-4.65h8.45v4.65Zm-5.35-2.2H5.05l8.5-8.5-1.175-1.175-8.5 8.5Zm14.25-9.95L13.8 4.8l1.325-1.325q.625-.65 1.525-.663.9-.012 1.6.663l1.225 1.175q.675.675.663 1.562-.013.888-.663 1.513ZM16.7 10.55 6 21.225H1.675V16.9L12.35 6.225Zm-3.725-.625-.6-.575 1.175 1.175Z\"/></svg>';\n\nconst iconApprover = `<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" width=\"24\"><path fill-rule=\"evenodd\" d=\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12zm13.36-1.814a.75.75 0 10-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 00-1.06 1.06l2.25 2.25a.75.75 0 001.14-.094l3.75-5.25z\" clip-rule=\"evenodd\" /></svg>`;\n\nconst iconCC = `<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" width=\"24\"><path d=\"M1.5 8.67v8.58a3 3 0 003 3h15a3 3 0 003-3V8.67l-8.928 5.493a3 3 0 01-3.144 0L1.5 8.67z\" /><path d=\"M22.5 6.908V6.75a3 3 0 00-3-3h-15a3 3 0 00-3 3v.158l9.714 5.978a1.5 1.5 0 001.572 0L22.5 6.908z\" /></svg>`;\n\n/**\n * Display an edit form that allows the user to adjust a template's roles and workflow.\n */\n@Component({\n tag: 'verdocs-template-roles',\n styleUrl: 'verdocs-template-roles.scss',\n shadow: false,\n})\nexport class VerdocsTemplateRoles {\n private templateListenerId = null;\n\n @Element()\n el: HTMLElement;\n\n /**\n * The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.\n */\n @Prop() endpoint: VerdocsEndpoint = VerdocsEndpoint.getDefault();\n\n /**\n * The template ID to edit.\n */\n @Prop() templateId: string = '';\n\n /**\n * Event fired when the user clicks to proceed.\n */\n @Event({composed: true}) next: EventEmitter;\n\n /**\n * Event fired when the step is cancelled. This is called exit to avoid conflicts with the JS-reserved \"cancel\" event name.\n */\n @Event({composed: true}) exit: EventEmitter;\n\n /**\n * Event fired if an error occurs. The event details will contain information about the error. Most errors will\n * terminate the process, and the calling application should correct the condition and re-render the component.\n */\n @Event({composed: true}) sdkError: EventEmitter<SDKError>;\n\n /**\n * Event fired when the template is updated in any way. May be used for tasks such as cache invalidation or reporting to other systems.\n */\n @Event({composed: true}) rolesUpdated: EventEmitter<{endpoint: VerdocsEndpoint; templateId: string; event: 'added' | 'deleted' | 'updated'; roles: IRole[]}>;\n\n @State() showingRoleDialog: string | null = null;\n @State() sender = null;\n\n @State() dragging = false;\n @State() loading = true;\n @State() template: ITemplate | null = null;\n\n disconnectedCallback() {\n this.unlistenToTemplate();\n this.cleanupSortables();\n }\n\n async listenToTemplate() {\n console.log('[ROLES] Loading template', this.templateId);\n this.unlistenToTemplate();\n Store.subscribe(\n 'templates',\n this.templateId,\n () => getTemplate(this.endpoint, this.templateId),\n false,\n (template: ITemplate) => {\n console.log('[ROLES] Template Updated', template);\n this.template = template;\n this.loading = false;\n },\n );\n }\n\n unlistenToTemplate() {\n if (this.templateListenerId) {\n Store.store.delListener(this.templateListenerId);\n this.templateListenerId = null;\n }\n }\n\n async componentWillLoad() {\n try {\n this.endpoint.loadSession();\n\n if (!this.templateId) {\n console.log(`[ROLES] Missing required template ID ${this.templateId}`);\n return;\n }\n\n if (!this.endpoint.session) {\n console.log('[ROLES] Unable to start builder session, must be authenticated');\n return;\n }\n\n this.listenToTemplate();\n } catch (e) {\n console.log('[ROLES] Error with preview session', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n }\n }\n\n sortableRefs: Sortable[] = [];\n\n cleanupSortables() {\n this.sortableRefs.forEach(sr => sr.destroy());\n this.sortableRefs.length = 0;\n }\n\n componentDidRender() {\n this.cleanupSortables();\n\n // Existing sequence numbers\n const sequenceNumbers = this.getSequenceNumbers();\n (sequenceNumbers || []).forEach(sequence => {\n const el = document.getElementById(`verdocs-roles-sequence-${sequence}`);\n if (el) {\n const sortable = new Sortable(el, {\n group: 'roles',\n animation: 150,\n dragoverBubble: true,\n filter: '.no-drag',\n onEnd: this.handleMoveEnd.bind(this),\n onChoose: () => (this.dragging = true),\n onUnchoose: () => (this.dragging = false),\n });\n this.sortableRefs.push(sortable);\n }\n });\n\n const el = document.getElementById(`verdocs-roles-sequence-add-target`);\n if (el) {\n console.log('[ROLES] Applying sortable to add-sequence slot');\n const sortable = new Sortable(el, {\n group: 'roles',\n animation: 150,\n dragoverBubble: true,\n filter: '.no-drag',\n onEnd: this.handleMoveEnd.bind(this),\n onChoose: () => (this.dragging = true),\n onUnchoose: () => (this.dragging = false),\n });\n this.sortableRefs.push(sortable);\n }\n }\n\n handleMoveEnd(evt) {\n const fromSeq = +evt.from.dataset.sequence;\n const toSeq = +evt.to.dataset.sequence;\n const fromIndex = +evt.oldIndex + 1;\n const toIndex = +evt.newIndex + 1;\n\n console.log(`Move from ${fromSeq}:${fromIndex} to ${toSeq}:${toIndex}`, evt.item);\n\n const sortableRoles: Record<string, IRole[]> = {};\n const sequenceNumbers = this.getSequenceNumbers();\n sequenceNumbers.forEach(sequence => {\n const ras = this.getRolesAtSequence(sequence);\n\n sortableRoles[String(sequence)] = JSON.parse(JSON.stringify(ras));\n });\n\n // We might be adding a new sequence number now. Make sure we have an array to drop\n // the record into.\n sortableRoles[sequenceNumbers[sequenceNumbers.length - 1] + 1] = [];\n\n const role = sortableRoles[fromSeq].splice(fromIndex - 1, 1)[0];\n sortableRoles[toSeq] ||= [];\n sortableRoles[toSeq].splice(toIndex - 1, 0, role);\n\n const renumberRequests = [];\n Object.entries(sortableRoles).forEach(([targetSeq, roles]) => {\n roles.forEach((role, index) => {\n if (!role) {\n return;\n }\n\n const targetOrder = +index + 1;\n if (role.sequence !== +targetSeq || role.order !== targetOrder) {\n role.sequence = +targetSeq;\n role.order = targetOrder;\n renumberRequests.push(\n updateTemplateRole(this.endpoint, this.templateId, role.name, {sequence: +targetSeq, order: targetOrder})\n .then(r => console.log('[ROLES] Updated role', role.name, r))\n .catch(e => console.log('[ROLES] Error updating role', e)),\n );\n }\n });\n });\n\n return Promise.all(renumberRequests)\n .then(async () => console.log('[ROLES] Done renumbering'))\n .catch(e => console.log('[ROLES] Error updating roles', e));\n }\n\n handleCancel() {\n this.exit?.emit();\n }\n\n handleSubmit() {\n this.next?.emit();\n }\n\n getSortedRoles() {\n // NOTE: This mutates the source array but that's OK because everything that touches\n // it will want the same thing done.\n return (this.template?.roles || []).sort((a, b) => {\n return a.sequence === b.sequence ? a.order - b.order : a.sequence - b.sequence;\n });\n }\n\n getSequenceNumbers() {\n // TODO: This is cleaner with a Set but we found a regression in some target environments where\n // this breaks down. Reverting to an older technique while we diagnose it.\n const sequences: Record<number, boolean> = {};\n this.getSortedRoles().forEach(role => {\n sequences[role.sequence] = true;\n });\n console.log('[ROLES] Sequences', sequences);\n return Object.keys(sequences)\n .map(s => +s)\n .sort((a, b) => a - b);\n // const sequenceNumbers = (this.template?.roles || []).map(role => role.sequence);\n // const deduped = [...new Set(sequenceNumbers)];\n // deduped.sort((a, b) => a - b);\n // return deduped;\n }\n\n getRoleNames() {\n const roles = this.getSortedRoles();\n return roles.map(role => role.name);\n }\n\n getRolesAtSequence(sequence: number) {\n // Entries can be undefined when deleted because Stencil has no remove() operator yet for stores.\n // See https://github.com/ionic-team/stencil-store/issues/23\n return (this.template?.roles || []).filter(role => role && role.sequence === sequence);\n }\n\n // When the user drags a role around, we handle placement \"between\" items by assigning it a half-order number\n // e.g. 1.5 to place it between items 1 and 2, 0.5 to place it at the beginning, or last+0.5 to place it at the end.\n // Then we re-sort the list of roles and renumber them.\n async renumberTemplateRoles() {\n const sortableRoles: Record<string, IRole[]> = {};\n const renumberRequests = [];\n const sequenceNumbers = this.getSequenceNumbers();\n\n (sequenceNumbers || []).forEach(targetSeq => {\n (sortableRoles[targetSeq] || []).forEach((role, targetOrderMinusOne) => {\n const targetOrder = +targetOrderMinusOne + 1;\n if (role.sequence !== +targetSeq || role.order !== targetOrder) {\n console.log('[ROLES] Updating role', role.name, 'from', role.sequence, role.order, 'to', targetSeq, targetOrder);\n role.sequence = +targetSeq;\n role.order = targetOrder;\n renumberRequests.push(\n updateTemplateRole(this.endpoint, this.templateId, role.name, {sequence: +targetSeq, order: targetOrder})\n .then(r => console.log('[ROLES] Updated role', role.name, r))\n .catch(e => console.log('[ROLES] Error updating role', e)),\n );\n }\n });\n });\n\n console.log(`[ROLES] Awaiting ${renumberRequests.length} renumber requests`);\n await Promise.all(renumberRequests).then(async () => {\n // When renumbering, we don't try to update the store for every individual item\n // changing. We just do it once at the end.\n const newTemplate = JSON.parse(JSON.stringify(this.template));\n newTemplate.roles = Object.keys(sortableRoles).reduce((acc, seq) => acc.concat(sortableRoles[seq]), []);\n console.log(\n '[ROLES] Done renumbering',\n newTemplate.roles.map(r => ({name: r.name, sequence: r.sequence, order: r.order})),\n );\n Store.updateTemplate(this.templateId, newTemplate);\n // TODO: Explore race condition in reordering roles\n // this.template = await Store.getTemplate(this.endpoint, this.templateId, true);\n });\n\n this.rolesUpdated?.emit({event: 'updated', endpoint: this.endpoint, templateId: this.templateId, roles: this.getSortedRoles()});\n }\n\n // Look for name conflicts, because they're UGC and can be anything, regardless of order.\n getNextRoleName() {\n let name = '';\n let nextNumber = (this.template?.roles || []).length;\n do {\n nextNumber++;\n name = `Recipient ${nextNumber}`;\n } while (!name || (this.template?.roles || []).some(role => role && role.name === name));\n\n return name;\n }\n\n callCreateRole(name: string, sequence: number, order: number) {\n console.log('[ROLES] Will create role', {name, sequence, order});\n createTemplateRole(this.endpoint, this.templateId, {\n template_id: this.templateId,\n name,\n sequence,\n message: '',\n order,\n full_name: null,\n first_name: '',\n last_name: '',\n email: '',\n phone: '',\n type: 'signer',\n delegator: false,\n // auth_method: null,\n })\n .then(async role => {\n console.log('[ROLES] Created role', role);\n // const newTemplate = JSON.parse(JSON.stringify(this.template));\n // newTemplate.roles.push(role);\n // TODO: Verify this immediately triggers a self-update\n console.log('Updating template in data store');\n await Store.getTemplate(this.endpoint, this.templateId, true);\n // Store.updateTemplate(this.templateId, newTemplate);\n // This will re-sort the roles and renumbers them via server calls if necessary\n // await this.renumberTemplateRoles();\n this.rolesUpdated?.emit({event: 'added', endpoint: this.endpoint, templateId: this.templateId, roles: this.getSortedRoles()});\n })\n .catch(e => {\n console.log('[ROLES] Error creating role', e);\n });\n }\n\n handleAddRole(e: any, sequence: number) {\n e.stopPropagation();\n const order = this.getRolesAtSequence(sequence).length + 1;\n const name = this.getNextRoleName();\n this.callCreateRole(name, sequence, order);\n }\n\n handleAddStep(e: any, sequence: number) {\n e.stopPropagation();\n\n const order = 1;\n const name = this.getNextRoleName();\n this.callCreateRole(name, sequence, order);\n }\n\n render() {\n if (!this.endpoint.session) {\n return (\n <Host>\n <verdocs-component-error message=\"You must be authenticated to use this module.\" />\n </Host>\n );\n }\n\n if (this.loading || !this.template) {\n return (\n <Host class=\"loading\">\n <verdocs-loader />\n </Host>\n );\n }\n\n const roleNames = this.getRoleNames();\n const sequences = this.getSequenceNumbers();\n const nextSequence = sequences && sequences.length > 0 ? (sequences[sequences.length - 1] || 0) + 1 : 1;\n\n console.log('[ROLES] Rendering', {roleNames, sequences, nextSequence});\n\n return (\n <Host class={{dragging: this.dragging}}>\n <form onSubmit={e => e.preventDefault()} onClick={e => e.stopPropagation()} autocomplete=\"off\">\n <h5>Roles and Workflow</h5>\n\n <div class=\"roles\">\n {sequences.map((sequence, index) => (\n <div class=\"sequence\">\n <div class=\"sequence-label no-drag\">{index + 1}.</div>\n\n <div class=\"sequence-roles\" id={`verdocs-roles-sequence-${sequence}`} data-sequence={sequence}>\n {this.getRolesAtSequence(sequence).map(role => {\n const unknown = !role.email || !role.first_name || !role.last_name;\n return unknown ? (\n <div class=\"role\" data-rolename={role.name} data-sequence={sequence} data-order={role.order}>\n <div class=\"role-name\">{role.name}</div>\n <div class=\"icons\">\n <div class=\"gear-button\" innerHTML={settingsIcon} onClick={() => (this.showingRoleDialog = role.name)} aria-role=\"button\" />\n <span class=\"type-icon\" innerHTML={role.type === 'signer' ? iconSigner : role.type === 'cc' ? iconCC : iconApprover} />\n </div>\n </div>\n ) : (\n <div class=\"role\" data-rolename={role.name} data-sequence={sequence} data-order={role.order}>\n <div class=\"role-name\">{formatFullName(role)}</div>\n <div class=\"icons\">\n <div class=\"gear-button\" innerHTML={settingsIcon} onClick={() => (this.showingRoleDialog = role.name)} aria-role=\"button\" />\n <span class=\"type-icon\" innerHTML={role.type === 'signer' ? iconSigner : role.type === 'cc' ? iconCC : iconApprover} />\n </div>\n </div>\n );\n })}\n </div>\n\n <button class=\"add-role no-drag\" onClick={e => this.handleAddRole(e, sequence)}>\n + Add Role\n </button>\n </div>\n ))}\n\n <div class=\"sequence add-sequence\">\n <div class=\"sequence-label no-drag\">{sequences.length + 1}.</div>\n\n <div class=\"sequence-roles\" id={`verdocs-roles-sequence-add-target`} data-sequence={nextSequence} />\n\n <button class=\"add-role no-drag\" onClick={e => this.handleAddRole(e, nextSequence)}>\n + Add Role\n </button>\n </div>\n </div>\n\n {roleNames.length < 1 && (\n <div class=\"empty\">\n You must add at least one Role before proceeding.\n <br /> Click the <span innerHTML={plusIcon} /> Add button above to get started.\n </div>\n )}\n\n <div class=\"buttons\">\n <div class=\"flex-fill\" />\n\n <verdocs-button variant=\"outline\" label=\"Cancel\" size=\"small\" onClick={() => this.handleCancel()} />\n <verdocs-button label=\"OK\" size=\"small\" onClick={() => this.handleSubmit()} disabled={roleNames.length < 1} />\n </div>\n </form>\n\n {this.showingRoleDialog && (\n <verdocs-menu-panel onClose={() => (this.showingRoleDialog = null)}>\n <verdocs-template-role-properties\n endpoint={this.endpoint}\n templateId={this.templateId}\n roleName={this.showingRoleDialog}\n onClose={() => {\n document.getElementById('verdocs-menu-panel-overlay')?.remove();\n this.showingRoleDialog = null;\n }}\n onDelete={async () => {\n this.showingRoleDialog = null;\n // This will re-sort the roles and renumbers them via server calls if necessary\n await this.renumberTemplateRoles();\n this.rolesUpdated?.emit({event: 'deleted', endpoint: this.endpoint, templateId: this.templateId, roles: this.getSortedRoles()});\n }}\n />\n </verdocs-menu-panel>\n )}\n </Host>\n );\n }\n}\n","@import '../../../theme.scss';\n\nverdocs-template-settings {\n display: block;\n max-width: 600px;\n font-family: $verdocs-primary-font;\n\n > form {\n display: flex;\n flex-direction: column;\n background-color: $verdocs-grey-4;\n\n // The extra right padding helps ensure when dragged elements move to absolute positioning\n padding: 12px;\n\n h5 {\n font-size: 16px;\n font-weight: bold;\n color: $verdocs-grey-blue;\n margin: 0 0 10px 0;\n }\n\n label {\n display: block;\n font-size: 14px;\n font-weight: 500;\n margin: 0 0 4px 0;\n color: $verdocs-bg-4;\n }\n\n input {\n border: none;\n font-size: 18px;\n padding: 3px 6px 3px 0;\n background: transparent;\n border-bottom: 1px solid $verdocs-dark-blue;\n\n &:focus {\n outline: none;\n }\n }\n\n .row {\n margin: 20px 0 0 0;\n }\n }\n\n .buttons {\n display: flex;\n column-gap: 8px;\n margin-top: 16px;\n flex-direction: row;\n }\n\n ::placeholder {\n color: $verdocs-bg-2;\n }\n}\n","import {Component, h, Element, Event, EventEmitter, Host, Prop, State} from '@stencil/core';\nimport {getTemplate, ITemplate, TTemplateSender, TTemplateVisibility, updateTemplate, VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {VerdocsToast} from '../../../utils/Toast';\nimport {SDKError} from '../../../utils/errors';\nimport {Store} from '../../../utils/Datastore';\n\nconst MS_PER_DAY = 24 * 60 * 60 * 1000;\n\n/**\n * Display an edit form that allows the user to adjust a template's roles and workflow.\n */\n@Component({\n tag: 'verdocs-template-settings',\n styleUrl: 'verdocs-template-settings.scss',\n shadow: false,\n})\nexport class VerdocsTemplateSettings {\n private templateListenerId = null;\n\n @Element()\n el: HTMLElement;\n\n /**\n * The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.\n */\n @Prop() endpoint: VerdocsEndpoint = VerdocsEndpoint.getDefault();\n\n /**\n * The template ID to edit.\n */\n @Prop() templateId: string = '';\n\n /**\n * Event fired when the user clicks to proceed.\n */\n @Event({composed: true}) next: EventEmitter;\n\n /**\n * Event fired when the step is cancelled. This is called exit to avoid conflicts with the JS-reserved \"cancel\" event name.\n */\n @Event({composed: true}) exit: EventEmitter;\n\n /**\n * Event fired if an error occurs. The event details will contain information about the error. Most errors will\n * terminate the process, and the calling application should correct the condition and re-render the component.\n */\n @Event({composed: true}) sdkError: EventEmitter<SDKError>;\n\n /**\n * Event fired when the template is updated in any way. May be used for tasks such as cache invalidation or reporting to other systems.\n */\n @Event({composed: true}) templateUpdated: EventEmitter<{endpoint: VerdocsEndpoint; template: ITemplate; event: string}>;\n\n @State() name: string | null = null;\n @State() visibility: TTemplateVisibility = 'private';\n @State() sender: TTemplateSender = 'envelope_creator';\n @State() sendReminders = false;\n @State() initialReminder = 0;\n @State() followupReminders = 0;\n @State() dirty = false;\n\n @State() loading = true;\n @State() template: ITemplate | null = null;\n\n disconnectedCallback() {\n this.unlistenToTemplate();\n }\n\n async listenToTemplate() {\n console.log('[SETTINGS] Loading template', this.templateId);\n this.unlistenToTemplate();\n Store.subscribe(\n 'templates',\n this.templateId,\n () => getTemplate(this.endpoint, this.templateId),\n false,\n (template: ITemplate) => {\n console.log('[SETTINGS] Template Updated', template);\n this.template = template;\n this.name = template.name;\n this.visibility = template.visibility;\n this.sender = template.sender;\n this.sendReminders = template.initial_reminder !== null;\n this.initialReminder = template.initial_reminder ? Math.floor(template.initial_reminder / MS_PER_DAY) : null;\n this.followupReminders = template.followup_reminders ? Math.floor(template.followup_reminders / MS_PER_DAY) : null;\n this.dirty = false;\n this.loading = false;\n },\n );\n }\n\n unlistenToTemplate() {\n if (this.templateListenerId) {\n Store.store.delListener(this.templateListenerId);\n this.templateListenerId = null;\n }\n }\n\n async componentWillLoad() {\n try {\n this.endpoint.loadSession();\n\n if (!this.templateId) {\n console.log(`[SETTINGS] Missing required template ID ${this.templateId}`);\n return;\n }\n\n if (!this.endpoint.session) {\n console.log('[SETTINGS] Unable to start builder session, must be authenticated');\n return;\n }\n\n this.listenToTemplate();\n } catch (e) {\n console.log('[SETTINGS] Error with preview session', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n }\n }\n\n handleCancel() {\n this.exit?.emit();\n }\n\n handleSubmit() {\n updateTemplate(this.endpoint, this.templateId, {\n name: this.name,\n visibility: this.visibility,\n sender: this.sender,\n initial_reminder: this.sendReminders ? this.initialReminder * MS_PER_DAY : null,\n followup_reminders: this.sendReminders ? this.followupReminders * MS_PER_DAY : null,\n })\n .then(template => {\n console.log('[SETTINGS] Template Updated', template);\n this.dirty = false;\n this.name = template.name;\n this.visibility = template.visibility;\n this.sender = template.sender;\n this.sendReminders = template.initial_reminder !== null;\n this.initialReminder = template.initial_reminder ? Math.floor(template.initial_reminder / MS_PER_DAY) : null;\n this.followupReminders = template.followup_reminders ? Math.floor(template.followup_reminders / MS_PER_DAY) : null;\n this.templateUpdated?.emit({endpoint: this.endpoint, template, event: 'update'});\n this.next?.emit();\n })\n .catch(e => {\n console.log('[SETTINGS] Error updating template', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n VerdocsToast(e.response?.data?.error || 'Error updating template, please try again later.');\n });\n }\n\n render() {\n if (!this.endpoint.session) {\n return (\n <Host>\n <verdocs-component-error message=\"You must be authenticated to use this module.\" />\n </Host>\n );\n }\n\n if (this.loading || !this.template) {\n return (\n <Host class=\"loading\">\n <verdocs-loader />\n </Host>\n );\n }\n\n return (\n <Host>\n <form onSubmit={e => e.preventDefault()} onClick={e => e.stopPropagation()} autocomplete=\"off\">\n <h5>Settings</h5>\n\n <div class=\"row\">\n <verdocs-text-input\n id=\"verdocs-field-name\"\n label=\"Template Name\"\n value={this.name}\n autocomplete=\"off\"\n placeholder=\"Template Name...\"\n onInput={(e: any) => {\n this.name = e.target.value;\n this.dirty = true;\n }}\n />\n </div>\n\n <div class=\"row\">\n <verdocs-select-input\n label=\"Visibility\"\n value={this.visibility}\n onInput={(e: any) => {\n this.visibility = e.target.value;\n this.dirty = true;\n }}\n options={[\n {value: 'private', label: 'Private'},\n {value: 'shared', label: 'Shared'},\n {value: 'public', label: 'Public'},\n ]}\n />\n </div>\n\n <div class=\"row\">\n <verdocs-select-input\n label=\"Owner for envelopes created from this template\"\n value={this.sender}\n onInput={(e: any) => {\n this.sender = e.target.value;\n this.dirty = true;\n }}\n options={[\n {value: 'envelope_creator', label: 'Envelope Creator'},\n {value: 'template_owner', label: 'Template Owner'},\n ]}\n />\n </div>\n\n <div class=\"row\">\n <label>Send Reminders</label>\n <verdocs-switch checked={this.sendReminders} onCheckedChange={e => (this.sendReminders = e.detail)} />\n </div>\n\n {this.sendReminders && (\n <div class=\"row\">\n <verdocs-text-input\n id=\"verdocs-field-name\"\n label=\"First Reminder (days)\"\n value={String(this.initialReminder || 0)}\n autocomplete=\"off\"\n placeholder=\"Delay in days...\"\n onInput={(e: any) => {\n this.initialReminder = +e.target.value;\n this.dirty = true;\n }}\n />\n </div>\n )}\n\n {this.sendReminders && (\n <div class=\"row\">\n <verdocs-text-input\n id=\"verdocs-field-name\"\n label=\"Follow-up Reminders (days)\"\n value={String(this.followupReminders || 0)}\n autocomplete=\"off\"\n placeholder=\"Delay in days...\"\n onInput={(e: any) => {\n this.followupReminders = +e.target.value;\n this.dirty = true;\n }}\n />\n </div>\n )}\n\n <div class=\"buttons\">\n <verdocs-button variant=\"outline\" label=\"Cancel\" size=\"small\" onClick={() => this.handleCancel()} />\n <verdocs-button label=\"Save\" size=\"small\" onClick={() => this.handleSubmit()} disabled={!this.dirty} />\n </div>\n </form>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}