@xapp/chat-widget 1.45.0 → 1.46.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -7900,11 +7900,12 @@ var SendIcon = function () {
7900
7900
  };
7901
7901
 
7902
7902
  var SendButton = function (props) {
7903
- return (React__default$1["default"].createElement(IconButton_1, { className: "xappw-send-button ".concat(props.className || ""), onClick: props.onClick, icon: SendIcon }));
7903
+ return (React__default$1["default"].createElement(React__default$1["default"].Fragment, null, !props.sendButtonIcon ? (React__default$1["default"].createElement(IconButton_1, { className: "xappw-send-button ".concat(props.className || ""), onClick: props.onClick, icon: SendIcon })) : (React__default$1["default"].createElement("span", { className: "xappw-custom-send-button", onClick: props.onClick },
7904
+ React__default$1["default"].createElement("img", { src: props.sendButtonIcon, alt: "", draggable: false })))));
7904
7905
  };
7905
7906
 
7906
7907
  var Input = function (props) {
7907
- var value = props.value, placeholder = props.placeholder, suggestion = props.suggestion, onChange = props.onChange, onSubmit = props.onSubmit, onSuggestionCommand = props.onSuggestionCommand;
7908
+ var value = props.value, placeholder = props.placeholder, sendButtonIcon = props.sendButtonIcon, suggestion = props.suggestion, onChange = props.onChange, onSubmit = props.onSubmit, onSuggestionCommand = props.onSuggestionCommand;
7908
7909
  var _a = React$1.useState(false), dragover = _a[0], setDragover = _a[1];
7909
7910
  function onDragOver(event) {
7910
7911
  setDragover(true);
@@ -7957,7 +7958,7 @@ var Input = function (props) {
7957
7958
  value: value, spellCheck: true }),
7958
7959
  React__default$1["default"].createElement("div", { className: "xappw-input-form__buttons" },
7959
7960
  value.text && React__default$1["default"].createElement(IconButton_1, { icon: CloseIcon, className: "xappw-input-form__btn", onClick: handleClear }),
7960
- React__default$1["default"].createElement(SendButton, { className: "xappw-input-form__btn", onClick: handleOnSubmit })))));
7961
+ React__default$1["default"].createElement(SendButton, { className: "xappw-input-form__btn", sendButtonIcon: sendButtonIcon, onClick: handleOnSubmit })))));
7961
7962
  };
7962
7963
 
7963
7964
  function createActions(onItemUse) {
@@ -7999,7 +8000,7 @@ var Suggestions = function (props) {
7999
8000
 
8000
8001
  var ChatFooter = function (props) {
8001
8002
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
8002
- var placeholder = props.placeholder, onSubmit = props.onSubmit;
8003
+ var placeholder = props.placeholder, sendButtonIcon = props.sendButtonIcon, onSubmit = props.onSubmit;
8003
8004
  var _k = React$1.useState(false), drawer = _k[0], setDrawerState = _k[1]; // false initially
8004
8005
  var _l = React$1.useState(), suggestionSearch = _l[0], setSuggestionSearch = _l[1];
8005
8006
  var contexts = reactRedux.useSelector(function (state) { return state.activeContexts; });
@@ -8048,7 +8049,7 @@ var ChatFooter = function (props) {
8048
8049
  React__default$1["default"].createElement("div", { className: "chat-footer__menu-icon" },
8049
8050
  React__default$1["default"].createElement(DrawerBars, { onToggle: toggleDrawer }))) : React__default$1["default"].createElement(React__default$1["default"].Fragment, null),
8050
8051
  ((_j = suggestions.suggestions) === null || _j === void 0 ? void 0 : _j.length) > 0 && React__default$1["default"].createElement(Suggestions, { className: "xappw-chat-footer__suggestions", data: suggestions.suggestions, index: suggestions.index, onItemClick: handleItemClick, onItemUse: handleItemUse }),
8051
- React__default$1["default"].createElement(Input, { addClass: "chat-footer__input " + (props.isChatting && props.visible ? "visible" : ""), suggestion: suggestions.item, value: input, placeholder: placeholder, onSubmit: handleSubmit, onChange: handleChange, onSuggestionCommand: suggestions.execute,
8052
+ React__default$1["default"].createElement(Input, { addClass: "chat-footer__input " + (props.isChatting && props.visible ? "visible" : ""), suggestion: suggestions.item, value: input, placeholder: placeholder, sendButtonIcon: sendButtonIcon, onSubmit: handleSubmit, onChange: handleChange, onSuggestionCommand: suggestions.execute,
8052
8053
  // onFocus={this.inputOnFocus}
8053
8054
  onFileUpload: props.onFileUpload }),
8054
8055
  brandingEnabled && React__default$1["default"].createElement(ChatBranding, { text: branding })));
@@ -30811,6 +30812,9 @@ function getButtonStyle(style) {
30811
30812
  switch (_a.label) {
30812
30813
  case 0: return [4 /*yield*/, ['button-color', style === null || style === void 0 ? void 0 : style.color]];
30813
30814
  case 1:
30815
+ _a.sent();
30816
+ return [4 /*yield*/, ['button-width', style === null || style === void 0 ? void 0 : style.width]];
30817
+ case 2:
30814
30818
  _a.sent();
30815
30819
  return [2 /*return*/];
30816
30820
  }
@@ -30896,7 +30900,7 @@ var ChatWidgetWrapper = function (props) {
30896
30900
  React__default$1["default"].createElement(ChatWidget, __assign({}, props)))));
30897
30901
  };
30898
30902
  var ChatWidget = function (props) {
30899
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
30903
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
30900
30904
  var innerDispatch = useChatDispatch();
30901
30905
  var dispatch = useChatServerDispatch();
30902
30906
  // From Redux
@@ -30916,8 +30920,8 @@ var ChatWidget = function (props) {
30916
30920
  canCancel = !dockedMode && !staticMode;
30917
30921
  }
30918
30922
  // Our state - pull from storage
30919
- var _t = React$1.useState((!canMinimize && !canCancel) || !!get("visible") || (((_k = props.config) === null || _k === void 0 ? void 0 : _k.autoOpenOnWidth) && window.matchMedia("(min-width: ".concat((_l = props.config) === null || _l === void 0 ? void 0 : _l.autoOpenOnWidth, ")")).matches)), visible = _t[0], setVisibleState = _t[1];
30920
- var _u = React$1.useState(false), typing = _u[0], setTypingState = _u[1]; // false initially
30923
+ var _v = React$1.useState((!canMinimize && !canCancel) || !!get("visible") || (((_k = props.config) === null || _k === void 0 ? void 0 : _k.autoOpenOnWidth) && window.matchMedia("(min-width: ".concat((_l = props.config) === null || _l === void 0 ? void 0 : _l.autoOpenOnWidth, ")")).matches)), visible = _v[0], setVisibleState = _v[1];
30924
+ var _w = React$1.useState(false), typing = _w[0], setTypingState = _w[1]; // false initially
30921
30925
  var chatServer = React$1.useContext(ChatServerContext);
30922
30926
  var setVisible = React$1.useCallback(function (newVisible) {
30923
30927
  if (staticMode) {
@@ -31048,8 +31052,8 @@ var ChatWidget = function (props) {
31048
31052
  React__default$1["default"].createElement("div", { className: "spinner-container ".concat(visible && connectionStatus === "pending" ? "visible" : "") },
31049
31053
  React__default$1["default"].createElement("div", { className: "spinner" })),
31050
31054
  connectionStatus === "offline" && React__default$1["default"].createElement(ServerOffline, null),
31051
- React__default$1["default"].createElement(ChatFooter, { isChatting: chatState.isChatting, placeholder: (_r = config === null || config === void 0 ? void 0 : config.input) === null || _r === void 0 ? void 0 : _r.placeholder, visible: visible, onChange: handleOnChange, onSubmit: handleOnSubmit, onFileUpload: handleFileUpload })),
31052
- React__default$1["default"].createElement(ChatButton, { addClass: getVisibilityClass(), onClick: chatButtonOnClick, config: (_s = props.config) === null || _s === void 0 ? void 0 : _s.cta, visible: visible })));
31055
+ React__default$1["default"].createElement(ChatFooter, { isChatting: chatState.isChatting, placeholder: (_r = config === null || config === void 0 ? void 0 : config.input) === null || _r === void 0 ? void 0 : _r.placeholder, sendButtonIcon: (_t = (_s = config === null || config === void 0 ? void 0 : config.footer) === null || _s === void 0 ? void 0 : _s.sendButton) === null || _t === void 0 ? void 0 : _t.icon, visible: visible, onChange: handleOnChange, onSubmit: handleOnSubmit, onFileUpload: handleFileUpload })),
31056
+ React__default$1["default"].createElement(ChatButton, { addClass: getVisibilityClass(), onClick: chatButtonOnClick, config: (_u = props.config) === null || _u === void 0 ? void 0 : _u.cta, visible: visible })));
31053
31057
  };
31054
31058
 
31055
31059
  function tryParseJson(str) {