Skip to content

Commit 5530191

Browse files
authored
Merge pull request #6 from EthanWall/mod-files-fix
Add ModLoaderType to get_files() parameters
2 parents af78b19 + a55eb11 commit 5530191

File tree

2 files changed

+6
-3
lines changed

2 files changed

+6
-3
lines changed

src/index.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import * as utils from "./utils";
33
import { URL } from "url";
44
import { ErrorBadRequest, ErrorInternalServer, ErrorNotFound } from "./objects/exceptions";
55
import { FingerprintFuzzyMatch, FingerprintMatchResult, FolderFingerprints, GameVersionsByType, GameVersionType, Pagination, PagingOptions, SearchOptions } from "./objects/types";
6+
import { ModLoaderType } from "./objects/enums";
67

78
export {Game, Mod, Category, ModFile, types as Types, exceptions as Exceptions, enums as Enums};
89

@@ -335,11 +336,13 @@ class Curseforge {
335336
});
336337
}
337338

338-
public get_files(mod: Mod | number, searchOptions?: {gameVersionTypeId?: number} & PagingOptions): Promise<ModFile[] & {"paging": Pagination}> {
339+
public get_files(mod: Mod | number, searchOptions?: {gameVersion?: string, modLoaderType?: ModLoaderType | number, gameVersionTypeId?: number} & PagingOptions): Promise<ModFile[] & {"paging": Pagination}> {
339340
return new Promise(async (resolve, reject) => {
340341
let uri = new URL(this.API_URL + "mods/" + utils.cleanse(mod) + "/files");
341342

342343
if(searchOptions){
344+
if(searchOptions.gameVersion) uri.searchParams.set("gameVersion", searchOptions.gameVersion);
345+
if(searchOptions.modLoaderType) uri.searchParams.set("modLoaderType", searchOptions.modLoaderType.toString())
343346
if(searchOptions.gameVersionTypeId) uri.searchParams.set("gameVersionTypeId", searchOptions.gameVersionTypeId.toString());
344347
if(searchOptions.index) uri.searchParams.set("index", searchOptions.index.toString());
345348
if(searchOptions.pageSize) uri.searchParams.set("pageSize", searchOptions.pageSize.toString());

src/objects/Mod.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { Category, ModFile } from ".";
22
import Curseforge from "..";
3-
import { ModStatus } from "./enums";
3+
import { ModLoaderType, ModStatus } from "./enums";
44
import { CFObject } from "./interfaces";
55
import { FileIndex, ModAsset, ModAuthor, ModLinks, Pagination, PagingOptions } from "./types";
66

@@ -144,7 +144,7 @@ export default class Mod extends CFObject {
144144
* @param searchOptions Options to use when getting the files for this mod.
145145
* @returns mod files found using this method.
146146
*/
147-
public get_files(searchOptions?: {gameVersionTypeId?: number} & PagingOptions): Promise<ModFile[] & {"paging": Pagination}> {
147+
public get_files(searchOptions?: {gameVersion?: string, modLoaderType?: ModLoaderType | number, gameVersionTypeId?: number} & PagingOptions): Promise<ModFile[] & {"paging": Pagination}> {
148148
return this._client.get_files(this.id, searchOptions);
149149
}
150150

0 commit comments

Comments
 (0)