@hubsync/esign-web-sdk 6.9.22 → 6.9.24

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 (42) 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 +11 -1
  3. package/dist/cjs/verdocs-sign.cjs.entry.js +4 -4
  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 +11 -1
  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 +4 -4
  8. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js.map +1 -1
  9. package/dist/components/{p-DO7oSTLI.js → p-DAj3-nII.js} +13 -3
  10. package/dist/components/p-DAj3-nII.js.map +1 -0
  11. package/dist/components/verdocs-sign.js +5 -5
  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 +11 -1
  16. package/dist/esm/verdocs-sign.entry.js +4 -4
  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/verdocs-web-sdk/{p-Dw4daWgN.system.js.map → p--ERssswi.system.js.map} +1 -1
  24. package/dist/verdocs-web-sdk/{p-e6659ac9.system.entry.js → p-3896764c.system.entry.js} +2 -2
  25. package/dist/verdocs-web-sdk/{p-e6659ac9.system.entry.js.map → p-3896764c.system.entry.js.map} +1 -1
  26. package/dist/verdocs-web-sdk/{p-67b09919.system.entry.js → p-4a408b0d.system.entry.js} +2 -2
  27. package/dist/verdocs-web-sdk/p-4a408b0d.system.entry.js.map +1 -0
  28. package/dist/verdocs-web-sdk/p-7365a0e7.entry.js +2 -0
  29. package/dist/verdocs-web-sdk/{p-4a48c099.entry.js.map → p-7365a0e7.entry.js.map} +1 -1
  30. package/dist/verdocs-web-sdk/p-B8zpaHu-.system.js +1 -1
  31. package/dist/verdocs-web-sdk/p-CWM0-2JJ.system.js.map +1 -0
  32. package/dist/verdocs-web-sdk/{p-dbffd9a8.entry.js → p-bb4ab10a.entry.js} +2 -2
  33. package/dist/verdocs-web-sdk/p-bb4ab10a.entry.js.map +1 -0
  34. 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
  35. package/dist/verdocs-web-sdk/verdocs-sign.entry.esm.js.map +1 -1
  36. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  37. package/package.json +1 -1
  38. package/dist/components/p-DO7oSTLI.js.map +0 -1
  39. package/dist/verdocs-web-sdk/p-4a48c099.entry.js +0 -2
  40. package/dist/verdocs-web-sdk/p-67b09919.system.entry.js.map +0 -1
  41. package/dist/verdocs-web-sdk/p-BAkWhq53.system.js.map +0 -1
  42. package/dist/verdocs-web-sdk/p-dbffd9a8.entry.js.map +0 -1
@@ -64,7 +64,17 @@ const VerdocsSigningProgress = /*@__PURE__*/ proxyCustomElement(class VerdocsSig
64
64
  if (this.mode === 'completed') {
65
65
  return this.renderCompleted();
66
66
  }
67
- const isFilled = (f) => isFieldFilled(f, this.recipientFields) && (f.type !== 'dropdown' || !!f.value) && (f.type !== 'radio' || f.value === 'true') && (f.type !== 'checkbox' || f.value === 'true');
67
+ const isFilled = (f) => {
68
+ var _a;
69
+ // The server keeps value="signed" even after a signature/initial is cleared, so
70
+ // isFieldFilled (which looks at value) would still report it as filled. settings.signature_id
71
+ // is the authoritative indicator and is nulled out on clear. This must match the parent's
72
+ // isFieldActuallyFilled() in verdocs-sign so the progress panel and submit gating agree.
73
+ if (f.type === 'signature' || f.type === 'initial') {
74
+ return !!((_a = f.settings) === null || _a === void 0 ? void 0 : _a.signature_id);
75
+ }
76
+ return isFieldFilled(f, this.recipientFields) && (f.type !== 'dropdown' || !!f.value) && (f.type !== 'radio' || f.value === 'true') && (f.type !== 'checkbox' || f.value === 'true');
77
+ };
68
78
  const requiredFields = this.fields.filter(f => f.required);
69
79
  const requiredRemaining = requiredFields.filter(f => !isFilled(f)).length;
70
80
  const optionalFields = this.fields.filter(f => !f.required);
@@ -102,6 +112,6 @@ function defineCustomElement() {
102
112
  }
103
113
 
104
114
  export { VerdocsSigningProgress as V, defineCustomElement as d };
105
- //# sourceMappingURL=p-DO7oSTLI.js.map
115
+ //# sourceMappingURL=p-DAj3-nII.js.map
106
116
 
107
- //# sourceMappingURL=p-DO7oSTLI.js.map
117
+ //# sourceMappingURL=p-DAj3-nII.js.map
@@ -0,0 +1 @@
1
+ {"file":"p-DAj3-nII.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 * Names of optional fields the user has explicitly skipped\n */\n @Prop() skippedFields: string[] = [];\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, optionalRemaining: 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 && optionalRemaining === 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\" 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 // The server keeps value=\"signed\" even after a signature/initial is cleared, so\n // isFieldFilled (which looks at value) would still report it as filled. settings.signature_id\n // is the authoritative indicator and is nulled out on clear. This must match the parent's\n // isFieldActuallyFilled() in verdocs-sign so the progress panel and submit gating agree.\n if (f.type === 'signature' || f.type === 'initial') {\n return !!(f.settings as any)?.signature_id;\n }\n\n return isFieldFilled(f, this.recipientFields) && (f.type !== 'dropdown' || !!f.value) && (f.type !== 'radio' || f.value === 'true') && (f.type !== 'checkbox' || f.value === 'true');\n };\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) && !this.skippedFields.includes(f.name)).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, optionalRemaining)}\n </div>\n );\n }\n}\n"],"version":3}
@@ -26,7 +26,7 @@ import { d as defineCustomElement$9 } from './p-C_Xfg8nQ.js';
26
26
  import { d as defineCustomElement$8 } from './p-ByFUP3AN.js';
27
27
  import { d as defineCustomElement$7 } from './p-C1AtapGD.js';
28
28
  import { d as defineCustomElement$6 } from './p-DyG59pqj.js';
29
- import { d as defineCustomElement$5 } from './p-DO7oSTLI.js';
29
+ import { d as defineCustomElement$5 } from './p-DAj3-nII.js';
30
30
  import { d as defineCustomElement$4 } from './p-lE3_dyeh.js';
31
31
  import { d as defineCustomElement$3 } from './p-CcIN7yIE.js';
32
32
  import { d as defineCustomElement$2 } from './p-Yji-KKbG.js';
@@ -271,7 +271,7 @@ const VerdocsSign$1 = /*@__PURE__*/ proxyCustomElement(class VerdocsSign extends
271
271
  // TODO: Recipient "canceled"
272
272
  if (this.envelope.status === 'canceled') {
273
273
  this.fatalErrorHeader = 'Unable to Start Signing Session';
274
- this.fatalErrorMessage = 'This envelope has been canceled. The sender has been notified.';
274
+ this.fatalErrorMessage = 'This document has been canceled. The sender has been notified.';
275
275
  }
276
276
  else if (recipient.status === 'declined') {
277
277
  this.fatalErrorHeader = 'Declined';
@@ -1051,7 +1051,7 @@ const VerdocsSign$1 = /*@__PURE__*/ proxyCustomElement(class VerdocsSign extends
1051
1051
  return (h(Host, { class: { agreed: false } }, h("div", { class: "fatal-error" }, h("div", { class: "message" }, h("div", { class: "header" }, "Delegated Signing Request"), h("p", null, "You have delegated signing to another recipient. You will not be able to sign this request again.")))));
1052
1052
  }
1053
1053
  if (this.isDone) {
1054
- return (h(Host, { class: { agreed: this.agreed } }, h("verdocs-view", { endpoint: this.endpoint, envelopeId: this.envelopeId, onSdkError: e => { var _a; return (_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(e.detail); } }), this.showDone && (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.`, hideCloseButton: true, onNext: (e) => {
1054
+ return (h(Host, { class: { agreed: this.agreed } }, h("verdocs-view", { endpoint: this.endpoint, envelopeId: this.envelopeId, onSdkError: e => { var _a; return (_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(e.detail); } }), this.showDone && (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 completed document and certificate attached.`, hideCloseButton: true, onNext: (e) => {
1055
1055
  e.preventDefault();
1056
1056
  e.stopPropagation();
1057
1057
  this.showDone = false;
@@ -1074,7 +1074,7 @@ const VerdocsSign$1 = /*@__PURE__*/ proxyCustomElement(class VerdocsSign extends
1074
1074
  } })));
1075
1075
  }
1076
1076
  if (this.declining) {
1077
- return (h(Host, { class: "agreed" }, h("div", { class: "document", style: { paddingTop: '15px' } }, h("img", { src: "https://public-assets.verdocs.com/loading-placeholder.png", style: { width: '612px', height: '792px', boxShadow: '0 0 10px 5px #0000000f', marginTop: '15px' }, alt: "Placeholder page" })), h("verdocs-ok-dialog", { heading: "Decline Signing Request", message: `If you decline to sign this request, you will not be able to sign again in the future. The envelope sender will be notified.`, buttonLabel: "OK", showCancel: true, onExit: () => (this.declining = false), onNext: () => {
1077
+ return (h(Host, { class: "agreed" }, h("div", { class: "document", style: { paddingTop: '15px' } }, h("img", { src: "https://public-assets.verdocs.com/loading-placeholder.png", style: { width: '612px', height: '792px', boxShadow: '0 0 10px 5px #0000000f', marginTop: '15px' }, alt: "Placeholder page" })), h("verdocs-ok-dialog", { heading: "Decline Signing Request", message: `If you decline to sign this request, you will not be able to sign again in the future. The sender of the document will be notified.`, buttonLabel: "OK", showCancel: true, onExit: () => (this.declining = false), onNext: () => {
1078
1078
  envelopeRecipientDecline(this.endpoint, this.envelopeId, this.roleId)
1079
1079
  .then(r => {
1080
1080
  console.log('[SIGN] Decline result', r);
@@ -1180,7 +1180,7 @@ const VerdocsSign$1 = /*@__PURE__*/ proxyCustomElement(class VerdocsSign extends
1180
1180
  })), this.showFinishLater && (h("verdocs-ok-dialog", { heading: "You've saved your document to finish later.", message: `To complete the ${this.documentsSingularPlural}, use the link in the original email notification inviting you to review and finish the document.`, hideCloseButton: true, onNext: () => {
1181
1181
  this.isDone = true;
1182
1182
  this.showFinishLater = false;
1183
- } })), this.showDone && (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.`, hideCloseButton: true, onNext: () => {
1183
+ } })), this.showDone && (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 completed document and certificate attached.`, hideCloseButton: true, onNext: () => {
1184
1184
  this.showDone = false;
1185
1185
  this.isDone = true;
1186
1186
  } })), this.adoptingSignature && (h("verdocs-adopt-signature-dialog", { name: formatFullName(this.recipient), nameLocked: !!((_a = this.recipient) === null || _a === void 0 ? void 0 : _a.name_locked), onNext: async (e) => {