@nylas/react 1.1.0-canary.9 → 1.1.1

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 (154) hide show
  1. package/README.md +110 -2
  2. package/dist/add-circle-icon_2.entry-b14ecb5c.js +25 -0
  3. package/dist/add-circle-icon_2.entry-c6211866.cjs +1 -0
  4. package/dist/archive-icon_7.entry-3fe7721a.js +75 -0
  5. package/dist/archive-icon_7.entry-54fc1f03.cjs +1 -0
  6. package/dist/arrow-icon.entry-1dfee3bc.cjs +1 -0
  7. package/dist/arrow-icon.entry-cc936041.js +15 -0
  8. package/dist/bold-icon_3.entry-4b9de887.cjs +1 -0
  9. package/dist/bold-icon_3.entry-e2a1d434.js +35 -0
  10. package/dist/button-component_2.entry-3639ade6.js +26 -0
  11. package/dist/button-component_2.entry-5666fdfa.cjs +1 -0
  12. package/dist/calendar-agenda-fill-icon_48.entry-56e364cd.js +5256 -0
  13. package/dist/calendar-agenda-fill-icon_48.entry-bf278e34.cjs +7 -0
  14. package/dist/calendar-cancel-icon.entry-ac1cb5dd.cjs +1 -0
  15. package/dist/calendar-cancel-icon.entry-dcd777cd.js +15 -0
  16. package/dist/calendar-check-icon_2.entry-6330bd2d.js +25 -0
  17. package/dist/calendar-check-icon_2.entry-7ad1b2a0.cjs +1 -0
  18. package/dist/calendar-icon.entry-5849a547.cjs +1 -0
  19. package/dist/calendar-icon.entry-8559fa0d.js +15 -0
  20. package/dist/checkbox-component_2.entry-1474c465.js +79 -0
  21. package/dist/checkbox-component_2.entry-6cf5da6b.cjs +1 -0
  22. package/dist/chevron-icon_3.entry-41170718.cjs +1 -0
  23. package/dist/chevron-icon_3.entry-cb757aa3.js +132 -0
  24. package/dist/clock-icon_4.entry-36a33de5.cjs +1 -0
  25. package/dist/clock-icon_4.entry-642f4dc6.js +45 -0
  26. package/dist/constants-50c3e067-4e027da4.cjs +15 -0
  27. package/dist/constants-50c3e067-83f1d865.js +3883 -0
  28. package/dist/copy-icon.entry-60740516.js +15 -0
  29. package/dist/copy-icon.entry-fb63cf53.cjs +1 -0
  30. package/dist/core-js-38e53e34.cjs +4 -0
  31. package/dist/core-js-a9d3b6e1.js +3297 -0
  32. package/dist/delete-icon_2.entry-45851bc5.js +25 -0
  33. package/dist/delete-icon_2.entry-d1af0606.cjs +1 -0
  34. package/dist/document-refresh-icon.entry-1731d4d9.cjs +1 -0
  35. package/dist/document-refresh-icon.entry-5db0830a.js +15 -0
  36. package/dist/dom-68f08be9.cjs +15 -0
  37. package/dist/dom-86e17616.js +664 -0
  38. package/dist/{types/elements → elements}/index.d.ts +48 -1
  39. package/dist/elements-dc5b338e-3099ee02.js +28031 -0
  40. package/dist/elements-dc5b338e-ab9afb63.cjs +16516 -0
  41. package/dist/flow-40ff9cea-6f8c30e2.cjs +9 -0
  42. package/dist/flow-40ff9cea-ee70fdf5.js +505 -0
  43. package/dist/focus-visible-e8093c16-067a8f23.js +84 -0
  44. package/dist/focus-visible-e8093c16-811f50fa.cjs +1 -0
  45. package/dist/forward-icon_6.entry-4e9c9686.cjs +3 -0
  46. package/dist/forward-icon_6.entry-e7c5fa46.js +953 -0
  47. package/dist/globe-icon.entry-74f79652.cjs +1 -0
  48. package/dist/globe-icon.entry-aa3f3ea3.js +15 -0
  49. package/dist/google-logo-icon_4.entry-0332a181.cjs +1 -0
  50. package/dist/google-logo-icon_4.entry-3fe41d69.js +673 -0
  51. package/dist/index-2a53b6a8.cjs +82 -0
  52. package/dist/index-a134f625.js +12842 -0
  53. package/dist/index.es-79f5b771-64a1baf0.cjs +7 -0
  54. package/dist/index.es-79f5b771-ce07d6fc.js +3135 -0
  55. package/dist/info-icon_2.entry-a3f40027.cjs +1 -0
  56. package/dist/info-icon_2.entry-fed731f4.js +34 -0
  57. package/dist/input-color-picker.entry-37826630.js +48 -0
  58. package/dist/input-color-picker.entry-cbdce7a1.cjs +1 -0
  59. package/dist/input-component.entry-b83b7103.js +70 -0
  60. package/dist/input-component.entry-e71b7062.cjs +1 -0
  61. package/dist/input-dropdown.entry-150819cd.cjs +1 -0
  62. package/dist/input-dropdown.entry-db0dae5f.js +134 -0
  63. package/dist/mailbox-store-9c52a3fa-04f22f60.cjs +1 -0
  64. package/dist/mailbox-store-9c52a3fa-80fe343c.js +380 -0
  65. package/dist/multi-select-dropdown.entry-629329d7.cjs +1 -0
  66. package/dist/multi-select-dropdown.entry-6b429b39.js +95 -0
  67. package/dist/nylas-booked-event-card_12.entry-660af56a.cjs +1 -0
  68. package/dist/nylas-booked-event-card_12.entry-c22c02b4.js +1133 -0
  69. package/dist/nylas-form-card.entry-2ced5eef.cjs +1 -0
  70. package/dist/nylas-form-card.entry-f3d6a1e4.js +57 -0
  71. package/dist/nylas-if-state.entry-55c32c0c.cjs +1 -0
  72. package/dist/nylas-if-state.entry-862ad978.js +94 -0
  73. package/dist/nylas-list-folders.entry-544fd38d.js +120 -0
  74. package/dist/nylas-list-folders.entry-77e936f7.cjs +1 -0
  75. package/dist/nylas-list-threads.entry-71411da7.js +70 -0
  76. package/dist/nylas-list-threads.entry-82e04782.cjs +1 -0
  77. package/dist/nylas-login.entry-3ccc2bef.cjs +1 -0
  78. package/dist/nylas-login.entry-48179c01.js +73 -0
  79. package/dist/nylas-mailbox-pagination.entry-77cf03b5.js +101 -0
  80. package/dist/nylas-mailbox-pagination.entry-d31f9aa4.cjs +1 -0
  81. package/dist/nylas-mailbox-toolbar-button.entry-33aad610.cjs +1 -0
  82. package/dist/nylas-mailbox-toolbar-button.entry-40e3c373.js +82 -0
  83. package/dist/nylas-mailbox.entry-963de1c3.cjs +1 -0
  84. package/dist/nylas-mailbox.entry-f4066fb2.js +134 -0
  85. package/dist/nylas-provider.entry-08767da3.cjs +1 -0
  86. package/dist/nylas-provider.entry-c61428b1.js +145 -0
  87. package/dist/nylas-reminder-emails.entry-cd8e1d2e.js +129 -0
  88. package/dist/nylas-reminder-emails.entry-d42a7f1d.cjs +4 -0
  89. package/dist/nylas-reminder-time_2.entry-d7115393.js +105 -0
  90. package/dist/nylas-reminder-time_2.entry-e5540fdd.cjs +1 -0
  91. package/dist/nylas-scheduler-editor.entry-65eb4938.js +1447 -0
  92. package/dist/nylas-scheduler-editor.entry-67904653.cjs +2 -0
  93. package/dist/nylas-scheduling.entry-50e41d85.cjs +1 -0
  94. package/dist/nylas-scheduling.entry-7aad4f63.js +345 -0
  95. package/dist/nylas-threads-refresh.entry-1b8befab.cjs +1 -0
  96. package/dist/nylas-threads-refresh.entry-d025575a.js +74 -0
  97. package/dist/nylas-threads-search.entry-78c06183.cjs +1 -0
  98. package/dist/nylas-threads-search.entry-a254c36e.js +69 -0
  99. package/dist/nylas-time-window-picker.entry-30baeb50.cjs +1 -0
  100. package/dist/nylas-time-window-picker.entry-89c15823.js +316 -0
  101. package/dist/nylas-view-thread.entry-939a4561.cjs +1 -0
  102. package/dist/nylas-view-thread.entry-c8d56573.js +203 -0
  103. package/dist/person-icon.entry-5ab75598.cjs +1 -0
  104. package/dist/person-icon.entry-8aef4041.js +15 -0
  105. package/dist/play-icon_2.entry-392ad303.cjs +1 -0
  106. package/dist/play-icon_2.entry-4b068c1b.js +25 -0
  107. package/dist/react.cjs +1 -0
  108. package/dist/react.js +145 -0
  109. package/dist/refresh-icon.entry-9ea254c9.cjs +1 -0
  110. package/dist/refresh-icon.entry-a754a2b5.js +15 -0
  111. package/dist/register-component-ea95564d-ab3d630f.cjs +1 -0
  112. package/dist/register-component-ea95564d-e19ec159.js +109 -0
  113. package/dist/scheduler-config-store-2a3b403d-4e10b542.cjs +1 -0
  114. package/dist/scheduler-config-store-2a3b403d-581c70cf.js +27 -0
  115. package/dist/scheduler-store-9ff4914b-6e28240e.cjs +1 -0
  116. package/dist/scheduler-store-9ff4914b-b71a0aca.js +474 -0
  117. package/dist/textarea-component.entry-70bb02bf.cjs +1 -0
  118. package/dist/textarea-component.entry-a5daab6c.js +37 -0
  119. package/dist/time-period-selector.entry-25348de7.js +80 -0
  120. package/dist/time-period-selector.entry-6306e456.cjs +1 -0
  121. package/dist/translate-icon.entry-785fa109.cjs +1 -0
  122. package/dist/translate-icon.entry-b6094ecc.js +15 -0
  123. package/dist/warning-icon.entry-4b400ee2.js +15 -0
  124. package/dist/warning-icon.entry-94e34c58.cjs +1 -0
  125. package/package.json +12 -8
  126. package/dist/elements/index.js +0 -92
  127. package/dist/elements/index.js.map +0 -1
  128. package/dist/elements/react-component-lib/createComponent.js +0 -65
  129. package/dist/elements/react-component-lib/createComponent.js.map +0 -1
  130. package/dist/elements/react-component-lib/createOverlayComponent.js +0 -98
  131. package/dist/elements/react-component-lib/createOverlayComponent.js.map +0 -1
  132. package/dist/elements/react-component-lib/index.js +0 -3
  133. package/dist/elements/react-component-lib/index.js.map +0 -1
  134. package/dist/elements/react-component-lib/interfaces.js +0 -2
  135. package/dist/elements/react-component-lib/interfaces.js.map +0 -1
  136. package/dist/elements/react-component-lib/utils/attachProps.js +0 -92
  137. package/dist/elements/react-component-lib/utils/attachProps.js.map +0 -1
  138. package/dist/elements/react-component-lib/utils/case.js +0 -7
  139. package/dist/elements/react-component-lib/utils/case.js.map +0 -1
  140. package/dist/elements/react-component-lib/utils/dev.js +0 -13
  141. package/dist/elements/react-component-lib/utils/dev.js.map +0 -1
  142. package/dist/elements/react-component-lib/utils/index.js +0 -31
  143. package/dist/elements/react-component-lib/utils/index.js.map +0 -1
  144. package/dist/index.js +0 -29
  145. package/dist/index.js.map +0 -1
  146. /package/dist/{types/elements → elements}/react-component-lib/createComponent.d.ts +0 -0
  147. /package/dist/{types/elements → elements}/react-component-lib/createOverlayComponent.d.ts +0 -0
  148. /package/dist/{types/elements → elements}/react-component-lib/index.d.ts +0 -0
  149. /package/dist/{types/elements → elements}/react-component-lib/interfaces.d.ts +0 -0
  150. /package/dist/{types/elements → elements}/react-component-lib/utils/attachProps.d.ts +0 -0
  151. /package/dist/{types/elements → elements}/react-component-lib/utils/case.d.ts +0 -0
  152. /package/dist/{types/elements → elements}/react-component-lib/utils/dev.d.ts +0 -0
  153. /package/dist/{types/elements → elements}/react-component-lib/utils/index.d.ts +0 -0
  154. /package/dist/{types/index.d.ts → index.d.ts} +0 -0
@@ -0,0 +1,203 @@
1
+ import { r as k, c as p, d, h as a, t as M, F as m, H as x, g as E, s as D, a as S, v as g } from "./index-a134f625.js";
2
+ import { R as T } from "./register-component-ea95564d-e19ec159.js";
3
+ import "react";
4
+ import "react-dom";
5
+ function R(t, e, s, o, r) {
6
+ if (!o || !s || s.children.length > 0)
7
+ return;
8
+ d("[nylas-view-thread] Rendering email", { message: t, attachments: e, viewEmailElement: o });
9
+ const n = o.cloneNode(!0);
10
+ n.message = t.data, n.parent = r, s.appendChild(n);
11
+ }
12
+ const u = ({ viewEmailElement: t, message: e, attachments: s, onMessageClick: o, onShowContactDataClick: r, parent: n }) => {
13
+ var l, i, c, y, w, f, b;
14
+ return a(
15
+ m,
16
+ null,
17
+ a(
18
+ "div",
19
+ { key: e.id, class: "message" },
20
+ a(
21
+ "div",
22
+ { class: "sub-header", "data-id": e.data.id, onClick: o },
23
+ 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())),
24
+ a(
25
+ "div",
26
+ { class: "from" },
27
+ a("span", { class: "name" }, e.data.from && ((y = e.data.from[0]) == null ? void 0 : y.name)),
28
+ " ",
29
+ a("span", { class: "email" }, e.data.from && ((w = e.data.from[0]) == null ? void 0 : w.email))
30
+ ),
31
+ a(
32
+ "div",
33
+ { class: "date" },
34
+ new Date(e.data.date * 1e3).toLocaleTimeString(void 0, {
35
+ timeStyle: "short"
36
+ }),
37
+ " ",
38
+ "(",
39
+ D(new Date(e.data.date * 1e3)),
40
+ ")"
41
+ ),
42
+ a(
43
+ "sp-button-group",
44
+ { class: "buttons" },
45
+ a("nylas-summarize-message-button", { message: e.data })
46
+ ),
47
+ e.collapse && a("div", { class: "snippet" }, e.data.snippet),
48
+ !e.collapse && e.data.to && a(
49
+ "div",
50
+ { class: "to" },
51
+ a("span", null, "to"),
52
+ " ",
53
+ S(e.data.to),
54
+ " ",
55
+ a(
56
+ "button",
57
+ { type: "button", value: e.data.id, onClick: r, class: {
58
+ expand: !0,
59
+ "expand--showContactData": e.showContactData
60
+ } },
61
+ a("chevron-icon", null)
62
+ )
63
+ )
64
+ ),
65
+ e.showContactData && a(
66
+ "div",
67
+ { class: "address-info" },
68
+ a("div", { class: "label" }, "From"),
69
+ 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: "" })),
70
+ e.data.to && a(
71
+ m,
72
+ null,
73
+ a("div", { class: "label" }, "To"),
74
+ a("div", { class: "value" }, e.data.to.map((h) => a("div", null, g(h))))
75
+ ),
76
+ typeof e.data.cc < "u" && e.data.cc.length > 0 && a(
77
+ m,
78
+ null,
79
+ a("div", { class: "label" }, "CC"),
80
+ a("div", { class: "value" }, e.data.cc.map((h) => a("div", null, g(h))))
81
+ )
82
+ ),
83
+ !e.collapse && t && a("div", { key: e.id, ref: (h) => R(e, s, h, t, n) }),
84
+ !e.collapse && !t && a("nylas-view-email", { key: e.id, message: e.data, parent: n })
85
+ ),
86
+ a("hr", null)
87
+ );
88
+ }, 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;
89
+ var _ = function(t, e, s, o) {
90
+ var r = arguments.length, n = r < 3 ? e : o === null ? o = Object.getOwnPropertyDescriptor(e, s) : o, l;
91
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
92
+ n = Reflect.decorate(t, e, s, o);
93
+ else
94
+ for (var i = t.length - 1; i >= 0; i--)
95
+ (l = t[i]) && (n = (r < 3 ? l(n) : r > 3 ? l(e, s, n) : l(e, s)) || n);
96
+ return r > 3 && n && Object.defineProperty(e, s, n), n;
97
+ }, v = function(t, e) {
98
+ if (typeof Reflect == "object" && typeof Reflect.metadata == "function")
99
+ return Reflect.metadata(t, e);
100
+ };
101
+ const C = class {
102
+ constructor(t) {
103
+ 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) => {
104
+ e.stopPropagation();
105
+ const o = e.target.value, r = this.internalMessages.find((l) => l.data.id === o);
106
+ if (!r) {
107
+ d(`[nylas-view-thread] Could not find message ${o}`);
108
+ return;
109
+ }
110
+ 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"}`);
111
+ }, this.onMessageClick = (e) => {
112
+ var l;
113
+ const o = e.target.dataset.id, r = this.internalMessages.find((i) => i.data.id === o);
114
+ if (!r) {
115
+ d(`[nylas-view-thread] Could not find message ${o}`);
116
+ return;
117
+ }
118
+ 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"}`);
119
+ }, this.onShowAllEmailsClick = () => {
120
+ this.showAllEmails = !this.showAllEmails;
121
+ }, this.showComposerClick = () => {
122
+ this.showComposer = !this.showComposer;
123
+ }, this.draft = void 0, this.thread = void 0, this.messages = [], this.attachments = [], this.state = "loading", this.internalMessages = [], this.showAllEmails = !1, this.showComposer = !1;
124
+ }
125
+ connectedCallback() {
126
+ }
127
+ disconnectedCallback() {
128
+ }
129
+ async componentWillLoad() {
130
+ d("[nylas-view-thread] Component will load"), this.updateInternalMessages(this.messages);
131
+ const t = this.host.querySelector("template.nylas-view-email");
132
+ if (!t) {
133
+ d("[nylas-view-thread] Could not find template");
134
+ return;
135
+ }
136
+ const e = document.importNode(t.content, !0);
137
+ this.nylasViewEmailElement = e.querySelector("nylas-view-email");
138
+ const s = this.host.querySelector("template.nylas-composer");
139
+ if (!s) {
140
+ d("[nylas-view-thread] Could not find composer template");
141
+ return;
142
+ }
143
+ const o = document.importNode(s.content, !0);
144
+ this.nylasComposerElement = o.querySelector("nylas-composer");
145
+ }
146
+ async componentDidLoad() {
147
+ d("[nylas-view-thread] Component did load");
148
+ }
149
+ async threadChanged(t) {
150
+ d("[nylas-view-thread] Thread changed", { thread: t }), this.internalMessages = [], this.threadSelected.emit(t).defaultPrevented || d("[nylas-view-thread] Default event not prevented, initializing");
151
+ }
152
+ updateInternalMessages(t) {
153
+ d("[nylas-view-thread] Updating internal messages", { messages: t });
154
+ const e = t.sort((s, o) => s.date > o.date ? 1 : -1).map((s, o) => ({
155
+ id: s.id,
156
+ data: s,
157
+ collapse: o !== t.length - 1,
158
+ showContactData: !1
159
+ }));
160
+ this.internalMessages = e;
161
+ }
162
+ render() {
163
+ var r, n, l;
164
+ 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];
165
+ return a(x, { key: "bbdec659d5def3c554fe76fe6c4420abe80838d0" }, a("sp-theme", { key: "a95af5db4617124e6c825c955d995010cbd84306", scale: "medium", color: "dark" }, a("div", { key: "492bd99bf13e811172c75b0fc1fb4886319e1f01", class: "view-thread" }, a("div", { key: "e93fc1f77a4041d8567fc12eb385418822cd8464", class: "header" }, a("div", { key: "ff92914f3ddd5da54b71d489a8e239ed19387dff", class: "subject" }, (r = this.thread) == null ? void 0 : r.subject), a("div", { key: "55e7e077a3ba751794f65960e7c76624a440964d", class: "folders" }, (l = (n = this.thread) == null ? void 0 : n.folders) == null ? void 0 : l.map((i) => a("sp-tag", { size: "s" }, M(i.replace("CATEGORY_", "").replace("_", " ")))))), a("div", { key: "4d9a122375f93b5d02398577c0c1d3af37224c09", 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) => {
166
+ d("[nylas-view-thread] Send event", { message: i.detail.message, replyBody: i.detail.replyBody });
167
+ } })))));
168
+ }
169
+ get host() {
170
+ return E(this);
171
+ }
172
+ static get watchers() {
173
+ return {
174
+ thread: ["threadChanged"],
175
+ messages: ["updateInternalMessages"]
176
+ };
177
+ }
178
+ };
179
+ _([
180
+ T({
181
+ name: "nylas-view-thread",
182
+ stateToProps: /* @__PURE__ */ new Map([
183
+ ["mailbox.selectedThread", "thread"],
184
+ ["mailbox.messages", "messages"],
185
+ ["mailbox.state", "state"]
186
+ ]),
187
+ eventToProps: {
188
+ threadSelected: async (t, e) => {
189
+ d("[nylas-view-thread] Nylas init event. Fetching thread messages.", { event: t });
190
+ const s = t.detail;
191
+ s && s.id && await e.messages.getThreadMessages(s.id);
192
+ }
193
+ },
194
+ fireRegisterEvent: !0
195
+ }),
196
+ v("design:type", Function),
197
+ v("design:paramtypes", []),
198
+ v("design:returntype", void 0)
199
+ ], C.prototype, "render", null);
200
+ C.style = V;
201
+ export {
202
+ C as nylas_view_thread
203
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-2a53b6a8.cjs");require("react");require("react-dom");const r=".sc-person-icon-h{display:flex}",i=r,t=class{constructor(s){e.registerInstance(this,s),this.width="14",this.height="16"}render(){return e.h("svg",{key:"0a47e6585ae19ad96e3c57b2aec1547798fe7abc",width:this.width,height:this.height,fill:"none",xmlns:"http://www.w3.org/2000/svg"},e.h("path",{key:"5aba35e97caadb061d6948c4f5ffc9390b2cd223",d:"M7 0C4.79086 0 3 1.79086 3 4C3 6.20914 4.79086 8 7 8C9.20914 8 11 6.20914 11 4C11 1.79086 9.20914 0 7 0ZM4 4C4 2.34315 5.34315 1 7 1C8.65685 1 10 2.34315 10 4C10 5.65685 8.65685 7 7 7C5.34315 7 4 5.65685 4 4ZM2.00873 9C0.903151 9 0 9.88687 0 11C0 12.6912 0.83281 13.9663 2.13499 14.7966C3.41697 15.614 5.14526 16 7 16C8.85474 16 10.583 15.614 11.865 14.7966C13.1672 13.9663 14 12.6912 14 11C14 9.89557 13.1045 9.00001 12 9.00001L2.00873 9ZM1 11C1 10.4467 1.44786 10 2.00873 10L12 10C12.5522 10 13 10.4478 13 11C13 12.3088 12.3777 13.2837 11.3274 13.9534C10.2568 14.636 8.73511 15 7 15C5.26489 15 3.74318 14.636 2.67262 13.9534C1.62226 13.2837 1 12.3088 1 11Z",fill:"currentColor"}))}};t.style=i;exports.person_icon=t;
@@ -0,0 +1,15 @@
1
+ import { r as s, h as t } from "./index-a134f625.js";
2
+ import "react";
3
+ import "react-dom";
4
+ const o = ".sc-person-icon-h{display:flex}", r = o, C = class {
5
+ constructor(e) {
6
+ s(this, e), this.width = "14", this.height = "16";
7
+ }
8
+ render() {
9
+ return t("svg", { key: "0a47e6585ae19ad96e3c57b2aec1547798fe7abc", width: this.width, height: this.height, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, t("path", { key: "5aba35e97caadb061d6948c4f5ffc9390b2cd223", d: "M7 0C4.79086 0 3 1.79086 3 4C3 6.20914 4.79086 8 7 8C9.20914 8 11 6.20914 11 4C11 1.79086 9.20914 0 7 0ZM4 4C4 2.34315 5.34315 1 7 1C8.65685 1 10 2.34315 10 4C10 5.65685 8.65685 7 7 7C5.34315 7 4 5.65685 4 4ZM2.00873 9C0.903151 9 0 9.88687 0 11C0 12.6912 0.83281 13.9663 2.13499 14.7966C3.41697 15.614 5.14526 16 7 16C8.85474 16 10.583 15.614 11.865 14.7966C13.1672 13.9663 14 12.6912 14 11C14 9.89557 13.1045 9.00001 12 9.00001L2.00873 9ZM1 11C1 10.4467 1.44786 10 2.00873 10L12 10C12.5522 10 13 10.4478 13 11C13 12.3088 12.3777 13.2837 11.3274 13.9534C10.2568 14.636 8.73511 15 7 15C5.26489 15 3.74318 14.636 2.67262 13.9534C1.62226 13.2837 1 12.3088 1 11Z", fill: "currentColor" }));
10
+ }
11
+ };
12
+ C.style = r;
13
+ export {
14
+ C as person_icon
15
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index-2a53b6a8.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:"03aeffce3f9f6d60a15e334e51d4b8473724937a",width:this.width,height:this.height,viewBox:"0 0 24 24",fill:"auto",xmlns:"http://www.w3.org/2000/svg"},t.h("path",{key:"b150b7c852caa549be48caaf60e46bc442b15960",d:"M21 12L3 21V3L21 12Z",stroke:"auto","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}))}};s.style=n;const h=".sc-stop-icon-h{display:flex}",r=h,i=class{constructor(e){t.registerInstance(this,e),this.width="15",this.height="15"}render(){return t.h("svg",{key:"21ddd8a23141367d02d6118b65e083a7c35fdae3",width:this.width,height:this.height,viewBox:"0 0 24 24",fill:"auto",xmlns:"http://www.w3.org/2000/svg"},t.h("path",{key:"087eb49291f67ff7d7d536114007d200a86c61e9",d:"M4 4H20V20H4V4Z",stroke:"auto","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}))}};i.style=r;exports.play_icon=s;exports.stop_icon=i;
@@ -0,0 +1,25 @@
1
+ import { r as o, h as t } from "./index-a134f625.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: "03aeffce3f9f6d60a15e334e51d4b8473724937a", width: this.width, height: this.height, viewBox: "0 0 24 24", fill: "auto", xmlns: "http://www.w3.org/2000/svg" }, t("path", { key: "b150b7c852caa549be48caaf60e46bc442b15960", 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 n = ".sc-stop-icon-h{display:flex}", c = n, r = class {
14
+ constructor(s) {
15
+ o(this, s), this.width = "15", this.height = "15";
16
+ }
17
+ render() {
18
+ return t("svg", { key: "21ddd8a23141367d02d6118b65e083a7c35fdae3", width: this.width, height: this.height, viewBox: "0 0 24 24", fill: "auto", xmlns: "http://www.w3.org/2000/svg" }, t("path", { key: "087eb49291f67ff7d7d536114007d200a86c61e9", d: "M4 4H20V20H4V4Z", stroke: "auto", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }));
19
+ }
20
+ };
21
+ r.style = c;
22
+ export {
23
+ h as play_icon,
24
+ r as stop_icon
25
+ };
package/dist/react.cjs ADDED
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./index-2a53b6a8.cjs");require("react");require("react-dom");exports.AddCircleIcon=o.AddCircleIcon;exports.ArchiveIcon=o.ArchiveIcon;exports.ArrowIcon=o.ArrowIcon;exports.BoldIcon=o.BoldIcon;exports.ButtonComponent=o.ButtonComponent;exports.CalendarAgendaFillIcon=o.CalendarAgendaFillIcon;exports.CalendarAgendaIcon=o.CalendarAgendaIcon;exports.CalendarCancelIcon=o.CalendarCancelIcon;exports.CalendarCheckIcon=o.CalendarCheckIcon;exports.CalendarIcon=o.CalendarIcon;exports.CalendarInfoIcon=o.CalendarInfoIcon;exports.CalendarPatternsIcon=o.CalendarPatternsIcon;exports.CheckboxComponent=o.CheckboxComponent;exports.CheckmarkCircleIcon=o.CheckmarkCircleIcon;exports.CheckmarkIcon=o.CheckmarkIcon;exports.ChevronIcon=o.ChevronIcon;exports.ClockIcon=o.ClockIcon;exports.CloseIcon=o.CloseIcon;exports.CopyIcon=o.CopyIcon;exports.DeleteIcon=o.DeleteIcon;exports.DocumentRefreshIcon=o.DocumentRefreshIcon;exports.DragableIcon=o.DragableIcon;exports.EditIcon=o.EditIcon;exports.EnvelopeFillIcon=o.EnvelopeFillIcon;exports.EnvelopeIcon=o.EnvelopeIcon;exports.EyeIcon=o.EyeIcon;exports.FlowIcon=o.FlowIcon;exports.FolderIcon=o.FolderIcon;exports.ForwardIcon=o.ForwardIcon;exports.GlobeIcon=o.GlobeIcon;exports.GoogleLogoIcon=o.GoogleLogoIcon;exports.GoogleMeetIcon=o.GoogleMeetIcon;exports.InboxIcon=o.InboxIcon;exports.InfoIcon=o.InfoIcon;exports.InputColorPicker=o.InputColorPicker;exports.InputComponent=o.InputComponent;exports.InputDropdown=o.InputDropdown;exports.InputImageUrl=o.InputImageUrl;exports.ItalicIcon=o.ItalicIcon;exports.LoadingIcon=o.LoadingIcon;exports.LocationIcon=o.LocationIcon;exports.LocationOffIcon=o.LocationOffIcon;exports.MicrosoftLogoIcon=o.MicrosoftLogoIcon;exports.MicrosoftTeamsIcon=o.MicrosoftTeamsIcon;exports.MultiSelectDropdown=o.MultiSelectDropdown;exports.NylasAdditionalParticipants=o.NylasAdditionalParticipants;exports.NylasAvailabilityPicker=o.NylasAvailabilityPicker;exports.NylasBookedEventCard=o.NylasBookedEventCard;exports.NylasBookingCalendarPicker=o.NylasBookingCalendarPicker;exports.NylasBookingConfirmationRedirect=o.NylasBookingConfirmationRedirect;exports.NylasBookingConfirmationType=o.NylasBookingConfirmationType;exports.NylasBookingForm=o.NylasBookingForm;exports.NylasBookingFormConfig=o.NylasBookingFormConfig;exports.NylasBufferTime=o.NylasBufferTime;exports.NylasCalendarPicker=o.NylasCalendarPicker;exports.NylasCancelBookingForm=o.NylasCancelBookingForm;exports.NylasCancellationPolicy=o.NylasCancellationPolicy;exports.NylasCancelledEventCard=o.NylasCancelledEventCard;exports.NylasComposer=o.NylasComposer;exports.NylasConfirmationEmail=o.NylasConfirmationEmail;exports.NylasConfirmedEventCard=o.NylasConfirmedEventCard;exports.NylasConnectedCalendars=o.NylasConnectedCalendars;exports.NylasCustomBookingFlow=o.NylasCustomBookingFlow;exports.NylasCustomEventSlug=o.NylasCustomEventSlug;exports.NylasCustomizeBookingSettings=o.NylasCustomizeBookingSettings;exports.NylasDatePicker=o.NylasDatePicker;exports.NylasEditorTabs=o.NylasEditorTabs;exports.NylasEventDescription=o.NylasEventDescription;exports.NylasEventDuration=o.NylasEventDuration;exports.NylasEventInfo=o.NylasEventInfo;exports.NylasEventLimits=o.NylasEventLimits;exports.NylasEventLocation=o.NylasEventLocation;exports.NylasEventTitle=o.NylasEventTitle;exports.NylasFormCard=o.NylasFormCard;exports.NylasIdentityRequestWrapper=o.NylasIdentityRequestWrapper;exports.NylasIfState=o.NylasIfState;exports.NylasLimitFutureBookings=o.NylasLimitFutureBookings;exports.NylasListConfigurations=o.NylasListConfigurations;exports.NylasListFolders=o.NylasListFolders;exports.NylasListThreads=o.NylasListThreads;exports.NylasLocaleSwitch=o.NylasLocaleSwitch;exports.NylasLogin=o.NylasLogin;exports.NylasLogo=o.NylasLogo;exports.NylasMailbox=o.NylasMailbox;exports.NylasMailboxPagination=o.NylasMailboxPagination;exports.NylasMailboxToolbarButton=o.NylasMailboxToolbarButton;exports.NylasMinBookingNotice=o.NylasMinBookingNotice;exports.NylasMinCancellationNotice=o.NylasMinCancellationNotice;exports.NylasNotification=o.NylasNotification;exports.NylasOrganizerConfirmationCard=o.NylasOrganizerConfirmationCard;exports.NylasPageName=o.NylasPageName;exports.NylasPageStyling=o.NylasPageStyling;exports.NylasParticipantBookingCalendars=o.NylasParticipantBookingCalendars;exports.NylasParticipantsCustomAvailability=o.NylasParticipantsCustomAvailability;exports.NylasProvider=o.NylasProvider;exports.NylasReminderEmails=o.NylasReminderEmails;exports.NylasReminderTime=o.NylasReminderTime;exports.NylasSchedulerEditor=o.NylasSchedulerEditor;exports.NylasScheduling=o.NylasScheduling;exports.NylasSchedulingMethod=o.NylasSchedulingMethod;exports.NylasSelectedEventCard=o.NylasSelectedEventCard;exports.NylasSummarizeMessageButton=o.NylasSummarizeMessageButton;exports.NylasThreadsRefresh=o.NylasThreadsRefresh;exports.NylasThreadsSearch=o.NylasThreadsSearch;exports.NylasTimeWindowPicker=o.NylasTimeWindowPicker;exports.NylasTimeslotInterval=o.NylasTimeslotInterval;exports.NylasTimeslotPicker=o.NylasTimeslotPicker;exports.NylasViewEmail=o.NylasViewEmail;exports.NylasViewThread=o.NylasViewThread;exports.PaintbrushFillIcon=o.PaintbrushFillIcon;exports.PaintbrushIcon=o.PaintbrushIcon;exports.PeopleIcon=o.PeopleIcon;exports.PersonClipboardIcon=o.PersonClipboardIcon;exports.PersonIcon=o.PersonIcon;exports.PlayIcon=o.PlayIcon;exports.PlusIcon=o.PlusIcon;exports.RadioButtonGroup=o.RadioButtonGroup;exports.RefreshIcon=o.RefreshIcon;exports.ReplyAllIcon=o.ReplyAllIcon;exports.ReplyIcon=o.ReplyIcon;exports.SearchIcon=o.SearchIcon;exports.SelectDropdown=o.SelectDropdown;exports.SentIcon=o.SentIcon;exports.SpamIcon=o.SpamIcon;exports.StarIcon=o.StarIcon;exports.StopIcon=o.StopIcon;exports.TextareaComponent=o.TextareaComponent;exports.TimePeriodSelector=o.TimePeriodSelector;exports.ToggleSwitch=o.ToggleSwitch;exports.TooltipComponent=o.TooltipComponent;exports.TranslateIcon=o.TranslateIcon;exports.TrashFillIcon=o.TrashFillIcon;exports.TrashIcon=o.TrashIcon;exports.UnderlineIcon=o.UnderlineIcon;exports.WarningIcon=o.WarningIcon;exports.ZoomIcon=o.ZoomIcon;exports.applyPolyfills=o.applyPolyfills;exports.defineCustomElements=o.defineCustomElements;exports.setNonce=o.setNonce;exports.useNylasMailboxElement=o.useNylasMailboxElement;
package/dist/react.js ADDED
@@ -0,0 +1,145 @@
1
+ import { a6 as e, a7 as l, a8 as i, a9 as c, aa as t, ab as r, ac as b, ad as y, ae as I, af as N, ag as d, ah as C, ai as m, aj as g, ak as p, al as u, am as k, an as h, ao as P, ap as f, aq as E, ar as T, as as S, at as v, au as B, av as F, aw as L, ax as w, ay as M, az as R, aA as A, aB as D, aC as x, aD as G, aE as z, aF as W, aG as O, aH as U, aI as V, aJ as q, aK as Z, aL as j, aM as H, aN as J, aO as K, aP as Q, aQ as X, aR as Y, aS as _, aT as $, aU as aa, aV as sa, aW as oa, aX as na, aY as ea, aZ as la, a_ as ia, a$ as ca, b0 as ta, b1 as ra, b2 as ba, b3 as ya, b4 as Ia, b5 as Na, b6 as da, b7 as Ca, b8 as ma, b9 as ga, ba as pa, bb as ua, bc as ka, bd as ha, be as Pa, bf as fa, N as Ea, bg as Ta, bh as Sa, bi as va, bj as Ba, bk as Fa, bl as La, bm as wa, bn as Ma, bo as Ra, bp as Aa, bq as Da, br as xa, bs as Ga, bt as za, bu as Wa, bv as Oa, bw as Ua, bx as Va, by as qa, bz as Za, bA as ja, bB as Ha, bC as Ja, bD as Ka, bE as Qa, bF as Xa, bG as Ya, bH as _a, bI as $a, bJ as as, bK as ss, bL as os, bM as ns, bN as es, bO as ls, bP as is, bQ as cs, bR as ts, bS as rs, bT as bs, bU as ys, bV as Is, bW as Ns, bX as ds, bY as Cs, bZ as ms, b_ as gs, b$ as ps, c0 as us, c1 as ks, c2 as hs, c3 as Ps, c4 as fs, c5 as Es, c6 as Ts, c7 as Ss, c8 as vs, c9 as Bs, ca as Fs, cb as Ls, cc as ws, a3 as Ms, a4 as Rs, a5 as As, a2 as Ds } from "./index-a134f625.js";
2
+ import "react";
3
+ import "react-dom";
4
+ export {
5
+ e as AddCircleIcon,
6
+ l as ArchiveIcon,
7
+ i as ArrowIcon,
8
+ c as BoldIcon,
9
+ t as ButtonComponent,
10
+ r as CalendarAgendaFillIcon,
11
+ b as CalendarAgendaIcon,
12
+ y as CalendarCancelIcon,
13
+ I as CalendarCheckIcon,
14
+ N as CalendarIcon,
15
+ d as CalendarInfoIcon,
16
+ C as CalendarPatternsIcon,
17
+ m as CheckboxComponent,
18
+ g as CheckmarkCircleIcon,
19
+ p as CheckmarkIcon,
20
+ u as ChevronIcon,
21
+ k as ClockIcon,
22
+ h as CloseIcon,
23
+ P as CopyIcon,
24
+ f as DeleteIcon,
25
+ E as DocumentRefreshIcon,
26
+ T as DragableIcon,
27
+ S as EditIcon,
28
+ v as EnvelopeFillIcon,
29
+ B as EnvelopeIcon,
30
+ F as EyeIcon,
31
+ L as FlowIcon,
32
+ w as FolderIcon,
33
+ M as ForwardIcon,
34
+ R as GlobeIcon,
35
+ A as GoogleLogoIcon,
36
+ D as GoogleMeetIcon,
37
+ x as InboxIcon,
38
+ G as InfoIcon,
39
+ z as InputColorPicker,
40
+ W as InputComponent,
41
+ O as InputDropdown,
42
+ U as InputImageUrl,
43
+ V as ItalicIcon,
44
+ q as LoadingIcon,
45
+ Z as LocationIcon,
46
+ j as LocationOffIcon,
47
+ H as MicrosoftLogoIcon,
48
+ J as MicrosoftTeamsIcon,
49
+ K as MultiSelectDropdown,
50
+ Q as NylasAdditionalParticipants,
51
+ X as NylasAvailabilityPicker,
52
+ Y as NylasBookedEventCard,
53
+ _ as NylasBookingCalendarPicker,
54
+ $ as NylasBookingConfirmationRedirect,
55
+ aa as NylasBookingConfirmationType,
56
+ sa as NylasBookingForm,
57
+ oa as NylasBookingFormConfig,
58
+ na as NylasBufferTime,
59
+ ea as NylasCalendarPicker,
60
+ la as NylasCancelBookingForm,
61
+ ia as NylasCancellationPolicy,
62
+ ca as NylasCancelledEventCard,
63
+ ta as NylasComposer,
64
+ ra as NylasConfirmationEmail,
65
+ ba as NylasConfirmedEventCard,
66
+ ya as NylasConnectedCalendars,
67
+ Ia as NylasCustomBookingFlow,
68
+ Na as NylasCustomEventSlug,
69
+ da as NylasCustomizeBookingSettings,
70
+ Ca as NylasDatePicker,
71
+ ma as NylasEditorTabs,
72
+ ga as NylasEventDescription,
73
+ pa as NylasEventDuration,
74
+ ua as NylasEventInfo,
75
+ ka as NylasEventLimits,
76
+ ha as NylasEventLocation,
77
+ Pa as NylasEventTitle,
78
+ fa as NylasFormCard,
79
+ Ea as NylasIdentityRequestWrapper,
80
+ Ta as NylasIfState,
81
+ Sa as NylasLimitFutureBookings,
82
+ va as NylasListConfigurations,
83
+ Ba as NylasListFolders,
84
+ Fa as NylasListThreads,
85
+ La as NylasLocaleSwitch,
86
+ wa as NylasLogin,
87
+ Ma as NylasLogo,
88
+ Ra as NylasMailbox,
89
+ Aa as NylasMailboxPagination,
90
+ Da as NylasMailboxToolbarButton,
91
+ xa as NylasMinBookingNotice,
92
+ Ga as NylasMinCancellationNotice,
93
+ za as NylasNotification,
94
+ Wa as NylasOrganizerConfirmationCard,
95
+ Oa as NylasPageName,
96
+ Ua as NylasPageStyling,
97
+ Va as NylasParticipantBookingCalendars,
98
+ qa as NylasParticipantsCustomAvailability,
99
+ Za as NylasProvider,
100
+ ja as NylasReminderEmails,
101
+ Ha as NylasReminderTime,
102
+ Ja as NylasSchedulerEditor,
103
+ Ka as NylasScheduling,
104
+ Qa as NylasSchedulingMethod,
105
+ Xa as NylasSelectedEventCard,
106
+ Ya as NylasSummarizeMessageButton,
107
+ _a as NylasThreadsRefresh,
108
+ $a as NylasThreadsSearch,
109
+ as as NylasTimeWindowPicker,
110
+ ss as NylasTimeslotInterval,
111
+ os as NylasTimeslotPicker,
112
+ ns as NylasViewEmail,
113
+ es as NylasViewThread,
114
+ ls as PaintbrushFillIcon,
115
+ is as PaintbrushIcon,
116
+ cs as PeopleIcon,
117
+ ts as PersonClipboardIcon,
118
+ rs as PersonIcon,
119
+ bs as PlayIcon,
120
+ ys as PlusIcon,
121
+ Is as RadioButtonGroup,
122
+ Ns as RefreshIcon,
123
+ ds as ReplyAllIcon,
124
+ Cs as ReplyIcon,
125
+ ms as SearchIcon,
126
+ gs as SelectDropdown,
127
+ ps as SentIcon,
128
+ us as SpamIcon,
129
+ ks as StarIcon,
130
+ hs as StopIcon,
131
+ Ps as TextareaComponent,
132
+ fs as TimePeriodSelector,
133
+ Es as ToggleSwitch,
134
+ Ts as TooltipComponent,
135
+ Ss as TranslateIcon,
136
+ vs as TrashFillIcon,
137
+ Bs as TrashIcon,
138
+ Fs as UnderlineIcon,
139
+ Ls as WarningIcon,
140
+ ws as ZoomIcon,
141
+ Ms as applyPolyfills,
142
+ Rs as defineCustomElements,
143
+ As as setNonce,
144
+ Ds as useNylasMailboxElement
145
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("./index-2a53b6a8.cjs");require("react");require("react-dom");const t=".sc-refresh-icon-h{display:flex}",i=t,e=class{constructor(s){c.registerInstance(this,s),this.width="15",this.height="15"}render(){return c.h("svg",{key:"6b97426e4b19084109dd6615f5bdc654a0020fb9",fill:"auto",width:this.width,height:this.height,viewBox:"0 0 32 32",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},c.h("path",{key:"fc8867cd8e42697f0d4a3dac3dc0973cd0c29d65",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"}))}};e.style=i;exports.refresh_icon=e;
@@ -0,0 +1,15 @@
1
+ import { r as t, h as c } from "./index-a134f625.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: "6b97426e4b19084109dd6615f5bdc654a0020fb9", 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: "fc8867cd8e42697f0d4a3dac3dc0973cd0c29d65", 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
+ };
@@ -0,0 +1 @@
1
+ "use strict";const s=require("./index-2a53b6a8.cjs");function m(e,o,u="registerComponent"){return new CustomEvent(u,{bubbles:!0,composed:!0,detail:o})}function P(e,o,u="unregisterComponent"){return new CustomEvent(u,{bubbles:!0,composed:!0,detail:o})}function b(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=s.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}),Object.defineProperty(t,"localPropsToProp",{get(){return e.localPropsToProp},enumerable:!0})),n},e.fireRegisterEvent&&(o.componentWillLoad=function(){const n=l==null?void 0:l.call(this),t=s.getElement(this),i={element:t,...e,eventToProps:d},c=m(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=s.getElement(this),i={element:t,...e,eventToProps:d},c=P(o,i,e.unregistrationEventName);return t.dispatchEvent(c)&&s.debug(`[${r}] Component ${r} successfully fired unregistration event`),n})}}exports.RegisterComponent=b;
@@ -0,0 +1,109 @@
1
+ import { d, Y as m, g as P } from "./index-a134f625.js";
2
+ function b(e, o, i = "registerComponent") {
3
+ return new CustomEvent(i, {
4
+ bubbles: !0,
5
+ composed: !0,
6
+ detail: o
7
+ });
8
+ }
9
+ function T(e, o, i = "unregisterComponent") {
10
+ return new CustomEvent(i, {
11
+ bubbles: !0,
12
+ composed: !0,
13
+ detail: o
14
+ });
15
+ }
16
+ function v(e) {
17
+ return (o, i) => {
18
+ const r = e.name;
19
+ d(`[${r}] Registering component ${r} being called on ${i}`);
20
+ const u = o.componentWillLoad;
21
+ if (!u) {
22
+ m(`[${r}] componentWillLoad lifecycle method in ${r} missing. Required for RegisterComponent decorator.`);
23
+ return;
24
+ }
25
+ const p = o.connectedCallback;
26
+ if (!p) {
27
+ m(`[${r}] connectedCallback lifecycle method in ${r} missing. Required for RegisterComponent decorator.`);
28
+ return;
29
+ }
30
+ const l = o.disconnectedCallback;
31
+ if (!l) {
32
+ m(`[${r}] disconnectedCallback lifecycle method in ${r} missing. Required for RegisterComponent decorator.`);
33
+ return;
34
+ }
35
+ if (e.storeToProps && e.stateToProps) {
36
+ const n = Array.from(e.storeToProps.values()), t = Array.from(e.stateToProps.values()), s = n.filter((c) => t.includes(c));
37
+ if (s.length > 0) {
38
+ m(`[${r}] Overlapping prop keys detected in ${r} for storeToProps and stateToProps. Make sure to only define them once. Overlapping keys: ${s.join(", ")}`);
39
+ return;
40
+ }
41
+ }
42
+ const a = /* @__PURE__ */ new Map();
43
+ e.eventToProps && Object.keys(e.eventToProps).forEach((n) => {
44
+ var t;
45
+ a.set(n, (t = e.eventToProps) == null ? void 0 : t[n]);
46
+ }), o.connectedCallback = function() {
47
+ d(`[~${r}] connectedCallback called`);
48
+ const n = p == null ? void 0 : p.call(this), t = P(this);
49
+ return t.dataset.nylasId || (Object.defineProperty(t, "registerNylasComponent", {
50
+ get() {
51
+ return !0;
52
+ },
53
+ enumerable: !0
54
+ }), Object.defineProperty(t, "stateToProps", {
55
+ get() {
56
+ return e.stateToProps;
57
+ },
58
+ enumerable: !0
59
+ }), Object.defineProperty(t, "getStoresToProp", {
60
+ get() {
61
+ return e.getStoresToProp;
62
+ },
63
+ enumerable: !0
64
+ }), Object.defineProperty(t, "storeToProps", {
65
+ get() {
66
+ return e.storeToProps;
67
+ },
68
+ enumerable: !0
69
+ }), Object.defineProperty(t, "eventToProps", {
70
+ get() {
71
+ return a;
72
+ },
73
+ enumerable: !0
74
+ }), Object.defineProperty(t, "authToProp", {
75
+ get() {
76
+ return e.authToProp;
77
+ },
78
+ enumerable: !0
79
+ }), Object.defineProperty(t, "connectorToProp", {
80
+ get() {
81
+ return e.connectorToProp;
82
+ },
83
+ enumerable: !0
84
+ }), Object.defineProperty(t, "localPropsToProp", {
85
+ get() {
86
+ return e.localPropsToProp;
87
+ },
88
+ enumerable: !0
89
+ })), n;
90
+ }, e.fireRegisterEvent && (o.componentWillLoad = function() {
91
+ const n = u == null ? void 0 : u.call(this), t = P(this), s = {
92
+ element: t,
93
+ ...e,
94
+ eventToProps: a
95
+ }, c = b(o, s, e.registrationEventName);
96
+ return t.dispatchEvent(c) && d(`[${r}] Component ${r} successfully fired registration event`), n;
97
+ }, o.disconnectedCallback = function() {
98
+ const n = l == null ? void 0 : l.call(this), t = P(this), s = {
99
+ element: t,
100
+ ...e,
101
+ eventToProps: a
102
+ }, c = T(o, s, e.unregistrationEventName);
103
+ return t.dispatchEvent(c) && d(`[${r}] Component ${r} successfully fired unregistration event`), n;
104
+ });
105
+ };
106
+ }
107
+ export {
108
+ v as R
109
+ };
@@ -0,0 +1 @@
1
+ "use strict";const o=require("./index-2a53b6a8.cjs");function s(n={}){const r={selectedConfiguration:{},configurations:[],listConfigurationsNextCursor:null,calendars:[],currentUser:null,action:null,additionalParticipants:[],hideEditorTabs:[],requiresSlug:!1,...n},e=o.createStore(r);function t(){e.set("selectedConfiguration",{...n.selectedConfiguration})}return e.onChange("action",async i=>{i||t()}),{...e,resetSelectedConfiguration:t}}exports.CreateNylasSchedulerConfigStore=s;
@@ -0,0 +1,27 @@
1
+ import { e as i } from "./index-a134f625.js";
2
+ function s(n = {}) {
3
+ const o = {
4
+ selectedConfiguration: {},
5
+ configurations: [],
6
+ listConfigurationsNextCursor: null,
7
+ calendars: [],
8
+ currentUser: null,
9
+ action: null,
10
+ additionalParticipants: [],
11
+ hideEditorTabs: [],
12
+ requiresSlug: !1,
13
+ ...n
14
+ }, e = i(o);
15
+ function t() {
16
+ e.set("selectedConfiguration", { ...n.selectedConfiguration });
17
+ }
18
+ return e.onChange("action", async (r) => {
19
+ r || t();
20
+ }), {
21
+ ...e,
22
+ resetSelectedConfiguration: t
23
+ };
24
+ }
25
+ export {
26
+ s as C
27
+ };
@@ -0,0 +1 @@
1
+ "use strict";const l=require("./index-2a53b6a8.cjs");exports.ErrorCategory=void 0;(function(a){a.Component="component",a.Api="api",a.Auth="auth"})(exports.ErrorCategory||(exports.ErrorCategory={}));var B;(function(a){a.endtime_not_in_future="endtime_not_in_future",a.no_booking_info="no_booking_info",a.no_timeslot_selected="no_timeslot_selected",a.no_timezone_selected="no_timezone_selected",a.no_booking_id="no_booking_id",a.no_salt="no_salt",a.invalid_start_time="invalid_start_time",a.invalid_end_time="invalid_end_time",a.invalid_timezone="invalid_timezone"})(B||(B={}));var E;(function(a){a.invalid_session="invalid_session",a.general_error="general_error",a.internal_error="internal_error",a.invalid_request_error="invalid_request_error",a.timeslot_not_available="timeslot_not_available",a.provider_error="provider_error",a.not_found_error="not_found_error"})(E||(E={}));class C{constructor(){this.component=e=>{const t=exports.ErrorCategory.Component,s=`${e} Error`;return{endtime_not_in_future:(i='"endtime" can not be in the future')=>({title:s,message:i,category:t}),no_booking_info:(i="No booking info provided")=>({title:s,message:i,category:t}),no_timeslot_selected:(i="No timeslot selected")=>({title:s,message:i,category:t}),no_timezone_selected:(i="No timezone selected")=>({title:s,message:i,category:t}),no_booking_id:(i="No booking id provided")=>({title:s,message:i,category:t}),no_salt:(i="No salt provided")=>({title:s,message:i,category:t}),invalid_start_time:(i="Invalid start time")=>({title:s,message:i,category:t}),invalid_end_time:(i="Invalid end time")=>({title:s,message:i,category:t}),invalid_timezone:(i="Invalid timezone")=>({title:s,message:i,category:t})}},this.api=e=>{const t=exports.ErrorCategory.Api,s=`${e} Error`;return{invalid_session:i=>({title:s,message:i,category:t}),general_error:i=>({title:s,message:i,category:t}),internal_error:i=>({title:s,message:i,category:t}),invalid_request_error:i=>({title:s,message:i,category:t}),timeslot_not_available:i=>({title:s,message:i,category:t}),provider_error:i=>({title:s,message:i,category:t}),not_found_error:i=>({title:s,message:i,category:t})}}}}class M{constructor({schedulerAPIURL:e,schedulerStore:t,sessionId:s,configId:i,slug:n,clientId:r}){this.errors=new C,this.schedulerStore=t,this.schedulerAPIURL=e,this.sessionId=s,this.configId=i,this.slug=n,this.clientId=r}getHeaders(){return this.sessionId?{Authorization:`Bearer ${this.sessionId}`}:{}}async makeAPIRequest(e,t,s,i={}){try{const n=new URL(this.schedulerAPIURL);return n.pathname=e,await(await fetch(decodeURIComponent(n.toString()),{method:t,headers:{"Content-Type":"application/json",Origin:window.location.origin,...i},body:s})).json()}catch(n){return{error:{message:n.message,title:"API request failed",type:"api"}}}}getErrorMessage(e){var s,i,n,r;let t=(e==null?void 0:e.message)||(e==null?void 0:e.title)||"Something went wrong";return(e==null?void 0:e.type)==="provider_error"&&(t=((i=(s=e==null?void 0:e.provider_error)==null?void 0:s.error)==null?void 0:i.message)||((r=(n=e==null?void 0:e.provider_error)==null?void 0:n.error)==null?void 0:r.title)||"Something went wrong"),t}setConfigId(e){this.configId=e}selectDate(e){this.schedulerStore.set("selectedDate",e),this.schedulerStore.set("selectedTimeslot",null)}selectTime(e){this.schedulerStore.set("selectedTimeslot",e)}selectTimezone(e){this.schedulerStore.set("selectedTimezone",e)}selectLanguage(e){this.schedulerStore.set("selectedLanguage",e),l.instance.changeLanguage(e)}async toggleAdditionalData(e){e||await this.refetchAvailability(),this.schedulerStore.set("showBookingForm",e)}setParticipantName(e){const{bookingInfo:t}=this.schedulerStore.state;this.schedulerStore.set("bookingInfo",{...t,primaryParticipant:{...t==null?void 0:t.primaryParticipant,name:e}})}setParticipantEmail(e){const{bookingInfo:t}=this.schedulerStore.state;this.schedulerStore.set("bookingInfo",{...t,primaryParticipant:{...t==null?void 0:t.primaryParticipant,email:e}})}async refetchAvailability(){const e=new Date,t=new Date(e.getFullYear(),e.getMonth(),1).getTime()/1e3,s=t<e.getTime()/1e3?Math.floor(e.getTime()/1e3):t,i=new Date(e.getFullYear(),e.getMonth()+1,1).getTime()/1e3;return await this.getAvailability(s,i)}async resetStoreStateAndFetchAvailability(){const e=new Date,t=await this.refetchAvailability(),s=this.schedulerStore.get("availability").find(n=>new Date(n.start_time)>new Date);let i=e;return s&&(i=s.start_time),this.schedulerStore.set("selectedDate",i),this.schedulerStore.set("eventInfo",null),this.schedulerStore.set("showBookingForm",!1),this.schedulerStore.set("selectedTimeslot",null),t}async setReschedule(e){this.schedulerStore.set("isLoading",!0);const t=this.schedulerStore.state.eventInfo;return t&&this.schedulerStore.set("reschedulingEventInfo",t),this.schedulerStore.set("rescheduleBookingId",e),await this.resetStoreStateAndFetchAvailability().finally(()=>{this.schedulerStore.set("isLoading",!1)})}async setCancel(e){this.schedulerStore.set("cancelBookingId",e)}async setReject(e){this.schedulerStore.set("rejectBookingId",e)}async resetCancel(){const e=await this.resetStoreStateAndFetchAvailability();return this.schedulerStore.set("cancelBookingId",""),this.schedulerStore.set("rejectBookingId",""),this.schedulerStore.set("cancelledEventInfo",null),e}async goBack(){this.schedulerStore.set("cancelBookingId","")}async resetConfirm(){const e=await this.resetStoreStateAndFetchAvailability();return this.schedulerStore.set("organizerConfirmationBookingId",""),this.schedulerStore.set("confirmedEventInfo",void 0),e}async bookTimeslot(e){var I;this.schedulerStore.set("isLoading",!0);const{selectedTimeslot:t,selectedTimezone:s,bookingInfo:i,selectedLanguage:n}=this.schedulerStore.state;if(!e&&!i)return{error:this.errors.component(l.instance.t("createBookingErrorTitle")).no_booking_info()};const r=(e==null?void 0:e.timeslot)||t;if(!r)return{error:this.errors.component(l.instance.t("createBookingErrorTitle")).no_timeslot_selected()};const o=e&&(e!=null&&e.timezone)?e==null?void 0:e.timezone:s;if(!o)return{error:this.errors.component(l.instance.t("createBookingErrorTitle")).no_timezone_selected()};const u=this.schedulerStore.get("availabilityOrderEmails");let m="";if(u.length>0){const S=r.emails;for(let h=0;h<u.length;h++)if(S.includes(u[h])){m=u[h];break}}const d=e?e==null?void 0:e.primaryParticipant:i==null?void 0:i.primaryParticipant,g=e?(e==null?void 0:e.guests)||[]:(i==null?void 0:i.guests)||[],f=e?e==null?void 0:e.additionalFields:i==null?void 0:i.additionalFields,_=this.getHeaders(),v=`/v3/scheduling/bookings${!this.sessionId&&this.configId?`?configuration_id=${this.configId}`:!this.sessionId&&this.slug&&this.clientId?`?slug=${this.slug}&client_id=${this.clientId}`:""}`,c=await this.makeAPIRequest(decodeURIComponent(v),"POST",JSON.stringify({participants:m?[{email:m}]:void 0,additional_fields:f,additional_guests:g,guest:{...d},start_time:r.start_time.getTime()/1e3,end_time:r.end_time.getTime()/1e3,timezone:o,email_language:this.getTwoLetterLanguageCode(n)}),_);if("error"in c){this.schedulerStore.set("isLoading",!1);const S=(I=c.error)==null?void 0:I.type;let h=c.error;if(S&&S in this.errors.api("Create Booking")){const T=this.getErrorMessage(h);h=this.errors.api("Create Booking")[S](T)}return{error:h}}return"data"in c&&this.schedulerStore.set("eventInfo",c==null?void 0:c.data),this.schedulerStore.set("isLoading",!1),c}async getUISettings(){var n;this.schedulerStore.set("isLoading",!0);const e=this.getHeaders(),s=`/v3/scheduling/ui-settings${!this.sessionId&&this.configId?`?configuration_id=${this.configId}`:!this.sessionId&&this.slug&&this.clientId?`?slug=${this.slug}&client_id=${this.clientId}`:""}`,i=await this.makeAPIRequest(s,"GET",void 0,e);if("error"in i){this.schedulerStore.set("isLoading",!1);const r=(n=i.error)==null?void 0:n.type;let o=i.error;return r&&r in this.errors.api(l.instance.t("getUISettingErrorTitle"))&&(o=this.errors.api(l.instance.t("getUISettingErrorTitle"))[r]((o==null?void 0:o.message)||(o==null?void 0:o.title)||"Something went wrong")),{error:o}}return"data"in i&&this.schedulerStore.set("configSettings",i.data),this.schedulerStore.set("isLoading",!1),i}getTwoLetterLanguageCode(e){return e.split("-")[0]}getStartTimeWithMinBookingNotice(e){var n;const t=(n=this.schedulerStore.get("configSettings"))==null?void 0:n.scheduler,s=t==null?void 0:t.min_booking_notice;if(!s)return e;const i=new Date().getTime();return e<(i+s*60*1e3)/1e3?Math.floor((i+s*60*1e3)/1e3):e}getEndTimeForAvailableDaysInFuture(e){var r,o;const t=new Date,s=(o=(r=this.schedulerStore.get("configSettings"))==null?void 0:r.scheduler)==null?void 0:o.available_days_in_future,i=Math.floor(l.addDaysToCurrentDate(t,s).getTime()/1e3);return Math.min(i,e)}async getAvailability(e=0,t=0){var f,_,p,v;this.schedulerStore.set("isLoading",!0);const s=new URLSearchParams,i=new Date,n=i.getTime();if(t&&t<n/1e3)return this.schedulerStore.set("isLoading",!1),{error:this.errors.component(l.instance.t("getAvailabilityErrorTitle")).endtime_not_in_future()};if(!e){const c=new Date(i.getFullYear(),i.getMonth(),1);e=Math.floor(c.getTime()/1e3)}if(!t){const c=new Date(i.getFullYear(),i.getMonth()+1,0);t=Math.floor(c.getTime()/1e3)}t=this.getEndTimeForAvailableDaysInFuture(t);const r=this.getStartTimeWithMinBookingNotice(e);e=r,t=r>t?r+1:t,s.append("start_time",encodeURIComponent(e.toString())),s.append("end_time",encodeURIComponent(t.toString())),this.configId&&!this.sessionId?s.append("configuration_id",encodeURIComponent(this.configId)):this.slug&&this.clientId&&!this.sessionId&&(s.append("slug",encodeURIComponent(this.slug)),s.append("client_id",encodeURIComponent(this.clientId)));const o=this.schedulerStore.get("rescheduleBookingId");o&&s.append("booking_id",encodeURIComponent(o));const u=s.toString(),m=`/v3/scheduling/availability${u?`?${u}`:""}`,d=this.getHeaders(),g=await this.makeAPIRequest(decodeURIComponent(m),"GET",void 0,d);if("error"in g){this.schedulerStore.set("availability",[]),this.schedulerStore.set("isLoading",!1);const c=(f=g.error)==null?void 0:f.type;let I=g.error;if(c&&c in this.errors.api(l.instance.t("getAvailabilityErrorTitle"))){const S=this.getErrorMessage(I);I=this.errors.api(l.instance.t("getAvailabilityErrorTitle"))[c](S)}return{error:I}}if("data"in g){const I=(((p=(_=g.data)==null?void 0:_.time_slots)==null?void 0:p.map(h=>({...h,start_time:new Date(h.start_time*1e3),end_time:new Date(h.end_time*1e3)})))||[]).filter(h=>h.start_time.getTime()>n);this.schedulerStore.set("availability",I);const S=((v=g.data)==null?void 0:v.order)||[];this.schedulerStore.set("availabilityOrderEmails",S)}return this.schedulerStore.set("isLoading",!1),g}async cancelBooking(e,t){var o;if(this.schedulerStore.set("isLoading",!0),!e)return{error:this.errors.component(l.instance.t("cancelBookingErrorTitle")).no_booking_id()};const s=!this.sessionId&&this.configId?`?configuration_id=${this.configId}`:!this.sessionId&&this.slug&&this.clientId?`?slug=${this.slug}&client_id=${this.clientId}`:"",i=`/v3/scheduling/bookings/${e}${s}`,n=this.getHeaders(),r=await this.makeAPIRequest(decodeURIComponent(i),"DELETE",JSON.stringify({action:"cancel",cancellation_reason:t}),n);if("error"in r){this.schedulerStore.set("isLoading",!1);const u=(o=r.error)==null?void 0:o.type;let m=r.error;if(u&&u in this.errors.api(l.instance.t("cancelBookingErrorTitle"))){const d=this.getErrorMessage(m);m=this.errors.api(l.instance.t("cancelBookingErrorTitle"))[u](d)}return{error:m}}return this.schedulerStore.set("cancelledEventInfo",{booking_id:e}),this.schedulerStore.set("rescheduleBookingId",""),this.schedulerStore.set("isLoading",!1),r}async rescheduleBooking(e,t){var L;if(this.schedulerStore.set("isLoading",!0),!e)return{error:this.errors.component(l.instance.t("rescheduleBookingErrorTitle")).no_booking_id()};const s=this.errors.api(l.instance.t("rescheduleBookingErrorTitle")),i=this.errors.component(l.instance.t("rescheduleBookingErrorTitle")),{bookingInfo:n,selectedTimeslot:r,selectedTimezone:o,selectedLanguage:u}=this.schedulerStore.state,{startTime:m,endTime:d,timezone:g}=t,f=m||(r==null?void 0:r.start_time);if(!f)return{error:i.invalid_start_time('Please pass "startTime" in data or set "selectedTimeslot" in the defaultSchedulerState.')};const _=d||(r==null?void 0:r.end_time);if(!_)return{error:i.invalid_end_time('Please pass "endTime" in data or set "selectedTimeslot" in the defaultSchedulerState.')};const p=this.schedulerStore.get("availabilityOrderEmails");let v="";if(p.length>0){const b=(r==null?void 0:r.emails)||[];for(let k=0;k<p.length;k++)if(b.includes(p[k])){v=p[k];break}}const c=g||o;if(!c)return{error:i.invalid_timezone('Please pass "timezone" in data or set "selectedTimezone" in the defaultSchedulerState.')};const I=t?t==null?void 0:t.primaryParticipant:n==null?void 0:n.primaryParticipant,S=t?(t==null?void 0:t.guests)||[]:(n==null?void 0:n.guests)||[],h=t?t==null?void 0:t.additionalFields:n==null?void 0:n.additionalFields,T=!this.sessionId&&this.configId?`?configuration_id=${this.configId}`:!this.sessionId&&this.slug&&this.clientId?`?slug=${this.slug}&client_id=${this.clientId}`:"",D=`/v3/scheduling/bookings/${e}${T}`,A=this.getHeaders(),y=await this.makeAPIRequest(decodeURIComponent(D),"PATCH",JSON.stringify({start_time:f.getTime()/1e3,end_time:_.getTime()/1e3,timezone:c,additional_fields:h,guest:{...I},additional_guests:S,participants:v?[{email:v}]:void 0,email_language:this.getTwoLetterLanguageCode(u)}),A);if("error"in y){this.schedulerStore.set("isLoading",!1);const b=(L=y.error)==null?void 0:L.type;let k=y.error;if(b&&b in s){const P=this.getErrorMessage(k);k=s[b](P)}return{error:k}}const w=this.schedulerStore.get("reschedulingEventInfo");if("data"in y)this.schedulerStore.set("eventInfo",y==null?void 0:y.data);else if(w)this.schedulerStore.set("eventInfo",w);else{const b={booking_id:e};this.schedulerStore.set("eventInfo",b)}return this.schedulerStore.set("isLoading",!1),y}async updateBooking(e){var g;this.schedulerStore.set("isLoading",!0);const{bookingId:t,status:s,reason:i}=e,n=this.schedulerStore.get("organizerConfirmationSalt"),r=s==="confirmed"?l.instance.t("confirmBookingErrorTitle"):l.instance.t("rejectBookingErrorTitle");if(!t)return{error:this.errors.component(r).no_booking_id()};if(!n)return{error:this.errors.component(r).no_salt()};const o=!this.sessionId&&this.configId?`?configuration_id=${this.configId}`:!this.sessionId&&this.slug&&this.clientId?`?slug=${this.slug}&client_id=${this.clientId}`:"",u=`/v3/scheduling/bookings/${t}${o}`,m=this.getHeaders(),d=await this.makeAPIRequest(decodeURIComponent(u),"PUT",JSON.stringify({status:s,cancellation_reason:i,salt:n}),m);if("error"in d){this.schedulerStore.set("isLoading",!1);const f=(g=d.error)==null?void 0:g.type;let _=d.error;if(f&&f in this.errors.api(r)){const p=this.getErrorMessage(_);_=this.errors.api(r)[f](p)}return{error:_}}return"data"in d&&s==="confirmed"?this.schedulerStore.set("confirmedEventInfo",d==null?void 0:d.data):"request_id"in d&&s==="cancelled"&&this.schedulerStore.set("cancelledEventInfo",{booking_id:t}),this.schedulerStore.set("organizerConfirmationBookingId",""),this.schedulerStore.set("isLoading",!1),d}}function z(a={}){const e={selectedDate:null,selectedLanguage:navigator.language,selectedTimezone:Intl.DateTimeFormat().resolvedOptions().timeZone,selectedTimeslot:null,showBookingForm:!1,availabilityOrderEmails:[],selectableDates:null,availability:[],eventDuration:0,state:"ready",eventInfo:null,cancelledEventInfo:null,isLoading:!1,nylasBranding:!0,...a};l.debug("[defaultNylasStoreState]: ",e);const t=l.createStore(e);return t.onChange("availability",s=>{l.debug("[availability]: ",s);const i=s.map(o=>o.start_time);l.debug("[selectableDates]: ",i),t.set("selectableDates",i);const n=s[0];if(!n)return;const r=Math.floor((n.end_time.getTime()-n.start_time.getTime())/6e4);l.debug("[durationMinutes]: ",r),t.set("eventDuration",r)}),t.reset=()=>{for(const s in e){const i=e[s];t.set(s,i)}},t}exports.CreateNylasSchedulerStore=z;exports.NylaSchedulerAPIConnector=M;