@nylas/react 1.1.0 → 1.1.2

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 (143) hide show
  1. package/dist/add-circle-icon_2.entry-611be49d.js +25 -0
  2. package/dist/add-circle-icon_2.entry-f1383568.cjs +1 -0
  3. package/dist/{archive-icon_7.entry-e3df60ed.cjs → archive-icon_7.entry-59cc6868.cjs} +1 -1
  4. package/dist/{archive-icon_7.entry-7411c224.js → archive-icon_7.entry-5e6ba9e7.js} +13 -13
  5. package/dist/arrow-icon.entry-9c19a803.js +15 -0
  6. package/dist/{arrow-icon.entry-280e18b0.cjs → arrow-icon.entry-a924df13.cjs} +1 -1
  7. package/dist/{bold-icon_3.entry-5963945c.js → bold-icon_3.entry-2935a3df.js} +6 -6
  8. package/dist/{bold-icon_3.entry-5dffbedd.cjs → bold-icon_3.entry-ffe02f93.cjs} +1 -1
  9. package/dist/{button-component_2.entry-237733b4.js → button-component_2.entry-93aa59a2.js} +5 -5
  10. package/dist/{button-component_2.entry-b29d2873.cjs → button-component_2.entry-b9d3f6a2.cjs} +1 -1
  11. package/dist/{calendar-agenda-fill-icon_48.entry-9afba869.js → calendar-agenda-fill-icon_48.entry-476bc4ef.js} +1550 -1399
  12. package/dist/calendar-agenda-fill-icon_48.entry-c4ea84b3.cjs +7 -0
  13. package/dist/{calendar-cancel-icon.entry-77ccf227.cjs → calendar-cancel-icon.entry-11bb8656.cjs} +1 -1
  14. package/dist/{calendar-cancel-icon.entry-780723a6.js → calendar-cancel-icon.entry-ee0acc54.js} +4 -4
  15. package/dist/{calendar-check-icon_2.entry-b37ac7f0.cjs → calendar-check-icon_2.entry-14548656.cjs} +1 -1
  16. package/dist/{calendar-check-icon_2.entry-2c89c230.js → calendar-check-icon_2.entry-54a82e1e.js} +9 -9
  17. package/dist/{calendar-icon.entry-ffc93569.cjs → calendar-icon.entry-1a17f887.cjs} +1 -1
  18. package/dist/{calendar-icon.entry-02dd3990.js → calendar-icon.entry-29f7003b.js} +5 -5
  19. package/dist/checkbox-component_2.entry-84a17232.cjs +1 -0
  20. package/dist/{checkbox-component_2.entry-ee9d0e6c.js → checkbox-component_2.entry-dfec10cb.js} +35 -12
  21. package/dist/chevron-icon_3.entry-5da08d02.cjs +1 -0
  22. package/dist/{chevron-icon_3.entry-f62e9ef1.js → chevron-icon_3.entry-826e81d4.js} +29 -15
  23. package/dist/{clock-icon_4.entry-766a1b23.js → clock-icon_4.entry-36d97f00.js} +13 -13
  24. package/dist/{clock-icon_4.entry-7dc2cc4a.cjs → clock-icon_4.entry-dafdd895.cjs} +1 -1
  25. package/dist/{constants-50c3e067-9f2a6372.cjs → constants-50c3e067-1fe54cf3.cjs} +1 -1
  26. package/dist/{constants-50c3e067-8a40a5fe.js → constants-50c3e067-fed7fb48.js} +1 -1
  27. package/dist/{copy-icon.entry-2a841508.js → copy-icon.entry-6d1a649d.js} +7 -7
  28. package/dist/{copy-icon.entry-e5251410.cjs → copy-icon.entry-eec265da.cjs} +1 -1
  29. package/dist/{delete-icon_2.entry-1a5c39dc.cjs → delete-icon_2.entry-160ba41e.cjs} +1 -1
  30. package/dist/{delete-icon_2.entry-64555a2f.js → delete-icon_2.entry-528a3879.js} +9 -9
  31. package/dist/{document-refresh-icon.entry-fdc7ddda.cjs → document-refresh-icon.entry-276704dc.cjs} +1 -1
  32. package/dist/document-refresh-icon.entry-6565f3b5.js +15 -0
  33. package/dist/elements/index.d.ts +1 -0
  34. package/dist/{elements-dc5b338e-2da1fe61.js → elements-dc5b338e-2d3857dc.js} +1 -1
  35. package/dist/{elements-dc5b338e-c8016c3d.cjs → elements-dc5b338e-b06b2857.cjs} +1 -1
  36. package/dist/{focus-visible-e8093c16-0a38a184.cjs → focus-visible-e8093c16-47e61336.cjs} +1 -1
  37. package/dist/{focus-visible-e8093c16-9d0c98c0.js → focus-visible-e8093c16-6f68eb89.js} +1 -1
  38. package/dist/{forward-icon_6.entry-390ef70a.js → forward-icon_6.entry-ed6ab66a.js} +9 -9
  39. package/dist/{forward-icon_6.entry-7238ef38.cjs → forward-icon_6.entry-fed8994d.cjs} +2 -2
  40. package/dist/{globe-icon.entry-8d106260.js → globe-icon.entry-154ccdb5.js} +5 -5
  41. package/dist/{globe-icon.entry-81f42f89.cjs → globe-icon.entry-95fc0408.cjs} +1 -1
  42. package/dist/{google-logo-icon_4.entry-aabd3886.js → google-logo-icon_4.entry-68cfa3fe.js} +245 -252
  43. package/dist/google-logo-icon_4.entry-afffb209.cjs +1 -0
  44. package/dist/index-1322d804.js +12842 -0
  45. package/dist/index-c4e817ef.cjs +82 -0
  46. package/dist/{index.es-c9454237-00ccd1e6.js → index.es-79f5b771-04cd3414.js} +1 -1
  47. package/dist/{index.es-c9454237-b64161d1.cjs → index.es-79f5b771-08cc349d.cjs} +1 -1
  48. package/dist/{info-icon_2.entry-b2e11336.cjs → info-icon_2.entry-2af880b8.cjs} +1 -1
  49. package/dist/{info-icon_2.entry-bb8ed71c.js → info-icon_2.entry-49261a0a.js} +5 -5
  50. package/dist/input-color-picker.entry-57adff77.cjs +1 -0
  51. package/dist/input-color-picker.entry-aefe0e26.js +48 -0
  52. package/dist/input-component.entry-09c3c9b6.cjs +1 -0
  53. package/dist/{input-component.entry-cb86170f.js → input-component.entry-d7c2724b.js} +19 -14
  54. package/dist/{input-dropdown.entry-a76c339e.js → input-dropdown.entry-e573ade0.js} +6 -6
  55. package/dist/input-dropdown.entry-e7d26273.cjs +1 -0
  56. package/dist/{mailbox-store-edc386fc-8bc7558b.js → mailbox-store-9c52a3fa-27f8f7e6.js} +2 -2
  57. package/dist/{mailbox-store-edc386fc-156b7236.cjs → mailbox-store-9c52a3fa-6b39645f.cjs} +1 -1
  58. package/dist/{multi-select-dropdown.entry-6b686695.js → multi-select-dropdown.entry-15cacb87.js} +11 -7
  59. package/dist/multi-select-dropdown.entry-46b2b1c9.cjs +1 -0
  60. package/dist/{nylas-booked-event-card_12.entry-e861bb16.js → nylas-booked-event-card_12.entry-3921071a.js} +233 -231
  61. package/dist/nylas-booked-event-card_12.entry-47c5381d.cjs +1 -0
  62. package/dist/{nylas-form-card.entry-b158d789.js → nylas-form-card.entry-ca835017.js} +15 -15
  63. package/dist/{nylas-form-card.entry-ca4a8746.cjs → nylas-form-card.entry-db3f0e3b.cjs} +1 -1
  64. package/dist/{nylas-if-state.entry-8e4d922c.js → nylas-if-state.entry-4159d41d.js} +8 -8
  65. package/dist/{nylas-if-state.entry-95fac42d.cjs → nylas-if-state.entry-5410607c.cjs} +1 -1
  66. package/dist/{nylas-list-folders.entry-8a22e0c8.cjs → nylas-list-folders.entry-0f143930.cjs} +1 -1
  67. package/dist/{nylas-list-folders.entry-83c39684.js → nylas-list-folders.entry-6b4a3d96.js} +3 -3
  68. package/dist/{nylas-list-threads.entry-7ea370e1.js → nylas-list-threads.entry-62108562.js} +3 -3
  69. package/dist/{nylas-list-threads.entry-54c582af.cjs → nylas-list-threads.entry-68b6f32b.cjs} +1 -1
  70. package/dist/{nylas-login.entry-9115fd81.js → nylas-login.entry-590e7fba.js} +7 -7
  71. package/dist/{nylas-login.entry-fb627e40.cjs → nylas-login.entry-f1d7bc7d.cjs} +1 -1
  72. package/dist/{nylas-mailbox-pagination.entry-04626d27.cjs → nylas-mailbox-pagination.entry-8377fdee.cjs} +1 -1
  73. package/dist/{nylas-mailbox-pagination.entry-3ff02cf9.js → nylas-mailbox-pagination.entry-ba1af8fb.js} +2 -2
  74. package/dist/{nylas-mailbox-toolbar-button.entry-f752e925.js → nylas-mailbox-toolbar-button.entry-4497acd0.js} +8 -8
  75. package/dist/{nylas-mailbox-toolbar-button.entry-8d00c789.cjs → nylas-mailbox-toolbar-button.entry-6a5d8387.cjs} +1 -1
  76. package/dist/{nylas-mailbox.entry-99c27b6c.js → nylas-mailbox.entry-917c22f5.js} +4 -4
  77. package/dist/{nylas-mailbox.entry-b3974f4e.cjs → nylas-mailbox.entry-a07652b4.cjs} +1 -1
  78. package/dist/{nylas-provider.entry-a3ad02a5.cjs → nylas-provider.entry-0e520ac3.cjs} +1 -1
  79. package/dist/{nylas-provider.entry-c206aa32.js → nylas-provider.entry-20c47b14.js} +8 -8
  80. package/dist/{nylas-reminder-emails.entry-414ce6fe.js → nylas-reminder-emails.entry-088ee120.js} +9 -9
  81. package/dist/{nylas-reminder-emails.entry-59c07bfe.cjs → nylas-reminder-emails.entry-69626e7f.cjs} +2 -2
  82. package/dist/{nylas-reminder-time_2.entry-197d83a0.js → nylas-reminder-time_2.entry-0357f280.js} +5 -5
  83. package/dist/{nylas-reminder-time_2.entry-d79dcd85.cjs → nylas-reminder-time_2.entry-b5c181db.cjs} +1 -1
  84. package/dist/{nylas-scheduler-editor.entry-7f389982.js → nylas-scheduler-editor.entry-6bb290ed.js} +66 -66
  85. package/dist/nylas-scheduler-editor.entry-d2c3bddc.cjs +2 -0
  86. package/dist/{nylas-scheduling.entry-4fa5381d.js → nylas-scheduling.entry-bc9c25c5.js} +126 -112
  87. package/dist/nylas-scheduling.entry-dc92d5e7.cjs +1 -0
  88. package/dist/{nylas-threads-refresh.entry-20602e7b.js → nylas-threads-refresh.entry-45d7d171.js} +4 -4
  89. package/dist/{nylas-threads-refresh.entry-56b53449.cjs → nylas-threads-refresh.entry-6636e7b1.cjs} +1 -1
  90. package/dist/{nylas-threads-search.entry-8872473c.js → nylas-threads-search.entry-4460aa9b.js} +16 -16
  91. package/dist/{nylas-threads-search.entry-8e0ec3ae.cjs → nylas-threads-search.entry-ae87695a.cjs} +1 -1
  92. package/dist/{nylas-time-window-picker.entry-ca47f721.cjs → nylas-time-window-picker.entry-1b449403.cjs} +1 -1
  93. package/dist/{nylas-time-window-picker.entry-9ac542b7.js → nylas-time-window-picker.entry-260f52a6.js} +18 -18
  94. package/dist/{nylas-view-thread.entry-dcd3d5be.js → nylas-view-thread.entry-5821630b.js} +9 -9
  95. package/dist/{nylas-view-thread.entry-1f758e43.cjs → nylas-view-thread.entry-5a9b353a.cjs} +1 -1
  96. package/dist/{person-icon.entry-63b28ace.cjs → person-icon.entry-b4ce06b7.cjs} +1 -1
  97. package/dist/{person-icon.entry-93130c05.js → person-icon.entry-ed6786db.js} +2 -2
  98. package/dist/{play-icon_2.entry-6a99c32d.js → play-icon_2.entry-261ea828.js} +8 -8
  99. package/dist/play-icon_2.entry-87fe39a9.cjs +1 -0
  100. package/dist/react.cjs +1 -1
  101. package/dist/react.js +100 -99
  102. package/dist/{refresh-icon.entry-b49792fc.cjs → refresh-icon.entry-21ac359d.cjs} +1 -1
  103. package/dist/{refresh-icon.entry-84783c91.js → refresh-icon.entry-87af05b0.js} +4 -4
  104. package/dist/{register-component-887199a9-b41dfa7a.js → register-component-ea95564d-843da1da.js} +1 -1
  105. package/dist/{register-component-887199a9-003f96c5.cjs → register-component-ea95564d-a64ee107.cjs} +1 -1
  106. package/dist/{scheduler-config-store-2a3b403d-73610089.js → scheduler-config-store-2a3b403d-8553b685.js} +1 -1
  107. package/dist/{scheduler-config-store-2a3b403d-a5e3433a.cjs → scheduler-config-store-2a3b403d-88840eb1.cjs} +1 -1
  108. package/dist/scheduler-store-9ff4914b-63dc472a.cjs +1 -0
  109. package/dist/{scheduler-store-fe281404-bddb1b6a.js → scheduler-store-9ff4914b-d1a624f8.js} +87 -82
  110. package/dist/textarea-component.entry-cbffb0b0.cjs +1 -0
  111. package/dist/{textarea-component.entry-40e959e5.js → textarea-component.entry-dad42f20.js} +10 -9
  112. package/dist/time-period-selector.entry-79c94da3.js +80 -0
  113. package/dist/time-period-selector.entry-e54d0989.cjs +1 -0
  114. package/dist/{translate-icon.entry-a2ed4f76.cjs → translate-icon.entry-8e9eeeba.cjs} +1 -1
  115. package/dist/{translate-icon.entry-92b83635.js → translate-icon.entry-ef6266c4.js} +4 -4
  116. package/dist/{warning-icon.entry-3ab9a59e.cjs → warning-icon.entry-34c85de2.cjs} +1 -1
  117. package/dist/{warning-icon.entry-19f721c3.js → warning-icon.entry-adf18211.js} +4 -4
  118. package/package.json +2 -2
  119. package/dist/add-circle-icon_2.entry-7165bd0e.js +0 -25
  120. package/dist/add-circle-icon_2.entry-f1ddca18.cjs +0 -1
  121. package/dist/arrow-icon.entry-38949317.js +0 -15
  122. package/dist/calendar-agenda-fill-icon_48.entry-d3830dbb.cjs +0 -7
  123. package/dist/checkbox-component_2.entry-00b6a1e9.cjs +0 -1
  124. package/dist/chevron-icon_3.entry-468abc26.cjs +0 -1
  125. package/dist/document-refresh-icon.entry-4bf6398b.js +0 -15
  126. package/dist/google-logo-icon_4.entry-fa2b8999.cjs +0 -1
  127. package/dist/index-53420959-5fc8ad2b.js +0 -5
  128. package/dist/index-53420959-fcf45780.cjs +0 -1
  129. package/dist/index-5ccfd9df.js +0 -7859
  130. package/dist/index-6d9eeb53-58c8980a.js +0 -4971
  131. package/dist/index-6d9eeb53-b2a6d09f.cjs +0 -41
  132. package/dist/index-eb33703c.cjs +0 -42
  133. package/dist/input-component.entry-378b1ccc.cjs +0 -1
  134. package/dist/input-dropdown.entry-98954c93.cjs +0 -1
  135. package/dist/multi-select-dropdown.entry-40b855e1.cjs +0 -1
  136. package/dist/nylas-booked-event-card_12.entry-9d693125.cjs +0 -1
  137. package/dist/nylas-scheduler-editor.entry-f1c6964a.cjs +0 -2
  138. package/dist/nylas-scheduling.entry-1a8bd6fc.cjs +0 -1
  139. package/dist/play-icon_2.entry-b67fb649.cjs +0 -1
  140. package/dist/scheduler-store-fe281404-c3e477f6.cjs +0 -1
  141. package/dist/textarea-component.entry-28c4bc05.cjs +0 -1
  142. package/dist/time-period-selector.entry-af71523a.cjs +0 -1
  143. package/dist/time-period-selector.entry-da5d8652.js +0 -93
@@ -1,10 +1,9 @@
1
1
  var P = Object.defineProperty;
2
2
  var O = (r, t, n) => t in r ? P(r, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : r[t] = n;
3
3
  var b = (r, t, n) => (O(r, typeof t != "symbol" ? t + "" : t, n), n);
4
- import { i as commonjsGlobal, r as registerInstance, c as createEvent, d as debug, N as NylasIdentityRequestWrapper, h, H as Host, g as getElement, B as Buffer, F as Fragment, j as dataResponse } from "./index-5ccfd9df.js";
5
- import { N as NylasBaseProvider, X as Xr } from "./index.es-c9454237-00ccd1e6.js";
6
- import { C as CreateNylasSchedulerConfigStore } from "./scheduler-config-store-2a3b403d-73610089.js";
7
- import { p as process } from "./index-53420959-5fc8ad2b.js";
4
+ import { p as process, i as commonjsGlobal, r as registerInstance, c as createEvent, d as debug, N as NylasIdentityRequestWrapper, h, H as Host, g as getElement, B as Buffer, F as Fragment, j as dataResponse } from "./index-1322d804.js";
5
+ import { N as NylasBaseProvider, X as Xr } from "./index.es-79f5b771-04cd3414.js";
6
+ import { C as CreateNylasSchedulerConfigStore } from "./scheduler-config-store-2a3b403d-8553b685.js";
8
7
  import "react";
9
8
  import "react-dom";
10
9
  class NylasSchedulerConfigAPIConnector {
@@ -465,11 +464,11 @@ var sha256 = { exports: {} };
465
464
  r[16] = this.block, r[t >> 2] |= EXTRA[t & 3], this.block = r[16], t >= 56 && (this.hashed || this.hash(), r[0] = this.block, r[16] = r[1] = r[2] = r[3] = r[4] = r[5] = r[6] = r[7] = r[8] = r[9] = r[10] = r[11] = r[12] = r[13] = r[14] = r[15] = 0), r[14] = this.hBytes << 3 | this.bytes >>> 29, r[15] = this.bytes << 3, this.hash();
466
465
  }
467
466
  }, Sha256.prototype.hash = function() {
468
- var r = this.h0, t = this.h1, n = this.h2, s = this.h3, c = this.h4, a = this.h5, d = this.h6, l = this.h7, u = this.blocks, f, y, g, w, p, m, S, x, R, _, A;
467
+ var r = this.h0, t = this.h1, n = this.h2, s = this.h3, c = this.h4, a = this.h5, d = this.h6, l = this.h7, u = this.blocks, f, y, g, m, p, w, S, x, v, R, _;
469
468
  for (f = 16; f < 64; ++f)
470
469
  p = u[f - 15], y = (p >>> 7 | p << 25) ^ (p >>> 18 | p << 14) ^ p >>> 3, p = u[f - 2], g = (p >>> 17 | p << 15) ^ (p >>> 19 | p << 13) ^ p >>> 10, u[f] = u[f - 16] + y + u[f - 7] + g << 0;
471
- for (A = t & n, f = 0; f < 64; f += 4)
472
- this.first ? (this.is224 ? (x = 300032, p = u[0] - 1413257819, l = p - 150054599 << 0, s = p + 24177077 << 0) : (x = 704751109, p = u[0] - 210244248, l = p - 1521486534 << 0, s = p + 143694565 << 0), this.first = !1) : (y = (r >>> 2 | r << 30) ^ (r >>> 13 | r << 19) ^ (r >>> 22 | r << 10), g = (c >>> 6 | c << 26) ^ (c >>> 11 | c << 21) ^ (c >>> 25 | c << 7), x = r & t, w = x ^ r & n ^ A, S = c & a ^ ~c & d, p = l + g + S + K[f] + u[f], m = y + w, l = s + p << 0, s = p + m << 0), y = (s >>> 2 | s << 30) ^ (s >>> 13 | s << 19) ^ (s >>> 22 | s << 10), g = (l >>> 6 | l << 26) ^ (l >>> 11 | l << 21) ^ (l >>> 25 | l << 7), R = s & r, w = R ^ s & t ^ x, S = l & c ^ ~l & a, p = d + g + S + K[f + 1] + u[f + 1], m = y + w, d = n + p << 0, n = p + m << 0, y = (n >>> 2 | n << 30) ^ (n >>> 13 | n << 19) ^ (n >>> 22 | n << 10), g = (d >>> 6 | d << 26) ^ (d >>> 11 | d << 21) ^ (d >>> 25 | d << 7), _ = n & s, w = _ ^ n & r ^ R, S = d & l ^ ~d & c, p = a + g + S + K[f + 2] + u[f + 2], m = y + w, a = t + p << 0, t = p + m << 0, y = (t >>> 2 | t << 30) ^ (t >>> 13 | t << 19) ^ (t >>> 22 | t << 10), g = (a >>> 6 | a << 26) ^ (a >>> 11 | a << 21) ^ (a >>> 25 | a << 7), A = t & n, w = A ^ t & s ^ _, S = a & d ^ ~a & l, p = c + g + S + K[f + 3] + u[f + 3], m = y + w, c = r + p << 0, r = p + m << 0;
470
+ for (_ = t & n, f = 0; f < 64; f += 4)
471
+ this.first ? (this.is224 ? (x = 300032, p = u[0] - 1413257819, l = p - 150054599 << 0, s = p + 24177077 << 0) : (x = 704751109, p = u[0] - 210244248, l = p - 1521486534 << 0, s = p + 143694565 << 0), this.first = !1) : (y = (r >>> 2 | r << 30) ^ (r >>> 13 | r << 19) ^ (r >>> 22 | r << 10), g = (c >>> 6 | c << 26) ^ (c >>> 11 | c << 21) ^ (c >>> 25 | c << 7), x = r & t, m = x ^ r & n ^ _, S = c & a ^ ~c & d, p = l + g + S + K[f] + u[f], w = y + m, l = s + p << 0, s = p + w << 0), y = (s >>> 2 | s << 30) ^ (s >>> 13 | s << 19) ^ (s >>> 22 | s << 10), g = (l >>> 6 | l << 26) ^ (l >>> 11 | l << 21) ^ (l >>> 25 | l << 7), v = s & r, m = v ^ s & t ^ x, S = l & c ^ ~l & a, p = d + g + S + K[f + 1] + u[f + 1], w = y + m, d = n + p << 0, n = p + w << 0, y = (n >>> 2 | n << 30) ^ (n >>> 13 | n << 19) ^ (n >>> 22 | n << 10), g = (d >>> 6 | d << 26) ^ (d >>> 11 | d << 21) ^ (d >>> 25 | d << 7), R = n & s, m = R ^ n & r ^ v, S = d & l ^ ~d & c, p = a + g + S + K[f + 2] + u[f + 2], w = y + m, a = t + p << 0, t = p + w << 0, y = (t >>> 2 | t << 30) ^ (t >>> 13 | t << 19) ^ (t >>> 22 | t << 10), g = (a >>> 6 | a << 26) ^ (a >>> 11 | a << 21) ^ (a >>> 25 | a << 7), _ = t & n, m = _ ^ t & s ^ R, S = a & d ^ ~a & l, p = c + g + S + K[f + 3] + u[f + 3], w = y + m, c = r + p << 0, r = p + w << 0;
473
472
  this.h0 = this.h0 + r << 0, this.h1 = this.h1 + t << 0, this.h2 = this.h2 + n << 0, this.h3 = this.h3 + s << 0, this.h4 = this.h4 + c << 0, this.h5 = this.h5 + a << 0, this.h6 = this.h6 + d << 0, this.h7 = this.h7 + l << 0;
474
473
  }, Sha256.prototype.hex = function() {
475
474
  this.finalize();
@@ -662,39 +661,39 @@ var __rest = function(r, t) {
662
661
  const EventStreamContentType = "text/event-stream", DefaultRetryInterval = 1e3, LastEventId = "last-event-id";
663
662
  function fetchEventSource(r, t) {
664
663
  var { signal: n, headers: s, onopen: c, onmessage: a, onclose: d, onerror: l, openWhenHidden: u, fetch: f } = t, y = __rest(t, ["signal", "headers", "onopen", "onmessage", "onclose", "onerror", "openWhenHidden", "fetch"]);
665
- return new Promise((g, w) => {
664
+ return new Promise((g, m) => {
666
665
  const p = Object.assign({}, s);
667
666
  p.accept || (p.accept = EventStreamContentType);
668
- let m;
667
+ let w;
669
668
  function S() {
670
- m.abort(), document.hidden || k();
669
+ w.abort(), document.hidden || k();
671
670
  }
672
671
  u || document.addEventListener("visibilitychange", S);
673
- let x = DefaultRetryInterval, R = 0;
674
- function _() {
675
- document.removeEventListener("visibilitychange", S), window.clearTimeout(R), m.abort();
672
+ let x = DefaultRetryInterval, v = 0;
673
+ function R() {
674
+ document.removeEventListener("visibilitychange", S), window.clearTimeout(v), w.abort();
676
675
  }
677
676
  n == null || n.addEventListener("abort", () => {
678
- _(), g();
677
+ R(), g();
679
678
  });
680
- const A = f ?? window.fetch, U = c ?? defaultOnOpen;
679
+ const _ = f ?? window.fetch, T = c ?? defaultOnOpen;
681
680
  async function k() {
682
- var I;
683
- m = new AbortController();
681
+ var U;
682
+ w = new AbortController();
684
683
  try {
685
- const T = await A(r, Object.assign(Object.assign({}, y), { headers: p, signal: m.signal }));
686
- await U(T), await getBytes(T.body, getLines(getMessages((v) => {
687
- v ? p[LastEventId] = v : delete p[LastEventId];
688
- }, (v) => {
689
- x = v;
690
- }, a))), d == null || d(), _(), g();
691
- } catch (T) {
692
- if (!m.signal.aborted)
684
+ const I = await _(r, Object.assign(Object.assign({}, y), { headers: p, signal: w.signal }));
685
+ await T(I), await getBytes(I.body, getLines(getMessages((A) => {
686
+ A ? p[LastEventId] = A : delete p[LastEventId];
687
+ }, (A) => {
688
+ x = A;
689
+ }, a))), d == null || d(), R(), g();
690
+ } catch (I) {
691
+ if (!w.signal.aborted)
693
692
  try {
694
- const v = (I = l == null ? void 0 : l(T)) !== null && I !== void 0 ? I : x;
695
- window.clearTimeout(R), R = window.setTimeout(k, v);
696
- } catch (v) {
697
- _(), w(v);
693
+ const A = (U = l == null ? void 0 : l(I)) !== null && U !== void 0 ? U : x;
694
+ window.clearTimeout(v), v = window.setTimeout(k, A);
695
+ } catch (A) {
696
+ R(), m(A);
698
697
  }
699
698
  }
700
699
  }
@@ -1016,13 +1015,13 @@ class NylasSessions {
1016
1015
  const p = { detail: g };
1017
1016
  return window.dispatchEvent(new CustomEvent("onLoginFail", p)), !0;
1018
1017
  }
1019
- const w = await this.handleCodeExchangeResponse(g);
1020
- if (w.valid) {
1021
- c && (w.data.state = c);
1022
- const p = { detail: w.data };
1018
+ const m = await this.handleCodeExchangeResponse(g);
1019
+ if (m.valid) {
1020
+ c && (m.data.state = c);
1021
+ const p = { detail: m.data };
1023
1022
  window.dispatchEvent(new CustomEvent("onLoginSuccess", p)), window.history.pushState({}, document.title, window.location.pathname);
1024
1023
  } else {
1025
- const p = { detail: w.data };
1024
+ const p = { detail: m.data };
1026
1025
  return window.dispatchEvent(new CustomEvent("onLoginFail", p)), !0;
1027
1026
  }
1028
1027
  }
@@ -1105,8 +1104,8 @@ class NylasSessions {
1105
1104
  return;
1106
1105
  const g = u.location.search;
1107
1106
  if (u.history.pushState({}, document.title, window.location.pathname), y[0] === this.redirectUri && y.length > 1) {
1108
- const w = await this.codeExchange(g);
1109
- u.close(), w && location.reload(), f && clearInterval(f);
1107
+ const m = await this.codeExchange(g);
1108
+ u.close(), m && location.reload(), f && clearInterval(f);
1110
1109
  return;
1111
1110
  }
1112
1111
  } catch {
@@ -1167,16 +1166,16 @@ class NylasSessions {
1167
1166
  const g = await this.getProfile(n.grant_id);
1168
1167
  if (g) {
1169
1168
  g.status = "unauthorized", await this.Storage.setUserToken(g);
1170
- const w = {
1169
+ const m = {
1171
1170
  detail: { user: g }
1172
1171
  };
1173
- window.dispatchEvent(new CustomEvent("onSessionExpired", w));
1172
+ window.dispatchEvent(new CustomEvent("onSessionExpired", m));
1174
1173
  }
1175
1174
  } else {
1176
- const w = {
1175
+ const m = {
1177
1176
  detail: { user: await this.Storage.getUserToken() }
1178
1177
  };
1179
- window.dispatchEvent(new CustomEvent("onSessionExpired", w));
1178
+ window.dispatchEvent(new CustomEvent("onSessionExpired", m));
1180
1179
  }
1181
1180
  this.logout();
1182
1181
  return;
@@ -1189,8 +1188,8 @@ class NylasSessions {
1189
1188
  async fetchRequest(t, n, s, c = !0, a, d) {
1190
1189
  const l = await this.isLoggedIn(), u = new URL(t, a ?? this.domain), f = new Headers();
1191
1190
  if (f.append("Accept", "application/json"), f.append("Content-Type", "application/json"), f.append("User-Agent", "nylas-identity"), l) {
1192
- const w = await this.getAccessToken();
1193
- f.append("Authorization", `Bearer ${w}`);
1191
+ const m = await this.getAccessToken();
1192
+ f.append("Authorization", `Bearer ${m}`);
1194
1193
  }
1195
1194
  const y = await fetch(u.toString(), {
1196
1195
  method: n || "GET",
@@ -1303,8 +1302,8 @@ const LoginRequired = ({ authenticationUrl: r }) => h(
1303
1302
  )
1304
1303
  );
1305
1304
  function ExpressFlow({ selectedConfiguration: r, currentUser: t, calendars: n }) {
1306
- var c;
1307
- const s = ((c = r.participants) == null ? void 0 : c.find((a) => a.is_organizer)) ?? t;
1305
+ var a;
1306
+ const s = ((a = r == null ? void 0 : r.participants) == null ? void 0 : a.find((d) => d.is_organizer)) ?? t, c = n == null ? void 0 : n.find((d) => d.is_primary);
1308
1307
  return h(
1309
1308
  Fragment,
1310
1309
  null,
@@ -1319,12 +1318,12 @@ function ExpressFlow({ selectedConfiguration: r, currentUser: t, calendars: n })
1319
1318
  h("nylas-event-location", { userProvider: t.provider })
1320
1319
  )
1321
1320
  ),
1322
- h("nylas-booking-calendar-picker", { calendars: n, currentUser: t, defaultBookingCalendar: s == null ? void 0 : s.email }),
1321
+ h("nylas-booking-calendar-picker", { calendars: n, currentUser: t, defaultBookingCalendar: (c == null ? void 0 : c.id) || (s == null ? void 0 : s.email) }),
1323
1322
  h("nylas-scheduling-method", { exportparts: "nsm, nsm__header, nsm__input-label, nsm__dropdown, nsm__dropdown-button, nsm__dropdown-content" }),
1324
1323
  h("nylas-custom-event-slug", { name: "custom-event-slug", exportparts: "nces, nces__body, nces__header, nces__drawer-toggle--container, nces__input-textfield" })
1325
1324
  );
1326
1325
  }
1327
- const nylasSchedulerEditorCss = ':host{display:flex;flex-direction:column;overflow:visible;border-radius:var(--nylas-border-radius-2x);width:fit-content;background:var(--nylas-base-0);position:relative;box-shadow:0px 0px 6px -2px rgba(0, 0, 0, 0.05), 0px 5px 15px -3px rgba(0, 0, 0, 0.1);--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}@media screen and (max-width: 768px){:host{width:auto;min-width:325px}}div.scheduler-editor-content{height:610px}div.scheduler-editor-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--nylas-base-200);color:var(--nylas-base-900)}div.scheduler-editor-header h1.scheduler-editor-title{display:flex;align-items:center;gap:0.5rem;width:858px;margin:0;font-size:18px;line-height:24px;font-weight:600}@media screen and (max-width: 768px){div.scheduler-editor-header h1.scheduler-editor-title{width:auto;min-width:calc(325px - 1rem)}}div.scheduler-editor-header button{background:transparent;border:none;cursor:pointer}div.scheduler-editor-header button:hover,div.scheduler-editor-header button:active{color:var(--nylas-primary)}div.scheduler-editor-header button:disabled{cursor:not-allowed}nylas-editor-tabs{width:auto;height:inherit}nylas-editor-tabs .composable{height:inherit;overflow:auto}nylas-editor-tabs nylas-event-info div[slot=inputs],nylas-editor-tabs nylas-event-limits div[slot=inputs]{display:flex;flex-direction:column;gap:1rem}.card{display:flex;flex-direction:column;padding:2rem;background-color:var(--nylas-base-0);border:1px solid var(--nylas-base-200);border-radius:5px;max-width:fit-content;align-self:center}.login-required{height:inherit;overflow-y:auto;display:flex;flex-direction:column;justify-content:center;padding:2rem 1rem;background-color:var(--nylas-base-25);border-radius:var(--nylas-border-radius-2x)}@media screen and (max-width: 768px){.login-required{height:auto}}.login-required p{margin:0 0 1rem}.login-required .microsoft-button,.login-required .google-button{height:48px;border:1px solid var(--nylas-base-300);border-radius:var(--nylas-border-radius-2x);font-size:1rem;line-height:24px;padding:0 1rem;background-color:var(--nylas-base-0);font-weight:600;cursor:pointer;display:flex;margin-bottom:1rem;background-color:var(--nylas-base-0);border:1px solid var(--nylas-base-200);border-radius:5px;justify-content:center;gap:0.5rem;align-items:center}.login-required .microsoft-button:hover,.login-required .google-button:hover{background-color:var(--nylas-base-25)}.login-required .microsoft-button:hover,.login-required .google-button:hover{background-color:var(--nylas-base-25)}.login-required .other-provider-button{height:48px;border:1px solid var(--nylas-base-300);border-radius:var(--nylas-border-radius-2x);font-size:1rem;line-height:24px;padding:0 1rem;background-color:var(--nylas-base-0);font-weight:600;cursor:pointer;display:flex;border:0;background-color:var(--nylas-base-0);height:48px;margin-bottom:1rem;font-size:0.95rem;justify-content:center;gap:0.25rem;align-items:center}.login-required .other-provider-button:hover{background-color:var(--nylas-base-25)}.login-required .other-provider-button svg{transform:rotate(180deg)}.login-required .other-provider-button:hover{background-color:var(--nylas-base-25)}.login-required .disclaimer-text{font-size:0.75rem;color:var(--nylas-base-600);align-self:center}.list-configurations{padding:2rem;height:inherit;background:var(--nylas-base-25);border-radius:var(--nylas-border-radius-2x)}@media screen and (max-width: 768px){.list-configurations{height:auto}}.list-configurations nylas-list-configurations{height:inherit;display:flex;flex-direction:column}', NylasSchedulerEditorStyle0 = nylasSchedulerEditorCss, NylasSchedulerEditor = class {
1326
+ const nylasSchedulerEditorCss = ':host{display:flex;flex-direction:column;overflow:visible;border-radius:var(--nylas-border-radius-2x);width:fit-content;background:var(--nylas-base-0);position:relative;box-shadow:0px 0px 6px -2px rgba(0, 0, 0, 0.05), 0px 5px 15px -3px rgba(0, 0, 0, 0.1);--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}@media screen and (max-width: 768px){:host{width:-moz-available;width:-webkit-fill-available;width:fill-available;min-width:325px}}div.scheduler-editor-content{height:610px}@media screen and (max-width: 768px){div.scheduler-editor-content{height:auto}}div.scheduler-editor-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--nylas-base-200);color:var(--nylas-base-900)}div.scheduler-editor-header h1.scheduler-editor-title{display:flex;align-items:center;gap:0.5rem;width:858px;margin:0;font-size:18px;line-height:24px;font-weight:600}@media screen and (max-width: 768px){div.scheduler-editor-header h1.scheduler-editor-title{width:auto;min-width:calc(325px - 1rem)}}div.scheduler-editor-header button{background:transparent;border:none;cursor:pointer}div.scheduler-editor-header button:hover,div.scheduler-editor-header button:active{color:var(--nylas-primary)}div.scheduler-editor-header button:disabled{cursor:not-allowed}nylas-editor-tabs{width:auto;height:inherit}nylas-editor-tabs .composable{height:inherit;overflow:auto}nylas-editor-tabs nylas-event-info div[slot=inputs],nylas-editor-tabs nylas-event-limits div[slot=inputs]{display:flex;flex-direction:column;gap:1rem}.card{display:flex;flex-direction:column;padding:2rem;background-color:var(--nylas-base-0);border:1px solid var(--nylas-base-200);border-radius:5px;max-width:fit-content;align-self:center}.login-required{height:inherit;overflow-y:auto;display:flex;flex-direction:column;justify-content:center;padding:2rem 1rem;background-color:var(--nylas-base-25);border-radius:var(--nylas-border-radius-2x)}@media screen and (max-width: 768px){.login-required{height:auto}}.login-required p{margin:0 0 1rem}.login-required .microsoft-button,.login-required .google-button{height:48px;border:1px solid var(--nylas-base-300);border-radius:var(--nylas-border-radius-2x);font-size:1rem;line-height:24px;padding:0 1rem;background-color:var(--nylas-base-0);font-weight:600;cursor:pointer;display:flex;margin-bottom:1rem;background-color:var(--nylas-base-0);border:1px solid var(--nylas-base-200);border-radius:5px;justify-content:center;gap:0.5rem;align-items:center}.login-required .microsoft-button:hover,.login-required .google-button:hover{background-color:var(--nylas-base-25)}.login-required .microsoft-button:hover,.login-required .google-button:hover{background-color:var(--nylas-base-25)}.login-required .other-provider-button{height:48px;border:1px solid var(--nylas-base-300);border-radius:var(--nylas-border-radius-2x);font-size:1rem;line-height:24px;padding:0 1rem;background-color:var(--nylas-base-0);font-weight:600;cursor:pointer;display:flex;border:0;background-color:var(--nylas-base-0);height:48px;margin-bottom:1rem;font-size:0.95rem;justify-content:center;gap:0.25rem;align-items:center}.login-required .other-provider-button:hover{background-color:var(--nylas-base-25)}.login-required .other-provider-button svg{transform:rotate(180deg)}.login-required .other-provider-button:hover{background-color:var(--nylas-base-25)}.login-required .disclaimer-text{font-size:0.75rem;color:var(--nylas-base-600);align-self:center}.list-configurations{padding:2rem;height:inherit;background:var(--nylas-base-25);border-radius:var(--nylas-border-radius-2x)}@media screen and (max-width: 768px){.list-configurations{height:auto;padding:2rem 1rem}}.list-configurations nylas-list-configurations{height:inherit;display:flex;flex-direction:column}', NylasSchedulerEditorStyle0 = nylasSchedulerEditorCss, NylasSchedulerEditor = class {
1328
1327
  constructor(r) {
1329
1328
  registerInstance(this, r), this.init = createEvent(this, "init", 7), this.loggedIn = createEvent(this, "loggedIn", 7), this.loggedOut = createEvent(this, "loggedOut", 7), this.schedulerConfigCloseClicked = createEvent(this, "schedulerConfigCloseClicked", 7), this.handleSchedulerConfigCloseClicked = (t) => {
1330
1329
  const n = this.schedulerConfigCloseClicked.emit(this.host);
@@ -1339,12 +1338,12 @@ const nylasSchedulerEditorCss = ':host{display:flex;flex-direction:column;overfl
1339
1338
  debug("[nylas-scheduler-editor] componentWillLoad");
1340
1339
  const r = (s = this.additionalParticipants) == null ? void 0 : s.filter((g) => {
1341
1340
  var p;
1342
- const w = ((p = g.calendars) == null ? void 0 : p.length) > 0 ? g.calendars.filter((m) => m.id && m.name) : [];
1343
- if (g.name && g.email && w.length > 0)
1341
+ const m = ((p = g.calendars) == null ? void 0 : p.length) > 0 ? g.calendars.filter((w) => w.id && w.name) : [];
1342
+ if (g.name && g.email && m.length > 0)
1344
1343
  return {
1345
1344
  name: g.name,
1346
1345
  email: g.email,
1347
- calendars: w
1346
+ calendars: m
1348
1347
  };
1349
1348
  });
1350
1349
  if (this.stores = {
@@ -1358,17 +1357,17 @@ const nylasSchedulerEditorCss = ':host{display:flex;flex-direction:column;overfl
1358
1357
  }, !this.nylasApiRequest && this.nylasSessionsConfig) {
1359
1358
  const g = new NylasSessions(this.nylasSessionsConfig);
1360
1359
  await g.isLoggedIn(), g.onLoginSuccess(async () => {
1361
- var p, m;
1362
- const w = await ((m = (p = this.nylasSchedulerConfigConnector) == null ? void 0 : p.schedulerConfig) == null ? void 0 : m.currentUser());
1363
- if (w) {
1360
+ var p, w;
1361
+ const m = await ((w = (p = this.nylasSchedulerConfigConnector) == null ? void 0 : p.schedulerConfig) == null ? void 0 : w.currentUser());
1362
+ if (m) {
1364
1363
  const S = this.loggedIn.emit(this.host);
1365
- "loggedIn" in this.eventOverrides && await this.eventOverrides.loggedIn(S, this.nylasSchedulerConfigConnector), S.defaultPrevented || await this.loggedInHandler(w);
1364
+ "loggedIn" in this.eventOverrides && await this.eventOverrides.loggedIn(S, this.nylasSchedulerConfigConnector), S.defaultPrevented || await this.loggedInHandler(m);
1366
1365
  }
1367
1366
  }), g.onLoginFail(async () => {
1368
- var p, m;
1369
- (m = (p = this.stores) == null ? void 0 : p.schedulerConfig) == null || m.set("currentUser", null);
1370
- const w = this.loggedOut.emit(this.host);
1371
- "loggedOut" in this.eventOverrides && (await this.eventOverrides.loggedOut(w, this.nylasSchedulerConfigConnector), w.defaultPrevented);
1367
+ var p, w;
1368
+ (w = (p = this.stores) == null ? void 0 : p.schedulerConfig) == null || w.set("currentUser", null);
1369
+ const m = this.loggedOut.emit(this.host);
1370
+ "loggedOut" in this.eventOverrides && (await this.eventOverrides.loggedOut(m, this.nylasSchedulerConfigConnector), m.defaultPrevented);
1372
1371
  }), this.nylasApiRequest = new NylasIdentityRequestWrapper(g);
1373
1372
  }
1374
1373
  this.nylasApiRequest && this.defaultAuthArgs && this.nylasApiRequest.setDefaultAuthArgs(this.defaultAuthArgs), this.baseProvider = new NylasBaseProvider(this.host, this.stores, this.automaticComponentRegistration, this.eventOverrides);
@@ -1381,12 +1380,12 @@ const nylasSchedulerEditorCss = ':host{display:flex;flex-direction:column;overfl
1381
1380
  if ("init" in this.eventOverrides && await this.eventOverrides.init(n, this.nylasSchedulerConfigConnector), !n.defaultPrevented) {
1382
1381
  const g = await ((a = (c = this.nylasSchedulerConfigConnector) == null ? void 0 : c.schedulerConfig) == null ? void 0 : a.currentUser());
1383
1382
  if (g) {
1384
- const w = this.loggedIn.emit(this.host);
1385
- "loggedIn" in this.eventOverrides && await this.eventOverrides.loggedIn(w, this.nylasSchedulerConfigConnector), w.defaultPrevented || await this.loggedInHandler(g);
1383
+ const m = this.loggedIn.emit(this.host);
1384
+ "loggedIn" in this.eventOverrides && await this.eventOverrides.loggedIn(m, this.nylasSchedulerConfigConnector), m.defaultPrevented || await this.loggedInHandler(g);
1386
1385
  } else {
1387
1386
  (l = (d = this.stores) == null ? void 0 : d.schedulerConfig) == null || l.set("currentUser", null);
1388
- const w = this.loggedOut.emit(this.host);
1389
- if ("loggedOut" in this.eventOverrides && (await this.eventOverrides.loggedOut(w, this.nylasSchedulerConfigConnector), w.defaultPrevented))
1387
+ const m = this.loggedOut.emit(this.host);
1388
+ if ("loggedOut" in this.eventOverrides && (await this.eventOverrides.loggedOut(m, this.nylasSchedulerConfigConnector), m.defaultPrevented))
1390
1389
  return;
1391
1390
  }
1392
1391
  }
@@ -1396,11 +1395,11 @@ const nylasSchedulerEditorCss = ':host{display:flex;flex-direction:column;overfl
1396
1395
  }
1397
1396
  async componentDidLoad() {
1398
1397
  var r;
1399
- debug("[nylas-scheduler-editor] componentDidLoad"), (r = this.baseProvider) == null || r.componentDidLoad();
1398
+ debug("[nylas-scheduler-editor] componentDidLoad"), await ((r = this.baseProvider) == null ? void 0 : r.componentDidLoad());
1400
1399
  }
1401
- componentDisconnected() {
1400
+ async componentDisconnected() {
1402
1401
  var r;
1403
- (r = this.baseProvider) == null || r.componentDisconnected();
1402
+ await ((r = this.baseProvider) == null ? void 0 : r.componentDisconnected());
1404
1403
  }
1405
1404
  async configurationIdChanged(r) {
1406
1405
  var t, n, s, c, a, d, l, u;
@@ -1429,8 +1428,9 @@ const nylasSchedulerEditorCss = ':host{display:flex;flex-direction:column;overfl
1429
1428
  }
1430
1429
  }
1431
1430
  render() {
1432
- var r, t, n, s, c, a, d, l, u, f, y, g, w, p, m, S;
1433
- return h(Host, { key: "cf37fcf4f16628b3bb60faf53b3ce40ac92abe50" }, h("div", { key: "964e522aea50d644a1881699ba4ecd0bcc53d39e", class: "scheduler-editor-header", part: "nse__header" }, h("h1", { key: "0ed5df6275a84f9867658ee595c30636c2be6548", class: "scheduler-editor-title", part: "nse__title" }, h("calendar-icon", { key: "fa00ebc65af656b81d2e9100b5bed510c0f293c7", width: "18", height: "18" }), "Scheduler Editor"), h("button", { key: "c6178921ae812fa73ea16d63c4ad30c323b48e9c", class: "scheduler-editor-close", title: "logout", onClick: (x) => this.handleSchedulerConfigCloseClicked(x), part: "nse__close-button" }, h("close-icon", { key: "08393fce33207f1d468d3b15ddeb53051800a488", width: "18", height: "18" }))), h("div", { key: "fac27d5f8f0a46149bf80ebe80ec6c1344d77d23", class: "scheduler-editor-content", part: "nse__content" }, ((t = (r = this.stores) == null ? void 0 : r.schedulerConfig) == null ? void 0 : t.state.currentUser) && this.stores.schedulerConfig.state.action === null && h("div", { class: "list-configurations" }, h("nylas-list-configurations", { exportparts: "nlc__create-new-cta" })), ((s = (n = this.stores) == null ? void 0 : n.schedulerConfig) == null ? void 0 : s.state.currentUser) && this.stores.schedulerConfig.state.action === "create" && h("nylas-editor-tabs", { mode: "composable" }, h(ExpressFlow, { currentUser: (a = (c = this.stores) == null ? void 0 : c.schedulerConfig) == null ? void 0 : a.state.currentUser, calendars: (u = (l = (d = this.stores) == null ? void 0 : d.schedulerConfig) == null ? void 0 : l.state) == null ? void 0 : u.calendars, selectedConfiguration: (g = (y = (f = this.stores) == null ? void 0 : f.schedulerConfig) == null ? void 0 : y.state) == null ? void 0 : g.selectedConfiguration })), ((p = (w = this.stores) == null ? void 0 : w.schedulerConfig) == null ? void 0 : p.state.currentUser) && this.stores.schedulerConfig.state.action === "edit" && h("nylas-editor-tabs", { mode: this.mode }, this.mode === "composable" && h("slot", null)), !((S = (m = this.stores) == null ? void 0 : m.schedulerConfig) != null && S.state.currentUser) && h("slot", { name: "login-required" }, h(LoginRequired, { authenticationUrl: this.authenticationUrl }))));
1431
+ var n, s, c, a, d, l, u, f, y, g, m, p, w, S, x, v, R, _, T;
1432
+ const r = this.host.querySelector('[slot="custom-page-style-inputs"]'), t = (c = (s = (n = this.stores) == null ? void 0 : n.schedulerConfig) == null ? void 0 : s.state.selectedConfiguration) == null ? void 0 : c.id;
1433
+ return h(Host, { key: "e3716df4b6320311046af1b529ee494c9b16c782" }, h("div", { key: "1e33292840f2906cfe0f0d4519192851e18d0ce7", class: "scheduler-editor-header", part: "nse__header" }, h("h1", { key: "830100ac6a1f5c369a6e665f4fe2ea458bf5b44f", class: "scheduler-editor-title", part: "nse__title" }, h("calendar-icon", { key: "b69dafa07a0af6fae4e1f57be7c98221bc8fc237", width: "18", height: "18" }), "Scheduler Editor"), h("button", { key: "c2e4c17d62f67c8c4011a8f41357481bd17eb883", class: "scheduler-editor-close", title: "logout", onClick: (k) => this.handleSchedulerConfigCloseClicked(k), part: "nse__close-button" }, h("close-icon", { key: "74eb653f9b8fea4a7c3669f7a707a5ebaa18d8d1", width: "18", height: "18" }))), h("div", { key: "33273e52377ec5b88672ed66db2a43ceab01b583", class: "scheduler-editor-content", part: "nse__content" }, ((d = (a = this.stores) == null ? void 0 : a.schedulerConfig) == null ? void 0 : d.state.currentUser) && this.stores.schedulerConfig.state.action === null && h("div", { class: "list-configurations" }, h("nylas-list-configurations", { exportparts: "nlc__create-new-cta" })), ((u = (l = this.stores) == null ? void 0 : l.schedulerConfig) == null ? void 0 : u.state.currentUser) && this.stores.schedulerConfig.state.action === "create" && h("nylas-editor-tabs", { mode: "composable" }, h(ExpressFlow, { currentUser: (y = (f = this.stores) == null ? void 0 : f.schedulerConfig) == null ? void 0 : y.state.currentUser, calendars: (p = (m = (g = this.stores) == null ? void 0 : g.schedulerConfig) == null ? void 0 : m.state) == null ? void 0 : p.calendars, selectedConfiguration: (x = (S = (w = this.stores) == null ? void 0 : w.schedulerConfig) == null ? void 0 : S.state) == null ? void 0 : x.selectedConfiguration })), ((R = (v = this.stores) == null ? void 0 : v.schedulerConfig) == null ? void 0 : R.state.currentUser) && this.stores.schedulerConfig.state.action === "edit" && h("nylas-editor-tabs", { key: t, mode: this.mode }, this.mode === "composable" && h("slot", null), this.mode === "app" && r && h("div", { style: { display: "none" }, slot: "custom-page-style-inputs", key: t }, h("slot", { name: "custom-page-style-inputs" }))), !((T = (_ = this.stores) == null ? void 0 : _.schedulerConfig) != null && T.state.currentUser) && h("slot", { name: "login-required" }, h(LoginRequired, { authenticationUrl: this.authenticationUrl }))));
1434
1434
  }
1435
1435
  get host() {
1436
1436
  return getElement(this);
@@ -0,0 +1,2 @@
1
+ "use strict";var U=Object.defineProperty;var P=(r,t,n)=>t in r?U(r,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):r[t]=n;var S=(r,t,n)=>(P(r,typeof t!="symbol"?t+"":t,n),n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const index=require("./index-c4e817ef.cjs"),index_es79f5b771=require("./index.es-79f5b771-08cc349d.cjs"),schedulerConfigStore2a3b403d=require("./scheduler-config-store-2a3b403d-88840eb1.cjs");require("react");require("react-dom");class NylasSchedulerConfigAPIConnector{constructor({nylasApiRequest:t,nylasSchedulerConfigStore:n}){this.nylasApiRequest=t,this.nylasSchedulerConfigStore=n}async currentUser(){return this.nylasApiRequest?this.nylasApiRequest.currentUser():(console.warn("Nylas API Request is not initialized"),null)}async getCalendars(){var s;if(!this.nylasApiRequest)return console.warn("Nylas API Request is not initialized"),index.dataResponse(null,{message:"Error fetching calendars: Nylas API Request is not initialized"});const[t,n]=await this.nylasApiRequest.request({method:"GET",path:"calendars"});return n?index.dataResponse(null,{message:"Error fetching calendars: "+n.message}):index_es79f5b771.Xr(t)?index.dataResponse(null,{message:"Error fetching calendars: "+((s=t.error)==null?void 0:s.message)}):(this.nylasSchedulerConfigStore.state.calendars=t.data,index.dataResponse(t.data))}async getConfigurationById(t,n=!1){var a;if(!this.nylasApiRequest)return console.warn("Nylas API Request is not initialized"),index.dataResponse(null,{message:"Error fetching configuration: Nylas API Request is not initialized"});if(!n){const l=this.nylasSchedulerConfigStore.state.configurations.find(d=>d.id===t);if(l)return this.nylasSchedulerConfigStore.state.selectedConfiguration=l,index.dataResponse(l)}const[s,c]=await this.nylasApiRequest.request({method:"GET",path:`scheduling/configurations/${t}`});return c?index.dataResponse(null,{message:"Error fetching configuration: "+c.message}):index_es79f5b771.Xr(s)?index.dataResponse(null,{message:"Error fetching configuration: "+((a=s.error)==null?void 0:a.message)}):(this.nylasSchedulerConfigStore.state.selectedConfiguration=s.data,this.nylasSchedulerConfigStore.state.configurations.find(l=>l.id===t)?this.nylasSchedulerConfigStore.state.configurations=this.nylasSchedulerConfigStore.state.configurations.map(l=>l.id===t?s.data:l):this.nylasSchedulerConfigStore.state.configurations=[...this.nylasSchedulerConfigStore.state.configurations,s.data],index.dataResponse(s.data))}async getConfigurations(t){var a;if(!this.nylasApiRequest)return console.warn("Nylas API Request is not initialized"),index.dataResponse(null,{message:"Error fetching configurations: Nylas API Request is not initialized"});const n=50,[s,c]=await this.nylasApiRequest.request({method:"GET",path:`scheduling/configurations?limit=${n}${t?`&page_token=${t}`:""}`});return c?index.dataResponse(null,{message:"Error fetching configurations: "+c.message}):index_es79f5b771.Xr(s)?index.dataResponse(null,{message:"Error fetching configurations: "+((a=s.error)==null?void 0:a.message)}):(this.nylasSchedulerConfigStore.state.configurations=s.data,this.nylasSchedulerConfigStore.state.listConfigurationsNextCursor=s.next_cursor||null,index.dataResponse(s.data))}async createConfiguration(t){var c;if(!this.nylasApiRequest)return console.warn("Nylas API Request is not initialized"),index.dataResponse(null,{message:"Error creating configuration: Nylas API Request is not initialized"});const[n,s]=await this.nylasApiRequest.request({method:"POST",path:"scheduling/configurations",body:t});return s?index.dataResponse(null,{message:"Error creating configuration: "+s.message}):index_es79f5b771.Xr(n)?index.dataResponse(null,{message:"Error creating configuration: "+((c=n.error)==null?void 0:c.message)}):(this.nylasSchedulerConfigStore.state.selectedConfiguration=n.data,this.nylasSchedulerConfigStore.state.configurations=[...this.nylasSchedulerConfigStore.state.configurations,n.data],index.dataResponse(n.data))}async updateConfiguration(t){var c;if(!this.nylasApiRequest)return console.warn("Nylas API Request is not initialized"),index.dataResponse(null,{message:"Error updating configuration: Nylas API Request is not initialized"});const[n,s]=await this.nylasApiRequest.request({method:"PUT",path:`scheduling/configurations/${t.id}`,body:t});return s?index.dataResponse(null,{message:"Error updating configuration: "+s.message}):index_es79f5b771.Xr(n)?index.dataResponse(null,{message:"Error updating configuration: "+((c=n.error)==null?void 0:c.message)}):(this.nylasSchedulerConfigStore.state.selectedConfiguration=n.data,this.nylasSchedulerConfigStore.state.configurations.find(a=>a.id===t.id)?this.nylasSchedulerConfigStore.state.configurations=this.nylasSchedulerConfigStore.state.configurations.map(a=>a.id===t.id?n.data:a):this.nylasSchedulerConfigStore.state.configurations=[...this.nylasSchedulerConfigStore.state.configurations,n.data],index.dataResponse(n.data))}async deleteConfiguration(t){var c,a;if(!this.nylasApiRequest)return console.warn("Nylas API Request is not initialized"),index.dataResponse(null,{message:"Error deleting configuration: Nylas API Request is not initialized"});const[n,s]=await this.nylasApiRequest.request({method:"DELETE",path:`scheduling/configurations/${t}`});return s?index.dataResponse(null,{message:"Error deleting configuration: "+s.message}):index_es79f5b771.Xr(n)?index.dataResponse(null,{message:"Error deleting configuration: "+((c=n.error)==null?void 0:c.message)}):(this.nylasSchedulerConfigStore.state.configurations=this.nylasSchedulerConfigStore.state.configurations.filter(l=>l.id!==t),((a=this.nylasSchedulerConfigStore.state.selectedConfiguration)==null?void 0:a.id)===t&&this.nylasSchedulerConfigStore.resetSelectedConfiguration(),index.dataResponse(n.data))}}class NylasSchedulerConfigConnector{constructor({nylasApiRequest:t,nylasSchedulerConfigStore:n}){this.nylasApiRequest=t,this.nylasSchedulerConfigStore=n}init(){index.debug("NylasSchedulerConfigConnector init")}get schedulerConfigStore(){return this.nylasSchedulerConfigStore}get schedulerConfig(){return this._schedulerConfigConnector?this._schedulerConfigConnector:(this._schedulerConfigConnector=new NylasSchedulerConfigAPIConnector({nylasApiRequest:this.nylasApiRequest,nylasSchedulerConfigStore:this.nylasSchedulerConfigStore}),this._schedulerConfigConnector)}resetStores(){index.debug("NylasSchedulerConfigConnector resetStores"),this.nylasSchedulerConfigStore.reset()}async logout(){index.debug("NylasSchedulerConfigConnector logout"),this.resetStores()}}class LocalStorage{get(t){return new Promise(n=>{const s=window.localStorage.getItem(t);n(s?JSON.parse(s):null)})}async remove(t){return window.localStorage.removeItem(t),new Promise(n=>{n(null)})}set(t,n){return window.localStorage.setItem(t,JSON.stringify(n)),new Promise(s=>{s(null)})}}const PKCE_KEY="pkce",GRANT_KEY="grant",USER_KEY="user";class Storage{constructor(t){S(this,"Storage",new LocalStorage);if(t){this.Storage=t;return}}setPKCE(t){const n=index.Buffer.from(t);this.Storage.set(PKCE_KEY,n.toString("base64"))}async getPKCE(){try{const t=await this.Storage.get(PKCE_KEY);if(t)return index.Buffer.from(t,"base64").toString("utf8")}catch{return null}return null}removePKCE(){this.Storage.remove(PKCE_KEY)}setGrant(t,n=!1){const{grant_id:s}=t;this.Storage.set(`${GRANT_KEY}${n?"-"+s:""}`,t)}removeGrant(t,n=!1){this.Storage.remove(`${GRANT_KEY}${n?"-"+t:""}`)}async getGrant(t,n=!1){const s=await this.Storage.get(`${GRANT_KEY}${n?"-"+t:""}`);return s||null}async setUserToken(t){const n=await this.getUserTokens();if(n)if(n.find(c=>c.sub===t.sub)){const c=n.map(a=>(a.sub===t.sub&&(a=t),a));this.Storage.set(USER_KEY,c)}else{const c=[...n,t];this.Storage.set(USER_KEY,c)}else this.Storage.set(USER_KEY,[t])}async getUserToken(t=""){const n=await this.Storage.get(USER_KEY);return n?t===""?n[0]:n.find(c=>c.sub===t):null}async getUserTokens(){const t=await this.Storage.get(USER_KEY);return t||null}removeUserTokens(){this.Storage.remove(USER_KEY)}async removeUserToken(t){const n=await this.getUserTokens(),s=n==null?void 0:n.filter(c=>c.sub!==t);this.Storage.set(USER_KEY,s)}async clearSession(){const t=await this.getUserTokens();t==null||t.forEach(n=>{this.removeGrant(n.sub)}),this.removePKCE(),this.removeUserTokens()}}class IndexedDBStorage{constructor(){S(this,"databaseName","identity-db");S(this,"storeName","identity")}get(t){const n=this;return new Promise((s,c)=>{n.openDatabase().then(function(a){const l=a.transaction(n.storeName,"readwrite"),h=l.objectStore(n.storeName).get(t);h.onsuccess=()=>{s(h.result)},h.onerror=()=>{c(h.error)},l.oncomplete=()=>{a.close()}})})}async remove(t){const n=this;return new Promise((s,c)=>{const a=indexedDB.open(this.databaseName);a.onupgradeneeded=function(l){l.target.result.createObjectStore(n.storeName)},a.onerror=()=>{c(a.error)},a.onsuccess=l=>{const d=l.target.result,h=d.transaction(this.storeName,"readwrite"),p=h.objectStore(this.storeName).delete(t);p.onsuccess=()=>{s(null)},p.onerror=()=>{c(p.error)},h.oncomplete=()=>{d.close()}}})}set(t,n){return new Promise((s,c)=>{const a=indexedDB.open(this.databaseName);a.onerror=()=>{c(a.error)},a.onupgradeneeded=l=>{l.target.result.createObjectStore(this.storeName)},a.onsuccess=l=>{const d=l.target.result,h=d.transaction(this.storeName,"readwrite"),p=h.objectStore(this.storeName).put(n,t);p.onsuccess=()=>{s(n)},p.onerror=()=>{c(p.error)},h.oncomplete=()=>{d.close()}}})}openDatabase(){const t=this;return new Promise(function(n,s){const c=indexedDB.open(t.databaseName,2);c.onupgradeneeded=function(a){a.target.result.createObjectStore(t.storeName)},c.onsuccess=function(a){n(a.target.result)},c.onerror=function(a){s(a.error)}})}}var sha256={exports:{}};(function(module){(function(){var ERROR="input is invalid type",WINDOW=typeof window=="object",root=WINDOW?window:{};root.JS_SHA256_NO_WINDOW&&(WINDOW=!1);var WEB_WORKER=!WINDOW&&typeof self=="object",NODE_JS=!root.JS_SHA256_NO_NODE_JS&&typeof index.process=="object"&&index.process.versions&&index.process.versions.node;NODE_JS?root=index.commonjsGlobal:WEB_WORKER&&(root=self);var COMMON_JS=!root.JS_SHA256_NO_COMMON_JS&&!0&&module.exports,ARRAY_BUFFER=!root.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",HEX_CHARS="0123456789abcdef".split(""),EXTRA=[-2147483648,8388608,32768,128],SHIFT=[24,16,8,0],K=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],OUTPUT_TYPES=["hex","array","digest","arrayBuffer"],blocks=[];(root.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(r){return Object.prototype.toString.call(r)==="[object Array]"}),ARRAY_BUFFER&&(root.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(r){return typeof r=="object"&&r.buffer&&r.buffer.constructor===ArrayBuffer});var createOutputMethod=function(r,t){return function(n){return new Sha256(t,!0).update(n)[r]()}},createMethod=function(r){var t=createOutputMethod("hex",r);NODE_JS&&(t=nodeWrap(t,r)),t.create=function(){return new Sha256(r)},t.update=function(c){return t.create().update(c)};for(var n=0;n<OUTPUT_TYPES.length;++n){var s=OUTPUT_TYPES[n];t[s]=createOutputMethod(s,r)}return t},nodeWrap=function(method,is224){var crypto=eval("require('crypto')"),Buffer=eval("require('buffer').Buffer"),algorithm=is224?"sha224":"sha256",nodeMethod=function(r){if(typeof r=="string")return crypto.createHash(algorithm).update(r,"utf8").digest("hex");if(r==null)throw new Error(ERROR);return r.constructor===ArrayBuffer&&(r=new Uint8Array(r)),Array.isArray(r)||ArrayBuffer.isView(r)||r.constructor===Buffer?crypto.createHash(algorithm).update(new Buffer(r)).digest("hex"):method(r)};return nodeMethod},createHmacOutputMethod=function(r,t){return function(n,s){return new HmacSha256(n,t,!0).update(s)[r]()}},createHmacMethod=function(r){var t=createHmacOutputMethod("hex",r);t.create=function(c){return new HmacSha256(c,r)},t.update=function(c,a){return t.create(c).update(a)};for(var n=0;n<OUTPUT_TYPES.length;++n){var s=OUTPUT_TYPES[n];t[s]=createHmacOutputMethod(s,r)}return t};function Sha256(r,t){t?(blocks[0]=blocks[16]=blocks[1]=blocks[2]=blocks[3]=blocks[4]=blocks[5]=blocks[6]=blocks[7]=blocks[8]=blocks[9]=blocks[10]=blocks[11]=blocks[12]=blocks[13]=blocks[14]=blocks[15]=0,this.blocks=blocks):this.blocks=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],r?(this.h0=3238371032,this.h1=914150663,this.h2=812702999,this.h3=4144912697,this.h4=4290775857,this.h5=1750603025,this.h6=1694076839,this.h7=3204075428):(this.h0=1779033703,this.h1=3144134277,this.h2=1013904242,this.h3=2773480762,this.h4=1359893119,this.h5=2600822924,this.h6=528734635,this.h7=1541459225),this.block=this.start=this.bytes=this.hBytes=0,this.finalized=this.hashed=!1,this.first=!0,this.is224=r}Sha256.prototype.update=function(r){if(!this.finalized){var t,n=typeof r;if(n!=="string"){if(n==="object"){if(r===null)throw new Error(ERROR);if(ARRAY_BUFFER&&r.constructor===ArrayBuffer)r=new Uint8Array(r);else if(!Array.isArray(r)&&(!ARRAY_BUFFER||!ArrayBuffer.isView(r)))throw new Error(ERROR)}else throw new Error(ERROR);t=!0}for(var s,c=0,a,l=r.length,d=this.blocks;c<l;){if(this.hashed&&(this.hashed=!1,d[0]=this.block,d[16]=d[1]=d[2]=d[3]=d[4]=d[5]=d[6]=d[7]=d[8]=d[9]=d[10]=d[11]=d[12]=d[13]=d[14]=d[15]=0),t)for(a=this.start;c<l&&a<64;++c)d[a>>2]|=r[c]<<SHIFT[a++&3];else for(a=this.start;c<l&&a<64;++c)s=r.charCodeAt(c),s<128?d[a>>2]|=s<<SHIFT[a++&3]:s<2048?(d[a>>2]|=(192|s>>6)<<SHIFT[a++&3],d[a>>2]|=(128|s&63)<<SHIFT[a++&3]):s<55296||s>=57344?(d[a>>2]|=(224|s>>12)<<SHIFT[a++&3],d[a>>2]|=(128|s>>6&63)<<SHIFT[a++&3],d[a>>2]|=(128|s&63)<<SHIFT[a++&3]):(s=65536+((s&1023)<<10|r.charCodeAt(++c)&1023),d[a>>2]|=(240|s>>18)<<SHIFT[a++&3],d[a>>2]|=(128|s>>12&63)<<SHIFT[a++&3],d[a>>2]|=(128|s>>6&63)<<SHIFT[a++&3],d[a>>2]|=(128|s&63)<<SHIFT[a++&3]);this.lastByteIndex=a,this.bytes+=a-this.start,a>=64?(this.block=d[16],this.start=a-64,this.hash(),this.hashed=!0):this.start=a}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}},Sha256.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var r=this.blocks,t=this.lastByteIndex;r[16]=this.block,r[t>>2]|=EXTRA[t&3],this.block=r[16],t>=56&&(this.hashed||this.hash(),r[0]=this.block,r[16]=r[1]=r[2]=r[3]=r[4]=r[5]=r[6]=r[7]=r[8]=r[9]=r[10]=r[11]=r[12]=r[13]=r[14]=r[15]=0),r[14]=this.hBytes<<3|this.bytes>>>29,r[15]=this.bytes<<3,this.hash()}},Sha256.prototype.hash=function(){var r=this.h0,t=this.h1,n=this.h2,s=this.h3,c=this.h4,a=this.h5,l=this.h6,d=this.h7,h=this.blocks,u,p,f,y,g,x,w,m,b,v,_;for(u=16;u<64;++u)g=h[u-15],p=(g>>>7|g<<25)^(g>>>18|g<<14)^g>>>3,g=h[u-2],f=(g>>>17|g<<15)^(g>>>19|g<<13)^g>>>10,h[u]=h[u-16]+p+h[u-7]+f<<0;for(_=t&n,u=0;u<64;u+=4)this.first?(this.is224?(m=300032,g=h[0]-1413257819,d=g-150054599<<0,s=g+24177077<<0):(m=704751109,g=h[0]-210244248,d=g-1521486534<<0,s=g+143694565<<0),this.first=!1):(p=(r>>>2|r<<30)^(r>>>13|r<<19)^(r>>>22|r<<10),f=(c>>>6|c<<26)^(c>>>11|c<<21)^(c>>>25|c<<7),m=r&t,y=m^r&n^_,w=c&a^~c&l,g=d+f+w+K[u]+h[u],x=p+y,d=s+g<<0,s=g+x<<0),p=(s>>>2|s<<30)^(s>>>13|s<<19)^(s>>>22|s<<10),f=(d>>>6|d<<26)^(d>>>11|d<<21)^(d>>>25|d<<7),b=s&r,y=b^s&t^m,w=d&c^~d&a,g=l+f+w+K[u+1]+h[u+1],x=p+y,l=n+g<<0,n=g+x<<0,p=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),f=(l>>>6|l<<26)^(l>>>11|l<<21)^(l>>>25|l<<7),v=n&s,y=v^n&r^b,w=l&d^~l&c,g=a+f+w+K[u+2]+h[u+2],x=p+y,a=t+g<<0,t=g+x<<0,p=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),f=(a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7),_=t&n,y=_^t&s^v,w=a&l^~a&d,g=c+f+w+K[u+3]+h[u+3],x=p+y,c=r+g<<0,r=g+x<<0;this.h0=this.h0+r<<0,this.h1=this.h1+t<<0,this.h2=this.h2+n<<0,this.h3=this.h3+s<<0,this.h4=this.h4+c<<0,this.h5=this.h5+a<<0,this.h6=this.h6+l<<0,this.h7=this.h7+d<<0},Sha256.prototype.hex=function(){this.finalize();var r=this.h0,t=this.h1,n=this.h2,s=this.h3,c=this.h4,a=this.h5,l=this.h6,d=this.h7,h=HEX_CHARS[r>>28&15]+HEX_CHARS[r>>24&15]+HEX_CHARS[r>>20&15]+HEX_CHARS[r>>16&15]+HEX_CHARS[r>>12&15]+HEX_CHARS[r>>8&15]+HEX_CHARS[r>>4&15]+HEX_CHARS[r&15]+HEX_CHARS[t>>28&15]+HEX_CHARS[t>>24&15]+HEX_CHARS[t>>20&15]+HEX_CHARS[t>>16&15]+HEX_CHARS[t>>12&15]+HEX_CHARS[t>>8&15]+HEX_CHARS[t>>4&15]+HEX_CHARS[t&15]+HEX_CHARS[n>>28&15]+HEX_CHARS[n>>24&15]+HEX_CHARS[n>>20&15]+HEX_CHARS[n>>16&15]+HEX_CHARS[n>>12&15]+HEX_CHARS[n>>8&15]+HEX_CHARS[n>>4&15]+HEX_CHARS[n&15]+HEX_CHARS[s>>28&15]+HEX_CHARS[s>>24&15]+HEX_CHARS[s>>20&15]+HEX_CHARS[s>>16&15]+HEX_CHARS[s>>12&15]+HEX_CHARS[s>>8&15]+HEX_CHARS[s>>4&15]+HEX_CHARS[s&15]+HEX_CHARS[c>>28&15]+HEX_CHARS[c>>24&15]+HEX_CHARS[c>>20&15]+HEX_CHARS[c>>16&15]+HEX_CHARS[c>>12&15]+HEX_CHARS[c>>8&15]+HEX_CHARS[c>>4&15]+HEX_CHARS[c&15]+HEX_CHARS[a>>28&15]+HEX_CHARS[a>>24&15]+HEX_CHARS[a>>20&15]+HEX_CHARS[a>>16&15]+HEX_CHARS[a>>12&15]+HEX_CHARS[a>>8&15]+HEX_CHARS[a>>4&15]+HEX_CHARS[a&15]+HEX_CHARS[l>>28&15]+HEX_CHARS[l>>24&15]+HEX_CHARS[l>>20&15]+HEX_CHARS[l>>16&15]+HEX_CHARS[l>>12&15]+HEX_CHARS[l>>8&15]+HEX_CHARS[l>>4&15]+HEX_CHARS[l&15];return this.is224||(h+=HEX_CHARS[d>>28&15]+HEX_CHARS[d>>24&15]+HEX_CHARS[d>>20&15]+HEX_CHARS[d>>16&15]+HEX_CHARS[d>>12&15]+HEX_CHARS[d>>8&15]+HEX_CHARS[d>>4&15]+HEX_CHARS[d&15]),h},Sha256.prototype.toString=Sha256.prototype.hex,Sha256.prototype.digest=function(){this.finalize();var r=this.h0,t=this.h1,n=this.h2,s=this.h3,c=this.h4,a=this.h5,l=this.h6,d=this.h7,h=[r>>24&255,r>>16&255,r>>8&255,r&255,t>>24&255,t>>16&255,t>>8&255,t&255,n>>24&255,n>>16&255,n>>8&255,n&255,s>>24&255,s>>16&255,s>>8&255,s&255,c>>24&255,c>>16&255,c>>8&255,c&255,a>>24&255,a>>16&255,a>>8&255,a&255,l>>24&255,l>>16&255,l>>8&255,l&255];return this.is224||h.push(d>>24&255,d>>16&255,d>>8&255,d&255),h},Sha256.prototype.array=Sha256.prototype.digest,Sha256.prototype.arrayBuffer=function(){this.finalize();var r=new ArrayBuffer(this.is224?28:32),t=new DataView(r);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),r};function HmacSha256(r,t,n){var s,c=typeof r;if(c==="string"){var a=[],l=r.length,d=0,h;for(s=0;s<l;++s)h=r.charCodeAt(s),h<128?a[d++]=h:h<2048?(a[d++]=192|h>>6,a[d++]=128|h&63):h<55296||h>=57344?(a[d++]=224|h>>12,a[d++]=128|h>>6&63,a[d++]=128|h&63):(h=65536+((h&1023)<<10|r.charCodeAt(++s)&1023),a[d++]=240|h>>18,a[d++]=128|h>>12&63,a[d++]=128|h>>6&63,a[d++]=128|h&63);r=a}else if(c==="object"){if(r===null)throw new Error(ERROR);if(ARRAY_BUFFER&&r.constructor===ArrayBuffer)r=new Uint8Array(r);else if(!Array.isArray(r)&&(!ARRAY_BUFFER||!ArrayBuffer.isView(r)))throw new Error(ERROR)}else throw new Error(ERROR);r.length>64&&(r=new Sha256(t,!0).update(r).array());var u=[],p=[];for(s=0;s<64;++s){var f=r[s]||0;u[s]=92^f,p[s]=54^f}Sha256.call(this,t,n),this.update(p),this.oKeyPad=u,this.inner=!0,this.sharedMemory=n}HmacSha256.prototype=new Sha256,HmacSha256.prototype.finalize=function(){if(Sha256.prototype.finalize.call(this),this.inner){this.inner=!1;var r=this.array();Sha256.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(r),Sha256.prototype.finalize.call(this)}};var exports=createMethod();exports.sha256=exports,exports.sha224=createMethod(!0),exports.sha256.hmac=createHmacMethod(),exports.sha224.hmac=createHmacMethod(!0),COMMON_JS?module.exports=exports:(root.sha256=exports.sha256,root.sha224=exports.sha224)})()})(sha256);var getRandomValues,rnds8=new Uint8Array(16);function rng(){if(!getRandomValues&&(getRandomValues=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||typeof msCrypto<"u"&&typeof msCrypto.getRandomValues=="function"&&msCrypto.getRandomValues.bind(msCrypto),!getRandomValues))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return getRandomValues(rnds8)}const REGEX=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function validate(r){return typeof r=="string"&&REGEX.test(r)}var byteToHex=[];for(var i=0;i<256;++i)byteToHex.push((i+256).toString(16).substr(1));function stringify(r){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=(byteToHex[r[t+0]]+byteToHex[r[t+1]]+byteToHex[r[t+2]]+byteToHex[r[t+3]]+"-"+byteToHex[r[t+4]]+byteToHex[r[t+5]]+"-"+byteToHex[r[t+6]]+byteToHex[r[t+7]]+"-"+byteToHex[r[t+8]]+byteToHex[r[t+9]]+"-"+byteToHex[r[t+10]]+byteToHex[r[t+11]]+byteToHex[r[t+12]]+byteToHex[r[t+13]]+byteToHex[r[t+14]]+byteToHex[r[t+15]]).toLowerCase();if(!validate(n))throw TypeError("Stringified UUID is invalid");return n}function v4(r,t,n){r=r||{};var s=r.random||(r.rng||rng)();if(s[6]=s[6]&15|64,s[8]=s[8]&63|128,t){n=n||0;for(var c=0;c<16;++c)t[n+c]=s[c];return t}return stringify(s)}async function getBytes(r,t){const n=r.getReader();let s;for(;!(s=await n.read()).done;)t(s.value)}function getLines(r){let t,n,s,c=!1;return function(l){t===void 0?(t=l,n=0,s=-1):t=concat(t,l);const d=t.length;let h=0;for(;n<d;){c&&(t[n]===10&&(h=++n),c=!1);let u=-1;for(;n<d&&u===-1;++n)switch(t[n]){case 58:s===-1&&(s=n-h);break;case 13:c=!0;case 10:u=n;break}if(u===-1)break;r(t.subarray(h,u),s),h=n,s=-1}h===d?t=void 0:h!==0&&(t=t.subarray(h),n-=h)}}function getMessages(r,t,n){let s=newMessage();const c=new TextDecoder;return function(l,d){if(l.length===0)n==null||n(s),s=newMessage();else if(d>0){const h=c.decode(l.subarray(0,d)),u=d+(l[d+1]===32?2:1),p=c.decode(l.subarray(u));switch(h){case"data":s.data=s.data?s.data+`
2
+ `+p:p;break;case"event":s.event=p;break;case"id":r(s.id=p);break;case"retry":const f=parseInt(p,10);isNaN(f)||t(s.retry=f);break}}}}function concat(r,t){const n=new Uint8Array(r.length+t.length);return n.set(r),n.set(t,r.length),n}function newMessage(){return{data:"",event:"",id:"",retry:void 0}}var __rest=function(r,t){var n={};for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&t.indexOf(s)<0&&(n[s]=r[s]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var c=0,s=Object.getOwnPropertySymbols(r);c<s.length;c++)t.indexOf(s[c])<0&&Object.prototype.propertyIsEnumerable.call(r,s[c])&&(n[s[c]]=r[s[c]]);return n};const EventStreamContentType="text/event-stream",DefaultRetryInterval=1e3,LastEventId="last-event-id";function fetchEventSource(r,t){var{signal:n,headers:s,onopen:c,onmessage:a,onclose:l,onerror:d,openWhenHidden:h,fetch:u}=t,p=__rest(t,["signal","headers","onopen","onmessage","onclose","onerror","openWhenHidden","fetch"]);return new Promise((f,y)=>{const g=Object.assign({},s);g.accept||(g.accept=EventStreamContentType);let x;function w(){x.abort(),document.hidden||A()}h||document.addEventListener("visibilitychange",w);let m=DefaultRetryInterval,b=0;function v(){document.removeEventListener("visibilitychange",w),window.clearTimeout(b),x.abort()}n==null||n.addEventListener("abort",()=>{v(),f()});const _=u??window.fetch,k=c??defaultOnOpen;async function A(){var I;x=new AbortController;try{const T=await _(r,Object.assign(Object.assign({},p),{headers:g,signal:x.signal}));await k(T),await getBytes(T.body,getLines(getMessages(R=>{R?g[LastEventId]=R:delete g[LastEventId]},R=>{m=R},a))),l==null||l(),v(),f()}catch(T){if(!x.signal.aborted)try{const R=(I=d==null?void 0:d(T))!==null&&I!==void 0?I:m;window.clearTimeout(b),b=window.setTimeout(A,R)}catch(R){v(),y(R)}}}A()})}function defaultOnOpen(r){const t=r.headers.get("content-type");if(!(t!=null&&t.startsWith(EventStreamContentType)))throw new Error(`Expected content-type to be ${EventStreamContentType}, Actual: ${t}`)}function Base64EncodeUrl(r){return r.replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function getTimestamp(){return Math.floor(Date.now()/1e3)}function e(r){this.message=r}e.prototype=new Error,e.prototype.name="InvalidCharacterError";var r$1=typeof window<"u"&&window.atob&&window.atob.bind(window)||function(r){var t=String(r).replace(/=+$/,"");if(t.length%4==1)throw new e("'atob' failed: The string to be decoded is not correctly encoded.");for(var n,s,c=0,a=0,l="";s=t.charAt(a++);~s&&(n=c%4?64*n+s:s,c++%4)?l+=String.fromCharCode(255&n>>(-2*c&6)):0)s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(s);return l};function t$1(r){var t=r.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:t+="==";break;case 3:t+="=";break;default:throw"Illegal base64url string!"}try{return function(n){return decodeURIComponent(r$1(n).replace(/(.)/g,function(s,c){var a=c.charCodeAt(0).toString(16).toUpperCase();return a.length<2&&(a="0"+a),"%"+a}))}(t)}catch{return r$1(t)}}function n$1(r){this.message=r}function o(r,t){if(typeof r!="string")throw new n$1("Invalid token specified");var n=(t=t||{}).header===!0?0:1;try{return JSON.parse(t$1(r.split(".")[n]))}catch(s){throw new n$1("Invalid token specified: "+s.message)}}n$1.prototype=new Error,n$1.prototype.name="InvalidTokenError";class NylasSessions{constructor(t){S(this,"clientId");S(this,"redirectUri");S(this,"accessType","online");S(this,"domain","http://api.nylas.com");S(this,"versioned",!1);S(this,"Storage");S(this,"hosted",!1);S(this,"multiAccount",!1);S(this,"loginId","");if(this.clientId=t.clientId,this.redirectUri=t.redirectUri,t.domain&&(this.domain=t.domain,this.domain.substring(this.domain.length-3).includes("/v")&&(this.versioned=!0)),t.multiAccount&&(this.multiAccount=t.multiAccount),t.sw){const n=new IndexedDBStorage;this.Storage=new Storage(n)}else this.Storage=new Storage;t.accessType&&(this.accessType=t.accessType),t.loginId&&(this.loginId=t.loginId),t.hosted&&(this.hosted=t.hosted),this.codeExchange(null)}async validateAccessToken(t=""){const n=await this.Storage.getGrant(t,this.multiAccount);if(!n)return!1;const{access_token:s}=n;try{return!!(await(await fetch(`${this.domain}/connect/tokeninfo?access_token=${s}`,{method:"GET"})).json()).data}catch{return!1}}async validateIDToken(t=""){const n=await this.Storage.getGrant(t,this.multiAccount);if(!n)return!1;const{id_token:s}=n;try{const c=await fetch(`${this.domain}/connect/tokeninfo?id_token=${s}`,{method:"GET"});return!(c.status!==200||!(await c.json()).data)}catch{return!1}}getDomain(){return this.domain}async auth(t){this.hosted&&(this.domain===window.location.origin||this.versioned&&this.domain.includes(window.location.origin))&&await this.hostedSetCodeChallenge();const n=await this.generateAuthURL(t);if(t.popup){this.popUp(n);return}return n}async generateAuthURL(t){const n=await this.getCodeChallege();let s=`${this.domain}/connect/auth?client_id=${this.clientId}&redirect_uri=${this.redirectUri}&access_type=${this.accessType}&response_type=code`;return n&&(s+=`&code_challenge=${n}&code_challenge_method=S256&options=rotate_refresh_token`),t.provider&&(s+=`&provider=${t.provider}`),t.loginHint&&(s+=`&login_hint=${t.loginHint}`,t.includeGrantScopes&&(s+=`&include_grant_scopes=${t.includeGrantScopes}`)),t.scope&&(s+=`&scope=${t.scope.join(" ")}`),t.prompt&&(s+=`&prompt=${t.prompt}`),t.metadata&&(s+=`&metadata=${t.metadata}`),(t.state||this.loginId)&&(s+=`&state=${this.loginId?this.loginId:t.state}`),s}async generateReauthURL(t,n){if(!t)throw new Error("Grant ID is required");const s=await this.Storage.getUserToken(t),c=await this.getCodeChallege();let a=`${this.domain}/connect/auth?client_id=${this.clientId}&redirect_uri=${this.redirectUri}&access_type=${this.accessType}&response_type=code`;return c&&(a+=`&code_challenge=${c}&code_challenge_method=S256&options=rotate_refresh_token`),s!=null&&s.provider&&(a+=`&provider=${s.provider}`),s!=null&&s.email&&(a+=`&login_hint=${s.email}`),n&&(a+=`&scope=${n.join(" ")}`),a}async generateCodeChallenge(){if(await this.Storage.getPKCE())return;const n=v4();this.Storage.setPKCE(n)}async hostedSetCodeChallenge(){if(!this.hosted)throw console.error("Method only used with hosted flag enabled");const n=new URLSearchParams(window.location.search).get("code_challenge");if(!n){if(await this.Storage.getPKCE())return;console.warn("Code challenge is recomended");return}this.Storage.setPKCE(n)}async getCodeChallege(){if(this.hosted&&(this.domain===window.location.origin||this.versioned&&this.domain.includes(window.location.origin))){const s=new URLSearchParams(window.location.search).get("code_challenge");return s||(console.warn("Code challenge is recomended"),"")}const t=await this.Storage.getPKCE();if(t){const n=sha256.exports.sha256(t);let s=index.Buffer.from(n).toString("base64");return s=Base64EncodeUrl(s),s}return""}async isLoggedIn(){if(this.hosted&&(this.domain===window.location.origin||this.versioned&&this.domain.includes(window.location.origin)))return!1;const t=await this.Storage.getUserTokens();return t&&t.length>0?(this.multiAccount&&await this.generateCodeChallenge(),!0):(await this.generateCodeChallenge(),!1)}isMultiAccount(){return this.multiAccount}async logout(){const t=await this.getProfile();await this.Storage.clearSession();const n={detail:t};window.dispatchEvent(new CustomEvent("onLogoutSuccess",n))}async getProfile(t=""){let n;return t?n=await this.Storage.getUserToken(t):n=await this.Storage.getUserToken(),n||null}async getProfiles(){const t=await this.Storage.getUserTokens();return t||null}async removeProfile(t){return await this.Storage.removeUserToken(t),await this.Storage.removeGrant(t),null}async authIMAP(t){const n=await this.getCodeChallege(),s={imap_username:t.username,imap_password:t.password,imap_host:t.hostIMAP,imap_port:t.portIMAP,type:t.type,smtp_host:t.hostSMTP,smtp_port:t.portSMTP,provider:t.provider,redirect_uri:this.redirectUri,state:t.state,public_application_id:this.clientId,access_type:this.accessType};return this.loginId&&(s.id=this.loginId),n!=""&&(s.code_challenge=n,s.code_challenge_method="S256"),await(await fetch(`${this.domain}/connect/login/imap`,{method:"POST",headers:new Headers({"content-type":"application/json"}),body:JSON.stringify(s)})).json()}async authEWS(t){const n=await this.getCodeChallege(),s={...t,redirect_uri:this.redirectUri,public_application_id:this.clientId,access_type:this.accessType};return this.loginId&&(s.id=this.loginId),n!=""&&(s.code_challenge=n,s.code_challenge_method="S256"),await(await fetch(`${this.domain}/connect/login/ews`,{method:"POST",headers:new Headers({"content-type":"application/json"}),body:JSON.stringify(s)})).json()}async detectEmail(t){return(await(await fetch(`${this.versioned?this.domain:this.domain+"/connect"}/providers/detect?client_id=${this.clientId}&email=${t}`,{method:"POST",headers:new Headers({"content-type":"application/json"})})).json()).data}async applicationInfo(){return(await(await fetch(`${this.versioned?this.domain:this.domain+"/connect"}/applications?client_id=${this.clientId}`,{method:"GET",headers:new Headers({"content-type":"application/json"})})).json()).data}async getAvailableProviders(){const t=await fetch(`${this.domain}/connect/providers/find?client_id=${this.clientId}`,{method:"GET",headers:new Headers({"content-type":"application/json"})});return t?(await t.json()).data:null}onLoginSuccess(t){window.addEventListener("onLoginSuccess",n=>t(n))}onLogoutSuccess(t){window.addEventListener("onLogoutSuccess",n=>t(n))}onLoginFail(t){window.addEventListener("onLoginFail",n=>t(n))}onTokenRefreshSuccess(t){window.addEventListener("onTokenRefreshSuccess",n=>t(n))}onTokenRefreshFail(t){window.addEventListener("onTokenRefreshFail",n=>t(n))}onSessionExpired(t){window.addEventListener("onSessionExpired",n=>t(n))}async codeExchange(t){let n=new URLSearchParams(window.location.search);t&&(n=new URLSearchParams(t));const s=n.get("code"),c=n.get("state"),a=n.get("error"),l=n.get("error_description"),d=n.get("error_code");if(a&&l&&d){const u={detail:{error:a,error_description:l,error_code:d}};return window.dispatchEvent(new CustomEvent("onLoginFail",u)),window.history.pushState({},document.title,window.location.pathname),!1}if(!s)return console.warn("No code found"),!1;if(window.opener&&window.name==="uas-popup")return console.warn("Popup window detected"),!1;const h=await this.Storage.getPKCE();if(!h)return console.warn("No code verifier found"),!1;try{const u={client_id:this.clientId,redirect_uri:this.redirectUri,code:s,grant_type:"authorization_code",code_verifier:h},f=await(await fetch(`${this.domain}/connect/token`,{method:"POST",headers:new Headers({"content-type":"application/json"}),body:JSON.stringify(u)})).json();if(f){if(f.error){const g={detail:f};return window.dispatchEvent(new CustomEvent("onLoginFail",g)),!0}const y=await this.handleCodeExchangeResponse(f);if(y.valid){c&&(y.data.state=c);const g={detail:y.data};window.dispatchEvent(new CustomEvent("onLoginSuccess",g)),window.history.pushState({},document.title,window.location.pathname)}else{const g={detail:y.data};return window.dispatchEvent(new CustomEvent("onLoginFail",g)),!0}}return this.Storage.removePKCE(),!0}catch(u){const p={detail:u};return window.dispatchEvent(new CustomEvent("onLoginFail",p)),window.history.pushState({},document.title,window.location.pathname),!1}}async tokenExchange(t=""){const n=await this.Storage.getGrant(t,this.multiAccount);if(!n)return!1;const s=n.refresh_token;try{const c={client_id:this.clientId,redirect_uri:this.redirectUri,refresh_token:s,grant_type:"refresh_token"},l=await(await fetch(`${this.domain}/connect/token`,{method:"POST",headers:new Headers({"content-type":"application/json"}),body:JSON.stringify(c)})).json();if(l){if(l.error){const p={detail:l};return window.dispatchEvent(new CustomEvent("onTokenRefreshFail",p)),!0}const d=getTimestamp();if(l.expires_in=d+l.expires_in,this.Storage.setGrant(l,this.multiAccount),!await this.validateIDToken(t)){const p={detail:l};return window.dispatchEvent(new CustomEvent("onTokenRefreshFail",p)),!0}const u={detail:l};return window.dispatchEvent(new CustomEvent("onTokenRefreshSuccess",u)),!0}this.Storage.removePKCE()}catch(c){const a={detail:c};return window.dispatchEvent(new CustomEvent("onTokenRefreshFail",a)),!1}}async handleCodeExchangeResponse(t){if(t.error)return{data:t,valid:!1};const s=getTimestamp();t.expires_in=s+t.expires_in,this.Storage.setGrant(t,this.multiAccount);const c=o(t.id_token);return c.status="authenticated",this.Storage.setUserToken(c),await this.validateIDToken(c.sub)?{data:t,valid:!0}:{data:t,valid:!1}}async popUp(t){const c=window.screenX+(window.outerWidth-500)/2,a=window.screenY+(window.outerHeight-600)/2.5,l="uas-popup",d=t,h=window.open(d,l,`width=500,height=600,left=${c},top=${a}`);if(!h)return;const u=setInterval(async()=>{if(h.closed){const p={detail:{error_description:"OAuth provider window closed"}};window.dispatchEvent(new CustomEvent("onLoginFail",p)),u&&clearInterval(u);return}try{const p=h.location.href.split("?");if(!p[0])return;const f=h.location.search;if(h.history.pushState({},document.title,window.location.pathname),p[0]===this.redirectUri&&p.length>1){const y=await this.codeExchange(f);h.close(),y&&location.reload(),u&&clearInterval(u);return}}catch{return}},1e3)}async getAccessToken(t=""){const n=getTimestamp(),s=await this.Storage.getGrant(t,this.multiAccount);if(!s)return null;const{access_token:c,expires_in:a}=s,l=c;return l&&a&&a>getTimestamp()&&a-n>30?l:(await this.tokenExchange(t),(await this.Storage.getGrant(t,this.multiAccount)).access_token)}async sse(t,n){const s=n.headers||{},c=s["Grant-ID"];let a="";if(this.multiAccount){if(!c)throw this.logout(),new Error("Grant ID is required for multi account calls");a=await this.getAccessToken(c)}else a=await this.getAccessToken();return delete s["Grant-ID"],s.Authorization=`Bearer ${a}`,s["content-type"]||(s["content-type"]="application/json"),fetchEventSource(`${this.domain}/${t}`,{...n,headers:s})}async fetch(t,n,s=!0,c){let a="",l=1;if(this.multiAccount){if(!n.grant_id)throw this.logout(),new Error("Grant ID is required for multi account calls");const h=await this.getProfiles();l=h?h.length:1,a=await this.getAccessToken(n.grant_id)}else a=await this.getAccessToken();if(!a)throw new Error("Access token not found");let d=n.headers;Headers.prototype.isPrototypeOf(d)?(d.append("Authorization",`Bearer ${a}`),d.has("content-type")||d.append("content-type","application/json")):d=new Headers({Authorization:`Bearer ${a}`,"content-type":"application/json"});try{n!=null&&n.body&&(n.body=JSON.stringify(n==null?void 0:n.body));const h=await fetch(`${c||this.domain}/${t}`,{...n,headers:d});if(!s)return h;const u=await(h==null?void 0:h.json());if(!await this.isAuthenticatedResponse(h.status,u)){if(l>1){const f=await this.getProfile(n.grant_id);if(f){f.status="unauthorized",await this.Storage.setUserToken(f);const y={detail:{user:f}};window.dispatchEvent(new CustomEvent("onSessionExpired",y))}}else{const y={detail:{user:await this.Storage.getUserToken()}};window.dispatchEvent(new CustomEvent("onSessionExpired",y))}this.logout();return}return u}catch(h){throw h}}async fetchRequest(t,n,s,c=!0,a,l){const d=await this.isLoggedIn(),h=new URL(t,a??this.domain),u=new Headers;if(u.append("Accept","application/json"),u.append("Content-Type","application/json"),u.append("User-Agent","nylas-identity"),d){const y=await this.getAccessToken();u.append("Authorization",`Bearer ${y}`)}const p=await fetch(h.toString(),{method:n||"GET",headers:u,mode:"cors",referrer:location.origin,body:s?JSON.stringify(s):void 0,...l||{}});return c?await p.json():p.body}async isAuthenticatedResponse(t,n){var s;return!(t==401&&((s=n==null?void 0:n.error)==null?void 0:s.type)=="token.unauthorized_access")}addAPIKey(t,n,s){this.Storage.setUserToken({aud:"https://api-staging.us.nylas.com/",exp:2e9,email_verified:!0,iat:getTimestamp(),iss:"",email:n,provider:"virtual-calendar",status:"authenticated",name:n,sub:t}),this.Storage.setGrant({grant_id:t,access_token:s,expires_in:2e9},this.multiAccount)}}var B={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,D={};function E(r,t,n){this.props=r,this.context=t,this.refs=D,this.updater=n||B}E.prototype.isReactComponent={};E.prototype.setState=function(r,t){if(typeof r!="object"&&typeof r!="function"&&r!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,r,t,"setState")};E.prototype.forceUpdate=function(r){this.updater.enqueueForceUpdate(this,r,"forceUpdate")};function F(){}F.prototype=E.prototype;function G(r,t,n){this.props=r,this.context=t,this.refs=D,this.updater=n||B}var H=G.prototype=new F;H.constructor=G;C(H,E.prototype);H.isPureReactComponent=!0;const LoginRequired=({authenticationUrl:r})=>index.h("div",{class:"login-required",part:"login-component"},index.h("div",{class:"card"},index.h("p",null,"Log into your account to use the Scheduler Editor."),index.h("button",{class:"google-button",onClick:async t=>{t.preventDefault();const n=await r("google");n?window.location.href=n:console.error("[nylas-scheduler-editor] Unable to get authentication URL.")}},index.h("span",{class:"icon"},index.h("google-logo-icon",{width:"15",height:"15"})),"Continue with Google"),index.h("button",{class:"microsoft-button",onClick:async t=>{t.preventDefault();const n=await r("microsoft");n?window.location.href=n:console.error("[nylas-scheduler-editor] Unable to get authentication URL.")}},index.h("span",{class:"icon"},index.h("microsoft-logo-icon",{width:"15",height:"15"})),"Continue with Microsoft"),index.h("button",{class:"other-provider-button",onClick:async t=>{t.preventDefault();const n=await r();n?window.location.href=n:console.error("[nylas-scheduler-editor] Unable to get authentication URL.")}},"View all providers ",index.h("chevron-icon",{width:"17",height:"17"})),index.h("small",{class:"disclaimer-text"},"* You will be redirected to authenticate your account.")));function ExpressFlow({selectedConfiguration:r,currentUser:t,calendars:n}){var a;const s=((a=r==null?void 0:r.participants)==null?void 0:a.find(l=>l.is_organizer))??t,c=n==null?void 0:n.find(l=>l.is_primary);return index.h(index.Fragment,null,index.h("nylas-event-info",null,index.h("div",{slot:"inputs"},index.h("nylas-event-title",null),index.h("nylas-event-duration",null),index.h("nylas-event-location",{userProvider:t.provider}))),index.h("nylas-booking-calendar-picker",{calendars:n,currentUser:t,defaultBookingCalendar:(c==null?void 0:c.id)||(s==null?void 0:s.email)}),index.h("nylas-scheduling-method",{exportparts:"nsm, nsm__header, nsm__input-label, nsm__dropdown, nsm__dropdown-button, nsm__dropdown-content"}),index.h("nylas-custom-event-slug",{name:"custom-event-slug",exportparts:"nces, nces__body, nces__header, nces__drawer-toggle--container, nces__input-textfield"}))}const nylasSchedulerEditorCss=':host{display:flex;flex-direction:column;overflow:visible;border-radius:var(--nylas-border-radius-2x);width:fit-content;background:var(--nylas-base-0);position:relative;box-shadow:0px 0px 6px -2px rgba(0, 0, 0, 0.05), 0px 5px 15px -3px rgba(0, 0, 0, 0.1);--nylas-primary:#2563eb;--nylas-error:#cc4841;--nylas-error-pressed:#992222;--nylas-wraning:#f06c00;--nylas-success:#16a392;--nylas-info:#2b8fc2;--nylas-base-0:#ffffff;--nylas-base-25:#fcfcfd;--nylas-base-50:#f8f9fc;--nylas-base-100:#eaecf5;--nylas-base-200:#d5d9eb;--nylas-base-300:#b3b8d8;--nylas-base-400:#717bbc;--nylas-base-500:#4e5ba6;--nylas-base-600:#3e4784;--nylas-base-700:#263f72;--nylas-base-800:#293056;--nylas-base-900:#101323;--nylas-base-950:#0e101b;--nylas-border-radius:0.25rem;--nylas-border-radius-2x:0.5rem;--nylas-border-radius-3x:0.75rem;--nylas-font-family:"Inter", sans-serif}@media screen and (max-width: 768px){:host{width:-moz-available;width:-webkit-fill-available;width:fill-available;min-width:325px}}div.scheduler-editor-content{height:610px}@media screen and (max-width: 768px){div.scheduler-editor-content{height:auto}}div.scheduler-editor-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--nylas-base-200);color:var(--nylas-base-900)}div.scheduler-editor-header h1.scheduler-editor-title{display:flex;align-items:center;gap:0.5rem;width:858px;margin:0;font-size:18px;line-height:24px;font-weight:600}@media screen and (max-width: 768px){div.scheduler-editor-header h1.scheduler-editor-title{width:auto;min-width:calc(325px - 1rem)}}div.scheduler-editor-header button{background:transparent;border:none;cursor:pointer}div.scheduler-editor-header button:hover,div.scheduler-editor-header button:active{color:var(--nylas-primary)}div.scheduler-editor-header button:disabled{cursor:not-allowed}nylas-editor-tabs{width:auto;height:inherit}nylas-editor-tabs .composable{height:inherit;overflow:auto}nylas-editor-tabs nylas-event-info div[slot=inputs],nylas-editor-tabs nylas-event-limits div[slot=inputs]{display:flex;flex-direction:column;gap:1rem}.card{display:flex;flex-direction:column;padding:2rem;background-color:var(--nylas-base-0);border:1px solid var(--nylas-base-200);border-radius:5px;max-width:fit-content;align-self:center}.login-required{height:inherit;overflow-y:auto;display:flex;flex-direction:column;justify-content:center;padding:2rem 1rem;background-color:var(--nylas-base-25);border-radius:var(--nylas-border-radius-2x)}@media screen and (max-width: 768px){.login-required{height:auto}}.login-required p{margin:0 0 1rem}.login-required .microsoft-button,.login-required .google-button{height:48px;border:1px solid var(--nylas-base-300);border-radius:var(--nylas-border-radius-2x);font-size:1rem;line-height:24px;padding:0 1rem;background-color:var(--nylas-base-0);font-weight:600;cursor:pointer;display:flex;margin-bottom:1rem;background-color:var(--nylas-base-0);border:1px solid var(--nylas-base-200);border-radius:5px;justify-content:center;gap:0.5rem;align-items:center}.login-required .microsoft-button:hover,.login-required .google-button:hover{background-color:var(--nylas-base-25)}.login-required .microsoft-button:hover,.login-required .google-button:hover{background-color:var(--nylas-base-25)}.login-required .other-provider-button{height:48px;border:1px solid var(--nylas-base-300);border-radius:var(--nylas-border-radius-2x);font-size:1rem;line-height:24px;padding:0 1rem;background-color:var(--nylas-base-0);font-weight:600;cursor:pointer;display:flex;border:0;background-color:var(--nylas-base-0);height:48px;margin-bottom:1rem;font-size:0.95rem;justify-content:center;gap:0.25rem;align-items:center}.login-required .other-provider-button:hover{background-color:var(--nylas-base-25)}.login-required .other-provider-button svg{transform:rotate(180deg)}.login-required .other-provider-button:hover{background-color:var(--nylas-base-25)}.login-required .disclaimer-text{font-size:0.75rem;color:var(--nylas-base-600);align-self:center}.list-configurations{padding:2rem;height:inherit;background:var(--nylas-base-25);border-radius:var(--nylas-border-radius-2x)}@media screen and (max-width: 768px){.list-configurations{height:auto;padding:2rem 1rem}}.list-configurations nylas-list-configurations{height:inherit;display:flex;flex-direction:column}',NylasSchedulerEditorStyle0=nylasSchedulerEditorCss,NylasSchedulerEditor=class{constructor(r){index.registerInstance(this,r),this.init=index.createEvent(this,"init",7),this.loggedIn=index.createEvent(this,"loggedIn",7),this.loggedOut=index.createEvent(this,"loggedOut",7),this.schedulerConfigCloseClicked=index.createEvent(this,"schedulerConfigCloseClicked",7),this.handleSchedulerConfigCloseClicked=t=>{const n=this.schedulerConfigCloseClicked.emit(this.host);"schedulerConfigCloseClicked"in this.eventOverrides&&this.eventOverrides.schedulerConfigCloseClicked(n,this.nylasSchedulerConfigConnector),n.defaultPrevented||(localStorage.removeItem("grant"),localStorage.removeItem("user"),window.location.reload())},this.authenticationUrl=async t=>this.nylasApiRequest?await this.nylasApiRequest.authenticationUrl({provider:t})||"":(console.error("[nylas-scheduler-editor] Nylas API Request is not initialized."),""),this.configurationId=void 0,this.nylasApiRequest=void 0,this.nylasSessionsConfig=void 0,this.defaultAuthArgs=void 0,this.eventOverrides={},this.schedulerPreviewLink="",this.defaultSchedulerConfigState=void 0,this.mode="app",this.additionalParticipants=void 0,this.hideEditorTabs=[],this.conferenceProviders=void 0,this.requiresSlug=!1,this.automaticComponentRegistration=!0}connectedCallback(){index.debug("[nylas-scheduler-editor] connectedCallback")}async componentWillLoad(){var s,c,a,l,d,h,u,p;index.debug("[nylas-scheduler-editor] componentWillLoad");const r=(s=this.additionalParticipants)==null?void 0:s.filter(f=>{var g;const y=((g=f.calendars)==null?void 0:g.length)>0?f.calendars.filter(x=>x.id&&x.name):[];if(f.name&&f.email&&y.length>0)return{name:f.name,email:f.email,calendars:y}});if(this.stores={schedulerConfig:schedulerConfigStore2a3b403d.CreateNylasSchedulerConfigStore({...this.defaultSchedulerConfigState,additionalParticipants:r,conferenceProviders:this.conferenceProviders,hideEditorTabs:this.hideEditorTabs,requiresSlug:this.requiresSlug})},!this.nylasApiRequest&&this.nylasSessionsConfig){const f=new NylasSessions(this.nylasSessionsConfig);await f.isLoggedIn(),f.onLoginSuccess(async()=>{var g,x;const y=await((x=(g=this.nylasSchedulerConfigConnector)==null?void 0:g.schedulerConfig)==null?void 0:x.currentUser());if(y){const w=this.loggedIn.emit(this.host);"loggedIn"in this.eventOverrides&&await this.eventOverrides.loggedIn(w,this.nylasSchedulerConfigConnector),w.defaultPrevented||await this.loggedInHandler(y)}}),f.onLoginFail(async()=>{var g,x;(x=(g=this.stores)==null?void 0:g.schedulerConfig)==null||x.set("currentUser",null);const y=this.loggedOut.emit(this.host);"loggedOut"in this.eventOverrides&&(await this.eventOverrides.loggedOut(y,this.nylasSchedulerConfigConnector),y.defaultPrevented)}),this.nylasApiRequest=new index.NylasIdentityRequestWrapper(f)}this.nylasApiRequest&&this.defaultAuthArgs&&this.nylasApiRequest.setDefaultAuthArgs(this.defaultAuthArgs),this.baseProvider=new index_es79f5b771.NylasBaseProvider(this.host,this.stores,this.automaticComponentRegistration,this.eventOverrides);const t=this.baseProvider.getStore("schedulerConfig");this.nylasSchedulerConfigConnector=new NylasSchedulerConfigConnector({nylasApiRequest:this.nylasApiRequest,nylasSchedulerConfigStore:t});const n=this.init.emit(this.host);if("init"in this.eventOverrides&&await this.eventOverrides.init(n,this.nylasSchedulerConfigConnector),!n.defaultPrevented){const f=await((a=(c=this.nylasSchedulerConfigConnector)==null?void 0:c.schedulerConfig)==null?void 0:a.currentUser());if(f){const y=this.loggedIn.emit(this.host);"loggedIn"in this.eventOverrides&&await this.eventOverrides.loggedIn(y,this.nylasSchedulerConfigConnector),y.defaultPrevented||await this.loggedInHandler(f)}else{(d=(l=this.stores)==null?void 0:l.schedulerConfig)==null||d.set("currentUser",null);const y=this.loggedOut.emit(this.host);if("loggedOut"in this.eventOverrides&&(await this.eventOverrides.loggedOut(y,this.nylasSchedulerConfigConnector),y.defaultPrevented))return}}(u=(h=this.stores)==null?void 0:h.schedulerConfig)==null||u.onChange("selectedConfiguration",async f=>{f&&f.id&&(this.configurationId=f.id)}),(p=this.baseProvider)==null||p.componentWillLoad(this.nylasSchedulerConfigConnector)}async componentDidLoad(){var r;index.debug("[nylas-scheduler-editor] componentDidLoad"),await((r=this.baseProvider)==null?void 0:r.componentDidLoad())}async componentDisconnected(){var r;await((r=this.baseProvider)==null?void 0:r.componentDisconnected())}async configurationIdChanged(r){var t,n,s,c,a,l,d,h;r?(await((n=(t=this.nylasSchedulerConfigConnector)==null?void 0:t.schedulerConfig)==null?void 0:n.getConfigurationById(r)),(c=(s=this.stores)==null?void 0:s.schedulerConfig)==null||c.set("action","edit")):((l=(a=this.stores)==null?void 0:a.schedulerConfig)==null||l.set("selectedConfiguration",{}),(h=(d=this.stores)==null?void 0:d.schedulerConfig)==null||h.set("action",null))}async store(){var r;return(r=this.stores)==null?void 0:r.schedulerConfig}async schedulerConnector(){return this.nylasSchedulerConfigConnector}async registerComponentHandler(r){var t;(t=this.baseProvider)==null||t.registerComponent(r.detail)}async unregisterComponentHandler(r){var t;(t=this.baseProvider)==null||t.unregisterComponent(r.detail)}async loggedInHandler(r){var t,n,s,c,a,l,d;if((n=(t=this.stores)==null?void 0:t.schedulerConfig)==null||n.set("currentUser",r),!!this.nylasSchedulerConfigConnector&&(await((s=this.nylasSchedulerConfigConnector.schedulerConfig)==null?void 0:s.getCalendars()),this.configurationId)){const h=await((c=this.nylasSchedulerConfigConnector.schedulerConfig)==null?void 0:c.getConfigurationById(this.configurationId));h&&((a=h[0])!=null&&a.id)&&((d=(l=this.stores)==null?void 0:l.schedulerConfig)==null||d.set("action","edit"))}}render(){var n,s,c,a,l,d,h,u,p,f,y,g,x,w,m,b,v,_,k;const r=this.host.querySelector('[slot="custom-page-style-inputs"]'),t=(c=(s=(n=this.stores)==null?void 0:n.schedulerConfig)==null?void 0:s.state.selectedConfiguration)==null?void 0:c.id;return index.h(index.Host,{key:"e3716df4b6320311046af1b529ee494c9b16c782"},index.h("div",{key:"1e33292840f2906cfe0f0d4519192851e18d0ce7",class:"scheduler-editor-header",part:"nse__header"},index.h("h1",{key:"830100ac6a1f5c369a6e665f4fe2ea458bf5b44f",class:"scheduler-editor-title",part:"nse__title"},index.h("calendar-icon",{key:"b69dafa07a0af6fae4e1f57be7c98221bc8fc237",width:"18",height:"18"}),"Scheduler Editor"),index.h("button",{key:"c2e4c17d62f67c8c4011a8f41357481bd17eb883",class:"scheduler-editor-close",title:"logout",onClick:A=>this.handleSchedulerConfigCloseClicked(A),part:"nse__close-button"},index.h("close-icon",{key:"74eb653f9b8fea4a7c3669f7a707a5ebaa18d8d1",width:"18",height:"18"}))),index.h("div",{key:"33273e52377ec5b88672ed66db2a43ceab01b583",class:"scheduler-editor-content",part:"nse__content"},((l=(a=this.stores)==null?void 0:a.schedulerConfig)==null?void 0:l.state.currentUser)&&this.stores.schedulerConfig.state.action===null&&index.h("div",{class:"list-configurations"},index.h("nylas-list-configurations",{exportparts:"nlc__create-new-cta"})),((h=(d=this.stores)==null?void 0:d.schedulerConfig)==null?void 0:h.state.currentUser)&&this.stores.schedulerConfig.state.action==="create"&&index.h("nylas-editor-tabs",{mode:"composable"},index.h(ExpressFlow,{currentUser:(p=(u=this.stores)==null?void 0:u.schedulerConfig)==null?void 0:p.state.currentUser,calendars:(g=(y=(f=this.stores)==null?void 0:f.schedulerConfig)==null?void 0:y.state)==null?void 0:g.calendars,selectedConfiguration:(m=(w=(x=this.stores)==null?void 0:x.schedulerConfig)==null?void 0:w.state)==null?void 0:m.selectedConfiguration})),((v=(b=this.stores)==null?void 0:b.schedulerConfig)==null?void 0:v.state.currentUser)&&this.stores.schedulerConfig.state.action==="edit"&&index.h("nylas-editor-tabs",{key:t,mode:this.mode},this.mode==="composable"&&index.h("slot",null),this.mode==="app"&&r&&index.h("div",{style:{display:"none"},slot:"custom-page-style-inputs",key:t},index.h("slot",{name:"custom-page-style-inputs"}))),!((k=(_=this.stores)==null?void 0:_.schedulerConfig)!=null&&k.state.currentUser)&&index.h("slot",{name:"login-required"},index.h(LoginRequired,{authenticationUrl:this.authenticationUrl}))))}get host(){return index.getElement(this)}static get watchers(){return{configurationId:["configurationIdChanged"]}}};NylasSchedulerEditor.style=NylasSchedulerEditorStyle0;exports.nylas_scheduler_editor=NylasSchedulerEditor;