@hubsync/esign-web-sdk 6.5.4 → 6.5.6

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 (95) hide show
  1. package/dist/cjs/verdocs-adopt-signature-dialog.verdocs-delegate-dialog.verdocs-disclosure-dialog.verdocs-kba-dialog.verdocs-otp-dialog.verdocs-passcode-dialog.verdocs-signing-progress.verdocs-view.entry.cjs.js.map +1 -1
  2. package/dist/cjs/verdocs-adopt-signature-dialog_8.cjs.entry.js +5 -4
  3. package/dist/cjs/verdocs-ok-dialog.cjs.entry.js +6 -2
  4. package/dist/cjs/verdocs-ok-dialog.entry.cjs.js.map +1 -1
  5. package/dist/cjs/verdocs-sign.cjs.entry.js +43 -25
  6. package/dist/cjs/verdocs-sign.entry.cjs.js.map +1 -1
  7. package/dist/collection/components/dialogs/verdocs-ok-dialog/verdocs-ok-dialog.js +6 -2
  8. package/dist/collection/components/dialogs/verdocs-ok-dialog/verdocs-ok-dialog.js.map +1 -1
  9. package/dist/collection/components/dialogs/verdocs-signing-progress/verdocs-signing-progress.js +7 -6
  10. package/dist/collection/components/dialogs/verdocs-signing-progress/verdocs-signing-progress.js.map +1 -1
  11. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js +43 -25
  12. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js.map +1 -1
  13. package/dist/components/{p-Q4A8au3E.js → p-4KJMQrRB.js} +6 -6
  14. package/dist/components/{p-Q4A8au3E.js.map → p-4KJMQrRB.js.map} +1 -1
  15. package/dist/components/{p-RIeHu5V1.js → p-BBCbRcjI.js} +3 -3
  16. package/dist/components/{p-RIeHu5V1.js.map → p-BBCbRcjI.js.map} +1 -1
  17. package/dist/components/{p-oa9K_bbZ.js → p-Bv2DuncC.js} +5 -5
  18. package/dist/components/{p-oa9K_bbZ.js.map → p-Bv2DuncC.js.map} +1 -1
  19. package/dist/components/{p-4olD14NA.js → p-By4lLDL5.js} +3 -3
  20. package/dist/components/{p-4olD14NA.js.map → p-By4lLDL5.js.map} +1 -1
  21. package/dist/components/{p-CMpYlbLu.js → p-C3q4mHaq.js} +4 -4
  22. package/dist/components/{p-CMpYlbLu.js.map → p-C3q4mHaq.js.map} +1 -1
  23. package/dist/components/{p-B-ZoFCli.js → p-COiuyfp1.js} +7 -6
  24. package/dist/components/p-COiuyfp1.js.map +1 -0
  25. package/dist/components/{p-BAwv4SNb.js → p-Cz6Y5nA8.js} +3 -3
  26. package/dist/components/{p-BAwv4SNb.js.map → p-Cz6Y5nA8.js.map} +1 -1
  27. package/dist/components/{p-CUrnqIyl.js → p-DnuBWvuE.js} +8 -4
  28. package/dist/components/p-DnuBWvuE.js.map +1 -0
  29. package/dist/components/{p-DfItspZ0.js → p-GnE8WZrr.js} +6 -6
  30. package/dist/components/{p-DfItspZ0.js.map → p-GnE8WZrr.js.map} +1 -1
  31. package/dist/components/verdocs-build.js +7 -7
  32. package/dist/components/verdocs-envelope-sidebar.js +1 -1
  33. package/dist/components/verdocs-field-attachment.js +1 -1
  34. package/dist/components/verdocs-ok-dialog.js +1 -1
  35. package/dist/components/verdocs-preview.js +1 -1
  36. package/dist/components/verdocs-sign.js +46 -28
  37. package/dist/components/verdocs-sign.js.map +1 -1
  38. package/dist/components/verdocs-signing-progress.js +1 -1
  39. package/dist/components/verdocs-template-attachments.js +1 -1
  40. package/dist/components/verdocs-template-document-page.js +1 -1
  41. package/dist/components/verdocs-template-fields.js +1 -1
  42. package/dist/components/verdocs-templates-list.js +1 -1
  43. package/dist/components/verdocs-upload-dialog.js +1 -1
  44. package/dist/components/verdocs-view.js +1 -1
  45. package/dist/esm/verdocs-adopt-signature-dialog.verdocs-delegate-dialog.verdocs-disclosure-dialog.verdocs-kba-dialog.verdocs-otp-dialog.verdocs-passcode-dialog.verdocs-signing-progress.verdocs-view.entry.js.map +1 -1
  46. package/dist/esm/verdocs-adopt-signature-dialog_8.entry.js +5 -4
  47. package/dist/esm/verdocs-ok-dialog.entry.js +6 -2
  48. package/dist/esm/verdocs-ok-dialog.entry.js.map +1 -1
  49. package/dist/esm/verdocs-sign.entry.js +43 -25
  50. package/dist/esm/verdocs-sign.entry.js.map +1 -1
  51. package/dist/esm-es5/verdocs-adopt-signature-dialog.verdocs-delegate-dialog.verdocs-disclosure-dialog.verdocs-kba-dialog.verdocs-otp-dialog.verdocs-passcode-dialog.verdocs-signing-progress.verdocs-view.entry.js.map +1 -1
  52. package/dist/esm-es5/verdocs-adopt-signature-dialog_8.entry.js +1 -1
  53. package/dist/esm-es5/verdocs-adopt-signature-dialog_8.entry.js.map +1 -1
  54. package/dist/esm-es5/verdocs-ok-dialog.entry.js +1 -1
  55. package/dist/esm-es5/verdocs-ok-dialog.entry.js.map +1 -1
  56. package/dist/esm-es5/verdocs-sign.entry.js +1 -1
  57. package/dist/esm-es5/verdocs-sign.entry.js.map +1 -1
  58. package/dist/types/components/dialogs/verdocs-signing-progress/verdocs-signing-progress.d.ts +2 -2
  59. package/dist/types/components/embeds/verdocs-sign/verdocs-sign.d.ts +2 -1
  60. package/dist/types/components.d.ts +2 -2
  61. package/dist/verdocs-web-sdk/p-615e3533.system.entry.js +2 -0
  62. package/dist/verdocs-web-sdk/p-615e3533.system.entry.js.map +1 -0
  63. package/dist/verdocs-web-sdk/{p-1b63fe0b.entry.js → p-6719e636.entry.js} +2 -2
  64. package/dist/verdocs-web-sdk/p-6719e636.entry.js.map +1 -0
  65. package/dist/verdocs-web-sdk/{p-f24d6c61.system.entry.js → p-8a8460c0.system.entry.js} +2 -2
  66. package/dist/verdocs-web-sdk/p-8a8460c0.system.entry.js.map +1 -0
  67. package/dist/verdocs-web-sdk/p-9e9fdb1a.entry.js +2 -0
  68. package/dist/verdocs-web-sdk/p-9e9fdb1a.entry.js.map +1 -0
  69. package/dist/verdocs-web-sdk/p-B8zpaHu-.system.js +1 -1
  70. package/dist/verdocs-web-sdk/{p-DixucIng.system.js.map → p-BjIdBebp.system.js.map} +1 -1
  71. package/dist/verdocs-web-sdk/p-CJ9IvZJ5.system.js.map +1 -0
  72. package/dist/verdocs-web-sdk/p-CnRDNxzf.system.js.map +1 -0
  73. package/dist/verdocs-web-sdk/p-a29fa382.system.entry.js +2 -0
  74. package/dist/verdocs-web-sdk/p-a29fa382.system.entry.js.map +1 -0
  75. package/dist/verdocs-web-sdk/p-cf08e7c2.entry.js +2 -0
  76. package/dist/verdocs-web-sdk/p-cf08e7c2.entry.js.map +1 -0
  77. package/dist/verdocs-web-sdk/verdocs-adopt-signature-dialog.verdocs-delegate-dialog.verdocs-disclosure-dialog.verdocs-kba-dialog.verdocs-otp-dialog.verdocs-passcode-dialog.verdocs-signing-progress.verdocs-view.entry.esm.js.map +1 -1
  78. package/dist/verdocs-web-sdk/verdocs-ok-dialog.entry.esm.js.map +1 -1
  79. package/dist/verdocs-web-sdk/verdocs-sign.entry.esm.js.map +1 -1
  80. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  81. package/package.json +1 -1
  82. package/dist/components/p-B-ZoFCli.js.map +0 -1
  83. package/dist/components/p-CUrnqIyl.js.map +0 -1
  84. package/dist/verdocs-web-sdk/p-1b63fe0b.entry.js.map +0 -1
  85. package/dist/verdocs-web-sdk/p-36950fda.entry.js +0 -2
  86. package/dist/verdocs-web-sdk/p-36950fda.entry.js.map +0 -1
  87. package/dist/verdocs-web-sdk/p-7eb7094c.entry.js +0 -2
  88. package/dist/verdocs-web-sdk/p-7eb7094c.entry.js.map +0 -1
  89. package/dist/verdocs-web-sdk/p-BAurS3-Q.system.js.map +0 -1
  90. package/dist/verdocs-web-sdk/p-CrAB6I_0.system.js.map +0 -1
  91. package/dist/verdocs-web-sdk/p-a727571f.system.entry.js +0 -2
  92. package/dist/verdocs-web-sdk/p-a727571f.system.entry.js.map +0 -1
  93. package/dist/verdocs-web-sdk/p-f24d6c61.system.entry.js.map +0 -1
  94. package/dist/verdocs-web-sdk/p-f551f8e0.system.entry.js +0 -2
  95. package/dist/verdocs-web-sdk/p-f551f8e0.system.entry.js.map +0 -1
@@ -4469,7 +4469,8 @@ const VerdocsSigningProgress = class {
4469
4469
  if (this.mode === 'start') {
4470
4470
  return index.h("div", { class: "field-label" }, this.fieldLabel);
4471
4471
  }
4472
- if (this.fieldCompleted) {
4472
+ const allRequiredFieldsCompleted = this.progress && this.progress.required.filled >= this.progress.required.total;
4473
+ if (this.fieldCompleted && allRequiredFieldsCompleted) {
4473
4474
  return (index.h("div", { class: "field-completed" }, index.h("div", { class: "icon" }, this.renderSuccessIcon()), index.h("span", { class: "text" }, "Ready to submit.")));
4474
4475
  }
4475
4476
  return index.h("div", { class: "field-label" }, this.fieldLabel);
@@ -4478,7 +4479,7 @@ const VerdocsSigningProgress = class {
4478
4479
  if (this.mode === 'start') {
4479
4480
  return (index.h("button", { class: "btn start", onClick: () => this.started.emit() }, "Start Signing"));
4480
4481
  }
4481
- return (index.h("div", { class: "nav-buttons" }, this.progress && this.progress.required.remaining === 0 ? (index.h("button", { class: "btn submit", onClick: () => this.exit.emit() }, "Submit")) : ([
4482
+ return (index.h("div", { class: "nav-buttons" }, this.progress && this.progress.required.filled >= this.progress.required.total ? (index.h("button", { class: "btn submit", onClick: () => this.exit.emit() }, "Submit")) : ([
4482
4483
  index.h("button", { class: "btn previous", disabled: this.current <= 1, onClick: () => this.previous.emit() }, "Previous"),
4483
4484
  index.h("button", { class: "btn next", disabled: this.current >= this.total, onClick: () => this.next.emit() }, "Next"),
4484
4485
  ])));
@@ -4492,8 +4493,8 @@ const VerdocsSigningProgress = class {
4492
4493
  }
4493
4494
  return (index.h("div", { class: "card" }, index.h("div", { class: "header" }, this.progress
4494
4495
  ? [
4495
- index.h("div", { class: "progress-line" }, this.progress.required.remaining, " of ", this.progress.required.total, " required fields remaining"),
4496
- this.progress.optional.total > 0 ? (index.h("div", { class: "progress-line optional" }, this.progress.optional.remaining, " of ", this.progress.optional.total, " optional fields remaining")) : null,
4496
+ index.h("div", { class: "progress-line" }, this.progress.required.filled, " of ", this.progress.required.total, " required fields completed"),
4497
+ this.progress.optional.total > 0 ? (index.h("div", { class: "progress-line optional" }, this.progress.optional.filled, " of ", this.progress.optional.total, " optional fields completed")) : null,
4497
4498
  ]
4498
4499
  : this.remainingFields && this.remainingFields.length > 0
4499
4500
  ? `${this.remainingFields.length} fields remaining`
@@ -37,13 +37,17 @@ const VerdocsOkDialog = class {
37
37
  // We need a separate event handler for clicking the background because it can receive events "through" other child components
38
38
  handleDismiss(e) {
39
39
  this.closed = true;
40
- if (e.target.className === 'background-overlay') {
40
+ if (e && e.target && e.target.className === 'background-overlay') {
41
41
  e.preventDefault();
42
42
  this.exit.emit();
43
43
  }
44
+ else {
45
+ // For X button click, treat it the same as OK button
46
+ this.handleOk();
47
+ }
44
48
  }
45
49
  render() {
46
- return (index.h("verdocs-dialog", { key: 'efb2ed795105ea61be63c0f22e8c6ddaae18fd4a', onExit: e => this.handleDismiss(e) }, index.h("div", { key: '519fe32c957e8aebd7b20efa7541bee6ebd29719', slot: "heading", class: "heading" }, index.h("div", { key: '7759365cc02809f8a578b2850d35aefcf731a9e0', class: "icon" }, index.h("svg", { key: 'c76a5d66160dafa52b917919c388d25acdb73baf', width: "22", height: "19", viewBox: "0 0 22 19", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, index.h("g", { key: '40c85e3c591b81ee40c6ec492651c5715a43d4b9', "clip-path": "url(#clip0_34208_4881)" }, index.h("path", { key: '362d35ea8fa1cc9191f65950f6a0564a5f65bcc8', d: "M3.125 0.75C1.88398 0.75 0.875 1.75898 0.875 3V16.5C0.875 17.741 1.88398 18.75 3.125 18.75H12.125C13.366 18.75 14.375 17.741 14.375 16.5V15.8215C14.2801 15.8602 14.1852 15.8918 14.0867 15.9164L11.9738 16.4437C11.8684 16.4684 11.7629 16.4859 11.6574 16.493C11.6258 16.4965 11.5941 16.5 11.5625 16.5H9.3125C9.09805 16.5 8.90469 16.3805 8.80977 16.1906L8.50039 15.5684C8.44062 15.4488 8.32109 15.375 8.19102 15.375C8.06094 15.375 7.93789 15.4488 7.88164 15.5684L7.57227 16.1906C7.47031 16.398 7.24883 16.5211 7.02031 16.5C6.7918 16.4789 6.59492 16.3207 6.53164 16.1027L5.9375 14.1445L5.59297 15.2977C5.37852 16.0113 4.72109 16.5 3.97578 16.5H3.6875C3.37812 16.5 3.125 16.2469 3.125 15.9375C3.125 15.6281 3.37812 15.375 3.6875 15.375H3.97578C4.22539 15.375 4.44336 15.2133 4.51367 14.9742L5.0375 13.234C5.15703 12.8367 5.52266 12.5625 5.9375 12.5625C6.35234 12.5625 6.71797 12.8367 6.8375 13.234L7.24531 14.591C7.50547 14.373 7.83594 14.25 8.1875 14.25C8.74648 14.25 9.25625 14.5664 9.50586 15.0656L9.66055 15.375H9.97344C9.86445 15.0656 9.84336 14.7281 9.92422 14.3977L10.4516 12.2848C10.55 11.8875 10.7539 11.5289 11.0422 11.2406L14.375 7.90781V6.375H9.875C9.25273 6.375 8.75 5.87227 8.75 5.25V0.75H3.125ZM9.875 0.75V5.25H14.375L9.875 0.75ZM20.2039 5.66133C19.6555 5.11289 18.766 5.11289 18.2141 5.66133L17.1805 6.69492L19.6766 9.19102L20.7102 8.15742C21.2586 7.60898 21.2586 6.71953 20.7102 6.16758L20.2039 5.66133ZM11.8402 12.0352C11.6961 12.1793 11.5941 12.3586 11.5449 12.559L11.0176 14.6719C10.9684 14.8652 11.0246 15.0656 11.1652 15.2063C11.3059 15.3469 11.5062 15.4031 11.6996 15.3539L13.8125 14.8266C14.0094 14.7773 14.1922 14.6754 14.3363 14.5312L18.8785 9.98555L16.3824 7.48945L11.8402 12.0352Z", fill: "white" })), index.h("defs", { key: 'd92cf83903ef824a76d0cd63ede32947cb3de5be' }, index.h("clipPath", { key: 'f5cd351596f8f61e5e0c44f7a249a9755f9b1497', id: "clip0_34208_4881" }, index.h("path", { key: '4b521d29600e041e06a75340748bdefd39910371', d: "M0.875 0.75H21.125V18.75H0.875V0.75Z", fill: "white" }))))), index.h("div", { key: '4024512f868ac59afdfc08f4174fabb1a8474d3f', class: "title" }, " ", this.heading)), index.h("div", { key: 'c00ba17acec0cfa662fc385d5a3265813c6ab472', slot: "content", class: "content", innerHTML: this.message }), index.h("div", { key: '95c1d84a62aa5a9b3edf76592e5e0565a2a6b9d2', class: "footer", slot: "footer" }, index.h("div", { key: 'e5c8dc77dab6d1a18393dacbaff279b0a7785dd1', class: "buttons" }, this.showCancel && (index.h("button", { key: 'cd9ad5bb9adff9fa53e28decd77beb7d42cd8889', class: "cancel", onClick: () => this.handleCancel() }, "Cancel")), index.h("button", { key: '19b413ab1424bff677b1cf0b5b920451c4e71281', class: !this.showCancel ? 'ok single' : 'ok', onClick: () => this.handleOk() }, "OK")))));
50
+ return (index.h("verdocs-dialog", { key: 'ff7b556af3b2606225660a1889aae6e5b33813a5', onExit: e => this.handleDismiss(e) }, index.h("div", { key: '6bfc4858cadf223f7ae4279363d19ab480d53289', slot: "heading", class: "heading" }, index.h("div", { key: '1300fb84b5c72b49bc52fa026d5b5f8c9f683733', class: "icon" }, index.h("svg", { key: '52da497c35a04565ce08b7b27a0103adee373074', width: "22", height: "19", viewBox: "0 0 22 19", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, index.h("g", { key: '23e3e4608d6950b6e40a0ced6f60876d14469f8e', "clip-path": "url(#clip0_34208_4881)" }, index.h("path", { key: '7eda7671b1c96eb6a7b731c9bb90cae5ce23edf3', d: "M3.125 0.75C1.88398 0.75 0.875 1.75898 0.875 3V16.5C0.875 17.741 1.88398 18.75 3.125 18.75H12.125C13.366 18.75 14.375 17.741 14.375 16.5V15.8215C14.2801 15.8602 14.1852 15.8918 14.0867 15.9164L11.9738 16.4437C11.8684 16.4684 11.7629 16.4859 11.6574 16.493C11.6258 16.4965 11.5941 16.5 11.5625 16.5H9.3125C9.09805 16.5 8.90469 16.3805 8.80977 16.1906L8.50039 15.5684C8.44062 15.4488 8.32109 15.375 8.19102 15.375C8.06094 15.375 7.93789 15.4488 7.88164 15.5684L7.57227 16.1906C7.47031 16.398 7.24883 16.5211 7.02031 16.5C6.7918 16.4789 6.59492 16.3207 6.53164 16.1027L5.9375 14.1445L5.59297 15.2977C5.37852 16.0113 4.72109 16.5 3.97578 16.5H3.6875C3.37812 16.5 3.125 16.2469 3.125 15.9375C3.125 15.6281 3.37812 15.375 3.6875 15.375H3.97578C4.22539 15.375 4.44336 15.2133 4.51367 14.9742L5.0375 13.234C5.15703 12.8367 5.52266 12.5625 5.9375 12.5625C6.35234 12.5625 6.71797 12.8367 6.8375 13.234L7.24531 14.591C7.50547 14.373 7.83594 14.25 8.1875 14.25C8.74648 14.25 9.25625 14.5664 9.50586 15.0656L9.66055 15.375H9.97344C9.86445 15.0656 9.84336 14.7281 9.92422 14.3977L10.4516 12.2848C10.55 11.8875 10.7539 11.5289 11.0422 11.2406L14.375 7.90781V6.375H9.875C9.25273 6.375 8.75 5.87227 8.75 5.25V0.75H3.125ZM9.875 0.75V5.25H14.375L9.875 0.75ZM20.2039 5.66133C19.6555 5.11289 18.766 5.11289 18.2141 5.66133L17.1805 6.69492L19.6766 9.19102L20.7102 8.15742C21.2586 7.60898 21.2586 6.71953 20.7102 6.16758L20.2039 5.66133ZM11.8402 12.0352C11.6961 12.1793 11.5941 12.3586 11.5449 12.559L11.0176 14.6719C10.9684 14.8652 11.0246 15.0656 11.1652 15.2063C11.3059 15.3469 11.5062 15.4031 11.6996 15.3539L13.8125 14.8266C14.0094 14.7773 14.1922 14.6754 14.3363 14.5312L18.8785 9.98555L16.3824 7.48945L11.8402 12.0352Z", fill: "white" })), index.h("defs", { key: '38d1c5c31a6c9118290b83212379703ef69ce774' }, index.h("clipPath", { key: '265e55b6ccd6c7f4ab531dad0fccc531e55c3db0', id: "clip0_34208_4881" }, index.h("path", { key: 'd5bc6581f3b9032b1e3c244940ba77195bccef21', d: "M0.875 0.75H21.125V18.75H0.875V0.75Z", fill: "white" }))))), index.h("div", { key: 'fc38f8f671154450bb4939991af22aba25b62cc5', class: "title" }, " ", this.heading)), index.h("div", { key: '49793f431faf0a0c90b98f64a0e6ca517c66d1b6', slot: "content", class: "content", innerHTML: this.message }), index.h("div", { key: '313e428b62bd8ae4413bf7b231e943018c5e8a71', class: "footer", slot: "footer" }, index.h("div", { key: '6d44f94ce1ce3d0934909e91599e19974f70438c', class: "buttons" }, this.showCancel && (index.h("button", { key: '7ac7d0ea22202dec3f2c6f5df61cbd52069e5d0b', class: "cancel", onClick: () => this.handleCancel() }, "Cancel")), index.h("button", { key: '691f98cf0bb08d71616b80ef833e5ff551a9a870', class: !this.showCancel ? 'ok single' : 'ok', onClick: () => this.handleOk() }, "OK")))));
47
51
  }
48
52
  };
49
53
  VerdocsOkDialog.style = verdocsOkDialogCss;
@@ -1 +1 @@
1
- {"version":3,"file":"verdocs-ok-dialog.entry.cjs.js","sources":["src/components/dialogs/verdocs-ok-dialog/verdocs-ok-dialog.scss?tag=verdocs-ok-dialog","src/components/dialogs/verdocs-ok-dialog/verdocs-ok-dialog.tsx"],"sourcesContent":["@import '../../../theme.scss';\n\nverdocs-ok-dialog {\n box-sizing: border-box;\n font-family: $primary-font;\n\n &.closed {\n display: none;\n }\n\n .buttons {\n gap: 12px;\n display: flex;\n margin-top: 0;\n flex-direction: row;\n justify-content: flex-end;\n\n button {\n padding: 8px 16px;\n height: 40px;\n display: flex;\n font-size: 14px;\n font-weight: 400;\n cursor: pointer;\n align-items: center;\n border-radius: var(--verdocs-button-radius, 4px);\n justify-content: center;\n transition: all 0.2s ease;\n\n &.cancel {\n background-color: transparent;\n border: var(--verdocs-button-secondary-border, 1px solid #d1d5db);\n color: var(--verdocs-button-secondary-color, #374151);\n }\n\n &.ok {\n background-color: var(--verdocs-primary-color, $verdocs-green);\n border: 1px solid transparent;\n color: #ffffff;\n\n &:hover {\n background-color: var(--verdocs-primary-color-hover, $verdocs-green-shade);\n }\n }\n\n &:disabled {\n background-color: var(--verdocs-button-disabled-bg, #e5e7eb);\n color: var(--verdocs-button-disabled-color, #9ca3af);\n cursor: not-allowed;\n }\n }\n }\n}\n","import {Component, Prop, h, Event, EventEmitter, State} from '@stencil/core';\n\n/**\n * Display a simple text dialog box with an Ok button. This adds a partially-transparent overlay and screen-centered dialog\n * box with a message and optional header/title. An OK button is shown that will dismiss the message.\n * It can also be dismissed by clicking the background overlay.\n */\n@Component({\n tag: 'verdocs-ok-dialog',\n styleUrl: 'verdocs-ok-dialog.scss',\n})\nexport class VerdocsOkDialog {\n /**\n * The title of the dialog. \"title\" is a reserved word, so we use heading.\n */\n @Prop() heading: string = '';\n\n /**\n * The message content to display.\n */\n @Prop() message: string = '';\n\n /**\n * Override the \"OK\" button's label\n */\n @Prop() buttonLabel: string = 'OK';\n\n /**\n * If set, a cancel button will also be displayed. Note that the dialog is always cancelable by clicking the background\n * overlay to dismiss it.\n */\n @Prop() showCancel: boolean = false;\n\n /**\n * Event fired when the user clicks the OK button.\n */\n @Event({composed: true}) next: EventEmitter;\n\n /**\n * Event fired when Cancel is pressed. This is called exit to avoid conflicts with the JS-reserved \"cancel\" event name.\n */\n @Event({composed: true}) exit: EventEmitter;\n\n @State() closed = false;\n\n handleOk() {\n this.next.emit();\n }\n\n handleCancel() {\n this.exit.emit();\n }\n\n // We need a separate event handler for clicking the background because it can receive events \"through\" other child components\n handleDismiss(e: any) {\n this.closed = true;\n if (e.target.className === 'background-overlay') {\n e.preventDefault();\n this.exit.emit();\n }\n }\n\n render() {\n return (\n <verdocs-dialog onExit={e => this.handleDismiss(e)}>\n <div slot=\"heading\" class=\"heading\">\n <div class=\"icon\">\n <svg width=\"22\" height=\"19\" viewBox=\"0 0 22 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g clip-path=\"url(#clip0_34208_4881)\">\n <path\n d=\"M3.125 0.75C1.88398 0.75 0.875 1.75898 0.875 3V16.5C0.875 17.741 1.88398 18.75 3.125 18.75H12.125C13.366 18.75 14.375 17.741 14.375 16.5V15.8215C14.2801 15.8602 14.1852 15.8918 14.0867 15.9164L11.9738 16.4437C11.8684 16.4684 11.7629 16.4859 11.6574 16.493C11.6258 16.4965 11.5941 16.5 11.5625 16.5H9.3125C9.09805 16.5 8.90469 16.3805 8.80977 16.1906L8.50039 15.5684C8.44062 15.4488 8.32109 15.375 8.19102 15.375C8.06094 15.375 7.93789 15.4488 7.88164 15.5684L7.57227 16.1906C7.47031 16.398 7.24883 16.5211 7.02031 16.5C6.7918 16.4789 6.59492 16.3207 6.53164 16.1027L5.9375 14.1445L5.59297 15.2977C5.37852 16.0113 4.72109 16.5 3.97578 16.5H3.6875C3.37812 16.5 3.125 16.2469 3.125 15.9375C3.125 15.6281 3.37812 15.375 3.6875 15.375H3.97578C4.22539 15.375 4.44336 15.2133 4.51367 14.9742L5.0375 13.234C5.15703 12.8367 5.52266 12.5625 5.9375 12.5625C6.35234 12.5625 6.71797 12.8367 6.8375 13.234L7.24531 14.591C7.50547 14.373 7.83594 14.25 8.1875 14.25C8.74648 14.25 9.25625 14.5664 9.50586 15.0656L9.66055 15.375H9.97344C9.86445 15.0656 9.84336 14.7281 9.92422 14.3977L10.4516 12.2848C10.55 11.8875 10.7539 11.5289 11.0422 11.2406L14.375 7.90781V6.375H9.875C9.25273 6.375 8.75 5.87227 8.75 5.25V0.75H3.125ZM9.875 0.75V5.25H14.375L9.875 0.75ZM20.2039 5.66133C19.6555 5.11289 18.766 5.11289 18.2141 5.66133L17.1805 6.69492L19.6766 9.19102L20.7102 8.15742C21.2586 7.60898 21.2586 6.71953 20.7102 6.16758L20.2039 5.66133ZM11.8402 12.0352C11.6961 12.1793 11.5941 12.3586 11.5449 12.559L11.0176 14.6719C10.9684 14.8652 11.0246 15.0656 11.1652 15.2063C11.3059 15.3469 11.5062 15.4031 11.6996 15.3539L13.8125 14.8266C14.0094 14.7773 14.1922 14.6754 14.3363 14.5312L18.8785 9.98555L16.3824 7.48945L11.8402 12.0352Z\"\n fill=\"white\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_34208_4881\">\n <path d=\"M0.875 0.75H21.125V18.75H0.875V0.75Z\" fill=\"white\" />\n </clipPath>\n </defs>\n </svg>\n </div>\n\n <div class=\"title\"> {this.heading}</div>\n </div>\n\n <div slot=\"content\" class=\"content\" innerHTML={this.message} />\n\n <div class=\"footer\" slot=\"footer\">\n <div class=\"buttons\">\n {this.showCancel && (\n <button class=\"cancel\" onClick={() => this.handleCancel()}>\n Cancel\n </button>\n )}\n <button class={!this.showCancel ? 'ok single' : 'ok'} onClick={() => this.handleOk()}>\n OK\n </button>\n </div>\n </div>\n </verdocs-dialog>\n );\n }\n}\n"],"names":["h"],"mappings":"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"}
1
+ {"version":3,"file":"verdocs-ok-dialog.entry.cjs.js","sources":["src/components/dialogs/verdocs-ok-dialog/verdocs-ok-dialog.scss?tag=verdocs-ok-dialog","src/components/dialogs/verdocs-ok-dialog/verdocs-ok-dialog.tsx"],"sourcesContent":["@import '../../../theme.scss';\n\nverdocs-ok-dialog {\n box-sizing: border-box;\n font-family: $primary-font;\n\n &.closed {\n display: none;\n }\n\n .buttons {\n gap: 12px;\n display: flex;\n margin-top: 0;\n flex-direction: row;\n justify-content: flex-end;\n\n button {\n padding: 8px 16px;\n height: 40px;\n display: flex;\n font-size: 14px;\n font-weight: 400;\n cursor: pointer;\n align-items: center;\n border-radius: var(--verdocs-button-radius, 4px);\n justify-content: center;\n transition: all 0.2s ease;\n\n &.cancel {\n background-color: transparent;\n border: var(--verdocs-button-secondary-border, 1px solid #d1d5db);\n color: var(--verdocs-button-secondary-color, #374151);\n }\n\n &.ok {\n background-color: var(--verdocs-primary-color, $verdocs-green);\n border: 1px solid transparent;\n color: #ffffff;\n\n &:hover {\n background-color: var(--verdocs-primary-color-hover, $verdocs-green-shade);\n }\n }\n\n &:disabled {\n background-color: var(--verdocs-button-disabled-bg, #e5e7eb);\n color: var(--verdocs-button-disabled-color, #9ca3af);\n cursor: not-allowed;\n }\n }\n }\n}\n","import { Component, Prop, h, Event, EventEmitter, State } from '@stencil/core';\n\n/**\n * Display a simple text dialog box with an Ok button. This adds a partially-transparent overlay and screen-centered dialog\n * box with a message and optional header/title. An OK button is shown that will dismiss the message.\n * It can also be dismissed by clicking the background overlay.\n */\n@Component({\n tag: 'verdocs-ok-dialog',\n styleUrl: 'verdocs-ok-dialog.scss',\n})\nexport class VerdocsOkDialog {\n /**\n * The title of the dialog. \"title\" is a reserved word, so we use heading.\n */\n @Prop() heading: string = '';\n\n /**\n * The message content to display.\n */\n @Prop() message: string = '';\n\n /**\n * Override the \"OK\" button's label\n */\n @Prop() buttonLabel: string = 'OK';\n\n /**\n * If set, a cancel button will also be displayed. Note that the dialog is always cancelable by clicking the background\n * overlay to dismiss it.\n */\n @Prop() showCancel: boolean = false;\n\n /**\n * Event fired when the user clicks the OK button.\n */\n @Event({ composed: true }) next: EventEmitter;\n\n /**\n * Event fired when Cancel is pressed. This is called exit to avoid conflicts with the JS-reserved \"cancel\" event name.\n */\n @Event({ composed: true }) exit: EventEmitter;\n\n @State() closed = false;\n\n handleOk() {\n this.next.emit();\n }\n\n handleCancel() {\n this.exit.emit();\n }\n\n // We need a separate event handler for clicking the background because it can receive events \"through\" other child components\n handleDismiss(e: any) {\n this.closed = true;\n if (e && e.target && e.target.className === 'background-overlay') {\n e.preventDefault();\n this.exit.emit();\n } else {\n // For X button click, treat it the same as OK button\n this.handleOk();\n }\n }\n\n render() {\n return (\n <verdocs-dialog onExit={e => this.handleDismiss(e)}>\n <div slot=\"heading\" class=\"heading\">\n <div class=\"icon\">\n <svg width=\"22\" height=\"19\" viewBox=\"0 0 22 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g clip-path=\"url(#clip0_34208_4881)\">\n <path\n d=\"M3.125 0.75C1.88398 0.75 0.875 1.75898 0.875 3V16.5C0.875 17.741 1.88398 18.75 3.125 18.75H12.125C13.366 18.75 14.375 17.741 14.375 16.5V15.8215C14.2801 15.8602 14.1852 15.8918 14.0867 15.9164L11.9738 16.4437C11.8684 16.4684 11.7629 16.4859 11.6574 16.493C11.6258 16.4965 11.5941 16.5 11.5625 16.5H9.3125C9.09805 16.5 8.90469 16.3805 8.80977 16.1906L8.50039 15.5684C8.44062 15.4488 8.32109 15.375 8.19102 15.375C8.06094 15.375 7.93789 15.4488 7.88164 15.5684L7.57227 16.1906C7.47031 16.398 7.24883 16.5211 7.02031 16.5C6.7918 16.4789 6.59492 16.3207 6.53164 16.1027L5.9375 14.1445L5.59297 15.2977C5.37852 16.0113 4.72109 16.5 3.97578 16.5H3.6875C3.37812 16.5 3.125 16.2469 3.125 15.9375C3.125 15.6281 3.37812 15.375 3.6875 15.375H3.97578C4.22539 15.375 4.44336 15.2133 4.51367 14.9742L5.0375 13.234C5.15703 12.8367 5.52266 12.5625 5.9375 12.5625C6.35234 12.5625 6.71797 12.8367 6.8375 13.234L7.24531 14.591C7.50547 14.373 7.83594 14.25 8.1875 14.25C8.74648 14.25 9.25625 14.5664 9.50586 15.0656L9.66055 15.375H9.97344C9.86445 15.0656 9.84336 14.7281 9.92422 14.3977L10.4516 12.2848C10.55 11.8875 10.7539 11.5289 11.0422 11.2406L14.375 7.90781V6.375H9.875C9.25273 6.375 8.75 5.87227 8.75 5.25V0.75H3.125ZM9.875 0.75V5.25H14.375L9.875 0.75ZM20.2039 5.66133C19.6555 5.11289 18.766 5.11289 18.2141 5.66133L17.1805 6.69492L19.6766 9.19102L20.7102 8.15742C21.2586 7.60898 21.2586 6.71953 20.7102 6.16758L20.2039 5.66133ZM11.8402 12.0352C11.6961 12.1793 11.5941 12.3586 11.5449 12.559L11.0176 14.6719C10.9684 14.8652 11.0246 15.0656 11.1652 15.2063C11.3059 15.3469 11.5062 15.4031 11.6996 15.3539L13.8125 14.8266C14.0094 14.7773 14.1922 14.6754 14.3363 14.5312L18.8785 9.98555L16.3824 7.48945L11.8402 12.0352Z\"\n fill=\"white\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_34208_4881\">\n <path d=\"M0.875 0.75H21.125V18.75H0.875V0.75Z\" fill=\"white\" />\n </clipPath>\n </defs>\n </svg>\n </div>\n\n <div class=\"title\"> {this.heading}</div>\n </div>\n\n <div slot=\"content\" class=\"content\" innerHTML={this.message} />\n\n <div class=\"footer\" slot=\"footer\">\n <div class=\"buttons\">\n {this.showCancel && (\n <button class=\"cancel\" onClick={() => this.handleCancel()}>\n Cancel\n </button>\n )}\n <button class={!this.showCancel ? 'ok single' : 'ok'} onClick={() => this.handleOk()}>\n OK\n </button>\n </div>\n </div>\n </verdocs-dialog>\n );\n }\n}\n"],"names":["h"],"mappings":"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"}
@@ -390,6 +390,8 @@ const VerdocsSign = class {
390
390
  if (e.detail === null) {
391
391
  console.log('[SIGN] Clearing initial');
392
392
  const updateResult = await jsSdk.updateEnvelopeField(this.endpoint, this.envelopeId, this.roleId, field.name, null, false);
393
+ updateResult.value = null;
394
+ this.initialId = null;
393
395
  return this.updateRecipientFieldValue(field.name, updateResult);
394
396
  }
395
397
  // If we already have an initials block, apply it
@@ -430,6 +432,8 @@ const VerdocsSign = class {
430
432
  if (e.detail === null) {
431
433
  console.log('[SIGN] Clearing signature');
432
434
  const updateResult = await jsSdk.updateEnvelopeField(this.endpoint, this.envelopeId, this.roleId, field.name, null, false);
435
+ updateResult.value = null;
436
+ this.signatureId = null;
433
437
  return this.updateRecipientFieldValue(field.name, updateResult);
434
438
  }
435
439
  // If we already have a signature block, apply it
@@ -499,13 +503,13 @@ const VerdocsSign = class {
499
503
  }
500
504
  return;
501
505
  }
502
- const nextRequiredField = this.getNextRequiredField();
503
- if (nextRequiredField) {
504
- const id = utils.getFieldId(nextRequiredField);
506
+ const nextField = this.getNextFieldInOrder();
507
+ if (nextField) {
508
+ const id = utils.getFieldId(nextField);
505
509
  const el = document.getElementById(id);
506
510
  el === null || el === void 0 ? void 0 : el.scrollIntoView({ behavior: 'smooth', block: 'center', inline: 'center' });
507
511
  el === null || el === void 0 ? void 0 : el.focusField();
508
- this.focusedField = nextRequiredField.name;
512
+ this.focusedField = nextField.name;
509
513
  }
510
514
  }
511
515
  getRecipientFields() {
@@ -527,24 +531,36 @@ const VerdocsSign = class {
527
531
  }
528
532
  this.updateAllFlags();
529
533
  }
530
- getNextRequiredField() {
531
- // Find and focus the next incomplete field (that is fillable)
532
- const emptyFields = this.getSortedFillableFields().filter(field => field.required && !jsSdk.isFieldFilled(field, this.getRecipientFields()));
533
- jsSdk.sortFields(emptyFields);
534
- // console.log(
535
- // '[SIGN] Pending fields',
536
- // emptyFields.map(f => `${f.name} (${f.type}) req=${f.required}`),
537
- // );
538
- if (emptyFields.length === 0) {
539
- const allUnfilled = this.getSortedFillableFields().filter(field => !jsSdk.isFieldFilled(field, this.getRecipientFields()));
540
- jsSdk.sortFields(allUnfilled);
541
- if (allUnfilled.length > 0) {
542
- // If we are here, there are no required fields left, but there are optional ones.
543
- return this.getNextFieldFromList(allUnfilled);
544
- }
534
+ getNextFieldInOrder() {
535
+ // Find the next incomplete field in overall order (required + optional).
536
+ const fields = this.getSortedFillableFields();
537
+ if (fields.length === 0)
545
538
  return null;
539
+ const recipientFields = this.getRecipientFields();
540
+ const focusedIndex = fields.findIndex(field => field.name === this.focusedField);
541
+ const startIndex = focusedIndex >= 0 ? focusedIndex + 1 : 0;
542
+ for (let i = 0; i < fields.length; i++) {
543
+ const idx = (startIndex + i) % fields.length;
544
+ const field = fields[idx];
545
+ if (!this.isFieldFilledForNav(field, recipientFields)) {
546
+ return field;
547
+ }
548
+ }
549
+ return null;
550
+ }
551
+ isFieldFilledForNav(field, recipientFields) {
552
+ if (field.type === 'signature' || field.type === 'initial') {
553
+ const value = typeof field.value === 'string' ? field.value.trim() : field.value;
554
+ if (!value)
555
+ return false;
556
+ if (value === 'signed' || value === 'initialed')
557
+ return false;
558
+ return true;
559
+ }
560
+ if (field.type === 'dropdown') {
561
+ return jsSdk.isFieldFilled(field, recipientFields) && !!field.value;
546
562
  }
547
- return this.getNextFieldFromList(emptyFields);
563
+ return jsSdk.isFieldFilled(field, recipientFields);
548
564
  }
549
565
  getNextFieldFromList(fields) {
550
566
  const focusedIndex = fields.findIndex(field => field.name === this.focusedField);
@@ -582,12 +598,12 @@ const VerdocsSign = class {
582
598
  // Remove existing flags
583
599
  const existingFlags = controlsDiv.querySelectorAll('.verdocs-flag-instance');
584
600
  existingFlags.forEach(el => el.remove());
585
- let nextField = this.getNextRequiredField();
601
+ let nextField = this.getNextFieldInOrder();
586
602
  const focusedFieldObj = this.getRecipientFields().find(f => f.name === this.focusedField);
587
603
  // If the currently focused field is unfilled, we should point the flag to IT, not the next one.
588
- // getNextRequiredField() is designed for the "Next" button (skipping current), but the visual flag
604
+ // getNextFieldInOrder() is designed for the "Next" button (skipping current), but the visual flag
589
605
  // should guide the user to the current task if it's incomplete.
590
- if (focusedFieldObj && !jsSdk.isFieldFilled(focusedFieldObj, this.getRecipientFields())) {
606
+ if (focusedFieldObj && !this.isFieldFilledForNav(focusedFieldObj, this.getRecipientFields())) {
591
607
  nextField = focusedFieldObj;
592
608
  }
593
609
  if (nextField && nextField.page === pageInfo.pageNumber && nextField.document_id === pageInfo.documentId) {
@@ -883,15 +899,17 @@ const VerdocsSign = class {
883
899
  const isFilled = (f) => jsSdk.isFieldFilled(f, recipientFields) && (f.type !== 'dropdown' || !!f.value);
884
900
  const requiredFields = allFields.filter(f => f.required);
885
901
  const requiredRemaining = requiredFields.filter(f => !isFilled(f)).length;
902
+ const requiredFilled = requiredFields.length - requiredRemaining;
886
903
  const optionalFields = allFields.filter(f => !f.required);
887
904
  const optionalRemaining = optionalFields.filter(f => !isFilled(f)).length;
905
+ const optionalFilled = optionalFields.length - optionalRemaining;
888
906
  const progress = {
889
907
  required: {
890
- remaining: requiredRemaining,
908
+ filled: requiredFilled,
891
909
  total: requiredFields.length,
892
910
  },
893
911
  optional: {
894
- remaining: optionalRemaining,
912
+ filled: optionalFilled,
895
913
  total: optionalFields.length,
896
914
  },
897
915
  };