From 1083b2ea336744a461cfccb5a07c7c91560ed5d1 Mon Sep 17 00:00:00 2001 From: simoleo89 Date: Mon, 11 May 2026 20:58:32 +0200 Subject: [PATCH] Type useFurniChooserState builders + drop dead getUserData guard MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The two helper functions buildWallItem and buildFloorItem took roomObject as 'any', so 'model.getValue(...)' became an untyped-function-with-type-args error under tsgo (six hits). Typing the param as IRoomObject (the renderer's public interface — model is already typed there) fixes them all at once. The fallback chain for ownerName was guarded by 'sessionDataManager.getUserData ? sessionDataManager.getUserData(ownerId)?.name : null' — SessionDataManager.getUserData() does NOT exist on the renderer (documented in Nitro_Render_V3/CLAUDE.md), so that branch was always dead. Dropping it removes the four tsgo errors and the misleading condition. Net tsgo error count: 90 -> 80. --- src/hooks/rooms/widgets/useFurniChooserState.ts | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/src/hooks/rooms/widgets/useFurniChooserState.ts b/src/hooks/rooms/widgets/useFurniChooserState.ts index 0a03677..35a979c 100644 --- a/src/hooks/rooms/widgets/useFurniChooserState.ts +++ b/src/hooks/rooms/widgets/useFurniChooserState.ts @@ -1,4 +1,4 @@ -import { GetRoomEngine, GetSessionDataManager, RoomObjectCategory, RoomObjectVariable } from '@nitrots/nitro-renderer'; +import { GetRoomEngine, GetSessionDataManager, IRoomObject, RoomObjectCategory, RoomObjectVariable } from '@nitrots/nitro-renderer'; import { useState } from 'react'; import { GetRoomSession, LocalizeText, RoomObjectItem } from '../../../api'; import { useFurniAddedEvent, useFurniRemovedEvent } from '../engine'; @@ -11,7 +11,7 @@ const isPetOrBot = (roomObjectType: string): boolean => roomObjectType === 'bot' || roomObjectType.includes('rentableBot'); -const buildWallItem = (roomObject: any): RoomObjectItem | null => +const buildWallItem = (roomObject: IRoomObject): RoomObjectItem | null => { if(roomObject.id < 0 || isPetOrBot(roomObject.type)) return null; @@ -31,14 +31,12 @@ const buildWallItem = (roomObject: any): RoomObjectItem | null => } const ownerId = roomObject.model.getValue(RoomObjectVariable.FURNITURE_OWNER_ID) || 0; - const ownerName = roomObject.model.getValue(RoomObjectVariable.FURNITURE_OWNER_NAME) || - (sessionDataManager.getUserData ? sessionDataManager.getUserData(ownerId)?.name : null) || - `User_${ownerId}`; + const ownerName = roomObject.model.getValue(RoomObjectVariable.FURNITURE_OWNER_NAME) || `User_${ ownerId }`; return new RoomObjectItem(roomObject.id, RoomObjectCategory.WALL, name, ownerId, ownerName, 'furniture'); }; -const buildFloorItem = (roomObject: any): RoomObjectItem | null => +const buildFloorItem = (roomObject: IRoomObject): RoomObjectItem | null => { if(roomObject.id < 0 || isPetOrBot(roomObject.type)) return null; @@ -51,9 +49,7 @@ const buildFloorItem = (roomObject: any): RoomObjectItem | null => if(furniData && furniData.name.length) name = furniData.name; const ownerId = roomObject.model.getValue(RoomObjectVariable.FURNITURE_OWNER_ID) || 0; - const ownerName = roomObject.model.getValue(RoomObjectVariable.FURNITURE_OWNER_NAME) || - (sessionDataManager.getUserData ? sessionDataManager.getUserData(ownerId)?.name : null) || - `User_${ownerId}`; + const ownerName = roomObject.model.getValue(RoomObjectVariable.FURNITURE_OWNER_NAME) || `User_${ ownerId }`; return new RoomObjectItem(roomObject.id, RoomObjectCategory.FLOOR, name, ownerId, ownerName, 'furniture'); };