From da7b7852b02bb51acb1f782a3a467e66d6f5dbc8 Mon Sep 17 00:00:00 2001 From: Mohammad Jalali Date: Sun, 19 Nov 2023 14:23:06 +0330 Subject: [PATCH 1/5] CFE-17 fixed porblem of call history showing --- public/locales/fa/app.json | 3 ++- .../ListItemOfCalls/PreviousOperatorData/index.jsx | 7 +++++-- .../CallHistory/ListItemOfCalls/Topics/index.jsx | 4 ++-- .../CallTabs/CallTabPanel/CallHistory/index.jsx | 8 ++++---- 4 files changed, 13 insertions(+), 9 deletions(-) diff --git a/public/locales/fa/app.json b/public/locales/fa/app.json index 21776ae..3224263 100644 --- a/public/locales/fa/app.json +++ b/public/locales/fa/app.json @@ -261,7 +261,8 @@ "call_history_of": "تاریخچه تماس های", "call_history_not_found": "تاریخچه ای برای تماس دریافتی یافت نشد", "call_history_error_fetching": "خطا در دریافت تاریخچه تماس دریافتی", - "show_more": "نمایش موارد بیشتر" + "show_more": "نمایش موارد بیشتر", + "no_data_exist": "اطلاعاتی موجود نیست" }, "CallAction": { "call_history_of": "عملیات های مربوط به تماس", diff --git a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/PreviousOperatorData/index.jsx b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/PreviousOperatorData/index.jsx index afd2ad7..357c6e8 100644 --- a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/PreviousOperatorData/index.jsx +++ b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/PreviousOperatorData/index.jsx @@ -1,8 +1,11 @@ import {useTranslations} from "next-intl"; import {Avatar, Box, ListItem, ListItemAvatar, ListItemText, Typography} from "@mui/material"; import HeadsetMicIcon from '@mui/icons-material/HeadsetMic'; +import useLanguage from "@/lib/app/hooks/useLanguage"; +import moment from "jalali-moment"; const PreviousOperatorData = ({historyItem}) => { + const {languageApp} = useLanguage() const t = useTranslations(); return ( @@ -14,13 +17,13 @@ const PreviousOperatorData = ({historyItem}) => { - {historyItem.operator_name} + {historyItem.operator_full_name} ({t("CallHistory.operator")}) - } secondary={historyItem.answer_date}/> + } secondary={moment(historyItem.created_at).locale(languageApp).format("HH:mm:ss | YYYY/MM/DD")}/> ) } diff --git a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/Topics/index.jsx b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/Topics/index.jsx index 3b57744..c9be4c0 100644 --- a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/Topics/index.jsx +++ b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/Topics/index.jsx @@ -12,7 +12,7 @@ const Topics = ({historyItem}) => { {t("CallHistory.category_name")}: - {historyItem.category_name} + {historyItem.category_name || t("CallHistory.no_data_exist")} @@ -31,7 +31,7 @@ const Topics = ({historyItem}) => { textAlign: "end", color: "#837e7e" }}> - {historyItem.subcategory_name} + {historyItem.subcategory_name || t("CallHistory.no_data_exist")} diff --git a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/index.jsx b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/index.jsx index 9d61cce..1ac6e1e 100644 --- a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/index.jsx +++ b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/index.jsx @@ -6,7 +6,7 @@ import HistoryHeader from "./HistoryHeader"; import ErrorOrEmpty from "./ErrorOrEmpty"; import useCallerHistory from "@/lib/callWidget/hooks/useCallerHistory"; import ListItemOfCalls from "./ListItemOfCalls"; -import {useState} from "react"; +import {Fragment, useState} from "react"; const max_size = 10; const CallHistory = ({tab}) => { @@ -40,7 +40,7 @@ const CallHistory = ({tab}) => { } onClick={() => setShowRestOfHistory(true)} - label={t("show_more")} + label={t("CallHistory.show_more")} disabled={showRestOfHistory} /> @@ -48,10 +48,10 @@ const CallHistory = ({tab}) => { {showRestOfHistory && ( <> {historyList.map((historyItem, index) => ( - <> + - + ))} ) } From eafade3eca1ff68e55cecaec776b46f409396218 Mon Sep 17 00:00:00 2001 From: Mohammad Jalali Date: Sun, 19 Nov 2023 14:37:33 +0330 Subject: [PATCH 2/5] CFE-17 debug test of this feature --- .../PreviousOperatorData/__tests__/index.test.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/PreviousOperatorData/__tests__/index.test.js b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/PreviousOperatorData/__tests__/index.test.js index 4fd4519..2dc3622 100644 --- a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/PreviousOperatorData/__tests__/index.test.js +++ b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/PreviousOperatorData/__tests__/index.test.js @@ -5,8 +5,8 @@ import PreviousOperatorData from "../../PreviousOperatorData"; describe("PreviousOperatorData Component From call history", () => { describe("Rendering", () => { const historyItem = { - operator_name: "test name", - answer_date: "test date" + operator_full_name: "test name", + created_at: "2023-11-19T10:32:48.000000Z" } it("operator name rendered", () => { render(); @@ -15,7 +15,7 @@ describe("PreviousOperatorData Component From call history", () => { }); it("operator answer date rendered", () => { render(); - const operatorAnswerDate = screen.queryByText("test date"); + const operatorAnswerDate = screen.queryByText("14:02:48 | 1402/08/28"); expect(operatorAnswerDate).toBeInTheDocument(); }); }); From 16a890fe823799bef80f486bbbf8d3cff8f20f3f Mon Sep 17 00:00:00 2001 From: AmirHossein Mahmoodi Date: Mon, 20 Nov 2023 10:41:00 +0330 Subject: [PATCH 3/5] CFE-17 Fixed bug revalidating call history --- src/lib/callWidget/hooks/useCallerHistory.jsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/callWidget/hooks/useCallerHistory.jsx b/src/lib/callWidget/hooks/useCallerHistory.jsx index 810209d..7fe1100 100644 --- a/src/lib/callWidget/hooks/useCallerHistory.jsx +++ b/src/lib/callWidget/hooks/useCallerHistory.jsx @@ -16,7 +16,7 @@ const useCallerHistory = (call_id, phone_number, max_size) => { }; const {data, isLoading} = useSWR(`${GET_CALLER_HISTORY}?phone_number=${phone_number}&size=${max_size}`, fetcher, { - revalidateIfStale: false, + revalidateIfStale: true, revalidateOnFocus: false, revalidateOnReconnect: false, keepPreviousData: true From cf5de60faec16c2b8b97a9fd9e4ab4dc510cb9ee Mon Sep 17 00:00:00 2001 From: AmirHossein Mahmoodi Date: Mon, 20 Nov 2023 10:56:17 +0330 Subject: [PATCH 4/5] CFE-17 Fixed bug test --- .../PreviousOperatorData/__tests__/index.test.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/PreviousOperatorData/__tests__/index.test.js b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/PreviousOperatorData/__tests__/index.test.js index 2dc3622..c82a07c 100644 --- a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/PreviousOperatorData/__tests__/index.test.js +++ b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/PreviousOperatorData/__tests__/index.test.js @@ -1,6 +1,7 @@ import {render, screen} from "@testing-library/react"; import MockAppWithProviders from "../../../../../../../../../../../../mocks/AppWithProvider"; import PreviousOperatorData from "../../PreviousOperatorData"; +import moment from "jalali-moment"; describe("PreviousOperatorData Component From call history", () => { describe("Rendering", () => { @@ -14,6 +15,7 @@ describe("PreviousOperatorData Component From call history", () => { expect(operatorName).toBeInTheDocument(); }); it("operator answer date rendered", () => { + console.log(moment(historyItem.created_at).locale('fa').format("HH:mm:ss | YYYY/MM/DD")) render(); const operatorAnswerDate = screen.queryByText("14:02:48 | 1402/08/28"); expect(operatorAnswerDate).toBeInTheDocument(); From bb6aa6ba81236f6c91d1441c1322b724c675d3d4 Mon Sep 17 00:00:00 2001 From: AmirHossein Mahmoodi Date: Mon, 20 Nov 2023 11:10:48 +0330 Subject: [PATCH 5/5] CFE-17 Fixed bug test --- .../PreviousOperatorData/__tests__/index.test.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/PreviousOperatorData/__tests__/index.test.js b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/PreviousOperatorData/__tests__/index.test.js index c82a07c..c057146 100644 --- a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/PreviousOperatorData/__tests__/index.test.js +++ b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallHistory/ListItemOfCalls/PreviousOperatorData/__tests__/index.test.js @@ -7,7 +7,7 @@ describe("PreviousOperatorData Component From call history", () => { describe("Rendering", () => { const historyItem = { operator_full_name: "test name", - created_at: "2023-11-19T10:32:48.000000Z" + created_at: "2023-11-19T10:32:48" } it("operator name rendered", () => { render(); @@ -15,9 +15,9 @@ describe("PreviousOperatorData Component From call history", () => { expect(operatorName).toBeInTheDocument(); }); it("operator answer date rendered", () => { - console.log(moment(historyItem.created_at).locale('fa').format("HH:mm:ss | YYYY/MM/DD")) + const dateTime = moment(historyItem.created_at).locale('fa').format("HH:mm:ss | YYYY/MM/DD") render(); - const operatorAnswerDate = screen.queryByText("14:02:48 | 1402/08/28"); + const operatorAnswerDate = screen.queryByText(dateTime); expect(operatorAnswerDate).toBeInTheDocument(); }); });