From fc884f6183a828dbb9eabedb6568409f8f5e01ba Mon Sep 17 00:00:00 2001 From: Sainan <63328889+Sainan@users.noreply.github.com> Date: Sun, 27 Apr 2025 23:19:05 +0200 Subject: [PATCH 1/2] fix: isStoreItem returning false for boosters e.g. `/Lotus/Types/StoreItems/Boosters/AffinityBoosterStoreItem` --- src/services/itemDataService.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/services/itemDataService.ts b/src/services/itemDataService.ts index 6e0edd23..12a49c3e 100644 --- a/src/services/itemDataService.ts +++ b/src/services/itemDataService.ts @@ -17,6 +17,7 @@ import { dict_uk, dict_zh, ExportArcanes, + ExportBoosters, ExportCustoms, ExportDrones, ExportGear, @@ -217,7 +218,7 @@ export const convertInboxMessage = (message: IInboxMessage): IMessage => { }; export const isStoreItem = (type: string): boolean => { - return type.startsWith("/Lotus/StoreItems/"); + return type.startsWith("/Lotus/StoreItems/") || type in ExportBoosters; }; export const toStoreItem = (type: string): string => { -- 2.47.2 From bc92f6903bac14dc24c381d3fb9fa36f543bb692 Mon Sep 17 00:00:00 2001 From: Sainan <63328889+Sainan@users.noreply.github.com> Date: Sun, 27 Apr 2025 23:54:11 +0200 Subject: [PATCH 2/2] handle boosters in toStoreItem & fromStoreItem as well --- src/services/itemDataService.ts | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/services/itemDataService.ts b/src/services/itemDataService.ts index 12a49c3e..3b3e997c 100644 --- a/src/services/itemDataService.ts +++ b/src/services/itemDataService.ts @@ -222,11 +222,26 @@ export const isStoreItem = (type: string): boolean => { }; export const toStoreItem = (type: string): string => { + if (type.startsWith("/Lotus/Types/StoreItems/Boosters/")) { + const boosterEntry = Object.entries(ExportBoosters).find(arr => arr[1].typeName == type); + if (boosterEntry) { + return boosterEntry[0]; + } + throw new Error(`could not convert ${type} to a store item`); + } return "/Lotus/StoreItems/" + type.substring("/Lotus/".length); }; export const fromStoreItem = (type: string): string => { - return "/Lotus/" + type.substring("/Lotus/StoreItems/".length); + if (type.startsWith("/Lotus/StoreItems/")) { + return "/Lotus/" + type.substring("/Lotus/StoreItems/".length); + } + + if (type in ExportBoosters) { + return ExportBoosters[type].typeName; + } + + throw new Error(`${type} is not a store item`); }; export const getDefaultUpgrades = (parts: string[]): IDefaultUpgrade[] | undefined => { -- 2.47.2