@verdocs/web-sdk 2.0.22 → 2.0.25

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 (194) hide show
  1. package/dist/cjs/{EnvelopeStore-b60a1bd3.js → EnvelopeStore-c2f0d4ca.js} +1 -1
  2. package/dist/cjs/{Envelopes-01c2e7e4.js → Envelopes-19ff627a.js} +15 -17
  3. package/dist/cjs/{Permissions-1be8039d.js → Permissions-1436f847.js} +3 -1
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/{utils-65c99e57.js → utils-fe5b1d83.js} +1 -1
  6. package/dist/cjs/verdocs-activity-box.cjs.entry.js +1 -1
  7. package/dist/cjs/verdocs-checkbox_5.cjs.entry.js +19 -2
  8. package/dist/cjs/verdocs-contact-picker.cjs.entry.js +2 -2
  9. package/dist/cjs/verdocs-envelope-document-page.cjs.entry.js +2 -2
  10. package/dist/cjs/verdocs-envelope-recipient-link_2.cjs.entry.js +3 -3
  11. package/dist/cjs/verdocs-envelope-sidebar.cjs.entry.js +3 -3
  12. package/dist/cjs/verdocs-envelopes-list.cjs.entry.js +63 -57
  13. package/dist/cjs/verdocs-field-attachment.cjs.entry.js +2 -2
  14. package/dist/cjs/verdocs-field-checkbox.cjs.entry.js +2 -2
  15. package/dist/cjs/verdocs-field-date.cjs.entry.js +2 -2
  16. package/dist/cjs/verdocs-field-dropdown.cjs.entry.js +2 -2
  17. package/dist/cjs/verdocs-field-initial.cjs.entry.js +2 -2
  18. package/dist/cjs/verdocs-field-payment.cjs.entry.js +2 -2
  19. package/dist/cjs/verdocs-field-radio-button.cjs.entry.js +2 -2
  20. package/dist/cjs/verdocs-field-signature.cjs.entry.js +2 -2
  21. package/dist/cjs/verdocs-field-textarea.cjs.entry.js +2 -2
  22. package/dist/cjs/verdocs-field-textbox.cjs.entry.js +2 -2
  23. package/dist/cjs/verdocs-field-timestamp.cjs.entry.js +2 -2
  24. package/dist/cjs/verdocs-pagination_3.cjs.entry.js +6 -7
  25. package/dist/cjs/verdocs-preview.cjs.entry.js +2 -2
  26. package/dist/cjs/verdocs-send.cjs.entry.js +2 -2
  27. package/dist/cjs/verdocs-sign.cjs.entry.js +7 -7
  28. package/dist/cjs/verdocs-template-document-page_2.cjs.entry.js +2 -2
  29. package/dist/cjs/verdocs-template-fields_4.cjs.entry.js +2 -2
  30. package/dist/cjs/verdocs-templates-list.cjs.entry.js +15 -6
  31. package/dist/cjs/verdocs-view.cjs.entry.js +3 -3
  32. package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
  33. package/dist/collection/components/controls/verdocs-pagination/verdocs-pagination.js +4 -5
  34. package/dist/collection/components/controls/verdocs-pagination/verdocs-pagination.stories.js +1 -1
  35. package/dist/collection/components/controls/verdocs-text-input/verdocs-text-input.css +15 -0
  36. package/dist/collection/components/controls/verdocs-text-input/verdocs-text-input.js +38 -3
  37. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js +5 -5
  38. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.stories.js +3 -3
  39. package/dist/collection/components/envelopes/verdocs-envelopes-list/verdocs-envelopes-list.css +8 -2
  40. package/dist/collection/components/envelopes/verdocs-envelopes-list/verdocs-envelopes-list.js +164 -80
  41. package/dist/collection/components/envelopes/verdocs-status-indicator/verdocs-status-indicator.js +6 -2
  42. package/dist/collection/components/templates/verdocs-templates-list/verdocs-templates-list.js +19 -7
  43. package/dist/components/Envelopes.js +15 -17
  44. package/dist/components/Permissions.js +3 -1
  45. package/dist/components/verdocs-envelopes-list.js +66 -58
  46. package/dist/components/verdocs-pagination2.js +4 -5
  47. package/dist/components/verdocs-sign.js +5 -5
  48. package/dist/components/verdocs-templates-list.js +17 -7
  49. package/dist/components/verdocs-text-input2.js +21 -3
  50. package/dist/docs.json +105 -32
  51. package/dist/esm/{EnvelopeStore-26315437.js → EnvelopeStore-ca60f0ab.js} +1 -1
  52. package/dist/esm/{Envelopes-9ccae245.js → Envelopes-5e32159f.js} +15 -17
  53. package/dist/esm/{Permissions-391258bd.js → Permissions-f2eb0421.js} +3 -1
  54. package/dist/esm/loader.js +1 -1
  55. package/dist/esm/{utils-a3504472.js → utils-51d998e2.js} +1 -1
  56. package/dist/esm/verdocs-activity-box.entry.js +1 -1
  57. package/dist/esm/verdocs-checkbox_5.entry.js +20 -3
  58. package/dist/esm/verdocs-contact-picker.entry.js +2 -2
  59. package/dist/esm/verdocs-envelope-document-page.entry.js +2 -2
  60. package/dist/esm/verdocs-envelope-recipient-link_2.entry.js +3 -3
  61. package/dist/esm/verdocs-envelope-sidebar.entry.js +3 -3
  62. package/dist/esm/verdocs-envelopes-list.entry.js +63 -57
  63. package/dist/esm/verdocs-field-attachment.entry.js +2 -2
  64. package/dist/esm/verdocs-field-checkbox.entry.js +2 -2
  65. package/dist/esm/verdocs-field-date.entry.js +2 -2
  66. package/dist/esm/verdocs-field-dropdown.entry.js +2 -2
  67. package/dist/esm/verdocs-field-initial.entry.js +2 -2
  68. package/dist/esm/verdocs-field-payment.entry.js +2 -2
  69. package/dist/esm/verdocs-field-radio-button.entry.js +2 -2
  70. package/dist/esm/verdocs-field-signature.entry.js +2 -2
  71. package/dist/esm/verdocs-field-textarea.entry.js +2 -2
  72. package/dist/esm/verdocs-field-textbox.entry.js +2 -2
  73. package/dist/esm/verdocs-field-timestamp.entry.js +2 -2
  74. package/dist/esm/verdocs-pagination_3.entry.js +6 -7
  75. package/dist/esm/verdocs-preview.entry.js +2 -2
  76. package/dist/esm/verdocs-send.entry.js +2 -2
  77. package/dist/esm/verdocs-sign.entry.js +7 -7
  78. package/dist/esm/verdocs-template-document-page_2.entry.js +2 -2
  79. package/dist/esm/verdocs-template-fields_4.entry.js +2 -2
  80. package/dist/esm/verdocs-templates-list.entry.js +15 -6
  81. package/dist/esm/verdocs-view.entry.js +3 -3
  82. package/dist/esm/verdocs-web-sdk.js +1 -1
  83. package/dist/esm-es5/{EnvelopeStore-26315437.js → EnvelopeStore-ca60f0ab.js} +1 -1
  84. package/dist/esm-es5/Envelopes-5e32159f.js +1 -0
  85. package/dist/esm-es5/loader.js +1 -1
  86. package/dist/esm-es5/{utils-a3504472.js → utils-51d998e2.js} +1 -1
  87. package/dist/esm-es5/verdocs-activity-box.entry.js +1 -1
  88. package/dist/esm-es5/verdocs-checkbox_5.entry.js +1 -1
  89. package/dist/esm-es5/verdocs-contact-picker.entry.js +1 -1
  90. package/dist/esm-es5/verdocs-envelope-document-page.entry.js +1 -1
  91. package/dist/esm-es5/verdocs-envelope-recipient-link_2.entry.js +1 -1
  92. package/dist/esm-es5/verdocs-envelope-sidebar.entry.js +1 -1
  93. package/dist/esm-es5/verdocs-envelopes-list.entry.js +1 -1
  94. package/dist/esm-es5/verdocs-field-attachment.entry.js +1 -1
  95. package/dist/esm-es5/verdocs-field-checkbox.entry.js +1 -1
  96. package/dist/esm-es5/verdocs-field-date.entry.js +1 -1
  97. package/dist/esm-es5/verdocs-field-dropdown.entry.js +1 -1
  98. package/dist/esm-es5/verdocs-field-initial.entry.js +1 -1
  99. package/dist/esm-es5/verdocs-field-payment.entry.js +1 -1
  100. package/dist/esm-es5/verdocs-field-radio-button.entry.js +1 -1
  101. package/dist/esm-es5/verdocs-field-signature.entry.js +1 -1
  102. package/dist/esm-es5/verdocs-field-textarea.entry.js +1 -1
  103. package/dist/esm-es5/verdocs-field-textbox.entry.js +1 -1
  104. package/dist/esm-es5/verdocs-field-timestamp.entry.js +1 -1
  105. package/dist/esm-es5/verdocs-pagination_3.entry.js +1 -1
  106. package/dist/esm-es5/verdocs-preview.entry.js +1 -1
  107. package/dist/esm-es5/verdocs-send.entry.js +1 -1
  108. package/dist/esm-es5/verdocs-sign.entry.js +1 -1
  109. package/dist/esm-es5/verdocs-template-document-page_2.entry.js +1 -1
  110. package/dist/esm-es5/verdocs-template-fields_4.entry.js +1 -1
  111. package/dist/esm-es5/verdocs-templates-list.entry.js +1 -1
  112. package/dist/esm-es5/verdocs-view.entry.js +1 -1
  113. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  114. package/dist/types/components/controls/verdocs-text-input/verdocs-text-input.d.ts +6 -0
  115. package/dist/types/components/envelopes/verdocs-envelopes-list/verdocs-envelopes-list.d.ts +40 -13
  116. package/dist/types/components/envelopes/verdocs-status-indicator/verdocs-status-indicator.d.ts +2 -2
  117. package/dist/types/components/templates/verdocs-templates-list/verdocs-templates-list.d.ts +3 -1
  118. package/dist/types/components.d.ts +51 -19
  119. package/dist/types/utils/utils.d.ts +2 -2
  120. package/dist/verdocs-web-sdk/{p-10a58bc0.system.entry.js → p-01ec9d6d.system.entry.js} +1 -1
  121. package/dist/verdocs-web-sdk/{p-761cd04f.entry.js → p-0331a582.entry.js} +1 -1
  122. package/dist/verdocs-web-sdk/{p-13da9776.system.entry.js → p-043eab3f.system.entry.js} +1 -1
  123. package/dist/verdocs-web-sdk/{p-3ff21704.system.entry.js → p-06e445b1.system.entry.js} +1 -1
  124. package/dist/verdocs-web-sdk/{p-6ce6c81f.entry.js → p-0d590026.entry.js} +1 -1
  125. package/dist/verdocs-web-sdk/{p-d339db07.system.entry.js → p-0e08012c.system.entry.js} +1 -1
  126. package/dist/verdocs-web-sdk/p-11e34f77.system.js +1 -0
  127. package/dist/verdocs-web-sdk/{p-d1020e11.system.js → p-169fa979.system.js} +1 -1
  128. package/dist/verdocs-web-sdk/{p-32d173cf.system.entry.js → p-19860fa1.system.entry.js} +1 -1
  129. package/dist/verdocs-web-sdk/{p-5e3559ff.entry.js → p-1d7846c9.entry.js} +1 -1
  130. package/dist/verdocs-web-sdk/{p-7d9d22d9.system.entry.js → p-205b6235.system.entry.js} +1 -1
  131. package/dist/verdocs-web-sdk/p-28b22c54.system.entry.js +1 -0
  132. package/dist/verdocs-web-sdk/{p-c98dc1dc.entry.js → p-2ea70113.entry.js} +1 -1
  133. package/dist/verdocs-web-sdk/p-31211dfc.entry.js +1 -0
  134. package/dist/verdocs-web-sdk/{p-02bda176.system.js → p-353d7e71.system.js} +1 -1
  135. package/dist/verdocs-web-sdk/{p-67a4588a.system.entry.js → p-37c09dd4.system.entry.js} +1 -1
  136. package/dist/verdocs-web-sdk/p-38d827d3.js +1 -0
  137. package/dist/verdocs-web-sdk/{p-e23b9c03.entry.js → p-3a7d47ba.entry.js} +1 -1
  138. package/dist/verdocs-web-sdk/{p-aa637390.js → p-3dac1048.js} +1 -1
  139. package/dist/verdocs-web-sdk/{p-bd287aad.entry.js → p-42efc13c.entry.js} +1 -1
  140. package/dist/verdocs-web-sdk/{p-86433cb0.js → p-449f38bb.js} +1 -1
  141. package/dist/verdocs-web-sdk/{p-e36f0402.entry.js → p-4911d1f9.entry.js} +1 -1
  142. package/dist/verdocs-web-sdk/{p-a5239b05.entry.js → p-4b0a633d.entry.js} +1 -1
  143. package/dist/verdocs-web-sdk/p-4c9d9cd6.entry.js +1 -0
  144. package/dist/verdocs-web-sdk/{p-3b1bef0f.system.entry.js → p-4f0c253e.system.entry.js} +1 -1
  145. package/dist/verdocs-web-sdk/{p-53447ca3.system.entry.js → p-5314386f.system.entry.js} +1 -1
  146. package/dist/verdocs-web-sdk/{p-543d12af.system.entry.js → p-54e215c5.system.entry.js} +1 -1
  147. package/dist/verdocs-web-sdk/{p-0ec94d1b.system.entry.js → p-5cb78c1b.system.entry.js} +1 -1
  148. package/dist/verdocs-web-sdk/{p-08c75409.system.entry.js → p-5d6c7546.system.entry.js} +1 -1
  149. package/dist/verdocs-web-sdk/{p-43d78f20.entry.js → p-607a2dfe.entry.js} +1 -1
  150. package/dist/verdocs-web-sdk/p-647cdb84.system.js +1 -1
  151. package/dist/verdocs-web-sdk/{p-e6616a5e.entry.js → p-675c95e8.entry.js} +1 -1
  152. package/dist/verdocs-web-sdk/p-68487ce7.system.entry.js +1 -0
  153. package/dist/verdocs-web-sdk/{p-466ae9b3.system.entry.js → p-6cd5db91.system.entry.js} +1 -1
  154. package/dist/verdocs-web-sdk/{p-5464c8f3.system.entry.js → p-750b37cd.system.entry.js} +1 -1
  155. package/dist/verdocs-web-sdk/{p-0100e5cd.entry.js → p-752fe35b.entry.js} +1 -1
  156. package/dist/verdocs-web-sdk/{p-4e60b427.entry.js → p-7d6c3d5b.entry.js} +1 -1
  157. package/dist/verdocs-web-sdk/p-80843a19.entry.js +1 -0
  158. package/dist/verdocs-web-sdk/{p-71cce1d5.entry.js → p-8e83ea1e.entry.js} +1 -1
  159. package/dist/verdocs-web-sdk/{p-bbdb47e7.entry.js → p-a00ea81e.entry.js} +1 -1
  160. package/dist/verdocs-web-sdk/p-a7d7ccc7.system.entry.js +1 -0
  161. package/dist/verdocs-web-sdk/{p-e749e4b8.entry.js → p-aac295bd.entry.js} +1 -1
  162. package/dist/verdocs-web-sdk/{p-e16eedbd.entry.js → p-b48a2f14.entry.js} +1 -1
  163. package/dist/verdocs-web-sdk/p-b4ac7a21.entry.js +1 -0
  164. package/dist/verdocs-web-sdk/{p-689fc011.system.entry.js → p-b4aefba1.system.entry.js} +1 -1
  165. package/dist/verdocs-web-sdk/{p-890cd7fd.system.entry.js → p-b650d3c1.system.entry.js} +1 -1
  166. package/dist/verdocs-web-sdk/{p-f26a6d84.system.entry.js → p-bf8bded0.system.entry.js} +1 -1
  167. package/dist/verdocs-web-sdk/{p-704b515e.system.entry.js → p-c125f51e.system.entry.js} +1 -1
  168. package/dist/verdocs-web-sdk/{p-00b90b95.system.entry.js → p-c2e3d476.system.entry.js} +1 -1
  169. package/dist/verdocs-web-sdk/p-c391fa41.entry.js +1 -0
  170. package/dist/verdocs-web-sdk/{p-8dbb3599.system.entry.js → p-c69b5a99.system.entry.js} +1 -1
  171. package/dist/verdocs-web-sdk/{p-cbefbfda.entry.js → p-cd92a456.entry.js} +1 -1
  172. package/dist/verdocs-web-sdk/{p-369ea745.entry.js → p-cef5dd3e.entry.js} +1 -1
  173. package/dist/verdocs-web-sdk/{p-5567acac.entry.js → p-e2d0d0cc.entry.js} +1 -1
  174. package/dist/verdocs-web-sdk/{p-94f811f6.system.entry.js → p-f05e18ba.system.entry.js} +1 -1
  175. package/dist/verdocs-web-sdk/{p-b8ba7838.entry.js → p-f8a2988e.entry.js} +1 -1
  176. package/dist/verdocs-web-sdk/{p-6785d5ea.system.entry.js → p-fb9b8d32.system.entry.js} +1 -1
  177. package/dist/verdocs-web-sdk/{p-d08dde38.entry.js → p-fd059523.entry.js} +1 -1
  178. package/dist/verdocs-web-sdk/{p-00229e30.system.entry.js → p-ff2d4284.system.entry.js} +1 -1
  179. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  180. package/package.json +2 -2
  181. package/dist/esm-es5/Envelopes-9ccae245.js +0 -1
  182. package/dist/verdocs-web-sdk/p-0b0a2fbd.system.js +0 -1
  183. package/dist/verdocs-web-sdk/p-1708f25d.entry.js +0 -1
  184. package/dist/verdocs-web-sdk/p-3a0ba0b8.entry.js +0 -1
  185. package/dist/verdocs-web-sdk/p-657dacc4.system.entry.js +0 -1
  186. package/dist/verdocs-web-sdk/p-70ca15f7.system.entry.js +0 -1
  187. package/dist/verdocs-web-sdk/p-b288f867.system.entry.js +0 -1
  188. package/dist/verdocs-web-sdk/p-b5591ddc.js +0 -1
  189. package/dist/verdocs-web-sdk/p-d6941876.entry.js +0 -1
  190. package/dist/verdocs-web-sdk/p-e2ef1a46.entry.js +0 -1
  191. package/dist/verdocs-web-sdk/p-e81819d8.entry.js +0 -1
  192. /package/dist/esm-es5/{Permissions-391258bd.js → Permissions-f2eb0421.js} +0 -0
  193. /package/dist/verdocs-web-sdk/{p-65e7b32a.system.js → p-1d60151a.system.js} +0 -0
  194. /package/dist/verdocs-web-sdk/{p-beb02ef7.js → p-29f64c27.js} +0 -0
@@ -52,22 +52,6 @@ var getSummary = function (endpoint, page) { return __awaiter(void 0, void 0, vo
52
52
  .then(function (r) { return r.data; })];
53
53
  });
54
54
  }); };
55
- /**
56
- * Search for envelopes matching various criteria.
57
- *
58
- * ```typescript
59
- * import {Envelopes} from '@verdocs/js-sdk/Envelopes';
60
- *
61
- * const {result, page, total} = await Envelopes.search(VerdocsEndpoint.getDefault(), { ... });
62
- * ```
63
- */
64
- var searchEnvelopes = function (endpoint, params) { return __awaiter(void 0, void 0, void 0, function () {
65
- return __generator(this, function (_a) {
66
- return [2 /*return*/, endpoint.api //
67
- .post('/envelopes/search', params)
68
- .then(function (r) { return r.data; })];
69
- });
70
- }); };
71
55
  /**
72
56
  * Get a signing session for an Envelope.
73
57
  */
@@ -214,5 +198,19 @@ var throttledGetEnvelope = function (endpoint, envelopeId) {
214
198
  return envelope;
215
199
  });
216
200
  };
201
+ /**
202
+ * Lists all templates accessible by the caller, with optional filters.
203
+ *
204
+ * ```typescript
205
+ * import {Envelopes} from '@verdocs/js-sdk/Templates';
206
+ *
207
+ * await Envelopes.listEnvelopes((VerdocsEndpoint.getDefault(), { name: 'test', sort: 'updated_at' });
208
+ * ```
209
+ */
210
+ var listEnvelopes = function (endpoint, params) {
211
+ return endpoint.api //
212
+ .post('/envelopes/list', params, { baseURL: endpoint.getBaseURLv2() })
213
+ .then(function (r) { return r.data; });
214
+ };
217
215
 
218
- export { getSigningSession as a, updateEnvelopeFieldSignature as b, cancelEnvelope as c, updateEnvelopeFieldInitials as d, uploadEnvelopeFieldAttachment as e, getEnvelopeDocumentPageDisplayUri as f, getSummary as g, getEnvelopeFile as h, getFieldAttachment as i, getEnvelope as j, searchEnvelopes as s, throttledGetEnvelope as t, updateEnvelopeField as u };
216
+ export { getSigningSession as a, updateEnvelopeFieldSignature as b, cancelEnvelope as c, updateEnvelopeFieldInitials as d, uploadEnvelopeFieldAttachment as e, getEnvelopeDocumentPageDisplayUri as f, getSummary as g, getEnvelopeFile as h, getFieldAttachment as i, getEnvelope as j, listEnvelopes as l, throttledGetEnvelope as t, updateEnvelopeField as u };
@@ -8,7 +8,9 @@ import { E as EnvelopeStates } from './Types.js';
8
8
  /**
9
9
  * Check to see if the user owns the envelope.
10
10
  */
11
- var userIsEnvelopeOwner = function (session, envelope) { return envelope.profile_id === (session === null || session === void 0 ? void 0 : session.profile_id); };
11
+ var userIsEnvelopeOwner = function (session, envelope) {
12
+ return envelope.profile_id === (session === null || session === void 0 ? void 0 : session.profile_id);
13
+ };
12
14
  /**
13
15
  * Check to see if the user owns the envelope.
14
16
  */
@@ -1,8 +1,9 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
- import { s as searchEnvelopes, c as cancelEnvelope } from './Envelopes.js';
2
+ import { l as listEnvelopes, c as cancelEnvelope } from './Envelopes.js';
3
3
  import { g as getRecipientsWithActions, a as userCanAct, b as userCanCancelEnvelope } from './Permissions.js';
4
4
  import './Types.js';
5
5
  import { V as VerdocsEndpoint } from './VerdocsEndpoint.js';
6
+ import { i as integerSequence } from './Primitives.js';
6
7
  import { s as saveEnvelopesAsZip } from './utils.js';
7
8
  import { V as VerdocsToast } from './Toast.js';
8
9
  import { S as SDKError } from './errors.js';
@@ -16,7 +17,7 @@ import { d as defineCustomElement$4 } from './verdocs-spinner2.js';
16
17
  import { d as defineCustomElement$3 } from './verdocs-status-indicator2.js';
17
18
  import { d as defineCustomElement$2 } from './verdocs-text-input2.js';
18
19
 
19
- const verdocsEnvelopesListCss = "verdocs-envelopes-list{display:-ms-flexbox;display:flex;padding:10px;font-size:18px;-ms-flex-wrap:nowrap;flex-wrap:nowrap;border-radius:6px;color:#33364b;-ms-flex-align:center;align-items:center;-ms-flex-direction:column;flex-direction:column;font-family:\"Inter\", \"Barlow\", sans-serif}verdocs-envelopes-list .header{width:100%;row-gap:4px;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-column-gap:12px;-moz-column-gap:12px;column-gap:12px;margin:0 0 10px 0;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row}verdocs-envelopes-list .header .filter{width:150px}verdocs-envelopes-list .header verdocs-text-input{margin:0}verdocs-envelopes-list .header verdocs-text-input input{height:32px}verdocs-envelopes-list .filter{-ms-flex-align:center;align-items:center}verdocs-envelopes-list .envelope{width:100%;margin:3px 0;background:#ffffff}verdocs-envelopes-list .envelope:hover{cursor:pointer;background:#f5f5fa}verdocs-envelopes-list .envelope .inner{gap:14px;display:-ms-flexbox;display:flex;padding:8px 20px;border-radius:6px;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center}verdocs-envelopes-list .envelope .inner svg{width:24px;height:24px}verdocs-envelopes-list .vert-spacer{height:50px;display:-ms-flexbox;display:flex;-ms-flex:0 0 1px;flex:0 0 1px;border-right:1px solid #dad8dd}verdocs-envelopes-list .last-modified{color:#444;display:-ms-flexbox;display:flex;-ms-flex:0 0 180px;flex:0 0 180px;font-size:16px;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}verdocs-envelopes-list .envelope-name{-ms-flex:1;flex:1;display:-ms-flexbox;display:flex;color:#000000;font-size:18px;overflow:hidden;line-height:28px;white-space:nowrap;text-overflow:ellipsis}verdocs-envelopes-list .envelope-recipients{color:#4b5563;font-weight:700;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}verdocs-envelopes-list .empty-text{font-size:20px;text-align:center;margin:16px 0 0 0;padding:80px 80px;border:2px solid #ccc}verdocs-envelopes-list .containing{gap:12px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row}";
20
+ const verdocsEnvelopesListCss = "verdocs-envelopes-list{display:-ms-flexbox;display:flex;padding:10px;font-size:18px;-ms-flex-wrap:nowrap;flex-wrap:nowrap;border-radius:6px;color:#33364b;-ms-flex-direction:column;flex-direction:column;font-family:\"Inter\", \"Barlow\", sans-serif}verdocs-envelopes-list .envelope-placeholder{height:48px;-ms-flex:0 0 48px;flex:0 0 48px;margin:5px 0;border-radius:5px;background:#f5f5fa}verdocs-envelopes-list .header{width:100%;row-gap:4px;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-column-gap:12px;-moz-column-gap:12px;column-gap:12px;margin:0 0 10px 0;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row}verdocs-envelopes-list .header .filter{width:300px}verdocs-envelopes-list .header verdocs-text-input{margin:0}verdocs-envelopes-list .header verdocs-text-input input{height:32px}verdocs-envelopes-list .filter{-ms-flex-align:center;align-items:center}verdocs-envelopes-list .envelope{width:100%;margin:3px 0;background:#ffffff}verdocs-envelopes-list .envelope:hover{cursor:pointer;background:#f5f5fa}verdocs-envelopes-list .envelope .inner{gap:14px;display:-ms-flexbox;display:flex;padding:8px 20px;border-radius:6px;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center}verdocs-envelopes-list .envelope .inner svg{width:24px;height:24px}verdocs-envelopes-list .vert-spacer{height:50px;display:-ms-flexbox;display:flex;-ms-flex:0 0 1px;flex:0 0 1px;border-right:1px solid #dad8dd}verdocs-envelopes-list .last-modified{color:#444;display:-ms-flexbox;display:flex;-ms-flex:0 0 180px;flex:0 0 180px;font-size:16px;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;white-space:nowrap}verdocs-envelopes-list .envelope-name{-ms-flex:1;flex:1;display:-ms-flexbox;display:flex;color:#000000;font-size:18px;overflow:hidden;line-height:28px;white-space:nowrap;text-overflow:ellipsis}verdocs-envelopes-list .envelope-recipients{color:#4b5563;font-weight:700;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}verdocs-envelopes-list .empty-text{font-size:20px;text-align:center;margin:16px 0 0 0;padding:80px 80px;border:2px solid #ccc}verdocs-envelopes-list .containing{gap:12px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row}";
20
21
 
21
22
  const DocumentIcon = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" stroke="#000000" viewBox="0 0 24 24" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M9 12h3.75M9 15h3.75M9 18h3.75m3 .75H18a2.25 2.25 0 002.25-2.25V6.108c0-1.135-.845-2.098-1.976-2.192a48.424 48.424 0 00-1.123-.08m-5.801 0c-.065.21-.1.433-.1.664 0 .414.336.75.75.75h4.5a.75.75 0 00.75-.75 2.25 2.25 0 00-.1-.664m-5.8 0A2.251 2.251 0 0113.5 2.25H15c1.012 0 1.867.668 2.15 1.586m-5.8 0c-.376.023-.75.05-1.124.08C9.095 4.01 8.25 4.973 8.25 6.108V8.25m0 0H4.875c-.621 0-1.125.504-1.125 1.125v11.25c0 .621.504 1.125 1.125 1.125h9.75c.621 0 1.125-.504 1.125-1.125V9.375c0-.621-.504-1.125-1.125-1.125H8.25zM6.75 12h.008v.008H6.75V12zm0 3h.008v.008H6.75V15zm0 3h.008v.008H6.75V18z" /></svg>`;
22
23
  const ViewFilters = [
@@ -46,17 +47,23 @@ const VerdocsEnvelopesList$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
46
47
  constructor() {
47
48
  super();
48
49
  this.__registerHost();
50
+ this.changeView = createEvent(this, "changeView", 7);
51
+ this.changeStatus = createEvent(this, "changeStatus", 7);
52
+ this.changeSort = createEvent(this, "changeSort", 7);
53
+ this.changeMatch = createEvent(this, "changeMatch", 7);
49
54
  this.sdkError = createEvent(this, "sdkError", 7);
50
55
  this.viewEnvelope = createEvent(this, "viewEnvelope", 7);
51
56
  this.finishLater = createEvent(this, "finishLater", 7);
52
57
  this.endpoint = VerdocsEndpoint.getDefault();
53
58
  this.view = undefined;
54
59
  this.status = 'all';
55
- this.sort = 'updated_at';
56
- this.name = '';
57
- this.containing = '';
60
+ this.sort = 'created_at';
61
+ this.match = '';
62
+ this.showPagination = true;
63
+ this.rowsPerPage = 10;
58
64
  this.selectedPage = 0;
59
65
  this.count = 0;
66
+ this.initiallyLoaded = false;
60
67
  this.loading = true;
61
68
  this.selectedEnvelopes = [];
62
69
  this.envelopes = [];
@@ -70,12 +77,13 @@ const VerdocsEnvelopesList$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
70
77
  handleSortUpdated() {
71
78
  return this.queryEnvelopes();
72
79
  }
73
- handleNameUpdated() {
74
- return this.queryEnvelopes();
75
- }
76
- handleContainingUpdated() {
80
+ handleMatchUpdated() {
77
81
  return this.queryEnvelopes();
78
82
  }
83
+ // @Watch('containing')
84
+ // handleContainingUpdated() {
85
+ // return this.queryEnvelopes();
86
+ // }
79
87
  handlePageUpdated() {
80
88
  return this.queryEnvelopes();
81
89
  }
@@ -85,30 +93,34 @@ const VerdocsEnvelopesList$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
85
93
  console.log('[ENVELOPES] Must be authenticated');
86
94
  return;
87
95
  }
88
- return this.queryEnvelopes();
96
+ }
97
+ async componentDidLoad() {
98
+ await this.queryEnvelopes();
99
+ this.initiallyLoaded = true;
89
100
  }
90
101
  async queryEnvelopes() {
91
102
  var _a, _b, _c;
92
103
  try {
93
104
  this.loading = true;
94
105
  let queryParams = {
95
- page: this.selectedPage + 1,
96
- limit: 10,
106
+ page: this.selectedPage,
107
+ sort: this.sort,
108
+ rows: this.rowsPerPage,
97
109
  };
98
110
  switch (this.view) {
99
111
  case 'all':
100
112
  queryParams = {
101
113
  ...queryParams,
102
- sort_by: this.sort,
103
- ascending: this.sort === 'envelope_name',
104
- envelope_status: (this.status === 'all' ? ['pending', 'in progress', 'complete', 'declined', 'canceled'] : [this.status]),
114
+ sort: this.sort,
115
+ direction: this.sort === 'name' ? 'asc' : 'desc',
116
+ status: (this.status === 'all' ? ['pending', 'in progress', 'complete', 'declined', 'canceled'] : [this.status]),
105
117
  };
106
118
  break;
107
119
  case 'inbox':
108
120
  queryParams = {
109
121
  ...queryParams,
110
122
  is_recipient: true,
111
- sort_by: 'updated_at',
123
+ sort: 'updated_at',
112
124
  recipient_status: ['invited', 'declined', 'opened', 'signed', 'submitted', 'canceled'],
113
125
  };
114
126
  break;
@@ -116,15 +128,15 @@ const VerdocsEnvelopesList$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
116
128
  queryParams = {
117
129
  ...queryParams,
118
130
  is_owner: true,
119
- sort_by: 'updated_at',
131
+ sort: 'updated_at',
120
132
  };
121
133
  break;
122
134
  case 'action':
123
135
  queryParams = {
124
136
  ...queryParams,
125
- sort_by: 'updated_at',
137
+ sort: 'updated_at',
126
138
  is_recipient: true,
127
- envelope_status: ['pending', 'in progress'],
139
+ status: ['pending', 'in progress'],
128
140
  recipient_status: ['invited', 'opened', 'signed'],
129
141
  };
130
142
  break;
@@ -132,25 +144,25 @@ const VerdocsEnvelopesList$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
132
144
  queryParams = {
133
145
  ...queryParams,
134
146
  is_owner: true,
135
- sort_by: 'updated_at',
136
- ascending: false,
137
- envelope_status: ['pending', 'in progress'],
147
+ sort: 'updated_at',
148
+ direction: 'desc',
149
+ status: ['pending', 'in progress'],
138
150
  };
139
151
  break;
140
152
  case 'completed':
141
153
  queryParams = {
142
154
  ...queryParams,
143
- sort_by: 'updated_at',
144
- ascending: false,
145
- envelope_status: ['complete'],
155
+ sort: 'updated_at',
156
+ direction: 'desc',
157
+ status: ['complete'],
146
158
  };
147
159
  break;
148
160
  default:
149
161
  queryParams = {
150
162
  ...queryParams,
151
- sort_by: 'updated_at',
152
- ascending: false,
153
- envelope_status: (this.status === 'all' ? ['pending', 'in progress', 'complete', 'declined', 'canceled'] : [this.status]),
163
+ sort: 'updated_at',
164
+ direction: 'desc',
165
+ status: (this.status === 'all' ? ['pending', 'in progress', 'complete', 'declined', 'canceled'] : [this.status]),
154
166
  };
155
167
  }
156
168
  // These filters should only be applied in "View All" mode. Otherwise the user could have set them to something
@@ -158,27 +170,27 @@ const VerdocsEnvelopesList$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
158
170
  // would never return anything).
159
171
  if (this.view === 'all') {
160
172
  if (this.status !== 'all') {
161
- queryParams.envelope_status = [this.status];
173
+ queryParams.status = [this.status];
162
174
  }
163
175
  }
164
176
  if (this.sort !== 'updated_at') {
165
- queryParams.sort_by = this.sort;
166
- queryParams.ascending = this.sort === 'envelope_name';
177
+ queryParams.sort = this.sort;
178
+ queryParams.direction = this.sort === 'name' ? 'asc' : 'desc';
167
179
  }
168
- if (this.name.trim()) {
169
- queryParams.name = this.name.trim();
180
+ if (this.match.trim()) {
181
+ queryParams.match = this.match.trim();
170
182
  }
171
- if (this.containing.trim()) {
172
- queryParams.text_field_value = this.containing.trim();
173
- }
174
- const response = await searchEnvelopes(this.endpoint, queryParams);
175
- this.envelopes = response.result;
183
+ // if (this.containing.trim()) {
184
+ // queryParams.field_value = this.containing.trim();
185
+ // }
186
+ const response = await listEnvelopes(this.endpoint, queryParams);
187
+ this.envelopes = response.records;
176
188
  this.count = response.total;
177
189
  this.loading = false;
178
190
  }
179
191
  catch (e) {
180
- console.log('[ENVELOPES] Error with preview session', e);
181
- this.loading = true;
192
+ this.loading = false;
193
+ console.log('[ENVELOPES] Error listing envelopes', e);
182
194
  (_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));
183
195
  }
184
196
  }
@@ -199,22 +211,18 @@ const VerdocsEnvelopesList$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
199
211
  });
200
212
  }
201
213
  render() {
202
- return (h(Host, null, h("div", { class: "header" }, h("div", { class: "filter" }, h("verdocs-text-input", { id: "verdocs-filter-name", value: this.name, autocomplete: "off", placeholder: "Filter by Name...", onFocusout: (e) => {
203
- this.name = e.target.value;
204
- return this.queryEnvelopes();
214
+ return (h(Host, null, h("div", { class: "header" }, h("div", { class: "filter" }, h("verdocs-text-input", { id: "verdocs-filter-name", value: this.match, clearable: true, autocomplete: "off", placeholder: "Filter by Name, Recipient, or Field...", onFocusout: (e) => {
215
+ var _a;
216
+ // We don't locally filter envelopes because there are too many fields to match against efficiently.
217
+ this.match = e.target.value.trim();
218
+ (_a = this.changeMatch) === null || _a === void 0 ? void 0 : _a.emit(this.match);
205
219
  } })), h("verdocs-quick-filter", { label: "View", value: this.view, options: ViewFilters, onOptionSelected: e => {
206
220
  this.view = e.detail.value;
207
- return this.queryEnvelopes();
208
221
  } }), this.view === 'all' && (h("verdocs-quick-filter", { label: "Status", value: this.status, options: StatusFilters, onOptionSelected: e => {
209
222
  this.status = e.detail.value;
210
- return this.queryEnvelopes();
211
223
  } })), this.view === 'all' && (h("verdocs-quick-filter", { label: "Sort By", value: this.sort, options: SortFilters, onOptionSelected: e => {
212
224
  this.sort = e.detail.value;
213
- return this.queryEnvelopes();
214
- } })), h("div", { class: "containing" }, h("div", { class: "filter" }, h("verdocs-text-input", { id: "verdocs-filter-containing", value: this.containing, autocomplete: "off", placeholder: "Fields Containing...", onInput: (e) => {
215
- this.containing = e.target.value;
216
- return this.queryEnvelopes();
217
- } }))), this.loading && h("verdocs-spinner", { mode: "dark", size: 24 }), h("div", { style: { display: 'flex', flex: '1' } }), this.selectedEnvelopes.length > 0 && h("verdocs-button", { label: `Download (${this.selectedEnvelopes.length})`, onClick: () => this.handleDownload() })), this.envelopes.map(envelope => {
225
+ } })), this.loading && h("verdocs-spinner", { mode: "dark", size: 24 }), h("div", { style: { display: 'flex', flex: '1' } }), this.selectedEnvelopes.length > 0 && h("verdocs-button", { label: `Download (${this.selectedEnvelopes.length})`, onClick: () => this.handleDownload() })), this.envelopes.map(envelope => {
218
226
  var _a;
219
227
  const recipientsWithActions = getRecipientsWithActions(envelope);
220
228
  const userCanCancel = userCanCancelEnvelope(this.endpoint.session, envelope);
@@ -254,17 +262,15 @@ const VerdocsEnvelopesList$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
254
262
  break;
255
263
  }
256
264
  } }))));
257
- }), !this.loading && !this.envelopes.length ? (h("div", { class: "empty-text" }, "No matching envelopes found. Please adjust your filters and try again.")) : (h("div", { style: { marginTop: '10px' } }, h("verdocs-pagination", { selectedPage: this.selectedPage, perPage: 10, itemCount: this.count, onSelectPage: e => {
265
+ }), !this.initiallyLoaded && (h("div", { style: { width: '100%' } }, integerSequence(0, this.rowsPerPage).map(() => (h("div", { class: "envelope-placeholder" }))))), this.initiallyLoaded && !this.envelopes.length && h("div", { class: "empty-text" }, "No matching envelopes found. Please adjust your filters and try again."), this.initiallyLoaded && this.envelopes.length && this.showPagination ? (h("div", { style: { marginTop: '20px' } }, h("verdocs-pagination", { selectedPage: this.selectedPage, perPage: this.rowsPerPage, itemCount: this.count, onSelectPage: e => {
258
266
  this.selectedPage = e.detail.selectedPage;
259
- return this.queryEnvelopes();
260
- } })))));
267
+ } }))) : (h("div", null))));
261
268
  }
262
269
  static get watchers() { return {
263
270
  "view": ["handleViewUpdated"],
264
271
  "status": ["handleStatusUpdated"],
265
272
  "sort": ["handleSortUpdated"],
266
- "name": ["handleNameUpdated"],
267
- "containing": ["handleContainingUpdated"],
273
+ "match": ["handleMatchUpdated"],
268
274
  "selectedPage": ["handlePageUpdated"]
269
275
  }; }
270
276
  static get style() { return verdocsEnvelopesListCss; }
@@ -273,10 +279,12 @@ const VerdocsEnvelopesList$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
273
279
  "view": [1537],
274
280
  "status": [1537],
275
281
  "sort": [1537],
276
- "name": [1537],
277
- "containing": [1537],
278
- "selectedPage": [1538, "selected-page"],
282
+ "match": [1537],
283
+ "showPagination": [4, "show-pagination"],
284
+ "rowsPerPage": [2, "rows-per-page"],
285
+ "selectedPage": [2, "selected-page"],
279
286
  "count": [32],
287
+ "initiallyLoaded": [32],
280
288
  "loading": [32],
281
289
  "selectedEnvelopes": [32],
282
290
  "envelopes": [32]
@@ -5,6 +5,7 @@ const verdocsPaginationCss = "verdocs-pagination{gap:8px;display:-ms-flexbox;dis
5
5
 
6
6
  const ChevronDoubleLeft = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M18.75 19.5l-7.5-7.5 7.5-7.5m-6 15L5.25 12l7.5-7.5" /></svg>`;
7
7
  const ChevronDoubleRight = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M11.25 4.5l7.5 7.5-7.5 7.5m-6-15l7.5 7.5-7.5 7.5" /></svg>`;
8
+ const VISIBLE_PAGES = 5;
8
9
  const PageButton = ({ page, selected, onClick }) => {
9
10
  let label;
10
11
  if (page === 'first') {
@@ -33,12 +34,10 @@ const VerdocsQuickFilter = /*@__PURE__*/ proxyCustomElement(class extends HTMLEl
33
34
  (_a = this.selectPage) === null || _a === void 0 ? void 0 : _a.emit({ selectedPage: page });
34
35
  }
35
36
  render() {
36
- const numPages = this.itemCount > 0 ? Math.ceil(this.itemCount / this.perPage) : 0;
37
- // If there are 10 pages:
38
- // If page == 0 => firstPage: 0, numPagesToDisplay:
39
37
  const firstPage = Math.max(0, this.selectedPage - 2);
40
- const numPagesToDisplay = Math.min(numPages, 5);
41
- return (h(Host, null, this.selectedPage > 0 && h(PageButton, { page: 'first', selected: this.selectedPage, onClick: () => this.handleSelectPage(0) }), firstPage > 0 && h("div", { class: "ellipsis" }, "..."), integerSequence(firstPage, numPagesToDisplay - firstPage).map(pageNumber => (h(PageButton, { page: pageNumber, selected: this.selectedPage, onClick: page => this.handleSelectPage(+page) }))), numPagesToDisplay < numPages && h("div", { class: "ellipsis" }, "..."), this.selectedPage < numPages - 1 && h(PageButton, { page: 'last', selected: this.selectedPage, onClick: () => this.handleSelectPage(numPages - 1) })));
38
+ const numPages = this.itemCount > 0 ? Math.ceil(this.itemCount / this.perPage) : 0;
39
+ const pagesToDisplay = integerSequence(0, Math.ceil(this.itemCount / this.perPage)).slice(firstPage, firstPage + VISIBLE_PAGES);
40
+ return (h(Host, null, this.selectedPage > 0 && h(PageButton, { page: 'first', selected: this.selectedPage, onClick: () => this.handleSelectPage(0) }), firstPage > 0 && h("div", { class: "ellipsis" }, "..."), pagesToDisplay.map(pageNumber => (h(PageButton, { page: pageNumber, selected: this.selectedPage, onClick: page => this.handleSelectPage(+page) }))), this.selectedPage < numPages - 1 && h("div", { class: "ellipsis" }, "..."), this.selectedPage < numPages - 1 && h(PageButton, { page: 'last', selected: this.selectedPage, onClick: () => this.handleSelectPage(numPages - 1) })));
42
41
  }
43
42
  get el() { return this; }
44
43
  static get style() { return verdocsPaginationCss; }
@@ -338,10 +338,10 @@ const VerdocsSign$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
338
338
  this.isDone = true;
339
339
  // TODO: This is a temporary hack. After submitting, if we immediately show the View component it won't have re-renedered the
340
340
  // pages yet with our submitted data.
341
- setTimeout(() => {
342
- console.log('[SIGN] Reloading');
343
- window.location.reload();
344
- }, 1000);
341
+ // setTimeout(() => {
342
+ // console.log('[SIGN] Reloading');
343
+ // window.location.reload();
344
+ // }, 250);
345
345
  }
346
346
  catch (e) {
347
347
  console.log('[SIGN] Error submitting', e);
@@ -477,7 +477,7 @@ const VerdocsSign$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
477
477
  this.isDone = true;
478
478
  } })), this.submitting && (h("div", { class: "loading-indicator" }, h("verdocs-loader", null)))));
479
479
  }
480
- return (h(Host, { class: { agreed: this.agreed } }, !this.agreed && !this.finishLater && (h("div", { class: "intro" }, h("div", { class: "inner" }, "Please review and act on these documents."))), h("div", { id: "verdocs-sign-header" }, h("div", { class: "inner" }, !this.agreed ? (h("div", { class: "agree" }, h("verdocs-checkbox", { name: "agree", label: "I agree to use electronic records and signatures.", onInput: () => this.handleClickAgree() }))) : (h(Fragment, null, h("img", { src: "https://verdocs.com/assets/white-logo.svg", alt: "Verdocs Logo", class: "logo" }), h("div", { class: "title" }, this.envelope.name), h("div", { style: { flex: '1' } }))), !this.finishLater && h("verdocs-button", { size: "small", label: this.nextButtonLabel, disabled: !this.agreed, onClick: () => this.handleNext() }), h("div", { style: { marginLeft: '10px' } }), h("verdocs-dropdown", { options: !this.isDone && !this.finishLater ? inProgressMenuOptions : doneMenuOptions, onOptionSelected: e => this.handleOptionSelected(e) }))), !this.agreed ? h("div", { class: "cover" }) : h("div", { style: { display: 'none' } }), h("div", { class: "document", style: { paddingTop: this.headerTargetId ? '70px' : '15px' } }, (this.envelope.documents || []).map(envelopeDocument => {
480
+ return (h(Host, { class: { agreed: this.agreed } }, !this.agreed && !this.finishLater && (h("div", { class: "intro" }, h("div", { class: "inner" }, "Please review and act on these documents."))), h("div", { id: "verdocs-sign-header" }, h("div", { class: "inner" }, !this.agreed ? (h("div", { class: "agree" }, h("verdocs-checkbox", { name: "agree", label: "I agree to use electronic records and signatures.", onInput: () => this.handleClickAgree() }))) : (h(Fragment, null, h("img", { src: "https://verdocs.com/assets/white-logo.svg", alt: "Verdocs Logo", class: "logo" }), h("div", { class: "title" }, this.envelope.name), h("div", { style: { flex: '1' } }))), !this.finishLater && h("verdocs-button", { size: "small", label: this.nextButtonLabel, disabled: !this.agreed, onClick: () => this.handleNext() }), h("div", { style: { marginLeft: '10px' } }), h("verdocs-dropdown", { options: !this.isDone && !this.finishLater ? inProgressMenuOptions : doneMenuOptions, onOptionSelected: e => this.handleOptionSelected(e) }))), !this.agreed && h("div", { class: "cover" }), h("div", { class: "document", style: { paddingTop: this.headerTargetId ? '70px' : '15px' } }, (this.envelope.documents || []).map(envelopeDocument => {
481
481
  const pageNumbers = integerSequence(1, envelopeDocument.page_numbers);
482
482
  return (h(Fragment, null, pageNumbers.map(pageNumber => {
483
483
  // In signing mode we show the original template page with all the recipient fields so we can show source formatting and
@@ -93,6 +93,7 @@ const VerdocsTemplatesList$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
93
93
  this.loading = true;
94
94
  this.confirmDelete = null;
95
95
  this.templates = [];
96
+ this.localNameFilter = '';
96
97
  }
97
98
  handleSharingUpdated() {
98
99
  return this.queryTemplates();
@@ -106,6 +107,9 @@ const VerdocsTemplatesList$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
106
107
  handleNameUpdated() {
107
108
  return this.queryTemplates();
108
109
  }
110
+ handlePageUpdated() {
111
+ return this.queryTemplates();
112
+ }
109
113
  componentWillLoad() {
110
114
  this.endpoint.loadSession();
111
115
  if (!this.endpoint.session) {
@@ -139,7 +143,8 @@ const VerdocsTemplatesList$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
139
143
  this.loading = false;
140
144
  }
141
145
  catch (e) {
142
- console.log('[TEMPLATES] Error with preview session', e);
146
+ this.loading = false;
147
+ console.log('[TEMPLATES] Error listing templates', e);
143
148
  (_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));
144
149
  }
145
150
  }
@@ -159,9 +164,13 @@ const VerdocsTemplatesList$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
159
164
  });
160
165
  }
161
166
  render() {
162
- return (h(Host, null, h("div", { class: "header" }, h("div", { class: "filter" }, h("verdocs-text-input", { id: "verdocs-filter-name", value: this.name, autocomplete: "off", placeholder: "Filter by Name...", onFocusout: (e) => {
167
+ // In addition to the server query we also filter locally. This provides a faster UI update
168
+ // while the onBlur re-queries the server for any new records that now qualify by the filter.
169
+ const locallyFilteredTemplates = !this.localNameFilter ? this.templates : this.templates.filter(t => t.name.toLowerCase().includes(this.localNameFilter.toLowerCase()));
170
+ return (h(Host, null, h("div", { class: "header" }, h("div", { class: "filter" }, h("verdocs-text-input", { id: "verdocs-filter-name", value: this.name, clearable: true, autocomplete: "off", placeholder: "Filter by Name...", onInput: (e) => (this.localNameFilter = e.target.value.trim()), onFocusout: (e) => {
163
171
  var _a;
164
- this.name = e.target.value;
172
+ this.name = e.target.value.trim();
173
+ this.localNameFilter = e.target.value.trim();
165
174
  (_a = this.changeName) === null || _a === void 0 ? void 0 : _a.emit(this.name);
166
175
  } })), h("verdocs-quick-filter", { label: "Sharing", value: this.sharing, options: SharingFilters, onOptionSelected: e => {
167
176
  var _a;
@@ -175,7 +184,7 @@ const VerdocsTemplatesList$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
175
184
  var _a;
176
185
  this.sort = e.detail.value;
177
186
  (_a = this.changeSort) === null || _a === void 0 ? void 0 : _a.emit(this.sort);
178
- } }), this.loading && h("verdocs-spinner", { mode: "dark", size: 24 }), h("div", { style: { display: 'flex', flex: '1' } })), this.templates.map(template => {
187
+ } }), this.loading && h("verdocs-spinner", { mode: "dark", size: 24 }), h("div", { style: { display: 'flex', flex: '1' } })), locallyFilteredTemplates.map(template => {
179
188
  const dateToShow = this.sort === 'created_at' ? 'created_at' : this.sort === 'updated_at' ? 'updated_at' : 'last_used_at';
180
189
  const date = template[dateToShow];
181
190
  const MENU_OPTIONS = [];
@@ -213,14 +222,14 @@ const VerdocsTemplatesList$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
213
222
  } }, h("div", { class: "inner" }, h("verdocs-template-star", { template: template, endpoint: this.endpoint }), h("div", { class: "spacer icon-spacer" }), h("div", { class: "name" }, template.name), h("div", { class: "spacer usage-spacer" }), h("div", { class: "usage" }, h("span", { innerHTML: EnvelopeIcon, title: "Usage Counter" }), template.counter || '--'), h("div", { class: "spacer last-used-spacer" }), h("div", { class: "last-used" }, dateToShow === 'created_at' && h("span", { innerHTML: CreatedIcon, title: "Created" }), dateToShow === 'updated_at' && h("span", { innerHTML: UpdatedIcon, title: "Last Updated" }), dateToShow === 'last_used_at' && h("span", { innerHTML: LastUsedIcon, title: "Last Used" }), date ? format(new Date(date), 'P') : 'Never'), h("div", { class: "spacer ownership-spacer" }), template.is_public && (h("div", { class: "ownership" }, h("span", { innerHTML: GlobeAltIcon }), " Public")), !template.is_public && !template.is_personal && (h("div", { class: "ownership" }, h("span", { innerHTML: LockClosedIcon }), " Private")), !template.is_public && template.is_personal && (h("div", { class: "ownership" }, h("span", { innerHTML: BuildingOfficeIcon }), " Shared")), h("verdocs-dropdown", { options: MENU_OPTIONS, onOptionSelected: e => this.handleOptionSelected(e.detail.id, template) }))));
214
223
  }), !this.initiallyLoaded && (h("div", null, integerSequence(0, this.rowsPerPage).map(() => (h("div", { class: "template-placeholder" }))))), this.initiallyLoaded && !this.templates.length && h("div", { class: "empty-text" }, "No matching templates found. Please adjust your filters and try again."), this.initiallyLoaded && this.templates.length && this.showPagination ? (h("div", { style: { marginTop: '20px' } }, h("verdocs-pagination", { selectedPage: this.selectedPage, perPage: this.rowsPerPage, itemCount: this.count, onSelectPage: e => {
215
224
  this.selectedPage = e.detail.selectedPage;
216
- return this.queryTemplates();
217
225
  } }))) : (h("div", null)), this.confirmDelete && (h("verdocs-ok-dialog", { heading: "Delete this Template?", message: "This operation cannot be undone.", onNext: () => this.deleteTemplate(this.confirmDelete), onExit: () => (this.confirmDelete = null), showCancel: true }))));
218
226
  }
219
227
  static get watchers() { return {
220
228
  "sharing": ["handleSharingUpdated"],
221
229
  "starred": ["handleStarredUpdated"],
222
230
  "sort": ["handleSortUpdated"],
223
- "name": ["handleNameUpdated"]
231
+ "name": ["handleNameUpdated"],
232
+ "selectedPage": ["handlePageUpdated"]
224
233
  }; }
225
234
  static get style() { return verdocsTemplatesListCss; }
226
235
  }, [0, "verdocs-templates-list", {
@@ -237,7 +246,8 @@ const VerdocsTemplatesList$1 = /*@__PURE__*/ proxyCustomElement(class extends HT
237
246
  "initiallyLoaded": [32],
238
247
  "loading": [32],
239
248
  "confirmDelete": [32],
240
- "templates": [32]
249
+ "templates": [32],
250
+ "localNameFilter": [32]
241
251
  }]);
242
252
  function defineCustomElement$1() {
243
253
  if (typeof customElements === "undefined") {
@@ -1,8 +1,9 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
2
  import { d as defineCustomElement$1 } from './verdocs-help-icon2.js';
3
3
 
4
- const verdocsTextInputCss = "verdocs-text-input{font-family:\"Inter\", \"Barlow\", sans-serif;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0 0 10px 0;display:block}verdocs-text-input .input-element{-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid #707ae5;border-radius:4px;background:#ffffff;color:#000;width:100%;font-size:16px;height:28px;padding:4px 12px;outline:none}verdocs-text-input .input-element:disabled{border:1px solid #aeb4bf;background:#f5f5fa}verdocs-text-input .input-element::-webkit-input-placeholder{color:#aaaaaa;opacity:1}verdocs-text-input .input-element::-moz-placeholder{color:#aaaaaa;opacity:1}verdocs-text-input .input-element:-ms-input-placeholder{color:#aaaaaa;opacity:1}verdocs-text-input .input-element::-ms-input-placeholder{color:#aaaaaa;opacity:1}verdocs-text-input .input-element::placeholder{color:#aaaaaa;opacity:1}verdocs-text-input .input-element:focus{outline:1px solid #7d88ff}verdocs-text-input .input-label{display:block;color:#555570;font-weight:700;font-size:14px;margin:0 0 4px 0}verdocs-text-input .required{color:red;margin-left:2px;display:inline-block}verdocs-text-input [data-lastpass-icon-root]{display:none !important}";
4
+ const verdocsTextInputCss = "verdocs-text-input{font-family:\"Inter\", \"Barlow\", sans-serif;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0 0 10px 0;display:block}verdocs-text-input .input-element{-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid #707ae5;border-radius:4px;background:#ffffff;color:#000;width:100%;font-size:16px;height:28px;padding:4px 12px;outline:none}verdocs-text-input .input-element:disabled{border:1px solid #aeb4bf;background:#f5f5fa}verdocs-text-input .input-element::-webkit-input-placeholder{color:#aaaaaa;opacity:1}verdocs-text-input .input-element::-moz-placeholder{color:#aaaaaa;opacity:1}verdocs-text-input .input-element:-ms-input-placeholder{color:#aaaaaa;opacity:1}verdocs-text-input .input-element::-ms-input-placeholder{color:#aaaaaa;opacity:1}verdocs-text-input .input-element::placeholder{color:#aaaaaa;opacity:1}verdocs-text-input .input-element:focus{outline:1px solid #7d88ff}verdocs-text-input .input-label{display:block;color:#555570;font-weight:700;font-size:14px;margin:0 0 4px 0}verdocs-text-input .required{color:red;margin-left:2px;display:inline-block}verdocs-text-input [data-lastpass-icon-root]{display:none !important}verdocs-text-input .input-container{position:relative}verdocs-text-input .clear{top:7px;right:5px;width:18px;height:18px;fill:#cccccc;position:absolute}verdocs-text-input .clear:hover{fill:#720101;cursor:pointer}";
5
5
 
6
+ const ClearIcon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 122.881 122.88"><g><path fill-rule="evenodd" clip-rule="evenodd" d="M61.44,0c33.933,0,61.441,27.507,61.441,61.439 c0,33.933-27.508,61.44-61.441,61.44C27.508,122.88,0,95.372,0,61.439C0,27.507,27.508,0,61.44,0L61.44,0z M81.719,36.226 c1.363-1.363,3.572-1.363,4.936,0c1.363,1.363,1.363,3.573,0,4.936L66.375,61.439l20.279,20.278c1.363,1.363,1.363,3.573,0,4.937 c-1.363,1.362-3.572,1.362-4.936,0L61.44,66.376L41.162,86.654c-1.362,1.362-3.573,1.362-4.936,0c-1.363-1.363-1.363-3.573,0-4.937 l20.278-20.278L36.226,41.162c-1.363-1.363-1.363-3.573,0-4.936c1.363-1.363,3.573-1.363,4.936,0L61.44,56.504L81.719,36.226 L81.719,36.226z"/></g></svg>`;
6
7
  const VerdocsTextInput = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
7
8
  constructor() {
8
9
  super();
@@ -12,20 +13,37 @@ const VerdocsTextInput = /*@__PURE__*/ proxyCustomElement(class extends HTMLElem
12
13
  this.placeholder = '';
13
14
  this.autocomplete = '';
14
15
  this.helpText = '';
16
+ this.clearable = false;
15
17
  this.type = 'text';
16
18
  this.disabled = false;
17
19
  this.required = false;
18
20
  }
19
21
  render() {
20
- return (h(Host, { class: "input-field" }, h("label", null, this.label && (h("div", { class: "input-label" }, this.label + ':', this.required && h("span", { class: "required" }, "*"))), h("input", { type: this.type, value: this.value, required: this.required, class: "input-element", "data-lpignore": "true", disabled: this.disabled, placeholder: this.placeholder, autoComplete: this.autocomplete }), this.helpText && h("verdocs-help-icon", { text: this.helpText }))));
22
+ return (h(Host, { class: "input-field" }, h("label", null, this.label && (h("div", { class: "input-label" }, this.label + ':', this.required && h("span", { class: "required" }, "*"))), h("div", { class: "input-container" }, h("input", { type: this.type, value: this.value, required: this.required, class: "input-element", "data-lpignore": "true", disabled: this.disabled, placeholder: this.placeholder, autoComplete: this.autocomplete, ref: el => (this.inputEl = el), onInput: (e) => (this.value = e.target.value) }), this.clearable && this.value && (h("span", { innerHTML: ClearIcon, class: "clear", onClick: () => {
23
+ // We need to allow the onInput event to fire first in case
24
+ // the user was focused on this field before clicking clear.
25
+ setTimeout(() => {
26
+ var _a;
27
+ this.value = '';
28
+ (_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.setAttribute('value', '');
29
+ // We need to allow the value to "settle"
30
+ setTimeout(() => {
31
+ var _a, _b;
32
+ (_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.dispatchEvent(new Event('focusout'));
33
+ (_b = this.inputEl) === null || _b === void 0 ? void 0 : _b.blur();
34
+ }, 50);
35
+ }, 50);
36
+ } }))), this.helpText && h("verdocs-help-icon", { text: this.helpText }))));
21
37
  }
38
+ get hostEl() { return this; }
22
39
  static get style() { return verdocsTextInputCss; }
23
40
  }, [0, "verdocs-text-input", {
24
- "value": [1],
41
+ "value": [1537],
25
42
  "label": [1],
26
43
  "placeholder": [1],
27
44
  "autocomplete": [1],
28
45
  "helpText": [1, "help-text"],
46
+ "clearable": [4],
29
47
  "type": [1],
30
48
  "disabled": [4],
31
49
  "required": [4]