UNPKG

@zikeji/hypixel

Version:

With IntelliSense support & test coverage, this is an unopinionated async/await API wrapper for Hypixel's Public API. It is developed in TypeScript complete with documentation, typed interfaces for all API responses, built-in rate-limit handling, flexible

65 lines 3.25 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.transformSkyBlockProfileMemberInventories = transformSkyBlockProfileMemberInventories; const TransformItemData_1 = require("./TransformItemData"); /** @internal */ const SKYBLOCK_INVENTORIES = [ ["inv_contents", false], ["ender_chest_contents", false], ["backpack_icons", true], ["backpack_contents", true], ["bag_contents", true], ["inv_armor", false], ["equipment_contents", false], ["personal_vault_contents", false], ["wardrobe_contents", false], ]; /** * This helper will loop over all the possible inventories on a profile and run the {@link transformSkyBlockItemData} helper on them, returning the member object with the transformed properties. * @param member The profile member object that you want to transform the inventory data of. * @category Helper */ function transformSkyBlockProfileMemberInventories(member) { return __awaiter(this, void 0, void 0, function* () { const transformedMember = member; yield Promise.all(SKYBLOCK_INVENTORIES.map((_a) => __awaiter(this, [_a], void 0, function* ([key, hasKeys]) { if (!hasKeys) { const inventoryData = transformedMember.inventory[key]; if (inventoryData && inventoryData.data) { try { transformedMember.inventory[key] = (yield (0, TransformItemData_1.transformItemData)(inventoryData.data)); } catch (e) { /* istanbul ignore next */ delete transformedMember.inventory[key]; } } } else { const inventoryData = transformedMember.inventory[key]; yield Promise.all(Object.keys(inventoryData).map((subKey) => __awaiter(this, void 0, void 0, function* () { if (inventoryData[subKey] && inventoryData[subKey].data) { try { transformedMember.inventory[key][subKey] = (yield (0, TransformItemData_1.transformItemData)(inventoryData[subKey].data)); } catch (e) { /* istanbul ignore next */ delete transformedMember.inventory[key][subKey]; } } }))); } }))); return transformedMember; }); } //# sourceMappingURL=TransformSkyBlockItemData.js.map