@verdocs/web-sdk 1.10.3 → 1.10.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 (305) hide show
  1. package/dist/cjs/Fields-705a2168.js +30 -0
  2. package/dist/cjs/{Templates-612a81f2.js → Templates-a46d2fe8.js} +1 -1
  3. package/dist/cjs/loader.cjs.js +1 -1
  4. package/dist/cjs/{templateStore-48acfb52.js → templateStore-97e17e58.js} +4 -0
  5. package/dist/cjs/{utils-712ba3ec.js → utils-865fd657.js} +18 -5
  6. package/dist/cjs/verdocs-build.cjs.entry.js +2 -2
  7. package/dist/cjs/verdocs-button-panel_3.cjs.entry.js +248 -0
  8. package/dist/cjs/verdocs-button.cjs.entry.js +1 -1
  9. package/dist/cjs/{verdocs-help-icon_2.cjs.entry.js → verdocs-checkbox_4.cjs.entry.js} +34 -1
  10. package/dist/cjs/verdocs-contact-picker.cjs.entry.js +2 -2
  11. package/dist/cjs/verdocs-document-page_2.cjs.entry.js +1 -1
  12. package/dist/cjs/verdocs-field-attachment.cjs.entry.js +17 -0
  13. package/dist/cjs/verdocs-field-checkbox.cjs.entry.js +27 -3
  14. package/dist/cjs/verdocs-field-date.cjs.entry.js +23 -5
  15. package/dist/cjs/verdocs-field-dropdown.cjs.entry.js +18 -1
  16. package/dist/cjs/verdocs-field-initial.cjs.entry.js +23 -5
  17. package/dist/cjs/verdocs-field-payment.cjs.entry.js +18 -1
  18. package/dist/cjs/verdocs-field-radio-button.cjs.entry.js +27 -3
  19. package/dist/cjs/verdocs-field-signature.cjs.entry.js +23 -5
  20. package/dist/cjs/verdocs-field-textarea.cjs.entry.js +23 -7
  21. package/dist/cjs/verdocs-field-textbox.cjs.entry.js +20 -13
  22. package/dist/cjs/verdocs-field-timestamp.cjs.entry.js +23 -5
  23. package/dist/cjs/verdocs-preview.cjs.entry.js +3 -3
  24. package/dist/cjs/verdocs-send.cjs.entry.js +39 -42
  25. package/dist/cjs/verdocs-sign.cjs.entry.js +1 -1
  26. package/dist/cjs/verdocs-template-attachments.cjs.entry.js +2 -2
  27. package/dist/cjs/verdocs-template-create_2.cjs.entry.js +15 -27
  28. package/dist/cjs/verdocs-template-name.cjs.entry.js +2 -2
  29. package/dist/cjs/verdocs-template-properties.cjs.entry.js +1 -1
  30. package/dist/cjs/verdocs-template-recipients.cjs.entry.js +3 -3
  31. package/dist/cjs/verdocs-template-reminders.cjs.entry.js +2 -2
  32. package/dist/cjs/verdocs-template-role-properties_2.cjs.entry.js +2 -2
  33. package/dist/cjs/verdocs-template-visibility.cjs.entry.js +5 -5
  34. package/dist/cjs/verdocs-view.cjs.entry.js +1 -1
  35. package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
  36. package/dist/collection/collection-manifest.json +1 -0
  37. package/dist/collection/components/controls/verdocs-button/verdocs-button.css +0 -5
  38. package/dist/collection/components/controls/verdocs-button-panel/verdocs-button-panel.css +5 -24
  39. package/dist/collection/components/controls/verdocs-button-panel/verdocs-button-panel.js +72 -4
  40. package/dist/collection/components/controls/verdocs-help-icon/verdocs-help-icon.css +0 -1
  41. package/dist/collection/components/elements/verdocs-contact-picker/verdocs-contact-picker.js +2 -2
  42. package/dist/collection/components/embeds/verdocs-send/verdocs-send.js +58 -48
  43. package/dist/collection/components/embeds/verdocs-send/verdocs-send.stories.js +2 -1
  44. package/dist/collection/components/fields/verdocs-field-attachment/verdocs-field-attachment.js +64 -0
  45. package/dist/collection/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.css +5 -0
  46. package/dist/collection/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.js +112 -1
  47. package/dist/collection/components/fields/verdocs-field-date/verdocs-field-date.js +66 -4
  48. package/dist/collection/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.js +61 -0
  49. package/dist/collection/components/fields/verdocs-field-initial/verdocs-field-initial.js +66 -4
  50. package/dist/collection/components/fields/verdocs-field-payment/verdocs-field-payment.js +65 -0
  51. package/dist/collection/components/fields/verdocs-field-radio-button-group/verdocs-field-radio-button.css +5 -0
  52. package/dist/collection/components/fields/verdocs-field-radio-button-group/verdocs-field-radio-button.js +112 -1
  53. package/dist/collection/components/fields/verdocs-field-signature/verdocs-field-signature.js +66 -4
  54. package/dist/collection/components/fields/verdocs-field-textarea/verdocs-field-textarea.js +69 -6
  55. package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.js +54 -15
  56. package/dist/collection/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.js +69 -4
  57. package/dist/collection/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.css +70 -0
  58. package/dist/collection/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.js +293 -0
  59. package/dist/collection/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.stories.js +19 -0
  60. package/dist/collection/components/templates/verdocs-template-fields/verdocs-template-fields.js +11 -7
  61. package/dist/collection/components/templates/verdocs-template-role-properties/verdocs-template-role-properties.js +1 -1
  62. package/dist/collection/components/templates/verdocs-template-visibillity/verdocs-template-visibility.js +3 -3
  63. package/dist/collection/utils/templateStore.js +4 -0
  64. package/dist/collection/utils/utils.js +18 -5
  65. package/dist/components/Fields.js +26 -0
  66. package/dist/components/index.d.ts +1 -0
  67. package/dist/components/index.js +1 -0
  68. package/dist/components/templateStore.js +4 -0
  69. package/dist/components/utils.js +18 -5
  70. package/dist/components/verdocs-button-panel2.js +25 -6
  71. package/dist/components/verdocs-button2.js +1 -1
  72. package/dist/components/verdocs-contact-picker2.js +2 -2
  73. package/dist/components/verdocs-field-attachment.js +19 -2
  74. package/dist/components/verdocs-field-checkbox.js +79 -5
  75. package/dist/components/verdocs-field-date.js +53 -11
  76. package/dist/components/verdocs-field-dropdown.js +18 -1
  77. package/dist/components/verdocs-field-initial.js +51 -15
  78. package/dist/components/verdocs-field-payment.js +18 -1
  79. package/dist/components/verdocs-field-radio-button.js +79 -5
  80. package/dist/components/verdocs-field-signature.js +51 -15
  81. package/dist/components/verdocs-field-textarea.js +54 -14
  82. package/dist/components/verdocs-field-textbox.js +51 -18
  83. package/dist/components/verdocs-field-timestamp.js +54 -12
  84. package/dist/components/verdocs-help-icon2.js +1 -1
  85. package/dist/components/verdocs-send.js +37 -44
  86. package/dist/components/verdocs-template-field-properties.d.ts +11 -0
  87. package/dist/components/verdocs-template-field-properties.js +6 -0
  88. package/dist/components/verdocs-template-field-properties2.js +212 -0
  89. package/dist/components/verdocs-template-fields2.js +11 -23
  90. package/dist/components/verdocs-template-visibility.js +3 -3
  91. package/dist/docs.json +759 -89
  92. package/dist/esm/Fields-c82e6df3.js +26 -0
  93. package/dist/esm/{Templates-03c50708.js → Templates-2522e194.js} +1 -1
  94. package/dist/esm/loader.js +1 -1
  95. package/dist/esm/{templateStore-62eb71e2.js → templateStore-da902ad4.js} +4 -0
  96. package/dist/esm/{utils-3d95c588.js → utils-274e2e93.js} +18 -5
  97. package/dist/esm/verdocs-build.entry.js +2 -2
  98. package/dist/esm/verdocs-button-panel_3.entry.js +242 -0
  99. package/dist/esm/verdocs-button.entry.js +1 -1
  100. package/dist/esm/{verdocs-help-icon_2.entry.js → verdocs-checkbox_4.entry.js} +33 -2
  101. package/dist/esm/verdocs-contact-picker.entry.js +2 -2
  102. package/dist/esm/verdocs-document-page_2.entry.js +1 -1
  103. package/dist/esm/verdocs-field-attachment.entry.js +18 -1
  104. package/dist/esm/verdocs-field-checkbox.entry.js +28 -4
  105. package/dist/esm/verdocs-field-date.entry.js +23 -5
  106. package/dist/esm/verdocs-field-dropdown.entry.js +18 -1
  107. package/dist/esm/verdocs-field-initial.entry.js +23 -5
  108. package/dist/esm/verdocs-field-payment.entry.js +18 -1
  109. package/dist/esm/verdocs-field-radio-button.entry.js +28 -4
  110. package/dist/esm/verdocs-field-signature.entry.js +23 -5
  111. package/dist/esm/verdocs-field-textarea.entry.js +24 -8
  112. package/dist/esm/verdocs-field-textbox.entry.js +20 -13
  113. package/dist/esm/verdocs-field-timestamp.entry.js +24 -6
  114. package/dist/esm/verdocs-preview.entry.js +3 -3
  115. package/dist/esm/verdocs-send.entry.js +39 -42
  116. package/dist/esm/verdocs-sign.entry.js +1 -1
  117. package/dist/esm/verdocs-template-attachments.entry.js +2 -2
  118. package/dist/esm/verdocs-template-create_2.entry.js +14 -26
  119. package/dist/esm/verdocs-template-name.entry.js +2 -2
  120. package/dist/esm/verdocs-template-properties.entry.js +1 -1
  121. package/dist/esm/verdocs-template-recipients.entry.js +3 -3
  122. package/dist/esm/verdocs-template-reminders.entry.js +2 -2
  123. package/dist/esm/verdocs-template-role-properties_2.entry.js +2 -2
  124. package/dist/esm/verdocs-template-visibility.entry.js +5 -5
  125. package/dist/esm/verdocs-view.entry.js +1 -1
  126. package/dist/esm/verdocs-web-sdk.js +1 -1
  127. package/dist/esm-es5/Fields-c82e6df3.js +1 -0
  128. package/dist/esm-es5/{Templates-03c50708.js → Templates-2522e194.js} +1 -1
  129. package/dist/esm-es5/loader.js +1 -1
  130. package/dist/esm-es5/templateStore-da902ad4.js +1 -0
  131. package/dist/esm-es5/utils-274e2e93.js +1 -0
  132. package/dist/esm-es5/verdocs-build.entry.js +1 -1
  133. package/dist/esm-es5/verdocs-button-panel_3.entry.js +1 -0
  134. package/dist/esm-es5/verdocs-button.entry.js +1 -1
  135. package/dist/esm-es5/verdocs-checkbox_4.entry.js +1 -0
  136. package/dist/esm-es5/verdocs-contact-picker.entry.js +1 -1
  137. package/dist/esm-es5/verdocs-document-page_2.entry.js +1 -1
  138. package/dist/esm-es5/verdocs-field-attachment.entry.js +1 -1
  139. package/dist/esm-es5/verdocs-field-checkbox.entry.js +1 -1
  140. package/dist/esm-es5/verdocs-field-date.entry.js +1 -1
  141. package/dist/esm-es5/verdocs-field-dropdown.entry.js +1 -1
  142. package/dist/esm-es5/verdocs-field-initial.entry.js +1 -1
  143. package/dist/esm-es5/verdocs-field-payment.entry.js +1 -1
  144. package/dist/esm-es5/verdocs-field-radio-button.entry.js +1 -1
  145. package/dist/esm-es5/verdocs-field-signature.entry.js +1 -1
  146. package/dist/esm-es5/verdocs-field-textarea.entry.js +1 -1
  147. package/dist/esm-es5/verdocs-field-textbox.entry.js +1 -1
  148. package/dist/esm-es5/verdocs-field-timestamp.entry.js +1 -1
  149. package/dist/esm-es5/verdocs-preview.entry.js +1 -1
  150. package/dist/esm-es5/verdocs-send.entry.js +1 -1
  151. package/dist/esm-es5/verdocs-sign.entry.js +1 -1
  152. package/dist/esm-es5/verdocs-template-attachments.entry.js +1 -1
  153. package/dist/esm-es5/verdocs-template-create_2.entry.js +1 -1
  154. package/dist/esm-es5/verdocs-template-name.entry.js +1 -1
  155. package/dist/esm-es5/verdocs-template-properties.entry.js +1 -1
  156. package/dist/esm-es5/verdocs-template-recipients.entry.js +1 -1
  157. package/dist/esm-es5/verdocs-template-reminders.entry.js +1 -1
  158. package/dist/esm-es5/verdocs-template-role-properties_2.entry.js +1 -1
  159. package/dist/esm-es5/verdocs-template-visibility.entry.js +1 -1
  160. package/dist/esm-es5/verdocs-view.entry.js +1 -1
  161. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  162. package/dist/types/components/controls/verdocs-button-panel/verdocs-button-panel.d.ts +3 -1
  163. package/dist/types/components/embeds/verdocs-send/verdocs-send.d.ts +10 -8
  164. package/dist/types/components/embeds/verdocs-send/verdocs-send.stories.d.ts +2 -1
  165. package/dist/types/components/fields/verdocs-field-attachment/verdocs-field-attachment.d.ts +9 -0
  166. package/dist/types/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.d.ts +18 -0
  167. package/dist/types/components/fields/verdocs-field-date/verdocs-field-date.d.ts +8 -0
  168. package/dist/types/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.d.ts +8 -0
  169. package/dist/types/components/fields/verdocs-field-initial/verdocs-field-initial.d.ts +8 -0
  170. package/dist/types/components/fields/verdocs-field-payment/verdocs-field-payment.d.ts +8 -0
  171. package/dist/types/components/fields/verdocs-field-radio-button-group/verdocs-field-radio-button.d.ts +18 -0
  172. package/dist/types/components/fields/verdocs-field-signature/verdocs-field-signature.d.ts +8 -0
  173. package/dist/types/components/fields/verdocs-field-textarea/verdocs-field-textarea.d.ts +9 -0
  174. package/dist/types/components/fields/verdocs-field-textbox/verdocs-field-textbox.d.ts +6 -3
  175. package/dist/types/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.d.ts +9 -0
  176. package/dist/types/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.d.ts +58 -0
  177. package/dist/types/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.stories.d.ts +8 -0
  178. package/dist/types/components/templates/verdocs-template-fields/verdocs-template-fields.d.ts +2 -1
  179. package/dist/types/components/templates/verdocs-template-role-properties/verdocs-template-role-properties.d.ts +1 -1
  180. package/dist/types/components.d.ts +178 -3
  181. package/dist/types/utils/templateStore.d.ts +1 -0
  182. package/dist/types/utils/utils.d.ts +3 -3
  183. package/dist/verdocs-web-sdk/{p-12c732a7.entry.js → p-1aa8ed0f.entry.js} +1 -1
  184. package/dist/verdocs-web-sdk/{p-daedc6c2.system.entry.js → p-1c92741b.system.entry.js} +1 -1
  185. package/dist/verdocs-web-sdk/{p-9717a531.system.entry.js → p-1d2eb3fb.system.entry.js} +1 -1
  186. package/dist/verdocs-web-sdk/p-1d683b4f.entry.js +1 -0
  187. package/dist/verdocs-web-sdk/p-1dbbf991.system.entry.js +1 -0
  188. package/dist/verdocs-web-sdk/p-20a0588c.entry.js +1 -0
  189. package/dist/verdocs-web-sdk/{p-90a92236.system.entry.js → p-242647c0.system.entry.js} +1 -1
  190. package/dist/verdocs-web-sdk/{p-d08fca9c.entry.js → p-25256749.entry.js} +1 -1
  191. package/dist/verdocs-web-sdk/{p-2144b8be.entry.js → p-29dd37a7.entry.js} +1 -1
  192. package/dist/verdocs-web-sdk/p-29df733a.system.entry.js +1 -0
  193. package/dist/verdocs-web-sdk/p-2a5021ab.entry.js +1 -0
  194. package/dist/verdocs-web-sdk/p-2ae4af9b.entry.js +1 -0
  195. package/dist/verdocs-web-sdk/{p-91539130.entry.js → p-2f1e01f3.entry.js} +1 -1
  196. package/dist/verdocs-web-sdk/p-33361647.entry.js +1 -0
  197. package/dist/verdocs-web-sdk/p-370903ee.entry.js +1 -0
  198. package/dist/verdocs-web-sdk/{p-848e555d.js → p-3fd9305c.js} +1 -1
  199. package/dist/verdocs-web-sdk/p-465288c0.system.entry.js +1 -0
  200. package/dist/verdocs-web-sdk/p-477301b7.system.entry.js +1 -0
  201. package/dist/verdocs-web-sdk/p-489a657e.entry.js +1 -0
  202. package/dist/verdocs-web-sdk/p-48ac051a.system.entry.js +1 -0
  203. package/dist/verdocs-web-sdk/p-52c73272.entry.js +1 -0
  204. package/dist/verdocs-web-sdk/p-57d14138.system.entry.js +1 -0
  205. package/dist/verdocs-web-sdk/p-587f4405.entry.js +1 -0
  206. package/dist/verdocs-web-sdk/p-6170a128.entry.js +1 -0
  207. package/dist/verdocs-web-sdk/{p-0ee57bd9.entry.js → p-6183a4e4.entry.js} +1 -1
  208. package/dist/verdocs-web-sdk/p-67231081.system.entry.js +1 -0
  209. package/dist/verdocs-web-sdk/{p-55fc9529.system.js → p-677cf03e.system.js} +1 -1
  210. package/dist/verdocs-web-sdk/p-74f703ae.entry.js +1 -0
  211. package/dist/verdocs-web-sdk/p-757e73bc.system.entry.js +1 -0
  212. package/dist/verdocs-web-sdk/p-75921846.system.entry.js +1 -0
  213. package/dist/verdocs-web-sdk/{p-19849b9e.entry.js → p-79776f10.entry.js} +1 -1
  214. package/dist/verdocs-web-sdk/p-7ede7934.system.entry.js +1 -0
  215. package/dist/verdocs-web-sdk/{p-b4fee0ae.system.entry.js → p-80f0cd72.system.entry.js} +1 -1
  216. package/dist/verdocs-web-sdk/{p-7b111f2b.system.entry.js → p-85336769.system.entry.js} +1 -1
  217. package/dist/verdocs-web-sdk/p-8d65016c.system.entry.js +1 -0
  218. package/dist/verdocs-web-sdk/{p-15aef735.entry.js → p-8edafff8.entry.js} +1 -1
  219. package/dist/verdocs-web-sdk/{p-26b4ae0d.system.entry.js → p-8fa14890.system.entry.js} +1 -1
  220. package/dist/verdocs-web-sdk/p-99b80f74.js +1 -0
  221. package/dist/verdocs-web-sdk/p-9eaf02d1.system.entry.js +1 -0
  222. package/dist/verdocs-web-sdk/p-a259853e.system.entry.js +1 -0
  223. package/dist/verdocs-web-sdk/{p-9b854a18.system.entry.js → p-a62f9f22.system.entry.js} +1 -1
  224. package/dist/verdocs-web-sdk/{p-4a1c9aa1.system.entry.js → p-ad1da3a4.system.entry.js} +1 -1
  225. package/dist/verdocs-web-sdk/p-af4fd8da.system.entry.js +1 -0
  226. package/dist/verdocs-web-sdk/p-b1288daf.system.js +1 -0
  227. package/dist/verdocs-web-sdk/{p-a95d40dc.system.js → p-b6e20078.system.js} +1 -1
  228. package/dist/verdocs-web-sdk/p-b79ab2a9.system.entry.js +1 -0
  229. package/dist/verdocs-web-sdk/{p-c3ba021b.entry.js → p-b981d415.entry.js} +1 -1
  230. package/dist/verdocs-web-sdk/{p-df4f1a5e.entry.js → p-bb90788b.entry.js} +1 -1
  231. package/dist/verdocs-web-sdk/{p-5ee985be.system.entry.js → p-bbcfdcdb.system.entry.js} +1 -1
  232. package/dist/verdocs-web-sdk/p-c16b6ca4.system.js +1 -1
  233. package/dist/verdocs-web-sdk/{p-a6872a88.system.entry.js → p-c73998d3.system.entry.js} +1 -1
  234. package/dist/verdocs-web-sdk/p-c8133122.system.entry.js +1 -0
  235. package/dist/verdocs-web-sdk/p-c84f9b23.entry.js +1 -0
  236. package/dist/verdocs-web-sdk/{p-98aa17a8.system.entry.js → p-cd49eb2b.system.entry.js} +1 -1
  237. package/dist/verdocs-web-sdk/p-d176aad6.entry.js +1 -0
  238. package/dist/verdocs-web-sdk/{p-3da4b4cb.entry.js → p-d48d5f49.entry.js} +1 -1
  239. package/dist/verdocs-web-sdk/p-d6e07c20.js +1 -0
  240. package/dist/verdocs-web-sdk/{p-de5c37cd.system.entry.js → p-d7d096dc.system.entry.js} +1 -1
  241. package/dist/verdocs-web-sdk/{p-e223553c.system.entry.js → p-d8fd179b.system.entry.js} +1 -1
  242. package/dist/verdocs-web-sdk/p-dbdfbcd2.entry.js +1 -0
  243. package/dist/verdocs-web-sdk/p-e090d5e1.system.js +1 -0
  244. package/dist/verdocs-web-sdk/p-ea9497e5.entry.js +1 -0
  245. package/dist/verdocs-web-sdk/p-f1a671d5.entry.js +1 -0
  246. package/dist/verdocs-web-sdk/{p-9f17b920.entry.js → p-f81a559c.entry.js} +1 -1
  247. package/dist/verdocs-web-sdk/p-fba99ad6.entry.js +1 -0
  248. package/dist/verdocs-web-sdk/p-fc208e71.entry.js +1 -0
  249. package/dist/verdocs-web-sdk/p-feb442b1.js +1 -0
  250. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  251. package/package.json +2 -2
  252. package/dist/cjs/verdocs-button-panel_2.cjs.entry.js +0 -81
  253. package/dist/cjs/verdocs-checkbox.cjs.entry.js +0 -25
  254. package/dist/cjs/verdocs-component-error.cjs.entry.js +0 -20
  255. package/dist/custom-elements.json +0 -1328
  256. package/dist/esm/verdocs-button-panel_2.entry.js +0 -76
  257. package/dist/esm/verdocs-checkbox.entry.js +0 -21
  258. package/dist/esm/verdocs-component-error.entry.js +0 -16
  259. package/dist/esm-es5/templateStore-62eb71e2.js +0 -1
  260. package/dist/esm-es5/utils-3d95c588.js +0 -1
  261. package/dist/esm-es5/verdocs-button-panel_2.entry.js +0 -1
  262. package/dist/esm-es5/verdocs-checkbox.entry.js +0 -1
  263. package/dist/esm-es5/verdocs-component-error.entry.js +0 -1
  264. package/dist/esm-es5/verdocs-help-icon_2.entry.js +0 -1
  265. package/dist/verdocs-web-sdk/p-130fe919.system.entry.js +0 -1
  266. package/dist/verdocs-web-sdk/p-1d20d34e.entry.js +0 -1
  267. package/dist/verdocs-web-sdk/p-1ef0501b.entry.js +0 -1
  268. package/dist/verdocs-web-sdk/p-23033619.system.entry.js +0 -1
  269. package/dist/verdocs-web-sdk/p-27707de4.system.entry.js +0 -1
  270. package/dist/verdocs-web-sdk/p-2b822750.system.entry.js +0 -1
  271. package/dist/verdocs-web-sdk/p-328453a9.system.entry.js +0 -1
  272. package/dist/verdocs-web-sdk/p-3599f81f.entry.js +0 -1
  273. package/dist/verdocs-web-sdk/p-4352529d.entry.js +0 -1
  274. package/dist/verdocs-web-sdk/p-464adbad.system.entry.js +0 -1
  275. package/dist/verdocs-web-sdk/p-50706b8d.entry.js +0 -1
  276. package/dist/verdocs-web-sdk/p-50d7e990.system.entry.js +0 -1
  277. package/dist/verdocs-web-sdk/p-5c7ef99f.system.entry.js +0 -1
  278. package/dist/verdocs-web-sdk/p-61b824ca.system.entry.js +0 -1
  279. package/dist/verdocs-web-sdk/p-644cc3c3.js +0 -1
  280. package/dist/verdocs-web-sdk/p-74e1ae92.entry.js +0 -1
  281. package/dist/verdocs-web-sdk/p-787a334a.system.entry.js +0 -1
  282. package/dist/verdocs-web-sdk/p-7b66bc0d.system.entry.js +0 -1
  283. package/dist/verdocs-web-sdk/p-804fbf15.entry.js +0 -1
  284. package/dist/verdocs-web-sdk/p-80c287ff.entry.js +0 -1
  285. package/dist/verdocs-web-sdk/p-838d889b.system.entry.js +0 -1
  286. package/dist/verdocs-web-sdk/p-87749601.js +0 -1
  287. package/dist/verdocs-web-sdk/p-8f873d8e.system.entry.js +0 -1
  288. package/dist/verdocs-web-sdk/p-9bfafc67.system.entry.js +0 -1
  289. package/dist/verdocs-web-sdk/p-a17a81a3.entry.js +0 -1
  290. package/dist/verdocs-web-sdk/p-a32f90e9.entry.js +0 -1
  291. package/dist/verdocs-web-sdk/p-a662b038.entry.js +0 -1
  292. package/dist/verdocs-web-sdk/p-aba1f14b.system.entry.js +0 -1
  293. package/dist/verdocs-web-sdk/p-ba23b639.entry.js +0 -1
  294. package/dist/verdocs-web-sdk/p-d0c587f1.entry.js +0 -1
  295. package/dist/verdocs-web-sdk/p-d30ee967.system.entry.js +0 -1
  296. package/dist/verdocs-web-sdk/p-d5a95369.entry.js +0 -1
  297. package/dist/verdocs-web-sdk/p-d6d95682.system.entry.js +0 -1
  298. package/dist/verdocs-web-sdk/p-d7e31573.system.js +0 -1
  299. package/dist/verdocs-web-sdk/p-d8e182fb.system.entry.js +0 -1
  300. package/dist/verdocs-web-sdk/p-ead5322f.entry.js +0 -1
  301. package/dist/verdocs-web-sdk/p-eb68cf29.entry.js +0 -1
  302. package/dist/verdocs-web-sdk/p-ec7a9c6e.entry.js +0 -1
  303. package/dist/verdocs-web-sdk/p-f3e9be57.entry.js +0 -1
  304. package/dist/verdocs-web-sdk/p-f43721cf.entry.js +0 -1
  305. package/dist/verdocs-web-sdk/p-ff45cca0.entry.js +0 -1
@@ -0,0 +1,293 @@
1
+ import { VerdocsEndpoint } from '@verdocs/js-sdk';
2
+ import { deleteField, updateField } from '@verdocs/js-sdk/Templates/Fields';
3
+ import { h, Host } from '@stencil/core';
4
+ import TemplateStore from '../../../utils/templateStore';
5
+ import { loadTemplate } from '../../../utils/Templates';
6
+ import { SDKError } from '../../../utils/errors';
7
+ const TrashIcon = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="#a50021"><path stroke-linecap="round" stroke-linejoin="round" d="M14.74 9l-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 01-2.244 2.077H8.084a2.25 2.25 0 01-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 00-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 013.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 00-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 00-7.5 0" /></svg>`;
8
+ /**
9
+ * Displays an edit form that allows the user to adjust a field's settings.
10
+ */
11
+ export class VerdocsTemplateFieldProperties {
12
+ constructor() {
13
+ this.endpoint = VerdocsEndpoint.getDefault();
14
+ this.templateId = '';
15
+ this.fieldName = '';
16
+ this.dirty = false;
17
+ this.loading = true;
18
+ this.type = 'signature';
19
+ this.name = '';
20
+ this.roleName = '';
21
+ this.required = false;
22
+ this.placeholder = '';
23
+ this.defaultValue = '';
24
+ }
25
+ async componentWillLoad() {
26
+ var _a, _b, _c, _d;
27
+ try {
28
+ this.endpoint.loadSession();
29
+ if (!this.templateId) {
30
+ console.error(`[FIELD PROPERTIES] Missing required template ID`);
31
+ return;
32
+ }
33
+ if (!this.fieldName) {
34
+ console.error(`[FIELD PROPERTIES] Missing required field name`);
35
+ return;
36
+ }
37
+ if (!this.endpoint.session) {
38
+ console.error('[FIELD PROPERTIES] Unable to start builder session, must be authenticated');
39
+ return;
40
+ }
41
+ await loadTemplate(this.endpoint, this.templateId);
42
+ const field = TemplateStore.fields.find(field => field.name === this.fieldName);
43
+ if (!field) {
44
+ console.log(`[FIELD PROPERTIES] Unable to find field "${this.fieldName}" in template`);
45
+ }
46
+ this.type = field.type;
47
+ this.name = field.name;
48
+ this.roleName = field.role_name;
49
+ this.required = field.required;
50
+ this.placeholder = field.label; // TODO: Talk about how we want to handle labels/placeholders
51
+ this.defaultValue = ((_a = field.setting) === null || _a === void 0 ? void 0 : _a.result) || '';
52
+ this.dirty = false;
53
+ this.loading = false;
54
+ }
55
+ catch (e) {
56
+ console.log('[FIELD PROPERTIES] Error loading template', e);
57
+ this.loading = false;
58
+ (_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));
59
+ }
60
+ }
61
+ handleCancel(e) {
62
+ var _a, _b;
63
+ e.stopPropagation();
64
+ const field = TemplateStore.fields.find(field => field.name === this.fieldName);
65
+ if (field) {
66
+ this.name = field.name;
67
+ this.roleName = field.role_name;
68
+ this.required = field.required;
69
+ this.placeholder = field.label; // TODO: Talk about how we want to handle labels/placeholders
70
+ this.defaultValue = ((_a = field.setting) === null || _a === void 0 ? void 0 : _a.result) || '';
71
+ }
72
+ this.dirty = false;
73
+ (_b = this.close) === null || _b === void 0 ? void 0 : _b.emit();
74
+ }
75
+ handleSave(e) {
76
+ e.stopPropagation();
77
+ updateField(this.endpoint, this.templateId, this.fieldName, {
78
+ name: this.name,
79
+ required: this.required,
80
+ role_name: this.roleName,
81
+ // TODO: Default value in setting?
82
+ })
83
+ .then(() => {
84
+ var _a, _b;
85
+ this.dirty = false;
86
+ TemplateStore.fields.forEach(field => {
87
+ field.name = this.name;
88
+ field.role_name = this.roleName;
89
+ field.required = this.required;
90
+ field.label = this.placeholder;
91
+ field.setting.result = this.defaultValue;
92
+ });
93
+ (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.fieldName });
94
+ (_b = this.close) === null || _b === void 0 ? void 0 : _b.emit();
95
+ })
96
+ .catch(() => {
97
+ console.log('Field update failed', e);
98
+ });
99
+ }
100
+ async handleDelete(e) {
101
+ e.stopPropagation();
102
+ if (window.confirm('Are you sure you wish to remove this field? This action cannot be undone.')) {
103
+ deleteField(this.endpoint, this.templateId, this.fieldName)
104
+ .then(r => {
105
+ var _a;
106
+ console.log('Field deleted', r);
107
+ TemplateStore.fields = [...TemplateStore.fields.filter(field => field.name !== this.fieldName)];
108
+ TemplateStore.template.roles.forEach(role => {
109
+ role.fields = [...role.fields.filter(field => field.name !== this.fieldName)];
110
+ });
111
+ (_a = this.delete) === null || _a === void 0 ? void 0 : _a.emit({ templateId: this.templateId, roleName: this.roleName });
112
+ })
113
+ .catch(e => {
114
+ console.log('Deletion error', e);
115
+ });
116
+ }
117
+ }
118
+ render() {
119
+ if (!this.endpoint.session) {
120
+ return (h(Host, null, h("verdocs-component-error", { message: "You must be authenticated to use this module." })));
121
+ }
122
+ // This is meant to be a companion for larger visual experiences so we just go blank on errors for now.
123
+ if (!this.endpoint.session || !TemplateStore.template) {
124
+ return h(Host, { class: "empty" });
125
+ }
126
+ return (h(Host, null, h("form", { onSubmit: e => e.preventDefault(), onClick: e => e.stopPropagation(), autocomplete: "off" }, h("div", { class: "row" }, h("verdocs-text-input", { id: "verdocs-field-name", label: "Field Name", value: this.name, autocomplete: "off", helpText: "The internal name of the field. Must be unique, and contain only letters, numbers, and dashes. After an envelope is completed, the value entered by the signer will be tagged with this key.", placeholder: "Field Name...", onInput: (e) => {
127
+ this.name = e.target.value;
128
+ this.dirty = true;
129
+ } })), h("div", { class: "row" }, h("div", { class: "input-label" }, "Role:"), h("verdocs-select-input", { value: this.roleName, options: TemplateStore.template.roles.map(role => ({ label: role.name, value: role.name })), onInput: (e) => {
130
+ this.roleName = e.target.value;
131
+ this.dirty = true;
132
+ } }), h("verdocs-help-icon", { text: "The participant who will complete this field." })), ['textbox', 'textarea'].includes(this.type) && (h("verdocs-text-input", { id: "verdocs-field-placeholder", label: "Placeholder", value: this.name, autocomplete: "off", helpText: "Placeholder to display if the field is empty.", placeholder: "Placeholder...", onInput: (e) => {
133
+ this.placeholder = e.target.value;
134
+ this.dirty = true;
135
+ } })), ['signature', 'initial'].includes(this.type) && (h("div", { class: "row", style: { marginTop: '15px', marginBottom: '15px' } }, h("label", { htmlFor: "verdocs-is-required", class: "input-label" }, "Required"), h("verdocs-checkbox", { id: "verdocs-is-required", name: "is-required", checked: this.required, value: "on", onInput: (e) => {
136
+ this.required = e.target.checked;
137
+ this.dirty = true;
138
+ } }))), h("div", { class: "buttons" }, h("button", { class: "delete-button", disabled: this.dirty, onClick: e => this.handleDelete(e), innerHTML: TrashIcon }), h("div", { style: { flex: '1' } }), h("verdocs-button", { size: "small", variant: "outline", label: "Cancel", disabled: !this.dirty, onClick: e => this.handleCancel(e) }), h("verdocs-button", { size: "small", label: "Save", disabled: !this.dirty, onClick: e => this.handleSave(e) })))));
139
+ }
140
+ static get is() { return "verdocs-template-field-properties"; }
141
+ static get originalStyleUrls() {
142
+ return {
143
+ "$": ["verdocs-template-field-properties.scss"]
144
+ };
145
+ }
146
+ static get styleUrls() {
147
+ return {
148
+ "$": ["verdocs-template-field-properties.css"]
149
+ };
150
+ }
151
+ static get properties() {
152
+ return {
153
+ "endpoint": {
154
+ "type": "unknown",
155
+ "mutable": false,
156
+ "complexType": {
157
+ "original": "VerdocsEndpoint",
158
+ "resolved": "VerdocsEndpoint",
159
+ "references": {
160
+ "VerdocsEndpoint": {
161
+ "location": "import",
162
+ "path": "@verdocs/js-sdk"
163
+ }
164
+ }
165
+ },
166
+ "required": false,
167
+ "optional": false,
168
+ "docs": {
169
+ "tags": [],
170
+ "text": "The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used."
171
+ },
172
+ "defaultValue": "VerdocsEndpoint.getDefault()"
173
+ },
174
+ "templateId": {
175
+ "type": "string",
176
+ "mutable": false,
177
+ "complexType": {
178
+ "original": "string",
179
+ "resolved": "string",
180
+ "references": {}
181
+ },
182
+ "required": false,
183
+ "optional": false,
184
+ "docs": {
185
+ "tags": [],
186
+ "text": "The template ID to edit."
187
+ },
188
+ "attribute": "template-id",
189
+ "reflect": false,
190
+ "defaultValue": "''"
191
+ },
192
+ "fieldName": {
193
+ "type": "string",
194
+ "mutable": false,
195
+ "complexType": {
196
+ "original": "string",
197
+ "resolved": "string",
198
+ "references": {}
199
+ },
200
+ "required": false,
201
+ "optional": false,
202
+ "docs": {
203
+ "tags": [],
204
+ "text": "The field to configure."
205
+ },
206
+ "attribute": "field-name",
207
+ "reflect": false,
208
+ "defaultValue": "''"
209
+ }
210
+ };
211
+ }
212
+ static get states() {
213
+ return {
214
+ "dirty": {},
215
+ "loading": {},
216
+ "type": {},
217
+ "name": {},
218
+ "roleName": {},
219
+ "required": {},
220
+ "placeholder": {},
221
+ "defaultValue": {}
222
+ };
223
+ }
224
+ static get events() {
225
+ return [{
226
+ "method": "close",
227
+ "name": "close",
228
+ "bubbles": true,
229
+ "cancelable": true,
230
+ "composed": true,
231
+ "docs": {
232
+ "tags": [],
233
+ "text": "Event fired when the user cancels the dialog."
234
+ },
235
+ "complexType": {
236
+ "original": "any",
237
+ "resolved": "any",
238
+ "references": {}
239
+ }
240
+ }, {
241
+ "method": "delete",
242
+ "name": "delete",
243
+ "bubbles": true,
244
+ "cancelable": true,
245
+ "composed": true,
246
+ "docs": {
247
+ "tags": [],
248
+ "text": "Event fired when the user deletes the role. The parent should update its UI to reflect the removal. When this event is emitted,\nthe role will have already been deleted server-side."
249
+ },
250
+ "complexType": {
251
+ "original": "{templateId: string; roleName: string}",
252
+ "resolved": "{ templateId: string; roleName: string; }",
253
+ "references": {}
254
+ }
255
+ }, {
256
+ "method": "settingsChanged",
257
+ "name": "settingsChanged",
258
+ "bubbles": true,
259
+ "cancelable": true,
260
+ "composed": true,
261
+ "docs": {
262
+ "tags": [],
263
+ "text": "Event fired when the field's settings are changed."
264
+ },
265
+ "complexType": {
266
+ "original": "{fieldName: string}",
267
+ "resolved": "{ fieldName: string; }",
268
+ "references": {}
269
+ }
270
+ }, {
271
+ "method": "sdkError",
272
+ "name": "sdkError",
273
+ "bubbles": true,
274
+ "cancelable": true,
275
+ "composed": true,
276
+ "docs": {
277
+ "tags": [],
278
+ "text": "Event fired if an error occurs. The event details will contain information about the error. Most errors will\nterminate the process, and the calling application should correct the condition and re-render the component."
279
+ },
280
+ "complexType": {
281
+ "original": "SDKError",
282
+ "resolved": "SDKError",
283
+ "references": {
284
+ "SDKError": {
285
+ "location": "import",
286
+ "path": "../../../utils/errors"
287
+ }
288
+ }
289
+ }
290
+ }];
291
+ }
292
+ static get elementRef() { return "el"; }
293
+ }
@@ -0,0 +1,19 @@
1
+ import { html } from 'lit-html';
2
+ export default {
3
+ title: 'Templates/Field Properties',
4
+ component: 'verdocs-template-field-properties',
5
+ args: {
6
+ templateId: 'd2338742-f3a1-465b-8592-806587413cc1',
7
+ fieldName: 'textboxP1-2',
8
+ },
9
+ argTypes: {
10
+ onClose: { action: 'close' },
11
+ },
12
+ };
13
+ export const FieldProperties = ({ onClose, templateId, fieldName }) => templateId
14
+ ? html `
15
+ <div style="width: 360px; background: #ffffff; padding: 20px; box-sizing: border-box">
16
+ <verdocs-template-field-properties .templateId=${templateId} .fieldName=${fieldName} @close=${onClose} />
17
+ </div>
18
+ `
19
+ : html `<img src="https://verdocs-public-assets.s3.amazonaws.com/storybook-placeholders/template-name.png" alt="Placeholder" />`;
@@ -1,6 +1,6 @@
1
1
  import interact from 'interactjs';
2
2
  import { VerdocsEndpoint } from '@verdocs/js-sdk';
3
- import { createField, editField } from '@verdocs/js-sdk/Templates/Fields';
3
+ import { createField, updateField } from '@verdocs/js-sdk/Templates/Fields';
4
4
  import { h, Host } from '@stencil/core';
5
5
  import { defaultHeight, defaultWidth, getRoleIndex, renderDocumentField, updateCssTransform } from '../../../utils/utils';
6
6
  import TemplateStore from '../../../utils/templateStore';
@@ -75,6 +75,9 @@ export class VerdocsTemplateFields {
75
75
  }
76
76
  attachFieldAttributes(pageInfo, field, roleIndex, el) {
77
77
  el.addEventListener('input', e => this.handleFieldChange(field, e));
78
+ el.addEventListener('settingsChanged', () => {
79
+ el.setAttribute('roleindex', getRoleIndex(TemplateStore.roleNames, field.role_name));
80
+ });
78
81
  el.setAttribute('roleindex', roleIndex);
79
82
  el.setAttribute('pageNumber', pageInfo.pageNumber);
80
83
  el.setAttribute('xScale', pageInfo.xScale);
@@ -86,7 +89,6 @@ export class VerdocsTemplateFields {
86
89
  console.log('[FIELDS] Page rendered', pageInfo);
87
90
  this.cachedPageInfo[pageInfo.pageNumber] = pageInfo;
88
91
  this.pageHeights[pageInfo.pageNumber] = pageInfo.naturalHeight;
89
- console.log('tsf', pageInfo.pageNumber, TemplateStore.fields);
90
92
  const fields = TemplateStore.fields.filter(field => field.page_sequence === pageInfo.pageNumber);
91
93
  // const fields = this.fields.filter(field => field.page_sequence === pageInfo.renderedPage.pageNumber);
92
94
  console.log('[FIELDS] Fields on page', fields);
@@ -140,8 +142,7 @@ export class VerdocsTemplateFields {
140
142
  if (field) {
141
143
  field.setting.x = x;
142
144
  field.setting.y = y;
143
- const edited = await editField(this.endpoint, this.templateId, name, field);
144
- console.log('edited field', edited);
145
+ await updateField(this.endpoint, this.templateId, name, field);
145
146
  this.handlePageRendered({ detail: this.cachedPageInfo[pageNumber] });
146
147
  }
147
148
  }
@@ -163,8 +164,8 @@ export class VerdocsTemplateFields {
163
164
  const pageNumber = page.sequence;
164
165
  const clickedX = e.offsetX;
165
166
  const clickedY = e.offsetY;
166
- const width = defaultWidth({ type: this.placing });
167
- const height = defaultHeight({ type: this.placing });
167
+ const width = defaultWidth(this.placing);
168
+ const height = defaultHeight(this.placing);
168
169
  const { naturalWidth = 612, naturalHeight = 792 } = this.cachedPageInfo[pageNumber];
169
170
  const { x, y } = this.viewCoordinatesToPageCoordinates(clickedX, clickedY, pageNumber, naturalWidth - width, naturalHeight - height);
170
171
  const field = {
@@ -191,6 +192,7 @@ export class VerdocsTemplateFields {
191
192
  }
192
193
  }
193
194
  render() {
195
+ console.log('rendering', TemplateStore.updateCount);
194
196
  if (!this.endpoint.session) {
195
197
  return (h(Host, null, h("verdocs-component-error", { message: "You must be authenticated to use this module." })));
196
198
  }
@@ -200,7 +202,9 @@ export class VerdocsTemplateFields {
200
202
  }
201
203
  const pages = [...TemplateStore.template.pages];
202
204
  pages.sort((a, b) => a.sequence - b.sequence);
203
- return (h(Host, { class: this.placing ? { [`placing-${this.placing}`]: true } : {} }, h("div", { class: "pages" }, pages.map(page => {
205
+ return (h(Host, { class: this.placing ? { [`placing-${this.placing}`]: true } : {}, "data-updated": TemplateStore.updateCount, onSubmit: () => {
206
+ console.log('onSubmit');
207
+ } }, h("div", { class: "pages" }, pages.map(page => {
204
208
  // console.log('rendering page', page);
205
209
  return (h("verdocs-document-page", { pageImageUri: page.display_uri, virtualWidth: 612, virtualHeight: 792, onClick: (e) => this.handleClickPage(e, page), pageNumber: page.sequence, onPageRendered: e => this.handlePageRendered(e), layers: [
206
210
  { name: 'page', type: 'canvas' },
@@ -7,7 +7,7 @@ import { loadTemplate } from '../../../utils/Templates';
7
7
  import { SDKError } from '../../../utils/errors';
8
8
  const TrashIcon = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="#a50021"><path stroke-linecap="round" stroke-linejoin="round" d="M14.74 9l-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 01-2.244 2.077H8.084a2.25 2.25 0 01-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 00-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 013.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 00-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 00-7.5 0" /></svg>`;
9
9
  /**
10
- * Display a dialog that allows a template sender to be selected.
10
+ * Display an edit form that allows the user to adjust a role's setitngs.
11
11
  */
12
12
  export class VerdocsTemplateRoleProperties {
13
13
  constructor() {
@@ -57,10 +57,10 @@ export class VerdocsTemplateVisibility {
57
57
  if (!this.endpoint.session || !TemplateStore.template) {
58
58
  return h(Host, { class: "empty" });
59
59
  }
60
- return (h(Host, null, h("form", { onSubmit: e => e.preventDefault(), onClick: e => e.stopPropagation(), autocomplete: "off" }, h("h5", null, "Visibility"), h("div", { class: "input-row" }, h("label", { htmlFor: "verdocs-is-personal" }, "Personal"), h("verdocs-checkbox", { id: "verdocs-is-personal", name: "is-personal", checked: this.personal, value: "on", onInput: (e) => {
61
- this.personal = e.target.checked;
60
+ return (h(Host, null, h("form", { onSubmit: e => e.preventDefault(), onClick: e => e.stopPropagation(), autocomplete: "off" }, h("h5", null, "Visibility"), h("div", { class: "input-row" }, h("label", { htmlFor: "verdocs-is-shared" }, "Shared"), h("verdocs-checkbox", { id: "verdocs-is-shared", name: "is-shared", checked: !this.personal, value: "on", onInput: (e) => {
61
+ this.personal = !e.target.checked;
62
62
  this.dirty = true;
63
- } })), h("div", { class: "description" }, "Personal templates are hidden from other members of your Organization (if any)."), h("div", { class: "input-row" }, h("label", { htmlFor: "verdocs-is-public" }, "Public"), h("verdocs-checkbox", { id: "verdocs-is-public", name: "is-public", checked: this.public, value: "on", onInput: (e) => {
63
+ } })), h("div", { class: "description" }, "Shared templates are visible to other members of your Organization (if any)."), h("div", { class: "input-row" }, h("label", { htmlFor: "verdocs-is-public" }, "Public"), h("verdocs-checkbox", { id: "verdocs-is-public", name: "is-public", checked: this.public, value: "on", onInput: (e) => {
64
64
  this.public = e.target.checked;
65
65
  this.dirty = true;
66
66
  } })), h("div", { class: "description" }, "Public templates may appear in results when any other user searches for templates. Note that a template may be both Personal and Public, which may be useful if you want your template to be found via search but not otherwise displayed to other members of your Organization (if any)."), h("div", { class: "buttons" }, h("verdocs-button", { size: "small", variant: "outline", label: "Cancel", disabled: !this.dirty, onClick: e => this.handleCancel(e) }), h("verdocs-button", { size: "small", label: "Save", disabled: !this.dirty, onClick: e => this.handleSave(e) })))));
@@ -7,6 +7,9 @@ const { state, onChange } = createStore({
7
7
  template: null,
8
8
  loadProgress: 0,
9
9
  loading: false,
10
+ // This can be used as a data field on components that need to force re-rendering when the underlying data has changed. Stencil stores
11
+ // are handy but not very sophisticated. They don't re-render on "deep" changes.
12
+ updateCount: 1,
10
13
  pageNumbers: [],
11
14
  pageUris: {},
12
15
  roleNames: [],
@@ -33,6 +36,7 @@ onChange('template', async (newTemplate) => {
33
36
  });
34
37
  console.log('[TEMPLATESTORE] Loaded fields', state.fields);
35
38
  state.pageNumbers = integerSequence(1, newTemplate.pages.length);
39
+ state.updateCount++;
36
40
  });
37
41
  onChange('fields', newField => {
38
42
  console.log('[TEMPLATESTORE] Field changed', newField);
@@ -1,8 +1,9 @@
1
1
  import { rescale } from '@verdocs/js-sdk/Utils/Fields';
2
2
  import { Envelopes } from '@verdocs/js-sdk/Envelopes';
3
3
  import { downloadBlob } from '@verdocs/js-sdk/Utils/Files';
4
- export const defaultWidth = (field) => {
5
- switch (field.type) {
4
+ export const defaultWidth = (type) => {
5
+ // checkbox was a legacy field type
6
+ switch (type) {
6
7
  case 'textbox':
7
8
  return 150;
8
9
  case 'timestamp':
@@ -26,8 +27,8 @@ export const defaultWidth = (field) => {
26
27
  }
27
28
  return 150;
28
29
  };
29
- export const defaultHeight = (field) => {
30
- switch (field.type) {
30
+ export const defaultHeight = (type) => {
31
+ switch (type) {
31
32
  case 'textbox':
32
33
  return 15;
33
34
  case 'timestamp':
@@ -54,7 +55,7 @@ export const defaultHeight = (field) => {
54
55
  export const setControlStyles = (el, field, xScale, yScale, option) => {
55
56
  var _a, _b, _c, _d;
56
57
  const settings = field.setting || field.settings;
57
- let { x = 0, y = 0, width = defaultWidth(field), height = defaultHeight(field) } = settings;
58
+ let { x = 0, y = 0, width = defaultWidth(field.type), height = defaultHeight(field.type) } = settings;
58
59
  const optionSettings = option !== undefined && settings.options[option] ? settings.options[option] : null;
59
60
  if (optionSettings) {
60
61
  x = (_a = optionSettings.x) !== null && _a !== void 0 ? _a : x;
@@ -152,6 +153,12 @@ export const renderDocumentField = (field, docPage, roleIndex, fieldOptions) =>
152
153
  if (done) {
153
154
  cbEl.setAttribute('done', true);
154
155
  }
156
+ if (editable) {
157
+ cbEl.setAttribute('editable', true);
158
+ }
159
+ if (draggable) {
160
+ cbEl.setAttribute('draggable', true);
161
+ }
155
162
  setControlStyles(cbEl, field, docPage.xScale, docPage.yScale, checkboxIndex);
156
163
  controlsDiv.appendChild(cbEl);
157
164
  return cbEl;
@@ -175,6 +182,12 @@ export const renderDocumentField = (field, docPage, roleIndex, fieldOptions) =>
175
182
  if (done) {
176
183
  radioEl.setAttribute('done', true);
177
184
  }
185
+ if (editable) {
186
+ radioEl.setAttribute('editable', true);
187
+ }
188
+ if (draggable) {
189
+ radioEl.setAttribute('draggable', true);
190
+ }
178
191
  setControlStyles(radioEl, field, docPage.xScale, docPage.yScale, buttonIndex);
179
192
  controlsDiv.appendChild(radioEl);
180
193
  return radioEl;
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Add a field to a template.
3
+ */
4
+ var createField = function (endpoint, templateId, params) {
5
+ return endpoint.api //
6
+ .post("/templates/".concat(templateId, "/fields"), params)
7
+ .then(function (r) { return r.data; });
8
+ };
9
+ /**
10
+ * Update a template field.
11
+ */
12
+ var updateField = function (endpoint, templateId, fieldName, params) {
13
+ return endpoint.api //
14
+ .put("/templates/".concat(templateId, "/fields/").concat(fieldName), params)
15
+ .then(function (r) { return r.data; });
16
+ };
17
+ /**
18
+ * REmove a field from a template.
19
+ */
20
+ var deleteField = function (endpoint, templateId, fieldName) {
21
+ return endpoint.api //
22
+ .delete("/templates/".concat(templateId, "/fields/").concat(fieldName))
23
+ .then(function (r) { return r.data; });
24
+ };
25
+
26
+ export { createField as c, deleteField as d, updateField as u };
@@ -42,6 +42,7 @@ export { VerdocsStatusIndicator as VerdocsStatusIndicator } from '../types/compo
42
42
  export { VerdocsTemplateAttachments as VerdocsTemplateAttachments } from '../types/components/templates/verdocs-template-attachments/verdocs-template-attachments';
43
43
  export { VerdocsTemplateCard as VerdocsTemplateCard } from '../types/components/controls/verdocs-template-card/verdocs-template-card';
44
44
  export { VerdocsTemplateCreate as VerdocsTemplateCreate } from '../types/components/templates/verdocs-template-create/verdocs-template-create';
45
+ export { VerdocsTemplateFieldProperties as VerdocsTemplateFieldProperties } from '../types/components/templates/verdocs-template-field-properties/verdocs-template-field-properties';
45
46
  export { VerdocsTemplateFields as VerdocsTemplateFields } from '../types/components/templates/verdocs-template-fields/verdocs-template-fields';
46
47
  export { VerdocsTemplateName as VerdocsTemplateName } from '../types/components/templates/verdocs-template-name/verdocs-template-name';
47
48
  export { VerdocsTemplateProperties as VerdocsTemplateProperties } from '../types/components/templates/verdocs-template-properties/verdocs-template-properties';
@@ -42,6 +42,7 @@ export { VerdocsStatusIndicator, defineCustomElement as defineCustomElementVerdo
42
42
  export { VerdocsTemplateAttachments, defineCustomElement as defineCustomElementVerdocsTemplateAttachments } from './verdocs-template-attachments.js';
43
43
  export { VerdocsTemplateCard, defineCustomElement as defineCustomElementVerdocsTemplateCard } from './verdocs-template-card.js';
44
44
  export { VerdocsTemplateCreate, defineCustomElement as defineCustomElementVerdocsTemplateCreate } from './verdocs-template-create.js';
45
+ export { VerdocsTemplateFieldProperties, defineCustomElement as defineCustomElementVerdocsTemplateFieldProperties } from './verdocs-template-field-properties.js';
45
46
  export { VerdocsTemplateFields, defineCustomElement as defineCustomElementVerdocsTemplateFields } from './verdocs-template-fields.js';
46
47
  export { VerdocsTemplateName, defineCustomElement as defineCustomElementVerdocsTemplateName } from './verdocs-template-name.js';
47
48
  export { VerdocsTemplateProperties, defineCustomElement as defineCustomElementVerdocsTemplateProperties } from './verdocs-template-properties.js';
@@ -7,6 +7,9 @@ const { state, onChange } = createStore({
7
7
  template: null,
8
8
  loadProgress: 0,
9
9
  loading: false,
10
+ // This can be used as a data field on components that need to force re-rendering when the underlying data has changed. Stencil stores
11
+ // are handy but not very sophisticated. They don't re-render on "deep" changes.
12
+ updateCount: 1,
10
13
  pageNumbers: [],
11
14
  pageUris: {},
12
15
  roleNames: [],
@@ -33,6 +36,7 @@ onChange('template', async (newTemplate) => {
33
36
  });
34
37
  console.log('[TEMPLATESTORE] Loaded fields', state.fields);
35
38
  state.pageNumbers = integerSequence(1, newTemplate.pages.length);
39
+ state.updateCount++;
36
40
  });
37
41
  onChange('fields', newField => {
38
42
  console.log('[TEMPLATESTORE] Field changed', newField);
@@ -5,8 +5,9 @@ function rescale(r, n) {
5
5
  return r * n;
6
6
  }
7
7
 
8
- const defaultWidth = (field) => {
9
- switch (field.type) {
8
+ const defaultWidth = (type) => {
9
+ // checkbox was a legacy field type
10
+ switch (type) {
10
11
  case 'textbox':
11
12
  return 150;
12
13
  case 'timestamp':
@@ -30,8 +31,8 @@ const defaultWidth = (field) => {
30
31
  }
31
32
  return 150;
32
33
  };
33
- const defaultHeight = (field) => {
34
- switch (field.type) {
34
+ const defaultHeight = (type) => {
35
+ switch (type) {
35
36
  case 'textbox':
36
37
  return 15;
37
38
  case 'timestamp':
@@ -58,7 +59,7 @@ const defaultHeight = (field) => {
58
59
  const setControlStyles = (el, field, xScale, yScale, option) => {
59
60
  var _a, _b, _c, _d;
60
61
  const settings = field.setting || field.settings;
61
- let { x = 0, y = 0, width = defaultWidth(field), height = defaultHeight(field) } = settings;
62
+ let { x = 0, y = 0, width = defaultWidth(field.type), height = defaultHeight(field.type) } = settings;
62
63
  const optionSettings = option !== undefined && settings.options[option] ? settings.options[option] : null;
63
64
  if (optionSettings) {
64
65
  x = (_a = optionSettings.x) !== null && _a !== void 0 ? _a : x;
@@ -156,6 +157,12 @@ const renderDocumentField = (field, docPage, roleIndex, fieldOptions) => {
156
157
  if (done) {
157
158
  cbEl.setAttribute('done', true);
158
159
  }
160
+ if (editable) {
161
+ cbEl.setAttribute('editable', true);
162
+ }
163
+ if (draggable) {
164
+ cbEl.setAttribute('draggable', true);
165
+ }
159
166
  setControlStyles(cbEl, field, docPage.xScale, docPage.yScale, checkboxIndex);
160
167
  controlsDiv.appendChild(cbEl);
161
168
  return cbEl;
@@ -179,6 +186,12 @@ const renderDocumentField = (field, docPage, roleIndex, fieldOptions) => {
179
186
  if (done) {
180
187
  radioEl.setAttribute('done', true);
181
188
  }
189
+ if (editable) {
190
+ radioEl.setAttribute('editable', true);
191
+ }
192
+ if (draggable) {
193
+ radioEl.setAttribute('draggable', true);
194
+ }
182
195
  setControlStyles(radioEl, field, docPage.xScale, docPage.yScale, buttonIndex);
183
196
  controlsDiv.appendChild(radioEl);
184
197
  return radioEl;