mirror of
https://github.com/Stirling-Tools/Stirling-PDF.git
synced 2025-08-26 06:09:23 +00:00
Use base parameters
This commit is contained in:
parent
29176b5034
commit
dd20a3c0a3
@ -1,12 +1,12 @@
|
|||||||
import { describe, expect, test } from 'vitest';
|
import { describe, expect, test } from 'vitest';
|
||||||
import { renderHook, act } from '@testing-library/react';
|
import { renderHook, act } from '@testing-library/react';
|
||||||
import { useMergeParameters, defaultMergeParameters } from './useMergeParameters';
|
import { useMergeParameters, defaultParameters } from './useMergeParameters';
|
||||||
|
|
||||||
describe('useMergeParameters', () => {
|
describe('useMergeParameters', () => {
|
||||||
test('should initialize with default parameters', () => {
|
test('should initialize with default parameters', () => {
|
||||||
const { result } = renderHook(() => useMergeParameters());
|
const { result } = renderHook(() => useMergeParameters());
|
||||||
|
|
||||||
expect(result.current.parameters).toStrictEqual(defaultMergeParameters);
|
expect(result.current.parameters).toStrictEqual(defaultParameters);
|
||||||
});
|
});
|
||||||
|
|
||||||
test.each([
|
test.each([
|
||||||
@ -41,7 +41,7 @@ describe('useMergeParameters', () => {
|
|||||||
result.current.resetParameters();
|
result.current.resetParameters();
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(result.current.parameters).toStrictEqual(defaultMergeParameters);
|
expect(result.current.parameters).toStrictEqual(defaultParameters);
|
||||||
});
|
});
|
||||||
|
|
||||||
test('should validate parameters correctly - always returns true', () => {
|
test('should validate parameters correctly - always returns true', () => {
|
||||||
|
@ -1,37 +1,21 @@
|
|||||||
import { useState, useCallback } from 'react';
|
import { BaseParameters } from '../../../types/parameters';
|
||||||
|
import { BaseParametersHook, useBaseParameters } from '../shared/useBaseParameters';
|
||||||
|
|
||||||
export interface MergeParameters {
|
export interface MergeParameters extends BaseParameters {
|
||||||
removeDigitalSignature: boolean;
|
removeDigitalSignature: boolean;
|
||||||
generateTableOfContents: boolean;
|
generateTableOfContents: boolean;
|
||||||
}
|
};
|
||||||
|
|
||||||
export const defaultMergeParameters: MergeParameters = {
|
export const defaultParameters: MergeParameters = {
|
||||||
removeDigitalSignature: false,
|
removeDigitalSignature: false,
|
||||||
generateTableOfContents: false,
|
generateTableOfContents: false,
|
||||||
};
|
};
|
||||||
|
|
||||||
export const useMergeParameters = () => {
|
export type MergeParametersHook = BaseParametersHook<MergeParameters>;
|
||||||
const [parameters, setParameters] = useState<MergeParameters>(defaultMergeParameters);
|
|
||||||
|
|
||||||
const updateParameter = useCallback(<K extends keyof MergeParameters>(
|
export const useMergeParameters = (): MergeParametersHook => {
|
||||||
key: K,
|
return useBaseParameters({
|
||||||
value: MergeParameters[K]
|
defaultParameters,
|
||||||
) => {
|
endpointName: "merge-pdfs",
|
||||||
setParameters(prev => ({ ...prev, [key]: value }));
|
});
|
||||||
}, []);
|
|
||||||
|
|
||||||
const validateParameters = useCallback((): boolean => {
|
|
||||||
return true; // Merge has no required parameters
|
|
||||||
}, []);
|
|
||||||
|
|
||||||
const resetParameters = useCallback(() => {
|
|
||||||
setParameters(defaultMergeParameters);
|
|
||||||
}, []);
|
|
||||||
|
|
||||||
return {
|
|
||||||
parameters,
|
|
||||||
updateParameter,
|
|
||||||
validateParameters,
|
|
||||||
resetParameters,
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user