mirror of
https://github.com/arsvendg/Stirling-PDF.git
synced 2026-07-15 11:00:47 +02:00
* automate feature * Moved all providers to app level to simplify homepage * Circular dependency fixes * You will see that now toolRegistry gets a tool config and a tool settings object. These enable automate to run the tools using as much static code as possible. --------- Co-authored-by: Connor Yoh <[email protected]>
50 lines
1.3 KiB
TypeScript
50 lines
1.3 KiB
TypeScript
import { BaseParameters } from '../../../types/parameters';
|
|
import { useBaseParameters, BaseParametersHook } from '../shared/useBaseParameters';
|
|
|
|
export interface AddWatermarkParameters extends BaseParameters {
|
|
watermarkType?: 'text' | 'image';
|
|
watermarkText: string;
|
|
watermarkImage?: File;
|
|
fontSize: number; // Used for both text size and image size
|
|
rotation: number;
|
|
opacity: number;
|
|
widthSpacer: number;
|
|
heightSpacer: number;
|
|
alphabet: string;
|
|
customColor: string;
|
|
convertPDFToImage: boolean;
|
|
}
|
|
|
|
export const defaultParameters: AddWatermarkParameters = {
|
|
watermarkType: undefined,
|
|
watermarkText: '',
|
|
fontSize: 12,
|
|
rotation: 0,
|
|
opacity: 50,
|
|
widthSpacer: 50,
|
|
heightSpacer: 50,
|
|
alphabet: 'roman',
|
|
customColor: '#d3d3d3',
|
|
convertPDFToImage: false
|
|
};
|
|
|
|
export type AddWatermarkParametersHook = BaseParametersHook<AddWatermarkParameters>;
|
|
|
|
export const useAddWatermarkParameters = (): AddWatermarkParametersHook => {
|
|
return useBaseParameters({
|
|
defaultParameters: defaultParameters,
|
|
endpointName: 'add-watermark',
|
|
validateFn: (params): boolean => {
|
|
if (!params.watermarkType) {
|
|
return false;
|
|
}
|
|
if (params.watermarkType === 'text') {
|
|
return params.watermarkText.trim().length > 0;
|
|
} else {
|
|
return params.watermarkImage !== undefined;
|
|
}
|
|
},
|
|
});
|
|
};
|
|
|