@nylas/react 1.1.0-canary.16 → 1.1.0-canary.18

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 (124) hide show
  1. package/dist/add-circle-icon_2.entry-3091976b.cjs +1 -0
  2. package/dist/add-circle-icon_2.entry-3b13ee64.js +25 -0
  3. package/dist/{archive-icon_7.entry-54dc5cc2.js → archive-icon_7.entry-8932618a.js} +19 -19
  4. package/dist/{archive-icon_7.entry-073d9915.cjs → archive-icon_7.entry-c2b6d860.cjs} +1 -1
  5. package/dist/{arrow-icon.entry-869a1db9.js → arrow-icon.entry-1f54c377.js} +4 -4
  6. package/dist/{arrow-icon.entry-bada78b8.cjs → arrow-icon.entry-a159bee8.cjs} +1 -1
  7. package/dist/{bold-icon_3.entry-5695177e.js → bold-icon_3.entry-447d0537.js} +10 -10
  8. package/dist/{bold-icon_3.entry-cc6150c9.cjs → bold-icon_3.entry-c51e1af3.cjs} +1 -1
  9. package/dist/{button-component.entry-a0533c8b.js → button-component.entry-52ccb6d9.js} +2 -2
  10. package/dist/{button-component.entry-3703ecff.cjs → button-component.entry-e79b2d08.cjs} +1 -1
  11. package/dist/{calendar-cancel-icon.entry-0f1d98b3.cjs → calendar-cancel-icon.entry-805febcc.cjs} +1 -1
  12. package/dist/{calendar-cancel-icon.entry-a9ab0b09.js → calendar-cancel-icon.entry-a78f27bc.js} +2 -2
  13. package/dist/{calendar-check-icon_2.entry-6b83717e.cjs → calendar-check-icon_2.entry-4a0fd7bd.cjs} +1 -1
  14. package/dist/{calendar-check-icon_2.entry-a62b5d2c.js → calendar-check-icon_2.entry-7c8b6c92.js} +3 -3
  15. package/dist/{calendar-icon.entry-08f83da9.cjs → calendar-icon.entry-1fc018b4.cjs} +1 -1
  16. package/dist/{calendar-icon.entry-ddc22561.js → calendar-icon.entry-96f9727f.js} +5 -5
  17. package/dist/calendar-info-icon_28.entry-2054703c.cjs +1 -0
  18. package/dist/{calendar-info-icon_27.entry-f02f44b7.js → calendar-info-icon_28.entry-e7bebd13.js} +527 -701
  19. package/dist/{chevron-icon_3.entry-f27202a2.js → chevron-icon_3.entry-25d90239.js} +6 -6
  20. package/dist/chevron-icon_3.entry-7bd4a4b5.cjs +1 -0
  21. package/dist/{clock-icon_2.entry-b7b8ef46.cjs → clock-icon_2.entry-2406c3d0.cjs} +1 -1
  22. package/dist/{clock-icon_2.entry-2277fd45.js → clock-icon_2.entry-c1b22ed4.js} +5 -5
  23. package/dist/{constants-f34b9c6e-ccdbc4ac.cjs → constants-f34b9c6e-b774916c.cjs} +1 -1
  24. package/dist/{constants-f34b9c6e-bbca6b6e.js → constants-f34b9c6e-f1c4dd0d.js} +1 -1
  25. package/dist/document-refresh-icon.entry-570f9c9d.js +15 -0
  26. package/dist/document-refresh-icon.entry-a0293858.cjs +1 -0
  27. package/dist/elements/index.d.ts +1 -0
  28. package/dist/{elements-dc5b338e-d48368b1.cjs → elements-dc5b338e-550a6cb1.cjs} +1 -1
  29. package/dist/{elements-dc5b338e-c4a07acc.js → elements-dc5b338e-cafa7a55.js} +1 -1
  30. package/dist/{focus-visible-e8093c16-10c0fa06.js → focus-visible-e8093c16-022799ce.js} +1 -1
  31. package/dist/{focus-visible-e8093c16-c86f3687.cjs → focus-visible-e8093c16-c14162e8.cjs} +1 -1
  32. package/dist/{forward-icon_6.entry-07cd4b52.cjs → forward-icon_6.entry-55752b23.cjs} +2 -2
  33. package/dist/{forward-icon_6.entry-39d788af.js → forward-icon_6.entry-9b832146.js} +9 -9
  34. package/dist/{globe-icon.entry-60a53e89.js → globe-icon.entry-2b61820e.js} +4 -4
  35. package/dist/{globe-icon.entry-76c90d97.cjs → globe-icon.entry-dabe7b8b.cjs} +1 -1
  36. package/dist/google-logo-icon_4.entry-60c0d39a.cjs +1 -0
  37. package/dist/google-logo-icon_4.entry-a0dc33da.js +467 -0
  38. package/dist/index-53420959-67beefed.js +5 -0
  39. package/dist/index-53420959-d3254a34.cjs +1 -0
  40. package/dist/{index-6d9eeb53-66c114b2.cjs → index-6d9eeb53-3049fc04.cjs} +1 -1
  41. package/dist/{index-6d9eeb53-38c9f47c.js → index-6d9eeb53-3edef246.js} +2 -2
  42. package/dist/{index-f383e3c4.js → index-812162da.js} +902 -901
  43. package/dist/{index-f435e814.cjs → index-e3e9b594.cjs} +3 -3
  44. package/dist/{index.es-9cc0eb3c-09dc620b.cjs → index.es-9cc0eb3c-0c99c055.cjs} +1 -1
  45. package/dist/{index.es-9cc0eb3c-510db795.js → index.es-9cc0eb3c-52226859.js} +1 -1
  46. package/dist/{info-icon_2.entry-a61859ac.js → info-icon_2.entry-2fe6c16c.js} +8 -8
  47. package/dist/{info-icon_2.entry-7fe8bcd9.cjs → info-icon_2.entry-5f6b9af8.cjs} +1 -1
  48. package/dist/{input-component.entry-12f60175.js → input-component.entry-1195d579.js} +6 -6
  49. package/dist/{input-component.entry-04dcc655.cjs → input-component.entry-2b6e44c4.cjs} +1 -1
  50. package/dist/{input-dropdown_2.entry-0e5925a7.js → input-dropdown_2.entry-dbd0d6f4.js} +35 -28
  51. package/dist/input-dropdown_2.entry-dbdb5aa3.cjs +1 -0
  52. package/dist/loading-icon.entry-027a2ad1.js +15 -0
  53. package/dist/{loading-icon.entry-f82786b4.cjs → loading-icon.entry-e179f122.cjs} +1 -1
  54. package/dist/{mailbox-store-64b4ef7c-1e6c96cc.cjs → mailbox-store-64b4ef7c-0eac526c.cjs} +1 -1
  55. package/dist/{mailbox-store-64b4ef7c-017196a6.js → mailbox-store-64b4ef7c-22a6c565.js} +2 -2
  56. package/dist/nylas-booked-event-card_10.entry-84f64ba5.cjs +1 -0
  57. package/dist/{nylas-booked-event-card_10.entry-2dff7f16.js → nylas-booked-event-card_10.entry-e0990f5b.js} +170 -170
  58. package/dist/{nylas-custom-booking-flow.entry-36f7a943.cjs → nylas-custom-booking-flow.entry-898c8cc9.cjs} +1 -1
  59. package/dist/{nylas-custom-booking-flow.entry-feed589b.js → nylas-custom-booking-flow.entry-bc64af5f.js} +7 -7
  60. package/dist/{nylas-form-card.entry-e9f09602.cjs → nylas-form-card.entry-0c71f4fc.cjs} +1 -1
  61. package/dist/{nylas-form-card.entry-49f519dd.js → nylas-form-card.entry-c564b52e.js} +9 -9
  62. package/dist/{nylas-if-state.entry-127694a9.js → nylas-if-state.entry-e9486e12.js} +3 -3
  63. package/dist/{nylas-if-state.entry-81916723.cjs → nylas-if-state.entry-ff6a2046.cjs} +1 -1
  64. package/dist/{nylas-list-folders.entry-e3e9ec1f.js → nylas-list-folders.entry-0258af1e.js} +7 -7
  65. package/dist/{nylas-list-folders.entry-f4c68fb9.cjs → nylas-list-folders.entry-90716d2b.cjs} +1 -1
  66. package/dist/{nylas-list-threads.entry-fa4b5318.js → nylas-list-threads.entry-1abcdd30.js} +3 -3
  67. package/dist/{nylas-list-threads.entry-f0a1b9d1.cjs → nylas-list-threads.entry-21edf012.cjs} +1 -1
  68. package/dist/{nylas-login.entry-aeac716e.cjs → nylas-login.entry-2e0ce95e.cjs} +1 -1
  69. package/dist/{nylas-login.entry-6d17e994.js → nylas-login.entry-ba7383ac.js} +3 -3
  70. package/dist/{nylas-mailbox-pagination.entry-50fba238.cjs → nylas-mailbox-pagination.entry-ba6beb08.cjs} +1 -1
  71. package/dist/{nylas-mailbox-pagination.entry-c440f56a.js → nylas-mailbox-pagination.entry-f6186560.js} +2 -2
  72. package/dist/{nylas-mailbox-toolbar-button.entry-d3d0c870.cjs → nylas-mailbox-toolbar-button.entry-0875aadb.cjs} +1 -1
  73. package/dist/{nylas-mailbox-toolbar-button.entry-14e30d36.js → nylas-mailbox-toolbar-button.entry-e18059b0.js} +10 -10
  74. package/dist/{nylas-mailbox.entry-a59159c7.js → nylas-mailbox.entry-2e3815ed.js} +4 -4
  75. package/dist/{nylas-mailbox.entry-2fdb3d4c.cjs → nylas-mailbox.entry-bb2905bf.cjs} +1 -1
  76. package/dist/{nylas-provider.entry-dfa8c7c1.cjs → nylas-provider.entry-51c5cdbf.cjs} +1 -1
  77. package/dist/{nylas-provider.entry-d7dbb5fc.js → nylas-provider.entry-69ee5061.js} +13 -13
  78. package/dist/{nylas-scheduler-editor.entry-67e71234.cjs → nylas-scheduler-editor.entry-923b8566.cjs} +2 -2
  79. package/dist/{nylas-scheduler-editor.entry-3b44b807.js → nylas-scheduler-editor.entry-d4a9afb1.js} +5 -5
  80. package/dist/{nylas-scheduling.entry-0ce0dab9.cjs → nylas-scheduling.entry-54f1a5e9.cjs} +1 -1
  81. package/dist/{nylas-scheduling.entry-68f72bf7.js → nylas-scheduling.entry-f82a2822.js} +3 -3
  82. package/dist/{nylas-threads-refresh.entry-23a83bd4.js → nylas-threads-refresh.entry-72482d2f.js} +10 -10
  83. package/dist/{nylas-threads-refresh.entry-955e92c7.cjs → nylas-threads-refresh.entry-99001756.cjs} +1 -1
  84. package/dist/{nylas-threads-search.entry-2fb6db63.cjs → nylas-threads-search.entry-462527fd.cjs} +1 -1
  85. package/dist/{nylas-threads-search.entry-8f01ee4a.js → nylas-threads-search.entry-c5fe50e5.js} +14 -14
  86. package/dist/nylas-time-window-picker.entry-0d93e7cc.js +316 -0
  87. package/dist/nylas-time-window-picker.entry-ccffcf2b.cjs +1 -0
  88. package/dist/{nylas-view-thread.entry-b957f88b.js → nylas-view-thread.entry-2d34b41c.js} +6 -6
  89. package/dist/{nylas-view-thread.entry-3cf0c1ac.cjs → nylas-view-thread.entry-58432a52.cjs} +1 -1
  90. package/dist/play-icon_2.entry-1ea3fd6b.cjs +1 -0
  91. package/dist/{play-icon_2.entry-ecdf8ea4.js → play-icon_2.entry-d08adf17.js} +7 -7
  92. package/dist/react.cjs +1 -1
  93. package/dist/react.js +41 -40
  94. package/dist/{refresh-icon.entry-76e58ccb.cjs → refresh-icon.entry-1e670732.cjs} +1 -1
  95. package/dist/{refresh-icon.entry-480d28aa.js → refresh-icon.entry-a041136d.js} +4 -4
  96. package/dist/{register-component-a5a9ca5d-438c8a96.js → register-component-a5a9ca5d-a5c01c35.js} +1 -1
  97. package/dist/{register-component-a5a9ca5d-ebf633cf.cjs → register-component-a5a9ca5d-b68b6039.cjs} +1 -1
  98. package/dist/{scheduler-config-store-4a50a03d-d5a5899e.cjs → scheduler-config-store-4a50a03d-884e6df8.cjs} +1 -1
  99. package/dist/{scheduler-config-store-4a50a03d-defa6368.js → scheduler-config-store-4a50a03d-ee42ff96.js} +1 -1
  100. package/dist/{scheduler-store-f02ce045-de4cb1f5.js → scheduler-store-f02ce045-23a14e3f.js} +1 -1
  101. package/dist/{scheduler-store-f02ce045-00faab09.cjs → scheduler-store-f02ce045-42e3647c.cjs} +1 -1
  102. package/dist/{textarea-component.entry-1c8d11af.js → textarea-component.entry-1b4c771b.js} +4 -4
  103. package/dist/{textarea-component.entry-5ff249a8.cjs → textarea-component.entry-24a830c1.cjs} +1 -1
  104. package/dist/{translate-icon.entry-a55c013b.cjs → translate-icon.entry-0c0add25.cjs} +1 -1
  105. package/dist/{translate-icon.entry-3741cac0.js → translate-icon.entry-44bde57b.js} +2 -2
  106. package/dist/{warning-icon.entry-445352b5.js → warning-icon.entry-8956cba2.js} +5 -5
  107. package/dist/{warning-icon.entry-1a104c52.cjs → warning-icon.entry-9a77ab01.cjs} +1 -1
  108. package/package.json +2 -2
  109. package/dist/add-circle-icon_2.entry-035ffd48.cjs +0 -1
  110. package/dist/add-circle-icon_2.entry-5cadaf97.js +0 -25
  111. package/dist/calendar-info-icon_27.entry-a8390790.cjs +0 -1
  112. package/dist/chevron-icon_3.entry-978b52d5.cjs +0 -1
  113. package/dist/document-refresh-icon.entry-5795e2a9.cjs +0 -1
  114. package/dist/document-refresh-icon.entry-656a5e02.js +0 -15
  115. package/dist/google-logo-icon_4.entry-5402eae2.cjs +0 -1
  116. package/dist/google-logo-icon_4.entry-d327d68f.js +0 -438
  117. package/dist/index-53420959-791b4e73.js +0 -5
  118. package/dist/index-53420959-9f979766.cjs +0 -1
  119. package/dist/input-dropdown_2.entry-d9bff099.cjs +0 -1
  120. package/dist/loading-icon.entry-51ddd748.js +0 -15
  121. package/dist/nylas-booked-event-card_10.entry-5a9a4cc6.cjs +0 -1
  122. package/dist/play-icon_2.entry-c92d5237.cjs +0 -1
  123. package/dist/toggle-switch.entry-26d3d1c9.cjs +0 -1
  124. package/dist/toggle-switch.entry-339ab48b.js +0 -25
@@ -1,6 +1,6 @@
1
- import { r, c as s, h as a } from "./index-f383e3c4.js";
2
- import { s as t } from "./index-6d9eeb53-38c9f47c.js";
3
- import "./index-53420959-791b4e73.js";
1
+ import { r, c as s, h as t } from "./index-812162da.js";
2
+ import { s as a } from "./index-6d9eeb53-3edef246.js";
3
+ import "./index-53420959-67beefed.js";
4
4
  import "react";
5
5
  import "react-dom";
6
6
  const l = ':host{display:block;height:100%;--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;width:100%}label{display:flex;color:var(--nylas-base-800, #293056);font-size:14px;font-style:normal;font-weight:400;line-height:150%;flex-direction:column;gap:4px;font-family:var(--nylas-font-family);font-size:16px;color:var(--nylas-base-800)}label.error{color:var(--nylas-error)}label span.required{color:var(--nylas-error);padding:0 0.25rem}label p{margin:0}label .error{color:var(--nylas-error)}input[type=text],input[type=email]{display:flex;height:48px;padding-left:16px;align-items:center;gap:8px;align-self:stretch;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-base-300);background:var(--nylas-base-0);width:-webkit-fill-available;color:var(--nylas-base-900);font-size:16px;font-style:normal;font-weight:400;line-height:150%}input[type=text]:focus,input[type=email]:focus{outline-color:var(--nylas-primary)}input[type=text].error,input[type=email].error{border-radius:var(--nylas-border-radius-2x);font-weight:600;border-color:var(--nylas-error);border-width:2px}input[type=text].error::placeholder,input[type=email].error::placeholder{font-weight:400}input[type=text]::placeholder,input[type=email]::placeholder{color:var(--nylas-base-300)}', i = l, n = {
@@ -14,13 +14,13 @@ const l = ':host{display:block;height:100%;--nylas-primary:#2563eb;--nylas-error
14
14
  r(this, e), this.nylasFormInputChanged = s(this, "nylasFormInputChanged", 7), this.name = "input", this.defaultValue = "", this.label = "", this.type = "text", this.placeholder = o[this.type], this.required = !1, this.readOnly = !1, this.autoFocus = !1, this.pattern = void 0, this.maxLength = 255, this.patternError = "", this.value = "", this.error = "";
15
15
  }
16
16
  componentWillLoad() {
17
- this.value = t(this.defaultValue), this.type !== "text" && !this.pattern && (this.pattern = n[this.type]), this.value && this.validatePattern(this.value);
17
+ this.value = a(this.defaultValue), this.type !== "text" && !this.pattern && (this.pattern = n[this.type]), this.value && this.validatePattern(this.value);
18
18
  }
19
19
  handleBookingFormSubmitted(e) {
20
20
  this.validatePattern(this.value), this.error && e.preventDefault();
21
21
  }
22
22
  handleInput(e) {
23
- this.error = "", this.value = t(e.target.value), this.nylasFormInputChanged.emit({
23
+ this.error = "", this.value = a(e.target.value), this.nylasFormInputChanged.emit({
24
24
  value: this.value,
25
25
  name: this.name,
26
26
  label: this.label,
@@ -36,7 +36,7 @@ const l = ':host{display:block;height:100%;--nylas-primary:#2563eb;--nylas-error
36
36
  this.pattern && (this.pattern.test(e) ? this.error = "" : this.error = `Invalid ${this.label.toLowerCase()} format.`);
37
37
  }
38
38
  render() {
39
- return a("label", { key: "c6457e4509ab2ef08a2424e63e2b3733ad25775f", part: "ic__label", class: { error: !!this.error } }, a("p", { key: "ea89771a3db615fa73b1e53f9dc9f0c12fabf9ba" }, a("span", { key: "d38825ae45369b81bf1c64baa5a39e691f16d102", class: "label" }, this.label), this.required && a("span", { class: "required" }, "*")), a("input", { key: "5ac30172d8f4585b631540ea62af8842d0c84892", type: "text", name: this.name, part: "ic__input", readOnly: this.readOnly, autoFocus: this.autoFocus, value: this.value, maxLength: this.maxLength, placeholder: this.placeholder, class: { error: !!this.error }, onInput: (e) => this.handleInput(e) }), this.error && a("span", { class: "error help-text" }, this.error, " ", this.value && this.patternError !== "" ? ` ${this.patternError}` : ""));
39
+ return t("label", { key: "a28361a1be7a5afe38dfdc3eb375d51029af16d2", part: "ic__label", class: { error: !!this.error } }, t("p", { key: "950007f568b6c12231f40bedb1db8f62937e978a" }, t("span", { key: "106299e5bea57a16eec9734db501517d50549262", class: "label" }, this.label), this.required && t("span", { class: "required" }, "*")), t("input", { key: "5c00d0abff394b38de75d24af47610ff4e246e69", type: "text", name: this.name, part: "ic__input", readOnly: this.readOnly, autoFocus: this.autoFocus, value: this.value, maxLength: this.maxLength, placeholder: this.placeholder, class: { error: !!this.error }, onInput: (e) => this.handleInput(e) }), this.error && t("span", { class: "error help-text" }, this.error, " ", this.value && this.patternError !== "" ? ` ${this.patternError}` : ""));
40
40
  }
41
41
  };
42
42
  h.style = i;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index-f435e814.cjs"),a=require("./index-6d9eeb53-66c114b2.cjs");require("./index-53420959-9f979766.cjs");require("react");require("react-dom");const s=':host{display:block;height:100%;--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;width:100%}label{display:flex;color:var(--nylas-base-800, #293056);font-size:14px;font-style:normal;font-weight:400;line-height:150%;flex-direction:column;gap:4px;font-family:var(--nylas-font-family);font-size:16px;color:var(--nylas-base-800)}label.error{color:var(--nylas-error)}label span.required{color:var(--nylas-error);padding:0 0.25rem}label p{margin:0}label .error{color:var(--nylas-error)}input[type=text],input[type=email]{display:flex;height:48px;padding-left:16px;align-items:center;gap:8px;align-self:stretch;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-base-300);background:var(--nylas-base-0);width:-webkit-fill-available;color:var(--nylas-base-900);font-size:16px;font-style:normal;font-weight:400;line-height:150%}input[type=text]:focus,input[type=email]:focus{outline-color:var(--nylas-primary)}input[type=text].error,input[type=email].error{border-radius:var(--nylas-border-radius-2x);font-weight:600;border-color:var(--nylas-error);border-width:2px}input[type=text].error::placeholder,input[type=email].error::placeholder{font-weight:400}input[type=text]::placeholder,input[type=email]::placeholder{color:var(--nylas-base-300)}',l=s,i={email:/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/,tel:/^[0-9]{10}$/},n={email:"name@example.com",tel:"1234567890"},r=class{constructor(e){t.registerInstance(this,e),this.nylasFormInputChanged=t.createEvent(this,"nylasFormInputChanged",7),this.name="input",this.defaultValue="",this.label="",this.type="text",this.placeholder=n[this.type],this.required=!1,this.readOnly=!1,this.autoFocus=!1,this.pattern=void 0,this.maxLength=255,this.patternError="",this.value="",this.error=""}componentWillLoad(){this.value=a.sanitizeHtml$1(this.defaultValue),this.type!=="text"&&!this.pattern&&(this.pattern=i[this.type]),this.value&&this.validatePattern(this.value)}handleBookingFormSubmitted(e){this.validatePattern(this.value),this.error&&e.preventDefault()}handleInput(e){this.error="",this.value=a.sanitizeHtml$1(e.target.value),this.nylasFormInputChanged.emit({value:this.value,name:this.name,label:this.label,error:this.error,type:this.type})}validatePattern(e){if(this.error="",this.required&&!e){this.error=`${this.label} is required.`;return}this.pattern&&(this.pattern.test(e)?this.error="":this.error=`Invalid ${this.label.toLowerCase()} format.`)}render(){return t.h("label",{key:"c6457e4509ab2ef08a2424e63e2b3733ad25775f",part:"ic__label",class:{error:!!this.error}},t.h("p",{key:"ea89771a3db615fa73b1e53f9dc9f0c12fabf9ba"},t.h("span",{key:"d38825ae45369b81bf1c64baa5a39e691f16d102",class:"label"},this.label),this.required&&t.h("span",{class:"required"},"*")),t.h("input",{key:"5ac30172d8f4585b631540ea62af8842d0c84892",type:"text",name:this.name,part:"ic__input",readOnly:this.readOnly,autoFocus:this.autoFocus,value:this.value,maxLength:this.maxLength,placeholder:this.placeholder,class:{error:!!this.error},onInput:e=>this.handleInput(e)}),this.error&&t.h("span",{class:"error help-text"},this.error," ",this.value&&this.patternError!==""?` ${this.patternError}`:""))}};r.style=l;exports.input_component=r;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index-e3e9b594.cjs"),r=require("./index-6d9eeb53-3049fc04.cjs");require("./index-53420959-d3254a34.cjs");require("react");require("react-dom");const s=':host{display:block;height:100%;--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;width:100%}label{display:flex;color:var(--nylas-base-800, #293056);font-size:14px;font-style:normal;font-weight:400;line-height:150%;flex-direction:column;gap:4px;font-family:var(--nylas-font-family);font-size:16px;color:var(--nylas-base-800)}label.error{color:var(--nylas-error)}label span.required{color:var(--nylas-error);padding:0 0.25rem}label p{margin:0}label .error{color:var(--nylas-error)}input[type=text],input[type=email]{display:flex;height:48px;padding-left:16px;align-items:center;gap:8px;align-self:stretch;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-base-300);background:var(--nylas-base-0);width:-webkit-fill-available;color:var(--nylas-base-900);font-size:16px;font-style:normal;font-weight:400;line-height:150%}input[type=text]:focus,input[type=email]:focus{outline-color:var(--nylas-primary)}input[type=text].error,input[type=email].error{border-radius:var(--nylas-border-radius-2x);font-weight:600;border-color:var(--nylas-error);border-width:2px}input[type=text].error::placeholder,input[type=email].error::placeholder{font-weight:400}input[type=text]::placeholder,input[type=email]::placeholder{color:var(--nylas-base-300)}',l=s,i={email:/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/,tel:/^[0-9]{10}$/},n={email:"name@example.com",tel:"1234567890"},a=class{constructor(e){t.registerInstance(this,e),this.nylasFormInputChanged=t.createEvent(this,"nylasFormInputChanged",7),this.name="input",this.defaultValue="",this.label="",this.type="text",this.placeholder=n[this.type],this.required=!1,this.readOnly=!1,this.autoFocus=!1,this.pattern=void 0,this.maxLength=255,this.patternError="",this.value="",this.error=""}componentWillLoad(){this.value=r.sanitizeHtml$1(this.defaultValue),this.type!=="text"&&!this.pattern&&(this.pattern=i[this.type]),this.value&&this.validatePattern(this.value)}handleBookingFormSubmitted(e){this.validatePattern(this.value),this.error&&e.preventDefault()}handleInput(e){this.error="",this.value=r.sanitizeHtml$1(e.target.value),this.nylasFormInputChanged.emit({value:this.value,name:this.name,label:this.label,error:this.error,type:this.type})}validatePattern(e){if(this.error="",this.required&&!e){this.error=`${this.label} is required.`;return}this.pattern&&(this.pattern.test(e)?this.error="":this.error=`Invalid ${this.label.toLowerCase()} format.`)}render(){return t.h("label",{key:"a28361a1be7a5afe38dfdc3eb375d51029af16d2",part:"ic__label",class:{error:!!this.error}},t.h("p",{key:"950007f568b6c12231f40bedb1db8f62937e978a"},t.h("span",{key:"106299e5bea57a16eec9734db501517d50549262",class:"label"},this.label),this.required&&t.h("span",{class:"required"},"*")),t.h("input",{key:"5c00d0abff394b38de75d24af47610ff4e246e69",type:"text",name:this.name,part:"ic__input",readOnly:this.readOnly,autoFocus:this.autoFocus,value:this.value,maxLength:this.maxLength,placeholder:this.placeholder,class:{error:!!this.error},onInput:e=>this.handleInput(e)}),this.error&&t.h("span",{class:"error help-text"},this.error," ",this.value&&this.patternError!==""?` ${this.patternError}`:""))}};a.style=l;exports.input_component=a;
@@ -1,21 +1,27 @@
1
- import { r as l, c as p, h as r, g as c, d as a } from "./index-f383e3c4.js";
1
+ import { r as l, c as p, h as r, g as c, d as a } from "./index-812162da.js";
2
2
  import "react";
3
3
  import "react-dom";
4
4
  const h = ':host{display:block;position:relative;--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{position:unset}}.dropdown{display:inline-block}.dropbtn{color:var(--nylas-base-800);padding:10px;font-size:1rem;font-family:var(--nylas-font-family);cursor:pointer;display:flex;gap:0.5rem;background:transparent;border:none;border-radius:var(--nylas-border-radius-2x);width:50px;padding:14px 16px;border-radius:var(--nylas-border-radius-2x)}.dropbtn.focus{background:transparent}.dropbtn:hover,.dropbtn:active{outline:1px solid var(--nylas-primary)}.dropbtn:active{outline:2px solid var(--nylas-primary)}.dropbtn span.chevron{display:flex;align-self:center}.dropbtn span.open{transform:rotate(90deg)}.dropbtn span.closed{transform:rotate(270deg)}.dropbtn span.selected-option{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:144px;font-size:14px;line-height:20px}@media screen and (max-width: 768px){.dropbtn span.selected-option{max-width:124px;font-size:16px}}.dropdown-content{display:block;margin-top:0.5rem;background-color:var(--nylas-base-0);max-width:306px;width:max-content;max-height:336px;overflow:auto;z-index:1;border-radius:4px;position:absolute;box-shadow:0px 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:0px 10px 15px -3px rgba(0, 0, 0, 0.1)}@media screen and (max-width: 768px){.dropdown-content{right:0;width:325px;max-width:unset}}.search-box{border-bottom:1px solid var(--nylas-base-200);padding:10px;position:sticky;top:0;background:var(--nylas-base-0)}.search-box .icon{position:absolute;top:1.25rem;left:1.25rem;color:var(--nylas-base-300)}.dropdown-content ul{padding:0;list-style-type:none;color:var(--nylas-base-900);max-height:336px}.dropdown-content ul li{padding:16px, 12px, 16px, 12px;color:black;padding:12px 16px;text-decoration:none;display:block;font-family:inherit;font-size:14px;font-weight:400;line-height:20px;letter-spacing:0px;text-align:left;cursor:pointer}.dropdown-content ul li:hover,.dropdown-content ul li:focus{background-color:var(--nylas-base-100)}.dropdown-content .selected{background-color:#e7e7e7}input[type=text]{width:-webkit-fill-available;padding:inherit;border:1px solid #ccc;border-radius:4px;position:sticky;background:no-repeat scroll 7px 7px;padding-left:30px;background-size:16px 16px}', u = h, m = class {
5
5
  constructor(e) {
6
- l(this, e), this.inputOptionChanged = p(this, "inputOptionChanged", 7), this.name = void 0, this.options = [], this.defaultInputOption = void 0, this.inputValue = void 0, this.pluralizedLabel = "", this.selectedOption = this.defaultInputOption || null, this.isOpen = !1, this.filteredOptions = [...this.options], this.ariaActivedescendant = "", this.shouldAutoScroll = !1;
6
+ l(this, e), this.inputOptionChanged = p(this, "inputOptionChanged", 7), this.name = void 0, this.options = [], this.defaultInputOption = void 0, this.inputValue = void 0, this.pluralizedLabel = "", this.filterable = !1, this.selectedOption = this.defaultInputOption || null, this.isOpen = !1, this.filteredOptions = [...this.options], this.ariaActivedescendant = "", this.shouldAutoScroll = !1;
7
7
  }
8
8
  optionsChangedHandler(e, t) {
9
- e !== t && (this.filteredOptions = e);
9
+ e !== t && (this.filteredOptions = this.getFilteredOptions(e));
10
10
  }
11
11
  defaultSelectedOptionChangedHandler(e, t) {
12
12
  e.label !== t.label && (this.selectedOption = e);
13
13
  }
14
14
  inputValueChangedHandler(e, t) {
15
- e !== t && (this.inputValue = e);
15
+ e !== t && (this.inputValue = e, this.filteredOptions = this.getFilteredOptions(this.options));
16
16
  }
17
17
  componentWillLoad() {
18
- this.filteredOptions = this.options, !this.selectedOption && this.defaultInputOption && (this.selectedOption = this.defaultInputOption), !this.selectedOption && this.options.length > 0 && (this.selectedOption = this.options[0]);
18
+ this.filteredOptions = this.getFilteredOptions(this.options), !this.selectedOption && this.defaultInputOption && (this.selectedOption = this.defaultInputOption), !this.selectedOption && this.options.length > 0 && (this.selectedOption = this.options[0]);
19
+ }
20
+ getFilteredOptions(e) {
21
+ return this.filterable ? e.filter((t) => {
22
+ var i, s, n, o;
23
+ return ((s = t == null ? void 0 : t.value) == null ? void 0 : s.toString().toLowerCase().includes((i = this.inputValue) == null ? void 0 : i.toLowerCase())) || ((o = t == null ? void 0 : t.label) == null ? void 0 : o.toLowerCase().includes((n = this.inputValue) == null ? void 0 : n.toLowerCase()));
24
+ }) : e;
19
25
  }
20
26
  toggleDropdown() {
21
27
  this.isOpen = !this.isOpen;
@@ -27,7 +33,7 @@ const h = ':host{display:block;position:relative;--nylas-primary:#2563eb;--nylas
27
33
  });
28
34
  }
29
35
  handleOnInput(e) {
30
- const t = e.target.value, i = this.options.findIndex((o) => o.label.toLowerCase().includes(t.toLowerCase()));
36
+ const t = e.target.value, i = this.options.findIndex((s) => s.label.toLowerCase().includes(t.toLowerCase()));
31
37
  i > -1 && this.scrollToViewWithinParent(i), this.inputOptionChanged.emit({
32
38
  value: t,
33
39
  name: this.name
@@ -35,10 +41,11 @@ const h = ':host{display:block;position:relative;--nylas-primary:#2563eb;--nylas
35
41
  }
36
42
  scrollToViewWithinParent(e) {
37
43
  var d;
38
- const t = this.options[e], i = (d = this.el.shadowRoot) == null ? void 0 : d.getElementById(t.value.toString()), o = this.optionsRef;
39
- this.ariaActivedescendant = t.value.toString();
40
- const s = i.getBoundingClientRect(), n = o.getBoundingClientRect();
41
- s.top < n.top ? o.scrollTop -= n.top - s.top : s.bottom > n.bottom && (o.scrollTop += s.bottom - n.bottom);
44
+ const t = this.options[e], i = (d = this.el.shadowRoot) == null ? void 0 : d.getElementById(t.value.toString()), s = this.optionsRef;
45
+ if (this.ariaActivedescendant = t.value.toString(), !i || !s)
46
+ return;
47
+ const n = i.getBoundingClientRect(), o = s.getBoundingClientRect();
48
+ n.top < o.top ? s.scrollTop -= o.top - n.top : n.bottom > o.bottom && (s.scrollTop += n.bottom - o.bottom);
42
49
  }
43
50
  handleSelectButtonKeyDown(e) {
44
51
  var t;
@@ -54,39 +61,39 @@ const h = ':host{display:block;position:relative;--nylas-primary:#2563eb;--nylas
54
61
  }
55
62
  handleClick(e) {
56
63
  if (this.isOpen) {
57
- const t = e.target.value, i = this.options.findIndex((o) => o.label.toLowerCase().includes(t.toLowerCase()));
64
+ const t = e.target.value, i = this.options.findIndex((s) => s.label.toLowerCase().includes(t.toLowerCase()));
58
65
  i > -1 && setTimeout(() => {
59
66
  this.scrollToViewWithinParent(i);
60
67
  }, 10);
61
68
  }
62
69
  }
63
70
  handleListboxKeydown(e) {
64
- var o, s;
65
- const t = this.filteredOptions, i = t.findIndex((n) => n.value === this.ariaActivedescendant);
71
+ var s, n;
72
+ const t = this.filteredOptions, i = t.findIndex((o) => o.value === this.ariaActivedescendant);
66
73
  if (e.key === "ArrowDown" || e.key === "Tab" && !e.shiftKey) {
67
74
  if (e.preventDefault(), i === t.length - 1) {
68
- this.ariaActivedescendant = "", (o = this.inputRef) == null || o.focus();
75
+ this.ariaActivedescendant = "", (s = this.inputRef) == null || s.focus();
69
76
  return;
70
77
  }
71
- const n = i + 1 < t.length ? i + 1 : 0;
72
- this.ariaActivedescendant = t[n].value, this.focusOption(n);
78
+ const o = i + 1 < t.length ? i + 1 : 0;
79
+ this.ariaActivedescendant = t[o].value, this.focusOption(o);
73
80
  } else if (e.key === "ArrowUp" || e.key === "Tab" && e.shiftKey) {
74
81
  if (e.preventDefault(), i === 0) {
75
- this.ariaActivedescendant = "", (s = this.inputRef) == null || s.focus();
82
+ this.ariaActivedescendant = "", (n = this.inputRef) == null || n.focus();
76
83
  return;
77
84
  }
78
- const n = i - 1 >= 0 ? i - 1 : t.length - 1;
79
- this.ariaActivedescendant = t[n].value, this.focusOption(n);
85
+ const o = i - 1 >= 0 ? i - 1 : t.length - 1;
86
+ this.ariaActivedescendant = t[o].value, this.focusOption(o);
80
87
  } else
81
88
  e.key === "Enter" ? (e.preventDefault(), this.ariaActivedescendant && this.selectOption(t[i])) : e.key === "Escape" && (this.isOpen = !1);
82
89
  }
83
90
  focusOption(e) {
84
- var s;
91
+ var n;
85
92
  const t = this.filteredOptions[e];
86
93
  if (!t)
87
94
  return;
88
- const i = t.value, o = (s = this.el.shadowRoot) == null ? void 0 : s.getElementById(i);
89
- o && (o.focus(), o.scrollIntoView({ behavior: "smooth", block: "nearest" }));
95
+ const i = t.value, s = (n = this.el.shadowRoot) == null ? void 0 : n.getElementById(i);
96
+ s && (s.focus(), s.scrollIntoView({ behavior: "smooth", block: "nearest" }));
90
97
  }
91
98
  handleComboboxKeyDown(e) {
92
99
  if (e.key === "ArrowDown" || e.key == "Tab" && !e.shiftKey) {
@@ -102,7 +109,7 @@ const h = ':host{display:block;position:relative;--nylas-primary:#2563eb;--nylas
102
109
  !e.composedPath().includes(this.el) && this.isOpen && (this.isOpen = !1);
103
110
  }
104
111
  render() {
105
- return r("div", { key: "24c46ff43e7ff2701790b5e7cd69833a4c0fa02f", class: "dropdown", part: "id_dropdown" }, r("input", { key: "86724f295c643d3edda0de987b17f85389a0a716", type: "text", name: this.name, id: this.name, part: "id_dropdown-input", class: { dropbtn: !0, open: this.isOpen }, value: this.inputValue, onClick: (e) => {
112
+ return r("div", { key: "271eb5442c9d5358ba755a4f4117c7cf74e6fcff", class: "dropdown", part: "id_dropdown" }, r("input", { key: "bb95067c1c69691912193b04f76daf1603456722", type: "text", name: this.name, id: this.name, part: "id_dropdown-input", class: { dropbtn: !0, open: this.isOpen }, value: this.inputValue, onClick: (e) => {
106
113
  this.toggleDropdown(), this.shouldAutoScroll = !0, this.handleClick(e);
107
114
  }, "aria-haspopup": "listbox", "aria-label": this.name, "aria-expanded": this.isOpen ? "true" : "false", onKeyDown: (e) => this.handleComboboxKeyDown(e), onInput: (e) => this.handleOnInput(e) }), this.isOpen ? r("div", { class: "dropdown-content", part: "id_dropdown-content", ref: (e) => this.optionsRef = e }, r("ul", { tabindex: "-1", role: "listbox", "aria-label": this.name, "aria-activedescendant": this.ariaActivedescendant, onKeyDown: (e) => this.handleListboxKeydown(e) }, this.filteredOptions.map((e) => r("li", { tabindex: "0", key: e.value, id: e.value, onClick: () => this.selectOption(e), role: "option", class: {
108
115
  focused: this.ariaActivedescendant === e.value.toString()
@@ -169,21 +176,21 @@ const b = ".time-period-selector.sc-time-period-selector{display:grid;gap:0.5rem
169
176
  a("time-period-selector", "inputOptionChangedHandler", e.detail);
170
177
  const { value: t, name: i } = e.detail;
171
178
  i === "time-number" && (this.selectedNumber = parseInt(t));
172
- const o = {
179
+ const s = {
173
180
  number: this.selectedNumber,
174
181
  period: this.selectedPeriod
175
182
  };
176
- this.timePeriodChanged.emit(o);
183
+ this.timePeriodChanged.emit(s);
177
184
  }
178
185
  nylasFormDropdownChangedHandler(e) {
179
186
  a("time-period-selector", "nylasFormDropdownChangedHandler", e.detail);
180
187
  const { value: t, name: i } = e.detail;
181
188
  i === "time-period" ? (this.selectedPeriod = t, this.updateNumberOptionsAndSelectedNumber(t)) : i === "time-number" && (this.selectedNumber = parseInt(t));
182
- const o = {
189
+ const s = {
183
190
  number: this.selectedNumber,
184
191
  period: this.selectedPeriod
185
192
  };
186
- this.timePeriodChanged.emit(o);
193
+ this.timePeriodChanged.emit(s);
187
194
  }
188
195
  updateNumberOptionsAndSelectedNumber(e) {
189
196
  const t = this.calculateOptions(e);
@@ -193,7 +200,7 @@ const b = ".time-period-selector.sc-time-period-selector{display:grid;gap:0.5rem
193
200
  })), this.selectedNumber = parseInt(this.numberOptions[0].value);
194
201
  }
195
202
  render() {
196
- return r("div", { key: "89f218f22905064cadac4d109b631ec138b461ef", class: "time-period-selector" }, r("input-dropdown", { key: "2b86597d92716df5196e696a82ef813d895688dc", id: "time-number", name: "time-number", inputValue: this.selectedNumber.toString(), exportparts: "sd_dropdown: tps__number-dropdown, sd_dropdown-button: tps__number-dropdown-button, sd_dropdown-content: tps__number-dropdown-content", options: this.numberOptions, defaultInputOption: this.numberOptions.find((e) => e.value == this.selectedNumber.toString()) ?? this.numberOptions[0] }), r("select-dropdown", { key: "7283a087443a6c3827f41f0276e1c8024025eeca", id: "time-period", name: "time-period", options: this.timePeriodOptions, exportparts: "sd_dropdown: tps__period-dropdown, sd_dropdown-button: tps__period-dropdown-button, sd_dropdown-content: tps__period-dropdown-content", pluralizedLabel: this.selectedNumber > 1 ? "s" : "", defaultSelectedOption: this.timePeriodOptions.find((e) => e.value == this.selectedPeriod) ?? this.timePeriodOptions[0], withSearch: !1 }));
203
+ return r("div", { key: "a4b421b31d77e41c8ef3c2a7533699a6cfaeb60c", class: "time-period-selector" }, r("input-dropdown", { key: "b5f99b1d27195ad8fdc3617cf04e3fba3cfd49dd", id: "time-number", name: "time-number", inputValue: this.selectedNumber.toString(), exportparts: "sd_dropdown: tps__number-dropdown, sd_dropdown-button: tps__number-dropdown-button, sd_dropdown-content: tps__number-dropdown-content", options: this.numberOptions, defaultInputOption: this.numberOptions.find((e) => e.value == this.selectedNumber.toString()) ?? this.numberOptions[0] }), r("select-dropdown", { key: "c06e213131979c07431ed1a6964bd0e0e2338b97", id: "time-period", name: "time-period", options: this.timePeriodOptions, exportparts: "sd_dropdown: tps__period-dropdown, sd_dropdown-button: tps__period-dropdown-button, sd_dropdown-content: tps__period-dropdown-content", pluralizedLabel: this.selectedNumber > 1 ? "s" : "", defaultSelectedOption: this.timePeriodOptions.find((e) => e.value == this.selectedPeriod) ?? this.timePeriodOptions[0], withSearch: !1 }));
197
204
  }
198
205
  get host() {
199
206
  return c(this);
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("./index-e3e9b594.cjs");require("react");require("react-dom");const p=':host{display:block;position:relative;--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{position:unset}}.dropdown{display:inline-block}.dropbtn{color:var(--nylas-base-800);padding:10px;font-size:1rem;font-family:var(--nylas-font-family);cursor:pointer;display:flex;gap:0.5rem;background:transparent;border:none;border-radius:var(--nylas-border-radius-2x);width:50px;padding:14px 16px;border-radius:var(--nylas-border-radius-2x)}.dropbtn.focus{background:transparent}.dropbtn:hover,.dropbtn:active{outline:1px solid var(--nylas-primary)}.dropbtn:active{outline:2px solid var(--nylas-primary)}.dropbtn span.chevron{display:flex;align-self:center}.dropbtn span.open{transform:rotate(90deg)}.dropbtn span.closed{transform:rotate(270deg)}.dropbtn span.selected-option{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:144px;font-size:14px;line-height:20px}@media screen and (max-width: 768px){.dropbtn span.selected-option{max-width:124px;font-size:16px}}.dropdown-content{display:block;margin-top:0.5rem;background-color:var(--nylas-base-0);max-width:306px;width:max-content;max-height:336px;overflow:auto;z-index:1;border-radius:4px;position:absolute;box-shadow:0px 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:0px 10px 15px -3px rgba(0, 0, 0, 0.1)}@media screen and (max-width: 768px){.dropdown-content{right:0;width:325px;max-width:unset}}.search-box{border-bottom:1px solid var(--nylas-base-200);padding:10px;position:sticky;top:0;background:var(--nylas-base-0)}.search-box .icon{position:absolute;top:1.25rem;left:1.25rem;color:var(--nylas-base-300)}.dropdown-content ul{padding:0;list-style-type:none;color:var(--nylas-base-900);max-height:336px}.dropdown-content ul li{padding:16px, 12px, 16px, 12px;color:black;padding:12px 16px;text-decoration:none;display:block;font-family:inherit;font-size:14px;font-weight:400;line-height:20px;letter-spacing:0px;text-align:left;cursor:pointer}.dropdown-content ul li:hover,.dropdown-content ul li:focus{background-color:var(--nylas-base-100)}.dropdown-content .selected{background-color:#e7e7e7}input[type=text]{width:-webkit-fill-available;padding:inherit;border:1px solid #ccc;border-radius:4px;position:sticky;background:no-repeat scroll 7px 7px;padding-left:30px;background-size:16px 16px}',c=p,a=class{constructor(e){s.registerInstance(this,e),this.inputOptionChanged=s.createEvent(this,"inputOptionChanged",7),this.name=void 0,this.options=[],this.defaultInputOption=void 0,this.inputValue=void 0,this.pluralizedLabel="",this.filterable=!1,this.selectedOption=this.defaultInputOption||null,this.isOpen=!1,this.filteredOptions=[...this.options],this.ariaActivedescendant="",this.shouldAutoScroll=!1}optionsChangedHandler(e,t){e!==t&&(this.filteredOptions=this.getFilteredOptions(e))}defaultSelectedOptionChangedHandler(e,t){e.label!==t.label&&(this.selectedOption=e)}inputValueChangedHandler(e,t){e!==t&&(this.inputValue=e,this.filteredOptions=this.getFilteredOptions(this.options))}componentWillLoad(){this.filteredOptions=this.getFilteredOptions(this.options),!this.selectedOption&&this.defaultInputOption&&(this.selectedOption=this.defaultInputOption),!this.selectedOption&&this.options.length>0&&(this.selectedOption=this.options[0])}getFilteredOptions(e){return this.filterable?e.filter(t=>{var i,o,r,n;return((o=t==null?void 0:t.value)==null?void 0:o.toString().toLowerCase().includes((i=this.inputValue)==null?void 0:i.toLowerCase()))||((n=t==null?void 0:t.label)==null?void 0:n.toLowerCase().includes((r=this.inputValue)==null?void 0:r.toLowerCase()))}):e}toggleDropdown(){this.isOpen=!this.isOpen}selectOption(e){this.selectedOption=e,this.toggleDropdown(),this.inputOptionChanged.emit({value:e.value,name:this.name})}handleOnInput(e){const t=e.target.value,i=this.options.findIndex(o=>o.label.toLowerCase().includes(t.toLowerCase()));i>-1&&this.scrollToViewWithinParent(i),this.inputOptionChanged.emit({value:t,name:this.name})}scrollToViewWithinParent(e){var d;const t=this.options[e],i=(d=this.el.shadowRoot)==null?void 0:d.getElementById(t.value.toString()),o=this.optionsRef;if(this.ariaActivedescendant=t.value.toString(),!i||!o)return;const r=i.getBoundingClientRect(),n=o.getBoundingClientRect();r.top<n.top?o.scrollTop-=n.top-r.top:r.bottom>n.bottom&&(o.scrollTop+=r.bottom-n.bottom)}handleSelectButtonKeyDown(e){var t;switch(e.key){case"ArrowDown":case"Enter":e.preventDefault(),this.isOpen||this.toggleDropdown(),(t=this.inputRef)==null||t.focus();break;case"Escape":this.isOpen=!1;break}}handleClick(e){if(this.isOpen){const t=e.target.value,i=this.options.findIndex(o=>o.label.toLowerCase().includes(t.toLowerCase()));i>-1&&setTimeout(()=>{this.scrollToViewWithinParent(i)},10)}}handleListboxKeydown(e){var o,r;const t=this.filteredOptions,i=t.findIndex(n=>n.value===this.ariaActivedescendant);if(e.key==="ArrowDown"||e.key==="Tab"&&!e.shiftKey){if(e.preventDefault(),i===t.length-1){this.ariaActivedescendant="",(o=this.inputRef)==null||o.focus();return}const n=i+1<t.length?i+1:0;this.ariaActivedescendant=t[n].value,this.focusOption(n)}else if(e.key==="ArrowUp"||e.key==="Tab"&&e.shiftKey){if(e.preventDefault(),i===0){this.ariaActivedescendant="",(r=this.inputRef)==null||r.focus();return}const n=i-1>=0?i-1:t.length-1;this.ariaActivedescendant=t[n].value,this.focusOption(n)}else e.key==="Enter"?(e.preventDefault(),this.ariaActivedescendant&&this.selectOption(t[i])):e.key==="Escape"&&(this.isOpen=!1)}focusOption(e){var r;const t=this.filteredOptions[e];if(!t)return;const i=t.value,o=(r=this.el.shadowRoot)==null?void 0:r.getElementById(i);o&&(o.focus(),o.scrollIntoView({behavior:"smooth",block:"nearest"}))}handleComboboxKeyDown(e){if(e.key==="ArrowDown"||e.key=="Tab"&&!e.shiftKey){if(e.preventDefault(),!this.isOpen){this.isOpen=!0,this.shouldAutoScroll=!0;return}this.ariaActivedescendant=this.filteredOptions[0].value,this.focusOption(0)}else e.key==="ArrowUp"||e.key==="Tab"&&e.shiftKey?(e.preventDefault(),this.ariaActivedescendant=this.filteredOptions[this.filteredOptions.length-1].value,this.focusOption(this.filteredOptions.length-1)):e.key==="Escape"&&(this.isOpen=!1)}handleOutsideClick(e){!e.composedPath().includes(this.el)&&this.isOpen&&(this.isOpen=!1)}render(){return s.h("div",{key:"271eb5442c9d5358ba755a4f4117c7cf74e6fcff",class:"dropdown",part:"id_dropdown"},s.h("input",{key:"bb95067c1c69691912193b04f76daf1603456722",type:"text",name:this.name,id:this.name,part:"id_dropdown-input",class:{dropbtn:!0,open:this.isOpen},value:this.inputValue,onClick:e=>{this.toggleDropdown(),this.shouldAutoScroll=!0,this.handleClick(e)},"aria-haspopup":"listbox","aria-label":this.name,"aria-expanded":this.isOpen?"true":"false",onKeyDown:e=>this.handleComboboxKeyDown(e),onInput:e=>this.handleOnInput(e)}),this.isOpen?s.h("div",{class:"dropdown-content",part:"id_dropdown-content",ref:e=>this.optionsRef=e},s.h("ul",{tabindex:"-1",role:"listbox","aria-label":this.name,"aria-activedescendant":this.ariaActivedescendant,onKeyDown:e=>this.handleListboxKeydown(e)},this.filteredOptions.map(e=>s.h("li",{tabindex:"0",key:e.value,id:e.value,onClick:()=>this.selectOption(e),role:"option",class:{focused:this.ariaActivedescendant===e.value.toString()}},e.labelHTML?e.labelHTML:e.label)))):null)}get el(){return s.getElement(this)}static get watchers(){return{options:["optionsChangedHandler"],defaultInputOption:["defaultSelectedOptionChangedHandler"],inputValue:["inputValueChangedHandler"]}}};a.style=c;const h=".time-period-selector.sc-time-period-selector{display:grid;gap:0.5rem;grid-template-columns:auto 1fr}.time-period-selector.sc-time-period-selector select-dropdown.sc-time-period-selector,.time-period-selector.sc-time-period-selector input-dropdown.sc-time-period-selector{border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x)}.time-period-selector.sc-time-period-selector select-dropdown.sc-time-period-selector{width:116px}.time-period-selector.sc-time-period-selector input-dropdown.sc-time-period-selector{width:84px;display:flex;align-items:center}.time-period-selector.sc-time-period-selector select-dropdown#time-period.sc-time-period-selector::part(sd_dropdown-button){width:100%}.time-period-selector.sc-time-period-selector input-dropdown.sc-time-period-selector::part(id_dropdown){width:inherit;height:100%}.time-period-selector.sc-time-period-selector input-dropdown#time-number.sc-time-period-selector::part(id_dropdown-input){border:none;border-radius:var(--nylas-border-radius-2x)}.time-period-selector.sc-time-period-selector input-dropdown.sc-time-period-selector::part(id_dropdown-input){padding:17px;gap:1rem}.time-period-selector.sc-time-period-selector input-dropdown.sc-time-period-selector::part(id_dropdown-content){width:100%;max-height:200px}.time-period-selector.sc-time-period-selector select-dropdown.sc-time-period-selector::part(sd_dropdown){width:inherit}.time-period-selector.sc-time-period-selector select-dropdown.sc-time-period-selector::part(sd_dropdown-button){padding:1rem;gap:1rem;justify-content:space-between}.time-period-selector.sc-time-period-selector select-dropdown.sc-time-period-selector::part(sd_dropdown-content){width:100%;max-height:200px}",u=h,m={hours:"hour",days:"day",weeks:"week",months:"month"},l=class{constructor(e){s.registerInstance(this,e),this.timePeriodChanged=s.createEvent(this,"timePeriodChanged",7),this.timePeriods=["hour","day","week","month"],this.defaultSelectedPeriod="hour",this.defaultSelectedNumber=1,this.selectedPeriod=this.defaultSelectedPeriod,this.selectedNumber=this.defaultSelectedNumber,this.numberOptions=this.calculateOptions(this.defaultSelectedPeriod||"hour").map(t=>({label:t.toString(),value:t.toString()})),this.timePeriodOptions=this.timePeriods.map(t=>({label:t,value:t}))}defaultSelectedPeriodChangedHandler(e){this.selectedPeriod=e;const t=m[e]??e;this.updateNumberOptionsAndSelectedNumber(t)}defaultSelectedNumberChangedHandler(e){this.selectedNumber=e}timePeriodsChangedHandler(e){this.timePeriodOptions=e.map(t=>({label:t,value:t}))}calculateOptions(e){switch(e){case"hour":return Array.from({length:23},(t,i)=>i+1);case"minute":return Array.from({length:13},(t,i)=>i*5);case"day":return Array.from({length:30},(t,i)=>i+1);case"week":return Array.from({length:4},(t,i)=>i+1);case"month":return Array.from({length:12},(t,i)=>i+1);default:return[]}}inputOptionChangedHandler(e){s.debug("time-period-selector","inputOptionChangedHandler",e.detail);const{value:t,name:i}=e.detail;i==="time-number"&&(this.selectedNumber=parseInt(t));const o={number:this.selectedNumber,period:this.selectedPeriod};this.timePeriodChanged.emit(o)}nylasFormDropdownChangedHandler(e){s.debug("time-period-selector","nylasFormDropdownChangedHandler",e.detail);const{value:t,name:i}=e.detail;i==="time-period"?(this.selectedPeriod=t,this.updateNumberOptionsAndSelectedNumber(t)):i==="time-number"&&(this.selectedNumber=parseInt(t));const o={number:this.selectedNumber,period:this.selectedPeriod};this.timePeriodChanged.emit(o)}updateNumberOptionsAndSelectedNumber(e){const t=this.calculateOptions(e);this.numberOptions=t.map(i=>({label:i.toString(),value:i.toString()})),this.selectedNumber=parseInt(this.numberOptions[0].value)}render(){return s.h("div",{key:"a4b421b31d77e41c8ef3c2a7533699a6cfaeb60c",class:"time-period-selector"},s.h("input-dropdown",{key:"b5f99b1d27195ad8fdc3617cf04e3fba3cfd49dd",id:"time-number",name:"time-number",inputValue:this.selectedNumber.toString(),exportparts:"sd_dropdown: tps__number-dropdown, sd_dropdown-button: tps__number-dropdown-button, sd_dropdown-content: tps__number-dropdown-content",options:this.numberOptions,defaultInputOption:this.numberOptions.find(e=>e.value==this.selectedNumber.toString())??this.numberOptions[0]}),s.h("select-dropdown",{key:"c06e213131979c07431ed1a6964bd0e0e2338b97",id:"time-period",name:"time-period",options:this.timePeriodOptions,exportparts:"sd_dropdown: tps__period-dropdown, sd_dropdown-button: tps__period-dropdown-button, sd_dropdown-content: tps__period-dropdown-content",pluralizedLabel:this.selectedNumber>1?"s":"",defaultSelectedOption:this.timePeriodOptions.find(e=>e.value==this.selectedPeriod)??this.timePeriodOptions[0],withSearch:!1}))}get host(){return s.getElement(this)}static get watchers(){return{defaultSelectedPeriod:["defaultSelectedPeriodChangedHandler"],defaultSelectedNumber:["defaultSelectedNumberChangedHandler"],timePeriods:["timePeriodsChangedHandler"]}}};l.style=u;exports.input_dropdown=a;exports.time_period_selector=l;
@@ -0,0 +1,15 @@
1
+ import { r as t, h as a } from "./index-812162da.js";
2
+ import "react";
3
+ import "react-dom";
4
+ const i = ".wave{display:flex;align-items:center;justify-content:center}.dot{width:4px;height:4px;background-color:var(--dot-color, white);border-radius:50%;margin:0 2px;animation:wave 1.5s infinite ease-in-out}.dot:nth-child(2){animation-delay:0.2s}.dot:nth-child(3){animation-delay:0.4s}@keyframes wave{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-4px)}}", d = i, n = class {
5
+ constructor(e) {
6
+ t(this, e), this.width = "15", this.height = "15";
7
+ }
8
+ render() {
9
+ return a("div", { key: "5a2e1d7f211e17dba936c594398751951d2276e9", class: "wave" }, a("div", { key: "96caaecdcb309348f961ed43774eb89a2a87e635", class: "dot" }), a("div", { key: "f1f707f4a133dd12fa71a5ae13d864ce26b125d8", class: "dot" }), a("div", { key: "34df820811090a46234faf4b8b5ee1e033554d11", class: "dot" }));
10
+ }
11
+ };
12
+ n.style = d;
13
+ export {
14
+ n as loading_icon
15
+ };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-f435e814.cjs");require("react");require("react-dom");const i=".wave{display:flex;align-items:center;justify-content:center}.dot{width:4px;height:4px;background-color:var(--dot-color, white);border-radius:50%;margin:0 2px;animation:wave 1.5s infinite ease-in-out}.dot:nth-child(2){animation-delay:0.2s}.dot:nth-child(3){animation-delay:0.4s}@keyframes wave{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-4px)}}",n=i,t=class{constructor(a){e.registerInstance(this,a),this.width="15",this.height="15"}render(){return e.h("div",{key:"451777deed2c5b92613340e5c49f2b88f3149ddb",class:"wave"},e.h("div",{key:"257478c933368a352a8e24e989f00f68157dc7f5",class:"dot"}),e.h("div",{key:"ab49e532f4228f89de93b7486ff905762a7f1e95",class:"dot"}),e.h("div",{key:"61a94bdcc940aec78fc5f3379be7085ee003d96a",class:"dot"}))}};t.style=n;exports.loading_icon=t;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-e3e9b594.cjs");require("react");require("react-dom");const i=".wave{display:flex;align-items:center;justify-content:center}.dot{width:4px;height:4px;background-color:var(--dot-color, white);border-radius:50%;margin:0 2px;animation:wave 1.5s infinite ease-in-out}.dot:nth-child(2){animation-delay:0.2s}.dot:nth-child(3){animation-delay:0.4s}@keyframes wave{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-4px)}}",n=i,t=class{constructor(a){e.registerInstance(this,a),this.width="15",this.height="15"}render(){return e.h("div",{key:"5a2e1d7f211e17dba936c594398751951d2276e9",class:"wave"},e.h("div",{key:"96caaecdcb309348f961ed43774eb89a2a87e635",class:"dot"}),e.h("div",{key:"f1f707f4a133dd12fa71a5ae13d864ce26b125d8",class:"dot"}),e.h("div",{key:"34df820811090a46234faf4b8b5ee1e033554d11",class:"dot"}))}};t.style=n;exports.loading_icon=t;
@@ -1 +1 @@
1
- "use strict";const n=require("./index-f435e814.cjs"),i=require("./index.es-9cc0eb3c-09dc620b.cjs");class g{constructor(t,e){this.nylasAuth=t,this.nylasAuthStore=e}async validateSession(){const t=await this.isAccessTokenValid();if(!t)this.logout();else{let e=await this.nylasAuth.getTokenInfo();if(e){const a=Math.floor(Date.now()/1e3);if(e.expires_in&&e.expires_in-a<3e5&&(n.debug("[NylasAuthConnectorMixin] Refreshing access token"),e=await this.nylasAuth.refreshAccessToken(),!e)){n.debug("[NylasAuthConnectorMixin] Token is expired and could not be refreshed. Logging out."),this.logout();return}this.nylasAuthStore.state.tokenInfo=e}}this.nylasAuthStore.state.isAuthenticated=t}async isAuthenticated(){return this.nylasAuth.isAuthenticated()}async getTokenInfo(){return this.nylasAuth.getTokenInfo()}async isAccessTokenValid(){return this.nylasAuth.isAccessTokenValid()}async logout(){await this.nylasAuth.logout()}async getHostedAuthRedirectURL(t,e,s){return this.nylasAuth.getHostedAuthRedirectURL(t,e,s)}async manageHostedAuthCodeExchange(t){const s=new URL(t).searchParams.get("code");if(s){const a=await this.nylasAuth.exchangeAuthCodeForTokenInfo(s);if(a)return this.nylasAuthStore.state.tokenInfo=a,this.nylasAuthStore.state.isAuthenticated=!0,a}return null}}class f{constructor(t,e,s){this.nylasAuth=t,this.nylasAuthStore=e,this.nylasMailboxStore=s}async getMessages(){var o;if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email",["read-only","modify"]))throw new Error("Missing message:read-only scope");this.nylasMailboxStore.state.state="loading";const t=this.nylasMailboxStore.state.messgeQueryParams,e=new URLSearchParams;for(const h in t){const u=(o=t[h])==null?void 0:o.toString();u&&e.append(h,u)}const s=`/v3/grants/me/messages?${e.toString()}`,a=await this.nylasAuth.nylasAPIRequest(s);if(i.Xr(a))throw new i.Zr(a.error);const r=a.data;return this.nylasMailboxStore.state.messages=r,this.nylasMailboxStore.state.state="ready",r}async getThreadMessages(t){if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email",["read-only","modify"]))throw new Error("Missing message:read-only scope");const e=await this.nylasAuth.nylasAPIRequest(`/v3/grants/me/messages?thread_id=${t}&fields=include_headers`);if(i.Xr(e))throw new i.Zr(e.error);const s=e.data;return this.nylasMailboxStore.state.messages=s,s}downloadMessageAttachments(t){if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email",["read-only","modify"]))throw new Error("Missing message:read-only scope");const e=[],s=t.attachments||[];for(const a of s){const r=this.nylasAuth.nylasDownloadFileRequest(`/v3/grants/me/attachments/${a.id}?message_id=${t.id}`);e.push(r)}return e}async summarizeText(t){if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email",["read-only","modify"]))throw new Error("Missing message:read-only scope");const e=await this.nylasAuth.nylasAPIRequest("/v3/grants/me/mailbox/summarize","POST",{message:{body:t}},!0,this.nylasAuth.config.elementsApiUri);if(i.Xr(e))throw new i.Zr(e.error);return e.data.summary}async textToSpeech(t,e){if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email",["read-only","modify"]))throw new Error("Missing message:read-only scope");return this.nylasAuth.nylasAPIRequest("/v3/grants/me/mailbox/tts","POST",{text:t},!1,this.nylasAuth.config.elementsApiUri,{...e?{signal:e==null?void 0:e.signal}:{}})}}class w{constructor(t,e,s,a){this.nylasAuth=t,this.nylasAuthStore=e,this.nylasMailboxStore=s,this.router=a}async getThreads(t,e="overwrite",s=!0){var c;if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email",["read-only","modify"]))throw new Error("Missing thread:read-only scope");s&&(this.nylasMailboxStore.state.state="loading");const a=t||this.nylasMailboxStore.state.threadsQueryParams,r=new URLSearchParams;for(const y in a){const d=(c=a[y])==null?void 0:c.toString();typeof d<"u"&&d!==null&&r.append(y,d)}a.search_query_native?this.router.navigate(`/?query=${a.search_query_native}`,!0):this.nylasMailboxStore.state.threadsQueryParams.search_query_native&&!a.search_query_native&&this.router.navigate("/",!0),a.page_token||(this.nylasMailboxStore.state.previousThreadPageTokens=[]),this.nylasMailboxStore.state.threadsQueryParams=a;const o=`/v3/grants/me/threads?${r.toString()}`,h=await this.nylasAuth.nylasAPIRequest(o);if(i.Xr(h))throw new i.Zr(h.error);const u=h.data;switch(e){case"prepend":this.nylasMailboxStore.state.threads=[...u,...this.nylasMailboxStore.state.threads];break;case"append":this.nylasMailboxStore.state.threads=[...this.nylasMailboxStore.state.threads,...u];break;case"overwrite":default:this.nylasMailboxStore.state.threads=u;break}return h.next_cursor?this.nylasMailboxStore.state.nextThreadPageToken=h.next_cursor:this.nylasMailboxStore.state.nextThreadPageToken=null,s&&(this.nylasMailboxStore.state.state="ready"),u}async getThread(t){if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email",["read-only","modify"]))throw new Error("Missing thread:read-only scope");const e=this.nylasMailboxStore.state.threads.find(o=>o.id===t);if(e)return e;this.nylasMailboxStore.state.state="loading";const s=`/v3/grants/me/threads/${t}`,a=await this.nylasAuth.nylasAPIRequest(s);if(i.Xr(a))throw new i.Zr(a.error);const r=a.data;return this.nylasMailboxStore.state.threads=this.nylasMailboxStore.state.threads.map(o=>o.id===r.id?r:o),this.nylasMailboxStore.state.state="ready",r}async nextThreadPage(t="overwrite",e=!0){if(!this.nylasMailboxStore.state.nextThreadPageToken)throw new Error("No next page token");this.nylasMailboxStore.state.previousThreadPageTokens=Array.from(new Set([...this.nylasMailboxStore.state.previousThreadPageTokens,this.nylasMailboxStore.state.threadsQueryParams.page_token??null]));const s=this.nylasMailboxStore.state.nextThreadPageToken;return this.getThreads({...this.nylasMailboxStore.state.threadsQueryParams,page_token:s},t,e)}async previousThreadPage(t="overwrite",e=!0){if(!this.nylasMailboxStore.state.previousThreadPageTokens.length)throw new Error("No previous page token");const s=[...this.nylasMailboxStore.state.previousThreadPageTokens],a=s.pop();return this.nylasMailboxStore.state.previousThreadPageTokens=s,this.getThreads({...this.nylasMailboxStore.state.threadsQueryParams,page_token:a??void 0},t,e)}updateThreadQueryParams(t){this.nylasMailboxStore.state.threadsQueryParams={...this.nylasMailboxStore.state.threadsQueryParams,...t}}back(){this.router.navigate("/",!0),this.nylasMailboxStore.state.selectedThread=null}unSelectThread(){this.nylasMailboxStore.state.selectedThread=null}async selectThread(t){this.router.navigate(`/thread/${t.id}`,!0),this.nylasMailboxStore.state.selectedThread=t,t.unread&&this.markThreadAsRead(t).catch(e=>{n.debug("Error marking thread as read",e)})}async markThreadAsRead(t){return this.updateThread(t,{unread:!1})}async updateThread(t,e){if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email","modify"))throw new Error("Missing thread:modify scope");const s=`/v3/grants/me/threads/${t.id}`,a=await this.nylasAuth.nylasAPIRequest(s,"PUT",e);if(i.Xr(a))throw new i.Zr(a.error);const r=a.data;return this.nylasMailboxStore.state.threads=this.nylasMailboxStore.state.threads.map(o=>o.id===r.id?r:o),this.nylasMailboxStore.state.selectedThread=r,r}}class m{constructor(t,e,s){this.nylasAuth=t,this.nylasAuthStore=e,this.nylasMailboxStore=s}async getFolders(){if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email",["read-only","modify"]))throw new Error("Missing thread:read-only scope");this.nylasMailboxStore.state.state="loading";const t="/v3/grants/me/folders",e=await this.nylasAuth.nylasAPIRequest(t);if(i.Xr(e))throw new i.Zr(e.error);const s=e.data;return this.nylasMailboxStore.state.folders=s,this.nylasMailboxStore.state.state="ready",s}async selectFolder(t){this.nylasMailboxStore.state.threadsQueryParams={in:t.id,...this.nylasMailboxStore.state.threadsQueryParams||{}}}}class p extends Event{constructor(t,e){super(t,e),this.oldURL=e.oldURL,this.newURL=e.newURL}}class S{constructor(){this.routeChangeListeners=[],n.debug("HashRouter constructor")}destroy(){n.debug("HashRouter destroy"),window.removeEventListener("hashchange",this.onRouteChange.bind(this))}init(){if(n.debug("HashRouter init"),window.addEventListener("hashchange",this.onRouteChange.bind(this)),typeof HashChangeEvent<"u"){const t=new HashChangeEvent("hashchange",{oldURL:"",newURL:window.location.href});this.onRouteChange(t)}else{const t=new p("hashchange",{oldURL:"",newURL:window.location.href});this.onRouteChange(t)}}addRouteChangeListener(t,e){n.debug("HashRouter addRouteChangeListener"),this.routeChangeListeners.push([t,e])}navigate(t,e){if(n.debug("HashRouter navigate"),e)return window.history.pushState(null,"",`#${t}`);window.location.hash=t}setRoute(t){n.debug("HashRouter setRoute"),window.location.hash=t}matchRoute(t,e){const s=t.split("/"),a=e.split("/");if(n.debug(`HashRouter matchRoute route=${t} path=${e}`,{routeParts:s,pathParts:a}),s[1]===""&&a[0]==="")return!0;if(s.length!==a.length)return!1;for(let r=0;r<s.length;r++){const o=s[r],h=a[r];if(!o.startsWith(":")&&o!==h)return!1}return!0}getRouteParams(t){n.debug("HashRouter getRouteParams");const e={},s=t.split("/"),a=window.location.hash.split("/");return s.forEach((r,o)=>{if(r.startsWith(":")){const h=r.substring(1);e[h]=a[o]}}),e}getRouteWithParams(t,e){n.debug("HashRouter getRouteWithParams");let s=t;return Object.keys(e).forEach(a=>{s=s.replace(`:${a}`,e[a])}),s}getRoute(){return n.debug("HashRouter getRoute"),window.location.hash}onRouteChange(t){this.routeChangeListeners.forEach(async([e,s])=>{const a=t.newURL.indexOf("#")===-1?"":t.newURL.substring(t.newURL.indexOf("#")+1);if(n.debug(`HashRouter onRouteChange route=${e} path=${a}`,{event:t}),!this.matchRoute(e,a)){n.debug(`HashRouter onRouteChange route=${e} path=${a} does not match`);return}const r=this.getRouteParams(e);await s(e,a,r)})}getBasePath(){return n.debug("HashRouter getBasePath"),""}}function A(l={}){const t={isAuthenticated:!1,tokenInfo:null,state:"ready",...l},e=n.createStore(t);return e.reset=()=>{for(const s in t){const a=t[s];e.set(s,a)}},e}function x(l={}){const t={state:"ready",messages:[],threads:[],folders:[],selectedThread:null,nextThreadPageToken:null,previousThreadPageTokens:[],searchQuery:"",hasNextThreadPage:!1,hasPreviousThreadPage:!1,selectedFolder:"inbox",threadsQueryParams:{in:"inbox"},messgeQueryParams:{fields:"include_headers"},...l},e=n.createStore({...t});return e.onChange("nextThreadPageToken",s=>{e.set("hasNextThreadPage",s!==null)}),e.onChange("previousThreadPageTokens",s=>{e.set("hasPreviousThreadPage",s.length>0)}),e.onChange("threadsQueryParams",s=>{e.set("selectedFolder",s.in||"inbox"),e.set("searchQuery",s.search_query_native||"")}),e.reset=()=>{for(const s in t){const a=t[s];e.set(s,a)}},e}exports.CreateNylasAuthStore=A;exports.CreateNylasMailboxStore=x;exports.HashRouter=S;exports.NylasAuthConnector=g;exports.NylasFoldersConnector=m;exports.NylasMessagesConnector=f;exports.NylasThreadsConnector=w;
1
+ "use strict";const n=require("./index-e3e9b594.cjs"),i=require("./index.es-9cc0eb3c-0c99c055.cjs");class g{constructor(t,e){this.nylasAuth=t,this.nylasAuthStore=e}async validateSession(){const t=await this.isAccessTokenValid();if(!t)this.logout();else{let e=await this.nylasAuth.getTokenInfo();if(e){const a=Math.floor(Date.now()/1e3);if(e.expires_in&&e.expires_in-a<3e5&&(n.debug("[NylasAuthConnectorMixin] Refreshing access token"),e=await this.nylasAuth.refreshAccessToken(),!e)){n.debug("[NylasAuthConnectorMixin] Token is expired and could not be refreshed. Logging out."),this.logout();return}this.nylasAuthStore.state.tokenInfo=e}}this.nylasAuthStore.state.isAuthenticated=t}async isAuthenticated(){return this.nylasAuth.isAuthenticated()}async getTokenInfo(){return this.nylasAuth.getTokenInfo()}async isAccessTokenValid(){return this.nylasAuth.isAccessTokenValid()}async logout(){await this.nylasAuth.logout()}async getHostedAuthRedirectURL(t,e,s){return this.nylasAuth.getHostedAuthRedirectURL(t,e,s)}async manageHostedAuthCodeExchange(t){const s=new URL(t).searchParams.get("code");if(s){const a=await this.nylasAuth.exchangeAuthCodeForTokenInfo(s);if(a)return this.nylasAuthStore.state.tokenInfo=a,this.nylasAuthStore.state.isAuthenticated=!0,a}return null}}class f{constructor(t,e,s){this.nylasAuth=t,this.nylasAuthStore=e,this.nylasMailboxStore=s}async getMessages(){var o;if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email",["read-only","modify"]))throw new Error("Missing message:read-only scope");this.nylasMailboxStore.state.state="loading";const t=this.nylasMailboxStore.state.messgeQueryParams,e=new URLSearchParams;for(const h in t){const u=(o=t[h])==null?void 0:o.toString();u&&e.append(h,u)}const s=`/v3/grants/me/messages?${e.toString()}`,a=await this.nylasAuth.nylasAPIRequest(s);if(i.Xr(a))throw new i.Zr(a.error);const r=a.data;return this.nylasMailboxStore.state.messages=r,this.nylasMailboxStore.state.state="ready",r}async getThreadMessages(t){if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email",["read-only","modify"]))throw new Error("Missing message:read-only scope");const e=await this.nylasAuth.nylasAPIRequest(`/v3/grants/me/messages?thread_id=${t}&fields=include_headers`);if(i.Xr(e))throw new i.Zr(e.error);const s=e.data;return this.nylasMailboxStore.state.messages=s,s}downloadMessageAttachments(t){if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email",["read-only","modify"]))throw new Error("Missing message:read-only scope");const e=[],s=t.attachments||[];for(const a of s){const r=this.nylasAuth.nylasDownloadFileRequest(`/v3/grants/me/attachments/${a.id}?message_id=${t.id}`);e.push(r)}return e}async summarizeText(t){if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email",["read-only","modify"]))throw new Error("Missing message:read-only scope");const e=await this.nylasAuth.nylasAPIRequest("/v3/grants/me/mailbox/summarize","POST",{message:{body:t}},!0,this.nylasAuth.config.elementsApiUri);if(i.Xr(e))throw new i.Zr(e.error);return e.data.summary}async textToSpeech(t,e){if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email",["read-only","modify"]))throw new Error("Missing message:read-only scope");return this.nylasAuth.nylasAPIRequest("/v3/grants/me/mailbox/tts","POST",{text:t},!1,this.nylasAuth.config.elementsApiUri,{...e?{signal:e==null?void 0:e.signal}:{}})}}class w{constructor(t,e,s,a){this.nylasAuth=t,this.nylasAuthStore=e,this.nylasMailboxStore=s,this.router=a}async getThreads(t,e="overwrite",s=!0){var c;if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email",["read-only","modify"]))throw new Error("Missing thread:read-only scope");s&&(this.nylasMailboxStore.state.state="loading");const a=t||this.nylasMailboxStore.state.threadsQueryParams,r=new URLSearchParams;for(const y in a){const d=(c=a[y])==null?void 0:c.toString();typeof d<"u"&&d!==null&&r.append(y,d)}a.search_query_native?this.router.navigate(`/?query=${a.search_query_native}`,!0):this.nylasMailboxStore.state.threadsQueryParams.search_query_native&&!a.search_query_native&&this.router.navigate("/",!0),a.page_token||(this.nylasMailboxStore.state.previousThreadPageTokens=[]),this.nylasMailboxStore.state.threadsQueryParams=a;const o=`/v3/grants/me/threads?${r.toString()}`,h=await this.nylasAuth.nylasAPIRequest(o);if(i.Xr(h))throw new i.Zr(h.error);const u=h.data;switch(e){case"prepend":this.nylasMailboxStore.state.threads=[...u,...this.nylasMailboxStore.state.threads];break;case"append":this.nylasMailboxStore.state.threads=[...this.nylasMailboxStore.state.threads,...u];break;case"overwrite":default:this.nylasMailboxStore.state.threads=u;break}return h.next_cursor?this.nylasMailboxStore.state.nextThreadPageToken=h.next_cursor:this.nylasMailboxStore.state.nextThreadPageToken=null,s&&(this.nylasMailboxStore.state.state="ready"),u}async getThread(t){if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email",["read-only","modify"]))throw new Error("Missing thread:read-only scope");const e=this.nylasMailboxStore.state.threads.find(o=>o.id===t);if(e)return e;this.nylasMailboxStore.state.state="loading";const s=`/v3/grants/me/threads/${t}`,a=await this.nylasAuth.nylasAPIRequest(s);if(i.Xr(a))throw new i.Zr(a.error);const r=a.data;return this.nylasMailboxStore.state.threads=this.nylasMailboxStore.state.threads.map(o=>o.id===r.id?r:o),this.nylasMailboxStore.state.state="ready",r}async nextThreadPage(t="overwrite",e=!0){if(!this.nylasMailboxStore.state.nextThreadPageToken)throw new Error("No next page token");this.nylasMailboxStore.state.previousThreadPageTokens=Array.from(new Set([...this.nylasMailboxStore.state.previousThreadPageTokens,this.nylasMailboxStore.state.threadsQueryParams.page_token??null]));const s=this.nylasMailboxStore.state.nextThreadPageToken;return this.getThreads({...this.nylasMailboxStore.state.threadsQueryParams,page_token:s},t,e)}async previousThreadPage(t="overwrite",e=!0){if(!this.nylasMailboxStore.state.previousThreadPageTokens.length)throw new Error("No previous page token");const s=[...this.nylasMailboxStore.state.previousThreadPageTokens],a=s.pop();return this.nylasMailboxStore.state.previousThreadPageTokens=s,this.getThreads({...this.nylasMailboxStore.state.threadsQueryParams,page_token:a??void 0},t,e)}updateThreadQueryParams(t){this.nylasMailboxStore.state.threadsQueryParams={...this.nylasMailboxStore.state.threadsQueryParams,...t}}back(){this.router.navigate("/",!0),this.nylasMailboxStore.state.selectedThread=null}unSelectThread(){this.nylasMailboxStore.state.selectedThread=null}async selectThread(t){this.router.navigate(`/thread/${t.id}`,!0),this.nylasMailboxStore.state.selectedThread=t,t.unread&&this.markThreadAsRead(t).catch(e=>{n.debug("Error marking thread as read",e)})}async markThreadAsRead(t){return this.updateThread(t,{unread:!1})}async updateThread(t,e){if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email","modify"))throw new Error("Missing thread:modify scope");const s=`/v3/grants/me/threads/${t.id}`,a=await this.nylasAuth.nylasAPIRequest(s,"PUT",e);if(i.Xr(a))throw new i.Zr(a.error);const r=a.data;return this.nylasMailboxStore.state.threads=this.nylasMailboxStore.state.threads.map(o=>o.id===r.id?r:o),this.nylasMailboxStore.state.selectedThread=r,r}}class m{constructor(t,e,s){this.nylasAuth=t,this.nylasAuthStore=e,this.nylasMailboxStore=s}async getFolders(){if(!this.nylasAuthStore.state.isAuthenticated)throw new Error("Not authenticated");if(!this.nylasAuth.hasScopeByType("email",["read-only","modify"]))throw new Error("Missing thread:read-only scope");this.nylasMailboxStore.state.state="loading";const t="/v3/grants/me/folders",e=await this.nylasAuth.nylasAPIRequest(t);if(i.Xr(e))throw new i.Zr(e.error);const s=e.data;return this.nylasMailboxStore.state.folders=s,this.nylasMailboxStore.state.state="ready",s}async selectFolder(t){this.nylasMailboxStore.state.threadsQueryParams={in:t.id,...this.nylasMailboxStore.state.threadsQueryParams||{}}}}class p extends Event{constructor(t,e){super(t,e),this.oldURL=e.oldURL,this.newURL=e.newURL}}class S{constructor(){this.routeChangeListeners=[],n.debug("HashRouter constructor")}destroy(){n.debug("HashRouter destroy"),window.removeEventListener("hashchange",this.onRouteChange.bind(this))}init(){if(n.debug("HashRouter init"),window.addEventListener("hashchange",this.onRouteChange.bind(this)),typeof HashChangeEvent<"u"){const t=new HashChangeEvent("hashchange",{oldURL:"",newURL:window.location.href});this.onRouteChange(t)}else{const t=new p("hashchange",{oldURL:"",newURL:window.location.href});this.onRouteChange(t)}}addRouteChangeListener(t,e){n.debug("HashRouter addRouteChangeListener"),this.routeChangeListeners.push([t,e])}navigate(t,e){if(n.debug("HashRouter navigate"),e)return window.history.pushState(null,"",`#${t}`);window.location.hash=t}setRoute(t){n.debug("HashRouter setRoute"),window.location.hash=t}matchRoute(t,e){const s=t.split("/"),a=e.split("/");if(n.debug(`HashRouter matchRoute route=${t} path=${e}`,{routeParts:s,pathParts:a}),s[1]===""&&a[0]==="")return!0;if(s.length!==a.length)return!1;for(let r=0;r<s.length;r++){const o=s[r],h=a[r];if(!o.startsWith(":")&&o!==h)return!1}return!0}getRouteParams(t){n.debug("HashRouter getRouteParams");const e={},s=t.split("/"),a=window.location.hash.split("/");return s.forEach((r,o)=>{if(r.startsWith(":")){const h=r.substring(1);e[h]=a[o]}}),e}getRouteWithParams(t,e){n.debug("HashRouter getRouteWithParams");let s=t;return Object.keys(e).forEach(a=>{s=s.replace(`:${a}`,e[a])}),s}getRoute(){return n.debug("HashRouter getRoute"),window.location.hash}onRouteChange(t){this.routeChangeListeners.forEach(async([e,s])=>{const a=t.newURL.indexOf("#")===-1?"":t.newURL.substring(t.newURL.indexOf("#")+1);if(n.debug(`HashRouter onRouteChange route=${e} path=${a}`,{event:t}),!this.matchRoute(e,a)){n.debug(`HashRouter onRouteChange route=${e} path=${a} does not match`);return}const r=this.getRouteParams(e);await s(e,a,r)})}getBasePath(){return n.debug("HashRouter getBasePath"),""}}function A(l={}){const t={isAuthenticated:!1,tokenInfo:null,state:"ready",...l},e=n.createStore(t);return e.reset=()=>{for(const s in t){const a=t[s];e.set(s,a)}},e}function x(l={}){const t={state:"ready",messages:[],threads:[],folders:[],selectedThread:null,nextThreadPageToken:null,previousThreadPageTokens:[],searchQuery:"",hasNextThreadPage:!1,hasPreviousThreadPage:!1,selectedFolder:"inbox",threadsQueryParams:{in:"inbox"},messgeQueryParams:{fields:"include_headers"},...l},e=n.createStore({...t});return e.onChange("nextThreadPageToken",s=>{e.set("hasNextThreadPage",s!==null)}),e.onChange("previousThreadPageTokens",s=>{e.set("hasPreviousThreadPage",s.length>0)}),e.onChange("threadsQueryParams",s=>{e.set("selectedFolder",s.in||"inbox"),e.set("searchQuery",s.search_query_native||"")}),e.reset=()=>{for(const s in t){const a=t[s];e.set(s,a)}},e}exports.CreateNylasAuthStore=A;exports.CreateNylasMailboxStore=x;exports.HashRouter=S;exports.NylasAuthConnector=g;exports.NylasFoldersConnector=m;exports.NylasMessagesConnector=f;exports.NylasThreadsConnector=w;
@@ -1,5 +1,5 @@
1
- import { d as o, e as f } from "./index-f383e3c4.js";
2
- import { X as u, Z as d } from "./index.es-9cc0eb3c-510db795.js";
1
+ import { d as o, e as f } from "./index-812162da.js";
2
+ import { X as u, Z as d } from "./index.es-9cc0eb3c-52226859.js";
3
3
  class S {
4
4
  constructor(t, e) {
5
5
  this.nylasAuth = t, this.nylasAuthStore = e;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index-e3e9b594.cjs"),f=require("./register-component-a5a9ca5d-b68b6039.cjs"),h=require("./constants-f34b9c6e-b774916c.cjs"),w=require("./index-6d9eeb53-3049fc04.cjs");require("./index-53420959-d3254a34.cjs");require("react");require("react-dom");const X=':host{display:block;--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}sp-theme{height:inherit;display:flex;flex-direction:column;justify-content:space-between;align-items:center;font-family:var(--nylas-font-family)}.event-card-wrapper{display:flex;align-items:center;flex-direction:column;background-color:var(--nylas-base-0);color:var(--nylas-base-900);border-radius:var(--nylas-border-radius-3x);position:relative;margin-top:1rem;margin-bottom:2rem;width:424px;box-shadow:0px 1px 4px rgba(0, 0, 0, 0.1), 0px 3px 6px rgba(0, 0, 0, 0.06)}@media screen and (max-width: 768px){.event-card-wrapper{width:100%;border-radius:0px}}.calendar-icon{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:50%;position:absolute;top:-1.25rem;left:50%;transform:translateX(-50%);background-color:var(--nylas-base-0);border:1px solid var(--nylas-base-200);color:var(--nylas-base-700)}.booked-event-header{margin:1.5rem 4rem;overflow-wrap:anywhere;display:flex;align-items:center;flex-direction:column;font-size:1rem;font-weight:400}.booked-event-header h2{color:var(--nylas-base-600);margin-top:1.5rem;margin-bottom:0.25rem;font-size:1.125rem;font-weight:600}.booking-date-time,.booking-participants{padding:0 1rem;margin-top:1.5rem;margin-left:3rem;display:flex;flex-direction:column;justify-content:space-between;align-self:flex-start;position:relative}.booking-date-time svg,.booking-participants svg{color:var(--nylas-base-700);position:absolute;left:-10px}.booking-date-time .block,.booking-participants .block{display:block}.booking-date-time h3,.booking-participants h3{color:var(--nylas-base-600);margin:0;font-size:16px;font-weight:600;line-height:1.25rem;text-align:justify;margin-bottom:4px}.booking-date-time p,.booking-participants p{font-size:16px;margin:0;font-weight:400;text-align:justify;color:var(--nylas-base-800)}.booking-participants{margin-bottom:1.5rem}.booked-event-timezone{display:flex;color:var(--nylas-base-600);margin-bottom:1.5rem;gap:4px;margin:2rem;align-items:center;align-self:flex-end}.footer{padding:0.5rem;display:grid;grid-template-columns:1fr 1fr;gap:0.5rem;box-sizing:border-box;background-color:var(--nylas-base-25);width:100%;border-radius:0 0 var(--nylas-border-radius-2x) var(--nylas-border-radius-2x)}.footer.no-template-cols{grid-template-columns:1fr}.footer.no-footer{display:none}sp-button{background-color:var(--nylas-base-0);color:var(--nylas-base-700);border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x);font-size:16px;padding:8px;font-family:var(--nylas-font-family);font-weight:600;height:48px;line-height:24px}sp-button.cancel{color:var(--nylas-error)}sp-button.cancel:hover,sp-button.cancel:focus{border-color:var(--nylas-error)}sp-button.cancel:active{color:var(--nylas-error-pressed);border-color:var(--nylas-error-pressed)}sp-button.reschedule:hover,sp-button.reschedule:focus{border-color:var(--nylas-primary)}sp-button.reschedule:active{border-color:var(--nylas-base-600)}sp-divider{background-color:var(--nylas-base-200);height:1px}calendar-check-icon{display:flex;align-items:center;justify-content:center;height:100%}',J=X;var K=function(e,a,i,o){var s=arguments.length,n=s<3?a:o===null?o=Object.getOwnPropertyDescriptor(a,i):o,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,a,i,o);else for(var l=e.length-1;l>=0;l--)(r=e[l])&&(n=(s<3?r(n):s>3?r(a,i,n):r(a,i))||n);return s>3&&n&&Object.defineProperty(a,i,n),n},_=function(e,a){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,a)};const M=class{constructor(e){t.registerInstance(this,e),this.cancelBookingButtonClicked=t.createEvent(this,"cancelBookingButtonClicked",7),this.rescheduleButtonClicked=t.createEvent(this,"rescheduleButtonClicked",7),this.rescheduleBookedEventError=t.createEvent(this,"rescheduleBookedEventError",7),this.cancelBookedEventValidationError=t.createEvent(this,"cancelBookedEventValidationError",7),this.handleCancelBookingButtonClicked=()=>{var s;const a=new Date(this.selectedTimeslot.start_time),i=(s=this.configSettings)==null?void 0:s.scheduler.min_cancellation_notice,o=a.getTime()-i*60*1e3;a.getTime()<o?this.cancelBookedEventValidationError.emit({error:{title:"Cancellation Error",message:`You cannot cancel the booking within ${i} minutes of the event.`}}):this.cancelBookingButtonClicked.emit({bookingId:this.eventInfo.booking_id})},this.handleRescheduleButtonClicked=()=>{const a=i=>{this.rescheduleBookedEventError.emit(i)};this.rescheduleButtonClicked.emit({bookingId:this.eventInfo.booking_id,errorHandler:a})},this.getOrganizer=a=>a==null?void 0:a.organizer,this.getPaticipantType=a=>{switch(a){case"host":return"Host";case"you":return"You";default:return""}},this.eventInfo=void 0,this.rescheduleBookingId=void 0,this.bookingInfo=void 0,this.selectedTimezone=Intl.DateTimeFormat().resolvedOptions().timeZone,this.selectedTimeslot=void 0,this.configSettings=void 0}connectedCallback(){}disconnectedCallback(){}async componentWillLoad(){t.debug("[nylas-booked-event-card] Component will load")}async componentDidLoad(){t.debug("[nylas-booked-event-card] Component did load"),this.eventInfo||console.warn('[nylas-booked-event-card] "eventInfo" prop missing. Please provide the event info to display the event details in the booked event card component.'),this.bookingInfo||console.warn('[nylas-booked-event-card] "bookingInfo" prop missing. Please provide the booking info to display the guest details in the booked event card component.')}render(){var e,a,i,o,s,n,r,l,c,d,u,p,y,g,m,b,v,$,G,q,V;return t.h(t.Host,{key:"25f461e554d352c8b62341f77c84d61521a40472",part:"nbec"},t.h("sp-theme",{key:"fa7ae9d97b3c334d71a64076bd6c5787b48b124b",theme:"spectrum",color:"dark",scale:"medium"},t.h("div",{key:"731d9d89bfc2f63b8a1095ea671f39d1a99dc4a4",class:"booked-event-timezone"},t.h("globe-icon",{key:"e7a7d73d7c9461f34145ddf3e99bf5640b39ab56"}),h.TIMEZONE_MAP[this.selectedTimezone]),t.h("div",{key:"dbb07cac45a1528a2633119af6050a630f8df173",class:"event-card-wrapper",part:"nbec__card"},t.h("div",{key:"79b6b636707f8e867358da1b4340e6f0bfeb386e",class:"calendar-icon"},t.h("calendar-check-icon",{key:"a268b01ecbf64976dc61c9e3c66a67cade9d2227"})),t.h("div",{key:"52c4c97407582b05bfb87e1379930f7cf149c013",class:"booked-event-header"},t.h("h2",{key:"ed4631c601b4920b20c27d158063dcbef92084d4",slot:"card-title",part:"nbec__title"},"Booking ",this.rescheduleBookingId?"rescheduled":"confirmed","!"),t.h("div",{key:"f5e93f73c4828764cb7e27cc3d5ab2b761e66fdc",part:"nbec__description"},((e=this.getOrganizer(this.eventInfo))==null?void 0:e.name)||((a=this.getOrganizer(this.eventInfo))==null?void 0:a.email)," & ",((o=(i=this.bookingInfo)==null?void 0:i.primaryParticipant)==null?void 0:o.name)||((n=(s=this.bookingInfo)==null?void 0:s.primaryParticipant)==null?void 0:n.email))),t.h("sp-divider",{key:"d9f14eeb24c4935f131edebb3102ffd69d2bde43"}),t.h("div",{key:"57f6f7877162eb8de8898d6523dac452b3c841e9",class:"booking-date-time"},t.h("checkmark-circle-icon",{key:"5bd672ae7c70b0102d6a14e2761b8ecc222ce488"}),t.h("h3",{key:"5e8ca582a26a51f790ca111648381a10f8ef917c"},"Booking date and time"),t.h("p",{key:"0b98f73c94add678003f63cd1e59352f7acd29b3"},new Date((r=this.selectedTimeslot)==null?void 0:r.start_time).toLocaleDateString(void 0,{dateStyle:"full"})," ",t.h("br",{key:"cc2a50917760651ca2e015fa22f264740b545a58"}),new Date((l=this.selectedTimeslot)==null?void 0:l.start_time).toLocaleTimeString(void 0,{timeStyle:"short"})," -"," ",new Date((c=this.selectedTimeslot)==null?void 0:c.end_time).toLocaleTimeString(void 0,{timeStyle:"short"}))),t.h("div",{key:"5ccf1dbc6002c9eaf60b3bd9211e590ab9135d68",class:"booking-participants"}),t.h("sp-divider",{key:"7ff9b9f4fa4bfc19da47d358ddda325b13b1a465"}),t.h("div",{key:"2c3d69854b255864cca3782a9ad87175a18d8cf9",class:{footer:!0,"no-footer":((u=(d=this.configSettings)==null?void 0:d.scheduler)==null?void 0:u.hide_cancellation_options)&&((y=(p=this.configSettings)==null?void 0:p.scheduler)==null?void 0:y.hide_rescheduling_options),"no-template-cols":((m=(g=this.configSettings)==null?void 0:g.scheduler)==null?void 0:m.hide_cancellation_options)||((v=(b=this.configSettings)==null?void 0:b.scheduler)==null?void 0:v.hide_rescheduling_options)}},!((G=($=this.configSettings)==null?void 0:$.scheduler)!=null&&G.hide_cancellation_options)&&t.h("sp-button",{variant:"secondary",treatment:"outline",class:"cancel",onClick:this.handleCancelBookingButtonClicked,part:"nbec__button-outline nbec__cancel-cta"},"Cancel booking"),!((V=(q=this.configSettings)==null?void 0:q.scheduler)!=null&&V.hide_rescheduling_options)&&t.h("sp-button",{variant:"secondary",treatment:"outline",class:"reschedule",onClick:this.handleRescheduleButtonClicked,part:"nbec__button-outline nbec__reschedule-cta"},"Reschedule")))))}};K([f.RegisterComponent({name:"nylas-booked-event-card",stateToProps:new Map([["scheduler.bookingInfo","bookingInfo"],["scheduler.rescheduleBookingId","rescheduleBookingId"],["scheduler.selectedTimezone","selectedTimezone"],["scheduler.selectedTimeslot","selectedTimeslot"],["scheduler.configSettings","configSettings"]]),eventToProps:{cancelBookingButtonClicked:async(e,a)=>{a.scheduler.setCancel(e.detail.bookingId)},rescheduleButtonClicked:async(e,a)=>{const i=await a.scheduler.setReschedule(e.detail.bookingId),{errorHandler:o}=e.detail;o&&(!i||"error"in i)&&o(i)}},fireRegisterEvent:!0}),_("design:type",Function),_("design:paramtypes",[]),_("design:returntype",void 0)],M.prototype,"render",null);M.style=J;const Q=':host{display:block;height:100%;--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}.nylas-booking-form{width:100%;padding:1.5rem;box-sizing:border-box;height:450px;overflow-y:auto;height:100%}form{height:100%;display:flex;flex-direction:column;justify-content:space-between;align-items:center}sp-textfield{--spectrum-corner-radius-100:var(--nylas-border-radius-2x);--spectrum-textfield-border-color:var(--nylas-base-300);position:relative;width:100%;height:48px;margin-bottom:16px;color:var(--nylas-base-500)}.cta{width:100%;display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:0.5rem;padding:14px;box-sizing:border-box;border-top:1px solid var(--nylas-base-200)}@media screen and (max-width: 768px){.cta{flex-direction:column-reverse}}sp-button{background-color:transparent;color:var(--nylas-base-800);border-radius:var(--nylas-border-radius-2x);--button-width:50%;font-family:var(--nylas-font-family);font-size:16px;font-weight:600;border:none;height:48px;padding:14px}@media screen and (max-width: 768px){sp-button{--button-width:100%}}sp-button:hover,sp-button:focus{background-color:var(--nylas-base-100);color:var(--nylas-primary);border-radius:var(--nylas-border-radius-2x)}sp-button:active{background-color:var(--nylas-base-200);color:var(--nylas-base-800)}sp-button.back{width:var(--button-width);background-color:transparent;color:var(--nylas-base-700);outline:1px solid var(--nylas-base-300)}sp-button.back:hover,sp-button.back:focus{outline-color:var(--nylas-primary)}sp-button.back:active{outline:2px solid var(--nylas-base-600)}sp-button.book{width:var(--button-width);background-color:var(--nylas-primary);color:var(--nylas-base-0)}sp-button.book:hover,sp-button.book:focus{background-color:var(--nylas-base-600)}sp-button.book:active{background-color:var(--nylas-base-800)}.input-wrapper{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin-bottom:1rem}.input-wrapper input::placeholder{color:var(--nylas-base-300)}.input-wrapper label,.input-wrapper input{font-family:var(--nylas-font-family);font-size:16px}.input-wrapper .help-text{margin:0;color:var(--nylas-error)}.button-wrapper{width:100%;align-items:flex-start;height:max-content;position:relative}.button-content{display:flex;gap:4px;align-items:center}sp-infield-button{--spectrum-infield-button-background-color:transparent;--spectrum-infield-button-background-color-hover:transparent;--spectrum-infield-button-background-color-active:transparent;--spectrum-infield-button-border-color:transparent;--spectrum-infield-button-border-width:1px;--spectrum-infield-button-border-radius:0;color:var(--nylas-base-600);background:transparent;border:none;outline:1px solid var(--nylas-base-300);border-radius:0 var(--nylas-border-radius-2x) var(--nylas-border-radius-2x) 0;height:52px;width:52px;display:flex;position:absolute;right:0;align-items:center;justify-content:center;cursor:pointer}sp-infield-button sp-icon-cross300{color:var(--nylas-base-600)}sp-infield-button.error{border-width:2px;border-color:var(--nylas-error)}input[type=text],input[type=email]{display:flex;height:48px;padding-left:16px;align-items:center;gap:8px;align-self:stretch;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-base-300);background:var(--nylas-base-0);width:-webkit-fill-available;color:var(--nylas-base-900);font-size:16px;font-style:normal;font-weight:400;line-height:150%}input[type=text]:focus,input[type=email]:focus{outline-color:var(--nylas-primary)}input[type=text].error,input[type=email].error{border-radius:var(--nylas-border-radius-2x);font-weight:600;border-color:var(--nylas-error);border-width:2px}input[type=text].error::placeholder,input[type=email].error::placeholder{font-weight:400}input[type=text]::placeholder,input[type=email]::placeholder{color:var(--nylas-base-300)}input[type=text].guest-email,input[type=email].guest-email{color:var(--nylas-base-900);padding-right:52px}label{display:flex;color:var(--nylas-base-800, #293056);font-size:14px;font-style:normal;font-weight:400;line-height:150%}label.error{color:var(--nylas-error)}label span.required{color:var(--nylas-error);padding:0 0.25rem}button-component.remove-guest{position:absolute;height:51px;right:0}button-component.remove-guest.error button{border-color:var(--nylas-error)}button-component.remove-guest button{height:inherit;border-top-left-radius:initial;border-bottom-left-radius:initial;border:none !important;border-left:1px solid var(--nylas-base-300) !important}button-component.remove-guest button:hover,button-component.remove-guest button:focus{outline:1px solid var(--nylas-primary) !important;color:var(--nylas-primary)}.guest-email-input{position:relative;display:flex;width:100%}',ee=Q;var te=function(e,a,i,o){var s=arguments.length,n=s<3?a:o===null?o=Object.getOwnPropertyDescriptor(a,i):o,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,a,i,o);else for(var l=e.length-1;l>=0;l--)(r=e[l])&&(n=(s<3?r(n):s>3?r(a,i,n):r(a,i))||n);return s>3&&n&&Object.defineProperty(a,i,n),n},E=function(e,a){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,a)};const k=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,F=class{constructor(e){t.registerInstance(this,e),this.nameChanged=t.createEvent(this,"nameChanged",7),this.emailChanged=t.createEvent(this,"emailChanged",7),this.backButtonClicked=t.createEvent(this,"backButtonClicked",7),this.detailsConfirmed=t.createEvent(this,"detailsConfirmed",7),this.bookingFormError=t.createEvent(this,"bookingFormError",7),this.bookingFormSubmitted=t.createEvent(this,"bookingFormSubmitted",7),this.handleGuestChange=(a,i)=>{this.resetGuestEmailError(a);const o=[...this.guestEmails];o[a]=w.sanitizeHtml$1(i),this.guestEmails=[...o]},this.handleGuestBlur=(a,i)=>{if(this.resetGuestEmailError(a),i===""){this.guestEmailErrors[a]="Email is required";return}if(!k.test(i)){this.guestEmailErrors[a]="Enter a valid email address";return}this.handleGuestChange(a,i)},this.addGuestButtonClickedHandler=a=>{a.preventDefault(),this.guestEmails=[...this.guestEmails,""]},this.removeGuestButtonClickHandler=(a,i)=>{a.preventDefault(),this.resetGuestEmailError(i);const o=[...this.guestEmails];o.splice(i,1),this.guestEmails=[...o]},this.handleBackButtonClicked=()=>{this.backButtonClicked.emit()},this.bookButtonClickedHandler=async a=>{var l,c,d,u,p,y,g;if(a.preventDefault(),this.bookingFormSubmitted.emit().defaultPrevented)return;t.debug("nylas-booking-form","bookButtonClickedHandler",this.bookingInfo);const o=this.name||((c=(l=this.bookingInfo)==null?void 0:l.primaryParticipant)==null?void 0:c.name),s=this.email||((u=(d=this.bookingInfo)==null?void 0:d.primaryParticipant)==null?void 0:u.email);if(!o||o===""){this.isNameValid=!1,this.validationError.name="Name is required",this.bookingFormError.emit({title:"Booking form error",description:"Name is required"});return}if(!s||s===""){this.isEmailValid=!1,this.validationError.email="Email is required",this.bookingFormError.emit({title:"Booking form error",description:"Email is required"});return}if(!k.test(s)){this.isEmailValid=!1,this.validationError.email="Enter a valid email address",this.bookingFormError.emit({title:"Booking form error",description:"Invalid email"});return}let n=[];if(this.guestEmails.length>0){let m=!1;if(this.guestEmails.forEach((b,v)=>{b===""?(m=!0,this.guestEmailErrors={...this.guestEmailErrors,[v]:"Email is required"}):k.test(b)||(m=!0,this.guestEmailErrors={...this.guestEmailErrors,[v]:"Enter a valid email address"})}),m){this.bookingFormError.emit({title:"Booking form error",description:"Invalid guest email"});return}n=this.guestEmails.map(b=>({name:b.trim(),email:b.trim()}))}else(p=this.bookingInfo)!=null&&p.guests&&(n=(y=this.bookingInfo)==null?void 0:y.guests);const r=((g=this.bookingInfo)==null?void 0:g.additionalFields)||[];this.detailsConfirmed.emit({primaryParticipant:{name:o,email:s},guests:n,additionalFields:[...r,...this.additionalFields]})},this.updateAdditionalFields=(a,i,o)=>{const s=this.additionalFields.findIndex(n=>n.name===a);s>-1?this.additionalFields[s].value=i:this.additionalFields.push({name:a,value:i,type:o||"text"})},this.isLoading=void 0,this.bookingInfo=void 0,this.eventInfo=void 0,this.configSettings=void 0,this.name="",this.email="",this.guestEmails=[],this.guestEmailErrors={},this.isNameValid=!0,this.isEmailValid=!0,this.additionalFields=[],this.validationError={name:"",email:""}}connectedCallback(){}disconnectedCallback(){}componentWillLoad(){var e,a,i;t.debug("nylas-booking-form","componentWillLoad",this.bookingInfo),this.bookingInfo&&((e=this.bookingInfo)!=null&&e.primaryParticipant)&&(this.name=(a=this.bookingInfo.primaryParticipant)==null?void 0:a.name,this.email=(i=this.bookingInfo.primaryParticipant)==null?void 0:i.email)}bookingInfoChangedHandler(e){e&&e.primaryParticipant&&(this.name=e.primaryParticipant.name,this.email=e.primaryParticipant.email)}changeName(e){this.isNameValid=!0,this.validationError.name="",this.name=w.sanitizeHtml$1(e),this.nameChanged.emit(e)}changeEmail(e){this.isEmailValid=!0,this.validationError.email="",this.email=w.sanitizeHtml$1(e),this.emailChanged.emit(e)}resetGuestEmailError(e){const a={...this.guestEmailErrors};delete a[e],this.guestEmailErrors={...a}}nylasFormInputChangedHandler(e){switch(e.detail.name){case"name":this.changeName(e.detail.value);break;case"email":this.changeEmail(e.detail.value);break;default:if(e.detail.error){this.bookingFormError.emit({title:"Booking form error",description:e.detail.error});return}this.updateAdditionalFields(e.detail.label,e.detail.value,e.detail.type);break}e.detail.name==="name"?this.changeName(e.detail.value):e.detail.name==="email"&&this.changeEmail(e.detail.value)}selectOptionChangedHandler(e){if(e.detail.error){this.bookingFormError.emit({title:"Booking form error",description:e.detail.error});return}this.updateAdditionalFields(e.detail.label,e.detail.value,"dropdown")}switchToggledHandler(e){this.updateAdditionalFields(e.detail.label,e.detail.checked?"true":"false","checkbox")}checkboxToggledHandler(e){this.updateAdditionalFields(e.detail.label,e.detail.checked?"true":"false","checkbox")}render(){var e,a,i,o,s,n;return t.h(t.Host,{key:"1b81fd4591cd90c85a578a8d957ed561e457cba5"},t.h("form",{key:"4a4fef983332d1752ccf44823620ec2b906bf71e",onSubmit:r=>this.bookButtonClickedHandler(r),noValidate:!0},t.h("div",{key:"e55ebf5bb6fbb5175e6175d06ce0e0a5266962cf",class:"nylas-booking-form"},t.h("div",{key:"d50d5fdbc7b68b3c54098a6dde600ed52c607eed",class:"input-wrapper"},t.h("input-component",{key:"a299cb5d2043e5fedd6f5f66889d7640e74b8b55",label:"Name",name:"name",id:"name",defaultValue:((a=(e=this.bookingInfo)==null?void 0:e.primaryParticipant)==null?void 0:a.name)||this.name,placeholder:"Enter your name",type:"text",required:!0,part:"nbf__input-textfield"})),t.h("div",{key:"0d095468473009d67120d668f5e961ca4d90c16d",class:"input-wrapper"},t.h("input-component",{key:"e81345e3aca7fa9cd0a90be50f81cfa544a23336",label:"Email",name:"email",id:"email",pattern:k,defaultValue:((o=(i=this.bookingInfo)==null?void 0:i.primaryParticipant)==null?void 0:o.email)||this.email,placeholder:"Enter your email",type:"email",required:!0,part:"nbf__input-textfield"})),((n=(s=this.configSettings)==null?void 0:s.scheduler)==null?void 0:n.hide_additional_guests)!==!0&&t.h("div",{class:"input-wrapper"},this.guestEmails.map((r,l)=>t.h("div",{class:"input-wrapper button-wrapper"},t.h("label",{class:{error:!!this.guestEmailErrors[l]}},"Guest email"),t.h("div",{class:"guest-email-input"},t.h("input",{type:"email",id:`guest-email-${l}`,maxLength:100,class:{"guest-email":!0,error:!!this.guestEmailErrors[l]},placeholder:"Enter guest email",value:r,"data-index":l,part:"nbf__input-textfield",onBlur:c=>{var d;return this.handleGuestBlur(l,(d=c.target)==null?void 0:d.value)},onInput:c=>{var d;return this.handleGuestChange(l,(d=c.target)==null?void 0:d.value)}}),t.h("button-component",{variant:"basic",onClick:c=>this.removeGuestButtonClickHandler(c,l),class:{"remove-guest":!0,error:!!this.guestEmailErrors[l]}},t.h("close-icon",null))),t.h("p",{class:"help-text"},this.guestEmailErrors[l]))),t.h("button-component",{class:"add-guest",variant:"invisible",part:"nbf__button-ghost",onClick:r=>this.addGuestButtonClickedHandler(r)},t.h("div",{class:"button-content"},t.h("add-circle-icon",{slot:"icon"}),"Add ",this.guestEmails.length>0?"another ":"","guest"))),t.h("slot",{key:"f47bffdf6a15943c78d4bb75051d0f6704afd623",name:"custom-booking-form"})),t.h("div",{key:"12631d6648d7ebdc9e6714a54690486d53c8c623",class:"cta"},t.h("sp-button",{key:"a72caa2eb6b5d95ee83600aa37e89730bfd68fdb",treatment:"outline",variant:"secondary",class:"back",part:"nbf__button-outline",onClick:this.handleBackButtonClicked},t.h("slot",{key:"be107ab400cb5802c6153217cde54b75ccede466",name:"booking-form-back-label"},"Back")),t.h("sp-button",{key:"d6f322389050d4cbbb1aada135b27b6bc4d34d6d",variant:"primary",class:"book",part:"nbf__button-primary",type:"submit"},this.isLoading&&t.h("loading-icon",{slot:"icon"}),t.h("slot",{key:"17ee459bee19ba620505e9931ccd4a485f530ecc",name:"booking-form-book-label"},"Book now")))))}get host(){return t.getElement(this)}static get watchers(){return{bookingInfo:["bookingInfoChangedHandler"]}}};te([f.RegisterComponent({name:"nylas-booking-form",stateToProps:new Map([["scheduler.isLoading","isLoading"],["scheduler.bookingInfo","bookingInfo"],["scheduler.eventInfo","eventInfo"],["scheduler.configSettings","configSettings"]]),eventToProps:{backButtonClicked:async(e,a)=>{a.scheduler.toggleAdditionalData(!1)},nameChanged:async(e,a)=>{a.scheduler.setParticipantName(e.detail)},emailChanged:async(e,a)=>{a.scheduler.setParticipantEmail(e.detail)}},fireRegisterEvent:!0}),E("design:type",Function),E("design:paramtypes",[]),E("design:returntype",void 0)],F.prototype,"render",null);F.style=ee;const ae=':host{display:block;width:400px;--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}sp-theme{height:inherit;display:flex;flex-direction:column;justify-content:space-between;align-items:center;font-family:var(--nylas-font-family)}.nylas-cancel-booking-form{display:flex;align-items:center;flex-direction:column;background-color:var(--nylas-base-0);color:var(--nylas-base-800);border-radius:var(--nylas-border-radius-2x);padding:1.5rem;position:relative;box-shadow:0px 1px 4px rgba(0, 0, 0, 0.1), 0px 3px 6px rgba(0, 0, 0, 0.06)}.nylas-cancel-booking-form__title{font-size:18px;font-weight:600;margin-bottom:0;color:var(--nylas-base-900)}.nylas-cancel-booking-form__description{font-size:1rem;font-style:normal;font-weight:400;line-height:140%;color:var(--nylas-base-600)}.nylas-cancel-booking-form__calendar-icon{width:3rem;height:3rem;border-radius:50%;position:absolute;top:-1.25rem;left:50%;transform:translateX(-50%);background-color:var(--nylas-base-0);border:1px solid var(--nylas-base-200)}calendar-cancel-icon{display:flex;align-items:center;justify-content:center;height:100%}sp-button{background-color:var(--nylas-base-0);color:var(--nylas-base-700);border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x);font-size:16px;font-weight:600;width:100%;height:48px;padding:8px;line-height:24px;font-family:var(--nylas-font-family)}sp-button.cancel{margin-top:1.25rem;background-color:var(--nylas-primary);color:var(--nylas-base-0)}sp-button.cancel:hover,sp-button.cancel:focus{background-color:var(--nylas-base-600)}sp-button.cancel:active{background-color:var(--nylas-base-800)}sp-button.back{margin-top:0.5rem}sp-button.back:hover,sp-button.back:focus{border-color:var(--nylas-primary)}sp-button.back:active{border-color:var(--nylas-base-600)}sp-field-label{margin-top:1rem;display:flex;color:var(--nylas-base-800);font-size:14px}sp-field-label.error{color:var(--nylas-error)}sp-field-label span.required{color:var(--nylas-error)}sp-textfield{--spectrum-textfield-border-color:var(--nylas-base-300);--spectrum-textfield-icon-color-invalid:var(--nylas-error);position:relative;width:100%;height:48px;margin-bottom:16px;background-color:var(--nylas-base-0);color:var(--nylas-base-500)}sp-textfield.error{--spectrum-textfield-border-color:var(--nylas-error)}sp-help-text{margin:0.25rem 0 1rem 0;color:var(--nylas-error)}',ne=ae;var ie=function(e,a,i,o){var s=arguments.length,n=s<3?a:o===null?o=Object.getOwnPropertyDescriptor(a,i):o,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,a,i,o);else for(var l=e.length-1;l>=0;l--)(r=e[l])&&(n=(s<3?r(n):s>3?r(a,i,n):r(a,i))||n);return s>3&&n&&Object.defineProperty(a,i,n),n},D=function(e,a){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,a)};const j=class{constructor(e){var a,i;t.registerInstance(this,e),this.goBackButtonClicked=t.createEvent(this,"goBackButtonClicked",7),this.cancelBookingFormSubmitted=t.createEvent(this,"cancelBookingFormSubmitted",7),this.cancelBookedEventError=t.createEvent(this,"cancelBookedEventError",7),this.cancelBookingFormError=t.createEvent(this,"cancelBookingFormError",7),this.handleGoBackClicked=()=>{this.goBackButtonClicked.emit()},this.handleSubmitCancelBooking=o=>{if(o.preventDefault(),!this.cancellationReason){this.cancellationError="Please provide a reason for cancellation.",this.cancelBookingFormError.emit({title:"Cancel booking form error",description:"Please provide a reason for cancellation."});return}t.debug(`[nylas-cancel-booking-form] Cancel booking form submitted with reason: ${this.cancellationReason}`);const s=n=>{this.cancelBookedEventError.emit(n)};this.cancelBookingFormSubmitted.emit({bookingId:this.cancelBookingId,reason:this.cancellationReason,errorHandler:s})},this.handleOnChangeCancellationReason=o=>{this.cancellationError="",this.cancellationReason=o.target.value},this.cancelBookingId=void 0,this.configSettings=void 0,this.cancellationReason="",this.cancellationError="",this.cancellationPolicy=((i=(a=this.configSettings)==null?void 0:a.scheduler)==null?void 0:i.cancellation_policy)||"Your current timeslot will become available to others."}configSettingsChangedHandler(e){var a;this.cancellationPolicy=((a=e==null?void 0:e.scheduler)==null?void 0:a.cancellation_policy)||"Your current timeslot will become available to others."}connectedCallback(){t.debug("[nylas-cancel-booking-form] Component connected")}async componentWillLoad(){t.debug("[nylas-cancel-booking-form] Component will load")}async componentDidLoad(){t.debug("[nylas-cancel-booking-form] Component did load"),this.cancelBookingId||console.warn('[nylas-cancel-booking-form] No booking ID provided, "cancelBookingId" prop is required.')}disconnectedCallback(){t.debug("[nylas-cancel-booking-form] Component disconnected")}render(){return t.h(t.Host,{key:"83015809da357a47d70c5bae845c8608924b6a31",part:"ncec"},t.h("sp-theme",{key:"11d3b28a88081d5ecccfbb78ee6347a7856899e3",theme:"spectrum",scale:"medium"},t.h("div",{key:"5d2750f253c1aff61c1d973529ce2f7fa65c4206",class:"nylas-cancel-booking-form",part:"ncec__card"},t.h("div",{key:"36a8dd00a5eda62f2f8f9740bf447f0b50e81b9e",class:"nylas-cancel-booking-form__calendar-icon",part:"ncec__icon"},t.h("calendar-cancel-icon",{key:"7bfaf1ffaa9a3bb288bc0e3f11c8c9ed7a4d2c9a"})),t.h("h3",{key:"74fff12d4aa0311d817348a4694042d2242f30cd",class:"nylas-cancel-booking-form__title",part:"ncec__title"},"Cancel booking?"),t.h("div",{key:"647a02657fe9570c87b14ef7de0cc0fc713efb21",class:"nylas-cancel-booking-form__description",part:"ncec__description"},this.cancellationPolicy),t.h("form",{key:"bb680b4a5a7203d44d08529b0d8b3224b51c2986",onSubmit:this.handleSubmitCancelBooking},t.h("sp-field-label",{key:"401994e31c7f7bf65b8403a42b14a56e928d92f3",for:"cancel-reason",class:this.cancellationError?"error":""},"Reason for cancellation ",t.h("span",{key:"361907af2362f4fd09af7638c82de7320efe0072",class:"required"},"*")),t.h("sp-textfield",{key:"d7e672672f0a7250104080f69f4e96de9321c537",id:"cancel-reason",class:this.cancellationError?"error":"",part:"ncec__reason-textarea",multiline:!0,value:this.cancellationReason,onInput:this.handleOnChangeCancellationReason,onFocus:this.handleOnChangeCancellationReason,invalid:!!this.cancellationError},t.h("sp-help-text",{key:"d3bcfae8ae55ec910005c128f24d74ed34f1bf48",slot:"negative-help-text"},this.cancellationError)),t.h("sp-button",{key:"23efceafbfcb073b0808f65ae110f31bcbfb7722",variant:"primary",class:"cancel",type:"submit",part:"ncec__button-cta"},"Cancel booking"),t.h("sp-button",{key:"7030276dae50deab5549a64a3def7b4cb783e8d5",variant:"secondary",class:"back",treatment:"outline",part:"ncec__button-outline",onClick:this.handleGoBackClicked},"Go back")))))}static get watchers(){return{configSettings:["configSettingsChangedHandler"]}}};ie([f.RegisterComponent({name:"nylas-cancel-booking-form",stateToProps:new Map([["scheduler.configSettings","configSettings"]]),eventToProps:{cancelBookingFormSubmitted:async(e,a)=>{const i=await a.scheduler.cancelBooking(e.detail.bookingId,e.detail.reason),{errorHandler:o}=e.detail;o&&(!i||"error"in i)&&o(i)}},fireRegisterEvent:!0}),D("design:type",Function),D("design:paramtypes",[]),D("design:returntype",void 0)],j.prototype,"render",null);j.style=ne;const oe=':host{display:block;--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}sp-theme{height:inherit;display:flex;flex-direction:column;justify-content:space-between;align-items:center;font-family:var(--nylas-font-family)}.nylas-cancelled-event-card{display:flex;align-items:center;flex-direction:column;width:400px;background-color:var(--nylas-base-0);color:var(--nylas-base-800);border-radius:var(--nylas-border-radius-2x);padding:1.5rem;position:relative;box-shadow:0px 1px 4px rgba(0, 0, 0, 0.1), 0px 3px 6px rgba(0, 0, 0, 0.06)}@media screen and (max-width: 768px){.nylas-cancelled-event-card{width:inherit}}.nylas-cancelled-event-card__title{font-size:18px;font-weight:600;line-height:24px;color:var(--nylas-base-900);text-align:center}.nylas-cancelled-event-description{font-size:16px;font-weight:500;color:var(--nylas-base-600)}.nylas-cancelled-event-card__calendar-icon{width:3rem;height:3rem;border-radius:50%;position:absolute;top:-1.25rem;left:50%;transform:translateX(-50%);background-color:var(--nylas-base-0);border:1px solid var(--nylas-base-200)}.nylas-cancelled-event-card__cta{width:100%;display:flex;flex-direction:row;align-items:flex-start;margin-top:1rem}calendar-cancel-icon{display:flex;align-items:center;justify-content:center;height:100%}sp-button{background-color:var(--nylas-base-0);color:var(--nylas-base-700);border:1px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x);font-size:1rem;height:48px;padding:8px;line-height:24px;width:100%}sp-button:hover,sp-button:focus{border-color:var(--nylas-primary)}sp-button:active{border-color:var(--nylas-base-600)}',se=oe;var re=function(e,a,i,o){var s=arguments.length,n=s<3?a:o===null?o=Object.getOwnPropertyDescriptor(a,i):o,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,a,i,o);else for(var l=e.length-1;l>=0;l--)(r=e[l])&&(n=(s<3?r(n):s>3?r(a,i,n):r(a,i))||n);return s>3&&n&&Object.defineProperty(a,i,n),n},T=function(e,a){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,a)};const N=class{constructor(e){t.registerInstance(this,e),this.closeCancelEventCardClicked=t.createEvent(this,"closeCancelEventCardClicked",7),this.cancelledEventCardError=t.createEvent(this,"cancelledEventCardError",7),this.handleCloseClicked=()=>{this.isClosing=!0;const a=i=>{this.cancelledEventCardError.emit(i),this.isClosing=!1};this.closeCancelEventCardClicked.emit({errorHandler:a})},this.cancelledEventInfo=void 0,this.isClosing=!1,this.configSettings=void 0}connectedCallback(){t.debug("[nylas-cancelled-event-card] Component connected")}async componentWillLoad(){t.debug("[nylas-cancelled-event-card] Component will load")}async componentDidLoad(){t.debug("[nylas-cancelled-event-card] Component did load"),this.cancelledEventInfo||console.warn('[nylas-cancelled-event-card] No cancelled event info provided, "cancelledEventInfo" prop is required.')}disconnectedCallback(){t.debug("[nylas-cancelled-event-card] Component disconnected")}render(){var e,a;return t.h(t.Host,{key:"89bfb6419aea7fffc32726e4db26642ca810b3a4",part:"ncec"},t.h("sp-theme",{key:"265e08ab9c6d4c7c7071353a35e2a8e69bd3875e",theme:"spectrum",color:"dark",scale:"medium"},t.h("div",{key:"bd23802e8cd5bf923ed43f223eac30041ead9a2e",class:"nylas-cancelled-event-card",part:"ncec__card"},t.h("div",{key:"270d9e2a65ee1a3a7d34aaa99bf1059b891929ae",class:"nylas-cancelled-event-card__calendar-icon",part:"ncec__icon"},t.h("calendar-cancel-icon",{key:"e04e9bf8f7278265160c3a58c0a37c880faed0cc"})),t.h("h3",{key:"046647bd93284e280d5fb62f9488b6ed5ed9dea2",class:"nylas-cancelled-event-card__title",part:"ncec__title"},"Your booking has been cancelled successfully!"),t.h("div",{key:"f85c31f7718fe5266b2d175afff46c7b63495c11",class:"nylas-cancelled-event-card__description",part:"ncec__description"},"A cancellation email has been sent to ",((a=(e=this.configSettings)==null?void 0:e.organizer)==null?void 0:a.name)||"the participants","."),t.h("div",{key:"aa36cf4bbcb432334903a0b9ba2782ecf6abbe4c",class:"nylas-cancelled-event-card__cta"},t.h("sp-button",{key:"65009ac918324e109b0b5a52331bea5a9b8c1a14",variant:"secondary",treatment:"outline",disabled:this.isClosing,part:"ncec__button-outline",onClick:this.handleCloseClicked},this.isClosing?"Closing...":"Close")))))}};re([f.RegisterComponent({name:"nylas-cancelled-event-card",stateToProps:new Map([["scheduler.configSettings","configSettings"]]),eventToProps:{closeCancelEventCardClicked:async(e,a)=>{const i=await a.scheduler.resetCancel(),{errorHandler:o}=e.detail;o&&(!i||"error"in i)&&o(i)}},fireRegisterEvent:!0}),T("design:type",Function),T("design:paramtypes",[]),T("design:returntype",void 0)],N.prototype,"render",null);N.style=se;const S=new Date,z=new Date;function C(e,a,i,o){function s(n){return e(n=arguments.length===0?new Date:new Date(+n)),n}return s.floor=n=>(e(n=new Date(+n)),n),s.ceil=n=>(e(n=new Date(n-1)),a(n,1),e(n),n),s.round=n=>{const r=s(n),l=s.ceil(n);return n-r<l-n?r:l},s.offset=(n,r)=>(a(n=new Date(+n),r==null?1:Math.floor(r)),n),s.range=(n,r,l)=>{const c=[];if(n=s.ceil(n),l=l==null?1:Math.floor(l),!(n<r)||!(l>0))return c;let d;do c.push(d=new Date(+n)),a(n,l),e(n);while(d<n&&n<r);return c},s.filter=n=>C(r=>{if(r>=r)for(;e(r),!n(r);)r.setTime(r-1)},(r,l)=>{if(r>=r)if(l<0)for(;++l<=0;)for(;a(r,-1),!n(r););else for(;--l>=0;)for(;a(r,1),!n(r););}),i&&(s.count=(n,r)=>(S.setTime(+n),z.setTime(+r),e(S),e(z),Math.floor(i(S,z))),s.every=n=>(n=Math.floor(n),!isFinite(n)||!(n>0)?null:n>1?s.filter(o?r=>o(r)%n===0:r=>s.count(0,r)%n===0):s)),s}const le=1e3,U=le*60,ce=U*60,x=ce*24,B=C(e=>e.setHours(0,0,0,0),(e,a)=>e.setDate(e.getDate()+a),(e,a)=>(a-e-(a.getTimezoneOffset()-e.getTimezoneOffset())*U)/x,e=>e.getDate()-1);C(e=>{e.setUTCHours(0,0,0,0)},(e,a)=>{e.setUTCDate(e.getUTCDate()+a)},(e,a)=>(a-e)/x,e=>e.getUTCDate()-1);C(e=>{e.setUTCHours(0,0,0,0)},(e,a)=>{e.setUTCDate(e.getUTCDate()+a)},(e,a)=>(a-e)/x,e=>Math.floor(e/x));const de=':host{display:block;min-height:444px;--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{min-height:auto}}.nylas-date-picker{display:flex;gap:1rem;flex-direction:column}.header{margin:0 0.5rem;height:48px}.header h2{font-size:1.3125rem;font-weight:400;line-height:1rem;color:var(--nylas-base-800)}.header h2 strong{font-weight:600}.title{margin:0 -1.25rem;display:flex;flex-direction:column;padding:0 1.5rem;gap:0.5rem;border-bottom:1px solid var(--nylas-base-200);font-family:var(--nylas-font-family)}.title h1{margin-bottom:0;font-size:18px;line-height:20px;font-weight:600;display:flex;gap:0.5rem;align-items:center}.title p{margin-top:0;font-size:16px;display:flex;gap:0.5rem;align-items:center}@keyframes pulsate{0%{background-color:var(--nylas-base-50)}50%{background-color:var(--nylas-base-100)}100%{background-color:var(--nylas-base-50)}}.dates{display:grid;justify-items:center;grid-template-columns:repeat(7, 1fr);gap:0.5rem;margin-bottom:24px}.dates .date{position:relative;display:flex;flex-direction:row;justify-content:center;align-items:center;height:48px;width:48px;min-width:2rem;min-height:2rem;cursor:pointer;border-radius:var(--nylas-border-radius-2x);font-size:16px;font-weight:600;font-family:inherit;color:var(--nylas-base-text);background-color:var(--nylas-base-100);cursor:pointer;border:none}@media screen and (max-width: 412px){.dates .date{width:38px;height:38px;min-width:none}}.dates .date:hover:not(:disabled){box-shadow:0 0 0 2px var(--nylas-base-500) inset}.dates .date.date.current-month{color:var(--nylas-base-800)}.dates .date.date.selected{background-color:var(--nylas-primary);color:var(--nylas-base-0);font-weight:700}.dates .date.date.day-skeleton{color:var(--nylas-base-300)}.dates .date:disabled{color:var(--nylas-base-300);background-color:transparent;font-weight:400;cursor:not-allowed}.dates .day{font-size:12px;color:var(--nylas-base-800);font-weight:600;letter-spacing:0.5px;height:32px;display:flex;align-items:center}@media screen and (max-width: 768px){.dates .day{font-size:14px}}.dates .date.day-skeleton{height:48px;width:48px;border-radius:var(--nylas-border-radius-2x);animation:pulsate 1.5s infinite ease-in-out;background-color:var(--nylas-base-50)}@media screen and (max-width: 412px){.dates .date.day-skeleton{width:38px;height:38px;min-width:none}}.dates .date.current-day::after{content:"";position:absolute;bottom:6px;left:50%;transform:translateX(-50%);width:6px;height:6px;border-radius:50%;background-color:var(--nylas-base-500)}.dates .date.current-day.selected::after{background-color:var(--nylas-base-100)}.pagination{display:flex;flex-direction:row;justify-content:space-between;align-items:center;min-width:92px}.pagination .chevron-right{transform:rotate(180deg)}.pagination .button{display:flex;flex-direction:row;justify-content:center;align-items:center;height:3vh;width:3vh;min-width:3em;min-height:3em;cursor:pointer;border-radius:var(--nylas-border-radius-2x);background-color:transparent;color:var(--nylas-base-800);cursor:pointer;border:none}.pagination .button:hover{background-color:var(--nylas-base-50)}.pagination .button:active{background-color:var(--nylas-base-100)}.pagination .button:disabled{background-color:transparent;color:var(--nylas-base-300);cursor:not-allowed}.flex-row{display:flex;flex-direction:row;justify-content:space-between;align-items:center;color:var(--nylas-base-500)}',be=de;var he=function(e,a,i,o){var s=arguments.length,n=s<3?a:o===null?o=Object.getOwnPropertyDescriptor(a,i):o,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,a,i,o);else for(var l=e.length-1;l>=0;l--)(r=e[l])&&(n=(s<3?r(n):s>3?r(a,i,n):r(a,i))||n);return s>3&&n&&Object.defineProperty(a,i,n),n},I=function(e,a){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,a)};const H=class{constructor(e){t.registerInstance(this,e),this.dateSelected=t.createEvent(this,"dateSelected",7),this.monthChanged=t.createEvent(this,"monthChanged",7),this.selectableDates=void 0,this.selectedDate=void 0,this.configSettings=void 0,this.isLoading=void 0,this.eventDuration=void 0,this.month=this.selectedDate||new Date,this.dates=this.getDates(),this.disableNextMonthButton=!1}configSettingsChanged(e){var s;const a=new Date(this.month.getFullYear(),this.month.getMonth()+1,1),i=(s=e==null?void 0:e.scheduler)==null?void 0:s.available_days_in_future;if(i===void 0)return;t.addDaysToCurrentDate(new Date,i).getTime()<a.getTime()?this.disableNextMonthButton=!0:this.disableNextMonthButton=!1}connectedCallback(){}disconnectedCallback(){}componentWillLoad(){}getDates(){const e=t.getLastDayOfMonth(this.month),a=t.getFirstDayOfMonth(this.month);return B.range(B.offset(a,-a.getDay()),B.offset(e,7-e.getDay()))}selectDate(e){this.dateSelected.emit(e)}changeMonth(e){var s,n;this.month=new Date(this.month.getFullYear(),this.month.getMonth()+e,1);const a=new Date(this.month.getFullYear(),this.month.getMonth()+1,1),i=(n=(s=this.configSettings)==null?void 0:s.scheduler)==null?void 0:n.available_days_in_future;t.addDaysToCurrentDate(new Date,i).getTime()<a.getTime()?this.disableNextMonthButton=!0:this.disableNextMonthButton=!1,this.dates=this.getDates(),this.monthChanged.emit(this.month),this.selectDate()}isSelected(e,a,i){return e&&a&&t.isSameDay(e,a)&&i&&(i==null?void 0:i.length)>0}isDisabled(e,a){return e&&(a==null?void 0:a.find(i=>t.isSameDay(i,e)))===void 0}render(){var e,a,i,o,s;return t.h(t.Host,{key:"bc2d37f59dc4cc59c9659a15ce640d3f3c738239",part:"ndp"},t.h("div",{key:"7b39c6ff3b5c820d6ee4cc3419a80f9803011deb",class:"nylas-date-picker"},t.h("div",{key:"e7e08bbe189da82d187241b1025633f9ea690bbe",class:"title",part:"'ndp__title"},((a=(e=this.configSettings)==null?void 0:e.organizer)==null?void 0:a.name)&&t.h("h1",null,t.h("person-icon",null),((o=(i=this.configSettings)==null?void 0:i.organizer)==null?void 0:o.name)||"Organizer"),t.h("p",{key:"7a952faa33c2421f9b6d25a4d56ec7a510d42ab5"},t.h("clock-icon",{key:"35561bc9866d9c75e676b3ef589b1506a6d273c6"}),this.eventDuration?t.convertMinutesToHoursAndMinutes(this.eventDuration):"- minutes")),t.h("div",{key:"b3799870aa76c6e54b3ec5a32dda0b684a817e1d",class:"header flex-row"},t.h("h2",{key:"bb00822464f175aa9b9c5f66f8fa79e95363b33d",part:"ndp__month-header"},t.h("strong",{key:"3cdeb9340334fabb6ee1ef09ffb28a6e75177275"},this.month.toLocaleDateString(void 0,{month:"long"}))," ",this.month.toLocaleDateString(void 0,{year:"numeric"})),t.h("div",{key:"ad6b090bdff3470d1f7381cce6d5734a698c7af9",class:"pagination"},t.h("button",{key:"90621e82962b012b50dedb9ec4c49bc7cdff0936",onClick:()=>this.changeMonth(-1),class:{"chevron-left":!0,button:!0},disabled:!((s=this.selectableDates)!=null&&s.length)||this.month<=new Date,part:"ndp__month-button"},t.h("chevron-icon",{key:"7596ada39a388b9570a3a783ff5cdf7bb3f252c1"})),t.h("button",{key:"e7bbf331f680b0c6f2538639235a008e213b52ee",onClick:()=>this.changeMonth(1),class:{"chevron-right":!0,button:!0},disabled:this.disableNextMonthButton,part:"ndp__month-button"},t.h("chevron-icon",{key:"898e3a4609bf204bdf4d375cd53c23d5ac52bc50"})))),t.h("div",{key:"e41bd3d09ef9c8bc48dd8aa5db6554af8b31faa8",class:"dates"},["SUN","MON","TUE","WED","THU","FRI","SAT"].map(n=>t.h("div",{class:"day",part:"ndp__day"},n)),this.dates.map((n,r)=>{var c;const l=this.isDisabled(n,this.selectableDates);return this.isLoading?t.h("button",{disabled:!0,class:{"date day-skeleton":!0,"current-month":t.isSameMonth(n,this.month)},style:{animationDelay:`${r*20}ms`},part:"ndp__date"},n.getDate()):t.h("button",{class:{date:!0,selected:!!(this.selectedDate&&t.isSameDay(n,this.selectedDate)&&this.selectableDates&&((c=this.selectableDates)==null?void 0:c.length)>0),"current-day":t.isSameDay(n,new Date),"current-month":t.isSameMonth(n,this.month)},"aria-lang":n.toLocaleDateString(void 0,{dateStyle:"full"}),disabled:l,onClick:()=>this.selectDate(n),part:`ndp__date ${this.isSelected(n,this.selectedDate,this.selectableDates)?"ndp__date--selected":""} ${t.isSameDay(n,new Date)?"ndp__date--current-day":""} ${t.isSameMonth(n,this.month)?"ndp__date--current-month":""}`},n.getDate())}))))}static get watchers(){return{configSettings:["configSettingsChanged"]}}};he([f.RegisterComponent({name:"nylas-date-picker",stateToProps:new Map([["scheduler.selectableDates","selectableDates"],["scheduler.selectedDate","selectedDate"],["scheduler.isLoading","isLoading"],["scheduler.configSettings","configSettings"],["scheduler.eventDuration","eventDuration"]]),eventToProps:{dateSelected:async(e,a)=>{a.scheduler.selectDate(e.detail)}},fireRegisterEvent:!0}),I("design:type",Function),I("design:paramtypes",[]),I("design:returntype",void 0)],H.prototype,"render",null);H.style=be;const fe=':host{display:block;--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}.nylas-locale-switch{display:flex;flex-direction:row;justify-content:space-between;align-items:center;border-left:none;border-right:none;color:var(--nylas-base-50);font-size:14px;font-weight:600;cursor:pointer;transition:all 0.2s ease-in-out;font-family:inherit}@media screen and (max-width: 768px){.nylas-locale-switch{font-size:16px}}.select-wrapper{display:flex;align-items:center;gap:0.5rem}select{border:none;background:transparent;cursor:pointer;outline:none;background-color:transparent;margin:0 0 1px;padding:4px;vertical-align:middle}select#timezone{width:140px}select#language{width:80px}span.timezone-label{display:flex;width:-webkit-fill-available;justify-content:space-between}select-dropdown{width:auto}select-dropdown::part(sd_dropdown-button){border:none;padding:10px}select-dropdown::part(sd_dropdown-content){max-width:306px}',me=fe;var ue=function(e,a,i,o){var s=arguments.length,n=s<3?a:o===null?o=Object.getOwnPropertyDescriptor(a,i):o,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,a,i,o);else for(var l=e.length-1;l>=0;l--)(r=e[l])&&(n=(s<3?r(n):s>3?r(a,i,n):r(a,i))||n);return s>3&&n&&Object.defineProperty(a,i,n),n},L=function(e,a){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,a)};const O=class{constructor(e){t.registerInstance(this,e),this.timezoneChanged=t.createEvent(this,"timezoneChanged",7),this.languageChanged=t.createEvent(this,"languageChanged",7),this.selectedTimezone=Intl.DateTimeFormat().resolvedOptions().timeZone,this.selectedLanguage=navigator.language}connectedCallback(){}disconnectedCallback(){}componentWillLoad(){}changeTimezone(e){this.selectedTimezone=e,this.timezoneChanged.emit(e)}changeLanguage(e){this.selectedLanguage=e,this.languageChanged.emit(e)}nylasFormDropdownChangedHandler(e){const{name:a,value:i}=e.detail;a==="timezone"?this.changeTimezone(i):a==="language"&&this.changeLanguage(i)}getTimezoneLabelHTML(e){const a=h.getTimezoneOffset(e);return t.h("span",{class:"timezone-label",style:{display:"flex",alignItems:"center",justifyContent:"space-between",width:"-webkit-fill-available"}},h.TIMEZONE_MAP[e]," ",t.h("span",{class:"timezone-offset",style:{fontSize:"14px",fontWeight:"400",color:"var(--nylas-base-500)"}},a))}render(){const e=Object.keys(h.TIMEZONE_MAP).map(i=>({labelHTML:this.getTimezoneLabelHTML(i),label:h.TIMEZONE_MAP[i],value:i})),a=Object.keys(h.LANGUAGE_MAP).map(i=>({label:h.LANGUAGE_MAP[i],value:i}));return t.h(t.Host,{key:"2d50a22ae8502ec3c6062da3cbbeb0bb6f0fcb8b"},t.h("div",{key:"8725370edb7b3fb70264586c8d6bf4cc7c8f6220",class:"nylas-locale-switch"},t.h("div",{key:"da5375359f87b3f1fc5c3ec9f094c76886a1a401",class:{"select-wrapper":!0,timezone:!0}},t.h("select-dropdown",{key:"3633e969f27a301b59ad64afb9f63a0bf19afcc6",name:"timezone",options:e,defaultSelectedOption:e.find(i=>i.value==this.selectedTimezone)},t.h("span",{key:"97db913cf64de05eb986fdea378a17948ead2527",slot:"select-icon"},t.h("globe-icon",{key:"ee73e4c113c23614a7084cb1f19e2d6149fd3185",width:"20",height:"20"})))),t.h("div",{key:"04245f7d6c51994197ff107f064632d5c8050e65",class:{"select-wrapper":!0,language:!0}},t.h("select-dropdown",{key:"55ed837e54b69f9db0548c9c4e4c6e5211ef577a",name:"language",options:a,defaultSelectedOption:a.find(i=>i.value==this.selectedLanguage)},t.h("span",{key:"43b4d67e865a27842998a796f8d12e0d9b5171eb",slot:"select-icon"},t.h("translate-icon",{key:"c393677712c3528f162bc5700368deb4dd6a197c",width:"20",height:"20"}))))))}};ue([f.RegisterComponent({name:"nylas-locale-switch",stateToProps:new Map([["scheduler.selectedLanguage","selectedLanguage"],["scheduler.selectedTimezone","selectedTimezone"]]),eventToProps:{timezoneChanged:async(e,a)=>{a.scheduler.selectTimezone(e.detail)}},fireRegisterEvent:!0}),L("design:type",Function),L("design:paramtypes",[]),L("design:returntype",void 0)],O.prototype,"render",null);O.style=me;const pe=".sc-nylas-logo-h{display:flex}",ye=pe,W=class{constructor(e){t.registerInstance(this,e),this.width="69",this.height="24"}render(){return t.h("svg",{key:"6e6bbcafcedbb912945dd29a383b809dd1295683",width:this.width,height:this.height,viewBox:"0 0 69 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t.h("g",{key:"361bd69757205d793a7619841a425fabbf075475","clip-path":"url(#clip0_455_3543)"},t.h("path",{key:"9f56ecacf7401c2f04a56dc4b0d201b008dc9c52",d:"M15.8092 3.03248C14.6497 1.86996 13.1076 1.23047 11.4646 1.23047C9.82156 1.23047 8.27753 1.86996 7.11999 3.03248L0.835347 9.33381C0.686846 9.4827 0.60498 9.68123 0.60498 9.89312C0.60498 10.105 0.686846 10.3035 0.835347 10.4524C0.983848 10.6013 1.18185 10.6834 1.39318 10.6834C1.60451 10.6834 1.80251 10.6013 1.95101 10.4524L8.23374 4.15111C10.0139 2.36627 12.9134 2.36627 14.6935 4.15111C16.4736 5.93785 16.4756 8.84322 14.6935 10.6281L8.4108 16.9275C8.10428 17.2348 8.10428 17.7368 8.4108 18.0461C8.5593 18.195 8.75731 18.2771 8.96863 18.2771C9.17996 18.2771 9.37796 18.195 9.52646 18.0461L15.8092 11.7467C16.9687 10.5841 17.6064 9.03793 17.6064 7.39053C17.6064 5.74314 16.9687 4.19501 15.8092 3.03439V3.03248Z",fill:"currentColor"}),t.h("path",{key:"f3b85c6d9c447bf55c3299de0084894d6f4b405a",d:"M14.9296 7.39038C14.9296 6.46074 14.5698 5.58837 13.9148 4.93361C12.5631 3.57828 10.3641 3.57828 9.01239 4.93361L0.663961 13.3023C0.51546 13.4512 0.433594 13.6497 0.433594 13.8616C0.433594 14.0735 0.51546 14.272 0.663961 14.4209C0.812462 14.5698 1.01046 14.6519 1.22179 14.6519C1.43312 14.6519 1.63112 14.5698 1.77962 14.4209L10.0367 6.1515L10.05 6.13623C10.0747 6.10759 10.1014 6.07705 10.128 6.05033C10.1585 6.01978 10.1928 5.99115 10.2251 5.96252L10.2442 5.94534C10.9886 5.31349 12.1119 5.3593 12.8011 6.05033C13.4903 6.74135 13.536 7.78171 12.9705 8.53192L12.9648 8.53955C12.9058 8.61591 12.8544 8.67699 12.8011 8.73044C12.7497 8.78198 12.6906 8.83352 12.6069 8.90033L4.45264 17.0991C4.30414 17.248 4.22227 17.4465 4.22227 17.6584C4.22227 17.8703 4.30414 18.0689 4.45264 18.2177C4.60114 18.3666 4.79914 18.4487 5.01047 18.4487C5.2218 18.4487 5.4198 18.3666 5.5683 18.2177L13.9167 9.84716C14.5698 9.1924 14.9315 8.31812 14.9315 7.39038H14.9296Z",fill:"currentColor"}),t.h("path",{key:"2d1f7045c261de3721c5b8b27403c8258310ae4c",d:"M10.6821 9.11238C10.4727 9.01694 10.2861 8.88904 10.1281 8.7306C9.97008 8.57216 9.84252 8.38508 9.74733 8.1751L9.69021 8.05103L0.467916 17.2978C0.287049 17.4792 0.174721 17.7082 0.149971 17.9411C0.125221 18.1778 0.19376 18.3897 0.344165 18.5405C0.471724 18.6684 0.65259 18.739 0.850592 18.739C1.11142 18.739 1.37796 18.6207 1.58358 18.4145L10.8059 9.16774L10.6821 9.11047V9.11238Z",fill:"currentColor"}),t.h("path",{key:"a6a34de523ff685dd51372f44b4c47d038419ed4",d:"M68.401 10.6185C68.2126 10.2692 67.9593 9.97334 67.6433 9.73854C67.3235 9.49993 66.956 9.31094 66.5486 9.17541C66.1316 9.03606 65.7033 8.91771 65.2749 8.81844C64.7951 8.70582 64.3039 8.57983 63.8165 8.44811C63.3196 8.31258 62.9065 8.14269 62.5905 7.94225C62.4743 7.88689 62.3391 7.76663 62.3391 7.50129C62.3391 7.39821 62.3639 7.29704 62.4153 7.19587L62.4248 7.18059C62.5352 7.02216 62.7142 6.8828 62.975 6.75109C63.234 6.62128 63.609 6.55829 64.1231 6.55829C64.5286 6.55829 64.877 6.61365 65.1569 6.72436C65.4348 6.83508 65.6652 6.96871 65.8442 7.12524C66.0212 7.27986 66.1659 7.45357 66.2782 7.63873C66.3563 7.76854 66.4267 7.89262 66.4858 8.00525L68.2754 6.84081C68.1669 6.59456 68.0146 6.33495 67.8204 6.0677C67.6033 5.768 67.3254 5.4893 66.9922 5.23732C66.659 4.98534 66.2516 4.77345 65.7813 4.60929C65.3111 4.44512 64.7532 4.36304 64.1231 4.36304C63.3844 4.36304 62.7599 4.46421 62.2706 4.66083C61.7813 4.85935 61.3815 5.09988 61.0845 5.37667C60.7875 5.65346 60.5628 5.95125 60.4143 6.2605C60.2639 6.57547 60.1611 6.85799 60.1078 7.10233C60.0945 7.18059 60.0812 7.27031 60.0678 7.36767C60.0545 7.4593 60.0469 7.5452 60.0469 7.62537C60.0469 8.13314 60.1745 8.56074 60.4239 8.89671C60.679 9.24222 61.0045 9.53429 61.391 9.76336C61.7813 9.99624 62.2116 10.1852 62.6704 10.3227C63.1388 10.462 63.5862 10.5823 64.0012 10.6796C64.4067 10.777 64.7932 10.8782 65.1531 10.9774C65.5224 11.0786 65.8289 11.2122 66.0631 11.3745C66.2801 11.5425 66.3887 11.7448 66.3887 11.9777C66.3887 12.2278 66.2916 12.4263 66.0993 12.5695C65.9279 12.6954 65.7261 12.7985 65.4958 12.8711C65.273 12.9436 65.0407 12.9913 64.8066 13.0142C64.58 13.0352 64.3915 13.0467 64.2468 13.0467C63.8032 13.0467 63.4224 13.0028 63.1197 12.915C62.8151 12.8272 62.5638 12.7241 62.3734 12.6057C62.1811 12.4874 62.0288 12.3614 61.9222 12.2316C61.8213 12.1094 61.747 12.0082 61.7014 11.9319L61.4957 11.6303L59.708 12.7928C59.8508 13.0161 60.0298 13.2643 60.2392 13.5296C60.4772 13.8293 60.7837 14.1138 61.153 14.3734C61.5224 14.633 61.966 14.8525 62.4724 15.0243C62.9788 15.1961 63.5748 15.282 64.2468 15.282C64.797 15.282 65.2901 15.2324 65.7166 15.137C66.1412 15.0396 66.5162 14.9117 66.8285 14.7552C67.1388 14.6005 67.4015 14.4192 67.6109 14.2149C67.8223 14.0107 67.9974 13.8026 68.1326 13.6003C68.4563 13.1135 68.6409 12.5504 68.6828 11.9262C68.6828 11.4069 68.5876 10.9641 68.401 10.6166V10.6185Z",fill:"currentColor"}),t.h("path",{key:"127937c688ac0410b9b3a53ee76fd962a4f4b407",d:"M26.3585 4.27905C23.7901 4.27905 21.6997 6.37504 21.6997 8.95017V15.0701H23.9291V8.95017C23.9291 7.6082 25.0181 6.5163 26.3565 6.5163C27.695 6.5163 28.784 7.6082 28.784 8.95017V15.0701H31.0134V8.95017C31.0134 6.37504 28.9229 4.27905 26.3546 4.27905H26.3585Z",fill:"currentColor"}),t.h("path",{key:"7336b38c7bcb388276b886e6792ad173327142d5",d:"M53.4522 4.27905C50.4251 4.27905 47.9634 6.74728 47.9634 9.78245C47.9634 12.8176 50.427 15.2859 53.4522 15.2859C54.5545 15.2859 55.6188 14.9594 56.5288 14.3409L56.7116 14.2169V15.0682H58.941V9.78245C58.941 6.74728 56.4793 4.27905 53.4522 4.27905ZM53.4522 13.0505C51.655 13.0505 50.1928 11.5845 50.1928 9.78245C50.1928 7.98044 51.655 6.51439 53.4522 6.51439C55.2494 6.51439 56.7116 7.98044 56.7116 9.78245C56.7116 11.5845 55.2494 13.0505 53.4522 13.0505Z",fill:"currentColor"}),t.h("path",{key:"904bbd6f937f00c2ae6e2269235f2adc2afbc6e4",d:"M45.5795 10.6166V0.356201H43.3501V10.6166C43.3501 13.1517 45.3758 15.2228 47.8908 15.2858V13.0486C46.6057 12.9875 45.5795 11.9204 45.5795 10.6166Z",fill:"currentColor"}),t.h("path",{key:"9425f2b121d23319942fa5d4daa9ce53173cbcf9",d:"M39.5428 4.4967V10.63C39.5428 11.6761 38.8669 12.621 37.9016 12.9284C37.1249 13.1746 36.3157 13.0486 35.6817 12.5829C35.0592 12.1247 34.6879 11.3917 34.6879 10.6186V4.4967H32.4585V10.5995C32.4585 12.7165 33.8388 14.57 35.8131 15.1084C37.0354 15.4424 38.2995 15.2973 39.3695 14.7037L39.5428 14.6063V14.9747C39.5428 16.2766 38.5166 17.3437 37.2315 17.4067V19.6439C39.7465 19.5809 41.7722 17.5117 41.7722 14.9747V4.4967H39.5428Z",fill:"currentColor"})),t.h("defs",{key:"7c41827bdfde9ce70fbcb353d98991e37e2a99fe"},t.h("clipPath",{key:"5e29b38dc325426fdb3284275f74c1c46485eb1c",id:"clip0_455_3543"},t.h("rect",{key:"c63515b41fb503c621fb26917befbcf503e26262",width:"68.7123",height:"19.2877",fill:"white",transform:"translate(0.144043 0.356201)"}))))}};W.style=ye;const ge=':host{display:block;margin-bottom:-12px;width:100%;z-index: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}.notif{display:flex;padding:17px;align-items:flex-start;justify-content:space-between;gap:16px;border-radius:var(--nylas-border-radius-2x);border:1.5px solid var(--nylas-error);background:var(--nylas-base-0)}@media screen and (max-width: 768px){.notif{width:auto}}.notif .content{display:flex;flex-direction:row;gap:8px}.notif .content .message{font-size:14px;font-weight:400;color:var(--nylas-base-800)}.notif .content .message .title{font-size:16px;font-weight:600;color:var(--nylas-base-950);display:block}.notif .content .message .description{font-size:14px;font-weight:400;color:var(--nylas-base-800);display:block}.notif .content .icon.error{color:var(--nylas-error)}.notif.error{border-color:var(--nylas-error);background:rgb(255, 248, 248)}.notif.warning{border-color:var(--nylas-warning)}.notif.info{border-color:var(--nylas-info)}.notif.success{border-color:var(--nylas-success)}.notif .dismiss-btn{background:none;border:none;color:var(--nylas-base-950);cursor:pointer}',ve=ge,Y=class{constructor(e){t.registerInstance(this,e),this.ttl=5e3,this.allowedCategories=["component","api","validation","invalid_session"],this.notifications=[]}onError(e){t.debug(`[nylas-notification] Error: ${e.detail.title}`),this.handleNotification(e)}onWarning(e){t.debug(`[nylas-notification] Warning: ${e.detail.title}`),this.handleNotification(e)}onInfo(e){t.debug(`[nylas-notification] Info: ${e.detail.title}`),this.handleNotification(e)}onSuccess(e){t.debug(`[nylas-notification] Success: ${e.detail.title}`),this.handleNotification(e)}handleNotification(e){if(e.defaultPrevented){t.debug("[nylas-notification] Event default prevented");return}if(this.ttl===0){t.debug("[nylas-notification] TTL is 0");return}if(this.allowedCategories.length>0&&!this.allowedCategories.includes(e.detail.category)){t.debug("[nylas-notification] Category not allowed");return}if(this.notifications=[...this.notifications,{...e.detail}],e.detail.ttl!=="none"){const a=e.detail.ttl?e.detail.ttl:this.ttl;window.setTimeout(()=>{this.notifications=this.notifications.filter(i=>i.id!==e.detail.id)},a)}}dismissNotification(e){this.notifications=this.notifications.filter(a=>a.id!==e)}render(){return t.h(t.Host,{key:"b86593ead0279b9e2213c2554d1153379470880e"},t.h(t.Fragment,{key:"860f23f3c6a0636b408d56806b11129c0a697418"},this.notifications.map(e=>t.h("div",{class:`notif ${e.type}`,key:e.id},t.h("div",{class:"content"},t.h("span",{class:`icon ${e.type}`},(e.type==="error"||e.type==="warning")&&t.h("warning-icon",null)),t.h("span",{class:"message"},t.h("span",{class:"title"},e.title),e.description&&t.h("span",{class:"description"},e.description))),t.h("button",{class:"dismiss-btn",onClick:()=>this.dismissNotification(e.id)},t.h("close-icon",null)))),t.h("slot",{key:"6125314e051684b396d99a3c8bb9ba99392f2729"})))}};Y.style=ve;const ke=":host{display:block}sp-theme{position:relative;height:inherit;display:flex;flex-direction:column;justify-content:center;align-items:center;font-family:var(--nylas-font-family)}.event-card{display:flex;align-items:center;flex-direction:column;width:calc(100% - 3rem);background-color:var(--nylas-base-0);color:var(--nylas-base-800);border-radius:var(--nylas-border-radius-2x);padding:3rem 1.5rem 1.5rem 1.5rem;position:relative;box-shadow:0px 1px 3px 0px rgba(0, 0, 0, 0.1), 0px 1px 2px 0px rgba(0, 0, 0, 0.06)}@media screen and (max-width: 768px){.event-card{margin-bottom:2rem}}.nylas-selected-event-card__date{font-size:min(max(16px, 3vw), 18px);font-weight:600}.nylas-selected-event-card__time{font-size:16px;font-weight:500}.calendar-icon{width:3rem;height:3rem;border-radius:50%;position:absolute;top:-1.25rem;left:50%;transform:translateX(-50%);background-color:var(--nylas-base-0);border:1px solid var(--nylas-base-200)}calendar-icon{display:flex;align-items:center;justify-content:center;height:100%}.event-timezone{display:flex;color:var(--nylas-base-600);margin-bottom:8px;gap:4px;align-items:center}@media screen and (max-width: 768px){.event-timezone{margin-bottom:16px}}",xe=ke;var Ce=function(e,a,i,o){var s=arguments.length,n=s<3?a:o===null?o=Object.getOwnPropertyDescriptor(a,i):o,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,a,i,o);else for(var l=e.length-1;l>=0;l--)(r=e[l])&&(n=(s<3?r(n):s>3?r(a,i,n):r(a,i))||n);return s>3&&n&&Object.defineProperty(a,i,n),n},R=function(e,a){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,a)};const A=class{constructor(e){t.registerInstance(this,e),this.selectedDate=void 0,this.selectedTimeslot=void 0,this.selectedTimezone=Intl.DateTimeFormat().resolvedOptions().timeZone,this.startTime="",this.endTime=""}connectedCallback(){}disconnectedCallback(){}async componentWillLoad(){t.debug("[nylas-selected-event-card] Component will load")}async componentDidLoad(){t.debug("[nylas-selected-event-card] Component did load"),this.selectedDate||console.warn('[nylas-selected-event-card] "selectedDate" prop is not provided.'),this.selectedTimeslot||console.warn('[nylas-selected-event-card] "selectedTimeslot" prop is not provided.')}handleSelectedTimeslotChange(e){this.startTime=new Date(e==null?void 0:e.start_time).toLocaleString(void 0,{timeStyle:"short"}),this.endTime=new Date(e==null?void 0:e.end_time).toLocaleString(void 0,{timeStyle:"short"})}render(){var e;return t.h(t.Host,{key:"ae635bed01604ece8f012b82c00fa7d4b6bc4c3d",part:"nsec"},t.h("sp-theme",{key:"edcbe79ce2a87e920bd88714b3a5a747d4a80747",theme:"spectrum",color:"dark",scale:"medium"},t.h("div",{key:"8c736e8a7ea756b2ef8ba316e0f2c0f38f3821fd",class:"event-card",part:"nsec__card"},t.h("div",{key:"06c33c0fc54e893cbeb8c685503f73a74109ab33",class:"calendar-icon",part:"nsec__icon"},t.h("calendar-icon",{key:"69617d50f58122aea2dd92e7ea26d5b2a984c2bf"})),t.h("div",{key:"e4e53019bba6e23f2c5f0a5b8cde5336973d795d",class:"nylas-selected-event-card__date",part:"nsec__date"},(e=this.selectedDate)==null?void 0:e.toLocaleDateString(void 0,{dateStyle:"full"})),t.h("div",{key:"c838e6987d4c932471d27dca86c295f549f06a5d",class:"nylas-selected-event-card__time",part:"nsec__time"},this.startTime," - ",this.endTime)),t.h("div",{key:"3e0f9d170e593f39516d49e31fe0da1db49fe828",class:"event-timezone",part:"nsec__timezone"},t.h("globe-icon",{key:"12f52fc23ec7d60d046078aceeb6fffba7283078"}),h.TIMEZONE_MAP[this.selectedTimezone])))}static get watchers(){return{selectedTimeslot:["handleSelectedTimeslotChange"]}}};Ce([f.RegisterComponent({name:"nylas-selected-event-card",stateToProps:new Map([["scheduler.selectedDate","selectedDate"],["scheduler.selectedTimeslot","selectedTimeslot"],["scheduler.selectedTimezone","selectedTimezone"]]),eventToProps:{},fireRegisterEvent:!0}),R("design:type",Function),R("design:paramtypes",[]),R("design:returntype",void 0)],A.prototype,"render",null);A.style=xe;const we=":host{display:block;height:calc(100% - 48px)}.time-picker-wrapper{display:flex;flex-direction:column;height:100%}.time-slots{position:relative;display:flex;flex-direction:column;gap:0.75rem;align-items:center;overflow-y:scroll;padding:0.5rem 1.5rem 1.5rem;flex:1}.time{box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:4px 12px;gap:0.5rem;font-size:16px;font-weight:500;font-family:inherit;width:100%;height:48px;color:var(--nylas-base-800);background:var(--nylas-base-0);border:none;outline:1.5px solid var(--nylas-base-200);border-radius:var(--nylas-border-radius-2x);flex:none;order:4;align-self:stretch;flex-grow:0;cursor:pointer}.time:hover,.time:focus{color:var(--nylas-primary);outline-color:var(--nylas-primary)}.time.selected{font-weight:600;color:var(--nylas-primary);outline:2px solid var(--nylas-primary);border-color:transparent;box-shadow:0 0 0 2px var(--nylas-primary)}.empty{text-align:center;padding:0 1.5rem;color:var(--nylas-base-600);font-size:min(max(12px, 2vw), 14px);height:450px;display:flex;align-items:center;justify-content:center}@keyframes pulsate{0%{background-color:var(--nylas-base-50)}50%{background-color:var(--nylas-base-100)}100%{background-color:var(--nylas-base-50)}}.loading{padding:0 1.5rem}.loading .time-slot-skeleton{width:100%;height:4rem;background-color:var(--nylas-base-50);margin-bottom:0.5rem;border-radius:var(--nylas-border-radius-2x);animation:pulsate 1.5s infinite ease-in-out}.footer{width:100%;padding:14px;box-sizing:border-box;border-top:1px solid var(--nylas-base-200)}.footer sp-button{padding:14px;color:var(--nylas-base-100);border-radius:var(--nylas-border-radius-2x);width:100%;height:48px;font-weight:600;font-size:16px;background-color:var(--nylas-primary);border:none}.footer sp-button:hover,.footer sp-button:focus{background-color:var(--nylas-base-600)}.footer sp-button:active{background-color:var(--nylas-base-800)}",_e=we;var Ee=function(e,a,i,o){var s=arguments.length,n=s<3?a:o===null?o=Object.getOwnPropertyDescriptor(a,i):o,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,a,i,o);else for(var l=e.length-1;l>=0;l--)(r=e[l])&&(n=(s<3?r(n):s>3?r(a,i,n):r(a,i))||n);return s>3&&n&&Object.defineProperty(a,i,n),n},P=function(e,a){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,a)};const Z=class{constructor(e){t.registerInstance(this,e),this.timeslotSelected=t.createEvent(this,"timeslotSelected",7),this.timeslotConfirmed=t.createEvent(this,"timeslotConfirmed",7),this.handleConfirmedTimeslot=async(a,i)=>{a.preventDefault(),t.debug("[nylas-timeslot-picker] Confirm timeslot",i),this.timeslotConfirmed.emit(i)},this.handleMouseEnter=a=>{this.hoveredTimeslotIndex=a},this.handleMouseLeave=()=>{this.hoveredTimeslotIndex=-1},this.selectedDate=new Date,this.availability=void 0,this.selectedTimeslot=void 0,this.isLoading=void 0,this.selectedTimezone=Intl.DateTimeFormat().resolvedOptions().timeZone,this.times=[],this.hoveredTimeslotIndex=void 0,this.selectedTimeslotIndex=void 0}connectedCallback(){}disconnectedCallback(){}async componentWillLoad(){var a;const e=(a=this.availability)==null?void 0:a.filter(i=>this.selectedDate&&t.isSameDay(i.start_time,this.selectedDate)).map(i=>i);this.times=e||[],t.debug("[nylas-timeslot-picker] Component will load",{selectedDate:this.selectedDate,availability:this.availability,times:this.times})}async componentDidLoad(){t.debug("[nylas-timeslot-picker] Component did load")}getTimeslotId(e,a){return`${e.toLocaleDateString()}-${a}`}onClickSelectTime(e,a){t.debug("[nylas-timeslot-picker] Time selected",e,a),this.selectedTimeslotIndex=this.getTimeslotId(e.start_time,a),this.timeslotSelected.emit({start_time:e.start_time,end_time:e.end_time})}getTimeSlotLabel(e){const a=new Intl.DateTimeFormat("en-US",{hour:"numeric",minute:"numeric",timeZone:this.selectedTimezone});return`${a.format(e.start_time)} - ${a.format(e.end_time)}`}selectedDateChanged(e){var a;if(t.debug("[nylas-timeslot-picker] Selected date changed",{newVal:e}),e&&(this.selectedTimeslotIndex="",typeof e<"u")){const i=(a=this.availability)==null?void 0:a.filter(o=>t.isSameDay(o.start_time,e)).map(o=>o);this.times=i||[]}}availabilityChanged(e){if(t.debug("[nylas-timeslot-picker] Available times changed",{newVal:e,selectedDate:this.selectedDate}),typeof e<"u"){const a=e==null?void 0:e.filter(i=>this.selectedDate&&t.isSameDay(i.start_time,this.selectedDate)).map(i=>i);this.times=a||[]}}render(){return this.isLoading?t.h(t.Host,null,t.h("div",{class:"loading"},new Array(6).fill(0).map((e,a)=>t.h("div",{class:"time-slot-skeleton",style:{animationDelay:`${a*20}ms`}})))):this.availability&&this.availability.length===0?t.h(t.Host,null,t.h("div",{class:"empty"},t.h("span",null,"No dates available"))):(!this.times||this.times.length===0)&&this.selectedDate?t.h(t.Host,null,t.h("div",{class:"empty"},t.h("span",null,"No time slots available for selected date"))):this.selectedDate?t.h(t.Host,{part:"ntp"},t.h("div",{class:"time-picker-wrapper"},t.h("div",{class:"time-slots"},this.times.map((e,a)=>{var i,o,s,n;return t.h("button",{part:`ntp__timeslot ${((o=(i=this.selectedTimeslot)==null?void 0:i.start_time)==null?void 0:o.getTime())===e.start_time.getTime()?"ntp__timeslot--selected":""}`,"aria-role":"button",class:{time:!0,selected:typeof this.selectedTimeslot<"u"&&((n=(s=this.selectedTimeslot)==null?void 0:s.start_time)==null?void 0:n.getTime())===e.start_time.getTime()},onClick:()=>this.onClickSelectTime(e,a),onMouseEnter:()=>this.handleMouseEnter(a),onMouseLeave:()=>this.handleMouseLeave()},this.hoveredTimeslotIndex==a||this.selectedTimeslotIndex==this.getTimeslotId(e.start_time,a)?this.getTimeSlotLabel(e):e.start_time.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",timeZone:this.selectedTimezone}))})),this.selectedTimeslot&&t.h("div",{class:"footer"},t.h("sp-button",{variant:"primary",onClick:e=>this.handleConfirmedTimeslot(e,this.selectedTimeslot),part:"ntp__button-primary"},t.h("slot",{name:"timeslot-picker-cta-label"},"Next"))))):t.h(t.Host,null)}static get watchers(){return{selectedDate:["selectedDateChanged"],availability:["availabilityChanged"]}}};Ee([f.RegisterComponent({name:"nylas-timeslot-picker",stateToProps:new Map([["scheduler.selectedDate","selectedDate"],["scheduler.availability","availability"],["scheduler.selectedTimeslot","selectedTimeslot"],["scheduler.selectedTimezone","selectedTimezone"],["scheduler.isLoading","isLoading"]]),eventToProps:{timeslotSelected:async(e,a)=>{a.scheduler.selectTime(e.detail)},timeslotConfirmed:async(e,a)=>{e.detail&&a.scheduler.toggleAdditionalData(!0)}},fireRegisterEvent:!0}),P("design:type",Function),P("design:paramtypes",[]),P("design:returntype",void 0)],Z.prototype,"render",null);Z.style=_e;exports.nylas_booked_event_card=M;exports.nylas_booking_form=F;exports.nylas_cancel_booking_form=j;exports.nylas_cancelled_event_card=N;exports.nylas_date_picker=H;exports.nylas_locale_switch=O;exports.nylas_logo=W;exports.nylas_notification=Y;exports.nylas_selected_event_card=A;exports.nylas_timeslot_picker=Z;