feat(furni-editor): updateFurnidata/revertFurnidata hook actions

This commit is contained in:
simoleo89
2026-06-06 02:43:45 +02:00
parent 0a6aeafe11
commit 7e72e34088
+17 -2
View File
@@ -1,4 +1,4 @@
import { FurniEditorBySpriteComposer, FurniEditorDeleteComposer, FurniEditorDetailComposer, FurniEditorDetailResultEvent, FurniEditorInteractionsComposer, FurniEditorInteractionsResultEvent, FurniEditorResultEvent, FurniEditorSearchComposer, FurniEditorSearchResultEvent, FurniEditorUpdateComposer } from '@nitrots/nitro-renderer';
import { FurniEditorBySpriteComposer, FurniEditorDeleteComposer, FurniEditorDetailComposer, FurniEditorDetailResultEvent, FurniEditorInteractionsComposer, FurniEditorInteractionsResultEvent, FurniEditorResultEvent, FurniEditorRevertFurnidataComposer, FurniEditorSearchComposer, FurniEditorSearchResultEvent, FurniEditorUpdateComposer, FurniEditorUpdateFurnidataComposer } from '@nitrots/nitro-renderer';
import { useCallback, useRef, useState } from 'react';
import { NotificationAlertType, SendMessageComposer } from '../../api';
import { useMessageEvent, useNotification } from '../../hooks';
@@ -246,6 +246,20 @@ export const useFurniEditor = () =>
SendMessageComposer(new FurniEditorDeleteComposer(id));
}, []);
const updateFurnidata = useCallback((id: number, name: string, description: string) =>
{
pendingActionRef.current = { action: 'update', itemId: id };
setLoading(true);
SendMessageComposer(new FurniEditorUpdateFurnidataComposer(id, JSON.stringify({ name, description })));
}, []);
const revertFurnidata = useCallback((id: number) =>
{
pendingActionRef.current = { action: 'update', itemId: id };
setLoading(true);
SendMessageComposer(new FurniEditorRevertFurnidataComposer(id));
}, []);
const loadInteractions = useCallback(() =>
{
SendMessageComposer(new FurniEditorInteractionsComposer());
@@ -255,6 +269,7 @@ export const useFurniEditor = () =>
items, total, page, loading, error, clearError,
selectedItem, setSelectedItem, catalogItems, furniDataEntry,
interactions,
searchItems, loadDetail, loadBySpriteId, updateItem, deleteItem, loadInteractions
searchItems, loadDetail, loadBySpriteId, updateItem, deleteItem, loadInteractions,
updateFurnidata, revertFurnidata
};
};