import { Route } from '@angular/router';

export const appRoutes: Route[] = [
  {
    path: '',
    loadComponent: () => import('./components/home/home.component').then(m => m.HomeComponent)
  },
  {
    path: 'games',
    loadComponent: () => import('./components/games/games-list.component').then(m => m.GamesListComponent)
  },
  {
    path: 'books',
    loadComponent: () => import('./components/books/books-list.component').then(m => m.BooksListComponent)
  },
  {
    path: 'music',
    loadComponent: () => import('./components/music/music-list.component').then(m => m.MusicListComponent)
  },
  {
    path: 'art',
    loadComponent: () => import('./components/art/art-gallery.component').then(m => m.ArtGalleryComponent)
  },
  {
    path: 'shows',
    loadComponent: () => import('./components/shows/shows-list.component').then(m => m.ShowsListComponent)
  },
  {
    path: 'manga',
    loadComponent: () => import('./components/manga/manga-list.component').then(m => m.MangaListComponent)
  },
  {
    path: 'games/:id',
    loadComponent: () => import('./components/games/game-detail.component').then(m => m.GameDetailComponent)
  },
  {
    path: 'books/:id',
    loadComponent: () => import('./components/books/book-detail.component').then(m => m.BookDetailComponent)
  },
  {
    path: 'music/:id',
    loadComponent: () => import('./components/music/music-detail.component').then(m => m.MusicDetailComponent)
  },
  {
    path: 'art/:id',
    loadComponent: () => import('./components/art/art-detail.component').then(m => m.ArtDetailComponent)
  },
  {
    path: 'shows/:id',
    loadComponent: () => import('./components/shows/show-detail.component').then(m => m.ShowDetailComponent)
  },
  {
    path: 'manga/:id',
    loadComponent: () => import('./components/manga/manga-detail.component').then(m => m.MangaDetailComponent)
  },
  {
    path: 'admin/users',
    loadComponent: () => import('./components/admin/admin-users.component').then(m => m.AdminUsersComponent)
  },
  {
    path: 'admin/audit',
    loadComponent: () => import('./components/admin/admin-audit.component').then(m => m.AdminAuditComponent)
  },
  {
    path: 'admin/suggestions',
    loadComponent: () => import('./components/admin/admin-suggestions.component').then(m => m.AdminSuggestionsComponent)
  },
  {
    path: 'admin/reports',
    loadComponent: () => import('./components/admin-reports/admin-reports.component').then(m => m.AdminReportsComponent)
  },
  {
    path: 'my-suggestions',
    loadComponent: () => import('./components/my-suggestions/my-suggestions.component').then(m => m.MySuggestionsComponent)
  },
  {
    path: 'my-likes',
    loadComponent: () => import('./components/my-likes/my-likes.component').then(m => m.MyLikesComponent)
  },
  {
    path: 'profile/:identifier',
    loadComponent: () => import('./components/profile/profile.component').then(m => m.ProfileComponent)
  },
  {
    path: 'settings',
    loadComponent: () => import('./components/settings/settings.component').then(m => m.SettingsComponent)
  },
  {
    path: 'achievements',
    loadComponent: () => import('./components/achievements/achievements.component').then(m => m.AchievementsComponent)
  },
  {
    path: 'leaderboard',
    loadComponent: () => import('./components/leaderboard/leaderboard.component').then(m => m.LeaderboardComponent)
  },
  {
    path: 'activity',
    loadComponent: () => import('./components/activity/activity-feed.component').then(m => m.ActivityFeedComponent)
  },
  {
    path: 'about',
    loadComponent: () => import('./components/about/about.component').then(m => m.AboutComponent)
  },
  {
    path: '**',
    redirectTo: ''
  }
];
