From 45a9c3b2a080567d910e0f436a3a9f3c2768ecd2 Mon Sep 17 00:00:00 2001 From: AminGhasempoor Date: Sat, 28 Oct 2023 15:17:48 +0330 Subject: [PATCH] CFE-2 styling buttons --- public/locales/fa/app.json | 5 +++ .../CallActions/ActionHeader/index.jsx | 25 +++++++++++ .../CallActionCategoriesButton.jsx | 27 ++++++------ .../CallActionCategoriesButton.test.js | 31 ++++++++++++++ .../CallActionCategories/index.jsx | 19 ++++++--- .../CallActionSubcategoriesButton.jsx | 8 ++-- .../CallActionSubcategoriesButton.test.js | 41 +++++++++++++++++++ .../CallActionSubcategories/index.jsx | 19 ++++++--- .../CallTabPanel/CallActions/index.jsx | 3 ++ 9 files changed, 150 insertions(+), 28 deletions(-) create mode 100644 src/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/ActionHeader/index.jsx 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 ( <> +