Add toggle

This commit is contained in:
Connor Yoh
2025-10-24 18:05:27 +01:00
parent 7e828fe730
commit 986bb2bd6f
15 changed files with 162 additions and 263 deletions

View File

@@ -2,11 +2,12 @@
* AddPageNumbersPositionSettings - Position & Pages step
*/
import { Stack, TextInput, NumberInput, Divider, Text, SegmentedControl } from "@mantine/core";
import { Stack, TextInput, NumberInput, Divider, Text } from "@mantine/core";
import { useTranslation } from "react-i18next";
import { AddPageNumbersParameters } from "./useAddPageNumbersParameters";
import { Tooltip } from "../../shared/Tooltip";
import PageNumberPreview from "./PageNumberPreview";
import ProcessingModeToggle from "../../shared/ProcessingModeToggle";
interface AddPageNumbersPositionSettingsProps {
parameters: AddPageNumbersParameters;
@@ -27,26 +28,11 @@ const AddPageNumbersPositionSettings = ({
return (
<Stack gap="lg">
<Stack gap="xs">
<Text size="sm" fw={500}>
{t('addPageNumbers.processingMode.label', 'Processing mode')}
</Text>
<SegmentedControl
value={parameters.processingMode}
onChange={(value) => onParameterChange('processingMode', value as AddPageNumbersParameters['processingMode'])}
data={[
{ label: t('addPageNumbers.processingMode.backend', 'Backend'), value: 'backend' },
{ label: t('addPageNumbers.processingMode.frontend', 'Browser'), value: 'frontend' }
]}
fullWidth
disabled={disabled}
/>
<Text size="xs" c="dimmed">
{parameters.processingMode === 'frontend'
? t('addPageNumbers.processingMode.frontendDescription', 'Stamp page numbers locally (page lists only).')
: t('addPageNumbers.processingMode.backendDescription', 'Use the server for formula-based selection and heavy PDFs.')}
</Text>
</Stack>
<ProcessingModeToggle
value={parameters.processingMode}
onChange={(mode) => onParameterChange('processingMode', mode)}
disabled={disabled}
/>
{/* Position Selection */}
<Stack gap="md">