Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/current-igdb-schema.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@api-wrappers/igdb-wrapper": patch
---

Align endpoint registration and model types with the current IGDB v4 schema, including the image types endpoint and recent company, image, popularity, region, and release-date fields.
1 change: 1 addition & 0 deletions docs/endpoints.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,7 @@ const rows = await experimental.request("fields *; limit 10;");
| `gameVersionFeatureValues` | `game_version_feature_values` |
| `gameVideos` | `game_videos` |
| `genres` | `genres` |
| `imageTypes` | `image_types` |
| `involvedCompanies` | `involved_companies` |
| `keywords` | `keywords` |
| `languages` | `languages` |
Expand Down
1 change: 1 addition & 0 deletions src/client/IGDBClient.ts
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@ export interface IGDBEndpointModelMap {
gameVersionFeatureValues: Models.GameVersionFeatureValue;
gameVideos: Models.GameVideo;
genres: Models.Genre;
imageTypes: Models.ImageType;
involvedCompanies: Models.InvolvedCompany;
keywords: Models.Keyword;
languages: Models.Language;
Expand Down
1 change: 1 addition & 0 deletions src/endpoints/registry.ts
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@ export const IGDB_ENDPOINT_METADATA = [
endpoint("gameVersionFeatureValues", "game_version_feature_values"),
endpoint("gameVideos", "game_videos"),
endpoint("genres", "genres"),
endpoint("imageTypes", "image_types"),
endpoint("involvedCompanies", "involved_companies"),
endpoint("keywords", "keywords"),
endpoint("languages", "languages"),
Expand Down
31 changes: 23 additions & 8 deletions src/types/models.ts
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ export interface AlternativeName extends IGDBEntity {
export interface Artwork extends ImageEntity {
artwork_type?: ArtworkType;
game?: Game;
image_type?: ImageType;
}

export interface ArtworkType extends NamedEntity {}
Expand Down Expand Up @@ -127,6 +128,8 @@ export interface Company extends NamedEntity {
change_date_category?: number;
change_date_format?: DateFormat;
changed_company_id?: Company;
company_size?: CompanySize;
company_type_histories?: CompanyTypeHistory[];
country?: number;
description?: string;
developed?: Game[];
Expand All @@ -137,13 +140,12 @@ export interface Company extends NamedEntity {
start_date_category?: number;
start_date_format?: DateFormat;
status?: CompanyStatus;
type?: CompanyType;
websites?: CompanyWebsite[];
}

export interface CompanyLogo extends ImageEntity {}
export interface CompanySize extends IGDBEntity {
size?: string;
name?: string;
}
export interface CompanyStatus extends IGDBEntity {
name?: string;
Expand All @@ -165,6 +167,8 @@ export interface CompanyWebsite extends IGDBEntity {

export interface Cover extends ImageEntity {
game?: Game;
game_localization?: GameLocalization;
image_type?: ImageType;
}

export interface DateFormat extends IGDBEntity {
Expand Down Expand Up @@ -307,7 +311,7 @@ export interface GameStatus extends IGDBEntity {
export interface GameTimeToBeat extends IGDBEntity {
completely?: number;
count?: number;
game_id?: Game;
game_id?: number;
hastily?: number;
normally?: number;
}
Expand Down Expand Up @@ -349,6 +353,10 @@ export interface Genre extends NamedEntity {
slug: string;
}

export interface ImageType extends IGDBEntity {
name?: string;
}

export interface InvolvedCompany extends IGDBEntity {
company?: Company;
developer?: boolean;
Expand Down Expand Up @@ -394,6 +402,7 @@ export interface MultiplayerMode extends IGDBEntity {
}

export interface NetworkType extends IGDBEntity {
event_networks?: EventNetwork[];
name?: string;
}

Expand Down Expand Up @@ -448,7 +457,8 @@ export interface PlatformVersionReleaseDate extends IGDBEntity {
human?: string;
m?: number;
platform_version?: PlatformVersion;
region?: ReleaseDateRegion;
region?: number;
release_region?: ReleaseDateRegion;
y?: number;
}

Expand All @@ -463,31 +473,36 @@ export interface PlayerPerspective extends NamedEntity {}

export interface PopularityPrimitive extends IGDBEntity {
calculated_at?: number;
external_popularity_source?: number;
game_id?: Game;
popularity_source?: PopularityType;
external_popularity_source?: ExternalGameSource;
game_id?: number;
popularity_source?: number;
popularity_type?: PopularityType;
value?: number;
}

export interface PopularityType extends IGDBEntity {
external_popularity_source?: ExternalGameSource;
name?: string;
popularity_source?: number;
}

export interface Region extends IGDBEntity {
category?: string;
identifier?: string;
name?: string;
}

export interface ReleaseDate extends IGDBEntity {
category?: number;
d?: number;
date?: number;
date_format?: DateFormat;
game?: Game;
human?: string;
m?: number;
platform?: Platform;
region?: ReleaseDateRegion;
region?: number;
release_region?: ReleaseDateRegion;
status?: ReleaseDateStatus;
y?: number;
}
Expand Down
Loading