mirror of
https://github.com/Frooodle/Stirling-PDF.git
synced 2026-04-16 23:08:38 +02:00
refactor(merge,split,json): adopt streaming approach and standardize types, address gradle warnings (#5803)
Co-authored-by: Anthony Stirling <77850077+Frooodle@users.noreply.github.com> Co-authored-by: Balázs <balazs@heim-041-30.jkh.uni-linz.ac.at>
This commit is contained in:
@@ -38,7 +38,7 @@ const SplitAutomationSettings = ({ parameters, onParameterChange, disabled = fal
|
||||
label={t("split.steps.chooseMethod", "Choose Method")}
|
||||
placeholder={t("split.selectMethod", "Select a split method")}
|
||||
value={parameters.method}
|
||||
onChange={(value) => onParameterChange('method', value as (SplitMethod | '') || '')}
|
||||
onChange={(value) => onParameterChange('method', value as SplitMethod | null)}
|
||||
data={methodSelectOptions}
|
||||
disabled={disabled}
|
||||
comboboxProps={{ withinPortal: true, zIndex: Z_INDEX_AUTOMATE_DROPDOWN }}
|
||||
|
||||
@@ -2,7 +2,7 @@ import { useTranslation } from 'react-i18next';
|
||||
import { TooltipContent } from '@app/types/tips';
|
||||
import { SPLIT_METHODS, type SplitMethod } from '@app/constants/splitConstants';
|
||||
|
||||
export const useSplitSettingsTips = (method: SplitMethod | ''): TooltipContent | null => {
|
||||
export const useSplitSettingsTips = (method: SplitMethod | null): TooltipContent | null => {
|
||||
const { t } = useTranslation();
|
||||
|
||||
if (!method) return null;
|
||||
|
||||
@@ -68,6 +68,7 @@ export const getSplitEndpoint = (parameters: SplitParameters): string => {
|
||||
}
|
||||
|
||||
switch (parameters.method) {
|
||||
case null:
|
||||
case SPLIT_METHODS.BY_PAGES:
|
||||
return "/api/v1/general/split-pages";
|
||||
case SPLIT_METHODS.BY_SECTIONS:
|
||||
|
||||
@@ -3,7 +3,7 @@ import { BaseParameters } from '@app/types/parameters';
|
||||
import { useBaseParameters, BaseParametersHook } from '@app/hooks/tools/shared/useBaseParameters';
|
||||
|
||||
export interface SplitParameters extends BaseParameters {
|
||||
method: SplitMethod | '';
|
||||
method: SplitMethod | null;
|
||||
pages: string;
|
||||
hDiv: string;
|
||||
vDiv: string;
|
||||
@@ -24,7 +24,7 @@ export interface SplitParameters extends BaseParameters {
|
||||
export type SplitParametersHook = BaseParametersHook<SplitParameters>;
|
||||
|
||||
export const defaultParameters: SplitParameters = {
|
||||
method: '',
|
||||
method: null,
|
||||
pages: '',
|
||||
hDiv: '2',
|
||||
vDiv: '2',
|
||||
@@ -45,13 +45,8 @@ export const defaultParameters: SplitParameters = {
|
||||
export const useSplitParameters = (): SplitParametersHook => {
|
||||
return useBaseParameters({
|
||||
defaultParameters,
|
||||
endpointName: (params) => {
|
||||
if (!params.method) return ENDPOINTS[SPLIT_METHODS.BY_PAGES];
|
||||
return ENDPOINTS[params.method as SplitMethod];
|
||||
},
|
||||
endpointName: (params) => params.method ? ENDPOINTS[params.method] : ENDPOINTS[SPLIT_METHODS.BY_PAGES],
|
||||
validateFn: (params) => {
|
||||
if (!params.method) return false;
|
||||
|
||||
switch (params.method) {
|
||||
case SPLIT_METHODS.BY_PAGES:
|
||||
return params.pages.trim() !== "";
|
||||
|
||||
@@ -60,7 +60,7 @@ const Split = (props: BaseToolProps) => {
|
||||
{
|
||||
title: t("split.steps.chooseMethod", "Choose Method"),
|
||||
isCollapsed: !!base.params.parameters.method, // Collapse when method is selected
|
||||
onCollapsedClick: () => base.params.updateParameter('method', ''),
|
||||
onCollapsedClick: () => base.params.updateParameter('method', null),
|
||||
tooltip: methodTips,
|
||||
content: (
|
||||
<CardSelector<SplitMethod, MethodOption>
|
||||
|
||||
14
frontend/src/global.d.ts
vendored
14
frontend/src/global.d.ts
vendored
@@ -26,4 +26,16 @@ declare module 'axios' {
|
||||
}
|
||||
}
|
||||
|
||||
export {};
|
||||
declare module 'posthog-js/react' {
|
||||
import { ReactNode } from 'react';
|
||||
import posthogJs, { PostHogConfig } from 'posthog-js';
|
||||
|
||||
export const PostHogProvider: React.FC<{
|
||||
client?: typeof posthogJs;
|
||||
options?: Partial<PostHogConfig>;
|
||||
apiKey?: string;
|
||||
children?: ReactNode;
|
||||
}>;
|
||||
}
|
||||
|
||||
export { };
|
||||
|
||||
Reference in New Issue
Block a user