spotube/lib/collections/side_bar_tiles.dart
Kingkor Roy Tirtho 5567214588
feat: add new icons #2676 by @alexio-dev (#2678)
* feat: add new improved logo

* feat: add new improved logo

* feat: add new improved logo

* feat: add new improved logo

* chore: update the logos in app

* Merge branch 'alexio-dev-refactor/new-icons' into refactor/new-icons #2676

* chore: generate icons for every flavor

* chore: add readme banner

* chore: add back deleted images

* chore: update native splash screen

* chore: fix dart analyzer warnings
2025-04-25 21:55:59 +06:00

115 lines
2.9 KiB
Dart

import 'package:auto_route/auto_route.dart';
import 'package:shadcn_flutter/shadcn_flutter.dart';
import 'package:spotube/collections/routes.gr.dart';
import 'package:spotube/collections/spotube_icons.dart';
import 'package:spotube/l10n/l10n.dart';
class SideBarTiles {
final IconData icon;
final String title;
final String id;
final String pathPrefix;
final PageRouteInfo route;
SideBarTiles({
required this.icon,
required this.title,
required this.id,
required this.route,
required this.pathPrefix,
});
}
List<SideBarTiles> getSidebarTileList(AppLocalizations l10n) => [
SideBarTiles(
id: "home",
pathPrefix: "/home",
route: const HomeRoute(),
icon: SpotubeIcons.home,
title: l10n.browse,
),
SideBarTiles(
id: "search",
pathPrefix: "/search",
route: const SearchRoute(),
icon: SpotubeIcons.search,
title: l10n.search,
),
SideBarTiles(
id: "lyrics",
pathPrefix: "/lyrics",
route: const LyricsRoute(),
icon: SpotubeIcons.music,
title: l10n.lyrics,
),
SideBarTiles(
id: "stats",
pathPrefix: "/stats",
route: const StatsRoute(),
icon: SpotubeIcons.chart,
title: l10n.stats,
),
];
List<SideBarTiles> getSidebarLibraryTileList(AppLocalizations l10n) => [
SideBarTiles(
id: "playlists",
pathPrefix: "/library/playlists",
title: l10n.playlists,
route: const UserPlaylistsRoute(),
icon: SpotubeIcons.playlist,
),
SideBarTiles(
id: "artists",
pathPrefix: "/library/artists",
title: l10n.artists,
route: const UserArtistsRoute(),
icon: SpotubeIcons.artist,
),
SideBarTiles(
id: "albums",
pathPrefix: "/library/albums",
title: l10n.albums,
route: const UserAlbumsRoute(),
icon: SpotubeIcons.album,
),
SideBarTiles(
id: "local_library",
pathPrefix: "/library/local",
title: l10n.local_library,
route: const UserLocalLibraryRoute(),
icon: SpotubeIcons.device,
),
];
List<SideBarTiles> getNavbarTileList(AppLocalizations l10n) => [
SideBarTiles(
id: "home",
pathPrefix: "/home",
route: const HomeRoute(),
icon: SpotubeIcons.home,
title: l10n.browse,
),
SideBarTiles(
id: "search",
pathPrefix: "/search",
route: const SearchRoute(),
icon: SpotubeIcons.search,
title: l10n.search,
),
SideBarTiles(
id: "library",
pathPrefix: "/library",
route: const UserPlaylistsRoute(),
icon: SpotubeIcons.library,
title: l10n.library,
),
SideBarTiles(
id: "stats",
pathPrefix: "/stats",
route: const StatsRoute(),
icon: SpotubeIcons.chart,
title: l10n.stats,
),
];