From 6f5342d71c92a326ae2ab58602d62fa7407a81c4 Mon Sep 17 00:00:00 2001 From: rxl211 Date: Mon, 29 Jun 2026 00:11:52 -0700 Subject: [PATCH 1/2] populating itemInfo.full_item_name to fix float rank hyperlinks for Souvenirs and StatTraks --- src/lib/components/inventory/selected_item_info.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/lib/components/inventory/selected_item_info.ts b/src/lib/components/inventory/selected_item_info.ts index a76bf0c6..f146b89b 100644 --- a/src/lib/components/inventory/selected_item_info.ts +++ b/src/lib/components/inventory/selected_item_info.ts @@ -265,6 +265,7 @@ export class SelectedItemInfo extends FloatElement { asset_id: this.asset.assetid, link: this.inspectLink, }); + this.itemInfo.full_item_name = this.asset.description.market_hash_name; } catch (e: any) { console.error(`Failed to fetch float for ${this.asset.assetid}: ${e.toString()}`); } From 28c14a9edc61b97a0874835ee9dff95ec1e49fba Mon Sep 17 00:00:00 2001 From: rxl211 Date: Mon, 29 Jun 2026 00:39:20 -0700 Subject: [PATCH 2/2] Avoid stale full_item_name assignment across selected item changes --- .../inventory/selected_item_info.ts | 24 +++++++++++++++---- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/src/lib/components/inventory/selected_item_info.ts b/src/lib/components/inventory/selected_item_info.ts index f146b89b..cafd7049 100644 --- a/src/lib/components/inventory/selected_item_info.ts +++ b/src/lib/components/inventory/selected_item_info.ts @@ -261,13 +261,27 @@ export class SelectedItemInfo extends FloatElement { (isCharm(this.asset.description) && !isHighlightCharm(this.asset.description))) ) { try { - this.itemInfo = await gFloatFetcher.fetch({ - asset_id: this.asset.assetid, - link: this.inspectLink, + const asset = this.asset; + if (!asset) return; + + const inspectLink = this.inspectLink; + if (!inspectLink) return; + + const fetched = await gFloatFetcher.fetch({ + asset_id: asset.assetid, + link: inspectLink, }); - this.itemInfo.full_item_name = this.asset.description.market_hash_name; + + if (this.asset?.assetid !== asset.assetid) { + return; + } + + this.itemInfo = { + ...fetched, + full_item_name: asset.description.market_hash_name, + }; } catch (e: any) { - console.error(`Failed to fetch float for ${this.asset.assetid}: ${e.toString()}`); + console.error(`Failed to fetch float for ${this.asset?.assetid}: ${e.toString()}`); } // Fetch bluegem data if needed