@blizzard-api/hs 0.1.1 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +83 -83
- package/package.json +5 -9
- package/dist/index.cjs +0 -112
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.cts +0 -310
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,18 @@
|
|
|
1
1
|
import { Locales, Resource } from '@blizzard-api/core';
|
|
2
2
|
|
|
3
|
+
type GameMode$1 = 'arena' | 'battlegrounds' | 'classic' | 'constructed' | 'duels' | 'mercenaries' | 'standard';
|
|
4
|
+
type SearchSortOption = `${SortOptions}:${SortDirection}`;
|
|
3
5
|
type SortDirection = 'asc' | 'desc';
|
|
4
6
|
type SortOptions = 'attack' | 'class' | 'dataAdded' | 'groupByClass' | 'health' | 'manaCost' | 'name';
|
|
5
|
-
type SearchSortOption = `${SortOptions}:${SortDirection}`;
|
|
6
|
-
type GameMode$1 = 'arena' | 'battlegrounds' | 'classic' | 'constructed' | 'duels' | 'mercenaries' | 'standard';
|
|
7
7
|
|
|
8
|
+
interface CardBackSearchParameters {
|
|
9
|
+
cardBackCategory?: 'achieve' | 'base' | 'blizzard' | 'esports' | 'events' | 'fireside' | 'game_license' | 'golden' | 'heroes' | 'legend' | 'pre_purchase' | 'promotion' | 'season';
|
|
10
|
+
locale?: Locales;
|
|
11
|
+
page?: number;
|
|
12
|
+
pageSize?: number;
|
|
13
|
+
sort?: SearchSortOption;
|
|
14
|
+
textFilter?: string;
|
|
15
|
+
}
|
|
8
16
|
interface CardBackSearchResponse {
|
|
9
17
|
cardBacks: Array<SingleCardBackSearchResponse>;
|
|
10
18
|
cardCount: number;
|
|
@@ -19,26 +27,64 @@ interface SingleCardBackSearchResponse {
|
|
|
19
27
|
sortCategory: number;
|
|
20
28
|
text: Record<Locales, string> | string;
|
|
21
29
|
}
|
|
22
|
-
interface CardBackSearchParameters {
|
|
23
|
-
cardBackCategory?: 'achieve' | 'base' | 'blizzard' | 'esports' | 'events' | 'fireside' | 'game_license' | 'golden' | 'heroes' | 'legend' | 'pre_purchase' | 'promotion' | 'season';
|
|
24
|
-
locale?: Locales;
|
|
25
|
-
page?: number;
|
|
26
|
-
pageSize?: number;
|
|
27
|
-
sort?: SearchSortOption;
|
|
28
|
-
textFilter?: string;
|
|
29
|
-
}
|
|
30
30
|
|
|
31
31
|
declare function cardBackSearch(options: CardBackSearchParameters): Resource<CardBackSearchResponse, CardBackSearchParameters>;
|
|
32
32
|
declare function fetchOneCardBack(id: string, locale?: Locales): Resource<SingleCardBackSearchResponse, {
|
|
33
33
|
locale?: Locales;
|
|
34
34
|
}>;
|
|
35
35
|
|
|
36
|
+
interface BlizzardCardSearchParameters extends BaseSearchParameters {
|
|
37
|
+
attack?: string;
|
|
38
|
+
defaultMercenary?: string;
|
|
39
|
+
health?: string;
|
|
40
|
+
mercenaryId?: string;
|
|
41
|
+
}
|
|
42
|
+
interface CardSearchParameters extends BaseSearchParameters {
|
|
43
|
+
attack?: Array<number> | number;
|
|
44
|
+
defaultMercenary?: Array<number> | number;
|
|
45
|
+
health?: Array<number> | number;
|
|
46
|
+
mercenaryId?: Array<number> | number;
|
|
47
|
+
}
|
|
36
48
|
interface CardSearchResponse {
|
|
37
49
|
cardCount: number;
|
|
38
50
|
cards: Array<Card$1>;
|
|
39
51
|
page: number;
|
|
40
52
|
pageCount: number;
|
|
41
53
|
}
|
|
54
|
+
interface FetchOneCardResponse {
|
|
55
|
+
artistName: string;
|
|
56
|
+
attack: number;
|
|
57
|
+
cardSetId: number;
|
|
58
|
+
cardTypeId: number;
|
|
59
|
+
classId: number;
|
|
60
|
+
collectible: number;
|
|
61
|
+
cropImage: string;
|
|
62
|
+
flavorText: Record<Locales, string> | string;
|
|
63
|
+
health: number;
|
|
64
|
+
id: number;
|
|
65
|
+
image: Record<Locales, string> | string;
|
|
66
|
+
imageGold: Record<Locales, string> | string;
|
|
67
|
+
isZilliaxCosmeticModule: boolean;
|
|
68
|
+
isZilliaxFunctionalModule: boolean;
|
|
69
|
+
keywordIds: Array<number>;
|
|
70
|
+
manaCost: number;
|
|
71
|
+
multiClassIds: Array<number>;
|
|
72
|
+
name: Record<Locales, string> | string;
|
|
73
|
+
rarityId: number;
|
|
74
|
+
slug: string;
|
|
75
|
+
text: Record<Locales, string> | string;
|
|
76
|
+
}
|
|
77
|
+
interface BaseSearchParameters {
|
|
78
|
+
gameMode?: GameMode$1;
|
|
79
|
+
locale?: Locales;
|
|
80
|
+
mercenaryRole?: string;
|
|
81
|
+
minionType?: string;
|
|
82
|
+
page?: number;
|
|
83
|
+
pageSize?: number;
|
|
84
|
+
sort?: 'attack:asc' | 'attack:desc' | 'health:asc' | 'health:desc' | 'name:asc' | 'name:desc' | 'tier:asc' | 'tier:desc';
|
|
85
|
+
textFilter?: string;
|
|
86
|
+
tier?: 1 | 2 | 3 | 4 | 5 | 6 | 'hero';
|
|
87
|
+
}
|
|
42
88
|
interface Card$1 {
|
|
43
89
|
artistName: null | string;
|
|
44
90
|
attack: number;
|
|
@@ -78,52 +124,6 @@ interface StatsByLevel {
|
|
|
78
124
|
attack: number;
|
|
79
125
|
health: number;
|
|
80
126
|
}
|
|
81
|
-
interface CardSearchParameters extends BaseSearchParameters {
|
|
82
|
-
attack?: Array<number> | number;
|
|
83
|
-
defaultMercenary?: Array<number> | number;
|
|
84
|
-
health?: Array<number> | number;
|
|
85
|
-
mercenaryId?: Array<number> | number;
|
|
86
|
-
}
|
|
87
|
-
interface BlizzardCardSearchParameters extends BaseSearchParameters {
|
|
88
|
-
attack?: string;
|
|
89
|
-
defaultMercenary?: string;
|
|
90
|
-
health?: string;
|
|
91
|
-
mercenaryId?: string;
|
|
92
|
-
}
|
|
93
|
-
interface BaseSearchParameters {
|
|
94
|
-
gameMode?: GameMode$1;
|
|
95
|
-
locale?: Locales;
|
|
96
|
-
mercenaryRole?: string;
|
|
97
|
-
minionType?: string;
|
|
98
|
-
page?: number;
|
|
99
|
-
pageSize?: number;
|
|
100
|
-
sort?: 'attack:asc' | 'attack:desc' | 'health:asc' | 'health:desc' | 'name:asc' | 'name:desc' | 'tier:asc' | 'tier:desc';
|
|
101
|
-
textFilter?: string;
|
|
102
|
-
tier?: 'hero' | 1 | 2 | 3 | 4 | 5 | 6;
|
|
103
|
-
}
|
|
104
|
-
interface FetchOneCardResponse {
|
|
105
|
-
artistName: string;
|
|
106
|
-
attack: number;
|
|
107
|
-
cardSetId: number;
|
|
108
|
-
cardTypeId: number;
|
|
109
|
-
classId: number;
|
|
110
|
-
collectible: number;
|
|
111
|
-
cropImage: string;
|
|
112
|
-
flavorText: Record<Locales, string> | string;
|
|
113
|
-
health: number;
|
|
114
|
-
id: number;
|
|
115
|
-
image: Record<Locales, string> | string;
|
|
116
|
-
imageGold: Record<Locales, string> | string;
|
|
117
|
-
isZilliaxCosmeticModule: boolean;
|
|
118
|
-
isZilliaxFunctionalModule: boolean;
|
|
119
|
-
keywordIds: Array<number>;
|
|
120
|
-
manaCost: number;
|
|
121
|
-
multiClassIds: Array<number>;
|
|
122
|
-
name: Record<Locales, string> | string;
|
|
123
|
-
rarityId: number;
|
|
124
|
-
slug: string;
|
|
125
|
-
text: Record<Locales, string> | string;
|
|
126
|
-
}
|
|
127
127
|
|
|
128
128
|
declare function cardSearch(options: CardSearchParameters): Resource<CardSearchResponse, BlizzardCardSearchParameters>;
|
|
129
129
|
declare function fetchOneCard(id: string, options?: {
|
|
@@ -134,12 +134,6 @@ declare function fetchOneCard(id: string, options?: {
|
|
|
134
134
|
locale?: Locales;
|
|
135
135
|
}>;
|
|
136
136
|
|
|
137
|
-
type DeckSearchParameters = {
|
|
138
|
-
code: string;
|
|
139
|
-
} | {
|
|
140
|
-
hero?: string;
|
|
141
|
-
ids: string;
|
|
142
|
-
};
|
|
143
137
|
interface DeckResponse {
|
|
144
138
|
cardCount: number;
|
|
145
139
|
cards: Array<Card>;
|
|
@@ -150,6 +144,12 @@ interface DeckResponse {
|
|
|
150
144
|
heroPower: Hero;
|
|
151
145
|
version: number;
|
|
152
146
|
}
|
|
147
|
+
type DeckSearchParameters = {
|
|
148
|
+
code: string;
|
|
149
|
+
} | {
|
|
150
|
+
hero?: string;
|
|
151
|
+
ids: string;
|
|
152
|
+
};
|
|
153
153
|
interface Card {
|
|
154
154
|
armor?: number;
|
|
155
155
|
artistName: string;
|
|
@@ -239,9 +239,15 @@ interface AllMetadataResponse {
|
|
|
239
239
|
spellSchools: Array<GameMode>;
|
|
240
240
|
types: Array<GameMode>;
|
|
241
241
|
}
|
|
242
|
-
interface
|
|
243
|
-
|
|
242
|
+
interface SpecificMetadataResponse extends NameId {
|
|
243
|
+
aliasSetIds?: Array<number>;
|
|
244
|
+
collectibleCount: number;
|
|
245
|
+
collectibleRevealedCount: number;
|
|
246
|
+
hyped: boolean;
|
|
247
|
+
nonCollectibleCount: number;
|
|
248
|
+
nonCollectibleRevealedCount: number;
|
|
244
249
|
slug: string;
|
|
250
|
+
type: SetType;
|
|
245
251
|
}
|
|
246
252
|
interface Class {
|
|
247
253
|
alternateHeroCardIds?: Array<number>;
|
|
@@ -251,6 +257,10 @@ interface Class {
|
|
|
251
257
|
name: string;
|
|
252
258
|
slug: string;
|
|
253
259
|
}
|
|
260
|
+
interface GameMode extends NameId {
|
|
261
|
+
gameModes?: Array<number>;
|
|
262
|
+
slug: string;
|
|
263
|
+
}
|
|
254
264
|
interface Keyword extends NameId {
|
|
255
265
|
gameModes: Array<number>;
|
|
256
266
|
refText: string;
|
|
@@ -262,17 +272,6 @@ interface Rarity extends NameId {
|
|
|
262
272
|
dustValue: Array<null | number>;
|
|
263
273
|
slug: string;
|
|
264
274
|
}
|
|
265
|
-
interface SetGroup {
|
|
266
|
-
cardSets: Array<string>;
|
|
267
|
-
icon?: string;
|
|
268
|
-
name: string;
|
|
269
|
-
slug: string;
|
|
270
|
-
standard?: boolean;
|
|
271
|
-
svg?: null | string;
|
|
272
|
-
year?: number;
|
|
273
|
-
yearRange?: string;
|
|
274
|
-
}
|
|
275
|
-
type SetType = '' | 'adventure' | 'base' | 'expansion';
|
|
276
275
|
interface Set extends NameId {
|
|
277
276
|
aliasSetIds?: Array<number>;
|
|
278
277
|
collectibleCount: number;
|
|
@@ -283,16 +282,17 @@ interface Set extends NameId {
|
|
|
283
282
|
slug: string;
|
|
284
283
|
type: SetType;
|
|
285
284
|
}
|
|
286
|
-
interface
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
hyped: boolean;
|
|
291
|
-
nonCollectibleCount: number;
|
|
292
|
-
nonCollectibleRevealedCount: number;
|
|
285
|
+
interface SetGroup {
|
|
286
|
+
cardSets: Array<string>;
|
|
287
|
+
icon?: string;
|
|
288
|
+
name: string;
|
|
293
289
|
slug: string;
|
|
294
|
-
|
|
290
|
+
standard?: boolean;
|
|
291
|
+
svg?: null | string;
|
|
292
|
+
year?: number;
|
|
293
|
+
yearRange?: string;
|
|
295
294
|
}
|
|
295
|
+
type SetType = '' | 'adventure' | 'base' | 'expansion';
|
|
296
296
|
|
|
297
297
|
declare function allMetadata(): Resource<AllMetadataResponse>;
|
|
298
298
|
declare function specificMetadata(type: 'classes' | 'keywords' | 'minionTypes' | 'rarities' | 'setGroups' | 'sets' | 'types'): Resource<SpecificMetadataResponse>;
|
package/package.json
CHANGED
|
@@ -1,25 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blizzard-api/hs",
|
|
3
|
-
"version": "0.1
|
|
3
|
+
"version": "1.0.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"author": "Putro",
|
|
6
6
|
"description": "A series of helpers to interact with the Hearthstone Blizzard API",
|
|
7
7
|
"repository": "https://github.com/Pewtro/blizzard-api/tree/main/packages/hs",
|
|
8
8
|
"type": "module",
|
|
9
9
|
"engines": {
|
|
10
|
-
"node": "^18.18 ||
|
|
10
|
+
"node": "^18.18 || >=20.9"
|
|
11
11
|
},
|
|
12
|
-
"main": "./dist/index.cjs",
|
|
13
12
|
"module": "./dist/index.js",
|
|
14
13
|
"types": "./dist/index.d.ts",
|
|
15
14
|
"exports": {
|
|
16
15
|
"import": {
|
|
16
|
+
"@blizzard-api/hs-local": "./src/index.ts",
|
|
17
17
|
"types": "./dist/index.d.ts",
|
|
18
18
|
"default": "./dist/index.js"
|
|
19
|
-
},
|
|
20
|
-
"require": {
|
|
21
|
-
"types": "./dist/index.d.cts",
|
|
22
|
-
"default": "./dist/index.cjs"
|
|
23
19
|
}
|
|
24
20
|
},
|
|
25
21
|
"files": [
|
|
@@ -36,10 +32,10 @@
|
|
|
36
32
|
],
|
|
37
33
|
"dependencies": {},
|
|
38
34
|
"peerDependencies": {
|
|
39
|
-
"@blizzard-api/core": "
|
|
35
|
+
"@blizzard-api/core": "2.0.1"
|
|
40
36
|
},
|
|
41
37
|
"devDependencies": {
|
|
42
|
-
"@blizzard-api/core": "
|
|
38
|
+
"@blizzard-api/core": "2.0.1"
|
|
43
39
|
},
|
|
44
40
|
"scripts": {
|
|
45
41
|
"build": "tsup",
|
package/dist/index.cjs
DELETED
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
// src/card-backs/card-backs.ts
|
|
6
|
-
function cardBackSearch(options) {
|
|
7
|
-
return {
|
|
8
|
-
parameters: options,
|
|
9
|
-
path: "hearthstone/cardbacks"
|
|
10
|
-
};
|
|
11
|
-
}
|
|
12
|
-
function fetchOneCardBack(id, locale) {
|
|
13
|
-
return {
|
|
14
|
-
parameters: { locale },
|
|
15
|
-
path: `hearthstone/cardbacks/${id}`
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
// src/cards/cards.ts
|
|
20
|
-
function cardSearch(options) {
|
|
21
|
-
let attack = void 0;
|
|
22
|
-
let defaultMercenary = void 0;
|
|
23
|
-
let health = void 0;
|
|
24
|
-
let mercenaryId = void 0;
|
|
25
|
-
if (options.attack) {
|
|
26
|
-
attack = Array.isArray(options.attack) ? options.attack.join(",") : `${options.attack}`;
|
|
27
|
-
}
|
|
28
|
-
if (options.defaultMercenary) {
|
|
29
|
-
defaultMercenary = Array.isArray(options.defaultMercenary) ? options.defaultMercenary.join(",") : `${options.defaultMercenary}`;
|
|
30
|
-
}
|
|
31
|
-
if (options.health) {
|
|
32
|
-
health = Array.isArray(options.health) ? options.health.join(",") : `${options.health}`;
|
|
33
|
-
}
|
|
34
|
-
if (options.mercenaryId) {
|
|
35
|
-
mercenaryId = Array.isArray(options.mercenaryId) ? options.mercenaryId.join(",") : `${options.mercenaryId}`;
|
|
36
|
-
}
|
|
37
|
-
return {
|
|
38
|
-
parameters: {
|
|
39
|
-
...options,
|
|
40
|
-
attack,
|
|
41
|
-
defaultMercenary,
|
|
42
|
-
health,
|
|
43
|
-
mercenaryId
|
|
44
|
-
},
|
|
45
|
-
path: "hearthstone/cards"
|
|
46
|
-
};
|
|
47
|
-
}
|
|
48
|
-
function fetchOneCard(id, options) {
|
|
49
|
-
const { gameMode = "constructed", locale } = options ?? {};
|
|
50
|
-
return {
|
|
51
|
-
parameters: { gameMode, locale },
|
|
52
|
-
path: `hearthstone/cards/${id}`
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
// src/decks/decks.ts
|
|
57
|
-
function getDeck(options) {
|
|
58
|
-
if ("code" in options) {
|
|
59
|
-
return {
|
|
60
|
-
parameters: {
|
|
61
|
-
code: encodeURI(options.code)
|
|
62
|
-
},
|
|
63
|
-
path: "hearthstone/deck"
|
|
64
|
-
};
|
|
65
|
-
}
|
|
66
|
-
return {
|
|
67
|
-
parameters: {
|
|
68
|
-
hero: options.hero,
|
|
69
|
-
ids: options.ids?.join(",")
|
|
70
|
-
},
|
|
71
|
-
path: "hearthstone/deck"
|
|
72
|
-
};
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
// src/metadata/metadata.ts
|
|
76
|
-
function allMetadata() {
|
|
77
|
-
return {
|
|
78
|
-
path: "hearthstone/metadata"
|
|
79
|
-
};
|
|
80
|
-
}
|
|
81
|
-
function specificMetadata(type) {
|
|
82
|
-
return {
|
|
83
|
-
path: `hearthstone/metadata/${type}`
|
|
84
|
-
};
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
// src/index.ts
|
|
88
|
-
var hs = {
|
|
89
|
-
//Card Backs
|
|
90
|
-
cardBackSearch,
|
|
91
|
-
fetchOneCardBack,
|
|
92
|
-
//Cards
|
|
93
|
-
cardSearch,
|
|
94
|
-
fetchOneCard,
|
|
95
|
-
//Decks
|
|
96
|
-
getDeck,
|
|
97
|
-
//Metadata
|
|
98
|
-
allMetadata,
|
|
99
|
-
specificMetadata
|
|
100
|
-
};
|
|
101
|
-
|
|
102
|
-
exports.allMetadata = allMetadata;
|
|
103
|
-
exports.cardBackSearch = cardBackSearch;
|
|
104
|
-
exports.cardSearch = cardSearch;
|
|
105
|
-
exports.default = hs;
|
|
106
|
-
exports.fetchOneCard = fetchOneCard;
|
|
107
|
-
exports.fetchOneCardBack = fetchOneCardBack;
|
|
108
|
-
exports.getDeck = getDeck;
|
|
109
|
-
exports.hs = hs;
|
|
110
|
-
exports.specificMetadata = specificMetadata;
|
|
111
|
-
//# sourceMappingURL=index.cjs.map
|
|
112
|
-
//# sourceMappingURL=index.cjs.map
|
package/dist/index.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/card-backs/card-backs.ts","../src/cards/cards.ts","../src/decks/decks.ts","../src/metadata/metadata.ts","../src/index.ts"],"names":[],"mappings":"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","file":"index.cjs","sourcesContent":["import type { Locales, Resource } from '@blizzard-api/core';\r\nimport type { CardBackSearchParameters, CardBackSearchResponse, SingleCardBackSearchResponse } from './types';\r\n\r\nexport function cardBackSearch(\r\n options: CardBackSearchParameters,\r\n): Resource<CardBackSearchResponse, CardBackSearchParameters> {\r\n return {\r\n parameters: options,\r\n path: 'hearthstone/cardbacks',\r\n };\r\n}\r\n\r\nexport function fetchOneCardBack(\r\n id: string,\r\n locale?: Locales,\r\n): Resource<SingleCardBackSearchResponse, { locale?: Locales }> {\r\n return {\r\n parameters: { locale },\r\n path: `hearthstone/cardbacks/${id}`,\r\n };\r\n}\r\n","import type { Locales, Resource } from '@blizzard-api/core';\r\nimport type { GameMode } from '../base';\r\nimport type {\r\n BlizzardCardSearchParameters,\r\n CardSearchParameters,\r\n CardSearchResponse,\r\n FetchOneCardResponse,\r\n} from './types';\r\n\r\nexport function cardSearch(options: CardSearchParameters): Resource<CardSearchResponse, BlizzardCardSearchParameters> {\r\n let attack: string | undefined = undefined;\r\n let defaultMercenary: string | undefined = undefined;\r\n let health: string | undefined = undefined;\r\n let mercenaryId: string | undefined = undefined;\r\n\r\n if (options.attack) {\r\n attack = Array.isArray(options.attack) ? options.attack.join(',') : `${options.attack}`;\r\n }\r\n if (options.defaultMercenary) {\r\n defaultMercenary = Array.isArray(options.defaultMercenary)\r\n ? options.defaultMercenary.join(',')\r\n : `${options.defaultMercenary}`;\r\n }\r\n if (options.health) {\r\n health = Array.isArray(options.health) ? options.health.join(',') : `${options.health}`;\r\n }\r\n if (options.mercenaryId) {\r\n mercenaryId = Array.isArray(options.mercenaryId) ? options.mercenaryId.join(',') : `${options.mercenaryId}`;\r\n }\r\n\r\n return {\r\n parameters: {\r\n ...options,\r\n attack,\r\n defaultMercenary,\r\n health,\r\n mercenaryId,\r\n },\r\n path: 'hearthstone/cards',\r\n };\r\n}\r\n\r\nexport function fetchOneCard(\r\n id: string,\r\n options?: {\r\n gameMode?: GameMode;\r\n locale?: Locales;\r\n },\r\n): Resource<FetchOneCardResponse, { gameMode?: GameMode; locale?: Locales }> {\r\n const { gameMode = 'constructed', locale } = options ?? {};\r\n return {\r\n parameters: { gameMode, locale },\r\n path: `hearthstone/cards/${id}`,\r\n };\r\n}\r\n","import type { Resource } from '@blizzard-api/core';\r\nimport type { DeckResponse, DeckSearchParameters } from './types';\r\n\r\nexport function getDeck(\r\n options: { code: string } | { hero?: string; ids: Array<string> },\r\n): Resource<DeckResponse, DeckSearchParameters> {\r\n if ('code' in options) {\r\n return {\r\n parameters: {\r\n code: encodeURI(options.code),\r\n },\r\n path: 'hearthstone/deck',\r\n };\r\n }\r\n\r\n return {\r\n parameters: {\r\n hero: options.hero,\r\n ids: options.ids?.join(','),\r\n },\r\n path: 'hearthstone/deck',\r\n };\r\n}\r\n","import type { Resource } from '@blizzard-api/core';\r\nimport type { AllMetadataResponse, SpecificMetadataResponse } from './types';\r\n\r\nexport function allMetadata(): Resource<AllMetadataResponse> {\r\n return {\r\n path: 'hearthstone/metadata',\r\n };\r\n}\r\n\r\nexport function specificMetadata(\r\n type: 'classes' | 'keywords' | 'minionTypes' | 'rarities' | 'setGroups' | 'sets' | 'types',\r\n): Resource<SpecificMetadataResponse> {\r\n return {\r\n path: `hearthstone/metadata/${type}`,\r\n };\r\n}\r\n","import { cardBackSearch, fetchOneCardBack } from './card-backs/card-backs';\r\nimport { cardSearch, fetchOneCard } from './cards/cards';\r\nimport { getDeck } from './decks/decks';\r\nimport { allMetadata, specificMetadata } from './metadata/metadata';\r\n\r\nconst hs = {\r\n //Card Backs\r\n cardBackSearch,\r\n fetchOneCardBack,\r\n //Cards\r\n cardSearch,\r\n fetchOneCard,\r\n //Decks\r\n getDeck,\r\n //Metadata\r\n allMetadata,\r\n specificMetadata,\r\n};\r\nexport { hs as default, hs };\r\n\r\n//Card Backs\r\nexport * from './card-backs/card-backs';\r\nexport type * from './card-backs/types';\r\n//Cards\r\nexport * from './cards/cards';\r\nexport type * from './cards/types';\r\n//Decks\r\nexport * from './decks/decks';\r\nexport type * from './decks/types';\r\n//Metadata\r\nexport * from './metadata/metadata';\r\nexport type * from './metadata/types';\r\n"]}
|
package/dist/index.d.cts
DELETED
|
@@ -1,310 +0,0 @@
|
|
|
1
|
-
import { Locales, Resource } from '@blizzard-api/core';
|
|
2
|
-
|
|
3
|
-
type SortDirection = 'asc' | 'desc';
|
|
4
|
-
type SortOptions = 'attack' | 'class' | 'dataAdded' | 'groupByClass' | 'health' | 'manaCost' | 'name';
|
|
5
|
-
type SearchSortOption = `${SortOptions}:${SortDirection}`;
|
|
6
|
-
type GameMode$1 = 'arena' | 'battlegrounds' | 'classic' | 'constructed' | 'duels' | 'mercenaries' | 'standard';
|
|
7
|
-
|
|
8
|
-
interface CardBackSearchResponse {
|
|
9
|
-
cardBacks: Array<SingleCardBackSearchResponse>;
|
|
10
|
-
cardCount: number;
|
|
11
|
-
page: number;
|
|
12
|
-
pageCount: number;
|
|
13
|
-
}
|
|
14
|
-
interface SingleCardBackSearchResponse {
|
|
15
|
-
id: number;
|
|
16
|
-
image: string;
|
|
17
|
-
name: Record<Locales, string> | string;
|
|
18
|
-
slug: string;
|
|
19
|
-
sortCategory: number;
|
|
20
|
-
text: Record<Locales, string> | string;
|
|
21
|
-
}
|
|
22
|
-
interface CardBackSearchParameters {
|
|
23
|
-
cardBackCategory?: 'achieve' | 'base' | 'blizzard' | 'esports' | 'events' | 'fireside' | 'game_license' | 'golden' | 'heroes' | 'legend' | 'pre_purchase' | 'promotion' | 'season';
|
|
24
|
-
locale?: Locales;
|
|
25
|
-
page?: number;
|
|
26
|
-
pageSize?: number;
|
|
27
|
-
sort?: SearchSortOption;
|
|
28
|
-
textFilter?: string;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
declare function cardBackSearch(options: CardBackSearchParameters): Resource<CardBackSearchResponse, CardBackSearchParameters>;
|
|
32
|
-
declare function fetchOneCardBack(id: string, locale?: Locales): Resource<SingleCardBackSearchResponse, {
|
|
33
|
-
locale?: Locales;
|
|
34
|
-
}>;
|
|
35
|
-
|
|
36
|
-
interface CardSearchResponse {
|
|
37
|
-
cardCount: number;
|
|
38
|
-
cards: Array<Card$1>;
|
|
39
|
-
page: number;
|
|
40
|
-
pageCount: number;
|
|
41
|
-
}
|
|
42
|
-
interface Card$1 {
|
|
43
|
-
artistName: null | string;
|
|
44
|
-
attack: number;
|
|
45
|
-
cardSetId: number;
|
|
46
|
-
cardTypeId: number;
|
|
47
|
-
classId: null | number;
|
|
48
|
-
collectible: number;
|
|
49
|
-
cropImage: null | string;
|
|
50
|
-
flavorText: string;
|
|
51
|
-
health: number;
|
|
52
|
-
id: number;
|
|
53
|
-
image: string;
|
|
54
|
-
imageGold: string;
|
|
55
|
-
isZilliaxCosmeticModule: boolean;
|
|
56
|
-
isZilliaxFunctionalModule: boolean;
|
|
57
|
-
manaCost: number;
|
|
58
|
-
mercenaryHero: MercenaryHero;
|
|
59
|
-
minionTypeId: number;
|
|
60
|
-
multiClassIds: Array<number>;
|
|
61
|
-
multiTypeIds?: Array<number>;
|
|
62
|
-
name: string;
|
|
63
|
-
rarityId: number;
|
|
64
|
-
slug: string;
|
|
65
|
-
text: string;
|
|
66
|
-
}
|
|
67
|
-
interface MercenaryHero {
|
|
68
|
-
collectible: number;
|
|
69
|
-
craftingCost: number;
|
|
70
|
-
default: number;
|
|
71
|
-
faction: null | number;
|
|
72
|
-
mercId: number;
|
|
73
|
-
rarity: number;
|
|
74
|
-
roleId: number;
|
|
75
|
-
statsByLevel: Record<string, StatsByLevel>;
|
|
76
|
-
}
|
|
77
|
-
interface StatsByLevel {
|
|
78
|
-
attack: number;
|
|
79
|
-
health: number;
|
|
80
|
-
}
|
|
81
|
-
interface CardSearchParameters extends BaseSearchParameters {
|
|
82
|
-
attack?: Array<number> | number;
|
|
83
|
-
defaultMercenary?: Array<number> | number;
|
|
84
|
-
health?: Array<number> | number;
|
|
85
|
-
mercenaryId?: Array<number> | number;
|
|
86
|
-
}
|
|
87
|
-
interface BlizzardCardSearchParameters extends BaseSearchParameters {
|
|
88
|
-
attack?: string;
|
|
89
|
-
defaultMercenary?: string;
|
|
90
|
-
health?: string;
|
|
91
|
-
mercenaryId?: string;
|
|
92
|
-
}
|
|
93
|
-
interface BaseSearchParameters {
|
|
94
|
-
gameMode?: GameMode$1;
|
|
95
|
-
locale?: Locales;
|
|
96
|
-
mercenaryRole?: string;
|
|
97
|
-
minionType?: string;
|
|
98
|
-
page?: number;
|
|
99
|
-
pageSize?: number;
|
|
100
|
-
sort?: 'attack:asc' | 'attack:desc' | 'health:asc' | 'health:desc' | 'name:asc' | 'name:desc' | 'tier:asc' | 'tier:desc';
|
|
101
|
-
textFilter?: string;
|
|
102
|
-
tier?: 'hero' | 1 | 2 | 3 | 4 | 5 | 6;
|
|
103
|
-
}
|
|
104
|
-
interface FetchOneCardResponse {
|
|
105
|
-
artistName: string;
|
|
106
|
-
attack: number;
|
|
107
|
-
cardSetId: number;
|
|
108
|
-
cardTypeId: number;
|
|
109
|
-
classId: number;
|
|
110
|
-
collectible: number;
|
|
111
|
-
cropImage: string;
|
|
112
|
-
flavorText: Record<Locales, string> | string;
|
|
113
|
-
health: number;
|
|
114
|
-
id: number;
|
|
115
|
-
image: Record<Locales, string> | string;
|
|
116
|
-
imageGold: Record<Locales, string> | string;
|
|
117
|
-
isZilliaxCosmeticModule: boolean;
|
|
118
|
-
isZilliaxFunctionalModule: boolean;
|
|
119
|
-
keywordIds: Array<number>;
|
|
120
|
-
manaCost: number;
|
|
121
|
-
multiClassIds: Array<number>;
|
|
122
|
-
name: Record<Locales, string> | string;
|
|
123
|
-
rarityId: number;
|
|
124
|
-
slug: string;
|
|
125
|
-
text: Record<Locales, string> | string;
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
declare function cardSearch(options: CardSearchParameters): Resource<CardSearchResponse, BlizzardCardSearchParameters>;
|
|
129
|
-
declare function fetchOneCard(id: string, options?: {
|
|
130
|
-
gameMode?: GameMode$1;
|
|
131
|
-
locale?: Locales;
|
|
132
|
-
}): Resource<FetchOneCardResponse, {
|
|
133
|
-
gameMode?: GameMode$1;
|
|
134
|
-
locale?: Locales;
|
|
135
|
-
}>;
|
|
136
|
-
|
|
137
|
-
type DeckSearchParameters = {
|
|
138
|
-
code: string;
|
|
139
|
-
} | {
|
|
140
|
-
hero?: string;
|
|
141
|
-
ids: string;
|
|
142
|
-
};
|
|
143
|
-
interface DeckResponse {
|
|
144
|
-
cardCount: number;
|
|
145
|
-
cards: Array<Card>;
|
|
146
|
-
class: Class$1;
|
|
147
|
-
deckCode: string;
|
|
148
|
-
format: string;
|
|
149
|
-
hero: Hero;
|
|
150
|
-
heroPower: Hero;
|
|
151
|
-
version: number;
|
|
152
|
-
}
|
|
153
|
-
interface Card {
|
|
154
|
-
armor?: number;
|
|
155
|
-
artistName: string;
|
|
156
|
-
attack?: number;
|
|
157
|
-
bannedFromSideboard?: number;
|
|
158
|
-
cardSetId: number;
|
|
159
|
-
cardTypeId: number;
|
|
160
|
-
childIds?: Array<number>;
|
|
161
|
-
classId: number;
|
|
162
|
-
collectible: number;
|
|
163
|
-
cropImage: string;
|
|
164
|
-
flavorText: string;
|
|
165
|
-
health?: number;
|
|
166
|
-
id: number;
|
|
167
|
-
image: string;
|
|
168
|
-
imageGold: string;
|
|
169
|
-
isZilliaxCosmeticModule: boolean;
|
|
170
|
-
isZilliaxFunctionalModule: boolean;
|
|
171
|
-
keywordIds?: Array<number>;
|
|
172
|
-
manaCost: number;
|
|
173
|
-
minionTypeId?: number;
|
|
174
|
-
multiClassIds: Array<number>;
|
|
175
|
-
name: string;
|
|
176
|
-
rarityId: number;
|
|
177
|
-
slug: string;
|
|
178
|
-
spellSchoolId?: number;
|
|
179
|
-
text: string;
|
|
180
|
-
}
|
|
181
|
-
interface Class$1 {
|
|
182
|
-
id: number;
|
|
183
|
-
name: string;
|
|
184
|
-
slug: string;
|
|
185
|
-
}
|
|
186
|
-
interface Hero {
|
|
187
|
-
artistName: null | string;
|
|
188
|
-
cardSetId: number;
|
|
189
|
-
cardTypeId: number;
|
|
190
|
-
classId: number;
|
|
191
|
-
collectible: number;
|
|
192
|
-
cropImage: null;
|
|
193
|
-
flavorText: string;
|
|
194
|
-
health?: number;
|
|
195
|
-
id: number;
|
|
196
|
-
image: string;
|
|
197
|
-
imageGold: string;
|
|
198
|
-
isZilliaxCosmeticModule: boolean;
|
|
199
|
-
isZilliaxFunctionalModule: boolean;
|
|
200
|
-
manaCost: number;
|
|
201
|
-
multiClassIds: Array<number>;
|
|
202
|
-
name: string;
|
|
203
|
-
parentId: number;
|
|
204
|
-
rarityId: null | number;
|
|
205
|
-
slug: string;
|
|
206
|
-
text: string;
|
|
207
|
-
}
|
|
208
|
-
|
|
209
|
-
declare function getDeck(options: {
|
|
210
|
-
code: string;
|
|
211
|
-
} | {
|
|
212
|
-
hero?: string;
|
|
213
|
-
ids: Array<string>;
|
|
214
|
-
}): Resource<DeckResponse, DeckSearchParameters>;
|
|
215
|
-
|
|
216
|
-
/**
|
|
217
|
-
* Base record interface containing name and id properties that often appear together in Blizzard API responses.
|
|
218
|
-
*/
|
|
219
|
-
interface NameId {
|
|
220
|
-
id: number;
|
|
221
|
-
name: string;
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
interface AllMetadataResponse {
|
|
225
|
-
arenaIds: Array<number>;
|
|
226
|
-
bgGameModes: Array<GameMode>;
|
|
227
|
-
cardBackCategories: Array<GameMode>;
|
|
228
|
-
classes: Array<Class>;
|
|
229
|
-
filterableFields: Array<string>;
|
|
230
|
-
gameModes: Array<GameMode>;
|
|
231
|
-
keywords: Array<Keyword>;
|
|
232
|
-
mercenaryFactions: Array<GameMode>;
|
|
233
|
-
mercenaryRoles: Array<GameMode>;
|
|
234
|
-
minionTypes: Array<GameMode>;
|
|
235
|
-
numericFields: Array<string>;
|
|
236
|
-
rarities: Array<Rarity>;
|
|
237
|
-
setGroups: Array<SetGroup>;
|
|
238
|
-
sets: Array<Set>;
|
|
239
|
-
spellSchools: Array<GameMode>;
|
|
240
|
-
types: Array<GameMode>;
|
|
241
|
-
}
|
|
242
|
-
interface GameMode extends NameId {
|
|
243
|
-
gameModes?: Array<number>;
|
|
244
|
-
slug: string;
|
|
245
|
-
}
|
|
246
|
-
interface Class {
|
|
247
|
-
alternateHeroCardIds?: Array<number>;
|
|
248
|
-
cardId?: number;
|
|
249
|
-
heroPowerCardId?: number;
|
|
250
|
-
id: number;
|
|
251
|
-
name: string;
|
|
252
|
-
slug: string;
|
|
253
|
-
}
|
|
254
|
-
interface Keyword extends NameId {
|
|
255
|
-
gameModes: Array<number>;
|
|
256
|
-
refText: string;
|
|
257
|
-
slug: string;
|
|
258
|
-
text: string;
|
|
259
|
-
}
|
|
260
|
-
interface Rarity extends NameId {
|
|
261
|
-
craftingCost: Array<null | number>;
|
|
262
|
-
dustValue: Array<null | number>;
|
|
263
|
-
slug: string;
|
|
264
|
-
}
|
|
265
|
-
interface SetGroup {
|
|
266
|
-
cardSets: Array<string>;
|
|
267
|
-
icon?: string;
|
|
268
|
-
name: string;
|
|
269
|
-
slug: string;
|
|
270
|
-
standard?: boolean;
|
|
271
|
-
svg?: null | string;
|
|
272
|
-
year?: number;
|
|
273
|
-
yearRange?: string;
|
|
274
|
-
}
|
|
275
|
-
type SetType = '' | 'adventure' | 'base' | 'expansion';
|
|
276
|
-
interface Set extends NameId {
|
|
277
|
-
aliasSetIds?: Array<number>;
|
|
278
|
-
collectibleCount: number;
|
|
279
|
-
collectibleRevealedCount: number;
|
|
280
|
-
hyped: boolean;
|
|
281
|
-
nonCollectibleCount: number;
|
|
282
|
-
nonCollectibleRevealedCount: number;
|
|
283
|
-
slug: string;
|
|
284
|
-
type: SetType;
|
|
285
|
-
}
|
|
286
|
-
interface SpecificMetadataResponse extends NameId {
|
|
287
|
-
aliasSetIds?: Array<number>;
|
|
288
|
-
collectibleCount: number;
|
|
289
|
-
collectibleRevealedCount: number;
|
|
290
|
-
hyped: boolean;
|
|
291
|
-
nonCollectibleCount: number;
|
|
292
|
-
nonCollectibleRevealedCount: number;
|
|
293
|
-
slug: string;
|
|
294
|
-
type: SetType;
|
|
295
|
-
}
|
|
296
|
-
|
|
297
|
-
declare function allMetadata(): Resource<AllMetadataResponse>;
|
|
298
|
-
declare function specificMetadata(type: 'classes' | 'keywords' | 'minionTypes' | 'rarities' | 'setGroups' | 'sets' | 'types'): Resource<SpecificMetadataResponse>;
|
|
299
|
-
|
|
300
|
-
declare const hs: {
|
|
301
|
-
cardBackSearch: typeof cardBackSearch;
|
|
302
|
-
fetchOneCardBack: typeof fetchOneCardBack;
|
|
303
|
-
cardSearch: typeof cardSearch;
|
|
304
|
-
fetchOneCard: typeof fetchOneCard;
|
|
305
|
-
getDeck: typeof getDeck;
|
|
306
|
-
allMetadata: typeof allMetadata;
|
|
307
|
-
specificMetadata: typeof specificMetadata;
|
|
308
|
-
};
|
|
309
|
-
|
|
310
|
-
export { type AllMetadataResponse, type BlizzardCardSearchParameters, type CardBackSearchParameters, type CardBackSearchResponse, type CardSearchParameters, type CardSearchResponse, type DeckResponse, type DeckSearchParameters, type FetchOneCardResponse, type SingleCardBackSearchResponse, type SpecificMetadataResponse, allMetadata, cardBackSearch, cardSearch, hs as default, fetchOneCard, fetchOneCardBack, getDeck, hs, specificMetadata };
|