File size: 707 Bytes
8a37e0a | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | import { createMemoizedSelector } from 'app/store/createMemoizedSelector';
import { useAppSelector } from 'app/store/storeHooks';
import { selectFieldInputInstance, selectNodesSlice } from 'features/nodes/store/selectors';
import type { FieldInputInstance } from 'features/nodes/types/field';
import { useMemo } from 'react';
export const useFieldInputInstance = (nodeId: string, fieldName: string): FieldInputInstance | null => {
const selector = useMemo(
() =>
createMemoizedSelector(selectNodesSlice, (nodes) => {
return selectFieldInputInstance(nodes, nodeId, fieldName);
}),
[fieldName, nodeId]
);
const fieldData = useAppSelector(selector);
return fieldData;
};
|