@verdocs/web-sdk 1.11.3 → 1.11.5

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 (358) hide show
  1. package/dist/cjs/{Envelopes-9886af0f.js → Envelopes-2350fcf1.js} +1 -1
  2. package/dist/cjs/{Templates-16615cb0.js → Templates-a94ae841.js} +2 -2
  3. package/dist/cjs/{index-1329d89c.js → index-5e4233b0.js} +57 -0
  4. package/dist/cjs/{index-eb130f52.js → index-cfa67e73.js} +1 -1
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/{templateStore-198752d5.js → templateStore-4abb214a.js} +1 -1
  7. package/dist/cjs/verdocs-auth.cjs.entry.js +1 -1
  8. package/dist/cjs/verdocs-build.cjs.entry.js +4 -4
  9. package/dist/cjs/verdocs-button-panel_3.cjs.entry.js +4 -4
  10. package/dist/cjs/verdocs-button.cjs.entry.js +1 -1
  11. package/dist/cjs/verdocs-checkbox_4.cjs.entry.js +1 -1
  12. package/dist/cjs/verdocs-contact-picker.cjs.entry.js +1 -1
  13. package/dist/cjs/verdocs-document-page_2.cjs.entry.js +1 -1
  14. package/dist/cjs/verdocs-envelope-sidebar.cjs.entry.js +3 -3
  15. package/dist/cjs/verdocs-field-attachment.cjs.entry.js +3 -3
  16. package/dist/cjs/verdocs-field-checkbox.cjs.entry.js +5 -4
  17. package/dist/cjs/verdocs-field-date.cjs.entry.js +5 -4
  18. package/dist/cjs/verdocs-field-dropdown.cjs.entry.js +4 -3
  19. package/dist/cjs/verdocs-field-initial.cjs.entry.js +5 -4
  20. package/dist/cjs/verdocs-field-payment.cjs.entry.js +4 -3
  21. package/dist/cjs/verdocs-field-radio-button.cjs.entry.js +5 -4
  22. package/dist/cjs/verdocs-field-signature.cjs.entry.js +5 -4
  23. package/dist/cjs/verdocs-field-textarea.cjs.entry.js +5 -4
  24. package/dist/cjs/verdocs-field-textbox.cjs.entry.js +5 -4
  25. package/dist/cjs/verdocs-field-timestamp.cjs.entry.js +5 -4
  26. package/dist/cjs/verdocs-floating-menu.cjs.entry.js +106 -0
  27. package/dist/cjs/verdocs-initial-dialog.cjs.entry.js +1 -1
  28. package/dist/cjs/verdocs-kba-dialog.cjs.entry.js +1 -1
  29. package/dist/cjs/verdocs-loader.cjs.entry.js +1 -1
  30. package/dist/cjs/verdocs-ok-dialog.cjs.entry.js +1 -1
  31. package/dist/cjs/verdocs-organization-card.cjs.entry.js +1 -1
  32. package/dist/cjs/verdocs-preview.cjs.entry.js +6 -6
  33. package/dist/cjs/verdocs-quick-functions_3.cjs.entry.js +1 -1
  34. package/dist/cjs/verdocs-radio-button.cjs.entry.js +1 -1
  35. package/dist/cjs/verdocs-search-tabs.cjs.entry.js +1 -1
  36. package/dist/cjs/verdocs-search.cjs.entry.js +1 -1
  37. package/dist/cjs/verdocs-send.cjs.entry.js +4 -4
  38. package/dist/cjs/verdocs-sign.cjs.entry.js +3 -3
  39. package/dist/cjs/verdocs-signature-dialog.cjs.entry.js +1 -1
  40. package/dist/cjs/verdocs-status-indicator.cjs.entry.js +1 -1
  41. package/dist/cjs/verdocs-template-attachments.cjs.entry.js +4 -4
  42. package/dist/cjs/verdocs-template-card.cjs.entry.js +1 -1
  43. package/dist/cjs/verdocs-template-create_2.cjs.entry.js +71 -36
  44. package/dist/cjs/verdocs-template-document-page.cjs.entry.js +103 -0
  45. package/dist/cjs/verdocs-template-name.cjs.entry.js +4 -4
  46. package/dist/cjs/verdocs-template-properties.cjs.entry.js +3 -3
  47. package/dist/cjs/verdocs-template-recipients.cjs.entry.js +4 -4
  48. package/dist/cjs/verdocs-template-reminders.cjs.entry.js +4 -4
  49. package/dist/cjs/verdocs-template-role-properties_2.cjs.entry.js +4 -4
  50. package/dist/cjs/verdocs-template-tags.cjs.entry.js +1 -1
  51. package/dist/cjs/verdocs-template-visibility.cjs.entry.js +4 -4
  52. package/dist/cjs/verdocs-toggle-button.cjs.entry.js +1 -1
  53. package/dist/cjs/verdocs-toggle.cjs.entry.js +1 -1
  54. package/dist/cjs/verdocs-toolbar-icon.cjs.entry.js +51 -0
  55. package/dist/cjs/verdocs-upload-dialog.cjs.entry.js +1 -1
  56. package/dist/cjs/verdocs-view.cjs.entry.js +3 -3
  57. package/dist/cjs/verdocs-web-sdk.cjs.js +2 -2
  58. package/dist/collection/components/elements/verdocs-template-document-page/verdocs-template-document-page.js +1 -1
  59. package/dist/collection/components/embeds/verdocs-preview/verdocs-preview.js +2 -2
  60. package/dist/collection/components/embeds/verdocs-preview/verdocs-preview.stories.js +2 -1
  61. package/dist/collection/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.js +16 -1
  62. package/dist/collection/components/fields/verdocs-field-date/verdocs-field-date.js +16 -1
  63. package/dist/collection/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.js +15 -0
  64. package/dist/collection/components/fields/verdocs-field-initial/verdocs-field-initial.js +16 -1
  65. package/dist/collection/components/fields/verdocs-field-payment/verdocs-field-payment.js +15 -0
  66. package/dist/collection/components/fields/verdocs-field-radio-button-group/verdocs-field-radio-button.js +16 -1
  67. package/dist/collection/components/fields/verdocs-field-signature/verdocs-field-signature.js +16 -1
  68. package/dist/collection/components/fields/verdocs-field-textarea/verdocs-field-textarea.js +16 -1
  69. package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.js +16 -1
  70. package/dist/collection/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.js +16 -1
  71. package/dist/collection/components/templates/verdocs-template-create/verdocs-template-create.css +2 -2
  72. package/dist/collection/components/templates/verdocs-template-create/verdocs-template-create.js +22 -12
  73. package/dist/collection/components/templates/verdocs-template-fields/verdocs-template-fields.css +16 -2
  74. package/dist/collection/components/templates/verdocs-template-fields/verdocs-template-fields.js +70 -18
  75. package/dist/collection/utils/Templates.js +1 -1
  76. package/dist/components/Templates.js +1 -1
  77. package/dist/components/verdocs-build.js +4 -10
  78. package/dist/components/verdocs-field-checkbox.js +2 -1
  79. package/dist/components/verdocs-field-date.js +2 -1
  80. package/dist/components/verdocs-field-dropdown.js +1 -0
  81. package/dist/components/verdocs-field-initial.js +2 -1
  82. package/dist/components/verdocs-field-payment.js +1 -0
  83. package/dist/components/verdocs-field-radio-button.js +2 -1
  84. package/dist/components/verdocs-field-signature.js +2 -1
  85. package/dist/components/verdocs-field-textarea.js +2 -1
  86. package/dist/components/verdocs-field-textbox.js +2 -1
  87. package/dist/components/verdocs-field-timestamp.js +2 -1
  88. package/dist/components/verdocs-floating-menu.js +123 -1
  89. package/dist/components/verdocs-preview.js +2 -2
  90. package/dist/components/verdocs-template-create2.js +23 -13
  91. package/dist/components/verdocs-template-document-page2.js +1 -1
  92. package/dist/components/verdocs-template-fields2.js +48 -28
  93. package/dist/docs.json +128 -21
  94. package/dist/esm/{Envelopes-b8945309.js → Envelopes-7f3b60de.js} +1 -1
  95. package/dist/esm/{Templates-2528dad5.js → Templates-a693b275.js} +2 -2
  96. package/dist/esm/{index-fd7b8a34.js → index-24fd1580.js} +1 -1
  97. package/dist/esm/{index-f78d163d.js → index-e64d45e2.js} +57 -0
  98. package/dist/esm/loader.js +2 -2
  99. package/dist/esm/{templateStore-a7a5149a.js → templateStore-a399f366.js} +1 -1
  100. package/dist/esm/verdocs-auth.entry.js +1 -1
  101. package/dist/esm/verdocs-build.entry.js +4 -4
  102. package/dist/esm/verdocs-button-panel_3.entry.js +4 -4
  103. package/dist/esm/verdocs-button.entry.js +1 -1
  104. package/dist/esm/verdocs-checkbox_4.entry.js +1 -1
  105. package/dist/esm/verdocs-contact-picker.entry.js +1 -1
  106. package/dist/esm/verdocs-document-page_2.entry.js +1 -1
  107. package/dist/esm/verdocs-envelope-sidebar.entry.js +3 -3
  108. package/dist/esm/verdocs-field-attachment.entry.js +3 -3
  109. package/dist/esm/verdocs-field-checkbox.entry.js +5 -4
  110. package/dist/esm/verdocs-field-date.entry.js +5 -4
  111. package/dist/esm/verdocs-field-dropdown.entry.js +4 -3
  112. package/dist/esm/verdocs-field-initial.entry.js +5 -4
  113. package/dist/esm/verdocs-field-payment.entry.js +4 -3
  114. package/dist/esm/verdocs-field-radio-button.entry.js +5 -4
  115. package/dist/esm/verdocs-field-signature.entry.js +5 -4
  116. package/dist/esm/verdocs-field-textarea.entry.js +5 -4
  117. package/dist/esm/verdocs-field-textbox.entry.js +5 -4
  118. package/dist/esm/verdocs-field-timestamp.entry.js +5 -4
  119. package/dist/{components/verdocs-floating-menu2.js → esm/verdocs-floating-menu.entry.js} +8 -31
  120. package/dist/esm/verdocs-initial-dialog.entry.js +1 -1
  121. package/dist/esm/verdocs-kba-dialog.entry.js +1 -1
  122. package/dist/esm/verdocs-loader.entry.js +1 -1
  123. package/dist/esm/verdocs-ok-dialog.entry.js +1 -1
  124. package/dist/esm/verdocs-organization-card.entry.js +1 -1
  125. package/dist/esm/verdocs-preview.entry.js +6 -6
  126. package/dist/esm/verdocs-quick-functions_3.entry.js +1 -1
  127. package/dist/esm/verdocs-radio-button.entry.js +1 -1
  128. package/dist/esm/verdocs-search-tabs.entry.js +1 -1
  129. package/dist/esm/verdocs-search.entry.js +1 -1
  130. package/dist/esm/verdocs-send.entry.js +4 -4
  131. package/dist/esm/verdocs-sign.entry.js +3 -3
  132. package/dist/esm/verdocs-signature-dialog.entry.js +1 -1
  133. package/dist/esm/verdocs-status-indicator.entry.js +1 -1
  134. package/dist/esm/verdocs-template-attachments.entry.js +4 -4
  135. package/dist/esm/verdocs-template-card.entry.js +1 -1
  136. package/dist/esm/verdocs-template-create_2.entry.js +71 -36
  137. package/dist/esm/verdocs-template-document-page.entry.js +99 -0
  138. package/dist/esm/verdocs-template-name.entry.js +4 -4
  139. package/dist/esm/verdocs-template-properties.entry.js +3 -3
  140. package/dist/esm/verdocs-template-recipients.entry.js +4 -4
  141. package/dist/esm/verdocs-template-reminders.entry.js +4 -4
  142. package/dist/esm/verdocs-template-role-properties_2.entry.js +4 -4
  143. package/dist/esm/verdocs-template-tags.entry.js +1 -1
  144. package/dist/esm/verdocs-template-visibility.entry.js +4 -4
  145. package/dist/esm/verdocs-toggle-button.entry.js +1 -1
  146. package/dist/esm/verdocs-toggle.entry.js +1 -1
  147. package/dist/esm/verdocs-toolbar-icon.entry.js +47 -0
  148. package/dist/esm/verdocs-upload-dialog.entry.js +1 -1
  149. package/dist/esm/verdocs-view.entry.js +3 -3
  150. package/dist/esm/verdocs-web-sdk.js +2 -2
  151. package/dist/esm-es5/{Envelopes-b8945309.js → Envelopes-7f3b60de.js} +1 -1
  152. package/dist/esm-es5/{Templates-2528dad5.js → Templates-a693b275.js} +1 -1
  153. package/dist/esm-es5/{index-fd7b8a34.js → index-24fd1580.js} +1 -1
  154. package/dist/esm-es5/index-e64d45e2.js +2 -0
  155. package/dist/esm-es5/loader.js +1 -1
  156. package/dist/esm-es5/{templateStore-a7a5149a.js → templateStore-a399f366.js} +1 -1
  157. package/dist/esm-es5/verdocs-auth.entry.js +1 -1
  158. package/dist/esm-es5/verdocs-build.entry.js +1 -1
  159. package/dist/esm-es5/verdocs-button-panel_3.entry.js +1 -1
  160. package/dist/esm-es5/verdocs-button.entry.js +1 -1
  161. package/dist/esm-es5/verdocs-checkbox_4.entry.js +1 -1
  162. package/dist/esm-es5/verdocs-contact-picker.entry.js +1 -1
  163. package/dist/esm-es5/verdocs-document-page_2.entry.js +1 -1
  164. package/dist/esm-es5/verdocs-envelope-sidebar.entry.js +1 -1
  165. package/dist/esm-es5/verdocs-field-attachment.entry.js +1 -1
  166. package/dist/esm-es5/verdocs-field-checkbox.entry.js +1 -1
  167. package/dist/esm-es5/verdocs-field-date.entry.js +1 -1
  168. package/dist/esm-es5/verdocs-field-dropdown.entry.js +1 -1
  169. package/dist/esm-es5/verdocs-field-initial.entry.js +1 -1
  170. package/dist/esm-es5/verdocs-field-payment.entry.js +1 -1
  171. package/dist/esm-es5/verdocs-field-radio-button.entry.js +1 -1
  172. package/dist/esm-es5/verdocs-field-signature.entry.js +1 -1
  173. package/dist/esm-es5/verdocs-field-textarea.entry.js +1 -1
  174. package/dist/esm-es5/verdocs-field-textbox.entry.js +1 -1
  175. package/dist/esm-es5/verdocs-field-timestamp.entry.js +1 -1
  176. package/dist/esm-es5/verdocs-floating-menu.entry.js +1 -0
  177. package/dist/esm-es5/verdocs-initial-dialog.entry.js +1 -1
  178. package/dist/esm-es5/verdocs-kba-dialog.entry.js +1 -1
  179. package/dist/esm-es5/verdocs-loader.entry.js +1 -1
  180. package/dist/esm-es5/verdocs-ok-dialog.entry.js +1 -1
  181. package/dist/esm-es5/verdocs-organization-card.entry.js +1 -1
  182. package/dist/esm-es5/verdocs-preview.entry.js +1 -1
  183. package/dist/esm-es5/verdocs-quick-functions_3.entry.js +1 -1
  184. package/dist/esm-es5/verdocs-radio-button.entry.js +1 -1
  185. package/dist/esm-es5/verdocs-search-tabs.entry.js +1 -1
  186. package/dist/esm-es5/verdocs-search.entry.js +1 -1
  187. package/dist/esm-es5/verdocs-send.entry.js +1 -1
  188. package/dist/esm-es5/verdocs-sign.entry.js +1 -1
  189. package/dist/esm-es5/verdocs-signature-dialog.entry.js +1 -1
  190. package/dist/esm-es5/verdocs-status-indicator.entry.js +1 -1
  191. package/dist/esm-es5/verdocs-template-attachments.entry.js +1 -1
  192. package/dist/esm-es5/verdocs-template-card.entry.js +1 -1
  193. package/dist/esm-es5/verdocs-template-create_2.entry.js +1 -1
  194. package/dist/esm-es5/verdocs-template-document-page.entry.js +1 -0
  195. package/dist/esm-es5/verdocs-template-name.entry.js +1 -1
  196. package/dist/esm-es5/verdocs-template-properties.entry.js +1 -1
  197. package/dist/esm-es5/verdocs-template-recipients.entry.js +1 -1
  198. package/dist/esm-es5/verdocs-template-reminders.entry.js +1 -1
  199. package/dist/esm-es5/verdocs-template-role-properties_2.entry.js +1 -1
  200. package/dist/esm-es5/verdocs-template-tags.entry.js +1 -1
  201. package/dist/esm-es5/verdocs-template-visibility.entry.js +1 -1
  202. package/dist/esm-es5/verdocs-toggle-button.entry.js +1 -1
  203. package/dist/esm-es5/verdocs-toggle.entry.js +1 -1
  204. package/dist/esm-es5/verdocs-toolbar-icon.entry.js +1 -0
  205. package/dist/esm-es5/verdocs-upload-dialog.entry.js +1 -1
  206. package/dist/esm-es5/verdocs-view.entry.js +1 -1
  207. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  208. package/dist/types/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.d.ts +6 -0
  209. package/dist/types/components/fields/verdocs-field-date/verdocs-field-date.d.ts +6 -0
  210. package/dist/types/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.d.ts +6 -0
  211. package/dist/types/components/fields/verdocs-field-initial/verdocs-field-initial.d.ts +6 -0
  212. package/dist/types/components/fields/verdocs-field-payment/verdocs-field-payment.d.ts +6 -0
  213. package/dist/types/components/fields/verdocs-field-radio-button-group/verdocs-field-radio-button.d.ts +6 -0
  214. package/dist/types/components/fields/verdocs-field-signature/verdocs-field-signature.d.ts +6 -0
  215. package/dist/types/components/fields/verdocs-field-textarea/verdocs-field-textarea.d.ts +6 -0
  216. package/dist/types/components/fields/verdocs-field-textbox/verdocs-field-textbox.d.ts +6 -0
  217. package/dist/types/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.d.ts +6 -0
  218. package/dist/types/components/templates/verdocs-template-fields/verdocs-template-fields.d.ts +8 -1
  219. package/dist/types/components.d.ts +48 -0
  220. package/dist/verdocs-web-sdk/p-0031154e.entry.js +1 -0
  221. package/dist/verdocs-web-sdk/{p-f0022cf0.entry.js → p-02951f09.entry.js} +1 -1
  222. package/dist/verdocs-web-sdk/{p-6121f103.system.entry.js → p-04bf80c2.system.entry.js} +1 -1
  223. package/dist/verdocs-web-sdk/{p-f9f0d3b4.system.js → p-0513c8c3.system.js} +1 -1
  224. package/dist/verdocs-web-sdk/{p-37e93857.system.entry.js → p-05581b87.system.entry.js} +1 -1
  225. package/dist/verdocs-web-sdk/{p-7d909ce4.entry.js → p-0ccb837b.entry.js} +1 -1
  226. package/dist/verdocs-web-sdk/{p-9fc9596b.system.entry.js → p-0fff0dbd.system.entry.js} +1 -1
  227. package/dist/verdocs-web-sdk/{p-f6aa16f3.system.entry.js → p-114d885d.system.entry.js} +1 -1
  228. package/dist/verdocs-web-sdk/{p-a6c3fcb6.system.entry.js → p-137837c5.system.entry.js} +1 -1
  229. package/dist/verdocs-web-sdk/{p-05f3c7bb.system.entry.js → p-13b8ea53.system.entry.js} +1 -1
  230. package/dist/verdocs-web-sdk/{p-896f1614.entry.js → p-140e1871.entry.js} +1 -1
  231. package/dist/verdocs-web-sdk/{p-817e6569.system.entry.js → p-219174fc.system.entry.js} +1 -1
  232. package/dist/verdocs-web-sdk/p-284ceaf4.entry.js +1 -0
  233. package/dist/verdocs-web-sdk/p-2a6d69c2.system.entry.js +1 -0
  234. package/dist/verdocs-web-sdk/p-30cf9417.entry.js +1 -0
  235. package/dist/verdocs-web-sdk/{p-6e3daf5a.system.js → p-340316cb.system.js} +1 -1
  236. package/dist/verdocs-web-sdk/p-36dff44e.entry.js +1 -0
  237. package/dist/verdocs-web-sdk/{p-9b7d218c.system.entry.js → p-3b3ba829.system.entry.js} +1 -1
  238. package/dist/verdocs-web-sdk/{p-686608f0.entry.js → p-3d4b366c.entry.js} +1 -1
  239. package/dist/verdocs-web-sdk/p-3db71b58.entry.js +1 -0
  240. package/dist/verdocs-web-sdk/{p-06512901.entry.js → p-408caf2e.entry.js} +1 -1
  241. package/dist/verdocs-web-sdk/{p-741a34fc.entry.js → p-4340cdc2.entry.js} +1 -1
  242. package/dist/verdocs-web-sdk/{p-7c2ce3ba.system.entry.js → p-44feafae.system.entry.js} +1 -1
  243. package/dist/verdocs-web-sdk/p-45447db5.entry.js +1 -0
  244. package/dist/verdocs-web-sdk/{p-d85e61ee.system.entry.js → p-457d3af9.system.entry.js} +1 -1
  245. package/dist/verdocs-web-sdk/{p-edcd7d44.entry.js → p-46c17ff0.entry.js} +1 -1
  246. package/dist/verdocs-web-sdk/{p-5a63da92.system.entry.js → p-486d9b7d.system.entry.js} +1 -1
  247. package/dist/verdocs-web-sdk/p-49a34d3f.system.entry.js +1 -0
  248. package/dist/verdocs-web-sdk/{p-ffdcc57f.system.entry.js → p-49d9e761.system.entry.js} +1 -1
  249. package/dist/verdocs-web-sdk/{p-93f0d41c.system.entry.js → p-4c5b7410.system.entry.js} +1 -1
  250. package/dist/verdocs-web-sdk/{p-74401f2e.system.entry.js → p-4faa7ff3.system.entry.js} +1 -1
  251. package/dist/verdocs-web-sdk/{p-b365612a.entry.js → p-5342a0bb.entry.js} +1 -1
  252. package/dist/verdocs-web-sdk/{p-150a172e.system.entry.js → p-5777de38.system.entry.js} +1 -1
  253. package/dist/verdocs-web-sdk/{p-5d6c8737.entry.js → p-58b858fc.entry.js} +1 -1
  254. package/dist/verdocs-web-sdk/{p-3f01debd.system.entry.js → p-591432e9.system.entry.js} +1 -1
  255. package/dist/verdocs-web-sdk/{p-7ede7934.system.entry.js → p-5ba5c607.system.entry.js} +1 -1
  256. package/dist/verdocs-web-sdk/{p-84b3f146.entry.js → p-5c39e66b.entry.js} +1 -1
  257. package/dist/verdocs-web-sdk/p-5cb8b228.system.entry.js +1 -0
  258. package/dist/verdocs-web-sdk/{p-fedfe011.entry.js → p-5e932394.entry.js} +1 -1
  259. package/dist/verdocs-web-sdk/p-64275bfd.entry.js +1 -0
  260. package/dist/verdocs-web-sdk/{p-36fe1557.system.entry.js → p-69ded49f.system.entry.js} +1 -1
  261. package/dist/verdocs-web-sdk/{p-74207eb0.system.entry.js → p-6affb629.system.entry.js} +1 -1
  262. package/dist/verdocs-web-sdk/{p-0f6da8c7.system.js → p-71c7e1ba.system.js} +1 -1
  263. package/dist/verdocs-web-sdk/p-7239d28d.js +2 -0
  264. package/dist/verdocs-web-sdk/{p-353b8e87.system.entry.js → p-7b82f0f2.system.entry.js} +1 -1
  265. package/dist/verdocs-web-sdk/{p-7efc60cc.entry.js → p-7cb46b17.entry.js} +1 -1
  266. package/dist/verdocs-web-sdk/p-7e6d7c07.system.js +1 -0
  267. package/dist/verdocs-web-sdk/{p-18bb4152.system.entry.js → p-82a78fe5.system.entry.js} +1 -1
  268. package/dist/verdocs-web-sdk/{p-113a45d3.entry.js → p-833d6274.entry.js} +1 -1
  269. package/dist/verdocs-web-sdk/{p-58dda3d1.system.entry.js → p-837d3790.system.entry.js} +1 -1
  270. package/dist/verdocs-web-sdk/p-8466a97d.js +1 -0
  271. package/dist/verdocs-web-sdk/p-85ab335b.entry.js +1 -0
  272. package/dist/verdocs-web-sdk/{p-9ccdb9a9.system.entry.js → p-87362bbf.system.entry.js} +1 -1
  273. package/dist/verdocs-web-sdk/p-87e5b9b3.entry.js +1 -0
  274. package/dist/verdocs-web-sdk/{p-6619bc62.js → p-89b9fd4f.js} +1 -1
  275. package/dist/verdocs-web-sdk/{p-5ea05a1d.js → p-8b2040be.js} +1 -1
  276. package/dist/verdocs-web-sdk/{p-87e67bc6.system.entry.js → p-8b68678c.system.entry.js} +1 -1
  277. package/dist/verdocs-web-sdk/{p-28620067.system.entry.js → p-9191190c.system.entry.js} +1 -1
  278. package/dist/verdocs-web-sdk/p-9422b807.system.js +2 -0
  279. package/dist/verdocs-web-sdk/{p-a4b4ce45.entry.js → p-966a3108.entry.js} +1 -1
  280. package/dist/verdocs-web-sdk/p-9760d335.js +1 -0
  281. package/dist/verdocs-web-sdk/p-9775a49a.entry.js +1 -0
  282. package/dist/verdocs-web-sdk/{p-deed17c8.entry.js → p-9871f509.entry.js} +1 -1
  283. package/dist/verdocs-web-sdk/p-996ce975.system.entry.js +1 -0
  284. package/dist/verdocs-web-sdk/{p-ca0a2a00.entry.js → p-9d063e59.entry.js} +1 -1
  285. package/dist/verdocs-web-sdk/{p-dc8aa1f0.entry.js → p-9f532d65.entry.js} +1 -1
  286. package/dist/verdocs-web-sdk/{p-0aaa85ed.system.entry.js → p-a20ba40a.system.entry.js} +1 -1
  287. package/dist/verdocs-web-sdk/{p-4125b8e7.system.entry.js → p-a275f3b8.system.entry.js} +1 -1
  288. package/dist/verdocs-web-sdk/{p-40dfb545.entry.js → p-a8a3bcb0.entry.js} +1 -1
  289. package/dist/verdocs-web-sdk/{p-d1cb1151.entry.js → p-aa1d72b7.entry.js} +1 -1
  290. package/dist/verdocs-web-sdk/{p-9f6b4f8c.entry.js → p-ab2ab46e.entry.js} +1 -1
  291. package/dist/verdocs-web-sdk/{p-3379e220.entry.js → p-ac530c28.entry.js} +1 -1
  292. package/dist/verdocs-web-sdk/{p-c3922dbb.system.entry.js → p-ac91d81d.system.entry.js} +1 -1
  293. package/dist/verdocs-web-sdk/{p-1654be9f.system.entry.js → p-aec28fc8.system.entry.js} +1 -1
  294. package/dist/verdocs-web-sdk/{p-c30fa791.entry.js → p-af1eb1d8.entry.js} +1 -1
  295. package/dist/verdocs-web-sdk/{p-d250b3b4.entry.js → p-b154b9b9.entry.js} +1 -1
  296. package/dist/verdocs-web-sdk/{p-67f1cc29.system.entry.js → p-b3ea279b.system.entry.js} +1 -1
  297. package/dist/verdocs-web-sdk/{p-e29f375d.system.entry.js → p-b4c56faa.system.entry.js} +1 -1
  298. package/dist/verdocs-web-sdk/{p-4c7a531c.system.entry.js → p-b62bf4bb.system.entry.js} +1 -1
  299. package/dist/verdocs-web-sdk/{p-c6e0cc16.entry.js → p-b716d448.entry.js} +1 -1
  300. package/dist/verdocs-web-sdk/{p-d36ae684.entry.js → p-b71f26f2.entry.js} +1 -1
  301. package/dist/verdocs-web-sdk/{p-53261332.entry.js → p-be65a712.entry.js} +1 -1
  302. package/dist/verdocs-web-sdk/{p-1d787be7.entry.js → p-c11a681f.entry.js} +1 -1
  303. package/dist/verdocs-web-sdk/{p-c37913b6.entry.js → p-c296f86f.entry.js} +1 -1
  304. package/dist/verdocs-web-sdk/{p-3019014e.system.entry.js → p-c5502771.system.entry.js} +1 -1
  305. package/dist/verdocs-web-sdk/{p-673304f6.system.entry.js → p-c6e8e485.system.entry.js} +1 -1
  306. package/dist/verdocs-web-sdk/{p-49bc1855.system.entry.js → p-cb2dd06d.system.entry.js} +1 -1
  307. package/dist/verdocs-web-sdk/{p-11967343.system.entry.js → p-d0ed3251.system.entry.js} +1 -1
  308. package/dist/verdocs-web-sdk/{p-91df3bb9.entry.js → p-d2711cd7.entry.js} +1 -1
  309. package/dist/verdocs-web-sdk/{p-82452c9b.system.entry.js → p-d8cea42e.system.entry.js} +1 -1
  310. package/dist/verdocs-web-sdk/{p-2b86f106.entry.js → p-d9aab909.entry.js} +1 -1
  311. package/dist/verdocs-web-sdk/{p-8b3cf06c.system.entry.js → p-dc5875be.system.entry.js} +1 -1
  312. package/dist/verdocs-web-sdk/{p-9b9ecf94.system.entry.js → p-dff92a1d.system.entry.js} +1 -1
  313. package/dist/verdocs-web-sdk/p-e1b674e6.system.entry.js +1 -0
  314. package/dist/verdocs-web-sdk/{p-dcd59898.entry.js → p-e1fb61bb.entry.js} +1 -1
  315. package/dist/verdocs-web-sdk/p-e5c28d78.entry.js +1 -0
  316. package/dist/verdocs-web-sdk/p-ed9528b1.entry.js +1 -0
  317. package/dist/verdocs-web-sdk/{p-27396fa8.entry.js → p-ef4081e9.entry.js} +1 -1
  318. package/dist/verdocs-web-sdk/p-f063451d.entry.js +1 -0
  319. package/dist/verdocs-web-sdk/{p-72bc8464.system.entry.js → p-f0d35695.system.entry.js} +1 -1
  320. package/dist/verdocs-web-sdk/p-f1465d29.entry.js +1 -0
  321. package/dist/verdocs-web-sdk/{p-5b114f68.system.entry.js → p-f2ff8d0e.system.entry.js} +1 -1
  322. package/dist/verdocs-web-sdk/{p-37a75b0e.system.entry.js → p-f3169208.system.entry.js} +1 -1
  323. package/dist/verdocs-web-sdk/{p-760262f3.system.entry.js → p-f61da49f.system.entry.js} +1 -1
  324. package/dist/verdocs-web-sdk/{p-6f53c098.system.js → p-f8eddf94.system.js} +1 -1
  325. package/dist/verdocs-web-sdk/{p-2783520a.entry.js → p-f93d3324.entry.js} +1 -1
  326. package/dist/verdocs-web-sdk/{p-fba99ad6.entry.js → p-fa977600.entry.js} +1 -1
  327. package/dist/verdocs-web-sdk/{p-b859bbb4.entry.js → p-facf681e.entry.js} +1 -1
  328. package/dist/verdocs-web-sdk/{p-bac9ba46.system.entry.js → p-fb8c654e.system.entry.js} +1 -1
  329. package/dist/verdocs-web-sdk/{p-9f6e7b4a.system.entry.js → p-fbb9b6e2.system.entry.js} +1 -1
  330. package/dist/verdocs-web-sdk/{p-e79aabb3.entry.js → p-ffcd34e8.entry.js} +1 -1
  331. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  332. package/dist/verdocs-web-sdk/verdocs-web-sdk.js +1 -1
  333. package/package.json +1 -1
  334. package/dist/cjs/verdocs-floating-menu_3.cjs.entry.js +0 -248
  335. package/dist/custom-elements.json +0 -1390
  336. package/dist/esm/verdocs-floating-menu_3.entry.js +0 -242
  337. package/dist/esm-es5/index-f78d163d.js +0 -2
  338. package/dist/esm-es5/verdocs-floating-menu_3.entry.js +0 -1
  339. package/dist/verdocs-web-sdk/p-0049ecc7.entry.js +0 -1
  340. package/dist/verdocs-web-sdk/p-0ef66c28.system.entry.js +0 -1
  341. package/dist/verdocs-web-sdk/p-2c3aecb8.entry.js +0 -1
  342. package/dist/verdocs-web-sdk/p-3d4b187a.js +0 -1
  343. package/dist/verdocs-web-sdk/p-4a17efd7.entry.js +0 -1
  344. package/dist/verdocs-web-sdk/p-4e9b66b1.system.entry.js +0 -1
  345. package/dist/verdocs-web-sdk/p-4fc181bd.entry.js +0 -1
  346. package/dist/verdocs-web-sdk/p-64a6448f.entry.js +0 -1
  347. package/dist/verdocs-web-sdk/p-66bf5e70.entry.js +0 -1
  348. package/dist/verdocs-web-sdk/p-671036fb.js +0 -1
  349. package/dist/verdocs-web-sdk/p-6a736c6a.entry.js +0 -1
  350. package/dist/verdocs-web-sdk/p-823bf074.entry.js +0 -1
  351. package/dist/verdocs-web-sdk/p-93e8443f.system.entry.js +0 -1
  352. package/dist/verdocs-web-sdk/p-95ed895f.entry.js +0 -1
  353. package/dist/verdocs-web-sdk/p-97329951.system.js +0 -2
  354. package/dist/verdocs-web-sdk/p-c16b6ca4.system.js +0 -1
  355. package/dist/verdocs-web-sdk/p-cb4d8942.entry.js +0 -1
  356. package/dist/verdocs-web-sdk/p-e7b7bd2b.entry.js +0 -1
  357. package/dist/verdocs-web-sdk/p-f5c1ceb0.entry.js +0 -1
  358. package/dist/verdocs-web-sdk/p-ff1278ed.js +0 -2
@@ -6,25 +6,27 @@ import { defaultHeight, defaultWidth, getRoleIndex, renderDocumentField, updateC
6
6
  import TemplateStore from '../../../utils/templateStore';
7
7
  import { loadTemplate } from '../../../utils/Templates';
8
8
  import { SDKError } from '../../../utils/errors';
9
- const iconSingleline = '<svg xmlns="http://www.w3.org/2000/svg" height="24" width="24"><path d="M3.425 16.15V13h11.15v3.15Zm0-5.15V7.85h17.15V11Z"/></svg>';
10
- const iconMultiline = '<svg xmlns="http://www.w3.org/2000/svg" height="24" width="24"><path 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"/></svg>';
11
- const iconCheck = '<svg xmlns="http://www.w3.org/2000/svg" height="24" width="24"><path 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>';
12
- const iconRadio = '<svg xmlns="http://www.w3.org/2000/svg" height="24" width="24"><path 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>';
13
- const iconDatepicker = '<svg xmlns="http://www.w3.org/2000/svg" height="24" width="24"><path 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>';
14
- const iconSignature = '<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>';
15
- const iconInitial = '<svg xmlns="http://www.w3.org/2000/svg" height="24" width="24"><path d="M6.225 20.775V7h-5V3.225H15V7h-5v13.775Zm9.775 0v-8h-3V9h9.775v3.775h-3v8Z"/></svg>';
9
+ const iconSingleline = '<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>';
10
+ const iconMultiline = '<svg xmlns="http://www.w3.org/2000/svg" height="24" width="24"><path fill="#ffffff" 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"/></svg>';
11
+ const iconCheck = '<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>';
12
+ const iconRadio = '<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>';
13
+ const iconDatepicker = '<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>';
14
+ const iconSignature = '<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>';
15
+ const iconInitial = '<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>';
16
+ const iconClock = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"><path fill="#ffffff" stroke-linecap="round" stroke-linejoin="round" d="M12 6v6h4.5m4.5 0a9 9 0 11-18 0 9 9 0 0118 0z" /></svg>';
17
+ const iconBarsDown = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 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>';
16
18
  const menuOptions = [
17
19
  // {id: 'attachment', tooltip: 'Attachment', icon: 'A'},
18
20
  { id: 'checkbox', tooltip: 'Check Box', icon: iconCheck },
19
21
  { id: 'date', tooltip: 'Date', icon: iconDatepicker },
20
- { id: 'dropdown', tooltip: 'Dropdown', icon: 'O' },
22
+ { id: 'dropdown', tooltip: 'Dropdown', icon: iconBarsDown },
21
23
  { id: 'initial', tooltip: 'Initials', icon: iconInitial },
22
24
  // {id: 'payment', tooltip: 'Payment', icon: 'P'},
23
25
  { id: 'radio', tooltip: 'Radio Button', icon: iconRadio },
24
26
  { id: 'signature', tooltip: 'Signature', icon: iconSignature },
25
27
  { id: 'textarea', tooltip: 'Text Area', icon: iconMultiline },
26
28
  { id: 'textbox', tooltip: 'Text Box', icon: iconSingleline },
27
- { id: 'timestamp', tooltip: 'Timestamp', icon: 'X' },
29
+ { id: 'timestamp', tooltip: 'Timestamp', icon: iconClock },
28
30
  ];
29
31
  /**
30
32
  * Displays a builder experience for laying out fields in a template. Note that this experience requires a large display area to
@@ -36,6 +38,7 @@ export class VerdocsTemplateFields {
36
38
  this.cachedPageInfo = {};
37
39
  this.endpoint = VerdocsEndpoint.getDefault();
38
40
  this.templateId = null;
41
+ this.toolbarTargetId = null;
39
42
  this.placing = null;
40
43
  this.selectedRoleName = '';
41
44
  this.rerender = 1;
@@ -70,6 +73,19 @@ export class VerdocsTemplateFields {
70
73
  }
71
74
  componentDidRender() {
72
75
  interact.dynamicDrop(true);
76
+ const toolbarTarget = this.toolbarTargetId ? document.getElementById(this.toolbarTargetId) : null;
77
+ const toolbarEl = document.getElementById('verdocs-template-fields-toolbar');
78
+ if (toolbarTarget && toolbarEl) {
79
+ console.log('[FIELDS] Moving toolbar');
80
+ toolbarEl.remove();
81
+ toolbarTarget.append(toolbarEl);
82
+ }
83
+ }
84
+ // Stop field-placement mode if ESC is pressed
85
+ handleKeyDown(ev) {
86
+ if (ev.key === 'Escape') {
87
+ this.placing = null;
88
+ }
73
89
  }
74
90
  async handleFieldChange(field, e, optionId) {
75
91
  console.log('[FIELDS] handleFieldChange', field, e, optionId);
@@ -84,6 +100,13 @@ export class VerdocsTemplateFields {
84
100
  this.rerender++;
85
101
  (_a = this.templateUpdated) === null || _a === void 0 ? void 0 : _a.emit({ endpoint: this.endpoint, template: TemplateStore.template, event: 'updated-field' });
86
102
  });
103
+ el.addEventListener('deleted', () => {
104
+ var _a;
105
+ console.log('deleted', this, field);
106
+ el.remove();
107
+ this.rerender++;
108
+ (_a = this.templateUpdated) === null || _a === void 0 ? void 0 : _a.emit({ endpoint: this.endpoint, template: TemplateStore.template, event: 'updated-field' });
109
+ });
87
110
  el.setAttribute('roleindex', roleIndex);
88
111
  el.setAttribute('pageNumber', pageInfo.pageNumber);
89
112
  el.setAttribute('xScale', pageInfo.xScale);
@@ -153,10 +176,14 @@ export class VerdocsTemplateFields {
153
176
  }
154
177
  }
155
178
  generateFieldName(type, pageNumber) {
156
- var _a;
157
- const page = (_a = TemplateStore.template.pages) === null || _a === void 0 ? void 0 : _a[pageNumber - 1];
158
- const fields = (page === null || page === void 0 ? void 0 : page.fields) || [];
159
- return `${type}P${pageNumber}-${fields.length}`;
179
+ let i = 1;
180
+ let fieldName;
181
+ do {
182
+ fieldName = `${type}P${pageNumber}-${i}`;
183
+ i++;
184
+ } while (TemplateStore.fields.some(field => field.name === fieldName));
185
+ console.log('Field name', fieldName);
186
+ return fieldName;
160
187
  }
161
188
  // Scale the X,Y clicks to the virtual page dimensions. Also ensure the field doesn't go off the page.
162
189
  viewCoordinatesToPageCoordinates(viewX, viewY, pageNumber, xMax, yMax) {
@@ -168,6 +195,7 @@ export class VerdocsTemplateFields {
168
195
  async handleClickPage(e, page) {
169
196
  var _a;
170
197
  if (this.placing) {
198
+ console.log('Placing field', this.placing, page.sequence, e.offsetX, e.offsetY);
171
199
  const pageNumber = page.sequence;
172
200
  const clickedX = e.offsetX;
173
201
  const clickedY = e.offsetY;
@@ -241,15 +269,12 @@ export class VerdocsTemplateFields {
241
269
  pages.sort((a, b) => a.sequence - b.sequence);
242
270
  return (h(Host, { class: this.placing ? { [`placing-${this.placing}`]: true } : {}, "data-r": this.rerender, onSubmit: () => {
243
271
  console.log('onSubmit');
244
- } }, h("div", { class: "pages" }, pages.map(page => {
245
- // console.log('rendering page', page);
272
+ } }, h("div", { id: "verdocs-template-fields-toolbar" }, menuOptions.map(option => (h("verdocs-toolbar-icon", { text: option.tooltip, icon: option.icon, onClick: () => (this.placing = option.id) })))), h("div", { class: "pages" }, pages.map(page => {
246
273
  return (h("verdocs-template-document-page", { templateId: page.template_id, documentId: page.document_id, pageNumber: page.sequence, virtualWidth: 612, virtualHeight: 792, onClick: (e) => this.handleClickPage(e, page), onPageRendered: e => this.handlePageRendered(e), layers: [
247
274
  { name: 'page', type: 'canvas' },
248
275
  { name: 'controls', type: 'div' },
249
276
  ] }));
250
- })), h("verdocs-floating-menu", { options: menuOptions, onOptionSelected: e => {
251
- this.placing = e.detail.id;
252
- } })));
277
+ }))));
253
278
  }
254
279
  static get is() { return "verdocs-template-fields"; }
255
280
  static get originalStyleUrls() {
@@ -302,6 +327,24 @@ export class VerdocsTemplateFields {
302
327
  "attribute": "template-id",
303
328
  "reflect": false,
304
329
  "defaultValue": "null"
330
+ },
331
+ "toolbarTargetId": {
332
+ "type": "string",
333
+ "mutable": false,
334
+ "complexType": {
335
+ "original": "string | null",
336
+ "resolved": "string",
337
+ "references": {}
338
+ },
339
+ "required": false,
340
+ "optional": false,
341
+ "docs": {
342
+ "tags": [],
343
+ "text": "If set, (recommended), the host application should create a <DIV> element with a unique ID. When this\ncomponent renders, the toolbar will be removed from its default location and placed in the target element.\nThis allows the parent application to more easily control its placement and scroll effects."
344
+ },
345
+ "attribute": "toolbar-target-id",
346
+ "reflect": false,
347
+ "defaultValue": "null"
305
348
  }
306
349
  };
307
350
  }
@@ -394,4 +437,13 @@ export class VerdocsTemplateFields {
394
437
  }
395
438
  }];
396
439
  }
440
+ static get listeners() {
441
+ return [{
442
+ "name": "keydown",
443
+ "method": "handleKeyDown",
444
+ "target": "document",
445
+ "capture": false,
446
+ "passive": false
447
+ }];
448
+ }
397
449
  }
@@ -22,7 +22,7 @@ export const loadTemplate = async (endpoint, templateId, forceReload = false) =>
22
22
  TemplateStore.template = null;
23
23
  try {
24
24
  console.log(`[TEMPLATES] Loading template ${templateId}`);
25
- const template = await getTemplate(endpoint, templateId, true);
25
+ const template = await getTemplate(endpoint, templateId);
26
26
  if (!template) {
27
27
  console.log('[TEMPLATES] Unable to load template');
28
28
  return;
@@ -23,7 +23,7 @@ const loadTemplate = async (endpoint, templateId, forceReload = false) => {
23
23
  state.template = null;
24
24
  try {
25
25
  console.log(`[TEMPLATES] Loading template ${templateId}`);
26
- const template = await getTemplate(endpoint, templateId, true);
26
+ const template = await getTemplate(endpoint, templateId);
27
27
  if (!template) {
28
28
  console.log('[TEMPLATES] Unable to load template');
29
29
  return;
@@ -2,9 +2,8 @@ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/
2
2
  import { V as VerdocsEndpoint } from './VerdocsEndpoint.js';
3
3
  import { l as loadTemplate } from './Templates.js';
4
4
  import { S as SDKError } from './errors.js';
5
- import { d as defineCustomElement$9 } from './verdocs-button2.js';
6
- import { d as defineCustomElement$8 } from './verdocs-component-error2.js';
7
- import { d as defineCustomElement$7 } from './verdocs-floating-menu2.js';
5
+ import { d as defineCustomElement$8 } from './verdocs-button2.js';
6
+ import { d as defineCustomElement$7 } from './verdocs-component-error2.js';
8
7
  import { d as defineCustomElement$6 } from './verdocs-loader2.js';
9
8
  import { d as defineCustomElement$5 } from './verdocs-template-create2.js';
10
9
  import { d as defineCustomElement$4 } from './verdocs-template-document-page2.js';
@@ -82,7 +81,7 @@ function defineCustomElement$1() {
82
81
  if (typeof customElements === "undefined") {
83
82
  return;
84
83
  }
85
- const components = ["verdocs-build", "verdocs-button", "verdocs-component-error", "verdocs-floating-menu", "verdocs-loader", "verdocs-template-create", "verdocs-template-document-page", "verdocs-template-fields", "verdocs-toolbar-icon"];
84
+ const components = ["verdocs-build", "verdocs-button", "verdocs-component-error", "verdocs-loader", "verdocs-template-create", "verdocs-template-document-page", "verdocs-template-fields", "verdocs-toolbar-icon"];
86
85
  components.forEach(tagName => { switch (tagName) {
87
86
  case "verdocs-build":
88
87
  if (!customElements.get(tagName)) {
@@ -90,16 +89,11 @@ function defineCustomElement$1() {
90
89
  }
91
90
  break;
92
91
  case "verdocs-button":
93
- if (!customElements.get(tagName)) {
94
- defineCustomElement$9();
95
- }
96
- break;
97
- case "verdocs-component-error":
98
92
  if (!customElements.get(tagName)) {
99
93
  defineCustomElement$8();
100
94
  }
101
95
  break;
102
- case "verdocs-floating-menu":
96
+ case "verdocs-component-error":
103
97
  if (!customElements.get(tagName)) {
104
98
  defineCustomElement$7();
105
99
  }
@@ -19,6 +19,7 @@ const VerdocsFieldCheckbox$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
19
19
  super();
20
20
  this.__registerHost();
21
21
  this.settingsChanged = createEvent(this, "settingsChanged", 7);
22
+ this.deleted = createEvent(this, "deleted", 7);
22
23
  this.field = null;
23
24
  this.option = 0;
24
25
  this.disabled = false;
@@ -51,7 +52,7 @@ const VerdocsFieldCheckbox$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
51
52
  }
52
53
  return (h(Host, { class: { required: settings.required, disabled }, style: { backgroundColor } }, h("label", null, h("input", { type: "checkbox", tabIndex: settings.order, checked: option.checked, disabled: disabled, required: settings.required, value: option.id }), h("span", null), this.editable && (h("verdocs-button-panel", { icon: settingsIcon, id: `verdocs-settings-panel-${this.field.name}` }, h("h6", null, "Field Settings"), h("verdocs-template-field-properties", { templateId: state.templateId, fieldName: this.field.name, onClose: () => this.hideSettingsPanel(), onDelete: () => {
53
54
  var _a;
54
- (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
55
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
55
56
  return this.hideSettingsPanel();
56
57
  }, onSettingsChanged: e => {
57
58
  var _a;
@@ -2570,6 +2570,7 @@ const VerdocsFieldDate$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEl
2570
2570
  this.__registerHost();
2571
2571
  this.settingsPress = createEvent(this, "settingsPress", 7);
2572
2572
  this.settingsChanged = createEvent(this, "settingsChanged", 7);
2573
+ this.deleted = createEvent(this, "deleted", 7);
2573
2574
  this.field = null;
2574
2575
  this.disabled = false;
2575
2576
  this.editable = false;
@@ -2623,7 +2624,7 @@ const VerdocsFieldDate$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEl
2623
2624
  }
2624
2625
  return (h(Host, { class: { required: settings.required, disabled }, style: { backgroundColor } }, h("input", { type: "text", value: "", id: this.containerId, disabled: disabled, placeholder: settings.placeholder, required: settings.required, ref: el => (this.el = el) }), this.editable && (h("verdocs-button-panel", { icon: settingsIcon, id: `verdocs-settings-panel-${this.field.name}` }, h("h6", null, "Field Settings"), h("verdocs-template-field-properties", { templateId: state.templateId, fieldName: this.field.name, onClose: () => this.hideSettingsPanel(), onDelete: () => {
2625
2626
  var _a;
2626
- (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
2627
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
2627
2628
  return this.hideSettingsPanel();
2628
2629
  }, onSettingsChanged: e => {
2629
2630
  var _a;
@@ -11,6 +11,7 @@ const VerdocsFieldDropdown$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
11
11
  this.__registerHost();
12
12
  this.fieldChange = createEvent(this, "fieldChange", 7);
13
13
  this.settingsChanged = createEvent(this, "settingsChanged", 7);
14
+ this.deleted = createEvent(this, "deleted", 7);
14
15
  this.field = null;
15
16
  this.disabled = false;
16
17
  this.roleindex = 0;
@@ -24,6 +24,7 @@ const VerdocsFieldInitial$1 = /*@__PURE__*/ proxyCustomElement(class extends HTM
24
24
  this.fieldChange = createEvent(this, "fieldChange", 7);
25
25
  this.settingsChanged = createEvent(this, "settingsChanged", 7);
26
26
  this.settingsPress = createEvent(this, "settingsPress", 7);
27
+ this.deleted = createEvent(this, "deleted", 7);
27
28
  this.field = null;
28
29
  this.disabled = false;
29
30
  this.initials = '';
@@ -80,7 +81,7 @@ const VerdocsFieldInitial$1 = /*@__PURE__*/ proxyCustomElement(class extends HTM
80
81
  }
81
82
  return (h(Host, { class: { required: settings.required, disabled }, style: { backgroundColor } }, value ? (h("img", { src: value, alt: "Initials" })) : (h("button", { class: {}, onClick: () => !disabled && this.handleShow() }, "Initials")), this.editable && (h("verdocs-button-panel", { icon: settingsIcon, id: `verdocs-settings-panel-${this.field.name}` }, h("h6", null, "Field Settings"), h("verdocs-template-field-properties", { templateId: state.templateId, fieldName: this.field.name, onClose: () => this.hideSettingsPanel(), onDelete: () => {
82
83
  var _a;
83
- (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
84
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
84
85
  return this.hideSettingsPanel();
85
86
  }, onSettingsChanged: e => {
86
87
  var _a;
@@ -12,6 +12,7 @@ const VerdocsFieldPayment$1 = /*@__PURE__*/ proxyCustomElement(class extends HTM
12
12
  this.signatureComplete = createEvent(this, "signatureComplete", 7);
13
13
  this.initialComplete = createEvent(this, "initialComplete", 7);
14
14
  this.settingsChanged = createEvent(this, "settingsChanged", 7);
15
+ this.deleted = createEvent(this, "deleted", 7);
15
16
  this._fields = [];
16
17
  // envelopeFieldsFormGroup: FormGroup;
17
18
  this.signatureFile = null;
@@ -21,6 +21,7 @@ const VerdocsFieldRadioButton$1 = /*@__PURE__*/ proxyCustomElement(class extends
21
21
  super();
22
22
  this.__registerHost();
23
23
  this.settingsChanged = createEvent(this, "settingsChanged", 7);
24
+ this.deleted = createEvent(this, "deleted", 7);
24
25
  this.field = null;
25
26
  this.option = 0;
26
27
  this.disabled = false;
@@ -55,7 +56,7 @@ const VerdocsFieldRadioButton$1 = /*@__PURE__*/ proxyCustomElement(class extends
55
56
  }
56
57
  return (h(Host, { class: { required, disabled }, style: { backgroundColor } }, h("input", { id: id, type: "radio", value: option.id, tabIndex: settings.order, name: this.field.name, checked: !!option.selected, disabled: disabled, required: settings.required }), h("label", { htmlFor: id }), this.editable && (h("verdocs-button-panel", { icon: settingsIcon, id: `verdocs-settings-panel-${this.field.name}` }, h("h6", null, "Field Settings"), h("verdocs-template-field-properties", { templateId: state.templateId, fieldName: this.field.name, onClose: () => this.hideSettingsPanel(), onDelete: () => {
57
58
  var _a;
58
- (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
59
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
59
60
  return this.hideSettingsPanel();
60
61
  }, onSettingsChanged: e => {
61
62
  var _a;
@@ -22,6 +22,7 @@ const VerdocsFieldSignature$1 = /*@__PURE__*/ proxyCustomElement(class extends H
22
22
  this.fieldChange = createEvent(this, "fieldChange", 7);
23
23
  this.settingsPress = createEvent(this, "settingsPress", 7);
24
24
  this.settingsChanged = createEvent(this, "settingsChanged", 7);
25
+ this.deleted = createEvent(this, "deleted", 7);
25
26
  this.field = null;
26
27
  this.name = '';
27
28
  this.disabled = false;
@@ -79,7 +80,7 @@ const VerdocsFieldSignature$1 = /*@__PURE__*/ proxyCustomElement(class extends H
79
80
  }
80
81
  return (h(Host, { class: { required: (_c = this.field) === null || _c === void 0 ? void 0 : _c.required, disabled }, style: { backgroundColor } }, value ? h("img", { src: value, alt: "Signature" }) : h("button", { onClick: () => !disabled && this.handleShow() }, "Signature"), this.editable && (h("verdocs-button-panel", { icon: settingsIcon, id: `verdocs-settings-panel-${this.field.name}` }, h("h6", null, "Field Settings"), h("verdocs-template-field-properties", { templateId: state.templateId, fieldName: this.field.name, onClose: () => this.hideSettingsPanel(), onDelete: () => {
81
82
  var _a;
82
- (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
83
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
83
84
  return this.hideSettingsPanel();
84
85
  }, onSettingsChanged: e => {
85
86
  var _a;
@@ -19,6 +19,7 @@ const VerdocsFieldTextarea$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
19
19
  super();
20
20
  this.__registerHost();
21
21
  this.settingsChanged = createEvent(this, "settingsChanged", 7);
22
+ this.deleted = createEvent(this, "deleted", 7);
22
23
  this.field = null;
23
24
  this.disabled = false;
24
25
  this.editable = false;
@@ -52,7 +53,7 @@ const VerdocsFieldTextarea$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
52
53
  }
53
54
  return (h(Host, { class: { required: settings.required, disabled }, style: { backgroundColor } }, h("textarea", { placeholder: settings.placeholder || '', tabIndex: settings.order, value: settings.value, disabled: disabled, required: settings.required, ref: el => (this.el = el) }), this.editable && (h("verdocs-button-panel", { icon: settingsIcon, id: `verdocs-settings-panel-${this.field.name}` }, h("h6", null, "Field Settings"), h("verdocs-template-field-properties", { templateId: state.templateId, fieldName: this.field.name, onClose: () => this.hideSettingsPanel(), onDelete: () => {
54
55
  var _a;
55
- (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
56
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
56
57
  return this.hideSettingsPanel();
57
58
  }, onSettingsChanged: e => {
58
59
  var _a;
@@ -19,6 +19,7 @@ const VerdocsFieldTextbox$1 = /*@__PURE__*/ proxyCustomElement(class extends HTM
19
19
  super();
20
20
  this.__registerHost();
21
21
  this.settingsChanged = createEvent(this, "settingsChanged", 7);
22
+ this.deleted = createEvent(this, "deleted", 7);
22
23
  this.field = null;
23
24
  this.disabled = false;
24
25
  this.editable = false;
@@ -53,7 +54,7 @@ const VerdocsFieldTextbox$1 = /*@__PURE__*/ proxyCustomElement(class extends HTM
53
54
  }
54
55
  return (h(Host, { class: { required: (_c = this.field) === null || _c === void 0 ? void 0 : _c.required, disabled, done: this.done }, style: { backgroundColor } }, h("input", { type: "text", placeholder: settings === null || settings === void 0 ? void 0 : settings.placeholder, tabIndex: settings === null || settings === void 0 ? void 0 : settings.order, value: value, disabled: disabled, required: (_d = this.field) === null || _d === void 0 ? void 0 : _d.required, ref: el => (this.el = el) }), this.editable && (h("verdocs-button-panel", { icon: settingsIcon, id: `verdocs-settings-panel-${this.field.name}` }, h("h6", null, "Field Settings"), h("verdocs-template-field-properties", { templateId: state.templateId, fieldName: this.field.name, onClose: () => this.hideSettingsPanel(), onDelete: () => {
55
56
  var _a;
56
- (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
57
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
57
58
  return this.hideSettingsPanel();
58
59
  }, onSettingsChanged: e => {
59
60
  var _a;
@@ -20,6 +20,7 @@ const VerdocsFieldTimestamp$1 = /*@__PURE__*/ proxyCustomElement(class extends H
20
20
  super();
21
21
  this.__registerHost();
22
22
  this.settingsChanged = createEvent(this, "settingsChanged", 7);
23
+ this.deleted = createEvent(this, "deleted", 7);
23
24
  this.field = null;
24
25
  this.disabled = false;
25
26
  this.editable = false;
@@ -59,7 +60,7 @@ const VerdocsFieldTimestamp$1 = /*@__PURE__*/ proxyCustomElement(class extends H
59
60
  // is encoded in a ton of existing entries in the database and is hard to change.
60
61
  value: formatted, disabled: true, ref: el => (this.el = el) }), this.editable && (h("verdocs-button-panel", { icon: settingsIcon, id: `verdocs-settings-panel-${this.field.name}` }, h("h6", null, "Field Settings"), h("verdocs-template-field-properties", { templateId: state.templateId, fieldName: this.field.name, onClose: () => this.hideSettingsPanel(), onDelete: () => {
61
62
  var _a;
62
- (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
63
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
63
64
  return this.hideSettingsPanel();
64
65
  }, onSettingsChanged: e => {
65
66
  var _a;
@@ -1,4 +1,126 @@
1
- import { V as VerdocsFloatingMenu$1, d as defineCustomElement$1 } from './verdocs-floating-menu2.js';
1
+ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
+ import { d as defineCustomElement$2 } from './verdocs-toolbar-icon2.js';
3
+
4
+ const verdocsFloatingMenuCss = "verdocs-floating-menu{display:none}#verdocs-floating-menu{position:absolute;width:56px;height:56px;display:-ms-flexbox;display:flex;-ms-flex:0 0 fit-content;flex:0 0 fit-content}#verdocs-floating-menu:not(.force-closed):hover{height:500px}#verdocs-floating-menu:not(.force-closed):hover .trigger{-webkit-box-shadow:0 10px 25px #4c56cb;box-shadow:0 10px 25px #4c56cb;-webkit-transform:translatey(2px);transform:translatey(2px);-webkit-transition:all 0.3s;transition:all 0.3s}#verdocs-floating-menu:not(.force-closed):hover .options{display:-ms-flexbox;display:flex}#verdocs-floating-menu:not(.force-closed):hover .options .option{-webkit-animation:vfm-appear 0.1s forwards 0.2s;animation:vfm-appear 0.1s forwards 0.2s}#verdocs-floating-menu .trigger{position:absolute;width:56px;height:56px;background:#654dcb;bottom:0;border-radius:50%;left:0;right:0;margin:auto;color:white;line-height:52px;text-align:center;font-size:44px;z-index:100;-webkit-box-shadow:0 10px 25px -5px #4c56cb;box-shadow:0 10px 25px -5px #4c56cb;cursor:pointer;-webkit-transition:all 0.3s;transition:all 0.3s}#verdocs-floating-menu .options{width:56px;-ms-flex-direction:column;flex-direction:column;-ms-flex:0 0 fit-content;flex:0 0 fit-content;position:absolute;bottom:70px;display:none}#verdocs-floating-menu .option{background:#654dcb;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;border-radius:50%;width:36px;height:36px;margin:5px auto;color:white;font-weight:500;text-align:center;line-height:36px;opacity:0}#verdocs-floating-menu verdocs-toolbar-icon .icon{display:-ms-flexbox;display:flex}#verdocs-floating-menu verdocs-toolbar-icon .icon svg{fill:#ffffff}@-webkit-keyframes vfm-appear{0%{opacity:0}30%{-webkit-transform:scale(0.4);transform:scale(0.4);opacity:0.3}70%{-webkit-transform:scale(1.2);transform:scale(1.2);opacity:0.6}100%{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes vfm-appear{0%{opacity:0}30%{-webkit-transform:scale(0.4);transform:scale(0.4);opacity:0.3}70%{-webkit-transform:scale(1.2);transform:scale(1.2);opacity:0.6}100%{-webkit-transform:scale(1);transform:scale(1);opacity:1}}";
5
+
6
+ // @see https://stackoverflow.com/a/49186677/1812436
7
+ const getScrollParent = node => {
8
+ const regex = /(auto|scroll)/;
9
+ const parents = (_node, ps) => {
10
+ if (_node.parentNode === null) {
11
+ return ps;
12
+ }
13
+ return parents(_node.parentNode, ps.concat([_node]));
14
+ };
15
+ const style = (_node, prop) => getComputedStyle(_node, null).getPropertyValue(prop);
16
+ const overflow = _node => style(_node, 'overflow') + style(_node, 'overflow-y') + style(_node, 'overflow-x');
17
+ const scroll = _node => regex.test(overflow(_node));
18
+ const scrollParent = _node => {
19
+ if (!(_node instanceof HTMLElement || _node instanceof SVGElement)) {
20
+ return;
21
+ }
22
+ const ps = parents(_node.parentNode, []);
23
+ for (let i = 0; i < ps.length; i += 1) {
24
+ if (scroll(ps[i])) {
25
+ return ps[i];
26
+ }
27
+ }
28
+ return document.scrollingElement || document.documentElement;
29
+ };
30
+ return scrollParent(node);
31
+ };
32
+ const VerdocsFloatingMenu$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
33
+ constructor() {
34
+ super();
35
+ this.__registerHost();
36
+ this.optionSelected = createEvent(this, "optionSelected", 7);
37
+ this.menuContainer = null;
38
+ this.scrollParent = null;
39
+ this.scrollParentParent = null;
40
+ this.options = [];
41
+ }
42
+ componentDidLoad() {
43
+ this.menuContainer = document.createElement('div');
44
+ this.menuContainer.id = 'verdocs-floating-menu';
45
+ let el = document.createElement('div');
46
+ el.className = 'trigger';
47
+ el.innerText = '+';
48
+ this.menuContainer.append(el);
49
+ el = document.createElement('div');
50
+ el.className = 'options';
51
+ this.menuContainer.append(el);
52
+ const localhandleSelect = this.handleSelect.bind(this);
53
+ this.options.forEach(option => {
54
+ const childEl = document.createElement('div');
55
+ childEl.className = 'option';
56
+ childEl.addEventListener('click', () => localhandleSelect(option));
57
+ el.append(childEl);
58
+ const iconEl = document.createElement('verdocs-toolbar-icon');
59
+ iconEl.setAttribute('icon', option.icon);
60
+ iconEl.setAttribute('text', option.tooltip);
61
+ iconEl.setAttribute('placement', 'left');
62
+ childEl.append(iconEl);
63
+ });
64
+ document.body.append(this.menuContainer);
65
+ this.scrollParent = getScrollParent(this.el);
66
+ if (this.scrollParent) {
67
+ this.scrollParentParent = this.scrollParent.parentElement;
68
+ this.repositionTrigger(this.scrollParent);
69
+ }
70
+ }
71
+ disconnectedCallback() {
72
+ var _a;
73
+ (_a = this.menuContainer) === null || _a === void 0 ? void 0 : _a.remove();
74
+ }
75
+ handleSelect(option) {
76
+ var _a;
77
+ (_a = this.optionSelected) === null || _a === void 0 ? void 0 : _a.emit(option);
78
+ const el = document.getElementById('verdocs-floating-menu');
79
+ if (el) {
80
+ el.className = 'force-closed';
81
+ setTimeout(() => {
82
+ el.className = '';
83
+ }, 100);
84
+ }
85
+ }
86
+ repositionTrigger(scrollParent) {
87
+ const scrollParentParent = scrollParent.parentElement;
88
+ if (scrollParentParent) {
89
+ const bounds = scrollParentParent.getBoundingClientRect();
90
+ const menu = document.getElementById('verdocs-floating-menu');
91
+ if (menu) {
92
+ menu.style.bottom = `${document.documentElement.clientHeight - (document.documentElement.scrollTop + bounds.bottom) + 10}px`;
93
+ menu.style.left = `${bounds.right - 80}px`;
94
+ }
95
+ }
96
+ }
97
+ render() {
98
+ return h(Host, null);
99
+ }
100
+ get el() { return this; }
101
+ static get style() { return verdocsFloatingMenuCss; }
102
+ }, [0, "verdocs-floating-menu", {
103
+ "options": [16]
104
+ }]);
105
+ function defineCustomElement$1() {
106
+ if (typeof customElements === "undefined") {
107
+ return;
108
+ }
109
+ const components = ["verdocs-floating-menu", "verdocs-toolbar-icon"];
110
+ components.forEach(tagName => { switch (tagName) {
111
+ case "verdocs-floating-menu":
112
+ if (!customElements.get(tagName)) {
113
+ customElements.define(tagName, VerdocsFloatingMenu$1);
114
+ }
115
+ break;
116
+ case "verdocs-toolbar-icon":
117
+ if (!customElements.get(tagName)) {
118
+ defineCustomElement$2();
119
+ }
120
+ break;
121
+ } });
122
+ }
123
+ defineCustomElement$1();
2
124
 
3
125
  const VerdocsFloatingMenu = VerdocsFloatingMenu$1;
4
126
  const defineCustomElement = defineCustomElement$1;
@@ -36,9 +36,9 @@ const VerdocsPreview$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElem
36
36
  }
37
37
  handlePageRendered(e) {
38
38
  const pageInfo = e.detail;
39
- console.log('[PREVIEW] Page rendered', pageInfo);
39
+ // console.log('[PREVIEW] Page rendered', pageInfo);
40
40
  const fields = state.fields.filter(field => field.page_sequence === pageInfo.pageNumber);
41
- console.log('[PREVIEW] Fields on page', fields);
41
+ // console.log('[PREVIEW] Fields on page', fields);
42
42
  fields.forEach(field => renderDocumentField(field, pageInfo, getRoleIndex(state.roleNames, field.role_name), { disabled: true, editable: false, draggable: false }));
43
43
  }
44
44
  render() {
@@ -7,7 +7,7 @@ import { d as defineCustomElement$3 } from './verdocs-button2.js';
7
7
  import { d as defineCustomElement$2 } from './verdocs-component-error2.js';
8
8
  import { d as defineCustomElement$1 } from './verdocs-loader2.js';
9
9
 
10
- const verdocsTemplateCreateCss = "verdocs-template-create{font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif}verdocs-template-create form{background-color:#ffffff;padding:12px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}verdocs-template-create form .upload-box{-webkit-box-sizing:border-box;box-sizing:border-box;max-width:320px;text-align:center;padding:44px 18px 66px;border:2px dashed #979797;color:rgba(0, 0, 0, 0.54)}verdocs-template-create form .upload-box svg{width:64px;fill:#5c6575}verdocs-template-create .loader-wrapper{background-color:#ffffff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;max-width:320px;height:320px;text-align:center;border:2px dashed #979797;-ms-flex-pack:end;justify-content:flex-end;padding:0 0 30px 0}verdocs-template-create .buttons{display:-ms-flexbox;display:flex;-webkit-column-gap:8px;-moz-column-gap:8px;column-gap:8px;margin-top:16px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end}verdocs-template-create .buttons .flex-fill{-ms-flex:1;flex:1}verdocs-template-create ::-webkit-input-placeholder{color:#aaaaaa}verdocs-template-create ::-moz-placeholder{color:#aaaaaa}verdocs-template-create :-ms-input-placeholder{color:#aaaaaa}verdocs-template-create ::-ms-input-placeholder{color:#aaaaaa}verdocs-template-create ::placeholder{color:#aaaaaa}";
10
+ const verdocsTemplateCreateCss = "verdocs-template-create{font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif}verdocs-template-create form{background-color:#ffffff;padding:12px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}verdocs-template-create form .upload-box{-webkit-box-sizing:border-box;box-sizing:border-box;width:320px;text-align:center;padding:44px 18px 66px;border:2px dashed #979797;color:rgba(0, 0, 0, 0.54)}verdocs-template-create form .upload-box svg{width:64px;fill:#5c6575}verdocs-template-create .loader-wrapper{background-color:#ffffff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;width:320px;height:320px;text-align:center;border:2px dashed #979797;-ms-flex-pack:end;justify-content:flex-end;padding:0 0 30px 0}verdocs-template-create .buttons{display:-ms-flexbox;display:flex;-webkit-column-gap:8px;-moz-column-gap:8px;column-gap:8px;margin-top:16px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end}verdocs-template-create .buttons .flex-fill{-ms-flex:1;flex:1}verdocs-template-create ::-webkit-input-placeholder{color:#aaaaaa}verdocs-template-create ::-moz-placeholder{color:#aaaaaa}verdocs-template-create :-ms-input-placeholder{color:#aaaaaa}verdocs-template-create ::-ms-input-placeholder{color:#aaaaaa}verdocs-template-create ::placeholder{color:#aaaaaa}";
11
11
 
12
12
  const unicodeNBSP = ' ';
13
13
  const FileIcon = '<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24"><path d="M6 2c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6H6zm7 7V3.5L18.5 9H13z"></path></svg>';
@@ -43,7 +43,7 @@ const VerdocsTemplateCreate = /*@__PURE__*/ proxyCustomElement(class extends HTM
43
43
  (_a = this.cancel) === null || _a === void 0 ? void 0 : _a.emit();
44
44
  }
45
45
  async handleSubmit(e) {
46
- var _a, _b, _c, _d;
46
+ var _a, _b, _c;
47
47
  e.stopPropagation();
48
48
  // Should be true if we're here because onClick is only enabled then. We're just guarding this for Typescript.
49
49
  if (!this.file) {
@@ -55,19 +55,29 @@ const VerdocsTemplateCreate = /*@__PURE__*/ proxyCustomElement(class extends HTM
55
55
  console.log('[CREATE] Created template', template);
56
56
  const template_document = await createTemplateDocument(this.endpoint, template.id, this.file);
57
57
  console.log('[CREATE] Created document', template_document);
58
- const finalTemplate = await getTemplate(this.endpoint, template.id);
59
- console.log('[CREATE] Retrieved new template', finalTemplate);
60
- // for await (let pageNumber of Array.from(Array(template_document.page_numbers).keys(), n => n + 1)) {
61
- // console.log('Updating page', pageNumber);
62
- // const page = await createPage(this.endpoint, template.id, {sequence: pageNumber, page_number: pageNumber, document_id: template_document.id});
63
- // console.log('Created page', page);
64
- // }
65
- (_a = this.next) === null || _a === void 0 ? void 0 : _a.emit(finalTemplate);
66
- this.creating = false;
58
+ let finalTemplate = null;
59
+ const processingWait = setInterval(async () => {
60
+ var _a;
61
+ console.log('[CREATE] Waiting for template to be processed...', template_document);
62
+ finalTemplate = await getTemplate(this.endpoint, template.id);
63
+ if (finalTemplate === null || finalTemplate === void 0 ? void 0 : finalTemplate.processed) {
64
+ console.log('[CREATE] Retrieved new template', finalTemplate);
65
+ // for await (let pageNumber of Array.from(Array(template_document.page_numbers).keys(), n => n + 1)) {
66
+ // console.log('Updating page', pageNumber);
67
+ // const page = await createPage(this.endpoint, template.id, {sequence: pageNumber, page_number: pageNumber, document_id: template_document.id});
68
+ // console.log('Created page', page);
69
+ // }
70
+ if (processingWait) {
71
+ clearInterval(processingWait);
72
+ }
73
+ (_a = this.next) === null || _a === void 0 ? void 0 : _a.emit(finalTemplate);
74
+ this.creating = false;
75
+ }
76
+ }, 3000);
67
77
  }
68
78
  catch (e) {
69
79
  console.log('[CREATE] Error creating template', e);
70
- (_b = this.sdkError) === null || _b === void 0 ? void 0 : _b.emit(new SDKError(e.message, (_c = e.response) === null || _c === void 0 ? void 0 : _c.status, (_d = e.response) === null || _d === void 0 ? void 0 : _d.data));
80
+ (_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(new SDKError(e.message, (_b = e.response) === null || _b === void 0 ? void 0 : _b.status, (_c = e.response) === null || _c === void 0 ? void 0 : _c.data));
71
81
  this.creating = false;
72
82
  }
73
83
  }
@@ -75,7 +85,7 @@ const VerdocsTemplateCreate = /*@__PURE__*/ proxyCustomElement(class extends HTM
75
85
  if (!this.endpoint.session) {
76
86
  return (h(Host, null, h("verdocs-component-error", { message: "You must be authenticated to use this module." })));
77
87
  }
78
- return (h("form", { onSubmit: e => e.preventDefault(), onClick: e => e.stopPropagation(), autocomplete: "off" }, h("input", { type: "file", id: "verdocs-template-create-file", multiple: true, accept: "application/pdf", style: { display: 'none' }, onChange: e => this.handleFileChanged(e) }), this.creating ? (h("div", { class: "loader-wrapper" }, h("verdocs-loader", null), h("div", { class: "loading-text" }, "Uploading, please wait..."))) : (h("div", { class: "upload-box" }, h("div", null, h("span", { innerHTML: FileIcon })), h("div", { style: { marginTop: '20px', fontSize: '20px', fontWeight: 'bold' } }, this.file ? this.file.name : 'Drag a file here'), h("div", { style: {
88
+ return (h("form", { onSubmit: e => e.preventDefault(), onClick: e => e.stopPropagation(), autocomplete: "off" }, h("input", { type: "file", id: "verdocs-template-create-file", multiple: true, accept: "application/pdf", style: { display: 'none' }, onChange: e => this.handleFileChanged(e) }), this.creating ? (h("div", { class: "loader-wrapper" }, h("verdocs-loader", null), h("div", { class: "loading-text" }, "Processing, please wait..."))) : (h("div", { class: "upload-box" }, h("div", null, h("span", { innerHTML: FileIcon })), h("div", { style: { marginTop: '20px', fontSize: '20px', fontWeight: 'bold' } }, this.file ? this.file.name : 'Drag a file here'), h("div", { style: {
79
89
  marginTop: '20px',
80
90
  marginBottom: '20px',
81
91
  fontSize: '16px',
@@ -75,7 +75,7 @@ const VerdocsTemplateDocumentPage = /*@__PURE__*/ proxyCustomElement(class exten
75
75
  }
76
76
  render() {
77
77
  const height = `${this.renderedHeight}px`;
78
- return (h(Host, { id: `${this.containerId}`, style: { height } }, this.layers.map(layer => layer.type === 'div' ? (h("div", { class: "verdocs-template-document-page-layer", id: `${this.containerId}-${layer.name}`, style: { height } })) : this.pageDisplayUri ? (h("img", { class: "verdocs-template-document-page-layer img", id: `${this.containerId}-${layer.name}`, src: this.pageDisplayUri, alt: `Page ${this.pageNumber}`, "aria-hidden": true, onLoad: (e) => {
78
+ return (h(Host, { id: `${this.containerId}`, style: { height } }, this.layers.map(layer => layer.type === 'div' ? (h("div", { class: "verdocs-template-document-page-layer", id: `${this.containerId}-${layer.name}`, style: { height } })) : this.pageDisplayUri ? (h("img", { class: "verdocs-template-document-page-layer img", id: `${this.containerId}-${layer.name}`, src: this.pageDisplayUri, alt: `Page ${this.pageNumber}`, "aria-hidden": true, loading: "lazy", onLoad: (e) => {
79
79
  // Note that all we really care about is the aspect ratio. We track the natural Width and Height but they aren't really that
80
80
  // useful as individual values. The image will already have been scaled down to fit a DIV for display (100%, auto height).
81
81
  // Builder places fields offset into the rendered display area, not the original document's dimensions. So its X/Y values