mirror of
https://github.com/Drop-OSS/drop.git
synced 2025-11-09 20:12:10 +10:00
metadata engine
This commit is contained in:
22
server/plugins/metadata.ts
Normal file
22
server/plugins/metadata.ts
Normal file
@ -0,0 +1,22 @@
|
||||
import { MetadataHandler, MetadataProvider } from "../internal/metadata";
|
||||
import { GiantBombProvider } from "../internal/metadata/giantbomb";
|
||||
|
||||
export const GlobalMedataHandler = new MetadataHandler();
|
||||
|
||||
const providerCreators: Array<() => MetadataProvider> = [() => new GiantBombProvider()];
|
||||
|
||||
export default defineNitroPlugin(async (nitro) => {
|
||||
for (const creator of providerCreators) {
|
||||
try {
|
||||
const instance = creator();
|
||||
GlobalMedataHandler.addProvider(instance);
|
||||
}
|
||||
catch (e) {
|
||||
console.warn(e);
|
||||
}
|
||||
}
|
||||
|
||||
nitro.hooks.hook('request', (h3) => {
|
||||
h3.context.metadataHandler = GlobalMedataHandler;
|
||||
})
|
||||
});
|
||||
Reference in New Issue
Block a user