@verdocs/web-sdk 6.5.0-beta.30 → 6.5.0-beta.32

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 (47) 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 +3 -3
  3. package/dist/cjs/verdocs-sign.cjs.entry.js +18 -2
  4. package/dist/cjs/verdocs-sign.entry.cjs.js.map +1 -1
  5. package/dist/collection/components/dialogs/verdocs-signing-progress/verdocs-signing-progress.js +3 -3
  6. package/dist/collection/components/dialogs/verdocs-signing-progress/verdocs-signing-progress.js.map +1 -1
  7. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js +18 -2
  8. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js.map +1 -1
  9. package/dist/components/{p-BZ-EKVKW.js → p-Bu_0SDFO.js} +5 -5
  10. package/dist/components/p-Bu_0SDFO.js.map +1 -0
  11. package/dist/components/verdocs-sign.js +19 -3
  12. package/dist/components/verdocs-sign.js.map +1 -1
  13. package/dist/components/verdocs-signing-progress.js +1 -1
  14. 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
  15. package/dist/esm/verdocs-adopt-signature-dialog_8.entry.js +3 -3
  16. package/dist/esm/verdocs-sign.entry.js +18 -2
  17. package/dist/esm/verdocs-sign.entry.js.map +1 -1
  18. 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
  19. package/dist/esm-es5/verdocs-adopt-signature-dialog_8.entry.js +1 -1
  20. package/dist/esm-es5/verdocs-adopt-signature-dialog_8.entry.js.map +1 -1
  21. package/dist/esm-es5/verdocs-sign.entry.js +1 -1
  22. package/dist/esm-es5/verdocs-sign.entry.js.map +1 -1
  23. package/dist/types/components/dialogs/verdocs-signing-progress/verdocs-signing-progress.d.ts +1 -1
  24. package/dist/types/components/embeds/verdocs-sign/verdocs-sign.d.ts +1 -0
  25. package/dist/verdocs-web-sdk/p-363f13cb.system.entry.js +2 -0
  26. package/dist/verdocs-web-sdk/p-363f13cb.system.entry.js.map +1 -0
  27. package/dist/verdocs-web-sdk/p-42ad9ea7.entry.js +2 -0
  28. package/dist/verdocs-web-sdk/p-42ad9ea7.entry.js.map +1 -0
  29. package/dist/verdocs-web-sdk/{p-7e5807e3.system.entry.js → p-721b3041.system.entry.js} +2 -2
  30. package/dist/verdocs-web-sdk/p-721b3041.system.entry.js.map +1 -0
  31. package/dist/verdocs-web-sdk/p-B8zpaHu-.system.js +1 -1
  32. package/dist/verdocs-web-sdk/{p-CzI-Hwex.system.js.map → p-Cz_PSCK3.system.js.map} +1 -1
  33. package/dist/verdocs-web-sdk/p-DKu4yKnD.system.js.map +1 -0
  34. package/dist/verdocs-web-sdk/{p-a6d63c25.entry.js → p-f615bed5.entry.js} +2 -2
  35. package/dist/verdocs-web-sdk/p-f615bed5.entry.js.map +1 -0
  36. 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
  37. package/dist/verdocs-web-sdk/verdocs-sign.entry.esm.js.map +1 -1
  38. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  39. package/package.json +1 -1
  40. package/dist/components/p-BZ-EKVKW.js.map +0 -1
  41. package/dist/verdocs-web-sdk/p-7e5807e3.system.entry.js.map +0 -1
  42. package/dist/verdocs-web-sdk/p-B5X3vUE6.system.js.map +0 -1
  43. package/dist/verdocs-web-sdk/p-a6d63c25.entry.js.map +0 -1
  44. package/dist/verdocs-web-sdk/p-c88820d1.system.entry.js +0 -2
  45. package/dist/verdocs-web-sdk/p-c88820d1.system.entry.js.map +0 -1
  46. package/dist/verdocs-web-sdk/p-d72ede6d.entry.js +0 -2
  47. package/dist/verdocs-web-sdk/p-d72ede6d.entry.js.map +0 -1
@@ -35,11 +35,11 @@ const VerdocsSigningProgress = /*@__PURE__*/ proxyCustomElement(class VerdocsSig
35
35
  renderSuccessIcon() {
36
36
  return (h("svg", { width: "24", height: "24", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M10 2C14.4183 2 18 5.58172 18 10C18 14.4183 14.4183 18 10 18C5.58172 18 2 14.4183 2 10C2 5.58172 5.58172 2 10 2ZM10 3C6.13401 3 3 6.13401 3 10C3 13.866 6.13401 17 10 17C13.866 17 17 13.866 17 10C17 6.13401 13.866 3 10 3ZM13.3584 7.64645C13.532 7.82001 13.5513 8.08944 13.4163 8.28431L13.3584 8.35355L9.35355 12.3584C9.17999 12.532 8.91056 12.5513 8.71569 12.4163L8.64645 12.3584L6.64645 10.3584C6.45118 10.1632 6.45118 9.84658 6.64645 9.65131C6.82001 9.47775 7.08944 9.45846 7.28431 9.59346L7.35355 9.65131L9 11.298L12.6513 7.64645C12.8466 7.45118 13.1632 7.45118 13.3584 7.64645Z", fill: "#107C10" })));
37
37
  }
38
- renderContent(fieldLabel, fieldCompleted) {
38
+ renderContent(fieldLabel, fieldCompleted, readyToSubmit) {
39
39
  if (this.mode === 'start') {
40
40
  return h("div", { class: "field-label" }, fieldLabel);
41
41
  }
42
- if (fieldCompleted) {
42
+ if (fieldCompleted && readyToSubmit) {
43
43
  return (h("div", { class: "field-completed" }, h("div", { class: "icon" }, this.renderSuccessIcon()), h("span", { class: "text" }, "Ready to submit.")));
44
44
  }
45
45
  return h("div", { class: "field-label" }, fieldLabel);
@@ -68,7 +68,7 @@ const VerdocsSigningProgress = /*@__PURE__*/ proxyCustomElement(class VerdocsSig
68
68
  const focusedFieldObj = this.fields.find(f => f.name === this.focusedField);
69
69
  const currentIndex = this.fields.findIndex(f => f.name === this.focusedField) + 1;
70
70
  const totalFields = this.fields.length;
71
- return (h("div", { class: "card" }, h("div", { class: "header" }, h("div", { class: "progress-line" }, requiredRemaining, " of ", requiredFields.length, " required fields remaining"), optionalFields.length > 0 && (h("div", { class: "progress-line optional" }, optionalRemaining, " of ", optionalFields.length, " optional fields remaining"))), h("div", { class: "body" }, this.renderContent(getFieldLabel(focusedFieldObj), focusedFieldObj ? !!isFilled(focusedFieldObj) : false)), h("div", { class: "separator" }), this.renderFooter(Math.max(1, currentIndex), totalFields, requiredRemaining)));
71
+ return (h("div", { class: "card" }, h("div", { class: "header" }, h("div", { class: "progress-line" }, requiredRemaining, " of ", requiredFields.length, " required fields remaining"), optionalFields.length > 0 && (h("div", { class: "progress-line optional" }, optionalRemaining, " of ", optionalFields.length, " optional fields remaining"))), h("div", { class: "body" }, this.renderContent(getFieldLabel(focusedFieldObj), focusedFieldObj ? !!isFilled(focusedFieldObj) : false, requiredRemaining === 0)), h("div", { class: "separator" }), this.renderFooter(Math.max(1, currentIndex), totalFields, requiredRemaining)));
72
72
  }
73
73
  static get style() { return verdocsSigningProgressCss; }
74
74
  }, [256, "verdocs-signing-progress", {
@@ -97,6 +97,6 @@ function defineCustomElement() {
97
97
  }
98
98
 
99
99
  export { VerdocsSigningProgress as V, defineCustomElement as d };
100
- //# sourceMappingURL=p-BZ-EKVKW.js.map
100
+ //# sourceMappingURL=p-Bu_0SDFO.js.map
101
101
 
102
- //# sourceMappingURL=p-BZ-EKVKW.js.map
102
+ //# sourceMappingURL=p-Bu_0SDFO.js.map
@@ -0,0 +1 @@
1
+ {"file":"p-Bu_0SDFO.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/dialogs/verdocs-signing-progress/verdocs-signing-progress.scss?tag=verdocs-signing-progress","src/components/dialogs/verdocs-signing-progress/verdocs-signing-progress.tsx"],"sourcesContent":["@import '../../../theme.scss';\n\nverdocs-signing-progress {\n position: fixed;\n top: 64px;\n left: 20px;\n z-index: 900;\n display: block;\n font-family: $verdocs-primary-font;\n\n @media (max-width: 600px) {\n display: none;\n }\n\n .card {\n background: white;\n padding: 16px;\n border-radius: 8px;\n box-shadow:\n 0 4px 6px -1px rgba(0, 0, 0, 0.1),\n 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n width: 240px;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n gap: 12px;\n }\n\n .header {\n font-size: 14px;\n color: #111827;\n display: flex;\n flex-direction: column;\n gap: 6px;\n\n .progress-line.optional {\n color: #6b7280;\n }\n }\n\n .header-completed {\n display: flex;\n align-items: center;\n gap: 8px;\n font-size: 14px;\n font-weight: 500;\n color: #111827;\n }\n\n .description {\n font-size: 12px;\n line-height: 16px;\n color: #374151;\n }\n\n .field-label {\n font-family: var(--verdocs-primary-font, $verdocs-primary-font);\n font-size: 0.75rem;\n line-height: 1rem;\n font-weight: 400;\n color: var(--verdocs-body-color, #242424);\n }\n\n .field-completed {\n display: flex;\n align-items: center;\n gap: 8px;\n font-size: 0.75rem;\n line-height: 1rem;\n font-weight: 400;\n color: var(--verdocs-body-color, #242424);\n\n .text {\n position: relative;\n top: -2px;\n }\n }\n\n .separator {\n height: 1px;\n background-color: #e5e7eb;\n width: 100%;\n }\n\n .btn {\n width: 100%;\n height: 32px;\n border-radius: 4px;\n font-weight: 600;\n font-size: 0.75rem;\n line-height: 1rem;\n cursor: pointer;\n border: 1px solid transparent; // Default border\n transition: all 0.2s;\n display: flex;\n align-items: center;\n justify-content: center;\n\n &:disabled {\n background-color: #f0f0f0;\n border: 1px solid #e0e0e0;\n color: #bdbdbd;\n cursor: not-allowed;\n opacity: 1;\n }\n\n &.start,\n &.submit,\n &.next {\n background-color: var(--verdocs-primary-color, #55bc81);\n color: white;\n\n &:hover:not(:disabled) {\n background-color: var(--verdocs-primary-color-hover, #2b995b);\n }\n\n &:disabled {\n background-color: #f0f0f0;\n border: 1px solid #e0e0e0;\n color: #bdbdbd;\n cursor: not-allowed;\n opacity: 1;\n }\n }\n\n &.prev,\n &.previous {\n background-color: #f3f4f6;\n color: #374151;\n\n &:hover:not(:disabled) {\n background-color: #e5e7eb;\n }\n\n &:disabled {\n background-color: #f0f0f0;\n border: 1px solid #e0e0e0;\n color: #bdbdbd;\n cursor: not-allowed;\n opacity: 1;\n }\n }\n }\n\n .nav-buttons {\n display: flex;\n gap: 12px;\n width: 100%;\n\n .btn {\n flex: 1;\n }\n }\n}\n","import {IEnvelopeField, isFieldFilled} from '@verdocs/js-sdk';\nimport {Component, Prop, h, Event, EventEmitter} from '@stencil/core';\nimport {getFieldLabel} from '../../../utils/utils';\n\n@Component({\n tag: 'verdocs-signing-progress',\n styleUrl: 'verdocs-signing-progress.scss',\n})\nexport class VerdocsSigningProgress {\n /**\n * Display mode\n */\n @Prop() mode: 'start' | 'signing' | 'completed' = 'start';\n\n /**\n * The name of the currently focused field (to highlight it and show its label)\n */\n @Prop() focusedField: string = '';\n\n /**\n * All fillable fields for the current recipient\n */\n @Prop() fields: IEnvelopeField[] = [];\n\n /**\n * All fields for the recipient, used to check filled status (may include non-fillable)\n */\n @Prop() recipientFields: IEnvelopeField[] = [];\n\n /**\n * Emitted when user clicks Start\n */\n @Event({composed: true}) started: EventEmitter;\n\n /**\n * Emitted when user clicks Next\n */\n @Event({composed: true}) next: EventEmitter;\n\n /**\n * Emitted when user clicks Previous\n */\n @Event({composed: true}) previous: EventEmitter;\n\n /**\n * Emitted when user clicks Submit\n */\n @Event({composed: true}) exit: EventEmitter;\n\n renderSuccessIcon() {\n return (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M10 2C14.4183 2 18 5.58172 18 10C18 14.4183 14.4183 18 10 18C5.58172 18 2 14.4183 2 10C2 5.58172 5.58172 2 10 2ZM10 3C6.13401 3 3 6.13401 3 10C3 13.866 6.13401 17 10 17C13.866 17 17 13.866 17 10C17 6.13401 13.866 3 10 3ZM13.3584 7.64645C13.532 7.82001 13.5513 8.08944 13.4163 8.28431L13.3584 8.35355L9.35355 12.3584C9.17999 12.532 8.91056 12.5513 8.71569 12.4163L8.64645 12.3584L6.64645 10.3584C6.45118 10.1632 6.45118 9.84658 6.64645 9.65131C6.82001 9.47775 7.08944 9.45846 7.28431 9.59346L7.35355 9.65131L9 11.298L12.6513 7.64645C12.8466 7.45118 13.1632 7.45118 13.3584 7.64645Z\"\n fill=\"#107C10\"\n />\n </svg>\n );\n }\n\n renderContent(fieldLabel: string, fieldCompleted: boolean, readyToSubmit: boolean) {\n if (this.mode === 'start') {\n return <div class=\"field-label\">{fieldLabel}</div>;\n }\n\n if (fieldCompleted && readyToSubmit) {\n return (\n <div class=\"field-completed\">\n <div class=\"icon\">{this.renderSuccessIcon()}</div>\n <span class=\"text\">Ready to submit.</span>\n </div>\n );\n }\n\n return <div class=\"field-label\">{fieldLabel}</div>;\n }\n\n renderFooter(current: number, total: number, requiredRemaining: number) {\n if (this.mode === 'start') {\n return (\n <button class=\"btn start\" onClick={() => this.started.emit()}>\n Start Signing\n </button>\n );\n }\n\n return (\n <div class=\"nav-buttons\">\n {requiredRemaining === 0 ? (\n <button class=\"btn submit\" onClick={() => this.exit.emit()}>\n Submit\n </button>\n ) : (\n [\n <button class=\"btn previous\" disabled={current <= 1} onClick={() => this.previous.emit()}>\n Previous\n </button>,\n <button class=\"btn next\" disabled={current >= total} onClick={() => this.next.emit()}>\n Next\n </button>,\n ]\n )}\n </div>\n );\n }\n\n renderCompleted() {\n return (\n <div class=\"card completed\">\n <div class=\"header-completed\">\n <div class=\"icon\">{this.renderSuccessIcon()}</div>\n Ready to Submit\n </div>\n <div class=\"description\">You have entered all requested signatures. Select Submit to complete the signing process.</div>\n <div class=\"separator\" />\n <button class=\"btn submit\" onClick={() => this.exit.emit()}>\n Submit\n </button>\n </div>\n );\n }\n\n render() {\n if (this.mode === 'completed') {\n return this.renderCompleted();\n }\n\n const isFilled = (f: IEnvelopeField) =>\n isFieldFilled(f, this.recipientFields) && (f.type !== 'dropdown' || !!f.value) && (f.type !== 'radio' || f.value === 'true') && (f.type !== 'checkbox' || f.value === 'true');\n\n const requiredFields = this.fields.filter(f => f.required);\n const requiredRemaining = requiredFields.filter(f => !isFilled(f)).length;\n\n const optionalFields = this.fields.filter(f => !f.required);\n const optionalRemaining = optionalFields.filter(f => !isFilled(f)).length;\n\n const focusedFieldObj = this.fields.find(f => f.name === this.focusedField);\n const currentIndex = this.fields.findIndex(f => f.name === this.focusedField) + 1;\n const totalFields = this.fields.length;\n\n return (\n <div class=\"card\">\n <div class=\"header\">\n <div class=\"progress-line\">\n {requiredRemaining} of {requiredFields.length} required fields remaining\n </div>\n {optionalFields.length > 0 && (\n <div class=\"progress-line optional\">\n {optionalRemaining} of {optionalFields.length} optional fields remaining\n </div>\n )}\n </div>\n\n <div class=\"body\">\n {this.renderContent(getFieldLabel(focusedFieldObj), focusedFieldObj ? !!isFilled(focusedFieldObj) : false, requiredRemaining === 0)}\n </div>\n\n <div class=\"separator\" />\n\n {this.renderFooter(Math.max(1, currentIndex), totalFields, requiredRemaining)}\n </div>\n );\n }\n}\n"],"version":3}
@@ -26,7 +26,7 @@ import { d as defineCustomElement$9 } from './p-CuJaANpU.js';
26
26
  import { d as defineCustomElement$8 } from './p-Bgtn1Lcu.js';
27
27
  import { d as defineCustomElement$7 } from './p-Cd0WoTsM.js';
28
28
  import { d as defineCustomElement$6 } from './p-D8IoiIQy.js';
29
- import { d as defineCustomElement$5 } from './p-BZ-EKVKW.js';
29
+ import { d as defineCustomElement$5 } from './p-Bu_0SDFO.js';
30
30
  import { d as defineCustomElement$4 } from './p--A9ydKVE.js';
31
31
  import { d as defineCustomElement$3 } from './p-764zY_TM.js';
32
32
  import { d as defineCustomElement$2 } from './p-ChDalz5Z.js';
@@ -374,10 +374,21 @@ const VerdocsSign$1 = /*@__PURE__*/ proxyCustomElement(class VerdocsSign extends
374
374
  oldField.settings = updateResult.settings;
375
375
  updateDocumentFieldValue(oldField);
376
376
  this.fieldUpdateCounter++;
377
+ this.markEnvelopeStarted();
377
378
  this.checkRecipientFields();
378
379
  }
379
380
  });
380
381
  }
382
+ markEnvelopeStarted() {
383
+ const startedEnvelopes = JSON.parse(localStorage.getItem('startedEnvelopes') || '[]');
384
+ if (!startedEnvelopes.includes(this.envelopeId)) {
385
+ startedEnvelopes.push(this.envelopeId);
386
+ while (startedEnvelopes.length > 10) {
387
+ startedEnvelopes.shift();
388
+ }
389
+ localStorage.setItem('startedEnvelopes', JSON.stringify(startedEnvelopes));
390
+ }
391
+ }
381
392
  saveFieldChange(fieldName, value, prepared) {
382
393
  // Although the inputs disable themselves, the blur handler can still try to re-save
383
394
  // the value already in the field. Bypassing that here is easier than adding yet more
@@ -749,7 +760,12 @@ const VerdocsSign$1 = /*@__PURE__*/ proxyCustomElement(class VerdocsSign extends
749
760
  el.addEventListener('focusout', e => {
750
761
  // These field types trigger focusout as they're used, even without a value change.
751
762
  // Signature/Initial fields handle their own changes via fieldChange/adopt events, so we ignore focusout to prevent double-saves.
752
- if (field.type !== 'dropdown' && field.type !== 'attachment' && field.type !== 'signature' && field.type !== 'initial') {
763
+ if (field.type !== 'dropdown' &&
764
+ field.type !== 'attachment' &&
765
+ field.type !== 'signature' &&
766
+ field.type !== 'initial' &&
767
+ field.type !== 'checkbox' &&
768
+ field.type !== 'radio') {
753
769
  this.handleFieldChange(field, e).finally(() => this.checkRecipientFields());
754
770
  }
755
771
  });
@@ -1021,7 +1037,7 @@ const VerdocsSign$1 = /*@__PURE__*/ proxyCustomElement(class VerdocsSign extends
1021
1037
  const initFields = this.el.querySelectorAll('verdocs-field-initial');
1022
1038
  initFields.forEach(el => el.setAttribute('initialid', this.initialId));
1023
1039
  this.checkRecipientFields();
1024
- }, onExit: () => (this.adoptingSignature = false) })), (this.submitting || this.showSpinner) && (h("verdocs-portal", null, h("div", { class: "spinner-overlay" }, h("verdocs-spinner", null)))), this.showDownloadDialog && (h("verdocs-download-dialog", { signed: this.envelope.status === 'complete' || this.envelope.signed, polling: this.polling, documents: this.envelope.documents, onExit: () => {
1040
+ }, onExit: () => (this.adoptingSignature = false) })), (this.submitting || this.showSpinner) && (h("verdocs-portal", null, h("div", { class: "spinner-overlay" }, h("verdocs-spinner", null)))), this.showDownloadDialog && (h("verdocs-download-dialog", { signed: this.envelope.signed, polling: this.polling, documents: this.envelope.documents, onExit: () => {
1025
1041
  this.showDownloadDialog = false;
1026
1042
  this.stopPolling();
1027
1043
  }, onNext: async (e) => {