nitro-converter/src/Main.ts

47 lines
1.5 KiB
TypeScript
Raw Normal View History

2021-02-17 06:14:07 +01:00
import 'reflect-metadata';
import { container } from 'tsyringe';
import { Configuration } from './common/config/Configuration';
2021-02-22 06:39:02 +01:00
import { IConverter } from './common/converters/IConverter';
2021-02-20 05:10:06 +01:00
import { EffectConverter } from './converters/effect/EffectConverter';
2021-02-22 06:39:02 +01:00
import { ExternalTextsConverter } from './converters/externaltexts/ExternalTextsConverter';
2021-02-18 07:03:08 +01:00
import { FigureConverter } from './converters/figure/FigureConverter';
2021-08-03 09:15:05 +02:00
import { FigureDataConverter } from './converters/figuredata/FigureDataConverter';
2021-02-17 06:14:07 +01:00
import { FurnitureConverter } from './converters/furniture/FurnitureConverter';
import { PetConverter } from './converters/pet/PetConverter';
2021-02-21 06:27:46 +01:00
import { ProductDataConverter } from './converters/productdata/ProductDataConverter';
2021-02-17 06:14:07 +01:00
(async () =>
{
2021-02-25 00:24:09 +01:00
checkNodeVersion();
2021-08-03 20:17:03 +02:00
const config = container.resolve(Configuration);
2021-01-28 09:12:04 +01:00
await config.init();
2021-02-22 06:39:02 +01:00
const converters = [
ProductDataConverter,
ExternalTextsConverter,
FigureConverter,
EffectConverter,
FurnitureConverter,
2021-08-03 09:15:05 +02:00
PetConverter,
FigureDataConverter
2021-02-22 06:39:02 +01:00
];
2021-02-21 06:27:46 +01:00
2021-02-22 06:39:02 +01:00
for(const converterClass of converters)
2021-02-21 06:27:46 +01:00
{
2021-02-22 06:39:02 +01:00
const converter = (container.resolve<any>(converterClass) as IConverter);
2021-02-21 06:27:46 +01:00
2021-02-22 06:39:02 +01:00
await converter.convertAsync();
}
2021-02-17 06:14:07 +01:00
})();
2021-02-25 00:24:09 +01:00
function checkNodeVersion()
{
const version = process.version.replace('v', '');
const major = version.split('.')[0];
if(parseInt(major) < 14)
{
throw new Error('Invalid node version: ' + version + ' please use >= 14');
}
}