This commit is contained in:
2026-01-21 08:21:19 +01:00
parent 4733e1a1cc
commit fd6e7c44e1
46 changed files with 3165 additions and 456 deletions

View File

@@ -0,0 +1,50 @@
import 'dotenv/config';
import { query } from '../src/db';
async function verifyWaitlistTable() {
try {
console.log('Verifying waitlist_leads table...');
const result = await query(`
SELECT EXISTS (
SELECT FROM information_schema.tables
WHERE table_schema = 'public'
AND table_name = 'waitlist_leads'
);
`);
if (!result.rows[0].exists) {
console.log('Table waitlist_leads does not exist. Creating it...');
await query(`
CREATE TABLE IF NOT EXISTS waitlist_leads (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
email VARCHAR(255) UNIQUE NOT NULL,
source VARCHAR(50) DEFAULT 'landing_page',
referrer TEXT,
created_at TIMESTAMP DEFAULT NOW()
);
CREATE INDEX IF NOT EXISTS idx_waitlist_leads_email ON waitlist_leads(email);
CREATE INDEX IF NOT EXISTS idx_waitlist_leads_created_at ON waitlist_leads(created_at);
`);
console.log('Table waitlist_leads created successfully.');
} else {
console.log('Table waitlist_leads already exists.');
// Check columns just in case
const columns = await query(`
SELECT column_name, data_type
FROM information_schema.columns
WHERE table_name = 'waitlist_leads';
`);
console.log('Columns:', columns.rows.map(r => r.column_name).join(', '));
}
console.log('Verification complete.');
} catch (error) {
console.error('Error verifying waitlist table:', error);
} finally {
process.exit(0);
}
}
verifyWaitlistTable();