@verdocs/web-sdk 1.12.33 → 1.12.35

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 (81) hide show
  1. package/dist/cjs/loader.cjs.js +1 -1
  2. package/dist/cjs/verdocs-build.cjs.entry.js +13 -3
  3. package/dist/cjs/verdocs-button-panel_3.cjs.entry.js +6 -1
  4. package/dist/cjs/verdocs-progress-bar.cjs.entry.js +23 -0
  5. package/dist/cjs/verdocs-send.cjs.entry.js +5 -3
  6. package/dist/cjs/verdocs-template-create_3.cjs.entry.js +755 -0
  7. package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
  8. package/dist/collection/collection-manifest.json +1 -0
  9. package/dist/collection/components/controls/verdocs-progress-bar/verdocs-progress-bar.css +31 -0
  10. package/dist/collection/components/controls/verdocs-progress-bar/verdocs-progress-bar.js +84 -0
  11. package/dist/collection/components/controls/verdocs-progress-bar/verdocs-progress-bar.stories.js +12 -0
  12. package/dist/collection/components/embeds/verdocs-build/verdocs-build.js +27 -3
  13. package/dist/collection/components/embeds/verdocs-send/verdocs-send.css +1 -0
  14. package/dist/collection/components/embeds/verdocs-send/verdocs-send.js +4 -2
  15. package/dist/collection/components/templates/verdocs-template-create/verdocs-template-create.css +3 -1
  16. package/dist/collection/components/templates/verdocs-template-create/verdocs-template-create.js +20 -24
  17. package/dist/collection/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.js +7 -1
  18. package/dist/collection/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.stories.js +2 -1
  19. package/dist/collection/components/templates/verdocs-template-fields/verdocs-template-fields.css +2 -0
  20. package/dist/collection/components/templates/verdocs-template-fields/verdocs-template-fields.stories.js +1 -2
  21. package/dist/collection/components/templates/verdocs-template-roles/verdocs-template-roles.js +2 -0
  22. package/dist/components/index.d.ts +1 -0
  23. package/dist/components/index.js +1 -0
  24. package/dist/components/verdocs-build.js +79 -15
  25. package/dist/components/verdocs-progress-bar.d.ts +11 -0
  26. package/dist/components/verdocs-progress-bar.js +6 -0
  27. package/dist/components/verdocs-progress-bar2.js +38 -0
  28. package/dist/components/verdocs-send.js +5 -3
  29. package/dist/components/verdocs-template-create2.js +33 -31
  30. package/dist/components/verdocs-template-field-properties2.js +7 -1
  31. package/dist/components/verdocs-template-fields2.js +1 -1
  32. package/dist/components/verdocs-template-roles.js +1 -374
  33. package/dist/{esm/verdocs-template-roles.entry.js → components/verdocs-template-roles2.js} +100 -22
  34. package/dist/docs.json +119 -2
  35. package/dist/esm/loader.js +1 -1
  36. package/dist/esm/verdocs-build.entry.js +13 -3
  37. package/dist/esm/verdocs-button-panel_3.entry.js +6 -1
  38. package/dist/esm/verdocs-progress-bar.entry.js +19 -0
  39. package/dist/esm/verdocs-send.entry.js +5 -3
  40. package/dist/esm/verdocs-template-create_3.entry.js +749 -0
  41. package/dist/esm/verdocs-web-sdk.js +1 -1
  42. package/dist/esm-es5/loader.js +1 -1
  43. package/dist/esm-es5/verdocs-build.entry.js +1 -1
  44. package/dist/esm-es5/verdocs-button-panel_3.entry.js +1 -1
  45. package/dist/esm-es5/verdocs-progress-bar.entry.js +1 -0
  46. package/dist/esm-es5/verdocs-send.entry.js +1 -1
  47. package/dist/esm-es5/verdocs-template-create_3.entry.js +1 -0
  48. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  49. package/dist/types/components/controls/verdocs-progress-bar/verdocs-progress-bar.d.ts +18 -0
  50. package/dist/types/components/controls/verdocs-progress-bar/verdocs-progress-bar.stories.d.ts +8 -0
  51. package/dist/types/components/embeds/verdocs-build/verdocs-build.d.ts +6 -0
  52. package/dist/types/components/templates/verdocs-template-create/verdocs-template-create.d.ts +2 -0
  53. package/dist/types/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.d.ts +1 -0
  54. package/dist/types/components.d.ts +41 -0
  55. package/dist/verdocs-web-sdk/p-2413519c.system.entry.js +1 -0
  56. package/dist/verdocs-web-sdk/p-423b6ddf.entry.js +1 -0
  57. package/dist/verdocs-web-sdk/p-5cf14e4c.entry.js +1 -0
  58. package/dist/verdocs-web-sdk/p-6caf1137.system.js +1 -1
  59. package/dist/verdocs-web-sdk/p-6e1e787a.system.entry.js +1 -0
  60. package/dist/verdocs-web-sdk/p-a2cd33fd.system.entry.js +1 -0
  61. package/dist/verdocs-web-sdk/p-bcc9c2d8.entry.js +1 -0
  62. package/dist/verdocs-web-sdk/p-c4229602.system.entry.js +1 -0
  63. package/dist/verdocs-web-sdk/p-e4b18c52.entry.js +1 -0
  64. package/dist/verdocs-web-sdk/{p-0ba7360f.system.entry.js → p-fdbafc1f.system.entry.js} +1 -1
  65. package/dist/verdocs-web-sdk/p-fe2ab7b9.entry.js +1 -0
  66. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  67. package/package.json +1 -1
  68. package/dist/cjs/verdocs-template-create_2.cjs.entry.js +0 -473
  69. package/dist/cjs/verdocs-template-roles.cjs.entry.js +0 -304
  70. package/dist/esm/verdocs-template-create_2.entry.js +0 -468
  71. package/dist/esm-es5/verdocs-template-create_2.entry.js +0 -1
  72. package/dist/esm-es5/verdocs-template-roles.entry.js +0 -1
  73. package/dist/verdocs-web-sdk/p-0c5c9ebf.system.entry.js +0 -1
  74. package/dist/verdocs-web-sdk/p-13b8ec6f.system.entry.js +0 -1
  75. package/dist/verdocs-web-sdk/p-1da14840.entry.js +0 -1
  76. package/dist/verdocs-web-sdk/p-4ddd2113.system.entry.js +0 -1
  77. package/dist/verdocs-web-sdk/p-6f828ccb.system.entry.js +0 -1
  78. package/dist/verdocs-web-sdk/p-a2438331.entry.js +0 -1
  79. package/dist/verdocs-web-sdk/p-baf138a0.entry.js +0 -1
  80. package/dist/verdocs-web-sdk/p-cd0bdac3.entry.js +0 -1
  81. package/dist/verdocs-web-sdk/p-e890fc53.entry.js +0 -1
@@ -3,12 +3,21 @@ import './Types.js';
3
3
  import { V as VerdocsEndpoint } from './VerdocsEndpoint.js';
4
4
  import { l as loadTemplate } from './Templates.js';
5
5
  import { S as SDKError } from './errors.js';
6
- import { d as defineCustomElement$8 } from './verdocs-button2.js';
7
- import { d as defineCustomElement$7 } from './verdocs-component-error2.js';
8
- import { d as defineCustomElement$6 } from './verdocs-loader2.js';
9
- import { d as defineCustomElement$5 } from './verdocs-template-create2.js';
10
- import { d as defineCustomElement$4 } from './verdocs-template-document-page2.js';
11
- import { d as defineCustomElement$3 } from './verdocs-template-fields2.js';
6
+ import { d as defineCustomElement$h } from './verdocs-button2.js';
7
+ import { d as defineCustomElement$g } from './verdocs-checkbox2.js';
8
+ import { d as defineCustomElement$f } from './verdocs-component-error2.js';
9
+ import { d as defineCustomElement$e } from './verdocs-help-icon2.js';
10
+ import { d as defineCustomElement$d } from './verdocs-loader2.js';
11
+ import { d as defineCustomElement$c } from './verdocs-progress-bar2.js';
12
+ import { d as defineCustomElement$b } from './verdocs-radio-button2.js';
13
+ import { d as defineCustomElement$a } from './verdocs-select-input2.js';
14
+ import { d as defineCustomElement$9 } from './verdocs-template-create2.js';
15
+ import { d as defineCustomElement$8 } from './verdocs-template-document-page2.js';
16
+ import { d as defineCustomElement$7 } from './verdocs-template-fields2.js';
17
+ import { d as defineCustomElement$6 } from './verdocs-template-role-properties2.js';
18
+ import { d as defineCustomElement$5 } from './verdocs-template-roles2.js';
19
+ import { d as defineCustomElement$4 } from './verdocs-template-sender2.js';
20
+ import { d as defineCustomElement$3 } from './verdocs-text-input2.js';
12
21
  import { d as defineCustomElement$2 } from './verdocs-toolbar-icon2.js';
13
22
 
14
23
  const verdocsBuildCss = "verdocs-build{display:-ms-flexbox;display:flex;font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}";
@@ -18,6 +27,7 @@ const VerdocsBuild$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
18
27
  super();
19
28
  this.__registerHost();
20
29
  this.sdkError = createEvent(this, "sdkError", 7);
30
+ this.stepChanged = createEvent(this, "stepChanged", 7);
21
31
  this.fields = [];
22
32
  this.endpoint = VerdocsEndpoint.getDefault();
23
33
  this.templateId = null;
@@ -40,7 +50,7 @@ const VerdocsBuild$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
40
50
  try {
41
51
  console.log(`[BUILD] Loading template ${this.templateId}`);
42
52
  await loadTemplate(this.endpoint, this.templateId);
43
- this.step = 'fields';
53
+ this.step = 'roles';
44
54
  }
45
55
  catch (e) {
46
56
  console.log('[BUILD] Error loading template', e);
@@ -48,19 +58,28 @@ const VerdocsBuild$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
48
58
  }
49
59
  }
50
60
  handleCancel(e) {
61
+ var _a;
51
62
  console.log('Cancel', e.detail);
52
63
  this.step = '';
64
+ (_a = this.stepChanged) === null || _a === void 0 ? void 0 : _a.emit('');
53
65
  }
54
66
  handleTemplateCreated(e) {
67
+ var _a;
55
68
  console.log('Created', e.detail);
69
+ this.step = 'roles';
70
+ (_a = this.stepChanged) === null || _a === void 0 ? void 0 : _a.emit('roles');
71
+ }
72
+ handleRolesDone(e) {
73
+ var _a;
74
+ console.log('Roles', e.detail);
56
75
  this.step = 'fields';
57
- // this.step = 'properties';
76
+ (_a = this.stepChanged) === null || _a === void 0 ? void 0 : _a.emit('fields');
58
77
  }
59
78
  render() {
60
79
  if (!this.endpoint.session) {
61
80
  return (h(Host, null, h("verdocs-component-error", { message: "You must be authenticated to use this module." })));
62
81
  }
63
- return (h(Host, null, this.step === 'create' && h("verdocs-template-create", { onExit: e => this.handleCancel(e), onNext: e => this.handleTemplateCreated(e) }), this.step === 'fields' && h("verdocs-template-fields", null)));
82
+ return (h(Host, null, this.step === 'create' && h("verdocs-template-create", { onExit: e => this.handleCancel(e), onNext: e => this.handleTemplateCreated(e) }), this.step === 'roles' && h("verdocs-template-roles", { onExit: e => this.handleCancel(e), onNext: e => this.handleTemplateCreated(e) }), this.step === 'fields' && h("verdocs-template-fields", null)));
64
83
  }
65
84
  static get style() { return verdocsBuildCss; }
66
85
  }, [0, "verdocs-build", {
@@ -74,7 +93,7 @@ function defineCustomElement$1() {
74
93
  if (typeof customElements === "undefined") {
75
94
  return;
76
95
  }
77
- const components = ["verdocs-build", "verdocs-button", "verdocs-component-error", "verdocs-loader", "verdocs-template-create", "verdocs-template-document-page", "verdocs-template-fields", "verdocs-toolbar-icon"];
96
+ const components = ["verdocs-build", "verdocs-button", "verdocs-checkbox", "verdocs-component-error", "verdocs-help-icon", "verdocs-loader", "verdocs-progress-bar", "verdocs-radio-button", "verdocs-select-input", "verdocs-template-create", "verdocs-template-document-page", "verdocs-template-fields", "verdocs-template-role-properties", "verdocs-template-roles", "verdocs-template-sender", "verdocs-text-input", "verdocs-toolbar-icon"];
78
97
  components.forEach(tagName => { switch (tagName) {
79
98
  case "verdocs-build":
80
99
  if (!customElements.get(tagName)) {
@@ -83,30 +102,75 @@ function defineCustomElement$1() {
83
102
  break;
84
103
  case "verdocs-button":
85
104
  if (!customElements.get(tagName)) {
86
- defineCustomElement$8();
105
+ defineCustomElement$h();
106
+ }
107
+ break;
108
+ case "verdocs-checkbox":
109
+ if (!customElements.get(tagName)) {
110
+ defineCustomElement$g();
87
111
  }
88
112
  break;
89
113
  case "verdocs-component-error":
90
114
  if (!customElements.get(tagName)) {
91
- defineCustomElement$7();
115
+ defineCustomElement$f();
116
+ }
117
+ break;
118
+ case "verdocs-help-icon":
119
+ if (!customElements.get(tagName)) {
120
+ defineCustomElement$e();
92
121
  }
93
122
  break;
94
123
  case "verdocs-loader":
95
124
  if (!customElements.get(tagName)) {
96
- defineCustomElement$6();
125
+ defineCustomElement$d();
126
+ }
127
+ break;
128
+ case "verdocs-progress-bar":
129
+ if (!customElements.get(tagName)) {
130
+ defineCustomElement$c();
131
+ }
132
+ break;
133
+ case "verdocs-radio-button":
134
+ if (!customElements.get(tagName)) {
135
+ defineCustomElement$b();
136
+ }
137
+ break;
138
+ case "verdocs-select-input":
139
+ if (!customElements.get(tagName)) {
140
+ defineCustomElement$a();
97
141
  }
98
142
  break;
99
143
  case "verdocs-template-create":
100
144
  if (!customElements.get(tagName)) {
101
- defineCustomElement$5();
145
+ defineCustomElement$9();
102
146
  }
103
147
  break;
104
148
  case "verdocs-template-document-page":
105
149
  if (!customElements.get(tagName)) {
106
- defineCustomElement$4();
150
+ defineCustomElement$8();
107
151
  }
108
152
  break;
109
153
  case "verdocs-template-fields":
154
+ if (!customElements.get(tagName)) {
155
+ defineCustomElement$7();
156
+ }
157
+ break;
158
+ case "verdocs-template-role-properties":
159
+ if (!customElements.get(tagName)) {
160
+ defineCustomElement$6();
161
+ }
162
+ break;
163
+ case "verdocs-template-roles":
164
+ if (!customElements.get(tagName)) {
165
+ defineCustomElement$5();
166
+ }
167
+ break;
168
+ case "verdocs-template-sender":
169
+ if (!customElements.get(tagName)) {
170
+ defineCustomElement$4();
171
+ }
172
+ break;
173
+ case "verdocs-text-input":
110
174
  if (!customElements.get(tagName)) {
111
175
  defineCustomElement$3();
112
176
  }
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface VerdocsProgressBar extends Components.VerdocsProgressBar, HTMLElement {}
4
+ export const VerdocsProgressBar: {
5
+ prototype: VerdocsProgressBar;
6
+ new (): VerdocsProgressBar;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,6 @@
1
+ import { V as VerdocsProgressBar$1, d as defineCustomElement$1 } from './verdocs-progress-bar2.js';
2
+
3
+ const VerdocsProgressBar = VerdocsProgressBar$1;
4
+ const defineCustomElement = defineCustomElement$1;
5
+
6
+ export { VerdocsProgressBar, defineCustomElement };
@@ -0,0 +1,38 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+
3
+ const verdocsProgressBarCss = "verdocs-progress-bar{font-family:\"Barlow\", sans-serif;width:100%;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex-direction:column;flex-direction:column}verdocs-progress-bar .labels{display:-ms-flexbox;display:flex;margin:0 0 8px 0;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between}verdocs-progress-bar .labels .label{display:-ms-flexbox;display:flex;font-size:14px;font-weight:600;color:#33364b}verdocs-progress-bar .bar{display:-ms-flexbox;display:flex;-ms-flex:0 0 10px;flex:0 0 10px;border-radius:5px;background-color:#cccccc}verdocs-progress-bar .bar .slider{display:-ms-flexbox;display:flex;border-radius:5px;background-color:#55bc81}";
4
+
5
+ const VerdocsProgressBar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
6
+ constructor() {
7
+ super();
8
+ this.__registerHost();
9
+ this.label = '';
10
+ this.showPercent = false;
11
+ this.percent = 0;
12
+ }
13
+ render() {
14
+ const widthPercent = Math.ceil((100 * Math.min(this.percent, 100)) / 100);
15
+ return (h(Host, null, h("div", { class: "labels" }, this.label && h("div", { class: "label" }, this.label), this.showPercent && h("div", { class: "label" }, this.percent, "%")), h("div", { class: "bar" }, h("div", { class: "slider", style: { width: `${widthPercent}%` } }))));
16
+ }
17
+ static get style() { return verdocsProgressBarCss; }
18
+ }, [0, "verdocs-progress-bar", {
19
+ "label": [1],
20
+ "showPercent": [4, "show-percent"],
21
+ "percent": [2]
22
+ }]);
23
+ function defineCustomElement() {
24
+ if (typeof customElements === "undefined") {
25
+ return;
26
+ }
27
+ const components = ["verdocs-progress-bar"];
28
+ components.forEach(tagName => { switch (tagName) {
29
+ case "verdocs-progress-bar":
30
+ if (!customElements.get(tagName)) {
31
+ customElements.define(tagName, VerdocsProgressBar);
32
+ }
33
+ break;
34
+ } });
35
+ }
36
+ defineCustomElement();
37
+
38
+ export { VerdocsProgressBar as V, defineCustomElement as d };
@@ -11,7 +11,7 @@ import { d as defineCustomElement$4 } from './verdocs-button2.js';
11
11
  import { d as defineCustomElement$3 } from './verdocs-contact-picker2.js';
12
12
  import { d as defineCustomElement$2 } from './verdocs-toggle-button2.js';
13
13
 
14
- const verdocsSendCss = "verdocs-send{display:-ms-flexbox;display:flex;padding:10px;position:relative;background:#ffffff;-ms-flex-direction:column;flex-direction:column;font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif}verdocs-send .recipients{position:relative}verdocs-send .left-line{top:32px;left:20px;z-index:1;width:12px;bottom:30px;position:absolute;background:#ffffff;border-left:3px dotted #9b9b9b}verdocs-send .level{display:-ms-flexbox;display:flex;-webkit-column-gap:10px;-moz-column-gap:10px;column-gap:10px;margin-left:50px;position:relative;-ms-flex-direction:row;flex-direction:row;padding:8px 0 4px 0;border-bottom:1px solid #97979744}verdocs-send .level .level-icon{top:14px;z-index:2;left:-40px;width:24px;height:24px;position:absolute;background:#ffffff}verdocs-send .level .level-icon svg{fill:#00000089}verdocs-send .level .recipient{height:30px;display:-ms-flexbox;display:flex;-ms-flex:0 0 30px;flex:0 0 30px;color:#000000;cursor:pointer;font-size:14px;-ms-flex-align:center;align-items:center;border-radius:30px;-ms-flex-direction:row;flex-direction:row;background:#dddddd;white-space:nowrap;padding:2px 10px 2px 14px}verdocs-send .level .recipient .icon{width:22px;height:22px;-ms-flex:0 0 22px;flex:0 0 22px;margin:0 0 0 10px}verdocs-send .level .recipient .icon svg{width:22px;height:22px;fill:#333333;outline:none}verdocs-send .level .complete{-ms-flex:1;flex:1;height:30px;display:-ms-flexbox;display:flex;color:#000000;font-size:14px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;padding:3px 10px 3px 2px}verdocs-send .buttons{display:-ms-flexbox;display:flex;margin-top:10px;-webkit-column-gap:15px;-moz-column-gap:15px;column-gap:15px;-ms-flex-direction:row;flex-direction:row}verdocs-send verdocs-contact-picker{left:0;top:41px;z-index:10;position:absolute;border:1px solid #dddddd;-webkit-box-shadow:0 0 6px 3px rgba(0, 0, 0, 0.1);box-shadow:0 0 6px 3px rgba(0, 0, 0, 0.1)}";
14
+ const verdocsSendCss = "verdocs-send{display:-ms-flexbox;display:flex;padding:10px;position:relative;background:#ffffff;-ms-flex-direction:column;flex-direction:column;font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif}verdocs-send .recipients{position:relative}verdocs-send .left-line{top:32px;left:20px;z-index:1;width:12px;bottom:30px;position:absolute;background:#ffffff;border-left:3px dotted #9b9b9b}verdocs-send .level{display:-ms-flexbox;display:flex;-webkit-column-gap:10px;-moz-column-gap:10px;column-gap:10px;margin-left:50px;position:relative;-ms-flex-direction:row;flex-direction:row;padding:8px 0 4px 0;border-bottom:1px solid #97979744}verdocs-send .level .level-icon{top:14px;z-index:2;left:-40px;width:24px;height:24px;position:absolute;background:#ffffff}verdocs-send .level .level-icon svg{fill:#00000089}verdocs-send .level .recipient{height:30px;display:-ms-flexbox;display:flex;-ms-flex:0 0 30px;flex:0 0 30px;color:#000000;cursor:pointer;font-size:14px;-ms-flex-align:center;align-items:center;border-radius:30px;-ms-flex-direction:row;flex-direction:row;background:#dddddd;white-space:nowrap;border:2px solid #dddddd;padding:2px 10px 2px 14px}verdocs-send .level .recipient .icon{width:22px;height:22px;-ms-flex:0 0 22px;flex:0 0 22px;margin:0 0 0 10px}verdocs-send .level .recipient .icon svg{width:22px;height:22px;fill:#333333;outline:none}verdocs-send .level .complete{-ms-flex:1;flex:1;height:30px;display:-ms-flexbox;display:flex;color:#000000;font-size:14px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;padding:3px 10px 3px 2px}verdocs-send .buttons{display:-ms-flexbox;display:flex;margin-top:10px;-webkit-column-gap:15px;-moz-column-gap:15px;column-gap:15px;-ms-flex-direction:row;flex-direction:row}verdocs-send verdocs-contact-picker{left:0;top:41px;z-index:10;position:absolute;border:1px solid #dddddd;-webkit-box-shadow:0 0 6px 3px rgba(0, 0, 0, 0.1);box-shadow:0 0 6px 3px rgba(0, 0, 0, 0.1)}";
15
15
 
16
16
  const editIcon = '<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24" tabindex="-1"><path d="M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34a.9959.9959 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"></path></svg>';
17
17
  const startIcon = '<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24" tabindex="-1"><path d="M2 12C2 6.48 6.48 2 12 2s10 4.48 10 10-4.48 10-10 10S2 17.52 2 12zm10 6c3.31 0 6-2.69 6-6s-2.69-6-6-6-6 2.69-6 6 2.69 6 6 6z"></path></svg>';
@@ -108,8 +108,10 @@ const VerdocsSend$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
108
108
  const rolesAssigned = Object.values(this.rolesCompleted).filter(recipient => isValidEmail(recipient.email) || isValidPhone(recipient.phone));
109
109
  const allRolesAssigned = rolesAssigned.length >= roleNames.length;
110
110
  return (h(Host, { class: {} }, h("div", { class: "recipients" }, h("div", { class: "left-line" }), h("div", { class: `level level-start` }, this.getLevelIcon(-1), h("div", { class: "complete" }, "Send Envelope")), this.levels.map(level => (h("div", { class: `level level-${level}` }, this.getLevelIcon(level), this.rolesAtLevel[level].map(role => {
111
- var _a, _b, _c;
112
- return (h("div", { class: "recipient", style: { backgroundColor: getRGBA(getRoleIndex(roleNames, role.name)) }, onClick: e => this.handleClickRole(e, role) }, (_b = (_a = this.rolesCompleted[role.id]) === null || _a === void 0 ? void 0 : _a.full_name) !== null && _b !== void 0 ? _b : role.name, h("div", { class: "icon", innerHTML: editIcon }), this.showPickerForId === role.id && (h("verdocs-contact-picker", { onExit: () => (this.showPickerForId = ''), onNext: e => this.handleSelectContact(e, role), contactSuggestions: this.sessionContacts, templateRole: (_c = this.rolesCompleted[role.id]) !== null && _c !== void 0 ? _c : role, onSearchContacts: e => console.log('Search', e.detail) }))));
111
+ var _a, _b, _c, _d, _e, _f;
112
+ console.log('showing role', role);
113
+ const unknown = !role.email;
114
+ return unknown ? (h("div", { class: "recipient", style: { backgroundColor: getRGBA(getRoleIndex(roleNames, role.name)) }, onClick: e => this.handleClickRole(e, role) }, (_b = (_a = this.rolesCompleted[role.id]) === null || _a === void 0 ? void 0 : _a.full_name) !== null && _b !== void 0 ? _b : role.name, h("div", { class: "icon", innerHTML: editIcon }), this.showPickerForId === role.id && (h("verdocs-contact-picker", { onExit: () => (this.showPickerForId = ''), onNext: e => this.handleSelectContact(e, role), contactSuggestions: this.sessionContacts, templateRole: (_c = this.rolesCompleted[role.id]) !== null && _c !== void 0 ? _c : role, onSearchContacts: e => console.log('Search', e.detail) })))) : (h("div", { class: "recipient", style: { borderColor: getRGBA(getRoleIndex(roleNames, role.name)) }, onClick: e => this.handleClickRole(e, role) }, (_e = (_d = this.rolesCompleted[role.id]) === null || _d === void 0 ? void 0 : _d.full_name) !== null && _e !== void 0 ? _e : role.name, h("div", { class: "icon", innerHTML: editIcon }), this.showPickerForId === role.id && (h("verdocs-contact-picker", { onExit: () => (this.showPickerForId = ''), onNext: e => this.handleSelectContact(e, role), contactSuggestions: this.sessionContacts, templateRole: (_f = this.rolesCompleted[role.id]) !== null && _f !== void 0 ? _f : role, onSearchContacts: e => console.log('Search', e.detail) }))));
113
115
  })))), h("div", { class: `level level-done` }, this.getLevelIcon(this.levels.length), h("div", { class: "complete" }, "Signing Complete"))), h("div", { class: "buttons" }, h("verdocs-button", { label: "Cancel", size: "small", variant: "outline", onClick: e => this.handleCancel(e) }), h("verdocs-button", { label: "Send", size: "small", disabled: !allRolesAssigned, onClick: e => this.handleSend(e) }))));
114
116
  }
115
117
  static get style() { return verdocsSendCss; }
@@ -4,11 +4,12 @@ import { c as createTemplate, g as getTemplate } from './Templates2.js';
4
4
  import { c as createTemplateDocument } from './TemplateDocuments.js';
5
5
  import { V as VerdocsEndpoint } from './VerdocsEndpoint.js';
6
6
  import { S as SDKError } from './errors.js';
7
- import { d as defineCustomElement$3 } from './verdocs-button2.js';
8
- import { d as defineCustomElement$2 } from './verdocs-component-error2.js';
9
- import { d as defineCustomElement$1 } from './verdocs-loader2.js';
7
+ import { d as defineCustomElement$4 } from './verdocs-button2.js';
8
+ import { d as defineCustomElement$3 } from './verdocs-component-error2.js';
9
+ import { d as defineCustomElement$2 } from './verdocs-loader2.js';
10
+ import { d as defineCustomElement$1 } from './verdocs-progress-bar2.js';
10
11
 
11
- const verdocsTemplateCreateCss = "verdocs-template-create{font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif}verdocs-template-create form{background-color:#ffffff;padding:12px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}verdocs-template-create form .upload-box{-webkit-box-sizing:border-box;box-sizing:border-box;width:320px;text-align:center;padding:44px 18px 66px;border:2px dashed #979797;color:rgba(0, 0, 0, 0.54)}verdocs-template-create form .upload-box svg{width:64px;fill:#5c6575}verdocs-template-create .loader-wrapper{background-color:#ffffff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;width:320px;height:320px;text-align:center;border:2px dashed #979797;-ms-flex-pack:end;justify-content:flex-end;padding:0 0 30px 0}verdocs-template-create .buttons{display:-ms-flexbox;display:flex;-webkit-column-gap:8px;-moz-column-gap:8px;column-gap:8px;margin-top:16px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end}verdocs-template-create .buttons .flex-fill{-ms-flex:1;flex:1}verdocs-template-create ::-webkit-input-placeholder{color:#aaaaaa}verdocs-template-create ::-moz-placeholder{color:#aaaaaa}verdocs-template-create :-ms-input-placeholder{color:#aaaaaa}verdocs-template-create ::-ms-input-placeholder{color:#aaaaaa}verdocs-template-create ::placeholder{color:#aaaaaa}";
12
+ const verdocsTemplateCreateCss = "verdocs-template-create{font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif}verdocs-template-create form{background-color:#ffffff;padding:12px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}verdocs-template-create form .upload-box{-webkit-box-sizing:border-box;box-sizing:border-box;width:320px;text-align:center;padding:44px 18px 66px;border:2px dashed #979797;color:rgba(0, 0, 0, 0.54)}verdocs-template-create form .upload-box svg{width:64px;fill:#5c6575}verdocs-template-create .loader-wrapper{background-color:#ffffff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;width:320px;height:320px;text-align:center;border:2px dashed #979797;-ms-flex-pack:end;justify-content:flex-end}verdocs-template-create .progress-wrapper{padding:20px}verdocs-template-create .buttons{display:-ms-flexbox;display:flex;-webkit-column-gap:8px;-moz-column-gap:8px;column-gap:8px;margin-top:16px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:end;justify-content:flex-end}verdocs-template-create .buttons .flex-fill{-ms-flex:1;flex:1}verdocs-template-create ::-webkit-input-placeholder{color:#aaaaaa}verdocs-template-create ::-moz-placeholder{color:#aaaaaa}verdocs-template-create :-ms-input-placeholder{color:#aaaaaa}verdocs-template-create ::-ms-input-placeholder{color:#aaaaaa}verdocs-template-create ::placeholder{color:#aaaaaa}";
12
13
 
13
14
  const unicodeNBSP = ' ';
14
15
  const FileIcon = '<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24"><path d="M6 2c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6H6zm7 7V3.5L18.5 9H13z"></path></svg>';
@@ -22,6 +23,8 @@ const VerdocsTemplateCreate = /*@__PURE__*/ proxyCustomElement(class extends HTM
22
23
  this.endpoint = VerdocsEndpoint.getDefault();
23
24
  this.file = undefined;
24
25
  this.creating = false;
26
+ this.progressLabel = 'Uploading...';
27
+ this.progressPercent = 0;
25
28
  }
26
29
  componentWillLoad() {
27
30
  this.endpoint.setTimeout(30000);
@@ -43,7 +46,7 @@ const VerdocsTemplateCreate = /*@__PURE__*/ proxyCustomElement(class extends HTM
43
46
  this.exit.emit();
44
47
  }
45
48
  async handleSubmit(e) {
46
- var _a, _b, _c;
49
+ var _a, _b, _c, _d;
47
50
  e.stopPropagation();
48
51
  console.log('Submitting');
49
52
  // Should be true if we're here because onClick is only enabled then. We're just guarding this for Typescript.
@@ -51,34 +54,26 @@ const VerdocsTemplateCreate = /*@__PURE__*/ proxyCustomElement(class extends HTM
51
54
  return;
52
55
  }
53
56
  this.creating = true;
57
+ this.progressLabel = 'Uploading...';
54
58
  try {
55
59
  const template = await createTemplate(this.endpoint, { name: this.file.name });
56
60
  console.log('[CREATE] Created template', template);
57
- const template_document = await createTemplateDocument(this.endpoint, template.id, this.file);
61
+ const template_document = await createTemplateDocument(this.endpoint, template.id, this.file, percent => {
62
+ console.log('Upload progress', percent);
63
+ this.progressPercent = percent;
64
+ });
58
65
  console.log('[CREATE] Created document', template_document);
59
- let finalTemplate = null;
60
- const processingWait = setInterval(async () => {
61
- var _a;
62
- console.log('[CREATE] Waiting for template to be processed...', template_document);
63
- finalTemplate = await getTemplate(this.endpoint, template.id);
64
- if (finalTemplate === null || finalTemplate === void 0 ? void 0 : finalTemplate.processed) {
65
- console.log('[CREATE] Retrieved new template', finalTemplate);
66
- // for await (let pageNumber of Array.from(Array(template_document.page_numbers).keys(), n => n + 1)) {
67
- // console.log('Updating page', pageNumber);
68
- // const page = await createPage(this.endpoint, template.id, {sequence: pageNumber, page_number: pageNumber, document_id: template_document.id});
69
- // console.log('Created page', page);
70
- // }
71
- if (processingWait) {
72
- clearInterval(processingWait);
73
- }
74
- (_a = this.next) === null || _a === void 0 ? void 0 : _a.emit(finalTemplate);
75
- this.creating = false;
76
- }
77
- }, 3000);
66
+ this.progressLabel = 'Processing...';
67
+ this.progressPercent = 0;
68
+ const finalTemplate = await getTemplate(this.endpoint, template.id);
69
+ (_a = this.next) === null || _a === void 0 ? void 0 : _a.emit(finalTemplate);
70
+ this.creating = false;
71
+ this.progressLabel = '';
72
+ this.progressPercent = 0;
78
73
  }
79
74
  catch (e) {
80
75
  console.log('[CREATE] Error creating template', e);
81
- (_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(new SDKError(e.message, (_b = e.response) === null || _b === void 0 ? void 0 : _b.status, (_c = e.response) === null || _c === void 0 ? void 0 : _c.data));
76
+ (_b = this.sdkError) === null || _b === void 0 ? void 0 : _b.emit(new SDKError(e.message, (_c = e.response) === null || _c === void 0 ? void 0 : _c.status, (_d = e.response) === null || _d === void 0 ? void 0 : _d.data));
82
77
  this.creating = false;
83
78
  }
84
79
  }
@@ -86,7 +81,7 @@ const VerdocsTemplateCreate = /*@__PURE__*/ proxyCustomElement(class extends HTM
86
81
  if (!this.endpoint.session) {
87
82
  return (h(Host, null, h("verdocs-component-error", { message: "You must be authenticated to use this module." })));
88
83
  }
89
- return (h("form", { onSubmit: e => e.preventDefault(), onClick: e => e.stopPropagation(), autocomplete: "off" }, h("input", { type: "file", id: "verdocs-template-create-file", multiple: true, accept: "application/pdf", style: { display: 'none' }, onChange: e => this.handleFileChanged(e) }), this.creating ? (h("div", { class: "loader-wrapper" }, h("verdocs-loader", null), h("div", { class: "loading-text" }, "Processing, please wait..."))) : (h("div", { class: "upload-box" }, h("div", null, h("span", { innerHTML: FileIcon })), h("div", { style: { marginTop: '20px', fontSize: '20px', fontWeight: 'bold', overflowWrap: 'anywhere' } }, this.file ? this.file.name : 'Drag a file here'), h("div", { style: {
84
+ return (h("form", { onSubmit: e => e.preventDefault(), onClick: e => e.stopPropagation(), autocomplete: "off" }, h("input", { type: "file", id: "verdocs-template-create-file", multiple: true, accept: "application/pdf", style: { display: 'none' }, onChange: e => this.handleFileChanged(e) }), this.creating ? (h("div", { class: "loader-wrapper" }, h("verdocs-loader", null), this.progressLabel && (h("div", { class: "progress-wrapper" }, h("verdocs-progress-bar", { showPercent: true, percent: this.progressPercent, label: this.progressLabel }))))) : (h("div", { class: "upload-box" }, h("div", null, h("span", { innerHTML: FileIcon })), h("div", { style: { marginTop: '20px', fontSize: '20px', fontWeight: 'bold', overflowWrap: 'anywhere' } }, this.file ? this.file.name : 'Drag a file here'), h("div", { style: {
90
85
  marginTop: '20px',
91
86
  marginBottom: '20px',
92
87
  fontSize: '16px',
@@ -97,13 +92,15 @@ const VerdocsTemplateCreate = /*@__PURE__*/ proxyCustomElement(class extends HTM
97
92
  }, [0, "verdocs-template-create", {
98
93
  "endpoint": [16],
99
94
  "file": [32],
100
- "creating": [32]
95
+ "creating": [32],
96
+ "progressLabel": [32],
97
+ "progressPercent": [32]
101
98
  }]);
102
99
  function defineCustomElement() {
103
100
  if (typeof customElements === "undefined") {
104
101
  return;
105
102
  }
106
- const components = ["verdocs-template-create", "verdocs-button", "verdocs-component-error", "verdocs-loader"];
103
+ const components = ["verdocs-template-create", "verdocs-button", "verdocs-component-error", "verdocs-loader", "verdocs-progress-bar"];
107
104
  components.forEach(tagName => { switch (tagName) {
108
105
  case "verdocs-template-create":
109
106
  if (!customElements.get(tagName)) {
@@ -112,15 +109,20 @@ function defineCustomElement() {
112
109
  break;
113
110
  case "verdocs-button":
114
111
  if (!customElements.get(tagName)) {
115
- defineCustomElement$3();
112
+ defineCustomElement$4();
116
113
  }
117
114
  break;
118
115
  case "verdocs-component-error":
119
116
  if (!customElements.get(tagName)) {
120
- defineCustomElement$2();
117
+ defineCustomElement$3();
121
118
  }
122
119
  break;
123
120
  case "verdocs-loader":
121
+ if (!customElements.get(tagName)) {
122
+ defineCustomElement$2();
123
+ }
124
+ break;
125
+ case "verdocs-progress-bar":
124
126
  if (!customElements.get(tagName)) {
125
127
  defineCustomElement$1();
126
128
  }
@@ -35,6 +35,7 @@ const VerdocsTemplateFieldProperties = /*@__PURE__*/ proxyCustomElement(class ex
35
35
  this.setting = null;
36
36
  this.name = '';
37
37
  this.roleName = '';
38
+ this.group = '';
38
39
  this.fieldType = '';
39
40
  this.required = false;
40
41
  this.options = [];
@@ -65,6 +66,7 @@ const VerdocsTemplateFieldProperties = /*@__PURE__*/ proxyCustomElement(class ex
65
66
  }
66
67
  this.type = field.type;
67
68
  this.name = field.name;
69
+ this.group = field.name;
68
70
  this.roleName = field.role_name;
69
71
  this.required = field.required;
70
72
  this.fieldType = field.type;
@@ -163,7 +165,7 @@ const VerdocsTemplateFieldProperties = /*@__PURE__*/ proxyCustomElement(class ex
163
165
  if (this.helpText && this.showingHelp) {
164
166
  return (h(Host, null, h("h6", null, capitalize(this.fieldType), " Settings ", h("div", { style: { flex: '1' } }), h("div", { class: "help-icon", innerHTML: HelpIcon, onClick: () => (this.showingHelp = false) })), h("p", { class: "instructions", innerHTML: this.helpText })));
165
167
  }
166
- return (h(Host, null, h("h6", null, capitalize(this.fieldType), " Settings ", h("div", { style: { flex: '1' } }), this.helpText && h("div", { class: "help-icon", innerHTML: HelpIcon, onClick: () => (this.showingHelp = true) })), h("form", { onSubmit: e => e.preventDefault(), onClick: e => e.stopPropagation(), autocomplete: "off" }, h("div", { class: "row" }, h("verdocs-text-input", { id: "verdocs-field-name", label: "Field Name", value: this.name, autocomplete: "off",
168
+ return (h(Host, null, h("h6", null, capitalize(this.fieldType.replace('_', ' ')), " Settings ", h("div", { style: { flex: '1' } }), this.helpText && h("div", { class: "help-icon", innerHTML: HelpIcon, onClick: () => (this.showingHelp = true) })), h("form", { onSubmit: e => e.preventDefault(), onClick: e => e.stopPropagation(), autocomplete: "off" }, h("div", { class: "row" }, h("verdocs-text-input", { id: "verdocs-field-name", label: "Field Name", value: this.name, autocomplete: "off",
167
169
  // helpText="The internal name of the field. Must be unique, and contain only letters, numbers, and dashes. After an envelope is completed, the value entered by the signer will be tagged with this key."
168
170
  placeholder: "Field Name...", onInput: (e) => {
169
171
  this.name = e.target.value;
@@ -171,6 +173,9 @@ const VerdocsTemplateFieldProperties = /*@__PURE__*/ proxyCustomElement(class ex
171
173
  } })), h("div", { class: "row" }, h("div", { class: "input-label" }, "Role:"), h("verdocs-select-input", { value: this.roleName, options: state.template.roles.map(role => ({ label: role.name, value: role.name })), onInput: (e) => {
172
174
  this.roleName = e.target.value;
173
175
  this.dirty = true;
176
+ } })), ['checkbox_group', 'radio_button_group'].includes(this.type) && (h("verdocs-text-input", { id: "verdocs-field-group", label: "Group Name", value: this.group, autocomplete: "off", placeholder: "Group Name...", onInput: (e) => {
177
+ this.group = e.target.value;
178
+ this.dirty = true;
174
179
  } })), ['textbox', 'textarea'].includes(this.type) && (h("verdocs-text-input", { id: "verdocs-field-placeholder", label: "Placeholder", value: this.name, autocomplete: "off",
175
180
  // helpText="Placeholder to display if the field is empty."
176
181
  placeholder: "Placeholder...", onInput: (e) => {
@@ -216,6 +221,7 @@ const VerdocsTemplateFieldProperties = /*@__PURE__*/ proxyCustomElement(class ex
216
221
  "setting": [32],
217
222
  "name": [32],
218
223
  "roleName": [32],
224
+ "group": [32],
219
225
  "fieldType": [32],
220
226
  "required": [32],
221
227
  "options": [32],
@@ -12,7 +12,7 @@ import { d as defineCustomElement$3 } from './verdocs-loader2.js';
12
12
  import { d as defineCustomElement$2 } from './verdocs-template-document-page2.js';
13
13
  import { d as defineCustomElement$1 } from './verdocs-toolbar-icon2.js';
14
14
 
15
- const verdocsTemplateFieldsCss = "verdocs-template-fields{font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif;position:relative}verdocs-template-fields .page-0{padding:65px 15px 0 15px;-webkit-box-sizing:border-box;box-sizing:border-box}verdocs-template-fields .page-0 .user-placed-fields{height:100px;position:relative;background:#ffffff;-webkit-box-shadow:0 0 10px 5px #0000000f;box-shadow:0 0 10px 5px #0000000f}verdocs-template-fields .page-0 .user-placed-fields .title{top:0;left:0;color:#ffffff;font-size:12px;padding:3px 6px;font-weight:bold;position:absolute;background:#46497d}verdocs-template-fields .pages{display:-ms-flexbox;display:flex;padding:15px;row-gap:15px;min-height:200px;position:relative;-ms-flex-align:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex-direction:column;flex-direction:column}verdocs-template-fields .pages div,verdocs-template-fields .pages canvas{-webkit-box-sizing:border-box;box-sizing:border-box}verdocs-template-fields #verdocs-template-fields-toolbar{height:50px;display:-ms-flexbox;display:flex;-ms-flex:0 0 50px;flex:0 0 50px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:center;justify-content:center;-webkit-column-gap:15px;-moz-column-gap:15px;column-gap:15px;background:#46497d}verdocs-template-fields #verdocs-template-fields-toolbar svg{width:24px;height:24px}verdocs-template-fields.placing-attachment{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m10.55 16.55 7.275-7.275L16.05 7.5l-5.5 5.45-2.675-2.65L6.1 12.075Zm-5.375 4.925q-1.125 0-1.887-.763-.763-.762-.763-1.887V5.175q0-1.125.763-1.888.762-.762 1.887-.762h13.65q1.125 0 1.888.762.762.763.762 1.888v13.65q0 1.125-.762 1.887-.763.763-1.888.763Zm0-2.65h13.65V5.175H5.175v13.65Zm0-13.65v13.65-13.65Z'/%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-checkbox_group{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m10.55 16.55 7.275-7.275L16.05 7.5l-5.5 5.45-2.675-2.65L6.1 12.075Zm-5.375 4.925q-1.125 0-1.887-.763-.763-.762-.763-1.887V5.175q0-1.125.763-1.888.762-.762 1.887-.762h13.65q1.125 0 1.888.762.762.763.762 1.888v13.65q0 1.125-.762 1.887-.763.763-1.888.763Zm0-2.65h13.65V5.175H5.175v13.65Zm0-13.65v13.65-13.65Z'/%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-date{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath fill='%23000000' d='M7.6 13.925q-.55 0-.925-.375t-.375-.925q0-.55.375-.937.375-.388.925-.388t.925.388q.375.387.375.937t-.375.925q-.375.375-.925.375Zm4.4 0q-.55 0-.925-.375t-.375-.925q0-.55.375-.937.375-.388.925-.388t.925.388q.375.387.375.937t-.375.925q-.375.375-.925.375Zm4.4 0q-.55 0-.925-.375t-.375-.925q0-.55.375-.937.375-.388.925-.388t.925.388q.375.387.375.937t-.375.925q-.375.375-.925.375ZM5.3 22.85q-1.325 0-2.238-.912-.912-.913-.912-2.238V6.3q0-1.325.912-2.238.913-.912 2.238-.912H6v-2h2.575v2h6.85v-2H18v2h.7q1.325 0 2.238.912.912.913.912 2.238v13.4q0 1.325-.912 2.238-.913.912-2.238.912Zm0-3.15h13.4V10H5.3v9.7ZM5.3 8h13.4V6.3H5.3Zm0 0V6.3 8Z'/%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-dropdown{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24' stroke-width='1.5' stroke='currentColor'%3E%3Cpath stroke='%23000000' stroke-linecap='round' stroke-linejoin='round' d='M3 4.5h14.25M3 9h9.75M3 13.5h9.75m4.5-4.5v12m0 0l-3.75-3.75M17.25 21L21 17.25' /%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-initial{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='M6.225 20.775V7h-5V3.225H15V7h-5v13.775Zm9.775 0v-8h-3V9h9.775v3.775h-3v8Z'/%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-payment{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m10.55 16.55 7.275-7.275L16.05 7.5l-5.5 5.45-2.675-2.65L6.1 12.075Zm-5.375 4.925q-1.125 0-1.887-.763-.763-.762-.763-1.887V5.175q0-1.125.763-1.888.762-.762 1.887-.762h13.65q1.125 0 1.888.762.762.763.762 1.888v13.65q0 1.125-.762 1.887-.763.763-1.888.763Zm0-2.65h13.65V5.175H5.175v13.65Zm0-13.65v13.65-13.65Z'/%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-radio_button_group{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='M12 17q2.075 0 3.538-1.463Q17 14.075 17 12t-1.462-3.538Q14.075 7 12 7 9.925 7 8.463 8.462 7 9.925 7 12q0 2.075 1.463 3.537Q9.925 17 12 17Zm0 5.85q-2.275 0-4.25-.85t-3.438-2.312Q2.85 18.225 2 16.25q-.85-1.975-.85-4.25T2 7.75q.85-1.975 2.312-3.438Q5.775 2.85 7.75 2q1.975-.85 4.25-.85t4.25.85q1.975.85 3.438 2.312Q21.15 5.775 22 7.75q.85 1.975.85 4.25T22 16.25q-.85 1.975-2.312 3.438Q18.225 21.15 16.25 22q-1.975.85-4.25.85Zm0-3.15q3.25 0 5.475-2.225Q19.7 15.25 19.7 12q0-3.25-2.225-5.475Q15.25 4.3 12 4.3q-3.25 0-5.475 2.225Q4.3 8.75 4.3 12q0 3.25 2.225 5.475Q8.75 19.7 12 19.7Zm0-7.7Z'/%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-signature{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m9.225 21.225 4.65-4.65h8.45v4.65Zm-5.35-2.2H5.05l8.5-8.5-1.175-1.175-8.5 8.5Zm14.25-9.95L13.8 4.8l1.325-1.325q.625-.65 1.525-.663.9-.012 1.6.663l1.225 1.175q.675.675.663 1.562-.013.888-.663 1.513ZM16.7 10.55 6 21.225H1.675V16.9L12.35 6.225Zm-3.725-.625-.6-.575 1.175 1.175Z'/%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-textarea{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='M3.225 20.725v-3.15h11.55v3.15Zm0-4.775V12.8h17.55v3.15Zm0-4.75V8.05h17.55v3.15Zm0-4.775v-3.15h17.55v3.15Z'/%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-textbox{cursor:url(\"data:image/svg+xml,%3Csvg width='32' height='15' viewBox='0 0 32 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='path-1-inside-1_1401_24' fill='white'%3E%3Cpath d='M0 0H32V15H0V0Z'/%3E%3C/mask%3E%3Cpath d='M0 0H32V15H0V0Z' fill='%234C56CB' fill-opacity='0.1'/%3E%3Cpath d='M0 0V-1H-1V0H0ZM0 15H-1V16H0V15ZM0 1H32V-1H0V1ZM32 14H0V16H32V14ZM1 15V0H-1V15H1Z' fill='%234C56CB' mask='url(%23path-1-inside-1_1401_24)'/%3E%3Cpath d='M3 11.8V8.65H14.15V11.8H3ZM3 6.65V3.5H20.15V6.65H3Z' fill='%234C56CB'/%3E%3Cline x1='31.5' y1='1' x2='31.5' y2='14' stroke='%234C56CB' stroke-opacity='0.32' stroke-dasharray='1 1'/%3E%3C/svg%3E%0A\") 0 14, pointer}verdocs-template-fields.placing-timestamp{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath fill='%23000000' d='M9 1h6v2H9zm10.03 6.39 1.42-1.42c-.43-.51-.9-.99-1.41-1.41l-1.42 1.42C16.07 4.74 14.12 4 12 4c-4.97 0-9 4.03-9 9s4.02 9 9 9 9-4.03 9-9c0-2.12-.74-4.07-1.97-5.61zM13 14h-2V8h2v6z'%3E%3C/path%3E%3C/svg%3E\") 16 16, pointer}";
15
+ const verdocsTemplateFieldsCss = "verdocs-template-fields{font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif;position:relative;display:block;min-height:600px}verdocs-template-fields .page-0{padding:65px 15px 0 15px;-webkit-box-sizing:border-box;box-sizing:border-box}verdocs-template-fields .page-0 .user-placed-fields{height:100px;position:relative;background:#ffffff;-webkit-box-shadow:0 0 10px 5px #0000000f;box-shadow:0 0 10px 5px #0000000f}verdocs-template-fields .page-0 .user-placed-fields .title{top:0;left:0;color:#ffffff;font-size:12px;padding:3px 6px;font-weight:bold;position:absolute;background:#46497d}verdocs-template-fields .pages{display:-ms-flexbox;display:flex;padding:15px;row-gap:15px;min-height:200px;position:relative;-ms-flex-align:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex-direction:column;flex-direction:column}verdocs-template-fields .pages div,verdocs-template-fields .pages canvas{-webkit-box-sizing:border-box;box-sizing:border-box}verdocs-template-fields #verdocs-template-fields-toolbar{height:50px;display:-ms-flexbox;display:flex;-ms-flex:0 0 50px;flex:0 0 50px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:center;justify-content:center;-webkit-column-gap:15px;-moz-column-gap:15px;column-gap:15px;background:#46497d}verdocs-template-fields #verdocs-template-fields-toolbar svg{width:24px;height:24px}verdocs-template-fields.placing-attachment{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m10.55 16.55 7.275-7.275L16.05 7.5l-5.5 5.45-2.675-2.65L6.1 12.075Zm-5.375 4.925q-1.125 0-1.887-.763-.763-.762-.763-1.887V5.175q0-1.125.763-1.888.762-.762 1.887-.762h13.65q1.125 0 1.888.762.762.763.762 1.888v13.65q0 1.125-.762 1.887-.763.763-1.888.763Zm0-2.65h13.65V5.175H5.175v13.65Zm0-13.65v13.65-13.65Z'/%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-checkbox_group{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m10.55 16.55 7.275-7.275L16.05 7.5l-5.5 5.45-2.675-2.65L6.1 12.075Zm-5.375 4.925q-1.125 0-1.887-.763-.763-.762-.763-1.887V5.175q0-1.125.763-1.888.762-.762 1.887-.762h13.65q1.125 0 1.888.762.762.763.762 1.888v13.65q0 1.125-.762 1.887-.763.763-1.888.763Zm0-2.65h13.65V5.175H5.175v13.65Zm0-13.65v13.65-13.65Z'/%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-date{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath fill='%23000000' d='M7.6 13.925q-.55 0-.925-.375t-.375-.925q0-.55.375-.937.375-.388.925-.388t.925.388q.375.387.375.937t-.375.925q-.375.375-.925.375Zm4.4 0q-.55 0-.925-.375t-.375-.925q0-.55.375-.937.375-.388.925-.388t.925.388q.375.387.375.937t-.375.925q-.375.375-.925.375Zm4.4 0q-.55 0-.925-.375t-.375-.925q0-.55.375-.937.375-.388.925-.388t.925.388q.375.387.375.937t-.375.925q-.375.375-.925.375ZM5.3 22.85q-1.325 0-2.238-.912-.912-.913-.912-2.238V6.3q0-1.325.912-2.238.913-.912 2.238-.912H6v-2h2.575v2h6.85v-2H18v2h.7q1.325 0 2.238.912.912.913.912 2.238v13.4q0 1.325-.912 2.238-.913.912-2.238.912Zm0-3.15h13.4V10H5.3v9.7ZM5.3 8h13.4V6.3H5.3Zm0 0V6.3 8Z'/%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-dropdown{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24' stroke-width='1.5' stroke='currentColor'%3E%3Cpath stroke='%23000000' stroke-linecap='round' stroke-linejoin='round' d='M3 4.5h14.25M3 9h9.75M3 13.5h9.75m4.5-4.5v12m0 0l-3.75-3.75M17.25 21L21 17.25' /%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-initial{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='M6.225 20.775V7h-5V3.225H15V7h-5v13.775Zm9.775 0v-8h-3V9h9.775v3.775h-3v8Z'/%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-payment{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m10.55 16.55 7.275-7.275L16.05 7.5l-5.5 5.45-2.675-2.65L6.1 12.075Zm-5.375 4.925q-1.125 0-1.887-.763-.763-.762-.763-1.887V5.175q0-1.125.763-1.888.762-.762 1.887-.762h13.65q1.125 0 1.888.762.762.763.762 1.888v13.65q0 1.125-.762 1.887-.763.763-1.888.763Zm0-2.65h13.65V5.175H5.175v13.65Zm0-13.65v13.65-13.65Z'/%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-radio_button_group{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='M12 17q2.075 0 3.538-1.463Q17 14.075 17 12t-1.462-3.538Q14.075 7 12 7 9.925 7 8.463 8.462 7 9.925 7 12q0 2.075 1.463 3.537Q9.925 17 12 17Zm0 5.85q-2.275 0-4.25-.85t-3.438-2.312Q2.85 18.225 2 16.25q-.85-1.975-.85-4.25T2 7.75q.85-1.975 2.312-3.438Q5.775 2.85 7.75 2q1.975-.85 4.25-.85t4.25.85q1.975.85 3.438 2.312Q21.15 5.775 22 7.75q.85 1.975.85 4.25T22 16.25q-.85 1.975-2.312 3.438Q18.225 21.15 16.25 22q-1.975.85-4.25.85Zm0-3.15q3.25 0 5.475-2.225Q19.7 15.25 19.7 12q0-3.25-2.225-5.475Q15.25 4.3 12 4.3q-3.25 0-5.475 2.225Q4.3 8.75 4.3 12q0 3.25 2.225 5.475Q8.75 19.7 12 19.7Zm0-7.7Z'/%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-signature{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='m9.225 21.225 4.65-4.65h8.45v4.65Zm-5.35-2.2H5.05l8.5-8.5-1.175-1.175-8.5 8.5Zm14.25-9.95L13.8 4.8l1.325-1.325q.625-.65 1.525-.663.9-.012 1.6.663l1.225 1.175q.675.675.663 1.562-.013.888-.663 1.513ZM16.7 10.55 6 21.225H1.675V16.9L12.35 6.225Zm-3.725-.625-.6-.575 1.175 1.175Z'/%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-textarea{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath d='M3.225 20.725v-3.15h11.55v3.15Zm0-4.775V12.8h17.55v3.15Zm0-4.75V8.05h17.55v3.15Zm0-4.775v-3.15h17.55v3.15Z'/%3E%3C/svg%3E\") 16 16, pointer}verdocs-template-fields.placing-textbox{cursor:url(\"data:image/svg+xml,%3Csvg width='32' height='15' viewBox='0 0 32 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='path-1-inside-1_1401_24' fill='white'%3E%3Cpath d='M0 0H32V15H0V0Z'/%3E%3C/mask%3E%3Cpath d='M0 0H32V15H0V0Z' fill='%234C56CB' fill-opacity='0.1'/%3E%3Cpath d='M0 0V-1H-1V0H0ZM0 15H-1V16H0V15ZM0 1H32V-1H0V1ZM32 14H0V16H32V14ZM1 15V0H-1V15H1Z' fill='%234C56CB' mask='url(%23path-1-inside-1_1401_24)'/%3E%3Cpath d='M3 11.8V8.65H14.15V11.8H3ZM3 6.65V3.5H20.15V6.65H3Z' fill='%234C56CB'/%3E%3Cline x1='31.5' y1='1' x2='31.5' y2='14' stroke='%234C56CB' stroke-opacity='0.32' stroke-dasharray='1 1'/%3E%3C/svg%3E%0A\") 0 14, pointer}verdocs-template-fields.placing-timestamp{cursor:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' width='24'%3E%3Cpath fill='%23000000' d='M9 1h6v2H9zm10.03 6.39 1.42-1.42c-.43-.51-.9-.99-1.41-1.41l-1.42 1.42C16.07 4.74 14.12 4 12 4c-4.97 0-9 4.03-9 9s4.02 9 9 9 9-4.03 9-9c0-2.12-.74-4.07-1.97-5.61zM13 14h-2V8h2v6z'%3E%3C/path%3E%3C/svg%3E\") 16 16, pointer}";
16
16
 
17
17
  const iconTextbox = '<svg xmlns="http://www.w3.org/2000/svg" height="24" width="24"><path fill="#ffffff" d="M3.425 16.15V13h11.15v3.15Zm0-5.15V7.85h17.15V11Z"/></svg>';
18
18
  const iconTextarea = '<svg xmlns="http://www.w3.org/2000/svg" height="24" width="24"><path fill="#ffffff" d="M3.225 20.725v-3.15h11.55v3.15Zm0-4.775V12.8h17.55v3.15Zm0-4.75V8.05h17.55v3.15Zm0-4.775v-3.15h17.55v3.15Z"/></svg>';