refactor(merge,split,json): adopt streaming approach and standardize types, address gradle warnings (#5803)

Co-authored-by: Anthony Stirling <[email protected]>
Co-authored-by: Balázs <[email protected]>
This commit is contained in:
Balázs Szücs
2026-03-02 21:55:07 +00:00
committed by GitHub
co-authored by Anthony Stirling Balázs
parent 0c46f77179
commit fd1b7abc83
66 changed files with 1425 additions and 1430 deletions
@@ -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() !== "";
+1 -1
View File
@@ -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>