rohit-chat-widget 1.0.13 → 1.0.15
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/lib/components/ChatWidget/ChatWidget.d.ts.map +1 -1
- package/lib/components/ChatWidget/ChatWidget.js +2 -1
- package/lib/components/ChatWidget/ChatWidget.js.map +1 -1
- package/lib/components/MessageInput/MessageInput.d.ts.map +1 -1
- package/lib/components/MessageInput/MessageInput.js +5 -3
- package/lib/components/MessageInput/MessageInput.js.map +1 -1
- package/lib/components/Toast/Toast.d.ts +8 -0
- package/lib/components/Toast/Toast.d.ts.map +1 -0
- package/lib/components/Toast/Toast.js +23 -0
- package/lib/components/Toast/Toast.js.map +1 -0
- package/lib/index.esm.js +47 -24
- package/lib/index.esm.js.map +1 -1
- package/lib/src/components/ChatWidget/ChatWidget.d.ts.map +1 -1
- package/lib/src/components/MessageInput/MessageInput.d.ts.map +1 -1
- package/lib/src/components/Toast/Toast.d.ts +8 -0
- package/lib/src/components/Toast/Toast.d.ts.map +1 -0
- package/lib/styles.css +33 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatWidget.d.ts","sourceRoot":"","sources":["../../../src/components/ChatWidget/ChatWidget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAOzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatWidget.d.ts","sourceRoot":"","sources":["../../../src/components/ChatWidget/ChatWidget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAOzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAKjD,MAAM,WAAW,eAAe;IAE9B,UAAU,EAAE,mBAAmB,CAAC;IAGhC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IAGvB,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,QAAQ,EAAE,OAAO,CAAC;CACnB;AA2ED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAgChD,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -9,6 +9,7 @@ import { ChatHeader } from '../ChatHeader';
|
|
|
9
9
|
import { useChatInit } from '../../hooks';
|
|
10
10
|
import { ErrorBoundary } from '../ErrorBoundary';
|
|
11
11
|
import { ErrorDisplay } from '../ErrorDisplay';
|
|
12
|
+
import { ToastProvider } from '../Toast/Toast';
|
|
12
13
|
const InnerChatWidget = ({ initParams, primaryColor, secondaryColor, menuItems, showMenu }) => {
|
|
13
14
|
const { isInitializing, error, initializeChat } = useChatInit();
|
|
14
15
|
// Apply primary color to CSS custom properties
|
|
@@ -63,7 +64,7 @@ export const ChatWidget = (props) => {
|
|
|
63
64
|
// If the host app provides a Redux store via context, give that store
|
|
64
65
|
// reference to the chatService so service actions dispatch to the
|
|
65
66
|
// host store and selectors in components will update correctly.
|
|
66
|
-
context && context.store ? (_jsx(ErrorBoundary, { primaryColor: props.primaryColor, children: _jsx(InnerChatWidget, { ...props }) })) : (_jsx(Provider, { store: store, children: _jsx(ErrorBoundary, { primaryColor: props.primaryColor, children: _jsx(InnerChatWidget, { ...props }) }) })) }));
|
|
67
|
+
context && context.store ? (_jsx(ErrorBoundary, { primaryColor: props.primaryColor, children: _jsx(ToastProvider, { children: _jsx(InnerChatWidget, { ...props }) }) })) : (_jsx(Provider, { store: store, children: _jsx(ErrorBoundary, { primaryColor: props.primaryColor, children: _jsx(ToastProvider, { children: _jsx(InnerChatWidget, { ...props }) }) }) })) }));
|
|
67
68
|
};
|
|
68
69
|
export default ChatWidget;
|
|
69
70
|
//# sourceMappingURL=ChatWidget.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatWidget.js","sourceRoot":"","sources":["../../../src/components/ChatWidget/ChatWidget.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ChatWidget.js","sourceRoot":"","sources":["../../../src/components/ChatWidget/ChatWidget.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageInput.d.ts","sourceRoot":"","sources":["../../../src/components/MessageInput/MessageInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2B,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"MessageInput.d.ts","sourceRoot":"","sources":["../../../src/components/MessageInput/MessageInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2B,MAAM,OAAO,CAAC;AAUhD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;CAC5C;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAoOpD,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -7,6 +7,7 @@ import { v4 as uuidv4 } from 'uuid';
|
|
|
7
7
|
import styles from './MessageInput.module.scss';
|
|
8
8
|
import { selectThread, selectUserInfo } from '@/store';
|
|
9
9
|
import { getApiConfig } from '@/services/api/backendApi';
|
|
10
|
+
import { useToast } from '@/components/Toast/Toast';
|
|
10
11
|
export const MessageInput = ({ disabled = false, className, onMessageSent }) => {
|
|
11
12
|
const [message, setMessage] = useState('');
|
|
12
13
|
const [isSending, setIsSending] = useState(false);
|
|
@@ -16,12 +17,13 @@ export const MessageInput = ({ disabled = false, className, onMessageSent }) =>
|
|
|
16
17
|
const dispatch = useDispatch();
|
|
17
18
|
const thread = useSelector(selectThread);
|
|
18
19
|
const userInformation = useSelector(selectUserInfo);
|
|
20
|
+
const toast = useToast();
|
|
19
21
|
const handleFileSelect = (e) => {
|
|
20
22
|
const file = e.target.files?.[0];
|
|
21
23
|
if (file) {
|
|
22
|
-
// Accept any file type (images, docs, etc.) but limit size to
|
|
23
|
-
if (file.size >
|
|
24
|
-
|
|
24
|
+
// Accept any file type (images, docs, etc.) but limit size to 5MB
|
|
25
|
+
if (file.size > 5 * 1024 * 1024) {
|
|
26
|
+
toast.show('File size exceeds 5 MB. Please select a smaller file.');
|
|
25
27
|
return;
|
|
26
28
|
}
|
|
27
29
|
setSelectedFile(file);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageInput.js","sourceRoot":"","sources":["../../../src/components/MessageInput/MessageInput.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"MessageInput.js","sourceRoot":"","sources":["../../../src/components/MessageInput/MessageInput.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Toast.d.ts","sourceRoot":"","sources":["../../../src/components/Toast/Toast.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAuC,SAAS,EAAE,MAAM,OAAO,CAAC;AAO9E,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,CAuB3D,CAAC;AAEF,eAAO,MAAM,QAAQ;UA3BsB,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI;CAiC/D,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { createContext, useContext, useState } from 'react';
|
|
3
|
+
import styles from './Toast.module.scss';
|
|
4
|
+
const ToastContext = createContext(null);
|
|
5
|
+
export const ToastProvider = ({ children }) => {
|
|
6
|
+
const [toasts, setToasts] = useState([]);
|
|
7
|
+
const show = (message) => {
|
|
8
|
+
const id = String(Date.now()) + Math.random().toString(36).slice(2, 8);
|
|
9
|
+
setToasts((t) => [...t, { id, message }]);
|
|
10
|
+
setTimeout(() => {
|
|
11
|
+
setToasts((t) => t.filter((x) => x.id !== id));
|
|
12
|
+
}, 4000);
|
|
13
|
+
};
|
|
14
|
+
return (_jsxs(ToastContext.Provider, { value: { show }, children: [children, _jsx("div", { className: styles.toastContainer, "aria-live": "polite", children: toasts.map((t) => (_jsx("div", { className: styles.toast, role: "status", children: t.message }, t.id))) })] }));
|
|
15
|
+
};
|
|
16
|
+
export const useToast = () => {
|
|
17
|
+
const ctx = useContext(ToastContext);
|
|
18
|
+
if (!ctx) {
|
|
19
|
+
return { show: (msg) => window.alert(msg) };
|
|
20
|
+
}
|
|
21
|
+
return ctx;
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=Toast.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Toast.js","sourceRoot":"","sources":["../../../src/components/Toast/Toast.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAa,MAAM,OAAO,CAAC;AAC9E,OAAO,MAAM,MAAM,qBAAqB,CAAC;AAIzC,MAAM,YAAY,GAAG,aAAa,CAAyC,IAAI,CAAC,CAAC;AAEjF,MAAM,CAAC,MAAM,aAAa,GAAsC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC/E,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAU,EAAE,CAAC,CAAC;IAElD,MAAM,IAAI,GAAG,CAAC,OAAe,EAAE,EAAE;QAC/B,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACvE,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;QAC1C,UAAU,CAAC,GAAG,EAAE;YACd,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QACjD,CAAC,EAAE,IAAI,CAAC,CAAC;IACX,CAAC,CAAC;IAEF,OAAO,CACL,MAAC,YAAY,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,IAAI,EAAE,aACnC,QAAQ,EACT,cAAK,SAAS,EAAE,MAAM,CAAC,cAAc,eAAY,QAAQ,YACtD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACjB,cAAK,SAAS,EAAE,MAAM,CAAC,KAAK,EAAa,IAAI,EAAC,QAAQ,YACnD,CAAC,CAAC,OAAO,IADuB,CAAC,CAAC,EAAE,CAEjC,CACP,CAAC,GACE,IACgB,CACzB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE;IAC3B,MAAM,GAAG,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IACrC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,EAAE,IAAI,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;IACtD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC"}
|
package/lib/index.esm.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import React__default, { useCallback, useDebugValue, useMemo, useState, useEffect, useRef, useLayoutEffect, Component } from 'react';
|
|
3
|
+
import React__default, { useCallback, useDebugValue, useMemo, useState, useEffect, useRef, useLayoutEffect, createContext, useContext, Component } from 'react';
|
|
4
4
|
|
|
5
5
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
6
6
|
|
|
@@ -7037,13 +7037,13 @@ const store = configureStore({
|
|
|
7037
7037
|
const useAppDispatch = () => useDispatch();
|
|
7038
7038
|
const useAppSelector = useSelector.withTypes();
|
|
7039
7039
|
|
|
7040
|
-
var styles$
|
|
7040
|
+
var styles$b = {"chatWidget":"ChatWidget-module_chatWidget__wqmsb","chatWindow":"ChatWidget-module_chatWindow__TxiTp"};
|
|
7041
7041
|
|
|
7042
|
-
var styles$
|
|
7042
|
+
var styles$a = {"chatContainer":"ChatContainer-module_chatContainer__96ZLx","messagesSection":"ChatContainer-module_messagesSection__-Nf-D","disclaimer":"ChatContainer-module_disclaimer__XbIku","chatInputWrapper":"ChatContainer-module_chatInputWrapper__1gctp"};
|
|
7043
7043
|
|
|
7044
|
-
var styles$
|
|
7044
|
+
var styles$9 = {"messageList":"MessageList-module_messageList__KNVpc","loadingOverlay":"MessageList-module_loadingOverlay__GMXlG","messagesContainer":"MessageList-module_messagesContainer__ZDIIH","messageBubbleWrapper":"MessageList-module_messageBubbleWrapper__pNM3z","messagesEnd":"MessageList-module_messagesEnd__qYzpz","emptyState":"MessageList-module_emptyState__-x8KC","emptyIcon":"MessageList-module_emptyIcon__oCafg","emptyText":"MessageList-module_emptyText__-85a2","emptySubtext":"MessageList-module_emptySubtext__-RWpt"};
|
|
7045
7045
|
|
|
7046
|
-
var styles$
|
|
7046
|
+
var styles$8 = {"messageWrapper":"MessageBubble-module_messageWrapper__SMMZu","messageContainer":"MessageBubble-module_messageContainer__KnPtl","senderName":"MessageBubble-module_senderName__h5pr2","messageBubble":"MessageBubble-module_messageBubble__Vu3D-","messageText":"MessageBubble-module_messageText__D70bc","messageWrapperLeft":"MessageBubble-module_messageWrapperLeft__xv7-7","messageWrapperRight":"MessageBubble-module_messageWrapperRight__CUlgL","messageAvatar":"MessageBubble-module_messageAvatar__sqfKI","userMessage":"MessageBubble-module_userMessage__t1sZf","agentMessage":"MessageBubble-module_agentMessage__tCe5z","timestamp":"MessageBubble-module_timestamp__g--Ep","timestampLeft":"MessageBubble-module_timestampLeft__JhYDx","timestampRight":"MessageBubble-module_timestampRight__q-wih","resendContainer":"MessageBubble-module_resendContainer__TXscy","resendButton":"MessageBubble-module_resendButton__h2uAL","resendText":"MessageBubble-module_resendText__wYm2L"};
|
|
7047
7047
|
|
|
7048
7048
|
/******************************************************************************
|
|
7049
7049
|
Copyright (c) Microsoft Corporation.
|
|
@@ -20654,7 +20654,7 @@ const MessageBubble = ({ id, message, sender, timestamp, className, isMe, status
|
|
|
20654
20654
|
const datePart = date.toLocaleDateString(undefined, { month: 'long', day: 'numeric', year: 'numeric' });
|
|
20655
20655
|
return `${datePart} ${timePart}`;
|
|
20656
20656
|
};
|
|
20657
|
-
return (jsxs("div", { className: `${styles$
|
|
20657
|
+
return (jsxs("div", { className: `${styles$8.messageWrapper} ${isMe ? styles$8.messageWrapperRight : styles$8.messageWrapperLeft} ${className || ''}`, children: [!isMe && jsx("div", { className: styles$8.messageAvatar, children: initials }), jsxs("div", { className: styles$8.messageContainer, children: [jsx("div", { className: styles$8.senderName, children: isMe ? 'You' : thread.threadType === 'medical' ? 'Provider' : 'Support' }), jsx("div", { className: `${styles$8.messageBubble} ${isMe ? styles$8.userMessage : styles$8.agentMessage}`, children: jsx("div", { className: styles$8.messageText, children: fileMsg ? (jsxs("div", { className: "file-message", style: { display: 'flex', alignItems: 'center' }, children: [jsx("span", { children: fileMsg.displayFileName }), jsx("button", { onClick: () => handleFileDownload(fileMsg.azureFileName, fileMsg.displayFileName), style: {
|
|
20658
20658
|
background: 'none',
|
|
20659
20659
|
border: 'none',
|
|
20660
20660
|
cursor: 'pointer',
|
|
@@ -20662,19 +20662,19 @@ const MessageBubble = ({ id, message, sender, timestamp, className, isMe, status
|
|
|
20662
20662
|
padding: 4,
|
|
20663
20663
|
display: 'flex',
|
|
20664
20664
|
alignItems: 'center'
|
|
20665
|
-
}, "aria-label": `Download ${fileMsg.displayFileName}`, children: downloadIcon })] })) : (message) }) }), isMe && status === 'failed' ? (jsxs("div", { className: styles$
|
|
20666
|
-
handleResend(); }, children: "Message failed to send. Tap to send" })] })) : (timestamp && (jsxs("div", { className: `${styles$
|
|
20665
|
+
}, "aria-label": `Download ${fileMsg.displayFileName}`, children: downloadIcon })] })) : (message) }) }), isMe && status === 'failed' ? (jsxs("div", { className: styles$8.resendContainer, children: [jsx("button", { className: styles$8.resendButton, "aria-label": "Resend message", onClick: handleResend, children: "\u21BB" }), jsx("span", { className: styles$8.resendText, role: "button", tabIndex: 0, onClick: handleResend, onKeyPress: (e) => { if (e.key === 'Enter' || e.key === ' ')
|
|
20666
|
+
handleResend(); }, children: "Message failed to send. Tap to send" })] })) : (timestamp && (jsxs("div", { className: `${styles$8.timestamp} ${isMe ? styles$8.timestampRight : styles$8.timestampLeft}`, "aria-label": formatDateTime(timestamp), tabIndex: 0, children: [jsx("span", { children: formatDateTime(timestamp) }), isMe && (isDoubleTickVisible
|
|
20667
20667
|
? doubleTickIcon
|
|
20668
|
-
: singleTickIcon)] })))] }), isMe && jsx("div", { className: styles$
|
|
20668
|
+
: singleTickIcon)] })))] }), isMe && jsx("div", { className: styles$8.messageAvatar, children: initials })] }));
|
|
20669
20669
|
};
|
|
20670
20670
|
|
|
20671
|
-
var styles$
|
|
20671
|
+
var styles$7 = {"loadingIndicator":"LoadingIndicator-module_loadingIndicator__phmyb","small":"LoadingIndicator-module_small__5rLUm","medium":"LoadingIndicator-module_medium__Mrmmz","large":"LoadingIndicator-module_large__f-NZK","typingIndicator":"LoadingIndicator-module_typingIndicator__MKD5N","fadeInUp":"LoadingIndicator-module_fadeInUp__EOj1f","avatar":"LoadingIndicator-module_avatar__ENBiM","avatarIcon":"LoadingIndicator-module_avatarIcon__b5dcn","typingBubble":"LoadingIndicator-module_typingBubble__ZVgpL","bubblePulse":"LoadingIndicator-module_bubblePulse__kxvPK","typingDots":"LoadingIndicator-module_typingDots__l592e","typingDot":"LoadingIndicator-module_typingDot__JTeLv","dotsIndicator":"LoadingIndicator-module_dotsIndicator__vO9tb","dotPulse":"LoadingIndicator-module_dotPulse__qCfXV","spinnerIndicator":"LoadingIndicator-module_spinnerIndicator__u9Kqq","spinner":"LoadingIndicator-module_spinner__zyuLO","spin":"LoadingIndicator-module_spin__2DdOr","loadingText":"LoadingIndicator-module_loadingText__9cTaI"};
|
|
20672
20672
|
|
|
20673
20673
|
const LoadingIndicator = ({ text = 'Typing...', size = 'medium', type = 'typing', className }) => {
|
|
20674
20674
|
const renderIndicator = () => {
|
|
20675
|
-
return (jsx("div", { className: styles$
|
|
20675
|
+
return (jsx("div", { className: styles$7.spinnerIndicator, children: jsx("div", { className: styles$7.spinner }) }));
|
|
20676
20676
|
};
|
|
20677
|
-
return (jsx("div", { className: `${styles$
|
|
20677
|
+
return (jsx("div", { className: `${styles$7.loadingIndicator} ${styles$7[size]} ${className || ''}`, children: renderIndicator() }));
|
|
20678
20678
|
};
|
|
20679
20679
|
|
|
20680
20680
|
const MessageList = ({ className, autoScroll = true, isLoading = false }) => {
|
|
@@ -20710,7 +20710,7 @@ const MessageList = ({ className, autoScroll = true, isLoading = false }) => {
|
|
|
20710
20710
|
}
|
|
20711
20711
|
return { sender, isMe };
|
|
20712
20712
|
};
|
|
20713
|
-
return (jsxs("div", { ref: containerRef, className: `${styles$
|
|
20713
|
+
return (jsxs("div", { ref: containerRef, className: `${styles$9.messageList} ${className || ''}`, children: [!isInitialized && (jsx("div", { className: styles$9.loadingOverlay, children: jsx(LoadingIndicator, { size: "medium", type: "spinner" }) })), jsxs("div", { className: styles$9.messagesContainer, children: [((!messages || messages.length === 0) && isInitialized) ? (jsxs("div", { className: styles$9.emptyState, children: [jsx("div", { className: styles$9.emptyIcon, children: "\uD83D\uDCAC" }), jsx("p", { className: styles$9.emptyText, children: "No messages yet" }), jsx("p", { className: styles$9.emptySubtext, children: "Start the conversation!" })] })) : (messages.map((message, index) => {
|
|
20714
20714
|
const { sender, isMe } = getSenderInfo(message);
|
|
20715
20715
|
const timestamp = parseTimestamp(message.timestamp || message.createdOn);
|
|
20716
20716
|
// Compute initials from senderDisplayName
|
|
@@ -20724,11 +20724,33 @@ const MessageList = ({ className, autoScroll = true, isLoading = false }) => {
|
|
|
20724
20724
|
initials = (words[0][0] + words[words.length - 1][0]).toUpperCase();
|
|
20725
20725
|
}
|
|
20726
20726
|
}
|
|
20727
|
-
return (jsx(MessageBubble, { id: message.id, message: message.text || message.content || '', sender: sender, timestamp: timestamp, isMe: isMe, status: message.status, senderName: !isMe ? (message.senderDisplayName || 'Agent') : undefined, className: styles$
|
|
20728
|
-
})), jsx("div", { ref: messagesEndRef, className: styles$
|
|
20727
|
+
return (jsx(MessageBubble, { id: message.id, message: message.text || message.content || '', sender: sender, timestamp: timestamp, isMe: isMe, status: message.status, senderName: !isMe ? (message.senderDisplayName || 'Agent') : undefined, className: styles$9.messageBubbleWrapper, isDoubleTickVisible: message?.isDoubleTickVisible, initials: initials }, `${message.id}-${index}`));
|
|
20728
|
+
})), jsx("div", { ref: messagesEndRef, className: styles$9.messagesEnd })] })] }));
|
|
20729
20729
|
};
|
|
20730
20730
|
|
|
20731
|
-
var styles$
|
|
20731
|
+
var styles$6 = {"messageInputContainer":"MessageInput-module_messageInputContainer__THG-x","messageInputForm":"MessageInput-module_messageInputForm__vjBfB","inputWrapper":"MessageInput-module_inputWrapper__ETe-C","messageInput":"MessageInput-module_messageInput__Z-zjf","sendButton":"MessageInput-module_sendButton__HLC4z","sendIcon":"MessageInput-module_sendIcon__9IKHz","poweredBy":"MessageInput-module_poweredBy__jV9dG","encrypted":"MessageInput-module_encrypted__1zrE9","fileInput":"MessageInput-module_fileInput__FjTwQ","attachButton":"MessageInput-module_attachButton__xTonM","filePreview":"MessageInput-module_filePreview__xt76f","fileName":"MessageInput-module_fileName__oBEfl","removeFileButton":"MessageInput-module_removeFileButton__fVeV8"};
|
|
20732
|
+
|
|
20733
|
+
var styles$5 = {"toastContainer":"Toast-module_toastContainer__olAG3","toast":"Toast-module_toast__ngbBR"};
|
|
20734
|
+
|
|
20735
|
+
const ToastContext = createContext(null);
|
|
20736
|
+
const ToastProvider = ({ children }) => {
|
|
20737
|
+
const [toasts, setToasts] = useState([]);
|
|
20738
|
+
const show = (message) => {
|
|
20739
|
+
const id = String(Date.now()) + Math.random().toString(36).slice(2, 8);
|
|
20740
|
+
setToasts((t) => [...t, { id, message }]);
|
|
20741
|
+
setTimeout(() => {
|
|
20742
|
+
setToasts((t) => t.filter((x) => x.id !== id));
|
|
20743
|
+
}, 4000);
|
|
20744
|
+
};
|
|
20745
|
+
return (jsxs(ToastContext.Provider, { value: { show }, children: [children, jsx("div", { className: styles$5.toastContainer, "aria-live": "polite", children: toasts.map((t) => (jsx("div", { className: styles$5.toast, role: "status", children: t.message }, t.id))) })] }));
|
|
20746
|
+
};
|
|
20747
|
+
const useToast = () => {
|
|
20748
|
+
const ctx = useContext(ToastContext);
|
|
20749
|
+
if (!ctx) {
|
|
20750
|
+
return { show: (msg) => window.alert(msg) };
|
|
20751
|
+
}
|
|
20752
|
+
return ctx;
|
|
20753
|
+
};
|
|
20732
20754
|
|
|
20733
20755
|
const MessageInput = ({ disabled = false, className, onMessageSent }) => {
|
|
20734
20756
|
const [message, setMessage] = useState('');
|
|
@@ -20739,12 +20761,13 @@ const MessageInput = ({ disabled = false, className, onMessageSent }) => {
|
|
|
20739
20761
|
const dispatch = useDispatch();
|
|
20740
20762
|
const thread = useSelector(selectThread);
|
|
20741
20763
|
const userInformation = useSelector(selectUserInfo);
|
|
20764
|
+
const toast = useToast();
|
|
20742
20765
|
const handleFileSelect = (e) => {
|
|
20743
20766
|
const file = e.target.files?.[0];
|
|
20744
20767
|
if (file) {
|
|
20745
|
-
// Accept any file type (images, docs, etc.) but limit size to
|
|
20746
|
-
if (file.size >
|
|
20747
|
-
|
|
20768
|
+
// Accept any file type (images, docs, etc.) but limit size to 5MB
|
|
20769
|
+
if (file.size > 5 * 1024 * 1024) {
|
|
20770
|
+
toast.show('File size exceeds 5 MB. Please select a smaller file.');
|
|
20748
20771
|
return;
|
|
20749
20772
|
}
|
|
20750
20773
|
setSelectedFile(file);
|
|
@@ -20861,13 +20884,13 @@ const MessageInput = ({ disabled = false, className, onMessageSent }) => {
|
|
|
20861
20884
|
setIsSending(false);
|
|
20862
20885
|
}
|
|
20863
20886
|
};
|
|
20864
|
-
return (jsxs("div", { className: `${styles$
|
|
20887
|
+
return (jsxs("div", { className: `${styles$6.messageInputContainer} ${className || ''}`, children: [jsxs("form", { onSubmit: handleSubmit, className: styles$6.messageInputForm, children: [selectedFile && (jsxs("div", { className: styles$6.filePreview, children: [jsx("span", { className: styles$6.fileName, children: selectedFile.name }), jsx("button", { type: "button", onClick: handleRemoveFile, className: styles$6.removeFileButton, "aria-label": "Remove file", children: "\u00D7" })] })), jsxs("div", { className: styles$6.inputWrapper, children: [jsx("input", { ref: fileInputRef, type: "file",
|
|
20865
20888
|
// allow any file type
|
|
20866
|
-
onChange: handleFileSelect, className: styles$
|
|
20889
|
+
onChange: handleFileSelect, className: styles$6.fileInput, disabled: disabled || isSending, "aria-hidden": "true", tabIndex: -1, style: { display: 'none' } }), jsx("button", { type: "button", onClick: () => fileInputRef.current?.click(), className: styles$6.attachButton, disabled: disabled || isSending, "aria-label": "Attach file", children: jsxs("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", children: [jsx("path", { d: "M21 12v6a5 5 0 0 1-5 5H8a5 5 0 0 1-5-5V9a5 5 0 0 1 5-5h8", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }), jsx("path", { d: "M7 12V7a3 3 0 0 1 3-3h6", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" })] }) }), jsx("textarea", { value: message, onChange: (e) => setMessage(e.target.value), onKeyDown: handleKeyDown, placeholder: "Write message to your provider/support...", className: styles$6.messageInput, rows: 1, style: { resize: 'none' }, disabled: disabled || isSending }), jsx("button", { type: "submit", className: styles$6.sendButton, disabled: disabled || isSending || (!message.trim() && !selectedFile), "aria-label": "Send message", children: jsx("svg", { width: "32", height: "32", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", className: styles$6.sendIcon, children: jsx("path", { d: "M3.40571 20.9141L21.4057 12.9141C21.5826 12.8356 21.7329 12.7075 21.8384 12.5452C21.9439 12.383 22 12.1936 22 12.0001C22 11.8066 21.9439 11.6173 21.8384 11.455C21.7329 11.2928 21.5826 11.1646 21.4057 11.0861L3.40571 3.08613C3.23443 3.01003 3.04521 2.98361 2.85963 3.00986C2.67406 3.03611 2.49959 3.11399 2.35614 3.23461C2.21268 3.35524 2.10602 3.51374 2.0483 3.69206C1.99059 3.87038 1.98415 4.06133 2.02971 4.24313L3.71871 11.0001L12.9997 11.0001C13.2649 11.0001 13.5193 11.1055 13.7068 11.293C13.8944 11.4806 13.9997 11.7349 13.9997 12.0001C13.9997 12.2653 13.8944 12.5197 13.7068 12.7072C13.5193 12.8948 13.2649 13.0001 12.9997 13.0001L3.71871 13.0001L2.02971 19.7581C1.98439 19.9399 1.99101 20.1307 2.04883 20.3088C2.10665 20.487 2.21334 20.6453 2.35674 20.7658C2.50015 20.8863 2.67452 20.9641 2.85997 20.9903C3.04543 21.0165 3.23452 20.9901 3.40571 20.9141Z", fill: "#FFF1F0" }) }) })] })] }), jsxs("div", { className: styles$6.poweredBy, children: ["Powered by ", jsx("span", { className: styles$6.smarterEmr, children: "SmarterEMR" }), " | ", jsx("span", { className: styles$6.encrypted, children: "End-to-End Encrypted" })] })] }));
|
|
20867
20890
|
};
|
|
20868
20891
|
|
|
20869
20892
|
const ChatContainer = ({ isLoading = false, className }) => {
|
|
20870
|
-
return (jsxs("div", { className: `${styles$
|
|
20893
|
+
return (jsxs("div", { className: `${styles$a.chatContainer} ${className || ''}`, children: [jsx("div", { className: styles$a.messagesSection, children: jsx(MessageList, { isLoading: isLoading }) }), jsx("div", { className: styles$a.disclaimer, role: "note", "aria-live": "polite", children: "This is a private channel with your doctor for clinical questions. For billing/shipping/account issues, please reach out to support." }), jsx("div", { className: styles$a.chatInputWrapper, children: jsx(MessageInput, { disabled: false }) })] }));
|
|
20871
20894
|
};
|
|
20872
20895
|
|
|
20873
20896
|
var styles$4 = {"chatHeader":"ChatHeader-module_chatHeader__PKeNX","headerContent":"ChatHeader-module_headerContent__aUGqQ","leftSection":"ChatHeader-module_leftSection__rch5v","title":"ChatHeader-module_title__RNVxR","headerActions":"ChatHeader-module_headerActions__2Q0dr","menuButtonContainer":"ChatHeader-module_menuButtonContainer__n-Yl1","actionButton":"ChatHeader-module_actionButton__MXRK1"};
|
|
@@ -21065,7 +21088,7 @@ const InnerChatWidget = ({ initParams, primaryColor, secondaryColor, menuItems,
|
|
|
21065
21088
|
if (error) {
|
|
21066
21089
|
return (jsx(ErrorDisplay, { primaryColor: primaryColor, message: "We're having trouble loading this page. Please try again. If the issue persists, contact support.", onRetry: handleRefresh }));
|
|
21067
21090
|
}
|
|
21068
|
-
return (jsx("div", { className: styles$
|
|
21091
|
+
return (jsx("div", { className: styles$b.chatWidget, children: jsxs("div", { className: styles$b.chatWindow, children: [jsx(ChatHeader, { className: styles$b.header, onRefresh: handleRefresh, menuItems: menuItems, showMenu: showMenu }), jsx(ChatContainer, { isLoading: isInitializing })] }) }));
|
|
21069
21092
|
};
|
|
21070
21093
|
const ChatWidget = (props) => {
|
|
21071
21094
|
// Ensure API config is set synchronously so any initialization that runs
|
|
@@ -21078,7 +21101,7 @@ const ChatWidget = (props) => {
|
|
|
21078
21101
|
// If the host app provides a Redux store via context, give that store
|
|
21079
21102
|
// reference to the chatService so service actions dispatch to the
|
|
21080
21103
|
// host store and selectors in components will update correctly.
|
|
21081
|
-
context && context.store ? (jsx(ErrorBoundary, { primaryColor: props.primaryColor, children: jsx(InnerChatWidget, { ...props }) })) : (jsx(Provider_default, { store: store, children: jsx(ErrorBoundary, { primaryColor: props.primaryColor, children: jsx(InnerChatWidget, { ...props }) }) })) }));
|
|
21104
|
+
context && context.store ? (jsx(ErrorBoundary, { primaryColor: props.primaryColor, children: jsx(ToastProvider, { children: jsx(InnerChatWidget, { ...props }) }) })) : (jsx(Provider_default, { store: store, children: jsx(ErrorBoundary, { primaryColor: props.primaryColor, children: jsx(ToastProvider, { children: jsx(InnerChatWidget, { ...props }) }) }) })) }));
|
|
21082
21105
|
};
|
|
21083
21106
|
|
|
21084
21107
|
/**
|