mirror of
https://github.com/AeThex-Corporation/AeThex-OS.git
synced 2026-04-18 06:17:21 +00:00
- ModuleManager: Central tracking for installed marketplace modules - DataAnalyzerWidget: Real-time CPU/RAM/Battery/Storage widget (unlocked by Data Analyzer module) - BottomNavBar: Navigation bar for Projects/Chat/Marketplace/Settings - RootShell: Real root command execution utility - TerminalActivity: Full root shell with neofetch, sysinfo, real Linux commands - Terminal Pro module: Adds aliases (ll, la, h), command history - ArcadeActivity + SnakeGame: Pixel Arcade module unlocks retro games - fade_in/fade_out animations for smooth transitions
39 lines
1.1 KiB
JavaScript
39 lines
1.1 KiB
JavaScript
const { createClient } = require('@supabase/supabase-js');
|
|
const fs = require('fs');
|
|
require('dotenv').config();
|
|
|
|
async function applyMigration() {
|
|
const supabase = createClient(
|
|
process.env.SUPABASE_URL,
|
|
process.env.SUPABASE_SERVICE_ROLE_KEY
|
|
);
|
|
|
|
const sql = fs.readFileSync('src/backend/database/migrations/001_domain_verifications.sql', 'utf8');
|
|
|
|
console.log('Applying domain verification schema to Supabase...\n');
|
|
|
|
// Split by semicolons and execute each statement
|
|
const statements = sql
|
|
.split(';')
|
|
.map(s => s.trim())
|
|
.filter(s => s.length > 0 && !s.startsWith('--'));
|
|
|
|
for (const statement of statements) {
|
|
try {
|
|
console.log('Executing:', statement.substring(0, 80) + '...');
|
|
const { data, error } = await supabase.rpc('exec_sql', { sql: statement });
|
|
if (error) {
|
|
console.error('Error:', error.message);
|
|
} else {
|
|
console.log('✓ Success');
|
|
}
|
|
} catch (err) {
|
|
console.log('Note:', err.message);
|
|
}
|
|
}
|
|
|
|
console.log('\n✓ Migration complete! Domain verification tables are ready.');
|
|
process.exit(0);
|
|
}
|
|
|
|
applyMigration();
|