fix: Fix Map page

This commit is contained in:
2025-06-12 22:50:43 +03:00
parent 27cb644242
commit 300ff262ce
41 changed files with 2216 additions and 1055 deletions

View File

@ -2,9 +2,10 @@ import { DataGrid, GridColDef, GridRenderCellParams } from "@mui/x-data-grid";
import { languageStore, cityStore, CashedCities } from "@shared";
import { useEffect, useState } from "react";
import { observer } from "mobx-react-lite";
import { Eye, Pencil, Trash2 } from "lucide-react";
import { Eye, Pencil, Trash2, Minus } from "lucide-react";
import { useNavigate } from "react-router-dom";
import { CreateButton, DeleteModal, LanguageSwitcher } from "@widgets";
import { toast } from "react-toastify";
export const CityListPage = observer(() => {
const { cities, getCities, deleteCity } = cityStore;
@ -22,11 +23,33 @@ export const CityListPage = observer(() => {
field: "country",
headerName: "Страна",
width: 150,
renderCell: (params: GridRenderCellParams) => {
return (
<div className="w-full h-full flex items-center">
{params.value ? (
params.value
) : (
<Minus size={20} className="text-red-500" />
)}
</div>
);
},
},
{
field: "name",
headerName: "Название",
flex: 1,
renderCell: (params: GridRenderCellParams) => {
return (
<div className="w-full h-full flex items-center">
{params.value ? (
params.value
) : (
<Minus size={20} className="text-red-500" />
)}
</div>
);
},
},
{
field: "actions",
@ -58,7 +81,7 @@ export const CityListPage = observer(() => {
},
];
const rows = cities[language].map((city) => ({
const rows = cities[language]?.data?.map((city) => ({
id: city.id,
name: city.name,
country: city.country,
@ -85,7 +108,8 @@ export const CityListPage = observer(() => {
open={isDeleteModalOpen}
onDelete={async () => {
if (rowId) {
deleteCity(rowId.toString(), language as keyof CashedCities);
await deleteCity(rowId.toString());
toast.success("Город успешно удален");
}
setIsDeleteModalOpen(false);
setRowId(null);