* chore: expose fs apis * chore: correct electron import path * update download api Signed-off-by: James <james@jan.ai> * update chat_completion Signed-off-by: James <james@jan.ai> * fix electron import Signed-off-by: James <james@jan.ai> * feat: adding API support at 1337 (#991) Signed-off-by: James <james@jan.ai> Co-authored-by: James <james@jan.ai> * feat: Add /chat/completion api and handler * chore: add todo for modelList * chore: read engine.json for openai chat_completion (#1030) Signed-off-by: James <james@jan.ai> Co-authored-by: James <james@jan.ai> * refactor: move routes to shared node module * refactor: exported modules from core with types (#1172) * refactor: exported modules from core with types * fix: fix file reading args * refactor: fileManager handles * fix: app issues with server refactoring * refactor: shared server module (#1210) * chore: resolve main * chore: update makefile --------- Signed-off-by: James <james@jan.ai> Co-authored-by: James <james@jan.ai> Co-authored-by: NamH <NamNh0122@gmail.com> Co-authored-by: hiro <vuonghoainam.work@gmail.com>
31 lines
681 B
TypeScript
31 lines
681 B
TypeScript
/**
|
|
* Manages imported modules.
|
|
*/
|
|
export class ModuleManager {
|
|
public requiredModules: Record<string, any> = {}
|
|
|
|
public static instance: ModuleManager = new ModuleManager()
|
|
|
|
constructor() {
|
|
if (ModuleManager.instance) {
|
|
return ModuleManager.instance
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Sets a module.
|
|
* @param {string} moduleName - The name of the module.
|
|
* @param {any | undefined} nodule - The module to set, or undefined to clear the module.
|
|
*/
|
|
setModule(moduleName: string, nodule: any | undefined) {
|
|
this.requiredModules[moduleName] = nodule
|
|
}
|
|
|
|
/**
|
|
* Clears all imported modules.
|
|
*/
|
|
clearImportedModules() {
|
|
this.requiredModules = {}
|
|
}
|
|
}
|