@verdocs/web-sdk 6.5.0-beta.2 → 6.5.0-beta.3

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 (177) hide show
  1. package/dist/cjs/loader.cjs.js +1 -1
  2. package/dist/cjs/{utils-4rWXSNpE.js → utils-LPO6l9nR.js} +2 -3
  3. package/dist/{components/p-Btmt1DxH.js.map → cjs/utils-LPO6l9nR.js.map} +1 -1
  4. package/dist/cjs/verdocs-adopt-signature-dialog.verdocs-delegate-dialog.verdocs-disclosure-dialog.verdocs-kba-dialog.verdocs-otp-dialog.verdocs-signing-progress.verdocs-view.entry.cjs.js.map +1 -1
  5. package/dist/cjs/verdocs-adopt-signature-dialog_7.cjs.entry.js +11 -10
  6. package/dist/cjs/verdocs-contact-picker.cjs.entry.js +1 -1
  7. package/dist/cjs/verdocs-envelope-document-page_3.cjs.entry.js +1 -1
  8. package/dist/cjs/verdocs-envelopes-list.cjs.entry.js +1 -1
  9. package/dist/cjs/verdocs-field-attachment_13.cjs.entry.js +39 -2
  10. package/dist/cjs/verdocs-pagination_2.cjs.entry.js +1 -1
  11. package/dist/cjs/verdocs-preview_7.cjs.entry.js +1 -1
  12. package/dist/cjs/verdocs-sign.cjs.entry.js +76 -17
  13. package/dist/cjs/verdocs-sign.entry.cjs.js.map +1 -1
  14. package/dist/cjs/verdocs-template-document-page_2.cjs.entry.js +1 -1
  15. package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
  16. package/dist/collection/components/dialogs/verdocs-adopt-signature-dialog/verdocs-adopt-signature-dialog.js +11 -10
  17. package/dist/collection/components/dialogs/verdocs-adopt-signature-dialog/verdocs-adopt-signature-dialog.js.map +1 -1
  18. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.css +1 -1
  19. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js +77 -17
  20. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js.map +1 -1
  21. package/dist/collection/components/fields/verdocs-field-initial/verdocs-field-initial.js +38 -1
  22. package/dist/collection/components/fields/verdocs-field-initial/verdocs-field-initial.js.map +1 -1
  23. package/dist/collection/components/fields/verdocs-field-signature/verdocs-field-signature.js +39 -1
  24. package/dist/collection/components/fields/verdocs-field-signature/verdocs-field-signature.js.map +1 -1
  25. package/dist/collection/utils/utils.js +0 -1
  26. package/dist/collection/utils/utils.js.map +1 -1
  27. package/dist/components/{p-kbW0me2Y.js → p-0lrmfxFN.js} +3 -3
  28. package/dist/components/{p-kbW0me2Y.js.map → p-0lrmfxFN.js.map} +1 -1
  29. package/dist/components/{p-Btmt1DxH.js → p-B3TbYvlU.js} +2 -3
  30. package/dist/components/p-B3TbYvlU.js.map +1 -0
  31. package/dist/components/{p-0p8NaKpS.js → p-B9DM7wD0.js} +23 -3
  32. package/dist/components/p-B9DM7wD0.js.map +1 -0
  33. package/dist/components/{p-C5xpynM2.js → p-BXwiCpEb.js} +3 -3
  34. package/dist/components/{p-C5xpynM2.js.map → p-BXwiCpEb.js.map} +1 -1
  35. package/dist/components/{p-QjwQw9ZJ.js → p-C7xRBNX9.js} +3 -3
  36. package/dist/components/{p-QjwQw9ZJ.js.map → p-C7xRBNX9.js.map} +1 -1
  37. package/dist/components/{p-DqqO4T0y.js → p-DCXdeiPc.js} +13 -12
  38. package/dist/components/p-DCXdeiPc.js.map +1 -0
  39. package/dist/components/{p-C1KzzI_w.js → p-DNGq3wZS.js} +3 -3
  40. package/dist/components/{p-C1KzzI_w.js.map → p-DNGq3wZS.js.map} +1 -1
  41. package/dist/components/{p-Z1wZ6-IT.js → p-DZv79sQs.js} +5 -5
  42. package/dist/components/{p-Z1wZ6-IT.js.map → p-DZv79sQs.js.map} +1 -1
  43. package/dist/components/{p-BToCx2ri.js → p-Dl45UNf-.js} +22 -3
  44. package/dist/components/p-Dl45UNf-.js.map +1 -0
  45. package/dist/components/{p-Dr4C7GlH.js → p-DzLB0MYu.js} +6 -6
  46. package/dist/components/{p-Dr4C7GlH.js.map → p-DzLB0MYu.js.map} +1 -1
  47. package/dist/components/{p-IcDkT207.js → p-INlr_V_p.js} +5 -5
  48. package/dist/components/{p-IcDkT207.js.map → p-INlr_V_p.js.map} +1 -1
  49. package/dist/components/{p-_CWDgKqX.js → p-rWeRsA_5.js} +3 -3
  50. package/dist/components/{p-_CWDgKqX.js.map → p-rWeRsA_5.js.map} +1 -1
  51. package/dist/components/verdocs-adopt-signature-dialog.js +1 -1
  52. package/dist/components/verdocs-build.js +7 -7
  53. package/dist/components/verdocs-contact-picker.js +1 -1
  54. package/dist/components/verdocs-envelope-document-page.js +1 -1
  55. package/dist/components/verdocs-envelopes-list.js +2 -2
  56. package/dist/components/verdocs-field-initial.js +1 -1
  57. package/dist/components/verdocs-field-signature.js +1 -1
  58. package/dist/components/verdocs-preview.js +1 -1
  59. package/dist/components/verdocs-quick-filter.js +1 -1
  60. package/dist/components/verdocs-send.js +1 -1
  61. package/dist/components/verdocs-sign.js +82 -22
  62. package/dist/components/verdocs-sign.js.map +1 -1
  63. package/dist/components/verdocs-template-document-page.js +1 -1
  64. package/dist/components/verdocs-template-fields.js +1 -1
  65. package/dist/components/verdocs-templates-list.js +1 -1
  66. package/dist/components/verdocs-view.js +1 -1
  67. package/dist/custom-elements.json +2422 -0
  68. package/dist/esm/loader.js +1 -1
  69. package/dist/esm/{utils-NHDsmnv8.js → utils-UeubfAI_.js} +2 -3
  70. package/dist/{esm-es5/utils-NHDsmnv8.js.map → esm/utils-UeubfAI_.js.map} +1 -1
  71. package/dist/esm/verdocs-adopt-signature-dialog.verdocs-delegate-dialog.verdocs-disclosure-dialog.verdocs-kba-dialog.verdocs-otp-dialog.verdocs-signing-progress.verdocs-view.entry.js.map +1 -1
  72. package/dist/esm/verdocs-adopt-signature-dialog_7.entry.js +11 -10
  73. package/dist/esm/verdocs-contact-picker.entry.js +1 -1
  74. package/dist/esm/verdocs-envelope-document-page_3.entry.js +1 -1
  75. package/dist/esm/verdocs-envelopes-list.entry.js +1 -1
  76. package/dist/esm/verdocs-field-attachment_13.entry.js +39 -2
  77. package/dist/esm/verdocs-pagination_2.entry.js +1 -1
  78. package/dist/esm/verdocs-preview_7.entry.js +1 -1
  79. package/dist/esm/verdocs-sign.entry.js +76 -17
  80. package/dist/esm/verdocs-sign.entry.js.map +1 -1
  81. package/dist/esm/verdocs-template-document-page_2.entry.js +1 -1
  82. package/dist/esm/verdocs-web-sdk.js +1 -1
  83. package/dist/esm-es5/loader.js +1 -1
  84. package/dist/esm-es5/{utils-NHDsmnv8.js → utils-UeubfAI_.js} +2 -2
  85. package/dist/{esm/utils-NHDsmnv8.js.map → esm-es5/utils-UeubfAI_.js.map} +1 -1
  86. package/dist/esm-es5/verdocs-adopt-signature-dialog.verdocs-delegate-dialog.verdocs-disclosure-dialog.verdocs-kba-dialog.verdocs-otp-dialog.verdocs-signing-progress.verdocs-view.entry.js.map +1 -1
  87. package/dist/esm-es5/verdocs-adopt-signature-dialog_7.entry.js +1 -1
  88. package/dist/esm-es5/verdocs-adopt-signature-dialog_7.entry.js.map +1 -1
  89. package/dist/esm-es5/verdocs-contact-picker.entry.js +1 -1
  90. package/dist/esm-es5/verdocs-envelope-document-page_3.entry.js +1 -1
  91. package/dist/esm-es5/verdocs-envelopes-list.entry.js +1 -1
  92. package/dist/esm-es5/verdocs-field-attachment_13.entry.js +1 -1
  93. package/dist/esm-es5/verdocs-field-attachment_13.entry.js.map +1 -1
  94. package/dist/esm-es5/verdocs-pagination_2.entry.js +1 -1
  95. package/dist/esm-es5/verdocs-preview_7.entry.js +1 -1
  96. package/dist/esm-es5/verdocs-sign.entry.js +1 -1
  97. package/dist/esm-es5/verdocs-sign.entry.js.map +1 -1
  98. package/dist/esm-es5/verdocs-template-document-page_2.entry.js +1 -1
  99. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  100. package/dist/types/components/dialogs/verdocs-adopt-signature-dialog/verdocs-adopt-signature-dialog.d.ts +1 -0
  101. package/dist/types/components/embeds/verdocs-sign/verdocs-sign.d.ts +3 -2
  102. package/dist/types/components/fields/verdocs-field-initial/verdocs-field-initial.d.ts +5 -0
  103. package/dist/types/components/fields/verdocs-field-signature/verdocs-field-signature.d.ts +5 -0
  104. package/dist/types/components.d.ts +16 -0
  105. package/dist/verdocs-web-sdk/p-0029decb.entry.js +2 -0
  106. package/dist/verdocs-web-sdk/p-0029decb.entry.js.map +1 -0
  107. package/dist/verdocs-web-sdk/p-2439e530.entry.js +2 -0
  108. package/dist/verdocs-web-sdk/p-2439e530.entry.js.map +1 -0
  109. package/dist/verdocs-web-sdk/{p-7e580691.entry.js → p-2898f573.entry.js} +2 -2
  110. package/dist/verdocs-web-sdk/{p-94e4d921.system.entry.js → p-2ecec6ed.system.entry.js} +2 -2
  111. package/dist/verdocs-web-sdk/{p-2adc75a7.system.entry.js → p-415fa16f.system.entry.js} +2 -2
  112. package/dist/verdocs-web-sdk/{p-0c567c7d.entry.js → p-464ef358.entry.js} +2 -2
  113. package/dist/verdocs-web-sdk/{p-fe64576a.system.entry.js → p-46991fe7.system.entry.js} +2 -2
  114. package/dist/verdocs-web-sdk/{p-9a7a9d7b.system.entry.js → p-4a19fbe3.system.entry.js} +2 -2
  115. package/dist/verdocs-web-sdk/{p-0b57c1ef.system.entry.js → p-605b48fa.system.entry.js} +2 -2
  116. package/dist/verdocs-web-sdk/p-64d8ea72.entry.js +2 -0
  117. package/dist/verdocs-web-sdk/p-64d8ea72.entry.js.map +1 -0
  118. package/dist/verdocs-web-sdk/p-64e896e9.system.entry.js +2 -0
  119. package/dist/verdocs-web-sdk/p-64e896e9.system.entry.js.map +1 -0
  120. package/dist/verdocs-web-sdk/{p-0709e936.system.entry.js → p-78e8e398.system.entry.js} +3 -3
  121. package/dist/verdocs-web-sdk/p-99ba5e3b.system.entry.js +2 -0
  122. package/dist/verdocs-web-sdk/p-99ba5e3b.system.entry.js.map +1 -0
  123. package/dist/verdocs-web-sdk/{p-303ed47f.entry.js → p-9cdc0980.entry.js} +3 -3
  124. package/dist/verdocs-web-sdk/{p-BRVQ3Epx.system.js.map → p-B0XOGp0Z.system.js.map} +1 -1
  125. package/dist/verdocs-web-sdk/p-B8zpaHu-.system.js +1 -1
  126. package/dist/verdocs-web-sdk/{p-BU5y2rcs.system.js → p-BAU98X36.system.js} +2 -2
  127. package/dist/verdocs-web-sdk/{p-BU5y2rcs.system.js.map → p-BAU98X36.system.js.map} +1 -1
  128. package/dist/verdocs-web-sdk/p-BgTW-H9_.system.js.map +1 -0
  129. package/dist/verdocs-web-sdk/p-CAlOUHPb.system.js.map +1 -0
  130. package/dist/verdocs-web-sdk/{p-nK4J4UFK.js → p-CmnR51jO.js} +2 -2
  131. package/dist/verdocs-web-sdk/{p-nK4J4UFK.js.map → p-CmnR51jO.js.map} +1 -1
  132. package/dist/verdocs-web-sdk/{p-CogJ52UV.system.js.map → p-D-LZAEE-.system.js.map} +1 -1
  133. package/dist/verdocs-web-sdk/p-Dj3cajbH.system.js.map +1 -0
  134. package/dist/verdocs-web-sdk/{p-B_fwtKg3.system.js.map → p-O_JBau3u.system.js.map} +1 -1
  135. package/dist/verdocs-web-sdk/{p-B8lqLcUJ.system.js.map → p-XPySISfx.system.js.map} +1 -1
  136. package/dist/verdocs-web-sdk/{p-831ff4eb.entry.js → p-ab8ba727.entry.js} +2 -2
  137. package/dist/verdocs-web-sdk/{p-d06e0bce.entry.js → p-ae75565d.entry.js} +2 -2
  138. package/dist/verdocs-web-sdk/{p-acc245e6.entry.js → p-d5fc15ee.entry.js} +3 -3
  139. package/dist/verdocs-web-sdk/p-db5c9ec4.system.entry.js +2 -0
  140. package/dist/verdocs-web-sdk/p-db5c9ec4.system.entry.js.map +1 -0
  141. package/dist/verdocs-web-sdk/{p-CyjSP4tG.system.js.map → p-k2jmkyZp.system.js.map} +1 -1
  142. package/dist/verdocs-web-sdk/{p-C9hmmFhm.system.js.map → p-xFl_XV91.system.js.map} +1 -1
  143. package/dist/verdocs-web-sdk/verdocs-adopt-signature-dialog.verdocs-delegate-dialog.verdocs-disclosure-dialog.verdocs-kba-dialog.verdocs-otp-dialog.verdocs-signing-progress.verdocs-view.entry.esm.js.map +1 -1
  144. package/dist/verdocs-web-sdk/verdocs-sign.entry.esm.js.map +1 -1
  145. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  146. package/package.json +2 -2
  147. package/dist/cjs/utils-4rWXSNpE.js.map +0 -1
  148. package/dist/components/p-0p8NaKpS.js.map +0 -1
  149. package/dist/components/p-BToCx2ri.js.map +0 -1
  150. package/dist/components/p-DqqO4T0y.js.map +0 -1
  151. package/dist/verdocs-web-sdk/p-0dfacde9.system.entry.js +0 -2
  152. package/dist/verdocs-web-sdk/p-0dfacde9.system.entry.js.map +0 -1
  153. package/dist/verdocs-web-sdk/p-3c45dd79.entry.js +0 -2
  154. package/dist/verdocs-web-sdk/p-3c45dd79.entry.js.map +0 -1
  155. package/dist/verdocs-web-sdk/p-8ad09d97.system.entry.js +0 -2
  156. package/dist/verdocs-web-sdk/p-8ad09d97.system.entry.js.map +0 -1
  157. package/dist/verdocs-web-sdk/p-BcrrIlhF.system.js.map +0 -1
  158. package/dist/verdocs-web-sdk/p-DZW111-z.system.js.map +0 -1
  159. package/dist/verdocs-web-sdk/p-c676d027.entry.js +0 -2
  160. package/dist/verdocs-web-sdk/p-c676d027.entry.js.map +0 -1
  161. package/dist/verdocs-web-sdk/p-dc1eaf38.entry.js +0 -2
  162. package/dist/verdocs-web-sdk/p-dc1eaf38.entry.js.map +0 -1
  163. package/dist/verdocs-web-sdk/p-fef8b6b5.system.entry.js +0 -2
  164. package/dist/verdocs-web-sdk/p-fef8b6b5.system.entry.js.map +0 -1
  165. package/dist/verdocs-web-sdk/p-gCoMHihf.system.js.map +0 -1
  166. /package/dist/verdocs-web-sdk/{p-7e580691.entry.js.map → p-2898f573.entry.js.map} +0 -0
  167. /package/dist/verdocs-web-sdk/{p-94e4d921.system.entry.js.map → p-2ecec6ed.system.entry.js.map} +0 -0
  168. /package/dist/verdocs-web-sdk/{p-2adc75a7.system.entry.js.map → p-415fa16f.system.entry.js.map} +0 -0
  169. /package/dist/verdocs-web-sdk/{p-0c567c7d.entry.js.map → p-464ef358.entry.js.map} +0 -0
  170. /package/dist/verdocs-web-sdk/{p-fe64576a.system.entry.js.map → p-46991fe7.system.entry.js.map} +0 -0
  171. /package/dist/verdocs-web-sdk/{p-9a7a9d7b.system.entry.js.map → p-4a19fbe3.system.entry.js.map} +0 -0
  172. /package/dist/verdocs-web-sdk/{p-0b57c1ef.system.entry.js.map → p-605b48fa.system.entry.js.map} +0 -0
  173. /package/dist/verdocs-web-sdk/{p-0709e936.system.entry.js.map → p-78e8e398.system.entry.js.map} +0 -0
  174. /package/dist/verdocs-web-sdk/{p-303ed47f.entry.js.map → p-9cdc0980.entry.js.map} +0 -0
  175. /package/dist/verdocs-web-sdk/{p-831ff4eb.entry.js.map → p-ab8ba727.entry.js.map} +0 -0
  176. /package/dist/verdocs-web-sdk/{p-d06e0bce.entry.js.map → p-ae75565d.entry.js.map} +0 -0
  177. /package/dist/verdocs-web-sdk/{p-acc245e6.entry.js.map → p-d5fc15ee.entry.js.map} +0 -0
@@ -161,10 +161,7 @@ const VerdocsAdoptSignatureDialog = class {
161
161
  }
162
162
  componentWillLoad() {
163
163
  this.enteredName = this.name;
164
- this.enteredInitials = this.name
165
- .split(' ')
166
- .map(word => word.charAt(0).toUpperCase())
167
- .join('');
164
+ this.computeEnteredInitials(this.name);
168
165
  const ds = new FontFace('Dancing Script', 'url(https://fonts.gstatic.com/s/dancingscript/v19/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7BMSo3Sup6hNX6plRP.woff)');
169
166
  ds.load().then(font => {
170
167
  document.fonts.add(font);
@@ -204,7 +201,7 @@ const VerdocsAdoptSignatureDialog = class {
204
201
  fontSize -= 2;
205
202
  sigContext.font = `${fontSize}px Dancing Script`;
206
203
  metrics = sigContext.measureText(this.enteredName);
207
- } while (metrics.width > sigCanvasWidth - 32 && metrics.actualBoundingBoxAscent + metrics.actualBoundingBoxDescent > sigCanvasHeight - 24);
204
+ } while (metrics.width > sigCanvasWidth - 24 || metrics.actualBoundingBoxAscent + metrics.actualBoundingBoxDescent + 24 > sigCanvasHeight);
208
205
  sigContext.textAlign = 'center';
209
206
  sigContext.textBaseline = 'middle';
210
207
  sigContext.font = `${fontSize}px Dancing Script`;
@@ -224,7 +221,7 @@ const VerdocsAdoptSignatureDialog = class {
224
221
  fontSize -= 2;
225
222
  context.font = `${fontSize}px Dancing Script`;
226
223
  metrics = context.measureText(this.enteredInitials);
227
- } while (metrics.width > initialsCanvasWidth - 32 && metrics.actualBoundingBoxAscent + metrics.actualBoundingBoxDescent > initialsCanvasHeight - 24);
224
+ } while (metrics.width > initialsCanvasWidth - 24 || metrics.actualBoundingBoxAscent + metrics.actualBoundingBoxDescent + 24 > initialsCanvasHeight);
228
225
  context.textAlign = 'center';
229
226
  context.textBaseline = 'middle';
230
227
  context.font = `${fontSize}px Dancing Script`;
@@ -298,10 +295,14 @@ const VerdocsAdoptSignatureDialog = class {
298
295
  }
299
296
  handleNameChange(e) {
300
297
  this.enteredName = e.target.value;
301
- this.enteredInitials = e.target.value
298
+ this.computeEnteredInitials(e.target.value);
299
+ }
300
+ computeEnteredInitials(name) {
301
+ const nameComponents = name
302
+ .trim()
302
303
  .split(' ')
303
- .map(word => word.charAt(0).toUpperCase())
304
- .join('');
304
+ .filter(part => part.length > 0);
305
+ this.enteredInitials = nameComponents.length > 1 ? nameComponents.map(word => word.charAt(0).toUpperCase()).join('') : nameComponents[0].toUpperCase();
305
306
  }
306
307
  handleCancel(e) {
307
308
  e.stopPropagation();
@@ -440,7 +441,7 @@ const VerdocsAdoptSignatureDialog = class {
440
441
  };
441
442
  }
442
443
  render() {
443
- return (index.h("verdocs-dialog", { key: 'f2cee2f94f64c69a4472b5aa5bd15194d9a6978a' }, index.h("div", { key: '8b9c40b0dcaaab0dfb45aab6d0304a78f4c1e959', slot: "heading", class: "heading" }, "Adopt Your Signature"), index.h("div", { key: '2a7f79b3f11b92f3e3f28990acdfcba2f708a87d', slot: "content", class: "content" }, index.h("div", { key: '7b2ec6bc9f1610169af50799ed7075c25dc3a869', style: { fontWeight: '300', color: '#242424', fontSize: '13px' } }, "Confirm your name, initials, and signature."), index.h("div", { key: '1a16357eecf76cdb198af28e93dd3ae4e5b67a34', class: { type: true, active: this.mode === 'type' } }, index.h("verdocs-text-input", { key: 'e7839c01da21aed0c1e9fff1d5c7a5c4c9061b01', label: "Full Name", value: this.enteredName, onInput: e => this.handleNameChange(e), onClick: e => e.stopPropagation() })), index.h("div", { key: 'cda2dd5e3fa360dbd95b68e736d83bc6c1c0f984', style: { fontWeight: '400', color: '#242424', fontSize: '13px' } }, "Select a signature style"), index.h("div", { key: '5f585dcfda7ba1d9faa32230c2537106033f43ae', style: { display: 'flex', flexDirection: 'row', gap: '10px', marginBottom: '6px', alignItems: 'center', fontSize: '13px' } }, index.h("verdocs-radio-button", { key: '4b8355294d55d2f6756b59612f82fd61dd73c8ab', checked: this.mode === 'type', value: "type", name: "mode", onClick: () => (this.mode = 'type') }), index.h("label", { key: '3568c15533e2bcc638102e6a7af2e99f637e53ba' }, "Typed with a keyboard")), index.h("div", { key: 'a228649422e16268ab7276c33a9155640b34c0bd', style: { display: 'flex', flexDirection: 'row', gap: '10px', marginBottom: '6px', alignItems: 'center', fontSize: '13px' } }, index.h("verdocs-radio-button", { key: '622475863bddb2ffbf492c0f692b3cee1c99b3f8', checked: this.mode === 'draw', value: "draw", name: "mode", onClick: () => (this.mode = 'draw') }), index.h("label", { key: 'b875f51c08157205a4c5b5c58101560fda054764' }, "Drawn with touch, mouse, or stylus")), index.h("div", { key: '7c1f203aee570e6b649d649625c22b13dca3ddf2', class: "draw-actions" }, index.h("button", { key: 'e0241a06c87912d9c21a2a95b16c3b653b97cc1b', class: "clear-button", onClick: e => this.handleClearDrawing(e), disabled: !this.hasDrawnSignature }, "Clear")), index.h("div", { key: 'eab1ce8340712dfe289d3458040c4b9ed57c0ee8', style: { fontSize: '13px', fontWeight: '400', marginTop: '8px' } }, "Signature Preview"), index.h("canvas", { key: '3c49dfc917a9665a9623078d4dc92195125db602', ref: el => (this.signatureElement = el), width: "300", height: "79", onPointerDown: this.handleSigPointerDown, onPointerMove: this.handleSigPointerMove, onPointerUp: this.handleSigPointerUp, onPointerCancel: this.handleSigPointerCancel, style: { touchAction: 'none', cursor: 'crosshair' } }), index.h("div", { key: '853673011f0f7d3ab7b9b83fe0150e238113121a', style: { fontSize: '13px', fontWeight: '400', marginTop: '8px' } }, "Initials Preview"), index.h("canvas", { key: 'da5734e05959680323d4939218128bf2131a57df', ref: el => (this.initialsElement = el), width: "300", height: "79", onPointerDown: this.handleInitialsPointerDown, onPointerMove: this.handleInitialsPointerMove, onPointerUp: this.handleInitialsPointerUp, onPointerCancel: this.handleInitialsPointerCancel, style: { touchAction: 'none', cursor: 'crosshair' } }), index.h("div", { key: 'e717761cd09caa1188b2788155571564811e0f15', class: "disclaimer" }, "By clicking \u00ABAdopt Signature\u00BB, I agree that the signature and initials above will be the electronic representation of my signature and initials for all purposes when I use them to sign documents. Applying them to a document is legally equivalent to signing with a pen on paper.")), index.h("div", { key: '7c8f9ffb84f847e6e5d8537bbd01228d1f708ec1', class: "footer", slot: "footer" }, index.h("div", { key: 'b20eb672d5cf8b116025dd5d4c70a2965f404e8e', class: "buttons" }, index.h("button", { key: '49d9d118ff485a65bf165bd859cd2c43e58a7d12', class: "cancel", onClick: e => this.handleCancel(e) }, "Cancel"), index.h("button", { key: '7053f2fd53893c25fbf0678cd59862a20dc88e44', class: "proceed", onClick: e => this.handleAdopt(e), disabled: this.isAdoptButtonDisabled() }, "Adopt & Sign")))));
444
+ return (index.h("verdocs-dialog", { key: 'cd7e4e12870c3e5c6e3ecae99ca18a2e517cc5d7' }, index.h("div", { key: 'e0361f91ecde016a44a9df467989e59b9c7dac78', slot: "heading", class: "heading" }, "Adopt Your Signature"), index.h("div", { key: '871467dcc778eea921fc9f7c43a6f4f00020a716', slot: "content", class: "content" }, index.h("div", { key: 'bfa75ff9630b434b3498dd4b5858a48f4c5d34b1', style: { fontWeight: '300', color: '#242424', fontSize: '13px' } }, "Confirm your name, initials, and signature."), index.h("div", { key: '1c35c5deb3062f9d15c12601fcfdf1b2c141cf40', class: { type: true, active: this.mode === 'type' } }, index.h("verdocs-text-input", { key: '52ab06b5039e3b01bb778380282a2f9209ce2c09', label: "Full Name", value: this.enteredName, onInput: e => this.handleNameChange(e), onClick: e => e.stopPropagation() })), index.h("div", { key: '2ca4dd8dbf1a15f37fc1d746d660601ba0e7744a', style: { fontWeight: '400', color: '#242424', fontSize: '13px' } }, "Select a signature style"), index.h("div", { key: '028510ba0e54e67d8c0e0580b2c39ad741be66b3', style: { display: 'flex', flexDirection: 'row', gap: '10px', marginBottom: '6px', alignItems: 'center', fontSize: '13px' } }, index.h("verdocs-radio-button", { key: 'aae39fd918af8f4d3c6938507d8acfca0a50cad7', checked: this.mode === 'type', value: "type", name: "mode", onClick: () => (this.mode = 'type') }), index.h("label", { key: '3ef1416e35982cb0741aba43f531373235688cb8' }, "Typed with a keyboard")), index.h("div", { key: '1b858ad50908df8f52cd46257fa62d5f6238b46a', style: { display: 'flex', flexDirection: 'row', gap: '10px', marginBottom: '6px', alignItems: 'center', fontSize: '13px' } }, index.h("verdocs-radio-button", { key: 'b28fd02ddba1e50d95e71daebadcbe4692cc07bf', checked: this.mode === 'draw', value: "draw", name: "mode", onClick: () => (this.mode = 'draw') }), index.h("label", { key: 'f1ec506edace3f839be3e60a833a7078388511c6' }, "Drawn with touch, mouse, or stylus")), index.h("div", { key: '7ba7b888718f4d36cb6c3dff4766c7d4a4aa8588', class: "draw-actions" }, index.h("button", { key: '5aa570c6bd0a7919df717f57cd126ce693901614', class: "clear-button", onClick: e => this.handleClearDrawing(e), disabled: !this.hasDrawnSignature }, "Clear")), index.h("div", { key: 'da02332f59f07b62abd19d424ee2026594614681', style: { fontSize: '13px', fontWeight: '400', marginTop: '8px' } }, "Signature Preview"), index.h("canvas", { key: 'f06947bf19e21ca9d55242616ff6203f1511f035', ref: el => (this.signatureElement = el), width: "300", height: "79", onPointerDown: this.handleSigPointerDown, onPointerMove: this.handleSigPointerMove, onPointerUp: this.handleSigPointerUp, onPointerCancel: this.handleSigPointerCancel, style: { touchAction: 'none', cursor: 'crosshair' } }), index.h("div", { key: 'e4253e4a1b0ae0ae2dbe12cbf5044ea19a55ffd1', style: { fontSize: '13px', fontWeight: '400', marginTop: '8px' } }, "Initials Preview"), index.h("canvas", { key: 'b5ffe09caca8e36d3b7645baaa9c49ac534ae2ab', ref: el => (this.initialsElement = el), width: "300", height: "79", onPointerDown: this.handleInitialsPointerDown, onPointerMove: this.handleInitialsPointerMove, onPointerUp: this.handleInitialsPointerUp, onPointerCancel: this.handleInitialsPointerCancel, style: { touchAction: 'none', cursor: 'crosshair' } }), index.h("div", { key: '2794cb9a0e09956c421436bf7d07b7ff5b05b877', class: "disclaimer" }, "By clicking \u00ABAdopt Signature\u00BB, I agree that the signature and initials above will be the electronic representation of my signature and initials for all purposes when I use them to sign documents. Applying them to a document is legally equivalent to signing with a pen on paper.")), index.h("div", { key: 'c162a5d0fb4e827097d386be1598f5687a1f0f9d', class: "footer", slot: "footer" }, index.h("div", { key: '784cabdfd41901b0082ed995f8da6f9d929d5bd6', class: "buttons" }, index.h("button", { key: 'e7a853d282ca868c6ad8f16c32a5295b91ad0027', class: "cancel", onClick: e => this.handleCancel(e) }, "Cancel"), index.h("button", { key: '5db215d9fbca44bd0b8b864cb34b9e9cb89e7cef', class: "proceed", onClick: e => this.handleAdopt(e), disabled: this.isAdoptButtonDisabled() }, "Adopt & Sign")))));
444
445
  }
445
446
  };
446
447
  VerdocsAdoptSignatureDialog.style = verdocsAdoptSignatureDialogCss;
@@ -4,7 +4,7 @@ var index = require('./index-CQ5bTnED.js');
4
4
  var jsSdk = require('@verdocs/js-sdk');
5
5
  var _commonjsHelpers = require('./_commonjsHelpers-BJu3ubxk.js');
6
6
  var Environment = require('./Environment-3vWt0C1Q.js');
7
- var utils = require('./utils-4rWXSNpE.js');
7
+ var utils = require('./utils-LPO6l9nR.js');
8
8
  require('./index-CeUF44L9.js');
9
9
  require('./Types-RUyU-svM.js');
10
10
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  var index = require('./index-CQ5bTnED.js');
4
4
  var jsSdk = require('@verdocs/js-sdk');
5
- var utils = require('./utils-4rWXSNpE.js');
5
+ var utils = require('./utils-LPO6l9nR.js');
6
6
  var errors = require('./errors-D1XRvnet.js');
7
7
  var Datastore = require('./Datastore-CIzsoGWH.js');
8
8
  require('./index-CeUF44L9.js');
@@ -2,7 +2,7 @@
2
2
 
3
3
  var index = require('./index-CQ5bTnED.js');
4
4
  var jsSdk = require('@verdocs/js-sdk');
5
- var utils = require('./utils-4rWXSNpE.js');
5
+ var utils = require('./utils-LPO6l9nR.js');
6
6
  var Toast = require('./Toast-CFBM1R4z.js');
7
7
  var errors = require('./errors-D1XRvnet.js');
8
8
  require('./index-CeUF44L9.js');
@@ -653,7 +653,25 @@ const VerdocsFieldInitial = class {
653
653
  if (done) {
654
654
  return index.h(index.Host, { class: { done } }, value && index.h("img", { src: value, alt: "Initial" }));
655
655
  }
656
- return (index.h(index.Host, { class: { required, disabled, done, focused, filled: !!base64, [signerClass]: true } }, editable && index.h("div", { class: "edge-right" }), editable && index.h("div", { class: "edge-left" }), editable && index.h("div", { class: "edge-top" }), editable && index.h("div", { class: "edge-bottom" }), label && index.h("label", null, label), base64 ? index.h("img", { src: base64, alt: "Initial" }) : index.h("button", { onClick: () => !disabled && this.handleShow() }, "Initial"), editable && (index.h(index.Fragment, null, index.h("div", { id: `verdocs-settings-panel-trigger-${fieldname}`, style: { transform: `scale(${Math.floor((1 / xscale) * 1000) / 1000}, ${Math.floor((1 / yscale) * 1000) / 1000})` }, class: "settings-icon", innerHTML: Icons.SettingsIcon, onClick: (e) => {
656
+ return (index.h(index.Host, { class: { required, disabled, done, focused, filled: !!base64, [signerClass]: true } }, editable && index.h("div", { class: "edge-right" }), editable && index.h("div", { class: "edge-left" }), editable && index.h("div", { class: "edge-top" }), editable && index.h("div", { class: "edge-bottom" }), label && index.h("label", null, label), base64 ? (index.h("img", { src: base64, alt: "Initial", onClick: () => {
657
+ var _a;
658
+ if (disabled)
659
+ return;
660
+ console.log('[INITIAL] Clearing initials');
661
+ (_a = this.fieldChange) === null || _a === void 0 ? void 0 : _a.emit(null);
662
+ } })) : (index.h("button", { onClick: () => {
663
+ var _a;
664
+ if (disabled)
665
+ return;
666
+ // If we already have an initial ID, use it immediately
667
+ if (this.initialid) {
668
+ console.log('[INITIAL] Reusing existing initials', this.initialid);
669
+ (_a = this.fieldChange) === null || _a === void 0 ? void 0 : _a.emit(this.initialid);
670
+ }
671
+ else {
672
+ this.handleShow();
673
+ }
674
+ } }, "Initial")), editable && (index.h(index.Fragment, null, index.h("div", { id: `verdocs-settings-panel-trigger-${fieldname}`, style: { transform: `scale(${Math.floor((1 / xscale) * 1000) / 1000}, ${Math.floor((1 / yscale) * 1000) / 1000})` }, class: "settings-icon", innerHTML: Icons.SettingsIcon, onClick: (e) => {
657
675
  e.stopPropagation();
658
676
  this.showingProperties = !this.showingProperties;
659
677
  } }), this.showingProperties && (index.h("verdocs-portal", { anchor: `verdocs-settings-panel-trigger-${fieldname}`, onClickAway: () => (this.showingProperties = false) }, index.h("verdocs-template-field-properties", { templateId: sourceid, fieldName: fieldname, onClose: () => (this.showingProperties = false), onDelete: () => {
@@ -956,7 +974,26 @@ const VerdocsFieldSignature = class {
956
974
  if (done) {
957
975
  return index.h(index.Host, { class: { done } }, value && index.h("img", { src: base64, alt: "" }));
958
976
  }
959
- return (index.h(index.Host, { class: { required, disabled, done, focused, filled: !!base64, [signerClass]: true } }, editable && index.h("div", { class: "edge-right" }), editable && index.h("div", { class: "edge-left" }), editable && index.h("div", { class: "edge-top" }), editable && index.h("div", { class: "edge-bottom" }), label && index.h("label", null, label), base64 ? index.h("img", { src: base64, alt: "" }) : index.h("button", { onClick: () => !disabled && this.handleShow() }, "Signature"), editable && (index.h(index.Fragment, null, index.h("div", { id: `verdocs-settings-panel-trigger-${fieldname}`, style: { transform: `scale(${Math.floor((1 / xscale) * 1000) / 1000}, ${Math.floor((1 / yscale) * 1000) / 1000})` }, class: "settings-icon", innerHTML: Icons.SettingsIcon, onClick: (e) => {
977
+ console.log('sid', this.signatureid);
978
+ return (index.h(index.Host, { class: { required, disabled, done, focused, filled: !!base64, [signerClass]: true } }, editable && index.h("div", { class: "edge-right" }), editable && index.h("div", { class: "edge-left" }), editable && index.h("div", { class: "edge-top" }), editable && index.h("div", { class: "edge-bottom" }), label && index.h("label", null, label), base64 ? (index.h("img", { src: base64, alt: "", onClick: () => {
979
+ var _a;
980
+ if (disabled)
981
+ return;
982
+ console.log('[SIGNATURE] Clearing signature');
983
+ (_a = this.fieldChange) === null || _a === void 0 ? void 0 : _a.emit(null);
984
+ } })) : (index.h("button", { onClick: () => {
985
+ var _a;
986
+ if (disabled)
987
+ return;
988
+ // If we already have a signature ID, use it immediately
989
+ if (this.signatureid) {
990
+ console.log('[SIGNATURE] Reusing existing signature', this.signatureid);
991
+ (_a = this.fieldChange) === null || _a === void 0 ? void 0 : _a.emit(this.signatureid);
992
+ }
993
+ else {
994
+ this.handleShow();
995
+ }
996
+ } }, "Signature")), editable && (index.h(index.Fragment, null, index.h("div", { id: `verdocs-settings-panel-trigger-${fieldname}`, style: { transform: `scale(${Math.floor((1 / xscale) * 1000) / 1000}, ${Math.floor((1 / yscale) * 1000) / 1000})` }, class: "settings-icon", innerHTML: Icons.SettingsIcon, onClick: (e) => {
960
997
  e.stopPropagation();
961
998
  this.showingProperties = !this.showingProperties;
962
999
  } }), this.showingProperties && (index.h("verdocs-portal", { anchor: `verdocs-settings-panel-trigger-${fieldname}`, onClickAway: () => (this.showingProperties = false) }, index.h("verdocs-template-field-properties", { templateId: sourceid, fieldName: fieldname, onClose: () => this.hideSettingsPanel(), onDelete: () => {
@@ -2,7 +2,7 @@
2
2
 
3
3
  var index = require('./index-CQ5bTnED.js');
4
4
  var jsSdk = require('@verdocs/js-sdk');
5
- var utils = require('./utils-4rWXSNpE.js');
5
+ var utils = require('./utils-LPO6l9nR.js');
6
6
  var popper = require('./popper-Dmp8OTYh.js');
7
7
  require('./index-CeUF44L9.js');
8
8
  require('./Types-RUyU-svM.js');
@@ -9,7 +9,7 @@ var Toast = require('./Toast-CFBM1R4z.js');
9
9
  var Icons = require('./Icons-DTZAw6hQ.js');
10
10
  var index$2 = require('./index-CeUF44L9.js');
11
11
  var interact_min = require('./interact.min-BAnZvLwr.js');
12
- var utils = require('./utils-4rWXSNpE.js');
12
+ var utils = require('./utils-LPO6l9nR.js');
13
13
  require('./_commonjsHelpers-BJu3ubxk.js');
14
14
  require('./Types-RUyU-svM.js');
15
15
 
@@ -2,14 +2,14 @@
2
2
 
3
3
  var index = require('./index-CQ5bTnED.js');
4
4
  var jsSdk = require('@verdocs/js-sdk');
5
- var utils = require('./utils-4rWXSNpE.js');
5
+ var utils = require('./utils-LPO6l9nR.js');
6
6
  var Toast = require('./Toast-CFBM1R4z.js');
7
7
  var errors = require('./errors-D1XRvnet.js');
8
8
  var Datastore = require('./Datastore-CIzsoGWH.js');
9
9
  require('./index-CeUF44L9.js');
10
10
  require('./Types-RUyU-svM.js');
11
11
 
12
- const verdocsSignCss = "@-webkit-keyframes verdocs-field-pulse{0%{background-color:rgba(0, 0, 0, 0.35)}50%{background-color:rgba(0, 0, 0, 0)}100%{background-color:rgba(0, 0, 0, 0.35)}}@keyframes verdocs-field-pulse{0%{background-color:rgba(0, 0, 0, 0.35)}50%{background-color:rgba(0, 0, 0, 0)}100%{background-color:rgba(0, 0, 0, 0.35)}}verdocs-sign{display:-ms-flexbox;display:flex;overflow:hidden;position:relative;min-height:600px;-ms-flex-direction:column;flex-direction:column;-webkit-box-sizing:border-box;box-sizing:border-box;background-color:#f5f5f5;font-family:var(--verdocs-primary-font, \"Inter\", \"Barlow\", sans-serif)}verdocs-sign verdocs-button>button.standard{background:#2a63f6}verdocs-sign div{display:block;-webkit-box-sizing:border-box;box-sizing:border-box}verdocs-sign input{vertical-align:top}verdocs-sign>.document{-ms-flex:1;flex:1;width:100%;height:100%;-ms-flex-item-align:center;align-self:center;display:-ms-flexbox;display:flex;padding:15px;padding-right:140px;row-gap:15px;max-width:1200px;min-height:200px;position:relative;overflow-y:scroll;-ms-flex-align:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex-direction:column;flex-direction:column}verdocs-sign>.document .inner{width:100%;max-width:1028px}verdocs-sign .cover{top:0;left:0;right:0;bottom:0;display:-ms-flexbox;display:flex;z-index:5000;position:absolute;padding-top:100px;-ms-flex-align:center;align-items:center;-ms-flex-direction:column;flex-direction:column;background:rgba(0, 0, 0, 0.5)}verdocs-sign verdocs-ok-dialog .background-overlay{-ms-flex-align:start;align-items:flex-start;padding-top:100px}verdocs-sign .loading-indicator{top:0;left:0;right:0;bottom:0;display:-ms-flexbox;display:flex;z-index:10000;position:fixed;background-color:rgba(0, 0, 0, 0.7)}verdocs-sign .fatal-error{position:absolute;z-index:100;top:0;left:0;right:0;bottom:0;background-color:#4a4a4a;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}verdocs-sign .fatal-error .placeholder{position:absolute;opacity:0.1;z-index:-1;top:0;left:0;right:0;bottom:0;width:612px;height:792px;-webkit-box-shadow:0 0 10px 5px rgba(0, 0, 0, 0.0588235294);box-shadow:0 0 10px 5px rgba(0, 0, 0, 0.0588235294);margin-top:15px}verdocs-sign .fatal-error .message{max-width:360px;width:50%;font-size:16px;background:white;-webkit-box-shadow:3px 3px 9px -1px rgba(0, 0, 0, 0.2470588235);box-shadow:3px 3px 9px -1px rgba(0, 0, 0, 0.2470588235)}verdocs-sign .fatal-error .header{color:white;font-size:18px;font-weight:500;padding:5px 10px;margin:0 0 10px 0;background:#4c56cb}verdocs-sign .fatal-error p{margin:1rem;font-size:14px;font-weight:400;padding:0 10px}@media print{verdocs-sign .header{display:none}}#verdocs-sign-header{color:#fff;width:100%;display:-ms-flexbox;display:flex;z-index:1000;-ms-flex:0 0 46px;flex:0 0 46px;font-size:12px;-webkit-column-gap:15px;-moz-column-gap:15px;column-gap:15px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;-webkit-transition:all 0.25s;transition:all 0.25s;background-color:#33354c;-webkit-box-shadow:0 4px 4px 0 rgba(0, 0, 0, 0.24), 0 0 4px 0 rgba(0, 0, 0, 0.12);box-shadow:0 4px 4px 0 rgba(0, 0, 0, 0.24), 0 0 4px 0 rgba(0, 0, 0, 0.12)}#verdocs-sign-header .inner{width:100%;display:-ms-flexbox;display:flex;margin:0 auto;padding:0 12px;max-width:1200px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row}#verdocs-sign-header .logo{width:80px;display:none;margin:-6px 0 0 0}#verdocs-sign-header .title{font-size:18px;font-weight:500;overflow:hidden;white-space:nowrap;padding:0 10px 0 0;text-overflow:ellipsis}.spinner-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;background:rgba(0, 0, 0, 0.4980392157);-ms-flex-pack:center;justify-content:center}";
12
+ const verdocsSignCss = "@-webkit-keyframes verdocs-field-pulse{0%{background-color:rgba(0, 0, 0, 0.35)}50%{background-color:rgba(0, 0, 0, 0)}100%{background-color:rgba(0, 0, 0, 0.35)}}@keyframes verdocs-field-pulse{0%{background-color:rgba(0, 0, 0, 0.35)}50%{background-color:rgba(0, 0, 0, 0)}100%{background-color:rgba(0, 0, 0, 0.35)}}verdocs-sign{display:-ms-flexbox;display:flex;overflow:hidden;min-height:700px;position:relative;-ms-flex-direction:column;flex-direction:column;-webkit-box-sizing:border-box;box-sizing:border-box;background-color:#f5f5f5;font-family:var(--verdocs-primary-font, \"Inter\", \"Barlow\", sans-serif)}verdocs-sign verdocs-button>button.standard{background:#2a63f6}verdocs-sign div{display:block;-webkit-box-sizing:border-box;box-sizing:border-box}verdocs-sign input{vertical-align:top}verdocs-sign>.document{-ms-flex:1;flex:1;width:100%;height:100%;-ms-flex-item-align:center;align-self:center;display:-ms-flexbox;display:flex;padding:15px;padding-right:140px;row-gap:15px;max-width:1200px;min-height:200px;position:relative;overflow-y:scroll;-ms-flex-align:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex-direction:column;flex-direction:column}verdocs-sign>.document .inner{width:100%;max-width:1028px}verdocs-sign .cover{top:0;left:0;right:0;bottom:0;display:-ms-flexbox;display:flex;z-index:5000;position:absolute;padding-top:100px;-ms-flex-align:center;align-items:center;-ms-flex-direction:column;flex-direction:column;background:rgba(0, 0, 0, 0.5)}verdocs-sign verdocs-ok-dialog .background-overlay{-ms-flex-align:start;align-items:flex-start;padding-top:100px}verdocs-sign .loading-indicator{top:0;left:0;right:0;bottom:0;display:-ms-flexbox;display:flex;z-index:10000;position:fixed;background-color:rgba(0, 0, 0, 0.7)}verdocs-sign .fatal-error{position:absolute;z-index:100;top:0;left:0;right:0;bottom:0;background-color:#4a4a4a;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}verdocs-sign .fatal-error .placeholder{position:absolute;opacity:0.1;z-index:-1;top:0;left:0;right:0;bottom:0;width:612px;height:792px;-webkit-box-shadow:0 0 10px 5px rgba(0, 0, 0, 0.0588235294);box-shadow:0 0 10px 5px rgba(0, 0, 0, 0.0588235294);margin-top:15px}verdocs-sign .fatal-error .message{max-width:360px;width:50%;font-size:16px;background:white;-webkit-box-shadow:3px 3px 9px -1px rgba(0, 0, 0, 0.2470588235);box-shadow:3px 3px 9px -1px rgba(0, 0, 0, 0.2470588235)}verdocs-sign .fatal-error .header{color:white;font-size:18px;font-weight:500;padding:5px 10px;margin:0 0 10px 0;background:#4c56cb}verdocs-sign .fatal-error p{margin:1rem;font-size:14px;font-weight:400;padding:0 10px}@media print{verdocs-sign .header{display:none}}#verdocs-sign-header{color:#fff;width:100%;display:-ms-flexbox;display:flex;z-index:1000;-ms-flex:0 0 46px;flex:0 0 46px;font-size:12px;-webkit-column-gap:15px;-moz-column-gap:15px;column-gap:15px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;-webkit-transition:all 0.25s;transition:all 0.25s;background-color:#33354c;-webkit-box-shadow:0 4px 4px 0 rgba(0, 0, 0, 0.24), 0 0 4px 0 rgba(0, 0, 0, 0.12);box-shadow:0 4px 4px 0 rgba(0, 0, 0, 0.24), 0 0 4px 0 rgba(0, 0, 0, 0.12)}#verdocs-sign-header .inner{width:100%;display:-ms-flexbox;display:flex;margin:0 auto;padding:0 12px;max-width:1200px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row}#verdocs-sign-header .logo{width:80px;display:none;margin:-6px 0 0 0}#verdocs-sign-header .title{font-size:18px;font-weight:500;overflow:hidden;white-space:nowrap;padding:0 10px 0 0;text-overflow:ellipsis}.spinner-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;background:rgba(0, 0, 0, 0.4980392157);-ms-flex-pack:center;justify-content:center}";
13
13
 
14
14
  const VerdocsSign = class {
15
15
  constructor(hostRef) {
@@ -57,11 +57,13 @@ const VerdocsSign = class {
57
57
  this.submitted = false;
58
58
  this.isDone = false;
59
59
  this.showDone = false;
60
- this.showAdoptSignature = false;
60
+ this.adoptingSignature = false;
61
61
  this.showLoadError = false;
62
62
  this.finishLater = false;
63
63
  this.showFinishLater = false;
64
64
  this.agreed = false;
65
+ this.signatureId = null;
66
+ this.initialId = null;
65
67
  this.documentsSingularPlural = 'document';
66
68
  this.authStep = null;
67
69
  this.authMethodStates = {};
@@ -70,7 +72,6 @@ const VerdocsSign = class {
70
72
  this.declining = false;
71
73
  this.delegating = false;
72
74
  this.delegated = false;
73
- this.startedSigning = false;
74
75
  this.kbaChoices = [];
75
76
  this.loading = true;
76
77
  this.envelope = null;
@@ -113,7 +114,7 @@ const VerdocsSign = class {
113
114
  }
114
115
  }
115
116
  processAuthResponse(response) {
116
- var _a, _b, _c;
117
+ var _a, _b, _c, _d, _e, _f, _g;
117
118
  const { envelope, recipient } = response;
118
119
  const { auth_step } = recipient;
119
120
  this.recipient = recipient;
@@ -122,6 +123,8 @@ const VerdocsSign = class {
122
123
  this.authStep = auth_step;
123
124
  this.delegated = !!recipient.delegated_to;
124
125
  this.agreed = recipient.agreed;
126
+ this.signatureId = ((_d = (_c = response.signatures) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.id) || null;
127
+ this.initialId = ((_f = (_e = response.initials) === null || _e === void 0 ? void 0 : _e[0]) === null || _f === void 0 ? void 0 : _f.id) || null;
125
128
  this.submitted = recipient.status === 'submitted';
126
129
  this.loading = false;
127
130
  this.isDone = this.submitted;
@@ -151,7 +154,7 @@ const VerdocsSign = class {
151
154
  this.nextButtonLabel = 'Next';
152
155
  }
153
156
  this.checkRecipientFields();
154
- (_c = this.envelopeLoaded) === null || _c === void 0 ? void 0 : _c.emit({ endpoint: this.endpoint, envelope: this.envelope });
157
+ (_g = this.envelopeLoaded) === null || _g === void 0 ? void 0 : _g.emit({ endpoint: this.endpoint, envelope: this.envelope });
155
158
  }
156
159
  handleClickAgree() {
157
160
  this.submitting = true;
@@ -263,15 +266,35 @@ const VerdocsSign = class {
263
266
  // This can be caused by a focus-out event if the user clicks the field
264
267
  // after it's already filled in, then clicks something else like a textbox.
265
268
  // We don't visually indicate the focus, but it's still there.
266
- if (!e.detail) {
269
+ // NOTE: We now allow null to clear the field
270
+ if (e.detail === undefined) {
267
271
  return;
268
272
  }
273
+ if (e.detail === null) {
274
+ console.log('[SIGN] Clearing initial');
275
+ const updateResult = await jsSdk.updateEnvelopeField(this.endpoint, this.envelopeId, this.roleId, field.name, null, false);
276
+ return this.updateRecipientFieldValue(field.name, updateResult);
277
+ }
278
+ // If we already have an initials block, apply it
279
+ if (this.initialId) {
280
+ console.log('[SIGN] Reusing initial', this.initialId);
281
+ const updateResult = await jsSdk.updateEnvelopeField(this.endpoint, this.envelopeId, this.roleId, field.name, this.initialId, false);
282
+ return this.updateRecipientFieldValue(field.name, updateResult);
283
+ }
284
+ // If it's a UUID, it's an existing initial ID we can just reuse
285
+ if (typeof e.detail === 'string' && /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e.detail)) {
286
+ console.log('[SIGN] Reusing initial', e.detail);
287
+ const updateResult = await jsSdk.updateEnvelopeField(this.endpoint, this.envelopeId, this.roleId, field.name, e.detail, false);
288
+ this.initialId = e.detail;
289
+ return this.updateRecipientFieldValue(field.name, updateResult);
290
+ }
269
291
  this.showSpinner = true;
270
292
  const initialsBlob = await (await fetch(e.detail)).blob();
271
293
  return jsSdk.createInitials(this.endpoint, 'initial', initialsBlob) //
272
294
  .then(async (newInitials) => {
273
295
  const updateResult = await jsSdk.updateEnvelopeField(this.endpoint, this.envelopeId, this.roleId, field.name, newInitials.id, false);
274
296
  this.updateRecipientFieldValue(field.name, updateResult);
297
+ this.initialId = newInitials.id;
275
298
  this.showSpinner = false;
276
299
  })
277
300
  .catch(e => {
@@ -283,16 +306,37 @@ const VerdocsSign = class {
283
306
  // This can be caused by a focus-out event if the user clicks the field
284
307
  // after it's already filled in, then clicks something else like a textbox.
285
308
  // We don't visually indicate the focus, but it's still there.
286
- if (!e.detail) {
309
+ // NOTE: We now allow null to clear the field
310
+ if (e.detail === undefined) {
287
311
  return;
288
312
  }
313
+ if (e.detail === null) {
314
+ console.log('[SIGN] Clearing signature');
315
+ const updateResult = await jsSdk.updateEnvelopeField(this.endpoint, this.envelopeId, this.roleId, field.name, null, false);
316
+ return this.updateRecipientFieldValue(field.name, updateResult);
317
+ }
318
+ // If we already have a signature block, apply it
319
+ if (this.signatureId) {
320
+ console.log('[SIGN] Reusing signature', this.signatureId);
321
+ const updateResult = await jsSdk.updateEnvelopeField(this.endpoint, this.envelopeId, this.roleId, field.name, this.signatureId, false);
322
+ return this.updateRecipientFieldValue(field.name, updateResult);
323
+ }
324
+ // If it's a UUID, it's an existing signature ID we can just reuse
325
+ if (typeof e.detail === 'string' && /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e.detail)) {
326
+ console.log('[SIGN] Reusing signature', e.detail);
327
+ const updateResult = await jsSdk.updateEnvelopeField(this.endpoint, this.envelopeId, this.roleId, field.name, e.detail, false);
328
+ this.signatureId = e.detail;
329
+ return this.updateRecipientFieldValue(field.name, updateResult);
330
+ }
289
331
  this.showSpinner = true;
290
332
  const signatureBlob = await (await fetch(e.detail)).blob();
333
+ console.log('[SIGN] Creating new signature');
291
334
  return jsSdk.createSignature(this.endpoint, 'signature', signatureBlob) //
292
335
  .then(async (newSignature) => {
293
336
  console.log('Signature update result', newSignature);
294
337
  const updateResult = await jsSdk.updateEnvelopeField(this.endpoint, this.envelopeId, this.roleId, field.name, newSignature.id, false);
295
338
  this.updateRecipientFieldValue(field.name, updateResult);
339
+ this.signatureId = newSignature.id;
296
340
  this.showSpinner = false;
297
341
  })
298
342
  .catch(e => {
@@ -504,7 +548,6 @@ const VerdocsSign = class {
504
548
  showSkip = true;
505
549
  }
506
550
  }
507
- console.log('[SIGN] Render flag', winner.name, winner.y, winner.height);
508
551
  utils.renderDocumentFlag(pageInfo, winner.y, winner.height || utils.defaultHeight(winner.type), {
509
552
  variant,
510
553
  label,
@@ -598,6 +641,12 @@ const VerdocsSign = class {
598
641
  const fullName = jsSdk.formatFullName(this.recipient);
599
642
  el.setAttribute('initials', jsSdk.fullNameToInitials(fullName));
600
643
  el.setAttribute('name', fullName);
644
+ if (this.signatureId) {
645
+ el.setAttribute('signatureid', this.signatureId);
646
+ }
647
+ if (this.initialId) {
648
+ el.setAttribute('initialid', this.initialId);
649
+ }
601
650
  }
602
651
  handlePageRendered(e) {
603
652
  const pageInfo = e.detail;
@@ -774,9 +823,9 @@ const VerdocsSign = class {
774
823
  : console.log('[SIGN] All field valid');
775
824
  return (index.h(index.Host, null, index.h("div", { id: "verdocs-sign-header" }, index.h("div", { class: "inner" }, index.h("img", { src: "https://verdocs.com/assets/white-logo.svg", alt: "Verdocs Logo", class: "logo" }), index.h("div", { class: "title" }, this.envelope.name), index.h("div", { style: { flex: '1' } }), !this.finishLater && index.h("verdocs-button", { size: "xsmall", label: this.nextButtonLabel, disabled: !this.agreed || this.submitting, onClick: () => this.handleNext() }), index.h("div", { style: { marginLeft: '10px' } }), index.h("verdocs-dropdown", { options: !this.isDone && !this.finishLater ? inProgressMenuOptions : doneMenuOptions, onOptionSelected: e => this.handleOptionSelected(e) }))), (() => {
776
825
  const focusedFieldObj = this.getSortedFillableFields().find(f => f.name === this.focusedField);
777
- return (index.h("verdocs-signing-progress", { mode: this.nextSubmits ? 'completed' : this.startedSigning ? 'signing' : 'start', current: Math.max(1, this.getSortedFillableFields().findIndex(f => f.name === this.focusedField) + 1), total: this.getSortedFillableFields().length, fieldLabel: (focusedFieldObj === null || focusedFieldObj === void 0 ? void 0 : focusedFieldObj.label) || (focusedFieldObj === null || focusedFieldObj === void 0 ? void 0 : focusedFieldObj.name) || '', fieldCompleted: focusedFieldObj ? !!jsSdk.isFieldFilled(focusedFieldObj, this.getRecipientFields()) : false, onStarted: () => {
778
- this.startedSigning = true;
779
- this.handleNext();
826
+ return (index.h("verdocs-signing-progress", { mode: this.nextSubmits ? 'completed' : 'start', current: Math.max(1, this.getSortedFillableFields().findIndex(f => f.name === this.focusedField) + 1), total: this.getSortedFillableFields().length, fieldLabel: (focusedFieldObj === null || focusedFieldObj === void 0 ? void 0 : focusedFieldObj.label) || (focusedFieldObj === null || focusedFieldObj === void 0 ? void 0 : focusedFieldObj.name) || '', fieldCompleted: focusedFieldObj ? !!jsSdk.isFieldFilled(focusedFieldObj, this.getRecipientFields()) : false, onStarted: () => {
827
+ this.adoptingSignature = true;
828
+ // this.handleNext();
780
829
  }, onNext: () => this.handleNext(), onPrevious: () => this.handlePrev(), onExit: () => this.handleNext() }));
781
830
  })(), index.h("div", { class: "document", style: { width: '64%', marginLeft: '260px' } }, (this.envelope.documents || []).map(envelopeDocument => {
782
831
  const pageNumbers = jsSdk.integerSequence(1, envelopeDocument.pages);
@@ -801,11 +850,21 @@ const VerdocsSign = class {
801
850
  } })), this.showDone && (index.h("verdocs-ok-dialog", { heading: "You're Done!", message: `You can access the ${this.documentsSingularPlural} at any time by clicking on the link from the invitation email.<br /><br />After all recipients have completed their actions, you will receive an email with the document and envelope certificate attached.`, onNext: () => {
802
851
  this.showDone = false;
803
852
  this.isDone = true;
804
- } })), this.showAdoptSignature && (index.h("verdocs-adopt-signature-dialog", { onNext: () => {
805
- this.showAdoptSignature = false;
806
- }, onExit: () => {
807
- this.showAdoptSignature = false;
808
- } })), (this.submitting || this.showSpinner) && (index.h("verdocs-portal", null, index.h("div", { class: "spinner-overlay" }, index.h("verdocs-spinner", null)))), !this.loading && !this.isDone && (index.h("verdocs-sign-footer", { endpoint: this.endpoint, envelopeId: this.envelopeId, isDone: this.isDone, onAskQuestion: (e) => {
853
+ } })), this.adoptingSignature && (index.h("verdocs-adopt-signature-dialog", { name: jsSdk.formatFullName(this.recipient), onNext: async (e) => {
854
+ console.log('[SIGN] Adopting signature/initials block', e.detail);
855
+ this.showSpinner = true;
856
+ // These arrive as base-64 encoded data URLs
857
+ const signatureBlob = await (await fetch(e.detail.signature)).blob();
858
+ const initialsBlob = await (await fetch(e.detail.initials)).blob();
859
+ const sigResult = await jsSdk.createSignature(this.endpoint, 'signature', signatureBlob);
860
+ console.log('[SIGN] Created signature', sigResult);
861
+ this.signatureId = sigResult.id;
862
+ const initResult = await jsSdk.createInitials(this.endpoint, 'initial', initialsBlob);
863
+ console.log('[SIGN] Created initials', initResult);
864
+ this.initialId = initResult.id;
865
+ this.showSpinner = false;
866
+ this.adoptingSignature = false;
867
+ }, onExit: () => (this.adoptingSignature = false) })), (this.submitting || this.showSpinner) && (index.h("verdocs-portal", null, index.h("div", { class: "spinner-overlay" }, index.h("verdocs-spinner", null)))), !this.loading && !this.isDone && (index.h("verdocs-sign-footer", { endpoint: this.endpoint, envelopeId: this.envelopeId, isDone: this.isDone, onAskQuestion: (e) => {
809
868
  jsSdk.askQuestion(this.endpoint, this.envelopeId, this.roleId, { question: e.detail.question })
810
869
  .then(() => Toast.VerdocsToast('Your question has been sent.', { style: 'success' }))
811
870
  .catch(e => {