@difizen/magent-au
Version:
32 lines • 1.12 kB
JavaScript
import { ManaModule } from '@difizen/mana-app';
import { ToolConfigFactory, ToolConfigOption, ToolFactory, ToolModelOption } from "./protocol.js";
import { ToolConfigManager } from "./tool-config-manager.js";
import { ToolConfig } from "./tool-config.js";
import { ToolManager } from "./tool-manager.js";
import { ToolModel } from "./tool-model.js";
import { ToolsModalContribution } from "./tools-modal/index.js";
export var ToolModule = ManaModule.create().register(ToolManager, ToolModel, ToolConfig, ToolConfigManager, ToolsModalContribution, {
token: ToolConfigFactory,
useFactory: function useFactory(ctx) {
return function (option) {
var child = ctx.container.createChild();
child.register({
token: ToolConfigOption,
useValue: option
});
return child.get(ToolConfig);
};
}
}, {
token: ToolFactory,
useFactory: function useFactory(ctx) {
return function (option) {
var child = ctx.container.createChild();
child.register({
token: ToolModelOption,
useValue: option
});
return child.get(ToolModel);
};
}
});