@verdocs/web-sdk 1.14.9 → 1.14.10

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 (172) hide show
  1. package/dist/cjs/EnvelopeStore-a4231cf7.js +83 -0
  2. package/dist/cjs/{Recipients-2b21fdea.js → Recipients-f3d6cf10.js} +9 -0
  3. package/dist/cjs/{index-6528b430.js → index-7c19ba1d.js} +63 -219
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/{utils-f4efefe3.js → utils-618c13f1.js} +1 -1
  6. package/dist/cjs/verdocs-dropdown_2.cjs.entry.js +2 -2
  7. package/dist/cjs/verdocs-envelope-recipient-summary.cjs.entry.js +15 -91
  8. package/dist/cjs/verdocs-envelope-sidebar.cjs.entry.js +101 -45
  9. package/dist/cjs/verdocs-field-checkbox.cjs.entry.js +2 -2
  10. package/dist/cjs/verdocs-field-date.cjs.entry.js +2 -2
  11. package/dist/cjs/verdocs-field-dropdown.cjs.entry.js +2 -2
  12. package/dist/cjs/verdocs-field-initial.cjs.entry.js +2 -2
  13. package/dist/cjs/verdocs-field-payment.cjs.entry.js +2 -2
  14. package/dist/cjs/verdocs-field-radio-button.cjs.entry.js +2 -2
  15. package/dist/cjs/verdocs-field-signature.cjs.entry.js +2 -2
  16. package/dist/cjs/verdocs-field-textarea.cjs.entry.js +27 -19
  17. package/dist/cjs/verdocs-field-textbox.cjs.entry.js +26 -17
  18. package/dist/cjs/verdocs-field-timestamp.cjs.entry.js +2 -2
  19. package/dist/cjs/verdocs-organization-card.cjs.entry.js +1 -1
  20. package/dist/cjs/verdocs-preview.cjs.entry.js +2 -2
  21. package/dist/cjs/verdocs-send.cjs.entry.js +2 -2
  22. package/dist/cjs/verdocs-sign.cjs.entry.js +3 -3
  23. package/dist/cjs/verdocs-template-document-page_2.cjs.entry.js +2 -2
  24. package/dist/cjs/verdocs-template-fields_4.cjs.entry.js +2 -2
  25. package/dist/cjs/verdocs-template-reminders.cjs.entry.js +10 -0
  26. package/dist/cjs/verdocs-view.cjs.entry.js +2 -2
  27. package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
  28. package/dist/collection/components/envelopes/verdocs-envelope-sidebar/verdocs-envelope-sidebar.css +8 -0
  29. package/dist/collection/components/envelopes/verdocs-envelope-sidebar/verdocs-envelope-sidebar.js +101 -48
  30. package/dist/collection/components/envelopes/verdocs-envelope-sidebar/verdocs-envelope-sidebar.stories.js +1 -1
  31. package/dist/collection/components/fields/verdocs-field-textarea/verdocs-field-textarea.js +61 -17
  32. package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.js +60 -15
  33. package/dist/collection/components/templates/verdocs-template-fields/verdocs-template-fields.stories.js +1 -1
  34. package/dist/components/Envelopes.js +1 -1
  35. package/dist/components/Recipients.js +9 -1
  36. package/dist/components/index2.js +63 -219
  37. package/dist/components/verdocs-envelope-document-page2.js +1 -1
  38. package/dist/components/verdocs-envelope-recipient-summary2.js +2 -2
  39. package/dist/components/verdocs-envelope-sidebar.js +112 -54
  40. package/dist/components/verdocs-field-textarea.js +27 -17
  41. package/dist/components/verdocs-field-textbox.js +26 -15
  42. package/dist/components/verdocs-template-reminders.js +10 -0
  43. package/dist/components/verdocs-view2.js +1 -1
  44. package/dist/custom-elements.json +1619 -0
  45. package/dist/docs.json +80 -3
  46. package/dist/esm/EnvelopeStore-28f5d8f5.js +81 -0
  47. package/dist/esm/{Envelopes-c3d471e5.js → Envelopes-105a4a8f.js} +1 -1
  48. package/dist/esm/{Recipients-198b2531.js → Recipients-4ec2138c.js} +9 -1
  49. package/dist/esm/{index-d264c496.js → index-914ed6f7.js} +63 -219
  50. package/dist/esm/loader.js +1 -1
  51. package/dist/esm/{utils-9da23ba1.js → utils-60683446.js} +2 -2
  52. package/dist/esm/verdocs-dropdown_2.entry.js +3 -3
  53. package/dist/esm/verdocs-envelope-recipient-summary.entry.js +4 -80
  54. package/dist/esm/verdocs-envelope-sidebar.entry.js +102 -46
  55. package/dist/esm/verdocs-field-checkbox.entry.js +3 -3
  56. package/dist/esm/verdocs-field-date.entry.js +3 -3
  57. package/dist/esm/verdocs-field-dropdown.entry.js +3 -3
  58. package/dist/esm/verdocs-field-initial.entry.js +3 -3
  59. package/dist/esm/verdocs-field-payment.entry.js +3 -3
  60. package/dist/esm/verdocs-field-radio-button.entry.js +3 -3
  61. package/dist/esm/verdocs-field-signature.entry.js +3 -3
  62. package/dist/esm/verdocs-field-textarea.entry.js +28 -20
  63. package/dist/esm/verdocs-field-textbox.entry.js +27 -18
  64. package/dist/esm/verdocs-field-timestamp.entry.js +3 -3
  65. package/dist/esm/verdocs-organization-card.entry.js +1 -1
  66. package/dist/esm/verdocs-preview.entry.js +3 -3
  67. package/dist/esm/verdocs-send.entry.js +3 -3
  68. package/dist/esm/verdocs-sign.entry.js +4 -4
  69. package/dist/esm/verdocs-template-document-page_2.entry.js +3 -3
  70. package/dist/esm/verdocs-template-fields_4.entry.js +3 -3
  71. package/dist/esm/verdocs-template-reminders.entry.js +10 -0
  72. package/dist/esm/verdocs-view.entry.js +3 -3
  73. package/dist/esm/verdocs-web-sdk.js +1 -1
  74. package/dist/esm-es5/EnvelopeStore-28f5d8f5.js +1 -0
  75. package/dist/esm-es5/{Envelopes-c3d471e5.js → Envelopes-105a4a8f.js} +1 -1
  76. package/dist/esm-es5/Recipients-4ec2138c.js +1 -0
  77. package/dist/esm-es5/index-914ed6f7.js +1 -0
  78. package/dist/esm-es5/loader.js +1 -1
  79. package/dist/esm-es5/{utils-9da23ba1.js → utils-60683446.js} +1 -1
  80. package/dist/esm-es5/verdocs-dropdown_2.entry.js +1 -1
  81. package/dist/esm-es5/verdocs-envelope-recipient-summary.entry.js +1 -1
  82. package/dist/esm-es5/verdocs-envelope-sidebar.entry.js +1 -1
  83. package/dist/esm-es5/verdocs-field-checkbox.entry.js +1 -1
  84. package/dist/esm-es5/verdocs-field-date.entry.js +1 -1
  85. package/dist/esm-es5/verdocs-field-dropdown.entry.js +1 -1
  86. package/dist/esm-es5/verdocs-field-initial.entry.js +1 -1
  87. package/dist/esm-es5/verdocs-field-payment.entry.js +1 -1
  88. package/dist/esm-es5/verdocs-field-radio-button.entry.js +1 -1
  89. package/dist/esm-es5/verdocs-field-signature.entry.js +1 -1
  90. package/dist/esm-es5/verdocs-field-textarea.entry.js +1 -1
  91. package/dist/esm-es5/verdocs-field-textbox.entry.js +1 -1
  92. package/dist/esm-es5/verdocs-field-timestamp.entry.js +1 -1
  93. package/dist/esm-es5/verdocs-organization-card.entry.js +1 -1
  94. package/dist/esm-es5/verdocs-preview.entry.js +1 -1
  95. package/dist/esm-es5/verdocs-send.entry.js +1 -1
  96. package/dist/esm-es5/verdocs-sign.entry.js +1 -1
  97. package/dist/esm-es5/verdocs-template-document-page_2.entry.js +1 -1
  98. package/dist/esm-es5/verdocs-template-fields_4.entry.js +1 -1
  99. package/dist/esm-es5/verdocs-view.entry.js +1 -1
  100. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  101. package/dist/types/components/envelopes/verdocs-envelope-sidebar/verdocs-envelope-sidebar.d.ts +7 -5
  102. package/dist/types/components/fields/verdocs-field-textarea/verdocs-field-textarea.d.ts +8 -0
  103. package/dist/types/components/fields/verdocs-field-textbox/verdocs-field-textbox.d.ts +8 -0
  104. package/dist/types/components.d.ts +32 -0
  105. package/dist/verdocs-web-sdk/{p-4a39c1a4.system.entry.js → p-02a70b8e.system.entry.js} +1 -1
  106. package/dist/verdocs-web-sdk/{p-eb3beb29.system.entry.js → p-095a3eba.system.entry.js} +1 -1
  107. package/dist/verdocs-web-sdk/{p-592e9e12.entry.js → p-0aee25b9.entry.js} +1 -1
  108. package/dist/verdocs-web-sdk/p-0e381c36.entry.js +1 -0
  109. package/dist/verdocs-web-sdk/p-13959c36.system.entry.js +1 -0
  110. package/dist/verdocs-web-sdk/p-18ee4fd5.js +1 -0
  111. package/dist/verdocs-web-sdk/{p-886461cd.system.entry.js → p-1a0cccea.system.entry.js} +1 -1
  112. package/dist/verdocs-web-sdk/p-1cf38cea.system.js +1 -1
  113. package/dist/verdocs-web-sdk/{p-2cf70fcd.entry.js → p-1f561c42.entry.js} +1 -1
  114. package/dist/verdocs-web-sdk/{p-afe91637.system.entry.js → p-2c0d7838.system.entry.js} +1 -1
  115. package/dist/verdocs-web-sdk/{p-74dd0569.entry.js → p-33640d84.entry.js} +1 -1
  116. package/dist/verdocs-web-sdk/{p-7b215f9d.system.entry.js → p-380efff2.system.entry.js} +1 -1
  117. package/dist/verdocs-web-sdk/p-3cd894ff.js +1 -0
  118. package/dist/verdocs-web-sdk/{p-aebd2d02.system.entry.js → p-3fe24d0c.system.entry.js} +1 -1
  119. package/dist/verdocs-web-sdk/p-44ec0583.entry.js +1 -0
  120. package/dist/verdocs-web-sdk/{p-2631bdd9.entry.js → p-49b3ac56.entry.js} +1 -1
  121. package/dist/verdocs-web-sdk/p-4a3b037b.system.entry.js +1 -0
  122. package/dist/verdocs-web-sdk/{p-3601cc11.entry.js → p-59243dec.entry.js} +1 -1
  123. package/dist/verdocs-web-sdk/p-5cff98bd.entry.js +1 -0
  124. package/dist/verdocs-web-sdk/{p-1402ff01.system.entry.js → p-6a44fb56.system.entry.js} +1 -1
  125. package/dist/verdocs-web-sdk/{p-cfec9914.entry.js → p-717c9fe1.entry.js} +1 -1
  126. package/dist/verdocs-web-sdk/{p-e7da2f5c.entry.js → p-73ea1ea3.entry.js} +1 -1
  127. package/dist/verdocs-web-sdk/{p-b898c99b.system.entry.js → p-7850f739.system.entry.js} +1 -1
  128. package/dist/verdocs-web-sdk/p-7a23c2c8.system.js +1 -0
  129. package/dist/verdocs-web-sdk/{p-7baf2c02.system.entry.js → p-813c2fae.system.entry.js} +1 -1
  130. package/dist/verdocs-web-sdk/{p-00f8400e.system.entry.js → p-8c5ffa7b.system.entry.js} +1 -1
  131. package/dist/verdocs-web-sdk/{p-38ac3807.entry.js → p-8e386265.entry.js} +1 -1
  132. package/dist/verdocs-web-sdk/{p-973ebb54.system.js → p-8fd812f4.system.js} +1 -1
  133. package/dist/verdocs-web-sdk/p-94365585.entry.js +1 -0
  134. package/dist/verdocs-web-sdk/{p-b8d94f4c.system.entry.js → p-9c87f6f8.system.entry.js} +1 -1
  135. package/dist/verdocs-web-sdk/p-9d7fa51d.system.entry.js +1 -0
  136. package/dist/verdocs-web-sdk/p-a3c06b62.entry.js +1 -0
  137. package/dist/verdocs-web-sdk/{p-10fe89ab.entry.js → p-a4cbba4a.entry.js} +1 -1
  138. package/dist/verdocs-web-sdk/{p-ee53ee29.system.entry.js → p-afa1f20b.system.entry.js} +1 -1
  139. package/dist/verdocs-web-sdk/{p-b00a49aa.entry.js → p-be6d3848.entry.js} +1 -1
  140. package/dist/verdocs-web-sdk/p-c220af42.js +1 -0
  141. package/dist/verdocs-web-sdk/{p-c0b1ace5.entry.js → p-c3ef7b4f.entry.js} +1 -1
  142. package/dist/verdocs-web-sdk/{p-10444734.system.entry.js → p-c59f1a0a.system.entry.js} +1 -1
  143. package/dist/verdocs-web-sdk/{p-9b73909f.js → p-cf790f4f.js} +1 -1
  144. package/dist/verdocs-web-sdk/{p-7dda316b.entry.js → p-d4c8f358.entry.js} +1 -1
  145. package/dist/verdocs-web-sdk/p-dc9c4361.system.js +1 -0
  146. package/dist/verdocs-web-sdk/{p-64897a63.entry.js → p-decf6a56.entry.js} +1 -1
  147. package/dist/verdocs-web-sdk/p-e2635788.system.entry.js +1 -0
  148. package/dist/verdocs-web-sdk/{p-f1940c85.system.entry.js → p-e727af9c.system.entry.js} +1 -1
  149. package/dist/verdocs-web-sdk/{p-d146b48e.entry.js → p-e72c075e.entry.js} +1 -1
  150. package/dist/verdocs-web-sdk/p-eaf0b189.system.js +1 -0
  151. package/dist/verdocs-web-sdk/{p-ca2ed07e.system.entry.js → p-f0db17e6.system.entry.js} +1 -1
  152. package/dist/verdocs-web-sdk/{p-73155c52.js → p-f9bea98a.js} +1 -1
  153. package/dist/verdocs-web-sdk/{p-da31f940.system.js → p-fa6b1145.system.js} +1 -1
  154. package/dist/verdocs-web-sdk/{p-05fc6555.system.entry.js → p-fcfd3193.system.entry.js} +1 -1
  155. package/dist/verdocs-web-sdk/{p-4dec0879.entry.js → p-fdda1309.entry.js} +1 -1
  156. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  157. package/package.json +5 -5
  158. package/dist/esm-es5/Recipients-198b2531.js +0 -1
  159. package/dist/esm-es5/index-d264c496.js +0 -1
  160. package/dist/verdocs-web-sdk/p-10ec9a96.entry.js +0 -1
  161. package/dist/verdocs-web-sdk/p-12e54f39.js +0 -1
  162. package/dist/verdocs-web-sdk/p-23292d40.system.entry.js +0 -1
  163. package/dist/verdocs-web-sdk/p-381f2a5f.entry.js +0 -1
  164. package/dist/verdocs-web-sdk/p-48d71927.system.entry.js +0 -1
  165. package/dist/verdocs-web-sdk/p-494d4276.system.js +0 -1
  166. package/dist/verdocs-web-sdk/p-4d1f3ddb.entry.js +0 -1
  167. package/dist/verdocs-web-sdk/p-51a3ea62.system.js +0 -1
  168. package/dist/verdocs-web-sdk/p-9c87a748.system.entry.js +0 -1
  169. package/dist/verdocs-web-sdk/p-ab01f71e.js +0 -1
  170. package/dist/verdocs-web-sdk/p-c2e75693.entry.js +0 -1
  171. package/dist/verdocs-web-sdk/p-e4ab3dfc.system.entry.js +0 -1
  172. package/dist/verdocs-web-sdk/p-e5f44611.entry.js +0 -1
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
- import { c as getEnvelopeDocumentPageDisplayUri } from './Envelopes.js';
2
+ import { d as getEnvelopeDocumentPageDisplayUri } from './Envelopes.js';
3
3
  import './Types.js';
4
4
  import { V as VerdocsEndpoint } from './VerdocsEndpoint.js';
5
5
  import { t as throttle } from './utils.js';
@@ -4,7 +4,7 @@ import { g as getInPersonLink } from './Recipients.js';
4
4
  import './Types.js';
5
5
  import { V as VerdocsEndpoint } from './VerdocsEndpoint.js';
6
6
  import { c as createStore } from './index3.js';
7
- import { d as getEnvelope } from './Envelopes.js';
7
+ import { e as getEnvelope } from './Envelopes.js';
8
8
  import { V as VerdocsToast } from './Toast.js';
9
9
  import { S as SDKError } from './errors.js';
10
10
  import { d as defineCustomElement$1 } from './verdocs-button2.js';
@@ -223,4 +223,4 @@ function defineCustomElement() {
223
223
  }
224
224
  defineCustomElement();
225
225
 
226
- export { VerdocsEnvelopeRecipientSummary as V, defineCustomElement as d };
226
+ export { VerdocsEnvelopeRecipientSummary as V, defineCustomElement as d, getEnvelopeStore as g };
@@ -1,17 +1,19 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
- import { t as throttledGetEnvelope } from './Envelopes.js';
2
+ import { c as cancelEnvelope } from './Envelopes.js';
3
3
  import { u as userIsEnvelopeOwner } from './Permissions.js';
4
+ import { g as getInPersonLink, r as resendInvitation } from './Recipients.js';
4
5
  import './Types.js';
5
6
  import { V as VerdocsEndpoint } from './VerdocsEndpoint.js';
7
+ import { g as getEnvelopeStore, d as defineCustomElement$3 } from './verdocs-envelope-recipient-summary2.js';
6
8
  import { F as FORMAT_TIMESTAMP } from './Types2.js';
7
9
  import { V as VerdocsToast } from './Toast.js';
8
10
  import { S as SDKError } from './errors.js';
9
- import { d as defineCustomElement$4 } from './verdocs-button2.js';
10
- import { d as defineCustomElement$3 } from './verdocs-dropdown2.js';
11
- import { d as defineCustomElement$2 } from './verdocs-envelope-recipient-summary2.js';
11
+ import { d as defineCustomElement$5 } from './verdocs-button2.js';
12
+ import { d as defineCustomElement$4 } from './verdocs-dropdown2.js';
13
+ import { d as defineCustomElement$2 } from './verdocs-ok-dialog2.js';
12
14
  import { f as format } from './index2.js';
13
15
 
14
- const verdocsEnvelopeSidebarCss = "verdocs-envelope-sidebar{font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif;-ms-flex-direction:row;flex-direction:row;display:-ms-flexbox;display:flex;-ms-flex:0 0 56px;flex:0 0 56px;width:56px;min-height:400px;height:100%;background:#41435e;-webkit-transition:0.5s cubic-bezier(0.35, 0, 0.25, 1);transition:0.5s cubic-bezier(0.35, 0, 0.25, 1)}verdocs-envelope-sidebar.open{-ms-flex:0 0 400px;flex:0 0 400px;width:400px}verdocs-envelope-sidebar .side-buttons{-ms-flex-direction:column;flex-direction:column;-ms-flex:0 0 56px;flex:0 0 56px;display:-ms-flexbox;display:flex}verdocs-envelope-sidebar .side-buttons button{height:50px;outline:none;border:none;border-left:2px solid transparent;background:none;width:100%}verdocs-envelope-sidebar .side-buttons button.active{border-left:2px solid #50bd80}verdocs-envelope-sidebar .side-buttons button svg{color:white;width:24px;height:24px}verdocs-envelope-sidebar .content{-ms-flex:1;flex:1;display:none;color:white;-ms-flex-direction:column;flex-direction:column;padding:12px 16px 16px}verdocs-envelope-sidebar.open .content{display:-ms-flexbox;display:flex;overflow-y:scroll}verdocs-envelope-sidebar .title{margin-bottom:12px;font-size:16px;line-height:24px;font-weight:400;-ms-flex:0;flex:0}verdocs-envelope-sidebar .label{font-size:12px;line-height:16px;color:rgba(255, 255, 255, 0.54);-ms-flex:0;flex:0}verdocs-envelope-sidebar .value{margin-bottom:14px;font-size:14px;font-weight:500;line-height:16px;color:#fff;-ms-flex:0;flex:0}verdocs-envelope-sidebar .manage-recipients-button{-ms-flex-item-align:center;align-self:center;white-space:nowrap}verdocs-envelope-sidebar .manage-recipients-button .label{color:#ffffff;font-size:14px}verdocs-envelope-sidebar .recipient-detail{-ms-flex:0;flex:0;padding:8px;position:relative;-ms-flex-direction:column;flex-direction:column;border:solid 1px #979797;margin-bottom:16px}verdocs-envelope-sidebar .recipient-header{-ms-flex-direction:row;flex-direction:row;-webkit-box-sizing:border-box;box-sizing:border-box;display:-ms-flexbox;display:flex;place-content:center space-between;-ms-flex-align:center;align-items:center;margin-bottom:4px}verdocs-envelope-sidebar .recipient-number{width:24px;height:24px;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;border-radius:24px;font-size:14px;font-weight:500;margin-right:10px;border:solid 1px #979797}verdocs-envelope-sidebar .recipient-type{-ms-flex:1 1 88px;flex:1 1 88px;-webkit-box-sizing:border-box;box-sizing:border-box;max-width:88px;min-width:88px;text-transform:capitalize}verdocs-envelope-sidebar .recipient-status{-ms-flex:1 1 100px;flex:1 1 100px;border-radius:5px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;max-width:100px;min-width:100px;background-color:#616161;text-transform:capitalize;font-size:14px;padding:3px 0}verdocs-envelope-sidebar .recipient-status.invited{background-color:#ff8f00}verdocs-envelope-sidebar .recipient-status.opened{background-color:#616161}verdocs-envelope-sidebar .recipient-status.signed,verdocs-envelope-sidebar .recipient-status.submitted{background-color:#2e7d32}verdocs-envelope-sidebar .recipient-status.pending{background-color:#0277bd}verdocs-envelope-sidebar .recipient-status.canceled,verdocs-envelope-sidebar .recipient-status.declined{background-color:#c62828}verdocs-envelope-sidebar .recipient-content{-ms-flex-direction:column;flex-direction:column}verdocs-envelope-sidebar .history-entry{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;padding:8px 0 0;margin:8px 0 0;border-top:1px solid #dddddd}verdocs-envelope-sidebar .history-entry .activity-icon{margin-right:14px}verdocs-envelope-sidebar .history-entry .activity-icon svg{width:24px;height:24px;fill:#ffffff}verdocs-envelope-sidebar .history-entry .activity-text{font-size:14px;line-height:16px;margin-bottom:4px}verdocs-envelope-sidebar .history-entry .activity-date{font-size:12px;line-height:16px;color:rgba(255, 255, 255, 0.54)}verdocs-envelope-sidebar .content .history-entry:first-of-type{border-top:none}";
16
+ const verdocsEnvelopeSidebarCss = "verdocs-envelope-sidebar{font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif;-ms-flex-direction:row;flex-direction:row;display:-ms-flexbox;display:flex;-ms-flex:0 0 56px;flex:0 0 56px;width:56px;min-height:400px;height:100%;background:#41435e;-webkit-transition:0.5s cubic-bezier(0.35, 0, 0.25, 1);transition:0.5s cubic-bezier(0.35, 0, 0.25, 1)}verdocs-envelope-sidebar.open{-ms-flex:0 0 400px;flex:0 0 400px;width:400px}verdocs-envelope-sidebar .side-buttons{-ms-flex-direction:column;flex-direction:column;-ms-flex:0 0 56px;flex:0 0 56px;display:-ms-flexbox;display:flex}verdocs-envelope-sidebar .side-buttons button{height:50px;outline:none;border:none;border-left:2px solid transparent;background:none;width:100%}verdocs-envelope-sidebar .side-buttons button.active{border-left:2px solid #50bd80}verdocs-envelope-sidebar .side-buttons button svg{color:white;width:24px;height:24px}verdocs-envelope-sidebar .content{-ms-flex:1;flex:1;display:none;color:white;-ms-flex-direction:column;flex-direction:column;padding:12px 16px 16px}verdocs-envelope-sidebar.open .content{display:-ms-flexbox;display:flex;overflow-y:scroll}verdocs-envelope-sidebar verdocs-ok-dialog .content{color:black}verdocs-envelope-sidebar .title{margin-bottom:12px;font-size:16px;line-height:24px;font-weight:400;-ms-flex:0;flex:0}verdocs-envelope-sidebar .label{font-size:12px;line-height:16px;color:rgba(255, 255, 255, 0.54);-ms-flex:0;flex:0}verdocs-envelope-sidebar .value{margin-bottom:14px;font-size:14px;font-weight:500;line-height:16px;color:#fff;-ms-flex:0;flex:0}verdocs-envelope-sidebar .manage-recipients-button{-ms-flex-item-align:center;align-self:center;white-space:nowrap;width:100%;margin:0 0 10px 0}verdocs-envelope-sidebar .manage-recipients-button .label{color:#ffffff;font-size:14px}verdocs-envelope-sidebar .manage-recipients-button button{width:100%}verdocs-envelope-sidebar .recipient-detail{-ms-flex:0;flex:0;padding:8px;position:relative;-ms-flex-direction:column;flex-direction:column;border:solid 1px #979797;margin-bottom:16px}verdocs-envelope-sidebar .recipient-header{-ms-flex-direction:row;flex-direction:row;-webkit-box-sizing:border-box;box-sizing:border-box;display:-ms-flexbox;display:flex;place-content:center space-between;-ms-flex-align:center;align-items:center;margin-bottom:4px}verdocs-envelope-sidebar .recipient-number{width:24px;height:24px;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;border-radius:24px;font-size:14px;font-weight:500;margin-right:10px;border:solid 1px #979797}verdocs-envelope-sidebar .recipient-type{-ms-flex:1 1 88px;flex:1 1 88px;-webkit-box-sizing:border-box;box-sizing:border-box;max-width:88px;min-width:88px;text-transform:capitalize}verdocs-envelope-sidebar .recipient-status{-ms-flex:1 1 100px;flex:1 1 100px;border-radius:5px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;max-width:100px;min-width:100px;background-color:#616161;text-transform:capitalize;font-size:14px;padding:3px 0}verdocs-envelope-sidebar .recipient-status.invited{background-color:#ff8f00}verdocs-envelope-sidebar .recipient-status.opened{background-color:#616161}verdocs-envelope-sidebar .recipient-status.signed,verdocs-envelope-sidebar .recipient-status.submitted{background-color:#2e7d32}verdocs-envelope-sidebar .recipient-status.pending{background-color:#0277bd}verdocs-envelope-sidebar .recipient-status.canceled,verdocs-envelope-sidebar .recipient-status.declined{background-color:#c62828}verdocs-envelope-sidebar .recipient-content{-ms-flex-direction:column;flex-direction:column}verdocs-envelope-sidebar .history-entry{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;padding:8px 0 0;margin:8px 0 0;border-top:1px solid #dddddd}verdocs-envelope-sidebar .history-entry .activity-icon{margin-right:14px}verdocs-envelope-sidebar .history-entry .activity-icon svg{width:24px;height:24px;fill:#ffffff}verdocs-envelope-sidebar .history-entry .activity-text{font-size:14px;line-height:16px;margin-bottom:4px}verdocs-envelope-sidebar .history-entry .activity-date{font-size:12px;line-height:16px;color:rgba(255, 255, 255, 0.54)}verdocs-envelope-sidebar .content .history-entry:first-of-type{border-top:none}";
15
17
 
16
18
  const InformationCircle = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="#ffffff"><path stroke-linecap="round" stroke-linejoin="round" d="M11.25 11.25l.041-.02a.75.75 0 011.063.852l-.708 2.836a.75.75 0 001.063.853l.041-.021M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9-3.75h.008v.008H12V8.25z" /></svg>`;
17
19
  const Users = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="#ffffff"><path stroke-linecap="round" stroke-linejoin="round" d="M15 19.128a9.38 9.38 0 002.625.372 9.337 9.337 0 004.121-.952 4.125 4.125 0 00-7.533-2.493M15 19.128v-.003c0-1.113-.285-2.16-.786-3.07M15 19.128v.106A12.318 12.318 0 018.624 21c-2.331 0-4.512-.645-6.374-1.766l-.001-.109a6.375 6.375 0 0111.964-3.07M12 6.375a3.375 3.375 0 11-6.75 0 3.375 3.375 0 016.75 0zm8.25 2.25a2.625 2.625 0 11-5.25 0 2.625 2.625 0 015.25 0z" /></svg>`;
@@ -45,40 +47,42 @@ const VerdocsEnvelopeSidebar$1 = /*@__PURE__*/ proxyCustomElement(class extends
45
47
  this.envelopeUpdated = createEvent(this, "envelopeUpdated", 7);
46
48
  this.toggle = createEvent(this, "toggle", 7);
47
49
  this.another = createEvent(this, "another", 7);
50
+ this.store = null;
48
51
  this.endpoint = VerdocsEndpoint.getDefault();
49
52
  this.envelopeId = '';
50
- this.envelope = null;
51
- this.sortedRecipients = [];
52
- this.roleNames = [];
53
53
  this.activeTab = 1;
54
54
  this.panelOpen = false;
55
55
  this.showManageDialog = false;
56
+ this.showCancelDialog = false;
56
57
  this.loading = true;
57
58
  }
58
- componentWillLoad() {
59
- this.endpoint.loadSession();
60
- }
61
- // TODO: Handling signing vs preview-as-user cases
62
- // TODO: Handle anonymous case and failure to load due to not being logged in
63
- async componentWillRender() {
59
+ async componentWillLoad() {
64
60
  var _a, _b, _c;
65
- if (!this.envelopeId) {
66
- console.error(`[SIDEBAR] Missing required envelopeId`);
67
- return;
68
- }
69
61
  try {
70
- this.envelope = await throttledGetEnvelope(this.endpoint, this.envelopeId);
71
- this.sortedRecipients = [...this.envelope.recipients];
72
- this.sortedRecipients.sort((a, b) => {
73
- return a.sequence === b.sequence ? a.order - b.order : a.sequence - b.sequence;
74
- });
75
- this.roleNames = this.sortedRecipients.map(r => r.role_name);
62
+ this.endpoint.loadSession();
63
+ if (!this.envelopeId) {
64
+ console.log(`[SIDEBAR] Missing required envelope ID ${this.envelopeId}`);
65
+ return;
66
+ }
67
+ if (!this.endpoint.session) {
68
+ console.log('[SIDEBAR] Unable to start session, must be authenticated');
69
+ return;
70
+ }
71
+ this.store = await getEnvelopeStore(this.endpoint, this.envelopeId, true);
72
+ this.sortEnvelopeRecipients();
76
73
  this.loading = false;
77
74
  }
78
75
  catch (e) {
76
+ console.log('[SIDEBAR] Error loading envelope', e);
79
77
  (_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));
80
78
  }
81
79
  }
80
+ sortEnvelopeRecipients() {
81
+ var _a, _b;
82
+ (_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.recipients.sort((a, b) => {
83
+ return a.sequence === b.sequence ? a.order - b.order : a.sequence - b.sequence;
84
+ });
85
+ }
82
86
  setTab(tab) {
83
87
  var _a;
84
88
  this.panelOpen = tab !== this.activeTab || !this.panelOpen;
@@ -87,20 +91,38 @@ const VerdocsEnvelopeSidebar$1 = /*@__PURE__*/ proxyCustomElement(class extends
87
91
  }
88
92
  // TODO: Refactor to a common library?
89
93
  canResendRecipient(recipient) {
94
+ var _a, _b;
90
95
  return (!['pending', 'declined', 'submitted', 'canceled'].includes(recipient.status) && //
91
- !['complete', 'declined', 'canceled'].includes(this.envelope.status));
96
+ !['complete', 'declined', 'canceled'].includes((_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.status));
92
97
  }
93
98
  canModifyRecipient(recipient) {
99
+ var _a, _b;
94
100
  return (!recipient.claimed && //
95
101
  !['declined', 'signed', 'submitted', 'canceled'].includes(recipient.status) &&
96
- !['complete', 'declined', 'canceled'].includes(this.envelope.status));
102
+ !['complete', 'declined', 'canceled'].includes((_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.status));
97
103
  }
98
104
  handleRecipientAction(recipient, id) {
99
- var _a;
105
+ var _a, _b;
100
106
  console.log('[SIDEBAR] Recipient action', id, recipient);
101
107
  switch (id) {
102
108
  case 'reminder':
103
- VerdocsToast('This feature will be enabled in a future release. Please try again later.', { style: 'info' });
109
+ resendInvitation(this.endpoint, this.envelopeId, recipient.role_name)
110
+ .then(() => {
111
+ VerdocsToast('Reminder Sent', { style: 'success' });
112
+ })
113
+ .catch(e => {
114
+ console.log('[SIDEBAR] Error resending invitation', e);
115
+ VerdocsToast('Error resending invitation: ' + e.message, { style: 'error' });
116
+ });
117
+ break;
118
+ case 'inperson':
119
+ getInPersonLink(this.endpoint, recipient.envelope_id, recipient.role_name)
120
+ .then(({ link }) => navigator.clipboard.writeText(link))
121
+ .then(() => VerdocsToast('Link copied to clipboard.', { style: 'success', duration: 2000 }))
122
+ .catch(e => {
123
+ console.log('[RECIPIENTS] Error getting link', e);
124
+ VerdocsToast('Unable to get link: ' + e.message, { style: 'error' });
125
+ });
104
126
  break;
105
127
  case 'modify':
106
128
  VerdocsToast('This feature will be enabled in a future release. Please try again later.', { style: 'info' });
@@ -109,21 +131,38 @@ const VerdocsEnvelopeSidebar$1 = /*@__PURE__*/ proxyCustomElement(class extends
109
131
  VerdocsToast('This feature will be enabled in a future release. Please try again later.', { style: 'info' });
110
132
  break;
111
133
  }
112
- (_a = this.envelopeUpdated) === null || _a === void 0 ? void 0 : _a.emit({ endpoint: this.endpoint, envelope: this.envelope, event: id });
134
+ (_a = this.envelopeUpdated) === null || _a === void 0 ? void 0 : _a.emit({ endpoint: this.endpoint, envelope: (_b = this.store) === null || _b === void 0 ? void 0 : _b.state, event: id });
135
+ }
136
+ cancelEnvelope() {
137
+ cancelEnvelope(this.endpoint, this.envelopeId)
138
+ .then(async (r) => {
139
+ var _a, _b;
140
+ console.log('[SIDEBAR] Envelope canceled', r);
141
+ VerdocsToast('Envelope canceled', { style: 'success' });
142
+ this.store = await getEnvelopeStore(this.endpoint, this.envelopeId, true);
143
+ this.sortEnvelopeRecipients();
144
+ (_a = this.envelopeUpdated) === null || _a === void 0 ? void 0 : _a.emit({ endpoint: this.endpoint, envelope: (_b = this.store) === null || _b === void 0 ? void 0 : _b.state, event: 'canceled' });
145
+ })
146
+ .catch(e => {
147
+ console.log('[SIDEBAR] Error canceling envelope', e);
148
+ VerdocsToast('Error canceling envelope: ' + e.message, { style: 'error' });
149
+ });
113
150
  }
114
151
  prepareHistoryEntries() {
152
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
115
153
  const entries = [];
116
- const histories = this.envelope.histories || [];
117
- entries.push({ icon: 'pencil', message: 'Envelope created.', date: new Date(this.envelope.created_at) });
118
- if (this.envelope.status === 'complete') {
119
- entries.push({ icon: 'pencil', message: 'Envelope completed.', date: new Date(this.envelope.updated_at) });
154
+ const histories = ((_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.histories) || [];
155
+ entries.push({ icon: 'pencil', message: 'Envelope created.', date: new Date((_d = (_c = this.store) === null || _c === void 0 ? void 0 : _c.state) === null || _d === void 0 ? void 0 : _d.created_at) });
156
+ if (((_f = (_e = this.store) === null || _e === void 0 ? void 0 : _e.state) === null || _f === void 0 ? void 0 : _f.status) === 'complete') {
157
+ entries.push({ icon: 'pencil', message: 'Envelope completed.', date: new Date((_h = (_g = this.store) === null || _g === void 0 ? void 0 : _g.state) === null || _h === void 0 ? void 0 : _h.updated_at) });
120
158
  }
121
159
  const ownerCanceled = histories.some(history => history.event === 'owner:canceled');
122
- if (this.envelope.status === 'canceled' && !ownerCanceled) {
123
- entries.push({ icon: 'pencil', message: 'Envelope Cancelled.', date: new Date(this.envelope.canceled_at) });
160
+ if (((_k = (_j = this.store) === null || _j === void 0 ? void 0 : _j.state) === null || _k === void 0 ? void 0 : _k.status) === 'canceled' && !ownerCanceled) {
161
+ entries.push({ icon: 'pencil', message: 'Envelope Cancelled.', date: new Date((_m = (_l = this.store) === null || _l === void 0 ? void 0 : _l.state) === null || _m === void 0 ? void 0 : _m.canceled_at) });
124
162
  }
125
163
  histories.forEach(history => {
126
- const user = this.sortedRecipients.find(recipient => recipient.role_name === history.role_name);
164
+ var _a;
165
+ const user = (_a = this.store.state) === null || _a === void 0 ? void 0 : _a.recipients.find(recipient => recipient.role_name === history.role_name);
127
166
  const name = (user === null || user === void 0 ? void 0 : user.full_name) || '';
128
167
  switch (history.event.toLowerCase()) {
129
168
  case 'recipient:signed':
@@ -225,46 +264,60 @@ const VerdocsEnvelopeSidebar$1 = /*@__PURE__*/ proxyCustomElement(class extends
225
264
  entries.sort((a, b) => b.date.getTime() - a.date.getTime());
226
265
  return entries;
227
266
  }
267
+ canModify(recipient) {
268
+ var _a, _b;
269
+ const invalidRecipientStatus = ['declined', 'signed', 'submitted', 'canceled'];
270
+ const invalidEnvelopeStatus = ['complete', 'declined', 'canceled'];
271
+ return recipient.claimed !== true && invalidRecipientStatus.indexOf(recipient.status) === -1 && invalidEnvelopeStatus.indexOf((_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.status) === -1;
272
+ }
228
273
  render() {
229
- var _a, _b, _c;
230
- if (!this.envelope || this.loading) {
274
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0;
275
+ if (!this.store.state) {
231
276
  return h(Host, null);
232
277
  }
233
278
  const session = this.endpoint.getSession();
234
- const isEnvelopeOwner = userIsEnvelopeOwner(session, this.envelope);
279
+ const isEnvelopeOwner = userIsEnvelopeOwner(session, this.store.state);
235
280
  const historyEntries = this.prepareHistoryEntries();
236
- return (h(Host, { class: this.panelOpen ? 'open' : '' }, h("div", { class: "side-buttons" }, h("button", { class: this.activeTab === 1 ? 'active' : '', onClick: () => this.setTab(1), innerHTML: InformationCircle }), h("button", { class: this.activeTab === 2 ? 'active' : '', onClick: () => this.setTab(2), innerHTML: Users }), h("button", { class: this.activeTab === 3 ? 'active' : '', onClick: () => this.setTab(3), innerHTML: ClipboardDocuments })), this.activeTab === 1 && (h("div", { class: "content" }, h("div", { class: "title" }, "Details"), h("div", { class: "label" }, "Envelope ID"), h("div", { class: "value" }, this.envelope.id), h("div", { class: "label" }, "Date Created"), h("div", { class: "value" }, format(new Date(this.envelope.created_at), FORMAT_TIMESTAMP)), h("div", { class: "label" }, "Last Modified"), h("div", { class: "value" }, format(new Date(this.envelope.updated_at), FORMAT_TIMESTAMP)), h("div", { class: "label" }, "Status"), h("div", { class: "value" }, this.envelope.status), h("div", { class: "label" }, "Verdoc Owner ID"), h("div", { class: "value" }, this.envelope.profile_id), h("div", { class: "label" }, "Verdoc Owner Name"), h("div", { class: "value" }, (_a = this.envelope.profile) === null || _a === void 0 ? void 0 :
237
- _a.first_name, " ", (_b = this.envelope.profile) === null || _b === void 0 ? void 0 :
238
- _b.last_name), h("div", { class: "label" }, "Verdoc Owner Email"), h("div", { class: "value" }, (_c = this.envelope.profile) === null || _c === void 0 ? void 0 : _c.email))), this.activeTab === 2 && (h("div", { class: "content" }, h("div", { class: "title" }, "Recipients"), this.sortedRecipients.map((recipient, index) => (h("div", { class: "recipient-detail" }, h("div", { class: "recipient-header" }, h("div", { class: "recipient-number" }, index + 1), h("div", { class: "recipient-type" }, recipient.role_name), h("div", { class: { 'recipient-status': true, [recipient.status]: true } }, recipient.status), isEnvelopeOwner && (h("verdocs-dropdown", { onOptionSelected: item => this.handleRecipientAction(recipient, item.detail.id), options: [
239
- { id: 'reminder', label: 'Send Reminder', disabled: !this.canResendRecipient(recipient) },
240
- { id: 'modify', label: 'Modify Recipient', disabled: !this.canModifyRecipient(recipient) },
241
- // TODO: Details dialog
242
- // {id:'details',label: 'View Details'},
243
- ] }))), h("dic", { class: "recipient-content" }, h("div", { class: "recipient-name" }, recipient.full_name), h("div", { class: "recipient-name" }, recipient.email), h("div", { class: "recipient-name" }, recipient.phone))))), isEnvelopeOwner && h("verdocs-button", { class: "manage-recipients-button", variant: "standard", label: "Manage Recipients", onClick: () => (this.showManageDialog = true) }))), this.activeTab === 3 && (h("div", { class: "content" }, h("div", { class: "title" }, "History"), historyEntries.map(entry => (h("div", { class: "history-entry" }, h("div", { class: "activity-icon", innerHTML: ActivityIcons[entry.icon] || entry.icon }), h("div", { class: "activity-details" }, h("div", { class: "activity-text" }, entry.message), h("div", { class: "activity-date" }, format(entry.date, FORMAT_TIMESTAMP)))))))), this.showManageDialog && (h("verdocs-envelope-recipient-summary", { envelopeId: this.envelopeId, canView: false, onAnother: () => {
281
+ const functionsDisabled = ((_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.status) !== 'pending' && ((_d = (_c = this.store) === null || _c === void 0 ? void 0 : _c.state) === null || _d === void 0 ? void 0 : _d.status) !== 'in progress';
282
+ return (h(Host, { class: this.panelOpen ? 'open' : '' }, h("div", { class: "side-buttons" }, h("button", { class: this.activeTab === 1 ? 'active' : '', onClick: () => this.setTab(1), innerHTML: InformationCircle }), h("button", { class: this.activeTab === 2 ? 'active' : '', onClick: () => this.setTab(2), innerHTML: Users }), h("button", { class: this.activeTab === 3 ? 'active' : '', onClick: () => this.setTab(3), innerHTML: ClipboardDocuments })), this.activeTab === 1 && (h("div", { class: "content" }, h("div", { class: "title" }, "Details"), h("div", { class: "label" }, "Envelope ID"), h("div", { class: "value" }, (_f = (_e = this.store) === null || _e === void 0 ? void 0 : _e.state) === null || _f === void 0 ? void 0 : _f.id), h("div", { class: "label" }, "Date Created"), h("div", { class: "value" }, format(new Date((_h = (_g = this.store) === null || _g === void 0 ? void 0 : _g.state) === null || _h === void 0 ? void 0 : _h.created_at), FORMAT_TIMESTAMP)), h("div", { class: "label" }, "Last Modified"), h("div", { class: "value" }, format(new Date((_k = (_j = this.store) === null || _j === void 0 ? void 0 : _j.state) === null || _k === void 0 ? void 0 : _k.updated_at), FORMAT_TIMESTAMP)), h("div", { class: "label" }, "Status"), h("div", { class: "value" }, (_m = (_l = this.store) === null || _l === void 0 ? void 0 : _l.state) === null || _m === void 0 ? void 0 : _m.status), h("div", { class: "label" }, "Verdoc Owner ID"), h("div", { class: "value" }, (_p = (_o = this.store) === null || _o === void 0 ? void 0 : _o.state) === null || _p === void 0 ? void 0 : _p.profile_id), h("div", { class: "label" }, "Verdoc Owner Name"), h("div", { class: "value" }, (_s = (_r = (_q = this.store) === null || _q === void 0 ? void 0 : _q.state) === null || _r === void 0 ? void 0 : _r.profile) === null || _s === void 0 ? void 0 :
283
+ _s.first_name, " ", (_v = (_u = (_t = this.store) === null || _t === void 0 ? void 0 : _t.state) === null || _u === void 0 ? void 0 : _u.profile) === null || _v === void 0 ? void 0 :
284
+ _v.last_name), h("div", { class: "label" }, "Verdoc Owner Email"), h("div", { class: "value" }, (_y = (_x = (_w = this.store) === null || _w === void 0 ? void 0 : _w.state) === null || _x === void 0 ? void 0 : _x.profile) === null || _y === void 0 ? void 0 : _y.email))), this.activeTab === 2 && (h("div", { class: "content" }, h("div", { class: "title" }, "Recipients"), (_0 = (_z = this.store) === null || _z === void 0 ? void 0 : _z.state) === null || _0 === void 0 ? void 0 :
285
+ _0.recipients.map((recipient, index) => {
286
+ const canGetInPersonLink = !this.canModify(recipient) || (recipient.status !== 'invited' && recipient.status !== 'opened');
287
+ const canSendReminder = this.canResendRecipient(recipient);
288
+ return (h("div", { class: "recipient-detail" }, h("div", { class: "recipient-header" }, h("div", { class: "recipient-number" }, index + 1), h("div", { class: "recipient-type" }, recipient.role_name), h("div", { class: { 'recipient-status': true, [recipient.status]: true } }, recipient.status), isEnvelopeOwner && !functionsDisabled && (h("verdocs-dropdown", { onOptionSelected: item => this.handleRecipientAction(recipient, item.detail.id), options: [
289
+ { id: 'reminder', label: 'Send Reminder', disabled: !canSendReminder },
290
+ { id: 'inperson', label: 'Get In-Person Link', disabled: !canGetInPersonLink },
291
+ // {id: 'modify', label: 'Modify Recipient', disabled: !this.canModifyRecipient(recipient)},
292
+ // TODO: Details dialog
293
+ // {id:'details',label: 'View Details'},
294
+ ] }))), h("dic", { class: "recipient-content" }, h("div", { class: "recipient-name" }, recipient.full_name), h("div", { class: "recipient-name" }, recipient.email), h("div", { class: "recipient-name" }, recipient.phone))));
295
+ }), isEnvelopeOwner && (h("verdocs-button", { class: "manage-recipients-button", variant: "standard", label: "Turn On Reminders", onClick: () => (this.showManageDialog = !functionsDisabled), disabled: functionsDisabled })), isEnvelopeOwner && (h("verdocs-button", { class: "manage-recipients-button", variant: "standard", label: "Cancel Verdoc", onClick: () => (this.showCancelDialog = !functionsDisabled), disabled: functionsDisabled })))), this.activeTab === 3 && (h("div", { class: "content" }, h("div", { class: "title" }, "History"), historyEntries.map(entry => (h("div", { class: "history-entry" }, h("div", { class: "activity-icon", innerHTML: ActivityIcons[entry.icon] || entry.icon }), h("div", { class: "activity-details" }, h("div", { class: "activity-text" }, entry.message), h("div", { class: "activity-date" }, format(entry.date, FORMAT_TIMESTAMP)))))))), this.showManageDialog && (h("verdocs-envelope-recipient-summary", { envelopeId: this.envelopeId, canView: false, onAnother: () => {
244
296
  var _a;
245
297
  this.showManageDialog = false;
246
- (_a = this.another) === null || _a === void 0 ? void 0 : _a.emit({ envelope: this.envelope });
298
+ (_a = this.another) === null || _a === void 0 ? void 0 : _a.emit({ envelope: this.store.state });
247
299
  }, onNext: () => {
248
300
  this.showManageDialog = false;
301
+ } })), this.showCancelDialog && (h("verdocs-ok-dialog", { heading: "Cancel Envelope?", message: 'Are you sure you want to cancel this Envelope? This action cannot be undone.', onNext: () => {
302
+ this.showCancelDialog = false;
303
+ this.cancelEnvelope();
249
304
  } }))));
250
305
  }
251
306
  static get style() { return verdocsEnvelopeSidebarCss; }
252
307
  }, [0, "verdocs-envelope-sidebar", {
253
308
  "endpoint": [16],
254
309
  "envelopeId": [1, "envelope-id"],
255
- "envelope": [32],
256
- "sortedRecipients": [32],
257
- "roleNames": [32],
258
310
  "activeTab": [32],
259
311
  "panelOpen": [32],
260
312
  "showManageDialog": [32],
313
+ "showCancelDialog": [32],
261
314
  "loading": [32]
262
315
  }]);
263
316
  function defineCustomElement$1() {
264
317
  if (typeof customElements === "undefined") {
265
318
  return;
266
319
  }
267
- const components = ["verdocs-envelope-sidebar", "verdocs-button", "verdocs-dropdown", "verdocs-envelope-recipient-summary"];
320
+ const components = ["verdocs-envelope-sidebar", "verdocs-button", "verdocs-dropdown", "verdocs-envelope-recipient-summary", "verdocs-ok-dialog"];
268
321
  components.forEach(tagName => { switch (tagName) {
269
322
  case "verdocs-envelope-sidebar":
270
323
  if (!customElements.get(tagName)) {
@@ -273,15 +326,20 @@ function defineCustomElement$1() {
273
326
  break;
274
327
  case "verdocs-button":
275
328
  if (!customElements.get(tagName)) {
276
- defineCustomElement$4();
329
+ defineCustomElement$5();
277
330
  }
278
331
  break;
279
332
  case "verdocs-dropdown":
280
333
  if (!customElements.get(tagName)) {
281
- defineCustomElement$3();
334
+ defineCustomElement$4();
282
335
  }
283
336
  break;
284
337
  case "verdocs-envelope-recipient-summary":
338
+ if (!customElements.get(tagName)) {
339
+ defineCustomElement$3();
340
+ }
341
+ break;
342
+ case "verdocs-ok-dialog":
285
343
  if (!customElements.get(tagName)) {
286
344
  defineCustomElement$2();
287
345
  }
@@ -1,10 +1,10 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
+ import { i as interact } from './interact.min.js';
2
3
  import './Types.js';
3
4
  import { u as updateField } from './Fields.js';
4
5
  import { V as VerdocsEndpoint } from './VerdocsEndpoint.js';
5
6
  import { g as getRGBA } from './Colors.js';
6
7
  import { g as getFieldSettings } from './utils.js';
7
- import { i as interact } from './interact.min.js';
8
8
  import { d as defineCustomElement$9 } from './verdocs-button2.js';
9
9
  import { d as defineCustomElement$8 } from './verdocs-button-panel2.js';
10
10
  import { d as defineCustomElement$7 } from './verdocs-checkbox2.js';
@@ -31,6 +31,8 @@ const VerdocsFieldTextarea$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
31
31
  this.moveable = false;
32
32
  this.done = false;
33
33
  this.roleindex = 0;
34
+ this.xscale = 1;
35
+ this.yscale = 1;
34
36
  this.rerender = 0;
35
37
  }
36
38
  async focusField() {
@@ -67,25 +69,31 @@ const VerdocsFieldTextarea$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
67
69
  e.stopPropagation();
68
70
  }
69
71
  handleResize(e) {
70
- const oldX = +(e.target.getAttribute('resizeX') || 0);
71
- const oldY = +(e.target.getAttribute('resizeY') || 0);
72
- const newX = e.dx + oldX;
73
- const newY = e.dy + oldY;
74
- this.el.style.width = `${parseFloat(this.el.style.width || '0') + e.dx}px`;
75
- this.el.style.height = `${parseFloat(this.el.style.height || '0') + e.dy}px`;
76
- e.target.setAttribute('resizeX', newX);
77
- e.target.setAttribute('resizeY', newY);
72
+ let { x = 0, y = 0, h = 0 } = e.target.dataset;
73
+ let { width, height } = e.rect;
74
+ x = (parseFloat(x) || 0) + e.deltaRect.left;
75
+ y = (parseFloat(y) || 0) + e.deltaRect.top;
76
+ h = (parseFloat(h) || 0) + e.deltaRect.height;
77
+ Object.assign(e.target.style, {
78
+ width: `${width}px`,
79
+ height: `${height}px`,
80
+ transform: `translate(${x}px, ${y + h}px)`,
81
+ });
82
+ Object.assign(e.target.dataset, { x, y, h });
78
83
  }
79
84
  handleResizeEnd(e) {
80
- const resizeWidth = +(e.target.getAttribute('resizeX') || 0);
81
- const resizeHeight = +(e.target.getAttribute('resizeY') || 0);
82
- const settings = getFieldSettings(this.field);
83
- const newWidth = (settings.width || 150) + resizeWidth;
84
- const newHeight = (settings.height || 41) + resizeHeight;
85
- const newSettings = { ...getFieldSettings(this.field), width: Math.round(newWidth), height: Math.round(newHeight) };
86
- delete newSettings['result'];
85
+ const newSettings = { ...getFieldSettings(this.field) };
86
+ const [translateX, translateY] = e.target.style.transform.split('(')[1].split(')')[0].split(',').map(parseFloat);
87
+ newSettings.width = Math.round(parseFloat(e.target.style.width) / this.xscale);
88
+ newSettings.height = Math.round(parseFloat(e.target.style.height) / this.yscale);
89
+ newSettings.x = Math.round(newSettings.x + translateX / this.xscale);
90
+ newSettings.y = Math.round(newSettings.y - translateY / this.yscale);
87
91
  updateField(this.endpoint, this.templateid, this.field.name, { setting: newSettings })
88
- .then(() => { var _a; return (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name, settings: newSettings }); })
92
+ .then(() => {
93
+ var _a;
94
+ (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name, settings: newSettings });
95
+ Object.assign(e.target.dataset, { x: 0, y: 0, h: 0 });
96
+ })
89
97
  .catch(e => console.log('Field update failed', e));
90
98
  }
91
99
  render() {
@@ -117,6 +125,8 @@ const VerdocsFieldTextarea$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
117
125
  "moveable": [4],
118
126
  "done": [4],
119
127
  "roleindex": [2],
128
+ "xscale": [2],
129
+ "yscale": [2],
120
130
  "rerender": [2],
121
131
  "focusField": [64],
122
132
  "showSettingsPanel": [64],
@@ -31,6 +31,8 @@ const VerdocsFieldTextbox$1 = /*@__PURE__*/ proxyCustomElement(class extends HTM
31
31
  this.moveable = false;
32
32
  this.done = false;
33
33
  this.roleindex = 0;
34
+ this.xscale = 1;
35
+ this.yscale = 1;
34
36
  this.rerender = 0;
35
37
  }
36
38
  async focusField() {
@@ -67,24 +69,31 @@ const VerdocsFieldTextbox$1 = /*@__PURE__*/ proxyCustomElement(class extends HTM
67
69
  e.stopPropagation();
68
70
  }
69
71
  handleResize(e) {
70
- const oldX = +(e.target.getAttribute('resizeX') || 0);
71
- const oldY = +(e.target.getAttribute('resizeY') || 0);
72
- const newX = e.dx + oldX;
73
- const newY = e.dy + oldY;
74
- this.el.style.width = `${parseFloat(this.el.style.width || '0') + e.dx}px`;
75
- // Single line text fields are not resizeable in height
76
- // this.el.style.height = `${parseFloat(this.el.style.height || '0') + event.dy}px`;
77
- e.target.setAttribute('resizeX', newX);
78
- e.target.setAttribute('resizeY', newY);
72
+ let { x = 0, y = 0, h = 0 } = e.target.dataset;
73
+ let { width, height } = e.rect;
74
+ x = (parseFloat(x) || 0) + e.deltaRect.left;
75
+ y = (parseFloat(y) || 0) + e.deltaRect.top;
76
+ h = (parseFloat(h) || 0) + e.deltaRect.height;
77
+ Object.assign(e.target.style, {
78
+ width: `${width}px`,
79
+ height: `${height}px`,
80
+ transform: `translate(${x}px, ${y + h}px)`,
81
+ });
82
+ Object.assign(e.target.dataset, { x, y, h });
79
83
  }
80
84
  handleResizeEnd(e) {
81
- const resizeWidth = +(e.target.getAttribute('resizeX') || 0);
82
- const settings = getFieldSettings(this.field);
83
- const newWidth = (settings.width || 150) + resizeWidth;
84
- const newSettings = { ...getFieldSettings(this.field), width: Math.round(newWidth) };
85
- delete newSettings['result'];
85
+ const newSettings = { ...getFieldSettings(this.field) };
86
+ const [translateX, translateY] = e.target.style.transform.split('(')[1].split(')')[0].split(',').map(parseFloat);
87
+ newSettings.width = Math.round(parseFloat(e.target.style.width) / this.xscale);
88
+ newSettings.height = Math.round(parseFloat(e.target.style.height) / this.yscale);
89
+ newSettings.x = Math.round(newSettings.x + translateX / this.xscale);
90
+ newSettings.y = Math.round(newSettings.y - translateY / this.yscale);
86
91
  updateField(this.endpoint, this.templateid, this.field.name, { setting: newSettings })
87
- .then(() => { var _a; return (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name, settings: newSettings }); })
92
+ .then(() => {
93
+ var _a;
94
+ (_a = this.settingsChanged) === null || _a === void 0 ? void 0 : _a.emit({ fieldName: this.field.name, settings: newSettings });
95
+ Object.assign(e.target.dataset, { x: 0, y: 0, h: 0 });
96
+ })
88
97
  .catch(e => console.log('Field update failed', e));
89
98
  }
90
99
  render() {
@@ -120,6 +129,8 @@ const VerdocsFieldTextbox$1 = /*@__PURE__*/ proxyCustomElement(class extends HTM
120
129
  "moveable": [4],
121
130
  "done": [4],
122
131
  "roleindex": [2],
132
+ "xscale": [2],
133
+ "yscale": [2],
123
134
  "rerender": [2],
124
135
  "focusField": [64],
125
136
  "showSettingsPanel": [64],
@@ -11,16 +11,26 @@ import { d as defineCustomElement$4 } from './verdocs-help-icon2.js';
11
11
  import { d as defineCustomElement$3 } from './verdocs-ok-dialog2.js';
12
12
  import { d as defineCustomElement$2 } from './verdocs-text-input2.js';
13
13
 
14
+ /**
15
+ * Enable automatic reminders. setup_time is the number of days after the envelope is sent that the first reminder
16
+ * should be sent. interval_time is the number of days between reminders.
17
+ */
14
18
  var createReminder = function (endpoint, templateId, params) {
15
19
  return endpoint.api //
16
20
  .post("/templates/".concat(templateId, "/reminder/"), params)
17
21
  .then(function (r) { return r.data; });
18
22
  };
23
+ /**
24
+ * Update the reminder configuration for a template.
25
+ */
19
26
  var updateReminder = function (endpoint, templateId, reminderId, params) {
20
27
  return endpoint.api //
21
28
  .put("/templates/".concat(templateId, "/reminder/").concat(reminderId), params)
22
29
  .then(function (r) { return r.data; });
23
30
  };
31
+ /**
32
+ * Delete the reminder configuration for a template.
33
+ */
24
34
  var deleteReminder = function (endpoint, templateId, reminderId) {
25
35
  return endpoint.api //
26
36
  .delete("/templates/".concat(templateId, "/reminder/").concat(reminderId))
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host, Fragment } from '@stencil/core/internal/client';
2
- import { t as throttledGetEnvelope, e as cancelEnvelope } from './Envelopes.js';
2
+ import { t as throttledGetEnvelope, c as cancelEnvelope } from './Envelopes.js';
3
3
  import { a as userCanCancelEnvelope } from './Permissions.js';
4
4
  import './Types.js';
5
5
  import { V as VerdocsEndpoint } from './VerdocsEndpoint.js';