import { StepInfo, WizardStep, STEPS } from './types'
export function WizardStepper({ steps, currentStep, onStepClick }: {
steps: StepInfo[]
currentStep: WizardStep
onStepClick: (step: WizardStep) => void
}) {
const currentIndex = steps.findIndex(s => s.id === currentStep)
return (
{steps.map((step, index) => {
const isActive = step.id === currentStep
const isCompleted = index < currentIndex
const isClickable = index <= currentIndex + 1
return (
)
})}
)
}
export function EducationCard({ title, content, tips }: { title: string; content: string; tips: string[] }) {
return (
{title}
{content.split('\n\n').map((paragraph, i) => (
{paragraph.split('**').map((part, j) =>
j % 2 === 1 ? {part} : part
)}
))}
Tipps:
{tips.map((tip, i) => (
-
•
{tip}
))}
)
}
export function Sidebar({ currentStepIndex }: { currentStepIndex: number }) {
return (
{/* Progress */}
Fortschritt
Schritt {currentStepIndex + 1} von {STEPS.length}
{Math.round(((currentStepIndex + 1) / STEPS.length) * 100)}%
{/* Pipeline Overview */}
Pipeline Flow
Git Push/Tag
↓
GitHub Actions
↓
Unity Build
↓
Deploy / Upload
{/* Quick Links */}
Wichtige Dateien
- YAML: ci/build-all-platforms.yml
- C#: Assets/Editor/BuildScript.cs
- JSON: Assets/Resources/version.json
- Plist: ci/ios-export-options.plist
)
}