warframe-worldstate-parser 5.2.16 → 5.2.17

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.
Files changed (181) hide show
  1. package/dist/lib/WorldState.d.mts +35 -19
  2. package/dist/lib/WorldState.mjs +31 -45
  3. package/dist/lib/models/Alert.d.mts +45 -17
  4. package/dist/lib/models/Alert.mjs +49 -5
  5. package/dist/lib/models/Archimedea.d.mts +86 -17
  6. package/dist/lib/models/Archimedea.mjs +88 -2
  7. package/dist/lib/models/Calendar.d.mts +77 -2
  8. package/dist/lib/models/Calendar.mjs +79 -2
  9. package/dist/lib/models/CambionCycle.d.mts +21 -3
  10. package/dist/lib/models/CambionCycle.mjs +28 -2
  11. package/dist/lib/models/CetusCycle.d.mts +48 -2
  12. package/dist/lib/models/CetusCycle.mjs +87 -2
  13. package/dist/lib/models/ChallengeInstance.d.mts +53 -17
  14. package/dist/lib/models/ChallengeInstance.mjs +46 -1
  15. package/dist/lib/models/ConclaveChallenge.d.mts +76 -17
  16. package/dist/lib/models/ConclaveChallenge.mjs +77 -2
  17. package/dist/lib/models/ConstructionProgress.d.mts +17 -2
  18. package/dist/lib/models/ConstructionProgress.mjs +23 -2
  19. package/dist/lib/models/DailyDeal.d.mts +66 -17
  20. package/dist/lib/models/DailyDeal.mjs +64 -2
  21. package/dist/lib/models/DarkSector.d.mts +142 -17
  22. package/dist/lib/models/DarkSector.mjs +136 -6
  23. package/dist/lib/models/DarkSectorBattle.d.mts +52 -2
  24. package/dist/lib/models/DarkSectorBattle.mjs +49 -1
  25. package/dist/lib/models/DuviriCycle.d.mts +23 -17
  26. package/dist/lib/models/DuviriCycle.mjs +55 -2
  27. package/dist/lib/models/EarthCycle.d.mts +59 -2
  28. package/dist/lib/models/EarthCycle.mjs +73 -2
  29. package/dist/lib/models/Fissure.d.mts +78 -17
  30. package/dist/lib/models/Fissure.mjs +83 -2
  31. package/dist/lib/models/FlashSale.d.mts +71 -17
  32. package/dist/lib/models/FlashSale.mjs +73 -2
  33. package/dist/lib/models/GlobalUpgrade.d.mts +55 -17
  34. package/dist/lib/models/GlobalUpgrade.mjs +56 -2
  35. package/dist/lib/models/Invasion.d.mts +113 -17
  36. package/dist/lib/models/Invasion.mjs +106 -4
  37. package/dist/lib/models/Kinepage.d.mts +21 -1
  38. package/dist/lib/models/Kinepage.mjs +22 -1
  39. package/dist/lib/models/Kuva.d.mts +20 -17
  40. package/dist/lib/models/Kuva.mjs +85 -1
  41. package/dist/lib/models/MidrathCycle.d.mts +24 -2
  42. package/dist/lib/models/MidrathCycle.mjs +66 -2
  43. package/dist/lib/models/Mission.d.mts +138 -17
  44. package/dist/lib/models/Mission.mjs +138 -3
  45. package/dist/lib/models/News.d.mts +100 -2
  46. package/dist/lib/models/News.mjs +116 -2
  47. package/dist/lib/models/Nightwave.d.mts +58 -3
  48. package/dist/lib/models/Nightwave.mjs +58 -3
  49. package/dist/lib/models/NightwaveChallenge.d.mts +50 -2
  50. package/dist/lib/models/NightwaveChallenge.mjs +51 -2
  51. package/dist/lib/models/PersistentEnemy.d.mts +78 -2
  52. package/dist/lib/models/PersistentEnemy.mjs +74 -2
  53. package/dist/lib/models/Reward.d.mts +67 -17
  54. package/dist/lib/models/Reward.mjs +71 -2
  55. package/dist/lib/models/SentientOutpost.d.mts +46 -17
  56. package/dist/lib/models/SentientOutpost.mjs +63 -1
  57. package/dist/lib/models/Simaris.d.mts +36 -17
  58. package/dist/lib/models/Simaris.mjs +33 -1
  59. package/dist/lib/models/Sortie.d.mts +60 -17
  60. package/dist/lib/models/Sortie.mjs +71 -6
  61. package/dist/lib/models/SortieVariant.d.mts +49 -17
  62. package/dist/lib/models/SortieVariant.mjs +49 -1
  63. package/dist/lib/models/SteelPathOffering.d.mts +36 -1
  64. package/dist/lib/models/SteelPathOffering.mjs +81 -1
  65. package/dist/lib/models/SyndicateJob.d.mts +92 -17
  66. package/dist/lib/models/SyndicateJob.mjs +161 -5
  67. package/dist/lib/models/SyndicateMission.d.mts +58 -17
  68. package/dist/lib/models/SyndicateMission.mjs +64 -6
  69. package/dist/lib/models/Tmp.d.mts +34 -17
  70. package/dist/lib/models/Tmp.mjs +28 -2
  71. package/dist/lib/models/VallisCycle.d.mts +29 -2
  72. package/dist/lib/models/VallisCycle.mjs +72 -2
  73. package/dist/lib/models/VoidTrader.d.mts +76 -17
  74. package/dist/lib/models/VoidTrader.mjs +76 -4
  75. package/dist/lib/models/VoidTraderItem.d.mts +43 -17
  76. package/dist/lib/models/VoidTraderItem.mjs +36 -1
  77. package/dist/lib/models/VoidTraderSchedule.d.mts +16 -17
  78. package/dist/lib/models/VoidTraderSchedule.mjs +12 -1
  79. package/dist/lib/models/WeeklyChallenge.d.mts +19 -17
  80. package/dist/lib/models/WeeklyChallenge.mjs +19 -3
  81. package/dist/lib/models/WorldEvent.d.mts +204 -17
  82. package/dist/lib/models/WorldEvent.mjs +211 -7
  83. package/dist/lib/models/WorldStateObject.d.mts +47 -1
  84. package/dist/lib/models/WorldStateObject.mjs +52 -1
  85. package/dist/lib/models/ZarimanCycle.d.mts +44 -2
  86. package/dist/lib/models/ZarimanCycle.mjs +77 -2
  87. package/dist/lib/models/index.d.mts +42 -18
  88. package/dist/lib/models/index.mjs +42 -45
  89. package/dist/lib/supporting/Dependency.d.mts +40 -1
  90. package/dist/lib/supporting/DuviriChoice.d.mts +18 -17
  91. package/dist/lib/supporting/DuviriChoice.mjs +23 -1
  92. package/dist/lib/supporting/ExternalMission.d.mts +48 -1
  93. package/dist/lib/supporting/FetchProxy.d.mts +9 -1
  94. package/dist/lib/supporting/FetchProxy.mjs +44 -1
  95. package/dist/lib/supporting/ImgCdn.d.mts +5 -1
  96. package/dist/lib/supporting/ImgCdn.mjs +5 -1
  97. package/dist/lib/supporting/KuvaLogEntry.d.mts +20 -1
  98. package/dist/lib/supporting/RewardData.d.mts +10 -1
  99. package/dist/lib/supporting/RewardData.mjs +74 -1
  100. package/dist/lib/supporting/RewardTypes.d.mts +33 -1
  101. package/dist/lib/supporting/RewardTypes.mjs +326 -1
  102. package/dist/lib/supporting/index.d.mts +8 -23
  103. package/dist/lib/supporting/index.mjs +5 -6
  104. package/dist/main.d.mts +52 -24
  105. package/dist/main.mjs +47 -48
  106. package/package.json +1 -1
  107. package/dist/Alert-CPT2sBmd.mjs +0 -51
  108. package/dist/Archimedea-Vo36QE99.mjs +0 -90
  109. package/dist/Calendar-CRM0XhAy.d.mts +0 -78
  110. package/dist/Calendar-_gEQ9BEd.mjs +0 -81
  111. package/dist/CambionCycle-B1pqIgks.mjs +0 -30
  112. package/dist/CambionCycle-OI3v1knd.d.mts +0 -22
  113. package/dist/CetusCycle-Ct51M2pd.mjs +0 -89
  114. package/dist/CetusCycle-DQ4n05vO.d.mts +0 -49
  115. package/dist/ChallengeInstance-BOu_e7ML.mjs +0 -48
  116. package/dist/ConclaveChallenge-BTN6UyV6.mjs +0 -79
  117. package/dist/ConstructionProgress-BoF2P9fx.mjs +0 -25
  118. package/dist/ConstructionProgress-DG2KzS0X.d.mts +0 -18
  119. package/dist/DailyDeal-aoNeCFWT.mjs +0 -66
  120. package/dist/DarkSector-D0uJWCg7.mjs +0 -138
  121. package/dist/DarkSectorBattle-CiSe3kFm.d.mts +0 -53
  122. package/dist/DarkSectorBattle-CqRYeNpe.mjs +0 -51
  123. package/dist/Dependency-BR-dAeHI.mjs +0 -1
  124. package/dist/Dependency-CNqXngHD.d.mts +0 -41
  125. package/dist/DuviriChoice-BEBiWA-g.mjs +0 -25
  126. package/dist/DuviriCycle-Do7mMnoC.mjs +0 -57
  127. package/dist/EarthCycle-BOAlcAuQ.mjs +0 -75
  128. package/dist/EarthCycle-CxtijnVV.d.mts +0 -60
  129. package/dist/ExternalMission-C82w4uMq.d.mts +0 -49
  130. package/dist/ExternalMission-D3MSZgnN.mjs +0 -1
  131. package/dist/FetchProxy-Bkdk15SX.mjs +0 -46
  132. package/dist/FetchProxy-DfSTUgkf.d.mts +0 -10
  133. package/dist/Fissure-diM4hyi3.mjs +0 -85
  134. package/dist/FlashSale-CNfRaZhM.mjs +0 -75
  135. package/dist/GlobalUpgrade-CUtZw05z.mjs +0 -58
  136. package/dist/ImgCdn-BJOdWAbU.mjs +0 -7
  137. package/dist/ImgCdn-D0hSGSB1.d.mts +0 -6
  138. package/dist/Invasion-Corx1lxf.mjs +0 -108
  139. package/dist/Kinepage-B-Ym_VW5.d.mts +0 -22
  140. package/dist/Kinepage-CbSzge67.mjs +0 -24
  141. package/dist/Kuva-Ijy2ZGBL.mjs +0 -87
  142. package/dist/KuvaLogEntry-D_VzIT3W.mjs +0 -1
  143. package/dist/KuvaLogEntry-cftxhjfU.d.mts +0 -21
  144. package/dist/MidrathCycle-E0gMF3AR.d.mts +0 -25
  145. package/dist/MidrathCycle-XD2T8Dx5.mjs +0 -68
  146. package/dist/Mission-b8KP-YDf.mjs +0 -140
  147. package/dist/News-DxEm-q6V.d.mts +0 -101
  148. package/dist/News-zAK-sYRg.mjs +0 -118
  149. package/dist/Nightwave-CPqMSqGK.d.mts +0 -59
  150. package/dist/Nightwave-cTRmlbwH.mjs +0 -60
  151. package/dist/NightwaveChallenge-C8ARG7LC.mjs +0 -53
  152. package/dist/NightwaveChallenge-CG3uychc.d.mts +0 -51
  153. package/dist/PersistentEnemy-3Sw5E8AN.mjs +0 -76
  154. package/dist/PersistentEnemy-DnnnreSz.d.mts +0 -79
  155. package/dist/Reward-3FBJF_hS.mjs +0 -73
  156. package/dist/RewardData-C_9b8Yhi.mjs +0 -76
  157. package/dist/RewardData-DWCgJ3UT.d.mts +0 -11
  158. package/dist/RewardTypes-DUrR7H3G.mjs +0 -328
  159. package/dist/RewardTypes-Y3tHrtIJ.d.mts +0 -34
  160. package/dist/SentientOutpost-Cadk-pIW.mjs +0 -65
  161. package/dist/Simaris-D6etEQp_.mjs +0 -35
  162. package/dist/Sortie-rSBgJc6U.mjs +0 -73
  163. package/dist/SortieVariant-CnuLkkNZ.mjs +0 -51
  164. package/dist/SteelPathOffering--wm-7hwb.mjs +0 -83
  165. package/dist/SteelPathOffering-CQkoKi5T.d.mts +0 -37
  166. package/dist/SyndicateJob-R89tWqvT.mjs +0 -162
  167. package/dist/SyndicateMission-CKZDWNyf.mjs +0 -66
  168. package/dist/Tmp-BYL_mYIG.mjs +0 -30
  169. package/dist/VallisCycle-6DCaWFoR.d.mts +0 -30
  170. package/dist/VallisCycle-BW2g49wB.mjs +0 -74
  171. package/dist/VoidTrader-DtjtVUgR.mjs +0 -78
  172. package/dist/VoidTraderItem-Cz6x1KTF.mjs +0 -38
  173. package/dist/VoidTraderSchedule-BsJLu50V.mjs +0 -14
  174. package/dist/WeeklyChallenge-Dl2ekl6X.mjs +0 -21
  175. package/dist/WorldEvent-C-LaV2ug.mjs +0 -213
  176. package/dist/WorldStateObject-45dbRgp7.mjs +0 -54
  177. package/dist/WorldStateObject-C1HEDkH7.d.mts +0 -48
  178. package/dist/ZarimanCycle-BrSLIWhD.d.mts +0 -45
  179. package/dist/ZarimanCycle-DoAPwgaM.mjs +0 -79
  180. package/dist/index-Bgx8kIDy.d.mts +0 -1671
  181. package/dist/supporting-BLSXhlWM.mjs +0 -1
@@ -1,213 +0,0 @@
1
- import { t as Reward } from "./Reward-3FBJF_hS.mjs";
2
- import { t as WorldStateObject } from "./WorldStateObject-45dbRgp7.mjs";
3
- import { t as SyndicateJob } from "./SyndicateJob-R89tWqvT.mjs";
4
- import { faction, fromNow, languageString, node, parseDate, syndicate } from "warframe-worldstate-data/utilities";
5
-
6
- //#region lib/models/WorldEvent.ts
7
- /**
8
- * Represents an in-game special event
9
- * @augments {WorldStateObject}
10
- */
11
- var WorldEvent = class WorldEvent extends WorldStateObject {
12
- jobs;
13
- previousJobs;
14
- /**
15
- * The event's main score goal
16
- */
17
- maximumScore;
18
- /**
19
- * The current score on the event
20
- */
21
- currentScore;
22
- /**
23
- * The first intermediate score goal
24
- */
25
- smallInterval;
26
- /**
27
- * The second intermediate score goal
28
- */
29
- largeInterval;
30
- /**
31
- * The faction that the players must fight in the event
32
- */
33
- faction;
34
- /**
35
- * The description of the event
36
- */
37
- description;
38
- /**
39
- * Tooltip for the event
40
- */
41
- tooltip;
42
- /**
43
- * The node where the event takes place
44
- */
45
- node;
46
- /**
47
- * The other nodes where the event takes place
48
- */
49
- concurrentNodes;
50
- /**
51
- * The victim node
52
- */
53
- victimNode;
54
- /**
55
- * The score description
56
- */
57
- scoreLocTag;
58
- /**
59
- * The event's rewards
60
- */
61
- rewards;
62
- /**
63
- * Health remaining for the target
64
- */
65
- health;
66
- /**
67
- * Previous job id
68
- */
69
- previousId;
70
- /**
71
- * Array of steps
72
- */
73
- interimSteps;
74
- /**
75
- * Progress Steps, if any are present
76
- */
77
- progressSteps;
78
- /**
79
- * Total of all MultiProgress
80
- */
81
- progressTotal;
82
- /**
83
- * Whether to show the total score at the end of the mission
84
- */
85
- showTotalAtEndOfMission;
86
- /**
87
- * Whether the event is personal
88
- */
89
- isPersonal;
90
- /**
91
- * Whether the event is community
92
- */
93
- isCommunity;
94
- regionDrops;
95
- /**
96
- * Archwing Drops in effect while this event is active
97
- */
98
- archwingDrops;
99
- /**
100
- * Metadata provided by DE
101
- */
102
- metadata;
103
- /**
104
- * Bonuses given for completion
105
- */
106
- completionBonuses;
107
- scoreVar;
108
- altExpiry;
109
- altActivation;
110
- nextAlt;
111
- affiliatedWith;
112
- /**
113
- * The event's tag
114
- */
115
- tag;
116
- victim;
117
- /**
118
- * Asynchronously build a new WorldEvent
119
- * @param data The event data
120
- * @param deps The dependencies object
121
- * @returns The created WorldEvent object
122
- */
123
- static async build(data, deps) {
124
- const event = new WorldEvent(data, deps);
125
- if (data.Jobs) {
126
- const jobs = [];
127
- for await (const job of data.Jobs ?? []) jobs.push(await SyndicateJob.build(job, event.expiry, deps));
128
- event.jobs = jobs;
129
- }
130
- if (data.PreviousJobs) {
131
- const previousJobs = [];
132
- for await (const job of data.PreviousJobs ?? []) previousJobs.push(await SyndicateJob.build(job, event.expiry, deps));
133
- event.previousJobs = previousJobs;
134
- }
135
- return event;
136
- }
137
- /**
138
- * @param data The event data
139
- * @param deps The dependencies object
140
- */
141
- constructor(data, { locale = "en" } = { locale: "en" }) {
142
- super(data);
143
- const opts = { locale };
144
- this.maximumScore = Number.parseInt(String(data.Goal), 10);
145
- this.currentScore = Number.parseInt(String(data.Count), 10);
146
- this.smallInterval = Number.parseInt(String(data.GoalInterim), 10);
147
- this.largeInterval = Number.parseInt(String(data.GoalInterim2), 10);
148
- this.faction = data.Faction ? faction(data.Faction, locale) : void 0;
149
- this.description = languageString(data.Desc, locale);
150
- this.tooltip = data.ToolTip ? languageString(data.ToolTip, locale) : void 0;
151
- this.node = data.Node ? node(data.Node, locale) : void 0;
152
- this.concurrentNodes = data.ConcurrentNodes ? data.ConcurrentNodes.map((n) => node(n, locale)) : [];
153
- this.victimNode = data.VictimNode ? node(data.VictimNode, locale) : void 0;
154
- this.scoreLocTag = data.ScoreLocTag ? languageString(data.ScoreLocTag, locale) : void 0;
155
- if (data.Fomorian) this.scoreLocTag = "Fomorian Assault Score";
156
- this.rewards = Object.keys(data).filter((k) => k.includes("Reward") || k.includes("reward")).map((k) => new Reward(data[k], opts)).filter((r) => r.items.length > 0);
157
- this.health = typeof data.HealthPct !== "undefined" ? Number.parseFloat(((data.HealthPct || 0) * 100).toFixed(2)) : void 0;
158
- this.jobs = [];
159
- this.previousJobs = [];
160
- this.previousId = data.JobPreviousVersion?.$oid;
161
- this.interimSteps = [];
162
- (data.InterimRewards || []).forEach((reward, index) => {
163
- const msg = (data.InterimRewardMessages || [])[index] || {};
164
- this.interimSteps[index] = {
165
- goal: Number.parseInt(String(data.InterimGoals[index]), 10),
166
- reward: reward ? new Reward(reward, opts) : void 0,
167
- message: {
168
- sender: languageString(msg.sender, locale),
169
- subject: languageString(msg.subject, locale),
170
- message: languageString(msg.message, locale),
171
- senderIcon: msg.senderIcon,
172
- attachments: msg.attachments
173
- },
174
- winnerCount: (data._interimWinnerCounts || [])[index]
175
- };
176
- });
177
- this.progressSteps = [];
178
- if (data.IsMultiProgress) {
179
- data.Types?.forEach((type, index) => {
180
- this.progressSteps[index] = {
181
- type: languageString(type, locale),
182
- progressAmt: Number.parseInt(String(data.MultiProgress[index]), 10)
183
- };
184
- });
185
- this.progressTotal = Number.parseFloat(String(data.MultiProgress.reduce((acc, val) => acc + Number.parseFloat(val), 0)));
186
- }
187
- this.showTotalAtEndOfMission = data.ShowTotalAtEOM ?? false;
188
- this.isPersonal = data.Personal;
189
- this.isCommunity = data.Community ?? false;
190
- this.regionDrops = (data.RegionDrops || []).map((drop) => languageString(drop, locale));
191
- this.archwingDrops = (data.ArchwingDrops || []).map((drop) => languageString(drop, locale));
192
- this.metadata = JSON.parse((data.Metadata || "{}").replace("\" ", "\""));
193
- this.completionBonuses = data.CompletionBonus || [];
194
- this.scoreVar = data.ScoreVar;
195
- this.altExpiry = parseDate(data.AltExpiry);
196
- this.altActivation = parseDate(data.AltActivation);
197
- this.nextAlt = {
198
- expiry: parseDate(data.NextAltExpiry),
199
- activation: parseDate(data.NextAltActivation)
200
- };
201
- if (data.JobAffiliationTag) this.affiliatedWith = syndicate(data.JobAffiliationTag, locale);
202
- this.tag = data.Tag;
203
- }
204
- /**
205
- * Whether the event has expired
206
- */
207
- get expired() {
208
- return fromNow(this.expiry) < 0;
209
- }
210
- };
211
-
212
- //#endregion
213
- export { WorldEvent as t };
@@ -1,54 +0,0 @@
1
- import { fromNow, insist, parseDate, timeDeltaToString } from "warframe-worldstate-data/utilities";
2
-
3
- //#region lib/models/WorldStateObject.ts
4
- /**
5
- * Represents a generic object from WorldState
6
- */
7
- var WorldStateObject = class {
8
- /**
9
- * The object's id field
10
- */
11
- id;
12
- /**
13
- * The date and time at which the WorldStateObject started
14
- */
15
- activation;
16
- /**
17
- * The date and time at which the WorldStateObject ends
18
- */
19
- expiry;
20
- /**
21
- * @param data The object data
22
- */
23
- constructor(data) {
24
- insist({ ...data });
25
- this.id = data._id ? data._id.$oid || data._id.$id : void 0;
26
- if (data.Activation) this.activation = parseDate(data.Activation);
27
- if (data.Expiry) this.expiry = parseDate(data.Expiry);
28
- }
29
- /**
30
- * Whether the void trader is active (at time of object creation)
31
- */
32
- get active() {
33
- if (!this.activation && !this.expiry) return false;
34
- return fromNow(this.activation) < 0 && fromNow(this.expiry) > 0;
35
- }
36
- /**
37
- * A string indicating how long it will take for the trader to arrive
38
- * (at time of object creation)
39
- */
40
- get startString() {
41
- if (!this.activation) return void 0;
42
- return timeDeltaToString(fromNow(this.activation));
43
- }
44
- /**
45
- * Time delta string from now to the end
46
- */
47
- get endString() {
48
- if (!this.expiry) return void 0;
49
- return timeDeltaToString(fromNow(this.expiry));
50
- }
51
- };
52
-
53
- //#endregion
54
- export { WorldStateObject as t };
@@ -1,48 +0,0 @@
1
- import { ContentTimestamp } from "warframe-worldstate-data/utilities";
2
-
3
- //#region lib/models/WorldStateObject.d.ts
4
- interface Identifier {
5
- $id?: string;
6
- $oid?: string;
7
- }
8
- interface BaseContentObject {
9
- _id?: Identifier;
10
- Activation?: ContentTimestamp;
11
- Expiry?: ContentTimestamp;
12
- }
13
- /**
14
- * Represents a generic object from WorldState
15
- */
16
- declare class WorldStateObject {
17
- /**
18
- * The object's id field
19
- */
20
- id?: string;
21
- /**
22
- * The date and time at which the WorldStateObject started
23
- */
24
- activation?: Date;
25
- /**
26
- * The date and time at which the WorldStateObject ends
27
- */
28
- expiry?: Date;
29
- /**
30
- * @param data The object data
31
- */
32
- constructor(data: BaseContentObject);
33
- /**
34
- * Whether the void trader is active (at time of object creation)
35
- */
36
- get active(): boolean;
37
- /**
38
- * A string indicating how long it will take for the trader to arrive
39
- * (at time of object creation)
40
- */
41
- get startString(): string | undefined;
42
- /**
43
- * Time delta string from now to the end
44
- */
45
- get endString(): string | undefined;
46
- }
47
- //#endregion
48
- export { Identifier as n, WorldStateObject as r, BaseContentObject as t };
@@ -1,45 +0,0 @@
1
- import { r as WorldStateObject } from "./WorldStateObject-C1HEDkH7.mjs";
2
-
3
- //#region lib/models/ZarimanCycle.d.ts
4
- interface CurrentZarimanCycle {
5
- isCorpus: boolean;
6
- timeLeft: string;
7
- expiry: Date;
8
- expiresIn: number;
9
- state: string;
10
- start: number;
11
- }
12
- /**
13
- * Represents the current Zariman Corpus/Grineer Cycle
14
- * @augments {WorldStateObject}
15
- */
16
- declare class ZarimanCycle extends WorldStateObject {
17
- #private;
18
- /**
19
- * Whether or not this it's corpus or grineer
20
- */
21
- isCorpus: boolean;
22
- /**
23
- * Current cycle state. One of `corpus`, `grineer`
24
- */
25
- state: string;
26
- /**
27
- * Time remaining string
28
- */
29
- timeLeft: string;
30
- /**
31
- * @param {Date} bountiesEndDate The current Zariman cycle expiry
32
- */
33
- constructor(bountiesEndDate: Date);
34
- /**
35
- * Whether this is expired
36
- */
37
- get expired(): boolean;
38
- getCurrentZarimanCycle(): CurrentZarimanCycle;
39
- /**
40
- * The event's string representation
41
- */
42
- get shortString(): string;
43
- }
44
- //#endregion
45
- export { ZarimanCycle as n, CurrentZarimanCycle as t };
@@ -1,79 +0,0 @@
1
- import { t as WorldStateObject } from "./WorldStateObject-45dbRgp7.mjs";
2
- import { fromNow, timeDeltaToString } from "warframe-worldstate-data/utilities";
3
-
4
- //#region lib/models/ZarimanCycle.ts
5
- const corpusTimeMillis = 16551828e5;
6
- const fullCycle = 18e6;
7
- const stateMaximum = 9e6;
8
- /**
9
- * Represents the current Zariman Corpus/Grineer Cycle
10
- * @augments {WorldStateObject}
11
- */
12
- var ZarimanCycle = class extends WorldStateObject {
13
- /**
14
- * Whether or not this it's corpus or grineer
15
- */
16
- isCorpus;
17
- /**
18
- * Current cycle state. One of `corpus`, `grineer`
19
- */
20
- state;
21
- /**
22
- * Time remaining string
23
- */
24
- timeLeft;
25
- /**
26
- * The current zariman cycle, for calculating the other fields
27
- */
28
- #ec;
29
- /**
30
- * The end of the Zariman bounties timer, the faction changes exactly half way through
31
- */
32
- #bountiesEndDate;
33
- /**
34
- * @param {Date} bountiesEndDate The current Zariman cycle expiry
35
- */
36
- constructor(bountiesEndDate) {
37
- super({ _id: { $oid: "zarimanCycle0" } });
38
- this.#bountiesEndDate = bountiesEndDate;
39
- this.#ec = this.getCurrentZarimanCycle();
40
- this.expiry = this.#ec.expiry;
41
- this.activation = new Date(this.#ec.start);
42
- this.isCorpus = this.#ec.isCorpus;
43
- this.state = this.#ec.state;
44
- this.timeLeft = this.#ec.timeLeft;
45
- this.id = `zarimanCycle${this.expiry.getTime()}`;
46
- }
47
- /**
48
- * Whether this is expired
49
- */
50
- get expired() {
51
- return this.expiry ? fromNow(this.expiry) < 0 : true;
52
- }
53
- getCurrentZarimanCycle() {
54
- const now = Date.now();
55
- const bountiesClone = this.#bountiesEndDate.getTime() - 5e3;
56
- const millisLeft = fromNow(new Date(bountiesClone));
57
- const isCorpus = fullCycle - ((bountiesClone - corpusTimeMillis) % fullCycle + fullCycle) % fullCycle > stateMaximum;
58
- const minutesCoef = 1e3 * 60;
59
- const expiry = new Date(Math.round((now + millisLeft) / minutesCoef) * minutesCoef);
60
- const state = isCorpus ? "corpus" : "grineer";
61
- return {
62
- isCorpus,
63
- timeLeft: timeDeltaToString(millisLeft),
64
- expiry,
65
- expiresIn: millisLeft,
66
- state,
67
- start: expiry.getTime() - stateMaximum
68
- };
69
- }
70
- /**
71
- * The event's string representation
72
- */
73
- get shortString() {
74
- return `${this.timeLeft.replace(/\s\d*s/gi, "")} to ${this.isCorpus ? "grineer" : "corpus"}`;
75
- }
76
- };
77
-
78
- //#endregion
79
- export { ZarimanCycle as t };