import 'reflect-metadata';
import { config } from 'dotenv';
import { resolve } from 'path';

config({ path: resolve(__dirname, '../../.env') });

import { NestFactory } from '@nestjs/core';
import { AppModule } from '../app.module';
import { ApprovedFirstLastMileDemoBookingsSeeder } from '../seed/approved-first-lastmile-demo-bookings.seeder';

async function main() {
  const app = await NestFactory.createApplicationContext(AppModule, {
    logger: ['error', 'warn', 'log'],
  });

  try {
    const seeder = app.get(ApprovedFirstLastMileDemoBookingsSeeder);
    await seeder.run();
    console.log('Approved first/last-mile demo bookings seeded.');
  } finally {
    await app.close();
  }
}

main().catch((err) => {
  console.error('Approved first/last-mile demo booking seed failed:', err);
  process.exit(1);
});
