@verdocs/web-sdk 6.5.0-beta.10 → 6.5.0-beta.11

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 (108) hide show
  1. package/dist/cjs/index-CQ5bTnED.js +10 -2
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/{verdocs-field-attachment_13.cjs.entry.js → verdocs-field-attachment_11.cjs.entry.js} +14 -623
  4. package/dist/cjs/verdocs-initial-dialog.cjs.entry.js +229 -0
  5. package/dist/cjs/verdocs-initial-dialog.entry.cjs.js.map +1 -0
  6. package/dist/cjs/verdocs-sign.cjs.entry.js +72 -5
  7. package/dist/cjs/verdocs-sign.entry.cjs.js.map +1 -1
  8. package/dist/cjs/verdocs-signature-dialog.cjs.entry.js +355 -0
  9. package/dist/cjs/verdocs-signature-dialog.entry.cjs.js.map +1 -0
  10. package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
  11. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js +72 -5
  12. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js.map +1 -1
  13. package/dist/collection/components/fields/verdocs-field-initial/verdocs-field-initial.js +17 -26
  14. package/dist/collection/components/fields/verdocs-field-initial/verdocs-field-initial.js.map +1 -1
  15. package/dist/collection/components/fields/verdocs-field-signature/verdocs-field-signature.js +32 -26
  16. package/dist/collection/components/fields/verdocs-field-signature/verdocs-field-signature.js.map +1 -1
  17. package/dist/components/{p-CYoBhLFP.js → p-B4XIUesD.js} +42 -54
  18. package/dist/components/p-B4XIUesD.js.map +1 -0
  19. package/dist/components/{p-DjOK66Dt.js → p-BoIZ0eWm.js} +43 -55
  20. package/dist/components/p-BoIZ0eWm.js.map +1 -0
  21. package/dist/components/{p-BxnX5zPJ.js → p-BzCNCMTQ.js} +24 -53
  22. package/dist/components/p-BzCNCMTQ.js.map +1 -0
  23. package/dist/components/{p-DKJPJj6P.js → p-CaA92LBj.js} +43 -55
  24. package/dist/components/p-CaA92LBj.js.map +1 -0
  25. package/dist/components/{p-Bygkg9Ho.js → p-DlWkjPea.js} +17 -41
  26. package/dist/components/p-DlWkjPea.js.map +1 -0
  27. package/dist/components/verdocs-build.js +56 -68
  28. package/dist/components/verdocs-build.js.map +1 -1
  29. package/dist/components/verdocs-field-initial.js +1 -1
  30. package/dist/components/verdocs-field-signature.js +1 -1
  31. package/dist/components/verdocs-initial-dialog.js +263 -1
  32. package/dist/components/verdocs-initial-dialog.js.map +1 -1
  33. package/dist/components/verdocs-preview.js +1 -1
  34. package/dist/components/verdocs-sign.js +72 -5
  35. package/dist/components/verdocs-sign.js.map +1 -1
  36. package/dist/components/verdocs-signature-dialog.js +393 -1
  37. package/dist/components/verdocs-signature-dialog.js.map +1 -1
  38. package/dist/components/verdocs-template-document-page.js +1 -1
  39. package/dist/components/verdocs-template-fields.js +1 -1
  40. package/dist/esm/index-BIRwgFLv.js +10 -2
  41. package/dist/esm/loader.js +1 -1
  42. package/dist/esm/{verdocs-field-attachment_13.entry.js → verdocs-field-attachment_11.entry.js} +15 -622
  43. package/dist/{components/p-Daqfz15U.js → esm/verdocs-initial-dialog.entry.js} +8 -49
  44. package/dist/esm/verdocs-initial-dialog.entry.js.map +1 -0
  45. package/dist/esm/verdocs-sign.entry.js +72 -5
  46. package/dist/esm/verdocs-sign.entry.js.map +1 -1
  47. package/dist/{components/p-0L80sqd9.js → esm/verdocs-signature-dialog.entry.js} +8 -53
  48. package/dist/esm/verdocs-signature-dialog.entry.js.map +1 -0
  49. package/dist/esm/verdocs-web-sdk.js +1 -1
  50. package/dist/esm-es5/index-BIRwgFLv.js +1 -1
  51. package/dist/esm-es5/loader.js +1 -1
  52. package/dist/esm-es5/verdocs-field-attachment_11.entry.js +2 -0
  53. package/dist/esm-es5/verdocs-field-attachment_11.entry.js.map +1 -0
  54. package/dist/esm-es5/verdocs-initial-dialog.entry.js +2 -0
  55. package/dist/esm-es5/verdocs-initial-dialog.entry.js.map +1 -0
  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/esm-es5/verdocs-signature-dialog.entry.js +2 -0
  59. package/dist/esm-es5/verdocs-signature-dialog.entry.js.map +1 -0
  60. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  61. package/dist/types/components/fields/verdocs-field-initial/verdocs-field-initial.d.ts +1 -4
  62. package/dist/types/components/fields/verdocs-field-signature/verdocs-field-signature.d.ts +2 -4
  63. package/dist/types/components.d.ts +10 -8
  64. package/dist/verdocs-web-sdk/p-12422d5d.system.entry.js +2 -0
  65. package/dist/verdocs-web-sdk/p-12422d5d.system.entry.js.map +1 -0
  66. package/dist/verdocs-web-sdk/p-2fb3119a.entry.js +2 -0
  67. package/dist/verdocs-web-sdk/p-2fb3119a.entry.js.map +1 -0
  68. package/dist/verdocs-web-sdk/p-36659fcd.entry.js +2 -0
  69. package/dist/verdocs-web-sdk/p-36659fcd.entry.js.map +1 -0
  70. package/dist/verdocs-web-sdk/p-48d217b4.system.entry.js +2 -0
  71. package/dist/verdocs-web-sdk/p-48d217b4.system.entry.js.map +1 -0
  72. package/dist/verdocs-web-sdk/p-5d720de7.entry.js +2 -0
  73. package/dist/verdocs-web-sdk/p-5d720de7.entry.js.map +1 -0
  74. package/dist/verdocs-web-sdk/p-8052a9b8.system.entry.js +2 -0
  75. package/dist/verdocs-web-sdk/p-8052a9b8.system.entry.js.map +1 -0
  76. package/dist/verdocs-web-sdk/p-B8zpaHu-.system.js +1 -1
  77. package/dist/verdocs-web-sdk/p-BYyqNgjP.system.js.map +1 -0
  78. package/dist/verdocs-web-sdk/p-D2FLn0Fu.system.js.map +1 -0
  79. package/dist/verdocs-web-sdk/p-DQr2_l0b.system.js.map +1 -0
  80. package/dist/verdocs-web-sdk/p-c7243201.system.entry.js +2 -0
  81. package/dist/verdocs-web-sdk/p-c7243201.system.entry.js.map +1 -0
  82. package/dist/verdocs-web-sdk/p-f0c0e64f.entry.js +2 -0
  83. package/dist/verdocs-web-sdk/p-f0c0e64f.entry.js.map +1 -0
  84. package/dist/verdocs-web-sdk/p-u99GfztJ.system.js.map +1 -0
  85. package/dist/verdocs-web-sdk/verdocs-initial-dialog.entry.esm.js.map +1 -0
  86. package/dist/verdocs-web-sdk/verdocs-sign.entry.esm.js.map +1 -1
  87. package/dist/verdocs-web-sdk/verdocs-signature-dialog.entry.esm.js.map +1 -0
  88. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  89. package/package.json +2 -2
  90. package/dist/components/p-0L80sqd9.js.map +0 -1
  91. package/dist/components/p-BxnX5zPJ.js.map +0 -1
  92. package/dist/components/p-Bygkg9Ho.js.map +0 -1
  93. package/dist/components/p-CYoBhLFP.js.map +0 -1
  94. package/dist/components/p-DKJPJj6P.js.map +0 -1
  95. package/dist/components/p-Daqfz15U.js.map +0 -1
  96. package/dist/components/p-DjOK66Dt.js.map +0 -1
  97. package/dist/esm-es5/verdocs-field-attachment_13.entry.js +0 -2
  98. package/dist/esm-es5/verdocs-field-attachment_13.entry.js.map +0 -1
  99. package/dist/verdocs-web-sdk/p-198d3577.entry.js +0 -2
  100. package/dist/verdocs-web-sdk/p-198d3577.entry.js.map +0 -1
  101. package/dist/verdocs-web-sdk/p-25b3c1d6.system.entry.js +0 -2
  102. package/dist/verdocs-web-sdk/p-25b3c1d6.system.entry.js.map +0 -1
  103. package/dist/verdocs-web-sdk/p-644689ce.system.entry.js +0 -2
  104. package/dist/verdocs-web-sdk/p-644689ce.system.entry.js.map +0 -1
  105. package/dist/verdocs-web-sdk/p-71ab2ea9.entry.js +0 -2
  106. package/dist/verdocs-web-sdk/p-71ab2ea9.entry.js.map +0 -1
  107. package/dist/verdocs-web-sdk/p-BBoL1FXa.system.js.map +0 -1
  108. package/dist/verdocs-web-sdk/p-DSPz-5FG.system.js.map +0 -1
@@ -1,16 +1,10 @@
1
- import { p as proxyCustomElement, H, c as createEvent, h, d as Host } from './p-CUAGH_8P.js';
2
- import { d as defineCustomElement$3 } from './p-CfODrICH.js';
3
- import { d as defineCustomElement$2 } from './p-D9zjm5AL.js';
4
- import { d as defineCustomElement$1 } from './p-CbtdkfOR.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-BIRwgFLv.js';
5
2
 
6
3
  const verdocsInitialDialogCss = "@-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-initial-dialog{font-family:\"Inter\", \"Barlow\", sans-serif;-webkit-box-sizing:border-box;box-sizing:border-box;position:fixed;z-index:10000;top:0;left:0;right:0;bottom:0;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;background:rgba(0, 0, 0, 0.4980392157)}verdocs-initial-dialog .dialog{width:100%;max-width:340px;border-radius:4px;overflow:hidden;-webkit-box-shadow:3px 3px 5px 1px rgba(40, 40, 40, 0.4);box-shadow:3px 3px 5px 1px rgba(40, 40, 40, 0.4);background:#f9f9f9}verdocs-initial-dialog .heading{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;padding:20px 20px 0 20px;line-height:28px;font-size:20px;font-weight:500}verdocs-initial-dialog .content{font-size:14px;padding:20px}verdocs-initial-dialog .buttons{display:-ms-flexbox;display:flex;margin:20px 0 0 0;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-align:center;align-items:center}verdocs-initial-dialog .buttons verdocs-button{margin-left:16px}verdocs-initial-dialog canvas{background:#fff;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0 auto;width:300px;height:79px;max-width:100%;-webkit-box-shadow:0 0 6px 0 rgba(0, 0, 0, 0.1215686275);box-shadow:0 0 6px 0 rgba(0, 0, 0, 0.1215686275)}verdocs-initial-dialog .disclaimer{text-align:justify;padding:8px 0;font-size:11px;line-height:14px;color:rgba(0, 0, 0, 0.54)}verdocs-initial-dialog .as-shown{font-size:11px;margin:4px 0 20px 4px;color:rgba(0, 0, 0, 0.54)}verdocs-initial-dialog .tabs{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}verdocs-initial-dialog .tabs .tab{padding:8px 15px;cursor:pointer}verdocs-initial-dialog .tabs .tab.active{border-bottom:2px solid #cccccc}verdocs-initial-dialog .tabs .tab:hover{color:#55bc81}";
7
4
 
8
- const VerdocsInitialDialog = /*@__PURE__*/ proxyCustomElement(class VerdocsInitialDialog extends H {
9
- constructor(registerHost) {
10
- super();
11
- if (registerHost !== false) {
12
- this.__registerHost();
13
- }
5
+ const VerdocsInitialDialog = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
14
8
  this.next = createEvent(this, "next");
15
9
  this.exit = createEvent(this, "exit");
16
10
  /**
@@ -226,43 +220,8 @@ const VerdocsInitialDialog = /*@__PURE__*/ proxyCustomElement(class VerdocsIniti
226
220
  render() {
227
221
  return (h(Host, { key: 'adf8b7f3191850b40c865196d5a435e9d85ef28a', onClick: e => this.handleCancel(e) }, h("div", { key: 'c80e81a5ff5a686cbab68b9ac0fa23dd61d9ee32', class: "dialog" }, h("div", { key: '622d2ebd26b3ac4003add36dc40c9eef54fb95bc', class: "heading" }, "Create Your Initial"), h("div", { key: '8179e48c368a5831b395a01ea6e6dbf19377e3f3', class: "content" }, h("verdocs-text-input", { key: 'c5696ad5ab2fc4a703b596d12029e95dcad099b6', placeholder: "Initials...", label: "Initials", value: this.enteredInitials, onInput: e => this.handleNameChange(e), onClick: e => e.stopPropagation() }), h("div", { key: 'a63b403893d70267d94e4029b72a54e50ccc56ae', class: "as-shown" }, "As shown on driver's license or govt. ID card."), this.fontLoaded ? h("canvas", { ref: el => (this.canvasElement = el) }) : h("div", { style: { display: 'none' } }), h("div", { key: '917afd9ece52ed0716f06d5fb8cc1167644f015d', class: "disclaimer" }, "By clicking Adopt, I agree that the signature will be the electronic representation of my signature for all purposes when I (or my agent) use them on documents, including legally binding contracts \u2014 just the same as a pen-and-paper signature or initial."), h("div", { key: 'b76005f2943578684934f6e5299d1bcf0bb5f705', class: "buttons" }, h("verdocs-button", { key: '5b9a99183f1f31d940a6a22cf4167c84f93d2284', label: "CANCEL", size: "normal", variant: "outline", onClick: e => this.handleCancel(e) }), h("verdocs-button", { key: 'e9dbfe8255870db5ff0b5f2aee3d9a3c1e48b702', label: "Adopt & Sign", size: "normal", onClick: e => this.handleAdopt(e) }))))));
228
222
  }
229
- static get style() { return verdocsInitialDialogCss; }
230
- }, [256, "verdocs-initial-dialog", {
231
- "initials": [1],
232
- "fontLoaded": [32],
233
- "enteredInitials": [32],
234
- "mode": [32]
235
- }]);
236
- function defineCustomElement() {
237
- if (typeof customElements === "undefined") {
238
- return;
239
- }
240
- const components = ["verdocs-initial-dialog", "verdocs-button", "verdocs-help-icon", "verdocs-text-input"];
241
- components.forEach(tagName => { switch (tagName) {
242
- case "verdocs-initial-dialog":
243
- if (!customElements.get(tagName)) {
244
- customElements.define(tagName, VerdocsInitialDialog);
245
- }
246
- break;
247
- case "verdocs-button":
248
- if (!customElements.get(tagName)) {
249
- defineCustomElement$3();
250
- }
251
- break;
252
- case "verdocs-help-icon":
253
- if (!customElements.get(tagName)) {
254
- defineCustomElement$2();
255
- }
256
- break;
257
- case "verdocs-text-input":
258
- if (!customElements.get(tagName)) {
259
- defineCustomElement$1();
260
- }
261
- break;
262
- } });
263
- }
264
-
265
- export { VerdocsInitialDialog as V, defineCustomElement as d };
266
- //# sourceMappingURL=p-Daqfz15U.js.map
223
+ };
224
+ VerdocsInitialDialog.style = verdocsInitialDialogCss;
267
225
 
268
- //# sourceMappingURL=p-Daqfz15U.js.map
226
+ export { VerdocsInitialDialog as verdocs_initial_dialog };
227
+ //# sourceMappingURL=verdocs-initial-dialog.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verdocs-initial-dialog.entry.js","sources":["src/components/dialogs/verdocs-initial-dialog/verdocs-initial-dialog.scss?tag=verdocs-initial-dialog","src/components/dialogs/verdocs-initial-dialog/verdocs-initial-dialog.tsx"],"sourcesContent":["@import '../../../theme.scss';\n\nverdocs-initial-dialog {\n font-family: $primary-font;\n box-sizing: border-box;\n position: fixed;\n z-index: 10000;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n background: #0000007f;\n\n .dialog {\n width: 100%;\n max-width: 340px;\n border-radius: 4px;\n overflow: hidden;\n box-shadow: 3px 3px 5px 1px rgba(40, 40, 40, 0.4);\n background: $dialog-bg;\n }\n\n .heading {\n display: flex;\n flex-direction: row;\n padding: 20px 20px 0 20px;\n line-height: 28px;\n font-size: 20px;\n font-weight: 500;\n }\n\n .content {\n font-size: 14px;\n padding: 20px;\n }\n\n .buttons {\n display: flex;\n margin: 20px 0 0 0;\n flex-direction: row;\n justify-content: flex-end;\n align-items: center;\n\n verdocs-button {\n margin-left: 16px;\n }\n }\n\n canvas {\n background: #fff;\n box-sizing: border-box;\n margin: 0 auto;\n width: 300px;\n // TODO: The original app had an aspect ratio of (80 / 305) * (signatureBodyWidth - 20)\n height: 79px;\n max-width: 100%;\n box-shadow: 0 0 6px 0 #0000001f;\n }\n\n .disclaimer {\n text-align: justify;\n padding: 8px 0;\n font-size: 11px;\n line-height: 14px;\n color: rgba(0, 0, 0, 0.54);\n }\n\n .as-shown {\n font-size: 11px;\n margin: 4px 0 20px 4px;\n color: rgba(0, 0, 0, 0.54);\n }\n\n .tabs {\n display: flex;\n flex-direction: row;\n\n .tab {\n padding: 8px 15px;\n cursor: pointer;\n\n &.active {\n border-bottom: 2px solid $light-border-color;\n }\n\n &:hover {\n color: $primary-color;\n }\n }\n }\n}\n","import {Component, Prop, Host, h, Event, EventEmitter, State} from '@stencil/core';\n\n/**\n * Display a dialog that allows the user to specify an initials image, either by using a signature-font-generated image\n * based on their full name, or by hand-drawing their initials with a mouse or tablet.\n */\n@Component({\n tag: 'verdocs-initial-dialog',\n styleUrl: 'verdocs-initial-dialog.scss',\n})\nexport class VerdocsInitialDialog {\n private canvasElement?: HTMLCanvasElement;\n\n /**\n * Initial signature text\n */\n @Prop() initials: string = '';\n\n /**\n * Fired when the user completes the dialog and clicks Adopt. The event detail will contain a base64-encoded string\n * representation of the initials adopted.\n */\n @Event({composed: true}) next: EventEmitter<string>;\n\n /**\n * Event fired when the step is cancelled. This is called exit to avoid conflicts with the JS-reserved \"cancel\" event name.\n */\n @Event({composed: true}) exit: EventEmitter;\n\n @State() fontLoaded = false;\n\n @State() enteredInitials: string = '';\n\n @State() mode: string = 'type';\n\n componentWillLoad() {\n this.enteredInitials = this.initials.toUpperCase();\n\n const ds = new FontFace('Dancing Script', 'url(https://fonts.gstatic.com/s/dancingscript/v19/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7BMSo3Sup6hNX6plRP.woff)');\n ds.load().then(font => {\n document.fonts.add(font);\n this.fontLoaded = true;\n });\n }\n\n componentDidLoad() {\n this.redrawSignature();\n }\n\n componentDidUpdate() {\n this.redrawSignature();\n }\n\n redrawSignature() {\n if (!this.canvasElement) {\n return;\n }\n\n const canvasWidth = this.canvasElement.width;\n\n const context = this.canvasElement.getContext('2d');\n context.clearRect(0, 0, this.canvasElement.width, this.canvasElement.height);\n\n let fontSize = 100;\n do {\n fontSize -= 2;\n context.font = `${fontSize}px Dancing Script`;\n } while (context.measureText(this.enteredInitials).width > canvasWidth - 32); // 32px padding each side\n\n context.textAlign = 'center';\n context.textBaseline = 'middle';\n context.font = `${fontSize}px Dancing Script`;\n context.fillText(this.enteredInitials, this.canvasElement.width / 2, this.canvasElement.height / 2);\n }\n\n handleNameChange(e: any) {\n this.enteredInitials = e.target.value;\n }\n\n handleCancel(e: any) {\n e.stopPropagation();\n e.preventDefault();\n this.exit.emit();\n }\n\n handleAdopt(e: any) {\n e.stopPropagation();\n e.preventDefault();\n const data = this.canvasElement.toDataURL('image/png');\n this.next.emit(data);\n }\n\n /*\n selColor(hex: string) {\n this.color = hex;\n this.animateDraw();\n }\n\n stopDraw() {\n this.paint = false;\n this.adoptedAndSigned = !this.hasSignature();\n }\n\n draw(e) {\n this.paint = true;\n this.addPoints(e, false);\n this.animateDraw();\n }\n\n recordPoints(e) {\n if (this.paint) {\n this.addPoints(e, true);\n this.animateDraw();\n }\n }\n\n animateDraw() {\n this.canvas.clearRect(0, 0, this.canvas.canvas.offsetWidth, this.canvas.canvas.offsetHeight);\n\n this.canvas.strokeStyle = this.color || '#000000';\n this.canvas.lineJoin = 'round';\n this.canvas.lineWidth = 3;\n\n for (let i = 0; i < this.points.length; i++) {\n this.canvas.beginPath();\n if (this.points[i].drag && i) {\n this.canvas.moveTo(this.points[i - 1].x, this.points[i - 1].y);\n // this.canvas.arc(this.points[i - 1].x, this.points[i - 1].y, 2, 0, 2 * Math.PI, false);\n } else {\n this.canvas.moveTo(this.points[i].x - 1, this.points[i].y);\n // this.canvas.arc(this.points[i].x, this.points[i].y, 2, 0, 2 * Math.PI, false);\n }\n\n this.canvas.lineTo(this.points[i].x, this.points[i].y);\n this.canvas.closePath();\n this.canvas.stroke();\n }\n }\n\n drawCurve(color: string, curve: number) {\n this.canvas.beginPath();\n }\n\n\n\n addPoints(e, drag: boolean) {\n if (window) {\n let x;\n let y;\n e.preventDefault();\n if (e.touches && e.touches.length > 0) {\n x = e.touches[0].clientX;\n } else {\n x = e.clientX;\n }\n\n if (e.touches && e.touches.length > 0) {\n y = e.touches[0].clientY;\n } else {\n y = e.clientY;\n }\n const rect = this.signatureCanvas.nativeElement.getBoundingClientRect();\n this.points.push({\n x: x - rect.left,\n y: y - rect.top,\n drag: drag\n });\n }\n }\n\n clearPad() {\n this.canvas.clearRect(0, 0, this.canvas.canvas.offsetWidth, this.canvas.canvas.offsetHeight);\n this.points = [];\n this.adoptedAndSigned = !this.hasSignature();\n }\n\n async adoptAndSign() {\n try {\n this.adoptedAndSigned = true;\n await this.updateFullName();\n await this.captureSignatureFromCanvas();\n const message = this.signatureMode === 'Signature' ? 'Saving Signature' : 'Saving Initial';\n this.snackbarService.open(message, 'OK', this.snackbarService.initConfig(null, 'bottom'));\n this.handleMode();\n } catch (err) {\n this.snackbarService.open('Failed to apply signature', 'OK', this.snackbarService.initConfig(null, 'bottom'));\n }\n }\n\n handleMode() {\n let currentField;\n switch (this.mode) {\n case 'signerview':\n if (this.signatureMode === 'Signature') {\n this.signatureService.postSignatureBlob().then(result => {\n if (result && result.id && result.url) {\n currentField = this.signatureService.currField;\n this.signatureService.updateSigned(currentField.fName, true);\n this.signatureService.toggleSig(false);\n this.signatureService.setSignatureId(result.id);\n this.signatureService.putSignatureField(this.envelopeId, this.fieldName, result.id).then(res => {\n this.eventTracker.createEvent({\n category: 'verdoc',\n action: 'verdoc signed',\n label: `verdoc id: ${this.envelopeId}`\n })\n if (res && res.settings) {\n this.signatureService.setSignatureData(res.settings.base64);\n this.signatureService.setSignatureId(res.settings.signature_id);\n }\n this.snackbarService.dismiss();\n this.dialog.close({ status: 'saved', temp_sig: res.settings.base64, sig_id: res.settings.signature_id });\n }).catch(err => {\n this.snackbarService.open('Failed to save signature. Please try again.', 'DISMISS', {\n duration: 3000\n });\n this.adoptedAndSigned = false;\n return err;\n });\n }\n });\n } else {\n this.signatureService.postInitialBlob().then(result => {\n if (result && result.id && result.url) {\n currentField = this.signatureService.currField;\n this.signatureService.updateInitialed(currentField.fName, true);\n this.signatureService.setInitialId(result.id);\n this.signatureService.toggleSig(false);\n this.signatureService.putInitialField(this.envelopeId, this.fieldName, result.id).then(res => {\n if (res && res.settings) {\n this.signatureService.setInitialData(res.settings.base64);\n this.signatureService.setInitialId(res.settings.initial_id);\n }\n this.snackbarService.dismiss();\n this.dialog.close({ status: 'saved', temp_int: res.settings.base64, int_id: res.settings.initial_id });\n }).catch(err => {\n this.snackbarService.open('Failed to save initial. Please try again.', 'DISMISS', {\n duration: 3000\n });\n this.adoptedAndSigned = false;\n return err;\n });\n }\n });\n }\n break;\n }\n }\n */\n\n render() {\n return (\n <Host onClick={e => this.handleCancel(e)}>\n <div class=\"dialog\">\n <div class=\"heading\">Create Your Initial</div>\n\n <div class=\"content\">\n <verdocs-text-input\n placeholder=\"Initials...\"\n label=\"Initials\"\n value={this.enteredInitials}\n onInput={e => this.handleNameChange(e)}\n onClick={e => e.stopPropagation()}\n />\n <div class=\"as-shown\">As shown on driver's license or govt. ID card.</div>\n\n {/*<div class=\"tabs\">*/}\n {/* <div class={{tab: true, active: this.mode === 'type'}} onClick={() => (this.mode = 'type')}>*/}\n {/* Type*/}\n {/* </div>*/}\n {/* <div class={{tab: true, active: this.mode === 'draw'}} onClick={() => (this.mode = 'draw')}>*/}\n {/* Draw*/}\n {/* </div>*/}\n {/*</div>*/}\n\n {this.fontLoaded ? <canvas ref={el => (this.canvasElement = el as HTMLCanvasElement)} /> : <div style={{display: 'none'}} />}\n\n <div class=\"disclaimer\">\n By clicking Adopt, I agree that the signature will be the electronic representation of my signature for all purposes when I (or my agent) use them on documents,\n including legally binding contracts &mdash; just the same as a pen-and-paper signature or initial.\n </div>\n\n <div class=\"buttons\">\n <verdocs-button label=\"CANCEL\" size=\"normal\" variant=\"outline\" onClick={e => this.handleCancel(e)} />\n <verdocs-button label=\"Adopt & Sign\" size=\"normal\" onClick={e => this.handleAdopt(e)} />\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -9,6 +9,29 @@ import './Types-dqxNbm_b.js';
9
9
 
10
10
  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>.document .document-separator{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:10px;padding:12px 20px;width:100%;max-width:1028px;-webkit-box-sizing:border-box;box-sizing:border-box;background-color:#33364b;color:white;border-radius:6px;font-size:16px;font-weight:500;margin-top:20px;-webkit-box-shadow:0 2px 4px rgba(0, 0, 0, 0.1);box-shadow:0 2px 4px rgba(0, 0, 0, 0.1)}verdocs-sign>.document .document-separator svg{-ms-flex-negative:0;flex-shrink:0}verdocs-sign>.document .document-separator:first-child{margin-top:0}verdocs-sign .signed-document-container{width:64%;margin-left:260px}@media (max-width: 600px){verdocs-sign .signed-document-container{width:100%;margin-left:0}verdocs-sign>.document{padding-right:15px}verdocs-sign .verdocs-flag-instance{display:none !important}}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}";
11
11
 
12
+ /**
13
+ * Helper to generate a human-readable label for a field.
14
+ */
15
+ const getFieldLabel = (field) => {
16
+ if (!field)
17
+ return '';
18
+ const typeMap = {
19
+ signature: 'Signature',
20
+ initial: 'Initials',
21
+ date: 'Date',
22
+ textbox: 'Text Field',
23
+ checkbox: 'Checkbox',
24
+ radio: 'Radio Button',
25
+ dropdown: 'Dropdown',
26
+ attachment: 'Attachment',
27
+ payment: 'Payment',
28
+ };
29
+ const typeName = typeMap[field.type] || 'Field';
30
+ if (field.required) {
31
+ return `Required ${typeName}*`;
32
+ }
33
+ return `Optional ${typeName}`;
34
+ };
12
35
  const VerdocsSign = class {
13
36
  constructor(hostRef) {
14
37
  registerInstance(this, hostRef);
@@ -93,6 +116,12 @@ const VerdocsSign = class {
93
116
  // session and might have a different "view" of the envelope.
94
117
  const response = await startSigningSession(this.endpoint, this.envelopeId, this.roleId, this.inviteCode);
95
118
  this.processAuthResponse(response);
119
+ const fillable = this.getSortedFillableFields();
120
+ if (fillable.length > 0) {
121
+ setTimeout(() => {
122
+ this.focusedField = fillable[0].name;
123
+ }, 500);
124
+ }
96
125
  }
97
126
  catch (e) {
98
127
  console.log('[SIGN] Error with signing session', e);
@@ -428,6 +457,7 @@ const VerdocsSign = class {
428
457
  // Find and focus the next incomplete field (that is fillable)
429
458
  const emptyFields = this.getSortedFillableFields().filter(field => field.required && !isFieldFilled(field, this.getRecipientFields()));
430
459
  sortFields(emptyFields);
460
+ console.log('[SIGN] Pending fields', emptyFields.map(f => `${f.name} (${f.type}) req=${f.required}`));
431
461
  // If everything required is filled, try optional fields?
432
462
  // The previous logic only looked for required fields for "Next".
433
463
  // If we want "Fill or Skip", we should probably look for ANY unfilled field if we want to guide them to optionals too.
@@ -485,7 +515,14 @@ const VerdocsSign = class {
485
515
  // Remove existing flags
486
516
  const existingFlags = controlsDiv.querySelectorAll('.verdocs-flag-instance');
487
517
  existingFlags.forEach(el => el.remove());
488
- const nextField = this.getNextRequiredField();
518
+ let nextField = this.getNextRequiredField();
519
+ const focusedFieldObj = this.getRecipientFields().find(f => f.name === this.focusedField);
520
+ // If the currently focused field is unfilled, we should point the flag to IT, not the next one.
521
+ // getNextRequiredField() is designed for the "Next" button (skipping current), but the visual flag
522
+ // should guide the user to the current task if it's incomplete.
523
+ if (focusedFieldObj && !isFieldFilled(focusedFieldObj, this.getRecipientFields())) {
524
+ nextField = focusedFieldObj;
525
+ }
489
526
  if (nextField && nextField.page === pageInfo.pageNumber && nextField.document_id === pageInfo.documentId) {
490
527
  const variant = 'fill';
491
528
  let label = 'FILL';
@@ -672,6 +709,10 @@ const VerdocsSign = class {
672
709
  el.addEventListener('fieldChange', e => {
673
710
  this.handleFieldChange(field, e).finally(() => this.checkRecipientFields());
674
711
  });
712
+ el.addEventListener('adopt', () => {
713
+ this.focusedField = field.name;
714
+ this.adoptingSignature = true;
715
+ });
675
716
  el.setAttribute('templateid', this.envelope.template_id);
676
717
  el.setAttribute('fieldname', field.name);
677
718
  el.setAttribute('page', pageInfo.pageNumber);
@@ -740,15 +781,16 @@ const VerdocsSign = class {
740
781
  this.processAuthResponse(r);
741
782
  })
742
783
  .catch(e => {
743
- var _a, _b, _c, _d, _e;
784
+ var _a, _b, _c, _d, _e, _f;
744
785
  console.log('[SIGN] Error submitting authentication step', e);
745
- if ((_c = (_b = (_a = e.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.error) === null || _c === void 0 ? void 0 : _c.includes('failed')) {
786
+ console.log((_a = e.response) === null || _a === void 0 ? void 0 : _a.data);
787
+ if ((_d = (_c = (_b = e.response) === null || _b === void 0 ? void 0 : _b.data) === null || _c === void 0 ? void 0 : _c.error) === null || _d === void 0 ? void 0 : _d.includes('failed')) {
746
788
  this.fatalErrorHeader = 'Recipient Verification Failed';
747
789
  this.fatalErrorMessage = 'We were unable to verify your identity. The sender has been notified.';
748
790
  this.isDone = true;
749
791
  }
750
792
  else {
751
- VerdocsToast(((_e = (_d = e.response) === null || _d === void 0 ? void 0 : _d.data) === null || _e === void 0 ? void 0 : _e.error) || 'Unable to verify your identity. Please try again.', { style: 'error' });
793
+ VerdocsToast(((_f = (_e = e.response) === null || _e === void 0 ? void 0 : _e.data) === null || _f === void 0 ? void 0 : _f.error) || 'Unable to verify your identity. Please try again.', { style: 'error' });
752
794
  }
753
795
  });
754
796
  }
@@ -862,7 +904,16 @@ const VerdocsSign = class {
862
904
  : console.log('[SIGN] All field valid');
863
905
  return (h(Host, null, h("div", { id: "verdocs-sign-header" }, h("div", { class: "inner" }, h("img", { src: "https://verdocs.com/assets/white-logo.svg", alt: "Verdocs Logo", class: "logo" }), h("div", { class: "title" }, this.envelope.name), h("div", { style: { flex: '1' } }), !this.finishLater && h("verdocs-button", { size: "xsmall", label: this.nextButtonLabel, disabled: !this.agreed || this.submitting, onClick: () => this.handleNext() }), h("div", { style: { marginLeft: '10px' } }), h("verdocs-dropdown", { options: !this.isDone && !this.finishLater ? inProgressMenuOptions : doneMenuOptions, onOptionSelected: e => this.handleOptionSelected(e) }))), (() => {
864
906
  const focusedFieldObj = this.getSortedFillableFields().find(f => f.name === this.focusedField);
865
- return (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 ? !!isFieldFilled(focusedFieldObj, this.getRecipientFields()) : false, onStarted: () => {
907
+ const currentIndex = this.getSortedFillableFields().findIndex(f => f.name === this.focusedField) + 1;
908
+ const totalFields = this.getSortedFillableFields().length;
909
+ let mode = 'start';
910
+ if (this.nextSubmits) {
911
+ mode = 'completed';
912
+ }
913
+ else if (this.signatureId || this.initialId) {
914
+ mode = 'signing';
915
+ }
916
+ return (h("verdocs-signing-progress", { mode: mode, current: Math.max(1, currentIndex), total: totalFields, fieldLabel: getFieldLabel(focusedFieldObj), fieldCompleted: focusedFieldObj ? !!isFieldFilled(focusedFieldObj, this.getRecipientFields()) : false, onStarted: () => {
866
917
  this.adoptingSignature = true;
867
918
  // this.handleNext();
868
919
  }, onNext: () => this.handleNext(), onPrevious: () => this.handlePrev(), onExit: () => this.handleNext() }));
@@ -903,6 +954,22 @@ const VerdocsSign = class {
903
954
  this.initialId = initResult.id;
904
955
  this.showSpinner = false;
905
956
  this.adoptingSignature = false;
957
+ // If we have a focused field, we should auto-apply the new signature/initials to it
958
+ if (this.focusedField) {
959
+ const field = this.getRecipientFields().find(f => f.name === this.focusedField);
960
+ if (field && !isFieldFilled(field, this.getRecipientFields())) {
961
+ console.log('[SIGN] Auto-applying adopted signature to focused field', field.name);
962
+ if (field.type === 'signature') {
963
+ const updateResult = await updateEnvelopeField(this.endpoint, this.envelopeId, this.roleId, field.name, this.signatureId, false);
964
+ this.updateRecipientFieldValue(field.name, updateResult);
965
+ }
966
+ else if (field.type === 'initial') {
967
+ const updateResult = await updateEnvelopeField(this.endpoint, this.envelopeId, this.roleId, field.name, this.initialId, false);
968
+ this.updateRecipientFieldValue(field.name, updateResult);
969
+ }
970
+ this.checkRecipientFields();
971
+ }
972
+ }
906
973
  }, onExit: () => (this.adoptingSignature = false) })), (this.submitting || this.showSpinner) && (h("verdocs-portal", null, h("div", { class: "spinner-overlay" }, h("verdocs-spinner", null)))), !this.loading && !this.isDone && (h("verdocs-sign-footer", { endpoint: this.endpoint, envelopeId: this.envelopeId, isDone: this.isDone, onAskQuestion: (e) => {
907
974
  askQuestion(this.endpoint, this.envelopeId, this.roleId, { question: e.detail.question })
908
975
  .then(() => VerdocsToast('Your question has been sent.', { style: 'success' }))