@difizen/magent-au
Version:
21 lines • 746 B
JavaScript
import { ManaModule } from '@difizen/mana-app';
import { PluginManager } from "./plugin-manager.js";
import { OpenAPIPluginModel, PluginModel } from "./plugin-model.js";
import { PluginModelOption } from "./protocol.js";
import { PluginFactory } from "./protocol.js";
export var PluginModule = ManaModule.create().register(PluginModel, OpenAPIPluginModel, PluginManager, {
token: PluginFactory,
useFactory: function useFactory(ctx) {
return function (option) {
var child = ctx.container.createChild();
child.register({
token: PluginModelOption,
useValue: option
});
if (option.openapi_desc) {
return child.get(OpenAPIPluginModel);
}
return child.get(PluginModel);
};
}
});