@breezil/hypixel-parsers 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/LICENSE +21 -0
- package/README.md +235 -0
- package/dist/arcade.d.ts +560 -0
- package/dist/arcade.d.ts.map +1 -0
- package/dist/arcade.js +619 -0
- package/dist/arcade.js.map +1 -0
- package/dist/arenabrawl.d.ts +56 -0
- package/dist/arenabrawl.d.ts.map +1 -0
- package/dist/arenabrawl.js +107 -0
- package/dist/arenabrawl.js.map +1 -0
- package/dist/bedwars.d.ts +747 -0
- package/dist/bedwars.d.ts.map +1 -0
- package/dist/bedwars.js +844 -0
- package/dist/bedwars.js.map +1 -0
- package/dist/blitz.d.ts +105 -0
- package/dist/blitz.d.ts.map +1 -0
- package/dist/blitz.js +259 -0
- package/dist/blitz.js.map +1 -0
- package/dist/buildbattle.d.ts +54 -0
- package/dist/buildbattle.d.ts.map +1 -0
- package/dist/buildbattle.js +92 -0
- package/dist/buildbattle.js.map +1 -0
- package/dist/common.d.ts +11 -0
- package/dist/common.d.ts.map +1 -0
- package/dist/common.js +34 -0
- package/dist/common.js.map +1 -0
- package/dist/copsandcrims.d.ts +201 -0
- package/dist/copsandcrims.d.ts.map +1 -0
- package/dist/copsandcrims.js +269 -0
- package/dist/copsandcrims.js.map +1 -0
- package/dist/duels.d.ts +358 -0
- package/dist/duels.d.ts.map +1 -0
- package/dist/duels.js +570 -0
- package/dist/duels.js.map +1 -0
- package/dist/guild.d.ts +49 -0
- package/dist/guild.d.ts.map +1 -0
- package/dist/guild.js +95 -0
- package/dist/guild.js.map +1 -0
- package/dist/housing.d.ts +16 -0
- package/dist/housing.d.ts.map +1 -0
- package/dist/housing.js +34 -0
- package/dist/housing.js.map +1 -0
- package/dist/index.d.ts +50 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +66 -0
- package/dist/index.js.map +1 -0
- package/dist/megawalls.d.ts +363 -0
- package/dist/megawalls.d.ts.map +1 -0
- package/dist/megawalls.js +684 -0
- package/dist/megawalls.js.map +1 -0
- package/dist/murdermystery.d.ts +293 -0
- package/dist/murdermystery.d.ts.map +1 -0
- package/dist/murdermystery.js +349 -0
- package/dist/murdermystery.js.map +1 -0
- package/dist/nbt.d.ts +37 -0
- package/dist/nbt.d.ts.map +1 -0
- package/dist/nbt.js +133 -0
- package/dist/nbt.js.map +1 -0
- package/dist/paintball.d.ts +52 -0
- package/dist/paintball.d.ts.map +1 -0
- package/dist/paintball.js +79 -0
- package/dist/paintball.js.map +1 -0
- package/dist/pit.d.ts +181 -0
- package/dist/pit.d.ts.map +1 -0
- package/dist/pit.js +262 -0
- package/dist/pit.js.map +1 -0
- package/dist/player.d.ts +338 -0
- package/dist/player.d.ts.map +1 -0
- package/dist/player.js +521 -0
- package/dist/player.js.map +1 -0
- package/dist/quakecraft.d.ts +75 -0
- package/dist/quakecraft.d.ts.map +1 -0
- package/dist/quakecraft.js +99 -0
- package/dist/quakecraft.js.map +1 -0
- package/dist/recentgames.d.ts +10 -0
- package/dist/recentgames.d.ts.map +1 -0
- package/dist/recentgames.js +27 -0
- package/dist/recentgames.js.map +1 -0
- package/dist/resources-achievements.d.ts +29 -0
- package/dist/resources-achievements.d.ts.map +1 -0
- package/dist/resources-achievements.js +67 -0
- package/dist/resources-achievements.js.map +1 -0
- package/dist/resources-challenges.d.ts +12 -0
- package/dist/resources-challenges.d.ts.map +1 -0
- package/dist/resources-challenges.js +36 -0
- package/dist/resources-challenges.js.map +1 -0
- package/dist/resources-games.d.ts +10 -0
- package/dist/resources-games.d.ts.map +1 -0
- package/dist/resources-games.js +28 -0
- package/dist/resources-games.js.map +1 -0
- package/dist/resources-guild-achievements.d.ts +23 -0
- package/dist/resources-guild-achievements.d.ts.map +1 -0
- package/dist/resources-guild-achievements.js +56 -0
- package/dist/resources-guild-achievements.js.map +1 -0
- package/dist/resources-quests.d.ts +23 -0
- package/dist/resources-quests.d.ts.map +1 -0
- package/dist/resources-quests.js +53 -0
- package/dist/resources-quests.js.map +1 -0
- package/dist/resources-vanity.d.ts +19 -0
- package/dist/resources-vanity.d.ts.map +1 -0
- package/dist/resources-vanity.js +33 -0
- package/dist/resources-vanity.js.map +1 -0
- package/dist/skyblock-auctions.d.ts +50 -0
- package/dist/skyblock-auctions.d.ts.map +1 -0
- package/dist/skyblock-auctions.js +90 -0
- package/dist/skyblock-auctions.js.map +1 -0
- package/dist/skyblock-bazaar.d.ts +25 -0
- package/dist/skyblock-bazaar.d.ts.map +1 -0
- package/dist/skyblock-bazaar.js +54 -0
- package/dist/skyblock-bazaar.js.map +1 -0
- package/dist/skyblock-bingo.d.ts +8 -0
- package/dist/skyblock-bingo.d.ts.map +1 -0
- package/dist/skyblock-bingo.js +19 -0
- package/dist/skyblock-bingo.js.map +1 -0
- package/dist/skyblock-items.d.ts +150 -0
- package/dist/skyblock-items.d.ts.map +1 -0
- package/dist/skyblock-items.js +247 -0
- package/dist/skyblock-items.js.map +1 -0
- package/dist/skyblock-misc.d.ts +91 -0
- package/dist/skyblock-misc.d.ts.map +1 -0
- package/dist/skyblock-misc.js +159 -0
- package/dist/skyblock-misc.js.map +1 -0
- package/dist/skyblock-museum.d.ts +24 -0
- package/dist/skyblock-museum.d.ts.map +1 -0
- package/dist/skyblock-museum.js +51 -0
- package/dist/skyblock-museum.js.map +1 -0
- package/dist/skyblock-news.d.ts +12 -0
- package/dist/skyblock-news.d.ts.map +1 -0
- package/dist/skyblock-news.js +25 -0
- package/dist/skyblock-news.js.map +1 -0
- package/dist/skyblock-resources.d.ts +94 -0
- package/dist/skyblock-resources.d.ts.map +1 -0
- package/dist/skyblock-resources.js +175 -0
- package/dist/skyblock-resources.js.map +1 -0
- package/dist/skyblock.d.ts +972 -0
- package/dist/skyblock.d.ts.map +1 -0
- package/dist/skyblock.js +1371 -0
- package/dist/skyblock.js.map +1 -0
- package/dist/skywars.d.ts +319 -0
- package/dist/skywars.d.ts.map +1 -0
- package/dist/skywars.js +611 -0
- package/dist/skywars.js.map +1 -0
- package/dist/smashheroes.d.ts +126 -0
- package/dist/smashheroes.d.ts.map +1 -0
- package/dist/smashheroes.js +206 -0
- package/dist/smashheroes.js.map +1 -0
- package/dist/static.d.ts +42 -0
- package/dist/static.d.ts.map +1 -0
- package/dist/static.js +106 -0
- package/dist/static.js.map +1 -0
- package/dist/status.d.ts +9 -0
- package/dist/status.d.ts.map +1 -0
- package/dist/status.js +18 -0
- package/dist/status.js.map +1 -0
- package/dist/tntgames.d.ts +189 -0
- package/dist/tntgames.d.ts.map +1 -0
- package/dist/tntgames.js +283 -0
- package/dist/tntgames.js.map +1 -0
- package/dist/turbokartracers.d.ts +85 -0
- package/dist/turbokartracers.d.ts.map +1 -0
- package/dist/turbokartracers.js +165 -0
- package/dist/turbokartracers.js.map +1 -0
- package/dist/uhc.d.ts +55 -0
- package/dist/uhc.d.ts.map +1 -0
- package/dist/uhc.js +94 -0
- package/dist/uhc.js.map +1 -0
- package/dist/vampirez.d.ts +75 -0
- package/dist/vampirez.d.ts.map +1 -0
- package/dist/vampirez.js +104 -0
- package/dist/vampirez.js.map +1 -0
- package/dist/walls.d.ts +96 -0
- package/dist/walls.d.ts.map +1 -0
- package/dist/walls.js +122 -0
- package/dist/walls.js.map +1 -0
- package/dist/warlords.d.ts +229 -0
- package/dist/warlords.d.ts.map +1 -0
- package/dist/warlords.js +309 -0
- package/dist/warlords.js.map +1 -0
- package/package.json +55 -0
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseSkyBlockItems = parseSkyBlockItems;
|
|
4
|
+
const common_1 = require("./common");
|
|
5
|
+
function isPlainObject(value) {
|
|
6
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
7
|
+
}
|
|
8
|
+
function objectArray(item, key) {
|
|
9
|
+
const value = item[key];
|
|
10
|
+
return Array.isArray(value) ? value.filter(isPlainObject) : [];
|
|
11
|
+
}
|
|
12
|
+
function nestedObjectArray(item, key) {
|
|
13
|
+
const value = item[key];
|
|
14
|
+
if (!Array.isArray(value)) {
|
|
15
|
+
return [];
|
|
16
|
+
}
|
|
17
|
+
return value.map((inner) => Array.isArray(inner) ? inner.filter(isPlainObject) : []);
|
|
18
|
+
}
|
|
19
|
+
function stringList(value) {
|
|
20
|
+
if (!Array.isArray(value)) {
|
|
21
|
+
return [];
|
|
22
|
+
}
|
|
23
|
+
return value.filter((entry) => typeof entry === "string");
|
|
24
|
+
}
|
|
25
|
+
function numberMap(parent, key) {
|
|
26
|
+
const result = {};
|
|
27
|
+
for (const [name, value] of Object.entries((0, common_1.obj)(parent, key))) {
|
|
28
|
+
if (typeof value === "number") {
|
|
29
|
+
result[name] = value;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return result;
|
|
33
|
+
}
|
|
34
|
+
function numberArrayMap(parent, key) {
|
|
35
|
+
const result = {};
|
|
36
|
+
for (const [name, value] of Object.entries((0, common_1.obj)(parent, key))) {
|
|
37
|
+
if (Array.isArray(value)) {
|
|
38
|
+
result[name] = value.filter((entry) => typeof entry === "number");
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return result;
|
|
42
|
+
}
|
|
43
|
+
function stringMap(parent, key) {
|
|
44
|
+
const result = {};
|
|
45
|
+
for (const [name, value] of Object.entries((0, common_1.obj)(parent, key))) {
|
|
46
|
+
if (typeof value === "string") {
|
|
47
|
+
result[name] = value;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return result;
|
|
51
|
+
}
|
|
52
|
+
function jsonMap(parent, key) {
|
|
53
|
+
return (0, common_1.obj)(parent, key);
|
|
54
|
+
}
|
|
55
|
+
function durabilityValue(item) {
|
|
56
|
+
const value = item.durability;
|
|
57
|
+
if (typeof value === "string") {
|
|
58
|
+
return value;
|
|
59
|
+
}
|
|
60
|
+
return typeof value === "number" ? value : 0;
|
|
61
|
+
}
|
|
62
|
+
function parseCost(cost) {
|
|
63
|
+
return {
|
|
64
|
+
type: (0, common_1.str)(cost, "type"),
|
|
65
|
+
essenceType: (0, common_1.str)(cost, "essence_type"),
|
|
66
|
+
itemId: (0, common_1.str)(cost, "item_id"),
|
|
67
|
+
coins: (0, common_1.num)(cost, "coins"),
|
|
68
|
+
amount: (0, common_1.num)(cost, "amount"),
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
function costArray(parent, key) {
|
|
72
|
+
return objectArray(parent, key).map(parseCost);
|
|
73
|
+
}
|
|
74
|
+
function parseSkin(item) {
|
|
75
|
+
const skin = (0, common_1.obj)(item, "skin");
|
|
76
|
+
return {
|
|
77
|
+
value: (0, common_1.str)(skin, "value"),
|
|
78
|
+
signature: (0, common_1.str)(skin, "signature"),
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
function parseMuseumData(item) {
|
|
82
|
+
const museum = (0, common_1.obj)(item, "museum_data");
|
|
83
|
+
return {
|
|
84
|
+
donationXp: (0, common_1.num)(museum, "donation_xp"),
|
|
85
|
+
category: (0, common_1.str)(museum, "category"),
|
|
86
|
+
parent: stringMap(museum, "parent"),
|
|
87
|
+
mappedItemIds: stringList(museum.mapped_item_ids),
|
|
88
|
+
gameStage: (0, common_1.str)(museum, "game_stage"),
|
|
89
|
+
armorSetDonationXp: numberMap(museum, "armor_set_donation_xp"),
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
function parseGemstoneSlotRequirements(slot) {
|
|
93
|
+
return objectArray(slot, "requirements").map((requirement) => ({
|
|
94
|
+
type: (0, common_1.str)(requirement, "type"),
|
|
95
|
+
dataKey: (0, common_1.str)(requirement, "data_key"),
|
|
96
|
+
value: (0, common_1.str)(requirement, "value"),
|
|
97
|
+
operator: (0, common_1.str)(requirement, "operator"),
|
|
98
|
+
}));
|
|
99
|
+
}
|
|
100
|
+
function parseGemstoneSlots(item) {
|
|
101
|
+
return objectArray(item, "gemstone_slots").map((slot) => ({
|
|
102
|
+
slotType: (0, common_1.str)(slot, "slot_type"),
|
|
103
|
+
costs: costArray(slot, "costs"),
|
|
104
|
+
requirements: parseGemstoneSlotRequirements(slot),
|
|
105
|
+
}));
|
|
106
|
+
}
|
|
107
|
+
function parseRequirement(requirement) {
|
|
108
|
+
return {
|
|
109
|
+
type: (0, common_1.str)(requirement, "type"),
|
|
110
|
+
skill: (0, common_1.str)(requirement, "skill"),
|
|
111
|
+
level: (0, common_1.num)(requirement, "level"),
|
|
112
|
+
tier: (0, common_1.num)(requirement, "tier"),
|
|
113
|
+
dungeonType: (0, common_1.str)(requirement, "dungeon_type"),
|
|
114
|
+
slayerBossType: (0, common_1.str)(requirement, "slayer_boss_type"),
|
|
115
|
+
collection: (0, common_1.str)(requirement, "collection"),
|
|
116
|
+
reward: (0, common_1.str)(requirement, "reward"),
|
|
117
|
+
faction: (0, common_1.str)(requirement, "faction"),
|
|
118
|
+
reputation: (0, common_1.num)(requirement, "reputation"),
|
|
119
|
+
trophyType: (0, common_1.str)(requirement, "trophy_type"),
|
|
120
|
+
rabbit: (0, common_1.str)(requirement, "rabbit"),
|
|
121
|
+
mode: (0, common_1.str)(requirement, "mode"),
|
|
122
|
+
kuudraTier: (0, common_1.str)(requirement, "kuudra_tier"),
|
|
123
|
+
profileType: (0, common_1.str)(requirement, "profile_type"),
|
|
124
|
+
amount: (0, common_1.num)(requirement, "amount"),
|
|
125
|
+
loreIndex: (0, common_1.num)(requirement, "lore_index"),
|
|
126
|
+
minimumAge: (0, common_1.num)(requirement, "minimum_age"),
|
|
127
|
+
minimumAgeUnit: (0, common_1.str)(requirement, "minimum_age_unit"),
|
|
128
|
+
requirements: objectArray(requirement, "requirements").map(parseRequirement),
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
function parseRequirements(item, key) {
|
|
132
|
+
return objectArray(item, key).map(parseRequirement);
|
|
133
|
+
}
|
|
134
|
+
function parseComponents(item) {
|
|
135
|
+
return objectArray(item, "components").map((component) => ({
|
|
136
|
+
type: (0, common_1.str)(component, "type"),
|
|
137
|
+
showItemsFirst: stringList(component.show_items_first),
|
|
138
|
+
showItemsLast: stringList(component.show_items_last),
|
|
139
|
+
excludedItems: stringList(component.excluded_items),
|
|
140
|
+
sortByCategory: (0, common_1.bool)(component, "sort_by_category"),
|
|
141
|
+
allowDuplicates: (0, common_1.bool)(component, "allow_duplicates"),
|
|
142
|
+
sortByAccessoryTier: (0, common_1.bool)(component, "sort_by_accessory_tier"),
|
|
143
|
+
}));
|
|
144
|
+
}
|
|
145
|
+
function parseRecipe(recipe) {
|
|
146
|
+
return {
|
|
147
|
+
output: { itemId: (0, common_1.str)((0, common_1.obj)(recipe, "output"), "item_id") },
|
|
148
|
+
ingredientSymbols: stringMap(recipe, "ingredient_symbols"),
|
|
149
|
+
matrix: stringList(recipe.matrix),
|
|
150
|
+
allowQuickCrafting: (0, common_1.bool)(recipe, "allow_quick_crafting"),
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
function parsePrestige(item) {
|
|
154
|
+
const prestige = (0, common_1.obj)(item, "prestige");
|
|
155
|
+
return {
|
|
156
|
+
itemId: (0, common_1.str)(prestige, "item_id"),
|
|
157
|
+
costs: costArray(prestige, "costs"),
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
function hasUuid(item) {
|
|
161
|
+
const value = item.has_uuid;
|
|
162
|
+
return typeof value === "string" ? value : value === true;
|
|
163
|
+
}
|
|
164
|
+
function parseItem(item) {
|
|
165
|
+
return {
|
|
166
|
+
id: (0, common_1.str)(item, "id"),
|
|
167
|
+
name: (0, common_1.str)(item, "name"),
|
|
168
|
+
material: (0, common_1.str)(item, "material"),
|
|
169
|
+
durability: durabilityValue(item),
|
|
170
|
+
skin: parseSkin(item),
|
|
171
|
+
itemModel: (0, common_1.str)(item, "item_model"),
|
|
172
|
+
category: (0, common_1.str)(item, "category"),
|
|
173
|
+
categoryDisplay: (0, common_1.str)(item, "category_display"),
|
|
174
|
+
tier: (0, common_1.str)(item, "tier"),
|
|
175
|
+
rarity: (0, common_1.str)(item, "rarity"),
|
|
176
|
+
npcSellPrice: (0, common_1.num)(item, "npc_sell_price"),
|
|
177
|
+
motesSellPrice: (0, common_1.num)(item, "motes_sell_price"),
|
|
178
|
+
salvages: costArray(item, "salvages"),
|
|
179
|
+
salvage: parseCost((0, common_1.obj)(item, "salvage")),
|
|
180
|
+
raritySalvageable: (0, common_1.bool)(item, "rarity_salvageable"),
|
|
181
|
+
salvageableFromRecipe: (0, common_1.bool)(item, "salvageable_from_recipe"),
|
|
182
|
+
stats: numberMap(item, "stats"),
|
|
183
|
+
tieredStats: numberArrayMap(item, "tiered_stats"),
|
|
184
|
+
miningFortune: (0, common_1.num)(item, "MINING_FORTUNE"),
|
|
185
|
+
unstackable: (0, common_1.bool)(item, "unstackable"),
|
|
186
|
+
museumData: parseMuseumData(item),
|
|
187
|
+
museum: (0, common_1.bool)(item, "museum"),
|
|
188
|
+
color: (0, common_1.str)(item, "color"),
|
|
189
|
+
soulbound: (0, common_1.str)(item, "soulbound"),
|
|
190
|
+
hasUuid: hasUuid(item),
|
|
191
|
+
gemstoneSlots: parseGemstoneSlots(item),
|
|
192
|
+
glowing: (0, common_1.bool)(item, "glowing"),
|
|
193
|
+
canAuction: (0, common_1.bool)(item, "can_auction"),
|
|
194
|
+
canTrade: (0, common_1.bool)(item, "can_trade"),
|
|
195
|
+
requirements: parseRequirements(item, "requirements"),
|
|
196
|
+
catacombsRequirements: parseRequirements(item, "catacombs_requirements"),
|
|
197
|
+
canPlace: (0, common_1.bool)(item, "can_place"),
|
|
198
|
+
generator: (0, common_1.str)(item, "generator"),
|
|
199
|
+
generatorTier: (0, common_1.num)(item, "generator_tier"),
|
|
200
|
+
furniture: (0, common_1.str)(item, "furniture"),
|
|
201
|
+
components: parseComponents(item),
|
|
202
|
+
itemSpecific: jsonMap(item, "item_specific"),
|
|
203
|
+
description: (0, common_1.str)(item, "description"),
|
|
204
|
+
upgradeCosts: nestedObjectArray(item, "upgrade_costs").map((inner) => inner.map(parseCost)),
|
|
205
|
+
gearScore: (0, common_1.num)(item, "gear_score"),
|
|
206
|
+
dungeonItem: (0, common_1.bool)(item, "dungeon_item"),
|
|
207
|
+
dungeonItemConversionCost: parseCost((0, common_1.obj)(item, "dungeon_item_conversion_cost")),
|
|
208
|
+
canHaveAttributes: (0, common_1.bool)(item, "can_have_attributes"),
|
|
209
|
+
canHaveBooster: (0, common_1.bool)(item, "can_have_booster"),
|
|
210
|
+
canRecombobulate: (0, common_1.bool)(item, "can_recombobulate"),
|
|
211
|
+
cannotReforge: (0, common_1.bool)(item, "cannot_reforge"),
|
|
212
|
+
forceWipeRecomb: (0, common_1.bool)(item, "force_wipe_recomb"),
|
|
213
|
+
enchantments: numberMap(item, "enchantments"),
|
|
214
|
+
riftTransferrable: (0, common_1.bool)(item, "rift_transferrable"),
|
|
215
|
+
loseMotesValueOnTransfer: (0, common_1.bool)(item, "lose_motes_value_on_transfer"),
|
|
216
|
+
origin: (0, common_1.str)(item, "origin"),
|
|
217
|
+
editioned: (0, common_1.bool)(item, "editioned"),
|
|
218
|
+
hideFromApi: (0, common_1.bool)(item, "hide_from_api"),
|
|
219
|
+
doubleTapToDrop: (0, common_1.bool)(item, "double_tap_to_drop"),
|
|
220
|
+
hideFromViewRecipeCommand: (0, common_1.bool)(item, "hide_from_viewrecipe_command"),
|
|
221
|
+
swordType: (0, common_1.str)(item, "sword_type"),
|
|
222
|
+
abilityDamageScaling: (0, common_1.num)(item, "ability_damage_scaling"),
|
|
223
|
+
crystal: (0, common_1.str)(item, "crystal"),
|
|
224
|
+
canBurnInFurnace: (0, common_1.bool)(item, "can_burn_in_furnace"),
|
|
225
|
+
serializable: (0, common_1.bool)(item, "serializable"),
|
|
226
|
+
canInteract: (0, common_1.bool)(item, "can_interact"),
|
|
227
|
+
canInteractRightClick: (0, common_1.bool)(item, "can_interact_right_click"),
|
|
228
|
+
canInteractEntity: (0, common_1.bool)(item, "can_interact_entity"),
|
|
229
|
+
privateIsland: (0, common_1.str)(item, "private_island"),
|
|
230
|
+
canHavePowerScroll: (0, common_1.bool)(item, "can_have_power_scroll"),
|
|
231
|
+
isUpgradeableWithoutSoulbinding: (0, common_1.bool)(item, "is_upgradeable_without_soulbinding"),
|
|
232
|
+
recipes: objectArray(item, "recipes").map(parseRecipe),
|
|
233
|
+
prestige: parsePrestige(item),
|
|
234
|
+
};
|
|
235
|
+
}
|
|
236
|
+
/** Parses the SkyBlock item registry (`/resources/skyblock/items`) into a typed object. */
|
|
237
|
+
function parseSkyBlockItems(items) {
|
|
238
|
+
const result = [];
|
|
239
|
+
for (const entry of items) {
|
|
240
|
+
if (!isPlainObject(entry)) {
|
|
241
|
+
continue;
|
|
242
|
+
}
|
|
243
|
+
result.push(parseItem(entry));
|
|
244
|
+
}
|
|
245
|
+
return result;
|
|
246
|
+
}
|
|
247
|
+
//# sourceMappingURL=skyblock-items.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skyblock-items.js","sourceRoot":"","sources":["../src/skyblock-items.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
export interface SkyBlockGardenVisitors {
|
|
2
|
+
readonly visited: Record<string, number>;
|
|
3
|
+
readonly completed: Record<string, number>;
|
|
4
|
+
readonly totalCompleted: number;
|
|
5
|
+
readonly uniqueNpcsServed: number;
|
|
6
|
+
}
|
|
7
|
+
export interface SkyBlockGardenVisitorRequirement {
|
|
8
|
+
readonly originalItem: string;
|
|
9
|
+
readonly originalAmount: number;
|
|
10
|
+
readonly item: string;
|
|
11
|
+
readonly amount: number;
|
|
12
|
+
}
|
|
13
|
+
export interface SkyBlockGardenActiveVisitor {
|
|
14
|
+
readonly visitor: string;
|
|
15
|
+
readonly requirements: readonly SkyBlockGardenVisitorRequirement[];
|
|
16
|
+
readonly status: string;
|
|
17
|
+
readonly position: number;
|
|
18
|
+
}
|
|
19
|
+
export interface SkyBlockGardenComposterUpgrades {
|
|
20
|
+
readonly speed: number;
|
|
21
|
+
readonly multiDrop: number;
|
|
22
|
+
readonly fuelCap: number;
|
|
23
|
+
readonly organicMatterCap: number;
|
|
24
|
+
readonly costReduction: number;
|
|
25
|
+
}
|
|
26
|
+
export interface SkyBlockGardenComposter {
|
|
27
|
+
readonly organicMatter: number;
|
|
28
|
+
readonly fuelUnits: number;
|
|
29
|
+
readonly compostUnits: number;
|
|
30
|
+
readonly compostItems: number;
|
|
31
|
+
readonly conversionTicks: number;
|
|
32
|
+
readonly lastSaveTimestamp: number;
|
|
33
|
+
readonly lastSaveAt: Date | null;
|
|
34
|
+
readonly upgrades: SkyBlockGardenComposterUpgrades;
|
|
35
|
+
}
|
|
36
|
+
export interface SkyBlockGardenCrops {
|
|
37
|
+
readonly wheat: number;
|
|
38
|
+
readonly carrot: number;
|
|
39
|
+
readonly sugarCane: number;
|
|
40
|
+
readonly potato: number;
|
|
41
|
+
readonly pumpkin: number;
|
|
42
|
+
readonly melon: number;
|
|
43
|
+
readonly cactus: number;
|
|
44
|
+
readonly cocoaBeans: number;
|
|
45
|
+
readonly mushroom: number;
|
|
46
|
+
readonly netherWart: number;
|
|
47
|
+
}
|
|
48
|
+
export interface SkyBlockGardenCropMilestones extends SkyBlockGardenCrops {
|
|
49
|
+
readonly moonFlower: number;
|
|
50
|
+
readonly sunFlower: number;
|
|
51
|
+
readonly wildRose: number;
|
|
52
|
+
}
|
|
53
|
+
export interface SkyBlockGardenUpgrades {
|
|
54
|
+
readonly growthSpeed: number;
|
|
55
|
+
readonly yield: number;
|
|
56
|
+
readonly plotLimit: number;
|
|
57
|
+
}
|
|
58
|
+
export interface SkyBlockGardenGreenhouseSlot {
|
|
59
|
+
readonly x: number;
|
|
60
|
+
readonly z: number;
|
|
61
|
+
}
|
|
62
|
+
export interface SkyBlockGarden {
|
|
63
|
+
readonly uuid: string;
|
|
64
|
+
readonly gardenExperience: number;
|
|
65
|
+
readonly barnSkin: string;
|
|
66
|
+
readonly unlockedBarnSkins: readonly string[];
|
|
67
|
+
readonly unlockedPlots: readonly string[];
|
|
68
|
+
readonly visitors: SkyBlockGardenVisitors;
|
|
69
|
+
readonly currentVisitors: readonly SkyBlockGardenActiveVisitor[];
|
|
70
|
+
readonly cropMilestones: SkyBlockGardenCropMilestones;
|
|
71
|
+
readonly composter: SkyBlockGardenComposter;
|
|
72
|
+
readonly cropUpgrades: SkyBlockGardenCropMilestones;
|
|
73
|
+
readonly gardenUpgrades: SkyBlockGardenUpgrades;
|
|
74
|
+
readonly greenhouseSlots: readonly SkyBlockGardenGreenhouseSlot[];
|
|
75
|
+
readonly lastGrowthStageTimestamp: number;
|
|
76
|
+
readonly lastGrowthStageAt: Date | null;
|
|
77
|
+
}
|
|
78
|
+
/** Parses a SkyBlock garden (`/skyblock/garden`) into a typed object. */
|
|
79
|
+
export declare function parseGarden(garden: Record<string, unknown>): SkyBlockGarden;
|
|
80
|
+
export interface SkyBlockFireSale {
|
|
81
|
+
readonly itemId: string;
|
|
82
|
+
readonly amount: number;
|
|
83
|
+
readonly price: number;
|
|
84
|
+
readonly startTimestamp: number;
|
|
85
|
+
readonly startAt: Date | null;
|
|
86
|
+
readonly endTimestamp: number;
|
|
87
|
+
readonly endAt: Date | null;
|
|
88
|
+
}
|
|
89
|
+
/** Parses the SkyBlock fire sales (`/skyblock/firesales`) into a typed object. */
|
|
90
|
+
export declare function parseFireSales(sales: unknown[]): SkyBlockFireSale[];
|
|
91
|
+
//# sourceMappingURL=skyblock-misc.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skyblock-misc.d.ts","sourceRoot":"","sources":["../src/skyblock-misc.ts"],"names":[],"mappings":"AAyBA,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACnC;AAaD,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,SAAS,gCAAgC,EAAE,CAAC;IACnE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAmCD,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,IAAI,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,+BAA+B,CAAC;CACpD;AAwBD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,4BAA6B,SAAQ,mBAAmB;IACvE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AA4BD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;CACpB;AAoBD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9C,QAAQ,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAC;IAC1C,QAAQ,CAAC,eAAe,EAAE,SAAS,2BAA2B,EAAE,CAAC;IACjE,QAAQ,CAAC,cAAc,EAAE,4BAA4B,CAAC;IACtD,QAAQ,CAAC,SAAS,EAAE,uBAAuB,CAAC;IAC5C,QAAQ,CAAC,YAAY,EAAE,4BAA4B,CAAC;IACpD,QAAQ,CAAC,cAAc,EAAE,sBAAsB,CAAC;IAChD,QAAQ,CAAC,eAAe,EAAE,SAAS,4BAA4B,EAAE,CAAC;IAClE,QAAQ,CAAC,wBAAwB,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,iBAAiB,EAAE,IAAI,GAAG,IAAI,CAAC;CACzC;AAED,yEAAyE;AACzE,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,cAAc,CAgC3E;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,IAAI,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC;CAC7B;AAED,kFAAkF;AAClF,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,gBAAgB,EAAE,CAkBnE"}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseGarden = parseGarden;
|
|
4
|
+
exports.parseFireSales = parseFireSales;
|
|
5
|
+
const common_1 = require("./common");
|
|
6
|
+
function stringArray(source, key) {
|
|
7
|
+
const value = source[key];
|
|
8
|
+
return Array.isArray(value)
|
|
9
|
+
? value.filter((entry) => typeof entry === "string")
|
|
10
|
+
: [];
|
|
11
|
+
}
|
|
12
|
+
function numberRecord(source, key) {
|
|
13
|
+
const result = {};
|
|
14
|
+
for (const [entryKey, value] of Object.entries((0, common_1.obj)(source, key))) {
|
|
15
|
+
if (typeof value === "number") {
|
|
16
|
+
result[entryKey] = value;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
return result;
|
|
20
|
+
}
|
|
21
|
+
function parseVisitors(commission) {
|
|
22
|
+
return {
|
|
23
|
+
visited: numberRecord(commission, "visits"),
|
|
24
|
+
completed: numberRecord(commission, "completed"),
|
|
25
|
+
totalCompleted: (0, common_1.num)(commission, "total_completed"),
|
|
26
|
+
uniqueNpcsServed: (0, common_1.num)(commission, "unique_npcs_served"),
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
function parseVisitorRequirement(requirement) {
|
|
30
|
+
return {
|
|
31
|
+
originalItem: (0, common_1.str)(requirement, "original_item"),
|
|
32
|
+
originalAmount: (0, common_1.num)(requirement, "original_amount"),
|
|
33
|
+
item: (0, common_1.str)(requirement, "item"),
|
|
34
|
+
amount: (0, common_1.num)(requirement, "amount"),
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
function parseActiveVisitor(visitor, name) {
|
|
38
|
+
const requirements = visitor.requirement;
|
|
39
|
+
return {
|
|
40
|
+
visitor: name,
|
|
41
|
+
requirements: Array.isArray(requirements)
|
|
42
|
+
? requirements
|
|
43
|
+
.filter((entry) => typeof entry === "object" &&
|
|
44
|
+
entry !== null &&
|
|
45
|
+
!Array.isArray(entry))
|
|
46
|
+
.map(parseVisitorRequirement)
|
|
47
|
+
: [],
|
|
48
|
+
status: (0, common_1.str)(visitor, "status"),
|
|
49
|
+
position: (0, common_1.num)(visitor, "position"),
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
function parseComposter(composter) {
|
|
53
|
+
const upgrades = (0, common_1.obj)(composter, "upgrades");
|
|
54
|
+
return {
|
|
55
|
+
organicMatter: (0, common_1.num)(composter, "organic_matter"),
|
|
56
|
+
fuelUnits: (0, common_1.num)(composter, "fuel_units"),
|
|
57
|
+
compostUnits: (0, common_1.num)(composter, "compost_units"),
|
|
58
|
+
compostItems: (0, common_1.num)(composter, "compost_items"),
|
|
59
|
+
conversionTicks: (0, common_1.num)(composter, "conversion_ticks"),
|
|
60
|
+
lastSaveTimestamp: (0, common_1.num)(composter, "last_save"),
|
|
61
|
+
lastSaveAt: (0, common_1.date)(composter, "last_save"),
|
|
62
|
+
upgrades: {
|
|
63
|
+
speed: (0, common_1.num)(upgrades, "speed"),
|
|
64
|
+
multiDrop: (0, common_1.num)(upgrades, "multi_drop"),
|
|
65
|
+
fuelCap: (0, common_1.num)(upgrades, "fuel_cap"),
|
|
66
|
+
organicMatterCap: (0, common_1.num)(upgrades, "organic_matter_cap"),
|
|
67
|
+
costReduction: (0, common_1.num)(upgrades, "cost_reduction"),
|
|
68
|
+
},
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
function parseBaseCrops(source) {
|
|
72
|
+
return {
|
|
73
|
+
wheat: (0, common_1.num)(source, "WHEAT"),
|
|
74
|
+
carrot: (0, common_1.num)(source, "CARROT_ITEM"),
|
|
75
|
+
sugarCane: (0, common_1.num)(source, "SUGAR_CANE"),
|
|
76
|
+
potato: (0, common_1.num)(source, "POTATO_ITEM"),
|
|
77
|
+
pumpkin: (0, common_1.num)(source, "PUMPKIN"),
|
|
78
|
+
melon: (0, common_1.num)(source, "MELON"),
|
|
79
|
+
cactus: (0, common_1.num)(source, "CACTUS"),
|
|
80
|
+
cocoaBeans: (0, common_1.num)(source, "INK_SACK:3"),
|
|
81
|
+
mushroom: (0, common_1.num)(source, "MUSHROOM_COLLECTION"),
|
|
82
|
+
netherWart: (0, common_1.num)(source, "NETHER_STALK"),
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
function parseCropMilestones(resources) {
|
|
86
|
+
return {
|
|
87
|
+
...parseBaseCrops(resources),
|
|
88
|
+
moonFlower: (0, common_1.num)(resources, "MOONFLOWER"),
|
|
89
|
+
sunFlower: (0, common_1.num)(resources, "DOUBLE_PLANT"),
|
|
90
|
+
wildRose: (0, common_1.num)(resources, "WILD_ROSE"),
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
function parseGreenhouseSlots(garden) {
|
|
94
|
+
const value = garden.greenhouse_slots;
|
|
95
|
+
if (!Array.isArray(value)) {
|
|
96
|
+
return [];
|
|
97
|
+
}
|
|
98
|
+
const result = [];
|
|
99
|
+
for (const entry of value) {
|
|
100
|
+
if (typeof entry !== "object" || entry === null || Array.isArray(entry)) {
|
|
101
|
+
continue;
|
|
102
|
+
}
|
|
103
|
+
const slot = entry;
|
|
104
|
+
result.push({ x: (0, common_1.num)(slot, "x"), z: (0, common_1.num)(slot, "z") });
|
|
105
|
+
}
|
|
106
|
+
return result;
|
|
107
|
+
}
|
|
108
|
+
/** Parses a SkyBlock garden (`/skyblock/garden`) into a typed object. */
|
|
109
|
+
function parseGarden(garden) {
|
|
110
|
+
const activeCommissions = (0, common_1.obj)(garden, "active_commissions");
|
|
111
|
+
const currentVisitors = [];
|
|
112
|
+
for (const [name, value] of Object.entries(activeCommissions)) {
|
|
113
|
+
if (typeof value === "object" && value !== null && !Array.isArray(value)) {
|
|
114
|
+
currentVisitors.push(parseActiveVisitor(value, name));
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
const gardenUpgrades = (0, common_1.obj)(garden, "garden_upgrades");
|
|
118
|
+
return {
|
|
119
|
+
uuid: (0, common_1.str)(garden, "uuid"),
|
|
120
|
+
gardenExperience: (0, common_1.num)(garden, "garden_experience"),
|
|
121
|
+
barnSkin: (0, common_1.str)(garden, "selected_barn_skin"),
|
|
122
|
+
unlockedBarnSkins: stringArray(garden, "unlocked_barn_skins"),
|
|
123
|
+
unlockedPlots: stringArray(garden, "unlocked_plots_ids"),
|
|
124
|
+
visitors: parseVisitors((0, common_1.obj)(garden, "commission_data")),
|
|
125
|
+
currentVisitors,
|
|
126
|
+
cropMilestones: parseCropMilestones((0, common_1.obj)(garden, "resources_collected")),
|
|
127
|
+
composter: parseComposter((0, common_1.obj)(garden, "composter_data")),
|
|
128
|
+
cropUpgrades: parseCropMilestones((0, common_1.obj)(garden, "crop_upgrade_levels")),
|
|
129
|
+
gardenUpgrades: {
|
|
130
|
+
growthSpeed: (0, common_1.num)(gardenUpgrades, "GROWTH_SPEED"),
|
|
131
|
+
yield: (0, common_1.num)(gardenUpgrades, "YIELD"),
|
|
132
|
+
plotLimit: (0, common_1.num)(gardenUpgrades, "PLOT_LIMIT"),
|
|
133
|
+
},
|
|
134
|
+
greenhouseSlots: parseGreenhouseSlots(garden),
|
|
135
|
+
lastGrowthStageTimestamp: (0, common_1.num)(garden, "last_growth_stage_time"),
|
|
136
|
+
lastGrowthStageAt: (0, common_1.date)(garden, "last_growth_stage_time"),
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
/** Parses the SkyBlock fire sales (`/skyblock/firesales`) into a typed object. */
|
|
140
|
+
function parseFireSales(sales) {
|
|
141
|
+
const result = [];
|
|
142
|
+
for (const entry of sales) {
|
|
143
|
+
if (typeof entry !== "object" || entry === null || Array.isArray(entry)) {
|
|
144
|
+
continue;
|
|
145
|
+
}
|
|
146
|
+
const raw = entry;
|
|
147
|
+
result.push({
|
|
148
|
+
itemId: (0, common_1.str)(raw, "item_id"),
|
|
149
|
+
amount: (0, common_1.num)(raw, "amount"),
|
|
150
|
+
price: (0, common_1.num)(raw, "price"),
|
|
151
|
+
startTimestamp: (0, common_1.num)(raw, "start"),
|
|
152
|
+
startAt: (0, common_1.date)(raw, "start"),
|
|
153
|
+
endTimestamp: (0, common_1.num)(raw, "end"),
|
|
154
|
+
endAt: (0, common_1.date)(raw, "end"),
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
return result;
|
|
158
|
+
}
|
|
159
|
+
//# sourceMappingURL=skyblock-misc.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skyblock-misc.js","sourceRoot":"","sources":["../src/skyblock-misc.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { NbtItem } from "./nbt";
|
|
2
|
+
export interface SkyBlockMuseumDonation {
|
|
3
|
+
readonly donatedAt: Date | null;
|
|
4
|
+
readonly featuredSlot: string | null;
|
|
5
|
+
readonly borrowing: boolean;
|
|
6
|
+
readonly type: number;
|
|
7
|
+
readonly data: string | null;
|
|
8
|
+
readonly items: readonly NbtItem[];
|
|
9
|
+
}
|
|
10
|
+
export interface SkyBlockMuseumItem extends SkyBlockMuseumDonation {
|
|
11
|
+
readonly name: string;
|
|
12
|
+
}
|
|
13
|
+
export interface SkyBlockMuseumMember {
|
|
14
|
+
readonly value: number;
|
|
15
|
+
readonly appraisal: boolean;
|
|
16
|
+
readonly items: readonly SkyBlockMuseumItem[];
|
|
17
|
+
readonly special: readonly SkyBlockMuseumDonation[];
|
|
18
|
+
}
|
|
19
|
+
export interface SkyBlockMuseum {
|
|
20
|
+
readonly members: Record<string, SkyBlockMuseumMember>;
|
|
21
|
+
}
|
|
22
|
+
/** Parses a SkyBlock museum (`/skyblock/museum`) into a typed object. */
|
|
23
|
+
export declare function parseMuseum(members: Record<string, unknown>): SkyBlockMuseum;
|
|
24
|
+
//# sourceMappingURL=skyblock-museum.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skyblock-museum.d.ts","sourceRoot":"","sources":["../src/skyblock-museum.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,OAAO,EAAE,MAAM,OAAO,CAAC;AAEjD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,SAAS,OAAO,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,kBAAmB,SAAQ,sBAAsB;IAChE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC9C,QAAQ,CAAC,OAAO,EAAE,SAAS,sBAAsB,EAAE,CAAC;CACrD;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;CACxD;AA8CD,yEAAyE;AACzE,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,cAAc,CAM5E"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseMuseum = parseMuseum;
|
|
4
|
+
const common_1 = require("./common");
|
|
5
|
+
const nbt_1 = require("./nbt");
|
|
6
|
+
function parseDonation(raw) {
|
|
7
|
+
const items = (0, common_1.obj)(raw, "items");
|
|
8
|
+
const data = (0, common_1.str)(items, "data");
|
|
9
|
+
return {
|
|
10
|
+
donatedAt: (0, common_1.date)(raw, "donated_time"),
|
|
11
|
+
featuredSlot: (0, common_1.str)(raw, "featured_slot") || null,
|
|
12
|
+
borrowing: (0, common_1.bool)(raw, "borrowing"),
|
|
13
|
+
type: (0, common_1.num)(items, "type"),
|
|
14
|
+
data: data || null,
|
|
15
|
+
items: (0, nbt_1.decodeItemBytes)(data),
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
function parseItem(name, raw) {
|
|
19
|
+
return { name, ...parseDonation(raw) };
|
|
20
|
+
}
|
|
21
|
+
function parseSpecial(value) {
|
|
22
|
+
if (!Array.isArray(value)) {
|
|
23
|
+
return [];
|
|
24
|
+
}
|
|
25
|
+
const result = [];
|
|
26
|
+
for (const entry of value) {
|
|
27
|
+
if (typeof entry !== "object" || entry === null || Array.isArray(entry)) {
|
|
28
|
+
continue;
|
|
29
|
+
}
|
|
30
|
+
result.push(parseDonation(entry));
|
|
31
|
+
}
|
|
32
|
+
return result;
|
|
33
|
+
}
|
|
34
|
+
function parseMember(raw) {
|
|
35
|
+
const items = (0, common_1.obj)(raw, "items");
|
|
36
|
+
return {
|
|
37
|
+
value: (0, common_1.num)(raw, "value"),
|
|
38
|
+
appraisal: (0, common_1.bool)(raw, "appraisal"),
|
|
39
|
+
items: Object.keys(items).map((name) => parseItem(name, (0, common_1.obj)(items, name))),
|
|
40
|
+
special: parseSpecial(raw.special),
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
/** Parses a SkyBlock museum (`/skyblock/museum`) into a typed object. */
|
|
44
|
+
function parseMuseum(members) {
|
|
45
|
+
const parsed = {};
|
|
46
|
+
for (const uuid of Object.keys(members)) {
|
|
47
|
+
parsed[uuid] = parseMember((0, common_1.obj)(members, uuid));
|
|
48
|
+
}
|
|
49
|
+
return { members: parsed };
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=skyblock-museum.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skyblock-museum.js","sourceRoot":"","sources":["../src/skyblock-museum.ts"],"names":[],"mappings":";;AAwEA,kCAMC;AA9ED,qCAAqD;AACrD,+BAAiD;AA0BjD,SAAS,aAAa,CAAC,GAA4B;IACjD,MAAM,KAAK,GAAG,IAAA,YAAG,EAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,IAAI,GAAG,IAAA,YAAG,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAChC,OAAO;QACL,SAAS,EAAE,IAAA,aAAI,EAAC,GAAG,EAAE,cAAc,CAAC;QACpC,YAAY,EAAE,IAAA,YAAG,EAAC,GAAG,EAAE,eAAe,CAAC,IAAI,IAAI;QAC/C,SAAS,EAAE,IAAA,aAAI,EAAC,GAAG,EAAE,WAAW,CAAC;QACjC,IAAI,EAAE,IAAA,YAAG,EAAC,KAAK,EAAE,MAAM,CAAC;QACxB,IAAI,EAAE,IAAI,IAAI,IAAI;QAClB,KAAK,EAAE,IAAA,qBAAe,EAAC,IAAI,CAAC;KAC7B,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAChB,IAAY,EACZ,GAA4B;IAE5B,OAAO,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;AACzC,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,MAAM,GAA6B,EAAE,CAAC;IAC5C,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACxE,SAAS;QACX,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,KAAgC,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,WAAW,CAAC,GAA4B;IAC/C,MAAM,KAAK,GAAG,IAAA,YAAG,EAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAChC,OAAO;QACL,KAAK,EAAE,IAAA,YAAG,EAAC,GAAG,EAAE,OAAO,CAAC;QACxB,SAAS,EAAE,IAAA,aAAI,EAAC,GAAG,EAAE,WAAW,CAAC;QACjC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,IAAA,YAAG,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QAC1E,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC;KACnC,CAAC;AACJ,CAAC;AAED,yEAAyE;AACzE,SAAgB,WAAW,CAAC,OAAgC;IAC1D,MAAM,MAAM,GAAyC,EAAE,CAAC;IACxD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,IAAA,YAAG,EAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAC7B,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export interface SkyBlockNewsDisplayItem {
|
|
2
|
+
readonly material: string;
|
|
3
|
+
}
|
|
4
|
+
export interface SkyBlockNewsItem {
|
|
5
|
+
readonly title: string;
|
|
6
|
+
readonly link: string;
|
|
7
|
+
readonly text: string;
|
|
8
|
+
readonly item: SkyBlockNewsDisplayItem;
|
|
9
|
+
}
|
|
10
|
+
/** Parses the SkyBlock news (`/skyblock/news`) into a typed object. */
|
|
11
|
+
export declare function parseSkyBlockNews(items: unknown[]): SkyBlockNewsItem[];
|
|
12
|
+
//# sourceMappingURL=skyblock-news.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skyblock-news.d.ts","sourceRoot":"","sources":["../src/skyblock-news.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAC;CACxC;AAED,uEAAuE;AACvE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,gBAAgB,EAAE,CAkBtE"}
|