const imperialCountries = new Set(['us', 'lr', 'mm']); /** Возвращает текущую систему мер (metric/imperial) и список скрытых параметров; сохраняет выбор в localStorage. */ export function useUnits() { const clientCountryCode = useState('clientCountryCode', () => ''); const savedUnits = import.meta.client ? localStorage.getItem('units') : null; const defaultUnits = imperialCountries.has(clientCountryCode.value) ? 'imperial' : 'metric'; const units = useState('units', () => savedUnits || defaultUnits); const hiddenByUnits = computed(() => { if (units.value === 'metric') { return new Set(['height_in', 'weight_lb']); } return new Set(['height_cm', 'weight_kg']); }); watch(units, (val) => { localStorage.setItem('units', val); }); return { units, hiddenByUnits }; }