feat: reiverr-plugin:2.0.0 version checking

This commit is contained in:
Aleksi Lassila
2025-02-12 18:27:17 +02:00
parent dfa59a1994
commit 77cb5d6192
8 changed files with 48 additions and 13 deletions

View File

@@ -1,7 +1,11 @@
import { Injectable, Logger } from '@nestjs/common';
import * as fs from 'fs';
import * as path from 'path';
import { PluginProvider, SourceProvider } from '@aleksilassila/reiverr-plugin';
import {
PluginProvider,
SourceProvider,
getReiverrPluginVersion,
} from '@aleksilassila/reiverr-plugin';
@Injectable()
export class SourceProvidersService {
@@ -43,9 +47,12 @@ export class SourceProvidersService {
try {
// eslint-disable-next-line @typescript-eslint/no-var-requires
const pluginModule = require(pluginPath);
const provider: PluginProvider = new pluginModule.default();
const provider: PluginProvider =
new pluginModule.default() as PluginProvider;
provider.getPlugins().forEach((plugin) => {
plugins[plugin.name] = plugin;
if (plugin._isCompatibleWith(getReiverrPluginVersion())) {
plugins[plugin.name] = plugin;
}
});
} catch (e) {
this.logger.error(`Failed to load plugin from ${pluginPath}: ${e}`);