diff --git a/src/config.ts b/src/config.ts index 4130f52..89d67d4 100644 --- a/src/config.ts +++ b/src/config.ts @@ -17,6 +17,7 @@ export default { vitMigratedAtBlock: getEnv('VIT_MIGRATED_AT_BLOCK'), vitMigratedTS: Number(getEnv('VIT_MIGRATED_TS')), readMigrateNfts: Boolean(getEnv('READ_MIGRATED_NFTS', '')), + old: getEnv('NFT_OLD', ''), }, archive: { uri: getEnv('ARCHIVE_URI'), diff --git a/src/handlers/cb-nft.ts b/src/handlers/cb-nft.ts index 67ada35..2432dfe 100644 --- a/src/handlers/cb-nft.ts +++ b/src/handlers/cb-nft.ts @@ -3,7 +3,6 @@ import { BatchState } from '../batchState'; import { readFileSync } from 'fs'; import { MasterNftEvent } from '../types'; import { getDate } from '../utils'; -import config from '../config'; import { getCollectionDescription, getCollectionName } from './helpers'; const meta = ProgramMetadata.from(readFileSync('./assets/cb-nft.meta.txt', 'utf8')); @@ -24,8 +23,8 @@ export async function cbNftHandler( let collection = await state.getCollection(source); if (!collection) { const [collectionName, collectionDesc] = await Promise.all([ - getCollectionName(meta, config.nfts.cb), - getCollectionDescription(meta, config.nfts.cb), + getCollectionName(meta, source), + getCollectionDescription(meta, source), ]); collection = state.newCollection(source, collectionName, collectionDesc); } diff --git a/src/handlers/draft-nft.ts b/src/handlers/draft-nft.ts index 3d64be7..077eb14 100644 --- a/src/handlers/draft-nft.ts +++ b/src/handlers/draft-nft.ts @@ -2,7 +2,6 @@ import { ProgramMetadata } from '@gear-js/api'; import { BatchState } from '../batchState'; import { readFileSync } from 'fs'; import { DraftNftEvent } from '../types'; -import config from '../config'; import { getCollectionDescription, getCollectionName } from './helpers'; const meta = ProgramMetadata.from(readFileSync('./assets/draft-nft.meta.txt', 'utf8')); @@ -20,8 +19,8 @@ export async function draftNftHandler( let collection = await state.getCollection(source); if (!collection) { const [collectionName, collectionDesc] = await Promise.all([ - getCollectionName(meta, config.nfts.draft, '0x00'), - getCollectionDescription(meta, config.nfts.draft, '0x01'), + getCollectionName(meta, source, '0x00'), + getCollectionDescription(meta, source, '0x01'), ]); collection = state.newCollection(source, collectionName, collectionDesc); } diff --git a/src/main.ts b/src/main.ts index 0e14fb4..a8fba00 100644 --- a/src/main.ts +++ b/src/main.ts @@ -8,6 +8,11 @@ import { readMigratedNfts } from './handlers/vit-nft'; import { draftNftHandler } from './handlers/draft-nft'; const programs = [config.nfts.cb, config.nfts.vit]; +const simpleNfts = [config.nfts.draft]; + +if (config.nfts.old !== '') { + simpleNfts.push(...config.nfts.old.split(',')); +} let isMigratedNftsSaved = !config.nfts.readMigrateNfts; @@ -38,7 +43,7 @@ processor.run(new TypeormDatabase(), async (ctx) => { if (programs.includes(source)) { await cbNftHandler(state, payload, source, blockNumber, ts); - } else if (source === config.nfts.draft) { + } else if (simpleNfts.includes(source)) { await draftNftHandler(state, payload, source, blockNumber, ts); } }