improve chat

This commit is contained in:
Peter Maquiran
2024-08-17 22:05:57 +01:00
parent eb615d4335
commit 650c772084
43 changed files with 712 additions and 1540 deletions
@@ -1,6 +1,7 @@
import { Result, ok, err } from 'neverthrow';
import { EntityTable } from 'Dexie';
import { ZodError, ZodObject, ZodSchema } from 'zod';
import { Logger } from 'src/app/services/logger/main/service';
// Define a type for the Result of repository operations
type RepositoryResult<T, E> = Result<T, Error | ZodError<E>>;
@@ -28,6 +29,9 @@ export class DexieRepository<T> {
return err(new Error('Failed to insert document: ' + error.message));
}
} else {
Logger.error(`dexie.js failed to insert into ${this.table.name}, invalid data`, {
data: document
});
return err((dataValidation as unknown as ZodError<T>))
}
}
@@ -45,6 +49,9 @@ export class DexieRepository<T> {
const ids = await this.table.bulkAdd(documents as any);
return ok(ids);
} catch (error) {
Logger.error(`dexie.js failed to insert many into ${this.table.name}, invalid data`, {
data: document
});
return err(new Error('Failed to insert multiple documents: ' + error.message));
}
}