warframe-public-export-plus 0.6.0 → 0.6.2
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/ExportArcanes.json +13373 -0
- package/ExportBundles.json +199 -99
- package/ExportCustoms.json +1265 -636
- package/ExportFlavour.json +609 -0
- package/ExportImages.json +21 -0
- package/ExportKeys.json +13 -0
- package/ExportRegions.json +5765 -0
- package/ExportResources.json +13 -0
- package/ExportSystems.json +25 -0
- package/ExportTextIcons.json +1 -1
- package/ExportTilesets.json +16 -0
- package/ExportUpgrades.json +3622 -1542
- package/ExportVendors.json +472 -64
- package/README.md +2 -2
- package/dict.de.json +235 -15
- package/dict.en.json +232 -12
- package/dict.es.json +232 -12
- package/dict.fr.json +228 -8
- package/dict.it.json +224 -4
- package/dict.ja.json +232 -12
- package/dict.ko.json +227 -7
- package/dict.pl.json +318 -98
- package/dict.pt.json +236 -16
- package/dict.ru.json +235 -15
- package/dict.tc.json +230 -10
- package/dict.th.json +267 -47
- package/dict.tr.json +250 -30
- package/dict.uk.json +277 -57
- package/dict.zh.json +234 -14
- package/index.d.ts +24 -8
- package/package.json +3 -4
- package/validate-typings.js +17 -17
package/index.d.ts
CHANGED
|
@@ -112,6 +112,13 @@ export interface IArcane {
|
|
|
112
112
|
codexSecret: boolean;
|
|
113
113
|
excludeFromCodex?: true;
|
|
114
114
|
rarity: TRarity;
|
|
115
|
+
levelStats?: {
|
|
116
|
+
tag: string;
|
|
117
|
+
sub: Record<string,
|
|
118
|
+
{ tag: string; sub: Record<string, string> }
|
|
119
|
+
| string // note: substitute itself may be a loctag
|
|
120
|
+
>;
|
|
121
|
+
}[][];
|
|
115
122
|
fusionLimit: number;
|
|
116
123
|
distillPointValue?: number;
|
|
117
124
|
}
|
|
@@ -167,6 +174,7 @@ export type TPlatform =
|
|
|
167
174
|
| "CP_PS5"
|
|
168
175
|
| "CP_XSX"
|
|
169
176
|
| "CP_IOS"
|
|
177
|
+
| "CP_ANDROID"
|
|
170
178
|
;
|
|
171
179
|
|
|
172
180
|
export interface IBundle {
|
|
@@ -450,10 +458,12 @@ export interface IColour {
|
|
|
450
458
|
value: string;
|
|
451
459
|
}
|
|
452
460
|
|
|
461
|
+
export type TFocusSchool = "AP_ATTACK" | "AP_DEFENSE" | "AP_POWER" | "AP_TACTIC" | "AP_WARD";
|
|
462
|
+
|
|
453
463
|
export interface IFocusUpgrade {
|
|
454
464
|
name: string;
|
|
455
465
|
icon: string;
|
|
456
|
-
polarity:
|
|
466
|
+
polarity: TFocusSchool;
|
|
457
467
|
rarity: TRarity;
|
|
458
468
|
codexSecret: boolean;
|
|
459
469
|
baseDrain: number;
|
|
@@ -561,9 +571,6 @@ export interface IHelminthSnack {
|
|
|
561
571
|
gain: number;
|
|
562
572
|
}
|
|
563
573
|
|
|
564
|
-
export interface IExportMisc {
|
|
565
|
-
}
|
|
566
|
-
|
|
567
574
|
export type TMissionType =
|
|
568
575
|
| "MT_ASSASSINATION"
|
|
569
576
|
| "MT_EXTERMINATION"
|
|
@@ -712,7 +719,7 @@ export interface IRegion {
|
|
|
712
719
|
nodeType: number;
|
|
713
720
|
masteryReq: number;
|
|
714
721
|
missionType: TMissionType;
|
|
715
|
-
missionName: string; // may differ from
|
|
722
|
+
missionName: string; // may differ from ExportMissions[missionType].name for dual defense, conjunction survival, railjack
|
|
716
723
|
faction?: TFaction;
|
|
717
724
|
secondaryFaction?: TFaction;
|
|
718
725
|
minEnemyLevel: number;
|
|
@@ -726,6 +733,7 @@ export interface IRegion {
|
|
|
726
733
|
customAdvancedSpawners?: string[];
|
|
727
734
|
missionReward?: IMissionReward;
|
|
728
735
|
miscItemFee?: ICountedItem;
|
|
736
|
+
founders?: string[];
|
|
729
737
|
challenges?: string[];
|
|
730
738
|
rewardManifests: string[];
|
|
731
739
|
cacheRewardManifest?: string;
|
|
@@ -873,6 +881,7 @@ export interface ISyndicateSacrifice {
|
|
|
873
881
|
}
|
|
874
882
|
|
|
875
883
|
export interface ISystem {
|
|
884
|
+
index: number;
|
|
876
885
|
name: string;
|
|
877
886
|
droneDamage: IRange;
|
|
878
887
|
damageChance: number;
|
|
@@ -905,8 +914,8 @@ export interface ITextIcon {
|
|
|
905
914
|
|
|
906
915
|
export interface ITileset {
|
|
907
916
|
uniqueName: string;
|
|
908
|
-
faction
|
|
909
|
-
missions: Record<TMissionType, ITilesetMission
|
|
917
|
+
faction: TFaction;
|
|
918
|
+
missions: Partial<Record<TMissionType, ITilesetMission>>; // Only contains mission types supported by the tileset.
|
|
910
919
|
}
|
|
911
920
|
|
|
912
921
|
export interface ITilesetMission {
|
|
@@ -926,8 +935,9 @@ export interface IUpgrade {
|
|
|
926
935
|
baseDrain: number;
|
|
927
936
|
fusionLimit: number;
|
|
928
937
|
compat?: string;
|
|
929
|
-
compatibilityTags?: string[];
|
|
930
938
|
compatName?: string;
|
|
939
|
+
compatibilityTags?: string[];
|
|
940
|
+
incompatibilityTags?: string[];
|
|
931
941
|
type?: string;
|
|
932
942
|
description?: string;
|
|
933
943
|
isUtility?: true;
|
|
@@ -968,11 +978,13 @@ export interface IUpgrade {
|
|
|
968
978
|
levelStats?: {
|
|
969
979
|
stats: string[];
|
|
970
980
|
}[];
|
|
981
|
+
introducedAt?: number;
|
|
971
982
|
}
|
|
972
983
|
|
|
973
984
|
export interface IVendor {
|
|
974
985
|
isDynamic: boolean;
|
|
975
986
|
isOneBinPerCycle?: boolean;
|
|
987
|
+
requiredGoalTag?: string;
|
|
976
988
|
items: IVendorOffer[];
|
|
977
989
|
randomItemPricesPerBin?: {
|
|
978
990
|
type: string;
|
|
@@ -1008,6 +1020,10 @@ export interface IVendorOffer {
|
|
|
1008
1020
|
reductionPerPositiveRank: number;
|
|
1009
1021
|
increasePerNegativeRank: number;
|
|
1010
1022
|
};
|
|
1023
|
+
focusXpCost?: {
|
|
1024
|
+
polarity: TFocusSchool;
|
|
1025
|
+
cost: number;
|
|
1026
|
+
};
|
|
1011
1027
|
}
|
|
1012
1028
|
|
|
1013
1029
|
export interface IVirtual {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "warframe-public-export-plus",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.2",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"types": "index.d.ts",
|
|
6
6
|
"exports": {
|
|
@@ -15,8 +15,7 @@
|
|
|
15
15
|
"url": "git+https://github.com/calamity-inc/warframe-public-export-plus.git"
|
|
16
16
|
},
|
|
17
17
|
"devDependencies": {
|
|
18
|
-
"ts-
|
|
19
|
-
"
|
|
20
|
-
"zod": "^3.24.2"
|
|
18
|
+
"ts-to-zod": "^5",
|
|
19
|
+
"zod": "^4"
|
|
21
20
|
}
|
|
22
21
|
}
|
package/validate-typings.js
CHANGED
|
@@ -11,33 +11,32 @@ for (const line of indexTypes.split(/\r?\n/)) {
|
|
|
11
11
|
}
|
|
12
12
|
types += "\n}";
|
|
13
13
|
|
|
14
|
-
console.log("
|
|
14
|
+
console.log("Generating schemas...");
|
|
15
15
|
fs.writeFileSync("tmp-types.ts", types);
|
|
16
|
-
execSync("npx ts-to-zod tmp-types.ts tmp-schemas.
|
|
17
|
-
stdio: "inherit",
|
|
18
|
-
});
|
|
16
|
+
execSync("npx ts-to-zod tmp-types.ts tmp-schemas.js --skipValidation");
|
|
19
17
|
|
|
20
18
|
const schemas = fs
|
|
21
|
-
.readFileSync("tmp-schemas.
|
|
22
|
-
.
|
|
23
|
-
.replace("iAbilitySchema = z.strictObject({", "iAbilitySchema = z.object({")
|
|
24
|
-
|
|
19
|
+
.readFileSync("tmp-schemas.js", "utf8")
|
|
20
|
+
.replaceAll("z.object", "z.strictObject")
|
|
21
|
+
.replace("iAbilitySchema = z.strictObject({", "iAbilitySchema = z.object({")
|
|
22
|
+
.replace("z.record(tMissionTypeSchema, iTilesetMissionSchema).partial()", "z.partialRecord(tMissionTypeSchema, iTilesetMissionSchema)");
|
|
23
|
+
fs.writeFileSync("tmp-schemas.mjs", schemas);
|
|
25
24
|
|
|
26
|
-
console.log("
|
|
25
|
+
console.log("Validating schemas...");
|
|
27
26
|
const test = `import { z } from "zod";
|
|
28
|
-
import { iPublicExportPlusSchema } from "./tmp-schemas";
|
|
29
|
-
import publicExportPlus from "./index";
|
|
27
|
+
import { iPublicExportPlusSchema } from "./tmp-schemas.mjs";
|
|
28
|
+
import publicExportPlus from "./index.js";
|
|
30
29
|
try {
|
|
31
30
|
iPublicExportPlusSchema.parse(publicExportPlus);
|
|
32
|
-
console.log("
|
|
31
|
+
console.log("Schemas validated successfully.");
|
|
33
32
|
} catch (e) {
|
|
34
|
-
console.error(
|
|
33
|
+
console.error(e.message);
|
|
35
34
|
process.exit(1);
|
|
36
35
|
}`;
|
|
37
|
-
fs.writeFileSync("tmp-test.
|
|
36
|
+
fs.writeFileSync("tmp-test.mjs", test);
|
|
38
37
|
|
|
39
38
|
try {
|
|
40
|
-
execSync("
|
|
39
|
+
execSync("node tmp-test.mjs", {
|
|
41
40
|
stdio: "inherit",
|
|
42
41
|
env: {
|
|
43
42
|
...process.env,
|
|
@@ -51,7 +50,8 @@ try {
|
|
|
51
50
|
process.exitCode = 1;
|
|
52
51
|
}
|
|
53
52
|
} finally {
|
|
54
|
-
fs.unlinkSync("tmp-schemas.ts");
|
|
55
53
|
fs.unlinkSync("tmp-types.ts");
|
|
56
|
-
fs.unlinkSync("tmp-
|
|
54
|
+
fs.unlinkSync("tmp-schemas.mjs");
|
|
55
|
+
fs.unlinkSync("tmp-schemas.js");
|
|
56
|
+
fs.unlinkSync("tmp-test.mjs");
|
|
57
57
|
}
|