diff --git a/extensions/model-extension/src/index.ts b/extensions/model-extension/src/index.ts index c63510c37..e29084bc2 100644 --- a/extensions/model-extension/src/index.ts +++ b/extensions/model-extension/src/index.ts @@ -20,6 +20,10 @@ import { deleteModelFiles } from './legacy/delete' declare const SETTINGS: Array +export enum Settings { + huggingfaceToken = 'hugging-face-access-token', +} + /** * A extension for models */ @@ -33,10 +37,29 @@ export default class JanModelExtension extends ModelExtension { async onLoad() { this.registerSettings(SETTINGS) + // Configure huggingface token if available + const huggingfaceToken = await this.getSetting( + Settings.huggingfaceToken, + undefined + ) + if (huggingfaceToken) + this.cortexAPI.configs({ huggingface_token: huggingfaceToken }) + // Listen to app download events this.handleDesktopEvents() } + /** + * Subscribe to settings update and make change accordingly + * @param key + * @param value + */ + onSettingUpdate(key: string, value: T): void { + if (key === Settings.huggingfaceToken) { + this.cortexAPI.configs({ huggingface_token: value }) + } + } + /** * Called when the extension is unloaded. * @override