import { pool } from '../db.js'; export async function seedRegions() { console.log('📍 Seeding global regions (States/Provinces)...'); const regions = [ // Brazil { name: 'São Paulo', country: 'BR', code: 'SP' }, { name: 'Rio de Janeiro', country: 'BR', code: 'RJ' }, { name: 'Minas Gerais', country: 'BR', code: 'MG' }, // USA { name: 'California', country: 'US', code: 'CA' }, { name: 'New York', country: 'US', code: 'NY' }, { name: 'Texas', country: 'US', code: 'TX' }, // Japan (keep some for legacy compat if needed, but renamed) { name: 'Tokyo', country: 'JP', code: '13' }, // maintaining code '13' for existing logic if any { name: 'Osaka', country: 'JP', code: '27' } ]; try { for (const reg of regions) { await pool.query(` INSERT INTO regions (name, country_code, code) VALUES ($1, $2, $3) ON CONFLICT (id) DO NOTHING -- ID is serial, conflict usually on unique constraint if added. -- For now, just insert. If code usage is heavy, unique index on code or country+code. `, [reg.name, reg.country, reg.code]); } // Note: Without unique constraint on code in new schema, we might dup if ran twice without reset. // But reset handles it. console.log(` ✓ ${regions.length} regions seeded`); } catch (error) { console.error(' ❌ Error seeding regions:', error.message); throw error; } }