import { Seeder, SeederFactoryManager } from 'typeorm-extension'; import { DataSource } from 'typeorm'; import { Area } from '../../entity/area.entity'; export default class AreaSeeder implements Seeder { public async run( dataSource: DataSource, factoryManager: SeederFactoryManager ): Promise { const areaRepository = dataSource.getRepository(Area); const areas = [ { name: 'Australia', code: 'AU' }, { name: 'Canada', code: 'CA' }, { name: 'United States', code: 'US' }, { name: 'Germany', code: 'DE' }, { name: 'Poland', code: 'PL' }, ]; for (const areaData of areas) { const existingArea = await areaRepository.findOne({ where: [ { name: areaData.name }, { code: areaData.code } ] }); if (!existingArea) { const newArea = areaRepository.create(areaData); await areaRepository.save(newArea); } } } }