@xapp/chat-widget 1.57.3 → 1.57.5

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.
package/dist/index.js CHANGED
@@ -2645,6 +2645,8 @@ var StentorRouterChat = /** @class */ (function () {
2645
2645
  log("Connection update received. Session created: ".concat(data.sessionCreated, " Error: ").concat(data.errorMessage || ""));
2646
2646
  if (data.sessionCreated) {
2647
2647
  _this.sessionCreated = true;
2648
+ // This is overkill. But if we are stuck in pending this can help.
2649
+ _this.setConnectionStatus("online");
2648
2650
  }
2649
2651
  else {
2650
2652
  // Shut down
@@ -2807,8 +2809,9 @@ var StentorRouterChat = /** @class */ (function () {
2807
2809
  this.ws = new WebSocket(url.toString());
2808
2810
  this.ws.onerror = function (ev) {
2809
2811
  var _a;
2810
- log("Error in WS connection. Type: ".concat(!ev ? "?" : ev.type, " Ready State: ").concat((_a = _this.ws) === null || _a === void 0 ? void 0 : _a.readyState));
2811
- _this.setConnectionStatus("pending");
2812
+ err("Error in WS connection. Url: ".concat(url.toString(), " Type: ").concat(!ev ? "?" : ev.type, " Ready State: ").concat((_a = _this.ws) === null || _a === void 0 ? void 0 : _a.readyState));
2813
+ // TODO: Experimental. Let's not set it to "pending". We may have a timing issue and miss the "online"
2814
+ // this.setConnectionStatus("pending");
2812
2815
  };
2813
2816
  this.ws.onmessage = function (me) {
2814
2817
  log("ROUTER says: ".concat(me.data));
@@ -2818,7 +2821,7 @@ var StentorRouterChat = /** @class */ (function () {
2818
2821
  _this.handlers[message.event](message.data, message.sender, message.timeMs);
2819
2822
  }
2820
2823
  else {
2821
- log("Unknown router message event: ".concat(message.event));
2824
+ err("Unknown router message event: ".concat(message.event));
2822
2825
  }
2823
2826
  };
2824
2827
  return this.ws;
@@ -2853,7 +2856,7 @@ var StentorRouterChat = /** @class */ (function () {
2853
2856
  _this.ws.send(payloadData);
2854
2857
  })
2855
2858
  .catch(function (t) {
2856
- console.log("Connection wait timed out in ".concat(t, " ms"));
2859
+ err("Connection wait timed out in ".concat(t, " ms"));
2857
2860
  })];
2858
2861
  case 1:
2859
2862
  _a.sent();
@@ -2926,7 +2929,7 @@ var StentorRouterChat = /** @class */ (function () {
2926
2929
  _this.postMessage(serviceRequest);
2927
2930
  })
2928
2931
  .catch(function (t) {
2929
- console.log("Session creation wait timed out in ".concat(t, " ms"));
2932
+ err("Session creation wait timed out in ".concat(t, " ms"));
2930
2933
  })];
2931
2934
  case 1:
2932
2935
  _a.sent();
@@ -6690,6 +6693,10 @@ var ChatChipsContainer = function (_) {
6690
6693
  React__default$1["default"].createElement(ChatChips, { options: chips, onOptionClick: optionOnChange })));
6691
6694
  };
6692
6695
 
6696
+ var CancelButton = function (props) {
6697
+ return (React__default$1["default"].createElement("button", { id: "xapp-widget-close", "aria-label": "close widget", "aria-hidden": true, tabIndex: props.tabIndex ? Number(props.tabIndex) : 0, className: "cancel-button", onClick: props.onClick }));
6698
+ };
6699
+
6693
6700
  var lib = {};
6694
6701
 
6695
6702
  var ChannelData = {};
@@ -6810,6 +6817,92 @@ var ChatMenu = function (props) {
6810
6817
  })));
6811
6818
  };
6812
6819
 
6820
+ var DrawerBars = function (props) {
6821
+ var bars = props.bars;
6822
+ // 0 is not a valid number of bars so a simple truthy check works here
6823
+ if (!bars) {
6824
+ bars = 2;
6825
+ }
6826
+ function getBars() {
6827
+ var barElements = [];
6828
+ for (var bar = 0; bar < bars; bar++) {
6829
+ barElements.push(React__default$1["default"].createElement("div", { className: "drawer-bar bar".concat(bar) }));
6830
+ }
6831
+ return barElements;
6832
+ }
6833
+ return (React__default$1["default"].createElement("button", { className: "drawer-bars", tabIndex: props.tabIndex ? Number(props.tabIndex) : 0, "aria-label": "open menu", "aria-hidden": true, onClick: props.onToggle }, getBars()));
6834
+ };
6835
+
6836
+ var MinimizeButton = function (props) {
6837
+ return (React__default$1["default"].createElement("button", { id: "xapp-widget-minimize", "aria-label": "minimize widget", "aria-hidden": true, tabIndex: props.tabIndex ? Number(props.tabIndex) : 0, className: "minimize-button ".concat(props.showInRight ? "positionRight" : ""), onClick: props.onClick }));
6838
+ };
6839
+
6840
+ var RefreshButton = function (props) {
6841
+ return (React__default$1["default"].createElement("button", { id: "xapp-widget-refresh", "aria-label": "refresh chat", "aria-hidden": true, tabIndex: props.tabIndex ? Number(props.tabIndex) : 0, className: "refresh-button ".concat(props.showInRight ? "positionRight" : props.showInLeft ? "positionLeft" : ""), onClick: props.onClick }));
6842
+ };
6843
+
6844
+ var DEFAULT_STATUS_CONFIG = {
6845
+ online: "Virtual Assistant",
6846
+ offline: "Leave us a message",
6847
+ away: "We're away!",
6848
+ connecting: "Connecting...",
6849
+ };
6850
+ function getStatusText(status, config) {
6851
+ var _a, _b, _c, _d;
6852
+ switch (status) {
6853
+ case "online":
6854
+ return (_a = config === null || config === void 0 ? void 0 : config.online) !== null && _a !== void 0 ? _a : DEFAULT_STATUS_CONFIG.online;
6855
+ case "offline":
6856
+ return (_b = config === null || config === void 0 ? void 0 : config.offline) !== null && _b !== void 0 ? _b : DEFAULT_STATUS_CONFIG.offline;
6857
+ case "away":
6858
+ return (_c = config === null || config === void 0 ? void 0 : config.away) !== null && _c !== void 0 ? _c : DEFAULT_STATUS_CONFIG.away;
6859
+ default:
6860
+ return (_d = config === null || config === void 0 ? void 0 : config.connecting) !== null && _d !== void 0 ? _d : DEFAULT_STATUS_CONFIG.connecting;
6861
+ }
6862
+ }
6863
+ var refreshButtonAriaLabel = "To refresh chat click on clockwise gapped circle arrow icon in top right side of widget. ";
6864
+ var minimizeButtonAriaLabel = "To minimize widget click on minus icon in top right side of widget. ";
6865
+ var closeButtonAriaLabel = "To close widget click on close icon in top right side of widget.";
6866
+ var ChatHeader = function (props) {
6867
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
6868
+ var innerDispatch = useChatDispatch();
6869
+ var menuConfig = props.menuConfig, onSubmit = props.onSubmit;
6870
+ var _s = React$1.useState(false), drawerOpen = _s[0], setDrawerState = _s[1]; // false initially
6871
+ var menuPosition = (menuConfig === null || menuConfig === void 0 ? void 0 : menuConfig.menuButtonLocation) || "FOOTER";
6872
+ var showMenu = menuPosition === "HEADER_LEFT";
6873
+ var menuItemsRaw = menuConfig === null || menuConfig === void 0 ? void 0 : menuConfig.items; // useWidgetEnv()?.menu?.items;
6874
+ var menuItemsTabIndex = menuConfig === null || menuConfig === void 0 ? void 0 : menuConfig.itemsTabIndex; // useWidgetEnv()?.menu?.itemsTabIndex;
6875
+ var menuButtonTabIndex = (_a = menuConfig === null || menuConfig === void 0 ? void 0 : menuConfig.button) === null || _a === void 0 ? void 0 : _a.tabIndex; // useWidgetEnv()?.menu?.button?.tabIndex;
6876
+ var menuItems = React$1.useMemo(function () { return menuItemsRaw ? menuItemsRaw : []; }, [menuItemsRaw]);
6877
+ function toggleDrawer() {
6878
+ var newDrawer = !drawerOpen;
6879
+ setDrawerState(newDrawer);
6880
+ innerDispatch(setVisualStatus({
6881
+ drawer: newDrawer
6882
+ }));
6883
+ }
6884
+ function handleMenuItem(label) {
6885
+ setDrawerState(false);
6886
+ onSubmit(label);
6887
+ }
6888
+ return (React__default$1["default"].createElement(React__default$1["default"].Fragment, null,
6889
+ React__default$1["default"].createElement("div", { className: "status-container background-header", "aria-label": props.canRefresh ? refreshButtonAriaLabel : "" + props.canMinimize ? minimizeButtonAriaLabel : "" + props.canCancel ? closeButtonAriaLabel : "", "aria-hidden": true },
6890
+ showMenu && menuItems.length ? (React__default$1["default"].createElement(React__default$1["default"].Fragment, null,
6891
+ React__default$1["default"].createElement("div", { className: "chat-footer__menu-icon" },
6892
+ React__default$1["default"].createElement(DrawerBars, { bars: 3, tabIndex: menuButtonTabIndex, onToggle: toggleDrawer })))) : React__default$1["default"].createElement(React__default$1["default"].Fragment, null),
6893
+ ((_b = props === null || props === void 0 ? void 0 : props.agent) === null || _b === void 0 ? void 0 : _b.avatarPath) === undefined ? React__default$1["default"].createElement("div", null) :
6894
+ React__default$1["default"].createElement("div", { className: "status-container__avatar" },
6895
+ React__default$1["default"].createElement(Avatar, { entity: props.agent })),
6896
+ React__default$1["default"].createElement("div", { className: "\n ".concat("status-text", "\n ").concat(((_c = props === null || props === void 0 ? void 0 : props.agent) === null || _c === void 0 ? void 0 : _c.avatarPath) === undefined ? "status-text-positionLeftNoAvatar" : "status-text-positionLeft", "\n ").concat(((_d = props.config) === null || _d === void 0 ? void 0 : _d.alignTextCenter) ? "status-text-positionCenter" : "status-text-positionLeft", " \n ") },
6897
+ React__default$1["default"].createElement("span", { className: "status-text-title" }, getStatusText(props.accountStatus, (_e = props.config) === null || _e === void 0 ? void 0 : _e.status)),
6898
+ ((_g = (_f = props.config) === null || _f === void 0 ? void 0 : _f.subtitle) === null || _g === void 0 ? void 0 : _g.enabled) && (React__default$1["default"].createElement("span", { className: "status-text-subtitle" }, (_k = (_j = (_h = props.config) === null || _h === void 0 ? void 0 : _h.subtitle) === null || _j === void 0 ? void 0 : _j.text) !== null && _k !== void 0 ? _k : ""))),
6899
+ props.canRefresh && (React__default$1["default"].createElement(RefreshButton, { onClick: props.refreshOnClick, tabIndex: (_m = (_l = props.config) === null || _l === void 0 ? void 0 : _l.actions) === null || _m === void 0 ? void 0 : _m.refreshTabIndex, showInLeft: props.canMinimize && props.canCancel, showInRight: !props.canMinimize && !props.canCancel })),
6900
+ props.canMinimize && (React__default$1["default"].createElement(MinimizeButton, { onClick: props.minimizeOnClick, tabIndex: (_p = (_o = props.config) === null || _o === void 0 ? void 0 : _o.actions) === null || _p === void 0 ? void 0 : _p.minimizeTabIndex, showInRight: !props.canCancel })),
6901
+ props.canCancel && (React__default$1["default"].createElement(CancelButton, { onClick: props.cancelOnClick, tabIndex: (_r = (_q = props.config) === null || _q === void 0 ? void 0 : _q.actions) === null || _r === void 0 ? void 0 : _r.cancelTabIndex }))),
6902
+ drawerOpen ? (React__default$1["default"].createElement("div", { className: "xa-chat-menu-container" },
6903
+ React__default$1["default"].createElement(ChatMenu, { openFrom: "left", opened: drawerOpen, tabIndex: menuItemsTabIndex, onItemClick: handleMenuItem, items: menuItems }))) : React__default$1["default"].createElement(React__default$1["default"].Fragment, null)));
6904
+ };
6905
+
6813
6906
  var UnknownMessage = function () { return React__default$1["default"].createElement(React__default$1["default"].Fragment, null); };
6814
6907
 
6815
6908
  function renderAvatar(entity) {
@@ -7657,22 +7750,6 @@ var ChatBranding = function (props) {
7657
7750
  return (React__default$1["default"].createElement("div", { className: "chat-footer__branding" }, text !== null && text !== void 0 ? text : "Powered by XAPP AI"));
7658
7751
  };
7659
7752
 
7660
- var DrawerBars = function (props) {
7661
- var bars = props.bars;
7662
- // 0 is not a valid number of bars so a simple truthy check works here
7663
- if (!bars) {
7664
- bars = 2;
7665
- }
7666
- function getBars() {
7667
- var barElements = [];
7668
- for (var bar = 0; bar < bars; bar++) {
7669
- barElements.push(React__default$1["default"].createElement("div", { className: "drawer-bar bar".concat(bar) }));
7670
- }
7671
- return barElements;
7672
- }
7673
- return (React__default$1["default"].createElement("button", { className: "drawer-bars", tabIndex: props.tabIndex ? Number(props.tabIndex) : 0, "aria-label": "open menu", "aria-hidden": true, onClick: props.onToggle }, getBars()));
7674
- };
7675
-
7676
7753
  var CloseIcon = function () {
7677
7754
  // Sergey, I added this style, you will probably want to change it to be more appropriate
7678
7755
  return (React__default$1["default"].createElement("svg", { style: { color: "grey", paddingRight: "5px" }, xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 16 16" },
@@ -30444,80 +30521,6 @@ var ServerOffline = function () {
30444
30521
  React__default$1["default"].createElement("h3", null, "Server is offline"));
30445
30522
  };
30446
30523
 
30447
- var CancelButton = function (props) {
30448
- return (React__default$1["default"].createElement("button", { id: "xapp-widget-close", "aria-label": "close widget", "aria-hidden": true, tabIndex: props.tabIndex ? Number(props.tabIndex) : 0, className: "cancel-button", onClick: props.onClick }));
30449
- };
30450
-
30451
- var MinimizeButton = function (props) {
30452
- return (React__default$1["default"].createElement("button", { id: "xapp-widget-minimize", "aria-label": "minimize widget", "aria-hidden": true, tabIndex: props.tabIndex ? Number(props.tabIndex) : 0, className: "minimize-button ".concat(props.showInRight ? "positionRight" : ""), onClick: props.onClick }));
30453
- };
30454
-
30455
- var RefreshButton = function (props) {
30456
- return (React__default$1["default"].createElement("button", { id: "xapp-widget-refresh", "aria-label": "refresh chat", "aria-hidden": true, tabIndex: props.tabIndex ? Number(props.tabIndex) : 0, className: "refresh-button ".concat(props.showInRight ? "positionRight" : props.showInLeft ? "positionLeft" : ""), onClick: props.onClick }));
30457
- };
30458
-
30459
- var DEFAULT_STATUS_CONFIG = {
30460
- online: "Virtual Assistant",
30461
- offline: "Leave us a message",
30462
- away: "We're away!",
30463
- connecting: "Connecting...",
30464
- };
30465
- function getStatusText(status, config) {
30466
- var _a, _b, _c, _d;
30467
- switch (status) {
30468
- case "online":
30469
- return (_a = config === null || config === void 0 ? void 0 : config.online) !== null && _a !== void 0 ? _a : DEFAULT_STATUS_CONFIG.online;
30470
- case "offline":
30471
- return (_b = config === null || config === void 0 ? void 0 : config.offline) !== null && _b !== void 0 ? _b : DEFAULT_STATUS_CONFIG.offline;
30472
- case "away":
30473
- return (_c = config === null || config === void 0 ? void 0 : config.away) !== null && _c !== void 0 ? _c : DEFAULT_STATUS_CONFIG.away;
30474
- default:
30475
- return (_d = config === null || config === void 0 ? void 0 : config.connecting) !== null && _d !== void 0 ? _d : DEFAULT_STATUS_CONFIG.connecting;
30476
- }
30477
- }
30478
- var refreshButtonAriaLabel = "To refresh chat click on clockwise gapped circle arrow icon in top right side of widget. ";
30479
- var minimizeButtonAriaLabel = "To minimize widget click on minus icon in top right side of widget. ";
30480
- var closeButtonAriaLabel = "To close widget click on close icon in top right side of widget.";
30481
- var ChatHeader = function (props) {
30482
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
30483
- var innerDispatch = useChatDispatch();
30484
- var menuConfig = props.menuConfig, onSubmit = props.onSubmit;
30485
- var _s = React$1.useState(false), drawerOpen = _s[0], setDrawerState = _s[1]; // false initially
30486
- var menuPosition = (menuConfig === null || menuConfig === void 0 ? void 0 : menuConfig.menuButtonLocation) || "FOOTER";
30487
- var showMenu = menuPosition === "HEADER_LEFT";
30488
- var menuItemsRaw = menuConfig === null || menuConfig === void 0 ? void 0 : menuConfig.items; // useWidgetEnv()?.menu?.items;
30489
- var menuItemsTabIndex = menuConfig === null || menuConfig === void 0 ? void 0 : menuConfig.itemsTabIndex; // useWidgetEnv()?.menu?.itemsTabIndex;
30490
- var menuButtonTabIndex = (_a = menuConfig === null || menuConfig === void 0 ? void 0 : menuConfig.button) === null || _a === void 0 ? void 0 : _a.tabIndex; // useWidgetEnv()?.menu?.button?.tabIndex;
30491
- var menuItems = React$1.useMemo(function () { return menuItemsRaw ? menuItemsRaw : []; }, [menuItemsRaw]);
30492
- function toggleDrawer() {
30493
- var newDrawer = !drawerOpen;
30494
- setDrawerState(newDrawer);
30495
- innerDispatch(setVisualStatus({
30496
- drawer: newDrawer
30497
- }));
30498
- }
30499
- function handleMenuItem(label) {
30500
- setDrawerState(false);
30501
- onSubmit(label);
30502
- }
30503
- return (React__default$1["default"].createElement(React__default$1["default"].Fragment, null,
30504
- React__default$1["default"].createElement("div", { className: "status-container background-header", "aria-label": props.canRefresh ? refreshButtonAriaLabel : "" + props.canMinimize ? minimizeButtonAriaLabel : "" + props.canCancel ? closeButtonAriaLabel : "", "aria-hidden": true },
30505
- showMenu && menuItems.length ? (React__default$1["default"].createElement(React__default$1["default"].Fragment, null,
30506
- React__default$1["default"].createElement("div", { className: "chat-footer__menu-icon" },
30507
- React__default$1["default"].createElement(DrawerBars, { bars: 3, tabIndex: menuButtonTabIndex, onToggle: toggleDrawer })))) : React__default$1["default"].createElement(React__default$1["default"].Fragment, null),
30508
- ((_b = props === null || props === void 0 ? void 0 : props.agent) === null || _b === void 0 ? void 0 : _b.avatarPath) === undefined ? React__default$1["default"].createElement("div", null) :
30509
- React__default$1["default"].createElement("div", { className: "status-container__avatar" },
30510
- React__default$1["default"].createElement(Avatar, { entity: props.agent })),
30511
- React__default$1["default"].createElement("div", { className: "\n ".concat("status-text", "\n ").concat(((_c = props === null || props === void 0 ? void 0 : props.agent) === null || _c === void 0 ? void 0 : _c.avatarPath) === undefined ? "status-text-positionLeftNoAvatar" : "status-text-positionLeft", "\n ").concat(((_d = props.config) === null || _d === void 0 ? void 0 : _d.alignTextCenter) ? "status-text-positionCenter" : "status-text-positionLeft", " \n ") },
30512
- React__default$1["default"].createElement("span", { className: "status-text-title" }, getStatusText(props.accountStatus, (_e = props.config) === null || _e === void 0 ? void 0 : _e.status)),
30513
- ((_g = (_f = props.config) === null || _f === void 0 ? void 0 : _f.subtitle) === null || _g === void 0 ? void 0 : _g.enabled) && (React__default$1["default"].createElement("span", { className: "status-text-subtitle" }, (_k = (_j = (_h = props.config) === null || _h === void 0 ? void 0 : _h.subtitle) === null || _j === void 0 ? void 0 : _j.text) !== null && _k !== void 0 ? _k : ""))),
30514
- props.canRefresh && (React__default$1["default"].createElement(RefreshButton, { onClick: props.refreshOnClick, tabIndex: (_m = (_l = props.config) === null || _l === void 0 ? void 0 : _l.actions) === null || _m === void 0 ? void 0 : _m.refreshTabIndex, showInLeft: props.canMinimize && props.canCancel, showInRight: !props.canMinimize && !props.canCancel })),
30515
- props.canMinimize && (React__default$1["default"].createElement(MinimizeButton, { onClick: props.minimizeOnClick, tabIndex: (_p = (_o = props.config) === null || _o === void 0 ? void 0 : _o.actions) === null || _p === void 0 ? void 0 : _p.minimizeTabIndex, showInRight: !props.canCancel })),
30516
- props.canCancel && (React__default$1["default"].createElement(CancelButton, { onClick: props.cancelOnClick, tabIndex: (_r = (_q = props.config) === null || _q === void 0 ? void 0 : _q.actions) === null || _r === void 0 ? void 0 : _r.cancelTabIndex }))),
30517
- drawerOpen ? (React__default$1["default"].createElement("div", { className: "xa-chat-menu-container" },
30518
- React__default$1["default"].createElement(ChatMenu, { openFrom: "left", opened: drawerOpen, tabIndex: menuItemsTabIndex, onItemClick: handleMenuItem, items: menuItems }))) : React__default$1["default"].createElement(React__default$1["default"].Fragment, null)));
30519
- };
30520
-
30521
30524
  function buildStyleContent(theme) {
30522
30525
  var _a, _b, _c, _d, _e;
30523
30526
  return "\n:root {\n".concat(buildVariables(withPrefix("\t--xapp-", union(single("primary-color", theme === null || theme === void 0 ? void 0 : theme.primaryColor), withPrefix("widget-", union(getSize(theme === null || theme === void 0 ? void 0 : theme.size), getMargins(theme === null || theme === void 0 ? void 0 : theme.margin), getBorderStyle(theme === null || theme === void 0 ? void 0 : theme.border), getZIndex(theme === null || theme === void 0 ? void 0 : theme.zIndex))), getChatButtonStyle(theme === null || theme === void 0 ? void 0 : theme.chatButton), withPrefix("header-", getHeaderStyle(theme === null || theme === void 0 ? void 0 : theme.header)), withPrefix("footer-", getFooterStyle(theme === null || theme === void 0 ? void 0 : theme.footer)), withPrefix("content-", union(getBackgroundStyle((_a = theme === null || theme === void 0 ? void 0 : theme.content) === null || _a === void 0 ? void 0 : _a.background))), withPrefix("messages-", getMessagesStyle(theme === null || theme === void 0 ? void 0 : theme.messages)), withPrefix("text-typing-status-", getTextStyle((_b = theme === null || theme === void 0 ? void 0 : theme.textTypingStatus) === null || _b === void 0 ? void 0 : _b.text)), withPrefix("send-", getButtonStyle(theme === null || theme === void 0 ? void 0 : theme.sendButton)), withPrefix("menu-", getButtonStyle(theme === null || theme === void 0 ? void 0 : theme.menuButton)), withPrefix("menu-", getMenuStyle(theme === null || theme === void 0 ? void 0 : theme.menu)), withPrefix("refresh-", getButtonStyle(theme === null || theme === void 0 ? void 0 : theme.refreshButton)), withPrefix("minimize-", getButtonStyle(theme === null || theme === void 0 ? void 0 : theme.minimizeButton)), withPrefix("cancel-", getButtonStyle(theme === null || theme === void 0 ? void 0 : theme.cancelButton)), withPrefix("carousel-", union(withPrefix("title-", getTextStyle((_c = theme === null || theme === void 0 ? void 0 : theme.carousel) === null || _c === void 0 ? void 0 : _c.title)), withPrefix("subtitle-", getTextStyle((_d = theme === null || theme === void 0 ? void 0 : theme.carousel) === null || _d === void 0 ? void 0 : _d.subtitle)), withPrefix("action-", getButtonStyle((_e = theme === null || theme === void 0 ? void 0 : theme.carousel) === null || _e === void 0 ? void 0 : _e.button)))), withPrefix("input-", getInputStyle(theme === null || theme === void 0 ? void 0 : theme.input)), withPrefix("cta-", getCtaStyle(theme === null || theme === void 0 ? void 0 : theme.cta))))), "\n}");
@@ -31537,6 +31540,7 @@ exports.ChatButton = ChatButton;
31537
31540
  exports.ChatCard = ChatCard;
31538
31541
  exports.ChatChip = ChatChip;
31539
31542
  exports.ChatChips = ChatChips;
31543
+ exports.ChatHeader = ChatHeader;
31540
31544
  exports.ChatMenu = ChatMenu;
31541
31545
  exports.ChatMessage = ChatMessage;
31542
31546
  exports.ChatMessageBubble = ChatMessageBubble;