2022-10-30 02:03:54 +00:00
|
|
|
import type { GameType, SavedGameType } from '$lib/types';
|
|
|
|
|
|
2022-11-03 05:16:52 +00:00
|
|
|
export function convertToSavedGame(game: GameType | SavedGameType): SavedGameType {
|
|
|
|
|
return {
|
|
|
|
|
id: game.id,
|
|
|
|
|
name: game.name,
|
|
|
|
|
thumb_url: game.thumb_url,
|
|
|
|
|
players: game.players,
|
|
|
|
|
playtime: game.playtime
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
2022-10-30 02:03:54 +00:00
|
|
|
export function mapSavedGameToGame(game: SavedGameType): GameType {
|
2022-11-03 05:16:52 +00:00
|
|
|
const { id, name, thumb_url, players, playtime } = game;
|
2022-10-30 02:03:54 +00:00
|
|
|
|
|
|
|
|
return {
|
|
|
|
|
id,
|
2022-11-03 05:16:52 +00:00
|
|
|
handle: '',
|
2022-10-30 02:03:54 +00:00
|
|
|
name,
|
2022-11-03 05:16:52 +00:00
|
|
|
url: '',
|
|
|
|
|
edit_url: '',
|
2022-11-02 03:10:02 +00:00
|
|
|
thumb_url,
|
2022-11-03 05:16:52 +00:00
|
|
|
image_url: '',
|
|
|
|
|
price: 0,
|
|
|
|
|
price_ca: 0,
|
|
|
|
|
price_uk: 0,
|
|
|
|
|
price_au: 0,
|
|
|
|
|
msrp: 0,
|
|
|
|
|
year_published: new Date().getFullYear(),
|
|
|
|
|
min_players: 0,
|
|
|
|
|
max_players: 0,
|
|
|
|
|
min_playtime: 0,
|
|
|
|
|
max_playtime: 0,
|
|
|
|
|
min_age: 0,
|
|
|
|
|
description: '',
|
|
|
|
|
description_preview: '',
|
|
|
|
|
players,
|
2022-11-02 03:10:02 +00:00
|
|
|
playtime
|
2022-10-30 02:03:54 +00:00
|
|
|
};
|
|
|
|
|
}
|
2022-07-27 22:05:22 +00:00
|
|
|
|
2022-11-03 05:16:52 +00:00
|
|
|
// TODO: TYpe API response
|
|
|
|
|
export function mapAPIGameToBoredGame(game: any): GameType {
|
2022-07-27 22:05:22 +00:00
|
|
|
const {
|
|
|
|
|
id,
|
|
|
|
|
handle,
|
|
|
|
|
name,
|
|
|
|
|
url,
|
|
|
|
|
edit_url,
|
|
|
|
|
thumb_url,
|
|
|
|
|
image_url,
|
|
|
|
|
price,
|
|
|
|
|
price_ca,
|
|
|
|
|
price_uk,
|
|
|
|
|
price_au,
|
|
|
|
|
msrp,
|
|
|
|
|
year_published,
|
|
|
|
|
min_players,
|
|
|
|
|
max_players,
|
|
|
|
|
min_playtime,
|
|
|
|
|
max_playtime,
|
|
|
|
|
min_age,
|
|
|
|
|
description,
|
|
|
|
|
description_preview,
|
|
|
|
|
players,
|
2022-07-28 00:05:54 +00:00
|
|
|
playtime
|
2022-07-27 22:05:22 +00:00
|
|
|
} = game;
|
|
|
|
|
return {
|
|
|
|
|
id,
|
|
|
|
|
handle,
|
|
|
|
|
name,
|
|
|
|
|
url,
|
|
|
|
|
edit_url,
|
|
|
|
|
thumb_url,
|
|
|
|
|
image_url,
|
|
|
|
|
price,
|
|
|
|
|
price_ca,
|
|
|
|
|
price_uk,
|
|
|
|
|
price_au,
|
|
|
|
|
msrp,
|
|
|
|
|
year_published,
|
|
|
|
|
min_players,
|
|
|
|
|
max_players,
|
|
|
|
|
min_playtime,
|
|
|
|
|
max_playtime,
|
|
|
|
|
min_age,
|
|
|
|
|
description,
|
|
|
|
|
description_preview,
|
|
|
|
|
players,
|
2022-07-28 00:05:54 +00:00
|
|
|
playtime
|
2022-07-27 22:05:22 +00:00
|
|
|
};
|
2022-07-28 00:05:54 +00:00
|
|
|
}
|