chore: try catch legacy assistant creation

This commit is contained in:
Louis 2024-10-21 21:42:55 +07:00
parent 718ee8dfa9
commit 523c745150
No known key found for this signature in database
GPG Key ID: 44FA9F4D33C37DE2
2 changed files with 73 additions and 67 deletions

View File

@ -63,12 +63,15 @@ export default class JanAssistantExtension extends AssistantExtension {
} }
async getAssistants(): Promise<Assistant[]> { async getAssistants(): Promise<Assistant[]> {
try {
// get all the assistant directories // get all the assistant directories
// get all the assistant metadata json // get all the assistant metadata json
const results: Assistant[] = [] const results: Assistant[] = []
const allFileName: string[] = await fs.readdirSync( const allFileName: string[] = await fs.readdirSync(
JanAssistantExtension._homeDir JanAssistantExtension._homeDir
) )
for (const fileName of allFileName) { for (const fileName of allFileName) {
const filePath = await joinPath([ const filePath = await joinPath([
JanAssistantExtension._homeDir, JanAssistantExtension._homeDir,
@ -96,6 +99,10 @@ export default class JanAssistantExtension extends AssistantExtension {
} }
return results return results
} catch (err) {
console.debug(err)
return [this.defaultAssistant]
}
} }
async deleteAssistant(assistant: Assistant): Promise<void> { async deleteAssistant(assistant: Assistant): Promise<void> {
@ -112,7 +119,10 @@ export default class JanAssistantExtension extends AssistantExtension {
} }
private async createJanAssistant(): Promise<void> { private async createJanAssistant(): Promise<void> {
const janAssistant: Assistant = { await this.createAssistant(this.defaultAssistant)
}
private defaultAssistant: Assistant = {
avatar: '', avatar: '',
thread_location: undefined, thread_location: undefined,
id: 'jan', id: 'jan',
@ -144,7 +154,4 @@ Helpful Answer:`,
file_ids: [], file_ids: [],
metadata: undefined, metadata: undefined,
} }
await this.createAssistant(janAssistant)
}
} }

View File

@ -87,7 +87,7 @@ export default class JanModelExtension extends ModelExtension {
* should compare and try import * should compare and try import
*/ */
let currentModels: Model[] = [] let currentModels: Model[] = []
try {
if (!localStorage.getItem(ExtensionEnum.downloadedModels)) { if (!localStorage.getItem(ExtensionEnum.downloadedModels)) {
// Updated from an older version than 0.5.5 // Updated from an older version than 0.5.5
// Scan through the models folder and import them (Legacy flow) // Scan through the models folder and import them (Legacy flow)
@ -96,15 +96,14 @@ export default class JanModelExtension extends ModelExtension {
return models ?? [] return models ?? []
}) })
} else { } else {
try {
currentModels = JSON.parse( currentModels = JSON.parse(
localStorage.getItem(ExtensionEnum.downloadedModels) localStorage.getItem(ExtensionEnum.downloadedModels)
) as Model[] ) as Model[]
}
} catch (e) { } catch (e) {
currentModels = [] currentModels = []
console.error(e) console.error(e)
} }
}
/** /**
* Here we are filtering out the models that are not imported * Here we are filtering out the models that are not imported