import { useNavigate } from 'react-router'; import { getOnboardingStore } from '@sd/client'; import { Button } from '@sd/ui'; import { Form, RadioGroup, useZodForm, z } from '@sd/ui/src/forms'; import { OnboardingContainer, OnboardingDescription, OnboardingTitle } from './Layout'; import { useUnlockOnboardingScreen } from './Progress'; export const shareTelemetry = RadioGroup.options([ z.literal('share-telemetry'), z.literal('no-telemetry') ]).details({ 'share-telemetry': { heading: 'Share anonymous usage', description: 'Share completely anonymous telemetry data to help the developers improve the app' }, 'no-telemetry': { heading: 'Share nothing', description: 'Do not share any telemetry data with the developers' } }); const schema = z.object({ shareTelemetry: shareTelemetry.schema }); export default function OnboardingPrivacy() { const navigate = useNavigate(); useUnlockOnboardingScreen(); const form = useZodForm({ schema, defaultValues: { shareTelemetry: 'share-telemetry' } }); const onSubmit = form.handleSubmit(async (data) => { getOnboardingStore().shareTelemetry = data.shareTelemetry === 'share-telemetry'; navigate('/onboarding/creating-library', { replace: true }); }); return (
Your Privacy Spacedrive is built for privacy, that's why we're open source and local first. So we'll make it very clear what data is shared with us.
{shareTelemetry.options.map(({ value, heading, description }) => (

{heading}

{description}

))}
); }