UNPKG

@blizzard-api/classic-wow

Version:

A series of helpers to interact with the World of Warcraft Classic Blizzard API

83 lines (82 loc) 2.4 kB
import { wowBasePath, wowMediaBasePath, wowSearchBasePath } from "@blizzard-api/core"; //#region src/item/index.ts /** * Get an item by ID. * @param namespace The namespace to use. See {@link BlizzardNamespaces}. * @param itemId The item ID. * @returns The item. See {@link ItemResponse}. */ function item(namespace, itemId) { return { namespace, path: `${wowBasePath}/item/${itemId}` }; } /** * Get an item class by ID. * @param namespace The namespace to use. See {@link BlizzardNamespaces}. * @param itemClassId The item class ID. * @returns The item class. See {@link ItemClassResponse}. */ function itemClass(namespace, itemClassId) { return { namespace, path: `${wowBasePath}/item-class/${itemClassId}` }; } /** * Get an item class index. * @param namespace The namespace to use. See {@link BlizzardNamespaces}. * @returns The item class index. See {@link ItemClassIndexResponse}. */ function itemClassIndex(namespace) { return { namespace, path: `${wowBasePath}/item-class/index` }; } /** * Get item media by ID. * @param namespace The namespace to use. See {@link BlizzardNamespaces}. * @param itemId The item ID. * @returns The item media. See {@link ItemMediaResponse}. */ function itemMedia(namespace, itemId) { return { namespace, path: `${wowMediaBasePath}/item/${itemId}` }; } /** * Search for items. * @param namespace The namespace to use. See {@link BlizzardNamespaces}. * @param options The search parameters. See {@link ItemSearchParameters}. * @returns The search results. See {@link ItemSearchResponse}. */ function itemSearch(namespace, options) { return { namespace, parameters: { _page: options._page, [`name.${options.locale}`]: options.name, orderby: Array.isArray(options.orderby) ? options.orderby.join(",") : options.orderby }, path: `${wowSearchBasePath}/item` }; } /** * Get an item subclass by ID. * @param namespace The namespace to use. See {@link BlizzardNamespaces}. * @param itemClassId The item class ID. * @param itemSubclassId The item subclass ID. * @returns The item subclass. See {@link ItemSubClassResponse}. */ function itemSubClass(namespace, itemClassId, itemSubclassId) { return { namespace, path: `${wowBasePath}/item-class/${itemClassId}/item-subclass/${itemSubclassId}` }; } //#endregion export { item, itemClass, itemClassIndex, itemMedia, itemSearch, itemSubClass }; //# sourceMappingURL=index.js.map