@verdocs/web-sdk 5.0.3 → 5.0.4

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 (310) hide show
  1. package/dist/cjs/{Datastore-b1742da2.js → Datastore-5b860927.js} +2 -2
  2. package/dist/cjs/index-ccac8641.js +4 -4
  3. package/dist/cjs/loader.cjs.js +1 -1
  4. package/dist/cjs/verdocs-build.cjs.entry.js +1 -1
  5. package/dist/cjs/verdocs-button_2.cjs.entry.js +2 -2
  6. package/dist/cjs/verdocs-checkbox_6.cjs.entry.js +8 -8
  7. package/dist/cjs/verdocs-contact-picker_2.cjs.entry.js +1 -1
  8. package/dist/cjs/verdocs-dialog.cjs.entry.js +1 -1
  9. package/dist/cjs/verdocs-envelope-document-page.cjs.entry.js +1 -1
  10. package/dist/cjs/verdocs-envelope-recipient-link_2.cjs.entry.js +3 -3
  11. package/dist/cjs/verdocs-envelope-recipient-summary.cjs.entry.js +1 -1
  12. package/dist/cjs/verdocs-envelope-sidebar.cjs.entry.js +1 -1
  13. package/dist/cjs/verdocs-envelopes-list.cjs.entry.js +6 -6
  14. package/dist/cjs/verdocs-field-attachment_13.cjs.entry.js +4 -4
  15. package/dist/cjs/verdocs-field-payment.cjs.entry.js +1 -1
  16. package/dist/cjs/verdocs-file-chooser_2.cjs.entry.js +1 -1
  17. package/dist/cjs/verdocs-kba-dialog_2.cjs.entry.js +1 -1
  18. package/dist/cjs/verdocs-menu-panel_2.cjs.entry.js +241 -0
  19. package/dist/cjs/verdocs-ok-dialog.cjs.entry.js +1 -1
  20. package/dist/cjs/verdocs-organization-card_2.cjs.entry.js +2 -2
  21. package/dist/cjs/verdocs-pagination_2.cjs.entry.js +1 -1
  22. package/dist/cjs/verdocs-preview_6.cjs.entry.js +2863 -156
  23. package/dist/cjs/verdocs-quick-functions.cjs.entry.js +1 -1
  24. package/dist/cjs/verdocs-radio-button.cjs.entry.js +1 -1
  25. package/dist/cjs/verdocs-search-tabs.cjs.entry.js +1 -1
  26. package/dist/cjs/verdocs-spinner.cjs.entry.js +1 -1
  27. package/dist/cjs/verdocs-status-indicator.cjs.entry.js +2 -2
  28. package/dist/cjs/verdocs-template-card.cjs.entry.js +1 -1
  29. package/dist/cjs/verdocs-template-document-page_2.cjs.entry.js +2 -2
  30. package/dist/cjs/verdocs-template-star.cjs.entry.js +1 -1
  31. package/dist/cjs/verdocs-template-tags.cjs.entry.js +1 -1
  32. package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
  33. package/dist/collection/collection-manifest.json +1 -0
  34. package/dist/collection/components/controls/verdocs-help-icon/verdocs-help-icon.css +1 -1
  35. package/dist/collection/components/controls/verdocs-help-icon/verdocs-help-icon.js +1 -1
  36. package/dist/collection/components/controls/verdocs-menu-panel/verdocs-menu-panel.css +42 -0
  37. package/dist/collection/components/controls/verdocs-menu-panel/verdocs-menu-panel.js +159 -0
  38. package/dist/collection/components/controls/verdocs-organization-card/verdocs-organization-card.js +1 -1
  39. package/dist/collection/components/controls/verdocs-pagination/verdocs-pagination.js +1 -1
  40. package/dist/collection/components/controls/verdocs-portal/verdocs-portal.js +1 -1
  41. package/dist/collection/components/controls/verdocs-progress-bar/verdocs-progress-bar.js +1 -1
  42. package/dist/collection/components/controls/verdocs-radio-button/verdocs-radio-button.js +1 -1
  43. package/dist/collection/components/controls/verdocs-select-input/verdocs-select-input.css +2 -2
  44. package/dist/collection/components/controls/verdocs-select-input/verdocs-select-input.js +1 -1
  45. package/dist/collection/components/controls/verdocs-spinner/verdocs-spinner.js +1 -1
  46. package/dist/collection/components/controls/verdocs-switch/verdocs-switch.js +2 -2
  47. package/dist/collection/components/controls/verdocs-text-input/verdocs-text-input.css +2 -2
  48. package/dist/collection/components/controls/verdocs-text-input/verdocs-text-input.js +4 -4
  49. package/dist/collection/components/controls/verdocs-toggle-button/verdocs-toggle-button.js +1 -1
  50. package/dist/collection/components/controls/verdocs-toolbar-icon/verdocs-toolbar-icon.js +1 -1
  51. package/dist/collection/components/dialogs/verdocs-dialog/verdocs-dialog.js +1 -1
  52. package/dist/collection/components/dialogs/verdocs-initial-dialog/verdocs-initial-dialog.js +1 -1
  53. package/dist/collection/components/dialogs/verdocs-ok-dialog/verdocs-ok-dialog.js +1 -1
  54. package/dist/collection/components/dialogs/verdocs-signature-dialog/verdocs-signature-dialog.js +1 -1
  55. package/dist/collection/components/dialogs/verdocs-upload-dialog/verdocs-upload-dialog.js +1 -1
  56. package/dist/collection/components/elements/verdocs-quick-functions/verdocs-quick-functions.js +1 -1
  57. package/dist/collection/components/elements/verdocs-search-tabs/verdocs-search-tabs.js +1 -1
  58. package/dist/collection/components/envelopes/verdocs-envelope-document-page/verdocs-envelope-document-page.js +1 -1
  59. package/dist/collection/components/envelopes/verdocs-envelopes-list/verdocs-envelopes-list.js +6 -6
  60. package/dist/collection/components/envelopes/verdocs-status-indicator/verdocs-status-indicator.js +2 -2
  61. package/dist/collection/components/templates/verdocs-template-card/verdocs-template-card.js +1 -1
  62. package/dist/collection/components/templates/verdocs-template-role-properties/verdocs-template-role-properties.css +27 -42
  63. package/dist/collection/components/templates/verdocs-template-role-properties/verdocs-template-role-properties.js +12 -14
  64. package/dist/collection/components/templates/verdocs-template-roles/verdocs-template-roles.css +74 -120
  65. package/dist/collection/components/templates/verdocs-template-roles/verdocs-template-roles.js +145 -101
  66. package/dist/collection/components/templates/verdocs-template-star/verdocs-template-star.js +1 -1
  67. package/dist/collection/components/templates/verdocs-template-tags/verdocs-template-tags.js +1 -1
  68. package/dist/collection/utils/Datastore.js +2 -2
  69. package/dist/components/index.js +2 -0
  70. package/dist/components/{p-ed88b8d2.js → p-005c3387.js} +3 -3
  71. package/dist/components/{p-0d063bf9.js → p-052fcdac.js} +4 -4
  72. package/dist/components/{p-0a69031f.js → p-053a0408.js} +6 -6
  73. package/dist/components/{p-1c2cf1be.js → p-15b1e7a0.js} +10 -8
  74. package/dist/components/{p-293ea62f.js → p-1a77c51b.js} +5 -5
  75. package/dist/components/{p-f990140a.js → p-2ef2d490.js} +2 -2
  76. package/dist/components/{p-c8fedb4e.js → p-325b3828.js} +6 -6
  77. package/dist/components/{p-6315b90f.js → p-332a97b3.js} +1 -1
  78. package/dist/components/{p-b0c02eb8.js → p-3a621e5d.js} +7 -7
  79. package/dist/components/{p-18999830.js → p-41a75ad6.js} +1 -1
  80. package/dist/components/{p-5eb45a4f.js → p-44ae3c75.js} +1 -1
  81. package/dist/components/{p-1e2e8b1c.js → p-4d3b9ee9.js} +1 -1
  82. package/dist/components/{p-1e67ebdf.js → p-53585e13.js} +18 -26
  83. package/dist/components/{p-c7b00ce6.js → p-5654568d.js} +1 -1
  84. package/dist/components/{p-ecc818bb.js → p-5df09a0d.js} +6 -6
  85. package/dist/components/{p-315d6592.js → p-62743fd3.js} +2 -2
  86. package/dist/components/{p-dd701894.js → p-6506ddb4.js} +6 -6
  87. package/dist/components/{p-5d4bbcd0.js → p-6719b0d7.js} +1 -1
  88. package/dist/components/{p-d9704a51.js → p-6c18617e.js} +6 -6
  89. package/dist/components/{p-fd96322b.js → p-7246d2ee.js} +6 -6
  90. package/dist/components/{p-0ca7012b.js → p-7f32e087.js} +2 -2
  91. package/dist/components/{p-9b3c58d9.js → p-987a8392.js} +22 -22
  92. package/dist/components/{p-b9034018.js → p-9c0b30f8.js} +3 -3
  93. package/dist/components/{p-b16c202a.js → p-9cfd8022.js} +1 -1
  94. package/dist/components/{p-a3e12c74.js → p-9fb98ea2.js} +1 -1
  95. package/dist/components/p-a06a0184.js +3055 -0
  96. package/dist/components/{p-f72b9c45.js → p-a2f6d2c6.js} +1 -1
  97. package/dist/components/{p-1ca705bc.js → p-b36c979b.js} +6 -6
  98. package/dist/{esm/Datastore-52fcbac6.js → components/p-b712e729.js} +2 -2
  99. package/dist/components/{p-cf6ea837.js → p-b7d080eb.js} +1 -1
  100. package/dist/components/p-be261487.js +79 -0
  101. package/dist/components/{p-9bb47a5a.js → p-c00770e6.js} +1 -1
  102. package/dist/components/{p-4afcdc84.js → p-c9a4ef35.js} +6 -6
  103. package/dist/components/{p-9c3fd545.js → p-ca8e3721.js} +8 -8
  104. package/dist/components/{p-5a9cea40.js → p-cce871bf.js} +3 -3
  105. package/dist/components/{p-df3afaa8.js → p-cef9df4b.js} +20 -20
  106. package/dist/components/{p-74452a2b.js → p-d9074622.js} +3 -3
  107. package/dist/components/{p-d25cdbff.js → p-f0f1ed82.js} +21 -21
  108. package/dist/components/{p-58c2bd5d.js → p-f0f6e862.js} +2 -2
  109. package/dist/components/{p-49153610.js → p-f21ef4fb.js} +7 -7
  110. package/dist/components/{p-fcad60f5.js → p-f4e068a9.js} +2 -2
  111. package/dist/components/{p-2548f3f0.js → p-f7462b26.js} +1 -1
  112. package/dist/components/verdocs-auth.js +2 -2
  113. package/dist/components/verdocs-build.js +64 -58
  114. package/dist/components/verdocs-contact-picker.js +1 -1
  115. package/dist/components/verdocs-dialog.js +1 -1
  116. package/dist/components/verdocs-dropdown.js +1 -1
  117. package/dist/components/verdocs-envelope-document-page.js +1 -1
  118. package/dist/components/verdocs-envelope-recipient-link.js +1 -1
  119. package/dist/components/verdocs-envelope-recipient-summary.js +1 -1
  120. package/dist/components/verdocs-envelope-sidebar.js +8 -8
  121. package/dist/components/verdocs-envelopes-list.js +13 -13
  122. package/dist/components/verdocs-field-attachment.js +1 -1
  123. package/dist/components/verdocs-field-checkbox.js +1 -1
  124. package/dist/components/verdocs-field-date.js +1 -1
  125. package/dist/components/verdocs-field-dropdown.js +1 -1
  126. package/dist/components/verdocs-field-initial.js +1 -1
  127. package/dist/components/verdocs-field-payment.js +6 -6
  128. package/dist/components/verdocs-field-radio.js +1 -1
  129. package/dist/components/verdocs-field-signature.js +1 -1
  130. package/dist/components/verdocs-field-textarea.js +1 -1
  131. package/dist/components/verdocs-field-textbox.js +1 -1
  132. package/dist/components/verdocs-field-timestamp.js +1 -1
  133. package/dist/components/verdocs-help-icon.js +1 -1
  134. package/dist/components/verdocs-initial-dialog.js +1 -1
  135. package/dist/components/verdocs-menu-panel.d.ts +11 -0
  136. package/dist/components/verdocs-menu-panel.js +6 -0
  137. package/dist/components/verdocs-ok-dialog.js +1 -1
  138. package/dist/components/verdocs-organization-card.js +2 -2
  139. package/dist/components/verdocs-pagination.js +1 -1
  140. package/dist/components/verdocs-portal.js +1 -1
  141. package/dist/components/verdocs-preview.js +1 -1
  142. package/dist/components/verdocs-progress-bar.js +1 -1
  143. package/dist/components/verdocs-quick-functions.js +1 -1
  144. package/dist/components/verdocs-radio-button.js +1 -1
  145. package/dist/components/verdocs-search-tabs.js +1 -1
  146. package/dist/components/verdocs-select-input.js +1 -1
  147. package/dist/components/verdocs-send.js +1 -1
  148. package/dist/components/verdocs-sign.js +6 -6
  149. package/dist/components/verdocs-signature-dialog.js +1 -1
  150. package/dist/components/verdocs-spinner.js +1 -1
  151. package/dist/components/verdocs-status-indicator.js +1 -1
  152. package/dist/components/verdocs-switch.js +1 -1
  153. package/dist/components/verdocs-template-attachments.js +1 -1
  154. package/dist/components/verdocs-template-build-tabs.js +1 -1
  155. package/dist/components/verdocs-template-card.js +1 -1
  156. package/dist/components/verdocs-template-create.js +1 -1
  157. package/dist/components/verdocs-template-document-page.js +1 -1
  158. package/dist/components/verdocs-template-field-properties.js +1 -1
  159. package/dist/components/verdocs-template-fields.js +1 -1
  160. package/dist/components/verdocs-template-role-properties.js +1 -1
  161. package/dist/components/verdocs-template-roles.js +1 -1
  162. package/dist/components/verdocs-template-star.js +1 -1
  163. package/dist/components/verdocs-template-tags.js +1 -1
  164. package/dist/components/verdocs-templates-list.js +8 -8
  165. package/dist/components/verdocs-text-input.js +1 -1
  166. package/dist/components/verdocs-toggle-button.js +1 -1
  167. package/dist/components/verdocs-toolbar-icon.js +1 -1
  168. package/dist/components/verdocs-upload-dialog.js +1 -1
  169. package/dist/components/verdocs-view.js +1 -1
  170. package/dist/custom-elements.json +2156 -0
  171. package/dist/{components/p-da4d4eed.js → esm/Datastore-d29d4aeb.js} +2 -2
  172. package/dist/esm/index-272d51a4.js +4 -4
  173. package/dist/esm/loader.js +1 -1
  174. package/dist/esm/verdocs-build.entry.js +1 -1
  175. package/dist/esm/verdocs-button_2.entry.js +2 -2
  176. package/dist/esm/verdocs-checkbox_6.entry.js +8 -8
  177. package/dist/esm/verdocs-contact-picker_2.entry.js +1 -1
  178. package/dist/esm/verdocs-dialog.entry.js +1 -1
  179. package/dist/esm/verdocs-envelope-document-page.entry.js +1 -1
  180. package/dist/esm/verdocs-envelope-recipient-link_2.entry.js +3 -3
  181. package/dist/esm/verdocs-envelope-recipient-summary.entry.js +1 -1
  182. package/dist/esm/verdocs-envelope-sidebar.entry.js +1 -1
  183. package/dist/esm/verdocs-envelopes-list.entry.js +6 -6
  184. package/dist/esm/verdocs-field-attachment_13.entry.js +4 -4
  185. package/dist/esm/verdocs-field-payment.entry.js +1 -1
  186. package/dist/esm/verdocs-file-chooser_2.entry.js +1 -1
  187. package/dist/esm/verdocs-kba-dialog_2.entry.js +1 -1
  188. package/dist/esm/verdocs-menu-panel_2.entry.js +236 -0
  189. package/dist/esm/verdocs-ok-dialog.entry.js +1 -1
  190. package/dist/esm/verdocs-organization-card_2.entry.js +2 -2
  191. package/dist/esm/verdocs-pagination_2.entry.js +1 -1
  192. package/dist/esm/verdocs-preview_6.entry.js +2811 -104
  193. package/dist/esm/verdocs-quick-functions.entry.js +1 -1
  194. package/dist/esm/verdocs-radio-button.entry.js +1 -1
  195. package/dist/esm/verdocs-search-tabs.entry.js +1 -1
  196. package/dist/esm/verdocs-spinner.entry.js +1 -1
  197. package/dist/esm/verdocs-status-indicator.entry.js +2 -2
  198. package/dist/esm/verdocs-template-card.entry.js +1 -1
  199. package/dist/esm/verdocs-template-document-page_2.entry.js +2 -2
  200. package/dist/esm/verdocs-template-star.entry.js +1 -1
  201. package/dist/esm/verdocs-template-tags.entry.js +1 -1
  202. package/dist/esm/verdocs-web-sdk.js +1 -1
  203. package/dist/esm-es5/{Datastore-52fcbac6.js → Datastore-d29d4aeb.js} +1 -1
  204. package/dist/esm-es5/index-272d51a4.js +1 -1
  205. package/dist/esm-es5/loader.js +1 -1
  206. package/dist/esm-es5/verdocs-build.entry.js +1 -1
  207. package/dist/esm-es5/verdocs-button_2.entry.js +1 -1
  208. package/dist/esm-es5/verdocs-checkbox_6.entry.js +1 -1
  209. package/dist/esm-es5/verdocs-contact-picker_2.entry.js +1 -1
  210. package/dist/esm-es5/verdocs-dialog.entry.js +1 -1
  211. package/dist/esm-es5/verdocs-envelope-document-page.entry.js +1 -1
  212. package/dist/esm-es5/verdocs-envelope-recipient-link_2.entry.js +1 -1
  213. package/dist/esm-es5/verdocs-envelope-recipient-summary.entry.js +1 -1
  214. package/dist/esm-es5/verdocs-envelope-sidebar.entry.js +1 -1
  215. package/dist/esm-es5/verdocs-envelopes-list.entry.js +1 -1
  216. package/dist/esm-es5/verdocs-field-attachment_13.entry.js +1 -1
  217. package/dist/esm-es5/verdocs-field-payment.entry.js +1 -1
  218. package/dist/esm-es5/verdocs-file-chooser_2.entry.js +1 -1
  219. package/dist/esm-es5/verdocs-kba-dialog_2.entry.js +1 -1
  220. package/dist/esm-es5/verdocs-menu-panel_2.entry.js +1 -0
  221. package/dist/esm-es5/verdocs-ok-dialog.entry.js +1 -1
  222. package/dist/esm-es5/verdocs-organization-card_2.entry.js +1 -1
  223. package/dist/esm-es5/verdocs-pagination_2.entry.js +1 -1
  224. package/dist/esm-es5/verdocs-preview_6.entry.js +7 -1
  225. package/dist/esm-es5/verdocs-quick-functions.entry.js +1 -1
  226. package/dist/esm-es5/verdocs-radio-button.entry.js +1 -1
  227. package/dist/esm-es5/verdocs-search-tabs.entry.js +1 -1
  228. package/dist/esm-es5/verdocs-spinner.entry.js +1 -1
  229. package/dist/esm-es5/verdocs-status-indicator.entry.js +1 -1
  230. package/dist/esm-es5/verdocs-template-card.entry.js +1 -1
  231. package/dist/esm-es5/verdocs-template-document-page_2.entry.js +1 -1
  232. package/dist/esm-es5/verdocs-template-star.entry.js +1 -1
  233. package/dist/esm-es5/verdocs-template-tags.entry.js +1 -1
  234. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  235. package/dist/types/components/controls/verdocs-menu-panel/verdocs-menu-panel.d.ts +38 -0
  236. package/dist/types/components/templates/verdocs-template-role-properties/verdocs-template-role-properties.d.ts +1 -1
  237. package/dist/types/components/templates/verdocs-template-roles/verdocs-template-roles.d.ts +5 -3
  238. package/dist/types/components.d.ts +101 -8
  239. package/dist/verdocs-web-sdk/{p-65c5398e.entry.js → p-152b9acd.entry.js} +1 -1
  240. package/dist/verdocs-web-sdk/{p-c9f40726.system.entry.js → p-1d5b9103.system.entry.js} +1 -1
  241. package/dist/verdocs-web-sdk/{p-3364cc13.system.entry.js → p-1e191c20.system.entry.js} +1 -1
  242. package/dist/verdocs-web-sdk/{p-7464b84f.entry.js → p-1e495c60.entry.js} +1 -1
  243. package/dist/verdocs-web-sdk/{p-192403ff.entry.js → p-2224ca6d.entry.js} +1 -1
  244. package/dist/verdocs-web-sdk/{p-5b541da2.entry.js → p-27da4a2b.entry.js} +1 -1
  245. package/dist/verdocs-web-sdk/{p-914e131c.system.entry.js → p-2eae32d9.system.entry.js} +1 -1
  246. package/dist/verdocs-web-sdk/p-306bde40.system.entry.js +1 -0
  247. package/dist/verdocs-web-sdk/{p-0e9de098.entry.js → p-30c3f624.entry.js} +1 -1
  248. package/dist/verdocs-web-sdk/{p-8d401072.system.entry.js → p-3268dad0.system.entry.js} +1 -1
  249. package/dist/verdocs-web-sdk/p-365ed258.entry.js +1 -0
  250. package/dist/verdocs-web-sdk/{p-ddb17b3e.entry.js → p-39b72c10.entry.js} +1 -1
  251. package/dist/verdocs-web-sdk/{p-f5d01982.system.entry.js → p-417f71da.system.entry.js} +1 -1
  252. package/dist/verdocs-web-sdk/{p-b8737f7b.entry.js → p-42b157d2.entry.js} +1 -1
  253. package/dist/verdocs-web-sdk/{p-771c2f92.entry.js → p-47f32221.entry.js} +1 -1
  254. package/dist/verdocs-web-sdk/p-48ff3cce.system.entry.js +1 -0
  255. package/dist/verdocs-web-sdk/{p-b0b958a0.entry.js → p-51c97029.entry.js} +1 -1
  256. package/dist/verdocs-web-sdk/{p-c18c718f.system.js → p-55de8cd1.system.js} +1 -1
  257. package/dist/verdocs-web-sdk/{p-7c8938e7.system.entry.js → p-5824962b.system.entry.js} +1 -1
  258. package/dist/verdocs-web-sdk/{p-aebb0cd9.system.entry.js → p-5aa76635.system.entry.js} +1 -1
  259. package/dist/verdocs-web-sdk/{p-89cdecac.system.entry.js → p-5b0cd815.system.entry.js} +1 -1
  260. package/dist/verdocs-web-sdk/{p-0950534e.system.entry.js → p-5ce491ac.system.entry.js} +1 -1
  261. package/dist/verdocs-web-sdk/{p-c6fd3e53.system.entry.js → p-6237ce51.system.entry.js} +1 -1
  262. package/dist/verdocs-web-sdk/{p-c7cd6843.entry.js → p-660bda06.entry.js} +1 -1
  263. package/dist/verdocs-web-sdk/{p-97b00cae.system.entry.js → p-7e73805f.system.entry.js} +1 -1
  264. package/dist/verdocs-web-sdk/{p-8c03fc69.entry.js → p-8025cac7.entry.js} +1 -1
  265. package/dist/verdocs-web-sdk/{p-3dd29b19.entry.js → p-87ac8456.entry.js} +1 -1
  266. package/dist/verdocs-web-sdk/{p-475ea471.system.entry.js → p-899617aa.system.entry.js} +1 -1
  267. package/dist/verdocs-web-sdk/{p-2a1287ec.entry.js → p-899fa588.entry.js} +1 -1
  268. package/dist/verdocs-web-sdk/{p-511a4ecc.system.entry.js → p-90bc3ad0.system.entry.js} +1 -1
  269. package/dist/verdocs-web-sdk/{p-a242aa80.system.entry.js → p-917aab58.system.entry.js} +1 -1
  270. package/dist/verdocs-web-sdk/{p-524f37a0.entry.js → p-92364765.entry.js} +1 -1
  271. package/dist/verdocs-web-sdk/{p-f9b37af2.system.entry.js → p-94fe5817.system.entry.js} +1 -1
  272. package/dist/verdocs-web-sdk/{p-41cbf650.entry.js → p-99b819ad.entry.js} +1 -1
  273. package/dist/verdocs-web-sdk/{p-df04f0ca.entry.js → p-a8809e33.entry.js} +1 -1
  274. package/dist/verdocs-web-sdk/{p-a9635106.system.entry.js → p-ac6ecfad.system.entry.js} +1 -1
  275. package/dist/verdocs-web-sdk/{p-62f15675.system.entry.js → p-ad3d07a6.system.entry.js} +1 -1
  276. package/dist/verdocs-web-sdk/{p-df392ef9.entry.js → p-af1802b6.entry.js} +1 -1
  277. package/dist/verdocs-web-sdk/p-b712e729.js +1 -0
  278. package/dist/verdocs-web-sdk/{p-a165607e.entry.js → p-be4ec401.entry.js} +1 -1
  279. package/dist/verdocs-web-sdk/{p-bcc23811.entry.js → p-bea73364.entry.js} +1 -1
  280. package/dist/verdocs-web-sdk/{p-92153daa.system.entry.js → p-c253ae24.system.entry.js} +1 -1
  281. package/dist/verdocs-web-sdk/{p-92ffc207.entry.js → p-c2766b5a.entry.js} +1 -1
  282. package/dist/verdocs-web-sdk/{p-6ced37ed.entry.js → p-c3593d47.entry.js} +1 -1
  283. package/dist/verdocs-web-sdk/{p-3e7915e9.system.entry.js → p-c60743ac.system.entry.js} +1 -1
  284. package/dist/verdocs-web-sdk/{p-b9b6b3b4.system.entry.js → p-c94b0dc5.system.entry.js} +1 -1
  285. package/dist/verdocs-web-sdk/{p-78191329.system.entry.js → p-cb7aa6b8.system.entry.js} +1 -1
  286. package/dist/verdocs-web-sdk/p-d6104d4b.system.entry.js +7 -0
  287. package/dist/verdocs-web-sdk/{p-54f085d1.entry.js → p-db4c36aa.entry.js} +1 -1
  288. package/dist/verdocs-web-sdk/{p-d475fff3.entry.js → p-dc558be5.entry.js} +1 -1
  289. package/dist/verdocs-web-sdk/p-e2b70dfb.system.js +1 -1
  290. package/dist/verdocs-web-sdk/{p-80ce3711.system.entry.js → p-e6d711e0.system.entry.js} +1 -1
  291. package/dist/verdocs-web-sdk/p-f1e2ec72.entry.js +8 -0
  292. package/dist/verdocs-web-sdk/{p-ba8f5177.system.entry.js → p-f3b5052f.system.entry.js} +1 -1
  293. package/dist/verdocs-web-sdk/{p-9fb22181.entry.js → p-f40fe8d7.entry.js} +1 -1
  294. package/dist/verdocs-web-sdk/{p-e83cd333.entry.js → p-f6b77cd1.entry.js} +1 -1
  295. package/dist/verdocs-web-sdk/{p-d98cbd0f.system.entry.js → p-f84932fd.system.entry.js} +1 -1
  296. package/dist/verdocs-web-sdk/{p-6330dbef.entry.js → p-fc90cc87.entry.js} +1 -1
  297. package/dist/verdocs-web-sdk/{p-386d789c.system.entry.js → p-ff8143df.system.entry.js} +1 -1
  298. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  299. package/package.json +5 -4
  300. package/dist/cjs/verdocs-template-role-properties.cjs.entry.js +0 -184
  301. package/dist/components/p-8fbc64e9.js +0 -349
  302. package/dist/components/p-ea5954bd.js +0 -4
  303. package/dist/esm/verdocs-template-role-properties.entry.js +0 -180
  304. package/dist/esm-es5/verdocs-template-role-properties.entry.js +0 -1
  305. package/dist/verdocs-web-sdk/p-03244cd1.system.entry.js +0 -1
  306. package/dist/verdocs-web-sdk/p-9567cb7d.system.entry.js +0 -1
  307. package/dist/verdocs-web-sdk/p-982f1b36.system.entry.js +0 -1
  308. package/dist/verdocs-web-sdk/p-bb0effe1.entry.js +0 -1
  309. package/dist/verdocs-web-sdk/p-c33ae58a.entry.js +0 -1
  310. package/dist/verdocs-web-sdk/p-da4d4eed.js +0 -1
@@ -11,135 +11,97 @@
11
11
  }
12
12
  verdocs-template-roles {
13
13
  display: block;
14
- min-width: 400px;
14
+ max-width: 600px;
15
15
  font-family: "Inter", -apple-system, "Segoe UI", "Roboto", "Helvetica Neue", sans-serif;
16
16
  }
17
- verdocs-template-roles > form {
17
+ verdocs-template-roles .roles {
18
18
  display: flex;
19
19
  flex-direction: column;
20
- background-color: #ffffff;
21
- padding: 12px;
22
- }
23
- verdocs-template-roles > form h5 {
24
- font-size: 16px;
25
- font-weight: bold;
26
- color: #46497d;
27
- margin: 0 0 10px 0;
28
- }
29
- verdocs-template-roles > form .participants {
30
- position: relative;
31
- }
32
- verdocs-template-roles > form .left-line {
33
- top: 32px;
34
- left: 11px;
35
- z-index: 1;
36
- width: 12px;
37
- bottom: 30px;
38
- position: absolute;
39
- background: #ffffff;
40
- border-left: 3px dotted #9b9b9b;
41
- }
42
- verdocs-template-roles > form .row {
43
- display: flex;
44
- column-gap: 0;
45
- min-height: 35px;
46
- margin-top: 0;
47
- margin-left: 40px;
48
- position: relative;
49
- flex-direction: row;
50
- padding: 6px 0 4px 0;
20
+ gap: 10px;
21
+ margin-top: 10px;
51
22
  }
52
- verdocs-template-roles > form .row .row-roles {
53
- flex: 1;
23
+ verdocs-template-roles .roles .sequence {
54
24
  gap: 10px;
25
+ height: 34px;
55
26
  display: flex;
56
27
  flex-wrap: wrap;
28
+ font-weight: 500;
29
+ padding: 0 0 8px 0;
57
30
  flex-direction: row;
31
+ border-bottom: 1px dotted #e3e3e3;
58
32
  }
59
- verdocs-template-roles > form .row .icon {
60
- top: 14px;
61
- z-index: 2;
62
- left: -40px;
63
- width: 24px;
64
- height: 24px;
65
- position: absolute;
66
- background: #ffffff;
33
+ verdocs-template-roles .roles .sequence.add-sequence {
34
+ color: #777777;
35
+ line-height: 34px;
67
36
  }
68
- verdocs-template-roles > form .row .sender {
69
- height: 30px;
37
+ verdocs-template-roles .roles .sequence-label {
38
+ font-size: 18px;
39
+ line-height: 32px;
40
+ }
41
+ verdocs-template-roles .roles .sequence-roles {
42
+ gap: 10px;
70
43
  display: flex;
71
- font-size: 14px;
72
- line-height: 30px;
73
- align-items: center;
74
- border-radius: 30px;
44
+ position: relative;
45
+ flex-wrap: wrap;
46
+ font-weight: 500;
75
47
  flex-direction: row;
76
- padding: 0 15px 0 15px;
77
- border: 1px solid #c6c9cc;
78
- background-color: #f5f5fa;
79
48
  }
80
- verdocs-template-roles > form .row .complete {
81
- height: 30px;
49
+ verdocs-template-roles .roles .role {
50
+ height: 32px;
51
+ cursor: move;
82
52
  display: flex;
53
+ max-width: 200px;
54
+ position: relative;
55
+ border-radius: 32px;
56
+ background-color: #eff7fb;
57
+ box-sizing: border-box;
58
+ padding: 0 14px 0 34px;
59
+ border: 1px solid #ccc;
60
+ flex-direction: column;
61
+ }
62
+ verdocs-template-roles .roles .role .role-name {
83
63
  font-size: 14px;
84
- padding: 0 15px;
64
+ overflow: hidden;
65
+ font-weight: 400;
85
66
  line-height: 30px;
86
- flex-direction: row;
87
- border-radius: 30px;
88
- background-color: #f5f5fa;
89
- border: 1px solid #aeb4bf;
90
- }
91
- verdocs-template-roles > form .row .label {
92
- font-weight: bold;
93
- margin-right: 6px;
94
- color: #33364b;
67
+ white-space: nowrap;
68
+ text-overflow: ellipsis;
95
69
  }
96
- verdocs-template-roles > form .row .settings-button {
97
- display: flex;
70
+ verdocs-template-roles .roles .role .icons {
71
+ position: absolute;
72
+ left: 1px;
73
+ top: -3px;
98
74
  cursor: pointer;
99
- margin: 0 0 0 9px;
75
+ padding: 5px;
76
+ z-index: 10;
100
77
  }
101
- verdocs-template-roles > form .row .recipient {
102
- height: 30px;
103
- display: flex;
104
- font-size: 14px;
105
- border-radius: 30px;
106
- align-items: center;
107
- flex-direction: row;
108
- padding: 0 5px 0 6px;
109
- white-space: nowrap;
110
- border: 2px solid #aeb4bf;
78
+ verdocs-template-roles .roles .role .icons .gear-button {
79
+ display: none;
80
+ transform: scale(1.1);
81
+ margin: 4px 0 0 1px;
111
82
  }
112
- verdocs-template-roles > form .row .recipient .type-icon {
113
- width: 24px;
114
- height: 24px;
115
- transform: scale(0.8);
83
+ verdocs-template-roles .roles .role .icons .type-icon {
116
84
  opacity: 0.6;
117
- margin: 0 12px 0 0;
118
- }
119
- verdocs-template-roles > form .row .recipient.dragging {
120
- position: absolute;
85
+ display: block;
86
+ transform: scale(0.8);
121
87
  }
122
- verdocs-template-roles > form .row .recipient.dragging + .dropzone {
123
- display: none !important;
88
+ verdocs-template-roles .roles .role .icons:hover .gear-button {
89
+ display: block;
124
90
  }
125
- verdocs-template-roles > form .row .dropzone {
126
- width: 14px;
127
- height: 30px;
91
+ verdocs-template-roles .roles .role .icons:hover .type-icon {
128
92
  display: none;
129
93
  }
130
- verdocs-template-roles > form .row .dropzone svg {
131
- fill: #cccccc;
132
- }
133
- verdocs-template-roles > form .row .dropzone.visible {
134
- margin: 0 7px;
94
+ verdocs-template-roles > form {
135
95
  display: flex;
136
- flex: 0 0 14px;
96
+ flex-direction: column;
97
+ background-color: #ffffff;
98
+ padding: 12px;
137
99
  }
138
- verdocs-template-roles > form .row .dropzone.active {
139
- flex: 0 0 120px;
140
- border-radius: 30px;
141
- background: rgba(101, 77, 203, 0.4980392157);
142
- border: 1px dashed #654dcb;
100
+ verdocs-template-roles > form h5 {
101
+ font-size: 16px;
102
+ font-weight: bold;
103
+ color: #46497d;
104
+ margin: 0 0 10px 0;
143
105
  }
144
106
  verdocs-template-roles > form label {
145
107
  display: block;
@@ -165,9 +127,10 @@ verdocs-template-roles .add-role {
165
127
  margin: 0;
166
128
  padding: 0;
167
129
  border: none;
168
- opacity: 0.5;
130
+ opacity: 0.3;
169
131
  cursor: pointer;
170
132
  background: none;
133
+ transform: scale(0.75);
171
134
  }
172
135
  verdocs-template-roles .add-role:hover {
173
136
  opacity: 1;
@@ -191,27 +154,9 @@ verdocs-template-roles .add-step svg {
191
154
  width: 32px;
192
155
  height: 32px;
193
156
  }
194
- verdocs-template-roles.dragging .add-role {
195
- display: none;
196
- }
197
- verdocs-template-roles.dragging form .row .recipient + .dropzone {
198
- display: flex;
199
- }
200
157
  verdocs-template-roles.dragging .row.add-sequence {
201
158
  display: flex;
202
159
  }
203
- verdocs-template-roles.dragging .row.add-sequence .dropzone {
204
- opacity: 0.5;
205
- flex: 0 0 120px;
206
- border-radius: 30px;
207
- align-items: center;
208
- background: rgba(101, 77, 203, 0.4980392157);
209
- justify-content: center;
210
- border: 1px dashed #654dcb;
211
- }
212
- verdocs-template-roles.dragging .row.add-sequence .dropzone.active {
213
- opacity: 1;
214
- }
215
160
  verdocs-template-roles .buttons {
216
161
  display: flex;
217
162
  column-gap: 8px;
@@ -230,6 +175,15 @@ verdocs-template-roles .empty svg {
230
175
  margin-bottom: 2px;
231
176
  display: inline-block;
232
177
  }
178
+ verdocs-template-roles.dragging .roles .sequence.add-sequence .add-role,
179
+ verdocs-template-roles.dragging .roles .sequence.add-sequence .add-step-label {
180
+ display: none;
181
+ }
182
+ verdocs-template-roles.dragging .roles .sequence.add-sequence .sequence-roles {
183
+ display: flex;
184
+ min-width: 150px;
185
+ background: #e0e0e0;
186
+ }
233
187
  verdocs-template-roles ::placeholder {
234
188
  color: #aaaaaa;
235
189
  }
@@ -1,23 +1,17 @@
1
- import interact from "interactjs";
2
- import { h, Fragment, Host } from "@stencil/core";
3
- import { createTemplateRole, formatFullName, getRGBA, getTemplate, updateTemplateRole, VerdocsEndpoint } from "@verdocs/js-sdk";
4
- import { getRoleIndex } from "../../../utils/Templates";
1
+ import Sortable from "sortablejs";
2
+ import { h, Host } from "@stencil/core";
3
+ import { createTemplateRole, formatFullName, getTemplate, updateTemplateRole, VerdocsEndpoint } from "@verdocs/js-sdk";
4
+ // import {createTemplateRole, formatFullName, getRGBA, getTemplate, IRole, ITemplate, updateTemplateRole, VerdocsEndpoint} from '@verdocs/js-sdk';
5
+ // import {getRoleIndex} from '../../../utils/Templates';
5
6
  import { SDKError } from "../../../utils/errors";
6
7
  import { Store } from "../../../utils/Datastore";
7
- // const senderLabels: Record<TTemplateSender, string> = {
8
- // template_owner: 'Template Owner',
9
- // envelope_creator: 'Envelope Creator',
10
- // };
11
8
  const settingsIcon = '<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>';
12
- const startIcon = '<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24" fill="#00000089"><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>';
13
- const stepIcon = '<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24" fill="#00000089"><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>';
14
- const doneIcon = '<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24" fill="#00000089"><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>';
15
9
  const 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>`;
16
10
  const iconSigner = '<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>';
17
- const iconApprover = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><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>`;
18
- const iconCC = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><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>`;
11
+ const 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>`;
12
+ const 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>`;
19
13
  /**
20
- * Displays an edit form that allows the user to adjust a template's roles and workflow.
14
+ * Display an edit form that allows the user to adjust a template's roles and workflow.
21
15
  */
22
16
  export class VerdocsTemplateRoles {
23
17
  constructor() {
@@ -26,6 +20,7 @@ export class VerdocsTemplateRoles {
26
20
  this.templateId = '';
27
21
  this.showingRoleDialog = null;
28
22
  this.sender = null;
23
+ this.dragging = false;
29
24
  this.loading = true;
30
25
  this.template = null;
31
26
  }
@@ -36,7 +31,7 @@ export class VerdocsTemplateRoles {
36
31
  console.log('[ROLES] Loading template', this.templateId);
37
32
  this.unlistenToTemplate();
38
33
  Store.subscribe('templates', this.templateId, () => getTemplate(this.endpoint, this.templateId), false, (template) => {
39
- console.log('[BUILD] Template Updated', template);
34
+ console.log('[ROLES] Template Updated', template);
40
35
  this.template = template;
41
36
  this.loading = false;
42
37
  });
@@ -67,60 +62,73 @@ export class VerdocsTemplateRoles {
67
62
  }
68
63
  }
69
64
  componentDidRender() {
70
- interact.dynamicDrop(true);
71
- interact('.recipient').draggable({
72
- listeners: {
73
- start: function handleStart(e) {
74
- e.target.classList.add('dragging');
75
- this.el.classList.add('dragging');
76
- }.bind(this),
77
- move: function handleMove(e) {
78
- const oldX = +(e.target.getAttribute('dX') || 0);
79
- const oldY = +(e.target.getAttribute('dY') || 0);
80
- const sequence = +(e.target.dataset['sequence'] || 0);
81
- const order = +(e.target.dataset['order'] || 0);
82
- const newX = e.dx + oldX;
83
- const newY = e.dy + oldY;
84
- e.target.setAttribute('dX', newX);
85
- e.target.setAttribute('dY', newY);
86
- const rect = e.target.getBoundingClientRect();
87
- // Note: I never did figure out exactly why this is, but if we don't offset the transform
88
- // the dragged item is offset from the mouse cursor quite a bit.
89
- console.log('w', rect.width);
90
- e.target.style.transform = `translate(${newX + rect.width - (order + 1)}px, ${newY - rect.height * sequence}px)`;
91
- }.bind(this),
92
- end: function handleEnd(e) {
93
- e.target.classList.remove('dragging');
94
- this.el.classList.remove('dragging');
95
- // console.log('end', event);
96
- e.target.removeAttribute('dX');
97
- e.target.removeAttribute('dY');
98
- e.target.style.transform = null;
99
- }.bind(this),
100
- },
65
+ // Existing sequence numbers
66
+ const sequenceNumbers = this.getSequenceNumbers();
67
+ sequenceNumbers.forEach(sequence => {
68
+ const el = document.getElementById(`verdocs-roles-sequence-${sequence}`);
69
+ if (el) {
70
+ new Sortable(el, {
71
+ group: 'roles',
72
+ animation: 150,
73
+ dragoverBubble: true,
74
+ filter: '.no-drag',
75
+ onEnd: this.handleMoveEnd.bind(this),
76
+ onChoose: () => (this.dragging = true),
77
+ onUnchoose: () => (this.dragging = false),
78
+ });
79
+ }
101
80
  });
102
- interact('.dropzone').dropzone({
103
- overlap: 0.05,
104
- ondrop: async function onDrop(event) {
105
- var _a;
106
- event.target.classList.remove('active');
107
- // This will re-sort the roles and renumbers them via server calls if necessary
108
- await this.renumberTemplateRoles();
109
- console.log('[ROLES] Updated roles', this.getSortedRoles());
110
- (_a = this.rolesUpdated) === null || _a === void 0 ? void 0 : _a.emit({ event: 'updated', endpoint: this.endpoint, templateId: this.templateId, roles: this.getSortedRoles() });
111
- }.bind(this),
112
- ondropactivate: e => {
113
- e.target.classList.add('visible');
114
- },
115
- ondropdeactivate: e => {
116
- e.target.classList.remove('visible');
117
- },
118
- ondragenter: e => {
119
- e.target.classList.add('active');
120
- },
121
- ondragleave: e => {
122
- e.target.classList.remove('active');
123
- },
81
+ const el = document.getElementById(`verdocs-roles-sequence-${sequenceNumbers.length + 1}`);
82
+ if (el) {
83
+ new Sortable(el, {
84
+ group: 'roles',
85
+ animation: 150,
86
+ dragoverBubble: true,
87
+ filter: '.no-drag',
88
+ onEnd: this.handleMoveEnd.bind(this),
89
+ onChoose: () => (this.dragging = true),
90
+ onUnchoose: () => (this.dragging = false),
91
+ });
92
+ }
93
+ }
94
+ handleMoveEnd(evt) {
95
+ const fromSeq = +evt.from.id.split('-').pop();
96
+ const toSeq = +evt.to.id.split('-').pop();
97
+ const fromIndex = +evt.oldIndex + 1;
98
+ const toIndex = +evt.newIndex + 1;
99
+ // console.log(`Move from ${fromSeq}:${fromIndex} to ${toSeq}:${toIndex}`, evt.item);
100
+ const sortableRoles = {};
101
+ const sequenceNumbers = this.getSequenceNumbers();
102
+ sequenceNumbers.forEach(sequence => {
103
+ sortableRoles[sequence] = JSON.parse(JSON.stringify(this.getRolesAtSequence(sequence)));
104
+ });
105
+ // We might be adding a new sequence number now. Make sure we have an array to drop
106
+ // the record into.
107
+ sortableRoles[sequenceNumbers.length + 1] = [];
108
+ const role = sortableRoles[fromSeq].splice(fromIndex - 1, 1)[0];
109
+ sortableRoles[toSeq].splice(toIndex - 1, 0, role);
110
+ const renumberRequests = [];
111
+ Object.entries(sortableRoles).forEach(([targetSeq, roles]) => {
112
+ roles.forEach((role, index) => {
113
+ console.log('Evaluating role', role.name, role.sequence, role.order);
114
+ const targetOrder = +index + 1;
115
+ if (role.sequence !== +targetSeq || role.order !== targetOrder) {
116
+ role.sequence = +targetSeq;
117
+ role.order = targetOrder;
118
+ renumberRequests.push(updateTemplateRole(this.endpoint, this.templateId, role.name, { sequence: +targetSeq, order: targetOrder })
119
+ .then(r => console.log('[ROLES] Updated role', role.name, r))
120
+ .catch(e => console.log('[ROLES] Error updating role', e)));
121
+ }
122
+ });
123
+ });
124
+ // When renumbering, we don't try to update the store for every individual item
125
+ // changing. We just do it once at the end.
126
+ console.log(`[ROLES] Awaiting ${renumberRequests.length} renumber requests`, renumberRequests);
127
+ return Promise.all(renumberRequests).then(async () => {
128
+ const newTemplate = JSON.parse(JSON.stringify(this.template));
129
+ newTemplate.roles = Object.keys(sortableRoles).reduce((acc, seq) => acc.concat(sortableRoles[seq]), []);
130
+ await Store.getTemplate(this.endpoint, this.templateId, true);
131
+ // Store.updateTemplate(this.templateId, newTemplate);
124
132
  });
125
133
  }
126
134
  handleCancel() {
@@ -140,13 +148,11 @@ export class VerdocsTemplateRoles {
140
148
  });
141
149
  }
142
150
  getSequenceNumbers() {
143
- const sequences = [];
144
- this.getSortedRoles().forEach(role => {
145
- if (!sequences.includes(role.sequence)) {
146
- sequences.push(role.sequence);
147
- }
148
- });
149
- return sequences.sort((a, b) => a - b);
151
+ var _a;
152
+ const sequenceNumbers = (((_a = this.template) === null || _a === void 0 ? void 0 : _a.roles) || []).map(role => role.sequence);
153
+ const deduped = [...new Set(sequenceNumbers)];
154
+ deduped.sort((a, b) => a - b);
155
+ return deduped;
150
156
  }
151
157
  getRoleNames() {
152
158
  const roles = this.getSortedRoles();
@@ -162,32 +168,64 @@ export class VerdocsTemplateRoles {
162
168
  // 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.
163
169
  // Then we re-sort the list of roles and renumber them.
164
170
  async renumberTemplateRoles() {
165
- // console.log('Renumbering roles', this.getSequenceNumbers(), JSON.stringify(this.roleStore.state));
166
- // Avoid dupe renumber attempts
167
- const renumbered = [];
168
- // If the user dragged an entry from below a row to above it, we end up here like [1,0]. Make sure it's [0,1] for the next operation.
171
+ const sortableRoles = {};
169
172
  const renumberRequests = [];
170
- this.getSequenceNumbers().forEach((originalSequence, newSequenceIndex) => {
171
- this.getRolesAtSequence(originalSequence).forEach((role, newOrderIndex) => {
172
- if (!renumbered.includes(role.name)) {
173
- if (role.sequence !== newSequenceIndex + 1 || role.order !== newOrderIndex + 1) {
174
- role.sequence = newSequenceIndex + 1;
175
- role.order = newOrderIndex + 1;
176
- renumbered.push(role.name);
177
- renumberRequests.push(updateTemplateRole(this.endpoint, this.templateId, role.name, { sequence: role.sequence, order: role.order }));
178
- }
173
+ const sequenceNumbers = this.getSequenceNumbers();
174
+ console.log('Sorting sequences', sequenceNumbers);
175
+ sequenceNumbers.forEach(targetSeq => {
176
+ sortableRoles[targetSeq].forEach((role, targetOrderMinusOne) => {
177
+ const targetOrder = +targetOrderMinusOne + 1;
178
+ if (role.sequence !== +targetSeq || role.order !== targetOrder) {
179
+ console.log('[ROLES] Updating role', role.name, 'from', role.sequence, role.order, 'to', targetSeq, targetOrder);
180
+ role.sequence = +targetSeq;
181
+ role.order = targetOrder;
182
+ renumberRequests.push(updateTemplateRole(this.endpoint, this.templateId, role.name, { sequence: +targetSeq, order: targetOrder })
183
+ .then(r => console.log('[ROLES] Updated role', role.name, r))
184
+ .catch(e => console.log('[ROLES] Error updating role', e)));
179
185
  }
180
186
  });
181
187
  });
182
- if (renumberRequests.length > 0) {
183
- console.log(`[ROLES] Submitting ${renumberRequests.length} renumber requests`);
184
- return Promise.all(renumberRequests).then(async () => {
185
- // When renumbering, we don't try to update the store for every individual item
186
- // changing. We just do it once at the end.
187
- this.template = await Store.getTemplate(this.endpoint, this.templateId, true);
188
- });
189
- }
190
- return true;
188
+ console.log('Sortable Roles', sortableRoles);
189
+ console.log(`[ROLES] Awaiting ${renumberRequests.length} renumber requests`);
190
+ return Promise.all(renumberRequests).then(async () => {
191
+ // When renumbering, we don't try to update the store for every individual item
192
+ // changing. We just do it once at the end.
193
+ const newTemplate = JSON.parse(JSON.stringify(this.template));
194
+ newTemplate.roles = Object.keys(sortableRoles).reduce((acc, seq) => acc.concat(sortableRoles[seq]), []);
195
+ console.log('[ROLES] Done renumbering', newTemplate.roles.map(r => ({ name: r.name, sequence: r.sequence, order: r.order })));
196
+ Store.updateTemplate(this.templateId, newTemplate);
197
+ // TODO: Explore race condition in reordering roles
198
+ // this.template = await Store.getTemplate(this.endpoint, this.templateId, true);
199
+ });
200
+ // // Avoid dupe renumber attempts
201
+ // const renumbered = [];
202
+ //
203
+ // // If the user dragged an entry from below a row to above it, we end up here like [1,0]. Make sure it's [0,1] for the next operation.
204
+ // const renumberRequests = [];
205
+ // this.getSequenceNumbers().forEach((originalSequence, newSequenceIndex) => {
206
+ // this.getRolesAtSequence(originalSequence).forEach((role, newOrderIndex) => {
207
+ // if (!renumbered.includes(role.name)) {
208
+ // if (role.sequence !== newSequenceIndex + 1 || role.order !== newOrderIndex + 1) {
209
+ // role.sequence = newSequenceIndex + 1;
210
+ // role.order = newOrderIndex + 1;
211
+ // renumbered.push(role.name);
212
+ // // console.log('[ROLES] Renumbering', role.name, targetSequence, targetOrder);
213
+ // renumberRequests.push(updateTemplateRole(this.endpoint, this.templateId, role.name, {sequence: role.sequence, order: role.order}));
214
+ // }
215
+ // }
216
+ // });
217
+ // });
218
+ //
219
+ // if (renumberRequests.length > 0) {
220
+ // console.log(`[ROLES] Submitting ${renumberRequests.length} renumber requests`);
221
+ // return Promise.all(renumberRequests).then(async () => {
222
+ // // When renumbering, we don't try to update the store for every individual item
223
+ // // changing. We just do it once at the end.
224
+ // this.template = await Store.getTemplate(this.endpoint, this.templateId, true);
225
+ // });
226
+ // }
227
+ //
228
+ // return true;
191
229
  }
192
230
  // Look for name conflicts, because they're UGC and can be anything, regardless of order.
193
231
  getNextRoleName() {
@@ -252,12 +290,17 @@ export class VerdocsTemplateRoles {
252
290
  if (this.loading || !this.template) {
253
291
  return (h(Host, { class: "loading" }, h("verdocs-loader", null)));
254
292
  }
293
+ console.log('[ROLES] Rendering', this.template.roles.map(r => ({ name: r.name, sequence: r.sequence, order: r.order })));
255
294
  const roleNames = this.getRoleNames();
256
295
  const sequences = this.getSequenceNumbers();
257
- return (h(Host, null, h("form", { onSubmit: e => e.preventDefault(), onClick: e => e.stopPropagation(), autocomplete: "off" }, h("h5", null, "Roles and Workflow"), h("div", { class: "participants" }, h("div", { class: "left-line" }), h("div", { class: "row" }, h("div", { class: "icon", innerHTML: startIcon }), h("div", { class: "row-roles" }, h("div", { class: "sender" }, h("span", { class: "label" }, "Send Envelope")))), h("div", { class: "row add-sequence", "data-sequence": 0 }, h("div", { class: "icon", innerHTML: plusIcon }), h("div", { class: "row-roles" }, h("div", { class: "dropzone", "data-sequence": 0, "data-order": 1 }, "Add Step"))), sequences.map(sequence => (h(Fragment, null, h("div", { class: "row" }, h("div", { class: "icon", innerHTML: stepIcon }), h("div", { class: "row-roles" }, h("div", { class: "dropzone", "data-order": 0.5, "data-sequence": sequence }), this.getRolesAtSequence(sequence).map(role => {
296
+ console.log('Rendering sequences', sequences, roleNames);
297
+ // style={{backgroundColor: getRGBA(getRoleIndex(this.template, role.name))}}
298
+ return (h(Host, { class: { dragging: this.dragging } }, h("form", { onSubmit: e => e.preventDefault(), onClick: e => e.stopPropagation(), autocomplete: "off" }, h("h5", null, "Roles and Workflow"), h("div", { class: "roles" }, sequences.map(sequence => (h("div", { class: "sequence" }, h("div", { class: "sequence-label no-drag" }, sequence, "."), h("div", { class: "sequence-roles", id: `verdocs-roles-sequence-${sequence}`, "data-sequence": sequence }, this.getRolesAtSequence(sequence).map(role => {
258
299
  const unknown = !role.email;
259
- return unknown ? (h(Fragment, null, h("div", { class: "recipient", style: { backgroundColor: getRGBA(getRoleIndex(this.template, role.name)) }, "data-rolename": role.name, "data-sequence": sequence, "data-order": role.order }, h("span", { class: "type-icon", innerHTML: role.type === 'signer' ? iconSigner : role.type === 'cc' ? iconCC : iconApprover }), role.name, " ", h("div", { class: "settings-button", innerHTML: settingsIcon, onClick: () => (this.showingRoleDialog = role.name), "aria-role": "button" })), h("div", { class: "dropzone", "data-order": role.order + 0.5, "data-sequence": sequence }))) : (h(Fragment, null, h("div", { class: "recipient", style: { borderColor: getRGBA(getRoleIndex(this.template, role.name)) }, "data-rolename": role.name, "data-sequence": sequence, "data-order": role.order }, h("span", { class: "type-icon", innerHTML: role.type === 'signer' ? iconSigner : role.type === 'cc' ? iconCC : iconApprover }), formatFullName(role), " ", h("div", { class: "settings-button", innerHTML: settingsIcon, onClick: () => (this.showingRoleDialog = role.name), "aria-role": "button" })), h("div", { class: "dropzone", "data-order": role.order + 0.5, "data-sequence": sequence })));
260
- }), h("button", { class: "add-role", innerHTML: plusIcon, onClick: e => this.handleAddRole(e, sequence) }))), sequences.length > 0 && (h("div", { class: "row add-sequence", "data-sequence": sequence }, h("div", { class: "row-roles" }, h("div", { class: "icon", innerHTML: plusIcon }), h("div", { class: "dropzone", "data-sequence": sequence + 1, "data-order": 1 }, "Add Step"))))))), h("div", { class: "row", "data-sequence": sequences.length + 1 }, h("div", { class: "row-roles" }, h("div", { class: "icon", innerHTML: plusIcon }), h("button", { class: "add-step", innerHTML: plusIcon, onClick: e => this.handleAddStep(e, sequences.length + 1) }))), h("div", { class: "row" }, h("div", { class: "icon", innerHTML: doneIcon }), h("div", { class: "row-roles" }, h("div", { class: "complete" }, "Document Complete")))), roleNames.length < 1 && (h("div", { class: "empty" }, "You must add at least one Role before proceeding.", h("br", null), " Click the ", h("span", { innerHTML: plusIcon }), " Add button above to get started.")), h("div", { class: "buttons" }, h("div", { class: "flex-fill" }), h("verdocs-button", { variant: "outline", label: "Cancel", size: "small", onClick: () => this.handleCancel() }), h("verdocs-button", { label: "OK", size: "small", onClick: () => this.handleSubmit(), disabled: roleNames.length < 1 }))), this.showingRoleDialog && (h("verdocs-template-role-properties", { endpoint: this.endpoint, templateId: this.templateId, roleName: this.showingRoleDialog, onClose: () => {
300
+ return unknown ? (h("div", { class: "role", "data-rolename": role.name, "data-sequence": sequence, "data-order": role.order }, h("div", { class: "role-name" }, role.name), h("div", { class: "icons" }, h("div", { class: "gear-button", innerHTML: settingsIcon, onClick: () => (this.showingRoleDialog = role.name), "aria-role": "button" }), h("span", { class: "type-icon", innerHTML: role.type === 'signer' ? iconSigner : role.type === 'cc' ? iconCC : iconApprover })))) : (h("div", { class: "role", "data-rolename": role.name, "data-sequence": sequence, "data-order": role.order }, h("div", { class: "role-name" }, formatFullName(role)), h("div", { class: "icons" }, h("div", { class: "gear-button", innerHTML: settingsIcon, onClick: () => (this.showingRoleDialog = role.name), "aria-role": "button" }), h("span", { class: "type-icon", innerHTML: role.type === 'signer' ? iconSigner : role.type === 'cc' ? iconCC : iconApprover }))));
301
+ })), h("button", { class: "add-role no-drag", innerHTML: plusIcon, onClick: e => this.handleAddRole(e, sequence) })))), h("div", { class: "sequence add-sequence" }, h("div", { class: "sequence-label no-drag" }, sequences.length + 1, "."), h("div", { class: "sequence-roles", id: `verdocs-roles-sequence-${sequences.length + 1}`, "data-sequence": sequences.length + 1 }, h("div", { class: "role-name add-step-label" }, "Add Step.")), h("button", { class: "add-role no-drag", innerHTML: plusIcon, onClick: e => this.handleAddRole(e, sequences.length + 1) }))), roleNames.length < 1 && (h("div", { class: "empty" }, "You must add at least one Role before proceeding.", h("br", null), " Click the ", h("span", { innerHTML: plusIcon }), " Add button above to get started.")), h("div", { class: "buttons" }, h("div", { class: "flex-fill" }), h("verdocs-button", { variant: "outline", label: "Cancel", size: "small", onClick: () => this.handleCancel() }), h("verdocs-button", { label: "OK", size: "small", onClick: () => this.handleSubmit(), disabled: roleNames.length < 1 }))), this.showingRoleDialog && (h("verdocs-menu-panel", { onClose: () => (this.showingRoleDialog = null) }, h("verdocs-template-role-properties", { endpoint: this.endpoint, templateId: this.templateId, roleName: this.showingRoleDialog, onClose: () => {
302
+ var _a;
303
+ (_a = document.getElementById('verdocs-menu-panel-overlay')) === null || _a === void 0 ? void 0 : _a.remove();
261
304
  this.showingRoleDialog = null;
262
305
  }, onDelete: async () => {
263
306
  var _a;
@@ -265,7 +308,7 @@ export class VerdocsTemplateRoles {
265
308
  // This will re-sort the roles and renumbers them via server calls if necessary
266
309
  await this.renumberTemplateRoles();
267
310
  (_a = this.rolesUpdated) === null || _a === void 0 ? void 0 : _a.emit({ event: 'deleted', endpoint: this.endpoint, templateId: this.templateId, roles: this.getSortedRoles() });
268
- } }))));
311
+ } })))));
269
312
  }
270
313
  static get is() { return "verdocs-template-roles"; }
271
314
  static get originalStyleUrls() {
@@ -326,6 +369,7 @@ export class VerdocsTemplateRoles {
326
369
  return {
327
370
  "showingRoleDialog": {},
328
371
  "sender": {},
372
+ "dragging": {},
329
373
  "loading": {},
330
374
  "template": {}
331
375
  };
@@ -38,7 +38,7 @@ export class VerdocsTemplateStar {
38
38
  });
39
39
  }
40
40
  render() {
41
- return (h(Host, { key: 'a6f58209cd99b4c9e5865ca1d65447d720a42968' }, h("div", { key: '06039fdfd887e1edcf40df20cd853765b8d3f981', class: `star ${this.updating ? 'updating' : ''}`, innerHTML: this.template.star_counter ? SolidStarIcon : OutlineStarIcon, onClick: e => this.toggle(e) }), h("div", { key: '5e5c42134c1b1e46b78340d13d21a2c78e3d941c', class: "count" }, this.template.star_counter || '--')));
41
+ return (h(Host, { key: '4b2e5c3bc4bbbbdeb699f23d36af8bd409677d02' }, h("div", { key: 'cac3bad8a37bcf044e037391bee73932b95931d1', class: `star ${this.updating ? 'updating' : ''}`, innerHTML: this.template.star_counter ? SolidStarIcon : OutlineStarIcon, onClick: e => this.toggle(e) }), h("div", { key: '3b947e3b3e0a8fe4a91aeba068bc10a86dbe82f5', class: "count" }, this.template.star_counter || '--')));
42
42
  }
43
43
  static get is() { return "verdocs-template-star"; }
44
44
  static get originalStyleUrls() {
@@ -8,7 +8,7 @@ export class VerdocsTemplateTags {
8
8
  }
9
9
  render() {
10
10
  var _a;
11
- return (h(Host, { key: 'bc1467762286083fab80ee7bab00155fc5d0c521' }, (_a = this.tags) === null || _a === void 0 ? void 0 : _a.map(tag => (h("span", null, tag)))));
11
+ return (h(Host, { key: '5b52ce24a601aa820868affd555ce4b46935938d' }, (_a = this.tags) === null || _a === void 0 ? void 0 : _a.map(tag => (h("span", null, tag)))));
12
12
  }
13
13
  static get is() { return "verdocs-template-tags"; }
14
14
  static get originalStyleUrls() {
@@ -68,11 +68,10 @@ export const Store = {
68
68
  callback(rowToObject(row));
69
69
  });
70
70
  if (!store.hasRow(tableId, rowId) || forceReload) {
71
- console.log('[STORE] Reloading', { tableId, rowId });
71
+ console.log('[STORE] Loading/reloading', { tableId, rowId });
72
72
  getter()
73
73
  .then(result => {
74
74
  // We don't need to call the callback because it's already listening
75
- console.log('[STORE] Loaded row', { tableId, rowId, forceReload }, result);
76
75
  store.setRow(tableId, rowId, objectToRow(result));
77
76
  })
78
77
  .catch(e => {
@@ -93,6 +92,7 @@ export const Store = {
93
92
  return rowToObject(row);
94
93
  }
95
94
  const template = await getTemplate(endpoint, templateId);
95
+ console.log('[STORE] Reloading template', template);
96
96
  store.setRow('templates', templateId, objectToRow(template));
97
97
  return template;
98
98
  },