CFE-2 reinitializing call action tab

This commit is contained in:
2023-10-26 09:27:36 +03:30
parent 80d51c6c72
commit 3e3b04a769
14 changed files with 338 additions and 67 deletions

View File

@@ -0,0 +1,21 @@
import { Button, Stack } from "@mui/material";
import useCategories from "@/lib/callWidget/hooks/useCategories";
const CallActionCategoriesButton = ({ category, tab }) => {
const { setActiveCategoryID } = useCategories();
return (
<Stack sx={{ padding: 3 }}>
<Button
variant={"contained"}
color={tab.active_category_id === category.category_id ? "success" : "inherit"}
onClick={() => {
setActiveCategoryID(tab.id, category.category_id);
}}
>
{category.category_name}
</Button>
</Stack>
);
};
export default CallActionCategoriesButton;

View File

@@ -0,0 +1,15 @@
import { Stack } from "@mui/material";
import useCategories from "@/lib/callWidget/hooks/useCategories";
import CallActionCategoriesButton from "./CallActionCategoriesButton";
const CallActionsCategories = ({ tab }) => {
const { categoryLists } = useCategories();
return (
<Stack direction={"row"} spacing={2}>
{categoryLists.map((category) => {
return <CallActionCategoriesButton tab={tab} key={category.category_id} category={category} />;
})}
</Stack>
);
};
export default CallActionsCategories;

View File

@@ -0,0 +1,33 @@
import { Button, Stack } from "@mui/material";
import useCategories from "@/lib/callWidget/hooks/useCategories";
import useRequest from "@/lib/app/hooks/useRequest";
import { CALL_ACTION } from "@/core/data/apiRoutes";
import useAnswers from "@/lib/callWidget/hooks/useAnswers";
const CallActionSubcategoriesButton = ({ sub_category, tab }) => {
const requestServer = useRequest({ auth: true });
const { closeAnswerTab } = useAnswers();
const handleSubcategoryButton = () => {
requestServer(`${CALL_ACTION}/${tab.id}`, "post", {
data: {
category_id: sub_category.category_id,
subcategory_id: sub_category.subcategory_id,
},
success: {
notification: { show: false },
},
})
.then(() => {
closeAnswerTab(tab.id);
})
.catch(() => {});
};
return sub_category.category_id === tab.active_category_id ? (
<Stack sx={{ padding: 3 }}>
<Button onClick={handleSubcategoryButton} variant={"contained"}>
{sub_category.subcategory_name}
</Button>
</Stack>
) : null;
};
export default CallActionSubcategoriesButton;

View File

@@ -0,0 +1,15 @@
import useCategories from "@/lib/callWidget/hooks/useCategories";
import { Stack } from "@mui/material";
import CallActionSubcategoriesButton from "@/components/layouts/Dashboard/CallWidget/CallWidgetDialog/CallTabs/CallTabPanel/CallActions/CallActionSubcategories/CallActionSubcategoriesButton";
const CallActionsSubcategories = ({ tab }) => {
const { subCategoryLists } = useCategories();
return (
<Stack direction={"row"} spacing={2}>
{subCategoryLists.map((sub_category, index) => {
return <CallActionSubcategoriesButton key={index} tab={tab} sub_category={sub_category} />;
})}
</Stack>
);
};
export default CallActionsSubcategories;

View File

@@ -1,7 +1,13 @@
const CallActions = ({tab}) => {
import CallActionsCategories from "./CallActionCategories";
import CallActionSubcategoriesButton from "./CallActionSubcategories/CallActionSubcategoriesButton";
function CallActions({ tab }) {
return (
<>CallActions - {tab.id}</>
)
<>
<CallActionsCategories tab={tab} />
<CallActionSubcategoriesButton tab={tab} />
</>
);
}
export default CallActions
export default CallActions;