feat: massive front-end overhaul and initial github release

This commit is contained in:
Simeon Radivoev 2026-02-08 21:18:10 +02:00
parent a2b40e38bf
commit d5a0e70580
Signed by: simeonradivoev
GPG key ID: 7611A451D2A5D37A
303 changed files with 19840 additions and 676 deletions

View file

@ -0,0 +1,178 @@
/* eslint-disable */
// @ts-nocheck
// noinspection JSUnusedGlobalSymbols
// This file was automatically generated by TanStack Router.
// You should NOT make any changes in this file as it will be overwritten.
// Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified.
import { Route as rootRouteImport } from './../routes/__root'
import { Route as SettingsRouteRouteImport } from './../routes/settings/route'
import { Route as IndexRouteImport } from './../routes/index'
import { Route as SettingsAccountsRouteImport } from './../routes/settings/accounts'
import { Route as PlatformIdRouteImport } from './../routes/platform/$id'
import { Route as GameIdRouteImport } from './../routes/game/$id'
import { Route as CollectionIdRouteImport } from './../routes/collection/$id'
const SettingsRouteRoute = SettingsRouteRouteImport.update({
id: '/settings',
path: '/settings',
getParentRoute: () => rootRouteImport,
} as any)
const IndexRoute = IndexRouteImport.update({
id: '/',
path: '/',
getParentRoute: () => rootRouteImport,
} as any)
const SettingsAccountsRoute = SettingsAccountsRouteImport.update({
id: '/accounts',
path: '/accounts',
getParentRoute: () => SettingsRouteRoute,
} as any)
const PlatformIdRoute = PlatformIdRouteImport.update({
id: '/platform/$id',
path: '/platform/$id',
getParentRoute: () => rootRouteImport,
} as any)
const GameIdRoute = GameIdRouteImport.update({
id: '/game/$id',
path: '/game/$id',
getParentRoute: () => rootRouteImport,
} as any)
const CollectionIdRoute = CollectionIdRouteImport.update({
id: '/collection/$id',
path: '/collection/$id',
getParentRoute: () => rootRouteImport,
} as any)
export interface FileRoutesByFullPath {
'/': typeof IndexRoute
'/settings': typeof SettingsRouteRouteWithChildren
'/collection/$id': typeof CollectionIdRoute
'/game/$id': typeof GameIdRoute
'/platform/$id': typeof PlatformIdRoute
'/settings/accounts': typeof SettingsAccountsRoute
}
export interface FileRoutesByTo {
'/': typeof IndexRoute
'/settings': typeof SettingsRouteRouteWithChildren
'/collection/$id': typeof CollectionIdRoute
'/game/$id': typeof GameIdRoute
'/platform/$id': typeof PlatformIdRoute
'/settings/accounts': typeof SettingsAccountsRoute
}
export interface FileRoutesById {
__root__: typeof rootRouteImport
'/': typeof IndexRoute
'/settings': typeof SettingsRouteRouteWithChildren
'/collection/$id': typeof CollectionIdRoute
'/game/$id': typeof GameIdRoute
'/platform/$id': typeof PlatformIdRoute
'/settings/accounts': typeof SettingsAccountsRoute
}
export interface FileRouteTypes {
fileRoutesByFullPath: FileRoutesByFullPath
fullPaths:
| '/'
| '/settings'
| '/collection/$id'
| '/game/$id'
| '/platform/$id'
| '/settings/accounts'
fileRoutesByTo: FileRoutesByTo
to:
| '/'
| '/settings'
| '/collection/$id'
| '/game/$id'
| '/platform/$id'
| '/settings/accounts'
id:
| '__root__'
| '/'
| '/settings'
| '/collection/$id'
| '/game/$id'
| '/platform/$id'
| '/settings/accounts'
fileRoutesById: FileRoutesById
}
export interface RootRouteChildren {
IndexRoute: typeof IndexRoute
SettingsRouteRoute: typeof SettingsRouteRouteWithChildren
CollectionIdRoute: typeof CollectionIdRoute
GameIdRoute: typeof GameIdRoute
PlatformIdRoute: typeof PlatformIdRoute
}
declare module '@tanstack/react-router' {
interface FileRoutesByPath {
'/settings': {
id: '/settings'
path: '/settings'
fullPath: '/settings'
preLoaderRoute: typeof SettingsRouteRouteImport
parentRoute: typeof rootRouteImport
}
'/': {
id: '/'
path: '/'
fullPath: '/'
preLoaderRoute: typeof IndexRouteImport
parentRoute: typeof rootRouteImport
}
'/settings/accounts': {
id: '/settings/accounts'
path: '/accounts'
fullPath: '/settings/accounts'
preLoaderRoute: typeof SettingsAccountsRouteImport
parentRoute: typeof SettingsRouteRoute
}
'/platform/$id': {
id: '/platform/$id'
path: '/platform/$id'
fullPath: '/platform/$id'
preLoaderRoute: typeof PlatformIdRouteImport
parentRoute: typeof rootRouteImport
}
'/game/$id': {
id: '/game/$id'
path: '/game/$id'
fullPath: '/game/$id'
preLoaderRoute: typeof GameIdRouteImport
parentRoute: typeof rootRouteImport
}
'/collection/$id': {
id: '/collection/$id'
path: '/collection/$id'
fullPath: '/collection/$id'
preLoaderRoute: typeof CollectionIdRouteImport
parentRoute: typeof rootRouteImport
}
}
}
interface SettingsRouteRouteChildren {
SettingsAccountsRoute: typeof SettingsAccountsRoute
}
const SettingsRouteRouteChildren: SettingsRouteRouteChildren = {
SettingsAccountsRoute: SettingsAccountsRoute,
}
const SettingsRouteRouteWithChildren = SettingsRouteRoute._addFileChildren(
SettingsRouteRouteChildren,
)
const rootRouteChildren: RootRouteChildren = {
IndexRoute: IndexRoute,
SettingsRouteRoute: SettingsRouteRouteWithChildren,
CollectionIdRoute: CollectionIdRoute,
GameIdRoute: GameIdRoute,
PlatformIdRoute: PlatformIdRoute,
}
export const routeTree = rootRouteImport
._addFileChildren(rootRouteChildren)
._addFileTypes<FileRouteTypes>()

View file

@ -0,0 +1,483 @@
// This file is auto-generated. Do not edit it manually.
export type StaticAssetPath =
'LICENSE.md' |
'controller_steamdeck.svg' |
'controller_xbox360.svg' |
'controller_xbox_adaptive.svg' |
'controller_xboxone.svg' |
'controller_xboxseries.svg' |
'steamdeck_button_a.svg' |
'steamdeck_button_a_outline.svg' |
'steamdeck_button_b.svg' |
'steamdeck_button_b_outline.svg' |
'steamdeck_button_guide.svg' |
'steamdeck_button_guide_outline.svg' |
'steamdeck_button_l1.svg' |
'steamdeck_button_l1_outline.svg' |
'steamdeck_button_l2.svg' |
'steamdeck_button_l2_outline.svg' |
'steamdeck_button_l4.svg' |
'steamdeck_button_l4_outline.svg' |
'steamdeck_button_l5.svg' |
'steamdeck_button_l5_outline.svg' |
'steamdeck_button_options.svg' |
'steamdeck_button_options_outline.svg' |
'steamdeck_button_quickaccess.svg' |
'steamdeck_button_quickaccess_outline.svg' |
'steamdeck_button_r1.svg' |
'steamdeck_button_r1_outline.svg' |
'steamdeck_button_r2.svg' |
'steamdeck_button_r2_outline.svg' |
'steamdeck_button_r4.svg' |
'steamdeck_button_r4_outline.svg' |
'steamdeck_button_r5.svg' |
'steamdeck_button_r5_outline.svg' |
'steamdeck_button_view.svg' |
'steamdeck_button_view_outline.svg' |
'steamdeck_button_x.svg' |
'steamdeck_button_x_outline.svg' |
'steamdeck_button_y.svg' |
'steamdeck_button_y_outline.svg' |
'steamdeck_dpad.svg' |
'steamdeck_dpad_all.svg' |
'steamdeck_dpad_down.svg' |
'steamdeck_dpad_down_outline.svg' |
'steamdeck_dpad_horizontal.svg' |
'steamdeck_dpad_horizontal_outline.svg' |
'steamdeck_dpad_left.svg' |
'steamdeck_dpad_left_outline.svg' |
'steamdeck_dpad_none.svg' |
'steamdeck_dpad_right.svg' |
'steamdeck_dpad_right_outline.svg' |
'steamdeck_dpad_up.svg' |
'steamdeck_dpad_up_outline.svg' |
'steamdeck_dpad_vertical.svg' |
'steamdeck_dpad_vertical_outline.svg' |
'steamdeck_stick_l.svg' |
'steamdeck_stick_l_down.svg' |
'steamdeck_stick_l_horizontal.svg' |
'steamdeck_stick_l_left.svg' |
'steamdeck_stick_l_press.svg' |
'steamdeck_stick_l_right.svg' |
'steamdeck_stick_l_up.svg' |
'steamdeck_stick_l_vertical.svg' |
'steamdeck_stick_r.svg' |
'steamdeck_stick_r_down.svg' |
'steamdeck_stick_r_horizontal.svg' |
'steamdeck_stick_r_left.svg' |
'steamdeck_stick_r_press.svg' |
'steamdeck_stick_r_right.svg' |
'steamdeck_stick_r_up.svg' |
'steamdeck_stick_r_vertical.svg' |
'steamdeck_stick_side_l.svg' |
'steamdeck_stick_side_r.svg' |
'steamdeck_stick_top_l.svg' |
'steamdeck_stick_top_r.svg' |
'steamdeck_trackpad.svg' |
'steamdeck_trackpad_all.svg' |
'steamdeck_trackpad_all_outline.svg' |
'steamdeck_trackpad_down.svg' |
'steamdeck_trackpad_down_outline.svg' |
'steamdeck_trackpad_horizontal.svg' |
'steamdeck_trackpad_horizontal_outline.svg' |
'steamdeck_trackpad_l.svg' |
'steamdeck_trackpad_l_all.svg' |
'steamdeck_trackpad_l_all_outline.svg' |
'steamdeck_trackpad_l_down.svg' |
'steamdeck_trackpad_l_down_outline.svg' |
'steamdeck_trackpad_l_horizontal.svg' |
'steamdeck_trackpad_l_horizontal_outline.svg' |
'steamdeck_trackpad_l_left.svg' |
'steamdeck_trackpad_l_left_outline.svg' |
'steamdeck_trackpad_l_outline.svg' |
'steamdeck_trackpad_l_right.svg' |
'steamdeck_trackpad_l_right_outline.svg' |
'steamdeck_trackpad_l_up.svg' |
'steamdeck_trackpad_l_up_outline.svg' |
'steamdeck_trackpad_l_vertical.svg' |
'steamdeck_trackpad_l_vertical_outline.svg' |
'steamdeck_trackpad_left.svg' |
'steamdeck_trackpad_left_outline.svg' |
'steamdeck_trackpad_outline.svg' |
'steamdeck_trackpad_r.svg' |
'steamdeck_trackpad_r_all.svg' |
'steamdeck_trackpad_r_all_outline.svg' |
'steamdeck_trackpad_r_down.svg' |
'steamdeck_trackpad_r_down_outline.svg' |
'steamdeck_trackpad_r_horizontal.svg' |
'steamdeck_trackpad_r_horizontal_outline.svg' |
'steamdeck_trackpad_r_left.svg' |
'steamdeck_trackpad_r_left_outline.svg' |
'steamdeck_trackpad_r_outline.svg' |
'steamdeck_trackpad_r_right.svg' |
'steamdeck_trackpad_r_right_outline.svg' |
'steamdeck_trackpad_r_up.svg' |
'steamdeck_trackpad_r_up_outline.svg' |
'steamdeck_trackpad_r_vertical.svg' |
'steamdeck_trackpad_r_vertical_outline.svg' |
'steamdeck_trackpad_right.svg' |
'steamdeck_trackpad_right_outline.svg' |
'steamdeck_trackpad_up.svg' |
'steamdeck_trackpad_up_outline.svg' |
'steamdeck_trackpad_vertical.svg' |
'steamdeck_trackpad_vertical_outline.svg' |
'xbox_button_a.svg' |
'xbox_button_a_outline.svg' |
'xbox_button_b.svg' |
'xbox_button_b_outline.svg' |
'xbox_button_back.svg' |
'xbox_button_back_icon.svg' |
'xbox_button_back_icon_outline.svg' |
'xbox_button_back_outline.svg' |
'xbox_button_color_a.svg' |
'xbox_button_color_a_outline.svg' |
'xbox_button_color_b.svg' |
'xbox_button_color_b_outline.svg' |
'xbox_button_color_x.svg' |
'xbox_button_color_x_outline.svg' |
'xbox_button_color_y.svg' |
'xbox_button_color_y_outline.svg' |
'xbox_button_menu.svg' |
'xbox_button_menu_outline.svg' |
'xbox_button_share.svg' |
'xbox_button_share_outline.svg' |
'xbox_button_start.svg' |
'xbox_button_start_icon.svg' |
'xbox_button_start_icon_outline.svg' |
'xbox_button_start_outline.svg' |
'xbox_button_view.svg' |
'xbox_button_view_outline.svg' |
'xbox_button_x.svg' |
'xbox_button_x_outline.svg' |
'xbox_button_y.svg' |
'xbox_button_y_outline.svg' |
'xbox_dpad.svg' |
'xbox_dpad_all.svg' |
'xbox_dpad_down.svg' |
'xbox_dpad_down_outline.svg' |
'xbox_dpad_horizontal.svg' |
'xbox_dpad_horizontal_outline.svg' |
'xbox_dpad_left.svg' |
'xbox_dpad_left_outline.svg' |
'xbox_dpad_none.svg' |
'xbox_dpad_right.svg' |
'xbox_dpad_right_outline.svg' |
'xbox_dpad_round.svg' |
'xbox_dpad_round_all.svg' |
'xbox_dpad_round_down.svg' |
'xbox_dpad_round_horizontal.svg' |
'xbox_dpad_round_left.svg' |
'xbox_dpad_round_right.svg' |
'xbox_dpad_round_up.svg' |
'xbox_dpad_round_vertical.svg' |
'xbox_dpad_up.svg' |
'xbox_dpad_up_outline.svg' |
'xbox_dpad_vertical.svg' |
'xbox_dpad_vertical_outline.svg' |
'xbox_elite_paddle_bottom_left.svg' |
'xbox_elite_paddle_bottom_left_outline.svg' |
'xbox_elite_paddle_bottom_right.svg' |
'xbox_elite_paddle_bottom_right_outline.svg' |
'xbox_elite_paddle_top_left.svg' |
'xbox_elite_paddle_top_left_outline.svg' |
'xbox_elite_paddle_top_right.svg' |
'xbox_elite_paddle_top_right_outline.svg' |
'xbox_guide.svg' |
'xbox_guide_outline.svg' |
'xbox_lb.svg' |
'xbox_lb_outline.svg' |
'xbox_ls.svg' |
'xbox_ls_outline.svg' |
'xbox_lt.svg' |
'xbox_lt_outline.svg' |
'xbox_rb.svg' |
'xbox_rb_outline.svg' |
'xbox_rs.svg' |
'xbox_rs_outline.svg' |
'xbox_rt.svg' |
'xbox_rt_outline.svg' |
'xbox_stick_l.svg' |
'xbox_stick_l_down.svg' |
'xbox_stick_l_horizontal.svg' |
'xbox_stick_l_left.svg' |
'xbox_stick_l_press.svg' |
'xbox_stick_l_right.svg' |
'xbox_stick_l_up.svg' |
'xbox_stick_l_vertical.svg' |
'xbox_stick_r.svg' |
'xbox_stick_r_down.svg' |
'xbox_stick_r_horizontal.svg' |
'xbox_stick_r_left.svg' |
'xbox_stick_r_press.svg' |
'xbox_stick_r_right.svg' |
'xbox_stick_r_up.svg' |
'xbox_stick_r_vertical.svg' |
'xbox_stick_side_l.svg' |
'xbox_stick_side_r.svg' |
'xbox_stick_top_l.svg' |
'xbox_stick_top_r.svg';
/**
* Represents the known directories containing static assets.
* '.' represents the root directory.
*/
export type StaticAssetDirectory =
'.';
/**
* Represents the relative paths of files located *directly* within a specific directory.
* Use '.' for the root directory.
* @template Dir - A directory path string literal type from StaticAssetDirectory (e.g., 'icons/', 'icons/sun/', '.').
*/
export type FilesInFolder<Dir extends '.' | StaticAssetDirectory> =
Dir extends '.'
? Exclude<StaticAssetPath, `${string}/${string}`>
: Extract<StaticAssetPath, `${Dir}${string}`> extends infer Match
? Match extends `${Dir}${infer FileName}`
? FileName extends `${string}/${string}`
? never
: Match
: never
: never;
const assets = new Set<string>([
'LICENSE.md',
'controller_steamdeck.svg',
'controller_xbox360.svg',
'controller_xbox_adaptive.svg',
'controller_xboxone.svg',
'controller_xboxseries.svg',
'steamdeck_button_a.svg',
'steamdeck_button_a_outline.svg',
'steamdeck_button_b.svg',
'steamdeck_button_b_outline.svg',
'steamdeck_button_guide.svg',
'steamdeck_button_guide_outline.svg',
'steamdeck_button_l1.svg',
'steamdeck_button_l1_outline.svg',
'steamdeck_button_l2.svg',
'steamdeck_button_l2_outline.svg',
'steamdeck_button_l4.svg',
'steamdeck_button_l4_outline.svg',
'steamdeck_button_l5.svg',
'steamdeck_button_l5_outline.svg',
'steamdeck_button_options.svg',
'steamdeck_button_options_outline.svg',
'steamdeck_button_quickaccess.svg',
'steamdeck_button_quickaccess_outline.svg',
'steamdeck_button_r1.svg',
'steamdeck_button_r1_outline.svg',
'steamdeck_button_r2.svg',
'steamdeck_button_r2_outline.svg',
'steamdeck_button_r4.svg',
'steamdeck_button_r4_outline.svg',
'steamdeck_button_r5.svg',
'steamdeck_button_r5_outline.svg',
'steamdeck_button_view.svg',
'steamdeck_button_view_outline.svg',
'steamdeck_button_x.svg',
'steamdeck_button_x_outline.svg',
'steamdeck_button_y.svg',
'steamdeck_button_y_outline.svg',
'steamdeck_dpad.svg',
'steamdeck_dpad_all.svg',
'steamdeck_dpad_down.svg',
'steamdeck_dpad_down_outline.svg',
'steamdeck_dpad_horizontal.svg',
'steamdeck_dpad_horizontal_outline.svg',
'steamdeck_dpad_left.svg',
'steamdeck_dpad_left_outline.svg',
'steamdeck_dpad_none.svg',
'steamdeck_dpad_right.svg',
'steamdeck_dpad_right_outline.svg',
'steamdeck_dpad_up.svg',
'steamdeck_dpad_up_outline.svg',
'steamdeck_dpad_vertical.svg',
'steamdeck_dpad_vertical_outline.svg',
'steamdeck_stick_l.svg',
'steamdeck_stick_l_down.svg',
'steamdeck_stick_l_horizontal.svg',
'steamdeck_stick_l_left.svg',
'steamdeck_stick_l_press.svg',
'steamdeck_stick_l_right.svg',
'steamdeck_stick_l_up.svg',
'steamdeck_stick_l_vertical.svg',
'steamdeck_stick_r.svg',
'steamdeck_stick_r_down.svg',
'steamdeck_stick_r_horizontal.svg',
'steamdeck_stick_r_left.svg',
'steamdeck_stick_r_press.svg',
'steamdeck_stick_r_right.svg',
'steamdeck_stick_r_up.svg',
'steamdeck_stick_r_vertical.svg',
'steamdeck_stick_side_l.svg',
'steamdeck_stick_side_r.svg',
'steamdeck_stick_top_l.svg',
'steamdeck_stick_top_r.svg',
'steamdeck_trackpad.svg',
'steamdeck_trackpad_all.svg',
'steamdeck_trackpad_all_outline.svg',
'steamdeck_trackpad_down.svg',
'steamdeck_trackpad_down_outline.svg',
'steamdeck_trackpad_horizontal.svg',
'steamdeck_trackpad_horizontal_outline.svg',
'steamdeck_trackpad_l.svg',
'steamdeck_trackpad_l_all.svg',
'steamdeck_trackpad_l_all_outline.svg',
'steamdeck_trackpad_l_down.svg',
'steamdeck_trackpad_l_down_outline.svg',
'steamdeck_trackpad_l_horizontal.svg',
'steamdeck_trackpad_l_horizontal_outline.svg',
'steamdeck_trackpad_l_left.svg',
'steamdeck_trackpad_l_left_outline.svg',
'steamdeck_trackpad_l_outline.svg',
'steamdeck_trackpad_l_right.svg',
'steamdeck_trackpad_l_right_outline.svg',
'steamdeck_trackpad_l_up.svg',
'steamdeck_trackpad_l_up_outline.svg',
'steamdeck_trackpad_l_vertical.svg',
'steamdeck_trackpad_l_vertical_outline.svg',
'steamdeck_trackpad_left.svg',
'steamdeck_trackpad_left_outline.svg',
'steamdeck_trackpad_outline.svg',
'steamdeck_trackpad_r.svg',
'steamdeck_trackpad_r_all.svg',
'steamdeck_trackpad_r_all_outline.svg',
'steamdeck_trackpad_r_down.svg',
'steamdeck_trackpad_r_down_outline.svg',
'steamdeck_trackpad_r_horizontal.svg',
'steamdeck_trackpad_r_horizontal_outline.svg',
'steamdeck_trackpad_r_left.svg',
'steamdeck_trackpad_r_left_outline.svg',
'steamdeck_trackpad_r_outline.svg',
'steamdeck_trackpad_r_right.svg',
'steamdeck_trackpad_r_right_outline.svg',
'steamdeck_trackpad_r_up.svg',
'steamdeck_trackpad_r_up_outline.svg',
'steamdeck_trackpad_r_vertical.svg',
'steamdeck_trackpad_r_vertical_outline.svg',
'steamdeck_trackpad_right.svg',
'steamdeck_trackpad_right_outline.svg',
'steamdeck_trackpad_up.svg',
'steamdeck_trackpad_up_outline.svg',
'steamdeck_trackpad_vertical.svg',
'steamdeck_trackpad_vertical_outline.svg',
'xbox_button_a.svg',
'xbox_button_a_outline.svg',
'xbox_button_b.svg',
'xbox_button_b_outline.svg',
'xbox_button_back.svg',
'xbox_button_back_icon.svg',
'xbox_button_back_icon_outline.svg',
'xbox_button_back_outline.svg',
'xbox_button_color_a.svg',
'xbox_button_color_a_outline.svg',
'xbox_button_color_b.svg',
'xbox_button_color_b_outline.svg',
'xbox_button_color_x.svg',
'xbox_button_color_x_outline.svg',
'xbox_button_color_y.svg',
'xbox_button_color_y_outline.svg',
'xbox_button_menu.svg',
'xbox_button_menu_outline.svg',
'xbox_button_share.svg',
'xbox_button_share_outline.svg',
'xbox_button_start.svg',
'xbox_button_start_icon.svg',
'xbox_button_start_icon_outline.svg',
'xbox_button_start_outline.svg',
'xbox_button_view.svg',
'xbox_button_view_outline.svg',
'xbox_button_x.svg',
'xbox_button_x_outline.svg',
'xbox_button_y.svg',
'xbox_button_y_outline.svg',
'xbox_dpad.svg',
'xbox_dpad_all.svg',
'xbox_dpad_down.svg',
'xbox_dpad_down_outline.svg',
'xbox_dpad_horizontal.svg',
'xbox_dpad_horizontal_outline.svg',
'xbox_dpad_left.svg',
'xbox_dpad_left_outline.svg',
'xbox_dpad_none.svg',
'xbox_dpad_right.svg',
'xbox_dpad_right_outline.svg',
'xbox_dpad_round.svg',
'xbox_dpad_round_all.svg',
'xbox_dpad_round_down.svg',
'xbox_dpad_round_horizontal.svg',
'xbox_dpad_round_left.svg',
'xbox_dpad_round_right.svg',
'xbox_dpad_round_up.svg',
'xbox_dpad_round_vertical.svg',
'xbox_dpad_up.svg',
'xbox_dpad_up_outline.svg',
'xbox_dpad_vertical.svg',
'xbox_dpad_vertical_outline.svg',
'xbox_elite_paddle_bottom_left.svg',
'xbox_elite_paddle_bottom_left_outline.svg',
'xbox_elite_paddle_bottom_right.svg',
'xbox_elite_paddle_bottom_right_outline.svg',
'xbox_elite_paddle_top_left.svg',
'xbox_elite_paddle_top_left_outline.svg',
'xbox_elite_paddle_top_right.svg',
'xbox_elite_paddle_top_right_outline.svg',
'xbox_guide.svg',
'xbox_guide_outline.svg',
'xbox_lb.svg',
'xbox_lb_outline.svg',
'xbox_ls.svg',
'xbox_ls_outline.svg',
'xbox_lt.svg',
'xbox_lt_outline.svg',
'xbox_rb.svg',
'xbox_rb_outline.svg',
'xbox_rs.svg',
'xbox_rs_outline.svg',
'xbox_rt.svg',
'xbox_rt_outline.svg',
'xbox_stick_l.svg',
'xbox_stick_l_down.svg',
'xbox_stick_l_horizontal.svg',
'xbox_stick_l_left.svg',
'xbox_stick_l_press.svg',
'xbox_stick_l_right.svg',
'xbox_stick_l_up.svg',
'xbox_stick_l_vertical.svg',
'xbox_stick_r.svg',
'xbox_stick_r_down.svg',
'xbox_stick_r_horizontal.svg',
'xbox_stick_r_left.svg',
'xbox_stick_r_press.svg',
'xbox_stick_r_right.svg',
'xbox_stick_r_up.svg',
'xbox_stick_r_vertical.svg',
'xbox_stick_side_l.svg',
'xbox_stick_side_r.svg',
'xbox_stick_top_l.svg',
'xbox_stick_top_r.svg'
]);
// Store basePath resolved from Vite config
const BASE_PATH = "./";
/**
* Gets the URL for a specific static asset
* @param path Path to the asset
* @returns The URL for the asset
*/
export function staticAssets(path: StaticAssetPath): string {
if (!assets.has(path)) {
throw new Error(
"Static asset does not exist in static assets directory"
);
}
return `${BASE_PATH}${path}`;
}