Skip to content
This repository was archived by the owner on Oct 27, 2024. It is now read-only.

Commit 39c1300

Browse files
committed
make catacombs_requirements more specific
fix catacombs_requirements and requirements.dungeon not being able to be merged
1 parent befd253 commit 39c1300

File tree

3 files changed

+17
-12
lines changed

3 files changed

+17
-12
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "typed-hypixel-api",
3-
"version": "1.3.0",
3+
"version": "1.3.1",
44
"main": "build/index.js",
55
"types": "build/index.d.js",
66
"repository": "https://github.com/skyblockstats/typed-hypixel-api.git",

src/responses/resources/skyblock/items.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -140,9 +140,10 @@ export interface SkyBlockItemsResponse {
140140
essence_type: string
141141
costs: number[]
142142
}
143+
/** I don't know why this is its own field, this can be used as a fallback if requirements.dungeon is missing. */
143144
catacombs_requirements?: {
144145
dungeon: {
145-
type: string
146+
type: 'CATACOMBS'
146147
level: number
147148
}
148149
}
@@ -168,7 +169,10 @@ export interface SkyBlockItemsResponse {
168169
ATTACK_SPEED?: number[]
169170
}
170171
requirements?: {
171-
/** If present, you need a specific level in a dungeon. */
172+
/**
173+
* If present, you need a specific level in a dungeon. Note that
174+
* sometimes `catacombs_requirements` is used instead of this field.
175+
*/
172176
dungeon?: {
173177
type: 'CATACOMBS'
174178
level: number

test/index.js

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,16 @@ console.log('\x1b[1m%s\x1b[0m', 'Running tests. This will take a few minutes, be
3434
const startTime = Date.now();
3535

3636
(async () => {
37+
38+
// we have to do this otherwise typescript gets mad :(
39+
const itemsResponse = await request('resources/skyblock/items', {}, true)
40+
const originalItems = itemsResponse.data.items
41+
for (let i = 0; i < originalItems.length / 1000; i++) {
42+
itemsResponse.data.items = originalItems.slice(i * 1000, (i + 1) * 1000)
43+
await testData('SkyBlockItemsResponse', itemsResponse)
44+
}
45+
46+
3747
await testData('SkyBlockPlayerBingoResponse', await request('skyblock/bingo', {
3848
key: process.env.API_KEY,
3949
uuid: 'e471665f71014891bef337c8d22cf04b'
@@ -92,15 +102,6 @@ const startTime = Date.now();
92102
await testData('SkyBlockNewsResponse', await request('skyblock/news', { key: process.env.API_KEY }, true))
93103
await testData('SkyBlockBazaarResponse', await request('skyblock/bazaar', {}, true))
94104

95-
// we have to do this otherwise typescript gets mad :(
96-
const itemsResponse = await request('resources/skyblock/items', {}, true)
97-
const originalItems = itemsResponse.data.items
98-
for (let i = 0; i < originalItems.length / 1000; i++) {
99-
itemsResponse.data.items = originalItems.slice(i * 1000, (i + 1) * 1000)
100-
await testData('SkyBlockItemsResponse', itemsResponse)
101-
}
102-
103-
104105
await testData('PlayerDataResponse', await request('player', {
105106
uuid: 'ed32a0660fc948378dcf8ed717d1188c',
106107
key: process.env.API_KEY

0 commit comments

Comments
 (0)