@verdocs/web-sdk 1.9.41 → 1.10.0

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 (215) hide show
  1. package/dist/cjs/{VerdocsEndpoint-c1c80b51.js → VerdocsEndpoint-38feb32a.js} +3 -3
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/{utils-53125d26.js → utils-712ba3ec.js} +18 -0
  4. package/dist/cjs/verdocs-auth.cjs.entry.js +1 -1
  5. package/dist/cjs/verdocs-build.cjs.entry.js +4 -1
  6. package/dist/cjs/{verdocs-button-panel_3.cjs.entry.js → verdocs-button-panel_2.cjs.entry.js} +0 -19
  7. package/dist/cjs/verdocs-component-error.cjs.entry.js +20 -0
  8. package/dist/cjs/verdocs-contact-picker.cjs.entry.js +1 -1
  9. package/dist/cjs/verdocs-document-page_2.cjs.entry.js +2 -2
  10. package/dist/cjs/verdocs-envelope-sidebar.cjs.entry.js +1 -1
  11. package/dist/cjs/verdocs-field-checkbox.cjs.entry.js +1 -1
  12. package/dist/cjs/verdocs-field-date.cjs.entry.js +1 -1
  13. package/dist/cjs/verdocs-field-dropdown.cjs.entry.js +1 -1
  14. package/dist/cjs/verdocs-field-initial.cjs.entry.js +1 -1
  15. package/dist/cjs/verdocs-field-payment.cjs.entry.js +1 -1
  16. package/dist/cjs/verdocs-field-radio-button.cjs.entry.js +2 -2
  17. package/dist/cjs/verdocs-field-signature.cjs.entry.js +70 -0
  18. package/dist/cjs/verdocs-field-textarea.cjs.entry.js +1 -1
  19. package/dist/cjs/verdocs-field-textbox.cjs.entry.js +2 -2
  20. package/dist/cjs/verdocs-field-timestamp.cjs.entry.js +1 -1
  21. package/dist/cjs/verdocs-floating-menu_2.cjs.entry.js +151 -0
  22. package/dist/cjs/verdocs-preview.cjs.entry.js +2 -2
  23. package/dist/cjs/verdocs-quick-functions_3.cjs.entry.js +1 -1
  24. package/dist/cjs/verdocs-search.cjs.entry.js +1 -1
  25. package/dist/cjs/verdocs-send.cjs.entry.js +2 -2
  26. package/dist/cjs/verdocs-sign.cjs.entry.js +2 -2
  27. package/dist/cjs/{verdocs-field-signature_3.cjs.entry.js → verdocs-signature-dialog.cjs.entry.js} +0 -105
  28. package/dist/cjs/verdocs-template-create_4.cjs.entry.js +152 -37
  29. package/dist/cjs/verdocs-text-input.cjs.entry.js +25 -0
  30. package/dist/cjs/verdocs-view.cjs.entry.js +2 -2
  31. package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
  32. package/dist/collection/collection-manifest.json +2 -0
  33. package/dist/collection/components/controls/verdocs-floating-menu/verdocs-floating-menu.css +91 -0
  34. package/dist/collection/components/controls/verdocs-floating-menu/verdocs-floating-menu.js +158 -0
  35. package/dist/collection/components/controls/verdocs-floating-menu/verdocs-floating-menu.stories.js +49 -0
  36. package/dist/collection/components/controls/verdocs-toolbar-icon/verdocs-toolbar-icon.css +8 -1
  37. package/dist/collection/components/controls/verdocs-toolbar-icon/verdocs-toolbar-icon.js +29 -2
  38. package/dist/collection/components/elements/verdocs-component-error/verdocs-component-error.css +16 -0
  39. package/dist/collection/components/elements/verdocs-component-error/verdocs-component-error.js +46 -0
  40. package/dist/collection/components/elements/verdocs-document-page/verdocs-document-page.js +1 -1
  41. package/dist/collection/components/elements/verdocs-field-radio-button-group/verdocs-field-radio-button.css +2 -2
  42. package/dist/collection/components/elements/verdocs-field-textbox/verdocs-field-textbox.css +2 -3
  43. package/dist/collection/components/elements/verdocs-template-create/verdocs-template-create.js +7 -2
  44. package/dist/collection/components/elements/verdocs-template-fields/verdocs-template-fields.css +34 -41
  45. package/dist/collection/components/elements/verdocs-template-fields/verdocs-template-fields.js +128 -34
  46. package/dist/collection/components/elements/verdocs-template-properties/verdocs-template-properties.js +4 -1
  47. package/dist/collection/components/elements/verdocs-template-recipients/verdocs-template-recipients.js +1 -0
  48. package/dist/collection/components/embeds/verdocs-build/verdocs-build.js +3 -0
  49. package/dist/collection/utils/utils.js +16 -0
  50. package/dist/components/VerdocsEndpoint.js +3 -3
  51. package/dist/components/index.d.ts +2 -0
  52. package/dist/components/index.js +2 -0
  53. package/dist/components/utils.js +17 -1
  54. package/dist/components/verdocs-build.js +19 -28
  55. package/dist/components/verdocs-component-error.d.ts +11 -0
  56. package/dist/components/verdocs-component-error.js +6 -0
  57. package/dist/components/verdocs-component-error2.js +33 -0
  58. package/dist/components/verdocs-document-page2.js +1 -1
  59. package/dist/components/verdocs-field-radio-button.js +1 -1
  60. package/dist/components/verdocs-field-signature.js +116 -1
  61. package/dist/components/verdocs-field-textbox.js +1 -1
  62. package/dist/components/verdocs-floating-menu.d.ts +11 -0
  63. package/dist/components/verdocs-floating-menu.js +6 -0
  64. package/dist/components/verdocs-floating-menu2.js +125 -0
  65. package/dist/components/verdocs-template-create2.js +15 -4
  66. package/dist/components/verdocs-template-fields2.js +152 -69
  67. package/dist/components/verdocs-template-properties2.js +14 -5
  68. package/dist/components/verdocs-template-recipients2.js +1 -0
  69. package/dist/components/verdocs-toolbar-icon2.js +8 -3
  70. package/dist/docs.json +209 -36
  71. package/dist/esm/{VerdocsEndpoint-cf4392fb.js → VerdocsEndpoint-6df32d3a.js} +3 -3
  72. package/dist/esm/loader.js +1 -1
  73. package/dist/esm/{utils-188fa107.js → utils-3d95c588.js} +17 -1
  74. package/dist/esm/verdocs-auth.entry.js +1 -1
  75. package/dist/esm/verdocs-build.entry.js +4 -1
  76. package/dist/esm/{verdocs-button-panel_3.entry.js → verdocs-button-panel_2.entry.js} +1 -19
  77. package/dist/esm/verdocs-component-error.entry.js +16 -0
  78. package/dist/esm/verdocs-contact-picker.entry.js +1 -1
  79. package/dist/esm/verdocs-document-page_2.entry.js +2 -2
  80. package/dist/esm/verdocs-envelope-sidebar.entry.js +1 -1
  81. package/dist/esm/verdocs-field-checkbox.entry.js +1 -1
  82. package/dist/esm/verdocs-field-date.entry.js +1 -1
  83. package/dist/esm/verdocs-field-dropdown.entry.js +1 -1
  84. package/dist/esm/verdocs-field-initial.entry.js +1 -1
  85. package/dist/esm/verdocs-field-payment.entry.js +1 -1
  86. package/dist/esm/verdocs-field-radio-button.entry.js +2 -2
  87. package/dist/{components/verdocs-field-signature2.js → esm/verdocs-field-signature.entry.js} +12 -64
  88. package/dist/esm/verdocs-field-textarea.entry.js +1 -1
  89. package/dist/esm/verdocs-field-textbox.entry.js +2 -2
  90. package/dist/esm/verdocs-field-timestamp.entry.js +1 -1
  91. package/dist/esm/verdocs-floating-menu_2.entry.js +146 -0
  92. package/dist/esm/verdocs-preview.entry.js +2 -2
  93. package/dist/esm/verdocs-quick-functions_3.entry.js +1 -1
  94. package/dist/esm/verdocs-search.entry.js +1 -1
  95. package/dist/esm/verdocs-send.entry.js +2 -2
  96. package/dist/esm/verdocs-sign.entry.js +2 -2
  97. package/dist/esm/{verdocs-field-signature_3.entry.js → verdocs-signature-dialog.entry.js} +1 -104
  98. package/dist/esm/verdocs-template-create_4.entry.js +152 -37
  99. package/dist/esm/verdocs-text-input.entry.js +21 -0
  100. package/dist/esm/verdocs-view.entry.js +2 -2
  101. package/dist/esm/verdocs-web-sdk.js +1 -1
  102. package/dist/esm-es5/VerdocsEndpoint-6df32d3a.js +1 -0
  103. package/dist/esm-es5/loader.js +1 -1
  104. package/dist/esm-es5/utils-3d95c588.js +1 -0
  105. package/dist/esm-es5/verdocs-auth.entry.js +1 -1
  106. package/dist/esm-es5/verdocs-build.entry.js +1 -1
  107. package/dist/esm-es5/{verdocs-button-panel_3.entry.js → verdocs-button-panel_2.entry.js} +1 -1
  108. package/dist/esm-es5/verdocs-component-error.entry.js +1 -0
  109. package/dist/esm-es5/verdocs-contact-picker.entry.js +1 -1
  110. package/dist/esm-es5/verdocs-document-page_2.entry.js +1 -1
  111. package/dist/esm-es5/verdocs-envelope-sidebar.entry.js +1 -1
  112. package/dist/esm-es5/verdocs-field-checkbox.entry.js +1 -1
  113. package/dist/esm-es5/verdocs-field-date.entry.js +1 -1
  114. package/dist/esm-es5/verdocs-field-dropdown.entry.js +1 -1
  115. package/dist/esm-es5/verdocs-field-initial.entry.js +1 -1
  116. package/dist/esm-es5/verdocs-field-payment.entry.js +1 -1
  117. package/dist/esm-es5/verdocs-field-radio-button.entry.js +1 -1
  118. package/dist/esm-es5/verdocs-field-signature.entry.js +1 -0
  119. package/dist/esm-es5/verdocs-field-textarea.entry.js +1 -1
  120. package/dist/esm-es5/verdocs-field-textbox.entry.js +1 -1
  121. package/dist/esm-es5/verdocs-field-timestamp.entry.js +1 -1
  122. package/dist/esm-es5/verdocs-floating-menu_2.entry.js +1 -0
  123. package/dist/esm-es5/verdocs-preview.entry.js +1 -1
  124. package/dist/esm-es5/verdocs-quick-functions_3.entry.js +1 -1
  125. package/dist/esm-es5/verdocs-search.entry.js +1 -1
  126. package/dist/esm-es5/verdocs-send.entry.js +1 -1
  127. package/dist/esm-es5/verdocs-sign.entry.js +1 -1
  128. package/dist/esm-es5/verdocs-signature-dialog.entry.js +1 -0
  129. package/dist/esm-es5/verdocs-template-create_4.entry.js +1 -1
  130. package/dist/esm-es5/verdocs-text-input.entry.js +1 -0
  131. package/dist/esm-es5/verdocs-view.entry.js +1 -1
  132. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  133. package/dist/types/components/controls/verdocs-floating-menu/verdocs-floating-menu.d.ts +31 -0
  134. package/dist/types/components/controls/verdocs-floating-menu/verdocs-floating-menu.stories.d.ts +7 -0
  135. package/dist/types/components/controls/verdocs-toolbar-icon/verdocs-toolbar-icon.d.ts +5 -0
  136. package/dist/types/components/elements/verdocs-component-error/verdocs-component-error.d.ts +10 -0
  137. package/dist/types/components/elements/verdocs-template-fields/verdocs-template-fields.d.ts +14 -3
  138. package/dist/types/components.d.ts +60 -0
  139. package/dist/types/utils/Types.d.ts +0 -1
  140. package/dist/types/utils/utils.d.ts +2 -2
  141. package/dist/verdocs-web-sdk/{p-d729c183.system.entry.js → p-03833051.system.entry.js} +1 -1
  142. package/dist/verdocs-web-sdk/{p-7e84deff.entry.js → p-17fd7860.entry.js} +1 -1
  143. package/dist/verdocs-web-sdk/{p-824e733a.system.entry.js → p-18cf7ea1.system.entry.js} +1 -1
  144. package/dist/verdocs-web-sdk/p-1be43032.system.entry.js +1 -0
  145. package/dist/verdocs-web-sdk/{p-a229aae2.entry.js → p-1ef0501b.entry.js} +1 -1
  146. package/dist/verdocs-web-sdk/{p-fc6cb0be.system.entry.js → p-23033619.system.entry.js} +1 -1
  147. package/dist/verdocs-web-sdk/{p-1759e35b.entry.js → p-266e163c.entry.js} +1 -1
  148. package/dist/verdocs-web-sdk/p-2e4dfdc6.js +1 -0
  149. package/dist/verdocs-web-sdk/{p-c062334b.system.entry.js → p-328453a9.system.entry.js} +1 -1
  150. package/dist/verdocs-web-sdk/p-3599f81f.entry.js +1 -0
  151. package/dist/verdocs-web-sdk/{p-8cfca7ee.entry.js → p-3dbf8bec.entry.js} +1 -1
  152. package/dist/verdocs-web-sdk/{p-74e19125.system.entry.js → p-3dcd05aa.system.entry.js} +1 -1
  153. package/dist/verdocs-web-sdk/{p-aa3a42a4.system.entry.js → p-45ac2230.system.entry.js} +1 -1
  154. package/dist/verdocs-web-sdk/{p-77b92d0b.system.entry.js → p-46bb5543.system.entry.js} +1 -1
  155. package/dist/verdocs-web-sdk/{p-0fbb34f5.entry.js → p-50f82ed8.entry.js} +1 -1
  156. package/dist/verdocs-web-sdk/p-5b114f68.system.entry.js +1 -0
  157. package/dist/verdocs-web-sdk/p-5b8dbf0b.system.entry.js +1 -0
  158. package/dist/verdocs-web-sdk/p-5c7ef99f.system.entry.js +1 -0
  159. package/dist/verdocs-web-sdk/{p-83c05c68.system.entry.js → p-5d220e75.system.entry.js} +1 -1
  160. package/dist/verdocs-web-sdk/{p-d9f744ed.system.entry.js → p-621c7079.system.entry.js} +1 -1
  161. package/dist/verdocs-web-sdk/p-644cc3c3.js +1 -0
  162. package/dist/verdocs-web-sdk/{p-72b4fa6b.entry.js → p-6b205bb5.entry.js} +1 -1
  163. package/dist/verdocs-web-sdk/{p-848e564d.system.entry.js → p-787a334a.system.entry.js} +1 -1
  164. package/dist/verdocs-web-sdk/p-7b357e1a.entry.js +1 -0
  165. package/dist/verdocs-web-sdk/{p-0dd25856.system.entry.js → p-7b66bc0d.system.entry.js} +1 -1
  166. package/dist/verdocs-web-sdk/{p-f17cddc0.entry.js → p-804fbf15.entry.js} +1 -1
  167. package/dist/verdocs-web-sdk/{p-e206c61c.system.entry.js → p-838d889b.system.entry.js} +1 -1
  168. package/dist/verdocs-web-sdk/{p-556ae1ae.system.entry.js → p-86a8b6ad.system.entry.js} +1 -1
  169. package/dist/verdocs-web-sdk/{p-7f5b41a4.entry.js → p-8a2dbb48.entry.js} +1 -1
  170. package/dist/verdocs-web-sdk/p-8f50fd8e.system.entry.js +1 -0
  171. package/dist/verdocs-web-sdk/{p-2c8f6280.system.entry.js → p-8f873d8e.system.entry.js} +1 -1
  172. package/dist/verdocs-web-sdk/p-90a92236.system.entry.js +1 -0
  173. package/dist/verdocs-web-sdk/p-938a7d4e.system.entry.js +1 -0
  174. package/dist/verdocs-web-sdk/{p-d6222a3d.entry.js → p-95016ea1.entry.js} +1 -1
  175. package/dist/verdocs-web-sdk/{p-bd49e24b.entry.js → p-a140f6f9.entry.js} +1 -1
  176. package/dist/verdocs-web-sdk/{p-25cf23c1.system.entry.js → p-a1412c61.system.entry.js} +1 -1
  177. package/dist/verdocs-web-sdk/{p-7e14f782.entry.js → p-a32f90e9.entry.js} +1 -1
  178. package/dist/verdocs-web-sdk/p-a4dc6a79.system.js +1 -0
  179. package/dist/verdocs-web-sdk/p-aba1f14b.system.entry.js +1 -0
  180. package/dist/verdocs-web-sdk/{p-7d3eebb8.entry.js → p-ae3b30c6.entry.js} +1 -1
  181. package/dist/verdocs-web-sdk/{p-450c5246.system.entry.js → p-b505db92.system.entry.js} +1 -1
  182. package/dist/verdocs-web-sdk/{p-3d410f78.entry.js → p-b5c21eda.entry.js} +1 -1
  183. package/dist/verdocs-web-sdk/{p-6e52f29d.entry.js → p-b8faf8b8.entry.js} +1 -1
  184. package/dist/verdocs-web-sdk/{p-c9af569a.entry.js → p-ba23b639.entry.js} +1 -1
  185. package/dist/verdocs-web-sdk/p-c16b6ca4.system.js +1 -1
  186. package/dist/verdocs-web-sdk/p-c3ba021b.entry.js +1 -0
  187. package/dist/verdocs-web-sdk/p-c6370ca8.entry.js +1 -0
  188. package/dist/verdocs-web-sdk/{p-7330b63c.entry.js → p-ce442d55.entry.js} +1 -1
  189. package/dist/verdocs-web-sdk/p-d0c587f1.entry.js +1 -0
  190. package/dist/verdocs-web-sdk/{p-6e00d147.system.entry.js → p-d30ee967.system.entry.js} +1 -1
  191. package/dist/verdocs-web-sdk/p-d36ae684.entry.js +1 -0
  192. package/dist/verdocs-web-sdk/{p-808a2600.system.entry.js → p-d6d95682.system.entry.js} +1 -1
  193. package/dist/verdocs-web-sdk/p-d7e31573.system.js +1 -0
  194. package/dist/verdocs-web-sdk/p-d946b1b6.entry.js +1 -0
  195. package/dist/verdocs-web-sdk/{p-76f192c8.system.entry.js → p-d9ff093e.system.entry.js} +1 -1
  196. package/dist/verdocs-web-sdk/{p-b7036bc4.entry.js → p-eb68cf29.entry.js} +1 -1
  197. package/dist/verdocs-web-sdk/{p-ecaf3712.entry.js → p-ec7a9c6e.entry.js} +1 -1
  198. package/dist/verdocs-web-sdk/{p-2b0456b9.entry.js → p-f43721cf.entry.js} +1 -1
  199. package/dist/verdocs-web-sdk/{p-96ab62f2.entry.js → p-ff45cca0.entry.js} +1 -1
  200. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  201. package/package.json +2 -2
  202. package/dist/esm-es5/VerdocsEndpoint-cf4392fb.js +0 -1
  203. package/dist/esm-es5/utils-188fa107.js +0 -1
  204. package/dist/esm-es5/verdocs-field-signature_3.entry.js +0 -1
  205. package/dist/verdocs-web-sdk/p-03effe00.system.js +0 -1
  206. package/dist/verdocs-web-sdk/p-1ed1a048.entry.js +0 -1
  207. package/dist/verdocs-web-sdk/p-32d1020a.entry.js +0 -1
  208. package/dist/verdocs-web-sdk/p-4c67b1b7.system.js +0 -1
  209. package/dist/verdocs-web-sdk/p-5539dc08.js +0 -1
  210. package/dist/verdocs-web-sdk/p-773f07d3.system.entry.js +0 -1
  211. package/dist/verdocs-web-sdk/p-8a22d96a.system.entry.js +0 -1
  212. package/dist/verdocs-web-sdk/p-adac8a26.js +0 -1
  213. package/dist/verdocs-web-sdk/p-bbad56e6.entry.js +0 -1
  214. package/dist/verdocs-web-sdk/p-d5bb68c4.system.entry.js +0 -1
  215. package/dist/verdocs-web-sdk/p-e2bf56f6.system.entry.js +0 -1
@@ -0,0 +1,91 @@
1
+ verdocs-floating-menu {
2
+ display: none;
3
+ }
4
+
5
+ #verdocs-floating-menu {
6
+ position: absolute;
7
+ width: 56px;
8
+ height: 56px;
9
+ display: flex;
10
+ flex: 0 0 fit-content;
11
+ }
12
+ #verdocs-floating-menu:not(.force-closed):hover {
13
+ height: 500px;
14
+ }
15
+ #verdocs-floating-menu:not(.force-closed):hover .trigger {
16
+ box-shadow: 0 10px 25px #4c56cb;
17
+ transform: translatey(2px);
18
+ transition: all 0.3s;
19
+ }
20
+ #verdocs-floating-menu:not(.force-closed):hover .options {
21
+ display: flex;
22
+ }
23
+ #verdocs-floating-menu:not(.force-closed):hover .options .option {
24
+ animation: vfm-appear 0.1s forwards 0.2s;
25
+ }
26
+ #verdocs-floating-menu .trigger {
27
+ position: absolute;
28
+ width: 56px;
29
+ height: 56px;
30
+ background: #654dcb;
31
+ bottom: 0;
32
+ border-radius: 50%;
33
+ left: 0;
34
+ right: 0;
35
+ margin: auto;
36
+ color: white;
37
+ line-height: 52px;
38
+ text-align: center;
39
+ font-size: 44px;
40
+ z-index: 100;
41
+ box-shadow: 0 10px 25px -5px #4c56cb;
42
+ cursor: pointer;
43
+ transition: all 0.3s;
44
+ }
45
+ #verdocs-floating-menu .options {
46
+ width: 56px;
47
+ flex-direction: column;
48
+ flex: 0 0 fit-content;
49
+ position: absolute;
50
+ bottom: 70px;
51
+ display: none;
52
+ }
53
+ #verdocs-floating-menu .option {
54
+ background: #654dcb;
55
+ display: flex;
56
+ align-items: center;
57
+ justify-content: center;
58
+ border-radius: 50%;
59
+ width: 36px;
60
+ height: 36px;
61
+ margin: 5px auto;
62
+ color: white;
63
+ font-weight: 500;
64
+ text-align: center;
65
+ line-height: 36px;
66
+ opacity: 0;
67
+ }
68
+ #verdocs-floating-menu verdocs-toolbar-icon .icon {
69
+ display: flex;
70
+ }
71
+ #verdocs-floating-menu verdocs-toolbar-icon .icon svg {
72
+ fill: #ffffff;
73
+ }
74
+
75
+ @keyframes vfm-appear {
76
+ 0% {
77
+ opacity: 0;
78
+ }
79
+ 30% {
80
+ transform: scale(0.4);
81
+ opacity: 0.3;
82
+ }
83
+ 70% {
84
+ transform: scale(1.2);
85
+ opacity: 0.6;
86
+ }
87
+ 100% {
88
+ transform: scale(1);
89
+ opacity: 1;
90
+ }
91
+ }
@@ -0,0 +1,158 @@
1
+ import { h, Host } from '@stencil/core';
2
+ const getTop = (el) => el.offsetTop + (el.parentElement && getTop(el.parentElement));
3
+ const getLeft = (el) => el.offsetLeft + (el.parentElement && getLeft(el.parentElement));
4
+ // @see https://stackoverflow.com/a/49186677/1812436
5
+ const getScrollParent = node => {
6
+ const regex = /(auto|scroll)/;
7
+ const parents = (_node, ps) => {
8
+ if (_node.parentNode === null) {
9
+ return ps;
10
+ }
11
+ return parents(_node.parentNode, ps.concat([_node]));
12
+ };
13
+ const style = (_node, prop) => getComputedStyle(_node, null).getPropertyValue(prop);
14
+ const overflow = _node => style(_node, 'overflow') + style(_node, 'overflow-y') + style(_node, 'overflow-x');
15
+ const scroll = _node => regex.test(overflow(_node));
16
+ const scrollParent = _node => {
17
+ if (!(_node instanceof HTMLElement || _node instanceof SVGElement)) {
18
+ return;
19
+ }
20
+ const ps = parents(_node.parentNode, []);
21
+ for (let i = 0; i < ps.length; i += 1) {
22
+ if (scroll(ps[i])) {
23
+ return ps[i];
24
+ }
25
+ }
26
+ return document.scrollingElement || document.documentElement;
27
+ };
28
+ return scrollParent(node);
29
+ };
30
+ /**
31
+ * Floating Action Button style menu. For proper placement, this should be added to the DOM inside a container that is set to
32
+ * `overflow-y: scroll;`. The component will detect that placement and position itself in the bottom-right corner on top of the
33
+ * container. It will be absolutely positioned so it will be unaffected by scrolling the container.
34
+ */
35
+ export class VerdocsFloatingMenu {
36
+ constructor() {
37
+ this.menuContainer = null;
38
+ this.scrollParent = null;
39
+ this.scrollParentParent = null;
40
+ this.options = [];
41
+ }
42
+ componentDidLoad() {
43
+ this.menuContainer = document.createElement('div');
44
+ this.menuContainer.id = 'verdocs-floating-menu';
45
+ let el = document.createElement('div');
46
+ el.className = 'trigger';
47
+ el.innerText = '+';
48
+ this.menuContainer.append(el);
49
+ el = document.createElement('div');
50
+ el.className = 'options';
51
+ this.menuContainer.append(el);
52
+ const localhandleSelect = this.handleSelect.bind(this);
53
+ this.options.forEach(option => {
54
+ const childEl = document.createElement('div');
55
+ childEl.className = 'option';
56
+ childEl.addEventListener('click', () => localhandleSelect(option));
57
+ el.append(childEl);
58
+ const iconEl = document.createElement('verdocs-toolbar-icon');
59
+ iconEl.setAttribute('icon', option.icon);
60
+ iconEl.setAttribute('text', option.tooltip);
61
+ iconEl.setAttribute('placement', 'left');
62
+ childEl.append(iconEl);
63
+ });
64
+ document.body.append(this.menuContainer);
65
+ this.scrollParent = getScrollParent(this.el);
66
+ if (this.scrollParent) {
67
+ this.scrollParentParent = this.scrollParent.parentElement;
68
+ this.repositionTrigger(this.scrollParent);
69
+ }
70
+ }
71
+ disconnectedCallback() {
72
+ var _a;
73
+ (_a = this.menuContainer) === null || _a === void 0 ? void 0 : _a.remove();
74
+ }
75
+ handleSelect(option) {
76
+ var _a;
77
+ (_a = this.optionSelected) === null || _a === void 0 ? void 0 : _a.emit(option);
78
+ const el = document.getElementById('verdocs-floating-menu');
79
+ if (el) {
80
+ el.className = 'force-closed';
81
+ setTimeout(() => {
82
+ el.className = '';
83
+ }, 100);
84
+ }
85
+ }
86
+ repositionTrigger(scrollParent) {
87
+ const scrollParentParent = scrollParent.parentElement;
88
+ if (scrollParentParent) {
89
+ const bounds = scrollParentParent.getBoundingClientRect();
90
+ const menu = document.getElementById('verdocs-floating-menu');
91
+ if (menu) {
92
+ menu.style.bottom = `${document.documentElement.clientHeight - (document.documentElement.scrollTop + bounds.bottom) + 10}px`;
93
+ menu.style.left = `${bounds.right - 80}px`;
94
+ }
95
+ }
96
+ }
97
+ render() {
98
+ return h(Host, null);
99
+ }
100
+ static get is() { return "verdocs-floating-menu"; }
101
+ static get originalStyleUrls() {
102
+ return {
103
+ "$": ["verdocs-floating-menu.scss"]
104
+ };
105
+ }
106
+ static get styleUrls() {
107
+ return {
108
+ "$": ["verdocs-floating-menu.css"]
109
+ };
110
+ }
111
+ static get properties() {
112
+ return {
113
+ "options": {
114
+ "type": "unknown",
115
+ "mutable": false,
116
+ "complexType": {
117
+ "original": "IOption[]",
118
+ "resolved": "IOption[]",
119
+ "references": {
120
+ "IOption": {
121
+ "location": "local"
122
+ }
123
+ }
124
+ },
125
+ "required": false,
126
+ "optional": false,
127
+ "docs": {
128
+ "tags": [],
129
+ "text": "The role that this contact will be assigned to."
130
+ },
131
+ "defaultValue": "[]"
132
+ }
133
+ };
134
+ }
135
+ static get events() {
136
+ return [{
137
+ "method": "optionSelected",
138
+ "name": "optionSelected",
139
+ "bubbles": true,
140
+ "cancelable": true,
141
+ "composed": true,
142
+ "docs": {
143
+ "tags": [],
144
+ "text": "Event fired when a menu option is clicked.\nWeb Component events need to be \"composed\" to cross the Shadow DOM and be received by parent frameworks."
145
+ },
146
+ "complexType": {
147
+ "original": "IOption",
148
+ "resolved": "IOption",
149
+ "references": {
150
+ "IOption": {
151
+ "location": "local"
152
+ }
153
+ }
154
+ }
155
+ }];
156
+ }
157
+ static get elementRef() { return "el"; }
158
+ }
@@ -0,0 +1,49 @@
1
+ import { html } from 'lit-html';
2
+ // This component is heavily commented so it can be used as a reference for developing other components. Please use the comments here
3
+ // as a guide / resource, but do not copy them to new components (so we don't create a maintenance hassle). If you copy this component
4
+ // as a template, clean up all the comments in the copy, so this remains the "main reference".
5
+ // We are using a custom doc generator specifically for Web Components. We use "inline docs" to get documentation out of code
6
+ // comments rather than having to use separate README files. See https://www.npmjs.com/package/@pxtrn/storybook-addon-docs-stencil
7
+ // for more information.
8
+ export default {
9
+ // Where in Storybook this control will be listed
10
+ title: 'Controls/Floating Menu',
11
+ // Hint to help the docs addon find the component
12
+ component: 'verdocs-floating-menu',
13
+ // We can apply default args only shown in Storybook as follows
14
+ args: {
15
+ options: [
16
+ { id: 'attachment', tooltip: 'Attachment', icon: 'A' },
17
+ { id: 'checkbox', tooltip: 'Check Box', icon: 'C' },
18
+ { id: 'date', tooltip: 'Date', icon: 'D' },
19
+ { id: 'dropdown', tooltip: 'Dropdown', icon: 'O' },
20
+ { id: 'initial', tooltip: 'Initials', icon: 'I' },
21
+ { id: 'payment', tooltip: 'Payment', icon: 'P' },
22
+ { id: 'radio', tooltip: 'Radio Button', icon: 'R' },
23
+ { id: 'signature', tooltip: 'Signature', icon: 'S' },
24
+ { id: 'textarea', tooltip: 'Text Area', icon: 'M' },
25
+ { id: 'textbox', tooltip: 'Text Box', icon: 'T' },
26
+ { id: 'timestamp', tooltip: 'Timestamp', icon: 'X' },
27
+ ],
28
+ },
29
+ // Here we can apply overrides to component property documentation. Note that we don't need to (and shouldn't) specify every field
30
+ // here. Only those that need special attention.
31
+ argTypes: {
32
+ optionSelected: {
33
+ action: 'optionSelected',
34
+ // Prevents a duplicate event entry from appearing in the properties table
35
+ table: {
36
+ disable: true,
37
+ },
38
+ },
39
+ },
40
+ layout: 'fullscreen',
41
+ };
42
+ export const FloatingMenu = ({ options, optionSelected }) => html `
43
+ <div style="width: 400px; height: 600px; overflow-y: scroll; background: white;">
44
+ <div style="margin:10px; height: 400px; box-sizing: border-box; border:1px solid #ef99a1;">&nbsp;</div>
45
+ <div style="margin:10px; height: 400px; box-sizing: border-box; border:1px solid #ef99a1;">&nbsp;</div>
46
+ <div style="margin:10px; height: 400px; box-sizing: border-box; border:1px solid #ef99a1;">&nbsp;</div>
47
+ <verdocs-floating-menu .options=${options} @optionSelected=${optionSelected} />
48
+ </div>
49
+ `;
@@ -20,7 +20,8 @@ verdocs-toolbar-icon .tooltip {
20
20
  font-size: 13px;
21
21
  position: relative;
22
22
  border-radius: 4px;
23
- z-index: 10000;
23
+ z-index: 20000;
24
+ white-space: nowrap;
24
25
  }
25
26
  verdocs-toolbar-icon .tooltip .arrow,
26
27
  verdocs-toolbar-icon .tooltip .arrow::before {
@@ -52,4 +53,10 @@ verdocs-toolbar-icon .tooltip[data-popper-placement^=left] > .arrow {
52
53
  }
53
54
  verdocs-toolbar-icon .tooltip[data-popper-placement^=right] > .arrow {
54
55
  left: -4px;
56
+ }
57
+ verdocs-toolbar-icon .tooltip[data-popper-placement^=left] {
58
+ padding: 3px 10px;
59
+ }
60
+ verdocs-toolbar-icon .tooltip[data-popper-placement^=left] > .arrow {
61
+ right: -1px;
55
62
  }
@@ -8,13 +8,17 @@ export class VerdocsToolbarIcon {
8
8
  constructor() {
9
9
  this.text = '';
10
10
  this.icon = '';
11
+ this.placement = 'bottom';
11
12
  this.containerId = `verdocs-toolbar-icon-${Math.random().toString(36).substring(2, 11)}`;
12
13
  }
13
14
  componentDidLoad() {
14
15
  this.popperInstance = createPopper(this.iconEl, this.tooltip, {
16
+ placement: this.placement,
17
+ modifiers: this.placement === 'left' ? [{ name: 'offset', options: { offset: [0, 20] } }] : [],
18
+ });
15
19
  // placement: 'top-end',
16
20
  // modifiers: [{name: 'offset', options: {offset: [0, 10]}}],
17
- });
21
+ // });
18
22
  }
19
23
  disconnectedCallback() {
20
24
  if (this.popperInstance) {
@@ -35,7 +39,7 @@ export class VerdocsToolbarIcon {
35
39
  // this.press?.emit();
36
40
  // }
37
41
  render() {
38
- 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": "bottom", ref: el => (this.tooltip = el) }, this.text, h("div", { "data-popper-arrow": "true", class: "arrow" }))));
42
+ 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" }))));
39
43
  }
40
44
  static get is() { return "verdocs-toolbar-icon"; }
41
45
  static get originalStyleUrls() {
@@ -85,6 +89,29 @@ export class VerdocsToolbarIcon {
85
89
  "attribute": "icon",
86
90
  "reflect": false,
87
91
  "defaultValue": "''"
92
+ },
93
+ "placement": {
94
+ "type": "string",
95
+ "mutable": false,
96
+ "complexType": {
97
+ "original": "Placement",
98
+ "resolved": "\"auto\" | \"auto-end\" | \"auto-start\" | \"bottom\" | \"bottom-end\" | \"bottom-start\" | \"left\" | \"left-end\" | \"left-start\" | \"right\" | \"right-end\" | \"right-start\" | \"top\" | \"top-end\" | \"top-start\"",
99
+ "references": {
100
+ "Placement": {
101
+ "location": "import",
102
+ "path": "@popperjs/core/lib/enums"
103
+ }
104
+ }
105
+ },
106
+ "required": false,
107
+ "optional": false,
108
+ "docs": {
109
+ "tags": [],
110
+ "text": "Override the Popper \"placement\" setting"
111
+ },
112
+ "attribute": "placement",
113
+ "reflect": false,
114
+ "defaultValue": "'bottom'"
88
115
  }
89
116
  };
90
117
  }
@@ -0,0 +1,16 @@
1
+ verdocs-component-error {
2
+ font-family: "Inter", -apple-system, "Segoe UI", "Roboto", "Helvetica Neue", sans-serif;
3
+ display: flex;
4
+ padding: 15px;
5
+ align-items: center;
6
+ justify-content: center;
7
+ }
8
+ verdocs-component-error .inner {
9
+ flex: 1;
10
+ height: 300px;
11
+ display: flex;
12
+ font-size: 18px;
13
+ background: #ffffff;
14
+ align-items: center;
15
+ justify-content: center;
16
+ }
@@ -0,0 +1,46 @@
1
+ // NOTE: This component does not have a story because it's not intended for external use.
2
+ import { h, Host } from '@stencil/core';
3
+ /**
4
+ * Render a simple error message.
5
+ */
6
+ export class VerdocsComponentError {
7
+ constructor() {
8
+ this.message = '';
9
+ }
10
+ render() {
11
+ return (h(Host, null, h("div", { class: "inner" }, this.message)));
12
+ }
13
+ static get is() { return "verdocs-component-error"; }
14
+ static get originalStyleUrls() {
15
+ return {
16
+ "$": ["verdocs-component-error.scss"]
17
+ };
18
+ }
19
+ static get styleUrls() {
20
+ return {
21
+ "$": ["verdocs-component-error.css"]
22
+ };
23
+ }
24
+ static get properties() {
25
+ return {
26
+ "message": {
27
+ "type": "string",
28
+ "mutable": false,
29
+ "complexType": {
30
+ "original": "string",
31
+ "resolved": "string",
32
+ "references": {}
33
+ },
34
+ "required": false,
35
+ "optional": false,
36
+ "docs": {
37
+ "tags": [],
38
+ "text": "The message to display."
39
+ },
40
+ "attribute": "message",
41
+ "reflect": false,
42
+ "defaultValue": "''"
43
+ }
44
+ };
45
+ }
46
+ }
@@ -49,7 +49,7 @@ export class VerdocsDocumentPage {
49
49
  return;
50
50
  }
51
51
  this.pageRendered.emit({
52
- container: this.container,
52
+ // container: this.container,
53
53
  containerId: this.containerId,
54
54
  pageNumber: this.pageNumber,
55
55
  virtualWidth: this.virtualWidth,
@@ -1,7 +1,7 @@
1
1
  verdocs-field-radio-button {
2
2
  font-family: "Inter", -apple-system, "Segoe UI", "Roboto", "Helvetica Neue", sans-serif;
3
- width: 14px;
4
- height: 14px;
3
+ width: 12px;
4
+ height: 12px;
5
5
  display: block;
6
6
  font-size: 11px;
7
7
  position: relative;
@@ -8,6 +8,7 @@ verdocs-field-textbox {
8
8
  letter-spacing: -0.2px;
9
9
  background-color: transparent;
10
10
  transform-origin: bottom left;
11
+ border: 1px solid rgba(0, 0, 0, 0.2);
11
12
  }
12
13
  verdocs-field-textbox.disabled {
13
14
  opacity: 0.5;
@@ -21,9 +22,7 @@ verdocs-field-textbox input {
21
22
  transform-origin: 0 0;
22
23
  box-sizing: border-box;
23
24
  color: rgba(0, 0, 0, 0.87);
24
- border: 1px solid rgba(0, 0, 0, 0.2);
25
- }
26
- verdocs-field-textbox input:focus {
25
+ border: none;
27
26
  outline: none;
28
27
  }
29
28
  verdocs-field-textbox input.hide {
@@ -1,5 +1,5 @@
1
1
  import { VerdocsEndpoint } from '@verdocs/js-sdk';
2
- import { h } from '@stencil/core';
2
+ import { h, Host } from '@stencil/core';
3
3
  import { createTemplateDocument } from '@verdocs/js-sdk/Templates/TemplateDocuments';
4
4
  import { createTemplate, getTemplate } from '@verdocs/js-sdk/Templates/Templates';
5
5
  import { SDKError } from '../../../utils/errors';
@@ -15,7 +15,9 @@ export class VerdocsTemplateCreate {
15
15
  this.endpoint = VerdocsEndpoint.getDefault();
16
16
  this.file = undefined;
17
17
  }
18
- componentWillLoad() { }
18
+ componentWillLoad() {
19
+ this.endpoint.loadSession();
20
+ }
19
21
  handleFileChanged(e) {
20
22
  var _a;
21
23
  console.log('files', e.target.files);
@@ -60,6 +62,9 @@ export class VerdocsTemplateCreate {
60
62
  }
61
63
  }
62
64
  render() {
65
+ if (!this.endpoint.session) {
66
+ return (h(Host, null, h("verdocs-component-error", { message: "You must be authenticated to use this module." })));
67
+ }
63
68
  return (h("form", { onSubmit: e => e.preventDefault(), onClick: e => e.stopPropagation(), autocomplete: "off" }, h("input", { type: "file", id: "verdocs-template-create-file", multiple: true, accept: "application/pdf", style: { display: 'none' }, onChange: e => this.handleFileChanged(e) }), h("div", { class: "upload-box" }, h("div", null, h("span", { innerHTML: FileIcon })), h("div", { style: { marginTop: '20px', fontSize: '20px', fontWeight: 'bold' } }, "Drag a file here"), h("div", { style: { marginTop: '20px', marginBottom: '20px', fontSize: '16px' } }, "Or, if you prefer..."), h("verdocs-button", { label: "Select a file from your computer", size: "small", onClick: e => this.handleUpload(e) })), h("div", { class: "buttons" }, h("verdocs-button", { variant: "outline", label: "Cancel", size: "small", onClick: e => this.handleCancel(e) }), h("verdocs-button", { label: "Next", size: "small", onClick: e => this.handleSubmit(e), disabled: !this.file }))));
64
69
  }
65
70
  static get is() { return "verdocs-template-create"; }
@@ -1,5 +1,6 @@
1
1
  verdocs-template-fields {
2
2
  font-family: "Inter", -apple-system, "Segoe UI", "Roboto", "Helvetica Neue", sans-serif;
3
+ position: relative;
3
4
  }
4
5
  verdocs-template-fields .page-0 {
5
6
  padding: 65px 15px 0 15px;
@@ -21,47 +22,6 @@ verdocs-template-fields .page-0 .user-placed-fields .title {
21
22
  position: absolute;
22
23
  background: #46497d;
23
24
  }
24
- verdocs-template-fields .fields-bar {
25
- height: 50px;
26
- display: flex;
27
- z-index: 10000;
28
- position: fixed;
29
- padding: 5px 20px;
30
- line-height: 28px;
31
- align-items: center;
32
- flex-direction: row;
33
- box-sizing: border-box;
34
- background: #46497d;
35
- }
36
- verdocs-template-fields .fields-bar .label {
37
- color: #ffffff;
38
- font-size: 14px;
39
- font-weight: bold;
40
- margin-right: 8px;
41
- }
42
- verdocs-template-fields .fields-bar .icon {
43
- margin: 0 4px;
44
- display: flex;
45
- transform: scale(0.8, 0.8);
46
- }
47
- verdocs-template-fields .fields-bar .icon svg {
48
- fill: #ffffff;
49
- }
50
- verdocs-template-fields .fields-bar .operation {
51
- border: none;
52
- outline: none;
53
- color: #ffffff;
54
- cursor: pointer;
55
- font-size: 16px;
56
- margin-left: 10px;
57
- background: transparent;
58
- text-transform: uppercase;
59
- }
60
- verdocs-template-fields .fields-bar .operation:disabled {
61
- color: #cccccc;
62
- cursor: inherit;
63
- pointer-events: none;
64
- }
65
25
  verdocs-template-fields .pages {
66
26
  display: flex;
67
27
  padding: 15px;
@@ -75,4 +35,37 @@ verdocs-template-fields .pages {
75
35
  verdocs-template-fields .pages div,
76
36
  verdocs-template-fields .pages canvas {
77
37
  box-sizing: border-box;
38
+ }
39
+ verdocs-template-fields.placing-attachment {
40
+ cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m10.55 16.55 7.275-7.275L16.05 7.5l-5.5 5.45-2.675-2.65L6.1 12.075Zm-5.375 4.925q-1.125 0-1.887-.763-.763-.762-.763-1.887V5.175q0-1.125.763-1.888.762-.762 1.887-.762h13.65q1.125 0 1.888.762.762.763.762 1.888v13.65q0 1.125-.762 1.887-.763.763-1.888.763Zm0-2.65h13.65V5.175H5.175v13.65Zm0-13.65v13.65-13.65Z'/%3E%3C/svg%3E") 16 16, pointer;
41
+ }
42
+ verdocs-template-fields.placing-checkbox {
43
+ cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m10.55 16.55 7.275-7.275L16.05 7.5l-5.5 5.45-2.675-2.65L6.1 12.075Zm-5.375 4.925q-1.125 0-1.887-.763-.763-.762-.763-1.887V5.175q0-1.125.763-1.888.762-.762 1.887-.762h13.65q1.125 0 1.888.762.762.763.762 1.888v13.65q0 1.125-.762 1.887-.763.763-1.888.763Zm0-2.65h13.65V5.175H5.175v13.65Zm0-13.65v13.65-13.65Z'/%3E%3C/svg%3E") 16 16, pointer;
44
+ }
45
+ verdocs-template-fields.placing-date {
46
+ cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m10.55 16.55 7.275-7.275L16.05 7.5l-5.5 5.45-2.675-2.65L6.1 12.075Zm-5.375 4.925q-1.125 0-1.887-.763-.763-.762-.763-1.887V5.175q0-1.125.763-1.888.762-.762 1.887-.762h13.65q1.125 0 1.888.762.762.763.762 1.888v13.65q0 1.125-.762 1.887-.763.763-1.888.763Zm0-2.65h13.65V5.175H5.175v13.65Zm0-13.65v13.65-13.65Z'/%3E%3C/svg%3E") 16 16, pointer;
47
+ }
48
+ verdocs-template-fields.placing-dropdown {
49
+ cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m10.55 16.55 7.275-7.275L16.05 7.5l-5.5 5.45-2.675-2.65L6.1 12.075Zm-5.375 4.925q-1.125 0-1.887-.763-.763-.762-.763-1.887V5.175q0-1.125.763-1.888.762-.762 1.887-.762h13.65q1.125 0 1.888.762.762.763.762 1.888v13.65q0 1.125-.762 1.887-.763.763-1.888.763Zm0-2.65h13.65V5.175H5.175v13.65Zm0-13.65v13.65-13.65Z'/%3E%3C/svg%3E") 16 16, pointer;
50
+ }
51
+ verdocs-template-fields.placing-initial {
52
+ cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='M6.225 20.775V7h-5V3.225H15V7h-5v13.775Zm9.775 0v-8h-3V9h9.775v3.775h-3v8Z'/%3E%3C/svg%3E") 16 16, pointer;
53
+ }
54
+ verdocs-template-fields.placing-payment {
55
+ cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m10.55 16.55 7.275-7.275L16.05 7.5l-5.5 5.45-2.675-2.65L6.1 12.075Zm-5.375 4.925q-1.125 0-1.887-.763-.763-.762-.763-1.887V5.175q0-1.125.763-1.888.762-.762 1.887-.762h13.65q1.125 0 1.888.762.762.763.762 1.888v13.65q0 1.125-.762 1.887-.763.763-1.888.763Zm0-2.65h13.65V5.175H5.175v13.65Zm0-13.65v13.65-13.65Z'/%3E%3C/svg%3E") 16 16, pointer;
56
+ }
57
+ verdocs-template-fields.placing-radio {
58
+ cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='M12 17q2.075 0 3.538-1.463Q17 14.075 17 12t-1.462-3.538Q14.075 7 12 7 9.925 7 8.463 8.462 7 9.925 7 12q0 2.075 1.463 3.537Q9.925 17 12 17Zm0 5.85q-2.275 0-4.25-.85t-3.438-2.312Q2.85 18.225 2 16.25q-.85-1.975-.85-4.25T2 7.75q.85-1.975 2.312-3.438Q5.775 2.85 7.75 2q1.975-.85 4.25-.85t4.25.85q1.975.85 3.438 2.312Q21.15 5.775 22 7.75q.85 1.975.85 4.25T22 16.25q-.85 1.975-2.312 3.438Q18.225 21.15 16.25 22q-1.975.85-4.25.85Zm0-3.15q3.25 0 5.475-2.225Q19.7 15.25 19.7 12q0-3.25-2.225-5.475Q15.25 4.3 12 4.3q-3.25 0-5.475 2.225Q4.3 8.75 4.3 12q0 3.25 2.225 5.475Q8.75 19.7 12 19.7Zm0-7.7Z'/%3E%3C/svg%3E") 16 16, pointer;
59
+ }
60
+ verdocs-template-fields.placing-signature {
61
+ cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m9.225 21.225 4.65-4.65h8.45v4.65Zm-5.35-2.2H5.05l8.5-8.5-1.175-1.175-8.5 8.5Zm14.25-9.95L13.8 4.8l1.325-1.325q.625-.65 1.525-.663.9-.012 1.6.663l1.225 1.175q.675.675.663 1.562-.013.888-.663 1.513ZM16.7 10.55 6 21.225H1.675V16.9L12.35 6.225Zm-3.725-.625-.6-.575 1.175 1.175Z'/%3E%3C/svg%3E") 16 16, pointer;
62
+ }
63
+ verdocs-template-fields.placing-textarea {
64
+ cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='M3.225 20.725v-3.15h11.55v3.15Zm0-4.775V12.8h17.55v3.15Zm0-4.75V8.05h17.55v3.15Zm0-4.775v-3.15h17.55v3.15Z'/%3E%3C/svg%3E") 16 16, pointer;
65
+ }
66
+ verdocs-template-fields.placing-textbox {
67
+ cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='M3.425 16.15V13h11.15v3.15Zm0-5.15V7.85h17.15V11Z'/%3E%3C/svg%3E") 16 16, pointer;
68
+ }
69
+ verdocs-template-fields.placing-timestamp {
70
+ cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m10.55 16.55 7.275-7.275L16.05 7.5l-5.5 5.45-2.675-2.65L6.1 12.075Zm-5.375 4.925q-1.125 0-1.887-.763-.763-.762-.763-1.887V5.175q0-1.125.763-1.888.762-.762 1.887-.762h13.65q1.125 0 1.888.762.762.763.762 1.888v13.65q0 1.125-.762 1.887-.763.763-1.888.763Zm0-2.65h13.65V5.175H5.175v13.65Zm0-13.65v13.65-13.65Z'/%3E%3C/svg%3E") 16 16, pointer;
78
71
  }