|
26 | 26 | import { replaceNewLine } from '$lib/helpers/http'; |
27 | 27 | import { EditorType, SenderAction, UserRole } from '$lib/helpers/enums'; |
28 | 28 | import RichContent from './richContent/rich-content.svelte'; |
29 | | - import RcMessage from './richContent/rc-message.svelte'; |
30 | 29 | import ContentLog from './contentLogs/content-log.svelte'; |
31 | 30 | import _ from "lodash"; |
32 | 31 | import { Pane, Splitpanes } from 'svelte-splitpanes'; |
33 | 32 | import StateLog from './stateLogs/state-log.svelte'; |
34 | 33 | import ChatImage from './chatImage/chat-image.svelte'; |
35 | | - import ChatAttachment from './chatImage/chat-attachment.svelte'; |
36 | 34 | import Swal from 'sweetalert2/dist/sweetalert2.js'; |
37 | 35 | import "sweetalert2/src/sweetalert2.scss"; |
38 | 36 | import moment from 'moment'; |
| 37 | + import RcDisclaimer from './richContent/rc-disclaimer.svelte'; |
39 | 38 | |
40 | 39 | |
41 | 40 | const options = { |
|
857 | 856 | {#each dialogGroup as message} |
858 | 857 | <li id={'test_k' + message.message_id} |
859 | 858 | class:right={USER_SENDERS.includes(message.sender?.role)}> |
860 | | - <div class="conversation-list"> |
861 | | - {#if USER_SENDERS.includes(message.sender?.role)} |
862 | | - <div class="msg-container"> |
863 | | - <div |
864 | | - class="ctext-wrap user-msg" |
865 | | - class:clickable={!isLite && (isLoadContentLog || isLoadStateLog)} |
866 | | - id={`user-msg-${message.message_id}`} |
867 | | - tabindex="0" |
868 | | - aria-label="user-msg-to-log" |
869 | | - role="link" |
870 | | - on:keydown={() => {}} |
871 | | - on:click={() => directToLog(message.message_id)} |
872 | | - > |
873 | | - <div> |
874 | | - <!--<div class="conversation-name">{message.sender.full_name}</div>--> |
875 | | - <div class="text-start">{@html replaceNewLine(message.text)}</div> |
876 | | - <p class="chat-time mb-0"> |
877 | | - <i class="bx bx-time-five align-middle me-1" /> |
878 | | - <!-- {format(message.created_at, 'short-time')} --> |
879 | | - {utcToLocal(message.created_at, 'hh:mm A')} |
880 | | - </p> |
| 859 | + <div class="conv-msg-wrapper"> |
| 860 | + <div class="conv-msg-container"> |
| 861 | + {#if USER_SENDERS.includes(message.sender?.role)} |
| 862 | + <div class="msg-container"> |
| 863 | + <div |
| 864 | + class="ctext-wrap user-msg" |
| 865 | + class:clickable={!isLite && (isLoadContentLog || isLoadStateLog)} |
| 866 | + id={`user-msg-${message.message_id}`} |
| 867 | + tabindex="0" |
| 868 | + aria-label="user-msg-to-log" |
| 869 | + role="link" |
| 870 | + on:keydown={() => {}} |
| 871 | + on:click={() => directToLog(message.message_id)} |
| 872 | + > |
| 873 | + <div> |
| 874 | + <!--<div class="conversation-name">{message.sender.full_name}</div>--> |
| 875 | + <div class="text-start">{@html replaceNewLine(message.text)}</div> |
| 876 | + <p class="chat-time mb-0"> |
| 877 | + <i class="bx bx-time-five align-middle me-1" /> |
| 878 | + <!-- {format(message.created_at, 'short-time')} --> |
| 879 | + {utcToLocal(message.created_at, 'hh:mm A')} |
| 880 | + </p> |
| 881 | + </div> |
881 | 882 | </div> |
882 | 883 | </div> |
883 | | - <ChatImage message={message} /> |
884 | | - </div> |
885 | | - {#if !isLite} |
886 | | - <Dropdown> |
887 | | - <DropdownToggle class="dropdown-toggle" tag="span" disabled={isSendingMsg || isThinking}> |
888 | | - <i class="bx bx-dots-vertical-rounded" /> |
889 | | - </DropdownToggle> |
890 | | - <DropdownMenu class="dropdown-menu-end"> |
891 | | - <DropdownItem on:click={(e) => editMessage(e, message)}>Edit</DropdownItem> |
892 | | - <DropdownItem on:click={(e) => resendMessage(e, message)}>Resend</DropdownItem> |
893 | | - <DropdownItem on:click={(e) => deleteMessage(e, message.message_id)}>Delete</DropdownItem> |
894 | | - </DropdownMenu> |
895 | | - </Dropdown> |
896 | | - {/if} |
897 | | - {:else} |
898 | | - <div class="cicon-wrap"> |
899 | | - {#if message.sender.role == UserRole.Client} |
900 | | - <img src="images/users/user-dummy.jpg" class="rounded-circle avatar-xs" alt="avatar"> |
| 884 | + {#if !isLite} |
| 885 | + <Dropdown> |
| 886 | + <DropdownToggle class="dropdown-toggle" tag="span" disabled={isSendingMsg || isThinking}> |
| 887 | + <i class="bx bx-dots-vertical-rounded" /> |
| 888 | + </DropdownToggle> |
| 889 | + <DropdownMenu class="dropdown-menu-end"> |
| 890 | + <DropdownItem on:click={(e) => editMessage(e, message)}>Edit</DropdownItem> |
| 891 | + <DropdownItem on:click={(e) => resendMessage(e, message)}>Resend</DropdownItem> |
| 892 | + <DropdownItem on:click={(e) => deleteMessage(e, message.message_id)}>Delete</DropdownItem> |
| 893 | + </DropdownMenu> |
| 894 | + </Dropdown> |
| 895 | + {/if} |
901 | 896 | {:else} |
902 | | - <img src={PUBLIC_LIVECHAT_ENTRY_ICON} class="rounded-circle avatar-xs" alt="avatar"> |
| 897 | + <div class="cicon-wrap"> |
| 898 | + {#if message.sender.role == UserRole.Client} |
| 899 | + <img src="images/users/user-dummy.jpg" class="rounded-circle avatar-xs" alt="avatar"> |
| 900 | + {:else} |
| 901 | + <img src={PUBLIC_LIVECHAT_ENTRY_ICON} class="rounded-circle avatar-xs" alt="avatar"> |
| 902 | + {/if} |
| 903 | + </div> |
| 904 | + <div class="msg-container"> |
| 905 | + <RichContent |
| 906 | + message={message} |
| 907 | + lastBotMessage={lastBotMsg} |
| 908 | + disabled={isSendingMsg || isThinking} |
| 909 | + onConfirm={confirmSelectedOption} |
| 910 | + /> |
| 911 | + </div> |
903 | 912 | {/if} |
904 | 913 | </div> |
905 | | - <div class="msg-container"> |
906 | | - <RichContent |
907 | | - message={message} |
908 | | - lastBotMessage={lastBotMsg} |
909 | | - disabled={isSendingMsg || isThinking} |
910 | | - onConfirm={confirmSelectedOption} |
911 | | - /> |
912 | | - <ChatImage message={message} /> |
913 | | - </div> |
| 914 | + {#if USER_SENDERS.includes(message.sender?.role)} |
| 915 | + <RcDisclaimer message={message} /> |
914 | 916 | {/if} |
915 | 917 | </div> |
916 | 918 | </li> |
|
919 | 921 |
|
920 | 922 | {#if isThinking} |
921 | 923 | <li> |
922 | | - <div class="conversation-list"> |
923 | | - <div class="cicon-wrap float-start"> |
924 | | - <img src={PUBLIC_LIVECHAT_ENTRY_ICON} class="rounded-circle avatar-xs" alt="avatar"> |
925 | | - </div> |
926 | | - <div class="ctext-wrap float-start" style="display: flex;"> |
927 | | - <div class="flex-shrink-0 align-self-center"> |
928 | | - <LoadingDots duration={'1s'} size={10} color={'var(--bs-primary)'} /> |
| 924 | + <div class="conv-msg-wrapper"> |
| 925 | + <div class="conv-msg-container"> |
| 926 | + <div class="cicon-wrap float-start"> |
| 927 | + <img src={PUBLIC_LIVECHAT_ENTRY_ICON} class="rounded-circle avatar-xs" alt="avatar"> |
| 928 | + </div> |
| 929 | + <div class="ctext-wrap float-start" style="display: flex;"> |
| 930 | + <div class="flex-shrink-0 align-self-center"> |
| 931 | + <LoadingDots duration={'1s'} size={10} color={'var(--bs-primary)'} /> |
| 932 | + </div> |
929 | 933 | </div> |
930 | 934 | </div> |
931 | 935 | </div> |
|
0 commit comments