@nylas/react 1.1.0-canary.4 → 1.1.0-canary.7

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 (103) hide show
  1. package/dist/elements/index.d.ts +1 -0
  2. package/dist/{elements-dc5b338e-fb5dbfb5.js → elements-dc5b338e-6078b875.js} +1 -1
  3. package/dist/{elements-dc5b338e-81a0319c.cjs → elements-dc5b338e-96e197ca.cjs} +1 -1
  4. package/dist/focus-visible-e8093c16-018ffd63.cjs +1 -0
  5. package/dist/{focus-visible-e8093c16-28fc08a0.js → focus-visible-e8093c16-ab01d60a.js} +5 -3
  6. package/dist/index-1fd24ccf.js +3582 -0
  7. package/dist/index-823fdc6f.cjs +36 -0
  8. package/dist/react.cjs +1 -1
  9. package/dist/react.js +53 -52
  10. package/package.json +3 -3
  11. package/dist/_commonjsHelpers-57e89916-4a3ae7d8.cjs +0 -1
  12. package/dist/_commonjsHelpers-57e89916-af061c86.js +0 -19
  13. package/dist/add-circle-icon_22.entry-077661c3.cjs +0 -1
  14. package/dist/add-circle-icon_22.entry-f699d91e.js +0 -1733
  15. package/dist/archive-icon_7.entry-40b7ef3b.js +0 -75
  16. package/dist/archive-icon_7.entry-e8630de9.cjs +0 -1
  17. package/dist/arrow-icon.entry-58246303.js +0 -15
  18. package/dist/arrow-icon.entry-ffa53114.cjs +0 -1
  19. package/dist/bold-icon_3.entry-106a4e77.cjs +0 -1
  20. package/dist/bold-icon_3.entry-f5f1643d.js +0 -35
  21. package/dist/calendar-cancel-icon.entry-6ae0fd0f.cjs +0 -1
  22. package/dist/calendar-cancel-icon.entry-75b15b19.js +0 -15
  23. package/dist/calendar-check-icon_2.entry-57339318.js +0 -25
  24. package/dist/calendar-check-icon_2.entry-c57f83f3.cjs +0 -1
  25. package/dist/calendar-icon.entry-2069fec6.js +0 -15
  26. package/dist/calendar-icon.entry-492c2630.cjs +0 -1
  27. package/dist/chevron-icon_3.entry-83df50c3.js +0 -117
  28. package/dist/chevron-icon_3.entry-878ff6df.cjs +0 -1
  29. package/dist/close-icon.entry-480c199d.js +0 -15
  30. package/dist/close-icon.entry-8015ca05.cjs +0 -1
  31. package/dist/constants-6ee60d6d-4cd16450.js +0 -3740
  32. package/dist/constants-6ee60d6d-6c0540db.cjs +0 -15
  33. package/dist/document-refresh-icon.entry-06f7972b.cjs +0 -1
  34. package/dist/document-refresh-icon.entry-09870b14.js +0 -15
  35. package/dist/focus-visible-e8093c16-f380b705.cjs +0 -1
  36. package/dist/forward-icon_6.entry-8bb201eb.js +0 -955
  37. package/dist/forward-icon_6.entry-eeecf2a2.cjs +0 -3
  38. package/dist/globe-icon.entry-a690028c.cjs +0 -1
  39. package/dist/globe-icon.entry-d515cbfa.js +0 -15
  40. package/dist/google-logo-icon_3.entry-2164cec1.js +0 -258
  41. package/dist/google-logo-icon_3.entry-b2b85284.cjs +0 -1
  42. package/dist/index-2b8437d6.cjs +0 -30
  43. package/dist/index-db0c5017.js +0 -1824
  44. package/dist/index.es-2578c6a5-098d48d0.cjs +0 -7
  45. package/dist/index.es-2578c6a5-71441142.js +0 -3133
  46. package/dist/info-icon_2.entry-300ef196.js +0 -34
  47. package/dist/info-icon_2.entry-e286aaa5.cjs +0 -1
  48. package/dist/loading-icon.entry-6d8adaa4.js +0 -15
  49. package/dist/loading-icon.entry-dc40e97d.cjs +0 -1
  50. package/dist/mailbox-store-bb21512c-649a374c.js +0 -381
  51. package/dist/mailbox-store-bb21512c-fc3c8c03.cjs +0 -1
  52. package/dist/nylas-additional-participants.entry-4afba192.js +0 -83
  53. package/dist/nylas-additional-participants.entry-db05e510.cjs +0 -1
  54. package/dist/nylas-booked-event-card_10.entry-1ebbe0c0.js +0 -784
  55. package/dist/nylas-booked-event-card_10.entry-6b6fdfae.cjs +0 -1
  56. package/dist/nylas-form-card.entry-70b20571.cjs +0 -1
  57. package/dist/nylas-form-card.entry-7bc23695.js +0 -56
  58. package/dist/nylas-if-state.entry-3829cb3d.js +0 -96
  59. package/dist/nylas-if-state.entry-ebeffe22.cjs +0 -1
  60. package/dist/nylas-list-folders.entry-191688f2.cjs +0 -1
  61. package/dist/nylas-list-folders.entry-7347e78d.js +0 -122
  62. package/dist/nylas-list-threads.entry-432a8d8c.js +0 -72
  63. package/dist/nylas-list-threads.entry-44658578.cjs +0 -1
  64. package/dist/nylas-login.entry-5311f0a7.js +0 -75
  65. package/dist/nylas-login.entry-db17a3d2.cjs +0 -1
  66. package/dist/nylas-mailbox-pagination.entry-20150fb2.js +0 -103
  67. package/dist/nylas-mailbox-pagination.entry-9d3f5baa.cjs +0 -1
  68. package/dist/nylas-mailbox-toolbar-button.entry-6c0f7299.cjs +0 -1
  69. package/dist/nylas-mailbox-toolbar-button.entry-eec426d5.js +0 -84
  70. package/dist/nylas-mailbox.entry-b6c758b9.js +0 -136
  71. package/dist/nylas-mailbox.entry-d41401e0.cjs +0 -1
  72. package/dist/nylas-provider.entry-271cafd2.js +0 -147
  73. package/dist/nylas-provider.entry-6173b721.cjs +0 -1
  74. package/dist/nylas-scheduler-editor.entry-0c75d39e.cjs +0 -7
  75. package/dist/nylas-scheduler-editor.entry-b51ad4b1.js +0 -2192
  76. package/dist/nylas-scheduling.entry-081c8825.cjs +0 -1
  77. package/dist/nylas-scheduling.entry-0a8d1da8.js +0 -237
  78. package/dist/nylas-threads-refresh.entry-72dd854e.js +0 -76
  79. package/dist/nylas-threads-refresh.entry-c3509e6a.cjs +0 -1
  80. package/dist/nylas-threads-search.entry-16a59ef6.cjs +0 -1
  81. package/dist/nylas-threads-search.entry-4750a187.js +0 -71
  82. package/dist/nylas-view-thread.entry-27df3349.cjs +0 -1
  83. package/dist/nylas-view-thread.entry-c6adce43.js +0 -205
  84. package/dist/people-icon.entry-342be0c8.js +0 -15
  85. package/dist/people-icon.entry-35252ca9.cjs +0 -1
  86. package/dist/play-icon_2.entry-0787352c.js +0 -25
  87. package/dist/play-icon_2.entry-f83fa92a.cjs +0 -1
  88. package/dist/refresh-icon.entry-8fbabfe7.js +0 -15
  89. package/dist/refresh-icon.entry-ddbc5446.cjs +0 -1
  90. package/dist/register-component-dc659dc3-e43e8fae.js +0 -105
  91. package/dist/register-component-dc659dc3-fb85ee68.cjs +0 -1
  92. package/dist/scheduler-config-store-51ee4f42-66f8c2ac.js +0 -14
  93. package/dist/scheduler-config-store-51ee4f42-d7d9c25d.cjs +0 -1
  94. package/dist/scheduler-store-72116723-ce4c7a69.cjs +0 -1
  95. package/dist/scheduler-store-72116723-e5f87122.js +0 -294
  96. package/dist/time-period-selector.entry-333942a8.js +0 -78
  97. package/dist/time-period-selector.entry-78d5b3c2.cjs +0 -1
  98. package/dist/translate-icon.entry-87a62108.js +0 -15
  99. package/dist/translate-icon.entry-cb19864c.cjs +0 -1
  100. package/dist/utils-c00bdc3c-89ab163d.js +0 -2111
  101. package/dist/utils-c00bdc3c-94b9c3b6.cjs +0 -8
  102. package/dist/warning-icon.entry-50755d91.cjs +0 -1
  103. package/dist/warning-icon.entry-7a72e24a.js +0 -15
@@ -1,205 +0,0 @@
1
- import { r as k, c as p, h as a, F as m, H as M, g as x } from "./index-db0c5017.js";
2
- import { R as E } from "./register-component-dc659dc3-e43e8fae.js";
3
- import { d, t as D, e as S, a as T, g } from "./utils-c00bdc3c-89ab163d.js";
4
- import "react";
5
- import "react-dom";
6
- import "./_commonjsHelpers-57e89916-af061c86.js";
7
- function R(t, e, s, o, r) {
8
- if (!o || !s || s.children.length > 0)
9
- return;
10
- d("[nylas-view-thread] Rendering email", { message: t, attachments: e, viewEmailElement: o });
11
- const n = o.cloneNode(!0);
12
- n.message = t.data, n.parent = r, s.appendChild(n);
13
- }
14
- const u = ({ viewEmailElement: t, message: e, attachments: s, onMessageClick: o, onShowContactDataClick: r, parent: n }) => {
15
- var l, i, c, v, w, f, b;
16
- return a(
17
- m,
18
- null,
19
- a(
20
- "div",
21
- { key: e.id, class: "message" },
22
- a(
23
- "div",
24
- { class: "sub-header", "data-id": e.data.id, onClick: o },
25
- a("div", { class: "avatar" }, e.data.from && ((l = e.data.from[0]) == null ? void 0 : l.name) && ((c = (i = e.data.from[0]) == null ? void 0 : i.name[0]) == null ? void 0 : c.toUpperCase())),
26
- a(
27
- "div",
28
- { class: "from" },
29
- a("span", { class: "name" }, e.data.from && ((v = e.data.from[0]) == null ? void 0 : v.name)),
30
- " ",
31
- a("span", { class: "email" }, e.data.from && ((w = e.data.from[0]) == null ? void 0 : w.email))
32
- ),
33
- a(
34
- "div",
35
- { class: "date" },
36
- new Date(e.data.date * 1e3).toLocaleTimeString(void 0, {
37
- timeStyle: "short"
38
- }),
39
- " ",
40
- "(",
41
- S(new Date(e.data.date * 1e3)),
42
- ")"
43
- ),
44
- a(
45
- "sp-button-group",
46
- { class: "buttons" },
47
- a("nylas-summarize-message-button", { message: e.data })
48
- ),
49
- e.collapse && a("div", { class: "snippet" }, e.data.snippet),
50
- !e.collapse && e.data.to && a(
51
- "div",
52
- { class: "to" },
53
- a("span", null, "to"),
54
- " ",
55
- T(e.data.to),
56
- " ",
57
- a(
58
- "button",
59
- { type: "button", value: e.data.id, onClick: r, class: {
60
- expand: !0,
61
- "expand--showContactData": e.showContactData
62
- } },
63
- a("chevron-icon", null)
64
- )
65
- )
66
- ),
67
- e.showContactData && a(
68
- "div",
69
- { class: "address-info" },
70
- a("div", { class: "label" }, "From"),
71
- a("div", { class: "value" }, g((f = e.data) != null && f.from ? (b = e == null ? void 0 : e.data) == null ? void 0 : b.from[0] : { name: "", email: "" })),
72
- e.data.to && a(
73
- m,
74
- null,
75
- a("div", { class: "label" }, "To"),
76
- a("div", { class: "value" }, e.data.to.map((h) => a("div", null, g(h))))
77
- ),
78
- typeof e.data.cc < "u" && e.data.cc.length > 0 && a(
79
- m,
80
- null,
81
- a("div", { class: "label" }, "CC"),
82
- a("div", { class: "value" }, e.data.cc.map((h) => a("div", null, g(h))))
83
- )
84
- ),
85
- !e.collapse && t && a("div", { key: e.id, ref: (h) => R(e, s, h, t, n) }),
86
- !e.collapse && !t && a("nylas-view-email", { key: e.id, message: e.data, parent: n })
87
- ),
88
- a("hr", null)
89
- );
90
- }, A = ':host{display:block;font-size:inherit}.avatar{z-index:1;border-radius:100%;background-color:var(--nylas-color-primary-200);height:40px;width:40px;align-items:center;display:flex;justify-content:center;border:1px solid var(--nylas-color-primary-200)}.view-thread{display:grid;grid-auto-flow:row;width:100%}.view-thread .header{display:grid;grid-gap:1rem;align-items:center;margin-bottom:1rem}.view-thread .header .subject{font-size:1.25rem;font-weight:600;line-height:1.5rem}.view-thread .header .folders{display:grid;grid-auto-flow:column;grid-auto-columns:min-content;overflow-x:auto;gap:1rem}.view-thread .header .folders .folder{padding:0 0.5rem;font-size:0.9rem;color:var(--nylas-color-primary-900);background-color:var(--nylas-color-primary-300)}.view-thread .messages{display:grid;gap:1rem}.view-thread .messages hr{margin:0;width:100%;border:1px solid var(--nylas-color-primary-200)}.view-thread .messages hr:last-of-type{display:none}.view-thread .messages .message{display:grid;grid-auto-flow:row;gap:1rem}.view-thread .messages .message:last-of-type .sub-header{cursor:default}.view-thread .messages .message .sub-header{display:grid;grid-template:"avatar from date buttons" "avatar to to buttons";grid-column-gap:1rem;grid-template-columns:auto 1fr auto auto;cursor:pointer}.view-thread .messages .message .sub-header>*{pointer-events:none}.view-thread .messages .message .sub-header .avatar{grid-area:avatar}.view-thread .messages .message .sub-header .from{grid-area:from}.view-thread .messages .message .sub-header .from span.email{display:none;color:var(--nylas-color-primary-400);font-weight:600}.view-thread .messages .message .sub-header .buttons{grid-area:buttons;align-self:center}.view-thread .messages .message .sub-header .buttons *{pointer-events:all}.view-thread .messages .message .sub-header .date{grid-area:date;align-self:center;color:var(--nylas-color-primary-400)}.view-thread .messages .message .sub-header .snippet{width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--nylas-color-primary-600)}.view-thread .messages .message .sub-header .to{grid-area:to;color:var(--nylas-color-primary-400)}.view-thread .messages .message .sub-header .to>span{color:var(--nylas-color-primary-400)}.view-thread .messages .message .sub-header .to button{border:0;background-color:transparent;cursor:pointer;pointer-events:all;padding:0;margin:0}.view-thread .messages .message .sub-header .to button>*{pointer-events:none}.view-thread .messages .message .sub-header .to button chevron-icon{display:inline-table;fill:var(--nylas-color-primary-400);width:15px;height:15px;vertical-align:middle}.view-thread .messages .message .sub-header .to button chevron-icon svg{width:15px;height:15px;transform:rotate(90deg)}.view-thread .messages .message .sub-header .to button.expand--showContactData chevron-icon svg{transform:rotate(270deg)}.view-thread .messages .message .address-info{display:grid;column-gap:1rem;row-gap:0.5rem;grid-template-columns:auto 1fr;grid-template-rows:1fr;padding:1rem 2rem;border-radius:var(--nylas-border-radius-2x);border:1px solid var(--nylas-color-primary-200);align-items:flex-start;color:var(--nylas-color-primary-600)}.view-thread .messages .message .address-info .label{color:var(--nylas-color-primary-400);font-weight:600}.show-more{position:relative;display:flex;width:100%}.show-more .sr-only{display:none}.show-more button{position:relative;display:inline-flex;width:100%;padding:0;border:0;background-color:transparent;cursor:pointer;text-align:left;overflow:hidden}.show-more button span{border:1px solid var(--nylas-color-primary-400)}.show-more button:hover span{background-color:var(--nylas-color-primary-700)}.show-more button::after{border-top:1px solid rgba(100, 121, 143, 0.122);border-bottom:1px solid rgba(100, 121, 143, 0.122);content:"";height:4px;width:100%;position:absolute;top:50%}.loading{position:absolute;width:100%;height:100%;background-color:var(--loading__background-color);top:0;bottom:0;left:0;z-index:1;display:grid;justify-content:center;align-items:center;font-weight:600;overflow:hidden}.reply-buttons{display:grid;grid-auto-flow:column;grid-auto-columns:min-content;gap:1rem;margin-top:1rem}.reply-buttons sp-button{border-radius:var(--nylas-border-radius);background-color:var(--nylas-color-primary-400);color:var(--nylas-color-primary-900);fill:var(--nylas-color-primary-900)}.reply-buttons sp-button:hover{background-color:var(--nylas-color-primary-500)}.reply-buttons sp-button:disabled{background-color:var(--nylas-color-primary-200);color:var(--nylas-color-primary-600);cursor:not-allowed}.reply-buttons sp-button chevron-icon{display:inline-block}@media only screen and (min-width: 768px){.view-thread .messages .message .sub-header .from span.email{display:inline}}', V = A;
91
- var _ = function(t, e, s, o) {
92
- var r = arguments.length, n = r < 3 ? e : o === null ? o = Object.getOwnPropertyDescriptor(e, s) : o, l;
93
- if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
94
- n = Reflect.decorate(t, e, s, o);
95
- else
96
- for (var i = t.length - 1; i >= 0; i--)
97
- (l = t[i]) && (n = (r < 3 ? l(n) : r > 3 ? l(e, s, n) : l(e, s)) || n);
98
- return r > 3 && n && Object.defineProperty(e, s, n), n;
99
- }, y = function(t, e) {
100
- if (typeof Reflect == "object" && typeof Reflect.metadata == "function")
101
- return Reflect.metadata(t, e);
102
- };
103
- const C = class {
104
- constructor(t) {
105
- k(this, t), this.threadSelected = p(this, "threadSelected", 7), this.showContactDataClicked = p(this, "showContactDataClicked", 7), this.messageClicked = p(this, "messageClicked", 7), this.nylasViewEmailElement = null, this.nylasComposerElement = null, this.onShowContactDataClick = (e) => {
106
- e.stopPropagation();
107
- const o = e.target.value, r = this.internalMessages.find((l) => l.data.id === o);
108
- if (!r) {
109
- d(`[nylas-view-thread] Could not find message ${o}`);
110
- return;
111
- }
112
- this.showContactDataClicked.emit(r.data).defaultPrevented || (r.showContactData = !r.showContactData, this.internalMessages = [...this.internalMessages]), d(`[nylas-view-thread] show contact data clicked ${o} ${r.showContactData ? "collapsed" : "expanded"}`);
113
- }, this.onMessageClick = (e) => {
114
- var l;
115
- const o = e.target.dataset.id, r = this.internalMessages.find((i) => i.data.id === o);
116
- if (!r) {
117
- d(`[nylas-view-thread] Could not find message ${o}`);
118
- return;
119
- }
120
- this.messageClicked.emit(r.data).defaultPrevented || (r.id !== ((l = this.internalMessages[this.internalMessages.length - 1]) == null ? void 0 : l.id) && (r.collapse = !r.collapse, r.collapse && (r.showContactData = !1)), this.internalMessages = [...this.internalMessages]), d(`[nylas-view-thread] message clicked ${o} ${r.collapse ? "collapsed" : "expanded"}`);
121
- }, this.onShowAllEmailsClick = () => {
122
- this.showAllEmails = !this.showAllEmails;
123
- }, this.showComposerClick = () => {
124
- this.showComposer = !this.showComposer;
125
- }, this.draft = void 0, this.thread = void 0, this.messages = [], this.attachments = [], this.state = "loading", this.internalMessages = [], this.showAllEmails = !1, this.showComposer = !1;
126
- }
127
- connectedCallback() {
128
- }
129
- disconnectedCallback() {
130
- }
131
- async componentWillLoad() {
132
- d("[nylas-view-thread] Component will load"), this.updateInternalMessages(this.messages);
133
- const t = this.host.querySelector("template.nylas-view-email");
134
- if (!t) {
135
- d("[nylas-view-thread] Could not find template");
136
- return;
137
- }
138
- const e = document.importNode(t.content, !0);
139
- this.nylasViewEmailElement = e.querySelector("nylas-view-email");
140
- const s = this.host.querySelector("template.nylas-composer");
141
- if (!s) {
142
- d("[nylas-view-thread] Could not find composer template");
143
- return;
144
- }
145
- const o = document.importNode(s.content, !0);
146
- this.nylasComposerElement = o.querySelector("nylas-composer");
147
- }
148
- async componentDidLoad() {
149
- d("[nylas-view-thread] Component did load");
150
- }
151
- async threadChanged(t) {
152
- d("[nylas-view-thread] Thread changed", { thread: t }), this.internalMessages = [], this.threadSelected.emit(t).defaultPrevented || d("[nylas-view-thread] Default event not prevented, initializing");
153
- }
154
- updateInternalMessages(t) {
155
- d("[nylas-view-thread] Updating internal messages", { messages: t });
156
- const e = t.sort((s, o) => s.date > o.date ? 1 : -1).map((s, o) => ({
157
- id: s.id,
158
- data: s,
159
- collapse: o !== t.length - 1,
160
- showContactData: !1
161
- }));
162
- this.internalMessages = e;
163
- }
164
- render() {
165
- var r, n, l;
166
- const t = this.internalMessages.length > 2 ? this.internalMessages[0] : null, e = this.internalMessages.slice(this.internalMessages.length - 2, this.internalMessages.length), s = this.internalMessages.slice(1, this.internalMessages.length - 2), o = this.internalMessages[this.internalMessages.length - 1];
167
- return a(M, { key: "836293c4ebe84588af8bc245f79ef45548d99d64" }, a("sp-theme", { key: "7d66ec6cb6d487a0f454ee27d81c20e41e5f7649", scale: "medium", color: "dark" }, a("div", { key: "d70c54528874a783aa31c8c16aa2023d08a14da1", class: "view-thread" }, a("div", { key: "d1de0e04665f48d83fa2e913f9c48beea42e2149", class: "header" }, a("div", { key: "a08529d41372857db86f3abfaed8a2d5f7898392", class: "subject" }, (r = this.thread) == null ? void 0 : r.subject), a("div", { key: "e26cddf45f1ff869837184f136ce44225911aca9", class: "folders" }, (l = (n = this.thread) == null ? void 0 : n.folders) == null ? void 0 : l.map((i) => a("sp-tag", { size: "s" }, D(i.replace("CATEGORY_", "").replace("_", " ")))))), a("div", { key: "03d81b5879b0003b991f1b34f78961358008324c", class: "messages" }, t && a(u, { message: t, attachments: this.attachments.filter((i) => i.messageId === t.id), onMessageClick: this.onMessageClick, onShowContactDataClick: this.onShowContactDataClick, parent: this.host, viewEmailElement: this.nylasViewEmailElement, composerElement: this.nylasComposerElement }), s.length > 0 && this.messages.length > 1 && !this.showAllEmails && e.length > 0 && a(m, null, a("div", { class: "show-more" }, a("button", { type: "button", onClick: this.onShowAllEmailsClick }, a("span", { class: "avatar" }, s.length), " ", a("span", { class: "sr-only" }, "Show ", s.length, " more emails"))), a("hr", null)), s.length > 0 && this.showAllEmails && this.messages.length > 2 && s.map((i) => a(u, { message: i, attachments: this.attachments.filter((c) => c.messageId === (t == null ? void 0 : t.id)), onMessageClick: this.onMessageClick, onShowContactDataClick: this.onShowContactDataClick, parent: this.host, viewEmailElement: this.nylasViewEmailElement, composerElement: this.nylasComposerElement })), e.length > 0 && e.map((i) => a(u, { message: i, attachments: this.attachments.filter((c) => c.messageId === (t == null ? void 0 : t.id)), onMessageClick: this.onMessageClick, onShowContactDataClick: this.onShowContactDataClick, parent: this.host, viewEmailElement: this.nylasViewEmailElement, composerElement: this.nylasComposerElement }))), !(this.showComposer && o) && a("div", { class: "reply-buttons" }, a("sp-button", { variant: "cta", type: "button", onClick: this.showComposerClick }, a("span", { slot: "icon" }, a("reply-icon", null)), a("span", null, "Reply")), a("sp-button", { variant: "cta", type: "button" }, a("span", { slot: "icon" }, a("reply-all-icon", null)), a("span", null, "Reply All")), a("sp-button", { variant: "cta", type: "button" }, a("span", { slot: "icon" }, a("forward-icon", null)), a("span", null, "Forward"))), this.showComposer && o && a("div", { class: "composer" }, a("nylas-composer", { message: o.data, onClose: this.showComposerClick, onSend: (i) => {
168
- d("[nylas-view-thread] Send event", { message: i.detail.message, replyBody: i.detail.replyBody });
169
- } })))));
170
- }
171
- get host() {
172
- return x(this);
173
- }
174
- static get watchers() {
175
- return {
176
- thread: ["threadChanged"],
177
- messages: ["updateInternalMessages"]
178
- };
179
- }
180
- };
181
- _([
182
- E({
183
- name: "nylas-view-thread",
184
- stateToProps: /* @__PURE__ */ new Map([
185
- ["mailbox.selectedThread", "thread"],
186
- ["mailbox.messages", "messages"],
187
- ["mailbox.state", "state"]
188
- ]),
189
- eventToProps: {
190
- threadSelected: async (t, e) => {
191
- d("[nylas-view-thread] Nylas init event. Fetching thread messages.", { event: t });
192
- const s = t.detail;
193
- s && s.id && await e.messages.getThreadMessages(s.id);
194
- }
195
- },
196
- fireRegisterEvent: !0
197
- }),
198
- y("design:type", Function),
199
- y("design:paramtypes", []),
200
- y("design:returntype", void 0)
201
- ], C.prototype, "render", null);
202
- C.style = V;
203
- export {
204
- C as nylas_view_thread
205
- };
@@ -1,15 +0,0 @@
1
- import { r as c, h as e } from "./index-db0c5017.js";
2
- import "react";
3
- import "react-dom";
4
- const o = ".sc-people-icon-h{display:flex}", a = o, s = class {
5
- constructor(t) {
6
- c(this, t), this.width = "20", this.height = "20";
7
- }
8
- render() {
9
- return e("svg", { key: "00108ba21c80adfe31cfbce75757d8c6561d71b7", xmlns: "http://www.w3.org/2000/svg", width: this.width, height: this.height, fill: "none", viewBox: "0 0 20 20" }, e("path", { key: "6115accba66032e9d36cfca8e718901baec57223", fill: "currentColor", d: "M11 10a2 2 0 0 1 2 2v1.5c0 2.054-2.088 3.5-5.5 3.5S2 15.554 2 13.5V12a2 2 0 0 1 2-2h7Zm0 1H4a1 1 0 0 0-1 1v1.5C3 14.907 4.579 16 7.5 16c2.921 0 4.5-1.093 4.5-2.5V12a1 1 0 0 0-1-1Zm5-1a2 2 0 0 1 2 2v.5c0 2.089-1.568 3.5-4.5 3.5-.141 0-.28-.003-.414-.01.208-.242.382-.502.522-.781l.097-.213h.039C15.976 14.931 17 13.96 17 12.5V12a1 1 0 0 0-1-1h-2.171a3 3 0 0 0-.594-1H16ZM7.5 2a3.5 3.5 0 1 1 0 7 3.5 3.5 0 0 1 0-7Zm7 2a2.5 2.5 0 1 1 0 5 2.5 2.5 0 0 1 0-5Zm-7-1a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5Zm7 2a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Z" }));
10
- }
11
- };
12
- s.style = a;
13
- export {
14
- s as people_icon
15
- };
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-2b8437d6.cjs");require("react");require("react-dom");const i=".sc-people-icon-h{display:flex}",o=i,t=class{constructor(c){e.registerInstance(this,c),this.width="20",this.height="20"}render(){return e.h("svg",{key:"00108ba21c80adfe31cfbce75757d8c6561d71b7",xmlns:"http://www.w3.org/2000/svg",width:this.width,height:this.height,fill:"none",viewBox:"0 0 20 20"},e.h("path",{key:"6115accba66032e9d36cfca8e718901baec57223",fill:"currentColor",d:"M11 10a2 2 0 0 1 2 2v1.5c0 2.054-2.088 3.5-5.5 3.5S2 15.554 2 13.5V12a2 2 0 0 1 2-2h7Zm0 1H4a1 1 0 0 0-1 1v1.5C3 14.907 4.579 16 7.5 16c2.921 0 4.5-1.093 4.5-2.5V12a1 1 0 0 0-1-1Zm5-1a2 2 0 0 1 2 2v.5c0 2.089-1.568 3.5-4.5 3.5-.141 0-.28-.003-.414-.01.208-.242.382-.502.522-.781l.097-.213h.039C15.976 14.931 17 13.96 17 12.5V12a1 1 0 0 0-1-1h-2.171a3 3 0 0 0-.594-1H16ZM7.5 2a3.5 3.5 0 1 1 0 7 3.5 3.5 0 0 1 0-7Zm7 2a2.5 2.5 0 1 1 0 5 2.5 2.5 0 0 1 0-5Zm-7-1a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5Zm7 2a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Z"}))}};t.style=o;exports.people_icon=t;
@@ -1,25 +0,0 @@
1
- import { r as o, h as t } from "./index-db0c5017.js";
2
- import "react";
3
- import "react-dom";
4
- const e = ".sc-play-icon-h{display:flex}", i = e, h = class {
5
- constructor(s) {
6
- o(this, s), this.width = "15", this.height = "15";
7
- }
8
- render() {
9
- return t("svg", { key: "c68beab7911b331b95fb99e6b0790f909dbc4420", width: this.width, height: this.height, viewBox: "0 0 24 24", fill: "auto", xmlns: "http://www.w3.org/2000/svg" }, t("path", { key: "41b155cbaa2b3a1a3d834940d023e9530ef28112", d: "M21 12L3 21V3L21 12Z", stroke: "auto", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }));
10
- }
11
- };
12
- h.style = i;
13
- const c = ".sc-stop-icon-h{display:flex}", n = c, r = class {
14
- constructor(s) {
15
- o(this, s), this.width = "15", this.height = "15";
16
- }
17
- render() {
18
- return t("svg", { key: "b39e317c3d3a25ed955ef96918cb986264487f42", width: this.width, height: this.height, viewBox: "0 0 24 24", fill: "auto", xmlns: "http://www.w3.org/2000/svg" }, t("path", { key: "cec2514adff36410b8f035e6d0439ff58c7bf5cf", d: "M4 4H20V20H4V4Z", stroke: "auto", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }));
19
- }
20
- };
21
- r.style = n;
22
- export {
23
- h as play_icon,
24
- r as stop_icon
25
- };
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index-2b8437d6.cjs");require("react");require("react-dom");const o=".sc-play-icon-h{display:flex}",n=o,s=class{constructor(e){t.registerInstance(this,e),this.width="15",this.height="15"}render(){return t.h("svg",{key:"c68beab7911b331b95fb99e6b0790f909dbc4420",width:this.width,height:this.height,viewBox:"0 0 24 24",fill:"auto",xmlns:"http://www.w3.org/2000/svg"},t.h("path",{key:"41b155cbaa2b3a1a3d834940d023e9530ef28112",d:"M21 12L3 21V3L21 12Z",stroke:"auto","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}))}};s.style=n;const c=".sc-stop-icon-h{display:flex}",h=c,i=class{constructor(e){t.registerInstance(this,e),this.width="15",this.height="15"}render(){return t.h("svg",{key:"b39e317c3d3a25ed955ef96918cb986264487f42",width:this.width,height:this.height,viewBox:"0 0 24 24",fill:"auto",xmlns:"http://www.w3.org/2000/svg"},t.h("path",{key:"cec2514adff36410b8f035e6d0439ff58c7bf5cf",d:"M4 4H20V20H4V4Z",stroke:"auto","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}))}};i.style=h;exports.play_icon=s;exports.stop_icon=i;
@@ -1,15 +0,0 @@
1
- import { r as t, h as c } from "./index-db0c5017.js";
2
- import "react";
3
- import "react-dom";
4
- const e = ".sc-refresh-icon-h{display:flex}", l = e, h = class {
5
- constructor(s) {
6
- t(this, s), this.width = "15", this.height = "15";
7
- }
8
- render() {
9
- return c("svg", { key: "6f08ec538071d37d3ff537182375dd582350bb8e", fill: "auto", width: this.width, height: this.height, viewBox: "0 0 32 32", version: "1.1", xmlns: "http://www.w3.org/2000/svg" }, c("path", { key: "dbaaf840fa4825f6df0b9fd8f5f9d81ef1b6c7ad", d: "M15.544 28.080c-0.002-0.006-0.008-0.010-0.012-0.015l-2.873-4.489c-0.204-0.335-0.646-0.454-0.992-0.266l-0.256 0.157c-0.344 0.188-0.337 0.673-0.133 1.008l1.841 2.857c-0.157-0.035-0.316-0.063-0.471-0.103-3.224-0.843-5.953-3.026-7.485-5.988-1.448-2.797-1.72-5.99-0.766-8.992s3.118-5.452 5.915-6.899c0.476-0.247 0.662-0.832 0.416-1.308-0.246-0.477-0.832-0.663-1.308-0.416-3.258 1.686-5.763 4.54-6.874 8.036s-0.794 7.215 0.892 10.473c1.786 3.448 4.963 5.989 8.72 6.973 0.043 0.011 0.087 0.017 0.13 0.028l-2.541 1.288c-0.344 0.189-0.458 0.613-0.254 0.948l0.098 0.256c0.205 0.335 0.557 0.454 0.9 0.266l4.651-2.381c0.006-0.004 0.012-0.003 0.018-0.007l0.312-0.171c0.172-0.095 0.287-0.249 0.332-0.422 0.047-0.172 0.025-0.364-0.076-0.531zM28.559 10.025c-1.783-3.447-4.862-5.988-8.618-6.972-0.267-0.070-0.541-0.124-0.814-0.179l2.494-1.265c0.344-0.189 0.549-0.614 0.345-0.949l-0.099-0.255c-0.205-0.336-0.648-0.454-0.991-0.267l-4.651 2.381c-0.006 0.003-0.012 0.002-0.018 0.006l-0.312 0.171c-0.173 0.095-0.287 0.249-0.332 0.422-0.047 0.172-0.025 0.364 0.077 0.53l0.185 0.304c0.003 0.006 0.008 0.010 0.012 0.016l2.873 4.489c0.203 0.335 0.646 0.454 0.991 0.266l0.226-0.157c0.344-0.188 0.366-0.673 0.163-1.008l-1.85-2.87c0.407 0.063 0.811 0.138 1.207 0.242 3.226 0.845 5.856 3.027 7.387 5.986 1.448 2.797 1.72 5.99 0.765 8.991s-3.020 5.451-5.818 6.901c-0.476 0.247-0.662 0.831-0.415 1.308 0.172 0.332 0.511 0.524 0.863 0.524 0.15 0 0.302-0.035 0.446-0.109 3.259-1.686 5.664-4.54 6.776-8.035 1.111-3.497 0.794-7.217-0.893-10.473z" }));
10
- }
11
- };
12
- h.style = l;
13
- export {
14
- h as refresh_icon
15
- };
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-2b8437d6.cjs");require("react");require("react-dom");const t=".sc-refresh-icon-h{display:flex}",i=t,c=class{constructor(s){e.registerInstance(this,s),this.width="15",this.height="15"}render(){return e.h("svg",{key:"6f08ec538071d37d3ff537182375dd582350bb8e",fill:"auto",width:this.width,height:this.height,viewBox:"0 0 32 32",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},e.h("path",{key:"dbaaf840fa4825f6df0b9fd8f5f9d81ef1b6c7ad",d:"M15.544 28.080c-0.002-0.006-0.008-0.010-0.012-0.015l-2.873-4.489c-0.204-0.335-0.646-0.454-0.992-0.266l-0.256 0.157c-0.344 0.188-0.337 0.673-0.133 1.008l1.841 2.857c-0.157-0.035-0.316-0.063-0.471-0.103-3.224-0.843-5.953-3.026-7.485-5.988-1.448-2.797-1.72-5.99-0.766-8.992s3.118-5.452 5.915-6.899c0.476-0.247 0.662-0.832 0.416-1.308-0.246-0.477-0.832-0.663-1.308-0.416-3.258 1.686-5.763 4.54-6.874 8.036s-0.794 7.215 0.892 10.473c1.786 3.448 4.963 5.989 8.72 6.973 0.043 0.011 0.087 0.017 0.13 0.028l-2.541 1.288c-0.344 0.189-0.458 0.613-0.254 0.948l0.098 0.256c0.205 0.335 0.557 0.454 0.9 0.266l4.651-2.381c0.006-0.004 0.012-0.003 0.018-0.007l0.312-0.171c0.172-0.095 0.287-0.249 0.332-0.422 0.047-0.172 0.025-0.364-0.076-0.531zM28.559 10.025c-1.783-3.447-4.862-5.988-8.618-6.972-0.267-0.070-0.541-0.124-0.814-0.179l2.494-1.265c0.344-0.189 0.549-0.614 0.345-0.949l-0.099-0.255c-0.205-0.336-0.648-0.454-0.991-0.267l-4.651 2.381c-0.006 0.003-0.012 0.002-0.018 0.006l-0.312 0.171c-0.173 0.095-0.287 0.249-0.332 0.422-0.047 0.172-0.025 0.364 0.077 0.53l0.185 0.304c0.003 0.006 0.008 0.010 0.012 0.016l2.873 4.489c0.203 0.335 0.646 0.454 0.991 0.266l0.226-0.157c0.344-0.188 0.366-0.673 0.163-1.008l-1.85-2.87c0.407 0.063 0.811 0.138 1.207 0.242 3.226 0.845 5.856 3.027 7.387 5.986 1.448 2.797 1.72 5.99 0.765 8.991s-3.020 5.451-5.818 6.901c-0.476 0.247-0.662 0.831-0.415 1.308 0.172 0.332 0.511 0.524 0.863 0.524 0.15 0 0.302-0.035 0.446-0.109 3.259-1.686 5.664-4.54 6.776-8.035 1.111-3.497 0.794-7.217-0.893-10.473z"}))}};c.style=i;exports.refresh_icon=c;
@@ -1,105 +0,0 @@
1
- import { d, B as m } from "./utils-c00bdc3c-89ab163d.js";
2
- import { g as P } from "./index-db0c5017.js";
3
- function b(e, r, i = "registerComponent") {
4
- return new CustomEvent(i, {
5
- bubbles: !0,
6
- composed: !0,
7
- detail: r
8
- });
9
- }
10
- function f(e, r, i = "unregisterComponent") {
11
- return new CustomEvent(i, {
12
- bubbles: !0,
13
- composed: !0,
14
- detail: r
15
- });
16
- }
17
- function y(e) {
18
- return (r, i) => {
19
- const o = e.name;
20
- d(`[${o}] Registering component ${o} being called on ${i}`);
21
- const u = r.componentWillLoad;
22
- if (!u) {
23
- m(`[${o}] componentWillLoad lifecycle method in ${o} missing. Required for RegisterComponent decorator.`);
24
- return;
25
- }
26
- const p = r.connectedCallback;
27
- if (!p) {
28
- m(`[${o}] connectedCallback lifecycle method in ${o} missing. Required for RegisterComponent decorator.`);
29
- return;
30
- }
31
- const a = r.disconnectedCallback;
32
- if (!a) {
33
- m(`[${o}] disconnectedCallback lifecycle method in ${o} missing. Required for RegisterComponent decorator.`);
34
- return;
35
- }
36
- if (e.storeToProps && e.stateToProps) {
37
- const n = Array.from(e.storeToProps.values()), t = Array.from(e.stateToProps.values()), s = n.filter((c) => t.includes(c));
38
- if (s.length > 0) {
39
- m(`[${o}] Overlapping prop keys detected in ${o} for storeToProps and stateToProps. Make sure to only define them once. Overlapping keys: ${s.join(", ")}`);
40
- return;
41
- }
42
- }
43
- const l = /* @__PURE__ */ new Map();
44
- e.eventToProps && Object.keys(e.eventToProps).forEach((n) => {
45
- var t;
46
- l.set(n, (t = e.eventToProps) == null ? void 0 : t[n]);
47
- }), r.connectedCallback = function() {
48
- d(`[~${o}] connectedCallback called`);
49
- const n = p == null ? void 0 : p.call(this), t = P(this);
50
- return t.dataset.nylasId || (Object.defineProperty(t, "registerNylasComponent", {
51
- get() {
52
- return !0;
53
- },
54
- enumerable: !0
55
- }), Object.defineProperty(t, "stateToProps", {
56
- get() {
57
- return e.stateToProps;
58
- },
59
- enumerable: !0
60
- }), Object.defineProperty(t, "getStoresToProp", {
61
- get() {
62
- return e.getStoresToProp;
63
- },
64
- enumerable: !0
65
- }), Object.defineProperty(t, "storeToProps", {
66
- get() {
67
- return e.storeToProps;
68
- },
69
- enumerable: !0
70
- }), Object.defineProperty(t, "eventToProps", {
71
- get() {
72
- return l;
73
- },
74
- enumerable: !0
75
- }), Object.defineProperty(t, "authToProp", {
76
- get() {
77
- return e.authToProp;
78
- },
79
- enumerable: !0
80
- }), Object.defineProperty(t, "connectorToProp", {
81
- get() {
82
- return e.connectorToProp;
83
- },
84
- enumerable: !0
85
- })), n;
86
- }, e.fireRegisterEvent && (r.componentWillLoad = function() {
87
- const n = u == null ? void 0 : u.call(this), t = P(this), s = {
88
- element: t,
89
- ...e,
90
- eventToProps: l
91
- }, c = b(r, s, e.registrationEventName);
92
- return t.dispatchEvent(c) && d(`[${o}] Component ${o} successfully fired registration event`), n;
93
- }, r.disconnectedCallback = function() {
94
- const n = a == null ? void 0 : a.call(this), t = P(this), s = {
95
- element: t,
96
- ...e,
97
- eventToProps: l
98
- }, c = f(r, s, e.unregistrationEventName);
99
- return t.dispatchEvent(c) && d(`[${o}] Component ${o} successfully fired unregistration event`), n;
100
- });
101
- };
102
- }
103
- export {
104
- y as R
105
- };
@@ -1 +0,0 @@
1
- "use strict";const s=require("./utils-c00bdc3c-94b9c3b6.cjs"),m=require("./index-2b8437d6.cjs");function P(e,o,u="registerComponent"){return new CustomEvent(u,{bubbles:!0,composed:!0,detail:o})}function b(e,o,u="unregisterComponent"){return new CustomEvent(u,{bubbles:!0,composed:!0,detail:o})}function T(e){return(o,u)=>{const r=e.name;s.debug(`[${r}] Registering component ${r} being called on ${u}`);const l=o.componentWillLoad;if(!l){s.error(`[${r}] componentWillLoad lifecycle method in ${r} missing. Required for RegisterComponent decorator.`);return}const p=o.connectedCallback;if(!p){s.error(`[${r}] connectedCallback lifecycle method in ${r} missing. Required for RegisterComponent decorator.`);return}const a=o.disconnectedCallback;if(!a){s.error(`[${r}] disconnectedCallback lifecycle method in ${r} missing. Required for RegisterComponent decorator.`);return}if(e.storeToProps&&e.stateToProps){const n=Array.from(e.storeToProps.values()),t=Array.from(e.stateToProps.values()),i=n.filter(c=>t.includes(c));if(i.length>0){s.error(`[${r}] Overlapping prop keys detected in ${r} for storeToProps and stateToProps. Make sure to only define them once. Overlapping keys: ${i.join(", ")}`);return}}const d=new Map;e.eventToProps&&Object.keys(e.eventToProps).forEach(n=>{var t;d.set(n,(t=e.eventToProps)==null?void 0:t[n])}),o.connectedCallback=function(){s.debug(`[~${r}] connectedCallback called`);const n=p==null?void 0:p.call(this),t=m.getElement(this);return t.dataset.nylasId||(Object.defineProperty(t,"registerNylasComponent",{get(){return!0},enumerable:!0}),Object.defineProperty(t,"stateToProps",{get(){return e.stateToProps},enumerable:!0}),Object.defineProperty(t,"getStoresToProp",{get(){return e.getStoresToProp},enumerable:!0}),Object.defineProperty(t,"storeToProps",{get(){return e.storeToProps},enumerable:!0}),Object.defineProperty(t,"eventToProps",{get(){return d},enumerable:!0}),Object.defineProperty(t,"authToProp",{get(){return e.authToProp},enumerable:!0}),Object.defineProperty(t,"connectorToProp",{get(){return e.connectorToProp},enumerable:!0})),n},e.fireRegisterEvent&&(o.componentWillLoad=function(){const n=l==null?void 0:l.call(this),t=m.getElement(this),i={element:t,...e,eventToProps:d},c=P(o,i,e.registrationEventName);return t.dispatchEvent(c)&&s.debug(`[${r}] Component ${r} successfully fired registration event`),n},o.disconnectedCallback=function(){const n=a==null?void 0:a.call(this),t=m.getElement(this),i={element:t,...e,eventToProps:d},c=b(o,i,e.unregistrationEventName);return t.dispatchEvent(c)&&s.debug(`[${r}] Component ${r} successfully fired unregistration event`),n})}}exports.RegisterComponent=T;
@@ -1,14 +0,0 @@
1
- import { a as t } from "./index-db0c5017.js";
2
- function a(e = {}) {
3
- const r = {
4
- config: {},
5
- configurations: [],
6
- calendars: [],
7
- currentUser: null,
8
- ...e
9
- };
10
- return t(r);
11
- }
12
- export {
13
- a as C
14
- };
@@ -1 +0,0 @@
1
- "use strict";const t=require("./index-2b8437d6.cjs");function n(e={}){const r={config:{},configurations:[],calendars:[],currentUser:null,...e};return t.createStore(r)}exports.CreateNylasSchedulerConfigStore=n;
@@ -1 +0,0 @@
1
- "use strict";const v=require("./utils-c00bdc3c-94b9c3b6.cjs"),C=require("./index-2b8437d6.cjs");exports.ErrorCategory=void 0;(function(n){n.Component="component",n.Api="api",n.Auth="auth"})(exports.ErrorCategory||(exports.ErrorCategory={}));var w;(function(n){n.endtime_not_in_future="endtime_not_in_future",n.no_booking_info="no_booking_info",n.no_timeslot_selected="no_timeslot_selected",n.no_booking_id="no_booking_id",n.invalid_start_time="invalid_start_time",n.invalid_end_time="invalid_end_time",n.invalid_timezone="invalid_timezone"})(w||(w={}));var b;(function(n){n.invalid_session="invalid_session",n.general_error="general_error",n.internal_error="internal_error",n.invalid_request_error="invalid_request_error",n.timeslot_not_available="timeslot_not_available"})(b||(b={}));class D{constructor(){this.component=t=>{const e=exports.ErrorCategory.Component,s=`${t} error`;return{endtime_not_in_future:(i='"endtime" can not be in the future')=>({title:s,message:i,category:e}),no_booking_info:(i="No booking info provided")=>({title:s,message:i,category:e}),no_timeslot_selected:(i="No timeslot selected")=>({title:s,message:i,category:e}),no_booking_id:(i="No booking id provided")=>({title:s,message:i,category:e}),invalid_start_time:(i="Invalid start time")=>({title:s,message:i,category:e}),invalid_end_time:(i="Invalid end time")=>({title:s,message:i,category:e}),invalid_timezone:(i="Invalid timezone")=>({title:s,message:i,category:e})}},this.api=t=>{const e=exports.ErrorCategory.Api,s=`${t} error`;return{invalid_session:i=>({title:s,message:i,category:e}),general_error:i=>({title:s,message:i,category:e}),internal_error:i=>({title:s,message:i,category:e}),invalid_request_error:i=>({title:s,message:i,category:e}),timeslot_not_available:i=>({title:s,message:i,category:e})}}}}class R{constructor({schedulerAPIURL:t,schedulerStore:e,sessionId:s,configId:i}){this.errors=new D,this.schedulerStore=e,this.schedulerAPIURL=t,this.sessionId=s,this.configId=i}getHeaders(){return this.configId?{}:{Authorization:`Bearer ${this.sessionId}`}}async makeAPIRequest(t,e,s,i={}){try{const r=new URL(this.schedulerAPIURL);return r.pathname=t,await(await fetch(decodeURIComponent(r.toString()),{method:e,headers:{"Content-Type":"application/json",...i},body:s})).json()}catch(r){return{error:{message:r.message,title:"API request failed",type:"api"}}}}selectDate(t){this.schedulerStore.set("selectedDate",t),this.schedulerStore.set("selectedTimeslot",null)}selectTime(t){this.schedulerStore.set("selectedTimeslot",t)}selectTimezone(t){this.schedulerStore.set("selectedTimezone",t)}toggleAdditionalData(t){this.schedulerStore.set("showBookingForm",t)}setParticipantName(t){const{bookingInfo:e}=this.schedulerStore.state;this.schedulerStore.set("bookingInfo",{...e,primaryParticipant:{...e==null?void 0:e.primaryParticipant,name:t}})}setParticipantEmail(t){const{bookingInfo:e}=this.schedulerStore.state;this.schedulerStore.set("bookingInfo",{...e,primaryParticipant:{...e==null?void 0:e.primaryParticipant,email:t}})}async setReschedule(t){const e=new Date;this.schedulerStore.set("rescheduleBookingId",t),this.schedulerStore.set("selectedTimeslot",null),this.schedulerStore.set("eventInfo",null),this.schedulerStore.set("showBookingForm",!1);const s=new Date(e.getFullYear(),e.getMonth(),1).getTime()/1e3,i=new Date(e.getFullYear(),e.getMonth()+1,1).getTime()/1e3,r=await this.getAvailability(s,i),a=this.schedulerStore.get("availability").find(l=>new Date(l.start_time)>new Date);let u=e;return a&&(u=a.start_time),this.schedulerStore.set("selectedDate",u),r}async setCancel(t){this.schedulerStore.set("cancelBookingId",t)}async bookTimeslot(t){var g;this.schedulerStore.set("isLoading",!0);const{selectedTimeslot:e,bookingInfo:s}=this.schedulerStore.state;if(!t&&!s)return{error:this.errors.component("Booking").no_booking_info()};const i=(t==null?void 0:t.timeslot)||e;if(!i)return{error:this.errors.component("Create Booking").no_timeslot_selected()};const r=t?t==null?void 0:t.primaryParticipant:s==null?void 0:s.primaryParticipant,a=t?(t==null?void 0:t.guests)||[]:(s==null?void 0:s.guests)||[],u=t?{...t==null?void 0:t.additionalFields,guests:a}:{...s==null?void 0:s.additionalFields,guests:a},l=this.getHeaders(),p=`/v3/scheduling/bookings${this.configId?`?configuration_id=${this.configId}`:""}`,d=await this.makeAPIRequest(decodeURIComponent(p),"POST",JSON.stringify({additional_fields:u,guest:{...r},start_time:i.start_time.getTime()/1e3,end_time:i.end_time.getTime()/1e3}),l);if("error"in d){this.schedulerStore.set("isLoading",!1);const c=(g=d.error)==null?void 0:g.type;let o=d.error;return c&&c in this.errors.api("Create Booking")&&(o=this.errors.api("Create Booking")[c]((o==null?void 0:o.message)||(o==null?void 0:o.title)||"Something went wrong")),{error:o}}return"data"in d&&this.schedulerStore.set("eventInfo",d==null?void 0:d.data),this.schedulerStore.set("isLoading",!1),d}async getAvailability(t=0,e=0){var p,d,g;this.schedulerStore.set("isLoading",!0);const s=new URLSearchParams,i=new Date,r=i.getTime();if(e&&e<r/1e3)return this.schedulerStore.set("isLoading",!1),{error:this.errors.component("Get Availability").endtime_not_in_future()};if(!t){const c=new Date(i.getFullYear(),i.getMonth(),1);t=Math.floor(c.getTime()/1e3)}if(!e){const c=new Date(i.getFullYear(),i.getMonth()+1,0);e=Math.floor(c.getTime()/1e3)}s.append("start_time",encodeURIComponent(t.toString())),s.append("end_time",encodeURIComponent(e.toString())),this.configId&&s.append("configuration_id",encodeURIComponent(this.configId));const a=s.toString(),u=`/v3/scheduling/availability${a?`?${a}`:""}`,l=this.getHeaders(),h=await this.makeAPIRequest(decodeURIComponent(u),"GET",void 0,l);if("error"in h){this.schedulerStore.set("availability",[]),this.schedulerStore.set("isLoading",!1);const c=(p=h.error)==null?void 0:p.type;let o=h.error;return c&&c in this.errors.api("Get Availability")&&(o=this.errors.api("Get Availability")[c]((o==null?void 0:o.message)||(o==null?void 0:o.title)||"Something went wrong")),{error:o}}if("data"in h){const o=(((g=(d=h.data)==null?void 0:d.time_slots)==null?void 0:g.map(m=>({...m,start_time:new Date(m.start_time*1e3),end_time:new Date(m.end_time*1e3)})))||[]).filter(m=>m.start_time.getTime()>r);this.schedulerStore.set("availability",o)}return this.schedulerStore.set("isLoading",!1),h}async cancelBooking(t){var a;if(this.schedulerStore.set("isLoading",!0),!t)return{error:this.errors.component("Cancel Booking").no_booking_id()};const e=this.configId?`?configuration_id=${this.configId}`:"",s=`/v3/scheduling/bookings/${t}${e}`,i=this.getHeaders(),r=await this.makeAPIRequest(decodeURIComponent(s),"DELETE",JSON.stringify({action:"cancel"}),i);if("error"in r){this.schedulerStore.set("isLoading",!1);const u=(a=r.error)==null?void 0:a.type;let l=r.error;return u&&u in this.errors.api("Cancel Booking")&&(l=this.errors.api("Cancel Booking")[u]((l==null?void 0:l.message)||(l==null?void 0:l.title)||"Something went wrong")),{error:l}}return this.schedulerStore.set("cancelledEventInfo",{booking_id:t}),this.schedulerStore.set("isLoading",!1),r}async rescheduleBooking(t,e){var y;if(this.schedulerStore.set("isLoading",!0),!t)return{error:this.errors.component("Reschedule Booking").no_booking_id()};const s=this.errors.api("Reschedule Booking"),i=this.errors.component("Reschedule Booking"),{bookingInfo:r,selectedTimeslot:a,selectedTimezone:u}=this.schedulerStore.state,{startTime:l,endTime:h,timezone:p}=e,d=l||(a==null?void 0:a.start_time);if(!d)return{error:i.invalid_start_time('Please pass "startTime" in data or set "selectedTimeslot" in the defaultSchedulerState.')};const g=h||(a==null?void 0:a.end_time);if(!g)return{error:i.invalid_end_time('Please pass "endTime" in data or set "selectedTimeslot" in the defaultSchedulerState.')};const c=p||u;if(!c)return{error:i.invalid_timezone('Please pass "timezone" in data or set "selectedTimezone" in the defaultSchedulerState.')};const o=e?e==null?void 0:e.primaryParticipant:r==null?void 0:r.primaryParticipant,m=e?(e==null?void 0:e.guests)||[]:(r==null?void 0:r.guests)||[],I=e?{...e==null?void 0:e.additionalFields,guests:m}:{...r==null?void 0:r.additionalFields,guests:m},P=this.configId?`?configuration_id=${this.configId}`:"",k=`/v3/scheduling/bookings/${t}${P}`,T=this.getHeaders(),_=await this.makeAPIRequest(decodeURIComponent(k),"PATCH",JSON.stringify({start_time:d.getTime()/1e3,end_time:g.getTime()/1e3,time_zone:c,additional_fields:I,guest:{...o}}),T);if("error"in _){this.schedulerStore.set("isLoading",!1);const S=(y=_.error)==null?void 0:y.type;let f=_.error;S&&S in s&&(f=s[S]((f==null?void 0:f.message)||(f==null?void 0:f.title)||"Something went wrong"))}return"data"in _&&this.schedulerStore.set("eventInfo",_==null?void 0:_.data),this.schedulerStore.set("isLoading",!1),_}}function L(n={}){const t={selectedDate:null,selectedLanguage:navigator.language,selectedTimezone:Intl.DateTimeFormat().resolvedOptions().timeZone,selectedTimeslot:null,showBookingForm:!1,selectableDates:null,availability:[],state:"ready",eventInfo:null,cancelledEventInfo:null,isLoading:!1,nylasBranding:!0,...n};v.debug("[defaultNylasStoreState]: ",t);const e=C.createStore(t);return e.onChange("availability",s=>{v.debug("[availability]: ",s);const i=s.map(r=>r.start_time);v.debug("[selectableDates]: ",i),e.set("selectableDates",i)}),e.reset=()=>{for(const s in t){const i=t[s];e.set(s,i)}},e}exports.CreateNylasSchedulerStore=L;exports.NylaSchedulerAPIConnector=R;