export const useUnits = () => { const supabase = useSupabase() /** * Get all units */ const getUnits = async () => { const { data, error } = await supabase .from('units') .select('*') .order('unit_type', { ascending: true }) .order('name', { ascending: true }) if (error) { console.error('Error fetching units:', error) return { data: null, error } } return { data, error: null } } /** * Get default unit for a type */ const getDefaultUnit = async (unitType: 'weight' | 'volume' | 'count' | 'custom') => { const { data, error } = await supabase .from('units') .select('*') .eq('unit_type', unitType) .eq('is_default', true) .single() if (error) { console.error('Error fetching default unit:', error) return { data: null, error } } return { data, error: null } } /** * Convert quantity between units */ const convertUnit = (quantity: number, fromFactor: number, toFactor: number): number => { return (quantity * fromFactor) / toFactor } return { getUnits, getDefaultUnit, convertUnit } }