managarten/apps-archived/clock/apps/web/src/lib/stores/app-onboarding.svelte.ts
Till JS df7395e57a chore: add archived clock app to apps-archived/
The Clock app source is preserved in apps-archived/ for reference.
This directory is excluded from the pnpm workspace.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 13:07:38 +02:00

82 lines
1.9 KiB
TypeScript

import { createAppOnboardingStore, type AppOnboardingStep } from '@manacore/shared-app-onboarding';
import { userSettings } from './user-settings.svelte';
/**
* Clock-specific onboarding steps
*/
const clockOnboardingSteps: AppOnboardingStep[] = [
{
id: 'features',
type: 'info',
question: 'Willkommen bei Clock!',
description: 'Das kann Clock für dich tun:',
emoji: '🕐',
gradient: { from: 'blue-500', to: 'blue-700' },
bullets: [
'Flexible Timer & Stoppuhr',
'Pomodoro-Technik für produktives Arbeiten',
'Voreingestellte Timer-Dauern',
'Minimalistisches Design',
],
},
{
id: 'defaultTimer',
type: 'select',
question: 'Welche Timer-Dauer nutzt du am häufigsten?',
description: 'Du kannst Timer jederzeit individuell einstellen.',
emoji: '⏱️',
gradient: { from: 'blue-500', to: 'blue-700' },
options: [
{
id: '5',
label: '5 Minuten',
description: 'Für kurze Pausen',
emoji: '⚡',
},
{
id: '15',
label: '15 Minuten',
description: 'Für konzentrierte Einheiten',
emoji: '🎯',
},
{
id: '25',
label: '25 Minuten',
description: 'Pomodoro-Technik (Empfohlen)',
emoji: '🍅',
},
{
id: '45',
label: '45 Minuten',
description: 'Für längere Arbeitsphasen',
emoji: '🧘',
},
],
defaultValue: '25',
},
{
id: 'welcome',
type: 'info',
question: 'Deine Uhr ist bereit!',
description: 'Hier sind einige Tipps:',
emoji: '🎉',
gradient: { from: 'primary', to: 'primary/70' },
bullets: [
'Nutze die Stoppuhr für freie Zeitmessung',
'Stelle Wecker für wichtige Erinnerungen',
'Die Weltuhr zeigt mehrere Zeitzonen gleichzeitig',
'Drücke Cmd/Ctrl+K für die Schnellsuche',
],
},
];
/**
* Clock app onboarding store
*/
export const clockOnboarding = createAppOnboardingStore({
appId: 'clock',
steps: clockOnboardingSteps,
userSettings,
onComplete: async () => {},
onSkip: async () => {},
});