@kubun/db 0.2.0 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/db.d.ts CHANGED
@@ -1,9 +1,14 @@
1
+ import { EventEmitter } from '@enkaku/event';
1
2
  import type { Adapter } from '@kubun/db-adapter';
2
- import type { DocumentID, DocumentModelID } from '@kubun/id';
3
+ import { type DocumentID, DocumentModelID } from '@kubun/id';
3
4
  import type { DocumentModel, DocumentModelsRecord } from '@kubun/protocol';
4
5
  import { Kysely, type Migration, type Transaction } from 'kysely';
5
6
  import type { Database, Document, DocumentData, GraphModel, InsertDocumentAttachment, ListDocumentsParams, QueryDocumentsParams, QueryDocumentsResult } from './types.js';
6
7
  export type Migrations = Record<string, Migration>;
8
+ export type DBEvents = {
9
+ 'document:created': Document;
10
+ 'document:saved': Document;
11
+ };
7
12
  export type DBParams = {
8
13
  adapter: Adapter;
9
14
  };
@@ -36,6 +41,7 @@ export declare class KubunDB {
36
41
  constructor(params: DBParams);
37
42
  /** @internal */
38
43
  get adapter(): Adapter;
44
+ get events(): EventEmitter<DBEvents>;
39
45
  getDB<T extends Database>(): Promise<Kysely<T>>;
40
46
  getMigrations(): Migrations;
41
47
  close(): Promise<void>;
package/lib/db.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
package/lib/db.js CHANGED
@@ -1,3 +1,5 @@
1
+ import { EventEmitter } from '@enkaku/event';
2
+ import { DocumentModelID } from '@kubun/id';
1
3
  import { Kysely, Migrator, ParseJSONResultsPlugin } from 'kysely';
2
4
  import { serializeCursor } from './cursor.js';
3
5
  import { getMigrations } from './migrations/migrations.js';
@@ -28,9 +30,14 @@ function documentModelToTable(id, model) {
28
30
  fields_meta: JSON.stringify(model.fieldsMeta)
29
31
  };
30
32
  }
33
+ function toGlobalInterfaceID(modelID, interfaceID) {
34
+ const id = DocumentModelID.fromString(interfaceID);
35
+ return id.isLocal ? id.toGlobal(DocumentModelID.fromString(modelID)).toString() : interfaceID;
36
+ }
31
37
  export class KubunDB {
32
38
  #adapter;
33
39
  #db;
40
+ #events = new EventEmitter();
34
41
  #ready;
35
42
  constructor(params){
36
43
  this.#adapter = params.adapter;
@@ -45,6 +52,9 @@ export class KubunDB {
45
52
  /** @internal */ get adapter() {
46
53
  return this.#adapter;
47
54
  }
55
+ get events() {
56
+ return this.#events;
57
+ }
48
58
  getDB() {
49
59
  return this.#ready.then(()=>this.#db);
50
60
  }
@@ -80,14 +90,26 @@ export class KubunDB {
80
90
  id: graphModelID,
81
91
  name
82
92
  }).onConflict((oc)=>oc.doNothing()).execute();
83
- await Promise.all(Object.entries(params.record).map(async ([id, model])=>{
84
- await this.#addDocumentModel({
85
- id,
86
- graphModelID,
87
- model,
88
- transaction: trx
93
+ const entries = Object.entries(params.record);
94
+ const added = new Set();
95
+ while(added.size < entries.length){
96
+ // Get models that have not been added yet and have all their interfaces already added
97
+ const toAdd = entries.filter(([id, model])=>{
98
+ return !added.has(id) && model.interfaces.every((iid)=>added.has(toGlobalInterfaceID(id, iid)));
89
99
  });
90
- }));
100
+ if (toAdd.length === 0) {
101
+ throw new Error('Could not create graph: no valid model to add');
102
+ }
103
+ await Promise.all(toAdd.map(async ([id, model])=>{
104
+ await this.#addDocumentModel({
105
+ id,
106
+ graphModelID,
107
+ model,
108
+ transaction: trx
109
+ });
110
+ added.add(id);
111
+ }));
112
+ }
91
113
  return graphModelID;
92
114
  });
93
115
  }
@@ -101,7 +123,7 @@ export class KubunDB {
101
123
  await transaction.insertInto('kubun_document_models').values(documentModelToTable(id, model)).onConflict((oc)=>oc.doNothing()).execute();
102
124
  for (const interfaceID of model.interfaces){
103
125
  await transaction.insertInto('kubun_document_model_interfaces').values({
104
- interface_id: interfaceID,
126
+ interface_id: toGlobalInterfaceID(id, interfaceID),
105
127
  implementation_id: id
106
128
  }).onConflict((oc)=>oc.doNothing()).execute();
107
129
  }
@@ -151,21 +173,23 @@ export class KubunDB {
151
173
  async listDocuments(params) {
152
174
  await this.#ready;
153
175
  const [first, ...rest] = params.modelIDs;
154
- let query = this.#db// @ts-ignore unknown table by Kysely
155
- .selectFrom(`k_${first}`).selectAll().where('id', 'in', params.docIDS);
176
+ let query = this.#db.selectFrom(`k_${first}`).selectAll().where('id', 'in', params.docIDs);
156
177
  for (const model of rest){
157
178
  query = query.unionAll((eb)=>{
158
- // @ts-ignore unknown table by Kysely
159
- return eb.selectFrom(`k_${model}`).selectAll().where('id', 'in', params.docIDS);
179
+ return eb.selectFrom(`k_${model}`).selectAll().where('id', 'in', params.docIDs);
160
180
  });
161
181
  }
162
182
  return await query.execute();
163
183
  }
164
184
  async queryDocuments(params) {
165
- const { filter, orderBy, owner, ...pagination } = params;
185
+ const { filter, modelIDs, orderBy, owner, ...pagination } = params;
166
186
  const isReverse = params.last != null;
167
187
  await this.#ready;
168
- let query = this.#db.selectFrom(`k_${params.model}`).selectAll();
188
+ const [first, ...rest] = modelIDs;
189
+ let query = this.#db.selectFrom(`k_${first}`).selectAll();
190
+ for (const model of rest){
191
+ query = query.unionAll((eb)=>eb.selectFrom(`k_${model}`).selectAll());
192
+ }
169
193
  if (owner != null) {
170
194
  query = query.where('owner', '=', owner);
171
195
  }
@@ -219,7 +243,7 @@ export class KubunDB {
219
243
  await this.#ready;
220
244
  const id = params.id.toString();
221
245
  const model = params.id.model.toString();
222
- return await this.#db.transaction().setIsolationLevel('read committed').execute(async (trx)=>{
246
+ const doc = await this.#db.transaction().setIsolationLevel('read committed').execute(async (trx)=>{
223
247
  const doc = await trx.insertInto(`k_${model}`).values({
224
248
  id,
225
249
  owner: params.owner,
@@ -233,11 +257,13 @@ export class KubunDB {
233
257
  }).execute();
234
258
  return doc;
235
259
  });
260
+ this.#events.emit('document:created', doc);
261
+ return doc;
236
262
  }
237
263
  async saveDocument(params) {
238
264
  await this.#ready;
239
265
  const id = params.id.toString();
240
- return await this.#db.transaction().setIsolationLevel('read committed').execute(async (trx)=>{
266
+ const doc = await this.#db.transaction().setIsolationLevel('read committed').execute(async (trx)=>{
241
267
  const doc = await trx.updateTable(`k_${params.id.model.toString()}`).set({
242
268
  data: params.data ? this.#adapter.encodeJSON(params.data) : null,
243
269
  updated_at: new Date().toISOString()
@@ -247,6 +273,8 @@ export class KubunDB {
247
273
  }).where('id', '=', id).execute();
248
274
  return doc;
249
275
  });
276
+ this.#events.emit('document:saved', doc);
277
+ return doc;
250
278
  }
251
279
  async addAttachments(attachments) {
252
280
  await this.#ready;
package/lib/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export { type CreateGraphParams, type DBParams, type GraphModelWithRecord, KubunDB, type Migrations, } from './db.js';
1
+ export { type CreateGraphParams, type DBEvents, type DBParams, type GraphModelWithRecord, KubunDB, type Migrations, } from './db.js';
2
2
  export type * from './types.js';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,QAAQ,EACb,KAAK,oBAAoB,EACzB,OAAO,EACP,KAAK,UAAU,GAChB,MAAM,SAAS,CAAA;AAChB,mBAAmB,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,oBAAoB,EACzB,OAAO,EACP,KAAK,UAAU,GAChB,MAAM,SAAS,CAAA;AAChB,mBAAmB,YAAY,CAAA"}
package/lib/types.d.ts CHANGED
@@ -140,10 +140,10 @@ export type CursorDocument = {
140
140
  };
141
141
  export type ListDocumentsParams = {
142
142
  modelIDs: Array<string>;
143
- docIDS: Array<string>;
143
+ docIDs: Array<string>;
144
144
  };
145
145
  export type QueryDocumentsParams = ConnectionArguments & {
146
- model: string | null;
146
+ modelIDs: Array<string>;
147
147
  filter?: DocumentFilter;
148
148
  orderBy?: DocumentOrderBy;
149
149
  owner?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kubun/db",
3
- "version": "0.2.0",
3
+ "version": "0.2.2",
4
4
  "license": "see LICENSE.md",
5
5
  "keywords": [],
6
6
  "type": "module",
@@ -16,12 +16,13 @@
16
16
  "sideEffects": false,
17
17
  "dependencies": {
18
18
  "@enkaku/codec": "^0.11.0",
19
+ "@enkaku/event": "^0.11.0",
19
20
  "kysely": "^0.27.6"
20
21
  },
21
22
  "devDependencies": {
22
23
  "@kubun/db-adapter": "^0.2.0",
23
24
  "@kubun/id": "^0.2.0",
24
- "@kubun/protocol": "^0.2.0"
25
+ "@kubun/protocol": "^0.2.4"
25
26
  },
26
27
  "scripts": {
27
28
  "build:clean": "del lib",