@blizzard-api/hs 0.1.1 → 1.0.0

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/package.json CHANGED
@@ -1,25 +1,21 @@
1
1
  {
2
2
  "name": "@blizzard-api/hs",
3
- "version": "0.1.1",
3
+ "version": "1.0.0",
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 || ^20.9 || ^21.1 || ^22"
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": "1.2.1"
35
+ "@blizzard-api/core": "2.0.0"
40
36
  },
41
37
  "devDependencies": {
42
- "@blizzard-api/core": "1.2.1"
38
+ "@blizzard-api/core": "2.0.0"
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
@@ -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 };