diff --git a/public/locales/fa/app.json b/public/locales/fa/app.json
index 0a1c31b..6ff5c7b 100644
--- a/public/locales/fa/app.json
+++ b/public/locales/fa/app.json
@@ -260,5 +260,10 @@
"call_history_not_found": "تاریخچه ای برای تماس دریافتی یافت نشد",
"call_history_error_fetching": "خطا در دریافت تاریخچه تماس دریافتی",
"show_more": "نمایش موارد بیشتر"
+ },
+ "CallAction": {
+ "call_history_of": "عملیات های مربوط به تماس",
+ "categories" : "موضوع ها",
+ "subcategories" : "زیر موضوع ها"
}
}
diff --git a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/ActionHeader/index.jsx b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/ActionHeader/index.jsx
new file mode 100644
index 0000000..9ae87c0
--- /dev/null
+++ b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/ActionHeader/index.jsx
@@ -0,0 +1,25 @@
+import {useTranslations} from "next-intl";
+import {Stack, Typography} from "@mui/material";
+
+const ActionHeader = ({tab}) => {
+ const t = useTranslations();
+ return (
+
+
+ .... {t("CallAction.call_history_of")}:
+
+
+ {tab.phone_number} ....
+
+
+ )
+}
+
+export default ActionHeader
diff --git a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionCategories/CallActionCategoriesButton.jsx b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionCategories/CallActionCategoriesButton.jsx
index d7c70f6..f568732 100644
--- a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionCategories/CallActionCategoriesButton.jsx
+++ b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionCategories/CallActionCategoriesButton.jsx
@@ -1,21 +1,24 @@
-import { Button, Stack } from "@mui/material";
+import { Button, Grid } from "@mui/material";
import useCategories from "@/lib/callWidget/hooks/useCategories";
const CallActionCategoriesButton = ({ category, tab }) => {
const { setActiveCategoryID } = useCategories();
return (
-
-
-
+
+
+
+
+
);
};
export default CallActionCategoriesButton;
diff --git a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionCategories/__test__/CallActionCategoriesButton.test.js b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionCategories/__test__/CallActionCategoriesButton.test.js
index e69de29..817bcde 100644
--- a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionCategories/__test__/CallActionCategoriesButton.test.js
+++ b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionCategories/__test__/CallActionCategoriesButton.test.js
@@ -0,0 +1,31 @@
+import {render, screen, waitFor} from "@testing-library/react";
+import MockAppWithProviders from "../../../../../../../../../../../mocks/AppWithProvider";
+import {AnswersProvider} from "@/lib/callWidget/contexts/answers";
+import CallActionCategoriesButton from "../CallActionCategoriesButton";
+
+const category = {
+ category_id: 1,
+ category_name: "اطلاعات راه ها",
+}
+const tab = {
+ active: true,
+ active_category_id: 1,
+}
+
+describe('Call Action Categories Button from Call Actions Categories', () => {
+ describe('Rendering', () => {
+ it('should categories names', async () => {
+ render(
+
+
+
+
+
+ )
+ const categoryElement = screen.queryByText("اطلاعات راه ها")
+ await waitFor(() => {
+ expect(categoryElement).toBeInTheDocument()
+ })
+ });
+ });
+});
\ No newline at end of file
diff --git a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionCategories/index.jsx b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionCategories/index.jsx
index c40d31c..d4dec8a 100644
--- a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionCategories/index.jsx
+++ b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionCategories/index.jsx
@@ -1,15 +1,22 @@
-import { Stack } from "@mui/material";
+import { Chip, Divider, Grid, Stack } from "@mui/material";
import useCategories from "@/lib/callWidget/hooks/useCategories";
import CallActionCategoriesButton from "./CallActionCategoriesButton";
+import { useTranslations } from "next-intl";
const CallActionsCategories = ({ tab }) => {
const { categoryLists } = useCategories();
+ const t = useTranslations();
return (
-
- {categoryLists.map((category) => {
- return ;
- })}
-
+ <>
+
+
+
+ {categoryLists.map((category) => {
+ return ;
+ })}
+
+
+ >
);
};
export default CallActionsCategories;
diff --git a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionSubcategories/CallActionSubcategoriesButton.jsx b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionSubcategories/CallActionSubcategoriesButton.jsx
index 381b56b..d3c893d 100644
--- a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionSubcategories/CallActionSubcategoriesButton.jsx
+++ b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionSubcategories/CallActionSubcategoriesButton.jsx
@@ -1,4 +1,4 @@
-import { Button, Stack } from "@mui/material";
+import { Button, Grid, Stack } from "@mui/material";
import useRequest from "@/lib/app/hooks/useRequest";
import { CALL_ACTION } from "@/core/data/apiRoutes";
import useAnswers from "@/lib/callWidget/hooks/useAnswers";
@@ -22,11 +22,11 @@ const CallActionSubcategoriesButton = ({ sub_category, tab }) => {
.catch(() => {});
};
return sub_category.category_id === tab.active_category_id ? (
-
-
+
) : null;
};
export default CallActionSubcategoriesButton;
diff --git a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionSubcategories/__test__/CallActionSubcategoriesButton.test.js b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionSubcategories/__test__/CallActionSubcategoriesButton.test.js
index e69de29..55e69e0 100644
--- a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionSubcategories/__test__/CallActionSubcategoriesButton.test.js
+++ b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionSubcategories/__test__/CallActionSubcategoriesButton.test.js
@@ -0,0 +1,41 @@
+import {render, screen, waitFor} from "@testing-library/react";
+import MockAppWithProviders from "../../../../../../../../../../../mocks/AppWithProvider";
+import {AnswersProvider} from "@/lib/callWidget/contexts/answers";
+import CallActionSubcategoriesButton from "../CallActionSubcategoriesButton";
+
+const sub_category = [
+ {
+ category_id: 1,
+ category_name: "اطلاعات راه",
+ subcategory_id: 1,
+ subcategory_name:"اطلاعات باز و بسته"
+ }
+]
+
+const tab = [
+ {
+ active: true,
+ active_category_id: 1,
+ date: new Date(),
+ id: 1,
+ phone_number: "09134849737"
+ }
+]
+
+describe('Call Action Subcategories Button from Call Actions Categories', () => {
+ describe('Rendering', () => {
+ it('should categories names', async () => {
+ render(
+
+
+
+
+
+ )
+ const subCategoryElement = screen.queryByText("اطلاعات باز و بسته")
+ await waitFor(()=>{
+ expect(subCategoryElement).toBeInTheDocument()
+ })
+ });
+ });
+});
\ No newline at end of file
diff --git a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionSubcategories/index.jsx b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionSubcategories/index.jsx
index 7e270bb..dba6fc1 100644
--- a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionSubcategories/index.jsx
+++ b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionSubcategories/index.jsx
@@ -1,15 +1,22 @@
import useCategories from "@/lib/callWidget/hooks/useCategories";
-import { Stack } from "@mui/material";
+import { Chip, Divider, Grid, Stack } from "@mui/material";
import CallActionSubcategoriesButton from "@/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionSubcategories/CallActionSubcategoriesButton";
+import { useTranslations } from "next-intl";
const CallActionsSubcategories = ({ tab }) => {
const { subCategoryLists } = useCategories();
+ const t = useTranslations();
return (
-
- {subCategoryLists.map((sub_category, index) => {
- return ;
- })}
-
+ <>
+
+
+
+ {subCategoryLists.map((sub_category, index) => {
+ return ;
+ })}
+
+
+ >
);
};
export default CallActionsSubcategories;
diff --git a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/index.jsx b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/index.jsx
index 1243278..d0c21f9 100644
--- a/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/index.jsx
+++ b/src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/index.jsx
@@ -1,9 +1,12 @@
+import { Divider } from "@mui/material";
import CallActionsCategories from "./CallActionCategories";
import CallActionsSubcategories from "./CallActionSubcategories";
+import ActionHeader from "./ActionHeader";
function CallActions({ tab }) {
return (
<>
+
>