@nylas/web-elements 1.1.5 → 1.1.6

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 (201) hide show
  1. package/dist/cdn/nylas-booked-event-card/nylas-booked-event-card.es.js +155 -145
  2. package/dist/cdn/nylas-booking-form/nylas-booking-form.es.js +80 -70
  3. package/dist/cdn/nylas-cancel-booking-form/nylas-cancel-booking-form.es.js +14 -4
  4. package/dist/cdn/nylas-cancelled-event-card/nylas-cancelled-event-card.es.js +14 -4
  5. package/dist/cdn/nylas-confirmed-event-card/nylas-confirmed-event-card.es.js +14 -4
  6. package/dist/cdn/nylas-date-picker/nylas-date-picker.es.js +86 -73
  7. package/dist/cdn/nylas-editor-tabs/nylas-editor-tabs.es.js +19 -12
  8. package/dist/cdn/nylas-feedback-form/nylas-feedback-form.es.js +1226 -1219
  9. package/dist/cdn/nylas-locale-switch/nylas-locale-switch.es.js +1233 -1220
  10. package/dist/cdn/nylas-organizer-confirmation-card/nylas-organizer-confirmation-card.es.js +11 -4
  11. package/dist/cdn/nylas-scheduler-editor/nylas-scheduler-editor.es.js +19 -12
  12. package/dist/cdn/nylas-scheduling/nylas-scheduling.es.js +1694 -1584
  13. package/dist/cdn/nylas-selected-event-card/nylas-selected-event-card.es.js +14 -4
  14. package/dist/cdn/nylas-timeslot-picker/nylas-timeslot-picker.es.js +13 -3
  15. package/dist/cjs/calendar-agenda-fill-icon_54.cjs.entry.js +13 -3
  16. package/dist/cjs/calendar-agenda-fill-icon_54.cjs.entry.js.map +1 -1
  17. package/dist/cjs/google-logo-icon_4.cjs.entry.js +7 -6
  18. package/dist/cjs/google-logo-icon_4.cjs.entry.js.map +1 -1
  19. package/dist/cjs/loader.cjs.js +1 -1
  20. package/dist/cjs/nylas-booked-event-card.cjs.entry.js +15 -4
  21. package/dist/cjs/nylas-booked-event-card.cjs.entry.js.map +1 -1
  22. package/dist/cjs/nylas-booked-event-card_12.cjs.entry.js +142 -25
  23. package/dist/cjs/nylas-booked-event-card_12.cjs.entry.js.map +1 -1
  24. package/dist/cjs/nylas-booking-form.cjs.entry.js +16 -3
  25. package/dist/cjs/nylas-booking-form.cjs.entry.js.map +1 -1
  26. package/dist/cjs/nylas-cancel-booking-form.cjs.entry.js +13 -2
  27. package/dist/cjs/nylas-cancel-booking-form.cjs.entry.js.map +1 -1
  28. package/dist/cjs/nylas-cancelled-event-card.cjs.entry.js +13 -2
  29. package/dist/cjs/nylas-cancelled-event-card.cjs.entry.js.map +1 -1
  30. package/dist/cjs/nylas-confirmed-event-card.cjs.entry.js +13 -2
  31. package/dist/cjs/nylas-confirmed-event-card.cjs.entry.js.map +1 -1
  32. package/dist/cjs/nylas-date-picker.cjs.entry.js +16 -2
  33. package/dist/cjs/nylas-date-picker.cjs.entry.js.map +1 -1
  34. package/dist/cjs/nylas-editor-tabs.cjs.entry.js +7 -6
  35. package/dist/cjs/nylas-editor-tabs.cjs.entry.js.map +1 -1
  36. package/dist/cjs/nylas-feedback-form.cjs.entry.js +13 -3
  37. package/dist/cjs/nylas-feedback-form.cjs.entry.js.map +1 -1
  38. package/dist/cjs/nylas-locale-switch.cjs.entry.js +18 -4
  39. package/dist/cjs/nylas-locale-switch.cjs.entry.js.map +1 -1
  40. package/dist/cjs/nylas-organizer-confirmation-card.cjs.entry.js +12 -2
  41. package/dist/cjs/nylas-organizer-confirmation-card.cjs.entry.js.map +1 -1
  42. package/dist/cjs/nylas-scheduling.cjs.entry.js +11 -10
  43. package/dist/cjs/nylas-scheduling.cjs.entry.js.map +1 -1
  44. package/dist/cjs/nylas-selected-event-card.cjs.entry.js +14 -3
  45. package/dist/cjs/nylas-selected-event-card.cjs.entry.js.map +1 -1
  46. package/dist/cjs/nylas-timeslot-picker.cjs.entry.js +12 -1
  47. package/dist/cjs/nylas-timeslot-picker.cjs.entry.js.map +1 -1
  48. package/dist/cjs/nylas-web-elements.cjs.js +1 -1
  49. package/dist/collection/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.css +0 -23
  50. package/dist/collection/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.js +34 -3
  51. package/dist/collection/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.js.map +1 -1
  52. package/dist/collection/components/scheduler/nylas-booking-form/nylas-booking-form.css +0 -23
  53. package/dist/collection/components/scheduler/nylas-booking-form/nylas-booking-form.js +35 -2
  54. package/dist/collection/components/scheduler/nylas-booking-form/nylas-booking-form.js.map +1 -1
  55. package/dist/collection/components/scheduler/nylas-cancel-booking-form/nylas-cancel-booking-form.css +0 -23
  56. package/dist/collection/components/scheduler/nylas-cancel-booking-form/nylas-cancel-booking-form.js +32 -1
  57. package/dist/collection/components/scheduler/nylas-cancel-booking-form/nylas-cancel-booking-form.js.map +1 -1
  58. package/dist/collection/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.css +0 -23
  59. package/dist/collection/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.js +32 -1
  60. package/dist/collection/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.js.map +1 -1
  61. package/dist/collection/components/scheduler/nylas-confirmed-event-card/nylas-confirmed-event-card.css +0 -23
  62. package/dist/collection/components/scheduler/nylas-confirmed-event-card/nylas-confirmed-event-card.js +32 -1
  63. package/dist/collection/components/scheduler/nylas-confirmed-event-card/nylas-confirmed-event-card.js.map +1 -1
  64. package/dist/collection/components/scheduler/nylas-date-picker/nylas-date-picker.css +0 -23
  65. package/dist/collection/components/scheduler/nylas-date-picker/nylas-date-picker.js +35 -1
  66. package/dist/collection/components/scheduler/nylas-date-picker/nylas-date-picker.js.map +1 -1
  67. package/dist/collection/components/scheduler/nylas-feedback-form/nylas-feedback-form.css +0 -23
  68. package/dist/collection/components/scheduler/nylas-feedback-form/nylas-feedback-form.js +36 -2
  69. package/dist/collection/components/scheduler/nylas-feedback-form/nylas-feedback-form.js.map +1 -1
  70. package/dist/collection/components/scheduler/nylas-locale-switch/nylas-locale-switch.css +0 -23
  71. package/dist/collection/components/scheduler/nylas-locale-switch/nylas-locale-switch.js +37 -3
  72. package/dist/collection/components/scheduler/nylas-locale-switch/nylas-locale-switch.js.map +1 -1
  73. package/dist/collection/components/scheduler/nylas-organizer-confirmation-card/nylas-organizer-confirmation-card.css +0 -23
  74. package/dist/collection/components/scheduler/nylas-organizer-confirmation-card/nylas-organizer-confirmation-card.js +31 -1
  75. package/dist/collection/components/scheduler/nylas-organizer-confirmation-card/nylas-organizer-confirmation-card.js.map +1 -1
  76. package/dist/collection/components/scheduler/nylas-scheduling/nylas-scheduling.js +10 -9
  77. package/dist/collection/components/scheduler/nylas-scheduling/nylas-scheduling.js.map +1 -1
  78. package/dist/collection/components/scheduler/nylas-selected-event-card/nylas-selected-event-card.css +0 -23
  79. package/dist/collection/components/scheduler/nylas-selected-event-card/nylas-selected-event-card.js +33 -2
  80. package/dist/collection/components/scheduler/nylas-selected-event-card/nylas-selected-event-card.js.map +1 -1
  81. package/dist/collection/components/scheduler/nylas-timeslot-picker/nylas-timeslot-picker.css +0 -23
  82. package/dist/collection/components/scheduler/nylas-timeslot-picker/nylas-timeslot-picker.js +31 -0
  83. package/dist/collection/components/scheduler/nylas-timeslot-picker/nylas-timeslot-picker.js.map +1 -1
  84. package/dist/collection/components/scheduler/nylas-timeslot-picker/test/nylas-timeslot-picker.spec.js +7 -1
  85. package/dist/collection/components/scheduler/nylas-timeslot-picker/test/nylas-timeslot-picker.spec.js.map +1 -1
  86. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js +5 -4
  87. package/dist/collection/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.js.map +1 -1
  88. package/dist/components/nylas-booked-event-card2.js +16 -4
  89. package/dist/components/nylas-booked-event-card2.js.map +1 -1
  90. package/dist/components/nylas-booking-form2.js +17 -3
  91. package/dist/components/nylas-booking-form2.js.map +1 -1
  92. package/dist/components/nylas-cancel-booking-form2.js +14 -2
  93. package/dist/components/nylas-cancel-booking-form2.js.map +1 -1
  94. package/dist/components/nylas-cancelled-event-card2.js +14 -2
  95. package/dist/components/nylas-cancelled-event-card2.js.map +1 -1
  96. package/dist/components/nylas-confirmed-event-card2.js +14 -2
  97. package/dist/components/nylas-confirmed-event-card2.js.map +1 -1
  98. package/dist/components/nylas-date-picker2.js +18 -3
  99. package/dist/components/nylas-date-picker2.js.map +1 -1
  100. package/dist/components/nylas-editor-tabs2.js +7 -6
  101. package/dist/components/nylas-editor-tabs2.js.map +1 -1
  102. package/dist/components/nylas-feedback-form2.js +14 -3
  103. package/dist/components/nylas-feedback-form2.js.map +1 -1
  104. package/dist/components/nylas-locale-switch2.js +20 -5
  105. package/dist/components/nylas-locale-switch2.js.map +1 -1
  106. package/dist/components/nylas-organizer-confirmation-card2.js +13 -2
  107. package/dist/components/nylas-organizer-confirmation-card2.js.map +1 -1
  108. package/dist/components/nylas-scheduling.js +11 -10
  109. package/dist/components/nylas-scheduling.js.map +1 -1
  110. package/dist/components/nylas-selected-event-card2.js +15 -3
  111. package/dist/components/nylas-selected-event-card2.js.map +1 -1
  112. package/dist/components/nylas-timeslot-picker2.js +13 -1
  113. package/dist/components/nylas-timeslot-picker2.js.map +1 -1
  114. package/dist/esm/calendar-agenda-fill-icon_54.entry.js +13 -3
  115. package/dist/esm/calendar-agenda-fill-icon_54.entry.js.map +1 -1
  116. package/dist/esm/google-logo-icon_4.entry.js +7 -6
  117. package/dist/esm/google-logo-icon_4.entry.js.map +1 -1
  118. package/dist/esm/loader.js +1 -1
  119. package/dist/esm/nylas-booked-event-card.entry.js +16 -5
  120. package/dist/esm/nylas-booked-event-card.entry.js.map +1 -1
  121. package/dist/esm/nylas-booked-event-card_12.entry.js +142 -25
  122. package/dist/esm/nylas-booked-event-card_12.entry.js.map +1 -1
  123. package/dist/esm/nylas-booking-form.entry.js +16 -3
  124. package/dist/esm/nylas-booking-form.entry.js.map +1 -1
  125. package/dist/esm/nylas-cancel-booking-form.entry.js +14 -3
  126. package/dist/esm/nylas-cancel-booking-form.entry.js.map +1 -1
  127. package/dist/esm/nylas-cancelled-event-card.entry.js +14 -3
  128. package/dist/esm/nylas-cancelled-event-card.entry.js.map +1 -1
  129. package/dist/esm/nylas-confirmed-event-card.entry.js +14 -3
  130. package/dist/esm/nylas-confirmed-event-card.entry.js.map +1 -1
  131. package/dist/esm/nylas-date-picker.entry.js +18 -4
  132. package/dist/esm/nylas-date-picker.entry.js.map +1 -1
  133. package/dist/esm/nylas-editor-tabs.entry.js +7 -6
  134. package/dist/esm/nylas-editor-tabs.entry.js.map +1 -1
  135. package/dist/esm/nylas-feedback-form.entry.js +13 -3
  136. package/dist/esm/nylas-feedback-form.entry.js.map +1 -1
  137. package/dist/esm/nylas-locale-switch.entry.js +20 -6
  138. package/dist/esm/nylas-locale-switch.entry.js.map +1 -1
  139. package/dist/esm/nylas-organizer-confirmation-card.entry.js +12 -2
  140. package/dist/esm/nylas-organizer-confirmation-card.entry.js.map +1 -1
  141. package/dist/esm/nylas-scheduling.entry.js +11 -10
  142. package/dist/esm/nylas-scheduling.entry.js.map +1 -1
  143. package/dist/esm/nylas-selected-event-card.entry.js +15 -4
  144. package/dist/esm/nylas-selected-event-card.entry.js.map +1 -1
  145. package/dist/esm/nylas-timeslot-picker.entry.js +13 -2
  146. package/dist/esm/nylas-timeslot-picker.entry.js.map +1 -1
  147. package/dist/esm/nylas-web-elements.js +1 -1
  148. package/dist/nylas-web-elements/nylas-booked-event-card.entry.js +16 -5
  149. package/dist/nylas-web-elements/nylas-booked-event-card.entry.js.map +1 -1
  150. package/dist/nylas-web-elements/nylas-booking-form.entry.js +16 -3
  151. package/dist/nylas-web-elements/nylas-booking-form.entry.js.map +1 -1
  152. package/dist/nylas-web-elements/nylas-cancel-booking-form.entry.js +14 -3
  153. package/dist/nylas-web-elements/nylas-cancel-booking-form.entry.js.map +1 -1
  154. package/dist/nylas-web-elements/nylas-cancelled-event-card.entry.js +14 -3
  155. package/dist/nylas-web-elements/nylas-cancelled-event-card.entry.js.map +1 -1
  156. package/dist/nylas-web-elements/nylas-confirmed-event-card.entry.js +14 -3
  157. package/dist/nylas-web-elements/nylas-confirmed-event-card.entry.js.map +1 -1
  158. package/dist/nylas-web-elements/nylas-date-picker.entry.js +18 -4
  159. package/dist/nylas-web-elements/nylas-date-picker.entry.js.map +1 -1
  160. package/dist/nylas-web-elements/nylas-editor-tabs.entry.js +7 -6
  161. package/dist/nylas-web-elements/nylas-editor-tabs.entry.js.map +1 -1
  162. package/dist/nylas-web-elements/nylas-feedback-form.entry.js +13 -3
  163. package/dist/nylas-web-elements/nylas-feedback-form.entry.js.map +1 -1
  164. package/dist/nylas-web-elements/nylas-locale-switch.entry.js +20 -6
  165. package/dist/nylas-web-elements/nylas-locale-switch.entry.js.map +1 -1
  166. package/dist/nylas-web-elements/nylas-organizer-confirmation-card.entry.js +12 -2
  167. package/dist/nylas-web-elements/nylas-organizer-confirmation-card.entry.js.map +1 -1
  168. package/dist/nylas-web-elements/nylas-scheduling.entry.js +11 -10
  169. package/dist/nylas-web-elements/nylas-scheduling.entry.js.map +1 -1
  170. package/dist/nylas-web-elements/nylas-selected-event-card.entry.js +15 -4
  171. package/dist/nylas-web-elements/nylas-selected-event-card.entry.js.map +1 -1
  172. package/dist/nylas-web-elements/nylas-timeslot-picker.entry.js +13 -2
  173. package/dist/nylas-web-elements/nylas-timeslot-picker.entry.js.map +1 -1
  174. package/dist/nylas-web-elements/nylas-web-elements.esm.js +1 -1
  175. package/dist/nylas-web-elements/p-2e7f0f20.entry.js +2 -0
  176. package/dist/nylas-web-elements/p-2e7f0f20.entry.js.map +1 -0
  177. package/dist/nylas-web-elements/{p-b5b568cf.entry.js → p-368190e9.entry.js} +2 -2
  178. package/dist/nylas-web-elements/p-368190e9.entry.js.map +1 -0
  179. package/dist/nylas-web-elements/{p-e790c71f.entry.js → p-9a8047b9.entry.js} +2 -2
  180. package/dist/nylas-web-elements/{p-e790c71f.entry.js.map → p-9a8047b9.entry.js.map} +1 -1
  181. package/dist/nylas-web-elements/{p-d586ff14.entry.js → p-eba3d197.entry.js} +3 -3
  182. package/dist/nylas-web-elements/p-eba3d197.entry.js.map +1 -0
  183. package/dist/types/components/scheduler/nylas-booked-event-card/nylas-booked-event-card.d.ts +4 -1
  184. package/dist/types/components/scheduler/nylas-booking-form/nylas-booking-form.d.ts +5 -2
  185. package/dist/types/components/scheduler/nylas-cancel-booking-form/nylas-cancel-booking-form.d.ts +4 -1
  186. package/dist/types/components/scheduler/nylas-cancelled-event-card/nylas-cancelled-event-card.d.ts +4 -0
  187. package/dist/types/components/scheduler/nylas-confirmed-event-card/nylas-confirmed-event-card.d.ts +4 -0
  188. package/dist/types/components/scheduler/nylas-date-picker/nylas-date-picker.d.ts +5 -0
  189. package/dist/types/components/scheduler/nylas-feedback-form/nylas-feedback-form.d.ts +3 -0
  190. package/dist/types/components/scheduler/nylas-locale-switch/nylas-locale-switch.d.ts +5 -0
  191. package/dist/types/components/scheduler/nylas-organizer-confirmation-card/nylas-organizer-confirmation-card.d.ts +3 -1
  192. package/dist/types/components/scheduler/nylas-scheduling/nylas-scheduling.d.ts +1 -1
  193. package/dist/types/components/scheduler/nylas-selected-event-card/nylas-selected-event-card.d.ts +4 -1
  194. package/dist/types/components/scheduler/nylas-timeslot-picker/nylas-timeslot-picker.d.ts +4 -1
  195. package/dist/types/components/scheduler-editor/nylas-editor-tabs/nylas-editor-tabs.d.ts +1 -1
  196. package/dist/types/components.d.ts +88 -0
  197. package/package.json +1 -1
  198. package/dist/nylas-web-elements/p-7a1d51ab.entry.js +0 -2
  199. package/dist/nylas-web-elements/p-7a1d51ab.entry.js.map +0 -1
  200. package/dist/nylas-web-elements/p-b5b568cf.entry.js.map +0 -1
  201. package/dist/nylas-web-elements/p-d586ff14.entry.js.map +0 -1
@@ -18,12 +18,24 @@ import { Host, h } from "@stencil/core";
18
18
  import { debug, getTimezoneOffset } from "../../../utils/utils";
19
19
  export class NylasLocaleSwitch {
20
20
  constructor() {
21
+ this.themeConfig = undefined;
21
22
  this.selectedTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone;
22
23
  this.selectedLanguage = navigator.language;
23
24
  }
24
25
  connectedCallback() { }
25
26
  disconnectedCallback() { }
26
27
  componentWillLoad() { }
28
+ componentDidLoad() {
29
+ debug(`[nylas-locale-switch] Component did load`);
30
+ this.applyThemeConfig(this.themeConfig);
31
+ }
32
+ applyThemeConfig(themeConfig) {
33
+ if (themeConfig) {
34
+ for (const [key, value] of Object.entries(themeConfig)) {
35
+ this.host.style.setProperty(`${key}`, value);
36
+ }
37
+ }
38
+ }
27
39
  changeTimezone(timezone) {
28
40
  this.selectedTimezone = timezone;
29
41
  this.timezoneChanged.emit(timezone);
@@ -64,13 +76,13 @@ export class NylasLocaleSwitch {
64
76
  label: LANGUAGE_MAP[key],
65
77
  value: key,
66
78
  }));
67
- return (h(Host, { key: '8e8ec3819083fb25cb8620f14aa1f140a995ec89' }, h("div", { key: '45aaebcd9f80d54dc01b5d611094fa05225c8331', class: "nylas-locale-switch", part: "nls" }, h("div", { key: '47d8166b91a3ef742b14e5783338c3701be85eb7', class: {
79
+ return (h(Host, { key: 'b964a342758e2cc1194249965483843a2f0fd4e8' }, h("div", { key: '3594ab03d8f88d1e073fc20118f424accaf0edfe', class: "nylas-locale-switch", part: "nls" }, h("div", { key: '33d4ea2773393f7ff9f3c1db27f280f7291e840b', class: {
68
80
  'select-wrapper': true,
69
81
  'timezone': true,
70
- }, part: "nls__timezone" }, h("select-dropdown", { key: '71edd2352b6067a18b9ba676495e59c954e6c07d', name: "timezone", options: timezoneOptions, defaultSelectedOption: timezoneOptions.find(op => op.value == this.selectedTimezone), exportparts: "sd_dropdown: nls__timezone-dropdown, sd_dropdown-button: nls__timezone-drop-button, sd_dropdown-button-selected-label: nls__timezone-drop-button-selected-label, sd_dropdown-content: nls__timezone-drop-content, sd_dropdown_label: nls__timezone-drop-label" }, h("span", { key: 'f48e3c11a1981e32b75f5425570db0b584db7f51', slot: "select-icon" }, h("globe-icon", { key: '6b6721c8d88d715dbcb52d2e2750c22015ac252c', width: "20", height: "20" })))), h("div", { key: 'fe652536d637774336cad11a65bba7bfd8636972', class: {
82
+ }, part: "nls__timezone" }, h("select-dropdown", { key: '0b1d65ece722a490eb1dcfc5918e6b88405ec448', name: "timezone", options: timezoneOptions, defaultSelectedOption: timezoneOptions.find(op => op.value == this.selectedTimezone), exportparts: "sd_dropdown: nls__timezone-dropdown, sd_dropdown-button: nls__timezone-drop-button, sd_dropdown-button-selected-label: nls__timezone-drop-button-selected-label, sd_dropdown-content: nls__timezone-drop-content, sd_dropdown_label: nls__timezone-drop-label" }, h("span", { key: '639c77c9556d6fba35369fcdb1defb7992e56204', slot: "select-icon" }, h("globe-icon", { key: 'c6e230b1c1641079f41491a009103ddd2b460dd9', width: "20", height: "20" })))), h("div", { key: '01c9781c4b5f1af16a9bbfa213f13e716eb4fea9', class: {
71
83
  'select-wrapper': true,
72
84
  'language': true,
73
- }, part: "nls__language" }, h("select-dropdown", { key: 'f83f8dbf84878fb1670d4a6f59b045c111420ce1', name: "language", options: languageOptions, defaultSelectedOption: languageOptions.find(lang => lang.value == this.selectedLanguage), exportparts: "sd_dropdown: nls__language-dropdown, sd_dropdown-button: nls__language-drop-button, sd_dropdown-content: nls__language-drop-content, sd_dropdown_label: nls__language-drop-label" }, h("span", { key: '3d66833265053e81c9333b5d36ae822ed3a17878', slot: "select-icon" }, h("translate-icon", { key: '30121c5733873930e7e1e3bdaedf11bd2f258139', width: "20", height: "20" })))))));
85
+ }, part: "nls__language" }, h("select-dropdown", { key: 'fbff35839698dafd06e2cd1b50db27e354c4b9af', name: "language", options: languageOptions, defaultSelectedOption: languageOptions.find(lang => lang.value == this.selectedLanguage), exportparts: "sd_dropdown: nls__language-dropdown, sd_dropdown-button: nls__language-drop-button, sd_dropdown-content: nls__language-drop-content, sd_dropdown_label: nls__language-drop-label" }, h("span", { key: '34ac931dac3ef169b0a6cd778a8a4d6566e8d012', slot: "select-icon" }, h("translate-icon", { key: 'd51f2d743bb8ab718f7a7c6b45d62d96fe11f666', width: "20", height: "20" })))))));
74
86
  }
75
87
  static get is() { return "nylas-locale-switch"; }
76
88
  static get encapsulation() { return "shadow"; }
@@ -86,6 +98,26 @@ export class NylasLocaleSwitch {
86
98
  }
87
99
  static get properties() {
88
100
  return {
101
+ "themeConfig": {
102
+ "type": "any",
103
+ "mutable": false,
104
+ "complexType": {
105
+ "original": "any",
106
+ "resolved": "any",
107
+ "references": {}
108
+ },
109
+ "required": false,
110
+ "optional": true,
111
+ "docs": {
112
+ "tags": [{
113
+ "name": "standalone",
114
+ "text": "The theme configuration."
115
+ }],
116
+ "text": ""
117
+ },
118
+ "attribute": "theme-config",
119
+ "reflect": false
120
+ },
89
121
  "selectedTimezone": {
90
122
  "type": "string",
91
123
  "mutable": true,
@@ -157,6 +189,7 @@ export class NylasLocaleSwitch {
157
189
  }
158
190
  }];
159
191
  }
192
+ static get elementRef() { return "host"; }
160
193
  static get listeners() {
161
194
  return [{
162
195
  "name": "nylasFormDropdownChanged",
@@ -184,6 +217,7 @@ __decorate([
184
217
  nylasSchedulerConnector.scheduler.selectLanguage(event.detail);
185
218
  },
186
219
  },
220
+ localPropsToProp: new Map([['themeConfig', 'themeConfig']]),
187
221
  fireRegisterEvent: true,
188
222
  }),
189
223
  __metadata("design:type", Function),
@@ -1 +1 @@
1
- {"version":3,"file":"nylas-locale-switch.js","sourceRoot":"","sources":["../../../../src/components/scheduler/nylas-locale-switch/nylas-locale-switch.tsx"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAgB,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAGtF,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAuBzD,MAAM,OAAO,iBAAiB;;gCAIwB,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,QAAQ;gCAKhD,SAAS,CAAC,QAAQ;;IAYtE,iBAAiB,KAAI,CAAC;IAEtB,oBAAoB,KAAI,CAAC;IAEzB,iBAAiB,KAAI,CAAC;IAMd,cAAc,CAAC,QAAgB;QACrC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;QACjC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;IAMO,cAAc,CAAC,QAAgB;QACrC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;QACjC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;IAGD,+BAA+B,CAC7B,KAGE;QAEF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC;QACrC,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;aAAM,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YAC/B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,oBAAoB,CAAC,QAAgB;QACnC,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC3C,OAAO,CACL,YACE,KAAK,EAAC,gBAAgB,EACtB,KAAK,EAAE;gBACL,OAAO,EAAE,MAAM;gBACf,UAAU,EAAE,QAAQ;gBACpB,cAAc,EAAE,eAAe;gBAC/B,KAAK,EAAE,wBAAwB;aAChC;YAEA,YAAY,CAAC,QAAQ,CAAC;YAAE,GAAG;YAC5B,YACE,KAAK,EAAC,iBAAiB,EACvB,KAAK,EAAE;oBACL,QAAQ,EAAE,MAAM;oBAChB,UAAU,EAAE,KAAK;oBACjB,KAAK,EAAE,uBAAuB;iBAC/B,IAEA,MAAM,CACF,CACF,CACR,CAAC;IACJ,CAAC;IAoBD,MAAM;QACJ,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5D,SAAS,EAAE,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC;YACzC,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC;YACxB,KAAK,EAAE,GAAG;SACX,CAAC,CAAC,CAAC;QACJ,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5D,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC;YACxB,KAAK,EAAE,GAAG;SACX,CAAC,CAAC,CAAC;QAEJ,OAAO,CACL,EAAC,IAAI;YACH,4DAAK,KAAK,EAAC,qBAAqB,EAAC,IAAI,EAAC,KAAK;gBACzC,4DACE,KAAK,EAAE;wBACL,gBAAgB,EAAE,IAAI;wBACtB,UAAU,EAAE,IAAI;qBACjB,EACD,IAAI,EAAC,eAAe;oBAEpB,wEACE,IAAI,EAAC,UAAU,EACf,OAAO,EAAE,eAAe,EACxB,qBAAqB,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,IAAI,CAAC,gBAAgB,CAAC,EACpF,WAAW,EAAC,+PAA+P;wBAE3Q,6DAAM,IAAI,EAAC,aAAa;4BACtB,mEAAY,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,GAAG,CAChC,CACS,CACd;gBACN,4DACE,KAAK,EAAE;wBACL,gBAAgB,EAAE,IAAI;wBACtB,UAAU,EAAE,IAAI;qBACjB,EACD,IAAI,EAAC,eAAe;oBAEpB,wEACE,IAAI,EAAC,UAAU,EACf,OAAO,EAAE,eAAe,EACxB,qBAAqB,EAAE,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,gBAAgB,CAAC,EACxF,WAAW,EAAC,kLAAkL;wBAE9L,6DAAM,IAAI,EAAC,aAAa;4BACtB,uEAAgB,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,GAAG,CACpC,CACS,CACd,CACF,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF;AAtDC;IAlBC,iBAAiB,CAA4F;QAC5G,IAAI,EAAE,qBAAqB;QAC3B,YAAY,EAAE,IAAI,GAAG,CAAC;YACpB,CAAC,4BAA4B,EAAE,kBAAkB,CAAC;YAClD,CAAC,4BAA4B,EAAE,kBAAkB,CAAC;SACnD,CAAC;QACF,YAAY,EAAE;YACZ,eAAe,EAAE,KAAK,EAAE,KAA0B,EAAE,uBAAgD,EAAE,EAAE;gBACtG,KAAK,CAAC,qBAAqB,EAAE,iBAAiB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC9D,uBAAuB,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACjE,CAAC;YACD,eAAe,EAAE,KAAK,EAAE,KAA0B,EAAE,uBAAgD,EAAE,EAAE;gBACtG,KAAK,CAAC,qBAAqB,EAAE,iBAAiB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC9D,uBAAuB,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACjE,CAAC;SACF;QACD,iBAAiB,EAAE,IAAI;KACxB,CAAC;;;;+CAsDD","sourcesContent":["import { LANGUAGE_MAP, TIMEZONE_MAP } from '@/common/constants';\nimport { RegisterComponent } from '@/common/register-component';\nimport { Component, Event, EventEmitter, Host, Listen, Prop, h } from '@stencil/core';\nimport { NylasSchedulerConnector } from '../../../components';\nimport { NylasScheduling } from '../nylas-scheduling/nylas-scheduling';\nimport { debug, getTimezoneOffset } from '@/utils/utils';\n\n/**\n * The `nylas-locale-switch` component is a UI component that allows users to select a timezone and language.\n * @part nls - The locale switch container\n * @part nls__timezone - The timezone select container\n * @part nls__timezone-dropdown - The timezone dropdown\n * @part nls__timezone-drop-button - The timezone dropdown button\n * @part nls__timezone-drop-button-selected-label - The timezone dropdown button selected label\n * @part nls__timezone-drop-content - The timezone dropdown content\n * @part nls__timezone-drop-label - The timezone dropdown label\n * @part nls__language - The language select container\n * @part nls__language-dropdown - The language dropdown\n * @part nls__language-drop-button - The language dropdown button\n * @part nls__language-drop-content - The language dropdown content\n * @part nls__language-drop-label - The language dropdown label\n *\n */\n@Component({\n tag: 'nylas-locale-switch',\n styleUrl: 'nylas-locale-switch.scss',\n shadow: true,\n})\nexport class NylasLocaleSwitch {\n /**\n * The selected timezone.\n */\n @Prop({ mutable: true }) selectedTimezone: string = Intl.DateTimeFormat().resolvedOptions().timeZone;\n\n /**\n * The selected language.\n */\n @Prop({ mutable: true }) selectedLanguage: string = navigator.language;\n\n /**\n * This event is fired when the timezone is changed.\n */\n @Event() timezoneChanged!: EventEmitter<string>;\n\n /**\n * This event is fired when the language is changed.\n */\n @Event() languageChanged!: EventEmitter<string>;\n\n connectedCallback() {}\n\n disconnectedCallback() {}\n\n componentWillLoad() {}\n\n /**\n * Change the timezone.\n * @param timezone The timezone to select.\n */\n private changeTimezone(timezone: string) {\n this.selectedTimezone = timezone;\n this.timezoneChanged.emit(timezone);\n }\n\n /**\n * Change the language.\n * @param language The language to select.\n */\n private changeLanguage(language: string) {\n this.selectedLanguage = language;\n this.languageChanged.emit(language);\n }\n\n @Listen('nylasFormDropdownChanged')\n nylasFormDropdownChangedHandler(\n event: CustomEvent<{\n value: string;\n name: string;\n }>,\n ) {\n const { name, value } = event.detail;\n if (name === 'timezone') {\n this.changeTimezone(value);\n } else if (name === 'language') {\n this.changeLanguage(value);\n }\n }\n\n getTimezoneLabelHTML(timezone: string) {\n const offset = getTimezoneOffset(timezone);\n return (\n <span\n class=\"timezone-label\"\n style={{\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n width: '-webkit-fill-available',\n }}\n >\n {TIMEZONE_MAP[timezone]}{' '}\n <span\n class=\"timezone-offset\"\n style={{\n fontSize: '14px',\n fontWeight: '400',\n color: 'var(--nylas-base-500)',\n }}\n >\n {offset}\n </span>\n </span>\n );\n }\n\n @RegisterComponent<NylasLocaleSwitch, NylasSchedulerConnector, Exclude<NylasScheduling['stores'], undefined>>({\n name: 'nylas-locale-switch',\n stateToProps: new Map([\n ['scheduler.selectedLanguage', 'selectedLanguage'],\n ['scheduler.selectedTimezone', 'selectedTimezone'],\n ]),\n eventToProps: {\n timezoneChanged: async (event: CustomEvent<string>, nylasSchedulerConnector: NylasSchedulerConnector) => {\n debug('nylas-locale-switch', 'timezoneChanged', event.detail);\n nylasSchedulerConnector.scheduler.selectTimezone(event.detail);\n },\n languageChanged: async (event: CustomEvent<string>, nylasSchedulerConnector: NylasSchedulerConnector) => {\n debug('nylas-locale-switch', 'languageChanged', event.detail);\n nylasSchedulerConnector.scheduler.selectLanguage(event.detail);\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n const timezoneOptions = Object.keys(TIMEZONE_MAP).map(key => ({\n labelHTML: this.getTimezoneLabelHTML(key),\n label: TIMEZONE_MAP[key],\n value: key,\n }));\n const languageOptions = Object.keys(LANGUAGE_MAP).map(key => ({\n label: LANGUAGE_MAP[key],\n value: key,\n }));\n\n return (\n <Host>\n <div class=\"nylas-locale-switch\" part=\"nls\">\n <div\n class={{\n 'select-wrapper': true,\n 'timezone': true,\n }}\n part=\"nls__timezone\"\n >\n <select-dropdown\n name=\"timezone\"\n options={timezoneOptions}\n defaultSelectedOption={timezoneOptions.find(op => op.value == this.selectedTimezone)}\n exportparts=\"sd_dropdown: nls__timezone-dropdown, sd_dropdown-button: nls__timezone-drop-button, sd_dropdown-button-selected-label: nls__timezone-drop-button-selected-label, sd_dropdown-content: nls__timezone-drop-content, sd_dropdown_label: nls__timezone-drop-label\"\n >\n <span slot=\"select-icon\">\n <globe-icon width=\"20\" height=\"20\" />\n </span>\n </select-dropdown>\n </div>\n <div\n class={{\n 'select-wrapper': true,\n 'language': true,\n }}\n part=\"nls__language\"\n >\n <select-dropdown\n name=\"language\"\n options={languageOptions}\n defaultSelectedOption={languageOptions.find(lang => lang.value == this.selectedLanguage)}\n exportparts=\"sd_dropdown: nls__language-dropdown, sd_dropdown-button: nls__language-drop-button, sd_dropdown-content: nls__language-drop-content, sd_dropdown_label: nls__language-drop-label\"\n >\n <span slot=\"select-icon\">\n <translate-icon width=\"20\" height=\"20\" />\n </span>\n </select-dropdown>\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"nylas-locale-switch.js","sourceRoot":"","sources":["../../../../src/components/scheduler/nylas-locale-switch/nylas-locale-switch.tsx"],"names":[],"mappings":"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","sourcesContent":["import { LANGUAGE_MAP, TIMEZONE_MAP } from '@/common/constants';\nimport { RegisterComponent } from '@/common/register-component';\nimport { Component, Element, Event, EventEmitter, Host, Listen, Prop, h } from '@stencil/core';\nimport { NylasSchedulerConnector } from '../../../components';\nimport { NylasScheduling } from '../nylas-scheduling/nylas-scheduling';\nimport { debug, getTimezoneOffset } from '@/utils/utils';\nimport { ThemeConfig } from '@nylas/core';\n\n/**\n * The `nylas-locale-switch` component is a UI component that allows users to select a timezone and language.\n * @part nls - The locale switch container\n * @part nls__timezone - The timezone select container\n * @part nls__timezone-dropdown - The timezone dropdown\n * @part nls__timezone-drop-button - The timezone dropdown button\n * @part nls__timezone-drop-button-selected-label - The timezone dropdown button selected label\n * @part nls__timezone-drop-content - The timezone dropdown content\n * @part nls__timezone-drop-label - The timezone dropdown label\n * @part nls__language - The language select container\n * @part nls__language-dropdown - The language dropdown\n * @part nls__language-drop-button - The language dropdown button\n * @part nls__language-drop-content - The language dropdown content\n * @part nls__language-drop-label - The language dropdown label\n *\n */\n@Component({\n tag: 'nylas-locale-switch',\n styleUrl: 'nylas-locale-switch.scss',\n shadow: true,\n})\nexport class NylasLocaleSwitch {\n /**\n * The host element.\n * Used to manage the host element of the provider.\n */\n @Element() private host!: HTMLNylasLocaleSwitchElement;\n /**\n * @standalone\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: any;\n\n /**\n * The selected timezone.\n */\n @Prop({ mutable: true }) selectedTimezone: string = Intl.DateTimeFormat().resolvedOptions().timeZone;\n\n /**\n * The selected language.\n */\n @Prop({ mutable: true }) selectedLanguage: string = navigator.language;\n\n /**\n * This event is fired when the timezone is changed.\n */\n @Event() timezoneChanged!: EventEmitter<string>;\n\n /**\n * This event is fired when the language is changed.\n */\n @Event() languageChanged!: EventEmitter<string>;\n\n connectedCallback() {}\n\n disconnectedCallback() {}\n\n componentWillLoad() {}\n\n componentDidLoad() {\n debug(`[nylas-locale-switch] Component did load`);\n this.applyThemeConfig(this.themeConfig);\n }\n\n applyThemeConfig(themeConfig?: ThemeConfig) {\n if (themeConfig) {\n for (const [key, value] of Object.entries(themeConfig)) {\n this.host.style.setProperty(`${key}`, value);\n }\n }\n }\n\n /**\n * Change the timezone.\n * @param timezone The timezone to select.\n */\n private changeTimezone(timezone: string) {\n this.selectedTimezone = timezone;\n this.timezoneChanged.emit(timezone);\n }\n\n /**\n * Change the language.\n * @param language The language to select.\n */\n private changeLanguage(language: string) {\n this.selectedLanguage = language;\n this.languageChanged.emit(language);\n }\n\n @Listen('nylasFormDropdownChanged')\n nylasFormDropdownChangedHandler(\n event: CustomEvent<{\n value: string;\n name: string;\n }>,\n ) {\n const { name, value } = event.detail;\n if (name === 'timezone') {\n this.changeTimezone(value);\n } else if (name === 'language') {\n this.changeLanguage(value);\n }\n }\n\n getTimezoneLabelHTML(timezone: string) {\n const offset = getTimezoneOffset(timezone);\n return (\n <span\n class=\"timezone-label\"\n style={{\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n width: '-webkit-fill-available',\n }}\n >\n {TIMEZONE_MAP[timezone]}{' '}\n <span\n class=\"timezone-offset\"\n style={{\n fontSize: '14px',\n fontWeight: '400',\n color: 'var(--nylas-base-500)',\n }}\n >\n {offset}\n </span>\n </span>\n );\n }\n\n @RegisterComponent<NylasLocaleSwitch, NylasSchedulerConnector, Exclude<NylasScheduling['stores'], undefined>>({\n name: 'nylas-locale-switch',\n stateToProps: new Map([\n ['scheduler.selectedLanguage', 'selectedLanguage'],\n ['scheduler.selectedTimezone', 'selectedTimezone'],\n ]),\n eventToProps: {\n timezoneChanged: async (event: CustomEvent<string>, nylasSchedulerConnector: NylasSchedulerConnector) => {\n debug('nylas-locale-switch', 'timezoneChanged', event.detail);\n nylasSchedulerConnector.scheduler.selectTimezone(event.detail);\n },\n languageChanged: async (event: CustomEvent<string>, nylasSchedulerConnector: NylasSchedulerConnector) => {\n debug('nylas-locale-switch', 'languageChanged', event.detail);\n nylasSchedulerConnector.scheduler.selectLanguage(event.detail);\n },\n },\n localPropsToProp: new Map([['themeConfig', 'themeConfig']]),\n fireRegisterEvent: true,\n })\n render() {\n const timezoneOptions = Object.keys(TIMEZONE_MAP).map(key => ({\n labelHTML: this.getTimezoneLabelHTML(key),\n label: TIMEZONE_MAP[key],\n value: key,\n }));\n const languageOptions = Object.keys(LANGUAGE_MAP).map(key => ({\n label: LANGUAGE_MAP[key],\n value: key,\n }));\n\n return (\n <Host>\n <div class=\"nylas-locale-switch\" part=\"nls\">\n <div\n class={{\n 'select-wrapper': true,\n 'timezone': true,\n }}\n part=\"nls__timezone\"\n >\n <select-dropdown\n name=\"timezone\"\n options={timezoneOptions}\n defaultSelectedOption={timezoneOptions.find(op => op.value == this.selectedTimezone)}\n exportparts=\"sd_dropdown: nls__timezone-dropdown, sd_dropdown-button: nls__timezone-drop-button, sd_dropdown-button-selected-label: nls__timezone-drop-button-selected-label, sd_dropdown-content: nls__timezone-drop-content, sd_dropdown_label: nls__timezone-drop-label\"\n >\n <span slot=\"select-icon\">\n <globe-icon width=\"20\" height=\"20\" />\n </span>\n </select-dropdown>\n </div>\n <div\n class={{\n 'select-wrapper': true,\n 'language': true,\n }}\n part=\"nls__language\"\n >\n <select-dropdown\n name=\"language\"\n options={languageOptions}\n defaultSelectedOption={languageOptions.find(lang => lang.value == this.selectedLanguage)}\n exportparts=\"sd_dropdown: nls__language-dropdown, sd_dropdown-button: nls__language-drop-button, sd_dropdown-content: nls__language-drop-content, sd_dropdown_label: nls__language-drop-label\"\n >\n <span slot=\"select-icon\">\n <translate-icon width=\"20\" height=\"20\" />\n </span>\n </select-dropdown>\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -1,28 +1,5 @@
1
1
  :host {
2
2
  display: block;
3
- --nylas-primary: #2563eb;
4
- --nylas-error: #cc4841;
5
- --nylas-error-pressed: #992222;
6
- --nylas-wraning: #f06c00;
7
- --nylas-success: #16a392;
8
- --nylas-info: #2b8fc2;
9
- --nylas-base-0: #ffffff;
10
- --nylas-base-25: #fcfcfd;
11
- --nylas-base-50: #f8f9fc;
12
- --nylas-base-100: #eaecf5;
13
- --nylas-base-200: #d5d9eb;
14
- --nylas-base-300: #b3b8d8;
15
- --nylas-base-400: #717bbc;
16
- --nylas-base-500: #4e5ba6;
17
- --nylas-base-600: #3e4784;
18
- --nylas-base-700: #263f72;
19
- --nylas-base-800: #293056;
20
- --nylas-base-900: #101323;
21
- --nylas-base-950: #0e101b;
22
- --nylas-border-radius: 0.25rem;
23
- --nylas-border-radius-2x: 0.5rem;
24
- --nylas-border-radius-3x: 0.75rem;
25
- --nylas-font-family: "Inter", sans-serif;
26
3
  }
27
4
 
28
5
  .event-card-wrapper {
@@ -35,6 +35,7 @@ export class NylasOrganizerConfirmationCard {
35
35
  };
36
36
  this.configSettings = undefined;
37
37
  this.isLoading = undefined;
38
+ this.themeConfig = undefined;
38
39
  this.organizerConfirmationBookingId = undefined;
39
40
  this.selectedLanguage = navigator.language;
40
41
  this.action = null;
@@ -46,12 +47,20 @@ export class NylasOrganizerConfirmationCard {
46
47
  }
47
48
  async componentDidLoad() {
48
49
  debug(`[nylas-organizer-confirmation-card] Component did load`);
50
+ this.applyThemeConfig(this.themeConfig);
51
+ }
52
+ applyThemeConfig(themeConfig) {
53
+ if (themeConfig) {
54
+ for (const [key, value] of Object.entries(themeConfig)) {
55
+ this.host.style.setProperty(`${key}`, value);
56
+ }
57
+ }
49
58
  }
50
59
  async resetAction() {
51
60
  this.action = null;
52
61
  }
53
62
  render() {
54
- return (h(Host, { key: 'c722e5ad0c458060b988e0a49fde079d8258125e', part: "nmcc" }, h("div", { key: '758b60b6834f7150a30434538707f321754f9f8b', class: "event-card-wrapper", part: "nmccc__card" }, h("div", { key: '675e8ab2297fefe3840eb06b536706e216cd525a', class: "calendar-icon" }, h("calendar-check-icon", { key: '56768b41e1abebb836619f1da25fdba7b0b32203' })), h("div", { key: 'a026a0daa62a4bf5054682a93c19f296b4761d31', class: "booked-event-header" }, h("h2", { key: '38ba7f91abcde16f459f50a3638245e2c994f4f5', slot: "card-title", part: "nmcc__title" }, !!this.organizerConfirmationBookingId && `${i18next.t('bookingPendingTitle')}!`)), h("div", { key: '4ca2d5bd6cf71f624bb2eed64c0f8c44089adc0a', class: "manage-booking-description" }, h("p", { key: '6584d4ac6e59c6b4156f886a6903d05dcef37c3a' }, i18next.t('bookingPendingnDescription'))), h("div", { key: '805a279cbff4f92eb91f150146a6d5688945ffe6', class: {
63
+ return (h(Host, { key: 'd9ca934419385dcf0917c80e70c3efb3d7b18a02', part: "nmcc" }, h("div", { key: 'b5b0a918984758dbf80f3218610537bfbec693e4', class: "event-card-wrapper", part: "nmccc__card" }, h("div", { key: 'cd26edd3af7815576337f88b5a76ee1cc9335ec0', class: "calendar-icon" }, h("calendar-check-icon", { key: '3cf29fd30584c2fac6a4e1eecce9e55b8c4beb55' })), h("div", { key: 'ecc73f4ceff1887502714daa5034b42754ca1f46', class: "booked-event-header" }, h("h2", { key: '2b3233840408bba3fcb29b631e6329148fdeaeaf', slot: "card-title", part: "nmcc__title" }, !!this.organizerConfirmationBookingId && `${i18next.t('bookingPendingTitle')}!`)), h("div", { key: '7e85b7a9d30895a2bf319185cb3b5b6856894638', class: "manage-booking-description" }, h("p", { key: '644084700e961abcd2b910dcb0631ebfcfbc2a1c' }, i18next.t('bookingPendingnDescription'))), h("div", { key: '67a549c866b7ba2137bed4ab4af2da4a9c989f0b', class: {
55
64
  'footer': true,
56
65
  'no-footer': this.configSettings?.scheduler?.hide_cancellation_options && this.configSettings?.scheduler?.hide_rescheduling_options,
57
66
  'no-template-cols': this.configSettings?.scheduler?.hide_cancellation_options || this.configSettings?.scheduler?.hide_rescheduling_options,
@@ -117,6 +126,26 @@ export class NylasOrganizerConfirmationCard {
117
126
  "attribute": "is-loading",
118
127
  "reflect": false
119
128
  },
129
+ "themeConfig": {
130
+ "type": "any",
131
+ "mutable": false,
132
+ "complexType": {
133
+ "original": "any",
134
+ "resolved": "any",
135
+ "references": {}
136
+ },
137
+ "required": false,
138
+ "optional": true,
139
+ "docs": {
140
+ "tags": [{
141
+ "name": "standalone",
142
+ "text": "The theme configuration."
143
+ }],
144
+ "text": ""
145
+ },
146
+ "attribute": "theme-config",
147
+ "reflect": false
148
+ },
120
149
  "organizerConfirmationBookingId": {
121
150
  "type": "string",
122
151
  "mutable": false,
@@ -277,6 +306,7 @@ __decorate([
277
306
  await host.resetAction();
278
307
  },
279
308
  },
309
+ localPropsToProp: new Map([['themeConfig', 'themeConfig']]),
280
310
  fireRegisterEvent: true,
281
311
  }),
282
312
  __metadata("design:type", Function),
@@ -1 +1 @@
1
- {"version":3,"file":"nylas-organizer-confirmation-card.js","sourceRoot":"","sources":["../../../../src/components/scheduler/nylas-organizer-confirmation-card/nylas-organizer-confirmation-card.tsx"],"names":[],"mappings":"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","sourcesContent":["import { RegisterComponent } from '@/common/register-component';\nimport { Component, Element, EventEmitter, h, Host, Method, Prop, State } from '@stencil/core';\nimport { ConfigSettings, NylasSchedulerConnector } from '../../..';\nimport { NylasScheduling } from '../nylas-scheduling/nylas-scheduling';\nimport { debug } from '@/utils/utils';\nimport { Event } from '@stencil/core';\nimport { NylasSchedulerErrorResponse } from '@nylas/core';\nimport i18next from '@/utils/i18n';\n\n/**\n * The `nylas-organizer-confirmation-card` component is a UI component that displays the booked event card.\n *\n * @part nmcc - The booked event card host.\n * @part nmcc__card - The booked event card.\n * @part nmcc__title - The title of the booked event card.\n * @part nmcc__description - The description of the booked event card.\n * @part nmcc__button-outline - The cancel & reschedule button CTA.\n * @part nmcc__cancel-cta - The cancel button CTA.\n * @part nmcc__reschedule-cta - The reschedule button CTA.\n */\n@Component({\n tag: 'nylas-organizer-confirmation-card',\n styleUrl: 'nylas-organizer-confirmation-card.scss',\n shadow: true,\n})\nexport class NylasOrganizerConfirmationCard {\n /**\n * The host element.\n */\n @Element() host!: HTMLNylasOrganizerConfirmationCardElement;\n\n /**\n * @standalone\n * The config settings for the scheduler.\n */\n @Prop() readonly configSettings?: ConfigSettings;\n\n /**\n * @standalone\n * The loading state prop. Used to display loading state when fetching availability.\n */\n @Prop() readonly isLoading?: boolean;\n\n /**\n * Booking flow type.\n */\n @Prop() readonly organizerConfirmationBookingId?: string;\n\n /**\n * The selected language.\n */\n @Prop({ attribute: 'selected-language' }) readonly selectedLanguage: string = navigator.language;\n\n /**\n * The state to identify which action is being performed.\n */\n @State() action: 'confirm' | 'reject' | null = null;\n\n /**\n * Reject booking button clicked event.\n */\n @Event() readonly rejectBookingButtonClicked!: EventEmitter<{ bookingId: string; host: HTMLNylasOrganizerConfirmationCardElement }>;\n\n /**\n * Reschedule button clicked event.\n * */\n @Event() readonly confirmBookingButtonClicked!: EventEmitter<{\n bookingId: string;\n host: HTMLNylasOrganizerConfirmationCardElement;\n errorHandler?: (error: NylasSchedulerErrorResponse) => void;\n }>;\n\n /**\n * This event is fired when an error occurs while rescheduling the booking.\n */\n @Event() readonly confirmBookingError!: EventEmitter<NylasSchedulerErrorResponse>;\n\n connectedCallback() {}\n\n disconnectedCallback() {}\n\n async componentWillLoad() {\n debug(`[nylas-organizer-confirmation-card] Component will load`);\n }\n\n async componentDidLoad() {\n debug(`[nylas-organizer-confirmation-card] Component did load`);\n }\n\n private handleConfirmBookingButtonClicked = () => {\n this.action = 'confirm';\n const errorHandler = (error: NylasSchedulerErrorResponse) => {\n this.confirmBookingError.emit(error);\n };\n if (this.organizerConfirmationBookingId && !this.isLoading) {\n this.confirmBookingButtonClicked.emit({ bookingId: this.organizerConfirmationBookingId, host: this.host, errorHandler });\n }\n };\n\n private handleRejectBookingButtonClicked = () => {\n this.action = 'reject';\n if (this.organizerConfirmationBookingId && !this.isLoading) {\n this.rejectBookingButtonClicked.emit({ bookingId: this.organizerConfirmationBookingId, host: this.host });\n }\n };\n\n @Method()\n async resetAction() {\n this.action = null;\n }\n\n @RegisterComponent<NylasOrganizerConfirmationCard, NylasSchedulerConnector, Exclude<NylasScheduling['stores'], undefined>>({\n name: 'nylas-organizer-confirmation-card',\n stateToProps: new Map([\n ['scheduler.organizerConfirmationBookingId', 'organizerConfirmationBookingId'],\n ['scheduler.configSettings', 'configSettings'],\n ['scheduler.isLoading', 'isLoading'],\n ['scheduler.selectedLanguage', 'selectedLanguage'],\n ]),\n eventToProps: {\n rejectBookingButtonClicked: async (\n event: CustomEvent<{ bookingId: string; host: HTMLNylasOrganizerConfirmationCardElement }>,\n nylasSchedulerConnector: NylasSchedulerConnector,\n ) => {\n nylasSchedulerConnector.scheduler.setReject(event.detail.bookingId);\n },\n confirmBookingButtonClicked: async (\n event: CustomEvent<{ bookingId: string; host: HTMLNylasOrganizerConfirmationCardElement; errorHandler?: (error: NylasSchedulerErrorResponse) => void }>,\n nylasSchedulerConnector: NylasSchedulerConnector,\n ) => {\n const { host } = event.detail;\n const result = await nylasSchedulerConnector.scheduler.updateBooking({\n bookingId: event.detail.bookingId,\n status: 'confirmed',\n });\n const { errorHandler } = event.detail;\n if (errorHandler && (!result || 'error' in result)) {\n errorHandler(result);\n }\n await host.resetAction();\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host part=\"nmcc\">\n <div class=\"event-card-wrapper\" part=\"nmccc__card\">\n <div class=\"calendar-icon\">\n <calendar-check-icon />\n </div>\n <div class=\"booked-event-header\">\n <h2 slot=\"card-title\" part=\"nmcc__title\">\n {!!this.organizerConfirmationBookingId && `${i18next.t('bookingPendingTitle')}!`}\n </h2>\n </div>\n <div class=\"manage-booking-description\">\n <p>{i18next.t('bookingPendingnDescription')}</p>\n </div>\n <div\n class={{\n 'footer': true,\n 'no-footer': this.configSettings?.scheduler?.hide_cancellation_options && this.configSettings?.scheduler?.hide_rescheduling_options,\n 'no-template-cols': this.configSettings?.scheduler?.hide_cancellation_options || this.configSettings?.scheduler?.hide_rescheduling_options,\n }}\n >\n {!this.configSettings?.scheduler?.hide_cancellation_options && (\n <button-component\n variant={'destructive'}\n onClick={this.handleRejectBookingButtonClicked}\n isLoading={this.isLoading && this.action === 'reject'}\n part=\"nmcc__button-outline nmcc__cancel-cta\"\n >\n {`${i18next.t('rejectBookingButton')}`}\n </button-component>\n )}\n {!this.configSettings?.scheduler?.hide_rescheduling_options && (\n <button-component\n variant={'basic'}\n onClick={this.handleConfirmBookingButtonClicked}\n isLoading={this.isLoading && this.action === 'confirm'}\n part=\"nmcc__button-outline nmcc__reschedule-cta\"\n >\n {`${i18next.t('confirmBookingButton')}`}\n </button-component>\n )}\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"nylas-organizer-confirmation-card.js","sourceRoot":"","sources":["../../../../src/components/scheduler/nylas-organizer-confirmation-card/nylas-organizer-confirmation-card.tsx"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAgB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAG/F,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEtC,OAAO,OAAO,MAAM,cAAc,CAAC;AAkBnC,MAAM,OAAO,8BAA8B;;QA+EjC,sCAAiC,GAAG,GAAG,EAAE;YAC/C,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,MAAM,YAAY,GAAG,CAAC,KAAkC,EAAE,EAAE;gBAC1D,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvC,CAAC,CAAC;YACF,IAAI,IAAI,CAAC,8BAA8B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC3D,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,8BAA8B,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;YAC3H,CAAC;QACH,CAAC,CAAC;QAEM,qCAAgC,GAAG,GAAG,EAAE;YAC9C,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;YACvB,IAAI,IAAI,CAAC,8BAA8B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC3D,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,8BAA8B,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5G,CAAC;QACH,CAAC,CAAC;;;;;gCA9D4E,SAAS,CAAC,QAAQ;sBAKjD,IAAI;;IAqBnD,iBAAiB,KAAI,CAAC;IAEtB,oBAAoB,KAAI,CAAC;IAEzB,KAAK,CAAC,iBAAiB;QACrB,KAAK,CAAC,yDAAyD,CAAC,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAChE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC;IAED,gBAAgB,CAAC,WAAyB;QACxC,IAAI,WAAW,EAAE,CAAC;YAChB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;gBACvD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;IACH,CAAC;IAoBD,KAAK,CAAC,WAAW;QACf,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IAoCD,MAAM;QACJ,OAAO,CACL,EAAC,IAAI,qDAAC,IAAI,EAAC,MAAM;YACf,4DAAK,KAAK,EAAC,oBAAoB,EAAC,IAAI,EAAC,aAAa;gBAChD,4DAAK,KAAK,EAAC,eAAe;oBACxB,6EAAuB,CACnB;gBACN,4DAAK,KAAK,EAAC,qBAAqB;oBAC9B,2DAAI,IAAI,EAAC,YAAY,EAAC,IAAI,EAAC,aAAa,IACrC,CAAC,CAAC,IAAI,CAAC,8BAA8B,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAC7E,CACD;gBACN,4DAAK,KAAK,EAAC,4BAA4B;oBACrC,4DAAI,OAAO,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAK,CAC5C;gBACN,4DACE,KAAK,EAAE;wBACL,QAAQ,EAAE,IAAI;wBACd,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE,SAAS,EAAE,yBAAyB,IAAI,IAAI,CAAC,cAAc,EAAE,SAAS,EAAE,yBAAyB;wBACnI,kBAAkB,EAAE,IAAI,CAAC,cAAc,EAAE,SAAS,EAAE,yBAAyB,IAAI,IAAI,CAAC,cAAc,EAAE,SAAS,EAAE,yBAAyB;qBAC3I;oBAEA,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,EAAE,yBAAyB,IAAI,CAC7D,wBACE,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,IAAI,CAAC,gCAAgC,EAC9C,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EACrD,IAAI,EAAC,uCAAuC,IAE3C,GAAG,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,EAAE,CACrB,CACpB;oBACA,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,EAAE,yBAAyB,IAAI,CAC7D,wBACE,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,IAAI,CAAC,iCAAiC,EAC/C,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EACtD,IAAI,EAAC,2CAA2C,IAE/C,GAAG,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAC,EAAE,CACtB,CACpB,CACG,CACF,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF;AA/CC;IAlCC,iBAAiB,CAAyG;QACzH,IAAI,EAAE,mCAAmC;QACzC,YAAY,EAAE,IAAI,GAAG,CAAC;YACpB,CAAC,0CAA0C,EAAE,gCAAgC,CAAC;YAC9E,CAAC,0BAA0B,EAAE,gBAAgB,CAAC;YAC9C,CAAC,qBAAqB,EAAE,WAAW,CAAC;YACpC,CAAC,4BAA4B,EAAE,kBAAkB,CAAC;SACnD,CAAC;QACF,YAAY,EAAE;YACZ,0BAA0B,EAAE,KAAK,EAC/B,KAA0F,EAC1F,uBAAgD,EAChD,EAAE;gBACF,uBAAuB,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACtE,CAAC;YACD,2BAA2B,EAAE,KAAK,EAChC,KAAuJ,EACvJ,uBAAgD,EAChD,EAAE;gBACF,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC;gBAC9B,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,SAAS,CAAC,aAAa,CAAC;oBACnE,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS;oBACjC,MAAM,EAAE,WAAW;iBACpB,CAAC,CAAC;gBACH,MAAM,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC;gBACtC,IAAI,YAAY,IAAI,CAAC,CAAC,MAAM,IAAI,OAAO,IAAI,MAAM,CAAC,EAAE,CAAC;oBACnD,YAAY,CAAC,MAAM,CAAC,CAAC;gBACvB,CAAC;gBACD,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;YAC3B,CAAC;SACF;QACD,gBAAgB,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC;QAC3D,iBAAiB,EAAE,IAAI;KACxB,CAAC;;;;4DA+CD","sourcesContent":["import { RegisterComponent } from '@/common/register-component';\nimport { Component, Element, EventEmitter, h, Host, Method, Prop, State } from '@stencil/core';\nimport { ConfigSettings, NylasSchedulerConnector } from '../../..';\nimport { NylasScheduling } from '../nylas-scheduling/nylas-scheduling';\nimport { debug } from '@/utils/utils';\nimport { Event } from '@stencil/core';\nimport { NylasSchedulerErrorResponse, ThemeConfig } from '@nylas/core';\nimport i18next from '@/utils/i18n';\n\n/**\n * The `nylas-organizer-confirmation-card` component is a UI component that displays the booked event card.\n *\n * @part nmcc - The booked event card host.\n * @part nmcc__card - The booked event card.\n * @part nmcc__title - The title of the booked event card.\n * @part nmcc__description - The description of the booked event card.\n * @part nmcc__button-outline - The cancel & reschedule button CTA.\n * @part nmcc__cancel-cta - The cancel button CTA.\n * @part nmcc__reschedule-cta - The reschedule button CTA.\n */\n@Component({\n tag: 'nylas-organizer-confirmation-card',\n styleUrl: 'nylas-organizer-confirmation-card.scss',\n shadow: true,\n})\nexport class NylasOrganizerConfirmationCard {\n /**\n * The host element.\n */\n @Element() host!: HTMLNylasOrganizerConfirmationCardElement;\n\n /**\n * @standalone\n * The config settings for the scheduler.\n */\n @Prop() readonly configSettings?: ConfigSettings;\n\n /**\n * @standalone\n * The loading state prop. Used to display loading state when fetching availability.\n */\n @Prop() readonly isLoading?: boolean;\n\n /**\n * @standalone\n * The theme configuration.\n */\n @Prop({ attribute: 'theme-config' }) readonly themeConfig?: any;\n\n /**\n * Booking flow type.\n */\n @Prop() readonly organizerConfirmationBookingId?: string;\n\n /**\n * The selected language.\n */\n @Prop({ attribute: 'selected-language' }) readonly selectedLanguage: string = navigator.language;\n\n /**\n * The state to identify which action is being performed.\n */\n @State() action: 'confirm' | 'reject' | null = null;\n\n /**\n * Reject booking button clicked event.\n */\n @Event() readonly rejectBookingButtonClicked!: EventEmitter<{ bookingId: string; host: HTMLNylasOrganizerConfirmationCardElement }>;\n\n /**\n * Reschedule button clicked event.\n * */\n @Event() readonly confirmBookingButtonClicked!: EventEmitter<{\n bookingId: string;\n host: HTMLNylasOrganizerConfirmationCardElement;\n errorHandler?: (error: NylasSchedulerErrorResponse) => void;\n }>;\n\n /**\n * This event is fired when an error occurs while rescheduling the booking.\n */\n @Event() readonly confirmBookingError!: EventEmitter<NylasSchedulerErrorResponse>;\n\n connectedCallback() {}\n\n disconnectedCallback() {}\n\n async componentWillLoad() {\n debug(`[nylas-organizer-confirmation-card] Component will load`);\n }\n\n async componentDidLoad() {\n debug(`[nylas-organizer-confirmation-card] Component did load`);\n this.applyThemeConfig(this.themeConfig);\n }\n\n applyThemeConfig(themeConfig?: ThemeConfig) {\n if (themeConfig) {\n for (const [key, value] of Object.entries(themeConfig)) {\n this.host.style.setProperty(`${key}`, value);\n }\n }\n }\n\n private handleConfirmBookingButtonClicked = () => {\n this.action = 'confirm';\n const errorHandler = (error: NylasSchedulerErrorResponse) => {\n this.confirmBookingError.emit(error);\n };\n if (this.organizerConfirmationBookingId && !this.isLoading) {\n this.confirmBookingButtonClicked.emit({ bookingId: this.organizerConfirmationBookingId, host: this.host, errorHandler });\n }\n };\n\n private handleRejectBookingButtonClicked = () => {\n this.action = 'reject';\n if (this.organizerConfirmationBookingId && !this.isLoading) {\n this.rejectBookingButtonClicked.emit({ bookingId: this.organizerConfirmationBookingId, host: this.host });\n }\n };\n\n @Method()\n async resetAction() {\n this.action = null;\n }\n\n @RegisterComponent<NylasOrganizerConfirmationCard, NylasSchedulerConnector, Exclude<NylasScheduling['stores'], undefined>>({\n name: 'nylas-organizer-confirmation-card',\n stateToProps: new Map([\n ['scheduler.organizerConfirmationBookingId', 'organizerConfirmationBookingId'],\n ['scheduler.configSettings', 'configSettings'],\n ['scheduler.isLoading', 'isLoading'],\n ['scheduler.selectedLanguage', 'selectedLanguage'],\n ]),\n eventToProps: {\n rejectBookingButtonClicked: async (\n event: CustomEvent<{ bookingId: string; host: HTMLNylasOrganizerConfirmationCardElement }>,\n nylasSchedulerConnector: NylasSchedulerConnector,\n ) => {\n nylasSchedulerConnector.scheduler.setReject(event.detail.bookingId);\n },\n confirmBookingButtonClicked: async (\n event: CustomEvent<{ bookingId: string; host: HTMLNylasOrganizerConfirmationCardElement; errorHandler?: (error: NylasSchedulerErrorResponse) => void }>,\n nylasSchedulerConnector: NylasSchedulerConnector,\n ) => {\n const { host } = event.detail;\n const result = await nylasSchedulerConnector.scheduler.updateBooking({\n bookingId: event.detail.bookingId,\n status: 'confirmed',\n });\n const { errorHandler } = event.detail;\n if (errorHandler && (!result || 'error' in result)) {\n errorHandler(result);\n }\n await host.resetAction();\n },\n },\n localPropsToProp: new Map([['themeConfig', 'themeConfig']]),\n fireRegisterEvent: true,\n })\n render() {\n return (\n <Host part=\"nmcc\">\n <div class=\"event-card-wrapper\" part=\"nmccc__card\">\n <div class=\"calendar-icon\">\n <calendar-check-icon />\n </div>\n <div class=\"booked-event-header\">\n <h2 slot=\"card-title\" part=\"nmcc__title\">\n {!!this.organizerConfirmationBookingId && `${i18next.t('bookingPendingTitle')}!`}\n </h2>\n </div>\n <div class=\"manage-booking-description\">\n <p>{i18next.t('bookingPendingnDescription')}</p>\n </div>\n <div\n class={{\n 'footer': true,\n 'no-footer': this.configSettings?.scheduler?.hide_cancellation_options && this.configSettings?.scheduler?.hide_rescheduling_options,\n 'no-template-cols': this.configSettings?.scheduler?.hide_cancellation_options || this.configSettings?.scheduler?.hide_rescheduling_options,\n }}\n >\n {!this.configSettings?.scheduler?.hide_cancellation_options && (\n <button-component\n variant={'destructive'}\n onClick={this.handleRejectBookingButtonClicked}\n isLoading={this.isLoading && this.action === 'reject'}\n part=\"nmcc__button-outline nmcc__cancel-cta\"\n >\n {`${i18next.t('rejectBookingButton')}`}\n </button-component>\n )}\n {!this.configSettings?.scheduler?.hide_rescheduling_options && (\n <button-component\n variant={'basic'}\n onClick={this.handleConfirmBookingButtonClicked}\n isLoading={this.isLoading && this.action === 'confirm'}\n part=\"nmcc__button-outline nmcc__reschedule-cta\"\n >\n {`${i18next.t('confirmBookingButton')}`}\n </button-component>\n )}\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -430,7 +430,8 @@ export class NylasScheduling {
430
430
  }
431
431
  }
432
432
  }
433
- onFeedbackClick() {
433
+ onFeedbackClick(e) {
434
+ e.preventDefault();
434
435
  this.showFeedbackModal = true;
435
436
  }
436
437
  redirectToCustomUrl(url) {
@@ -456,16 +457,16 @@ export class NylasScheduling {
456
457
  ? capitalizeFirstLetter(selectedDate.toLocaleDateString(LANGUAGE_CODE_MAP[this.language], { dateStyle: 'full' }))
457
458
  : `${i18next.t('noDateSelected')}`;
458
459
  if (showDefaultScheduler && (cancelBookingId || rejectBookingId) && !cancelledEventInfo) {
459
- return (h(Host, null, h(SchedulerView, { nylasBranding: nylasBranding, isLoading: this.isLoading, showNotification: this.showNotification }, h("div", { class: "cancel-flow-page", part: "cancel-flow-page" }, h("nylas-cancel-booking-form", { selectedTimeslot: selectedTimeslot, cancelBookingId: cancelBookingId, rejectBookingId: rejectBookingId, exportparts: "ncbf, ncbf__icon, ncbf__title, ncbf__description, ncbf__reason-textarea, ncbf__button-cta, ncbf__button-outline, ncbf__card" }))), this.enableUserFeedback && (h("button-component", { id: "report-issue", variant: 'basic', onClick: () => this.onFeedbackClick() }, h("feedback-icon", null))), this.showFeedbackModal && h("nylas-feedback-form", null)));
460
+ return (h(Host, null, h(SchedulerView, { nylasBranding: nylasBranding, isLoading: this.isLoading, showNotification: this.showNotification }, h("div", { class: "cancel-flow-page", part: "cancel-flow-page" }, h("nylas-cancel-booking-form", { selectedTimeslot: selectedTimeslot, cancelBookingId: cancelBookingId, rejectBookingId: rejectBookingId, exportparts: "ncbf, ncbf__icon, ncbf__title, ncbf__description, ncbf__reason-textarea, ncbf__button-cta, ncbf__button-outline, ncbf__card" }))), this.enableUserFeedback && (h("button-component", { id: "report-issue", variant: 'basic', onClick: e => this.onFeedbackClick(e) }, h("feedback-icon", null))), this.showFeedbackModal && h("nylas-feedback-form", null)));
460
461
  }
461
462
  if (showDefaultScheduler && organizerConfirmationBookingId) {
462
- return (h(Host, null, h(SchedulerView, null, h("div", { class: "manual-confirmation-page", part: "manual-confirmation-page" }, h("nylas-organizer-confirmation-card", { organizerConfirmationBookingId: organizerConfirmationBookingId, exportparts: "nmcc, nmcc__title, nmcc__description, nmcc__button-cta, nmcc__button-outline" }))), this.enableUserFeedback && (h("button-component", { id: "report-issue", variant: 'basic', onClick: () => this.onFeedbackClick() }, h("feedback-icon", null))), this.showFeedbackModal && h("nylas-feedback-form", null)));
463
+ return (h(Host, null, h(SchedulerView, null, h("div", { class: "manual-confirmation-page", part: "manual-confirmation-page" }, h("nylas-organizer-confirmation-card", { organizerConfirmationBookingId: organizerConfirmationBookingId, exportparts: "nmcc, nmcc__title, nmcc__description, nmcc__button-cta, nmcc__button-outline" }))), this.enableUserFeedback && (h("button-component", { id: "report-issue", variant: 'basic', onClick: e => this.onFeedbackClick(e) }, h("feedback-icon", null))), this.showFeedbackModal && h("nylas-feedback-form", null)));
463
464
  }
464
465
  if (showDefaultScheduler && cancelledEventInfo) {
465
- return (h(Host, null, h(SchedulerView, { nylasBranding: nylasBranding, isLoading: this.isLoading, showNotification: this.showNotification }, h("div", { class: "cancelled-event-page", part: "cancelled-event-page" }, h("nylas-cancelled-event-card", { cancelledEventInfo: cancelledEventInfo, exportparts: "ncec, ncec__icon, ncec__title, ncec__description, ncec__button-outline, ncec__card" }))), this.enableUserFeedback && (h("button-component", { id: "report-issue", variant: 'basic', onClick: () => this.onFeedbackClick() }, h("feedback-icon", null))), this.showFeedbackModal && h("nylas-feedback-form", null)));
466
+ return (h(Host, null, h(SchedulerView, { nylasBranding: nylasBranding, isLoading: this.isLoading, showNotification: this.showNotification }, h("div", { class: "cancelled-event-page", part: "cancelled-event-page" }, h("nylas-cancelled-event-card", { cancelledEventInfo: cancelledEventInfo, exportparts: "ncec, ncec__icon, ncec__title, ncec__description, ncec__button-outline, ncec__card" }))), this.enableUserFeedback && (h("button-component", { id: "report-issue", variant: 'basic', onClick: e => this.onFeedbackClick(e) }, h("feedback-icon", null))), this.showFeedbackModal && h("nylas-feedback-form", null)));
466
467
  }
467
468
  if (showDefaultScheduler && confirmedEventInfo) {
468
- return (h(Host, null, h(SchedulerView, { nylasBranding: nylasBranding, isLoading: this.isLoading, showNotification: this.showNotification }, h("div", { class: "cancelled-event-page", part: "confirmed-event-page" }, h("nylas-confirmed-event-card", { confirmedEventInfo: confirmedEventInfo, exportparts: "ncec, ncec__icon, ncec__title, ncec__description, ncec__button-outline, ncec__card" }))), this.enableUserFeedback && (h("button-component", { id: "report-issue", variant: 'basic', onClick: () => this.onFeedbackClick() }, h("feedback-icon", null))), this.showFeedbackModal && h("nylas-feedback-form", null)));
469
+ return (h(Host, null, h(SchedulerView, { nylasBranding: nylasBranding, isLoading: this.isLoading, showNotification: this.showNotification }, h("div", { class: "cancelled-event-page", part: "confirmed-event-page" }, h("nylas-confirmed-event-card", { confirmedEventInfo: confirmedEventInfo, exportparts: "ncec, ncec__icon, ncec__title, ncec__description, ncec__button-outline, ncec__card" }))), this.enableUserFeedback && (h("button-component", { id: "report-issue", variant: 'basic', onClick: e => this.onFeedbackClick(e) }, h("feedback-icon", null))), this.showFeedbackModal && h("nylas-feedback-form", null)));
469
470
  }
470
471
  if (showDefaultScheduler && eventInfo && redirectUrl) {
471
472
  const recipient = this.bookingInfoConfirmed?.primaryParticipant;
@@ -499,14 +500,14 @@ export class NylasScheduling {
499
500
  return;
500
501
  }
501
502
  if (showDefaultScheduler && eventInfo) {
502
- return (h(Host, null, h(SchedulerView, { nylasBranding: nylasBranding, isLoading: this.isLoading, showNotification: this.showNotification }, h("div", { class: "booked-event-page", part: "booked-event-page" }, h("nylas-booked-event-card", { selectedTimeslot: selectedTimeslot, eventInfo: eventInfo, exportparts: "nbec, nbec__title, nbec__card, nbec__description, nbec__button-outline, nbec__cancel-cta, nbec__reschedule-cta" }))), this.enableUserFeedback && (h("button-component", { id: "report-issue", variant: 'basic', onClick: () => this.onFeedbackClick() }, h("feedback-icon", null))), this.showFeedbackModal && h("nylas-feedback-form", null)));
503
+ return (h(Host, null, h(SchedulerView, { nylasBranding: nylasBranding, isLoading: this.isLoading, showNotification: this.showNotification }, h("div", { class: "booked-event-page", part: "booked-event-page" }, h("nylas-booked-event-card", { selectedTimeslot: selectedTimeslot, eventInfo: eventInfo, exportparts: "nbec, nbec__title, nbec__card, nbec__description, nbec__button-outline, nbec__cancel-cta, nbec__reschedule-cta" }))), this.enableUserFeedback && (h("button-component", { id: "report-issue", variant: 'basic', onClick: e => this.onFeedbackClick(e) }, h("feedback-icon", null))), this.showFeedbackModal && h("nylas-feedback-form", null)));
503
504
  }
504
505
  if (showDefaultScheduler && (!eventInfo || !!rescheduleBookingId) && !showBookingForm) {
505
506
  const timeslotPickerCTALabel = this.host.querySelector('[slot="timeslot-picker-cta-label"]');
506
- return (h(Host, null, h(SchedulerView, { nylasBranding: nylasBranding, isLoading: this.isLoading, showNotification: this.showNotification }, rescheduleBookingId && h(MessageBanner, null, `${i18next.t('rescheduleTitle')}`), h("div", { class: "select-date-page", part: "select-date-page" }, h("div", { class: "left-panel" }, h("nylas-date-picker", { exportparts: "ndp, ndp__title, ndp__month-header, ndp__month-button, ndp__day, ndp__date, ndp__date--disabled, ndp__date--selected, ndp__date--current-day, ndp__date--current-month" }), h("nylas-locale-switch", { exportparts: "nls, nls__timezone, nls__timezone-dropdown, nls__timezone-drop-button, nls__timezone-drop-button-selected-label, nls__timezone-drop-content, nls__timezone-drop-label, nls__language, nls__language-dropdown, nls__language-drop-button, nls__language-drop-content, nls__language-drop-label" })), h("div", { class: `right-panel ${rescheduleBookingId ? 'reschedule' : ''}` }, h("h2", null, h("calendar-icon", null), h("span", { id: "selectedDate" }, this.selectedDateLabel)), h("nylas-timeslot-picker", { exportparts: "ntp, ntp__timeslot, ntp__timeslot--selected, ntp__button-primary" }, timeslotPickerCTALabel && (h("span", { slot: "timeslot-picker-cta-label" }, h("slot", { name: "timeslot-picker-cta-label" }))))))), this.enableUserFeedback && (h("button-component", { id: "report-issue", variant: 'basic', onClick: () => this.onFeedbackClick() }, h("feedback-icon", null))), this.showFeedbackModal && h("nylas-feedback-form", null)));
507
+ return (h(Host, null, h(SchedulerView, { nylasBranding: nylasBranding, isLoading: this.isLoading, showNotification: this.showNotification }, rescheduleBookingId && h(MessageBanner, null, `${i18next.t('rescheduleTitle')}`), h("div", { class: "select-date-page", part: "select-date-page" }, h("div", { class: "left-panel" }, h("nylas-date-picker", { exportparts: "ndp, ndp__title, ndp__month-header, ndp__month-button, ndp__day, ndp__date, ndp__date--disabled, ndp__date--selected, ndp__date--current-day, ndp__date--current-month" }), h("nylas-locale-switch", { exportparts: "nls, nls__timezone, nls__timezone-dropdown, nls__timezone-drop-button, nls__timezone-drop-button-selected-label, nls__timezone-drop-content, nls__timezone-drop-label, nls__language, nls__language-dropdown, nls__language-drop-button, nls__language-drop-content, nls__language-drop-label" })), h("div", { class: `right-panel ${rescheduleBookingId ? 'reschedule' : ''}` }, h("h2", null, h("calendar-icon", null), h("span", { id: "selectedDate" }, this.selectedDateLabel)), h("nylas-timeslot-picker", { exportparts: "ntp, ntp__timeslot, ntp__timeslot--selected, ntp__button-primary" }, timeslotPickerCTALabel && (h("span", { slot: "timeslot-picker-cta-label" }, h("slot", { name: "timeslot-picker-cta-label" }))))))), this.enableUserFeedback && (h("button-component", { id: "report-issue", variant: 'basic', onClick: e => this.onFeedbackClick(e) }, h("feedback-icon", null))), this.showFeedbackModal && h("nylas-feedback-form", null)));
507
508
  }
508
509
  if (showDefaultScheduler && !eventInfo && showBookingForm) {
509
- return (h(Host, null, h(SchedulerView, { nylasBranding: nylasBranding, isLoading: this.isLoading, showNotification: this.showNotification }, rescheduleBookingId && h(MessageBanner, null, `${i18next.t('rescheduleTitle')}`), h("div", { class: "additional-data-page", part: "additional-data-page" }, h("div", { class: "left-panel" }, h("div", { class: "wrapper" }, h("nylas-selected-event-card", { exportparts: "nsec, nsec__card, nsec__icon, nsec__date, nsec__time, nsec__timezone" }))), h("div", { class: `right-panel ${rescheduleBookingId ? 'reschedule' : ''}` }, h("nylas-booking-form", { exportparts: "nbf, nbf__input-textfield, nbf__button-ghost, nbf__button-outline, nbf__button-primary, nbf__input-wrapper, nbf__checkbox-component, nbf__radio-button-group, nbf__textarea-component, nbf__dropdown, nbf__dropdown-button, nbf__dropdown-content" })))), this.enableUserFeedback && (h("button-component", { id: "report-issue", variant: 'basic', onClick: () => this.onFeedbackClick() }, h("feedback-icon", null))), this.showFeedbackModal && h("nylas-feedback-form", null)));
510
+ return (h(Host, null, h(SchedulerView, { nylasBranding: nylasBranding, isLoading: this.isLoading, showNotification: this.showNotification }, rescheduleBookingId && h(MessageBanner, null, `${i18next.t('rescheduleTitle')}`), h("div", { class: "additional-data-page", part: "additional-data-page" }, h("div", { class: "left-panel" }, h("div", { class: "wrapper" }, h("nylas-selected-event-card", { exportparts: "nsec, nsec__card, nsec__icon, nsec__date, nsec__time, nsec__timezone" }))), h("div", { class: `right-panel ${rescheduleBookingId ? 'reschedule' : ''}` }, h("nylas-booking-form", { exportparts: "nbf, nbf__input-textfield, nbf__button-ghost, nbf__button-outline, nbf__button-primary, nbf__input-wrapper, nbf__checkbox-component, nbf__radio-button-group, nbf__textarea-component, nbf__dropdown, nbf__dropdown-button, nbf__dropdown-content" })))), this.enableUserFeedback && (h("button-component", { id: "report-issue", variant: 'basic', onClick: e => this.onFeedbackClick(e) }, h("feedback-icon", null))), this.showFeedbackModal && h("nylas-feedback-form", null)));
510
511
  }
511
512
  return (h(Host, null, h("slot", null)));
512
513
  }
@@ -748,7 +749,7 @@ export class NylasScheduling {
748
749
  "mutable": false,
749
750
  "complexType": {
750
751
  "original": "SchedulerEventOverride",
751
- "resolved": "Partial<{ timeslotSelected: (event: CustomEvent<Timeslot>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; timeslotConfirmed: (event: CustomEvent<Timeslot>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; dateSelected: (event: CustomEvent<Date>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; monthChanged: (event: CustomEvent<Date>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; timezoneChanged: (event: CustomEvent<string>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; languageChanged: (event: CustomEvent<string>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; nameChanged: (event: CustomEvent<string>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; emailChanged: (event: CustomEvent<string>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; backButtonClicked: (event: CustomEvent<boolean>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; detailsConfirmed: (event: CustomEvent<NylasSchedulerBookingDataWithFlatFields>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; bookingFormError: (event: CustomEvent<Partial<Notification>>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; bookingFormSubmitted: (event: CustomEvent<void>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; bookingInfo: (event: CustomEvent<unknown>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; configSettings: (event: CustomEvent<unknown>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; cancelBookingButtonClicked: (event: CustomEvent<{ bookingId: string; }>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; rescheduleButtonClicked: (event: CustomEvent<{ bookingId: string; errorHandler?: ((error: NylasSchedulerErrorResponse) => void) | undefined; }>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; rescheduleBookedEventError: (event: CustomEvent<NylasSchedulerErrorResponse>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; cancelBookedEventValidationError: (event: CustomEvent<{ error: { title: string; message: string; }; }>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; goBackButtonClicked: (event: CustomEvent<void>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; cancelBookingFormSubmitted: (event: CustomEvent<{ bookingId: string; action: \"cancel\" | \"reject\"; reason: string; errorHandler?: ((error: NylasSchedulerErrorResponse) => void) | undefined; }>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; triggerValidation: (event: CustomEvent<{}>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; cancelBookedEventError: (event: CustomEvent<NylasSchedulerErrorResponse>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; cancelBookingFormError: (event: CustomEvent<Partial<Notification>>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; closeCancelEventCardClicked: (event: CustomEvent<{ errorHandler?: ((error: NylasSchedulerErrorResponse) => void) | undefined; }>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; cancelledEventCardError: (event: CustomEvent<NylasSchedulerErrorResponse>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; }> & EventOverride<NylasSchedulerConnectorInterface>",
752
+ "resolved": "Partial<{ themeConfig: (event: CustomEvent<unknown>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; timeslotSelected: (event: CustomEvent<Timeslot>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; timeslotConfirmed: (event: CustomEvent<Timeslot>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; dateSelected: (event: CustomEvent<Date>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; monthChanged: (event: CustomEvent<Date>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; timezoneChanged: (event: CustomEvent<string>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; languageChanged: (event: CustomEvent<string>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; nameChanged: (event: CustomEvent<string>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; emailChanged: (event: CustomEvent<string>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; backButtonClicked: (event: CustomEvent<boolean>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; detailsConfirmed: (event: CustomEvent<NylasSchedulerBookingDataWithFlatFields>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; bookingFormError: (event: CustomEvent<Partial<Notification>>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; bookingFormSubmitted: (event: CustomEvent<void>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; bookingInfo: (event: CustomEvent<unknown>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; configSettings: (event: CustomEvent<unknown>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; cancelBookingButtonClicked: (event: CustomEvent<{ bookingId: string; }>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; rescheduleButtonClicked: (event: CustomEvent<{ bookingId: string; errorHandler?: ((error: NylasSchedulerErrorResponse) => void) | undefined; }>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; rescheduleBookedEventError: (event: CustomEvent<NylasSchedulerErrorResponse>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; cancelBookedEventValidationError: (event: CustomEvent<{ error: { title: string; message: string; }; }>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; goBackButtonClicked: (event: CustomEvent<void>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; cancelBookingFormSubmitted: (event: CustomEvent<{ bookingId: string; action: \"cancel\" | \"reject\"; reason: string; errorHandler?: ((error: NylasSchedulerErrorResponse) => void) | undefined; }>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; triggerValidation: (event: CustomEvent<{}>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; cancelBookedEventError: (event: CustomEvent<NylasSchedulerErrorResponse>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; cancelBookingFormError: (event: CustomEvent<Partial<Notification>>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; closeCancelEventCardClicked: (event: CustomEvent<{ errorHandler?: ((error: NylasSchedulerErrorResponse) => void) | undefined; }>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; cancelledEventCardError: (event: CustomEvent<NylasSchedulerErrorResponse>, connector?: NylasSchedulerConnectorInterface | undefined) => Promise<void>; }> & EventOverride<NylasSchedulerConnectorInterface>",
752
753
  "references": {
753
754
  "SchedulerEventOverride": {
754
755
  "location": "import",