@verdocs/web-sdk 1.14.7 → 1.14.9

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 (148) hide show
  1. package/dist/cjs/loader.cjs.js +1 -1
  2. package/dist/cjs/verdocs-auth.cjs.entry.js +5 -10
  3. package/dist/cjs/verdocs-button-panel_3.cjs.entry.js +2 -2
  4. package/dist/cjs/verdocs-checkbox_4.cjs.entry.js +1 -1
  5. package/dist/cjs/verdocs-envelope-sidebar.cjs.entry.js +1 -1
  6. package/dist/cjs/verdocs-field-checkbox.cjs.entry.js +1 -1
  7. package/dist/cjs/verdocs-field-dropdown.cjs.entry.js +1 -1
  8. package/dist/cjs/verdocs-field-textarea.cjs.entry.js +48 -4
  9. package/dist/cjs/verdocs-field-textbox.cjs.entry.js +32 -19
  10. package/dist/cjs/verdocs-status-indicator.cjs.entry.js +3 -2
  11. package/dist/cjs/verdocs-template-fields_4.cjs.entry.js +4 -3
  12. package/dist/cjs/verdocs-template-reminders.cjs.entry.js +37 -17
  13. package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
  14. package/dist/collection/collection-manifest.json +0 -1
  15. package/dist/collection/components/controls/verdocs-checkbox/verdocs-checkbox.css +3 -4
  16. package/dist/collection/components/embeds/verdocs-auth/verdocs-auth.js +6 -12
  17. package/dist/collection/components/envelopes/verdocs-envelope-sidebar/verdocs-envelope-sidebar.css +2 -0
  18. package/dist/collection/components/envelopes/verdocs-status-indicator/verdocs-status-indicator.css +2 -3
  19. package/dist/collection/components/envelopes/verdocs-status-indicator/verdocs-status-indicator.js +2 -1
  20. package/dist/collection/components/fields/verdocs-field-attachment/verdocs-field-attachment.js +8 -3
  21. package/dist/collection/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.css +2 -1
  22. package/dist/collection/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.js +8 -3
  23. package/dist/collection/components/fields/verdocs-field-date/verdocs-field-date.js +8 -3
  24. package/dist/collection/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.css +3 -2
  25. package/dist/collection/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.js +8 -3
  26. package/dist/collection/components/fields/verdocs-field-initial/verdocs-field-initial.js +8 -3
  27. package/dist/collection/components/fields/verdocs-field-radio-button-group/verdocs-field-radio-button.js +8 -3
  28. package/dist/collection/components/fields/verdocs-field-signature/verdocs-field-signature.js +8 -3
  29. package/dist/collection/components/fields/verdocs-field-textarea/verdocs-field-textarea.css +13 -8
  30. package/dist/collection/components/fields/verdocs-field-textarea/verdocs-field-textarea.js +75 -5
  31. package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.css +1 -37
  32. package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.js +59 -20
  33. package/dist/collection/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.js +8 -3
  34. package/dist/collection/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.js +10 -5
  35. package/dist/collection/components/templates/verdocs-template-fields/verdocs-template-fields.js +4 -3
  36. package/dist/collection/components/templates/verdocs-template-fields/verdocs-template-fields.stories.js +1 -1
  37. package/dist/collection/components/templates/verdocs-template-reminders/verdocs-template-reminders.js +37 -17
  38. package/dist/collection/components/templates/verdocs-template-reminders/verdocs-template-reminders.stories.js +1 -1
  39. package/dist/components/Recipients.js +74 -0
  40. package/dist/components/Toast.js +1 -74
  41. package/dist/components/index.d.ts +0 -1
  42. package/dist/components/index.js +0 -1
  43. package/dist/components/verdocs-auth.js +10 -22
  44. package/dist/components/verdocs-checkbox2.js +1 -1
  45. package/dist/components/verdocs-envelope-recipient-summary2.js +2 -1
  46. package/dist/components/verdocs-envelope-sidebar.js +1 -1
  47. package/dist/components/verdocs-field-checkbox.js +1 -1
  48. package/dist/components/verdocs-field-dropdown.js +1 -1
  49. package/dist/components/verdocs-field-textarea.js +49 -3
  50. package/dist/components/verdocs-field-textbox.js +33 -18
  51. package/dist/components/verdocs-sign.js +2 -1
  52. package/dist/components/verdocs-status-indicator.js +3 -2
  53. package/dist/components/verdocs-template-field-properties2.js +2 -2
  54. package/dist/components/verdocs-template-fields2.js +4 -3
  55. package/dist/components/verdocs-template-reminders.js +37 -17
  56. package/dist/docs.json +46 -140
  57. package/dist/esm/loader.js +1 -1
  58. package/dist/esm/verdocs-auth.entry.js +5 -10
  59. package/dist/esm/verdocs-button-panel_3.entry.js +2 -2
  60. package/dist/esm/verdocs-checkbox_4.entry.js +1 -1
  61. package/dist/esm/verdocs-envelope-sidebar.entry.js +1 -1
  62. package/dist/esm/verdocs-field-checkbox.entry.js +1 -1
  63. package/dist/esm/verdocs-field-dropdown.entry.js +1 -1
  64. package/dist/esm/verdocs-field-textarea.entry.js +49 -5
  65. package/dist/esm/verdocs-field-textbox.entry.js +32 -19
  66. package/dist/esm/verdocs-status-indicator.entry.js +3 -2
  67. package/dist/esm/verdocs-template-fields_4.entry.js +4 -3
  68. package/dist/esm/verdocs-template-reminders.entry.js +37 -17
  69. package/dist/esm/verdocs-web-sdk.js +1 -1
  70. package/dist/esm-es5/loader.js +1 -1
  71. package/dist/esm-es5/verdocs-auth.entry.js +1 -1
  72. package/dist/esm-es5/verdocs-button-panel_3.entry.js +1 -1
  73. package/dist/esm-es5/verdocs-checkbox_4.entry.js +1 -1
  74. package/dist/esm-es5/verdocs-envelope-sidebar.entry.js +1 -1
  75. package/dist/esm-es5/verdocs-field-checkbox.entry.js +1 -1
  76. package/dist/esm-es5/verdocs-field-dropdown.entry.js +1 -1
  77. package/dist/esm-es5/verdocs-field-textarea.entry.js +1 -1
  78. package/dist/esm-es5/verdocs-field-textbox.entry.js +1 -1
  79. package/dist/esm-es5/verdocs-status-indicator.entry.js +1 -1
  80. package/dist/esm-es5/verdocs-template-fields_4.entry.js +1 -1
  81. package/dist/esm-es5/verdocs-template-reminders.entry.js +1 -1
  82. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  83. package/dist/types/components/embeds/verdocs-auth/verdocs-auth.d.ts +0 -2
  84. package/dist/types/components/envelopes/verdocs-status-indicator/verdocs-status-indicator.d.ts +1 -1
  85. package/dist/types/components/fields/verdocs-field-attachment/verdocs-field-attachment.d.ts +2 -1
  86. package/dist/types/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.d.ts +2 -1
  87. package/dist/types/components/fields/verdocs-field-date/verdocs-field-date.d.ts +2 -1
  88. package/dist/types/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.d.ts +2 -1
  89. package/dist/types/components/fields/verdocs-field-initial/verdocs-field-initial.d.ts +2 -1
  90. package/dist/types/components/fields/verdocs-field-radio-button-group/verdocs-field-radio-button.d.ts +2 -1
  91. package/dist/types/components/fields/verdocs-field-signature/verdocs-field-signature.d.ts +2 -1
  92. package/dist/types/components/fields/verdocs-field-textarea/verdocs-field-textarea.d.ts +16 -3
  93. package/dist/types/components/fields/verdocs-field-textbox/verdocs-field-textbox.d.ts +12 -3
  94. package/dist/types/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.d.ts +2 -1
  95. package/dist/types/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.d.ts +2 -0
  96. package/dist/types/components.d.ts +28 -57
  97. package/dist/verdocs-web-sdk/p-10444734.system.entry.js +1 -0
  98. package/dist/verdocs-web-sdk/p-1cf38cea.system.js +1 -1
  99. package/dist/verdocs-web-sdk/p-23292d40.system.entry.js +1 -0
  100. package/dist/verdocs-web-sdk/{p-cddd6ce0.entry.js → p-2631bdd9.entry.js} +1 -1
  101. package/dist/verdocs-web-sdk/{p-1f370439.system.entry.js → p-2a5b951c.system.entry.js} +1 -1
  102. package/dist/verdocs-web-sdk/{p-3c5bb0b3.entry.js → p-2cf70fcd.entry.js} +1 -1
  103. package/dist/verdocs-web-sdk/p-3601cc11.entry.js +1 -0
  104. package/dist/verdocs-web-sdk/p-48d71927.system.entry.js +1 -0
  105. package/dist/verdocs-web-sdk/{p-13cf387e.entry.js → p-4d1f3ddb.entry.js} +1 -1
  106. package/dist/verdocs-web-sdk/{p-bb085c47.system.entry.js → p-66f9132c.system.entry.js} +1 -1
  107. package/dist/verdocs-web-sdk/p-7baf2c02.system.entry.js +1 -0
  108. package/dist/verdocs-web-sdk/p-8aba7c0a.entry.js +1 -0
  109. package/dist/verdocs-web-sdk/{p-5a9d6ff0.entry.js → p-8b85f402.entry.js} +1 -1
  110. package/dist/verdocs-web-sdk/p-b18c293a.system.entry.js +1 -0
  111. package/dist/verdocs-web-sdk/p-b772cdb5.entry.js +1 -0
  112. package/dist/verdocs-web-sdk/p-b8d94f4c.system.entry.js +1 -0
  113. package/dist/verdocs-web-sdk/p-c2e75693.entry.js +1 -0
  114. package/dist/verdocs-web-sdk/p-c841a530.system.entry.js +1 -0
  115. package/dist/verdocs-web-sdk/{p-b6e9934d.entry.js → p-daf19924.entry.js} +1 -1
  116. package/dist/verdocs-web-sdk/p-e4ab3dfc.system.entry.js +1 -0
  117. package/dist/verdocs-web-sdk/p-e5f44611.entry.js +1 -0
  118. package/dist/verdocs-web-sdk/p-ebca6188.entry.js +1 -0
  119. package/dist/verdocs-web-sdk/p-f37f1ebc.system.entry.js +1 -0
  120. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  121. package/package.json +2 -2
  122. package/dist/cjs/verdocs-template-properties.cjs.entry.js +0 -75
  123. package/dist/collection/components/templates/verdocs-template-properties/verdocs-template-properties.css +0 -102
  124. package/dist/collection/components/templates/verdocs-template-properties/verdocs-template-properties.js +0 -177
  125. package/dist/collection/components/templates/verdocs-template-properties/verdocs-template-properties.stories.js +0 -13
  126. package/dist/components/verdocs-template-properties.d.ts +0 -11
  127. package/dist/components/verdocs-template-properties.js +0 -131
  128. package/dist/esm/verdocs-template-properties.entry.js +0 -71
  129. package/dist/esm-es5/verdocs-template-properties.entry.js +0 -1
  130. package/dist/types/components/templates/verdocs-template-properties/verdocs-template-properties.d.ts +0 -45
  131. package/dist/types/components/templates/verdocs-template-properties/verdocs-template-properties.stories.d.ts +0 -8
  132. package/dist/verdocs-web-sdk/p-0e4fe8f9.entry.js +0 -1
  133. package/dist/verdocs-web-sdk/p-1d14ae9c.entry.js +0 -1
  134. package/dist/verdocs-web-sdk/p-2265e0dd.system.entry.js +0 -1
  135. package/dist/verdocs-web-sdk/p-414f893b.entry.js +0 -1
  136. package/dist/verdocs-web-sdk/p-4157aa74.entry.js +0 -1
  137. package/dist/verdocs-web-sdk/p-4a9a3134.system.entry.js +0 -1
  138. package/dist/verdocs-web-sdk/p-6ff2005b.system.entry.js +0 -1
  139. package/dist/verdocs-web-sdk/p-73717726.system.entry.js +0 -1
  140. package/dist/verdocs-web-sdk/p-77cd3ac5.system.entry.js +0 -1
  141. package/dist/verdocs-web-sdk/p-b3a8928b.entry.js +0 -1
  142. package/dist/verdocs-web-sdk/p-b51c4ed5.system.entry.js +0 -1
  143. package/dist/verdocs-web-sdk/p-b6016e12.entry.js +0 -1
  144. package/dist/verdocs-web-sdk/p-d2bcbce0.system.entry.js +0 -1
  145. package/dist/verdocs-web-sdk/p-de3ae7a2.system.entry.js +0 -1
  146. package/dist/verdocs-web-sdk/p-e7058963.system.entry.js +0 -1
  147. package/dist/verdocs-web-sdk/p-f99b783a.entry.js +0 -1
  148. package/dist/verdocs-web-sdk/p-fee3be0c.system.entry.js +0 -1
@@ -1,12 +1,16 @@
1
+ import { VerdocsEndpoint } from '@verdocs/js-sdk';
1
2
  import { getRGBA } from '@verdocs/js-sdk/Utils/Colors';
3
+ import { updateField } from '@verdocs/js-sdk/Templates/Fields';
2
4
  import { h, Host } from '@stencil/core';
3
5
  import { getFieldSettings } from '../../../utils/utils';
6
+ import interact from 'interactjs';
4
7
  const settingsIcon = '<svg xmlns="http://www.w3.org/2000/svg" height="20" width="20"><path d="m7.5 18.5-.312-2.667q-.188-.125-.396-.25-.209-.125-.396-.229l-2.479 1.063-2.521-4.334 2.125-1.625q.021-.104.021-.229v-.458q0-.125-.021-.229L1.396 7.917l2.521-4.313 2.5 1.042q.166-.104.375-.229.208-.125.396-.229L7.5 1.5h5l.312 2.688q.188.104.396.229.209.125.396.229l2.479-1.042 2.521 4.313-2.125 1.625v.916l2.125 1.625-2.521 4.334-2.5-1.063q-.166.104-.375.229-.208.125-.396.25L12.5 18.5Zm2.479-5.521q1.229 0 2.104-.875T12.958 10q0-1.229-.875-2.104t-2.104-.875q-1.208 0-2.094.875Q7 8.771 7 10t.885 2.104q.886.875 2.094.875Zm0-1.75q-.5 0-.864-.364Q8.75 10.5 8.75 10t.365-.865q.364-.364.864-.364t.865.364q.364.365.364.865t-.364.865q-.365.364-.865.364ZM10.021 10Zm-.792 6.521h1.542l.25-2.146q.625-.167 1.198-.51.573-.344 1.031-.823l2.021.854.771-1.271-1.771-1.354q.104-.292.156-.615.052-.323.052-.656 0-.292-.052-.604-.052-.313-.135-.646l1.77-1.375-.77-1.271-2.021.875q-.479-.5-1.042-.833-.562-.334-1.187-.5l-.271-2.167H9.208l-.25 2.167q-.625.166-1.187.5-.563.333-1.042.812l-2-.854-.771 1.271 1.73 1.354q-.084.333-.136.656Q5.5 9.708 5.5 10t.052.604q.052.313.136.667l-1.73 1.354.771 1.271 2-.834q.479.459 1.042.792.562.334 1.187.5Z"/></svg>';
5
8
  /**
6
9
  * Display a multi-line text input field.
7
10
  */
8
11
  export class VerdocsFieldTextarea {
9
12
  constructor() {
13
+ this.endpoint = VerdocsEndpoint.getDefault();
10
14
  this.templateid = '';
11
15
  this.field = null;
12
16
  this.disabled = false;
@@ -17,7 +21,7 @@ export class VerdocsFieldTextarea {
17
21
  this.rerender = 0;
18
22
  }
19
23
  async focusField() {
20
- this.el.focus();
24
+ this.inputEl.focus();
21
25
  }
22
26
  async showSettingsPanel() {
23
27
  const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.field.name}`);
@@ -32,6 +36,45 @@ export class VerdocsFieldTextarea {
32
36
  }
33
37
  // TemplateStore.updateCount++;
34
38
  }
39
+ componentDidRender() {
40
+ interact.dynamicDrop(true);
41
+ if (this.editable) {
42
+ interact(this.el).resizable({
43
+ edges: { top: true, bottom: true, left: true, right: true },
44
+ listeners: {
45
+ start: this.handleResizeStart.bind(this),
46
+ move: this.handleResize.bind(this),
47
+ end: this.handleResizeEnd.bind(this),
48
+ },
49
+ });
50
+ }
51
+ }
52
+ handleResizeStart(e) {
53
+ e.preventDefault();
54
+ e.stopPropagation();
55
+ }
56
+ handleResize(e) {
57
+ const oldX = +(e.target.getAttribute('resizeX') || 0);
58
+ const oldY = +(e.target.getAttribute('resizeY') || 0);
59
+ const newX = e.dx + oldX;
60
+ const newY = e.dy + oldY;
61
+ this.el.style.width = `${parseFloat(this.el.style.width || '0') + e.dx}px`;
62
+ this.el.style.height = `${parseFloat(this.el.style.height || '0') + e.dy}px`;
63
+ e.target.setAttribute('resizeX', newX);
64
+ e.target.setAttribute('resizeY', newY);
65
+ }
66
+ handleResizeEnd(e) {
67
+ const resizeWidth = +(e.target.getAttribute('resizeX') || 0);
68
+ const resizeHeight = +(e.target.getAttribute('resizeY') || 0);
69
+ const settings = getFieldSettings(this.field);
70
+ const newWidth = (settings.width || 150) + resizeWidth;
71
+ const newHeight = (settings.height || 41) + resizeHeight;
72
+ const newSettings = { ...getFieldSettings(this.field), width: Math.round(newWidth), height: Math.round(newHeight) };
73
+ delete newSettings['result'];
74
+ updateField(this.endpoint, this.templateid, this.field.name, { setting: newSettings })
75
+ .then(() => { var _a; return (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name, settings: newSettings }); })
76
+ .catch(e => console.log('Field update failed', e));
77
+ }
35
78
  render() {
36
79
  var _a, _b;
37
80
  const settings = getFieldSettings(this.field);
@@ -40,7 +83,7 @@ export class VerdocsFieldTextarea {
40
83
  if (this.done) {
41
84
  return h(Host, { class: { done: this.done } }, settings.value);
42
85
  }
43
- return (h(Host, { class: { required: settings.required, disabled }, style: { backgroundColor } }, h("textarea", { placeholder: settings.placeholder || '', tabIndex: settings.order, value: settings.value, disabled: disabled, name: this.field.name, required: settings.required, ref: el => (this.el = el) }), this.editable && (h("verdocs-button-panel", { icon: settingsIcon, id: `verdocs-settings-panel-${this.field.name}` }, h("verdocs-template-field-properties", { templateId: this.templateid, fieldName: this.field.name, onClose: () => this.hideSettingsPanel(), onDelete: () => {
86
+ return (h(Host, { class: { required: settings.required, disabled }, style: { backgroundColor } }, h("textarea", { placeholder: settings.placeholder || '', tabIndex: settings.order, value: settings.value, disabled: disabled, name: this.field.name, required: settings.required, ref: el => (this.inputEl = el) }), this.editable && (h("verdocs-button-panel", { icon: settingsIcon, id: `verdocs-settings-panel-${this.field.name}` }, h("verdocs-template-field-properties", { templateId: this.templateid, fieldName: this.field.name, onClose: () => this.hideSettingsPanel(), onDelete: () => {
44
87
  var _a;
45
88
  (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
46
89
  return this.hideSettingsPanel();
@@ -63,6 +106,27 @@ export class VerdocsFieldTextarea {
63
106
  }
64
107
  static get properties() {
65
108
  return {
109
+ "endpoint": {
110
+ "type": "unknown",
111
+ "mutable": false,
112
+ "complexType": {
113
+ "original": "VerdocsEndpoint",
114
+ "resolved": "VerdocsEndpoint",
115
+ "references": {
116
+ "VerdocsEndpoint": {
117
+ "location": "import",
118
+ "path": "@verdocs/js-sdk"
119
+ }
120
+ }
121
+ },
122
+ "required": false,
123
+ "optional": false,
124
+ "docs": {
125
+ "tags": [],
126
+ "text": "The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.\nThis component self-manages its resize (width) behavior when in edit-template mode, and uses\nthis endpoint to save changes."
127
+ },
128
+ "defaultValue": "VerdocsEndpoint.getDefault()"
129
+ },
66
130
  "templateid": {
67
131
  "type": "string",
68
132
  "mutable": false,
@@ -228,9 +292,14 @@ export class VerdocsFieldTextarea {
228
292
  "text": "Event fired when the field's settings are changed."
229
293
  },
230
294
  "complexType": {
231
- "original": "{fieldName: string}",
232
- "resolved": "{ fieldName: string; }",
233
- "references": {}
295
+ "original": "{fieldName: string; settings: ITemplateFieldSetting}",
296
+ "resolved": "{ fieldName: string; settings: ITemplateFieldSetting; }",
297
+ "references": {
298
+ "ITemplateFieldSetting": {
299
+ "location": "import",
300
+ "path": "@verdocs/js-sdk/Templates/Types"
301
+ }
302
+ }
234
303
  }
235
304
  }, {
236
305
  "method": "deleted",
@@ -301,4 +370,5 @@ export class VerdocsFieldTextarea {
301
370
  }
302
371
  };
303
372
  }
373
+ static get elementRef() { return "el"; }
304
374
  }
@@ -1,5 +1,6 @@
1
1
  verdocs-field-textbox {
2
2
  font-family: "Inter", -apple-system, "Segoe UI", "Roboto", "Helvetica Neue", sans-serif;
3
+ box-sizing: border-box;
3
4
  width: 150px;
4
5
  height: 15px;
5
6
  display: block;
@@ -35,43 +36,6 @@ verdocs-field-textbox.required {
35
36
  verdocs-field-textbox.focused {
36
37
  animation: verdocs-field-pulse 0.75s 2;
37
38
  }
38
- verdocs-field-textbox .resizer {
39
- position: absolute;
40
- bottom: 1px;
41
- right: 1px;
42
- width: 8px;
43
- height: 8px;
44
- z-index: 9999;
45
- }
46
- verdocs-field-textbox .resizer:hover {
47
- cursor: nwse-resize;
48
- }
49
- verdocs-field-textbox .resizer .resizer-inner {
50
- position: absolute;
51
- bottom: 0;
52
- }
53
- verdocs-field-textbox .resizer .resizer-inner:before {
54
- position: absolute;
55
- top: -4px;
56
- left: -0.5px;
57
- content: "";
58
- display: block;
59
- width: 10px;
60
- height: 1px;
61
- background-color: rgba(0, 0, 0, 0.32);
62
- transform: rotate(-45deg);
63
- }
64
- verdocs-field-textbox .resizer .resizer-inner:after {
65
- position: absolute;
66
- top: -1.5px;
67
- left: 4.5px;
68
- content: "";
69
- display: block;
70
- width: 5px;
71
- height: 1px;
72
- background-color: rgba(0, 0, 0, 0.32);
73
- transform: rotate(-45deg);
74
- }
75
39
  verdocs-field-textbox verdocs-button-panel {
76
40
  top: -3px;
77
41
  left: -2px;
@@ -1,5 +1,7 @@
1
1
  import interact from 'interactjs';
2
+ import { VerdocsEndpoint } from '@verdocs/js-sdk';
2
3
  import { getRGBA } from '@verdocs/js-sdk/Utils/Colors';
4
+ import { updateField } from '@verdocs/js-sdk/Templates/Fields';
3
5
  import { h, Host } from '@stencil/core';
4
6
  import { getFieldSettings } from '../../../utils/utils';
5
7
  const settingsIcon = '<svg xmlns="http://www.w3.org/2000/svg" height="20" width="20"><path d="m7.5 18.5-.312-2.667q-.188-.125-.396-.25-.209-.125-.396-.229l-2.479 1.063-2.521-4.334 2.125-1.625q.021-.104.021-.229v-.458q0-.125-.021-.229L1.396 7.917l2.521-4.313 2.5 1.042q.166-.104.375-.229.208-.125.396-.229L7.5 1.5h5l.312 2.688q.188.104.396.229.209.125.396.229l2.479-1.042 2.521 4.313-2.125 1.625v.916l2.125 1.625-2.521 4.334-2.5-1.063q-.166.104-.375.229-.208.125-.396.25L12.5 18.5Zm2.479-5.521q1.229 0 2.104-.875T12.958 10q0-1.229-.875-2.104t-2.104-.875q-1.208 0-2.094.875Q7 8.771 7 10t.885 2.104q.886.875 2.094.875Zm0-1.75q-.5 0-.864-.364Q8.75 10.5 8.75 10t.365-.865q.364-.364.864-.364t.865.364q.364.365.364.865t-.364.865q-.365.364-.865.364ZM10.021 10Zm-.792 6.521h1.542l.25-2.146q.625-.167 1.198-.51.573-.344 1.031-.823l2.021.854.771-1.271-1.771-1.354q.104-.292.156-.615.052-.323.052-.656 0-.292-.052-.604-.052-.313-.135-.646l1.77-1.375-.77-1.271-2.021.875q-.479-.5-1.042-.833-.562-.334-1.187-.5l-.271-2.167H9.208l-.25 2.167q-.625.166-1.187.5-.563.333-1.042.812l-2-.854-.771 1.271 1.73 1.354q-.084.333-.136.656Q5.5 9.708 5.5 10t.052.604q.052.313.136.667l-1.73 1.354.771 1.271 2-.834q.479.459 1.042.792.562.334 1.187.5Z"/></svg>';
@@ -8,6 +10,7 @@ const settingsIcon = '<svg xmlns="http://www.w3.org/2000/svg" height="20" width=
8
10
  */
9
11
  export class VerdocsFieldTextbox {
10
12
  constructor() {
13
+ this.endpoint = VerdocsEndpoint.getDefault();
11
14
  this.templateid = '';
12
15
  this.field = null;
13
16
  this.disabled = false;
@@ -36,30 +39,40 @@ export class VerdocsFieldTextbox {
36
39
  componentDidRender() {
37
40
  interact.dynamicDrop(true);
38
41
  if (this.editable) {
39
- interact(this.resizeHandle).resizable({
42
+ interact(this.el).resizable({
43
+ edges: { top: false, bottom: false, left: true, right: true },
40
44
  listeners: {
41
- start(event) {
42
- console.log('[TEXTBOX] Resize started', event.type, event.target);
43
- },
45
+ start: this.handleResizeStart.bind(this),
44
46
  move: this.handleResize.bind(this),
45
- end(event) {
46
- console.log('[TEXTBOX] Resize end', event);
47
- },
47
+ end: this.handleResizeEnd.bind(this),
48
48
  },
49
49
  });
50
50
  }
51
51
  }
52
- handleResize(event) {
53
- console.log('[TEXTBOX] Resize', event.delta);
54
- const oldX = +(event.target.getAttribute('resizeX') || 0);
55
- const oldY = +(event.target.getAttribute('resizeY') || 0);
56
- const newX = event.dx + oldX;
57
- const newY = event.dy + oldY;
58
- this.el.style.width = `${parseFloat(this.el.style.width || '0') + event.dx}px`;
52
+ handleResizeStart(e) {
53
+ e.preventDefault();
54
+ e.stopPropagation();
55
+ }
56
+ handleResize(e) {
57
+ const oldX = +(e.target.getAttribute('resizeX') || 0);
58
+ const oldY = +(e.target.getAttribute('resizeY') || 0);
59
+ const newX = e.dx + oldX;
60
+ const newY = e.dy + oldY;
61
+ this.el.style.width = `${parseFloat(this.el.style.width || '0') + e.dx}px`;
59
62
  // Single line text fields are not resizeable in height
60
63
  // this.el.style.height = `${parseFloat(this.el.style.height || '0') + event.dy}px`;
61
- event.target.setAttribute('resizeX', newX);
62
- event.target.setAttribute('resizeY', newY);
64
+ e.target.setAttribute('resizeX', newX);
65
+ e.target.setAttribute('resizeY', newY);
66
+ }
67
+ handleResizeEnd(e) {
68
+ const resizeWidth = +(e.target.getAttribute('resizeX') || 0);
69
+ const settings = getFieldSettings(this.field);
70
+ const newWidth = (settings.width || 150) + resizeWidth;
71
+ const newSettings = { ...getFieldSettings(this.field), width: Math.round(newWidth) };
72
+ delete newSettings['result'];
73
+ updateField(this.endpoint, this.templateid, this.field.name, { setting: newSettings })
74
+ .then(() => { var _a; return (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name, settings: newSettings }); })
75
+ .catch(e => console.log('Field update failed', e));
63
76
  }
64
77
  render() {
65
78
  var _a, _b, _c, _d;
@@ -73,7 +86,7 @@ export class VerdocsFieldTextbox {
73
86
  if (this.done) {
74
87
  return h(Host, { class: { done: this.done } }, value);
75
88
  }
76
- return (h(Host, { class: { required: (_c = this.field) === null || _c === void 0 ? void 0 : _c.required, disabled, done: this.done }, style: { backgroundColor } }, h("input", { type: "text", name: this.field.name, placeholder: settings === null || settings === void 0 ? void 0 : settings.placeholder, tabIndex: settings === null || settings === void 0 ? void 0 : settings.order, value: value, disabled: disabled, required: (_d = this.field) === null || _d === void 0 ? void 0 : _d.required, ref: el => (this.inputEl = el), maxlength: maxlength }), this.editable && (h("div", { class: "resizer", ref: el => (this.resizeHandle = el) }, h("div", { class: "resizer-inner" }))), this.editable && (h("verdocs-button-panel", { icon: settingsIcon, id: `verdocs-settings-panel-${this.field.name}` }, h("verdocs-template-field-properties", { templateId: this.templateid, fieldName: this.field.name, onClose: () => this.hideSettingsPanel(), onDelete: () => {
89
+ return (h(Host, { class: { required: (_c = this.field) === null || _c === void 0 ? void 0 : _c.required, disabled, done: this.done }, style: { backgroundColor } }, h("input", { type: "text", name: this.field.name, placeholder: settings === null || settings === void 0 ? void 0 : settings.placeholder, tabIndex: settings === null || settings === void 0 ? void 0 : settings.order, value: value, disabled: disabled, required: (_d = this.field) === null || _d === void 0 ? void 0 : _d.required, ref: el => (this.inputEl = el), maxlength: maxlength }), this.editable && (h("verdocs-button-panel", { icon: settingsIcon, id: `verdocs-settings-panel-${this.field.name}` }, h("verdocs-template-field-properties", { templateId: this.templateid, fieldName: this.field.name, onClose: () => this.hideSettingsPanel(), onDelete: () => {
77
90
  var _a;
78
91
  (_a = this.deleted) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name });
79
92
  return this.hideSettingsPanel();
@@ -96,6 +109,27 @@ export class VerdocsFieldTextbox {
96
109
  }
97
110
  static get properties() {
98
111
  return {
112
+ "endpoint": {
113
+ "type": "unknown",
114
+ "mutable": false,
115
+ "complexType": {
116
+ "original": "VerdocsEndpoint",
117
+ "resolved": "VerdocsEndpoint",
118
+ "references": {
119
+ "VerdocsEndpoint": {
120
+ "location": "import",
121
+ "path": "@verdocs/js-sdk"
122
+ }
123
+ }
124
+ },
125
+ "required": false,
126
+ "optional": false,
127
+ "docs": {
128
+ "tags": [],
129
+ "text": "The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.\nThis component self-manages its resize (width) behavior when in edit-template mode, and uses\nthis endpoint to save changes."
130
+ },
131
+ "defaultValue": "VerdocsEndpoint.getDefault()"
132
+ },
99
133
  "templateid": {
100
134
  "type": "string",
101
135
  "mutable": false,
@@ -261,9 +295,14 @@ export class VerdocsFieldTextbox {
261
295
  "text": "Event fired when the field's settings are changed."
262
296
  },
263
297
  "complexType": {
264
- "original": "{fieldName: string}",
265
- "resolved": "{ fieldName: string; }",
266
- "references": {}
298
+ "original": "{fieldName: string; settings: ITemplateFieldSetting}",
299
+ "resolved": "{ fieldName: string; settings: ITemplateFieldSetting; }",
300
+ "references": {
301
+ "ITemplateFieldSetting": {
302
+ "location": "import",
303
+ "path": "@verdocs/js-sdk/Templates/Types"
304
+ }
305
+ }
267
306
  }
268
307
  }, {
269
308
  "method": "deleted",
@@ -236,9 +236,14 @@ export class VerdocsFieldTimestamp {
236
236
  "text": "Event fired when the field's settings are changed."
237
237
  },
238
238
  "complexType": {
239
- "original": "{fieldName: string}",
240
- "resolved": "{ fieldName: string; }",
241
- "references": {}
239
+ "original": "{fieldName: string; settings: ITemplateFieldSetting}",
240
+ "resolved": "{ fieldName: string; settings: ITemplateFieldSetting; }",
241
+ "references": {
242
+ "ITemplateFieldSetting": {
243
+ "location": "import",
244
+ "path": "@verdocs/js-sdk/Templates/Types"
245
+ }
246
+ }
242
247
  }
243
248
  }, {
244
249
  "method": "deleted",
@@ -110,7 +110,7 @@ export class VerdocsTemplateFieldProperties {
110
110
  var _a, _b;
111
111
  this.dirty = false;
112
112
  this.updateField();
113
- (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.fieldName });
113
+ (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.fieldName, settings: newProperties });
114
114
  (_b = this.close) === null || _b === void 0 ? void 0 : _b.emit();
115
115
  })
116
116
  .catch(() => {
@@ -148,7 +148,7 @@ export class VerdocsTemplateFieldProperties {
148
148
  var _a, _b;
149
149
  this.dirty = false;
150
150
  this.updateField();
151
- (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.fieldName });
151
+ (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.fieldName, settings: newProperties });
152
152
  (_b = this.close) === null || _b === void 0 ? void 0 : _b.emit();
153
153
  })
154
154
  .catch(() => {
@@ -390,9 +390,14 @@ export class VerdocsTemplateFieldProperties {
390
390
  "text": "Event fired when the field's settings are changed."
391
391
  },
392
392
  "complexType": {
393
- "original": "{fieldName: string}",
394
- "resolved": "{ fieldName: string; }",
395
- "references": {}
393
+ "original": "{fieldName: string; settings: ITemplateFieldSetting}",
394
+ "resolved": "{ fieldName: string; settings: ITemplateFieldSetting; }",
395
+ "references": {
396
+ "ITemplateFieldSetting": {
397
+ "location": "import",
398
+ "path": "@verdocs/js-sdk/Templates/Types"
399
+ }
400
+ }
396
401
  }
397
402
  }, {
398
403
  "method": "sdkError",
@@ -101,16 +101,17 @@ export class VerdocsTemplateFields {
101
101
  }
102
102
  attachFieldAttributes(pageInfo, field, roleIndex, el) {
103
103
  el.addEventListener('input', e => this.handleFieldChange(field, e));
104
- el.addEventListener('settingsChanged', () => {
104
+ el.addEventListener('settingsChanged', e => {
105
105
  var _a, _b, _c, _d;
106
+ console.log('[FIELDS] settingsChanged', e.detail);
107
+ Object.assign(field.setting, e.detail.settings);
106
108
  this.selectedRoleName = field.role_name;
107
- console.log('settings changed', this.selectedRoleName, field);
108
109
  el.setAttribute('roleindex', getRoleIndex(getRoleNames(this.store), field.role_name));
109
110
  el.field = (_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.fields.find(f => f.name === field.name);
110
111
  this.rerender++;
111
112
  el.setAttribute('rerender', this.rerender);
112
113
  (_c = this.templateUpdated) === null || _c === void 0 ? void 0 : _c.emit({ endpoint: this.endpoint, template: (_d = this.store) === null || _d === void 0 ? void 0 : _d.state, event: 'updated-field' });
113
- console.log('Re-rendering field', field.name, pageInfo.pageNumber);
114
+ console.log('[FIELDS] Re-rendering field', field.name, pageInfo.pageNumber);
114
115
  this.reRenderField(field, pageInfo.pageNumber);
115
116
  const newEl = renderDocumentField(field, pageInfo, roleIndex, { disabled: true, editable: true, draggable: true });
116
117
  if (!newEl) {
@@ -3,7 +3,7 @@ export default {
3
3
  title: 'Templates/Fields',
4
4
  component: 'verdocs-template-fields',
5
5
  args: {
6
- templateId: '',
6
+ templateId: '8337af06-3b5a-4e1b-98be-67d82bc7ecd1',
7
7
  },
8
8
  argTypes: {},
9
9
  parameters: {
@@ -3,6 +3,7 @@ import { h, Host } from '@stencil/core';
3
3
  import { createReminder, updateReminder, deleteReminder } from '@verdocs/js-sdk/Templates/Reminders';
4
4
  import { getTemplateStore } from '../../../utils/TemplateStore';
5
5
  import { SDKError } from '../../../utils/errors';
6
+ import { VerdocsToast } from '../../../utils/Toast';
6
7
  /**
7
8
  * Displays an edit form that allows the user to adjust a template's reminders.
8
9
  */
@@ -17,6 +18,9 @@ export class VerdocsTemplateReminders {
17
18
  this.reminderDays = '1';
18
19
  this.dirty = false;
19
20
  }
21
+ // POST https://api.verdocs.com/templates/8337af06-3b5a-4e1b-98be-67d82bc7ecd1/reminder
22
+ // interval_time: 1,
23
+ // setup_time:1,
20
24
  async componentWillLoad() {
21
25
  var _a, _b, _c, _d, _e;
22
26
  try {
@@ -46,25 +50,35 @@ export class VerdocsTemplateReminders {
46
50
  (_c = this.close) === null || _c === void 0 ? void 0 : _c.emit();
47
51
  }
48
52
  async handleSave(e) {
49
- var _a, _b, _c, _d, _e;
53
+ var _a, _b, _c, _d, _e, _f, _g, _h;
50
54
  e.stopPropagation();
51
- if (this.sendReminders) {
52
- const params = {
53
- setup_time: 86400000 * +this.firstReminderDays,
54
- interval_time: 86400000 * +this.reminderDays,
55
- };
56
- if (!((_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.reminder_id)) {
57
- await createReminder(this.endpoint, this.templateId, params);
55
+ try {
56
+ if (this.sendReminders) {
57
+ const params = {
58
+ setup_time: +this.firstReminderDays,
59
+ interval_time: +this.reminderDays,
60
+ };
61
+ if (!((_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.reminder_id)) {
62
+ await createReminder(this.endpoint, this.templateId, params);
63
+ this.store = await getTemplateStore(this.endpoint, this.templateId, true);
64
+ }
65
+ else {
66
+ await updateReminder(this.endpoint, this.templateId, (_c = this.store) === null || _c === void 0 ? void 0 : _c.state.reminder_id, params);
67
+ this.store = await getTemplateStore(this.endpoint, this.templateId, true);
68
+ }
58
69
  }
59
70
  else {
60
- await updateReminder(this.endpoint, this.templateId, (_c = this.store) === null || _c === void 0 ? void 0 : _c.state.reminder_id, params);
71
+ await deleteReminder(this.endpoint, this.templateId, (_d = this.store) === null || _d === void 0 ? void 0 : _d.state.reminder_id);
72
+ this.store = await getTemplateStore(this.endpoint, this.templateId, true);
61
73
  }
62
74
  }
63
- else {
64
- await deleteReminder(this.endpoint, this.templateId, (_d = this.store) === null || _d === void 0 ? void 0 : _d.state.reminder_id);
75
+ catch (e) {
76
+ console.log('[TEMPLATE REMINDERS] Unable to update reminders', e);
77
+ VerdocsToast(e.message);
78
+ (_e = this.sdkError) === null || _e === void 0 ? void 0 : _e.emit(new SDKError(e.message, (_f = e.response) === null || _f === void 0 ? void 0 : _f.status, (_g = e.response) === null || _g === void 0 ? void 0 : _g.data));
65
79
  }
66
80
  this.dirty = false;
67
- (_e = this.close) === null || _e === void 0 ? void 0 : _e.emit();
81
+ (_h = this.close) === null || _h === void 0 ? void 0 : _h.emit();
68
82
  }
69
83
  render() {
70
84
  var _a, _b;
@@ -76,11 +90,17 @@ export class VerdocsTemplateReminders {
76
90
  return h(Host, { class: "empty" });
77
91
  }
78
92
  return (h(Host, null, h("form", { onSubmit: e => e.preventDefault(), onClick: e => e.stopPropagation(), autocomplete: "off" }, h("h5", null, "Reminders"), h("div", { class: "input-row" }, h("label", { htmlFor: "verdocs-send-reminders" }, "Send Automatic Reminders"), h("verdocs-checkbox", { id: "verdocs-send-reminders", name: "automatic-reminders", checked: this.sendReminders, value: "on", onInput: (e) => {
79
- this.showPlanBlocker = true;
80
- e.target.checked = false;
81
- // this.sendReminders = e.target.checked;
82
- // this.dirty = true;
83
- } })), h("div", { class: "input-row" }, h("label", { htmlFor: "verdocs-first-reminder-days" }, "Days Before First Reminder"), h("verdocs-text-input", { id: "verdocs-first-reminder-days", type: "number", value: this.firstReminderDays, onInput: (e) => (this.firstReminderDays = e.target.value), disabled: !this.sendReminders })), h("div", { class: "input-row" }, h("label", { htmlFor: "verdocs-days-between-reminders" }, "Days Between Reminders"), h("verdocs-text-input", { id: "verdocs-days-between-reminders", type: "number", value: this.reminderDays, onInput: (e) => (this.reminderDays = e.target.value), disabled: !this.sendReminders })), h("div", { class: "buttons" }, h("verdocs-button", { size: "small", variant: "outline", label: "Cancel", disabled: !this.dirty, onClick: e => this.handleCancel(e) }), h("verdocs-button", { size: "small", label: "Save", disabled: !this.dirty, onClick: e => this.handleSave(e) }))), this.showPlanBlocker && (h("verdocs-ok-dialog", { heading: "Upgrade to access this feature", message: "Please upgrade your plan to access this feature.", onNext: () => (this.showPlanBlocker = false) }))));
93
+ // this.showPlanBlocker = true;
94
+ // e.target.checked = false;
95
+ this.sendReminders = e.target.checked;
96
+ this.dirty = true;
97
+ } })), h("div", { class: "input-row" }, h("label", { htmlFor: "verdocs-first-reminder-days" }, "Days Before First Reminder"), h("verdocs-text-input", { id: "verdocs-first-reminder-days", type: "number", value: this.firstReminderDays, onInput: (e) => {
98
+ this.firstReminderDays = e.target.value;
99
+ this.dirty = true;
100
+ }, disabled: !this.sendReminders })), h("div", { class: "input-row" }, h("label", { htmlFor: "verdocs-days-between-reminders" }, "Days Between Reminders"), h("verdocs-text-input", { id: "verdocs-days-between-reminders", type: "number", value: this.reminderDays, onInput: (e) => {
101
+ this.reminderDays = e.target.value;
102
+ this.dirty = true;
103
+ }, disabled: !this.sendReminders })), h("div", { class: "buttons" }, h("verdocs-button", { size: "small", variant: "outline", label: "Cancel", disabled: !this.dirty, onClick: e => this.handleCancel(e) }), h("verdocs-button", { size: "small", label: "Save", disabled: !this.dirty, onClick: e => this.handleSave(e) }))), this.showPlanBlocker && (h("verdocs-ok-dialog", { heading: "Upgrade to access this feature", message: "Please upgrade your plan to access this feature.", onNext: () => (this.showPlanBlocker = false) }))));
84
104
  }
85
105
  static get is() { return "verdocs-template-reminders"; }
86
106
  static get originalStyleUrls() {
@@ -3,7 +3,7 @@ export default {
3
3
  title: 'Templates/Reminders',
4
4
  component: 'verdocs-template-reminders',
5
5
  args: {
6
- templateId: '',
6
+ templateId: '8337af06-3b5a-4e1b-98be-67d82bc7ecd1',
7
7
  },
8
8
  argTypes: {
9
9
  onClose: { action: 'close' },
@@ -0,0 +1,74 @@
1
+ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
11
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
+ function verb(n) { return function (v) { return step([n, v]); }; }
14
+ function step(op) {
15
+ if (f) throw new TypeError("Generator is already executing.");
16
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
17
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
+ if (y = 0, t) op = [op[0] & 2, t.value];
19
+ switch (op[0]) {
20
+ case 0: case 1: t = op; break;
21
+ case 4: _.label++; return { value: op[1], done: false };
22
+ case 5: _.label++; y = op[1]; op = [0]; continue;
23
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
+ default:
25
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
+ if (t[2]) _.ops.pop();
30
+ _.trys.pop(); continue;
31
+ }
32
+ op = body.call(thisArg, _);
33
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
+ }
36
+ };
37
+ /**
38
+ * Update a recipient's status block
39
+ */
40
+ var updateRecipient = function (endpoint, envelopeId, roleName, params) { return __awaiter(void 0, void 0, void 0, function () {
41
+ return __generator(this, function (_a) {
42
+ return [2 /*return*/, endpoint.api //
43
+ .put("/envelopes/".concat(envelopeId, "/recipients/").concat(roleName), params)
44
+ .then(function (r) { return r.data; })];
45
+ });
46
+ }); };
47
+ /**
48
+ * Submit an envelope (signing is finished). Note that all fields must be valid/completed for this to succeed.
49
+ */
50
+ var envelopeRecipientSubmit = function (endpoint, envelopeId, roleName) {
51
+ return updateRecipient(endpoint, envelopeId, roleName, { action: 'submit' });
52
+ };
53
+ /**
54
+ * Decline to complete an envelope (signing will not terminated).
55
+ */
56
+ var envelopeRecipientDecline = function (endpoint, envelopeId, roleName) {
57
+ return updateRecipient(endpoint, envelopeId, roleName, { action: 'decline' });
58
+ };
59
+ /**
60
+ * Agree to electronic signing.
61
+ */
62
+ var envelopeRecipientAgree = function (endpoint, envelopeId, roleName, agreed) {
63
+ return updateRecipient(endpoint, envelopeId, roleName, { action: 'update', agreed: agreed });
64
+ };
65
+ /**
66
+ * Get an in-person signing link.
67
+ */
68
+ var getInPersonLink = function (endpoint, envelopeId, roleName) {
69
+ return endpoint.api //
70
+ .get("/envelopes/".concat(envelopeId, "/recipients/").concat(encodeURIComponent(roleName), "?in_person_link=true"))
71
+ .then(function (r) { return r.data; });
72
+ };
73
+
74
+ export { envelopeRecipientDecline as a, envelopeRecipientSubmit as b, envelopeRecipientAgree as e, getInPersonLink as g };