'use client' import { CompanyProfile, TargetMarket, TARGET_MARKET_LABELS } from '@/lib/sdk/types' const STATES_BY_COUNTRY: Record = { DE: { label: 'Bundesland', options: [ 'Baden-W\u00FCrttemberg', 'Bayern', 'Berlin', 'Brandenburg', 'Bremen', 'Hamburg', 'Hessen', 'Mecklenburg-Vorpommern', 'Niedersachsen', 'Nordrhein-Westfalen', 'Rheinland-Pfalz', 'Saarland', 'Sachsen', 'Sachsen-Anhalt', 'Schleswig-Holstein', 'Th\u00FCringen', ], }, AT: { label: 'Bundesland', options: [ 'Burgenland', 'K\u00E4rnten', 'Nieder\u00F6sterreich', 'Ober\u00F6sterreich', 'Salzburg', 'Steiermark', 'Tirol', 'Vorarlberg', 'Wien', ], }, CH: { label: 'Kanton', options: [ 'Aargau', 'Appenzell Ausserrhoden', 'Appenzell Innerrhoden', 'Basel-Landschaft', 'Basel-Stadt', 'Bern', 'Freiburg', 'Genf', 'Glarus', 'Graub\u00FCnden', 'Jura', 'Luzern', 'Neuenburg', 'Nidwalden', 'Obwalden', 'Schaffhausen', 'Schwyz', 'Solothurn', 'St. Gallen', 'Tessin', 'Thurgau', 'Uri', 'Waadt', 'Wallis', 'Zug', 'Z\u00FCrich', ], }, } export function StepLocations({ data, onChange, }: { data: Partial onChange: (updates: Partial) => void }) { const toggleMarket = (market: TargetMarket) => { const current = data.targetMarkets || [] if (current.includes(market)) { onChange({ targetMarkets: current.filter(m => m !== market) }) } else { onChange({ targetMarkets: [...current, market] }) } } const countryStates = data.headquartersCountry ? STATES_BY_COUNTRY[data.headquartersCountry] : null const stateLabel = countryStates?.label || 'Region / Provinz' return (
{/* Country */}
{data.headquartersCountry === 'other' && (
onChange({ headquartersCountryOther: e.target.value })} placeholder="z.B. Vereinigtes Königreich" className="w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-purple-500 focus:border-transparent" />
)} {/* Street + House Number */}
onChange({ headquartersStreet: e.target.value })} placeholder="Musterstraße 42" className="w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-purple-500 focus:border-transparent" />
{/* PLZ + City */}
onChange({ headquartersZip: e.target.value })} placeholder="10115" className="w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-purple-500 focus:border-transparent" />
onChange({ headquartersCity: e.target.value })} placeholder="Berlin" className="w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-purple-500 focus:border-transparent" />
{/* State / Bundesland / Kanton */}
{countryStates ? ( ) : ( onChange({ headquartersState: e.target.value })} placeholder="Region / Provinz" className="w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-purple-500 focus:border-transparent" /> )}
{Object.entries(TARGET_MARKET_LABELS).map(([value, { label, description }]) => ( ))}
) }