diff --git a/src/langs/fa.json b/src/langs/fa.json
index 6e16381..c87b701 100644
--- a/src/langs/fa.json
+++ b/src/langs/fa.json
@@ -187,7 +187,8 @@
"danak_sujescet": "پیشنهاد داناک",
"plans": "پلن ها",
"add_plan": "افزودن پلن",
- "active_plan": "پلن فعال"
+ "active_plan": "پلن فعال",
+ "slider": "نمایش در اسلایدر"
},
"plan": {
"plans_list": "لیست پلن های ",
diff --git a/src/pages/service/List.tsx b/src/pages/service/List.tsx
index dbe5b08..5772dfc 100644
--- a/src/pages/service/List.tsx
+++ b/src/pages/service/List.tsx
@@ -14,6 +14,7 @@ import moment from 'moment-jalaali'
import Pagination from '../../components/Pagination'
import ToggleStatusService from './components/ToggleStatusService'
import CheckBoxComponent from '../../components/CheckBoxComponent'
+import ToggleSliderService from './components/ToggleSliderService'
const ListService: FC = () => {
@@ -109,6 +110,7 @@ const ListService: FC = () => {
|
|
|
+ |
|
|
@@ -153,6 +155,12 @@ const ListService: FC = () => {
status={item.isActive}
/>
+
+
+ |
diff --git a/src/pages/service/components/ToggleSliderService.tsx b/src/pages/service/components/ToggleSliderService.tsx
new file mode 100644
index 0000000..61d0815
--- /dev/null
+++ b/src/pages/service/components/ToggleSliderService.tsx
@@ -0,0 +1,28 @@
+import { FC, useState } from 'react'
+import { useToggleSliderService } from '../hooks/useServiceData'
+import SwitchComponent from '../../../components/Switch'
+
+type Props = {
+ id: string,
+ status: boolean,
+}
+
+const ToggleSliderService: FC = (props: Props) => {
+
+ const [isActive, setIsActive] = useState(props.status)
+ const toggleStatus = useToggleSliderService()
+
+ const handleChange = (value: boolean) => {
+ setIsActive(value)
+ toggleStatus.mutate(props.id)
+ }
+
+ return (
+
+ )
+}
+
+export default ToggleSliderService
\ No newline at end of file
diff --git a/src/pages/service/hooks/useServiceData.ts b/src/pages/service/hooks/useServiceData.ts
index 2301d73..bb83edc 100644
--- a/src/pages/service/hooks/useServiceData.ts
+++ b/src/pages/service/hooks/useServiceData.ts
@@ -99,6 +99,12 @@ export const useToggleStatusService = () => {
});
};
+export const useToggleSliderService = () => {
+ return useMutation({
+ mutationFn: (id: string) => api.toggleSliderService(id),
+ });
+};
+
export const useCreatePlan = () => {
return useMutation({
mutationFn: (variables: CreatePlanType) => api.createPlan(variables),
diff --git a/src/pages/service/service/ServiceService.ts b/src/pages/service/service/ServiceService.ts
index a2cb96f..1aa06b2 100644
--- a/src/pages/service/service/ServiceService.ts
+++ b/src/pages/service/service/ServiceService.ts
@@ -161,3 +161,8 @@ export const deleteCategory = async (id: string) => {
const { data } = await axios.delete(`/danak-services/categories/${id}`);
return data;
};
+
+export const toggleSliderService = async (id: string) => {
+ const { data } = await axios.post(`/danak-services/toggle-slider/${id}`);
+ return data;
+};
diff --git a/src/pages/service/types/ServiceTypes.ts b/src/pages/service/types/ServiceTypes.ts
index ea5324c..ee8d320 100644
--- a/src/pages/service/types/ServiceTypes.ts
+++ b/src/pages/service/types/ServiceTypes.ts
@@ -54,6 +54,7 @@ export type ServiceItemType = {
isActive: boolean;
icon: string;
subscriptionCount: number;
+ showInSlider: boolean;
};
export type CreateItemPlanType = {
|