UNPKG

warframe-worldstate-parser

Version:

An Open parser for Warframe's Worldstate in Javascript

76 lines (75 loc) 2.66 kB
import { n as __decorateMetadata, t as __decorate } from "../../decorate-BCC26nnB.mjs"; import { WorldStateObject } from "./WorldStateObject.mjs"; import { Type } from "class-transformer"; import { IsBoolean, IsNumber, IsString, ValidateNested } from "class-validator"; import { languageString, weeklyReset } from "warframe-worldstate-data/utilities"; //#region lib/models/ClanInitiativeRewards.ts var ClanReward = class { /** * Reward uniqueName */ uniqueName; /** * Reward name localized */ reward; /** * Bundle size for the given reward */ count; /** * Points required to earn reward */ pointsRequired; /** * Whether or not this reward has already been claimed */ isClaimed; constructor(reward, { locale = "en" } = { locale: "en" }) { this.uniqueName = reward.Reward; this.reward = languageString(reward.Reward, locale); this.count = reward.ItemCount; this.isClaimed = reward.RewardClaimed; this.pointsRequired = reward.PointThreshold; } rewardString() { return `${this.count}x ${this.reward}`; } }; __decorate([IsString(), __decorateMetadata("design:type", String)], ClanReward.prototype, "uniqueName", void 0); __decorate([IsString(), __decorateMetadata("design:type", String)], ClanReward.prototype, "reward", void 0); __decorate([IsNumber(), __decorateMetadata("design:type", Number)], ClanReward.prototype, "count", void 0); __decorate([IsNumber(), __decorateMetadata("design:type", Number)], ClanReward.prototype, "pointsRequired", void 0); __decorate([IsBoolean(), __decorateMetadata("design:type", Boolean)], ClanReward.prototype, "isClaimed", void 0); var ClanInitiativeRewards = class extends WorldStateObject { /** * Current week number since release */ week; /** * Region or planet where resources are doubled */ bonusRegion; regionUniqueName; /** * Rewards earned at each point threshold */ rewwards; constructor(data, { locale = "en" } = { locale: "en" }) { super(data); ({activation: this.activation, expiry: this.expiry} = weeklyReset()); this.week = data.WeekCount; this.bonusRegion = languageString(data.BonusRegion, locale); this.regionUniqueName = data.BonusRegion; this.rewwards = data.Rewards; } }; __decorate([IsNumber(), __decorateMetadata("design:type", Number)], ClanInitiativeRewards.prototype, "week", void 0); __decorate([IsString(), __decorateMetadata("design:type", String)], ClanInitiativeRewards.prototype, "bonusRegion", void 0); __decorate([ ValidateNested({ each: true }), Type(() => ClanReward), __decorateMetadata("design:type", Array) ], ClanInitiativeRewards.prototype, "rewwards", void 0); //#endregion export { ClanInitiativeRewards, ClanReward };