@wfcd/profile-parser 1.5.0 → 2.0.1
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/dist/Ability-D1F1s_19.js +25 -0
- package/dist/Ability-DzKgEG5R.d.ts +19 -0
- package/dist/Ability.d.ts +2 -0
- package/dist/Ability.js +3 -0
- package/dist/ArchonCrystal.d.ts +23 -0
- package/dist/ArchonCrystal.js +29 -0
- package/dist/ChallengeProgress-B8Kv32oi.d.ts +20 -0
- package/dist/ChallengeProgress-DKKtijWw.js +26 -0
- package/dist/ChallengeProgress.d.ts +2 -0
- package/dist/ChallengeProgress.js +3 -0
- package/dist/Enemy-BqxhFdkB.js +44 -0
- package/dist/Enemy-toy1Spyi.d.ts +44 -0
- package/dist/Enemy.d.ts +2 -0
- package/dist/Enemy.js +3 -0
- package/dist/Intrinsics-CqFOpLxp.js +67 -0
- package/dist/Intrinsics-azrsOZJd.d.ts +67 -0
- package/dist/Intrinsics.d.ts +2 -0
- package/dist/Intrinsics.js +3 -0
- package/dist/ItemConfig-7as-gjPG.d.ts +51 -0
- package/dist/ItemConfig-uU36aJFJ.js +50 -0
- package/dist/ItemConfig.d.ts +4 -0
- package/dist/ItemConfig.js +5 -0
- package/dist/LoadOutInventory-BsPRtXfG.d.ts +53 -0
- package/dist/LoadOutInventory-CPVZJ_W5.js +52 -0
- package/dist/LoadOutInventory.d.ts +8 -0
- package/dist/LoadOutInventory.js +9 -0
- package/dist/LoadOutItem-B_6G9dXC.js +127 -0
- package/dist/LoadOutItem-BlRFZMNd.d.ts +120 -0
- package/dist/LoadOutItem.d.ts +6 -0
- package/dist/LoadOutItem.js +7 -0
- package/dist/LoadOutPreset-BshJF0LH.d.ts +83 -0
- package/dist/LoadOutPreset-CMbZo-II.js +83 -0
- package/dist/LoadOutPreset.d.ts +2 -0
- package/dist/LoadOutPreset.js +4 -0
- package/dist/Mission-BZgLMluh.d.ts +53 -0
- package/dist/Mission-D2n1i5R2.js +55 -0
- package/dist/Mission.d.ts +2 -0
- package/dist/Mission.js +3 -0
- package/dist/OperatorLoadOuts-B8bEy2dp.js +76 -0
- package/dist/OperatorLoadOuts-Dk2uMwby.d.ts +75 -0
- package/dist/OperatorLoadOuts.d.ts +4 -0
- package/dist/OperatorLoadOuts.js +5 -0
- package/dist/Polarity--RYq3iwF.js +28 -0
- package/dist/Polarity-DDWqEVm2.d.ts +26 -0
- package/dist/Polarity.d.ts +2 -0
- package/dist/Polarity.js +3 -0
- package/dist/Profile-WWZ2BDf0.js +193 -0
- package/dist/Profile-rva_Xss5.d.ts +212 -0
- package/dist/Profile.d.ts +15 -0
- package/dist/Profile.js +16 -0
- package/dist/ProfileParser.d.ts +71 -0
- package/dist/ProfileParser.js +71 -0
- package/dist/Pvp-Cb1KNKvw.d.ts +36 -0
- package/dist/Pvp-hyzYfVBB.js +36 -0
- package/dist/Pvp.d.ts +2 -0
- package/dist/Pvp.js +3 -0
- package/dist/Race-5Q0StEkE.js +35 -0
- package/dist/Race-DCxzjMpC.d.ts +32 -0
- package/dist/Race.d.ts +2 -0
- package/dist/Race.js +3 -0
- package/dist/Scan-BWfZiLoW.d.ts +27 -0
- package/dist/Scan-Dlrv6viG.js +27 -0
- package/dist/Scan.d.ts +2 -0
- package/dist/Scan.js +3 -0
- package/dist/Skin-BbUkegH1.d.ts +28 -0
- package/dist/Skin-D6v6jC9U.js +36 -0
- package/dist/Skin.d.ts +2 -0
- package/dist/Skin.js +4 -0
- package/dist/Stats-Bm1bpQe5.js +305 -0
- package/dist/Stats-DtkR2w1A.d.ts +325 -0
- package/dist/Stats.d.ts +9 -0
- package/dist/Stats.js +10 -0
- package/dist/Syndicate-CjUKKAsk.js +33 -0
- package/dist/Syndicate-FSUt1PP5.d.ts +33 -0
- package/dist/Syndicate.d.ts +2 -0
- package/dist/Syndicate.js +3 -0
- package/dist/Utils-C3kZCO6a.js +60 -0
- package/dist/Utils-C7BZqK4e.d.ts +37 -0
- package/dist/Utils.d.ts +2 -0
- package/dist/Utils.js +3 -0
- package/dist/Weapon-4KlXEHQF.js +64 -0
- package/dist/Weapon-DAJp-nbn.d.ts +32 -0
- package/dist/Weapon.d.ts +2 -0
- package/dist/Weapon.js +3 -0
- package/dist/XpInfo-CXC3I0NQ.js +35 -0
- package/dist/XpInfo-ChJ_lJaH.d.ts +34 -0
- package/dist/XpInfo.d.ts +2 -0
- package/dist/XpInfo.js +4 -0
- package/package.json +34 -32
- package/src/Ability.js +0 -22
- package/src/ArchonCrystal.js +0 -26
- package/src/ChallengeProgress.js +0 -23
- package/src/Enemy.js +0 -47
- package/src/Intrinsics.js +0 -77
- package/src/ItemConfig.js +0 -52
- package/src/LoadOutInventory.js +0 -53
- package/src/LoadOutItem.js +0 -155
- package/src/LoadOutPreset.js +0 -90
- package/src/Mission.js +0 -58
- package/src/OperatorLoadOuts.js +0 -77
- package/src/Polarity.js +0 -25
- package/src/Profile.js +0 -213
- package/src/ProfileParser.js +0 -50
- package/src/Pvp.js +0 -35
- package/src/Race.js +0 -33
- package/src/Scan.js +0 -22
- package/src/Skin.js +0 -33
- package/src/Stats.js +0 -340
- package/src/Syndicate.js +0 -34
- package/src/Utils.js +0 -66
- package/src/Weapon.js +0 -59
- package/src/XpInfo.js +0 -35
- package/types/Ability.d.ts +0 -20
- package/types/ArchonCrystal.d.ts +0 -22
- package/types/ChallengeProgress.d.ts +0 -21
- package/types/Enemy.d.ts +0 -41
- package/types/Intrinsics.d.ts +0 -66
- package/types/ItemConfig.d.ts +0 -21
- package/types/LoadOutInventory.d.ts +0 -45
- package/types/LoadOutItem.d.ts +0 -92
- package/types/LoadOutPreset.d.ts +0 -45
- package/types/Mission.d.ts +0 -35
- package/types/OperatorLoadOuts.d.ts +0 -35
- package/types/Polarity.d.ts +0 -21
- package/types/Profile.d.ts +0 -154
- package/types/ProfileParser.d.ts +0 -41
- package/types/Pvp.d.ts +0 -31
- package/types/Race.d.ts +0 -28
- package/types/Scan.d.ts +0 -20
- package/types/Skin.d.ts +0 -19
- package/types/Stats.d.ts +0 -255
- package/types/Syndicate.d.ts +0 -26
- package/types/Utils.d.ts +0 -3
- package/types/Weapon.d.ts +0 -51
- package/types/XpInfo.d.ts +0 -28
package/src/Mission.js
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { node, nodeEnemy, nodeMissionType } from 'warframe-worldstate-data/utilities';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* A mission completed by the player
|
|
5
|
-
* @module
|
|
6
|
-
*/
|
|
7
|
-
export default class Mission {
|
|
8
|
-
/**
|
|
9
|
-
*
|
|
10
|
-
* @param {Object} mission The mission data
|
|
11
|
-
* @param {string} locale The locale to return in
|
|
12
|
-
*/
|
|
13
|
-
constructor(mission, locale = 'en') {
|
|
14
|
-
const uniqueName = mission.type || mission.Tag;
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* Node name
|
|
18
|
-
* @type {String}
|
|
19
|
-
*/
|
|
20
|
-
this.node = node(uniqueName, locale);
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Node unique name
|
|
24
|
-
* @type {String}
|
|
25
|
-
*/
|
|
26
|
-
this.nodeKey = uniqueName;
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* Node mission type
|
|
30
|
-
* @type {String}
|
|
31
|
-
*/
|
|
32
|
-
this.missionType = nodeMissionType(uniqueName, locale);
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* Node faction
|
|
36
|
-
* @type {String}
|
|
37
|
-
*/
|
|
38
|
-
this.faction = nodeEnemy(uniqueName, locale);
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* Highest score earned in this mission
|
|
42
|
-
* @type {number | undefined}
|
|
43
|
-
*/
|
|
44
|
-
if (mission.highScore) this.highScore = mission.highScore;
|
|
45
|
-
|
|
46
|
-
/**
|
|
47
|
-
* How many times the mission was completed
|
|
48
|
-
* @type {number | undefined}
|
|
49
|
-
*/
|
|
50
|
-
if (mission.Completes) this.completes = mission.Completes;
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* Denotes a steel path node
|
|
54
|
-
* @type {number | undefined}
|
|
55
|
-
*/
|
|
56
|
-
if (mission.Tier) this.tier = mission.Tier;
|
|
57
|
-
}
|
|
58
|
-
}
|
package/src/OperatorLoadOuts.js
DELETED
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import { colors } from '@wfcd/items/utilities';
|
|
2
|
-
|
|
3
|
-
import Skin from './Skin.js';
|
|
4
|
-
import { mapToHex } from './Utils.js';
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* Player's operator loadout
|
|
8
|
-
* @module
|
|
9
|
-
*/
|
|
10
|
-
export default class OperatorLoadOuts {
|
|
11
|
-
/**
|
|
12
|
-
*
|
|
13
|
-
* @param {Object} loadout The operator loadout
|
|
14
|
-
*/
|
|
15
|
-
constructor(loadout) {
|
|
16
|
-
/**
|
|
17
|
-
* Skins that have been applied to the player's operator.
|
|
18
|
-
* @type {Array<Skin>}
|
|
19
|
-
*/
|
|
20
|
-
this.skins = loadout.Skins.filter(Boolean).map((s) => new Skin({ ItemType: s }));
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Operator amp ID
|
|
24
|
-
* @type {String | undefined}
|
|
25
|
-
*/
|
|
26
|
-
this.operatorAmp = loadout.OperatorAmp?.$oid;
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* Applied upgrade IDs
|
|
30
|
-
* @type {Array<String>}
|
|
31
|
-
*/
|
|
32
|
-
this.upgrades = loadout.Upgrades;
|
|
33
|
-
this.abilityOverride = loadout.AbilityOverride;
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* Operator primary colors
|
|
37
|
-
* @type {module:"@wfcd/items".ColorMap | undefined}
|
|
38
|
-
*/
|
|
39
|
-
if (loadout.pricol) this.primaryColor = colors.mapColors(mapToHex(loadout.pricol));
|
|
40
|
-
|
|
41
|
-
/**
|
|
42
|
-
* Operator sigil colors
|
|
43
|
-
* @type {module:"@wfcd/items".ColorMap | undefined}
|
|
44
|
-
*/
|
|
45
|
-
if (loadout.sigcol) this.sigilColor = colors.mapColors(mapToHex(loadout.sigcol));
|
|
46
|
-
|
|
47
|
-
/**
|
|
48
|
-
* Operator attachment colors
|
|
49
|
-
* @type {module:"@wfcd/items".ColorMap | undefined}
|
|
50
|
-
*/
|
|
51
|
-
if (loadout.attcol) this.attachmentsColor = colors.mapColors(mapToHex(loadout.attcol));
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
* Operator syandana colors
|
|
55
|
-
* @type {module:"@wfcd/items".ColorMap | undefined}
|
|
56
|
-
*/
|
|
57
|
-
if (loadout.syancol) this.syandanaColor = colors.mapColors(mapToHex(loadout.syancol));
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* Operator eye colors
|
|
61
|
-
* @type {module:"@wfcd/items".ColorMap | undefined}
|
|
62
|
-
*/
|
|
63
|
-
if (loadout.eyecol) this.eyeColor = colors.mapColors(mapToHex(loadout.eyecol));
|
|
64
|
-
|
|
65
|
-
/**
|
|
66
|
-
* Operator facial colors
|
|
67
|
-
* @type {module:"@wfcd/items".ColorMap | undefined}
|
|
68
|
-
*/
|
|
69
|
-
if (loadout.facial) this.facial = colors.mapColors(mapToHex(loadout.facial));
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Operator cloth colors
|
|
73
|
-
* @type {module:"@wfcd/items".ColorMap | undefined}
|
|
74
|
-
*/
|
|
75
|
-
if (loadout.cloth) this.cloth = colors.mapColors(mapToHex(loadout.cloth));
|
|
76
|
-
}
|
|
77
|
-
}
|
package/src/Polarity.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { translatePolarity } from 'warframe-worldstate-data/utilities';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* A polarity in a LoadOutItem
|
|
5
|
-
* @module
|
|
6
|
-
*/
|
|
7
|
-
export default class Polarity {
|
|
8
|
-
/**
|
|
9
|
-
*
|
|
10
|
-
* @param {Object} polarity The polarity to parse
|
|
11
|
-
*/
|
|
12
|
-
constructor(polarity) {
|
|
13
|
-
/**
|
|
14
|
-
* Polarity name
|
|
15
|
-
* @type {String}
|
|
16
|
-
*/
|
|
17
|
-
this.polarity = translatePolarity(polarity.Value);
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* Polarized slot
|
|
21
|
-
* @type {number}
|
|
22
|
-
*/
|
|
23
|
-
this.slot = polarity.Slot;
|
|
24
|
-
}
|
|
25
|
-
}
|
package/src/Profile.js
DELETED
|
@@ -1,213 +0,0 @@
|
|
|
1
|
-
import { parseDate } from 'warframe-worldstate-data/utilities';
|
|
2
|
-
|
|
3
|
-
import ChallengeProgress from './ChallengeProgress.js';
|
|
4
|
-
import Intrinsics from './Intrinsics.js';
|
|
5
|
-
import LoadOutInventory from './LoadOutInventory.js';
|
|
6
|
-
import Mission from './Mission.js';
|
|
7
|
-
import OperatorLoadOuts from './OperatorLoadOuts.js';
|
|
8
|
-
import Syndicate from './Syndicate.js';
|
|
9
|
-
import LoadOutPreset from './LoadOutPreset.js';
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* A player's profile
|
|
13
|
-
* @module
|
|
14
|
-
*/
|
|
15
|
-
export default class Profile {
|
|
16
|
-
/**
|
|
17
|
-
*
|
|
18
|
-
* @param {Object} profile The profile data to parse
|
|
19
|
-
* @param {string} locale The locale to return in where possible
|
|
20
|
-
* @param {boolean} [withItem=false] Whether or not to include items
|
|
21
|
-
*/
|
|
22
|
-
constructor(profile, locale = 'en', withItem = false) {
|
|
23
|
-
/**
|
|
24
|
-
* Player's account ID
|
|
25
|
-
* @type {String}
|
|
26
|
-
*/
|
|
27
|
-
this.accountId = profile.AccountId.$oid;
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* In-game name
|
|
31
|
-
* @type {String}
|
|
32
|
-
*/
|
|
33
|
-
this.displayName = profile.DisplayName;
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* List of usernames across supported platforms
|
|
37
|
-
* @type {Array<String>}
|
|
38
|
-
*/
|
|
39
|
-
this.platformNames = profile.PlatformNames;
|
|
40
|
-
|
|
41
|
-
/**
|
|
42
|
-
* Mastery rank
|
|
43
|
-
* @type {String}
|
|
44
|
-
*/
|
|
45
|
-
this.masteryRank = profile.PlayerLevel;
|
|
46
|
-
|
|
47
|
-
/**
|
|
48
|
-
* Load out preset equipped
|
|
49
|
-
* @type {LoadOutPreset | undefined}
|
|
50
|
-
*/
|
|
51
|
-
if (profile.LoadOutPreset) this.preset = new LoadOutPreset(profile.LoadOutPreset);
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
* Current loadout
|
|
55
|
-
* @type {LoadOutInventory}
|
|
56
|
-
*/
|
|
57
|
-
this.loadout = new LoadOutInventory(profile.LoadOutInventory, locale, withItem);
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* Railjack and drifter Intrinsics
|
|
61
|
-
* @type {Intrinsics}
|
|
62
|
-
*/
|
|
63
|
-
this.intrinsics = new Intrinsics(profile.PlayerSkills ?? {});
|
|
64
|
-
|
|
65
|
-
/**
|
|
66
|
-
* Nightwave challenges progress
|
|
67
|
-
* @type {Array<ChallengeProgress>}
|
|
68
|
-
*/
|
|
69
|
-
this.challengeProgress = profile.ChallengeProgress.map((c) => new ChallengeProgress(c));
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Guild ID
|
|
73
|
-
* @type {String}
|
|
74
|
-
*/
|
|
75
|
-
if (profile.GuildId?.$oid) this.guildId = profile.GuildId.$oid;
|
|
76
|
-
|
|
77
|
-
/**
|
|
78
|
-
* Guild name
|
|
79
|
-
* @type {String}
|
|
80
|
-
*/
|
|
81
|
-
this.guildName = profile.GuildName;
|
|
82
|
-
|
|
83
|
-
/**
|
|
84
|
-
* Guild tier
|
|
85
|
-
* @type {number}
|
|
86
|
-
*/
|
|
87
|
-
this.guildTier = profile.GuildTier;
|
|
88
|
-
|
|
89
|
-
/**
|
|
90
|
-
* Guild XP
|
|
91
|
-
* @type {number}
|
|
92
|
-
*/
|
|
93
|
-
this.guildXp = profile.GuildXp;
|
|
94
|
-
|
|
95
|
-
/**
|
|
96
|
-
* Guild class
|
|
97
|
-
* @type {String}
|
|
98
|
-
*/
|
|
99
|
-
this.guildClass = profile.GuildClass;
|
|
100
|
-
|
|
101
|
-
/**
|
|
102
|
-
* Guild emblem.
|
|
103
|
-
* @type {String}
|
|
104
|
-
*/
|
|
105
|
-
this.guildEmblem = profile.GuildEmblem;
|
|
106
|
-
|
|
107
|
-
/**
|
|
108
|
-
* Alliance ID
|
|
109
|
-
* @type {String | undefined}
|
|
110
|
-
*/
|
|
111
|
-
if (profile.AllianceId?.$oid) this.allianceId = profile.AllianceId.$oid;
|
|
112
|
-
|
|
113
|
-
/**
|
|
114
|
-
* Assassins currently asfter the player
|
|
115
|
-
* @type {Array<String>}
|
|
116
|
-
*/
|
|
117
|
-
this.deathMarks = profile.DeathMarks;
|
|
118
|
-
|
|
119
|
-
/**
|
|
120
|
-
* Whether or not the player is qualified as a target for Zanuka
|
|
121
|
-
* @type {boolean}
|
|
122
|
-
*/
|
|
123
|
-
this.harvestable = profile.Harvestable;
|
|
124
|
-
|
|
125
|
-
/**
|
|
126
|
-
* Whether or not the player is qualified as a target for a syndicate death squad
|
|
127
|
-
* @type {boolean}
|
|
128
|
-
*/
|
|
129
|
-
this.deathSquadable = profile.DeathSquadable;
|
|
130
|
-
|
|
131
|
-
/**
|
|
132
|
-
* Date the account was created
|
|
133
|
-
* @type {Date}
|
|
134
|
-
*/
|
|
135
|
-
this.created = parseDate(profile.Created);
|
|
136
|
-
|
|
137
|
-
/**
|
|
138
|
-
* Whether the user has migrated to console or not
|
|
139
|
-
* @type {boolean}
|
|
140
|
-
*/
|
|
141
|
-
this.migratedToConsole = profile.MigratedToConsole;
|
|
142
|
-
|
|
143
|
-
/**
|
|
144
|
-
* List of completed missions and their completions
|
|
145
|
-
* @type {Mission}
|
|
146
|
-
*/
|
|
147
|
-
this.missions = profile.Missions.map((m) => new Mission(m, locale));
|
|
148
|
-
|
|
149
|
-
/**
|
|
150
|
-
* Player standing and title across all syndicates
|
|
151
|
-
* @type {Array<Syndicate>}
|
|
152
|
-
*/
|
|
153
|
-
this.syndicates = profile.Affiliations?.map((a) => new Syndicate(a)) ?? [];
|
|
154
|
-
|
|
155
|
-
/**
|
|
156
|
-
* Daily standing per Syndicate
|
|
157
|
-
*
|
|
158
|
-
* Faction syndicates all share daily standing
|
|
159
|
-
* @type {Map<String,number>}
|
|
160
|
-
*/
|
|
161
|
-
this.dailyStanding = {
|
|
162
|
-
daily: profile.DailyAffiliation,
|
|
163
|
-
conclave: profile.DailyAffiliationPvp,
|
|
164
|
-
simaris: profile.DailyAffiliationLibrary,
|
|
165
|
-
ostron: profile.DailyAffiliationCetus,
|
|
166
|
-
quills: profile.DailyAffiliationQuills,
|
|
167
|
-
solaris: profile.DailyAffiliationSolaris,
|
|
168
|
-
ventKids: profile.DailyAffiliationVentkids,
|
|
169
|
-
voxSolaris: profile.DailyAffiliationVox,
|
|
170
|
-
entrati: profile.DailyAffiliationEntrati,
|
|
171
|
-
necraloid: profile.DailyAffiliationNecraloid,
|
|
172
|
-
holdfasts: profile.DailyAffiliationZariman,
|
|
173
|
-
kahl: profile.DailyAffiliationKahl,
|
|
174
|
-
cavia: profile.DailyAffiliationCavia,
|
|
175
|
-
hex: profile.DailyAffiliationHex,
|
|
176
|
-
};
|
|
177
|
-
|
|
178
|
-
/**
|
|
179
|
-
* Daily focus
|
|
180
|
-
* @type {number}
|
|
181
|
-
*/
|
|
182
|
-
this.dailyFocus = profile.DailyFocus;
|
|
183
|
-
|
|
184
|
-
/**
|
|
185
|
-
* Player wishlist for in-game market items
|
|
186
|
-
*/
|
|
187
|
-
this.wishList = profile.Wishlist;
|
|
188
|
-
|
|
189
|
-
/**
|
|
190
|
-
* Whether the player has unlocked their operator or not
|
|
191
|
-
* @type {boolean}
|
|
192
|
-
*/
|
|
193
|
-
this.unlockedOperator = profile.UnlockedOperator;
|
|
194
|
-
|
|
195
|
-
/**
|
|
196
|
-
* Whether the player has unlocked their alignment or not
|
|
197
|
-
* @type {boolean}
|
|
198
|
-
*/
|
|
199
|
-
this.unlockedAlignment = profile.UnlockedAlignment;
|
|
200
|
-
|
|
201
|
-
/**
|
|
202
|
-
* Operator loadout
|
|
203
|
-
* @type {OperatorLoadOuts | undefined}
|
|
204
|
-
*/
|
|
205
|
-
this.operatorLoadouts = profile.OperatorLoadOuts?.map((ol) => new OperatorLoadOuts(ol));
|
|
206
|
-
|
|
207
|
-
/**
|
|
208
|
-
* Player's alignment
|
|
209
|
-
* @type {Map<String,number | undefined>}
|
|
210
|
-
*/
|
|
211
|
-
this.alignment = { wisdom: profile.Alignment?.Wisdom, alignment: profile.Alignment?.Alignment };
|
|
212
|
-
}
|
|
213
|
-
}
|
package/src/ProfileParser.js
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { parseDate } from 'warframe-worldstate-data/utilities';
|
|
2
|
-
|
|
3
|
-
import Profile from './Profile.js';
|
|
4
|
-
import Stats from './Stats.js';
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* Parser entry point
|
|
8
|
-
* @module
|
|
9
|
-
*/
|
|
10
|
-
export default class ProfileParser {
|
|
11
|
-
/**
|
|
12
|
-
*
|
|
13
|
-
* @param {Object} data The data returned by getProfile endpoint
|
|
14
|
-
* @param {string} locale The locale to return where possible
|
|
15
|
-
* @param {boolean} [withItem=false] Whether or not to include items
|
|
16
|
-
*/
|
|
17
|
-
constructor(data, locale = 'en', withItem = false) {
|
|
18
|
-
/**
|
|
19
|
-
* Player's profile
|
|
20
|
-
* @type {Profile}
|
|
21
|
-
*/
|
|
22
|
-
this.profile = new Profile(data.Results[0], locale, withItem);
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* @type {number}
|
|
26
|
-
*/
|
|
27
|
-
this.techProjects = data.TechProjects;
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* @type {number}
|
|
31
|
-
*/
|
|
32
|
-
this.xpComponents = data.XpCompoents;
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* @type {number}
|
|
36
|
-
*/
|
|
37
|
-
this.xpCacheExpiryDate = parseDate(data.XpCacheExpiryDate);
|
|
38
|
-
|
|
39
|
-
/**
|
|
40
|
-
* @type {number}
|
|
41
|
-
*/
|
|
42
|
-
this.ceremonyResetDate = parseDate(data.CeremonyResetDate);
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* Player stats
|
|
46
|
-
* @type {Stats}
|
|
47
|
-
*/
|
|
48
|
-
this.stats = new Stats(data.Stats);
|
|
49
|
-
}
|
|
50
|
-
}
|
package/src/Pvp.js
DELETED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Player's conclave stats
|
|
3
|
-
* @module
|
|
4
|
-
*/
|
|
5
|
-
export default class Pvp {
|
|
6
|
-
/**
|
|
7
|
-
*
|
|
8
|
-
* @param {Object} pvp PVP data to parse
|
|
9
|
-
*/
|
|
10
|
-
constructor(pvp) {
|
|
11
|
-
/**
|
|
12
|
-
* PVP match unique name
|
|
13
|
-
* @type {String}
|
|
14
|
-
*/
|
|
15
|
-
this.uniqueName = pvp.type;
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* Deaths for this match
|
|
19
|
-
* @type {number | undefined}
|
|
20
|
-
*/
|
|
21
|
-
this.suitDeaths = pvp.suitDeaths;
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* Warframe kills
|
|
25
|
-
* @type {number | undefined}
|
|
26
|
-
*/
|
|
27
|
-
this.suitKills = pvp.suitKills;
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* Weapon killes
|
|
31
|
-
* @type {number | undefined}
|
|
32
|
-
*/
|
|
33
|
-
this.weaponKills = pvp.weaponKills;
|
|
34
|
-
}
|
|
35
|
-
}
|
package/src/Race.js
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Represents a k-drive race
|
|
3
|
-
* @module
|
|
4
|
-
*/
|
|
5
|
-
export default class Race {
|
|
6
|
-
/**
|
|
7
|
-
*
|
|
8
|
-
* @param {string} type Race name
|
|
9
|
-
* @param {number} highScore high score
|
|
10
|
-
*/
|
|
11
|
-
constructor(type, highScore) {
|
|
12
|
-
/**
|
|
13
|
-
* Race name
|
|
14
|
-
* @type {String}
|
|
15
|
-
*/
|
|
16
|
-
this.uniqueName = type;
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* Race High score
|
|
20
|
-
* @type {number}
|
|
21
|
-
*/
|
|
22
|
-
this.highScore = highScore;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* Created an array of Race objects from DE's Races array
|
|
27
|
-
* @param {Object} races Array of races
|
|
28
|
-
* @returns {Race[]} An array of races formatted in a more consumable way.
|
|
29
|
-
*/
|
|
30
|
-
static fromRaceObject(races) {
|
|
31
|
-
return Object.entries(races ?? []).map(([type, { highScore }]) => new Race(type, highScore));
|
|
32
|
-
}
|
|
33
|
-
}
|
package/src/Scan.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Represents an enemy scanned to the codex
|
|
3
|
-
* @module
|
|
4
|
-
*/
|
|
5
|
-
export default class Scan {
|
|
6
|
-
/**
|
|
7
|
-
* @param {Object} scan The scanned Warframe object
|
|
8
|
-
*/
|
|
9
|
-
constructor(scan) {
|
|
10
|
-
/**
|
|
11
|
-
* Enemy unique name
|
|
12
|
-
* @type {String}
|
|
13
|
-
*/
|
|
14
|
-
this.uniqueName = scan.type;
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* Number of scans done
|
|
18
|
-
* @type {number}
|
|
19
|
-
*/
|
|
20
|
-
this.scans = scan.scans;
|
|
21
|
-
}
|
|
22
|
-
}
|
package/src/Skin.js
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { find } from './Utils.js';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* A skin class
|
|
5
|
-
* @module
|
|
6
|
-
*/
|
|
7
|
-
export default class Skin {
|
|
8
|
-
/**
|
|
9
|
-
*
|
|
10
|
-
* @param {Object} skin The skin data to parse
|
|
11
|
-
* @param {string} [locale='en'] The locale to return skin item in
|
|
12
|
-
*/
|
|
13
|
-
constructor(skin, locale = 'en') {
|
|
14
|
-
/**
|
|
15
|
-
* Unique name
|
|
16
|
-
* @type {String}
|
|
17
|
-
*/
|
|
18
|
-
this.uniqueName = skin.ItemType;
|
|
19
|
-
|
|
20
|
-
const item = find(skin.ItemType, locale);
|
|
21
|
-
/**
|
|
22
|
-
* The Warframe item that matches the unique name
|
|
23
|
-
*/
|
|
24
|
-
if (item) this.item = item;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* @deprecated Move to Skin, this is just here to not break anything for early users
|
|
30
|
-
* @param {Object} skin Skin object
|
|
31
|
-
* @returns {Skin} Skin object with possible item
|
|
32
|
-
*/
|
|
33
|
-
export const WeaponSkin = (skin) => new Skin(skin);
|