Compare commits

..

No commits in common. "9ade633103a7be63564da1ad4b449cbba9f19f61" and "00a7d19c61421d3a3152903f81a5fdb89bd4901c" have entirely different histories.

View File

@ -6,12 +6,12 @@ import { ToolOperationHook } from './useToolOperation';
import { BaseParametersHook } from './useBaseParameters'; import { BaseParametersHook } from './useBaseParameters';
import { StirlingFile } from '../../../types/fileContext'; import { StirlingFile } from '../../../types/fileContext';
interface BaseToolReturn<TParams, TParamsHook extends BaseParametersHook<TParams>> { interface BaseToolReturn<TParams> {
// File management // File management
selectedFiles: StirlingFile[]; selectedFiles: StirlingFile[];
// Tool-specific hooks // Tool-specific hooks
params: TParamsHook; params: BaseParametersHook<TParams>;
operation: ToolOperationHook<TParams>; operation: ToolOperationHook<TParams>;
// Endpoint validation // Endpoint validation
@ -33,13 +33,13 @@ interface BaseToolReturn<TParams, TParamsHook extends BaseParametersHook<TParams
/** /**
* Base tool hook for tool components. Manages standard behaviour for tools. * Base tool hook for tool components. Manages standard behaviour for tools.
*/ */
export function useBaseTool<TParams, TParamsHook extends BaseParametersHook<TParams>>( export function useBaseTool<TParams>(
toolName: string, toolName: string,
useParams: () => TParamsHook, useParams: () => BaseParametersHook<TParams>,
useOperation: () => ToolOperationHook<TParams>, useOperation: () => ToolOperationHook<TParams>,
props: BaseToolProps, props: BaseToolProps,
options?: { minFiles?: number } options?: { minFiles?: number }
): BaseToolReturn<TParams, TParamsHook> { ): BaseToolReturn<TParams> {
const minFiles = options?.minFiles ?? 1; const minFiles = options?.minFiles ?? 1;
const { onPreviewFile, onComplete, onError } = props; const { onPreviewFile, onComplete, onError } = props;