diff --git a/src/data/data.ts b/src/data/data.ts
index 25612ab..4e1cf2a 100644
--- a/src/data/data.ts
+++ b/src/data/data.ts
@@ -7,6 +7,9 @@ import { Model } from "./models/Model"
export interface DataApi {
add
(model: Model): Promise
update>(model: T): Promise
+ bulkUpdate>(
+ models: T[]
+ ): Promise
remove(id: string): Promise
get>(id: string): Promise
getOrCreate>(
diff --git a/src/data/data.worker.ts b/src/data/data.worker.ts
index 4271fb1..fb6f02e 100644
--- a/src/data/data.worker.ts
+++ b/src/data/data.worker.ts
@@ -67,6 +67,19 @@ class Data {
}
}
+ public async bulkUpdate>(
+ models: T[]
+ ): Promise {
+ if (!this.locale || !models.length) return false
+ try {
+ const result = await this.locale.bulkDocs(models)
+ return result.every((r) => "ok" in r && r.ok)
+ } catch (error) {
+ console.warn(error)
+ return false
+ }
+ }
+
public async remove(id: string): Promise {
try {
const doc = await this.get(id)