@verdocs/web-sdk 1.7.4 → 1.7.7

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 (71) hide show
  1. package/dist/cjs/{VerdocsEndpoint-4b97517d.js → VerdocsEndpoint-efa7c21e.js} +42 -2
  2. package/dist/cjs/VerdocsEndpoint-efa7c21e.js.map +1 -0
  3. package/dist/cjs/verdocs-auth.cjs.entry.js +1 -1
  4. package/dist/cjs/verdocs-dropdown_4.cjs.entry.js +1 -1
  5. package/dist/cjs/verdocs-quick-functions_3.cjs.entry.js +1 -1
  6. package/dist/cjs/verdocs-search.cjs.entry.js +1 -1
  7. package/dist/cjs/verdocs-sign.cjs.entry.js +4 -30
  8. package/dist/cjs/verdocs-sign.cjs.entry.js.map +1 -1
  9. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.css +32 -9
  10. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js +17 -40
  11. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js.map +1 -1
  12. package/dist/components/VerdocsEndpoint.js +41 -1
  13. package/dist/components/VerdocsEndpoint.js.map +1 -1
  14. package/dist/components/verdocs-sign.js +3 -29
  15. package/dist/components/verdocs-sign.js.map +1 -1
  16. package/dist/docs.json +1 -1
  17. package/dist/esm/{VerdocsEndpoint-9353e4a0.js → VerdocsEndpoint-9260b220.js} +42 -2
  18. package/dist/esm/VerdocsEndpoint-9260b220.js.map +1 -0
  19. package/dist/esm/verdocs-auth.entry.js +1 -1
  20. package/dist/esm/verdocs-dropdown_4.entry.js +1 -1
  21. package/dist/esm/verdocs-quick-functions_3.entry.js +1 -1
  22. package/dist/esm/verdocs-search.entry.js +1 -1
  23. package/dist/esm/verdocs-sign.entry.js +4 -30
  24. package/dist/esm/verdocs-sign.entry.js.map +1 -1
  25. package/dist/esm-es5/VerdocsEndpoint-9260b220.js +2 -0
  26. package/dist/esm-es5/VerdocsEndpoint-9260b220.js.map +1 -0
  27. package/dist/esm-es5/verdocs-auth.entry.js +1 -1
  28. package/dist/esm-es5/verdocs-dropdown_4.entry.js +1 -1
  29. package/dist/esm-es5/verdocs-quick-functions_3.entry.js +1 -1
  30. package/dist/esm-es5/verdocs-search.entry.js +1 -1
  31. package/dist/esm-es5/verdocs-sign.entry.js +1 -1
  32. package/dist/esm-es5/verdocs-sign.entry.js.map +1 -1
  33. package/dist/typings.d.ts +4 -0
  34. package/dist/verdocs-web-sdk/{p-b3419893.entry.js → p-051cc391.entry.js} +2 -2
  35. package/dist/verdocs-web-sdk/{p-b3419893.entry.js.map → p-051cc391.entry.js.map} +0 -0
  36. package/dist/verdocs-web-sdk/p-06530c98.system.entry.js +2 -0
  37. package/dist/verdocs-web-sdk/p-06530c98.system.entry.js.map +1 -0
  38. package/dist/verdocs-web-sdk/p-0df2b27c.system.js +1 -1
  39. package/dist/verdocs-web-sdk/{p-4e29c137.entry.js → p-1f82a5b4.entry.js} +2 -2
  40. package/dist/verdocs-web-sdk/{p-4e29c137.entry.js.map → p-1f82a5b4.entry.js.map} +0 -0
  41. package/dist/verdocs-web-sdk/{p-ba477710.system.entry.js → p-2ab7beb1.system.entry.js} +2 -2
  42. package/dist/verdocs-web-sdk/{p-ba477710.system.entry.js.map → p-2ab7beb1.system.entry.js.map} +0 -0
  43. package/dist/verdocs-web-sdk/p-337c2313.entry.js +2 -0
  44. package/dist/verdocs-web-sdk/p-337c2313.entry.js.map +1 -0
  45. package/dist/verdocs-web-sdk/{p-24d7c3b0.entry.js → p-339b3031.entry.js} +2 -2
  46. package/dist/verdocs-web-sdk/{p-24d7c3b0.entry.js.map → p-339b3031.entry.js.map} +0 -0
  47. package/dist/verdocs-web-sdk/{p-c3e77379.system.entry.js → p-7b2c0c20.system.entry.js} +2 -2
  48. package/dist/verdocs-web-sdk/{p-c3e77379.system.entry.js.map → p-7b2c0c20.system.entry.js.map} +0 -0
  49. package/dist/verdocs-web-sdk/{p-9d801657.system.entry.js → p-7d3b43cb.system.entry.js} +2 -2
  50. package/dist/verdocs-web-sdk/{p-9d801657.system.entry.js.map → p-7d3b43cb.system.entry.js.map} +0 -0
  51. package/dist/verdocs-web-sdk/{p-bd2004b7.entry.js → p-8615b75d.entry.js} +2 -2
  52. package/dist/verdocs-web-sdk/{p-bd2004b7.entry.js.map → p-8615b75d.entry.js.map} +0 -0
  53. package/dist/verdocs-web-sdk/{p-1f4039a4.system.entry.js → p-93f92d14.system.entry.js} +2 -2
  54. package/dist/verdocs-web-sdk/{p-1f4039a4.system.entry.js.map → p-93f92d14.system.entry.js.map} +0 -0
  55. package/dist/verdocs-web-sdk/p-a10c13cd.js +2 -0
  56. package/dist/verdocs-web-sdk/p-a10c13cd.js.map +1 -0
  57. package/dist/verdocs-web-sdk/p-d00144e7.system.js +2 -0
  58. package/dist/{esm-es5/VerdocsEndpoint-9353e4a0.js.map → verdocs-web-sdk/p-d00144e7.system.js.map} +1 -1
  59. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  60. package/package.json +2 -2
  61. package/dist/cjs/VerdocsEndpoint-4b97517d.js.map +0 -1
  62. package/dist/esm/VerdocsEndpoint-9353e4a0.js.map +0 -1
  63. package/dist/esm-es5/VerdocsEndpoint-9353e4a0.js +0 -2
  64. package/dist/verdocs-web-sdk/p-07f55897.entry.js +0 -2
  65. package/dist/verdocs-web-sdk/p-07f55897.entry.js.map +0 -1
  66. package/dist/verdocs-web-sdk/p-64127985.system.js +0 -2
  67. package/dist/verdocs-web-sdk/p-64127985.system.js.map +0 -1
  68. package/dist/verdocs-web-sdk/p-72115808.system.entry.js +0 -2
  69. package/dist/verdocs-web-sdk/p-72115808.system.entry.js.map +0 -1
  70. package/dist/verdocs-web-sdk/p-7f162244.js +0 -2
  71. package/dist/verdocs-web-sdk/p-7f162244.js.map +0 -1
@@ -54,7 +54,7 @@ function rescale(r, n) {
54
54
  return r * n;
55
55
  }
56
56
 
57
- const verdocsSignCss = "verdocs-sign{display:-ms-flexbox;display:flex;overflow:hidden;position:relative;min-height:600px;-ms-flex-direction:column;flex-direction:column;-webkit-box-sizing:border-box;box-sizing:border-box;font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif}verdocs-sign div{-webkit-box-sizing:border-box;box-sizing:border-box}verdocs-sign .header{-ms-flex:0 0 115px;flex:0 0 115px;z-index:1000;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);-webkit-transition:all 0.25s;transition:all 0.25s}verdocs-sign .intro{background-color:#ffffff;width:100%;margin:0 auto;padding:20px;max-width:1028px;color:rgba(0, 0, 0, 0.87)}verdocs-sign .toolbar{width:100%;margin:0 auto;padding:0 14px;max-width:1028px;position:relative}verdocs-sign .tools{width:100%;color:#fff;height:56px;padding:4px;display:-ms-flexbox;display:flex;font-size:12px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;background-color:#33354c}verdocs-sign .cover{top:0;left:0;right:0;bottom:0;z-index:999;position:absolute;background:rgba(0, 0, 0, 0.5)}verdocs-sign .document{-ms-flex:1;flex:1;height:100%;position:relative;overflow-y:scroll}verdocs-sign .agree{-ms-flex:1;flex:1;-ms-flex-direction:row;flex-direction:row;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-right:10px}verdocs-sign .agree .intro{display:none}verdocs-sign .agree .header{-ms-flex:0 0 56px;flex:0 0 56px}verdocs-sign .agree .agree-checkbox{background:#ccc;-ms-flex:0 0 20px;flex:0 0 20px;display:-ms-flexbox;display:flex;width:20px;height:20px;border-radius:3px;position:relative;margin:0 10px 0 14px}verdocs-sign .agree .agree-checkbox input[type=checkbox]:checked+label:after{filter:alpha(opacity=100);opacity:1}verdocs-sign .agree .agree-checkbox label{left:2px;top:2px;width:16px;height:16px;cursor:pointer;position:absolute;background:#33354c;-webkit-box-shadow:inset 0 -1px 1px rgba(255, 255, 255, 0.8);box-shadow:inset 0 -1px 1px rgba(255, 255, 255, 0.8)}verdocs-sign .agree .agree-checkbox label .agree-checkbox label:hover::after{filter:alpha(opacity=30);opacity:0.3}verdocs-sign .agree .agree-checkbox label:after{top:2px;left:3px;width:8px;opacity:0;height:5px;content:\"\";position:absolute;background:transparent;filter:alpha(opacity=0);-webkit-transform:rotate(-45deg);transform:rotate(-45deg);border:2px solid #fcfff4;border-top:none;border-right:none}";
57
+ const verdocsSignCss = "verdocs-sign{display:-ms-flexbox;display:flex;overflow:hidden;position:relative;min-height:600px;-ms-flex-direction:column;flex-direction:column;-webkit-box-sizing:border-box;box-sizing:border-box;font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif}verdocs-sign div{-webkit-box-sizing:border-box;box-sizing:border-box}verdocs-sign .header{-ms-flex:0;flex:0;display:-ms-flexbox;display:flex;z-index:1000;-ms-flex-align:center;align-items:center;-webkit-transition:all 0.25s;transition:all 0.25s;-ms-flex-pack:center;justify-content:center;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%;max-width:1028px}verdocs-sign .intro{width:100%;height:60px;display:-ms-flexbox;display:flex;background:#ffffff;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}verdocs-sign .intro .inner{width:100%;color:#111111;padding:0 14px;font-size:20px;font-weight:500;line-height:28px;max-width:1024px}verdocs-sign .toolbar{width:100%;margin:0 auto;padding:0 14px;position:relative}verdocs-sign .tools{width:100%;color:#fff;height:56px;display:-ms-flexbox;display:flex;font-size:12px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;background-color:#33354c}verdocs-sign .cover{top:0;left:0;right:0;bottom:0;z-index:999;position:absolute;background:rgba(0, 0, 0, 0.5)}verdocs-sign .document{-ms-flex:1;flex:1;height:100%;display:-ms-flexbox;display:flex;position:relative;overflow-y:scroll;-ms-flex-align:center;align-items:center;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center}verdocs-sign .document .inner{width:100%;max-width:1028px}verdocs-sign .agree{-ms-flex:1;flex:1;-ms-flex-direction:row;flex-direction:row;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-right:10px}verdocs-sign .agree .intro{display:none}verdocs-sign .agree .header{-ms-flex:0 0 56px;flex:0 0 56px}verdocs-sign .agree .agree-checkbox{background:#ccc;-ms-flex:0 0 20px;flex:0 0 20px;display:-ms-flexbox;display:flex;width:20px;height:20px;border-radius:3px;position:relative;margin:0 10px 0 14px}verdocs-sign .agree .agree-checkbox input[type=checkbox]:checked+label:after{filter:alpha(opacity=100);opacity:1}verdocs-sign .agree .agree-checkbox label{left:2px;top:2px;width:16px;height:16px;cursor:pointer;position:absolute;background:#33354c;-webkit-box-shadow:inset 0 -1px 1px rgba(255, 255, 255, 0.8);box-shadow:inset 0 -1px 1px rgba(255, 255, 255, 0.8)}verdocs-sign .agree .agree-checkbox label .agree-checkbox label:hover::after{filter:alpha(opacity=30);opacity:0.3}verdocs-sign .agree .agree-checkbox label:after{top:2px;left:3px;width:8px;opacity:0;height:5px;content:\"\";position:absolute;background:transparent;filter:alpha(opacity=0);-webkit-transform:rotate(-45deg);transform:rotate(-45deg);border:2px solid #fcfff4;border-top:none;border-right:none}";
58
58
 
59
59
  const VerdocsSign$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
60
60
  constructor() {
@@ -332,32 +332,6 @@ const VerdocsSign$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
332
332
  case 'textbox':
333
333
  el = document.createElement(`verdocs-field-${field.type}`);
334
334
  break;
335
- // case 'textbox':
336
- // el = document.createElement('verdocs-field-textbox');
337
- // el.setAttribute('field', field);
338
- // // el.setAttribute('value', result || '');
339
- // // el.setAttribute('placeholder', placeholder || '');
340
- // el.addEventListener('fieldChange', e => this.handleFieldChange(field, e));
341
- // break;
342
- // case 'textarea':
343
- // el = document.createElement('verdocs-field-textarea');
344
- // el.setAttribute('value', result || '');
345
- // el.setAttribute('placeholder', placeholder || '');
346
- // break;
347
- // case 'date':
348
- // el = document.createElement('verdocs-field-date');
349
- // el.setAttribute('value', result || '');
350
- // el.setAttribute('placeholder', placeholder || '');
351
- // break;
352
- // case 'dropdown':
353
- // el = document.createElement('verdocs-field-dropdown');
354
- // el.setAttribute('options', options);
355
- // el.setAttribute('value', value);
356
- // break;
357
- // case 'checkbox':
358
- // el = document.createElement('verdocs-field-checkbox');
359
- // el.setAttribute('value', result || '');
360
- // break;
361
335
  case 'checkbox_group':
362
336
  // el = document.createElement('verdocs-field-signature');
363
337
  // el.setAttribute('value', base64);
@@ -406,10 +380,10 @@ const VerdocsSign$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
406
380
  { id: 'print', label: 'Print Without Signing' },
407
381
  { id: 'download', label: 'Download' },
408
382
  ];
409
- return (h(Host, { class: { storybook: !!(window === null || window === void 0 ? void 0 : window['STORYBOOK_ENV']), agreed: (_a = this.recipient) === null || _a === void 0 ? void 0 : _a.agreed } }, h("div", { class: "header" }, h("div", { class: "intro" }, "Please review and act on these documents."), h("div", { class: "toolbar" }, h("div", { class: "tools" }, h("verdocs-dropdown", { options: menuOptions, onOptionSelected: e => this.handleOptionSelected(e) }), !((_b = this.recipient) === null || _b === void 0 ? void 0 : _b.agreed) ? (h("div", { class: "agree" }, h("div", { class: "agree-checkbox" }, h("input", { type: "checkbox", value: "None", id: "agree-checkbox-element", name: "agree", onChange: () => this.handleClickAgree() }), h("label", { htmlFor: "agree-checkbox-element" })), h("span", null, "I agree to use electronic records and signatures."))) : (h("div", { style: { flex: '1' } })), h("verdocs-button", { size: "small", label: this.nextButtonLabel, disabled: !((_c = this.recipient) === null || _c === void 0 ? void 0 : _c.agreed), onClick: () => this.handleNext() })))), !((_d = this.recipient) === null || _d === void 0 ? void 0 : _d.agreed) ? h("div", { class: "cover" }) : h("div", { style: { display: 'none' } }), h("div", { class: "document" }, this.pdfUrl ? (h("verdocs-view", { source: this.pdfUrl, endpoint: this.endpoint, onPageRendered: e => this.handlePageRendered(e), pageLayers: [
383
+ return (h(Host, { class: { storybook: !!(window === null || window === void 0 ? void 0 : window['STORYBOOK_ENV']), agreed: (_a = this.recipient) === null || _a === void 0 ? void 0 : _a.agreed } }, h("div", { class: "intro" }, h("div", { class: "inner" }, "Please review and act on these documents.")), h("div", { class: "header" }, h("div", { class: "inner" }, h("div", { class: "toolbar" }, h("div", { class: "tools" }, h("verdocs-dropdown", { options: menuOptions, onOptionSelected: e => this.handleOptionSelected(e) }), !((_b = this.recipient) === null || _b === void 0 ? void 0 : _b.agreed) ? (h("div", { class: "agree" }, h("div", { class: "agree-checkbox" }, h("input", { type: "checkbox", value: "None", id: "agree-checkbox-element", name: "agree", onChange: () => this.handleClickAgree() }), h("label", { htmlFor: "agree-checkbox-element" })), h("span", null, "I agree to use electronic records and signatures."))) : (h("div", { style: { flex: '1' } })), h("verdocs-button", { size: "small", label: this.nextButtonLabel, disabled: !((_c = this.recipient) === null || _c === void 0 ? void 0 : _c.agreed), onClick: () => this.handleNext() }))))), !((_d = this.recipient) === null || _d === void 0 ? void 0 : _d.agreed) ? h("div", { class: "cover" }) : h("div", { style: { display: 'none' } }), h("div", { class: "document" }, this.pdfUrl ? (h("div", { class: "inner" }, h("verdocs-view", { source: this.pdfUrl, endpoint: this.endpoint, onPageRendered: e => this.handlePageRendered(e), pageLayers: [
410
384
  { name: 'page', type: 'canvas' },
411
385
  { name: 'controls', type: 'div' },
412
- ] })) : (h("verdocs-loader", null)))));
386
+ ] }))) : (h("verdocs-loader", null)))));
413
387
  }
414
388
  static get style() { return verdocsSignCss; }
415
389
  }, [0, "verdocs-sign", {
@@ -1 +1 @@
1
- {"file":"verdocs-sign.js","mappings":";;;;;;;;;;AA00CA,IAAI,SAAS,GAAG,IAAI,MAAM,CAAC,kBAAkB,CAAC,CAAC;AACxC,SAAS,mBAAmB,CAAC,IAAI,EAAE;AAC1C,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,EAAE,IAAI,IAAI,KAAK,IAAI,CAAC;AAC1H;;ACzzCA,IAAI,UAAU,GAAG,wJAAwJ,CAAC;AACnK,IAAI,YAAY,GAAG,UAAU,KAAK,EAAE,EAAE,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;AACvE,IAAI,YAAY,GAAG,UAAU,KAAK,EAAE,EAAE,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC,EAAE;;ACtBjF;AACA;AACA;AAyBA;AACA;AACA;AACO,SAAS,OAAO,CAAC,SAAS,EAAE;AACnC,IAAI,QAAQ,SAAS,GAAG,EAAE;AAC1B,QAAQ,KAAK,CAAC;AACd,YAAY,OAAO,SAAS,KAAK,CAAC,GAAG,wBAAwB,GAAG,0BAA0B,CAAC;AAC3F,QAAQ,KAAK,CAAC;AACd,YAAY,OAAO,wBAAwB,CAAC;AAC5C,QAAQ,KAAK,CAAC;AACd,YAAY,OAAO,wBAAwB,CAAC;AAC5C,QAAQ,KAAK,CAAC;AACd,YAAY,OAAO,0BAA0B,CAAC;AAC9C,QAAQ,KAAK,CAAC;AACd,YAAY,OAAO,0BAA0B,CAAC;AAC9C,QAAQ,KAAK,CAAC;AACd,YAAY,OAAO,yBAAyB,CAAC;AAC7C,QAAQ,KAAK,CAAC;AACd,YAAY,OAAO,0BAA0B,CAAC;AAC9C,QAAQ,KAAK,CAAC;AACd,YAAY,OAAO,wBAAwB,CAAC;AAC5C,QAAQ,KAAK,CAAC;AACd,YAAY,OAAO,0BAA0B,CAAC;AAC9C,QAAQ,KAAK,CAAC;AACd,YAAY,OAAO,wBAAwB,CAAC;AAC5C,QAAQ;AACR,YAAY,OAAO,0BAA0B,CAAC;AAC9C,KAAK;AACL;;AClCO,SAAS,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE;AAC9B,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC;AACjB;;ACvBA,MAAM,cAAc,GAAG,6+EAA6+E;;MCuBv/EA,aAAW;EALxB;;;;;;IASU,aAAQ,GAAoB,eAAe,CAAC,UAAU,EAAE,CAAC;;;;;IAMzD,eAAU,GAAkB,IAAI,CAAC;;;;;IAMjC,WAAM,GAAkB,IAAI,CAAC;;;;;IAM7B,eAAU,GAAkB,IAAI,CAAC;IAEhC,cAAS,GAAsB,IAAI,CAAC;IAEpC,gBAAW,GAAG,IAAI,CAAC;IACnB,WAAM,GAAG,IAAI,CAAC;IACd,mBAAc,GAAW,CAAC,CAAC,CAAC;IAC5B,aAAQ,GAAqB,IAAI,CAAC;IAClC,WAAM,GAAqB,EAAE,CAAC;IAE9B,iBAAY,GAAG,KAAK,CAAC;IAErB,oBAAe,GAAG,OAAO,CAAC;IAE1B,iBAAY,GAAG,EAAE,CAAC;GAwa5B;EAtaC,MAAM,gBAAgB;IACpB,IAAI;MACF,OAAO,CAAC,GAAG,CAAC,qCAAqC,IAAI,CAAC,UAAU,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;MACzF,MAAM,EAAC,OAAO,EAAE,SAAS,EAAE,WAAW,EAAC,GAAG,MAAMC,iBAA2B,CAAC,IAAI,CAAC,QAAQ,EAAE;QACzF,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,UAAU,EAAE,IAAI,CAAC,UAAU;OAC5B,CAAC,CAAC;MAEH,OAAO,CAAC,GAAG,CAAC,8BAA8B,OAAO,CAAC,KAAK,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;MAEnF,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;MAC3B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;MAC/B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;MAEpC,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;QACzB,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC;OAC/B;MAED,MAAM,QAAQ,GAAG,MAAMC,WAAqB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;MAC7E,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;MACzB,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,QAAQ,CAAC,CAAC;MAEjD,IAAI,CAAC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,cAAc,IAAI,CAAC,UAAU,uBAAuB,QAAQ,CAAC,oBAAoB,YAAY,CAAC;MAEzI,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC;MAC1G,IAAI,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,EAAE;QAC5B,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;OAC/E;MAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,cAAc,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC;MACzF,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;;;;KAK3C;IAAC,OAAO,CAAC,EAAE;MACV,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,CAAC,CAAC,CAAC;KAC9C;GACF;EAED,gBAAgB;IACd,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC7B,qBAAqB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC,CAAC;OACzF,IAAI,CAAC,CAAC;MACL,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;MAChC,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC;MAC9B,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;KACpB,CAAC;OACD,KAAK,CAAC,CAAC;MACN,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;KAClC,CAAC,CAAC;GACN;EAED,MAAM,OAAO;IACX,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACzF,MAAM,IAAI,GAAG,MAAMC,eAAyB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;;;IAIjH,IAAI,GAAG,GAAG,IAAI,cAAc,EAAE,CAAC;IAC/B,GAAG,CAAC,YAAY,GAAG,MAAM,CAAC;IAC1B,GAAG,CAAC,MAAM,GAAG;MACX,IAAI,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;MACpC,CAAC,CAAC,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;MAClD,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC;MACtB,CAAC,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;MACzB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;MAC7B,CAAC,CAAC,KAAK,EAAE,CAAC;MACV,CAAC,CAAC,MAAM,EAAE,CAAC;KACZ,CAAC;IAEF,MAAM,GAAG,GAAG,+BAA+B,IAAI,EAAE,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACpC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,+BAA+B,IAAI,EAAE,CAAC,CAAC;IACvD,GAAG,CAAC,IAAI,EAAE,CAAC;GACZ;EAED,MAAM,oBAAoB,CAAC,CAAC;IAC1B,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE;MACjB,KAAK,OAAO;;QAEV,IAAI,EAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,eAAe,CAAC,CAAA,EAAE;UAC9B,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;SAC7C;QACD,MAAM;MACR,KAAK,OAAO;QACV,MAAM;MACR,KAAK,SAAS;QACZ,MAAM;MACR,KAAK,OAAO;QACV,MAAM;MACR,KAAK,UAAU;QACb,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,SAAQ,CAAC,CAAC;QAC/B,MAAM;KACT;GACF;EAED,MAAM,iBAAiB,CAAC,KAAqB,EAAE,CAAM,EAAE,QAAiB;IACtE,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;IAC5C,QAAQ,KAAK,CAAC,IAAI;MAChB,KAAK,SAAS;QACZC,mBAA6B,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,EAAE,EAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAC,CAAC;WAC1G,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;WAC1C,KAAK,CAAC,CAAC;;UACN,IAAI,CAAA,MAAA,CAAC,CAAC,QAAQ,0CAAE,MAAM,MAAK,GAAG,IAAI,CAAA,MAAA,MAAA,CAAC,CAAC,QAAQ,0CAAE,IAAI,0CAAE,KAAK,MAAK,aAAa,EAAE;YAC3E,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;WAC5B;UACD,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;SAClC,CAAC,CAAC;QACL,MAAM;MAER,KAAK,gBAAgB;QACnBA,mBAA6B,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,EAAE,EAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAC,OAAO,EAAE,CAAC,EAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAC,CAAC,EAAC,EAAC,CAAC;WAChJ,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;WAC1C,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC;QAChD,MAAM;MAER,KAAK,oBAAoB;QACvB,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,EAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,KAAK,MAAM,CAAC,EAAE,EAAC,CAAC,CAAC,CAAC;QAC1GA,mBAA6B,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,EAAE,EAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAC,OAAO,EAAC,EAAC,CAAC;WAC3G,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;WAC1C,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC;QAChD,MAAM;MAER,KAAK,UAAU;QACbA,mBAA6B,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,EAAE,EAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAC,CAAC;WAC1G,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;WAC1C,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC;QAChD,MAAM;MAER,KAAK,SAAS;QACZ,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM;MAER,KAAK,WAAW;QACd,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QACvC,MAAM;KACT;GACF;EAED,yBAAyB,CAAC,IAAuB,EAAE,KAAqB,EAAE,MAAW,EAAE,KAAa;IAClG,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAE9C,MAAM,KAAK,GAAG;MACZ,IAAI,EAAE,GAAG,IAAI,IAAI;MACjB,MAAM,EAAE,GAAG,MAAM,IAAI;MACrB,QAAQ,EAAE,UAAU;MACpB,SAAS,EAAE,SAAS,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,GAAG;MAClD,eAAe,EAAE,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC;KACvC,CAAC;IAET,OAAO,8BAAwB,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,GAAI,CAAC;GACvJ;EAED,sBAAsB,CAAC,IAAuB,EAAE,KAAqB,EAAE,MAAW,EAAE,KAAa;IAC/F,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAE9C,MAAM,KAAK,GAAG;MACZ,IAAI,EAAE,GAAG,IAAI,IAAI;MACjB,MAAM,EAAE,GAAG,MAAM,IAAI;MACrB,QAAQ,EAAE,UAAU;MACpB,SAAS,EAAE,SAAS,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,GAAG;MAClD,eAAe,EAAE,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC;KACvC,CAAC;IAET,QACE,kCACE,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,MAAM,CAAC,EAAE,EAChB,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,OAAO,EAAE,MAAM,CAAC,QAAQ,EACxB,aAAa,EAAE,CAAC,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,GAC/D,EACF;GACH;EAED,YAAY,CAAC,KAAqB;;IAChC,QAAQ,KAAK,CAAC,IAAI;MAChB,KAAK,SAAS;QACZ,QAAQ,CAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,SAAS,KAAI,EAAE;UACrC,KAAK,OAAO;YACV,OAAO,YAAY,CAAC,CAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,MAAM,KAAI,EAAE,CAAC,CAAC;UACpD,KAAK,OAAO;YACV,OAAO,YAAY,CAAC,CAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,MAAM,KAAI,EAAE,CAAC,CAAC;UACpD;YACE,OAAO,CAAC,EAAC,MAAA,KAAK,CAAC,QAAQ,0CAAE,MAAM,CAAA,CAAC;SACnC;MAEH,KAAK,WAAW,CAAC;MACjB,KAAK,SAAS,CAAC;MACf,KAAK,UAAU,CAAC;MAChB,KAAK,MAAM,CAAC;MACZ,KAAK,YAAY;QACf,OAAO,CAAC,EAAC,MAAA,KAAK,CAAC,QAAQ,0CAAE,MAAM,CAAA,CAAC;MAClC,KAAK,UAAU;QACb,OAAO,CAAC,EAAC,MAAA,KAAK,CAAC,QAAQ,0CAAE,KAAK,CAAA,CAAC;MACjC,KAAK,gBAAgB;QACnB,MAAM,OAAO,GAAG,CAAC,CAAA,MAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,OAAO,0CAAE,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,KAAI,EAAE,EAAE,MAAM,CAAC;QACzF,OAAO,OAAO,KAAK,CAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,eAAe,KAAI,CAAC,CAAC,IAAI,OAAO,KAAK,CAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,eAAe,KAAI,GAAG,CAAC,CAAC;MAClH,KAAK,oBAAoB;QACvB,OAAO,CAAC,CAAA,MAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,OAAO,0CAAE,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAI,EAAE,EAAE,MAAM,GAAG,CAAC,CAAC;;;;;;MAMvF;QACE,OAAO,KAAK,CAAC;KAChB;GACF;;;;;;EAQD,UAAU,CAAC,KAAqB;IAC9B,OAAO,mBAAmB,KAAK,CAAC,IAAI,EAAE,CAAC;GACxC;EAED,UAAU;;IAER,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAC;IAE/C,MAAM,YAAY,GAAG,cAAc,CAAC,SAAS,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,YAAY,CAAC,CAAC;IACzF,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;IAE3C,IAAI,gBAAgB,GAAG,YAAY,GAAG,CAAC,CAAC;IACxC,IAAI,gBAAgB,IAAI,cAAc,CAAC,MAAM,EAAE;MAC7C,gBAAgB,GAAG,CAAC,CAAC;KACtB;IAED,MAAM,iBAAiB,GAAG,cAAc,CAAC,gBAAgB,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,CAAC;IAEtD,IAAI,iBAAiB,EAAE;MACrB,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;MAC9C,MAAM,EAAE,GAAG,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAQ,CAAC;MAC9C,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;MAChC,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,UAAU,EAAE,CAAC;MACjB,IAAI,CAAC,YAAY,GAAG,iBAAiB,CAAC,IAAI,CAAC;KAC5C;GACF;EAED,gBAAgB,CAAC,EAAe,EAAE,KAAqB,EAAE,OAA0B;IACjF,MAAM,EAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,GAAG,GAAG,EAAE,MAAM,GAAG,EAAE,EAAC,GAAG,KAAK,CAAC,QAAQ,CAAC;IAEhE,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,KAAK,IAAI,CAAC;IAC9B,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC;IAChC,EAAE,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC;IAC/B,EAAE,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC;IAClD,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC;IACpD,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC;IACnE,EAAE,CAAC,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;GAC1E;EAED,WAAW,CAAC,KAAqB,EAAE,OAA0B;IAC3D,MAAM,WAAW,GAAG,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC,CAAC;IAC/E,IAAI,CAAC,WAAW,EAAE;MAChB,OAAO;KACR;IAED,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAElC,MAAM,aAAa,GAAG,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IAElD,IAAI,aAAa,EAAE;MACjB,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;MACrD,OAAO;KACR;IAED,IAAI,EAAE,CAAC;IACP,QAAQ,KAAK,CAAC,IAAI;MAChB,KAAK,YAAY,CAAC;MAClB,KAAK,UAAU,CAAC;MAChB,KAAK,MAAM,CAAC;MACZ,KAAK,UAAU,CAAC;MAChB,KAAK,SAAS,CAAC;MACf,KAAK,SAAS,CAAC;MACf,KAAK,WAAW,CAAC;MACjB,KAAK,UAAU,CAAC;MAChB,KAAK,SAAS;QACZ,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,iBAAiB,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QAC3D,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;MA2BR,KAAK,gBAAgB;;;QAGnB,MAAM;;MAER,KAAK,oBAAoB;;;QAGvB,MAAM;;;;;;;;;MASR;QACE,OAAO,CAAC,GAAG,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAC;KAChE;IAED,IAAI,EAAE,EAAE;MACN,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC;MACjB,EAAE,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;MAC9B,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;;MAE1B,EAAE,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;MAC1E,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;MAC1C,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;KAC7B;GACF;EAED,kBAAkB,CAAC,CAAC;IAClB,MAAM,QAAQ,GAAG,CAAC,CAAC,MAA0B,CAAC;IAC9C,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC;IAE9C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC5F,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC;IAC7C,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;;;GAGzE;EAED,MAAM;;IACJ,MAAM,WAAW,GAAG;MAClB,EAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAC;MACpC,EAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,oBAAoB,EAAE,QAAQ,EAAE,IAAI,EAAC;MAC1D,EAAC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,iBAAiB,EAAC;MACzC,EAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,uBAAuB,EAAC;MAC7C,EAAC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAC;KACpC,CAAC;IAEF,QACE,EAAC,IAAI,IAAC,KAAK,EAAE,EAAC,SAAS,EAAE,CAAC,EAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,eAAe,CAAC,CAAA,EAAE,MAAM,EAAE,MAAA,IAAI,CAAC,SAAS,0CAAE,MAAM,EAAC,IACnF,WAAK,KAAK,EAAC,QAAQ,IACjB,WAAK,KAAK,EAAC,OAAO,gDAAgD,EAClE,WAAK,KAAK,EAAC,SAAS,IAClB,WAAK,KAAK,EAAC,OAAO,IAChB,wBAAkB,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC,IAAI,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,GAAI,EAE9F,EAAC,MAAA,IAAI,CAAC,SAAS,0CAAE,MAAM,CAAA,IACtB,WAAK,KAAK,EAAC,OAAO,IAChB,WAAK,KAAK,EAAC,gBAAgB,IACzB,aAAO,IAAI,EAAC,UAAU,EAAC,KAAK,EAAC,MAAM,EAAC,EAAE,EAAC,wBAAwB,EAAC,IAAI,EAAC,OAAO,EAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,gBAAgB,EAAE,GAAI,EACxH,aAAO,OAAO,EAAC,wBAAwB,GAAG,CACtC,EACN,oEAA8D,CAC1D,KAEN,WAAK,KAAK,EAAE,EAAC,IAAI,EAAE,GAAG,EAAC,GAAI,CAC5B,EACD,sBAAgB,IAAI,EAAC,OAAO,EAAC,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,QAAQ,EAAE,EAAC,MAAA,IAAI,CAAC,SAAS,0CAAE,MAAM,CAAA,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,UAAU,EAAE,GAAI,CAC7H,CACF,CACF,EAEL,EAAC,MAAA,IAAI,CAAC,SAAS,0CAAE,MAAM,CAAA,GAAG,WAAK,KAAK,EAAC,OAAO,GAAG,GAAG,WAAK,KAAK,EAAE,EAAC,OAAO,EAAE,MAAM,EAAC,GAAI,EAEpF,WAAK,KAAK,EAAC,UAAU,IAClB,IAAI,CAAC,MAAM,IACV,oBACE,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,cAAc,EAAE,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAC/C,UAAU,EAAE;QACV,EAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAC;QAC9B,EAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAC;OAChC,GACD,KAEF,yBAAkB,CACnB,CAWG,CACD,EACP;GACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["VerdocsSign","Documents.getSigningSession","Documents.getDocument","Documents.getDocumentFile","Documents.updateDocumentField"],"sources":["./node_modules/@verdocs/js-sdk/Utils/Locales.js","./node_modules/@verdocs/js-sdk/Templates/Validators.js","./node_modules/@verdocs/js-sdk/Utils/Colors.js","./node_modules/@verdocs/js-sdk/Utils/Fields.js","./src/components/embeds/verdocs-sign/verdocs-sign.scss?tag=verdocs-sign","./src/components/embeds/verdocs-sign/verdocs-sign.tsx"],"sourcesContent":["export var Countries = [\n {\n code: '+7 840',\n name: 'Abkhazia',\n value: '+7',\n },\n {\n code: '+93',\n name: 'Afghanistan',\n value: '+93',\n },\n {\n code: '+355',\n name: 'Albania',\n value: '+355',\n },\n {\n code: '+213',\n name: 'Algeria',\n value: '+213',\n },\n {\n code: '+1',\n name: 'American Samoa',\n value: '+1',\n },\n {\n code: '+376',\n name: 'Andorra',\n value: '+376',\n },\n {\n code: '+244',\n name: 'Angola',\n value: '+244',\n },\n {\n code: '+1',\n name: 'Anguilla',\n value: '+1',\n },\n {\n code: '+1',\n name: 'Antigua and Barbuda',\n value: '+1',\n },\n {\n code: '+54',\n name: 'Argentina',\n value: '+54',\n },\n {\n code: '+374',\n name: 'Armenia',\n value: '+374',\n },\n {\n code: '+297',\n name: 'Aruba',\n value: '+297',\n },\n {\n code: '+247',\n name: 'Ascension',\n value: '+247',\n },\n {\n code: '+61',\n name: 'Australia',\n value: '+61',\n },\n {\n code: '+672',\n name: 'Australian External Territories',\n value: '+672',\n },\n {\n code: '+43',\n name: 'Austria',\n value: '+43',\n },\n {\n code: '+994',\n name: 'Azerbaijan',\n value: '+994',\n },\n {\n code: '+1',\n name: 'Bahamas',\n value: '+1',\n },\n {\n code: '+973',\n name: 'Bahrain',\n value: '+973',\n },\n {\n code: '+880',\n name: 'Bangladesh',\n value: '+880',\n },\n {\n code: '+1',\n name: 'Barbados',\n value: '+1',\n },\n {\n code: '+1',\n name: 'Barbuda',\n value: '+1',\n },\n {\n code: '+375',\n name: 'Belarus',\n value: '+375',\n },\n {\n code: '+32',\n name: 'Belgium',\n value: '+32',\n },\n {\n code: '+501',\n name: 'Belize',\n value: '+501',\n },\n {\n code: '+229',\n name: 'Benin',\n value: '+229',\n },\n {\n code: '+1',\n name: 'Bermuda',\n value: '+1',\n },\n {\n code: '+975',\n name: 'Bhutan',\n value: '+975',\n },\n {\n code: '+591',\n name: 'Bolivia',\n value: '+591',\n },\n {\n code: '+387',\n name: 'Bosnia and Herzegovina',\n value: '+387',\n },\n {\n code: '+267',\n name: 'Botswana',\n value: '+267',\n },\n {\n code: '+55',\n name: 'Brazil',\n value: '+55',\n },\n {\n code: '+246',\n name: 'British Indian Ocean Territory',\n value: '+246',\n },\n {\n code: '+1',\n name: 'British Virgin Islands',\n value: '+1',\n },\n {\n code: '+673',\n name: 'Brunei',\n value: '+673',\n },\n {\n code: '+359',\n name: 'Bulgaria',\n value: '+359',\n },\n {\n code: '+226',\n name: 'Burkina Faso',\n value: '+226',\n },\n {\n code: '+257',\n name: 'Burundi',\n value: '+257',\n },\n {\n code: '+855',\n name: 'Cambodia',\n value: '+855',\n },\n {\n code: '+237',\n name: 'Cameroon',\n value: '+237',\n },\n {\n code: '+1',\n name: 'Canada',\n value: '+1',\n },\n {\n code: '+238',\n name: 'Cape Verde',\n value: '+238',\n },\n {\n code: '+1',\n name: 'Cayman Islands',\n value: '+1',\n },\n {\n code: '+236',\n name: 'Central African Republic',\n value: '+236',\n },\n {\n code: '+235',\n name: 'Chad',\n value: '+235',\n },\n {\n code: '+56',\n name: 'Chile',\n value: '+56',\n },\n {\n code: '+86',\n name: 'China',\n value: '+86',\n },\n {\n code: '+61',\n name: 'Christmas Island',\n value: '+61',\n },\n {\n code: '+61',\n name: 'Cocos-Keeling Islands',\n value: '+61',\n },\n {\n code: '+57',\n name: 'Colombia',\n value: '+57',\n },\n {\n code: '+269',\n name: 'Comoros',\n value: '+269',\n },\n {\n code: '+242',\n name: 'Congo',\n value: '+242',\n },\n {\n code: '+243',\n name: 'Congo, Dem. Rep. of (Zaire)',\n value: '+243',\n },\n {\n code: '+682',\n name: 'Cook Islands',\n value: '+682',\n },\n {\n code: '+506',\n name: 'Costa Rica',\n value: '+506',\n },\n {\n code: '+385',\n name: 'Croatia',\n value: '+385',\n },\n {\n code: '+53',\n name: 'Cuba',\n value: '+53',\n },\n {\n code: '+599',\n name: 'Curacao',\n value: '+599',\n },\n {\n code: '+537',\n name: 'Cyprus',\n value: '+537',\n },\n {\n code: '+420',\n name: 'Czech Republic',\n value: '+420',\n },\n {\n code: '+45',\n name: 'Denmark',\n value: '+45',\n },\n {\n code: '+246',\n name: 'Diego Garcia',\n value: '+246',\n },\n {\n code: '+253',\n name: 'Djibouti',\n value: '+253',\n },\n {\n code: '+1',\n name: 'Dominica',\n value: '+1',\n },\n {\n code: '+1',\n name: 'Dominican Republic',\n value: '+1',\n },\n {\n code: '+670',\n name: 'East Timor',\n value: '+670',\n },\n {\n code: '+56',\n name: 'Easter Island',\n value: '+56',\n },\n {\n code: '+593',\n name: 'Ecuador',\n value: '+593',\n },\n {\n code: '+20',\n name: 'Egypt',\n value: '+20',\n },\n {\n code: '+503',\n name: 'El Salvador',\n value: '+503',\n },\n {\n code: '+240',\n name: 'Equatorial Guinea',\n value: '+240',\n },\n {\n code: '+291',\n name: 'Eritrea',\n value: '+291',\n },\n {\n code: '+372',\n name: 'Estonia',\n value: '+372',\n },\n {\n code: '+251',\n name: 'Ethiopia',\n value: '+251',\n },\n {\n code: '+500',\n name: 'Falkland Islands',\n value: '+500',\n },\n {\n code: '+298',\n name: 'Faroe Islands',\n value: '+298',\n },\n {\n code: '+679',\n name: 'Fiji',\n value: '+679',\n },\n {\n code: '+358',\n name: 'Finland',\n value: '+358',\n },\n {\n code: '+33',\n name: 'France',\n value: '+33',\n },\n {\n code: '+596',\n name: 'Martinique',\n value: '+596',\n },\n {\n code: '+594',\n name: 'French Guiana',\n value: '+594',\n },\n {\n code: '+689',\n name: 'French Polynesia',\n value: '+689',\n },\n {\n code: '+241',\n name: 'Gabon',\n value: '+241',\n },\n {\n code: '+220',\n name: 'Gambia',\n value: '+220',\n },\n {\n code: '+995',\n name: 'Georgia',\n value: '+995',\n },\n {\n code: '+49',\n name: 'Germany',\n value: '+49',\n },\n {\n code: '+233',\n name: 'Ghana',\n value: '+233',\n },\n {\n code: '+350',\n name: 'Gibraltar',\n value: '+350',\n },\n {\n code: '+30',\n name: 'Greece',\n value: '+30',\n },\n {\n code: '+299',\n name: 'Greenland',\n value: '+299',\n },\n {\n code: '+1',\n name: 'Grenada',\n value: '+1',\n },\n {\n code: '+590',\n name: 'Guadeloupe',\n value: '+590',\n },\n {\n code: '+1',\n name: 'Guam',\n value: '+1',\n },\n {\n code: '+502',\n name: 'Guatemala',\n value: '+502',\n },\n {\n code: '+224',\n name: 'Guinea',\n value: '+224',\n },\n {\n code: '+245',\n name: 'Guinea-Bissau',\n value: '+245',\n },\n {\n code: '+595',\n name: 'Guyana',\n value: '+595',\n },\n {\n code: '+509',\n name: 'Haiti',\n value: '+509',\n },\n {\n code: '+504',\n name: 'Honduras',\n value: '+504',\n },\n {\n code: '+852',\n name: 'Hong Kong SAR China',\n value: '+852',\n },\n {\n code: '+36',\n name: 'Hungary',\n value: '+36',\n },\n {\n code: '+354',\n name: 'Iceland',\n value: '+354',\n },\n {\n code: '+91',\n name: 'India',\n value: '+91',\n },\n {\n code: '+62',\n name: 'Indonesia',\n value: '+62',\n },\n {\n code: '+98',\n name: 'Iran',\n value: '+98',\n },\n {\n code: '+964',\n name: 'Iraq',\n value: '+964',\n },\n {\n code: '+353',\n name: 'Ireland',\n value: '+353',\n },\n {\n code: '+972',\n name: 'Israel',\n value: '+972',\n },\n {\n code: '+39',\n name: 'Italy',\n value: '+39',\n },\n {\n code: '+225',\n name: 'Ivory Coast',\n value: '+225',\n },\n {\n code: '+1',\n name: 'Jamaica',\n value: '+1',\n },\n {\n code: '+81',\n name: 'Japan',\n value: '+81',\n },\n {\n code: '+962',\n name: 'Jordan',\n value: '+962',\n },\n {\n code: '+77',\n name: 'Kazakhstan',\n value: '+7',\n },\n {\n code: '+254',\n name: 'Kenya',\n value: '+254',\n },\n {\n code: '+686',\n name: 'Kiribati',\n value: '+686',\n },\n {\n code: '+965',\n name: 'Kuwait',\n value: '+965',\n },\n {\n code: '+996',\n name: 'Kyrgyzstan',\n value: '+996',\n },\n {\n code: '+856',\n name: 'Laos',\n value: '+856',\n },\n {\n code: '+371',\n name: 'Latvia',\n value: '+371',\n },\n {\n code: '+961',\n name: 'Lebanon',\n value: '+961',\n },\n {\n code: '+266',\n name: 'Lesotho',\n value: '+266',\n },\n {\n code: '+231',\n name: 'Liberia',\n value: '+231',\n },\n {\n code: '+218',\n name: 'Libya',\n value: '+218',\n },\n {\n code: '+423',\n name: 'Liechtenstein',\n value: '+423',\n },\n {\n code: '+370',\n name: 'Lithuania',\n value: '+370',\n },\n {\n code: '+352',\n name: 'Luxembourg',\n value: '+352',\n },\n {\n code: '+853',\n name: 'Macau SAR China',\n value: '+853',\n },\n {\n code: '+389',\n name: 'Macedonia',\n value: '+389',\n },\n {\n code: '+261',\n name: 'Madagascar',\n value: '+261',\n },\n {\n code: '+265',\n name: 'Malawi',\n value: '+265',\n },\n {\n code: '+60',\n name: 'Malaysia',\n value: '+60',\n },\n {\n code: '+960',\n name: 'Maldives',\n value: '+960',\n },\n {\n code: '+223',\n name: 'Mali',\n value: '+223',\n },\n {\n code: '+356',\n name: 'Malta',\n value: '+356',\n },\n {\n code: '+692',\n name: 'Marshall Islands',\n value: '+692',\n },\n {\n code: '+596',\n name: 'Martinique',\n value: '+596',\n },\n {\n code: '+222',\n name: 'Mauritania',\n value: '+222',\n },\n {\n code: '+230',\n name: 'Mauritius',\n value: '+230',\n },\n {\n code: '+262',\n name: 'Mayotte or Réunion',\n value: '+262',\n },\n {\n code: '+52',\n name: 'Mexico',\n value: '+52',\n },\n {\n code: '+691',\n name: 'Micronesia',\n value: '+691',\n },\n {\n code: '+1',\n name: 'Midway Island',\n value: '+1',\n },\n {\n code: '+373',\n name: 'Moldova',\n value: '+373',\n },\n {\n code: '+377',\n name: 'Monaco',\n value: '+377',\n },\n {\n code: '+976',\n name: 'Mongolia',\n value: '+976',\n },\n {\n code: '+382',\n name: 'Montenegro',\n value: '+382',\n },\n {\n code: '+1',\n name: 'Montserrat',\n value: '+1',\n },\n {\n code: '+212',\n name: 'Morocco',\n value: '+212',\n },\n {\n code: '+95',\n name: 'Myanmar',\n value: '+95',\n },\n {\n code: '+264',\n name: 'Namibia',\n value: '+264',\n },\n {\n code: '+674',\n name: 'Nauru',\n value: '+674',\n },\n {\n code: '+977',\n name: 'Nepal',\n value: '+977',\n },\n {\n code: '+31',\n name: 'Netherlands',\n value: '+31',\n },\n {\n code: '+599',\n name: 'Netherlands Antilles',\n value: '+599',\n },\n {\n code: '+1',\n name: 'Nevis',\n value: '+1',\n },\n {\n code: '+687',\n name: 'New Caledonia',\n value: '+687',\n },\n {\n code: '+64',\n name: 'New Zealand',\n value: '+64',\n },\n {\n code: '+505',\n name: 'Nicaragua',\n value: '+505',\n },\n {\n code: '+227',\n name: 'Niger',\n value: '+227',\n },\n {\n code: '+234',\n name: 'Nigeria',\n value: '+234',\n },\n {\n code: '+683',\n name: 'Niue',\n value: '+683',\n },\n {\n code: '+672',\n name: 'Norfolk Island',\n value: '+672',\n },\n {\n code: '+850',\n name: 'North Korea',\n value: '+850',\n },\n {\n code: '+1',\n name: 'Northern Mariana Islands',\n value: '+1',\n },\n {\n code: '+47',\n name: 'Norway',\n value: '+47',\n },\n {\n code: '+968',\n name: 'Oman',\n value: '+968',\n },\n {\n code: '+92',\n name: 'Pakistan',\n value: '+92',\n },\n {\n code: '+680',\n name: 'Palau',\n value: '+680',\n },\n {\n code: '+970',\n name: 'Palestinian Territory',\n value: '+970',\n },\n {\n code: '+507',\n name: 'Panama',\n value: '+507',\n },\n {\n code: '+675',\n name: 'Papua New Guinea',\n value: '+675',\n },\n {\n code: '+595',\n name: 'Paraguay',\n value: '+595',\n },\n {\n code: '+51',\n name: 'Peru',\n value: '+51',\n },\n {\n code: '+63',\n name: 'Philippines',\n value: '+63',\n },\n {\n code: '+48',\n name: 'Poland',\n value: '+48',\n },\n {\n code: '+351',\n name: 'Portugal',\n value: '+351',\n },\n {\n code: '+1',\n name: 'Puerto Rico',\n value: '+1',\n },\n {\n code: '+974',\n name: 'Qatar',\n value: '+974',\n },\n {\n code: '+40',\n name: 'Romania',\n value: '+40',\n },\n {\n code: '+7',\n name: 'Russia',\n value: '+7',\n },\n {\n code: '+250',\n name: 'Rwanda',\n value: '+250',\n },\n {\n code: '508',\n name: 'Saint Pierre and Miquelon',\n value: '508',\n },\n {\n code: '+685',\n name: 'Samoa',\n value: '+685',\n },\n {\n code: '+378',\n name: 'San Marino',\n value: '+378',\n },\n {\n code: '+966',\n name: 'Saudi Arabia',\n value: '+966',\n },\n {\n code: '+221',\n name: 'Senegal',\n value: '+221',\n },\n {\n code: '+381',\n name: 'Serbia',\n value: '+381',\n },\n {\n code: '+248',\n name: 'Seychelles',\n value: '+248',\n },\n {\n code: '+232',\n name: 'Sierra Leone',\n value: '+232',\n },\n {\n code: '+65',\n name: 'Singapore',\n value: '+65',\n },\n {\n code: '+421',\n name: 'Slovakia',\n value: '+421',\n },\n {\n code: '+386',\n name: 'Slovenia',\n value: '+386',\n },\n {\n code: '+677',\n name: 'Solomon Islands',\n value: '+677',\n },\n {\n code: '+27',\n name: 'South Africa',\n value: '+27',\n },\n {\n code: '+500',\n name: 'South Georgia and the South Sandwich Islands',\n value: '+500',\n },\n {\n code: '+82',\n name: 'South Korea',\n value: '+82',\n },\n {\n code: '+34',\n name: 'Spain',\n value: '+34',\n },\n {\n code: '+94',\n name: 'Sri Lanka',\n value: '+94',\n },\n {\n code: '+249',\n name: 'Sudan',\n value: '+249',\n },\n {\n code: '+597',\n name: 'Suriname',\n value: '+597',\n },\n {\n code: '+268',\n name: 'Swaziland',\n value: '+268',\n },\n {\n code: '+46',\n name: 'Sweden',\n value: '+46',\n },\n {\n code: '+41',\n name: 'Switzerland',\n value: '+41',\n },\n {\n code: '+963',\n name: 'Syria',\n value: '+963',\n },\n {\n code: '+886',\n name: 'Taiwan',\n value: '+886',\n },\n {\n code: '+992',\n name: 'Tajikistan',\n value: '+992',\n },\n {\n code: '+255',\n name: 'Tanzania',\n value: '+255',\n },\n {\n code: '+66',\n name: 'Thailand',\n value: '+66',\n },\n {\n code: '+670',\n name: 'Timor Leste',\n value: '+670',\n },\n {\n code: '+228',\n name: 'Togo',\n value: '+228',\n },\n {\n code: '+690',\n name: 'Tokelau',\n value: '+690',\n },\n {\n code: '+676',\n name: 'Tonga',\n value: '+676',\n },\n {\n code: '+1',\n name: 'Trinidad and Tobago',\n value: '+1',\n },\n {\n code: '+216',\n name: 'Tunisia',\n value: '+216',\n },\n {\n code: '+90',\n name: 'Turkey',\n value: '+90',\n },\n {\n code: '+993',\n name: 'Turkmenistan',\n value: '+993',\n },\n {\n code: '+1',\n name: 'Turks and Caicos Islands',\n value: '+1',\n },\n {\n code: '+688',\n name: 'Tuvalu',\n value: '+688',\n },\n {\n code: '+1',\n name: 'U.S. Virgin Islands',\n value: '+1',\n },\n {\n code: '+256',\n name: 'Uganda',\n value: '+256',\n },\n {\n code: '+380',\n name: 'Ukraine',\n value: '+380',\n },\n {\n code: '+971',\n name: 'United Arab Emirates',\n value: '+971',\n },\n {\n code: '+44',\n name: 'United Kingdom',\n value: '+44',\n },\n {\n code: '+1',\n name: 'United States',\n value: '+1',\n },\n {\n code: '+598',\n name: 'Uruguay',\n value: '+598',\n },\n {\n code: '+998',\n name: 'Uzbekistan',\n value: '+998',\n },\n {\n code: '+678',\n name: 'Vanuatu',\n value: '+678',\n },\n {\n code: '+58',\n name: 'Venezuela',\n value: '+58',\n },\n {\n code: '+84',\n name: 'Vietnam',\n value: '+84',\n },\n {\n code: '+1',\n name: 'Wake Island',\n value: '+1',\n },\n {\n code: '+681',\n name: 'Wallis and Futuna',\n value: '+681',\n },\n {\n code: '+967',\n name: 'Yemen',\n value: '+967',\n },\n {\n code: '+260',\n name: 'Zambia',\n value: '+260',\n },\n {\n code: '+255',\n name: 'Zanzibar',\n value: '+255',\n },\n {\n code: '+263',\n name: 'Zimbabwe',\n value: '+263',\n },\n];\nexport function getCountryByCode(code) {\n var found = Countries.find(function (country) { return country.code === code; });\n if (found)\n return found;\n if (isFrenchGuiana(code)) {\n return {\n code: '+594',\n name: 'French Guiana',\n value: '+594',\n };\n }\n else if (isGuadeloupe(code)) {\n return {\n code: '+590',\n name: 'Guadeloupe',\n value: '+590',\n };\n }\n else if (isMartinique(code)) {\n return {\n code: '+596',\n name: 'Martinique',\n value: '+596',\n };\n }\n else if (isMayotte(code)) {\n return {\n code: '+262',\n name: 'Mayotte or Réunion',\n value: '+262',\n };\n }\n return null;\n}\nexport function isFrenchGuiana(code) {\n return '+594' === code.substring(0, 4);\n}\nexport function isGuadeloupe(code) {\n return '+590' === code.substring(0, 4);\n}\nexport function isMartinique(code) {\n return '+596' === code.substring(0, 4);\n}\nexport function isMayotte(code) {\n return '+262' === code.substring(0, 4);\n}\nexport function getPlusOneCountry(code) {\n var info = null;\n switch (code.substring(0, 5)) {\n case '+1684':\n info = {\n code: '+1',\n name: 'American Samoa',\n value: '+1',\n };\n break;\n case '+1264':\n info = {\n code: '+1',\n name: 'Anguilla',\n value: '+1',\n };\n case '+1268':\n info = {\n code: '+1',\n name: 'Antigua and Barbuda',\n value: '+1',\n };\n case '+1242':\n info = {\n code: '+1',\n name: 'Bahamas',\n value: '+1',\n };\n break;\n case '+1246':\n info = {\n code: '+1',\n name: 'Barbados',\n value: '+1',\n };\n break;\n case '+1441':\n info = {\n code: '+1',\n name: 'Bermuda',\n value: '+1',\n };\n break;\n case '+1284':\n info = {\n code: '+1',\n name: 'British Virgin Islands',\n value: '+1',\n };\n break;\n case '+1':\n info = {\n code: '+1',\n name: '',\n value: '+1',\n };\n break;\n default:\n break;\n }\n return info;\n}\nexport function isCanada(code) {\n var canadianAreaCodes = [\n '403',\n '587',\n '780',\n '825',\n '604',\n '250',\n '778',\n '236',\n '204',\n '431',\n '506',\n '709',\n '867',\n '782',\n '902',\n '867',\n '548',\n '705',\n '365',\n '613',\n '807',\n '226',\n '289',\n '437',\n '519',\n '647',\n '905',\n '249',\n '343',\n '416',\n '902',\n '782',\n '450',\n '418',\n '579',\n '873',\n '367',\n '514',\n '581',\n '819',\n '438',\n '639',\n '306',\n '867',\n ];\n var areaCode = code.substring(0, 5);\n return canadianAreaCodes.findIndex(function (x) { return '+1' + x === areaCode; }) > -1;\n}\nexport function isAmericanSamoa(code) {\n return code.substring(0, 5) === '+1684';\n}\nexport function isDominicanRepublic(code) {\n return '+1809' === code.substring(0, 5) || '+1829' === code.substring(0, 5) || '+1849' === code.substring(0, 5);\n}\nexport function isPuertoRico(code) {\n return code.substring(0, 5) === '+' || code.substring(0, 5) === '+';\n}\n// need to finish\nexport function getMatchingCountry(code, substrings) {\n var toMatch = code.substring(0, substrings);\n return Countries.filter(function (c) { return c.code === toMatch; }).length;\n}\nvar e164Regex = new RegExp(/\\+[1-9]\\d{6,14}/g);\nexport function simpleE164Validator(code) {\n return (code !== null && code.length < 16 && code.length > 6 && e164Regex.test(code)) || code === '' || code === null;\n}\n","import { simpleE164Validator } from '../Utils/Locales';\n/**\n * Get all defined validators\n *\n * ```typescript\n * import {Documents} from '@verdocs/js-sdk/Templates';\n *\n * await Documents.getDocuments(templateID);\n * ```\n */\nexport var getValidators = function (endpoint) {\n return endpoint.api //\n .get('/validators')\n .then(function (r) { return r.data; });\n};\nexport var getValidator = function (endpoint, validatorName) {\n return endpoint.api //\n .get(\"/validators/\".concat(validatorName))\n .then(function (r) { return r.data; });\n};\nvar EmailRegEx = /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\nexport var isValidEmail = function (value) { return EmailRegEx.test(value); };\nexport var isValidPhone = function (value) { return simpleE164Validator(value); };\nexport var isValidRoleName = function (value, roles) { return roles.findIndex(function (role) { return role.name === value; }) !== -1; };\nvar TagRegEx = /^[a-zA-Z0-9-]{0,32}$/;\nexport var isValidTag = function (value, tags) { return TagRegEx.test(value) || tags.findIndex(function (tag) { return tag.name === value; }) !== -1; };\n","/**\n * Given a `rgba(r,g,b,a)` string value, returns the hex equivalent, dropping the alpha channel.\n */\nexport function getRGB(rgba) {\n var rgbNumbers = rgba.replace('rgba(', '').replace(')', '').split(',');\n var rgbObject = {\n red: +rgbNumbers[0],\n green: +rgbNumbers[1],\n blue: +rgbNumbers[2],\n alpha: +rgbNumbers[3],\n };\n var alpha = 1 - rgbObject.alpha;\n var red = Math.round((rgbObject.alpha * (rgbObject.red / 255) + alpha) * 255);\n var green = Math.round((rgbObject.alpha * (rgbObject.green / 255) + alpha) * 255);\n var blue = Math.round((rgbObject.alpha * (rgbObject.blue / 255) + alpha) * 255);\n return '#' + rgbToHex(red) + rgbToHex(green) + rgbToHex(blue);\n}\n/**\n * Given an RGB string value, returns the hex equivalent.\n */\nfunction rgbToHex(rgb) {\n var hex = rgb.toString(16);\n if (hex.length < 2) {\n return '0' + hex;\n }\n return hex;\n}\n/**\n * Given a signer role index, return the color code for that signer.\n */\nexport function getRGBA(roleIndex) {\n switch (roleIndex % 10) {\n case 0:\n return roleIndex === 0 ? 'rgba(255, 193, 7, 0.4)' : 'rgba(134, 134, 134, 0.3)'; // #FFE69C\n case 1:\n return 'rgba(156, 39, 176, .4)'; // '#E3C3E9'\n case 2:\n return 'rgba(33, 150, 243, .4)'; // '#C1E1FB'\n case 3:\n return 'rgba(220, 231, 117, 0.3)';\n case 4:\n return 'rgba(121, 134, 203, 0.3)';\n case 5:\n return 'rgba(77, 182, 172, 0.3)';\n case 6:\n return 'rgba(255, 202, 165, 0.3)';\n case 7:\n return 'rgba(2, 247, 190, 0.3)';\n case 8:\n return 'rgba(255, 138, 101, 0.3)';\n case 9:\n return 'rgba(82, 255, 79, 0.3)';\n default:\n return 'rgba(229, 115, 155, 0.3)';\n }\n}\n/**\n * Given a role name, return a color code for it. This works by computing a hash code so the specific color returned\n * is not specified explicitly, but will be the same for every call with the same input value.\n */\nexport function nameToRGBA(str) {\n if (!!str) {\n var validNum = parseInt(str.slice(-1), 10);\n if (!isNaN(validNum)) {\n str += (validNum * 99).toString();\n }\n var hash = 0;\n for (var i = 0; i < str.length; i++) {\n hash = str.charCodeAt(i) + ((hash << 5) - hash);\n }\n hash = Math.round(hash / 1.3);\n var c = (hash & 0x00ffff08).toString(16).toUpperCase();\n var hex = '#' + '00000'.substring(0, 6 - c.length) + c;\n var result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n var color = {\n r: parseInt(result[1], 16),\n g: parseInt(result[2], 16),\n b: parseInt(result[3], 16),\n };\n return \"rgba(\".concat(color.r, \", \").concat(color.g, \", \").concat(color.b, \", 0.2)\");\n }\n}\n/**\n * Helper function to obtain a color code given a role name given various possible inputs.\n */\nexport function getRoleColor(name, roles, index) {\n if (index) {\n return getRGBA(index);\n }\n else if (roles && roles.length > 0) {\n var roleIndex = roles.findIndex(function (role) { return role.name === name; });\n if (roleIndex > -1) {\n return roles[roleIndex].rgba || getRGBA(roleIndex);\n }\n else {\n return nameToRGBA(name);\n }\n }\n else {\n return nameToRGBA(name);\n }\n}\n","export function getRTop(y, fieldHeight, iTextHeight, yRatio) {\n return iTextHeight - (y + fieldHeight) * yRatio;\n}\nexport function getRLeft(x, ratio) {\n return x * ratio;\n}\nexport function getRValue(y, ratio) {\n return y * ratio;\n}\nexport function blobToBase64(image) {\n var fileReader = new FileReader();\n return new Promise(function (resolve, reject) {\n fileReader.onerror = function () {\n reject(new DOMException('Problem reading blob.'));\n };\n fileReader.onload = function () {\n resolve(fileReader.result);\n };\n fileReader.readAsDataURL(image);\n });\n}\nexport function rescale(r, n) {\n return r * n;\n}\n","@import '../../../theme.scss';\n\nverdocs-sign {\n display: flex;\n overflow: hidden;\n position: relative;\n min-height: 600px;\n flex-direction: column;\n box-sizing: border-box;\n font-family: $verdocs-primary-font;\n\n div {\n box-sizing: border-box;\n }\n\n .header {\n flex: 0 0 115px;\n z-index: 1000;\n background-color: $medium-bg;\n box-shadow: 0 4px 4px 0 rgb(0 0 0 / 24%), 0 0 4px 0 rgb(0 0 0 / 12%);\n transition: all 0.25s;\n }\n\n .intro {\n background-color: #ffffff;\n width: 100%;\n margin: 0 auto;\n padding: 20px;\n max-width: 1028px;\n color: rgba(0, 0, 0, 0.87);\n }\n\n .toolbar {\n width: 100%;\n margin: 0 auto;\n padding: 0 14px;\n max-width: 1028px;\n position: relative;\n }\n\n .tools {\n width: 100%;\n color: #fff;\n height: 56px;\n padding: 4px;\n display: flex;\n font-size: 12px;\n align-items: center;\n flex-direction: row;\n background-color: $medium-bg;\n }\n\n .cover {\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 999;\n position: absolute;\n background: rgba(0, 0, 0, 0.5);\n }\n\n .document {\n flex: 1;\n height: 100%;\n position: relative;\n overflow-y: scroll;\n }\n\n .agree {\n flex: 1;\n flex-direction: row;\n display: flex;\n align-items: center;\n margin-right: 10px;\n\n .intro {\n display: none;\n }\n\n .header {\n flex: 0 0 56px;\n }\n\n .agree-checkbox {\n background: #ccc;\n flex: 0 0 20px;\n display: flex;\n width: 20px;\n height: 20px;\n border-radius: 3px;\n position: relative;\n margin: 0 10px 0 14px;\n\n input[type='checkbox']:checked + label:after {\n filter: alpha(opacity=100);\n opacity: 1;\n }\n\n label {\n left: 2px;\n top: 2px;\n width: 16px;\n height: 16px;\n cursor: pointer;\n position: absolute;\n background: #33354c;\n box-shadow: inset 0 -1px 1px rgba(255, 255, 255, 0.8);\n\n .agree-checkbox label:hover::after {\n filter: alpha(opacity=30);\n opacity: 0.3;\n }\n\n &:after {\n top: 2px;\n left: 3px;\n width: 8px;\n opacity: 0;\n height: 5px;\n content: '';\n position: absolute;\n background: transparent;\n filter: alpha(opacity=0);\n transform: rotate(-45deg);\n border: 2px solid #fcfff4;\n border-top: none;\n border-right: none;\n }\n }\n }\n }\n}\n","import {Host} from '@stencil/core';\nimport {VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {Documents} from '@verdocs/js-sdk/Documents';\nimport {getRGBA} from '@verdocs/js-sdk/Utils/Colors';\nimport {rescale} from '@verdocs/js-sdk/Utils/Fields';\nimport {Component, Prop, State, h} from '@stencil/core';\nimport {updateRecipientStatus} from '@verdocs/js-sdk/Documents/Recipients';\nimport {isValidEmail, isValidPhone} from '@verdocs/js-sdk/Templates/Validators';\nimport {IDocument, IDocumentField, IRecipient} from '@verdocs/js-sdk/Documents/Documents';\nimport {IDocumentPageInfo} from '../../elements/verdocs-document-page/verdocs-document-page';\nimport {IPageRenderEvent} from '../verdocs-view/verdocs-view';\n\n/**\n * Display a document signing experience.\n *\n * *NOTE: This sample document will reset every 10 minutes.*\n * ***NOTE: This sample document will reset every 10 minutes...***\n */\n@Component({\n tag: 'verdocs-sign',\n styleUrl: 'verdocs-sign.scss',\n shadow: false,\n})\nexport class VerdocsSign {\n /**\n * The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.\n */\n @Prop() endpoint: VerdocsEndpoint = VerdocsEndpoint.getDefault();\n\n /**\n * If `source` is set to `verdocs-sign`, this should be set to a valid invitation code to activate a\n * signing session.\n */\n @Prop() documentId: string | null = null;\n\n /**\n * If `source` is set to `verdocs-sign`, this should be set to a valid invitation code to activate a\n * signing session.\n */\n @Prop() roleId: string | null = null;\n\n /**\n * If `source` is set to `verdocs-sign`, this should be set to a valid invitation code to activate a\n * signing session.\n */\n @Prop() inviteCode: string | null = null;\n\n @State() recipient: IRecipient | null = null;\n\n @State() signerToken = null;\n @State() pdfUrl = null;\n @State() recipientIndex: number = -1;\n @State() document: IDocument | null = null;\n @State() fields: IDocumentField[] = [];\n\n @State() hasSignature = false;\n\n @State() nextButtonLabel = 'Start';\n\n @State() focusedField = '';\n\n async componentDidLoad() {\n try {\n console.log(`[SIGN] Processing invite code for ${this.documentId} / ${this.documentId}`);\n const {session, recipient, signerToken} = await Documents.getSigningSession(this.endpoint, {\n documentId: this.documentId,\n roleId: this.roleId,\n inviteCode: this.inviteCode,\n });\n\n console.log(`[SIGN] Got signing session ${session.email} / ${session.profile_id}`);\n\n this.recipient = recipient;\n this.signerToken = signerToken;\n this.endpoint.setToken(signerToken);\n\n if (this.recipient.agreed) {\n this.nextButtonLabel = 'Next';\n }\n\n const document = await Documents.getDocument(this.endpoint, this.documentId);\n this.document = document;\n console.log('[SIGN] Signing document', document);\n\n this.pdfUrl = `${this.endpoint.getBaseURL()}/documents/${this.documentId}/envelope_documents/${document.envelope_document_id}?file=true`;\n\n this.recipientIndex = this.document.recipients.findIndex(recipient => recipient.role_name == this.roleId);\n if (this.recipientIndex > -1) {\n console.log('Found recipient', this.document.recipients[this.recipientIndex]);\n }\n\n this.fields = this.document.fields.filter(field => field.recipient_role === this.roleId);\n console.log('Loaded fields', this.fields);\n\n // TODO: Fix service to allow this?\n // const sigs = await getSignatures();\n // console.log('sigs', sigs);\n } catch (e) {\n console.log('Error with signing session', e);\n }\n }\n\n handleClickAgree() {\n console.log('agree clicked');\n updateRecipientStatus(this.endpoint, this.documentId, this.roleId, 'update', {agreed: true})\n .then(r => {\n console.log('update result', r);\n this.nextButtonLabel = 'Next';\n this.recipient = r;\n })\n .catch(e => {\n console.log('update failure', e);\n });\n }\n\n async savePDF() {\n const fileName = `${this.document.name} - ${this.document.updated_at.split('T')[0]}.pdf`;\n const data = await Documents.getDocumentFile(this.endpoint, this.documentId, this.document.envelope_document_id);\n\n // This is better in React than doing window.href= or similar to trigger a download. For a description of the technique\n // see https://stackoverflow.com/questions/8126623/downloading-canvas-element-to-an-image\n let xhr = new XMLHttpRequest();\n xhr.responseType = 'blob';\n xhr.onload = function () {\n let a = document.createElement('a');\n a.href = window.URL.createObjectURL(xhr.response);\n a.download = fileName;\n a.style.display = 'none';\n document.body.appendChild(a);\n a.click();\n a.remove();\n };\n\n const url = `data:application/pdf;base64,${data}`;\n console.log('url', url.length, url);\n xhr.open('GET', `data:application/pdf;base64,${data}`);\n xhr.send();\n }\n\n async handleOptionSelected(e) {\n switch (e.detail.id) {\n case 'later':\n // this.router.navigate([`view/sign/${this.envelopeId}/role/${this.roleName}/saved`]);\n if (!window?.['STORYBOOK_ENV']) {\n window.alert('User intends to sign later.');\n }\n break;\n case 'claim':\n break;\n case 'decline':\n break;\n case 'print':\n break;\n case 'download':\n this.savePDF().catch(() => {});\n break;\n }\n }\n\n async handleFieldChange(field: IDocumentField, e: any, optionId?: string) {\n console.log('fieldChange', field, e.detail);\n switch (field.type) {\n case 'textbox':\n Documents.updateDocumentField(this.endpoint, this.documentId, field.name, {prepared: false, value: e.detail})\n .then(r => console.log('Update result', r))\n .catch(e => {\n if (e.response?.status === 401 && e.response?.data?.error === 'jwt expired') {\n console.log('jwt expired');\n }\n console.log('Error updating', e);\n });\n break;\n\n case 'checkbox_group':\n Documents.updateDocumentField(this.endpoint, this.documentId, field.name, {prepared: false, value: {options: [{id: optionId, checked: e.detail}]}})\n .then(r => console.log('Update result', r))\n .catch(e => console.log('Error updating', e));\n break;\n\n case 'radio_button_group':\n const options = field.settings.options.map(option => ({id: option.id, selected: optionId === option.id}));\n Documents.updateDocumentField(this.endpoint, this.documentId, field.name, {prepared: false, value: {options}})\n .then(r => console.log('Update result', r))\n .catch(e => console.log('Error updating', e));\n break;\n\n case 'dropdown':\n Documents.updateDocumentField(this.endpoint, this.documentId, field.name, {prepared: false, value: e.detail})\n .then(r => console.log('Update result', r))\n .catch(e => console.log('Error updating', e));\n break;\n\n case 'initial':\n console.log('Got initial', e.detail);\n break;\n\n case 'signature':\n console.log('Got signature', e.detail);\n break;\n }\n }\n\n renderCheckboxGroupOption(page: IDocumentPageInfo, field: IDocumentField, option: any, index: number) {\n const left = rescale(page.xScale, option.x);\n const bottom = rescale(page.yScale, option.y);\n\n const style = {\n left: `${left}px`,\n bottom: `${bottom}px`,\n position: 'absolute',\n transform: `scale(${page.xScale}, ${page.yScale})`,\n backgroundColor: getRGBA(this.recipientIndex),\n } as any;\n\n return <verdocs-field-checkbox style={style} order={index} value={option.checked} onFieldChange={e => this.handleFieldChange(field, e, option.id)} />;\n }\n\n renderRadioGroupOption(page: IDocumentPageInfo, field: IDocumentField, option: any, index: number) {\n const left = rescale(page.xScale, option.x);\n const bottom = rescale(page.yScale, option.y);\n\n const style = {\n left: `${left}px`,\n bottom: `${bottom}px`,\n position: 'absolute',\n transform: `scale(${page.xScale}, ${page.yScale})`,\n backgroundColor: getRGBA(this.recipientIndex),\n } as any;\n\n return (\n <verdocs-field-radio-button\n style={style}\n order={index}\n value={option.id}\n name={field.name}\n checked={option.selected}\n onFieldChange={e => this.handleFieldChange(field, e, option.id)}\n />\n );\n }\n\n isFieldValid(field: IDocumentField) {\n switch (field.type) {\n case 'textbox':\n switch (field.settings?.validator || '') {\n case 'email':\n return isValidEmail(field.settings?.result || '');\n case 'phone':\n return isValidPhone(field.settings?.result || '');\n default:\n return !!field.settings?.result;\n }\n\n case 'signature':\n case 'initial':\n case 'textarea':\n case 'date':\n case 'attachment':\n return !!field.settings?.result;\n case 'dropdown':\n return !!field.settings?.value;\n case 'checkbox_group':\n const checked = (field.settings?.options?.filter(option => option.checked) || []).length;\n return checked >= (field.settings?.minimum_checked || 0) && checked <= (field.settings?.maximum_checked || 999);\n case 'radio_button_group':\n return (field.settings?.options?.filter(option => option.selected) || []).length > 0;\n // TODO\n // case 'checkbox':\n // return <verdocs-field-checkbox style={style} value={result || ''} id={id} />;\n // case 'payment':\n // return <verdocs-field-payment style={style} field={field} id={id} />;\n default:\n return false;\n }\n }\n\n // (async () => {\n // await customElements.whenDefined('verdocs-field-signature');\n // const els = document.getElementById('verdocs-field-signature');\n // await els.focusField();\n // })();\n\n getFieldId(field: IDocumentField) {\n return `verdocs-doc-fld-${field.name}`;\n }\n\n handleNext() {\n // Find and focus the next incomplete required field\n const requiredFields = this.fields.filter(field => field.required);\n console.log('required Fields', requiredFields);\n\n const focusedIndex = requiredFields.findIndex(field => field.name === this.focusedField);\n console.log('focused Index', focusedIndex);\n\n let nextFocusedIndex = focusedIndex + 1;\n if (nextFocusedIndex >= requiredFields.length) {\n nextFocusedIndex = 0;\n }\n\n const nextRequiredField = requiredFields[nextFocusedIndex];\n console.log('next required field', nextRequiredField);\n\n if (nextRequiredField) {\n const id = this.getFieldId(nextRequiredField);\n const el = document.getElementById(id) as any;\n console.log('focusing', id, el);\n el?.focusField();\n this.focusedField = nextRequiredField.name;\n }\n }\n\n setControlStyles(el: HTMLElement, field: IDocumentField, docPage: IDocumentPageInfo) {\n const {x = 0, y = 0, width = 150, height = 50} = field.settings;\n\n el.style.width = `${width}px`;\n el.style.height = `${height}px`;\n el.style.position = 'absolute';\n el.style.left = `${rescale(docPage.xScale, x)}px`;\n el.style.bottom = `${rescale(docPage.yScale, y)}px`;\n el.style.transform = `scale(${docPage.xScale}, ${docPage.yScale})`;\n el.style.backgroundColor = field['rgba'] || getRGBA(this.recipientIndex);\n }\n\n renderField(field: IDocumentField, docPage: IDocumentPageInfo /*, index: number*/) {\n const controlsDiv = document.getElementById(docPage.containerId + '-controls');\n if (!controlsDiv) {\n return;\n }\n\n const id = this.getFieldId(field);\n\n const existingField = document.getElementById(id);\n\n if (existingField) {\n this.setControlStyles(existingField, field, docPage);\n return;\n }\n\n let el;\n switch (field.type) {\n case 'attachment':\n case 'checkbox':\n case 'date':\n case 'dropdown':\n case 'initial':\n case 'payment':\n case 'signature':\n case 'textarea':\n case 'textbox':\n el = document.createElement(`verdocs-field-${field.type}`);\n break;\n // case 'textbox':\n // el = document.createElement('verdocs-field-textbox');\n // el.setAttribute('field', field);\n // // el.setAttribute('value', result || '');\n // // el.setAttribute('placeholder', placeholder || '');\n // el.addEventListener('fieldChange', e => this.handleFieldChange(field, e));\n // break;\n // case 'textarea':\n // el = document.createElement('verdocs-field-textarea');\n // el.setAttribute('value', result || '');\n // el.setAttribute('placeholder', placeholder || '');\n // break;\n // case 'date':\n // el = document.createElement('verdocs-field-date');\n // el.setAttribute('value', result || '');\n // el.setAttribute('placeholder', placeholder || '');\n // break;\n // case 'dropdown':\n // el = document.createElement('verdocs-field-dropdown');\n // el.setAttribute('options', options);\n // el.setAttribute('value', value);\n // break;\n // case 'checkbox':\n // el = document.createElement('verdocs-field-checkbox');\n // el.setAttribute('value', result || '');\n // break;\n case 'checkbox_group':\n // el = document.createElement('verdocs-field-signature');\n // el.setAttribute('value', base64);\n break;\n // return field.settings.options.map((option: any, index) => this.renderCheckboxGroupOption(renderOnPage, field, option, index));\n case 'radio_button_group':\n // el = document.createElement('verdocs-field-signature');\n // el.setAttribute('value', base64);\n break;\n // return field.settings.options.map((option: any, index) => this.renderRadioGroupOption(renderOnPage, field, option, index));\n // case 'attachment':\n // el = document.createElement('verdocs-field-attachment');\n // el.setAttribute('value', result || '');\n // break;\n // case 'payment':\n // el = document.createElement('verdocs-field-payment');\n // break;\n default:\n console.log('[SIGN] Skipping unsupported field type', field);\n }\n\n if (el) {\n el.field = field;\n el.recipient = this.recipient;\n el.setAttribute('id', id);\n // el.setAttribute('required', required);\n el.addEventListener('fieldChange', e => this.handleFieldChange(field, e));\n this.setControlStyles(el, field, docPage);\n controlsDiv.appendChild(el);\n }\n }\n\n handlePageRendered(e) {\n const pageInfo = e.detail as IPageRenderEvent;\n console.log('[SIGN] Page rendered', pageInfo);\n\n const fields = this.fields.filter(field => field.page === pageInfo.renderedPage.pageNumber);\n console.log('[SIGN] Fields on page', fields);\n fields.forEach(field => this.renderField(field, pageInfo.renderedPage));\n // .map((field, index) => this.renderField(field, index));\n // this.pdfPageInfo = e.detail;\n }\n\n render() {\n const menuOptions = [\n {id: 'later', label: 'Finish Later'}, //\n {id: 'claim', label: 'Claim the Document', disabled: true},\n {id: 'decline', label: 'Decline to Sign'},\n {id: 'print', label: 'Print Without Signing'},\n {id: 'download', label: 'Download'},\n ];\n\n return (\n <Host class={{storybook: !!window?.['STORYBOOK_ENV'], agreed: this.recipient?.agreed}}>\n <div class=\"header\">\n <div class=\"intro\">Please review and act on these documents.</div>\n <div class=\"toolbar\">\n <div class=\"tools\">\n <verdocs-dropdown options={menuOptions} onOptionSelected={e => this.handleOptionSelected(e)} />\n\n {!this.recipient?.agreed ? (\n <div class=\"agree\">\n <div class=\"agree-checkbox\">\n <input type=\"checkbox\" value=\"None\" id=\"agree-checkbox-element\" name=\"agree\" onChange={() => this.handleClickAgree()} />\n <label htmlFor=\"agree-checkbox-element\" />\n </div>\n <span>I agree to use electronic records and signatures.</span>\n </div>\n ) : (\n <div style={{flex: '1'}} />\n )}\n <verdocs-button size=\"small\" label={this.nextButtonLabel} disabled={!this.recipient?.agreed} onClick={() => this.handleNext()} />\n </div>\n </div>\n </div>\n\n {!this.recipient?.agreed ? <div class=\"cover\" /> : <div style={{display: 'none'}} />}\n\n <div class=\"document\">\n {this.pdfUrl ? (\n <verdocs-view\n source={this.pdfUrl}\n endpoint={this.endpoint}\n onPageRendered={e => this.handlePageRendered(e)}\n pageLayers={[\n {name: 'page', type: 'canvas'},\n {name: 'controls', type: 'div'},\n ]}\n />\n ) : (\n <verdocs-loader />\n )}\n\n {/*{(this.pdfPageInfo?.pages || []).map(page => (*/}\n {/* <div class=\"page-controls\">*/}\n {/* {this.pdfPageInfo?.numRendered > 0 ? (*/}\n {/* this.fields.filter(field => field.page === page.pageNumber).map((field, index) => this.renderField(field, index))*/}\n {/* ) : (*/}\n {/* <div style={{display: 'none'}}>Waiting for PDF to render...</div>*/}\n {/* )}*/}\n {/* </div>*/}\n {/*))}*/}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"verdocs-sign.js","mappings":"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","names":["VerdocsSign","Documents.getSigningSession","Documents.getDocument","Documents.getDocumentFile","Documents.updateDocumentField"],"sources":["./node_modules/@verdocs/js-sdk/Utils/Locales.js","./node_modules/@verdocs/js-sdk/Templates/Validators.js","./node_modules/@verdocs/js-sdk/Utils/Colors.js","./node_modules/@verdocs/js-sdk/Utils/Fields.js","./src/components/embeds/verdocs-sign/verdocs-sign.scss?tag=verdocs-sign","./src/components/embeds/verdocs-sign/verdocs-sign.tsx"],"sourcesContent":["export var Countries = [\n {\n code: '+7 840',\n name: 'Abkhazia',\n value: '+7',\n },\n {\n code: '+93',\n name: 'Afghanistan',\n value: '+93',\n },\n {\n code: '+355',\n name: 'Albania',\n value: '+355',\n },\n {\n code: '+213',\n name: 'Algeria',\n value: '+213',\n },\n {\n code: '+1',\n name: 'American Samoa',\n value: '+1',\n },\n {\n code: '+376',\n name: 'Andorra',\n value: '+376',\n },\n {\n code: '+244',\n name: 'Angola',\n value: '+244',\n },\n {\n code: '+1',\n name: 'Anguilla',\n value: '+1',\n },\n {\n code: '+1',\n name: 'Antigua and Barbuda',\n value: '+1',\n },\n {\n code: '+54',\n name: 'Argentina',\n value: '+54',\n },\n {\n code: '+374',\n name: 'Armenia',\n value: '+374',\n },\n {\n code: '+297',\n name: 'Aruba',\n value: '+297',\n },\n {\n code: '+247',\n name: 'Ascension',\n value: '+247',\n },\n {\n code: '+61',\n name: 'Australia',\n value: '+61',\n },\n {\n code: '+672',\n name: 'Australian External Territories',\n value: '+672',\n },\n {\n code: '+43',\n name: 'Austria',\n value: '+43',\n },\n {\n code: '+994',\n name: 'Azerbaijan',\n value: '+994',\n },\n {\n code: '+1',\n name: 'Bahamas',\n value: '+1',\n },\n {\n code: '+973',\n name: 'Bahrain',\n value: '+973',\n },\n {\n code: '+880',\n name: 'Bangladesh',\n value: '+880',\n },\n {\n code: '+1',\n name: 'Barbados',\n value: '+1',\n },\n {\n code: '+1',\n name: 'Barbuda',\n value: '+1',\n },\n {\n code: '+375',\n name: 'Belarus',\n value: '+375',\n },\n {\n code: '+32',\n name: 'Belgium',\n value: '+32',\n },\n {\n code: '+501',\n name: 'Belize',\n value: '+501',\n },\n {\n code: '+229',\n name: 'Benin',\n value: '+229',\n },\n {\n code: '+1',\n name: 'Bermuda',\n value: '+1',\n },\n {\n code: '+975',\n name: 'Bhutan',\n value: '+975',\n },\n {\n code: '+591',\n name: 'Bolivia',\n value: '+591',\n },\n {\n code: '+387',\n name: 'Bosnia and Herzegovina',\n value: '+387',\n },\n {\n code: '+267',\n name: 'Botswana',\n value: '+267',\n },\n {\n code: '+55',\n name: 'Brazil',\n value: '+55',\n },\n {\n code: '+246',\n name: 'British Indian Ocean Territory',\n value: '+246',\n },\n {\n code: '+1',\n name: 'British Virgin Islands',\n value: '+1',\n },\n {\n code: '+673',\n name: 'Brunei',\n value: '+673',\n },\n {\n code: '+359',\n name: 'Bulgaria',\n value: '+359',\n },\n {\n code: '+226',\n name: 'Burkina Faso',\n value: '+226',\n },\n {\n code: '+257',\n name: 'Burundi',\n value: '+257',\n },\n {\n code: '+855',\n name: 'Cambodia',\n value: '+855',\n },\n {\n code: '+237',\n name: 'Cameroon',\n value: '+237',\n },\n {\n code: '+1',\n name: 'Canada',\n value: '+1',\n },\n {\n code: '+238',\n name: 'Cape Verde',\n value: '+238',\n },\n {\n code: '+1',\n name: 'Cayman Islands',\n value: '+1',\n },\n {\n code: '+236',\n name: 'Central African Republic',\n value: '+236',\n },\n {\n code: '+235',\n name: 'Chad',\n value: '+235',\n },\n {\n code: '+56',\n name: 'Chile',\n value: '+56',\n },\n {\n code: '+86',\n name: 'China',\n value: '+86',\n },\n {\n code: '+61',\n name: 'Christmas Island',\n value: '+61',\n },\n {\n code: '+61',\n name: 'Cocos-Keeling Islands',\n value: '+61',\n },\n {\n code: '+57',\n name: 'Colombia',\n value: '+57',\n },\n {\n code: '+269',\n name: 'Comoros',\n value: '+269',\n },\n {\n code: '+242',\n name: 'Congo',\n value: '+242',\n },\n {\n code: '+243',\n name: 'Congo, Dem. Rep. of (Zaire)',\n value: '+243',\n },\n {\n code: '+682',\n name: 'Cook Islands',\n value: '+682',\n },\n {\n code: '+506',\n name: 'Costa Rica',\n value: '+506',\n },\n {\n code: '+385',\n name: 'Croatia',\n value: '+385',\n },\n {\n code: '+53',\n name: 'Cuba',\n value: '+53',\n },\n {\n code: '+599',\n name: 'Curacao',\n value: '+599',\n },\n {\n code: '+537',\n name: 'Cyprus',\n value: '+537',\n },\n {\n code: '+420',\n name: 'Czech Republic',\n value: '+420',\n },\n {\n code: '+45',\n name: 'Denmark',\n value: '+45',\n },\n {\n code: '+246',\n name: 'Diego Garcia',\n value: '+246',\n },\n {\n code: '+253',\n name: 'Djibouti',\n value: '+253',\n },\n {\n code: '+1',\n name: 'Dominica',\n value: '+1',\n },\n {\n code: '+1',\n name: 'Dominican Republic',\n value: '+1',\n },\n {\n code: '+670',\n name: 'East Timor',\n value: '+670',\n },\n {\n code: '+56',\n name: 'Easter Island',\n value: '+56',\n },\n {\n code: '+593',\n name: 'Ecuador',\n value: '+593',\n },\n {\n code: '+20',\n name: 'Egypt',\n value: '+20',\n },\n {\n code: '+503',\n name: 'El Salvador',\n value: '+503',\n },\n {\n code: '+240',\n name: 'Equatorial Guinea',\n value: '+240',\n },\n {\n code: '+291',\n name: 'Eritrea',\n value: '+291',\n },\n {\n code: '+372',\n name: 'Estonia',\n value: '+372',\n },\n {\n code: '+251',\n name: 'Ethiopia',\n value: '+251',\n },\n {\n code: '+500',\n name: 'Falkland Islands',\n value: '+500',\n },\n {\n code: '+298',\n name: 'Faroe Islands',\n value: '+298',\n },\n {\n code: '+679',\n name: 'Fiji',\n value: '+679',\n },\n {\n code: '+358',\n name: 'Finland',\n value: '+358',\n },\n {\n code: '+33',\n name: 'France',\n value: '+33',\n },\n {\n code: '+596',\n name: 'Martinique',\n value: '+596',\n },\n {\n code: '+594',\n name: 'French Guiana',\n value: '+594',\n },\n {\n code: '+689',\n name: 'French Polynesia',\n value: '+689',\n },\n {\n code: '+241',\n name: 'Gabon',\n value: '+241',\n },\n {\n code: '+220',\n name: 'Gambia',\n value: '+220',\n },\n {\n code: '+995',\n name: 'Georgia',\n value: '+995',\n },\n {\n code: '+49',\n name: 'Germany',\n value: '+49',\n },\n {\n code: '+233',\n name: 'Ghana',\n value: '+233',\n },\n {\n code: '+350',\n name: 'Gibraltar',\n value: '+350',\n },\n {\n code: '+30',\n name: 'Greece',\n value: '+30',\n },\n {\n code: '+299',\n name: 'Greenland',\n value: '+299',\n },\n {\n code: '+1',\n name: 'Grenada',\n value: '+1',\n },\n {\n code: '+590',\n name: 'Guadeloupe',\n value: '+590',\n },\n {\n code: '+1',\n name: 'Guam',\n value: '+1',\n },\n {\n code: '+502',\n name: 'Guatemala',\n value: '+502',\n },\n {\n code: '+224',\n name: 'Guinea',\n value: '+224',\n },\n {\n code: '+245',\n name: 'Guinea-Bissau',\n value: '+245',\n },\n {\n code: '+595',\n name: 'Guyana',\n value: '+595',\n },\n {\n code: '+509',\n name: 'Haiti',\n value: '+509',\n },\n {\n code: '+504',\n name: 'Honduras',\n value: '+504',\n },\n {\n code: '+852',\n name: 'Hong Kong SAR China',\n value: '+852',\n },\n {\n code: '+36',\n name: 'Hungary',\n value: '+36',\n },\n {\n code: '+354',\n name: 'Iceland',\n value: '+354',\n },\n {\n code: '+91',\n name: 'India',\n value: '+91',\n },\n {\n code: '+62',\n name: 'Indonesia',\n value: '+62',\n },\n {\n code: '+98',\n name: 'Iran',\n value: '+98',\n },\n {\n code: '+964',\n name: 'Iraq',\n value: '+964',\n },\n {\n code: '+353',\n name: 'Ireland',\n value: '+353',\n },\n {\n code: '+972',\n name: 'Israel',\n value: '+972',\n },\n {\n code: '+39',\n name: 'Italy',\n value: '+39',\n },\n {\n code: '+225',\n name: 'Ivory Coast',\n value: '+225',\n },\n {\n code: '+1',\n name: 'Jamaica',\n value: '+1',\n },\n {\n code: '+81',\n name: 'Japan',\n value: '+81',\n },\n {\n code: '+962',\n name: 'Jordan',\n value: '+962',\n },\n {\n code: '+77',\n name: 'Kazakhstan',\n value: '+7',\n },\n {\n code: '+254',\n name: 'Kenya',\n value: '+254',\n },\n {\n code: '+686',\n name: 'Kiribati',\n value: '+686',\n },\n {\n code: '+965',\n name: 'Kuwait',\n value: '+965',\n },\n {\n code: '+996',\n name: 'Kyrgyzstan',\n value: '+996',\n },\n {\n code: '+856',\n name: 'Laos',\n value: '+856',\n },\n {\n code: '+371',\n name: 'Latvia',\n value: '+371',\n },\n {\n code: '+961',\n name: 'Lebanon',\n value: '+961',\n },\n {\n code: '+266',\n name: 'Lesotho',\n value: '+266',\n },\n {\n code: '+231',\n name: 'Liberia',\n value: '+231',\n },\n {\n code: '+218',\n name: 'Libya',\n value: '+218',\n },\n {\n code: '+423',\n name: 'Liechtenstein',\n value: '+423',\n },\n {\n code: '+370',\n name: 'Lithuania',\n value: '+370',\n },\n {\n code: '+352',\n name: 'Luxembourg',\n value: '+352',\n },\n {\n code: '+853',\n name: 'Macau SAR China',\n value: '+853',\n },\n {\n code: '+389',\n name: 'Macedonia',\n value: '+389',\n },\n {\n code: '+261',\n name: 'Madagascar',\n value: '+261',\n },\n {\n code: '+265',\n name: 'Malawi',\n value: '+265',\n },\n {\n code: '+60',\n name: 'Malaysia',\n value: '+60',\n },\n {\n code: '+960',\n name: 'Maldives',\n value: '+960',\n },\n {\n code: '+223',\n name: 'Mali',\n value: '+223',\n },\n {\n code: '+356',\n name: 'Malta',\n value: '+356',\n },\n {\n code: '+692',\n name: 'Marshall Islands',\n value: '+692',\n },\n {\n code: '+596',\n name: 'Martinique',\n value: '+596',\n },\n {\n code: '+222',\n name: 'Mauritania',\n value: '+222',\n },\n {\n code: '+230',\n name: 'Mauritius',\n value: '+230',\n },\n {\n code: '+262',\n name: 'Mayotte or Réunion',\n value: '+262',\n },\n {\n code: '+52',\n name: 'Mexico',\n value: '+52',\n },\n {\n code: '+691',\n name: 'Micronesia',\n value: '+691',\n },\n {\n code: '+1',\n name: 'Midway Island',\n value: '+1',\n },\n {\n code: '+373',\n name: 'Moldova',\n value: '+373',\n },\n {\n code: '+377',\n name: 'Monaco',\n value: '+377',\n },\n {\n code: '+976',\n name: 'Mongolia',\n value: '+976',\n },\n {\n code: '+382',\n name: 'Montenegro',\n value: '+382',\n },\n {\n code: '+1',\n name: 'Montserrat',\n value: '+1',\n },\n {\n code: '+212',\n name: 'Morocco',\n value: '+212',\n },\n {\n code: '+95',\n name: 'Myanmar',\n value: '+95',\n },\n {\n code: '+264',\n name: 'Namibia',\n value: '+264',\n },\n {\n code: '+674',\n name: 'Nauru',\n value: '+674',\n },\n {\n code: '+977',\n name: 'Nepal',\n value: '+977',\n },\n {\n code: '+31',\n name: 'Netherlands',\n value: '+31',\n },\n {\n code: '+599',\n name: 'Netherlands Antilles',\n value: '+599',\n },\n {\n code: '+1',\n name: 'Nevis',\n value: '+1',\n },\n {\n code: '+687',\n name: 'New Caledonia',\n value: '+687',\n },\n {\n code: '+64',\n name: 'New Zealand',\n value: '+64',\n },\n {\n code: '+505',\n name: 'Nicaragua',\n value: '+505',\n },\n {\n code: '+227',\n name: 'Niger',\n value: '+227',\n },\n {\n code: '+234',\n name: 'Nigeria',\n value: '+234',\n },\n {\n code: '+683',\n name: 'Niue',\n value: '+683',\n },\n {\n code: '+672',\n name: 'Norfolk Island',\n value: '+672',\n },\n {\n code: '+850',\n name: 'North Korea',\n value: '+850',\n },\n {\n code: '+1',\n name: 'Northern Mariana Islands',\n value: '+1',\n },\n {\n code: '+47',\n name: 'Norway',\n value: '+47',\n },\n {\n code: '+968',\n name: 'Oman',\n value: '+968',\n },\n {\n code: '+92',\n name: 'Pakistan',\n value: '+92',\n },\n {\n code: '+680',\n name: 'Palau',\n value: '+680',\n },\n {\n code: '+970',\n name: 'Palestinian Territory',\n value: '+970',\n },\n {\n code: '+507',\n name: 'Panama',\n value: '+507',\n },\n {\n code: '+675',\n name: 'Papua New Guinea',\n value: '+675',\n },\n {\n code: '+595',\n name: 'Paraguay',\n value: '+595',\n },\n {\n code: '+51',\n name: 'Peru',\n value: '+51',\n },\n {\n code: '+63',\n name: 'Philippines',\n value: '+63',\n },\n {\n code: '+48',\n name: 'Poland',\n value: '+48',\n },\n {\n code: '+351',\n name: 'Portugal',\n value: '+351',\n },\n {\n code: '+1',\n name: 'Puerto Rico',\n value: '+1',\n },\n {\n code: '+974',\n name: 'Qatar',\n value: '+974',\n },\n {\n code: '+40',\n name: 'Romania',\n value: '+40',\n },\n {\n code: '+7',\n name: 'Russia',\n value: '+7',\n },\n {\n code: '+250',\n name: 'Rwanda',\n value: '+250',\n },\n {\n code: '508',\n name: 'Saint Pierre and Miquelon',\n value: '508',\n },\n {\n code: '+685',\n name: 'Samoa',\n value: '+685',\n },\n {\n code: '+378',\n name: 'San Marino',\n value: '+378',\n },\n {\n code: '+966',\n name: 'Saudi Arabia',\n value: '+966',\n },\n {\n code: '+221',\n name: 'Senegal',\n value: '+221',\n },\n {\n code: '+381',\n name: 'Serbia',\n value: '+381',\n },\n {\n code: '+248',\n name: 'Seychelles',\n value: '+248',\n },\n {\n code: '+232',\n name: 'Sierra Leone',\n value: '+232',\n },\n {\n code: '+65',\n name: 'Singapore',\n value: '+65',\n },\n {\n code: '+421',\n name: 'Slovakia',\n value: '+421',\n },\n {\n code: '+386',\n name: 'Slovenia',\n value: '+386',\n },\n {\n code: '+677',\n name: 'Solomon Islands',\n value: '+677',\n },\n {\n code: '+27',\n name: 'South Africa',\n value: '+27',\n },\n {\n code: '+500',\n name: 'South Georgia and the South Sandwich Islands',\n value: '+500',\n },\n {\n code: '+82',\n name: 'South Korea',\n value: '+82',\n },\n {\n code: '+34',\n name: 'Spain',\n value: '+34',\n },\n {\n code: '+94',\n name: 'Sri Lanka',\n value: '+94',\n },\n {\n code: '+249',\n name: 'Sudan',\n value: '+249',\n },\n {\n code: '+597',\n name: 'Suriname',\n value: '+597',\n },\n {\n code: '+268',\n name: 'Swaziland',\n value: '+268',\n },\n {\n code: '+46',\n name: 'Sweden',\n value: '+46',\n },\n {\n code: '+41',\n name: 'Switzerland',\n value: '+41',\n },\n {\n code: '+963',\n name: 'Syria',\n value: '+963',\n },\n {\n code: '+886',\n name: 'Taiwan',\n value: '+886',\n },\n {\n code: '+992',\n name: 'Tajikistan',\n value: '+992',\n },\n {\n code: '+255',\n name: 'Tanzania',\n value: '+255',\n },\n {\n code: '+66',\n name: 'Thailand',\n value: '+66',\n },\n {\n code: '+670',\n name: 'Timor Leste',\n value: '+670',\n },\n {\n code: '+228',\n name: 'Togo',\n value: '+228',\n },\n {\n code: '+690',\n name: 'Tokelau',\n value: '+690',\n },\n {\n code: '+676',\n name: 'Tonga',\n value: '+676',\n },\n {\n code: '+1',\n name: 'Trinidad and Tobago',\n value: '+1',\n },\n {\n code: '+216',\n name: 'Tunisia',\n value: '+216',\n },\n {\n code: '+90',\n name: 'Turkey',\n value: '+90',\n },\n {\n code: '+993',\n name: 'Turkmenistan',\n value: '+993',\n },\n {\n code: '+1',\n name: 'Turks and Caicos Islands',\n value: '+1',\n },\n {\n code: '+688',\n name: 'Tuvalu',\n value: '+688',\n },\n {\n code: '+1',\n name: 'U.S. Virgin Islands',\n value: '+1',\n },\n {\n code: '+256',\n name: 'Uganda',\n value: '+256',\n },\n {\n code: '+380',\n name: 'Ukraine',\n value: '+380',\n },\n {\n code: '+971',\n name: 'United Arab Emirates',\n value: '+971',\n },\n {\n code: '+44',\n name: 'United Kingdom',\n value: '+44',\n },\n {\n code: '+1',\n name: 'United States',\n value: '+1',\n },\n {\n code: '+598',\n name: 'Uruguay',\n value: '+598',\n },\n {\n code: '+998',\n name: 'Uzbekistan',\n value: '+998',\n },\n {\n code: '+678',\n name: 'Vanuatu',\n value: '+678',\n },\n {\n code: '+58',\n name: 'Venezuela',\n value: '+58',\n },\n {\n code: '+84',\n name: 'Vietnam',\n value: '+84',\n },\n {\n code: '+1',\n name: 'Wake Island',\n value: '+1',\n },\n {\n code: '+681',\n name: 'Wallis and Futuna',\n value: '+681',\n },\n {\n code: '+967',\n name: 'Yemen',\n value: '+967',\n },\n {\n code: '+260',\n name: 'Zambia',\n value: '+260',\n },\n {\n code: '+255',\n name: 'Zanzibar',\n value: '+255',\n },\n {\n code: '+263',\n name: 'Zimbabwe',\n value: '+263',\n },\n];\nexport function getCountryByCode(code) {\n var found = Countries.find(function (country) { return country.code === code; });\n if (found)\n return found;\n if (isFrenchGuiana(code)) {\n return {\n code: '+594',\n name: 'French Guiana',\n value: '+594',\n };\n }\n else if (isGuadeloupe(code)) {\n return {\n code: '+590',\n name: 'Guadeloupe',\n value: '+590',\n };\n }\n else if (isMartinique(code)) {\n return {\n code: '+596',\n name: 'Martinique',\n value: '+596',\n };\n }\n else if (isMayotte(code)) {\n return {\n code: '+262',\n name: 'Mayotte or Réunion',\n value: '+262',\n };\n }\n return null;\n}\nexport function isFrenchGuiana(code) {\n return '+594' === code.substring(0, 4);\n}\nexport function isGuadeloupe(code) {\n return '+590' === code.substring(0, 4);\n}\nexport function isMartinique(code) {\n return '+596' === code.substring(0, 4);\n}\nexport function isMayotte(code) {\n return '+262' === code.substring(0, 4);\n}\nexport function getPlusOneCountry(code) {\n var info = null;\n switch (code.substring(0, 5)) {\n case '+1684':\n info = {\n code: '+1',\n name: 'American Samoa',\n value: '+1',\n };\n break;\n case '+1264':\n info = {\n code: '+1',\n name: 'Anguilla',\n value: '+1',\n };\n case '+1268':\n info = {\n code: '+1',\n name: 'Antigua and Barbuda',\n value: '+1',\n };\n case '+1242':\n info = {\n code: '+1',\n name: 'Bahamas',\n value: '+1',\n };\n break;\n case '+1246':\n info = {\n code: '+1',\n name: 'Barbados',\n value: '+1',\n };\n break;\n case '+1441':\n info = {\n code: '+1',\n name: 'Bermuda',\n value: '+1',\n };\n break;\n case '+1284':\n info = {\n code: '+1',\n name: 'British Virgin Islands',\n value: '+1',\n };\n break;\n case '+1':\n info = {\n code: '+1',\n name: '',\n value: '+1',\n };\n break;\n default:\n break;\n }\n return info;\n}\nexport function isCanada(code) {\n var canadianAreaCodes = [\n '403',\n '587',\n '780',\n '825',\n '604',\n '250',\n '778',\n '236',\n '204',\n '431',\n '506',\n '709',\n '867',\n '782',\n '902',\n '867',\n '548',\n '705',\n '365',\n '613',\n '807',\n '226',\n '289',\n '437',\n '519',\n '647',\n '905',\n '249',\n '343',\n '416',\n '902',\n '782',\n '450',\n '418',\n '579',\n '873',\n '367',\n '514',\n '581',\n '819',\n '438',\n '639',\n '306',\n '867',\n ];\n var areaCode = code.substring(0, 5);\n return canadianAreaCodes.findIndex(function (x) { return '+1' + x === areaCode; }) > -1;\n}\nexport function isAmericanSamoa(code) {\n return code.substring(0, 5) === '+1684';\n}\nexport function isDominicanRepublic(code) {\n return '+1809' === code.substring(0, 5) || '+1829' === code.substring(0, 5) || '+1849' === code.substring(0, 5);\n}\nexport function isPuertoRico(code) {\n return code.substring(0, 5) === '+' || code.substring(0, 5) === '+';\n}\n// need to finish\nexport function getMatchingCountry(code, substrings) {\n var toMatch = code.substring(0, substrings);\n return Countries.filter(function (c) { return c.code === toMatch; }).length;\n}\nvar e164Regex = new RegExp(/\\+[1-9]\\d{6,14}/g);\nexport function simpleE164Validator(code) {\n return (code !== null && code.length < 16 && code.length > 6 && e164Regex.test(code)) || code === '' || code === null;\n}\n","import { simpleE164Validator } from '../Utils/Locales';\n/**\n * Get all defined validators\n *\n * ```typescript\n * import {Documents} from '@verdocs/js-sdk/Templates';\n *\n * await Documents.getDocuments(templateID);\n * ```\n */\nexport var getValidators = function (endpoint) {\n return endpoint.api //\n .get('/validators')\n .then(function (r) { return r.data; });\n};\nexport var getValidator = function (endpoint, validatorName) {\n return endpoint.api //\n .get(\"/validators/\".concat(validatorName))\n .then(function (r) { return r.data; });\n};\nvar EmailRegEx = /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\nexport var isValidEmail = function (value) { return EmailRegEx.test(value); };\nexport var isValidPhone = function (value) { return simpleE164Validator(value); };\nexport var isValidRoleName = function (value, roles) { return roles.findIndex(function (role) { return role.name === value; }) !== -1; };\nvar TagRegEx = /^[a-zA-Z0-9-]{0,32}$/;\nexport var isValidTag = function (value, tags) { return TagRegEx.test(value) || tags.findIndex(function (tag) { return tag.name === value; }) !== -1; };\n","/**\n * Given a `rgba(r,g,b,a)` string value, returns the hex equivalent, dropping the alpha channel.\n */\nexport function getRGB(rgba) {\n var rgbNumbers = rgba.replace('rgba(', '').replace(')', '').split(',');\n var rgbObject = {\n red: +rgbNumbers[0],\n green: +rgbNumbers[1],\n blue: +rgbNumbers[2],\n alpha: +rgbNumbers[3],\n };\n var alpha = 1 - rgbObject.alpha;\n var red = Math.round((rgbObject.alpha * (rgbObject.red / 255) + alpha) * 255);\n var green = Math.round((rgbObject.alpha * (rgbObject.green / 255) + alpha) * 255);\n var blue = Math.round((rgbObject.alpha * (rgbObject.blue / 255) + alpha) * 255);\n return '#' + rgbToHex(red) + rgbToHex(green) + rgbToHex(blue);\n}\n/**\n * Given an RGB string value, returns the hex equivalent.\n */\nfunction rgbToHex(rgb) {\n var hex = rgb.toString(16);\n if (hex.length < 2) {\n return '0' + hex;\n }\n return hex;\n}\n/**\n * Given a signer role index, return the color code for that signer.\n */\nexport function getRGBA(roleIndex) {\n switch (roleIndex % 10) {\n case 0:\n return roleIndex === 0 ? 'rgba(255, 193, 7, 0.4)' : 'rgba(134, 134, 134, 0.3)'; // #FFE69C\n case 1:\n return 'rgba(156, 39, 176, .4)'; // '#E3C3E9'\n case 2:\n return 'rgba(33, 150, 243, .4)'; // '#C1E1FB'\n case 3:\n return 'rgba(220, 231, 117, 0.3)';\n case 4:\n return 'rgba(121, 134, 203, 0.3)';\n case 5:\n return 'rgba(77, 182, 172, 0.3)';\n case 6:\n return 'rgba(255, 202, 165, 0.3)';\n case 7:\n return 'rgba(2, 247, 190, 0.3)';\n case 8:\n return 'rgba(255, 138, 101, 0.3)';\n case 9:\n return 'rgba(82, 255, 79, 0.3)';\n default:\n return 'rgba(229, 115, 155, 0.3)';\n }\n}\n/**\n * Given a role name, return a color code for it. This works by computing a hash code so the specific color returned\n * is not specified explicitly, but will be the same for every call with the same input value.\n */\nexport function nameToRGBA(str) {\n if (!!str) {\n var validNum = parseInt(str.slice(-1), 10);\n if (!isNaN(validNum)) {\n str += (validNum * 99).toString();\n }\n var hash = 0;\n for (var i = 0; i < str.length; i++) {\n hash = str.charCodeAt(i) + ((hash << 5) - hash);\n }\n hash = Math.round(hash / 1.3);\n var c = (hash & 0x00ffff08).toString(16).toUpperCase();\n var hex = '#' + '00000'.substring(0, 6 - c.length) + c;\n var result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n var color = {\n r: parseInt(result[1], 16),\n g: parseInt(result[2], 16),\n b: parseInt(result[3], 16),\n };\n return \"rgba(\".concat(color.r, \", \").concat(color.g, \", \").concat(color.b, \", 0.2)\");\n }\n}\n/**\n * Helper function to obtain a color code given a role name given various possible inputs.\n */\nexport function getRoleColor(name, roles, index) {\n if (index) {\n return getRGBA(index);\n }\n else if (roles && roles.length > 0) {\n var roleIndex = roles.findIndex(function (role) { return role.name === name; });\n if (roleIndex > -1) {\n return roles[roleIndex].rgba || getRGBA(roleIndex);\n }\n else {\n return nameToRGBA(name);\n }\n }\n else {\n return nameToRGBA(name);\n }\n}\n","export function getRTop(y, fieldHeight, iTextHeight, yRatio) {\n return iTextHeight - (y + fieldHeight) * yRatio;\n}\nexport function getRLeft(x, ratio) {\n return x * ratio;\n}\nexport function getRValue(y, ratio) {\n return y * ratio;\n}\nexport function blobToBase64(image) {\n var fileReader = new FileReader();\n return new Promise(function (resolve, reject) {\n fileReader.onerror = function () {\n reject(new DOMException('Problem reading blob.'));\n };\n fileReader.onload = function () {\n resolve(fileReader.result);\n };\n fileReader.readAsDataURL(image);\n });\n}\nexport function rescale(r, n) {\n return r * n;\n}\n","@import '../../../theme.scss';\n\nverdocs-sign {\n display: flex;\n overflow: hidden;\n position: relative;\n min-height: 600px;\n flex-direction: column;\n box-sizing: border-box;\n font-family: $verdocs-primary-font;\n\n div {\n box-sizing: border-box;\n }\n\n .header {\n flex: 0;\n display: flex;\n z-index: 1000;\n align-items: center;\n transition: all 0.25s;\n justify-content: center;\n background-color: $medium-bg;\n box-shadow: 0 4px 4px 0 rgb(0 0 0 / 24%), 0 0 4px 0 rgb(0 0 0 / 12%);\n\n .inner {\n width: 100%;\n max-width: 1028px;\n }\n }\n\n .intro {\n width: 100%;\n height: 60px;\n display: flex;\n background: #ffffff;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n\n .inner {\n width: 100%;\n color: #111111;\n padding: 0 14px;\n font-size: 20px;\n font-weight: 500;\n line-height: 28px;\n max-width: 1024px;\n }\n }\n\n &.agreed {\n .intro {\n //display: none;\n }\n }\n\n .toolbar {\n width: 100%;\n margin: 0 auto;\n padding: 0 14px;\n position: relative;\n }\n\n .tools {\n width: 100%;\n color: #fff;\n height: 56px;\n display: flex;\n font-size: 12px;\n align-items: center;\n flex-direction: row;\n background-color: $medium-bg;\n }\n\n .cover {\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 999;\n position: absolute;\n background: rgba(0, 0, 0, 0.5);\n }\n\n .document {\n flex: 1;\n height: 100%;\n display: flex;\n position: relative;\n overflow-y: scroll;\n align-items: center;\n flex-direction: column;\n justify-content: center;\n\n .inner {\n width: 100%;\n max-width: 1028px;\n }\n }\n\n .agree {\n flex: 1;\n flex-direction: row;\n display: flex;\n align-items: center;\n margin-right: 10px;\n\n .intro {\n display: none;\n }\n\n .header {\n flex: 0 0 56px;\n }\n\n .agree-checkbox {\n background: #ccc;\n flex: 0 0 20px;\n display: flex;\n width: 20px;\n height: 20px;\n border-radius: 3px;\n position: relative;\n margin: 0 10px 0 14px;\n\n input[type='checkbox']:checked + label:after {\n filter: alpha(opacity=100);\n opacity: 1;\n }\n\n label {\n left: 2px;\n top: 2px;\n width: 16px;\n height: 16px;\n cursor: pointer;\n position: absolute;\n background: #33354c;\n box-shadow: inset 0 -1px 1px rgba(255, 255, 255, 0.8);\n\n .agree-checkbox label:hover::after {\n filter: alpha(opacity=30);\n opacity: 0.3;\n }\n\n &:after {\n top: 2px;\n left: 3px;\n width: 8px;\n opacity: 0;\n height: 5px;\n content: '';\n position: absolute;\n background: transparent;\n filter: alpha(opacity=0);\n transform: rotate(-45deg);\n border: 2px solid #fcfff4;\n border-top: none;\n border-right: none;\n }\n }\n }\n }\n}\n","import {Host} from '@stencil/core';\nimport {VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {Documents} from '@verdocs/js-sdk/Documents';\nimport {getRGBA} from '@verdocs/js-sdk/Utils/Colors';\nimport {rescale} from '@verdocs/js-sdk/Utils/Fields';\nimport {Component, Prop, State, h} from '@stencil/core';\nimport {updateRecipientStatus} from '@verdocs/js-sdk/Documents/Recipients';\nimport {isValidEmail, isValidPhone} from '@verdocs/js-sdk/Templates/Validators';\nimport {IDocument, IDocumentField, IRecipient} from '@verdocs/js-sdk/Documents/Documents';\nimport {IDocumentPageInfo} from '../../elements/verdocs-document-page/verdocs-document-page';\nimport {IPageRenderEvent} from '../verdocs-view/verdocs-view';\n\n/**\n * Display a document signing experience.\n *\n * *NOTE: This sample document will reset every 10 minutes.*\n * ***NOTE: This sample document will reset every 10 minutes...***\n */\n@Component({\n tag: 'verdocs-sign',\n styleUrl: 'verdocs-sign.scss',\n shadow: false,\n})\nexport class VerdocsSign {\n /**\n * The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.\n */\n @Prop() endpoint: VerdocsEndpoint = VerdocsEndpoint.getDefault();\n\n /**\n * If `source` is set to `verdocs-sign`, this should be set to a valid invitation code to activate a\n * signing session.\n */\n @Prop() documentId: string | null = null;\n\n /**\n * If `source` is set to `verdocs-sign`, this should be set to a valid invitation code to activate a\n * signing session.\n */\n @Prop() roleId: string | null = null;\n\n /**\n * If `source` is set to `verdocs-sign`, this should be set to a valid invitation code to activate a\n * signing session.\n */\n @Prop() inviteCode: string | null = null;\n\n @State() recipient: IRecipient | null = null;\n\n @State() signerToken = null;\n @State() pdfUrl = null;\n @State() recipientIndex: number = -1;\n @State() document: IDocument | null = null;\n @State() fields: IDocumentField[] = [];\n\n @State() hasSignature = false;\n\n @State() nextButtonLabel = 'Start';\n\n @State() focusedField = '';\n\n async componentDidLoad() {\n try {\n console.log(`[SIGN] Processing invite code for ${this.documentId} / ${this.documentId}`);\n const {session, recipient, signerToken} = await Documents.getSigningSession(this.endpoint, {\n documentId: this.documentId,\n roleId: this.roleId,\n inviteCode: this.inviteCode,\n });\n\n console.log(`[SIGN] Got signing session ${session.email} / ${session.profile_id}`);\n\n this.recipient = recipient;\n this.signerToken = signerToken;\n this.endpoint.setToken(signerToken);\n\n if (this.recipient.agreed) {\n this.nextButtonLabel = 'Next';\n }\n\n const document = await Documents.getDocument(this.endpoint, this.documentId);\n this.document = document;\n console.log('[SIGN] Signing document', document);\n\n this.pdfUrl = `${this.endpoint.getBaseURL()}/documents/${this.documentId}/envelope_documents/${document.envelope_document_id}?file=true`;\n\n this.recipientIndex = this.document.recipients.findIndex(recipient => recipient.role_name == this.roleId);\n if (this.recipientIndex > -1) {\n console.log('Found recipient', this.document.recipients[this.recipientIndex]);\n }\n\n this.fields = this.document.fields.filter(field => field.recipient_role === this.roleId);\n console.log('Loaded fields', this.fields);\n\n // TODO: Fix service to allow this?\n // const sigs = await getSignatures();\n // console.log('sigs', sigs);\n } catch (e) {\n console.log('Error with signing session', e);\n }\n }\n\n handleClickAgree() {\n console.log('agree clicked');\n updateRecipientStatus(this.endpoint, this.documentId, this.roleId, 'update', {agreed: true})\n .then(r => {\n console.log('update result', r);\n this.nextButtonLabel = 'Next';\n this.recipient = r;\n })\n .catch(e => {\n console.log('update failure', e);\n });\n }\n\n async savePDF() {\n const fileName = `${this.document.name} - ${this.document.updated_at.split('T')[0]}.pdf`;\n const data = await Documents.getDocumentFile(this.endpoint, this.documentId, this.document.envelope_document_id);\n\n // This is better in React than doing window.href= or similar to trigger a download. For a description of the technique\n // see https://stackoverflow.com/questions/8126623/downloading-canvas-element-to-an-image\n let xhr = new XMLHttpRequest();\n xhr.responseType = 'blob';\n xhr.onload = function () {\n let a = document.createElement('a');\n a.href = window.URL.createObjectURL(xhr.response);\n a.download = fileName;\n a.style.display = 'none';\n document.body.appendChild(a);\n a.click();\n a.remove();\n };\n\n const url = `data:application/pdf;base64,${data}`;\n console.log('url', url.length, url);\n xhr.open('GET', `data:application/pdf;base64,${data}`);\n xhr.send();\n }\n\n async handleOptionSelected(e) {\n switch (e.detail.id) {\n case 'later':\n // this.router.navigate([`view/sign/${this.envelopeId}/role/${this.roleName}/saved`]);\n if (!window?.['STORYBOOK_ENV']) {\n window.alert('User intends to sign later.');\n }\n break;\n case 'claim':\n break;\n case 'decline':\n break;\n case 'print':\n break;\n case 'download':\n this.savePDF().catch(() => {});\n break;\n }\n }\n\n async handleFieldChange(field: IDocumentField, e: any, optionId?: string) {\n console.log('fieldChange', field, e.detail);\n switch (field.type) {\n case 'textbox':\n Documents.updateDocumentField(this.endpoint, this.documentId, field.name, {prepared: false, value: e.detail})\n .then(r => console.log('Update result', r))\n .catch(e => {\n if (e.response?.status === 401 && e.response?.data?.error === 'jwt expired') {\n console.log('jwt expired');\n }\n console.log('Error updating', e);\n });\n break;\n\n case 'checkbox_group':\n Documents.updateDocumentField(this.endpoint, this.documentId, field.name, {prepared: false, value: {options: [{id: optionId, checked: e.detail}]}})\n .then(r => console.log('Update result', r))\n .catch(e => console.log('Error updating', e));\n break;\n\n case 'radio_button_group':\n const options = field.settings.options.map(option => ({id: option.id, selected: optionId === option.id}));\n Documents.updateDocumentField(this.endpoint, this.documentId, field.name, {prepared: false, value: {options}})\n .then(r => console.log('Update result', r))\n .catch(e => console.log('Error updating', e));\n break;\n\n case 'dropdown':\n Documents.updateDocumentField(this.endpoint, this.documentId, field.name, {prepared: false, value: e.detail})\n .then(r => console.log('Update result', r))\n .catch(e => console.log('Error updating', e));\n break;\n\n case 'initial':\n console.log('Got initial', e.detail);\n break;\n\n case 'signature':\n console.log('Got signature', e.detail);\n break;\n }\n }\n\n renderCheckboxGroupOption(page: IDocumentPageInfo, field: IDocumentField, option: any, index: number) {\n const left = rescale(page.xScale, option.x);\n const bottom = rescale(page.yScale, option.y);\n\n const style = {\n left: `${left}px`,\n bottom: `${bottom}px`,\n position: 'absolute',\n transform: `scale(${page.xScale}, ${page.yScale})`,\n backgroundColor: getRGBA(this.recipientIndex),\n } as any;\n\n return <verdocs-field-checkbox style={style} order={index} value={option.checked} onFieldChange={e => this.handleFieldChange(field, e, option.id)} />;\n }\n\n renderRadioGroupOption(page: IDocumentPageInfo, field: IDocumentField, option: any, index: number) {\n const left = rescale(page.xScale, option.x);\n const bottom = rescale(page.yScale, option.y);\n\n const style = {\n left: `${left}px`,\n bottom: `${bottom}px`,\n position: 'absolute',\n transform: `scale(${page.xScale}, ${page.yScale})`,\n backgroundColor: getRGBA(this.recipientIndex),\n } as any;\n\n return (\n <verdocs-field-radio-button\n style={style}\n order={index}\n value={option.id}\n name={field.name}\n checked={option.selected}\n onFieldChange={e => this.handleFieldChange(field, e, option.id)}\n />\n );\n }\n\n isFieldValid(field: IDocumentField) {\n switch (field.type) {\n case 'textbox':\n switch (field.settings?.validator || '') {\n case 'email':\n return isValidEmail(field.settings?.result || '');\n case 'phone':\n return isValidPhone(field.settings?.result || '');\n default:\n return !!field.settings?.result;\n }\n\n case 'signature':\n case 'initial':\n case 'textarea':\n case 'date':\n case 'attachment':\n return !!field.settings?.result;\n case 'dropdown':\n return !!field.settings?.value;\n case 'checkbox_group':\n const checked = (field.settings?.options?.filter(option => option.checked) || []).length;\n return checked >= (field.settings?.minimum_checked || 0) && checked <= (field.settings?.maximum_checked || 999);\n case 'radio_button_group':\n return (field.settings?.options?.filter(option => option.selected) || []).length > 0;\n // TODO\n // case 'checkbox':\n // return <verdocs-field-checkbox style={style} value={result || ''} id={id} />;\n // case 'payment':\n // return <verdocs-field-payment style={style} field={field} id={id} />;\n default:\n return false;\n }\n }\n\n // (async () => {\n // await customElements.whenDefined('verdocs-field-signature');\n // const els = document.getElementById('verdocs-field-signature');\n // await els.focusField();\n // })();\n\n getFieldId(field: IDocumentField) {\n return `verdocs-doc-fld-${field.name}`;\n }\n\n handleNext() {\n // Find and focus the next incomplete required field\n const requiredFields = this.fields.filter(field => field.required);\n console.log('required Fields', requiredFields);\n\n const focusedIndex = requiredFields.findIndex(field => field.name === this.focusedField);\n console.log('focused Index', focusedIndex);\n\n let nextFocusedIndex = focusedIndex + 1;\n if (nextFocusedIndex >= requiredFields.length) {\n nextFocusedIndex = 0;\n }\n\n const nextRequiredField = requiredFields[nextFocusedIndex];\n console.log('next required field', nextRequiredField);\n\n if (nextRequiredField) {\n const id = this.getFieldId(nextRequiredField);\n const el = document.getElementById(id) as any;\n console.log('focusing', id, el);\n el?.focusField();\n this.focusedField = nextRequiredField.name;\n }\n }\n\n setControlStyles(el: HTMLElement, field: IDocumentField, docPage: IDocumentPageInfo) {\n const {x = 0, y = 0, width = 150, height = 50} = field.settings;\n\n el.style.width = `${width}px`;\n el.style.height = `${height}px`;\n el.style.position = 'absolute';\n el.style.left = `${rescale(docPage.xScale, x)}px`;\n el.style.bottom = `${rescale(docPage.yScale, y)}px`;\n el.style.transform = `scale(${docPage.xScale}, ${docPage.yScale})`;\n el.style.backgroundColor = field['rgba'] || getRGBA(this.recipientIndex);\n }\n\n renderField(field: IDocumentField, docPage: IDocumentPageInfo /*, index: number*/) {\n const controlsDiv = document.getElementById(docPage.containerId + '-controls');\n if (!controlsDiv) {\n return;\n }\n\n const id = this.getFieldId(field);\n\n const existingField = document.getElementById(id);\n\n if (existingField) {\n this.setControlStyles(existingField, field, docPage);\n return;\n }\n\n let el;\n switch (field.type) {\n case 'attachment':\n case 'checkbox':\n case 'date':\n case 'dropdown':\n case 'initial':\n case 'payment':\n case 'signature':\n case 'textarea':\n case 'textbox':\n el = document.createElement(`verdocs-field-${field.type}`);\n break;\n case 'checkbox_group':\n // el = document.createElement('verdocs-field-signature');\n // el.setAttribute('value', base64);\n break;\n // return field.settings.options.map((option: any, index) => this.renderCheckboxGroupOption(renderOnPage, field, option, index));\n case 'radio_button_group':\n // el = document.createElement('verdocs-field-signature');\n // el.setAttribute('value', base64);\n break;\n // return field.settings.options.map((option: any, index) => this.renderRadioGroupOption(renderOnPage, field, option, index));\n // case 'attachment':\n // el = document.createElement('verdocs-field-attachment');\n // el.setAttribute('value', result || '');\n // break;\n // case 'payment':\n // el = document.createElement('verdocs-field-payment');\n // break;\n default:\n console.log('[SIGN] Skipping unsupported field type', field);\n }\n\n if (el) {\n el.field = field;\n el.recipient = this.recipient;\n el.setAttribute('id', id);\n // el.setAttribute('required', required);\n el.addEventListener('fieldChange', e => this.handleFieldChange(field, e));\n this.setControlStyles(el, field, docPage);\n controlsDiv.appendChild(el);\n }\n }\n\n handlePageRendered(e) {\n const pageInfo = e.detail as IPageRenderEvent;\n console.log('[SIGN] Page rendered', pageInfo);\n\n const fields = this.fields.filter(field => field.page === pageInfo.renderedPage.pageNumber);\n console.log('[SIGN] Fields on page', fields);\n fields.forEach(field => this.renderField(field, pageInfo.renderedPage));\n // .map((field, index) => this.renderField(field, index));\n // this.pdfPageInfo = e.detail;\n }\n\n render() {\n const menuOptions = [\n {id: 'later', label: 'Finish Later'}, //\n {id: 'claim', label: 'Claim the Document', disabled: true},\n {id: 'decline', label: 'Decline to Sign'},\n {id: 'print', label: 'Print Without Signing'},\n {id: 'download', label: 'Download'},\n ];\n\n return (\n <Host class={{storybook: !!window?.['STORYBOOK_ENV'], agreed: this.recipient?.agreed}}>\n <div class=\"intro\">\n <div class=\"inner\">Please review and act on these documents.</div>\n </div>\n\n <div class=\"header\">\n <div class=\"inner\">\n <div class=\"toolbar\">\n <div class=\"tools\">\n <verdocs-dropdown options={menuOptions} onOptionSelected={e => this.handleOptionSelected(e)} />\n\n {!this.recipient?.agreed ? (\n <div class=\"agree\">\n <div class=\"agree-checkbox\">\n <input type=\"checkbox\" value=\"None\" id=\"agree-checkbox-element\" name=\"agree\" onChange={() => this.handleClickAgree()} />\n <label htmlFor=\"agree-checkbox-element\" />\n </div>\n <span>I agree to use electronic records and signatures.</span>\n </div>\n ) : (\n <div style={{flex: '1'}} />\n )}\n <verdocs-button size=\"small\" label={this.nextButtonLabel} disabled={!this.recipient?.agreed} onClick={() => this.handleNext()} />\n </div>\n </div>\n </div>\n </div>\n\n {!this.recipient?.agreed ? <div class=\"cover\" /> : <div style={{display: 'none'}} />}\n\n <div class=\"document\">\n {this.pdfUrl ? (\n <div class=\"inner\">\n <verdocs-view\n source={this.pdfUrl}\n endpoint={this.endpoint}\n onPageRendered={e => this.handlePageRendered(e)}\n pageLayers={[\n {name: 'page', type: 'canvas'},\n {name: 'controls', type: 'div'},\n ]}\n />\n </div>\n ) : (\n <verdocs-loader />\n )}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
package/dist/docs.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2022-08-31T11:39:36",
2
+ "timestamp": "2022-09-01T02:41:22",
3
3
  "compiler": {
4
4
  "name": "@stencil/core",
5
5
  "version": "2.17.4",
@@ -171,6 +171,36 @@ var getDocument = function (endpoint, documentId) { return __awaiter$1(void 0, v
171
171
  .then(function (r) { return r.data; })];
172
172
  });
173
173
  }); };
174
+ /**
175
+ * Cancel a Document.
176
+ */
177
+ var cancelDocument = function (endpoint, documentId) { return __awaiter$1(void 0, void 0, void 0, function () {
178
+ return __generator$1(this, function (_a) {
179
+ return [2 /*return*/, endpoint.api //
180
+ .put("/documents/".concat(documentId), { action: 'cancel' })
181
+ .then(function (r) { return r.data; })];
182
+ });
183
+ }); };
184
+ /**
185
+ * Returns true if the recipient has a pending action. Note that this does not necessarily mean the recipient can act (yet).
186
+ */
187
+ var recipientHasAction = function (recipient) { return !['submitted', 'canceled', 'declined'].includes(recipient.status); };
188
+ /**
189
+ * Returns the recipients who still have a pending action. Note that not all of these recipients may be able to act (yet).
190
+ */
191
+ var getRecipientsWithActions = function (document) { return ((document === null || document === void 0 ? void 0 : document.recipients) || []).filter(recipientHasAction); };
192
+ /**
193
+ * Returns true if the recipient can act.
194
+ */
195
+ var recipientCanAct = function (recipient, recipientsWithActions) { var _a; return recipient.sequence === ((_a = recipientsWithActions === null || recipientsWithActions === void 0 ? void 0 : recipientsWithActions[0]) === null || _a === void 0 ? void 0 : _a.sequence); };
196
+ /**
197
+ * Returns true if the user can act.
198
+ */
199
+ var userCanAct = function (email, recipientsWithActions) {
200
+ var _a;
201
+ var recipient = recipientsWithActions.find(function (r) { return r.email === email; });
202
+ return recipient && recipient.sequence === ((_a = recipientsWithActions === null || recipientsWithActions === void 0 ? void 0 : recipientsWithActions[0]) === null || _a === void 0 ? void 0 : _a.sequence);
203
+ };
174
204
  /**
175
205
  * Get (binary download) a file attached to a Document.
176
206
  */
@@ -212,6 +242,11 @@ const Documents$1 = /*#__PURE__*/Object.freeze({
212
242
  getSigningSession: getSigningSession,
213
243
  getDocumentRecipients: getDocumentRecipients,
214
244
  getDocument: getDocument,
245
+ cancelDocument: cancelDocument,
246
+ recipientHasAction: recipientHasAction,
247
+ getRecipientsWithActions: getRecipientsWithActions,
248
+ recipientCanAct: recipientCanAct,
249
+ userCanAct: userCanAct,
215
250
  getDocumentFile: getDocumentFile,
216
251
  updateDocumentField: updateDocumentField,
217
252
  updateDocumentFieldSignature: updateDocumentFieldSignature
@@ -274,10 +309,15 @@ var updateRecipientStatus = function (endpoint, documentId, roleName, action, pa
274
309
  .then(function (r) { return r.data; })];
275
310
  });
276
311
  }); };
312
+ var getSignerToken = function (endpoint, documentId, roleName) {
313
+ return endpoint.api //
314
+ .get("/documents/".concat(documentId, "/recipients/").concat(encodeURIComponent(roleName), "/signer-token"));
315
+ };
277
316
 
278
317
  const Recipients = /*#__PURE__*/Object.freeze({
279
318
  __proto__: null,
280
- updateRecipientStatus: updateRecipientStatus
319
+ updateRecipientStatus: updateRecipientStatus,
320
+ getSignerToken: getSignerToken
281
321
  });
282
322
 
283
323
  /**
@@ -2767,4 +2807,4 @@ var VerdocsEndpoint = /** @class */ (function () {
2767
2807
 
2768
2808
  export { VerdocsEndpoint as V, getDocument as a, getDocumentFile as b, updateDocumentField as c, getSigningSession as g, updateRecipientStatus as u };
2769
2809
 
2770
- //# sourceMappingURL=VerdocsEndpoint-9353e4a0.js.map
2810
+ //# sourceMappingURL=VerdocsEndpoint-9260b220.js.map