返回提交历史
Modified
src/services/importService.ts
+13
-2
Modified
src/types/inventoryTypes/inventoryTypes.ts
+3
-1
XFEstudio/XFESpaceNinjaServer
fix(import): convert PeriodicMissionCompletions (#3278)
Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/3278 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com>
3fe0efd2
代码差异
2 个文件
+16
-3
@@ -30,7 +30,9 @@ import type {
30
30
IUpgradeClient,
31
31
IUpgradeDatabase,
32
32
IWeaponSkinClient,
33
IWeaponSkinDatabase
33
IWeaponSkinDatabase,
34
IPeriodicMissionCompletionResponse,
35
IPeriodicMissionCompletionDatabase
34
36
} from "../types/inventoryTypes/inventoryTypes.ts";
35
37
import { equipmentKeys } from "../types/inventoryTypes/inventoryTypes.ts";
36
38
import type { TInventoryDatabaseDocument } from "../models/inventoryModels/inventoryModel.ts";
@@ -282,6 +284,15 @@ const convertItemConfig = <T extends IItemConfig>(client: T): T => {
282
284
};
283
285
};
284
286
287
const convertPeriodicMissionCompletion = (
288
client: IPeriodicMissionCompletionResponse
289
): IPeriodicMissionCompletionDatabase => {
290
return {
291
...client,
292
date: convertDate(client.date)
293
};
294
};
295
285
296
export const importInventory = (db: TInventoryDatabaseDocument, client: Partial<IInventoryClient>): void => {
286
297
for (const key of equipmentKeys) {
287
298
if (client[key] !== undefined) {
@@ -525,7 +536,7 @@ export const importInventory = (db: TInventoryDatabaseDocument, client: Partial<
525
536
db.Missions = client.Missions;
526
537
}
527
538
if (client.PeriodicMissionCompletions !== undefined) {
528
db.PeriodicMissionCompletions = client.PeriodicMissionCompletions;
539
db.PeriodicMissionCompletions = client.PeriodicMissionCompletions.map(convertPeriodicMissionCompletion);
529
540
}
530
541
if (client.FlavourItems !== undefined) {
531
542
db.FlavourItems.splice(0, db.FlavourItems.length);
@@ -138,6 +138,7 @@ export interface IInventoryDatabase
138
138
| "CurrentLoadOutIds"
139
139
| "FocusLoadouts"
140
140
| "ChallengeInstanceStates"
141
| "PeriodicMissionCompletions"
141
142
| TEquipmentKey
142
143
>,
143
144
InventoryDatabaseEquipment,
@@ -191,6 +192,7 @@ export interface IInventoryDatabase
191
192
PersonalGoalProgress?: IGoalProgressDatabase[];
192
193
FocusLoadouts?: IFocusLoadoutDatabase[];
193
194
ChallengeInstanceStates?: IChallengeInstanceStateDatabase[];
195
PeriodicMissionCompletions: IPeriodicMissionCompletionDatabase[];
194
196
}
195
197
196
198
export interface IQuestKeyDatabase {
@@ -376,7 +378,7 @@ export interface IInventoryClient
376
378
LevelKeys: ITypeCount[];
377
379
TauntHistory?: ITaunt[];
378
380
StoryModeChoice: string;
379
PeriodicMissionCompletions: IPeriodicMissionCompletionDatabase[];
381
PeriodicMissionCompletions: IPeriodicMissionCompletionResponse[];
380
382
KubrowPetEggs?: IKubrowPetEggClient[];
381
383
LoreFragmentScans: ILoreFragmentScan[];
382
384
EquippedEmotes: string[];