@wfcd/profile-parser 2.0.11 → 2.0.13
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.d.mts +1 -1
- package/dist/Ability.mjs +24 -3
- package/dist/ArchonCrystal.mjs +1 -3
- package/dist/ChallengeProgress.d.mts +1 -1
- package/dist/ChallengeProgress.mjs +25 -3
- package/dist/Enemy.d.mts +1 -1
- package/dist/Enemy.mjs +43 -3
- package/dist/Intrinsics.d.mts +1 -1
- package/dist/Intrinsics.mjs +66 -3
- package/dist/{ItemConfig-DxhXby04.d.mts → ItemConfig-C81QdCpU.d.mts} +2 -2
- package/dist/ItemConfig.d.mts +1 -3
- package/dist/ItemConfig.mjs +48 -5
- package/dist/{LoadOutInventory-B84bUV2-.d.mts → LoadOutInventory-BrtoOtNr.d.mts} +3 -3
- package/dist/LoadOutInventory.d.mts +1 -6
- package/dist/LoadOutInventory.mjs +50 -9
- package/dist/{LoadOutItem-DWQ4aFI_.d.mts → LoadOutItem-Cd_qovNn.d.mts} +3 -3
- package/dist/LoadOutItem.d.mts +1 -4
- package/dist/LoadOutItem.mjs +125 -7
- package/dist/LoadOutPreset.d.mts +1 -1
- package/dist/LoadOutPreset.mjs +81 -4
- package/dist/Mission.d.mts +1 -1
- package/dist/Mission.mjs +53 -3
- package/dist/{OperatorLoadOuts-51DN5Rwo.d.mts → OperatorLoadOuts-DvlpRvD1.d.mts} +10 -4
- package/dist/OperatorLoadOuts.d.mts +1 -3
- package/dist/OperatorLoadOuts.mjs +74 -5
- package/dist/Polarity.d.mts +1 -1
- package/dist/Polarity.mjs +26 -3
- package/dist/Profile.d.mts +10 -14
- package/dist/Profile.mjs +8 -16
- package/dist/ProfileParser.d.mts +5 -11
- package/dist/ProfileParser.mjs +3 -16
- package/dist/Pvp.d.mts +1 -1
- package/dist/Pvp.mjs +35 -3
- package/dist/Race.d.mts +1 -1
- package/dist/Race.mjs +34 -3
- package/dist/Scan.d.mts +1 -1
- package/dist/Scan.mjs +26 -3
- package/dist/Skin.d.mts +1 -1
- package/dist/Skin.mjs +34 -4
- package/dist/Stats.d.mts +7 -7
- package/dist/Stats.mjs +8 -10
- package/dist/Syndicate.d.mts +1 -1
- package/dist/Syndicate.mjs +31 -3
- package/dist/{Utils-VTFhFHIp.d.mts → Utils-xGSP1zu-.d.mts} +4 -5
- package/dist/Utils.d.mts +1 -1
- package/dist/Utils.mjs +58 -3
- package/dist/Weapon.d.mts +1 -1
- package/dist/Weapon.mjs +63 -3
- package/dist/XpInfo.d.mts +1 -1
- package/dist/XpInfo.mjs +33 -4
- package/package.json +11 -12
- package/dist/Ability-DsyqxzjP.mjs +0 -25
- package/dist/ChallengeProgress-Cpks92At.mjs +0 -26
- package/dist/Enemy-B3JSksZZ.mjs +0 -44
- package/dist/Intrinsics-kYw_LPq1.mjs +0 -67
- package/dist/ItemConfig-DTIrA_P_.mjs +0 -50
- package/dist/LoadOutInventory-BbaIazHX.mjs +0 -52
- package/dist/LoadOutItem-p-f5RdTB.mjs +0 -127
- package/dist/LoadOutPreset-CwbK2VvR.mjs +0 -83
- package/dist/Mission-DfGQMV7B.mjs +0 -55
- package/dist/OperatorLoadOuts-LYGpTHuj.mjs +0 -76
- package/dist/Polarity-Q2JfovbR.mjs +0 -28
- package/dist/Pvp-DCfleh26.mjs +0 -36
- package/dist/Race-dyrF8Zs5.mjs +0 -35
- package/dist/Scan-D4p43-1c.mjs +0 -27
- package/dist/Skin-D_brWp2g.mjs +0 -36
- package/dist/Syndicate-CcRnzmZs.mjs +0 -33
- package/dist/Utils-Bqm2Gg1K.mjs +0 -59
- package/dist/Weapon-CsKff27X.mjs +0 -64
- package/dist/XpInfo-IT6LOTzI.mjs +0 -35
- /package/dist/{Ability-CmHyNfw4.d.mts → Ability-DcXcbtcE.d.mts} +0 -0
- /package/dist/{ChallengeProgress-BO8tPybG.d.mts → ChallengeProgress-BrxgSqf4.d.mts} +0 -0
- /package/dist/{Enemy-5RVVfZme.d.mts → Enemy-Das_tHF5.d.mts} +0 -0
- /package/dist/{Intrinsics-DwonOlUE.d.mts → Intrinsics-BhwKpPoY.d.mts} +0 -0
- /package/dist/{LoadOutPreset-m_1RVkf9.d.mts → LoadOutPreset-CUV29lLL.d.mts} +0 -0
- /package/dist/{Mission-CeX2BRp0.d.mts → Mission-C7zlZ4eq.d.mts} +0 -0
- /package/dist/{Polarity-KCoYUO6f.d.mts → Polarity-BWadoIXU.d.mts} +0 -0
- /package/dist/{Pvp-R4iYmiAT.d.mts → Pvp-D0lygyP6.d.mts} +0 -0
- /package/dist/{Race-DXOXL9VT.d.mts → Race-PxkzCRsy.d.mts} +0 -0
- /package/dist/{Scan-CJnYpzKb.d.mts → Scan-Cj6jCTNg.d.mts} +0 -0
- /package/dist/{Skin-DJMr6L-X.d.mts → Skin-CpQ4dzEs.d.mts} +0 -0
- /package/dist/{Syndicate-Dq5vLEB-.d.mts → Syndicate-BwHRq-Iw.d.mts} +0 -0
- /package/dist/{Weapon-DgQ4hNgE.d.mts → Weapon-DUlgoPHD.d.mts} +0 -0
- /package/dist/{XpInfo-qplT5008.d.mts → XpInfo-C1pzVAdK.d.mts} +0 -0
package/dist/Weapon.mjs
CHANGED
|
@@ -1,3 +1,63 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
//#region src/Weapon.ts
|
|
2
|
+
/**
|
|
3
|
+
* Represents a player's used weapon stats
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
6
|
+
var Weapon = class {
|
|
7
|
+
uniqueName;
|
|
8
|
+
xp;
|
|
9
|
+
equipTime;
|
|
10
|
+
headShots;
|
|
11
|
+
hits;
|
|
12
|
+
assists;
|
|
13
|
+
kills;
|
|
14
|
+
fired;
|
|
15
|
+
/**
|
|
16
|
+
*
|
|
17
|
+
* @param weapon The weapon stats being parsed
|
|
18
|
+
*/
|
|
19
|
+
constructor(weapon) {
|
|
20
|
+
/**
|
|
21
|
+
* Weapon unique name
|
|
22
|
+
* @type {String}
|
|
23
|
+
*/
|
|
24
|
+
this.uniqueName = weapon.type;
|
|
25
|
+
/**
|
|
26
|
+
* Earned XP with weapon
|
|
27
|
+
* @type {number}
|
|
28
|
+
*/
|
|
29
|
+
this.xp = weapon.xp;
|
|
30
|
+
/**
|
|
31
|
+
* Time using this weapon
|
|
32
|
+
* @type {number}
|
|
33
|
+
*/
|
|
34
|
+
this.equipTime = weapon.equipTime;
|
|
35
|
+
/**
|
|
36
|
+
* Headshots using this weapon
|
|
37
|
+
* @type {number}
|
|
38
|
+
*/
|
|
39
|
+
this.headShots = weapon.headShots;
|
|
40
|
+
/**
|
|
41
|
+
* Hits using weapon
|
|
42
|
+
* @type {number}
|
|
43
|
+
*/
|
|
44
|
+
this.hits = weapon.hits;
|
|
45
|
+
/**
|
|
46
|
+
* Assists using weapon
|
|
47
|
+
* @type {number}
|
|
48
|
+
*/
|
|
49
|
+
this.assists = weapon.assists;
|
|
50
|
+
/**
|
|
51
|
+
* Kills with weapon
|
|
52
|
+
* @type {number}
|
|
53
|
+
*/
|
|
54
|
+
this.kills = weapon.kills;
|
|
55
|
+
/**
|
|
56
|
+
* Shots fired
|
|
57
|
+
* @type {number}
|
|
58
|
+
*/
|
|
59
|
+
this.fired = weapon.fired;
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
//#endregion
|
|
63
|
+
export { Weapon as default };
|
package/dist/XpInfo.d.mts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as XpInfo, t as RawXpItem } from "./XpInfo-
|
|
1
|
+
import { n as XpInfo, t as RawXpItem } from "./XpInfo-C1pzVAdK.mjs";
|
|
2
2
|
export { RawXpItem, XpInfo as default };
|
package/dist/XpInfo.mjs
CHANGED
|
@@ -1,4 +1,33 @@
|
|
|
1
|
-
import "./Utils
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { find } from "./Utils.mjs";
|
|
2
|
+
//#region src/XpInfo.ts
|
|
3
|
+
/**
|
|
4
|
+
* An item that has contributed to a player's mastery rank
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
var XpInfo = class {
|
|
8
|
+
/**
|
|
9
|
+
* Unique name
|
|
10
|
+
*/
|
|
11
|
+
uniqueName;
|
|
12
|
+
/**
|
|
13
|
+
* XP earned
|
|
14
|
+
*/
|
|
15
|
+
xp;
|
|
16
|
+
/**
|
|
17
|
+
* The item corrosponding to the unique name.
|
|
18
|
+
*/
|
|
19
|
+
item;
|
|
20
|
+
/**
|
|
21
|
+
*
|
|
22
|
+
* @param info The info for a given ranked item
|
|
23
|
+
* @param locale langauge to return item in
|
|
24
|
+
* @param withItem Whether or not to include items
|
|
25
|
+
*/
|
|
26
|
+
constructor(info, locale = "en", withItem = false) {
|
|
27
|
+
this.uniqueName = info.ItemType;
|
|
28
|
+
this.xp = info.XP;
|
|
29
|
+
if (withItem) this.item = find(info.ItemType, locale);
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
//#endregion
|
|
33
|
+
export { XpInfo as default };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wfcd/profile-parser",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.13",
|
|
4
4
|
"description": "Parser for Digital Extreme's profile data",
|
|
5
5
|
"repository": "https://github.com/WFCD/profile-parser",
|
|
6
6
|
"type": "module",
|
|
@@ -30,29 +30,28 @@
|
|
|
30
30
|
"types"
|
|
31
31
|
],
|
|
32
32
|
"devDependencies": {
|
|
33
|
-
"@biomejs/biome": "2.
|
|
33
|
+
"@biomejs/biome": "2.4.16",
|
|
34
34
|
"@types/chai": "^5.2.3",
|
|
35
35
|
"@types/mocha": "^10.0.10",
|
|
36
|
-
"
|
|
37
|
-
"c8": "^10.1.3",
|
|
36
|
+
"c8": "^11.0.0",
|
|
38
37
|
"chai": "^6.2.2",
|
|
39
38
|
"chai-json-equal": "^0.0.1",
|
|
40
39
|
"husky": "^9.1.7",
|
|
41
|
-
"
|
|
42
|
-
"lint-staged": "^16.2.7",
|
|
40
|
+
"lint-staged": "^17.0.2",
|
|
43
41
|
"mocha": "^11.7.5",
|
|
44
|
-
"tsdown": "^0.
|
|
42
|
+
"tsdown": "^0.22.0",
|
|
45
43
|
"tsx": "^4.21.0",
|
|
46
|
-
"typescript": "^
|
|
44
|
+
"typescript": "^6.0.2"
|
|
47
45
|
},
|
|
48
46
|
"scripts": {
|
|
49
47
|
"build": "tsdown",
|
|
50
|
-
"build:docs": "
|
|
48
|
+
"build:docs": "typedoc",
|
|
51
49
|
"coverage": "npm test && c8 report --reporter=text-lcov | npx -y -p coveralls coveralls",
|
|
52
|
-
"lint": "biome
|
|
53
|
-
"lint:fix": "biome
|
|
50
|
+
"lint": "biome check",
|
|
51
|
+
"lint:fix": "biome check --write",
|
|
54
52
|
"prepublishOnly": "npm run build",
|
|
55
|
-
"test": "c8 mocha"
|
|
53
|
+
"test": "c8 mocha",
|
|
54
|
+
"prepare": "husky"
|
|
56
55
|
},
|
|
57
56
|
"author": "SlayerOrnstein",
|
|
58
57
|
"license": "MIT",
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
//#region src/Ability.ts
|
|
2
|
-
/**
|
|
3
|
-
* Represents a players used ability
|
|
4
|
-
* @module
|
|
5
|
-
*/
|
|
6
|
-
var Ability = class {
|
|
7
|
-
uniqueName;
|
|
8
|
-
used;
|
|
9
|
-
/**
|
|
10
|
-
* @param ability The ability
|
|
11
|
-
*/
|
|
12
|
-
constructor(ability) {
|
|
13
|
-
/**
|
|
14
|
-
* The ability unique name
|
|
15
|
-
*/
|
|
16
|
-
this.uniqueName = ability.type;
|
|
17
|
-
/**
|
|
18
|
-
* How many time the ability was used in the player's lifetime
|
|
19
|
-
*/
|
|
20
|
-
this.used = ability.used;
|
|
21
|
-
}
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
//#endregion
|
|
25
|
-
export { Ability as t };
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
//#region src/ChallengeProgress.ts
|
|
2
|
-
/**
|
|
3
|
-
* Player completed or in progress challenges
|
|
4
|
-
* @module
|
|
5
|
-
*/
|
|
6
|
-
var ChallengeProgress = class {
|
|
7
|
-
name;
|
|
8
|
-
progress;
|
|
9
|
-
/**
|
|
10
|
-
*
|
|
11
|
-
* @param challenge The challenge object to parse
|
|
12
|
-
*/
|
|
13
|
-
constructor(challenge) {
|
|
14
|
-
/**
|
|
15
|
-
* Name of the challenge
|
|
16
|
-
*/
|
|
17
|
-
this.name = challenge.Name;
|
|
18
|
-
/**
|
|
19
|
-
* Progress towards completing this challenge
|
|
20
|
-
*/
|
|
21
|
-
this.progress = challenge.Progress;
|
|
22
|
-
}
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
//#endregion
|
|
26
|
-
export { ChallengeProgress as t };
|
package/dist/Enemy-B3JSksZZ.mjs
DELETED
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
//#region src/Enemy.ts
|
|
2
|
-
/**
|
|
3
|
-
* An enemy killed/executed by player
|
|
4
|
-
*/
|
|
5
|
-
var Enemy = class {
|
|
6
|
-
/**
|
|
7
|
-
* Enemy's unique name
|
|
8
|
-
*/
|
|
9
|
-
uniqueName;
|
|
10
|
-
/**
|
|
11
|
-
* How many times the player has killed this enemy type
|
|
12
|
-
*/
|
|
13
|
-
kills;
|
|
14
|
-
/**
|
|
15
|
-
* The amount of kills that were headshots
|
|
16
|
-
*/
|
|
17
|
-
headshots;
|
|
18
|
-
/**
|
|
19
|
-
* The amount of kills that were finishers
|
|
20
|
-
*/
|
|
21
|
-
executions;
|
|
22
|
-
/**
|
|
23
|
-
* The amount of kills that were assits
|
|
24
|
-
*/
|
|
25
|
-
assists;
|
|
26
|
-
/**
|
|
27
|
-
* How many times this enemy type has killed the player
|
|
28
|
-
*/
|
|
29
|
-
deaths;
|
|
30
|
-
/**
|
|
31
|
-
* @param enemy The enemy
|
|
32
|
-
*/
|
|
33
|
-
constructor(enemy) {
|
|
34
|
-
this.uniqueName = enemy.type;
|
|
35
|
-
this.kills = enemy.kills;
|
|
36
|
-
this.headshots = enemy.headshots;
|
|
37
|
-
this.executions = enemy.executions;
|
|
38
|
-
this.assists = enemy.assists;
|
|
39
|
-
this.deaths = enemy.deaths;
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
//#endregion
|
|
44
|
-
export { Enemy as t };
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
//#region src/Intrinsics.ts
|
|
2
|
-
/**
|
|
3
|
-
* Player's intrinsics ranks
|
|
4
|
-
* @module
|
|
5
|
-
*/
|
|
6
|
-
var Intrinsics = class {
|
|
7
|
-
/**
|
|
8
|
-
* Intrinsic points for railjack
|
|
9
|
-
*/
|
|
10
|
-
railjack;
|
|
11
|
-
/**
|
|
12
|
-
* Railjack engineering rank
|
|
13
|
-
*/
|
|
14
|
-
engineering;
|
|
15
|
-
/**
|
|
16
|
-
* Railjack gunnery rank
|
|
17
|
-
*/
|
|
18
|
-
gunnery;
|
|
19
|
-
/**
|
|
20
|
-
* Railjack piloting rank
|
|
21
|
-
*/
|
|
22
|
-
piloting;
|
|
23
|
-
/**
|
|
24
|
-
* Railjack tactical rank
|
|
25
|
-
*/
|
|
26
|
-
tactical;
|
|
27
|
-
/**
|
|
28
|
-
* Railjack command rank
|
|
29
|
-
*/
|
|
30
|
-
command;
|
|
31
|
-
/**
|
|
32
|
-
* Intrinsic points for railjack
|
|
33
|
-
*/
|
|
34
|
-
drifter;
|
|
35
|
-
/**
|
|
36
|
-
* Drifter riding rank
|
|
37
|
-
*/
|
|
38
|
-
riding;
|
|
39
|
-
/**
|
|
40
|
-
* Drifter combat rank
|
|
41
|
-
*/
|
|
42
|
-
combat;
|
|
43
|
-
/**
|
|
44
|
-
* Drifter opportunity rank
|
|
45
|
-
*/
|
|
46
|
-
opportunity;
|
|
47
|
-
/**
|
|
48
|
-
* Drifter endurance rank
|
|
49
|
-
*/
|
|
50
|
-
endurance;
|
|
51
|
-
constructor(skills) {
|
|
52
|
-
this.railjack = Math.floor((skills.LPP_SPACE ?? 0) / 1e3);
|
|
53
|
-
this.engineering = skills.LPS_ENGINEERING ?? 0;
|
|
54
|
-
this.gunnery = skills.LPS_GUNNERY ?? 0;
|
|
55
|
-
this.piloting = skills.LPS_PILOTING ?? 0;
|
|
56
|
-
this.tactical = skills.LPS_TACTICAL ?? 0;
|
|
57
|
-
this.command = skills.LPS_COMMAND ?? 0;
|
|
58
|
-
this.drifter = Math.floor((skills.LPP_DRIFTER ?? 0) / 1e3);
|
|
59
|
-
this.riding = skills.LPS_DRIFT_RIDING ?? 0;
|
|
60
|
-
this.combat = skills.LPS_DRIFT_COMBAT ?? 0;
|
|
61
|
-
this.opportunity = skills.LPS_DRIFT_OPPORTUNITY ?? 0;
|
|
62
|
-
this.endurance = skills.LPS_DRIFT_ENDURANCE ?? 0;
|
|
63
|
-
}
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
//#endregion
|
|
67
|
-
export { Intrinsics as t };
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { n as mapToHex } from "./Utils-Bqm2Gg1K.mjs";
|
|
2
|
-
import { t as Skin } from "./Skin-D_brWp2g.mjs";
|
|
3
|
-
import { colors } from "@wfcd/items/utilities";
|
|
4
|
-
|
|
5
|
-
//#region src/ItemConfig.ts
|
|
6
|
-
/**
|
|
7
|
-
* Item customizations such as colors and applied skins
|
|
8
|
-
* @module
|
|
9
|
-
*/
|
|
10
|
-
var ItemConfig = class {
|
|
11
|
-
/**
|
|
12
|
-
* Array of unique names for the skins applied to item
|
|
13
|
-
*/
|
|
14
|
-
skins;
|
|
15
|
-
/**
|
|
16
|
-
* Array of PVP unique name upgrades applied
|
|
17
|
-
*/
|
|
18
|
-
conclaveUpgrades;
|
|
19
|
-
/**
|
|
20
|
-
* Primary colors applied to item if they exist
|
|
21
|
-
*/
|
|
22
|
-
primaryColor;
|
|
23
|
-
/**
|
|
24
|
-
* Sigil colors applied to item if they exist
|
|
25
|
-
*/
|
|
26
|
-
sigilColor;
|
|
27
|
-
/**
|
|
28
|
-
* Attachment colors applied to item if they exist
|
|
29
|
-
*/
|
|
30
|
-
attachmentsColor;
|
|
31
|
-
/**
|
|
32
|
-
* Syandana colors applied to item if they exist
|
|
33
|
-
*/
|
|
34
|
-
syandanaColor;
|
|
35
|
-
/**
|
|
36
|
-
*
|
|
37
|
-
* @param config The configuration
|
|
38
|
-
*/
|
|
39
|
-
constructor(config, locale = "en") {
|
|
40
|
-
this.skins = config.Skins?.filter(Boolean).map((s) => new Skin({ ItemType: s }, locale));
|
|
41
|
-
if (config.PvpUpgrades) this.conclaveUpgrades = config.PvpUpgrades;
|
|
42
|
-
if (config.pricol) this.primaryColor = colors.mapColors(mapToHex(config.pricol));
|
|
43
|
-
if (config.sigcol) this.sigilColor = colors.mapColors(mapToHex(config.sigcol));
|
|
44
|
-
if (config.attcol) this.attachmentsColor = colors.mapColors(mapToHex(config.attcol));
|
|
45
|
-
if (config.syancol) this.syandanaColor = colors.mapColors(mapToHex(config.syancol));
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
|
|
49
|
-
//#endregion
|
|
50
|
-
export { ItemConfig as t };
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { t as Skin } from "./Skin-D_brWp2g.mjs";
|
|
2
|
-
import { t as LoadOutItem } from "./LoadOutItem-p-f5RdTB.mjs";
|
|
3
|
-
import { t as XpInfo } from "./XpInfo-IT6LOTzI.mjs";
|
|
4
|
-
|
|
5
|
-
//#region src/LoadOutInventory.ts
|
|
6
|
-
/**
|
|
7
|
-
* Player loudout
|
|
8
|
-
* @module
|
|
9
|
-
*/
|
|
10
|
-
var LoadOutInventory = class {
|
|
11
|
-
/**
|
|
12
|
-
* Skins applied to weapons
|
|
13
|
-
*/
|
|
14
|
-
weaponSkins;
|
|
15
|
-
/**
|
|
16
|
-
* An array of the player's currently equiped Warframe (or powersuits)
|
|
17
|
-
*/
|
|
18
|
-
suits;
|
|
19
|
-
/**
|
|
20
|
-
* An array of the player's currently equiped secondary weapon
|
|
21
|
-
*/
|
|
22
|
-
secondary;
|
|
23
|
-
/**
|
|
24
|
-
* An array of the player's currently equiped primary weapon
|
|
25
|
-
*/
|
|
26
|
-
primary;
|
|
27
|
-
/**
|
|
28
|
-
* An array of the player's currently equiped melee weapon
|
|
29
|
-
*/
|
|
30
|
-
melee;
|
|
31
|
-
/**
|
|
32
|
-
* Items that have counted towards the players mastery rank
|
|
33
|
-
*/
|
|
34
|
-
xpInfo;
|
|
35
|
-
/**
|
|
36
|
-
*
|
|
37
|
-
* @param item The loadout data
|
|
38
|
-
* @param locale The locale to return loudout items in. Default is en
|
|
39
|
-
* @param withItem Whether or not to include items
|
|
40
|
-
*/
|
|
41
|
-
constructor(item, locale = "en", withItem = false) {
|
|
42
|
-
this.weaponSkins = item.WeaponSkins.map((s) => new Skin(s, locale));
|
|
43
|
-
this.suits = item.Suits.map((s) => new LoadOutItem(s, locale));
|
|
44
|
-
this.secondary = item.Pistols?.map((p) => new LoadOutItem(p, locale));
|
|
45
|
-
this.primary = item.LongGuns?.map((lg) => new LoadOutItem(lg, locale));
|
|
46
|
-
this.melee = item.Melee?.map((m) => new LoadOutItem(m, locale));
|
|
47
|
-
this.xpInfo = item.XPInfo.map((xp) => new XpInfo(xp, locale, withItem));
|
|
48
|
-
}
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
//#endregion
|
|
52
|
-
export { LoadOutInventory as t };
|
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
import { t as find } from "./Utils-Bqm2Gg1K.mjs";
|
|
2
|
-
import { t as ItemConfig } from "./ItemConfig-DTIrA_P_.mjs";
|
|
3
|
-
import { t as Polarity } from "./Polarity-Q2JfovbR.mjs";
|
|
4
|
-
import { parseDate, toTitleCase } from "warframe-worldstate-data/utilities";
|
|
5
|
-
import { colors } from "@wfcd/items/utilities";
|
|
6
|
-
|
|
7
|
-
//#region src/LoadOutItem.ts
|
|
8
|
-
/**
|
|
9
|
-
* An an item in LoadOutInventory
|
|
10
|
-
* @module
|
|
11
|
-
*/
|
|
12
|
-
var LoadOutItem = class {
|
|
13
|
-
/**
|
|
14
|
-
* Item ID
|
|
15
|
-
*/
|
|
16
|
-
itemId;
|
|
17
|
-
/**
|
|
18
|
-
* Item unique name
|
|
19
|
-
*/
|
|
20
|
-
uniqueName;
|
|
21
|
-
/**
|
|
22
|
-
* Item in-game name
|
|
23
|
-
*/
|
|
24
|
-
name;
|
|
25
|
-
/**
|
|
26
|
-
* Complete item from @wfcd/items
|
|
27
|
-
*/
|
|
28
|
-
item;
|
|
29
|
-
/**
|
|
30
|
-
* The name of the Lich, Sister, or Technocyte
|
|
31
|
-
*/
|
|
32
|
-
nemesis;
|
|
33
|
-
/**
|
|
34
|
-
* Configuration for this weapon. Such as colors and skins applied by the player
|
|
35
|
-
*/
|
|
36
|
-
configs;
|
|
37
|
-
/**
|
|
38
|
-
* The upgrade that was applied to this weapon
|
|
39
|
-
*/
|
|
40
|
-
upgradeType;
|
|
41
|
-
/**
|
|
42
|
-
* Information on the upgradeType that was applied
|
|
43
|
-
* TODO need model for for fingerprint
|
|
44
|
-
*/
|
|
45
|
-
upgradeFingerprint;
|
|
46
|
-
features;
|
|
47
|
-
upgradeVer;
|
|
48
|
-
/**
|
|
49
|
-
* XP earned with this weapon
|
|
50
|
-
*/
|
|
51
|
-
xp;
|
|
52
|
-
/**
|
|
53
|
-
* How many mod slots are currently polarized.
|
|
54
|
-
*/
|
|
55
|
-
polarized;
|
|
56
|
-
/**
|
|
57
|
-
* Which polarity types exist on the weapon
|
|
58
|
-
*/
|
|
59
|
-
polarity;
|
|
60
|
-
/**
|
|
61
|
-
* Focus lens applied
|
|
62
|
-
*/
|
|
63
|
-
focuseLens;
|
|
64
|
-
customizationSlotPurchases;
|
|
65
|
-
/**
|
|
66
|
-
* Primary colors applied to item if they exist
|
|
67
|
-
*/
|
|
68
|
-
primaryColor;
|
|
69
|
-
/**
|
|
70
|
-
* Sigil colors applied to item if they exist
|
|
71
|
-
*/
|
|
72
|
-
sigilColor;
|
|
73
|
-
/**
|
|
74
|
-
* Whether prime details are enabled or not
|
|
75
|
-
*/
|
|
76
|
-
enablePrime;
|
|
77
|
-
/**
|
|
78
|
-
* Attachment colors applied to item if they exist
|
|
79
|
-
*/
|
|
80
|
-
attachmentsColor;
|
|
81
|
-
/**
|
|
82
|
-
* Syandana colors applied to item if they exist
|
|
83
|
-
*/
|
|
84
|
-
syandanaColor;
|
|
85
|
-
/**
|
|
86
|
-
* If set will show when the player's warframe was infested.
|
|
87
|
-
*/
|
|
88
|
-
infestationDate;
|
|
89
|
-
/**
|
|
90
|
-
*
|
|
91
|
-
* @param {Object} loadOutItem The loadout item from LoadoutInventory
|
|
92
|
-
* @param {string} [locale='en'] The locale to return item in
|
|
93
|
-
*/
|
|
94
|
-
constructor(loadOutItem, locale = "en") {
|
|
95
|
-
this.itemId = loadOutItem.ItemId.$oid;
|
|
96
|
-
this.uniqueName = loadOutItem.ItemType;
|
|
97
|
-
const item = find(loadOutItem.ItemType, locale);
|
|
98
|
-
if (item) {
|
|
99
|
-
this.name = item.name;
|
|
100
|
-
this.item = item;
|
|
101
|
-
}
|
|
102
|
-
if (loadOutItem.ItemName) {
|
|
103
|
-
const [, nemesis] = loadOutItem.ItemName.split("|");
|
|
104
|
-
if (nemesis !== void 0) this.nemesis = toTitleCase(nemesis);
|
|
105
|
-
else this.name = loadOutItem.ItemName;
|
|
106
|
-
}
|
|
107
|
-
this.configs = loadOutItem.Configs.map((c) => new ItemConfig(c));
|
|
108
|
-
if (loadOutItem.UpgradeType) this.upgradeType = loadOutItem.UpgradeType;
|
|
109
|
-
this.upgradeFingerprint = loadOutItem.UpgradeFingerprint;
|
|
110
|
-
this.features = loadOutItem.Features;
|
|
111
|
-
this.upgradeVer = loadOutItem.UpgradeVer;
|
|
112
|
-
this.xp = loadOutItem.XP;
|
|
113
|
-
this.polarized = loadOutItem.Polarized;
|
|
114
|
-
this.polarity = loadOutItem.Polarity?.map((p) => new Polarity(p));
|
|
115
|
-
this.focuseLens = loadOutItem.FocusLens;
|
|
116
|
-
this.customizationSlotPurchases = loadOutItem.CustomizationSlotPurchases ?? 0;
|
|
117
|
-
if (loadOutItem.pricol) this.primaryColor = colors.mapColors(loadOutItem.pricol);
|
|
118
|
-
if (loadOutItem.sigcol) this.sigilColor = colors.mapColors(loadOutItem.sigcol);
|
|
119
|
-
this.enablePrime = loadOutItem.ugly ?? false;
|
|
120
|
-
if (loadOutItem.attcol) this.attachmentsColor = colors.mapColors(loadOutItem.attcol);
|
|
121
|
-
if (loadOutItem.syancol) this.syandanaColor = colors.mapColors(loadOutItem.syancol);
|
|
122
|
-
if (loadOutItem.InfestationDate) this.infestationDate = parseDate(loadOutItem.InfestationDate);
|
|
123
|
-
}
|
|
124
|
-
};
|
|
125
|
-
|
|
126
|
-
//#endregion
|
|
127
|
-
export { LoadOutItem as t };
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import { r as numberToLetter } from "./Utils-Bqm2Gg1K.mjs";
|
|
2
|
-
import { translatePolarity } from "warframe-worldstate-data/utilities";
|
|
3
|
-
|
|
4
|
-
//#region src/LoadOutPreset.ts
|
|
5
|
-
var SlotPreset = class {
|
|
6
|
-
id;
|
|
7
|
-
modPreset;
|
|
8
|
-
appearancePreset;
|
|
9
|
-
isHidden;
|
|
10
|
-
constructor(slot) {
|
|
11
|
-
if (slot?.ItemId?.$oid) this.id = slot.ItemId.$oid;
|
|
12
|
-
if (slot?.mod !== void 0) this.modPreset = numberToLetter(slot.mod);
|
|
13
|
-
if (slot?.cus !== void 0) this.appearancePreset = numberToLetter(slot.cus);
|
|
14
|
-
this.isHidden = slot?.hide ?? false;
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
|
-
var LoadOutPreset = class {
|
|
18
|
-
/**
|
|
19
|
-
* Focus School
|
|
20
|
-
*/
|
|
21
|
-
focusSchool;
|
|
22
|
-
/**
|
|
23
|
-
* Preset icon
|
|
24
|
-
*
|
|
25
|
-
* Note:
|
|
26
|
-
* Icon in-game seems to be an image of whatever Warframe is equipped on it
|
|
27
|
-
*/
|
|
28
|
-
icon;
|
|
29
|
-
/**
|
|
30
|
-
* Whether this preset is a favorite
|
|
31
|
-
*/
|
|
32
|
-
isFavorite;
|
|
33
|
-
/**
|
|
34
|
-
* Preset name
|
|
35
|
-
*/
|
|
36
|
-
name;
|
|
37
|
-
/**
|
|
38
|
-
* Warframe equipped in preset
|
|
39
|
-
*/
|
|
40
|
-
warframe;
|
|
41
|
-
/**
|
|
42
|
-
* Primary equipped in preset
|
|
43
|
-
*/
|
|
44
|
-
primary;
|
|
45
|
-
/**
|
|
46
|
-
* Secondary equipped in preset
|
|
47
|
-
*/
|
|
48
|
-
secondary;
|
|
49
|
-
/**
|
|
50
|
-
* Heavy equipped in preset
|
|
51
|
-
*/
|
|
52
|
-
heavy;
|
|
53
|
-
/**
|
|
54
|
-
* Melee equiped in preset
|
|
55
|
-
*/
|
|
56
|
-
melee;
|
|
57
|
-
/**
|
|
58
|
-
* Exalted ability
|
|
59
|
-
*/
|
|
60
|
-
exalted;
|
|
61
|
-
/**
|
|
62
|
-
* Secondary exalted ability
|
|
63
|
-
*
|
|
64
|
-
* i.e Sevagoth has his shadow and his shadow's claws both of which can be modded separately
|
|
65
|
-
*/
|
|
66
|
-
exaltedB;
|
|
67
|
-
constructor(preset) {
|
|
68
|
-
this.focusSchool = translatePolarity(preset.FocusSchool);
|
|
69
|
-
this.icon = preset.PresetIcon;
|
|
70
|
-
this.isFavorite = preset.Favorite;
|
|
71
|
-
this.name = preset.n;
|
|
72
|
-
this.warframe = new SlotPreset(preset.s);
|
|
73
|
-
if (preset.l) this.primary = new SlotPreset(preset.l);
|
|
74
|
-
if (preset.p) this.secondary = new SlotPreset(preset.p);
|
|
75
|
-
if (preset.h) this.heavy = new SlotPreset(preset.h);
|
|
76
|
-
if (preset.m) this.melee = new SlotPreset(preset.m);
|
|
77
|
-
if (preset.a) this.exalted = new SlotPreset(preset.a);
|
|
78
|
-
if (preset.b) this.exaltedB = new SlotPreset(preset.b);
|
|
79
|
-
}
|
|
80
|
-
};
|
|
81
|
-
|
|
82
|
-
//#endregion
|
|
83
|
-
export { LoadOutPreset as t };
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { node, nodeEnemy, nodeMissionType } from "warframe-worldstate-data/utilities";
|
|
2
|
-
|
|
3
|
-
//#region src/Mission.ts
|
|
4
|
-
/**
|
|
5
|
-
* A mission completed by the player
|
|
6
|
-
* @module
|
|
7
|
-
*/
|
|
8
|
-
var Mission = class {
|
|
9
|
-
/**
|
|
10
|
-
* Node name
|
|
11
|
-
*/
|
|
12
|
-
node;
|
|
13
|
-
/**
|
|
14
|
-
* Node unique name
|
|
15
|
-
*/
|
|
16
|
-
nodeKey;
|
|
17
|
-
/**
|
|
18
|
-
* Node mission type
|
|
19
|
-
*/
|
|
20
|
-
missionType;
|
|
21
|
-
/**
|
|
22
|
-
* Node faction
|
|
23
|
-
*/
|
|
24
|
-
faction;
|
|
25
|
-
/**
|
|
26
|
-
* Highest score earned in this mission
|
|
27
|
-
*/
|
|
28
|
-
highScore;
|
|
29
|
-
/**
|
|
30
|
-
* How many times the mission was completed
|
|
31
|
-
*/
|
|
32
|
-
completes;
|
|
33
|
-
/**
|
|
34
|
-
* Denotes a steel path node
|
|
35
|
-
*/
|
|
36
|
-
tier;
|
|
37
|
-
/**
|
|
38
|
-
*
|
|
39
|
-
* @param mission The mission data
|
|
40
|
-
* @param locale The locale to return in
|
|
41
|
-
*/
|
|
42
|
-
constructor(mission, locale = "en") {
|
|
43
|
-
const uniqueName = mission.type || mission.Tag;
|
|
44
|
-
this.node = node(uniqueName, locale);
|
|
45
|
-
this.nodeKey = uniqueName;
|
|
46
|
-
this.missionType = nodeMissionType(uniqueName, locale);
|
|
47
|
-
this.faction = nodeEnemy(uniqueName, locale);
|
|
48
|
-
if (mission.highScore) this.highScore = mission.highScore;
|
|
49
|
-
if (mission.Completes) this.completes = mission.Completes;
|
|
50
|
-
if (mission.Tier) this.tier = mission.Tier;
|
|
51
|
-
}
|
|
52
|
-
};
|
|
53
|
-
|
|
54
|
-
//#endregion
|
|
55
|
-
export { Mission as t };
|