diff --git a/admin/src/routes/menus/+page.svelte b/admin/src/routes/menus/+page.svelte
index 850616c0..dd282d43 100644
--- a/admin/src/routes/menus/+page.svelte
+++ b/admin/src/routes/menus/+page.svelte
@@ -11,20 +11,26 @@
const pageTitle = 'Menü Yönetimi | Admin Panel';
+ // Backend Menu model: id, name, link, subMenu, icon, active, order, categories[], createdAt, updatedAt
+ interface MenuCategory {
+ id: number;
+ name: string;
+ }
interface Menu {
- id: string;
+ id: number;
name: string;
- slug: string;
- url: string;
+ link: string;
+ subMenu: number;
+ icon?: string | null;
+ active: boolean;
order: number;
- isActive: boolean;
- parentId?: string;
- categoryId?: string;
+ categories?: MenuCategory[];
createdAt: string;
updatedAt: string;
}
let menus: Menu[] = [];
+ let menuCategories: MenuCategory[] = [];
let loading = false;
let isModalOpen = false;
let isDeleteModalOpen = false;
@@ -35,28 +41,28 @@
let totalItems = 0;
const itemsPerPage = 10;
- // Form data
+ // Form data (backend field names)
let formData = {
name: '',
- slug: '',
- url: '',
+ link: '',
order: 0,
- isActive: true,
- parentId: '',
- categoryId: ''
+ active: true,
+ subMenu: 0,
+ icon: '',
+ categoryIds: [] as number[]
};
const columns = [
{ key: 'name', label: 'Menü Adı' },
- { key: 'slug', label: 'Slug' },
- { key: 'url', label: 'URL' },
+ { key: 'link', label: 'URL' },
{ key: 'order', label: 'Sıra' },
- { key: 'isActive', label: 'Aktif' },
+ { key: 'active', label: 'Aktif' },
{ key: 'createdAt', label: 'Oluşturulma' }
];
onMount(() => {
loadMenus();
+ loadMenuCategories();
});
async function loadMenus() {
@@ -64,8 +70,8 @@
try {
const response = await getData