@verdocs/web-sdk 2.3.62 → 2.3.64

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 (254) hide show
  1. package/dist/cjs/{TemplateFieldStore-43a0b60d.js → TemplateFieldStore-3d25fc86.js} +11 -10
  2. package/dist/cjs/{TemplateStore-ccf29182.js → TemplateStore-89072ea0.js} +1 -1
  3. package/dist/cjs/ipc-test.cjs.entry.js +2 -2
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/{utils-31385d19.js → utils-7cc3fe3c.js} +76 -3
  6. package/dist/cjs/verdocs-build.cjs.entry.js +2 -2
  7. package/dist/cjs/{verdocs-portal_2.cjs.entry.js → verdocs-checkbox_5.cjs.entry.js} +57 -11
  8. package/dist/cjs/verdocs-contact-picker_2.cjs.entry.js +1 -2
  9. package/dist/cjs/verdocs-envelope-document-page.cjs.entry.js +1 -2
  10. package/dist/cjs/verdocs-envelopes-list.cjs.entry.js +1 -2
  11. package/dist/cjs/{verdocs-field-date.cjs.entry.js → verdocs-field-attachment_15.cjs.entry.js} +1520 -6
  12. package/dist/cjs/verdocs-field-payment.cjs.entry.js +3 -3
  13. package/dist/cjs/verdocs-pagination_2.cjs.entry.js +1 -2
  14. package/dist/cjs/verdocs-preview_8.cjs.entry.js +3 -4
  15. package/dist/cjs/verdocs-settings-api-keys_4.cjs.entry.js +1 -2
  16. package/dist/cjs/verdocs-sign.cjs.entry.js +9 -12
  17. package/dist/cjs/verdocs-template-fields_4.cjs.entry.js +26 -19
  18. package/dist/cjs/verdocs-view.cjs.entry.js +1 -2
  19. package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
  20. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js +7 -9
  21. package/dist/collection/components/fields/verdocs-field-attachment/verdocs-field-attachment.js +19 -0
  22. package/dist/collection/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.js +19 -0
  23. package/dist/collection/components/fields/verdocs-field-date/verdocs-field-date.css +1 -1
  24. package/dist/collection/components/fields/verdocs-field-date/verdocs-field-date.js +19 -0
  25. package/dist/collection/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.js +19 -0
  26. package/dist/collection/components/fields/verdocs-field-initial/verdocs-field-initial.js +19 -0
  27. package/dist/collection/components/fields/verdocs-field-payment/verdocs-field-payment.js +19 -0
  28. package/dist/collection/components/fields/verdocs-field-radio-button-group/verdocs-field-radio-button.js +19 -0
  29. package/dist/collection/components/fields/verdocs-field-signature/verdocs-field-signature.js +19 -0
  30. package/dist/collection/components/fields/verdocs-field-textarea/verdocs-field-textarea.js +19 -0
  31. package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.css +1 -1
  32. package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.js +27 -6
  33. package/dist/collection/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.js +19 -0
  34. package/dist/collection/components/templates/verdocs-template-document-page/verdocs-template-document-page.js +95 -6
  35. package/dist/collection/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.js +5 -9
  36. package/dist/collection/components/templates/verdocs-template-fields/verdocs-template-fields.js +24 -16
  37. package/dist/collection/utils/TemplateFieldStore.js +11 -10
  38. package/dist/collection/utils/utils.js +23 -4
  39. package/dist/components/TemplateFieldStore.js +11 -10
  40. package/dist/components/ipc-test.js +120 -30
  41. package/dist/components/utils.js +28 -1
  42. package/dist/components/verdocs-build.js +144 -60
  43. package/dist/components/verdocs-field-attachment.js +1 -168
  44. package/dist/{esm/verdocs-field-attachment.entry.js → components/verdocs-field-attachment2.js} +96 -19
  45. package/dist/components/verdocs-field-checkbox.js +1 -148
  46. package/dist/{esm/verdocs-field-checkbox.entry.js → components/verdocs-field-checkbox2.js} +90 -19
  47. package/dist/components/verdocs-field-date.js +1 -204
  48. package/dist/{esm/verdocs-field-date.entry.js → components/verdocs-field-date2.js} +97 -21
  49. package/dist/components/verdocs-field-dropdown.js +1 -154
  50. package/dist/{esm/verdocs-field-dropdown.entry.js → components/verdocs-field-dropdown2.js} +90 -19
  51. package/dist/components/verdocs-field-initial.js +1 -184
  52. package/dist/{esm/verdocs-field-initial.entry.js → components/verdocs-field-initial2.js} +98 -19
  53. package/dist/components/verdocs-field-payment.js +2 -0
  54. package/dist/components/verdocs-field-radio-button.js +1 -152
  55. package/dist/{esm/verdocs-field-radio-button.entry.js → components/verdocs-field-radio-button2.js} +90 -19
  56. package/dist/components/verdocs-field-signature.js +1 -183
  57. package/dist/{esm/verdocs-field-signature.entry.js → components/verdocs-field-signature2.js} +98 -19
  58. package/dist/components/verdocs-field-textarea.js +1 -206
  59. package/dist/{esm/verdocs-field-textarea.entry.js → components/verdocs-field-textarea2.js} +95 -23
  60. package/dist/components/verdocs-field-textbox.js +1 -208
  61. package/dist/{esm/verdocs-field-textbox.entry.js → components/verdocs-field-textbox2.js} +104 -30
  62. package/dist/components/verdocs-field-timestamp.js +1 -157
  63. package/dist/{esm/verdocs-field-timestamp.entry.js → components/verdocs-field-timestamp2.js} +92 -19
  64. package/dist/components/verdocs-preview2.js +130 -4
  65. package/dist/components/verdocs-sign.js +7 -9
  66. package/dist/components/verdocs-template-document-page2.js +188 -7
  67. package/dist/components/verdocs-template-field-properties2.js +31 -11
  68. package/dist/components/verdocs-template-fields2.js +146 -31
  69. package/dist/docs.json +671 -15
  70. package/dist/esm/{TemplateFieldStore-211c1ed4.js → TemplateFieldStore-6e67e86b.js} +11 -10
  71. package/dist/esm/{TemplateStore-f752d353.js → TemplateStore-7fba801e.js} +1 -1
  72. package/dist/esm/ipc-test.entry.js +2 -2
  73. package/dist/esm/loader.js +1 -1
  74. package/dist/esm/{utils-86fc7318.js → utils-36f1bbdd.js} +71 -2
  75. package/dist/esm/verdocs-build.entry.js +2 -2
  76. package/dist/esm/{verdocs-portal_2.entry.js → verdocs-checkbox_5.entry.js} +56 -13
  77. package/dist/esm/verdocs-contact-picker_2.entry.js +1 -2
  78. package/dist/esm/verdocs-envelope-document-page.entry.js +1 -2
  79. package/dist/esm/verdocs-envelopes-list.entry.js +1 -2
  80. package/dist/esm/verdocs-field-attachment_15.entry.js +1632 -0
  81. package/dist/esm/verdocs-field-payment.entry.js +3 -3
  82. package/dist/esm/verdocs-pagination_2.entry.js +1 -2
  83. package/dist/esm/verdocs-preview_8.entry.js +3 -4
  84. package/dist/esm/verdocs-settings-api-keys_4.entry.js +1 -2
  85. package/dist/esm/verdocs-sign.entry.js +9 -12
  86. package/dist/esm/verdocs-template-fields_4.entry.js +26 -19
  87. package/dist/esm/verdocs-view.entry.js +1 -2
  88. package/dist/esm/verdocs-web-sdk.js +1 -1
  89. package/dist/esm-es5/{TemplateFieldStore-211c1ed4.js → TemplateFieldStore-6e67e86b.js} +1 -1
  90. package/dist/esm-es5/{TemplateStore-f752d353.js → TemplateStore-7fba801e.js} +1 -1
  91. package/dist/esm-es5/ipc-test.entry.js +1 -1
  92. package/dist/esm-es5/loader.js +1 -1
  93. package/dist/esm-es5/{utils-86fc7318.js → utils-36f1bbdd.js} +2 -2
  94. package/dist/esm-es5/verdocs-build.entry.js +1 -1
  95. package/dist/esm-es5/verdocs-checkbox_5.entry.js +1 -0
  96. package/dist/esm-es5/verdocs-contact-picker_2.entry.js +1 -1
  97. package/dist/esm-es5/verdocs-envelope-document-page.entry.js +1 -1
  98. package/dist/esm-es5/verdocs-envelopes-list.entry.js +1 -1
  99. package/dist/esm-es5/verdocs-field-attachment_15.entry.js +1 -0
  100. package/dist/esm-es5/verdocs-field-payment.entry.js +1 -1
  101. package/dist/esm-es5/verdocs-pagination_2.entry.js +1 -1
  102. package/dist/esm-es5/verdocs-preview_8.entry.js +1 -1
  103. package/dist/esm-es5/verdocs-settings-api-keys_4.entry.js +1 -1
  104. package/dist/esm-es5/verdocs-sign.entry.js +1 -1
  105. package/dist/esm-es5/verdocs-template-fields_4.entry.js +1 -1
  106. package/dist/esm-es5/verdocs-view.entry.js +1 -1
  107. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  108. package/dist/types/components/fields/verdocs-field-attachment/verdocs-field-attachment.d.ts +4 -0
  109. package/dist/types/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.d.ts +4 -0
  110. package/dist/types/components/fields/verdocs-field-date/verdocs-field-date.d.ts +4 -0
  111. package/dist/types/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.d.ts +4 -0
  112. package/dist/types/components/fields/verdocs-field-initial/verdocs-field-initial.d.ts +4 -0
  113. package/dist/types/components/fields/verdocs-field-payment/verdocs-field-payment.d.ts +4 -0
  114. package/dist/types/components/fields/verdocs-field-radio-button-group/verdocs-field-radio-button.d.ts +4 -0
  115. package/dist/types/components/fields/verdocs-field-signature/verdocs-field-signature.d.ts +4 -0
  116. package/dist/types/components/fields/verdocs-field-textarea/verdocs-field-textarea.d.ts +4 -0
  117. package/dist/types/components/fields/verdocs-field-textbox/verdocs-field-textbox.d.ts +4 -0
  118. package/dist/types/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.d.ts +4 -0
  119. package/dist/types/components/templates/verdocs-template-document-page/verdocs-template-document-page.d.ts +12 -0
  120. package/dist/types/components.d.ts +104 -0
  121. package/dist/types/utils/TemplateFieldStore.d.ts +1 -1
  122. package/dist/types/utils/utils.d.ts +9 -1
  123. package/dist/verdocs-web-sdk/p-00e8cfa6.system.entry.js +1 -0
  124. package/dist/verdocs-web-sdk/p-04ac4336.system.entry.js +1 -0
  125. package/dist/verdocs-web-sdk/p-08b5e01b.entry.js +1 -0
  126. package/dist/verdocs-web-sdk/p-116f7900.entry.js +1 -0
  127. package/dist/verdocs-web-sdk/p-26646a40.entry.js +1 -0
  128. package/dist/verdocs-web-sdk/p-2a16963c.entry.js +1 -0
  129. package/dist/verdocs-web-sdk/p-358ce165.system.entry.js +1 -0
  130. package/dist/verdocs-web-sdk/p-3995b09b.system.entry.js +1 -0
  131. package/dist/verdocs-web-sdk/p-3c59911b.system.entry.js +1 -0
  132. package/dist/verdocs-web-sdk/p-3efa7c26.entry.js +1 -0
  133. package/dist/verdocs-web-sdk/{p-01d02174.js → p-47c63cc7.js} +1 -1
  134. package/dist/verdocs-web-sdk/p-500dce36.system.entry.js +1 -0
  135. package/dist/verdocs-web-sdk/{p-7c40ab4b.system.entry.js → p-5050f8a2.system.entry.js} +1 -1
  136. package/dist/verdocs-web-sdk/{p-e10bd7a0.entry.js → p-508808d2.entry.js} +1 -1
  137. package/dist/verdocs-web-sdk/p-5c306718.entry.js +1 -0
  138. package/dist/verdocs-web-sdk/p-6b6330f2.system.entry.js +1 -0
  139. package/dist/verdocs-web-sdk/{p-4b8a5a4e.system.entry.js → p-72f22ee9.system.entry.js} +1 -1
  140. package/dist/verdocs-web-sdk/p-80e69a68.entry.js +1 -0
  141. package/dist/verdocs-web-sdk/p-83597b2e.system.entry.js +1 -0
  142. package/dist/verdocs-web-sdk/p-8d9a749d.entry.js +1 -0
  143. package/dist/verdocs-web-sdk/p-9054234f.entry.js +1 -0
  144. package/dist/verdocs-web-sdk/{p-f69790c5.system.js → p-95080569.system.js} +1 -1
  145. package/dist/verdocs-web-sdk/{p-aecd8680.entry.js → p-9d4a5fd8.entry.js} +1 -1
  146. package/dist/verdocs-web-sdk/p-a16eba51.system.entry.js +1 -0
  147. package/dist/verdocs-web-sdk/{p-f0dd9355.js → p-a3d7cdda.js} +2 -2
  148. package/dist/verdocs-web-sdk/{p-90a1755f.system.js → p-cacffa79.system.js} +2 -2
  149. package/dist/verdocs-web-sdk/{p-79965a5a.system.js → p-cff87d52.system.js} +1 -1
  150. package/dist/verdocs-web-sdk/p-d1092a62.system.entry.js +1 -0
  151. package/dist/verdocs-web-sdk/p-d7f90328.system.entry.js +1 -0
  152. package/dist/verdocs-web-sdk/p-db5de7e8.entry.js +1 -0
  153. package/dist/verdocs-web-sdk/p-e311d75f.system.entry.js +1 -0
  154. package/dist/verdocs-web-sdk/p-ea96b41e.entry.js +1 -0
  155. package/dist/verdocs-web-sdk/p-ef20cb50.js +1 -0
  156. package/dist/verdocs-web-sdk/p-f04bf956.system.js +1 -1
  157. package/dist/verdocs-web-sdk/p-f2a169d8.entry.js +1 -0
  158. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  159. package/package.json +1 -1
  160. package/dist/cjs/Files-4bdc0c0f.js +0 -47
  161. package/dist/cjs/verdocs-checkbox_3.cjs.entry.js +0 -56
  162. package/dist/cjs/verdocs-field-attachment.cjs.entry.js +0 -99
  163. package/dist/cjs/verdocs-field-checkbox.cjs.entry.js +0 -85
  164. package/dist/cjs/verdocs-field-dropdown.cjs.entry.js +0 -91
  165. package/dist/cjs/verdocs-field-initial.cjs.entry.js +0 -113
  166. package/dist/cjs/verdocs-field-radio-button.cjs.entry.js +0 -89
  167. package/dist/cjs/verdocs-field-signature.cjs.entry.js +0 -112
  168. package/dist/cjs/verdocs-field-textarea.cjs.entry.js +0 -141
  169. package/dist/cjs/verdocs-field-textbox.cjs.entry.js +0 -143
  170. package/dist/cjs/verdocs-field-timestamp.cjs.entry.js +0 -92
  171. package/dist/cjs/verdocs-initial-dialog.cjs.entry.js +0 -227
  172. package/dist/cjs/verdocs-signature-dialog.cjs.entry.js +0 -227
  173. package/dist/cjs/verdocs-template-document-page_2.cjs.entry.js +0 -150
  174. package/dist/cjs/verdocs-upload-dialog.cjs.entry.js +0 -82
  175. package/dist/components/Fields.js +0 -26
  176. package/dist/custom-elements.json +0 -2091
  177. package/dist/esm/Files-70a192df.js +0 -44
  178. package/dist/esm/verdocs-checkbox_3.entry.js +0 -50
  179. package/dist/esm/verdocs-initial-dialog.entry.js +0 -223
  180. package/dist/esm/verdocs-signature-dialog.entry.js +0 -223
  181. package/dist/esm/verdocs-template-document-page_2.entry.js +0 -145
  182. package/dist/esm/verdocs-upload-dialog.entry.js +0 -78
  183. package/dist/esm-es5/Files-70a192df.js +0 -1
  184. package/dist/esm-es5/verdocs-checkbox_3.entry.js +0 -1
  185. package/dist/esm-es5/verdocs-field-attachment.entry.js +0 -1
  186. package/dist/esm-es5/verdocs-field-checkbox.entry.js +0 -1
  187. package/dist/esm-es5/verdocs-field-date.entry.js +0 -1
  188. package/dist/esm-es5/verdocs-field-dropdown.entry.js +0 -1
  189. package/dist/esm-es5/verdocs-field-initial.entry.js +0 -1
  190. package/dist/esm-es5/verdocs-field-radio-button.entry.js +0 -1
  191. package/dist/esm-es5/verdocs-field-signature.entry.js +0 -1
  192. package/dist/esm-es5/verdocs-field-textarea.entry.js +0 -1
  193. package/dist/esm-es5/verdocs-field-textbox.entry.js +0 -1
  194. package/dist/esm-es5/verdocs-field-timestamp.entry.js +0 -1
  195. package/dist/esm-es5/verdocs-initial-dialog.entry.js +0 -1
  196. package/dist/esm-es5/verdocs-portal_2.entry.js +0 -1
  197. package/dist/esm-es5/verdocs-signature-dialog.entry.js +0 -1
  198. package/dist/esm-es5/verdocs-template-document-page_2.entry.js +0 -1
  199. package/dist/esm-es5/verdocs-upload-dialog.entry.js +0 -1
  200. package/dist/verdocs-web-sdk/p-0edfbbb9.entry.js +0 -1
  201. package/dist/verdocs-web-sdk/p-0fd03f17.system.entry.js +0 -1
  202. package/dist/verdocs-web-sdk/p-16cc9e91.system.entry.js +0 -1
  203. package/dist/verdocs-web-sdk/p-1b9f1492.entry.js +0 -1
  204. package/dist/verdocs-web-sdk/p-202a5368.entry.js +0 -1
  205. package/dist/verdocs-web-sdk/p-20986706.entry.js +0 -1
  206. package/dist/verdocs-web-sdk/p-22275b64.system.entry.js +0 -1
  207. package/dist/verdocs-web-sdk/p-2407c719.system.entry.js +0 -1
  208. package/dist/verdocs-web-sdk/p-2bb8b0c0.entry.js +0 -1
  209. package/dist/verdocs-web-sdk/p-30265ae4.system.entry.js +0 -1
  210. package/dist/verdocs-web-sdk/p-32076544.entry.js +0 -1
  211. package/dist/verdocs-web-sdk/p-327858f0.system.js +0 -1
  212. package/dist/verdocs-web-sdk/p-34832c03.system.entry.js +0 -1
  213. package/dist/verdocs-web-sdk/p-4157afe4.entry.js +0 -1
  214. package/dist/verdocs-web-sdk/p-43a78ea1.entry.js +0 -1
  215. package/dist/verdocs-web-sdk/p-4b740499.system.entry.js +0 -1
  216. package/dist/verdocs-web-sdk/p-50a552a9.entry.js +0 -1
  217. package/dist/verdocs-web-sdk/p-521a3fec.entry.js +0 -1
  218. package/dist/verdocs-web-sdk/p-522f19d0.system.entry.js +0 -1
  219. package/dist/verdocs-web-sdk/p-6190eb2d.entry.js +0 -1
  220. package/dist/verdocs-web-sdk/p-66b9d77e.system.entry.js +0 -1
  221. package/dist/verdocs-web-sdk/p-6a5fbeb0.entry.js +0 -1
  222. package/dist/verdocs-web-sdk/p-6bae71c2.system.entry.js +0 -1
  223. package/dist/verdocs-web-sdk/p-6eb2ce21.js +0 -1
  224. package/dist/verdocs-web-sdk/p-712e8341.system.entry.js +0 -1
  225. package/dist/verdocs-web-sdk/p-77898b84.entry.js +0 -1
  226. package/dist/verdocs-web-sdk/p-7cb3209d.system.entry.js +0 -1
  227. package/dist/verdocs-web-sdk/p-83a1476c.entry.js +0 -1
  228. package/dist/verdocs-web-sdk/p-8bf9acf4.system.entry.js +0 -1
  229. package/dist/verdocs-web-sdk/p-9365abef.entry.js +0 -1
  230. package/dist/verdocs-web-sdk/p-946903f3.system.entry.js +0 -1
  231. package/dist/verdocs-web-sdk/p-98f91a5e.system.entry.js +0 -1
  232. package/dist/verdocs-web-sdk/p-a1ccd671.entry.js +0 -1
  233. package/dist/verdocs-web-sdk/p-a5f450a1.system.entry.js +0 -1
  234. package/dist/verdocs-web-sdk/p-a6048cc9.system.entry.js +0 -1
  235. package/dist/verdocs-web-sdk/p-a604c1ad.system.entry.js +0 -1
  236. package/dist/verdocs-web-sdk/p-a9934632.entry.js +0 -1
  237. package/dist/verdocs-web-sdk/p-aa124212.js +0 -1
  238. package/dist/verdocs-web-sdk/p-b3c78f12.entry.js +0 -1
  239. package/dist/verdocs-web-sdk/p-ba87f33c.system.entry.js +0 -1
  240. package/dist/verdocs-web-sdk/p-bb2006de.system.entry.js +0 -1
  241. package/dist/verdocs-web-sdk/p-c9716926.system.entry.js +0 -1
  242. package/dist/verdocs-web-sdk/p-cb316fe0.entry.js +0 -1
  243. package/dist/verdocs-web-sdk/p-cee12c63.entry.js +0 -1
  244. package/dist/verdocs-web-sdk/p-d3942875.entry.js +0 -1
  245. package/dist/verdocs-web-sdk/p-e27ec758.entry.js +0 -1
  246. package/dist/verdocs-web-sdk/p-e2a8ce1d.entry.js +0 -1
  247. package/dist/verdocs-web-sdk/p-e98e76f5.system.entry.js +0 -1
  248. package/dist/verdocs-web-sdk/p-ecc85500.entry.js +0 -1
  249. package/dist/verdocs-web-sdk/p-ef1f4d49.entry.js +0 -1
  250. package/dist/verdocs-web-sdk/p-f23af885.system.entry.js +0 -1
  251. package/dist/verdocs-web-sdk/p-f55038fc.system.entry.js +0 -1
  252. package/dist/verdocs-web-sdk/p-f63a8d6d.system.entry.js +0 -1
  253. package/dist/verdocs-web-sdk/p-f68c15fb.entry.js +0 -1
  254. package/dist/verdocs-web-sdk/p-f8f703bb.system.entry.js +0 -1
@@ -0,0 +1,1632 @@
1
+ import { r as registerInstance, c as createEvent, h, F as Fragment, H as Host, a as getElement } from './index-172625c5.js';
2
+ import { g as getRGBA } from './Colors-1b298092.js';
3
+ import { g as getTemplateRoleStore, a as getRoleIndex } from './TemplateRoleStore-447f2cb6.js';
4
+ import { g as getTemplateFieldStore } from './TemplateFieldStore-6e67e86b.js';
5
+ import { g as getFieldSettings, t as throttle, j as getControlStyles, b as getFieldId, k as getFieldOptionId, l as fileToDataUrl } from './utils-36f1bbdd.js';
6
+ import { S as SettingsIcon } from './Icons-ddea87bf.js';
7
+ import { c as createCommonjsModule, a as commonjsGlobal, g as getDefaultExportFromCjs } from './_commonjsHelpers-5ec8f9b7.js';
8
+ import { a as FORMAT_DATE, F as FORMAT_TIMESTAMP } from './Types-1628dc71.js';
9
+ import { f as format } from './index-914ed6f7.js';
10
+ import { i as interact_min } from './interact.min-ef12935a.js';
11
+ import './Types-5f31149e.js';
12
+ import { V as VerdocsEndpoint } from './VerdocsEndpoint-56fa3371.js';
13
+ import { u as updateField } from './Fields-c82e6df3.js';
14
+ import { g as getTemplateDocumentPageDisplayUri } from './TemplateDocuments-6fd2f4e2.js';
15
+ import { c as createPopper } from './popper-15e448b4.js';
16
+ import './index-4439b0d1.js';
17
+ import './Envelopes-627c5239.js';
18
+
19
+ const verdocsFieldAttachmentCss = "verdocs-field-attachment{font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif;-webkit-box-sizing:border-box;box-sizing:border-box;width:24px;height:24px;display:block;font-size:11px;position:relative;background-color:transparent;-webkit-transform-origin:bottom left;transform-origin:bottom left}verdocs-field-attachment.disabled{opacity:0.5}verdocs-field-attachment.disabled span{cursor:inherit}verdocs-field-attachment span{cursor:inherit;width:20px}verdocs-field-attachment.required span{border:1px solid #cc0000}verdocs-field-attachment.focused{-webkit-animation:verdocs-field-pulse 0.75s 2;animation:verdocs-field-pulse 0.75s 2}verdocs-field-attachment verdocs-button-panel{top:1px;left:-19px;opacity:0.5;z-index:1000;cursor:pointer;position:absolute;-webkit-transform:scale(0.6);transform:scale(0.6)}verdocs-field-attachment verdocs-button-panel[data-active],verdocs-field-attachment verdocs-button-panel:hover{opacity:1}verdocs-field-attachment verdocs-button-panel .icon svg{fill:#333333}verdocs-field-attachment verdocs-button-panel .icon:hover svg{fill:#000000}verdocs-field-attachment .settings-icon{position:absolute;top:-3px;left:-20px;display:inline-block;cursor:pointer;opacity:0.6}verdocs-field-attachment .settings-icon svg{fill:#707ae5}verdocs-field-attachment .settings-icon:hover{opacity:1}";
20
+
21
+ const PaperclipIcon$1 = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15.172 7l-6.586 6.586a2 2 0 102.828 2.828l6.414-6.586a4 4 0 00-5.656-5.656l-6.415 6.585a6 6 0 108.486 8.486L20.5 13" /></svg>`;
22
+ const AttachedIcon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 104.69 122.88"><g><path d="M31.54,86.95c-1.74,0-3.16-1.43-3.16-3.19c0-1.76,1.41-3.19,3.16-3.19h20.5c1.74,0,3.16,1.43,3.16,3.19 c0,1.76-1.41,3.19-3.16,3.19H31.54L31.54,86.95z M31.54,42.27c-1.74,0-3.15-1.41-3.15-3.15c0-1.74,1.41-3.15,3.15-3.15h41.61 c1.74,0,3.15,1.41,3.15,3.15c0,1.74-1.41,3.15-3.15,3.15H31.54L31.54,42.27z M66.57,108.66c-1.36-1.08-1.59-3.06-0.5-4.42 c1.08-1.36,3.06-1.59,4.42-0.5l9.57,7.59l18.21-22.27c1.1-1.35,3.09-1.54,4.43-0.44c1.35,1.1,1.54,3.09,0.44,4.43l-20.17,24.67l0,0 c-1.09,1.33-3.04,1.54-4.39,0.47L66.57,108.66L66.57,108.66z M56.85,116.58c1.74,0,3.15,1.41,3.15,3.15c0,1.74-1.41,3.15-3.15,3.15 H7.33c-2.02,0-3.85-0.82-5.18-2.15C0.82,119.4,0,117.57,0,115.55V7.33c0-2.02,0.82-3.85,2.15-5.18C3.48,0.82,5.31,0,7.33,0h90.02 c2.02,0,3.85,0.82,5.18,2.15c1.33,1.33,2.15,3.16,2.15,5.18V72.6c0,1.74-1.41,3.15-3.15,3.15c-1.74,0-3.15-1.41-3.15-3.15V7.33 c0-0.28-0.12-0.54-0.3-0.73c-0.19-0.19-0.45-0.3-0.73-0.3H7.33c-0.28,0-0.54,0.12-0.73,0.3C6.42,6.8,6.3,7.05,6.3,7.33v108.21 c0,0.28,0.12,0.54,0.3,0.73c0.19,0.19,0.45,0.3,0.73,0.3H56.85L56.85,116.58z M31.54,64.59c-1.74,0-3.15-1.41-3.15-3.15 c0-1.74,1.41-3.15,3.15-3.15h41.61c1.74,0,3.15,1.41,3.15,3.15c0,1.74-1.41,3.15-3.15,3.15H31.54L31.54,64.59z"/></g></svg>`;
23
+ const VerdocsFieldAttachment = class {
24
+ constructor(hostRef) {
25
+ registerInstance(this, hostRef);
26
+ this.settingsChanged = createEvent(this, "settingsChanged", 7);
27
+ this.deleted = createEvent(this, "deleted", 7);
28
+ this.attached = createEvent(this, "attached", 7);
29
+ this.fieldStore = null;
30
+ this.roleStore = null;
31
+ this.templateid = '';
32
+ this.fieldname = '';
33
+ this.disabled = false;
34
+ this.editable = false;
35
+ this.moveable = false;
36
+ this.done = false;
37
+ this.xscale = 1;
38
+ this.yscale = 1;
39
+ this.pagenumber = 1;
40
+ this.showingProperties = false;
41
+ }
42
+ async focusField() {
43
+ this.handleShow();
44
+ }
45
+ handleShow() {
46
+ this.dialog = document.createElement('verdocs-upload-dialog');
47
+ this.dialog.open = true;
48
+ this.dialog.addEventListener('exit', () => { var _a; return (_a = this.dialog) === null || _a === void 0 ? void 0 : _a.remove(); });
49
+ document.addEventListener('next', (e) => {
50
+ var _a, _b;
51
+ console.log('Attachment next', e);
52
+ (_a = this.attached) === null || _a === void 0 ? void 0 : _a.emit(e.detail[0]);
53
+ (_b = this.dialog) === null || _b === void 0 ? void 0 : _b.remove();
54
+ });
55
+ document.body.append(this.dialog);
56
+ }
57
+ async showSettingsPanel() {
58
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
59
+ if (settingsPanel && settingsPanel.showPanel) {
60
+ settingsPanel.showPanel();
61
+ }
62
+ }
63
+ async hideSettingsPanel() {
64
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
65
+ if (settingsPanel && settingsPanel.hidePanel) {
66
+ settingsPanel.hidePanel();
67
+ }
68
+ }
69
+ async componentWillLoad() {
70
+ this.fieldStore = getTemplateFieldStore(this.templateid);
71
+ this.roleStore = getTemplateRoleStore(this.templateid);
72
+ }
73
+ render() {
74
+ var _a, _b;
75
+ const field = this.fieldStore.get('fields').find(field => field.name === this.fieldname);
76
+ const roleIndex = getRoleIndex(this.roleStore, field.role_name);
77
+ const backgroundColor = field['rgba'] || getRGBA(roleIndex);
78
+ if (!field) {
79
+ return h(Fragment, null);
80
+ }
81
+ const settings = getFieldSettings(field);
82
+ let disabled = (_b = (_a = this.disabled) !== null && _a !== void 0 ? _a : settings.disabled) !== null && _b !== void 0 ? _b : false;
83
+ const { url } = settings;
84
+ return (h(Host, { class: { required: settings.required, disabled }, style: { backgroundColor } }, h("span", { innerHTML: url ? AttachedIcon : PaperclipIcon$1, onClick: () => !disabled && this.handleShow() }), this.editable && (h(Fragment, null, h("div", { id: `verdocs-settings-panel-trigger-${field.name}`, style: { transform: `scale(${Math.floor((1 / this.xscale) * 1000) / 1000}, ${Math.floor((1 / this.yscale) * 1000) / 1000})` }, class: "settings-icon", innerHTML: SettingsIcon, onClick: (e) => {
85
+ e.stopPropagation();
86
+ this.showingProperties = !this.showingProperties;
87
+ } }), this.showingProperties && (h("verdocs-portal", { anchor: `verdocs-settings-panel-trigger-${field.name}`, onClickAway: () => (this.showingProperties = false) }, h("verdocs-template-field-properties", { templateId: this.templateid, fieldName: field.name, onClose: () => (this.showingProperties = false), onDelete: () => {
88
+ var _a;
89
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: field.name });
90
+ return this.hideSettingsPanel();
91
+ }, onSettingsChanged: e => {
92
+ var _a;
93
+ (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit(e.detail);
94
+ return this.hideSettingsPanel();
95
+ }, helpText: 'Attachments allow the user to attach their own documents (e.g. resumes or disclosures) to a signing flow.' })))))));
96
+ }
97
+ };
98
+ VerdocsFieldAttachment.style = verdocsFieldAttachmentCss;
99
+
100
+ const verdocsFieldCheckboxCss = "@charset \"UTF-8\";verdocs-field-checkbox{width:16px;height:16px;padding:1px;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transform-origin:bottom left;transform-origin:bottom left;font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif}verdocs-field-checkbox.disabled{opacity:0.5}verdocs-field-checkbox label{cursor:inherit;width:14px;height:14px;display:block;-webkit-box-sizing:border-box;box-sizing:border-box}verdocs-field-checkbox label>input[type=checkbox]{display:none}verdocs-field-checkbox label>input[type=checkbox]+*::before{margin:0;content:\"\";width:14px;height:14px;display:block;line-height:14px;border-radius:2px;-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid #aeb4bf}verdocs-field-checkbox label>input[type=checkbox]:checked+*{color:#55bc81}verdocs-field-checkbox label>input[type=checkbox]:checked+*::before{content:\"✓\";color:white;font-size:12px;text-align:center;background:#55bc81;border-color:#55bc81}verdocs-field-checkbox.required{border:1px solid #cc0000}verdocs-field-checkbox.hide{display:none}verdocs-field-checkbox.focused{-webkit-animation:verdocs-field-pulse 0.75s 2;animation:verdocs-field-pulse 0.75s 2}verdocs-field-checkbox verdocs-button-panel{display:block;margin-left:-20px;margin-top:-17px;-webkit-transform:scale(0.7);transform:scale(0.7)}verdocs-field-checkbox .settings-icon{position:absolute;top:-3px;left:-20px;display:inline-block;cursor:pointer;opacity:0.6}verdocs-field-checkbox .settings-icon svg{fill:#707ae5}verdocs-field-checkbox .settings-icon:hover{opacity:1}";
101
+
102
+ const VerdocsFieldCheckbox = class {
103
+ constructor(hostRef) {
104
+ registerInstance(this, hostRef);
105
+ this.settingsChanged = createEvent(this, "settingsChanged", 7);
106
+ this.deleted = createEvent(this, "deleted", 7);
107
+ this.fieldStore = null;
108
+ this.roleStore = null;
109
+ this.templateid = '';
110
+ this.fieldname = '';
111
+ this.option = 0;
112
+ this.disabled = false;
113
+ this.done = false;
114
+ this.editable = false;
115
+ this.moveable = false;
116
+ this.xscale = 1;
117
+ this.yscale = 1;
118
+ this.pagenumber = 1;
119
+ this.showingProperties = false;
120
+ }
121
+ async showSettingsPanel() {
122
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
123
+ if (settingsPanel && settingsPanel.showPanel) {
124
+ settingsPanel.showPanel();
125
+ }
126
+ }
127
+ async hideSettingsPanel() {
128
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
129
+ if (settingsPanel && settingsPanel.hidePanel) {
130
+ settingsPanel.hidePanel();
131
+ }
132
+ }
133
+ async componentWillLoad() {
134
+ this.fieldStore = getTemplateFieldStore(this.templateid);
135
+ this.roleStore = getTemplateRoleStore(this.templateid);
136
+ }
137
+ render() {
138
+ var _a, _b, _c, _d;
139
+ const field = this.fieldStore.get('fields').find(field => field.name === this.fieldname);
140
+ const roleIndex = getRoleIndex(this.roleStore, field.role_name);
141
+ const backgroundColor = field['rgba'] || getRGBA(roleIndex);
142
+ if (!field) {
143
+ return h(Fragment, null);
144
+ }
145
+ const settings = getFieldSettings(field);
146
+ const option = (_b = (_a = settings.options) === null || _a === void 0 ? void 0 : _a[this.option]) !== null && _b !== void 0 ? _b : { checked: false };
147
+ const disabled = (_d = (_c = this.disabled) !== null && _c !== void 0 ? _c : settings.disabled) !== null && _d !== void 0 ? _d : false;
148
+ if (this.done) {
149
+ return h(Host, { class: { done: this.done } }, option.checked ? '✓' : '☐');
150
+ }
151
+ return (h(Host, { class: { required: settings.required, disabled }, style: { backgroundColor } }, h("label", null, h("input", { name: field.name, type: "checkbox", tabIndex: settings.order, checked: option.checked, disabled: disabled, required: settings.required, value: option.id }), h("span", null), this.editable && (h(Fragment, null, h("div", { id: `verdocs-settings-panel-trigger-${field.name}`, style: { transform: `scale(${Math.floor((1 / this.xscale) * 1000) / 1000}, ${Math.floor((1 / this.yscale) * 1000) / 1000})` }, class: "settings-icon", innerHTML: SettingsIcon, onClick: (e) => {
152
+ e.stopPropagation();
153
+ this.showingProperties = !this.showingProperties;
154
+ } }), this.showingProperties && (h("verdocs-portal", { anchor: `verdocs-settings-panel-trigger-${field.name}`, onClickAway: () => (this.showingProperties = false) }, h("verdocs-template-field-properties", { templateId: this.templateid, fieldName: field.name, onClose: () => (this.showingProperties = false), onDelete: () => {
155
+ var _a;
156
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: field.name });
157
+ return this.hideSettingsPanel();
158
+ }, onSettingsChanged: e => {
159
+ var _a;
160
+ (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit(e.detail);
161
+ return this.hideSettingsPanel();
162
+ }, helpText: 'Check boxes allow the user to select one or more (non-exclusive) options.' }))))))));
163
+ }
164
+ };
165
+ VerdocsFieldCheckbox.style = verdocsFieldCheckboxCss;
166
+
167
+ var airDatepicker = createCommonjsModule(function (module, exports) {
168
+ !function(e,t){module.exports=t();}(commonjsGlobal,(function(){return function(){var e={d:function(t,i){for(var s in i)e.o(i,s)&&!e.o(t,s)&&Object.defineProperty(t,s,{enumerable:!0,get:i[s]});},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}},t={};e.d(t,{default:function(){return B}});var i={days:"days",months:"months",years:"years",day:"day",month:"month",year:"year",eventChangeViewDate:"changeViewDate",eventChangeCurrentView:"changeCurrentView",eventChangeFocusDate:"changeFocusDate",eventChangeSelectedDate:"changeSelectedDate",eventChangeTime:"changeTime",eventChangeLastSelectedDate:"changeLastSelectedDate",actionSelectDate:"selectDate",actionUnselectDate:"unselectDate",cssClassWeekend:"-weekend-"},s={classes:"",inline:!1,locale:{days:["Воскресенье","Понедельник","Вторник","Среда","Четверг","Пятница","Суббота"],daysShort:["Вос","Пон","Вто","Сре","Чет","Пят","Суб"],daysMin:["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],months:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],monthsShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],today:"Сегодня",clear:"Очистить",dateFormat:"dd.MM.yyyy",timeFormat:"HH:mm",firstDay:1},startDate:new Date,firstDay:"",weekends:[6,0],dateFormat:"",altField:"",altFieldDateFormat:"T",toggleSelected:!0,keyboardNav:!0,selectedDates:!1,container:"",isMobile:!1,visible:!1,position:"bottom left",offset:12,view:i.days,minView:i.days,showOtherMonths:!0,selectOtherMonths:!0,moveToOtherMonthsOnSelect:!0,showOtherYears:!0,selectOtherYears:!0,moveToOtherYearsOnSelect:!0,minDate:"",maxDate:"",disableNavWhenOutOfRange:!0,multipleDates:!1,multipleDatesSeparator:", ",range:!1,dynamicRange:!0,buttons:!1,monthsField:"monthsShort",showEvent:"focus",autoClose:!1,prevHtml:'<svg><path d="M 17,12 l -5,5 l 5,5"></path></svg>',nextHtml:'<svg><path d="M 14,12 l 5,5 l -5,5"></path></svg>',navTitles:{days:"MMMM, <i>yyyy</i>",months:"yyyy",years:"yyyy1 - yyyy2"},timepicker:!1,onlyTimepicker:!1,dateTimeSeparator:" ",timeFormat:"",minHours:0,maxHours:24,minMinutes:0,maxMinutes:59,hoursStep:1,minutesStep:1,onSelect:!1,onChangeViewDate:!1,onChangeView:!1,onRenderCell:!1,onShow:!1,onHide:!1,onClickDayName:!1};function a(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document;return "string"==typeof e?t.querySelector(e):e}function n(){let{tagName:e="div",className:t="",innerHtml:i="",id:s="",attrs:a={}}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=document.createElement(e);return t&&n.classList.add(...t.split(" ")),s&&(n.id=s),i&&(n.innerHTML=i),a&&r(n,a),n}function r(e,t){for(let[i,s]of Object.entries(t))void 0!==s&&e.setAttribute(i,s);return e}function h(e){return new Date(e.getFullYear(),e.getMonth()+1,0).getDate()}function o(e){let t=e.getHours(),{hours:i,dayPeriod:s}=l(t);return {year:e.getFullYear(),month:e.getMonth(),fullMonth:e.getMonth()+1<10?"0"+(e.getMonth()+1):e.getMonth()+1,date:e.getDate(),fullDate:e.getDate()<10?"0"+e.getDate():e.getDate(),day:e.getDay(),hours:t,fullHours:d(t),hours12:i,dayPeriod:s,fullHours12:d(i),minutes:e.getMinutes(),fullMinutes:e.getMinutes()<10?"0"+e.getMinutes():e.getMinutes()}}function l(e){return {dayPeriod:e>11?"pm":"am",hours:e%12==0?12:e%12}}function d(e){return e<10?"0"+e:e}function c(e){let t=10*Math.floor(e.getFullYear()/10);return [t,t+9]}function u(){let e=[];for(var t=arguments.length,i=new Array(t),s=0;s<t;s++)i[s]=arguments[s];return i.forEach((t=>{if("object"==typeof t)for(let i in t)t[i]&&e.push(i);else t&&e.push(t);})),e.join(" ")}function p(e,t){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i.days;if(!e||!t)return !1;let a=o(e),n=o(t);return {[i.days]:a.date===n.date&&a.month===n.month&&a.year===n.year,[i.months]:a.month===n.month&&a.year===n.year,[i.years]:a.year===n.year}[s]}function m(e,t,i){let s=g(e,!1).getTime(),a=g(t,!1).getTime();return i?s>=a:s>a}function v(e,t){return !m(e,t,!0)}function g(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=new Date(e.getTime());return "boolean"!=typeof t||t||function(e){e.setHours(0,0,0,0);}(i),i}function D(e,t,i){e.length?e.forEach((e=>{e.addEventListener(t,i);})):e.addEventListener(t,i);}function y(e,t){return !(!e||e===document||e instanceof DocumentFragment)&&(e.matches(t)?e:y(e.parentNode,t))}function f(e,t,i){return e>i?i:e<t?t:e}function w(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),s=1;s<t;s++)i[s-1]=arguments[s];return i.filter((e=>e)).forEach((t=>{for(let[i,s]of Object.entries(t))if(void 0!==s&&"[object Object]"===s.toString()){let t=void 0!==e[i]?e[i].toString():void 0,a=s.toString(),n=Array.isArray(s)?[]:{};e[i]=e[i]?t!==a?n:e[i]:n,w(e[i],s);}else e[i]=s;})),e}function b(e){let t=e;return e instanceof Date||(t=new Date(e)),isNaN(t.getTime())&&(console.log(`Unable to convert value "${e}" to Date object`),t=!1),t}function k(e){let t="\\s|\\.|-|/|\\\\|,|\\$|\\!|\\?|:|;";return new RegExp("(^|>|"+t+")("+e+")($|<|"+t+")","g")}function $(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}class C{constructor(){let{type:e,date:t,dp:i,opts:s,body:a}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$(this,"focus",(()=>{this.$cell.classList.add("-focus-"),this.focused=!0;})),$(this,"removeFocus",(()=>{this.$cell.classList.remove("-focus-"),this.focused=!1;})),$(this,"select",(()=>{this.$cell.classList.add("-selected-"),this.selected=!0;})),$(this,"removeSelect",(()=>{this.$cell.classList.remove("-selected-","-range-from-","-range-to-"),this.selected=!1;})),$(this,"onChangeSelectedDate",(()=>{this.isDisabled||(this._handleSelectedStatus(),this.opts.range&&this._handleRangeStatus());})),$(this,"onChangeFocusDate",(e=>{if(!e)return void(this.focused&&this.removeFocus());let t=p(e,this.date,this.type);t?this.focus():!t&&this.focused&&this.removeFocus(),this.opts.range&&this._handleRangeStatus();})),$(this,"render",(()=>(this.$cell.innerHTML=this._getHtml(),this.$cell.adpCell=this,this.$cell))),this.type=e,this.singleType=this.type.slice(0,-1),this.date=t,this.dp=i,this.opts=s,this.body=a,this.customData=!1,this.init();}init(){let{range:e,onRenderCell:t}=this.opts;t&&(this.customData=t({date:this.date,cellType:this.singleType,datepicker:this.dp})),this._createElement(),this._bindDatepickerEvents(),this._handleInitialFocusStatus(),this.dp.hasSelectedDates&&(this._handleSelectedStatus(),e&&this._handleRangeStatus());}_bindDatepickerEvents(){this.dp.on(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.on(i.eventChangeFocusDate,this.onChangeFocusDate);}unbindDatepickerEvents(){this.dp.off(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.off(i.eventChangeFocusDate,this.onChangeFocusDate);}_createElement(){var e;let{year:t,month:i,date:s}=o(this.date),a=(null===(e=this.customData)||void 0===e?void 0:e.attrs)||{};this.$cell=n({className:this._getClassName(),attrs:{"data-year":t,"data-month":i,"data-date":s,...a}});}_getClassName(){var e,t;let s=new Date,{selectOtherMonths:a,selectOtherYears:n}=this.opts,{minDate:r,maxDate:h}=this.dp,{day:l}=o(this.date),d=this._isOutOfMinMaxRange(),c=null===(e=this.customData)||void 0===e?void 0:e.disabled,m=u("air-datepicker-cell",`-${this.singleType}-`,{"-current-":p(s,this.date,this.type),"-min-date-":r&&p(r,this.date,this.type),"-max-date-":h&&p(h,this.date,this.type)}),v="";switch(this.type){case i.days:v=u({"-weekend-":this.dp.isWeekend(l),"-other-month-":this.isOtherMonth,"-disabled-":this.isOtherMonth&&!a||d||c});break;case i.months:v=u({"-disabled-":d||c});break;case i.years:v=u({"-other-decade-":this.isOtherDecade,"-disabled-":d||this.isOtherDecade&&!n||c});}return u(m,v,null===(t=this.customData)||void 0===t?void 0:t.classes)}_getHtml(){var e;let{year:t,month:s,date:a}=o(this.date),{showOtherMonths:n,showOtherYears:r}=this.opts;if(null!==(e=this.customData)&&void 0!==e&&e.html)return this.customData.html;switch(this.type){case i.days:return !n&&this.isOtherMonth?"":a;case i.months:return this.dp.locale[this.opts.monthsField][s];case i.years:return !r&&this.isOtherDecade?"":t}}_isOutOfMinMaxRange(){let{minDate:e,maxDate:t}=this.dp,{type:s,date:a}=this,{month:n,year:r,date:h}=o(a),l=s===i.days,d=s===i.years,c=!!e&&new Date(r,d?e.getMonth():n,l?h:e.getDate()),u=!!t&&new Date(r,d?t.getMonth():n,l?h:t.getDate());return e&&t?v(c,e)||m(u,t):e?v(c,e):t?m(u,t):void 0}destroy(){this.unbindDatepickerEvents();}_handleRangeStatus(){let{rangeDateFrom:e,rangeDateTo:t}=this.dp,i=u({"-in-range-":e&&t&&(s=this.date,a=e,n=t,m(s,a)&&v(s,n)),"-range-from-":e&&p(this.date,e,this.type),"-range-to-":t&&p(this.date,t,this.type)});var s,a,n;this.$cell.classList.remove("-range-from-","-range-to-","-in-range-"),i&&this.$cell.classList.add(...i.split(" "));}_handleSelectedStatus(){let e=this.dp._checkIfDateIsSelected(this.date,this.type);e?this.select():!e&&this.selected&&this.removeSelect();}_handleInitialFocusStatus(){p(this.dp.focusDate,this.date,this.type)&&this.focus();}get isDisabled(){return this.$cell.matches(".-disabled-")}get isOtherMonth(){return this.dp.isOtherMonth(this.date)}get isOtherDecade(){return this.dp.isOtherDecade(this.date)}}function _(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}let M={[i.days]:`<div class="air-datepicker-body--day-names"></div><div class="air-datepicker-body--cells -${i.days}-"></div>`,[i.months]:`<div class="air-datepicker-body--cells -${i.months}-"></div>`,[i.years]:`<div class="air-datepicker-body--cells -${i.years}-"></div>`};const S=".air-datepicker-cell";class T{constructor(e){let{dp:t,type:s,opts:a}=e;_(this,"handleClick",(e=>{let t=e.target.closest(S).adpCell;if(t.isDisabled)return;if(!this.dp.isMinViewReached)return void this.dp.down();let i=this.dp._checkIfDateIsSelected(t.date,t.type);i?this.dp._handleAlreadySelectedDates(i,t.date):this.dp.selectDate(t.date);})),_(this,"handleDayNameClick",(e=>{let t=e.target.getAttribute("data-day-index");this.opts.onClickDayName({dayIndex:Number(t),datepicker:this.dp});})),_(this,"onChangeCurrentView",(e=>{e!==this.type?this.hide():(this.show(),this.render());})),_(this,"onMouseOverCell",(e=>{let t=y(e.target,S);this.dp.setFocusDate(!!t&&t.adpCell.date);})),_(this,"onMouseOutCell",(()=>{this.dp.setFocusDate(!1);})),_(this,"onClickBody",(e=>{let{onClickDayName:t}=this.opts,i=e.target;i.closest(S)&&this.handleClick(e),t&&i.closest(".air-datepicker-body--day-name")&&this.handleDayNameClick(e);})),_(this,"onMouseDown",(e=>{this.pressed=!0;let t=y(e.target,S),i=t&&t.adpCell;p(i.date,this.dp.rangeDateFrom)&&(this.rangeFromFocused=!0),p(i.date,this.dp.rangeDateTo)&&(this.rangeToFocused=!0);})),_(this,"onMouseMove",(e=>{if(!this.pressed||!this.dp.isMinViewReached)return;e.preventDefault();let t=y(e.target,S),i=t&&t.adpCell,{selectedDates:s,rangeDateTo:a,rangeDateFrom:n}=this.dp;if(!i||i.isDisabled)return;let{date:r}=i;if(2===s.length){if(this.rangeFromFocused&&!m(r,a)){let{hours:e,minutes:t}=o(n);r.setHours(e),r.setMinutes(t),this.dp.rangeDateFrom=r,this.dp.replaceDate(n,r);}if(this.rangeToFocused&&!v(r,n)){let{hours:e,minutes:t}=o(a);r.setHours(e),r.setMinutes(t),this.dp.rangeDateTo=r,this.dp.replaceDate(a,r);}}})),_(this,"onMouseUp",(()=>{this.pressed=!1,this.rangeFromFocused=!1,this.rangeToFocused=!1;})),_(this,"onChangeViewDate",((e,t)=>{if(!this.isVisible)return;let s=c(e),a=c(t);switch(this.dp.currentView){case i.days:if(p(e,t,i.months))return;break;case i.months:if(p(e,t,i.years))return;break;case i.years:if(s[0]===a[0]&&s[1]===a[1])return}this.render();})),_(this,"render",(()=>{this.destroyCells(),this._generateCells(),this.cells.forEach((e=>{this.$cells.appendChild(e.render());}));})),this.dp=t,this.type=s,this.opts=a,this.cells=[],this.$el="",this.pressed=!1,this.isVisible=!0,this.init();}init(){this._buildBaseHtml(),this.type===i.days&&this.renderDayNames(),this.render(),this._bindEvents(),this._bindDatepickerEvents();}_bindEvents(){let{range:e,dynamicRange:t}=this.opts;D(this.$el,"mouseover",this.onMouseOverCell),D(this.$el,"mouseout",this.onMouseOutCell),D(this.$el,"click",this.onClickBody),e&&t&&(D(this.$el,"mousedown",this.onMouseDown),D(this.$el,"mousemove",this.onMouseMove),D(window.document,"mouseup",this.onMouseUp));}_bindDatepickerEvents(){this.dp.on(i.eventChangeViewDate,this.onChangeViewDate),this.dp.on(i.eventChangeCurrentView,this.onChangeCurrentView);}_buildBaseHtml(){this.$el=n({className:`air-datepicker-body -${this.type}-`,innerHtml:M[this.type]}),this.$names=a(".air-datepicker-body--day-names",this.$el),this.$cells=a(".air-datepicker-body--cells",this.$el);}_getDayNamesHtml(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.dp.locale.firstDay,t="",s=this.dp.isWeekend,{onClickDayName:a}=this.opts,n=e,r=0;for(;r<7;){let e=n%7;t+=`<div class="${u("air-datepicker-body--day-name",{[i.cssClassWeekend]:s(e),"-clickable-":!!a})}" data-day-index='${e}'>${this.dp.locale.daysMin[e]}</div>`,r++,n++;}return t}renderDayNames(){this.$names.innerHTML=this._getDayNamesHtml();}_generateCell(e){let{type:t,dp:i,opts:s}=this;return new C({type:t,dp:i,opts:s,date:e,body:this})}_generateCells(){T.getDatesFunction(this.type)(this.dp,(e=>{this.cells.push(this._generateCell(e));}));}show(){this.isVisible=!0,this.$el.classList.remove("-hidden-");}hide(){this.isVisible=!1,this.$el.classList.add("-hidden-");}destroyCells(){this.cells.forEach((e=>e.destroy())),this.cells=[],this.$cells.innerHTML="";}destroy(){this.destroyCells(),this.dp.off(i.eventChangeViewDate,this.onChangeViewDate),this.dp.off(i.eventChangeCurrentView,this.onChangeCurrentView);}static getDaysDates(e,t){let{viewDate:i,locale:{firstDay:s}}=e,a=h(i),{year:n,month:r}=o(i),l=new Date(n,r,1),d=new Date(n,r,a),c=l.getDay()-s,u=6-d.getDay()+s;c=c<0?c+7:c,u=u>6?u-7:u;let p=function(e,t){let{year:i,month:s,date:a}=o(e);return new Date(i,s,a-t)}(l,c),m=a+c+u,v=p.getDate(),{year:g,month:D}=o(p),y=0;const f=[];for(;y<m;){let e=new Date(g,D,v+y);t&&t(e),f.push(e),y++;}return f}static getMonthsDates(e,t){let{year:i}=e.parsedViewDate,s=0,a=[];for(;s<12;){const e=new Date(i,s);a.push(e),t&&t(e),s++;}return a}static getYearsDates(e,t){let i=c(e.viewDate),s=i[0]-1,a=i[1]+1,n=s,r=[];for(;n<=a;){const e=new Date(n,0);r.push(e),t&&t(e),n++;}return r}static getDatesFunction(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i.days;return {[i.days]:T.getDaysDates,[i.months]:T.getMonthsDates,[i.years]:T.getYearsDates}[e]}}function F(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}class V{constructor(e){let{dp:t,opts:i}=e;F(this,"onClickNav",(e=>{let t=y(e.target,".air-datepicker-nav--action");if(!t)return;let i=t.dataset.action;this.dp[i]();})),F(this,"onChangeViewDate",(()=>{this.render(),this._resetNavStatus(),this.handleNavStatus();})),F(this,"onChangeCurrentView",(()=>{this.render(),this._resetNavStatus(),this.handleNavStatus();})),F(this,"onClickNavTitle",(()=>{this.dp.isFinalView||this.dp.up();})),F(this,"update",(()=>{let{prevHtml:e,nextHtml:t}=this.opts;this.$prev.innerHTML=e,this.$next.innerHTML=t,this._resetNavStatus(),this.render(),this.handleNavStatus();})),F(this,"renderDelay",(()=>{setTimeout(this.render);})),F(this,"render",(()=>{this.$title.innerHTML=this._getTitle(),function(e,t){for(let i in t)t[i]?e.classList.add(i):e.classList.remove(i);}(this.$title,{"-disabled-":this.dp.isFinalView});})),this.dp=t,this.opts=i,this.init();}init(){this._createElement(),this._buildBaseHtml(),this._defineDOM(),this.render(),this.handleNavStatus(),this._bindEvents(),this._bindDatepickerEvents();}_defineDOM(){this.$title=a(".air-datepicker-nav--title",this.$el),this.$prev=a('[data-action="prev"]',this.$el),this.$next=a('[data-action="next"]',this.$el);}_bindEvents(){this.$el.addEventListener("click",this.onClickNav),this.$title.addEventListener("click",this.onClickNavTitle);}_bindDatepickerEvents(){this.dp.on(i.eventChangeViewDate,this.onChangeViewDate),this.dp.on(i.eventChangeCurrentView,this.onChangeCurrentView),this.isNavIsFunction&&(this.dp.on(i.eventChangeSelectedDate,this.renderDelay),this.dp.opts.timepicker&&this.dp.on(i.eventChangeTime,this.render));}destroy(){this.dp.off(i.eventChangeViewDate,this.onChangeViewDate),this.dp.off(i.eventChangeCurrentView,this.onChangeCurrentView),this.isNavIsFunction&&(this.dp.off(i.eventChangeSelectedDate,this.renderDelay),this.dp.opts.timepicker&&this.dp.off(i.eventChangeTime,this.render));}_createElement(){this.$el=n({tagName:"nav",className:"air-datepicker-nav"});}_getTitle(){let{dp:e,opts:t}=this,i=t.navTitles[e.currentView];return "function"==typeof i?i(e):e.formatDate(e.viewDate,i)}handleNavStatus(){let{disableNavWhenOutOfRange:e}=this.opts,{minDate:t,maxDate:s}=this.dp;if(!t&&!s||!e)return;let{year:a,month:n}=this.dp.parsedViewDate,r=!!t&&o(t),h=!!s&&o(s);switch(this.dp.currentView){case i.days:t&&r.month>=n&&r.year>=a&&this._disableNav("prev"),s&&h.month<=n&&h.year<=a&&this._disableNav("next");break;case i.months:t&&r.year>=a&&this._disableNav("prev"),s&&h.year<=a&&this._disableNav("next");break;case i.years:{let e=c(this.dp.viewDate);t&&r.year>=e[0]&&this._disableNav("prev"),s&&h.year<=e[1]&&this._disableNav("next");break}}}_disableNav(e){a('[data-action="'+e+'"]',this.$el).classList.add("-disabled-");}_resetNavStatus(){!function(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),s=1;s<t;s++)i[s-1]=arguments[s];e.length?e.forEach((e=>{e.classList.remove(...i);})):e.classList.remove(...i);}(this.$el.querySelectorAll(".air-datepicker-nav--action"),"-disabled-");}_buildBaseHtml(){let{prevHtml:e,nextHtml:t}=this.opts;this.$el.innerHTML=`<div class="air-datepicker-nav--action" data-action="prev">${e}</div><div class="air-datepicker-nav--title"></div><div class="air-datepicker-nav--action" data-action="next">${t}</div>`;}get isNavIsFunction(){let{navTitles:e}=this.opts;return Object.keys(e).find((t=>"function"==typeof e[t]))}}var x={today:{content:e=>e.locale.today,onClick:e=>e.setViewDate(new Date)},clear:{content:e=>e.locale.clear,onClick:e=>e.clear()}};class H{constructor(e){let{dp:t,opts:i}=e;this.dp=t,this.opts=i,this.init();}init(){this.createElement(),this.render();}createElement(){this.$el=n({className:"air-datepicker-buttons"});}destroy(){this.$el.parentNode.removeChild(this.$el);}clearHtml(){return this.$el.innerHTML="",this}generateButtons(){let{buttons:e}=this.opts;Array.isArray(e)||(e=[e]),e.forEach((e=>{let t=e;"string"==typeof e&&x[e]&&(t=x[e]);let i=this.createButton(t);t.onClick&&this.attachEventToButton(i,t.onClick),this.$el.appendChild(i);}));}attachEventToButton(e,t){e.addEventListener("click",(()=>{t(this.dp);}));}createButton(e){let{content:t,className:i,tagName:s="button",attrs:a={}}=e;return n({tagName:s,innerHtml:`<span tabindex='-1'>${"function"==typeof t?t(this.dp):t}</span>`,className:u("air-datepicker-button",i),attrs:a})}render(){this.generateButtons();}}function E(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}class L{constructor(){let{opts:e,dp:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};E(this,"toggleTimepickerIsActive",(e=>{this.dp.timepickerIsActive=e;})),E(this,"onChangeSelectedDate",(e=>{let{date:t,updateTime:i=!1}=e;t&&(this.setMinMaxTime(t),this.setCurrentTime(!!i&&t),this.addTimeToDate(t));})),E(this,"onChangeLastSelectedDate",(e=>{e&&(this.setTime(e),this.render());})),E(this,"onChangeInputRange",(e=>{let t=e.target;this[t.getAttribute("name")]=t.value,this.updateText(),this.dp.trigger(i.eventChangeTime,{hours:this.hours,minutes:this.minutes});})),E(this,"onMouseEnterLeave",(e=>{let t=e.target.getAttribute("name"),i=this.$minutesText;"hours"===t&&(i=this.$hoursText),i.classList.toggle("-focus-");})),E(this,"onFocus",(()=>{this.toggleTimepickerIsActive(!0);})),E(this,"onBlur",(()=>{this.toggleTimepickerIsActive(!1);})),this.opts=e,this.dp=t;let{timeFormat:s}=this.dp.locale;s&&(s.match(k("h"))||s.match(k("hh")))&&(this.ampm=!0),this.init();}init(){this.setTime(this.dp.lastSelectedDate||this.dp.viewDate),this.createElement(),this.buildHtml(),this.defineDOM(),this.render(),this.bindDatepickerEvents(),this.bindDOMEvents();}bindDatepickerEvents(){this.dp.on(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.on(i.eventChangeLastSelectedDate,this.onChangeLastSelectedDate);}bindDOMEvents(){let e="input";navigator.userAgent.match(/trident/gi)&&(e="change"),D(this.$ranges,e,this.onChangeInputRange),D(this.$ranges,"mouseenter",this.onMouseEnterLeave),D(this.$ranges,"mouseleave",this.onMouseEnterLeave),D(this.$ranges,"focus",this.onFocus),D(this.$ranges,"mousedown",this.onFocus),D(this.$ranges,"blur",this.onBlur);}createElement(){this.$el=n({className:u("air-datepicker-time",{"-am-pm-":this.dp.ampm})});}destroy(){this.dp.off(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.off(i.eventChangeLastSelectedDate,this.onChangeLastSelectedDate),this.$el.parentNode.removeChild(this.$el);}buildHtml(){let{ampm:e,hours:t,displayHours:i,minutes:s,minHours:a,minMinutes:n,maxHours:r,maxMinutes:h,dayPeriod:o,opts:{hoursStep:l,minutesStep:c}}=this;this.$el.innerHTML=`<div class="air-datepicker-time--current"> <span class="air-datepicker-time--current-hours">${d(i)}</span> <span class="air-datepicker-time--current-colon">:</span> <span class="air-datepicker-time--current-minutes">${d(s)}</span> `+(e?`<span class='air-datepicker-time--current-ampm'>${o}</span>`:"")+'</div><div class="air-datepicker-time--sliders"> <div class="air-datepicker-time--row">'+` <input type="range" name="hours" value="${t}" min="${a}" max="${r}" step="${l}"/> </div> <div class="air-datepicker-time--row">`+` <input type="range" name="minutes" value="${s}" min="${n}" max="${h}" step="${c}"/> </div></div>`;}defineDOM(){let e=e=>a(e,this.$el);this.$ranges=this.$el.querySelectorAll('[type="range"]'),this.$hours=e('[name="hours"]'),this.$minutes=e('[name="minutes"]'),this.$hoursText=e(".air-datepicker-time--current-hours"),this.$minutesText=e(".air-datepicker-time--current-minutes"),this.$ampm=e(".air-datepicker-time--current-ampm");}setTime(e){this.setMinMaxTime(e),this.setCurrentTime(e);}addTimeToDate(e){e&&(e.setHours(this.hours),e.setMinutes(this.minutes));}setMinMaxTime(e){if(this.setMinMaxTimeFromOptions(),e){let{minDate:t,maxDate:i}=this.dp;t&&p(e,t)&&this.setMinTimeFromMinDate(t),i&&p(e,i)&&this.setMaxTimeFromMaxDate(i);}}setCurrentTime(e){let{hours:t,minutes:i}=e?o(e):this;this.hours=f(t,this.minHours,this.maxHours),this.minutes=f(i,this.minMinutes,this.maxMinutes);}setMinMaxTimeFromOptions(){let{minHours:e,minMinutes:t,maxHours:i,maxMinutes:s}=this.opts;this.minHours=f(e,0,23),this.minMinutes=f(t,0,59),this.maxHours=f(i,0,23),this.maxMinutes=f(s,0,59);}setMinTimeFromMinDate(e){let{lastSelectedDate:t}=this.dp;this.minHours=e.getHours(),t&&t.getHours()>e.getHours()?this.minMinutes=this.opts.minMinutes:this.minMinutes=e.getMinutes();}setMaxTimeFromMaxDate(e){let{lastSelectedDate:t}=this.dp;this.maxHours=e.getHours(),t&&t.getHours()<e.getHours()?this.maxMinutes=this.opts.maxMinutes:this.maxMinutes=e.getMinutes();}updateSliders(){r(this.$hours,{min:this.minHours,max:this.maxHours}).value=this.hours,r(this.$minutes,{min:this.minMinutes,max:this.maxMinutes}).value=this.minutes;}updateText(){this.$hoursText.innerHTML=d(this.displayHours),this.$minutesText.innerHTML=d(this.minutes),this.ampm&&(this.$ampm.innerHTML=this.dayPeriod);}set hours(e){this._hours=e;let{hours:t,dayPeriod:i}=l(e);this.displayHours=this.ampm?t:e,this.dayPeriod=i;}get hours(){return this._hours}render(){this.updateSliders(),this.updateText();}}function O(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}class A{constructor(e){let{dp:t,opts:i}=e;O(this,"pressedKeys",new Set),O(this,"hotKeys",new Map([[[["Control","ArrowRight"],["Control","ArrowUp"]],e=>e.month++],[[["Control","ArrowLeft"],["Control","ArrowDown"]],e=>e.month--],[[["Shift","ArrowRight"],["Shift","ArrowUp"]],e=>e.year++],[[["Shift","ArrowLeft"],["Shift","ArrowDown"]],e=>e.year--],[[["Alt","ArrowRight"],["Alt","ArrowUp"]],e=>e.year+=10],[[["Alt","ArrowLeft"],["Alt","ArrowDown"]],e=>e.year-=10],[["Control","Shift","ArrowUp"],(e,t)=>t.up()]])),O(this,"handleHotKey",(e=>{let t=this.hotKeys.get(e),i=o(this.getInitialFocusDate());t(i,this.dp);let{year:s,month:a,date:n}=i,r=h(new Date(s,a));r<n&&(n=r);let l=this.dp.getClampedDate(new Date(s,a,n));this.dp.setFocusDate(l,{viewDateTransition:!0});})),O(this,"isHotKeyPressed",(()=>{let e=!1,t=this.pressedKeys.size,i=e=>this.pressedKeys.has(e);for(let[s]of this.hotKeys){if(e)break;if(Array.isArray(s[0]))s.forEach((a=>{e||t!==a.length||(e=a.every(i)&&s);}));else {if(t!==s.length)continue;e=s.every(i)&&s;}}return e})),O(this,"isArrow",(e=>e>=37&&e<=40)),O(this,"onKeyDown",(e=>{let{key:t,which:i}=e,{dp:s,dp:{focusDate:a},opts:n}=this;this.registerKey(t);let r=this.isHotKeyPressed();if(r)return e.preventDefault(),void this.handleHotKey(r);if(this.isArrow(i))return e.preventDefault(),void this.focusNextCell(t);if("Enter"===t){if(s.currentView!==n.minView)return void s.down();if(a){let e=s._checkIfDateIsSelected(a);return void(e?s._handleAlreadySelectedDates(e,a):s.selectDate(a))}}"Escape"===t&&this.dp.hide();})),O(this,"onKeyUp",(e=>{this.removeKey(e.key);})),this.dp=t,this.opts=i,this.init();}init(){this.bindKeyboardEvents();}bindKeyboardEvents(){let{$el:e}=this.dp;e.addEventListener("keydown",this.onKeyDown),e.addEventListener("keyup",this.onKeyUp);}destroy(){let{$el:e}=this.dp;e.removeEventListener("keydown",this.onKeyDown),e.removeEventListener("keyup",this.onKeyUp),this.hotKeys=null,this.pressedKeys=null;}getInitialFocusDate(){let{focusDate:e,currentView:t,selectedDates:s,parsedViewDate:{year:a,month:n}}=this.dp,r=e||s[s.length-1];if(!r)switch(t){case i.days:r=new Date(a,n,(new Date).getDate());break;case i.months:r=new Date(a,n,1);break;case i.years:r=new Date(a,0,1);}return r}focusNextCell(e){let t=this.getInitialFocusDate(),{currentView:s}=this.dp,{days:a,months:n,years:r}=i,h=o(t),l=h.year,d=h.month,c=h.date;switch(e){case"ArrowLeft":s===a&&(c-=1),s===n&&(d-=1),s===r&&(l-=1);break;case"ArrowUp":s===a&&(c-=7),s===n&&(d-=3),s===r&&(l-=4);break;case"ArrowRight":s===a&&(c+=1),s===n&&(d+=1),s===r&&(l+=1);break;case"ArrowDown":s===a&&(c+=7),s===n&&(d+=3),s===r&&(l+=4);}let u=this.dp.getClampedDate(new Date(l,d,c));this.dp.setFocusDate(u,{viewDateTransition:!0});}registerKey(e){this.pressedKeys.add(e);}removeKey(e){this.pressedKeys.delete(e);}}let N={on(e,t){this.__events||(this.__events={}),this.__events[e]?this.__events[e].push(t):this.__events[e]=[t];},off(e,t){this.__events&&this.__events[e]&&(this.__events[e]=this.__events[e].filter((e=>e!==t)));},removeAllEvents(){this.__events={};},trigger(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),s=1;s<t;s++)i[s-1]=arguments[s];this.__events&&this.__events[e]&&this.__events[e].forEach((e=>{e(...i);}));}};function I(e,t,i){return (t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return "symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}let P="",j="",R=!1;class B{static buildGlobalContainer(e){R=!0,P=n({className:e,id:e}),a("body").appendChild(P);}constructor(e,t){var r=this;if(I(this,"viewIndexes",[i.days,i.months,i.years]),I(this,"next",(()=>{let{year:e,month:t}=this.parsedViewDate;switch(this.currentView){case i.days:this.setViewDate(new Date(e,t+1,1));break;case i.months:this.setViewDate(new Date(e+1,t,1));break;case i.years:this.setViewDate(new Date(e+10,0,1));}})),I(this,"prev",(()=>{let{year:e,month:t}=this.parsedViewDate;switch(this.currentView){case i.days:this.setViewDate(new Date(e,t-1,1));break;case i.months:this.setViewDate(new Date(e-1,t,1));break;case i.years:this.setViewDate(new Date(e-10,0,1));}})),I(this,"_finishHide",(()=>{this.hideAnimation=!1,this._destroyComponents(),this.$container.removeChild(this.$datepicker);})),I(this,"setPosition",(function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if("function"==typeof(e=e||r.opts.position))return void(r.customHide=e({$datepicker:r.$datepicker,$target:r.$el,$pointer:r.$pointer,isViewChange:t,done:r._finishHide}));let i,s,{isMobile:a}=r.opts,n=r.$el.getBoundingClientRect(),h=r.$el.getBoundingClientRect(),o=r.$datepicker.offsetParent,l=r.$el.offsetParent,d=r.$datepicker.getBoundingClientRect(),c=e.split(" "),u=window.scrollY,p=window.scrollX,m=r.opts.offset,v=c[0],g=c[1];if(a)r.$datepicker.style.cssText="left: 50%; top: 50%";else {if(o===l&&o!==document.body&&(h={top:r.$el.offsetTop,left:r.$el.offsetLeft,width:n.width,height:r.$el.offsetHeight},u=0,p=0),o!==l&&o!==document.body){let e=o.getBoundingClientRect();h={top:n.top-e.top,left:n.left-e.left,width:n.width,height:n.height},u=0,p=0;}switch(v){case"top":i=h.top-d.height-m;break;case"right":s=h.left+h.width+m;break;case"bottom":i=h.top+h.height+m;break;case"left":s=h.left-d.width-m;}switch(g){case"top":i=h.top;break;case"right":s=h.left+h.width-d.width;break;case"bottom":i=h.top+h.height-d.height;break;case"left":s=h.left;break;case"center":/left|right/.test(v)?i=h.top+h.height/2-d.height/2:s=h.left+h.width/2-d.width/2;}r.$datepicker.style.cssText=`left: ${s+p}px; top: ${i+u}px`;}})),I(this,"_setInputValue",(()=>{let{opts:e,$altField:t,locale:{dateFormat:i}}=this,{altFieldDateFormat:s,altField:a}=e;a&&t&&(t.value=this._getInputValue(s)),this.$el.value=this._getInputValue(i);})),I(this,"_getInputValue",(e=>{let{selectedDates:t,opts:i}=this,{multipleDates:s,multipleDatesSeparator:a}=i;if(!t.length)return "";let n="function"==typeof e,r=n?e(s?t:t[0]):t.map((t=>this.formatDate(t,e)));return r=n?r:r.join(a),r})),I(this,"_checkIfDateIsSelected",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i.days,s=!1;return r.selectedDates.some((i=>{let a=p(e,i,t);return s=a&&i,a})),s})),I(this,"_scheduleCallAfterTransition",(e=>{this._cancelScheduledCall(),e&&e(!1),this._onTransitionEnd=()=>{e&&e(!0);},this.$datepicker.addEventListener("transitionend",this._onTransitionEnd,{once:!0});})),I(this,"_cancelScheduledCall",(()=>{this.$datepicker.removeEventListener("transitionend",this._onTransitionEnd);})),I(this,"setViewDate",(e=>{if(!((e=b(e))instanceof Date))return;if(p(e,this.viewDate))return;let t=this.viewDate;this.viewDate=e;let{onChangeViewDate:s}=this.opts;if(s){let{month:e,year:t}=this.parsedViewDate;s({month:e,year:t,decade:this.curDecade});}this.trigger(i.eventChangeViewDate,e,t);})),I(this,"setFocusDate",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};(!e||(e=b(e))instanceof Date)&&(r.focusDate=e,r.opts.range&&e&&r._handleRangeOnFocus(),r.trigger(i.eventChangeFocusDate,e,t));})),I(this,"setCurrentView",(e=>{if(this.viewIndexes.includes(e)){if(this.currentView=e,this.elIsInput&&this.visible&&this.setPosition(void 0,!0),this.trigger(i.eventChangeCurrentView,e),!this.views[e]){let t=this.views[e]=new T({dp:this,opts:this.opts,type:e});this.shouldUpdateDOM&&this.$content.appendChild(t.$el);}this.opts.onChangeView&&this.opts.onChangeView(e);}})),I(this,"_updateLastSelectedDate",(e=>{this.lastSelectedDate=e,this.trigger(i.eventChangeLastSelectedDate,e);})),I(this,"destroy",(()=>{let{showEvent:e,isMobile:t}=this.opts,i=this.$datepicker.parentNode;i&&i.removeChild(this.$datepicker),this.$el.removeEventListener(e,this._onFocus),this.$el.removeEventListener("blur",this._onBlur),window.removeEventListener("resize",this._onResize),t&&this._removeMobileAttributes(),this.keyboardNav&&this.keyboardNav.destroy(),this.views=null,this.nav=null,this.$datepicker=null,this.opts=null,this.$customContainer=null,this.viewDate=null,this.focusDate=null,this.selectedDates=null,this.rangeDateFrom=null,this.rangeDateTo=null;})),I(this,"update",(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=w({},r.opts);w(r.opts,e);let{timepicker:s,buttons:a,range:n,selectedDates:h,isMobile:o}=r.opts,l=r.visible||r.treatAsInline;r._createMinMaxDates(),r._limitViewDateByMaxMinDates(),r._handleLocale(),!t.selectedDates&&h&&r.selectDate(h),e.view&&r.setCurrentView(e.view),r._setInputValue(),t.range&&!n?(r.rangeDateTo=!1,r.rangeDateFrom=!1):!t.range&&n&&r.selectedDates.length&&(r.rangeDateFrom=r.selectedDates[0],r.rangeDateTo=r.selectedDates[1]),t.timepicker&&!s?(l&&r.timepicker.destroy(),r.timepicker=!1,r.$timepicker.parentNode.removeChild(r.$timepicker)):!t.timepicker&&s&&r._addTimepicker(),!t.buttons&&a?r._addButtons():t.buttons&&!a?(r.buttons.destroy(),r.$buttons.parentNode.removeChild(r.$buttons)):l&&t.buttons&&a&&r.buttons.clearHtml().render(),!t.isMobile&&o?(r.treatAsInline||j||r._createMobileOverlay(),r._addMobileAttributes(),r.visible&&r._showMobileOverlay()):t.isMobile&&!o&&(r._removeMobileAttributes(),r.visible&&(j.classList.remove("-active-"),"function"!=typeof r.opts.position&&r.setPosition())),l&&(r.nav.update(),r.views[r.currentView].render(),r.currentView===i.days&&r.views[r.currentView].renderDayNames());})),I(this,"isOtherMonth",(e=>{let{month:t}=o(e);return t!==this.parsedViewDate.month})),I(this,"isOtherYear",(e=>{let{year:t}=o(e);return t!==this.parsedViewDate.year})),I(this,"isOtherDecade",(e=>{let{year:t}=o(e),[i,s]=c(this.viewDate);return t<i||t>s})),I(this,"_onChangeSelectedDate",(e=>{let{silent:t}=e;setTimeout((()=>{this._setInputValue(),this.opts.onSelect&&!t&&this._triggerOnSelect();}));})),I(this,"_onChangeFocusedDate",(function(e){let{viewDateTransition:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e)return;let i=!1;t&&(i=r.isOtherMonth(e)||r.isOtherYear(e)||r.isOtherDecade(e)),i&&r.setViewDate(e),r.opts.onFocus&&r.opts.onFocus({datepicker:r,date:e});})),I(this,"_onChangeTime",(e=>{let{hours:t,minutes:i}=e,s=new Date,{lastSelectedDate:a,opts:{onSelect:n}}=this,r=a;a||(r=s);let h=this.getCell(r,this.currentViewSingular),o=h&&h.adpCell;o&&o.isDisabled||(r.setHours(t),r.setMinutes(i),a?(this._setInputValue(),n&&this._triggerOnSelect()):this.selectDate(r));})),I(this,"_onFocus",(e=>{this.visible||this.show();})),I(this,"_onBlur",(e=>{this.inFocus||!this.visible||this.opts.isMobile||this.hide();})),I(this,"_onMouseDown",(e=>{this.inFocus=!0;})),I(this,"_onMouseUp",(e=>{this.inFocus=!1,this.$el.focus();})),I(this,"_onResize",(()=>{this.visible&&"function"!=typeof this.opts.position&&this.setPosition();})),I(this,"_onClickOverlay",(()=>{this.visible&&this.hide();})),I(this,"getViewDates",(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i.days;return T.getDatesFunction(e)(r)})),I(this,"isWeekend",(e=>this.opts.weekends.includes(e))),I(this,"getClampedDate",(e=>{let{minDate:t,maxDate:i}=this,s=e;return i&&m(e,i)?s=i:t&&v(e,t)&&(s=t),s})),this.$el=a(e),!this.$el)return;this.$datepicker=n({className:"air-datepicker"}),this.opts=w({},s,t),this.$customContainer=!!this.opts.container&&a(this.opts.container),this.$altField=a(this.opts.altField||!1);let{view:h,startDate:l}=this.opts;l||(this.opts.startDate=new Date),"INPUT"===this.$el.nodeName&&(this.elIsInput=!0),this.inited=!1,this.visible=!1,this.viewDate=b(this.opts.startDate),this.focusDate=!1,this.initialReadonly=this.$el.getAttribute("readonly"),this.customHide=!1,this.currentView=h,this.selectedDates=[],this.views={},this.keys=[],this.rangeDateFrom="",this.rangeDateTo="",this.timepickerIsActive=!1,this.treatAsInline=this.opts.inline||!this.elIsInput,this.init();}init(){let{opts:e,treatAsInline:t,opts:{inline:i,isMobile:s,selectedDates:n,keyboardNav:r,onlyTimepicker:h}}=this,o=a("body");(!R||R&&P&&!o.contains(P))&&!i&&this.elIsInput&&!this.$customContainer&&B.buildGlobalContainer(B.defaultGlobalContainerId),!s||j||t||this._createMobileOverlay(),this._handleLocale(),this._bindSubEvents(),this._createMinMaxDates(),this._limitViewDateByMaxMinDates(),this.elIsInput&&(i||this._bindEvents(),r&&!h&&(this.keyboardNav=new A({dp:this,opts:e}))),n&&this.selectDate(n,{silent:!0}),this.opts.visible&&!t&&this.show(),s&&!t&&this.$el.setAttribute("readonly",!0),t&&this._createComponents();}_createMobileOverlay(){j=n({className:"air-datepicker-overlay"}),P.appendChild(j);}_createComponents(){let{opts:e,treatAsInline:t,opts:{inline:i,buttons:s,timepicker:a,position:n,classes:r,onlyTimepicker:h,isMobile:o}}=this;this._buildBaseHtml(),this.elIsInput&&(i||this._setPositionClasses(n)),!i&&this.elIsInput||this.$datepicker.classList.add("-inline-"),r&&this.$datepicker.classList.add(...r.split(" ")),h&&this.$datepicker.classList.add("-only-timepicker-"),o&&!t&&this._addMobileAttributes(),this.views[this.currentView]=new T({dp:this,type:this.currentView,opts:e}),this.nav=new V({dp:this,opts:e}),a&&this._addTimepicker(),s&&this._addButtons(),this.$content.appendChild(this.views[this.currentView].$el),this.$nav.appendChild(this.nav.$el);}_destroyComponents(){for(let e in this.views)this.views[e].destroy();this.views={},this.nav.destroy(),this.timepicker&&this.timepicker.destroy();}_addMobileAttributes(){j.addEventListener("click",this._onClickOverlay),this.$datepicker.classList.add("-is-mobile-"),this.$el.setAttribute("readonly",!0);}_removeMobileAttributes(){j.removeEventListener("click",this._onClickOverlay),this.$datepicker.classList.remove("-is-mobile-"),this.initialReadonly||""===this.initialReadonly||this.$el.removeAttribute("readonly");}_createMinMaxDates(){let{minDate:e,maxDate:t}=this.opts;this.minDate=!!e&&b(e),this.maxDate=!!t&&b(t);}_addTimepicker(){this.$timepicker=n({className:"air-datepicker--time"}),this.$datepicker.appendChild(this.$timepicker),this.timepicker=new L({dp:this,opts:this.opts}),this.$timepicker.appendChild(this.timepicker.$el);}_addButtons(){this.$buttons=n({className:"air-datepicker--buttons"}),this.$datepicker.appendChild(this.$buttons),this.buttons=new H({dp:this,opts:this.opts}),this.$buttons.appendChild(this.buttons.$el);}_bindSubEvents(){this.on(i.eventChangeSelectedDate,this._onChangeSelectedDate),this.on(i.eventChangeFocusDate,this._onChangeFocusedDate),this.on(i.eventChangeTime,this._onChangeTime);}_buildBaseHtml(){let{inline:e}=this.opts;var t,i;this.elIsInput?e?(t=this.$datepicker,(i=this.$el).parentNode.insertBefore(t,i.nextSibling)):this.$container.appendChild(this.$datepicker):this.$el.appendChild(this.$datepicker),this.$datepicker.innerHTML='<i class="air-datepicker--pointer"></i><div class="air-datepicker--navigation"></div><div class="air-datepicker--content"></div>',this.$content=a(".air-datepicker--content",this.$datepicker),this.$pointer=a(".air-datepicker--pointer",this.$datepicker),this.$nav=a(".air-datepicker--navigation",this.$datepicker);}_handleLocale(){let{locale:e,dateFormat:t,firstDay:i,timepicker:s,onlyTimepicker:a,timeFormat:n,dateTimeSeparator:r}=this.opts;var h;this.locale=(h=e,JSON.parse(JSON.stringify(h))),t&&(this.locale.dateFormat=t),void 0!==n&&""!==n&&(this.locale.timeFormat=n);let{timeFormat:o}=this.locale;if(""!==i&&(this.locale.firstDay=i),s&&"function"!=typeof t){let e=o?r:"";this.locale.dateFormat=[this.locale.dateFormat,o||""].join(e);}a&&"function"!=typeof t&&(this.locale.dateFormat=this.locale.timeFormat);}_setPositionClasses(e){if("function"==typeof e)return void this.$datepicker.classList.add("-custom-position-");let t=(e=e.split(" "))[0],i=`air-datepicker -${t}-${e[1]}- -from-${t}-`;this.$datepicker.classList.add(...i.split(" "));}_bindEvents(){this.$el.addEventListener(this.opts.showEvent,this._onFocus),this.$el.addEventListener("blur",this._onBlur),this.$datepicker.addEventListener("mousedown",this._onMouseDown),this.$datepicker.addEventListener("mouseup",this._onMouseUp),window.addEventListener("resize",this._onResize);}_limitViewDateByMaxMinDates(){let{viewDate:e,minDate:t,maxDate:i}=this;i&&m(e,i)&&this.setViewDate(i),t&&v(e,t)&&this.setViewDate(t);}formatDate(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.viewDate,t=arguments.length>1?arguments[1]:void 0;if(e=b(e),!(e instanceof Date))return;let i=t,s=this.locale,a=o(e),n=a.dayPeriod,r=c(e),h=B.replacer,l={T:e.getTime(),m:a.minutes,mm:a.fullMinutes,h:a.hours12,hh:a.fullHours12,H:a.hours,HH:a.fullHours,aa:n,AA:n.toUpperCase(),E:s.daysShort[a.day],EEEE:s.days[a.day],d:a.date,dd:a.fullDate,M:a.month+1,MM:a.fullMonth,MMM:s.monthsShort[a.month],MMMM:s.months[a.month],yy:a.year.toString().slice(-2),yyyy:a.year,yyyy1:r[0],yyyy2:r[1]};for(let[e,t]of Object.entries(l))i=h(i,k(e),t);return i}down(e){this._handleUpDownActions(e,"down");}up(e){this._handleUpDownActions(e,"up");}selectDate(e){let t,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{currentView:a,parsedViewDate:n,selectedDates:r}=this,{updateTime:h}=s,{moveToOtherMonthsOnSelect:o,moveToOtherYearsOnSelect:l,multipleDates:d,range:c,autoClose:u,onBeforeSelect:p}=this.opts,v=r.length;if(Array.isArray(e))return e.forEach((e=>{this.selectDate(e,s);})),new Promise((e=>{setTimeout(e);}));if((e=b(e))instanceof Date){if(p&&!p({date:e,datepicker:this}))return Promise.resolve();if(a===i.days&&e.getMonth()!==n.month&&o&&(t=new Date(e.getFullYear(),e.getMonth(),1)),a===i.years&&e.getFullYear()!==n.year&&l&&(t=new Date(e.getFullYear(),0,1)),t&&this.setViewDate(t),d&&!c){if(v===d)return;this._checkIfDateIsSelected(e)||r.push(e);}else if(c)switch(v){case 1:r.push(e),this.rangeDateTo||(this.rangeDateTo=e),m(this.rangeDateFrom,this.rangeDateTo)&&(this.rangeDateTo=this.rangeDateFrom,this.rangeDateFrom=e),this.selectedDates=[this.rangeDateFrom,this.rangeDateTo];break;case 2:this.selectedDates=[e],this.rangeDateFrom=e,this.rangeDateTo="";break;default:this.selectedDates=[e],this.rangeDateFrom=e;}else this.selectedDates=[e];return this.trigger(i.eventChangeSelectedDate,{action:i.actionSelectDate,silent:null==s?void 0:s.silent,date:e,updateTime:h}),this._updateLastSelectedDate(e),u&&!this.timepickerIsActive&&this.visible&&(d||c?c&&1===v&&this.hide():this.hide()),new Promise((e=>{setTimeout(e);}))}}unselectDate(e){let t=this.selectedDates,s=this;if((e=b(e))instanceof Date)return t.some(((a,n)=>{if(p(a,e))return t.splice(n,1),s.selectedDates.length?s._updateLastSelectedDate(s.selectedDates[s.selectedDates.length-1]):(s.rangeDateFrom="",s.rangeDateTo="",s._updateLastSelectedDate(!1)),this.trigger(i.eventChangeSelectedDate,{action:i.actionUnselectDate,date:e}),!0}))}replaceDate(e,t){let s=this.selectedDates.find((t=>p(t,e,this.currentView))),a=this.selectedDates.indexOf(s);a<0||p(this.selectedDates[a],t,this.currentView)||(this.selectedDates[a]=t,this.trigger(i.eventChangeSelectedDate,{action:i.actionSelectDate,date:t,updateTime:!0}),this._updateLastSelectedDate(t));}clear(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.selectedDates=[],this.rangeDateFrom=!1,this.rangeDateTo=!1,this.lastSelectedDate=!1,this.trigger(i.eventChangeSelectedDate,{action:i.actionUnselectDate,silent:e.silent}),new Promise((e=>{setTimeout(e);}))}show(){let{onShow:e,isMobile:t}=this.opts;this._cancelScheduledCall(),this.visible||this.hideAnimation||this._createComponents(),this.setPosition(this.opts.position),this.$datepicker.classList.add("-active-"),this.visible=!0,e&&this._scheduleCallAfterTransition(e),t&&this._showMobileOverlay();}hide(){let{onHide:e,isMobile:t}=this.opts,i=this._hasTransition();this.visible=!1,this.hideAnimation=!0,this.$datepicker.classList.remove("-active-"),this.customHide&&this.customHide(),this.elIsInput&&this.$el.blur(),this._scheduleCallAfterTransition((t=>{!this.customHide&&(t&&i||!t&&!i)&&this._finishHide(),e&&e(t);})),t&&j.classList.remove("-active-");}_triggerOnSelect(){let e=[],t=[],{selectedDates:i,locale:s,opts:{onSelect:a,multipleDates:n,range:r}}=this,h=n||r,o="function"==typeof s.dateFormat;i.length&&(e=i.map(g),t=o?n?s.dateFormat(e):e.map((e=>s.dateFormat(e))):e.map((e=>this.formatDate(e,s.dateFormat)))),a({date:h?e:e[0],formattedDate:h?t:t[0],datepicker:this});}_handleAlreadySelectedDates(e,t){const{range:i,toggleSelected:s}=this.opts;let a="function"==typeof s?s({datepicker:this,date:t}):s;i&&(a||2!==this.selectedDates.length&&this.selectDate(t)),a?this.unselectDate(t):this._updateLastSelectedDate(e);}_handleUpDownActions(e,t){if(!((e=b(e||this.focusDate||this.viewDate))instanceof Date))return;let i="up"===t?this.viewIndex+1:this.viewIndex-1;i>2&&(i=2),i<0&&(i=0),this.setViewDate(new Date(e.getFullYear(),e.getMonth(),1)),this.setCurrentView(this.viewIndexes[i]);}_handleRangeOnFocus(){1===this.selectedDates.length&&(m(this.selectedDates[0],this.focusDate)?(this.rangeDateTo=this.selectedDates[0],this.rangeDateFrom=this.focusDate):(this.rangeDateTo=this.focusDate,this.rangeDateFrom=this.selectedDates[0]));}getCell(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i.day;if(!((e=b(e))instanceof Date))return;let{year:s,month:a,date:n}=o(e),r=`[data-year="${s}"]`,h=`[data-month="${a}"]`,l={[i.day]:`${r}${h}[data-date="${n}"]`,[i.month]:`${r}${h}`,[i.year]:`${r}`};return this.views[this.currentView].$el.querySelector(l[t])}_showMobileOverlay(){j.classList.add("-active-");}_hasTransition(){return window.getComputedStyle(this.$datepicker).getPropertyValue("transition-duration").split(", ").reduce(((e,t)=>parseFloat(t)+e),0)>0}get shouldUpdateDOM(){return this.visible||this.treatAsInline}get parsedViewDate(){return o(this.viewDate)}get currentViewSingular(){return this.currentView.slice(0,-1)}get curDecade(){return c(this.viewDate)}get viewIndex(){return this.viewIndexes.indexOf(this.currentView)}get isFinalView(){return this.currentView===i.years}get hasSelectedDates(){return this.selectedDates.length>0}get isMinViewReached(){return this.currentView===this.opts.minView||this.currentView===i.days}get $container(){return this.$customContainer||P}static replacer(e,t,i){return e.replace(t,(function(e,t,s,a){return t+i+a}))}}var K;return I(B,"defaults",s),I(B,"version","3.4.0"),I(B,"defaultGlobalContainerId","air-datepicker-global-container"),K=B.prototype,Object.assign(K,N),t.default}()}));
169
+ });
170
+
171
+ var en = createCommonjsModule(function (module, exports) {
172
+
173
+ Object.defineProperty(exports, "__esModule", {
174
+ value: true
175
+ });
176
+ exports.default = void 0;
177
+ var _default = {
178
+ days: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],
179
+ daysShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
180
+ daysMin: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],
181
+ months: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
182
+ monthsShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
183
+ today: 'Today',
184
+ clear: 'Clear',
185
+ dateFormat: 'MM/dd/yyyy',
186
+ timeFormat: 'hh:mm aa',
187
+ firstDay: 0
188
+ };
189
+ exports.default = _default;
190
+ });
191
+
192
+ const localeEn = /*@__PURE__*/getDefaultExportFromCjs(en);
193
+
194
+ const verdocsFieldDateCss = ".flatpickr-calendar{background:transparent;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;-webkit-animation:none;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;-webkit-box-shadow:0 3px 13px rgba(0,0,0,0.08);box-shadow:0 3px 13px rgba(0,0,0,0.08)}.flatpickr-calendar.open,.flatpickr-calendar.inline{opacity:1;max-height:640px;visibility:visible}.flatpickr-calendar.open{display:inline-block;z-index:99999}.flatpickr-calendar.animate.open{-webkit-animation:fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);animation:fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1)}.flatpickr-calendar.inline{display:block;position:relative;top:2px}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px)}.flatpickr-calendar.static.open{z-index:999;display:block}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){-webkit-box-shadow:none !important;box-shadow:none !important}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){-webkit-box-shadow:-2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;box-shadow:-2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6}.flatpickr-calendar .hasWeeks .dayContainer,.flatpickr-calendar .hasTime .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #eceef1}.flatpickr-calendar.hasTime .flatpickr-innerContainer{border-bottom:0}.flatpickr-calendar.hasTime .flatpickr-time{border:1px solid #eceef1}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto}.flatpickr-calendar:before,.flatpickr-calendar:after{position:absolute;display:block;pointer-events:none;border:solid transparent;content:'';height:0;width:0;left:22px}.flatpickr-calendar.rightMost:before,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.arrowRight:after{left:auto;right:22px}.flatpickr-calendar.arrowCenter:before,.flatpickr-calendar.arrowCenter:after{left:50%;right:50%}.flatpickr-calendar:before{border-width:5px;margin:0 -5px}.flatpickr-calendar:after{border-width:4px;margin:0 -4px}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after{bottom:100%}.flatpickr-calendar.arrowTop:before{border-bottom-color:#eceef1}.flatpickr-calendar.arrowTop:after{border-bottom-color:#eceef1}.flatpickr-calendar.arrowBottom:before,.flatpickr-calendar.arrowBottom:after{top:100%}.flatpickr-calendar.arrowBottom:before{border-top-color:#eceef1}.flatpickr-calendar.arrowBottom:after{border-top-color:#eceef1}.flatpickr-calendar:focus{outline:0}.flatpickr-wrapper{position:relative;display:inline-block}.flatpickr-months{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.flatpickr-months .flatpickr-month{border-radius:5px 5px 0 0;background:#eceef1;color:#5a6171;fill:#5a6171;height:34px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:#5a6171;fill:#5a6171}.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,.flatpickr-months .flatpickr-next-month.flatpickr-disabled{display:none}.flatpickr-months .flatpickr-prev-month i,.flatpickr-months .flatpickr-next-month i{position:relative}.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,.flatpickr-months .flatpickr-next-month.flatpickr-prev-month{left:0;}.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,.flatpickr-months .flatpickr-next-month.flatpickr-next-month{right:0;}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:#bbb}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:#f64747}.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{width:14px;height:14px}.flatpickr-months .flatpickr-prev-month svg path,.flatpickr-months .flatpickr-next-month svg path{-webkit-transition:fill 0.1s;transition:fill 0.1s;fill:inherit}.numInputWrapper{position:relative;height:auto}.numInputWrapper input,.numInputWrapper span{display:inline-block}.numInputWrapper input{width:100%}.numInputWrapper input::-ms-clear{display:none}.numInputWrapper input::-webkit-outer-spin-button,.numInputWrapper input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(72,72,72,0.15);-webkit-box-sizing:border-box;box-sizing:border-box}.numInputWrapper span:hover{background:rgba(0,0,0,0.1)}.numInputWrapper span:active{background:rgba(0,0,0,0.2)}.numInputWrapper span:after{display:block;content:\"\";position:absolute}.numInputWrapper span.arrowUp{top:0;border-bottom:0}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(72,72,72,0.6);top:26%}.numInputWrapper span.arrowDown{top:50%}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(72,72,72,0.6);top:40%}.numInputWrapper span svg{width:inherit;height:auto}.numInputWrapper span svg path{fill:rgba(90,97,113,0.5)}.numInputWrapper:hover{background:rgba(0,0,0,0.05)}.numInputWrapper:hover span{opacity:1}.flatpickr-current-month{font-size:135%;line-height:inherit;font-weight:300;color:inherit;position:absolute;width:75%;left:12.5%;padding:7.48px 0 0 0;line-height:1;height:34px;display:inline-block;text-align:center;-webkit-transform:translate3d(0px, 0px, 0px);transform:translate3d(0px, 0px, 0px)}.flatpickr-current-month span.cur-month{font-family:inherit;font-weight:700;color:inherit;display:inline-block;margin-left:0.5ch;padding:0}.flatpickr-current-month span.cur-month:hover{background:rgba(0,0,0,0.05)}.flatpickr-current-month .numInputWrapper{width:6ch;width:7ch\\0;display:inline-block}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:#5a6171}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:#5a6171}.flatpickr-current-month input.cur-year{background:transparent;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;cursor:text;padding:0 0 0 0.5ch;margin:0;display:inline-block;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;border:0;border-radius:0;vertical-align:initial;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-current-month input.cur-year:focus{outline:0}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:rgba(90,97,113,0.5);background:transparent;pointer-events:none}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:#eceef1;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0 0;outline:none;padding:0 0 0 0.5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto}.flatpickr-current-month .flatpickr-monthDropdown-months:focus,.flatpickr-current-month .flatpickr-monthDropdown-months:active{outline:none}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:rgba(0,0,0,0.05)}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:#eceef1;outline:none;padding:0}.flatpickr-weekdays{background:#eceef1;text-align:center;overflow:hidden;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:28px}.flatpickr-weekdays .flatpickr-weekdaycontainer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}span.flatpickr-weekday{cursor:default;font-size:90%;background:#eceef1;color:#5a6171;line-height:1;margin:0;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;font-weight:bolder}.dayContainer,.flatpickr-weeks{padding:1px 0 0 0}.flatpickr-days{position:relative;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;width:307.875px;border-left:1px solid #eceef1;border-right:1px solid #eceef1}.flatpickr-days:focus{outline:0}.dayContainer{padding:0;outline:0;text-align:left;width:307.875px;min-width:307.875px;max-width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-wrap:wrap;-ms-flex-pack:justify;-webkit-justify-content:space-around;justify-content:space-around;-webkit-transform:translate3d(0px, 0px, 0px);transform:translate3d(0px, 0px, 0px);opacity:1}.dayContainer+.dayContainer{-webkit-box-shadow:-1px 0 0 #eceef1;box-shadow:-1px 0 0 #eceef1}.flatpickr-day{background:none;border:1px solid transparent;border-radius:150px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#484848;cursor:pointer;font-weight:400;width:14.2857143%;-webkit-flex-basis:14.2857143%;-ms-flex-preferred-size:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;outline:0;background:#e2e2e2;border-color:#e2e2e2}.flatpickr-day.today{border-color:#bbb}.flatpickr-day.today:hover,.flatpickr-day.today:focus{border-color:#bbb;background:#bbb;color:#fff}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{background:#ff5a5f;-webkit-box-shadow:none;box-shadow:none;color:#fff;border-color:#ff5a5f}.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange,.flatpickr-day.endRange.startRange{border-radius:50px 0 0 50px}.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange,.flatpickr-day.endRange.endRange{border-radius:0 50px 50px 0}.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)){-webkit-box-shadow:-10px 0 0 #ff5a5f;box-shadow:-10px 0 0 #ff5a5f}.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange,.flatpickr-day.endRange.startRange.endRange{border-radius:50px}.flatpickr-day.inRange{border-radius:0;-webkit-box-shadow:-5px 0 0 #e2e2e2, 5px 0 0 #e2e2e2;box-shadow:-5px 0 0 #e2e2e2, 5px 0 0 #e2e2e2}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:rgba(72,72,72,0.3);background:transparent;border-color:transparent;cursor:default}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:rgba(72,72,72,0.1)}.flatpickr-day.week.selected{border-radius:0;-webkit-box-shadow:-5px 0 0 #ff5a5f, 5px 0 0 #ff5a5f;box-shadow:-5px 0 0 #ff5a5f, 5px 0 0 #ff5a5f}.flatpickr-day.hidden{visibility:hidden}.rangeMode .flatpickr-day{margin-top:1px}.flatpickr-weekwrapper{float:left}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;border-left:1px solid #eceef1}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:rgba(72,72,72,0.3);background:transparent;cursor:default;border:none}.flatpickr-innerContainer{display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;background:#fff;border-bottom:1px solid #eceef1}.flatpickr-rContainer{display:inline-block;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background:#fff;border-radius:0 0 5px 5px}.flatpickr-time:after{content:\"\";display:table;clear:both}.flatpickr-time .numInputWrapper{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;width:40%;height:40px;float:left}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#484848}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#484848}.flatpickr-time.hasSeconds .numInputWrapper{width:26%}.flatpickr-time.time24hr .numInputWrapper{width:49%}.flatpickr-time input{background:transparent;-webkit-box-shadow:none;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#484848;font-size:14px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-time input.flatpickr-hour{font-weight:bold}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400}.flatpickr-time input:focus{outline:0;border:0}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;float:left;line-height:inherit;color:#484848;font-weight:bold;width:2%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.flatpickr-time .flatpickr-am-pm{outline:0;width:18%;cursor:pointer;text-align:center;font-weight:400}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time .flatpickr-am-pm:focus{background:#eaeaea}.flatpickr-input[readonly]{cursor:pointer}@-webkit-keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0, -20px, 0);transform:translate3d(0, -20px, 0)}to{opacity:1;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}}@keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0, -20px, 0);transform:translate3d(0, -20px, 0)}to{opacity:1;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}}span.flatpickr-day.selected{font-weight:bold}verdocs-field-date{font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif;width:74px;height:20px;display:block;font-size:11px;position:relative;letter-spacing:0.3px;background-color:transparent;-webkit-transform-origin:bottom left;transform-origin:bottom left}verdocs-field-date.disabled{opacity:0.5}verdocs-field-date input{position:absolute;font-size:13px;cursor:inherit;-webkit-box-sizing:border-box;box-sizing:border-box;color:rgba(0, 0, 0, 0.87);font-weight:500;-webkit-transform-origin:0 0;transform-origin:0 0;height:100%;width:100%;background:none;border:1px solid #cccccc;-webkit-appearance:none;-moz-appearance:none;appearance:none}verdocs-field-date input.hide{display:none}verdocs-field-date.required input{border:1px solid #cc0000}verdocs-field-date.focused{-webkit-animation:verdocs-field-pulse 0.75s 2;animation:verdocs-field-pulse 0.75s 2}verdocs-field-date verdocs-button-panel{top:-3px;left:-2px;opacity:0.5;z-index:1000;cursor:pointer;position:absolute;-webkit-transform:scale(0.6);transform:scale(0.6)}verdocs-field-date verdocs-button-panel[data-active],verdocs-field-date verdocs-button-panel:hover{opacity:1}verdocs-field-date verdocs-button-panel .icon svg{fill:#333333}verdocs-field-date verdocs-button-panel .icon:hover svg{fill:#000000}verdocs-field-date .settings-icon{position:absolute;top:-3px;left:-18px;display:inline-block;cursor:pointer;opacity:0.6}verdocs-field-date .settings-icon svg{fill:#707ae5}verdocs-field-date .settings-icon:hover{opacity:1}.flatpickr-calendar{font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif}.flatpickr-calendar{background:transparent;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;-webkit-animation:none;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;background:#fff;-webkit-box-shadow:1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, 0.08);box-shadow:1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, 0.08)}.flatpickr-calendar.open,.flatpickr-calendar.inline{opacity:1;max-height:640px;visibility:visible}.flatpickr-calendar.open{display:inline-block;z-index:99999}.flatpickr-calendar.animate.open{-webkit-animation:fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);animation:fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1)}.flatpickr-calendar.inline{display:block;position:relative;top:2px}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px)}.flatpickr-calendar.static.open{z-index:999;display:block}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){-webkit-box-shadow:none !important;box-shadow:none !important}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){-webkit-box-shadow:-2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;box-shadow:-2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6}.flatpickr-calendar .hasWeeks .dayContainer,.flatpickr-calendar .hasTime .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #e6e6e6}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto}.flatpickr-calendar:before,.flatpickr-calendar:after{position:absolute;display:block;pointer-events:none;border:solid transparent;content:\"\";height:0;width:0;left:22px}.flatpickr-calendar.rightMost:before,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.arrowRight:after{left:auto;right:22px}.flatpickr-calendar.arrowCenter:before,.flatpickr-calendar.arrowCenter:after{left:50%;right:50%}.flatpickr-calendar:before{border-width:5px;margin:0 -5px}.flatpickr-calendar:after{border-width:4px;margin:0 -4px}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after{bottom:100%}.flatpickr-calendar.arrowTop:before{border-bottom-color:#e6e6e6}.flatpickr-calendar.arrowTop:after{border-bottom-color:#fff}.flatpickr-calendar.arrowBottom:before,.flatpickr-calendar.arrowBottom:after{top:100%}.flatpickr-calendar.arrowBottom:before{border-top-color:#e6e6e6}.flatpickr-calendar.arrowBottom:after{border-top-color:#fff}.flatpickr-calendar:focus{outline:0}.flatpickr-wrapper{position:relative;display:inline-block}.flatpickr-months{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.flatpickr-months .flatpickr-month{background:transparent;color:rgba(0, 0, 0, 0.9);fill:rgba(0, 0, 0, 0.9);height:34px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:rgba(0, 0, 0, 0.9);fill:rgba(0, 0, 0, 0.9)}.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,.flatpickr-months .flatpickr-next-month.flatpickr-disabled{display:none}.flatpickr-months .flatpickr-prev-month i,.flatpickr-months .flatpickr-next-month i{position:relative}.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,.flatpickr-months .flatpickr-next-month.flatpickr-prev-month{left:0;}.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,.flatpickr-months .flatpickr-next-month.flatpickr-next-month{right:0;}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:#959ea9}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:#f64747}.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{width:14px;height:14px}.flatpickr-months .flatpickr-prev-month svg path,.flatpickr-months .flatpickr-next-month svg path{-webkit-transition:fill 0.1s;transition:fill 0.1s;fill:inherit}.numInputWrapper{position:relative;height:auto}.numInputWrapper input,.numInputWrapper span{display:inline-block}.numInputWrapper input{width:100%}.numInputWrapper input::-ms-clear{display:none}.numInputWrapper input::-webkit-outer-spin-button,.numInputWrapper input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(57, 57, 57, 0.15);-webkit-box-sizing:border-box;box-sizing:border-box}.numInputWrapper span:hover{background:rgba(0, 0, 0, 0.1)}.numInputWrapper span:active{background:rgba(0, 0, 0, 0.2)}.numInputWrapper span:after{display:block;content:\"\";position:absolute}.numInputWrapper span.arrowUp{top:0;border-bottom:0}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(57, 57, 57, 0.6);top:26%}.numInputWrapper span.arrowDown{top:50%}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(57, 57, 57, 0.6);top:40%}.numInputWrapper span svg{width:inherit;height:auto}.numInputWrapper span svg path{fill:rgba(0, 0, 0, 0.5)}.numInputWrapper:hover{background:rgba(0, 0, 0, 0.05)}.numInputWrapper:hover span{opacity:1}.flatpickr-current-month{font-size:135%;line-height:inherit;font-weight:300;color:inherit;position:absolute;width:75%;left:12.5%;padding:7.48px 0 0 0;line-height:1;height:34px;display:inline-block;text-align:center;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}.flatpickr-current-month span.cur-month{font-family:inherit;font-weight:700;color:inherit;display:inline-block;margin-left:0.5ch;padding:0}.flatpickr-current-month span.cur-month:hover{background:rgba(0, 0, 0, 0.05)}.flatpickr-current-month .numInputWrapper{width:6ch;width:7ch\\0;display:inline-block}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:rgba(0, 0, 0, 0.9)}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:rgba(0, 0, 0, 0.9)}.flatpickr-current-month input.cur-year{background:transparent;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;cursor:text;padding:0 0 0 0.5ch;margin:0;display:inline-block;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;border:0;border-radius:0;vertical-align:initial;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-current-month input.cur-year:focus{outline:0}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:rgba(0, 0, 0, 0.5);background:transparent;pointer-events:none}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:transparent;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0 0;outline:none;padding:0 0 0 0.5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto}.flatpickr-current-month .flatpickr-monthDropdown-months:focus,.flatpickr-current-month .flatpickr-monthDropdown-months:active{outline:none}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:rgba(0, 0, 0, 0.05)}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:transparent;outline:none;padding:0}.flatpickr-weekdays{background:transparent;text-align:center;overflow:hidden;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:28px}.flatpickr-weekdays .flatpickr-weekdaycontainer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}span.flatpickr-weekday{cursor:default;font-size:90%;background:transparent;color:rgba(0, 0, 0, 0.54);line-height:1;margin:0;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;font-weight:bolder}.dayContainer,.flatpickr-weeks{padding:1px 0 0 0}.flatpickr-days{position:relative;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;width:307.875px}.flatpickr-days:focus{outline:0}.dayContainer{padding:0;outline:0;text-align:left;width:307.875px;min-width:307.875px;max-width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-wrap:wrap;-ms-flex-pack:justify;-webkit-justify-content:space-around;justify-content:space-around;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);opacity:1}.dayContainer+.dayContainer{-webkit-box-shadow:-1px 0 0 #e6e6e6;box-shadow:-1px 0 0 #e6e6e6}.flatpickr-day{background:none;border:1px solid transparent;border-radius:150px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#393939;cursor:pointer;font-weight:400;width:14.2857143%;-webkit-flex-basis:14.2857143%;-ms-flex-preferred-size:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;outline:0;background:#e6e6e6;border-color:#e6e6e6}.flatpickr-day.today{border-color:#959ea9}.flatpickr-day.today:hover,.flatpickr-day.today:focus{border-color:#959ea9;background:#959ea9;color:#fff}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{background:#569ff7;-webkit-box-shadow:none;box-shadow:none;color:#fff;border-color:#569ff7}.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange,.flatpickr-day.endRange.startRange{border-radius:50px 0 0 50px}.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange,.flatpickr-day.endRange.endRange{border-radius:0 50px 50px 0}.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)){-webkit-box-shadow:-10px 0 0 #569ff7;box-shadow:-10px 0 0 #569ff7}.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange,.flatpickr-day.endRange.startRange.endRange{border-radius:50px}.flatpickr-day.inRange{border-radius:0;-webkit-box-shadow:-5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;box-shadow:-5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:rgba(57, 57, 57, 0.3);background:transparent;border-color:transparent;cursor:default}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:rgba(57, 57, 57, 0.1)}.flatpickr-day.week.selected{border-radius:0;-webkit-box-shadow:-5px 0 0 #569ff7, 5px 0 0 #569ff7;box-shadow:-5px 0 0 #569ff7, 5px 0 0 #569ff7}.flatpickr-day.hidden{visibility:hidden}.rangeMode .flatpickr-day{margin-top:1px}.flatpickr-weekwrapper{float:left}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;-webkit-box-shadow:1px 0 0 #e6e6e6;box-shadow:1px 0 0 #e6e6e6}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:rgba(57, 57, 57, 0.3);background:transparent;cursor:default;border:none}.flatpickr-innerContainer{display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.flatpickr-rContainer{display:inline-block;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.flatpickr-time:after{content:\"\";display:table;clear:both}.flatpickr-time .numInputWrapper{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;width:40%;height:40px;float:left}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#393939}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#393939}.flatpickr-time.hasSeconds .numInputWrapper{width:26%}.flatpickr-time.time24hr .numInputWrapper{width:49%}.flatpickr-time input{background:transparent;-webkit-box-shadow:none;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#393939;font-size:14px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-time input.flatpickr-hour{font-weight:bold}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400}.flatpickr-time input:focus{outline:0;border:0}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;float:left;line-height:inherit;color:#393939;font-weight:bold;width:2%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.flatpickr-time .flatpickr-am-pm{outline:0;width:18%;cursor:pointer;text-align:center;font-weight:400}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time .flatpickr-am-pm:focus{background:#eee}.flatpickr-input[readonly]{cursor:pointer}@-webkit-keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0, -20px, 0);transform:translate3d(0, -20px, 0)}to{opacity:1;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}}@keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0, -20px, 0);transform:translate3d(0, -20px, 0)}to{opacity:1;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}}.flatpickr-calendar div{-ms-flex-direction:row;flex-direction:row}.air-datepicker-cell.-year-.-other-decade-,.air-datepicker-cell.-day-.-other-month-{color:var(--adp-color-other-month)}.air-datepicker-cell.-year-.-other-decade-:hover,.air-datepicker-cell.-day-.-other-month-:hover{color:var(--adp-color-other-month-hover)}.-disabled-.-focus-.air-datepicker-cell.-year-.-other-decade-,.-disabled-.-focus-.air-datepicker-cell.-day-.-other-month-{color:var(--adp-color-other-month)}.-selected-.air-datepicker-cell.-year-.-other-decade-,.-selected-.air-datepicker-cell.-day-.-other-month-{color:#fff;background:var(--adp-background-color-selected-other-month)}.-selected-.-focus-.air-datepicker-cell.-year-.-other-decade-,.-selected-.-focus-.air-datepicker-cell.-day-.-other-month-{background:var(--adp-background-color-selected-other-month-focused)}.-in-range-.air-datepicker-cell.-year-.-other-decade-,.-in-range-.air-datepicker-cell.-day-.-other-month-{background-color:var(--adp-background-color-in-range);color:var(--adp-color)}.-in-range-.-focus-.air-datepicker-cell.-year-.-other-decade-,.-in-range-.-focus-.air-datepicker-cell.-day-.-other-month-{background-color:var(--adp-background-color-in-range-focused)}.air-datepicker-cell.-year-.-other-decade-:empty,.air-datepicker-cell.-day-.-other-month-:empty{background:none;border:none}.air-datepicker-cell{border-radius:var(--adp-cell-border-radius);-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;z-index:1}.air-datepicker-cell.-focus-{background:var(--adp-cell-background-color-hover)}.air-datepicker-cell.-current-{color:var(--adp-color-current-date)}.air-datepicker-cell.-current-.-focus-{color:var(--adp-color)}.air-datepicker-cell.-current-.-in-range-{color:var(--adp-color-current-date)}.air-datepicker-cell.-disabled-{cursor:default;color:var(--adp-color-disabled)}.air-datepicker-cell.-disabled-.-focus-{color:var(--adp-color-disabled)}.air-datepicker-cell.-disabled-.-in-range-{color:var(--adp-color-disabled-in-range)}.air-datepicker-cell.-disabled-.-current-.-focus-{color:var(--adp-color-disabled)}.air-datepicker-cell.-in-range-{background:var(--adp-cell-background-color-in-range);border-radius:0}.air-datepicker-cell.-in-range-:hover{background:var(--adp-cell-background-color-in-range-hover)}.air-datepicker-cell.-range-from-{border:1px solid var(--adp-cell-border-color-in-range);background-color:var(--adp-cell-background-color-in-range);border-radius:var(--adp-cell-border-radius) 0 0 var(--adp-cell-border-radius)}.air-datepicker-cell.-range-to-{border:1px solid var(--adp-cell-border-color-in-range);background-color:var(--adp-cell-background-color-in-range);border-radius:0 var(--adp-cell-border-radius) var(--adp-cell-border-radius) 0}.air-datepicker-cell.-range-to-.-range-from-{border-radius:var(--adp-cell-border-radius)}.air-datepicker-cell.-selected-{color:#fff;border:none;background:var(--adp-cell-background-color-selected)}.air-datepicker-cell.-selected-.-current-{color:#fff;background:var(--adp-cell-background-color-selected)}.air-datepicker-cell.-selected-.-focus-{background:var(--adp-cell-background-color-selected-hover)}.air-datepicker-body{-webkit-transition:all var(--adp-transition-duration) var(--adp-transition-ease);transition:all var(--adp-transition-duration) var(--adp-transition-ease)}.air-datepicker-body.-hidden-{display:none}.air-datepicker-body--day-names{display:grid;grid-template-columns:repeat(7, var(--adp-day-cell-width));margin:8px 0 3px}.air-datepicker-body--day-name{color:var(--adp-day-name-color);display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-ms-flex:1;flex:1;text-align:center;text-transform:uppercase;font-size:0.8em}.air-datepicker-body--day-name.-clickable-{cursor:pointer}.air-datepicker-body--day-name.-clickable-:hover{color:var(--adp-day-name-color-hover)}.air-datepicker-body--cells{display:grid}.air-datepicker-body--cells.-days-{grid-template-columns:repeat(7, var(--adp-day-cell-width));grid-auto-rows:var(--adp-day-cell-height)}.air-datepicker-body--cells.-months-{grid-template-columns:repeat(3, 1fr);grid-auto-rows:var(--adp-month-cell-height)}.air-datepicker-body--cells.-years-{grid-template-columns:repeat(4, 1fr);grid-auto-rows:var(--adp-year-cell-height)}.air-datepicker-nav{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;border-bottom:1px solid var(--adp-border-color-inner);min-height:var(--adp-nav-height);padding:var(--adp-padding);-webkit-box-sizing:content-box;box-sizing:content-box}.-only-timepicker- .air-datepicker-nav{display:none}.air-datepicker-nav--title,.air-datepicker-nav--action{display:-ms-flexbox;display:flex;cursor:pointer;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.air-datepicker-nav--action{width:var(--adp-nav-action-size);border-radius:var(--adp-border-radius);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.air-datepicker-nav--action:hover{background:var(--adp-background-color-hover)}.air-datepicker-nav--action:active{background:var(--adp-background-color-active)}.air-datepicker-nav--action.-disabled-{visibility:hidden}.air-datepicker-nav--action svg{width:32px;height:32px}.air-datepicker-nav--action path{fill:none;stroke:var(--adp-nav-arrow-color);stroke-width:2px}.air-datepicker-nav--title{border-radius:var(--adp-border-radius);padding:0 8px}.air-datepicker-nav--title i{font-style:normal;color:var(--adp-nav-color-secondary);margin-left:0.3em}.air-datepicker-nav--title:hover{background:var(--adp-background-color-hover)}.air-datepicker-nav--title:active{background:var(--adp-background-color-active)}.air-datepicker-nav--title.-disabled-{cursor:default;background:none}.air-datepicker-buttons{display:grid;grid-auto-columns:1fr;grid-auto-flow:column}.air-datepicker-button{display:-ms-inline-flexbox;display:inline-flex;color:var(--adp-btn-color);border-radius:var(--adp-btn-border-radius);cursor:pointer;height:var(--adp-btn-height);border:none;background:rgba(255, 255, 255, 0)}.air-datepicker-button:hover{color:var(--adp-btn-color-hover);background:var(--adp-btn-background-color-hover)}.air-datepicker-button:focus{color:var(--adp-btn-color-hover);background:var(--adp-btn-background-color-hover);outline:none}.air-datepicker-button:active{background:var(--adp-btn-background-color-active)}.air-datepicker-button span{outline:none;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%}.air-datepicker-time{display:grid;grid-template-columns:-webkit-max-content 1fr;grid-template-columns:max-content 1fr;grid-column-gap:12px;-ms-flex-align:center;align-items:center;position:relative;padding:0 var(--adp-time-padding-inner)}.-only-timepicker- .air-datepicker-time{border-top:none}.air-datepicker-time--current{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex:1;flex:1;font-size:14px;text-align:center}.air-datepicker-time--current-colon{margin:0 2px 3px;line-height:1}.air-datepicker-time--current-hours,.air-datepicker-time--current-minutes{line-height:1;font-size:19px;font-family:\"Century Gothic\", CenturyGothic, AppleGothic, sans-serif;position:relative;z-index:1}.air-datepicker-time--current-hours:after,.air-datepicker-time--current-minutes:after{content:\"\";background:var(--adp-background-color-hover);border-radius:var(--adp-border-radius);position:absolute;left:-2px;top:-3px;right:-2px;bottom:-2px;z-index:-1;opacity:0}.air-datepicker-time--current-hours.-focus-:after,.air-datepicker-time--current-minutes.-focus-:after{opacity:1}.air-datepicker-time--current-ampm{text-transform:uppercase;-ms-flex-item-align:end;align-self:flex-end;color:var(--adp-time-day-period-color);margin-left:6px;font-size:11px;margin-bottom:1px}.air-datepicker-time--row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;font-size:11px;height:17px;background:-webkit-gradient(linear, left top, right top, from(var(--adp-time-track-color)), to(var(--adp-time-track-color))) left 50%/100% var(--adp-time-track-height) no-repeat;background:linear-gradient(to right, var(--adp-time-track-color), var(--adp-time-track-color)) left 50%/100% var(--adp-time-track-height) no-repeat}.air-datepicker-time--row:first-child{margin-bottom:4px}.air-datepicker-time--row input[type=range]{background:none;cursor:pointer;-ms-flex:1;flex:1;height:100%;width:100%;padding:0;margin:0;-webkit-appearance:none}.air-datepicker-time--row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none}.air-datepicker-time--row input[type=range]::-ms-tooltip{display:none}.air-datepicker-time--row input[type=range]:hover::-webkit-slider-thumb{border-color:var(--adp-time-track-color-hover)}.air-datepicker-time--row input[type=range]:hover::-moz-range-thumb{border-color:var(--adp-time-track-color-hover)}.air-datepicker-time--row input[type=range]:hover::-ms-thumb{border-color:var(--adp-time-track-color-hover)}.air-datepicker-time--row input[type=range]:focus{outline:none}.air-datepicker-time--row input[type=range]:focus::-webkit-slider-thumb{background:var(--adp-cell-background-color-selected);border-color:var(--adp-cell-background-color-selected)}.air-datepicker-time--row input[type=range]:focus::-moz-range-thumb{background:var(--adp-cell-background-color-selected);border-color:var(--adp-cell-background-color-selected)}.air-datepicker-time--row input[type=range]:focus::-ms-thumb{background:var(--adp-cell-background-color-selected);border-color:var(--adp-cell-background-color-selected)}.air-datepicker-time--row input[type=range]::-webkit-slider-thumb{-webkit-box-sizing:border-box;box-sizing:border-box;height:12px;width:12px;border-radius:3px;border:1px solid var(--adp-time-track-color);background:#fff;cursor:pointer;-webkit-transition:background var(--adp-transition-duration);transition:background var(--adp-transition-duration)}.air-datepicker-time--row input[type=range]::-moz-range-thumb{box-sizing:border-box;height:12px;width:12px;border-radius:3px;border:1px solid var(--adp-time-track-color);background:#fff;cursor:pointer;-moz-transition:background var(--adp-transition-duration);transition:background var(--adp-transition-duration)}.air-datepicker-time--row input[type=range]::-ms-thumb{box-sizing:border-box;height:12px;width:12px;border-radius:3px;border:1px solid var(--adp-time-track-color);background:#fff;cursor:pointer;-ms-transition:background var(--adp-transition-duration);transition:background var(--adp-transition-duration)}.air-datepicker-time--row input[type=range]::-webkit-slider-thumb{margin-top:calc(var(--adp-time-thumb-size) / 2 * -1)}.air-datepicker-time--row input[type=range]::-webkit-slider-runnable-track{border:none;height:var(--adp-time-track-height);cursor:pointer;color:rgba(0, 0, 0, 0);background:rgba(0, 0, 0, 0)}.air-datepicker-time--row input[type=range]::-moz-range-track{border:none;height:var(--adp-time-track-height);cursor:pointer;color:rgba(0, 0, 0, 0);background:rgba(0, 0, 0, 0)}.air-datepicker-time--row input[type=range]::-ms-track{border:none;height:var(--adp-time-track-height);cursor:pointer;color:rgba(0, 0, 0, 0);background:rgba(0, 0, 0, 0)}.air-datepicker-time--row input[type=range]::-ms-fill-lower{background:rgba(0, 0, 0, 0)}.air-datepicker-time--row input[type=range]::-ms-fill-upper{background:rgba(0, 0, 0, 0)}.air-datepicker{--adp-font-family:-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";--adp-font-size:14px;--adp-width:246px;--adp-z-index:100;--adp-padding:4px;--adp-grid-areas:\"nav\" \"body\" \"timepicker\" \"buttons\";--adp-transition-duration:.3s;--adp-transition-ease:ease-out;--adp-transition-offset:8px;--adp-background-color:#fff;--adp-background-color-hover:#f0f0f0;--adp-background-color-active:#eaeaea;--adp-background-color-in-range:rgba(92, 196, 239, .1);--adp-background-color-in-range-focused:rgba(92, 196, 239, .2);--adp-background-color-selected-other-month-focused:#8ad5f4;--adp-background-color-selected-other-month:#a2ddf6;--adp-color:#4a4a4a;--adp-color-secondary:#9c9c9c;--adp-accent-color:#4eb5e6;--adp-color-current-date:var(--adp-accent-color);--adp-color-other-month:#dedede;--adp-color-disabled:#aeaeae;--adp-color-disabled-in-range:#939393;--adp-color-other-month-hover:#c5c5c5;--adp-border-color:#dbdbdb;--adp-border-color-inner:#efefef;--adp-border-radius:4px;--adp-border-color-inline:#d7d7d7;--adp-nav-height:32px;--adp-nav-arrow-color:var(--adp-color-secondary);--adp-nav-action-size:32px;--adp-nav-color-secondary:var(--adp-color-secondary);--adp-day-name-color:#ff9a19;--adp-day-name-color-hover:#8ad5f4;--adp-day-cell-width:1fr;--adp-day-cell-height:32px;--adp-month-cell-height:42px;--adp-year-cell-height:56px;--adp-pointer-size:10px;--adp-poiner-border-radius:2px;--adp-pointer-offset:14px;--adp-cell-border-radius:4px;--adp-cell-background-color-hover:var(--adp-background-color-hover);--adp-cell-background-color-selected:#5cc4ef;--adp-cell-background-color-selected-hover:#45bced;--adp-cell-background-color-in-range:rgba(92, 196, 239, 0.1);--adp-cell-background-color-in-range-hover:rgba(92, 196, 239, 0.2);--adp-cell-border-color-in-range:var(--adp-cell-background-color-selected);--adp-btn-height:32px;--adp-btn-color:var(--adp-accent-color);--adp-btn-color-hover:var(--adp-color);--adp-btn-border-radius:var(--adp-border-radius);--adp-btn-background-color-hover:var(--adp-background-color-hover);--adp-btn-background-color-active:var(--adp-background-color-active);--adp-time-track-height:1px;--adp-time-track-color:#dedede;--adp-time-track-color-hover:#b1b1b1;--adp-time-thumb-size:12px;--adp-time-padding-inner:10px;--adp-time-day-period-color:var(--adp-color-secondary);--adp-mobile-font-size:16px;--adp-mobile-nav-height:40px;--adp-mobile-width:320px;--adp-mobile-day-cell-height:38px;--adp-mobile-month-cell-height:48px;--adp-mobile-year-cell-height:64px}.air-datepicker-overlay{--adp-overlay-background-color:rgba(0, 0, 0, .3);--adp-overlay-transition-duration:.3s;--adp-overlay-transition-ease:ease-out;--adp-overlay-z-index:99}.air-datepicker{background:var(--adp-background-color);border:1px solid var(--adp-border-color);-webkit-box-shadow:0 4px 12px rgba(0, 0, 0, 0.15);box-shadow:0 4px 12px rgba(0, 0, 0, 0.15);border-radius:var(--adp-border-radius);-webkit-box-sizing:content-box;box-sizing:content-box;display:grid;grid-template-columns:1fr;grid-template-rows:repeat(4, -webkit-max-content);grid-template-rows:repeat(4, max-content);grid-template-areas:var(--adp-grid-areas);font-family:var(--adp-font-family), sans-serif;font-size:var(--adp-font-size);color:var(--adp-color);width:var(--adp-width);position:absolute;-webkit-transition:opacity var(--adp-transition-duration) var(--adp-transition-ease), -webkit-transform var(--adp-transition-duration) var(--adp-transition-ease);transition:opacity var(--adp-transition-duration) var(--adp-transition-ease), -webkit-transform var(--adp-transition-duration) var(--adp-transition-ease);transition:opacity var(--adp-transition-duration) var(--adp-transition-ease), transform var(--adp-transition-duration) var(--adp-transition-ease);transition:opacity var(--adp-transition-duration) var(--adp-transition-ease), transform var(--adp-transition-duration) var(--adp-transition-ease), -webkit-transform var(--adp-transition-duration) var(--adp-transition-ease);z-index:var(--adp-z-index)}.air-datepicker:not(.-custom-position-){opacity:0}.air-datepicker.-from-top-{-webkit-transform:translateY(calc(var(--adp-transition-offset) * -1));transform:translateY(calc(var(--adp-transition-offset) * -1))}.air-datepicker.-from-right-{-webkit-transform:translateX(var(--adp-transition-offset));transform:translateX(var(--adp-transition-offset))}.air-datepicker.-from-bottom-{-webkit-transform:translateY(var(--adp-transition-offset));transform:translateY(var(--adp-transition-offset))}.air-datepicker.-from-left-{-webkit-transform:translateX(calc(var(--adp-transition-offset) * -1));transform:translateX(calc(var(--adp-transition-offset) * -1))}.air-datepicker.-active-:not(.-custom-position-){-webkit-transform:translate(0, 0);transform:translate(0, 0);opacity:1}.air-datepicker.-active-.-custom-position-{-webkit-transition:none;transition:none}.air-datepicker.-inline-{border-color:var(--adp-border-color-inline);-webkit-box-shadow:none;box-shadow:none;position:static;left:auto;right:auto;opacity:1;-webkit-transform:none;transform:none}.air-datepicker.-inline- .air-datepicker--pointer{display:none}.air-datepicker.-is-mobile-{--adp-font-size:var(--adp-mobile-font-size);--adp-day-cell-height:var(--adp-mobile-day-cell-height);--adp-month-cell-height:var(--adp-mobile-month-cell-height);--adp-year-cell-height:var(--adp-mobile-year-cell-height);--adp-nav-height:var(--adp-mobile-nav-height);--adp-nav-action-size:var(--adp-mobile-nav-height);position:fixed;width:var(--adp-mobile-width);border:none}.air-datepicker.-is-mobile- *{-webkit-tap-highlight-color:rgba(0, 0, 0, 0)}.air-datepicker.-is-mobile- .air-datepicker--pointer{display:none}.air-datepicker.-is-mobile-:not(.-custom-position-){-webkit-transform:translate(-50%, calc(-50% + var(--adp-transition-offset)));transform:translate(-50%, calc(-50% + var(--adp-transition-offset)))}.air-datepicker.-is-mobile-.-active-:not(.-custom-position-){-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%)}.air-datepicker.-custom-position-{-webkit-transition:none;transition:none}.air-datepicker-global-container{position:absolute;left:0;top:0}.air-datepicker--pointer{--pointer-half-size:calc(var(--adp-pointer-size) / 2);position:absolute;width:var(--adp-pointer-size);height:var(--adp-pointer-size);z-index:-1}.air-datepicker--pointer:after{content:\"\";position:absolute;background:#fff;border-top:1px solid var(--adp-border-color-inline);border-right:1px solid var(--adp-border-color-inline);border-top-right-radius:var(--adp-poiner-border-radius);width:var(--adp-pointer-size);height:var(--adp-pointer-size);-webkit-box-sizing:border-box;box-sizing:border-box}.-top-left- .air-datepicker--pointer,.-top-center- .air-datepicker--pointer,.-top-right- .air-datepicker--pointer,[data-popper-placement^=top] .air-datepicker--pointer{top:calc(100% - var(--pointer-half-size) + 1px)}.-top-left- .air-datepicker--pointer:after,.-top-center- .air-datepicker--pointer:after,.-top-right- .air-datepicker--pointer:after,[data-popper-placement^=top] .air-datepicker--pointer:after{-webkit-transform:rotate(135deg);transform:rotate(135deg)}.-right-top- .air-datepicker--pointer,.-right-center- .air-datepicker--pointer,.-right-bottom- .air-datepicker--pointer,[data-popper-placement^=right] .air-datepicker--pointer{right:calc(100% - var(--pointer-half-size) + 1px)}.-right-top- .air-datepicker--pointer:after,.-right-center- .air-datepicker--pointer:after,.-right-bottom- .air-datepicker--pointer:after,[data-popper-placement^=right] .air-datepicker--pointer:after{-webkit-transform:rotate(225deg);transform:rotate(225deg)}.-bottom-left- .air-datepicker--pointer,.-bottom-center- .air-datepicker--pointer,.-bottom-right- .air-datepicker--pointer,[data-popper-placement^=bottom] .air-datepicker--pointer{bottom:calc(100% - var(--pointer-half-size) + 1px)}.-bottom-left- .air-datepicker--pointer:after,.-bottom-center- .air-datepicker--pointer:after,.-bottom-right- .air-datepicker--pointer:after,[data-popper-placement^=bottom] .air-datepicker--pointer:after{-webkit-transform:rotate(315deg);transform:rotate(315deg)}.-left-top- .air-datepicker--pointer,.-left-center- .air-datepicker--pointer,.-left-bottom- .air-datepicker--pointer,[data-popper-placement^=left] .air-datepicker--pointer{left:calc(100% - var(--pointer-half-size) + 1px)}.-left-top- .air-datepicker--pointer:after,.-left-center- .air-datepicker--pointer:after,.-left-bottom- .air-datepicker--pointer:after,[data-popper-placement^=left] .air-datepicker--pointer:after{-webkit-transform:rotate(45deg);transform:rotate(45deg)}.-top-left- .air-datepicker--pointer,.-bottom-left- .air-datepicker--pointer{left:var(--adp-pointer-offset)}.-top-right- .air-datepicker--pointer,.-bottom-right- .air-datepicker--pointer{right:var(--adp-pointer-offset)}.-top-center- .air-datepicker--pointer,.-bottom-center- .air-datepicker--pointer{left:calc(50% - var(--adp-pointer-size) / 2)}.-left-top- .air-datepicker--pointer,.-right-top- .air-datepicker--pointer{top:var(--adp-pointer-offset)}.-left-bottom- .air-datepicker--pointer,.-right-bottom- .air-datepicker--pointer{bottom:var(--adp-pointer-offset)}.-left-center- .air-datepicker--pointer,.-right-center- .air-datepicker--pointer{top:calc(50% - var(--adp-pointer-size) / 2)}.air-datepicker--navigation{grid-area:nav}.air-datepicker--content{-webkit-box-sizing:content-box;box-sizing:content-box;padding:var(--adp-padding);grid-area:body}.-only-timepicker- .air-datepicker--content{display:none}.air-datepicker--time{grid-area:timepicker}.air-datepicker--buttons{grid-area:buttons}.air-datepicker--buttons,.air-datepicker--time{padding:var(--adp-padding);border-top:1px solid var(--adp-border-color-inner)}.air-datepicker-overlay{position:fixed;background:var(--adp-overlay-background-color);left:0;top:0;width:0;height:0;opacity:0;-webkit-transition:opacity var(--adp-overlay-transition-duration) var(--adp-overlay-transition-ease), left 0s, height 0s, width 0s;transition:opacity var(--adp-overlay-transition-duration) var(--adp-overlay-transition-ease), left 0s, height 0s, width 0s;-webkit-transition-delay:0s, var(--adp-overlay-transition-duration), var(--adp-overlay-transition-duration), var(--adp-overlay-transition-duration);transition-delay:0s, var(--adp-overlay-transition-duration), var(--adp-overlay-transition-duration), var(--adp-overlay-transition-duration);z-index:var(--adp-overlay-z-index)}.air-datepicker-overlay.-active-{opacity:1;width:100%;height:100%;-webkit-transition:opacity var(--adp-overlay-transition-duration) var(--adp-overlay-transition-ease), height 0s, width 0s;transition:opacity var(--adp-overlay-transition-duration) var(--adp-overlay-transition-ease), height 0s, width 0s}";
195
+
196
+ const VerdocsFieldDate = class {
197
+ constructor(hostRef) {
198
+ registerInstance(this, hostRef);
199
+ this.settingsPress = createEvent(this, "settingsPress", 7);
200
+ this.settingsChanged = createEvent(this, "settingsChanged", 7);
201
+ this.deleted = createEvent(this, "deleted", 7);
202
+ this.fieldStore = null;
203
+ this.roleStore = null;
204
+ this.templateid = '';
205
+ this.fieldname = '';
206
+ this.disabled = false;
207
+ this.editable = false;
208
+ this.moveable = false;
209
+ this.done = false;
210
+ this.xscale = 1;
211
+ this.yscale = 1;
212
+ this.pagenumber = 1;
213
+ this.field = undefined;
214
+ this.containerId = `verdocs-date-picker-${Math.random().toString(36).substring(2, 11)}`;
215
+ this.showingProperties = false;
216
+ }
217
+ async focusField() {
218
+ this.el.focus();
219
+ }
220
+ async componentWillLoad() {
221
+ if (this.field) {
222
+ const ts = getTemplateFieldStore(this.templateid);
223
+ ts.set('fields', [...ts.get('fields'), this.field]);
224
+ }
225
+ this.fieldStore = getTemplateFieldStore(this.templateid);
226
+ this.roleStore = getTemplateRoleStore(this.templateid);
227
+ }
228
+ componentDidLoad() {
229
+ new airDatepicker(`#${this.containerId}`, {
230
+ locale: localeEn,
231
+ isMobile: true,
232
+ autoClose: true,
233
+ onSelect: ({ date, formattedDate }) => {
234
+ console.log('Selected date', formattedDate, date);
235
+ const event = new CustomEvent('fieldChange', {
236
+ detail: { date, formattedDate },
237
+ });
238
+ // const event = new window.Event('input', {composed: true, bubbles: true, cancelable: true});
239
+ console.log('Will dispatch', event, this.el);
240
+ this.hostEl.dispatchEvent(event);
241
+ },
242
+ });
243
+ }
244
+ async showSettingsPanel() {
245
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
246
+ if (settingsPanel && settingsPanel.showPanel) {
247
+ settingsPanel.showPanel();
248
+ }
249
+ }
250
+ async hideSettingsPanel() {
251
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
252
+ if (settingsPanel && settingsPanel.hidePanel) {
253
+ settingsPanel.hidePanel();
254
+ }
255
+ }
256
+ // NOTE: We don't use a "date" field here because browsers vary widely in their formatting of it.
257
+ render() {
258
+ var _a, _b;
259
+ const field = this.fieldStore.get('fields').find(field => field.name === this.fieldname);
260
+ const roleIndex = getRoleIndex(this.roleStore, field === null || field === void 0 ? void 0 : field.role_name);
261
+ const backgroundColor = (field === null || field === void 0 ? void 0 : field['rgba']) || getRGBA(roleIndex);
262
+ const settings = getFieldSettings(field);
263
+ const disabled = (_b = (_a = this.disabled) !== null && _a !== void 0 ? _a : settings.disabled) !== null && _b !== void 0 ? _b : false;
264
+ if (this.done) {
265
+ const formatted = (settings === null || settings === void 0 ? void 0 : settings.result) ? format(new Date(settings === null || settings === void 0 ? void 0 : settings.result), FORMAT_DATE) : '';
266
+ return h(Host, { class: { done: this.done } }, formatted);
267
+ }
268
+ return (h(Host, { class: { required: field === null || field === void 0 ? void 0 : field.required, disabled }, style: { backgroundColor } }, h("input", { name: field === null || field === void 0 ? void 0 : field.name, class: "input-el", type: "text", value: "", id: this.containerId, disabled: disabled, placeholder: settings.placeholder, ref: el => (this.el = el) }), this.editable && (h(Fragment, null, h("div", { id: `verdocs-settings-panel-trigger-${field.name}`, style: { transform: `scale(${Math.floor((1 / this.xscale) * 1000) / 1000}, ${Math.floor((1 / this.yscale) * 1000) / 1000})` }, class: "settings-icon", innerHTML: SettingsIcon, onClick: (e) => {
269
+ e.stopPropagation();
270
+ this.showingProperties = !this.showingProperties;
271
+ } }), this.showingProperties && (h("verdocs-portal", { anchor: `verdocs-settings-panel-trigger-${field.name}`, onClickAway: () => (this.showingProperties = false) }, h("verdocs-template-field-properties", { templateId: this.templateid, fieldName: field === null || field === void 0 ? void 0 : field.name, onClose: () => (this.showingProperties = false), onDelete: () => {
272
+ var _a;
273
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: field === null || field === void 0 ? void 0 : field.name });
274
+ return this.hideSettingsPanel();
275
+ }, onSettingsChanged: e => {
276
+ var _a;
277
+ (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit(e.detail);
278
+ return this.hideSettingsPanel();
279
+ }, helpText: 'Date fields allow the user to select a date.' })))))));
280
+ }
281
+ get hostEl() { return getElement(this); }
282
+ };
283
+ VerdocsFieldDate.style = verdocsFieldDateCss;
284
+
285
+ const verdocsFieldDropdownCss = "verdocs-field-dropdown{font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif;width:85px;height:20px;display:block;font-size:11px;position:relative;background-color:transparent;-webkit-transform-origin:bottom left;transform-origin:bottom left}verdocs-field-dropdown.disabled{opacity:0.5}verdocs-field-dropdown select{cursor:inherit;position:absolute;background:linear-gradient(55deg, transparent 50%, #333 50%), linear-gradient(125deg, #333 50%, transparent 50%), linear-gradient(to right, transparent, transparent);background-position:calc(100% - 7px) 6px, calc(100% - 3px) 6px, 100% 0;background-size:5px 5px, 5px 5px, 2.5em 2.5em;background-repeat:no-repeat;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-box-sizing:border-box;box-sizing:border-box;color:rgba(0, 0, 0, 0.87);font-weight:500;-webkit-transform-origin:0 0;transform-origin:0 0;height:100%;width:100%;font-size:11px;border:1px solid rgba(0, 0, 0, 0.2);padding:0 5px}verdocs-field-dropdown select:focus{outline:none}verdocs-field-dropdown select.hide{display:none}verdocs-field-dropdown.required select{border:1px solid #cc0000}verdocs-field-dropdown.focused{-webkit-animation:verdocs-field-pulse 0.75s 2;animation:verdocs-field-pulse 0.75s 2}verdocs-field-dropdown verdocs-button-panel{display:block;margin-left:-33px;margin-top:-1px;-webkit-transform:scale(0.7);transform:scale(0.7)}verdocs-field-dropdown .settings-icon{position:absolute;top:-2px;left:-20px;display:inline-block;cursor:pointer;opacity:0.6}verdocs-field-dropdown .settings-icon svg{fill:#707ae5}verdocs-field-dropdown .settings-icon:hover{opacity:1}";
286
+
287
+ const VerdocsFieldDropdown = class {
288
+ constructor(hostRef) {
289
+ registerInstance(this, hostRef);
290
+ this.fieldChange = createEvent(this, "fieldChange", 7);
291
+ this.settingsChanged = createEvent(this, "settingsChanged", 7);
292
+ this.deleted = createEvent(this, "deleted", 7);
293
+ this.fieldStore = null;
294
+ this.roleStore = null;
295
+ this.templateid = '';
296
+ this.fieldname = '';
297
+ this.disabled = false;
298
+ this.editable = false;
299
+ this.moveable = false;
300
+ this.done = false;
301
+ this.xscale = 1;
302
+ this.yscale = 1;
303
+ this.pagenumber = 1;
304
+ this.showingProperties = false;
305
+ }
306
+ async focusField() {
307
+ this.el.focus();
308
+ }
309
+ handleChange(e) {
310
+ this.fieldChange.emit(e.target.value);
311
+ }
312
+ async showSettingsPanel() {
313
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
314
+ if (settingsPanel && settingsPanel.showPanel) {
315
+ settingsPanel.showPanel();
316
+ }
317
+ }
318
+ async hideSettingsPanel() {
319
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
320
+ if (settingsPanel && settingsPanel.hidePanel) {
321
+ settingsPanel.hidePanel();
322
+ }
323
+ }
324
+ async componentWillLoad() {
325
+ this.fieldStore = getTemplateFieldStore(this.templateid);
326
+ this.roleStore = getTemplateRoleStore(this.templateid);
327
+ }
328
+ render() {
329
+ var _a, _b;
330
+ const field = this.fieldStore.get('fields').find(field => field.name === this.fieldname);
331
+ const roleIndex = getRoleIndex(this.roleStore, field.role_name);
332
+ const backgroundColor = field['rgba'] || getRGBA(roleIndex);
333
+ if (!field) {
334
+ return h(Fragment, null);
335
+ }
336
+ const settings = getFieldSettings(field);
337
+ const disabled = (_b = (_a = this.disabled) !== null && _a !== void 0 ? _a : settings.disabled) !== null && _b !== void 0 ? _b : false;
338
+ const value = (settings === null || settings === void 0 ? void 0 : settings.value) || '';
339
+ if (this.done) {
340
+ return h(Host, { class: { done: this.done } }, value);
341
+ }
342
+ return (h(Host, { class: { required: settings.required, disabled }, style: { backgroundColor } }, h("select", { tabIndex: settings.order, disabled: disabled, ref: el => (this.el = el), onChange: e => this.handleChange(e) }, h("option", { value: "" }, "Select..."), (settings.options || []).map(option => (h("option", { value: option.id, selected: option.value === value }, option.value)))), this.editable && (h(Fragment, null, h("div", { id: `verdocs-settings-panel-trigger-${field.name}`, style: { transform: `scale(${Math.floor((1 / this.xscale) * 1000) / 1000}, ${Math.floor((1 / this.yscale) * 1000) / 1000})` }, class: "settings-icon", innerHTML: SettingsIcon, onClick: (e) => {
343
+ e.stopPropagation();
344
+ this.showingProperties = !this.showingProperties;
345
+ } }), this.showingProperties && (h("verdocs-portal", { anchor: `verdocs-settings-panel-trigger-${field.name}`, onClickAway: () => (this.showingProperties = false) }, h("verdocs-template-field-properties", { templateId: this.templateid, fieldName: field.name, onClose: () => (this.showingProperties = false), onDelete: () => {
346
+ var _a;
347
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: field.name });
348
+ return this.hideSettingsPanel();
349
+ }, onSettingsChanged: e => {
350
+ var _a;
351
+ (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit(e.detail);
352
+ return this.hideSettingsPanel();
353
+ }, helpText: "Dropdowns are used to capture a recipient's selection of one of several options." })))))));
354
+ }
355
+ };
356
+ VerdocsFieldDropdown.style = verdocsFieldDropdownCss;
357
+
358
+ const verdocsFieldInitialCss = "verdocs-field-initial{font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif;width:83px;height:36px;display:block;font-size:11px;letter-spacing:0.3px;background-color:transparent;-webkit-transform-origin:bottom left;transform-origin:bottom left;border:1px solid rgba(0, 0, 0, 0.2)}verdocs-field-initial.disabled{opacity:0.5}verdocs-field-initial.done{border:none;opacity:1}verdocs-field-initial img{display:block;max-width:100%;max-height:100%}verdocs-field-initial button{cursor:inherit;-webkit-box-sizing:border-box;box-sizing:border-box;border:none;color:rgba(0, 0, 0, 0.87);font-weight:500;-webkit-transform-origin:0 0;transform-origin:0 0;height:100%;width:100%;background:none;font-size:11px}verdocs-field-initial button.hide{display:none}verdocs-field-initial.required{border:1px solid #cc0000}verdocs-field-initial.focused{-webkit-animation:verdocs-field-pulse 0.75s 2;animation:verdocs-field-pulse 0.75s 2}verdocs-field-initial verdocs-button-panel{top:-3px;left:-2px;opacity:0.5;z-index:1000;cursor:pointer;position:absolute;-webkit-transform:scale(0.6);transform:scale(0.6)}verdocs-field-initial verdocs-button-panel[data-active],verdocs-field-initial verdocs-button-panel:hover{opacity:1}verdocs-field-initial verdocs-button-panel .icon svg{fill:#333333}verdocs-field-initial verdocs-button-panel .icon:hover svg{fill:#000000}verdocs-field-initial .settings-icon{position:absolute;top:-3px;left:-20px;display:inline-block;cursor:pointer;opacity:0.6}verdocs-field-initial .settings-icon svg{fill:#707ae5}verdocs-field-initial .settings-icon:hover{opacity:1}";
359
+
360
+ const VerdocsFieldInitial = class {
361
+ constructor(hostRef) {
362
+ registerInstance(this, hostRef);
363
+ this.adopt = createEvent(this, "adopt", 7);
364
+ this.exit = createEvent(this, "exit", 7);
365
+ this.fieldChange = createEvent(this, "fieldChange", 7);
366
+ this.settingsChanged = createEvent(this, "settingsChanged", 7);
367
+ this.settingsPress = createEvent(this, "settingsPress", 7);
368
+ this.deleted = createEvent(this, "deleted", 7);
369
+ this.fieldStore = null;
370
+ this.roleStore = null;
371
+ this.templateid = '';
372
+ this.fieldname = '';
373
+ this.disabled = false;
374
+ this.initials = '';
375
+ this.editable = false;
376
+ this.moveable = false;
377
+ this.done = false;
378
+ this.xscale = 1;
379
+ this.yscale = 1;
380
+ this.pagenumber = 1;
381
+ this.showingProperties = false;
382
+ this.tempInitials = '';
383
+ }
384
+ async focusField() {
385
+ this.handleShow();
386
+ }
387
+ async componentWillLoad() {
388
+ this.fieldStore = getTemplateFieldStore(this.templateid);
389
+ this.roleStore = getTemplateRoleStore(this.templateid);
390
+ }
391
+ hideDialog() {
392
+ var _a;
393
+ (_a = this.dialog) === null || _a === void 0 ? void 0 : _a.remove();
394
+ this.dialog = null;
395
+ }
396
+ handleAdopt(e) {
397
+ var _a;
398
+ console.log('[INITIAL] Adopted initials');
399
+ this.tempInitials = e.detail;
400
+ (_a = this.fieldChange) === null || _a === void 0 ? void 0 : _a.emit(this.tempInitials);
401
+ this.hideDialog();
402
+ }
403
+ handleShow() {
404
+ this.dialog = document.createElement('verdocs-initial-dialog');
405
+ this.dialog.setAttribute('initials', this.initials);
406
+ // this.dialog.setAttribute('roleindex', this.roleindex);
407
+ this.dialog.addEventListener('exit', () => this.hideDialog());
408
+ this.dialog.addEventListener('next', e => this.handleAdopt(e));
409
+ document.body.append(this.dialog);
410
+ }
411
+ async showSettingsPanel() {
412
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
413
+ if (settingsPanel && settingsPanel.showPanel) {
414
+ settingsPanel.showPanel();
415
+ }
416
+ }
417
+ async hideSettingsPanel() {
418
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
419
+ if (settingsPanel && settingsPanel.hidePanel) {
420
+ settingsPanel.hidePanel();
421
+ }
422
+ }
423
+ render() {
424
+ var _a, _b;
425
+ const field = this.fieldStore.get('fields').find(field => field.name === this.fieldname);
426
+ const roleIndex = getRoleIndex(this.roleStore, field.role_name);
427
+ const backgroundColor = field['rgba'] || getRGBA(roleIndex);
428
+ if (!field) {
429
+ return h(Fragment, null);
430
+ }
431
+ const settings = getFieldSettings(field);
432
+ const value = settings.base64 || this.tempInitials;
433
+ const disabled = (_b = (_a = this.disabled) !== null && _a !== void 0 ? _a : settings.disabled) !== null && _b !== void 0 ? _b : false;
434
+ if (this.done) {
435
+ return h(Host, { class: { done: this.done } }, value && h("img", { src: value, alt: "Initials" }));
436
+ }
437
+ return (h(Host, { class: { required: field === null || field === void 0 ? void 0 : field.required, disabled }, style: { backgroundColor } }, value ? (h("img", { src: value, alt: "Initials" })) : (h("button", { class: {}, onClick: () => !disabled && this.handleShow() }, "Initials")), this.editable && (h(Fragment, null, h("div", { id: `verdocs-settings-panel-trigger-${field.name}`, style: { transform: `scale(${Math.floor((1 / this.xscale) * 1000) / 1000}, ${Math.floor((1 / this.yscale) * 1000) / 1000})` }, class: "settings-icon", innerHTML: SettingsIcon, onClick: (e) => {
438
+ e.stopPropagation();
439
+ this.showingProperties = !this.showingProperties;
440
+ } }), this.showingProperties && (h("verdocs-portal", { anchor: `verdocs-settings-panel-trigger-${this.fieldname}`, onClickAway: () => (this.showingProperties = false) }, h("verdocs-template-field-properties", { templateId: this.templateid, fieldName: field.name, onClose: () => (this.showingProperties = false), onDelete: () => {
441
+ var _a;
442
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: field.name });
443
+ return this.hideSettingsPanel();
444
+ }, onSettingsChanged: e => {
445
+ var _a;
446
+ (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit(e.detail);
447
+ return this.hideSettingsPanel();
448
+ }, helpText: "initial fields capture the recipient's initials on a clause or page." })))))));
449
+ }
450
+ };
451
+ VerdocsFieldInitial.style = verdocsFieldInitialCss;
452
+
453
+ const verdocsFieldRadioButtonCss = "verdocs-field-radio-button{font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif;width:12px;height:12px;display:block;font-size:11px;position:relative;background-color:transparent;-webkit-transform-origin:bottom left;transform-origin:bottom left;border-radius:100%}verdocs-field-radio-button svg{margin-top:4px}verdocs-field-radio-button.disabled{opacity:0.5}verdocs-field-radio-button.disabled.done{opacity:1}verdocs-field-radio-button input{cursor:inherit}verdocs-field-radio-button.done input[type=radio]{margin:0;padding:0;width:10px;height:10px}verdocs-field-radio-button:not(.done) input[type=radio]{position:absolute;opacity:0}verdocs-field-radio-button:not(.done) input[type=radio]+label:before{content:\"\";border-radius:100%;border:1px solid rgba(0, 0, 0, 0.6);display:inline-block;width:10px;height:10px;position:absolute;left:1px;top:1px;cursor:pointer;text-align:center;-webkit-transition:all 250ms ease;transition:all 250ms ease}verdocs-field-radio-button:not(.done) input[type=radio]:checked+label:before{background-color:#55bc81;-webkit-box-shadow:inset 0 0 0 2px #f5f5fa;box-shadow:inset 0 0 0 2px #f5f5fa}verdocs-field-radio-button:not(.done) input[type=radio]:focus+label:before{outline:none;border-color:#55bc81}verdocs-field-radio-button:not(.done) input[type=radio]:disabled+label:before{-webkit-box-shadow:inset 0 0 0 4px #f5f5fa;box-shadow:inset 0 0 0 4px #f5f5fa;border-color:#a0a0d0;background:#a0a0d0}verdocs-field-radio-button:not(.done) input[type=radio]+label:empty:before{margin-right:0}verdocs-field-radio-button.required{border:1px solid #cc0000}verdocs-field-radio-button.hide{display:none}verdocs-field-radio-button.focused{-webkit-animation:verdocs-field-pulse 0.75s 2;animation:verdocs-field-pulse 0.75s 2}verdocs-field-radio-button verdocs-button-panel{margin-left:-20px;margin-top:-7px;-webkit-transform:scale(0.7);transform:scale(0.7)}verdocs-field-radio-button .settings-icon{position:absolute;top:-6px;left:-20px;display:inline-block;cursor:pointer;opacity:0.6}verdocs-field-radio-button .settings-icon svg{fill:#707ae5}verdocs-field-radio-button .settings-icon:hover{opacity:1}";
454
+
455
+ const RadioIconUnselected = `<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"></path></svg>`;
456
+ const RadioIconSelected = `<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24"><path d="M12 7c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5zm0-5C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"></path></svg>`;
457
+ const VerdocsFieldRadioButton = class {
458
+ constructor(hostRef) {
459
+ registerInstance(this, hostRef);
460
+ this.settingsChanged = createEvent(this, "settingsChanged", 7);
461
+ this.deleted = createEvent(this, "deleted", 7);
462
+ this.fieldStore = null;
463
+ this.roleStore = null;
464
+ this.templateid = '';
465
+ this.fieldname = '';
466
+ this.option = 0;
467
+ this.disabled = false;
468
+ this.done = false;
469
+ this.editable = false;
470
+ this.moveable = false;
471
+ this.xscale = 1;
472
+ this.yscale = 1;
473
+ this.pagenumber = 1;
474
+ this.showingProperties = false;
475
+ }
476
+ async showSettingsPanel() {
477
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
478
+ if (settingsPanel && settingsPanel.showPanel) {
479
+ settingsPanel.showPanel();
480
+ }
481
+ }
482
+ async hideSettingsPanel() {
483
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
484
+ if (settingsPanel && settingsPanel.hidePanel) {
485
+ settingsPanel.hidePanel();
486
+ }
487
+ }
488
+ async componentWillLoad() {
489
+ this.fieldStore = getTemplateFieldStore(this.templateid);
490
+ this.roleStore = getTemplateRoleStore(this.templateid);
491
+ }
492
+ render() {
493
+ var _a, _b;
494
+ const field = this.fieldStore.get('fields').find(field => field.name === this.fieldname);
495
+ const roleIndex = getRoleIndex(this.roleStore, field.role_name);
496
+ const backgroundColor = field['rgba'] || getRGBA(roleIndex);
497
+ if (!field) {
498
+ return h(Fragment, null);
499
+ }
500
+ const settings = getFieldSettings(field);
501
+ const disabled = (_b = (_a = this.disabled) !== null && _a !== void 0 ? _a : settings.disabled) !== null && _b !== void 0 ? _b : false;
502
+ const required = field.required;
503
+ const option = settings.options[this.option];
504
+ const id = `${field.name}-${option.id}`;
505
+ if (this.done) {
506
+ return (h(Host, { class: { done: this.done }, style: { maxWidth: '10px' } }, h("span", { innerHTML: !!option.selected ? RadioIconSelected : RadioIconUnselected })));
507
+ }
508
+ return (h(Host, { class: { required, disabled }, style: { backgroundColor } }, h("input", { id: id, type: "radio", name: field.name, value: option.id, tabIndex: settings.order, checked: !!option.selected, disabled: disabled, required: settings.required }), h("label", { htmlFor: id }), this.editable && (h(Fragment, null, h("div", { id: `verdocs-settings-panel-trigger-${field.name}`, style: { transform: `scale(${Math.floor((1 / this.xscale) * 1000) / 1000}, ${Math.floor((1 / this.yscale) * 1000) / 1000})` }, class: "settings-icon", innerHTML: SettingsIcon, onClick: (e) => {
509
+ e.stopPropagation();
510
+ this.showingProperties = !this.showingProperties;
511
+ } }), this.showingProperties && (h("verdocs-portal", { anchor: `verdocs-settings-panel-trigger-${field.name}`, onClickAway: () => (this.showingProperties = false) }, h("verdocs-template-field-properties", { templateId: this.templateid, fieldName: field.name, onClose: () => (this.showingProperties = false), onDelete: () => {
512
+ var _a;
513
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: field.name });
514
+ return this.hideSettingsPanel();
515
+ }, onSettingsChanged: e => {
516
+ var _a;
517
+ (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit(e.detail);
518
+ return this.hideSettingsPanel();
519
+ }, helpText: "Radio buttons capture the recipient's selection of just one of several related (exclusive) options." })))))));
520
+ }
521
+ };
522
+ VerdocsFieldRadioButton.style = verdocsFieldRadioButtonCss;
523
+
524
+ const verdocsFieldSignatureCss = "verdocs-field-signature{font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif;width:83px;height:36px;display:block;font-size:11px;position:relative;letter-spacing:0.3px;background-color:transparent;-webkit-transform-origin:bottom left;transform-origin:bottom left;border:1px solid rgba(0, 0, 0, 0.2)}verdocs-field-signature.disabled{opacity:0.5}verdocs-field-signature.done{border:none;opacity:1}verdocs-field-signature img{display:block;max-width:100%;max-height:100%}verdocs-field-signature button{cursor:inherit;-webkit-box-sizing:border-box;box-sizing:border-box;border:none;color:rgba(0, 0, 0, 0.87);font-weight:500;-webkit-transform-origin:0 0;transform-origin:0 0;height:100%;width:100%;background:none;font-size:11px}verdocs-field-signature button.hide{display:none}verdocs-field-signature.required{border:1px solid #cc0000}verdocs-field-signature.focused{-webkit-animation:verdocs-field-pulse 0.75s 2;animation:verdocs-field-pulse 0.75s 2}verdocs-field-signature verdocs-button-panel{top:-3px;left:-2px;opacity:0.5;z-index:1000;cursor:pointer;position:absolute;-webkit-transform:scale(0.6);transform:scale(0.6)}verdocs-field-signature verdocs-button-panel[data-active],verdocs-field-signature verdocs-button-panel:hover{opacity:1}verdocs-field-signature verdocs-button-panel .icon svg{fill:#333333}verdocs-field-signature verdocs-button-panel .icon:hover svg{fill:#000000}verdocs-field-signature .settings-icon{position:absolute;top:-3px;left:-20px;display:inline-block;cursor:pointer;opacity:0.6}verdocs-field-signature .settings-icon svg{fill:#707ae5}verdocs-field-signature .settings-icon:hover{opacity:1}";
525
+
526
+ const VerdocsFieldSignature = class {
527
+ constructor(hostRef) {
528
+ registerInstance(this, hostRef);
529
+ this.fieldChange = createEvent(this, "fieldChange", 7);
530
+ this.settingsPress = createEvent(this, "settingsPress", 7);
531
+ this.settingsChanged = createEvent(this, "settingsChanged", 7);
532
+ this.deleted = createEvent(this, "deleted", 7);
533
+ this.fieldStore = null;
534
+ this.roleStore = null;
535
+ this.templateid = '';
536
+ this.fieldname = '';
537
+ this.name = '';
538
+ this.disabled = false;
539
+ this.editable = false;
540
+ this.moveable = false;
541
+ this.done = false;
542
+ this.xscale = 1;
543
+ this.yscale = 1;
544
+ this.pagenumber = 1;
545
+ this.showingProperties = false;
546
+ this.tempSignature = '';
547
+ }
548
+ async focusField() {
549
+ this.handleShow();
550
+ console.log('focused', this);
551
+ }
552
+ hideDialog() {
553
+ var _a;
554
+ (_a = this.dialog) === null || _a === void 0 ? void 0 : _a.remove();
555
+ this.dialog = null;
556
+ }
557
+ handleAdopt(e) {
558
+ var _a;
559
+ console.log('[SIGNATURE] Adopted signature');
560
+ this.tempSignature = e.detail;
561
+ (_a = this.fieldChange) === null || _a === void 0 ? void 0 : _a.emit(this.tempSignature);
562
+ this.hideDialog();
563
+ }
564
+ handleShow() {
565
+ this.dialog = document.createElement('verdocs-signature-dialog');
566
+ this.dialog.setAttribute('name', this.name);
567
+ // this.dialog.setAttribute('roleindex', this.roleindex);
568
+ this.dialog.addEventListener('exit', () => this.hideDialog());
569
+ this.dialog.addEventListener('next', e => this.handleAdopt(e));
570
+ document.body.append(this.dialog);
571
+ }
572
+ async showSettingsPanel() {
573
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
574
+ if (settingsPanel && settingsPanel.showPanel) {
575
+ settingsPanel.showPanel();
576
+ }
577
+ }
578
+ async hideSettingsPanel() {
579
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
580
+ if (settingsPanel && settingsPanel.hidePanel) {
581
+ settingsPanel.hidePanel();
582
+ }
583
+ }
584
+ async componentWillLoad() {
585
+ this.fieldStore = getTemplateFieldStore(this.templateid);
586
+ this.roleStore = getTemplateRoleStore(this.templateid);
587
+ }
588
+ render() {
589
+ var _a, _b;
590
+ const field = this.fieldStore.get('fields').find(field => field.name === this.fieldname);
591
+ const roleIndex = getRoleIndex(this.roleStore, field.role_name);
592
+ const backgroundColor = field['rgba'] || getRGBA(roleIndex);
593
+ if (!field) {
594
+ return h(Fragment, null);
595
+ }
596
+ const settings = getFieldSettings(field);
597
+ const value = settings.base64 || this.tempSignature;
598
+ const disabled = (_b = (_a = this.disabled) !== null && _a !== void 0 ? _a : settings.disabled) !== null && _b !== void 0 ? _b : false;
599
+ if (this.done) {
600
+ return h(Host, { class: { done: this.done } }, value && h("img", { src: value, alt: "Signature" }));
601
+ }
602
+ return (h(Host, { class: { required: field === null || field === void 0 ? void 0 : field.required, disabled }, style: { backgroundColor } }, value ? h("img", { src: value, alt: "Signature" }) : h("button", { onClick: () => !disabled && this.handleShow() }, "Signature"), this.editable && (h(Fragment, null, h("div", { id: `verdocs-settings-panel-trigger-${field.name}`, style: { transform: `scale(${Math.floor((1 / this.xscale) * 1000) / 1000}, ${Math.floor((1 / this.yscale) * 1000) / 1000})` }, class: "settings-icon", innerHTML: SettingsIcon, onClick: (e) => {
603
+ e.stopPropagation();
604
+ this.showingProperties = !this.showingProperties;
605
+ } }), this.showingProperties && (h("verdocs-portal", { anchor: `verdocs-settings-panel-trigger-${field.name}`, onClickAway: () => (this.showingProperties = false) }, h("verdocs-template-field-properties", { templateId: this.templateid, fieldName: field.name, onClose: () => (this.showingProperties = false), onDelete: () => {
606
+ var _a;
607
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: field.name });
608
+ return this.hideSettingsPanel();
609
+ }, onSettingsChanged: e => {
610
+ var _a;
611
+ (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit(e.detail);
612
+ return this.hideSettingsPanel();
613
+ }, helpText: "Signature fields capture a recipient's signature on a document." })))))));
614
+ }
615
+ };
616
+ VerdocsFieldSignature.style = verdocsFieldSignatureCss;
617
+
618
+ const verdocsFieldTextareaCss = "verdocs-field-textarea{width:150px;height:15px;display:block;font-size:11px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;background-color:transparent;-webkit-transform-origin:bottom left;transform-origin:bottom left;font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif;border:1px solid rgba(0, 0, 0, 0.2)}verdocs-field-textarea.disabled{opacity:0.5}verdocs-field-textarea textarea{cursor:inherit;width:100%;height:100%;resize:none;border:none;outline:none;padding:0 3px;font-size:11px;background:none;font-weight:500;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-box-sizing:border-box;box-sizing:border-box;color:rgba(0, 0, 0, 0.87)}verdocs-field-textarea textarea.hide{display:none}verdocs-field-textarea.required{border:1px solid #cc0000}verdocs-field-textarea.focused{-webkit-animation:verdocs-field-pulse 0.75s 2;animation:verdocs-field-pulse 0.75s 2}verdocs-field-textarea verdocs-button-panel{top:-3px;left:-2px;opacity:0.5;z-index:1000;cursor:pointer;position:absolute;-webkit-transform:scale(0.6);transform:scale(0.6)}verdocs-field-textarea verdocs-button-panel[data-active],verdocs-field-textarea verdocs-button-panel:hover{opacity:1}verdocs-field-textarea verdocs-button-panel .icon svg{fill:#333333}verdocs-field-textarea verdocs-button-panel .icon:hover svg{fill:#000000}verdocs-field-textarea .settings-icon{position:absolute;top:-3px;left:-20px;display:inline-block;cursor:pointer;opacity:0.6}verdocs-field-textarea .settings-icon svg{fill:#707ae5}verdocs-field-textarea .settings-icon:hover{opacity:1}";
619
+
620
+ const VerdocsFieldTextarea = class {
621
+ constructor(hostRef) {
622
+ registerInstance(this, hostRef);
623
+ this.settingsChanged = createEvent(this, "settingsChanged", 7);
624
+ this.deleted = createEvent(this, "deleted", 7);
625
+ this.fieldStore = null;
626
+ this.roleStore = null;
627
+ this.endpoint = VerdocsEndpoint.getDefault();
628
+ this.templateid = '';
629
+ this.fieldname = '';
630
+ this.disabled = false;
631
+ this.editable = false;
632
+ this.moveable = false;
633
+ this.done = false;
634
+ this.xscale = 1;
635
+ this.yscale = 1;
636
+ this.pagenumber = 1;
637
+ this.showingProperties = false;
638
+ }
639
+ async focusField() {
640
+ this.inputEl.focus();
641
+ }
642
+ async showSettingsPanel() {
643
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
644
+ if (settingsPanel && settingsPanel.showPanel) {
645
+ settingsPanel.showPanel();
646
+ }
647
+ }
648
+ async hideSettingsPanel() {
649
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
650
+ if (settingsPanel && settingsPanel.hidePanel) {
651
+ settingsPanel.hidePanel();
652
+ }
653
+ }
654
+ async componentWillLoad() {
655
+ this.fieldStore = getTemplateFieldStore(this.templateid);
656
+ this.roleStore = getTemplateRoleStore(this.templateid);
657
+ }
658
+ componentDidRender() {
659
+ interact_min.dynamicDrop(true);
660
+ if (this.editable) {
661
+ interact_min(this.el).resizable({
662
+ edges: { top: true, bottom: true, left: true, right: true },
663
+ listeners: {
664
+ start: this.handleResizeStart.bind(this),
665
+ move: this.handleResize.bind(this),
666
+ end: this.handleResizeEnd.bind(this),
667
+ },
668
+ });
669
+ }
670
+ }
671
+ handleResizeStart(e) {
672
+ e.preventDefault();
673
+ e.stopPropagation();
674
+ }
675
+ handleResize(e) {
676
+ let { x = 0, y = 0, h = 0 } = e.target.dataset;
677
+ let { width, height } = e.rect;
678
+ x = (parseFloat(x) || 0) + e.deltaRect.left;
679
+ y = (parseFloat(y) || 0) + e.deltaRect.top;
680
+ h = (parseFloat(h) || 0) + e.deltaRect.height;
681
+ Object.assign(e.target.style, {
682
+ width: `${width}px`,
683
+ height: `${height}px`,
684
+ transform: `translate(${x}px, ${y + h}px)`,
685
+ });
686
+ Object.assign(e.target.dataset, { x, y, h });
687
+ }
688
+ handleResizeEnd(e) {
689
+ const field = this.fieldStore.get('fields').find(field => field.name === this.fieldname);
690
+ if (!field) {
691
+ return h(Fragment, null);
692
+ }
693
+ const newSettings = { ...getFieldSettings(field) };
694
+ const [translateX, translateY] = e.target.style.transform.split('(')[1].split(')')[0].split(',').map(parseFloat);
695
+ newSettings.width = Math.round(parseFloat(e.target.style.width) / this.xscale);
696
+ newSettings.height = Math.round(parseFloat(e.target.style.height) / this.yscale);
697
+ newSettings.x = Math.round(newSettings.x + translateX / this.xscale);
698
+ newSettings.y = Math.round(newSettings.y - translateY / this.yscale);
699
+ updateField(this.endpoint, this.templateid, this.fieldname, { setting: newSettings })
700
+ .then(field => {
701
+ var _a;
702
+ (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.fieldname, settings: newSettings, field });
703
+ Object.assign(e.target.dataset, { x: 0, y: 0, h: 0 });
704
+ })
705
+ .catch(e => console.log('Field update failed', e));
706
+ }
707
+ render() {
708
+ var _a, _b;
709
+ const field = this.fieldStore.get('fields').find(field => field.name === this.fieldname);
710
+ const roleIndex = getRoleIndex(this.roleStore, field.role_name);
711
+ const backgroundColor = field['rgba'] || getRGBA(roleIndex);
712
+ if (!field) {
713
+ return h(Fragment, null);
714
+ }
715
+ const settings = getFieldSettings(field);
716
+ const disabled = (_b = (_a = this.disabled) !== null && _a !== void 0 ? _a : settings.disabled) !== null && _b !== void 0 ? _b : false;
717
+ const value = (settings === null || settings === void 0 ? void 0 : settings.result) || '';
718
+ if (this.done) {
719
+ return h(Host, { class: { done: this.done } }, settings.value);
720
+ }
721
+ return (h(Host, { class: { required: field === null || field === void 0 ? void 0 : field.required, disabled, done: this.done }, style: { backgroundColor } }, h("textarea", { placeholder: settings.placeholder || '', tabIndex: settings.order, disabled: disabled, name: field.name, required: field === null || field === void 0 ? void 0 : field.required, ref: el => (this.inputEl = el) }, value), this.editable && (h(Fragment, null, h("div", { id: `verdocs-settings-panel-trigger-${field.name}`, style: { transform: `scale(${Math.floor((1 / this.xscale) * 1000) / 1000}, ${Math.floor((1 / this.yscale) * 1000) / 1000})` }, class: "settings-icon", innerHTML: SettingsIcon, onClick: (e) => {
722
+ e.stopPropagation();
723
+ this.showingProperties = !this.showingProperties;
724
+ } }), this.showingProperties && (h("verdocs-portal", { anchor: `verdocs-settings-panel-trigger-${this.fieldname}`, onClickAway: () => (this.showingProperties = false) }, h("verdocs-template-field-properties", { templateId: this.templateid, fieldName: field.name, onClose: () => (this.showingProperties = false), onDelete: () => {
725
+ var _a;
726
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: field.name });
727
+ return this.hideSettingsPanel();
728
+ }, onSettingsChanged: e => {
729
+ var _a;
730
+ (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit(e.detail);
731
+ return this.hideSettingsPanel();
732
+ }, helpText: 'Text areas may be used to create multi-line text fields.' })))))));
733
+ }
734
+ get el() { return getElement(this); }
735
+ };
736
+ VerdocsFieldTextarea.style = verdocsFieldTextareaCss;
737
+
738
+ const verdocsFieldTextboxCss = "verdocs-field-textbox{font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif;-webkit-box-sizing:border-box;box-sizing:border-box;width:150px;height:15px;display:block;font-size:11px;letter-spacing:-0.2px;background-color:transparent;-webkit-transform-origin:bottom left;transform-origin:bottom left;border:1px solid rgba(0, 0, 0, 0.2)}verdocs-field-textbox.disabled{opacity:0.5}verdocs-field-textbox input{cursor:inherit;width:100%;height:100%;border:none;outline:none;padding:0 3px;font-size:11px;background:none;font-weight:500;position:absolute;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-box-sizing:border-box;box-sizing:border-box;color:rgba(0, 0, 0, 0.87)}verdocs-field-textbox input.hide{display:none}verdocs-field-textbox.required{border:1px solid #cc0000}verdocs-field-textbox.focused{-webkit-animation:verdocs-field-pulse 0.75s 2;animation:verdocs-field-pulse 0.75s 2}verdocs-field-textbox verdocs-button-panel{top:-3px;left:-2px;opacity:0.5;z-index:1000;cursor:pointer;position:absolute;-webkit-transform:scale(0.6);transform:scale(0.6)}verdocs-field-textbox verdocs-button-panel[data-active],verdocs-field-textbox verdocs-button-panel:hover{opacity:1}verdocs-field-textbox verdocs-button-panel .icon svg{fill:#333333}verdocs-field-textbox verdocs-button-panel .icon:hover svg{fill:#000000}verdocs-field-textbox [data-lastpass-icon-root]{display:none !important}verdocs-field-textbox .settings-icon{position:absolute;top:-4px;left:-18px;display:inline-block;cursor:pointer;opacity:0.6}verdocs-field-textbox .settings-icon svg{fill:#707ae5}verdocs-field-textbox .settings-icon:hover{opacity:1}";
739
+
740
+ const VerdocsFieldTextbox = class {
741
+ constructor(hostRef) {
742
+ registerInstance(this, hostRef);
743
+ this.settingsChanged = createEvent(this, "settingsChanged", 7);
744
+ this.deleted = createEvent(this, "deleted", 7);
745
+ this.fieldStore = null;
746
+ this.roleStore = null;
747
+ this.endpoint = VerdocsEndpoint.getDefault();
748
+ this.templateid = '';
749
+ this.fieldname = '';
750
+ this.disabled = false;
751
+ this.editable = false;
752
+ this.moveable = false;
753
+ this.done = false;
754
+ this.xscale = 1;
755
+ this.yscale = 1;
756
+ this.pagenumber = 1;
757
+ this.showingProperties = false;
758
+ }
759
+ async focusField() {
760
+ this.inputEl.focus();
761
+ }
762
+ async showSettingsPanel() {
763
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
764
+ if (settingsPanel && settingsPanel.showPanel) {
765
+ settingsPanel.showPanel();
766
+ }
767
+ }
768
+ async hideSettingsPanel() {
769
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
770
+ if (settingsPanel && settingsPanel.hidePanel) {
771
+ settingsPanel.hidePanel();
772
+ }
773
+ }
774
+ async componentWillLoad() {
775
+ this.fieldStore = getTemplateFieldStore(this.templateid);
776
+ this.roleStore = getTemplateRoleStore(this.templateid);
777
+ }
778
+ componentDidRender() {
779
+ interact_min.dynamicDrop(true);
780
+ if (this.editable) {
781
+ interact_min(this.el).resizable({
782
+ edges: { top: false, bottom: false, left: true, right: true },
783
+ listeners: {
784
+ start: this.handleResizeStart.bind(this),
785
+ move: this.handleResize.bind(this),
786
+ end: this.handleResizeEnd.bind(this),
787
+ },
788
+ });
789
+ }
790
+ }
791
+ handleResizeStart(e) {
792
+ e.preventDefault();
793
+ e.stopPropagation();
794
+ }
795
+ handleResize(e) {
796
+ let { x = 0, y = 0, h = 0 } = e.target.dataset;
797
+ let { width, height } = e.rect;
798
+ x = (parseFloat(x) || 0) + e.deltaRect.left;
799
+ y = (parseFloat(y) || 0) + e.deltaRect.top;
800
+ h = (parseFloat(h) || 0) + e.deltaRect.height;
801
+ width /= this.xscale;
802
+ height /= this.yscale;
803
+ Object.assign(e.target.style, {
804
+ width: `${width}px`,
805
+ height: `${height}px`,
806
+ transform: `scale(${this.xscale}, ${this.yscale}); translate(${x}px, ${y + h}px)`,
807
+ });
808
+ Object.assign(e.target.dataset, { x, y, h });
809
+ }
810
+ handleResizeEnd(e) {
811
+ const field = this.fieldStore.get('fields').find(field => field.name === this.fieldname);
812
+ const newSettings = { ...getFieldSettings(field) };
813
+ const [translateX, translateY] = e.target.style.transform.split('(')[1].split(')')[0].split(',').map(parseFloat);
814
+ console.log({ translateX, translateY });
815
+ newSettings.width = Math.round(parseFloat(e.target.style.width));
816
+ newSettings.height = Math.round(parseFloat(e.target.style.height));
817
+ // newSettings.x = Math.round(newSettings.x + translateX / this.xscale);
818
+ // newSettings.y = Math.round(newSettings.y - translateY / this.yscale);
819
+ updateField(this.endpoint, this.templateid, this.fieldname, { setting: newSettings })
820
+ .then(field => {
821
+ var _a;
822
+ console.log('Update result', field);
823
+ (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: field.name, settings: newSettings, field });
824
+ Object.assign(e.target.dataset, { x: 0, y: 0, h: 0 });
825
+ })
826
+ .catch(e => console.log('Field update failed', e));
827
+ }
828
+ render() {
829
+ var _a, _b;
830
+ const field = this.fieldStore.get('fields').find(field => field.name === this.fieldname);
831
+ const roleIndex = getRoleIndex(this.roleStore, field.role_name);
832
+ const backgroundColor = field['rgba'] || getRGBA(roleIndex);
833
+ if (!field) {
834
+ return h(Fragment, null);
835
+ }
836
+ const settings = getFieldSettings(field);
837
+ let disabled = (_b = (_a = this.disabled) !== null && _a !== void 0 ? _a : settings.disabled) !== null && _b !== void 0 ? _b : false;
838
+ const value = (settings === null || settings === void 0 ? void 0 : settings.result) || '';
839
+ const width = settings.width || 150;
840
+ // TODO: This is an outdated technique from the old system. We should compute it.
841
+ const maxlength = width / 5;
842
+ if (this.done) {
843
+ return h(Host, { class: { done: this.done } }, value);
844
+ }
845
+ return (h(Host, { class: { required: field.required, disabled, done: this.done }, style: { backgroundColor } }, h("input", { type: "text", name: field.name, 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: field === null || field === void 0 ? void 0 : field.required, ref: el => (this.inputEl = el), maxlength: maxlength }), this.editable && (h(Fragment, null, h("div", { id: `verdocs-settings-panel-trigger-${field.name}`, style: { transform: `scale(${Math.floor((1 / this.xscale) * 1000) / 1000}, ${Math.floor((1 / this.yscale) * 1000) / 1000})` }, class: "settings-icon", innerHTML: SettingsIcon, onClick: (e) => {
846
+ e.stopPropagation();
847
+ this.showingProperties = !this.showingProperties;
848
+ } }), this.showingProperties && (h("verdocs-portal", { anchor: `verdocs-settings-panel-trigger-${field.name}`, onClickAway: () => (this.showingProperties = false) }, h("verdocs-template-field-properties", { templateId: this.templateid, fieldName: field.name, onClose: () => (this.showingProperties = false), onDelete: () => {
849
+ var _a;
850
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: field.name });
851
+ return this.hideSettingsPanel();
852
+ }, onSettingsChanged: e => {
853
+ var _a;
854
+ (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit(e.detail);
855
+ return this.hideSettingsPanel();
856
+ }, helpText: 'Text boxes may be used to capture simple text input. Participant-entered values will be stored for later retrieval via the "name" field.<br /><br />If marked required, the participant must complete the field before proceeding.' })))))));
857
+ }
858
+ get el() { return getElement(this); }
859
+ };
860
+ VerdocsFieldTextbox.style = verdocsFieldTextboxCss;
861
+
862
+ const verdocsFieldTimestampCss = "verdocs-field-timestamp{width:160px;height:15px;opacity:0.5;display:block;font-size:9px;position:relative;background-color:transparent;-webkit-transform-origin:bottom left;transform-origin:bottom left;font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif}verdocs-field-timestamp.done{opacity:1}verdocs-field-timestamp input{position:absolute;cursor:inherit;width:100%;height:100%;font-size:9px;background:none;font-weight:500;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-box-sizing:border-box;box-sizing:border-box;color:rgba(0, 0, 0, 0.87);border:1px solid rgba(0, 0, 0, 0.2)}verdocs-field-timestamp input.hide{display:none}verdocs-field-timestamp.required{border:1px solid #cc0000}verdocs-field-timestamp.focused{-webkit-animation:verdocs-field-pulse 0.75s 2;animation:verdocs-field-pulse 0.75s 2}verdocs-field-timestamp verdocs-button-panel{top:-3px;left:-2px;opacity:0.5;z-index:1000;cursor:pointer;position:absolute;-webkit-transform:scale(0.6);transform:scale(0.6)}verdocs-field-timestamp verdocs-button-panel[data-active],verdocs-field-timestamp verdocs-button-panel:hover{opacity:1}verdocs-field-timestamp verdocs-button-panel .icon svg{fill:#333333}verdocs-field-timestamp verdocs-button-panel .icon:hover svg{fill:#000000}verdocs-field-timestamp .settings-icon{position:absolute;top:-3px;left:-20px;display:inline-block;cursor:pointer;opacity:0.6}verdocs-field-timestamp .settings-icon svg{fill:#707ae5}verdocs-field-timestamp .settings-icon:hover{opacity:1}";
863
+
864
+ const VerdocsFieldTimestamp = class {
865
+ constructor(hostRef) {
866
+ registerInstance(this, hostRef);
867
+ this.settingsChanged = createEvent(this, "settingsChanged", 7);
868
+ this.deleted = createEvent(this, "deleted", 7);
869
+ this.fieldStore = null;
870
+ this.roleStore = null;
871
+ this.templateid = '';
872
+ this.fieldname = '';
873
+ this.disabled = false;
874
+ this.editable = false;
875
+ this.moveable = false;
876
+ this.done = false;
877
+ this.xscale = 1;
878
+ this.yscale = 1;
879
+ this.pagenumber = 1;
880
+ this.showingProperties = false;
881
+ }
882
+ async focusField() {
883
+ this.el.focus();
884
+ }
885
+ async showSettingsPanel() {
886
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
887
+ if (settingsPanel && settingsPanel.showPanel) {
888
+ settingsPanel.showPanel();
889
+ }
890
+ }
891
+ async hideSettingsPanel() {
892
+ const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`);
893
+ if (settingsPanel && settingsPanel.hidePanel) {
894
+ settingsPanel.hidePanel();
895
+ }
896
+ }
897
+ async componentWillLoad() {
898
+ this.fieldStore = getTemplateFieldStore(this.templateid);
899
+ this.roleStore = getTemplateRoleStore(this.templateid);
900
+ }
901
+ render() {
902
+ var _a, _b;
903
+ const field = this.fieldStore.get('fields').find(field => field.name === this.fieldname);
904
+ const roleIndex = getRoleIndex(this.roleStore, field.role_name);
905
+ const backgroundColor = field['rgba'] || getRGBA(roleIndex);
906
+ if (!field) {
907
+ return h(Fragment, null);
908
+ }
909
+ const settings = getFieldSettings(field);
910
+ const disabled = (_b = (_a = this.disabled) !== null && _a !== void 0 ? _a : settings.disabled) !== null && _b !== void 0 ? _b : false;
911
+ const value = settings.value || new Date().toISOString();
912
+ const dt = new Date(value);
913
+ const formatted = format(dt, FORMAT_TIMESTAMP);
914
+ if (this.done) {
915
+ return h(Host, { class: { done: this.done } }, formatted);
916
+ }
917
+ return (h(Host, { class: { required: field === null || field === void 0 ? void 0 : field.required, disabled }, 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,
918
+ // TODO: It would really make more sense to show the date and time but the default width of 64px for this field
919
+ // is encoded in a ton of existing entries in the database and is hard to change.
920
+ value: formatted, disabled: true, ref: el => (this.el = el) }), this.editable && (h(Fragment, null, h("div", { id: `verdocs-settings-panel-trigger-${field.name}`, style: { transform: `scale(${Math.floor((1 / this.xscale) * 1000) / 1000}, ${Math.floor((1 / this.yscale) * 1000) / 1000})` }, class: "settings-icon", innerHTML: SettingsIcon, onClick: (e) => {
921
+ e.stopPropagation();
922
+ this.showingProperties = !this.showingProperties;
923
+ } }), this.showingProperties && (h("verdocs-portal", { anchor: `verdocs-settings-panel-trigger-${field.name}`, onClickAway: () => (this.showingProperties = false) }, h("verdocs-template-field-properties", { templateId: this.templateid, fieldName: field.name, onClose: () => (this.showingProperties = false), onDelete: () => {
924
+ var _a;
925
+ (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: field.name });
926
+ return this.hideSettingsPanel();
927
+ }, onSettingsChanged: e => {
928
+ var _a;
929
+ (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit(e.detail);
930
+ return this.hideSettingsPanel();
931
+ }, helpText: 'Time stamps are automatically set when the recipient signs the document.' })))))));
932
+ }
933
+ };
934
+ VerdocsFieldTimestamp.style = verdocsFieldTimestampCss;
935
+
936
+ const verdocsInitialDialogCss = "verdocs-initial-dialog{font-family:\"Inter\", \"Barlow\", sans-serif;-webkit-box-sizing:border-box;box-sizing:border-box;position:fixed;z-index:10000;top:0;left:0;right:0;bottom:0;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;background:#0000007f}verdocs-initial-dialog .dialog{width:100%;max-width:340px;border-radius:4px;overflow:hidden;-webkit-box-shadow:3px 3px 5px 1px rgba(40, 40, 40, 0.4);box-shadow:3px 3px 5px 1px rgba(40, 40, 40, 0.4);background:#f9f9f9}verdocs-initial-dialog .heading{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding:20px 20px 0 20px;line-height:28px;font-size:20px;font-weight:500}verdocs-initial-dialog .content{font-size:14px;padding:20px}verdocs-initial-dialog .buttons{display:-ms-flexbox;display:flex;margin:20px 0 0 0;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-align:center;align-items:center}verdocs-initial-dialog .buttons verdocs-button{margin-left:16px}verdocs-initial-dialog canvas{background:#fff;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0 auto;width:300px;height:79px;max-width:100%;-webkit-box-shadow:0 0 6px 0 #0000001f;box-shadow:0 0 6px 0 #0000001f}verdocs-initial-dialog .disclaimer{text-align:justify;padding:8px 0;font-size:11px;line-height:14px;color:rgba(0, 0, 0, 0.54)}verdocs-initial-dialog .as-shown{font-size:11px;margin:4px 0 20px 4px;color:rgba(0, 0, 0, 0.54)}verdocs-initial-dialog .tabs{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}verdocs-initial-dialog .tabs .tab{padding:8px 15px;cursor:pointer}verdocs-initial-dialog .tabs .tab.active{border-bottom:2px solid #cccccc}verdocs-initial-dialog .tabs .tab:hover{color:#55bc81}";
937
+
938
+ const VerdocsInitialDialog = class {
939
+ constructor(hostRef) {
940
+ registerInstance(this, hostRef);
941
+ this.next = createEvent(this, "next", 7);
942
+ this.exit = createEvent(this, "exit", 7);
943
+ this.initials = '';
944
+ this.fontLoaded = false;
945
+ this.enteredInitials = '';
946
+ this.mode = 'type';
947
+ }
948
+ componentWillLoad() {
949
+ this.enteredInitials = this.initials.toUpperCase();
950
+ const ds = new FontFace('Dancing Script', 'url(https://fonts.gstatic.com/s/dancingscript/v19/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7BMSo3Sup6hNX6plRP.woff)');
951
+ ds.load().then(font => {
952
+ document.fonts.add(font);
953
+ this.fontLoaded = true;
954
+ });
955
+ }
956
+ componentDidLoad() {
957
+ this.redrawSignature();
958
+ }
959
+ componentDidUpdate() {
960
+ this.redrawSignature();
961
+ }
962
+ redrawSignature() {
963
+ if (!this.canvasElement) {
964
+ return;
965
+ }
966
+ const canvasWidth = this.canvasElement.width;
967
+ const context = this.canvasElement.getContext('2d');
968
+ context.clearRect(0, 0, this.canvasElement.width, this.canvasElement.height);
969
+ let fontSize = 100;
970
+ do {
971
+ fontSize -= 2;
972
+ context.font = `${fontSize}px Dancing Script`;
973
+ } while (context.measureText(this.enteredInitials).width > canvasWidth - 32); // 32px padding each side
974
+ context.textAlign = 'center';
975
+ context.textBaseline = 'middle';
976
+ context.font = `${fontSize}px Dancing Script`;
977
+ context.fillText(this.enteredInitials, this.canvasElement.width / 2, this.canvasElement.height / 2);
978
+ }
979
+ handleNameChange(e) {
980
+ this.enteredInitials = e.target.value;
981
+ }
982
+ handleCancel(e) {
983
+ e.stopPropagation();
984
+ e.preventDefault();
985
+ this.exit.emit();
986
+ }
987
+ handleAdopt(e) {
988
+ e.stopPropagation();
989
+ e.preventDefault();
990
+ const data = this.canvasElement.toDataURL('image/png');
991
+ this.next.emit(data);
992
+ }
993
+ /*
994
+ selColor(hex: string) {
995
+ this.color = hex;
996
+ this.animateDraw();
997
+ }
998
+
999
+ stopDraw() {
1000
+ this.paint = false;
1001
+ this.adoptedAndSigned = !this.hasSignature();
1002
+ }
1003
+
1004
+ draw(e) {
1005
+ this.paint = true;
1006
+ this.addPoints(e, false);
1007
+ this.animateDraw();
1008
+ }
1009
+
1010
+ recordPoints(e) {
1011
+ if (this.paint) {
1012
+ this.addPoints(e, true);
1013
+ this.animateDraw();
1014
+ }
1015
+ }
1016
+
1017
+ animateDraw() {
1018
+ this.canvas.clearRect(0, 0, this.canvas.canvas.offsetWidth, this.canvas.canvas.offsetHeight);
1019
+
1020
+ this.canvas.strokeStyle = this.color || '#000000';
1021
+ this.canvas.lineJoin = 'round';
1022
+ this.canvas.lineWidth = 3;
1023
+
1024
+ for (let i = 0; i < this.points.length; i++) {
1025
+ this.canvas.beginPath();
1026
+ if (this.points[i].drag && i) {
1027
+ this.canvas.moveTo(this.points[i - 1].x, this.points[i - 1].y);
1028
+ // this.canvas.arc(this.points[i - 1].x, this.points[i - 1].y, 2, 0, 2 * Math.PI, false);
1029
+ } else {
1030
+ this.canvas.moveTo(this.points[i].x - 1, this.points[i].y);
1031
+ // this.canvas.arc(this.points[i].x, this.points[i].y, 2, 0, 2 * Math.PI, false);
1032
+ }
1033
+
1034
+ this.canvas.lineTo(this.points[i].x, this.points[i].y);
1035
+ this.canvas.closePath();
1036
+ this.canvas.stroke();
1037
+ }
1038
+ }
1039
+
1040
+ drawCurve(color: string, curve: number) {
1041
+ this.canvas.beginPath();
1042
+ }
1043
+
1044
+
1045
+
1046
+ addPoints(e, drag: boolean) {
1047
+ if (window) {
1048
+ let x;
1049
+ let y;
1050
+ e.preventDefault();
1051
+ if (e.touches && e.touches.length > 0) {
1052
+ x = e.touches[0].clientX;
1053
+ } else {
1054
+ x = e.clientX;
1055
+ }
1056
+
1057
+ if (e.touches && e.touches.length > 0) {
1058
+ y = e.touches[0].clientY;
1059
+ } else {
1060
+ y = e.clientY;
1061
+ }
1062
+ const rect = this.signatureCanvas.nativeElement.getBoundingClientRect();
1063
+ this.points.push({
1064
+ x: x - rect.left,
1065
+ y: y - rect.top,
1066
+ drag: drag
1067
+ });
1068
+ }
1069
+ }
1070
+
1071
+ clearPad() {
1072
+ this.canvas.clearRect(0, 0, this.canvas.canvas.offsetWidth, this.canvas.canvas.offsetHeight);
1073
+ this.points = [];
1074
+ this.adoptedAndSigned = !this.hasSignature();
1075
+ }
1076
+
1077
+ async adoptAndSign() {
1078
+ try {
1079
+ this.adoptedAndSigned = true;
1080
+ await this.updateFullName();
1081
+ await this.captureSignatureFromCanvas();
1082
+ const message = this.signatureMode === 'Signature' ? 'Saving Signature' : 'Saving Initial';
1083
+ this.snackbarService.open(message, 'OK', this.snackbarService.initConfig(null, 'bottom'));
1084
+ this.handleMode();
1085
+ } catch (err) {
1086
+ this.snackbarService.open('Failed to apply signature', 'OK', this.snackbarService.initConfig(null, 'bottom'));
1087
+ }
1088
+ }
1089
+
1090
+ handleMode() {
1091
+ let currentField;
1092
+ switch (this.mode) {
1093
+ case 'signerview':
1094
+ if (this.signatureMode === 'Signature') {
1095
+ this.signatureService.postSignatureBlob().then(result => {
1096
+ if (result && result.id && result.url) {
1097
+ currentField = this.signatureService.currField;
1098
+ this.signatureService.updateSigned(currentField.fName, true);
1099
+ this.signatureService.toggleSig(false);
1100
+ this.signatureService.setSignatureId(result.id);
1101
+ this.signatureService.putSignatureField(this.envelopeId, this.fieldName, result.id).then(res => {
1102
+ this.eventTracker.createEvent({
1103
+ category: 'verdoc',
1104
+ action: 'verdoc signed',
1105
+ label: `verdoc id: ${this.envelopeId}`
1106
+ })
1107
+ if (res && res.settings) {
1108
+ this.signatureService.setSignatureData(res.settings.base64);
1109
+ this.signatureService.setSignatureId(res.settings.signature_id);
1110
+ }
1111
+ this.snackbarService.dismiss();
1112
+ this.dialog.close({ status: 'saved', temp_sig: res.settings.base64, sig_id: res.settings.signature_id });
1113
+ }).catch(err => {
1114
+ this.snackbarService.open('Failed to save signature. Please try again.', 'DISMISS', {
1115
+ duration: 3000
1116
+ });
1117
+ this.adoptedAndSigned = false;
1118
+ return err;
1119
+ });
1120
+ }
1121
+ });
1122
+ } else {
1123
+ this.signatureService.postInitialBlob().then(result => {
1124
+ if (result && result.id && result.url) {
1125
+ currentField = this.signatureService.currField;
1126
+ this.signatureService.updateInitialed(currentField.fName, true);
1127
+ this.signatureService.setInitialId(result.id);
1128
+ this.signatureService.toggleSig(false);
1129
+ this.signatureService.putInitialField(this.envelopeId, this.fieldName, result.id).then(res => {
1130
+ if (res && res.settings) {
1131
+ this.signatureService.setInitialData(res.settings.base64);
1132
+ this.signatureService.setInitialId(res.settings.initial_id);
1133
+ }
1134
+ this.snackbarService.dismiss();
1135
+ this.dialog.close({ status: 'saved', temp_int: res.settings.base64, int_id: res.settings.initial_id });
1136
+ }).catch(err => {
1137
+ this.snackbarService.open('Failed to save initial. Please try again.', 'DISMISS', {
1138
+ duration: 3000
1139
+ });
1140
+ this.adoptedAndSigned = false;
1141
+ return err;
1142
+ });
1143
+ }
1144
+ });
1145
+ }
1146
+ break;
1147
+ }
1148
+ }
1149
+ */
1150
+ render() {
1151
+ return (h(Host, { onClick: e => this.handleCancel(e) }, h("div", { class: "dialog" }, h("div", { class: "heading" }, "Create Your Initial"), h("div", { class: "content" }, h("verdocs-text-input", { placeholder: "Initials...", label: "Initials", value: this.enteredInitials, onInput: e => this.handleNameChange(e) }), h("div", { class: "as-shown" }, "As shown on driver's license or govt. ID card."), this.fontLoaded ? h("canvas", { ref: el => (this.canvasElement = el) }) : h("div", { style: { display: 'none' } }), h("div", { class: "disclaimer" }, "By clicking Adopt, I agree that the signature will be the electronic representation of my signature for all purposes when I (or my agent) use them on documents, including legally binding contracts \u2014 just the same as a pen-and-paper signature or initial."), h("div", { class: "buttons" }, h("verdocs-button", { label: "CANCEL", variant: "outline", onClick: e => this.handleCancel(e) }), h("verdocs-button", { label: "Adopt & Sign", onClick: e => this.handleAdopt(e) }))))));
1152
+ }
1153
+ };
1154
+ VerdocsInitialDialog.style = verdocsInitialDialogCss;
1155
+
1156
+ const verdocsSignatureDialogCss = "verdocs-signature-dialog{font-family:\"Inter\", \"Barlow\", sans-serif;-webkit-box-sizing:border-box;box-sizing:border-box;position:fixed;z-index:10000;top:0;left:0;right:0;bottom:0;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;background:#0000007f}verdocs-signature-dialog .dialog{width:100%;max-width:340px;border-radius:4px;overflow:hidden;-webkit-box-shadow:3px 3px 5px 1px rgba(40, 40, 40, 0.4);box-shadow:3px 3px 5px 1px rgba(40, 40, 40, 0.4);background:#f9f9f9}verdocs-signature-dialog .heading{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding:20px 20px 0 20px;line-height:28px;font-size:20px;font-weight:500}verdocs-signature-dialog .content{font-size:14px;padding:20px}verdocs-signature-dialog .buttons{display:-ms-flexbox;display:flex;margin:20px 0 0 0;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-align:center;align-items:center}verdocs-signature-dialog .buttons verdocs-button{margin-left:16px}verdocs-signature-dialog canvas{background:#ffffff;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0 auto;width:300px;height:79px;max-width:100%;-webkit-box-shadow:0 0 6px 0 #0000001f;box-shadow:0 0 6px 0 #0000001f}verdocs-signature-dialog .disclaimer{text-align:justify;padding:8px 0;font-size:11px;line-height:14px;color:rgba(0, 0, 0, 0.54)}verdocs-signature-dialog .as-shown{font-size:11px;margin:4px 0 20px 4px;color:rgba(0, 0, 0, 0.54)}verdocs-signature-dialog .tabs{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}verdocs-signature-dialog .tabs .tab{padding:8px 15px;cursor:pointer}verdocs-signature-dialog .tabs .tab.active{border-bottom:2px solid #cccccc}verdocs-signature-dialog .tabs .tab:hover{color:#55bc81}";
1157
+
1158
+ const VerdocsSignatureDialog = class {
1159
+ constructor(hostRef) {
1160
+ registerInstance(this, hostRef);
1161
+ this.next = createEvent(this, "next", 7);
1162
+ this.exit = createEvent(this, "exit", 7);
1163
+ this.name = '';
1164
+ this.fontLoaded = false;
1165
+ this.enteredName = '';
1166
+ this.mode = 'type';
1167
+ }
1168
+ componentWillLoad() {
1169
+ this.enteredName = this.name;
1170
+ const ds = new FontFace('Dancing Script', 'url(https://fonts.gstatic.com/s/dancingscript/v19/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7BMSo3Sup6hNX6plRP.woff)');
1171
+ ds.load().then(font => {
1172
+ document.fonts.add(font);
1173
+ this.fontLoaded = true;
1174
+ });
1175
+ }
1176
+ componentDidLoad() {
1177
+ this.redrawSignature();
1178
+ }
1179
+ componentDidUpdate() {
1180
+ this.redrawSignature();
1181
+ }
1182
+ redrawSignature() {
1183
+ if (!this.canvasElement) {
1184
+ return;
1185
+ }
1186
+ const canvasWidth = this.canvasElement.width;
1187
+ const context = this.canvasElement.getContext('2d');
1188
+ context.clearRect(0, 0, this.canvasElement.width, this.canvasElement.height);
1189
+ let fontSize = 100;
1190
+ do {
1191
+ fontSize -= 2;
1192
+ context.font = `${fontSize}px Dancing Script`;
1193
+ } while (context.measureText(this.enteredName).width > canvasWidth - 32); // 32px padding each side
1194
+ context.textAlign = 'center';
1195
+ context.textBaseline = 'middle';
1196
+ context.font = `${fontSize}px Dancing Script`;
1197
+ context.fillText(this.enteredName, this.canvasElement.width / 2, this.canvasElement.height / 2);
1198
+ }
1199
+ handleNameChange(e) {
1200
+ this.enteredName = e.target.value;
1201
+ }
1202
+ handleCancel(e) {
1203
+ e.stopPropagation();
1204
+ e.preventDefault();
1205
+ this.exit.emit();
1206
+ }
1207
+ handleAdopt(e) {
1208
+ e.stopPropagation();
1209
+ e.preventDefault();
1210
+ const data = this.canvasElement.toDataURL('image/png');
1211
+ this.next.emit(data);
1212
+ }
1213
+ /*
1214
+ selColor(hex: string) {
1215
+ this.color = hex;
1216
+ this.animateDraw();
1217
+ }
1218
+
1219
+ stopDraw() {
1220
+ this.paint = false;
1221
+ this.adoptedAndSigned = !this.hasSignature();
1222
+ }
1223
+
1224
+ draw(e) {
1225
+ this.paint = true;
1226
+ this.addPoints(e, false);
1227
+ this.animateDraw();
1228
+ }
1229
+
1230
+ recordPoints(e) {
1231
+ if (this.paint) {
1232
+ this.addPoints(e, true);
1233
+ this.animateDraw();
1234
+ }
1235
+ }
1236
+
1237
+ animateDraw() {
1238
+ this.canvas.clearRect(0, 0, this.canvas.canvas.offsetWidth, this.canvas.canvas.offsetHeight);
1239
+
1240
+ this.canvas.strokeStyle = this.color || '#000000';
1241
+ this.canvas.lineJoin = 'round';
1242
+ this.canvas.lineWidth = 3;
1243
+
1244
+ for (let i = 0; i < this.points.length; i++) {
1245
+ this.canvas.beginPath();
1246
+ if (this.points[i].drag && i) {
1247
+ this.canvas.moveTo(this.points[i - 1].x, this.points[i - 1].y);
1248
+ // this.canvas.arc(this.points[i - 1].x, this.points[i - 1].y, 2, 0, 2 * Math.PI, false);
1249
+ } else {
1250
+ this.canvas.moveTo(this.points[i].x - 1, this.points[i].y);
1251
+ // this.canvas.arc(this.points[i].x, this.points[i].y, 2, 0, 2 * Math.PI, false);
1252
+ }
1253
+
1254
+ this.canvas.lineTo(this.points[i].x, this.points[i].y);
1255
+ this.canvas.closePath();
1256
+ this.canvas.stroke();
1257
+ }
1258
+ }
1259
+
1260
+ drawCurve(color: string, curve: number) {
1261
+ this.canvas.beginPath();
1262
+ }
1263
+
1264
+
1265
+
1266
+ addPoints(e, drag: boolean) {
1267
+ if (window) {
1268
+ let x;
1269
+ let y;
1270
+ e.preventDefault();
1271
+ if (e.touches && e.touches.length > 0) {
1272
+ x = e.touches[0].clientX;
1273
+ } else {
1274
+ x = e.clientX;
1275
+ }
1276
+
1277
+ if (e.touches && e.touches.length > 0) {
1278
+ y = e.touches[0].clientY;
1279
+ } else {
1280
+ y = e.clientY;
1281
+ }
1282
+ const rect = this.signatureCanvas.nativeElement.getBoundingClientRect();
1283
+ this.points.push({
1284
+ x: x - rect.left,
1285
+ y: y - rect.top,
1286
+ drag: drag
1287
+ });
1288
+ }
1289
+ }
1290
+
1291
+ clearPad() {
1292
+ this.canvas.clearRect(0, 0, this.canvas.canvas.offsetWidth, this.canvas.canvas.offsetHeight);
1293
+ this.points = [];
1294
+ this.adoptedAndSigned = !this.hasSignature();
1295
+ }
1296
+
1297
+ async adoptAndSign() {
1298
+ try {
1299
+ this.adoptedAndSigned = true;
1300
+ await this.updateFullName();
1301
+ await this.captureSignatureFromCanvas();
1302
+ const message = this.signatureMode === 'Signature' ? 'Saving Signature' : 'Saving Initial';
1303
+ this.snackbarService.open(message, 'OK', this.snackbarService.initConfig(null, 'bottom'));
1304
+ this.handleMode();
1305
+ } catch (err) {
1306
+ this.snackbarService.open('Failed to apply signature', 'OK', this.snackbarService.initConfig(null, 'bottom'));
1307
+ }
1308
+ }
1309
+
1310
+ handleMode() {
1311
+ let currentField;
1312
+ switch (this.mode) {
1313
+ case 'signerview':
1314
+ if (this.signatureMode === 'Signature') {
1315
+ this.signatureService.postSignatureBlob().then(result => {
1316
+ if (result && result.id && result.url) {
1317
+ currentField = this.signatureService.currField;
1318
+ this.signatureService.updateSigned(currentField.fName, true);
1319
+ this.signatureService.toggleSig(false);
1320
+ this.signatureService.setSignatureId(result.id);
1321
+ this.signatureService.putSignatureField(this.envelopeId, this.fieldName, result.id).then(res => {
1322
+ this.eventTracker.createEvent({
1323
+ category: 'verdoc',
1324
+ action: 'verdoc signed',
1325
+ label: `verdoc id: ${this.envelopeId}`
1326
+ })
1327
+ if (res && res.settings) {
1328
+ this.signatureService.setSignatureData(res.settings.base64);
1329
+ this.signatureService.setSignatureId(res.settings.signature_id);
1330
+ }
1331
+ this.snackbarService.dismiss();
1332
+ this.dialog.close({ status: 'saved', temp_sig: res.settings.base64, sig_id: res.settings.signature_id });
1333
+ }).catch(err => {
1334
+ this.snackbarService.open('Failed to save signature. Please try again.', 'DISMISS', {
1335
+ duration: 3000
1336
+ });
1337
+ this.adoptedAndSigned = false;
1338
+ return err;
1339
+ });
1340
+ }
1341
+ });
1342
+ } else {
1343
+ this.signatureService.postInitialBlob().then(result => {
1344
+ if (result && result.id && result.url) {
1345
+ currentField = this.signatureService.currField;
1346
+ this.signatureService.updateInitialed(currentField.fName, true);
1347
+ this.signatureService.setInitialId(result.id);
1348
+ this.signatureService.toggleSig(false);
1349
+ this.signatureService.putInitialField(this.envelopeId, this.fieldName, result.id).then(res => {
1350
+ if (res && res.settings) {
1351
+ this.signatureService.setInitialData(res.settings.base64);
1352
+ this.signatureService.setInitialId(res.settings.initial_id);
1353
+ }
1354
+ this.snackbarService.dismiss();
1355
+ this.dialog.close({ status: 'saved', temp_int: res.settings.base64, int_id: res.settings.initial_id });
1356
+ }).catch(err => {
1357
+ this.snackbarService.open('Failed to save initial. Please try again.', 'DISMISS', {
1358
+ duration: 3000
1359
+ });
1360
+ this.adoptedAndSigned = false;
1361
+ return err;
1362
+ });
1363
+ }
1364
+ });
1365
+ }
1366
+ break;
1367
+ }
1368
+ }
1369
+ */
1370
+ render() {
1371
+ return (h(Host, { onClick: e => this.handleCancel(e) }, h("div", { class: "dialog" }, h("div", { class: "heading" }, "Create Your Signature"), h("div", { class: "content" }, h("verdocs-text-input", { placeholder: "Full Name...", label: "Full Name", value: this.enteredName, onInput: e => this.handleNameChange(e), onClick: e => e.stopPropagation() }), h("div", { class: "as-shown" }, "As shown on driver's license or govt. ID card."), this.fontLoaded ? h("canvas", { ref: el => (this.canvasElement = el) }) : h("div", { style: { display: 'none' } }), h("div", { class: "disclaimer" }, "By clicking Adopt, I agree that the signature will be the electronic representation of my signature for all purposes when I (or my agent) use them on documents, including legally binding contracts \u2014 just the same as a pen-and-paper signature or initial."), h("div", { class: "buttons" }, h("verdocs-button", { label: "CANCEL", size: "normal", variant: "outline", onClick: e => this.handleCancel(e) }), h("verdocs-button", { label: "Adopt & Sign", size: "normal", onClick: e => this.handleAdopt(e) }))))));
1372
+ }
1373
+ };
1374
+ VerdocsSignatureDialog.style = verdocsSignatureDialogCss;
1375
+
1376
+ const verdocsTemplateDocumentPageCss = "verdocs-template-document-page{width:100%;position:relative}verdocs-template-document-page .verdocs-template-document-page-layer{position:absolute;top:0;left:0;right:0;bottom:0;-webkit-box-shadow:0 0 10px 5px #0000000f;box-shadow:0 0 10px 5px #0000000f}verdocs-template-document-page .verdocs-template-document-page-layer.img{width:100%}";
1377
+
1378
+ const VerdocsTemplateDocumentPage = class {
1379
+ constructor(hostRef) {
1380
+ registerInstance(this, hostRef);
1381
+ this.pageRendered = createEvent(this, "pageRendered", 7);
1382
+ this.fieldStore = null;
1383
+ this.endpoint = VerdocsEndpoint.getDefault();
1384
+ this.editable = false;
1385
+ this.done = false;
1386
+ this.templateId = '';
1387
+ this.documentId = '';
1388
+ this.pageNumber = 1;
1389
+ this.virtualWidth = 612;
1390
+ this.virtualHeight = 792;
1391
+ this.layers = [{ name: 'page', type: 'canvas' }];
1392
+ this.containerId = `verdocs-document-page-${Math.random().toString(36).substring(2, 11)}`;
1393
+ this.renderedWidth = this.virtualWidth;
1394
+ this.renderedHeight = this.virtualHeight;
1395
+ this.naturalWidth = this.virtualWidth;
1396
+ this.naturalHeight = this.virtualHeight;
1397
+ this.aspectRatio = this.virtualWidth / this.virtualHeight;
1398
+ this.skipFirstNotification = true;
1399
+ this.pageDisplayUri = '';
1400
+ this.xScale = 1;
1401
+ this.yScale = 1;
1402
+ }
1403
+ async componentWillLoad() {
1404
+ this.pageDisplayUri = await getTemplateDocumentPageDisplayUri(this.endpoint, this.templateId, this.documentId, this.pageNumber);
1405
+ this.fieldStore = getTemplateFieldStore(this.templateId);
1406
+ }
1407
+ componentDidLoad() {
1408
+ this.resizeObserver = new ResizeObserver(throttle(entries => {
1409
+ for (const entry of entries) {
1410
+ const renderedWidth = entry.contentRect.width;
1411
+ this.renderedWidth = renderedWidth;
1412
+ this.renderedHeight = this.virtualHeight * (renderedWidth / this.virtualWidth);
1413
+ }
1414
+ this.notifyRenderedSize();
1415
+ }, 100));
1416
+ this.resizeObserver.observe(this.container);
1417
+ }
1418
+ disconnectedCallback() {
1419
+ var _a;
1420
+ (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
1421
+ }
1422
+ // Left here for documentation purposes in case we find an edge case where this isn't true. But we apparently don't need this.
1423
+ // When we add the resize observer it will always be triggered at least once so notifying here as well is just a dupe.
1424
+ // componentDidRender() {
1425
+ // this.notifyRenderedSize();
1426
+ // }
1427
+ notifyRenderedSize() {
1428
+ // We skip one notification because by default we will always get at least two, one when rendering the initial size
1429
+ // and a second once we're able to compute the scale size, when the resizeObserver sets renderedWidth/renderedHeight.
1430
+ if (this.skipFirstNotification) {
1431
+ this.skipFirstNotification = false;
1432
+ return;
1433
+ }
1434
+ const xScale = this.renderedWidth / this.virtualWidth;
1435
+ if (this.xScale !== xScale) {
1436
+ this.xScale = xScale;
1437
+ }
1438
+ const yScale = this.renderedHeight / this.virtualHeight;
1439
+ if (this.yScale !== yScale) {
1440
+ this.yScale = yScale;
1441
+ }
1442
+ this.pageRendered.emit({
1443
+ // container: this.container,
1444
+ containerId: this.containerId,
1445
+ documentId: this.documentId,
1446
+ pageNumber: this.pageNumber,
1447
+ virtualWidth: this.virtualWidth,
1448
+ virtualHeight: this.virtualHeight,
1449
+ renderedWidth: this.renderedWidth,
1450
+ renderedHeight: this.renderedHeight,
1451
+ naturalWidth: this.naturalWidth,
1452
+ naturalHeight: this.naturalHeight,
1453
+ aspectRatio: this.aspectRatio,
1454
+ xScale,
1455
+ yScale,
1456
+ });
1457
+ }
1458
+ render() {
1459
+ const height = `${this.renderedHeight}px`;
1460
+ return (h(Host, { id: `${this.containerId}`, style: { height, flex: `0 0 ${height}` } }, this.layers.map(layer => layer.type === 'div' ? (h("div", { class: "verdocs-template-document-page-layer", id: `${this.containerId}-${layer.name}`, style: { height } }, layer.name === 'controls' &&
1461
+ this.fieldStore
1462
+ .get('fields')
1463
+ .filter(field => field && field.page_sequence === this.pageNumber)
1464
+ .map(field => {
1465
+ const id = getFieldId(field);
1466
+ switch (field.type) {
1467
+ case 'textbox':
1468
+ return (h("verdocs-field-textbox", { id: id, templateid: this.templateId, fieldname: field.name, editable: this.editable, done: this.done, xscale: this.xScale, yscale: this.yScale, pagenumber: this.pageNumber, style: getControlStyles(field, this.xScale, this.yScale, 0) }));
1469
+ case 'textarea':
1470
+ return (h("verdocs-field-textarea", { id: id, templateid: this.templateId, fieldname: field.name, editable: this.editable, done: this.done, xscale: this.xScale, yscale: this.yScale, pagenumber: this.pageNumber, style: getControlStyles(field, this.xScale, this.yScale, 0) }));
1471
+ case 'date':
1472
+ return (h("verdocs-field-date", { id: id, templateid: this.templateId, fieldname: field.name, editable: this.editable, xscale: this.xScale, yscale: this.yScale, done: this.done, pagenumber: this.pageNumber, style: getControlStyles(field, this.xScale, this.yScale, 0) }));
1473
+ case 'attachment':
1474
+ return (h("verdocs-field-attachment", { id: id, templateid: this.templateId, fieldname: field.name, editable: this.editable, done: this.done, xscale: this.xScale, yscale: this.yScale, pagenumber: this.pageNumber, style: getControlStyles(field, this.xScale, this.yScale, 0) }));
1475
+ case 'dropdown':
1476
+ return (h("verdocs-field-dropdown", { id: id, templateid: this.templateId, fieldname: field.name, editable: this.editable, done: this.done, xscale: this.xScale, yscale: this.yScale, pagenumber: this.pageNumber, style: getControlStyles(field, this.xScale, this.yScale, 0) }));
1477
+ case 'initial':
1478
+ return (h("verdocs-field-initial", { id: id, templateid: this.templateId, fieldname: field.name, editable: this.editable, xscale: this.xScale, yscale: this.yScale, done: this.done, pagenumber: this.pageNumber, style: getControlStyles(field, this.xScale, this.yScale, 0) }));
1479
+ case 'signature':
1480
+ return (h("verdocs-field-signature", { id: id, templateid: this.templateId, fieldname: field.name, editable: this.editable, xscale: this.xScale, yscale: this.yScale, done: this.done, pagenumber: this.pageNumber, style: getControlStyles(field, this.xScale, this.yScale, 0) }));
1481
+ case 'timestamp':
1482
+ return (h("verdocs-field-timestamp", { id: id, templateid: this.templateId, fieldname: field.name, editable: this.editable, xscale: this.xScale, yscale: this.yScale, done: this.done, pagenumber: this.pageNumber, style: getControlStyles(field, this.xScale, this.yScale, 0) }));
1483
+ case 'checkbox_group':
1484
+ return (field.settings || field.setting || {}).options.map((_, checkboxIndex) => {
1485
+ const id = getFieldOptionId(field, checkboxIndex);
1486
+ return (h("verdocs-field-checkbox", { id: id, templateid: this.templateId, fieldname: field.name, editable: this.editable, xscale: this.xScale, yscale: this.yScale, done: this.done, option: checkboxIndex, pagenumber: this.pageNumber, style: getControlStyles(field, this.xScale, this.yScale, checkboxIndex) }));
1487
+ });
1488
+ case 'radio_button_group':
1489
+ return (field.settings || field.setting || {}).options.map((_, checkboxIndex) => {
1490
+ const id = getFieldOptionId(field, checkboxIndex);
1491
+ return (h("verdocs-field-radio-button", { id: id, templateid: this.templateId, fieldname: field.name, editable: this.editable, xscale: this.xScale, yscale: this.yScale, done: this.done, option: checkboxIndex, pagenumber: this.pageNumber, style: getControlStyles(field, this.xScale, this.yScale, checkboxIndex) }));
1492
+ });
1493
+ default:
1494
+ return h(Fragment, null, field.name);
1495
+ }
1496
+ }))) : 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) => {
1497
+ // Note that all we really care about is the aspect ratio. We track the natural Width and Height but they aren't really that
1498
+ // useful as individual values. The image will already have been scaled down to fit a DIV for display (100%, auto height).
1499
+ // Builder places fields offset into the rendered display area, not the original document's dimensions. So its X/Y values
1500
+ // for a field are based on the responsive Web view the Template editor was seeing. The IMG was scaled down there in the
1501
+ // exact same way, so we just honor it. We capture the natural width and height here more as information. Then we use the
1502
+ // aspect ratio to adjust the "virtual" height in case the page is not 8.5"x11".
1503
+ // TODO: Store this in the DB with each page.
1504
+ this.naturalWidth = e.target.naturalWidth;
1505
+ this.naturalHeight = e.target.naturalHeight;
1506
+ this.aspectRatio = this.naturalWidth / this.naturalHeight;
1507
+ this.virtualHeight = this.virtualWidth / this.aspectRatio;
1508
+ this.renderedHeight = e.target.offsetWidth / this.aspectRatio;
1509
+ } })) : (h("div", null)))));
1510
+ }
1511
+ get container() { return getElement(this); }
1512
+ };
1513
+ VerdocsTemplateDocumentPage.style = verdocsTemplateDocumentPageCss;
1514
+
1515
+ const verdocsToolbarIconCss = "verdocs-toolbar-icon{font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif;display:inline-block}verdocs-toolbar-icon .icon{display:inline-block;cursor:pointer}verdocs-toolbar-icon .icon svg{fill:#5c6575}verdocs-toolbar-icon .tooltip{display:none;-webkit-box-shadow:0 0 10px 1px #999999;box-shadow:0 0 10px 1px #999999;background:#ffffff;color:#33364b;max-width:240px;font-weight:bold;padding:5px 10px;font-size:13px;position:relative;border-radius:4px;z-index:20000;white-space:nowrap}verdocs-toolbar-icon .tooltip .arrow,verdocs-toolbar-icon .tooltip .arrow::before{position:absolute;width:8px;height:8px;background:inherit}verdocs-toolbar-icon .tooltip .arrow{visibility:hidden;top:-4px}verdocs-toolbar-icon .tooltip .arrow::before{visibility:visible;content:\"\";-webkit-transform:rotate(45deg);transform:rotate(45deg)}verdocs-toolbar-icon .tooltip[data-show]{display:block}verdocs-toolbar-icon .tooltip[data-popper-placement^=top]>.arrow{bottom:-4px}verdocs-toolbar-icon .tooltip[data-popper-placement^=bottom]>.arrow{top:-4px}verdocs-toolbar-icon .tooltip[data-popper-placement^=left]>.arrow{right:-4px}verdocs-toolbar-icon .tooltip[data-popper-placement^=right]>.arrow{left:-4px}verdocs-toolbar-icon .tooltip[data-popper-placement^=left]{padding:3px 10px}verdocs-toolbar-icon .tooltip[data-popper-placement^=left]>.arrow{right:-1px}";
1516
+
1517
+ const VerdocsToolbarIcon = class {
1518
+ constructor(hostRef) {
1519
+ registerInstance(this, hostRef);
1520
+ this.text = '';
1521
+ this.icon = '';
1522
+ this.placement = 'bottom';
1523
+ this.containerId = `verdocs-toolbar-icon-${Math.random().toString(36).substring(2, 11)}`;
1524
+ }
1525
+ componentDidLoad() {
1526
+ this.popperInstance = createPopper(this.iconEl, this.tooltip, {
1527
+ placement: this.placement,
1528
+ modifiers: this.placement === 'left' ? [{ name: 'offset', options: { offset: [0, 20] } }] : [],
1529
+ });
1530
+ // placement: 'top-end',
1531
+ // modifiers: [{name: 'offset', options: {offset: [0, 10]}}],
1532
+ // });
1533
+ }
1534
+ disconnectedCallback() {
1535
+ if (this.popperInstance) {
1536
+ this.popperInstance.destroy();
1537
+ this.popperInstance = null;
1538
+ }
1539
+ }
1540
+ show() {
1541
+ var _a, _b;
1542
+ (_a = this.tooltip) === null || _a === void 0 ? void 0 : _a.setAttribute('data-show', '');
1543
+ (_b = this.popperInstance) === null || _b === void 0 ? void 0 : _b.update().catch(() => { });
1544
+ }
1545
+ hide() {
1546
+ var _a;
1547
+ (_a = this.tooltip) === null || _a === void 0 ? void 0 : _a.removeAttribute('data-show');
1548
+ }
1549
+ // handlePress() {
1550
+ // this.press?.emit();
1551
+ // }
1552
+ render() {
1553
+ return (h(Host, { class: {} }, h("div", { "aria-describedby": this.containerId, class: "icon", innerHTML: this.icon, onMouseEnter: () => this.show(), onFocus: () => this.show(), onMouseLeave: () => this.hide(), onBlur: () => this.hide(), ref: el => (this.iconEl = el) }), h("div", { id: this.containerId, role: "tooltip", class: "tooltip", "data-popper-placement": this.placement, ref: el => (this.tooltip = el) }, this.text, h("div", { "data-popper-arrow": "true", class: "arrow" }))));
1554
+ }
1555
+ };
1556
+ VerdocsToolbarIcon.style = verdocsToolbarIconCss;
1557
+
1558
+ const verdocsUploadDialogCss = "verdocs-upload-dialog{font-family:\"Inter\", \"Barlow\", sans-serif;-webkit-box-sizing:border-box;box-sizing:border-box}verdocs-upload-dialog div{-webkit-box-sizing:border-box;box-sizing:border-box}verdocs-upload-dialog .background-overlay{top:0;left:0;right:0;bottom:0;display:-ms-flexbox;display:flex;z-index:10000;position:absolute;-ms-flex-align:center;align-items:center;background:#0000007f;-ms-flex-pack:center;justify-content:center}verdocs-upload-dialog .dialog{width:320px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;border-radius:4px;overflow:hidden;background:#ffffff;padding:16px;-webkit-box-shadow:3px 3px 5px 1px rgba(40, 40, 40, 0.4);box-shadow:3px 3px 5px 1px rgba(40, 40, 40, 0.4)}verdocs-upload-dialog .heading{display:-ms-flexbox;display:flex;font-size:20px;font-weight:500;-ms-flex-direction:row;flex-direction:row}verdocs-upload-dialog .buttons{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end}verdocs-upload-dialog .buttons verdocs-button{margin-left:16px}verdocs-upload-dialog .drop-target{opacity:1;width:100%;display:-ms-flexbox;display:flex;margin:20px 0;min-height:260px;padding:30px 15px;text-align:center;-ms-flex-align:center;align-items:center;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;background-color:#f5f5f5;color:rgba(0, 0, 0, 0.54);border:2px dashed #979797}verdocs-upload-dialog .drop-target p{margin:12px 0}verdocs-upload-dialog .drop-target.dragging-over{border:5px solid #4c56cb}verdocs-upload-dialog .drop-target>verdocs-button{margin:12px 0;display:inline-block}verdocs-upload-dialog .attachments{height:56px;font-size:0;margin:20px 0;padding:0 16px;line-height:56px;white-space:normal;-webkit-box-shadow:0 1px 3px 0 rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 0 2px 0 rgba(0, 0, 0, 0.14);box-shadow:0 1px 3px 0 rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 0 2px 0 rgba(0, 0, 0, 0.14)}verdocs-upload-dialog .attachments .attachment{gap:10px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row}verdocs-upload-dialog .attachments .attachment .icon{width:18px;height:18px;line-height:18px}verdocs-upload-dialog .attachments .attachment .icon.trash{cursor:pointer}verdocs-upload-dialog .attachments .attachment .name{-ms-flex:1;flex:1;font-size:14px;overflow:hidden;font-weight:400;white-space:nowrap;text-overflow:ellipsis}";
1559
+
1560
+ const TrashIcon = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16" /></svg>`;
1561
+ const PaperclipIcon = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15.172 7l-6.586 6.586a2 2 0 102.828 2.828l6.414-6.586a4 4 0 00-5.656-5.656l-6.415 6.585a6 6 0 108.486 8.486L20.5 13" /></svg>`;
1562
+ const VerdocsUploadDialog = class {
1563
+ constructor(hostRef) {
1564
+ registerInstance(this, hostRef);
1565
+ this.exit = createEvent(this, "exit", 7);
1566
+ this.next = createEvent(this, "next", 7);
1567
+ this.draggingOver = false;
1568
+ this.decodedFiles = [];
1569
+ }
1570
+ handleCancel() {
1571
+ this.exit.emit();
1572
+ }
1573
+ // We need a separate event handler for clicking the background because it can receive events "through" other child components
1574
+ handleDismiss(e) {
1575
+ if (e.target.className === 'background-overlay') {
1576
+ e.preventDefault();
1577
+ this.handleCancel();
1578
+ }
1579
+ }
1580
+ handleDone() {
1581
+ this.next.emit(this.decodedFiles);
1582
+ }
1583
+ handleDragOver(e) {
1584
+ e.preventDefault();
1585
+ this.draggingOver = true;
1586
+ }
1587
+ handleDragLeave(e) {
1588
+ e.preventDefault();
1589
+ this.draggingOver = false;
1590
+ }
1591
+ async handleDrop(e) {
1592
+ e.preventDefault();
1593
+ this.draggingOver = false;
1594
+ // Required for cross-browser support. Note that dataTransfer.items is of type DataTransferItemList and is not an array.
1595
+ let droppedFiles = [];
1596
+ if (e.dataTransfer.items) {
1597
+ for (let i = 0; i < e.dataTransfer.items.length; i++) {
1598
+ if (e.dataTransfer.items[i].kind === 'file') {
1599
+ const file = e.dataTransfer.items[i].getAsFile();
1600
+ droppedFiles.push(file);
1601
+ }
1602
+ }
1603
+ }
1604
+ else {
1605
+ droppedFiles = e.dataTransfer.files;
1606
+ }
1607
+ this.decodedFiles = await Promise.all(droppedFiles.map(fileToDataUrl));
1608
+ }
1609
+ handleRemoveAttachment(index) {
1610
+ const newFiles = [...this.decodedFiles];
1611
+ newFiles.splice(index, 1);
1612
+ this.decodedFiles = newFiles;
1613
+ }
1614
+ handleSelectFile() {
1615
+ var _a;
1616
+ (_a = this.fileInput) === null || _a === void 0 ? void 0 : _a.click();
1617
+ }
1618
+ async handleFileChange() {
1619
+ var _a, _b;
1620
+ let droppedFiles = [];
1621
+ for (let i = 0; i < ((_a = this.fileInput) === null || _a === void 0 ? void 0 : _a.files.length); i++) {
1622
+ droppedFiles.push((_b = this.fileInput) === null || _b === void 0 ? void 0 : _b.files[i]);
1623
+ }
1624
+ this.decodedFiles = await Promise.all(droppedFiles.map(fileToDataUrl));
1625
+ }
1626
+ render() {
1627
+ return (h(Host, null, h("div", { class: "background-overlay", onClick: e => this.handleDismiss(e) }, h("div", { class: "dialog" }, h("div", { class: "heading" }, "Upload attachment"), this.decodedFiles.length < 1 ? (h("div", { class: { 'drop-target': true, 'dragging-over': this.draggingOver }, onDragOver: e => this.handleDragOver(e), onDragLeave: e => this.handleDragLeave(e), onDrop: e => this.handleDrop(e) }, h("p", null, "Drag and drop a file here..."), h("p", null, "- or -"), h("verdocs-button", { label: "Select a file...", onClick: () => this.handleSelectFile() }), h("input", { type: "file", ref: el => (this.fileInput = el), style: { display: 'none' }, onChange: () => this.handleFileChange() }))) : (h("div", { class: "attachments" }, this.decodedFiles.map((file, index) => (h("div", { class: "attachment" }, h("div", { class: "icon", innerHTML: PaperclipIcon }), h("div", { class: "name" }, file.name), h("div", { class: "icon trash", innerHTML: TrashIcon, onClick: () => this.handleRemoveAttachment(index) })))))), h("div", { class: "buttons" }, h("verdocs-button", { label: "Cancel", variant: "outline", onClick: () => this.handleCancel() }), h("verdocs-button", { label: "Done", onClick: () => this.handleDone(), disabled: this.decodedFiles.length < 1 }))))));
1628
+ }
1629
+ };
1630
+ VerdocsUploadDialog.style = verdocsUploadDialogCss;
1631
+
1632
+ export { VerdocsFieldAttachment as verdocs_field_attachment, VerdocsFieldCheckbox as verdocs_field_checkbox, VerdocsFieldDate as verdocs_field_date, VerdocsFieldDropdown as verdocs_field_dropdown, VerdocsFieldInitial as verdocs_field_initial, VerdocsFieldRadioButton as verdocs_field_radio_button, VerdocsFieldSignature as verdocs_field_signature, VerdocsFieldTextarea as verdocs_field_textarea, VerdocsFieldTextbox as verdocs_field_textbox, VerdocsFieldTimestamp as verdocs_field_timestamp, VerdocsInitialDialog as verdocs_initial_dialog, VerdocsSignatureDialog as verdocs_signature_dialog, VerdocsTemplateDocumentPage as verdocs_template_document_page, VerdocsToolbarIcon as verdocs_toolbar_icon, VerdocsUploadDialog as verdocs_upload_dialog };