@taylordb/query-builder 0.9.6 → 0.9.9

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.
Files changed (51) hide show
  1. package/README.md +69 -0
  2. package/dist/cjs/@types/query-builder.d.ts +3 -3
  3. package/dist/cjs/@types/type-helpers.d.ts +2 -2
  4. package/dist/cjs/__tests__/query-builder.spec.js +180 -0
  5. package/dist/cjs/__tests__/query-builder.spec.js.map +1 -1
  6. package/dist/cjs/executor.d.ts +3 -1
  7. package/dist/cjs/executor.js +11 -2
  8. package/dist/cjs/executor.js.map +1 -1
  9. package/dist/cjs/fields-processor.d.ts +3 -0
  10. package/dist/cjs/fields-processor.js +26 -0
  11. package/dist/cjs/fields-processor.js.map +1 -0
  12. package/dist/cjs/insert-query-builder.js +5 -1
  13. package/dist/cjs/insert-query-builder.js.map +1 -1
  14. package/dist/cjs/query-builder.d.ts +8 -4
  15. package/dist/cjs/query-builder.js +33 -14
  16. package/dist/cjs/query-builder.js.map +1 -1
  17. package/dist/cjs/selection-builder.d.ts +2 -2
  18. package/dist/cjs/selection-builder.js.map +1 -1
  19. package/dist/cjs/socket-connection.d.ts +1 -0
  20. package/dist/cjs/socket-connection.js +8 -7
  21. package/dist/cjs/socket-connection.js.map +1 -1
  22. package/dist/cjs/update-query-builder.js +4 -1
  23. package/dist/cjs/update-query-builder.js.map +1 -1
  24. package/dist/cjs/where-query-builder.d.ts +3 -3
  25. package/dist/cjs/where-query-builder.js.map +1 -1
  26. package/dist/esm/@types/query-builder.d.ts +3 -3
  27. package/dist/esm/@types/type-helpers.d.ts +2 -2
  28. package/dist/esm/__tests__/query-builder.spec.js +180 -0
  29. package/dist/esm/__tests__/query-builder.spec.js.map +1 -1
  30. package/dist/esm/executor.d.ts +3 -1
  31. package/dist/esm/executor.js +11 -2
  32. package/dist/esm/executor.js.map +1 -1
  33. package/dist/esm/fields-processor.d.ts +3 -0
  34. package/dist/esm/fields-processor.js +22 -0
  35. package/dist/esm/fields-processor.js.map +1 -0
  36. package/dist/esm/insert-query-builder.js +5 -1
  37. package/dist/esm/insert-query-builder.js.map +1 -1
  38. package/dist/esm/query-builder.d.ts +8 -4
  39. package/dist/esm/query-builder.js +33 -14
  40. package/dist/esm/query-builder.js.map +1 -1
  41. package/dist/esm/selection-builder.d.ts +2 -2
  42. package/dist/esm/selection-builder.js.map +1 -1
  43. package/dist/esm/socket-connection.d.ts +1 -0
  44. package/dist/esm/socket-connection.js +8 -7
  45. package/dist/esm/socket-connection.js.map +1 -1
  46. package/dist/esm/update-query-builder.js +4 -1
  47. package/dist/esm/update-query-builder.js.map +1 -1
  48. package/dist/esm/where-query-builder.d.ts +3 -3
  49. package/dist/esm/where-query-builder.js.map +1 -1
  50. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  51. package/package.json +2 -2
package/README.md CHANGED
@@ -13,6 +13,8 @@ This package contains the official TypeScript query builder for TaylorDB. It pro
13
13
  - **Pagination and Sorting**: Easily paginate and sort your query results.
14
14
  - **Batch Queries**: Execute multiple queries in a single request for improved performance.
15
15
  - **Aggregation Queries**: Perform powerful aggregation queries with grouping and aggregate functions.
16
+ - **Transaction Support**: Execute multiple operations in a single atomic transaction.
17
+ - **Attachment Uploads**: Upload files and link them to your records.
16
18
 
17
19
  ## Getting Started
18
20
 
@@ -84,6 +86,73 @@ You can delete data from a table using the `deleteFrom` method.
84
86
  const result = await qb.deleteFrom('customers').where('id', '=', 1).execute();
85
87
  ```
86
88
 
89
+ ### Transactions
90
+
91
+ You can execute a series of operations within a single atomic transaction. If any operation within the transaction fails, all previous operations will be rolled back.
92
+
93
+ ```typescript
94
+ const newCustomer = await qb.transaction(async tx => {
95
+ const customer = await tx
96
+ .insertInto('customers')
97
+ .values({
98
+ firstName: 'John',
99
+ lastName: 'Doe',
100
+ })
101
+ .executeTakeFirst();
102
+
103
+ if (!customer) {
104
+ throw new Error('Customer creation failed.');
105
+ }
106
+
107
+ await tx
108
+ .insertInto('orders')
109
+ .values({
110
+ customerId: customer.id,
111
+ orderDate: new Date().toISOString(),
112
+ total: 100,
113
+ })
114
+ .execute();
115
+
116
+ return customer;
117
+ });
118
+ ```
119
+
120
+ ### Handling Attachments
121
+
122
+ You can upload files and associate them with your records using the `uploadAttachments` method. This is useful for handling things like user avatars, product images, or any other file-based data.
123
+
124
+ First, upload the file(s) to get `Attachment` instances:
125
+
126
+ ```typescript
127
+ const filesToUpload = [
128
+ { file: new Blob(['file content']), name: 'avatar.png' },
129
+ ];
130
+ const attachments = await qb.uploadAttachments(filesToUpload);
131
+ ```
132
+
133
+ Then, you can use the returned `Attachment` instances when creating or updating records. The query builder will automatically convert them into the correct format.
134
+
135
+ ```typescript
136
+ // Create a new customer with an avatar
137
+ const newCustomer = await qb
138
+ .insertInto('customers')
139
+ .values({
140
+ firstName: 'Jane',
141
+ lastName: 'Doe',
142
+ avatar: attachments[0], // Use the Attachment instance
143
+ })
144
+ .executeTakeFirst();
145
+
146
+ // Update an existing customer's avatar
147
+ const { affectedRecords } = await qb
148
+ .update('customers')
149
+ .set({
150
+ avatar: attachments[0], // Use the Attachment instance
151
+ })
152
+ .where('id', '=', 1)
153
+ .execute();
154
+ ```
155
+
87
156
  ### Batch Queries
88
157
 
89
158
  You can execute multiple queries in a single batch request for improved performance. The result will be a tuple that corresponds to the results of each query in the batch.
@@ -1,8 +1,8 @@
1
- import { LinkColumnType } from '@taylordb/shared';
1
+ import { ALinkColumnType } from '@taylordb/shared';
2
2
  export type NonLinkColumnNames<T> = {
3
- [K in keyof T]: T[K] extends LinkColumnType<any, any> ? never : K;
3
+ [K in keyof T]: T[K] extends ALinkColumnType<any, any, any, any, boolean> ? never : K;
4
4
  }[keyof T];
5
5
  export type LinkColumnNames<T> = {
6
- [K in keyof T]: T[K] extends LinkColumnType<any, any> ? K : never;
6
+ [K in keyof T]: T[K] extends ALinkColumnType<any, any, any, any, boolean> ? K : never;
7
7
  }[keyof T];
8
8
  export type ColumnNames<T> = keyof T;
@@ -1,4 +1,4 @@
1
- import { ColumnType, LinkColumnType } from '@taylordb/shared';
1
+ import { ALinkColumnType, ColumnType } from '@taylordb/shared';
2
2
  import { QueryBuilder } from '../query-builder.js';
3
3
  import { AnyDB } from './internal-types.js';
4
4
  import { LinkColumnNames, NonLinkColumnNames } from './query-builder.js';
@@ -18,7 +18,7 @@ export type ResolveSelection<DB extends AnyDB, TName extends keyof DB, TFields e
18
18
  }[number]>;
19
19
  export type ResolveWithPlain<DB extends AnyDB, TName extends keyof DB, TRelations extends (LinkColumnNames<DB[TName]> & string) | readonly (LinkColumnNames<DB[TName]> & string)[], TCurrentSelection> = TCurrentSelection & UnionToIntersection<{
20
20
  [K in TRelations extends readonly any[] ? TRelations[number] : TRelations]: {
21
- [P in K]: TableShape<DB[DB[TName][P] extends LinkColumnType<infer L, any> ? L : never]>[];
21
+ [P in K]: TableShape<DB[DB[TName][P] extends ALinkColumnType<infer L, any, any, any, boolean> ? L : never]>[];
22
22
  };
23
23
  }[TRelations extends readonly any[] ? TRelations[number] : TRelations]>;
24
24
  export type ResolveWithObject<TRelations extends Record<string, (qb: any) => QueryBuilder<any, any, any, any>>, TCurrentSelection> = TCurrentSelection & {
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const shared_1 = require("@taylordb/shared");
3
4
  const index_js_1 = require("../index.js");
4
5
  const socket_connection_js_1 = require("../socket-connection.js");
5
6
  jest.mock('socket.io-client', () => {
@@ -21,6 +22,7 @@ describe('QueryBuilder', () => {
21
22
  // @ts-ignore
22
23
  const qb = (0, index_js_1.createQueryBuilder)({
23
24
  baseUrl: 'http://localhost',
25
+ baseId: 'test-base-id',
24
26
  apiKey: 'test',
25
27
  });
26
28
  it('should compile a select query and execute', async () => {
@@ -196,6 +198,7 @@ describe('QueryBuilder', () => {
196
198
  // @ts-ignore
197
199
  const qb = (0, index_js_1.createQueryBuilder)({
198
200
  baseUrl: 'http://localhost',
201
+ baseId: 'test-base-id',
199
202
  apiKey: 'test',
200
203
  });
201
204
  await qb.transaction(txQb => {
@@ -225,6 +228,7 @@ describe('QueryBuilder', () => {
225
228
  // @ts-ignore
226
229
  const qb = (0, index_js_1.createQueryBuilder)({
227
230
  baseUrl: 'http://localhost',
231
+ baseId: 'test-base-id',
228
232
  apiKey: 'test',
229
233
  });
230
234
  await expect(qb.transaction(txQb => {
@@ -253,6 +257,7 @@ describe('QueryBuilder', () => {
253
257
  // @ts-ignore
254
258
  const qb = (0, index_js_1.createQueryBuilder)({
255
259
  baseUrl: 'http://localhost',
260
+ baseId: 'test-base-id',
256
261
  apiKey: 'test',
257
262
  });
258
263
  await qb.transaction(async (txQb) => {
@@ -260,5 +265,180 @@ describe('QueryBuilder', () => {
260
265
  });
261
266
  expect(mockRawRequest).toHaveBeenCalledTimes(2);
262
267
  });
268
+ it('should compile an insert query with a number array for a link field', async () => {
269
+ await qb
270
+ .insertInto('customers')
271
+ .values({
272
+ firstName: 'Jane',
273
+ lastName: 'Doe',
274
+ orders: [1, 2, 3],
275
+ })
276
+ .execute();
277
+ expect(mockRawRequest).toHaveBeenCalledTimes(1);
278
+ const variables = mockRawRequest.mock.calls[0][1];
279
+ expect(variables.metadata[0]).toMatchObject({
280
+ type: 'create',
281
+ tableName: 'customers',
282
+ createdRecords: [
283
+ {
284
+ firstName: 'Jane',
285
+ lastName: 'Doe',
286
+ orders: [1, 2, 3],
287
+ },
288
+ ],
289
+ });
290
+ });
291
+ it('should compile an update query with a number array for a link field', async () => {
292
+ await qb
293
+ .update('customers')
294
+ .set({
295
+ lastName: 'Smith',
296
+ orders: [1, 2, 3],
297
+ })
298
+ .where('id', '=', 1)
299
+ .execute();
300
+ expect(mockRawRequest).toHaveBeenCalledTimes(1);
301
+ const variables = mockRawRequest.mock.calls[0][1];
302
+ expect(variables.metadata[0]).toMatchObject({
303
+ type: 'update',
304
+ tableName: 'customers',
305
+ values: {
306
+ lastName: 'Smith',
307
+ orders: [1, 2, 3],
308
+ },
309
+ });
310
+ });
311
+ it('should compile an insert query with attachments and execute', async () => {
312
+ // Mock uploadAttachments to return a mock Attachment
313
+ const mockAttachment = new shared_1.Attachment({
314
+ collectionName: 'string',
315
+ fileInformation: {
316
+ path: 'test-path.png',
317
+ mimetype: 'image/png',
318
+ size: 12345,
319
+ },
320
+ });
321
+ // @ts-ignore
322
+ qb.uploadAttachments = jest.fn().mockResolvedValue([mockAttachment]);
323
+ await qb
324
+ .insertInto('customers')
325
+ .values({
326
+ firstName: 'Jane',
327
+ lastName: 'Doe',
328
+ avatar: await qb.uploadAttachments([
329
+ { file: new Blob(['']), name: 'test.png' },
330
+ ]),
331
+ })
332
+ .execute();
333
+ expect(mockRawRequest).toHaveBeenCalledTimes(1);
334
+ const variables = mockRawRequest.mock.calls[0][1];
335
+ expect(variables.metadata[0]).toMatchObject({
336
+ type: 'create',
337
+ tableName: 'customers',
338
+ createdRecords: [
339
+ {
340
+ firstName: 'Jane',
341
+ lastName: 'Doe',
342
+ avatar: [
343
+ {
344
+ url: 'test-path.png',
345
+ fileType: 'image/png',
346
+ size: 12345,
347
+ },
348
+ ],
349
+ },
350
+ ],
351
+ });
352
+ });
353
+ it('should compile an update query with attachments and execute', async () => {
354
+ // Mock uploadAttachments to return a mock Attachment
355
+ const mockAttachment = new shared_1.Attachment({
356
+ collectionName: 'string',
357
+ fileInformation: {
358
+ path: 'test-path.png',
359
+ mimetype: 'image/png',
360
+ size: 12345,
361
+ },
362
+ });
363
+ // @ts-ignore
364
+ qb.uploadAttachments = jest.fn().mockResolvedValue([mockAttachment]);
365
+ await qb
366
+ .update('customers')
367
+ .set({
368
+ lastName: 'Smith',
369
+ avatar: await qb.uploadAttachments([
370
+ { file: new Blob(['']), name: 'test.png' },
371
+ ]),
372
+ })
373
+ .where('id', '=', 1)
374
+ .execute();
375
+ expect(mockRawRequest).toHaveBeenCalledTimes(1);
376
+ const variables = mockRawRequest.mock.calls[0][1];
377
+ expect(variables.metadata[0]).toMatchObject({
378
+ type: 'update',
379
+ tableName: 'customers',
380
+ values: {
381
+ lastName: 'Smith',
382
+ avatar: [
383
+ {
384
+ url: 'test-path.png',
385
+ fileType: 'image/png',
386
+ size: 12345,
387
+ },
388
+ ],
389
+ },
390
+ });
391
+ });
392
+ it('should upload attachments and return Attachment instances', async () => {
393
+ const mockUploadResponse = [
394
+ {
395
+ collectionName: 'string',
396
+ fileInformation: {
397
+ fieldname: 'files',
398
+ originalname: 'Designer.png',
399
+ encoding: '7bit',
400
+ mimetype: 'image/png',
401
+ destination: '/var/bamboo/storage/bamboo-media-uploader-main/files/d2330358-ae38-40ef-b127-bd497456d488',
402
+ filename: '31529ce5-5ef2-428d-bb63-aaf8d3e97635.png',
403
+ path: 'files/d2330358-ae38-40ef-b127-bd497456d488/31529ce5-5ef2-428d-bb63-aaf8d3e97635.png',
404
+ size: 1483249,
405
+ format: 'png',
406
+ width: 1080,
407
+ height: 1080,
408
+ },
409
+ metadata: { thumbnails: [], clips: [] },
410
+ baseId: 'fdfdfd',
411
+ storageAdaptor: 'LOCAL',
412
+ _id: '691ec20b164dcec7a1a981f6',
413
+ __v: 0,
414
+ },
415
+ ];
416
+ global.fetch = jest.fn().mockResolvedValue({
417
+ ok: true,
418
+ json: jest.fn().mockResolvedValue(mockUploadResponse),
419
+ });
420
+ // @ts-ignore
421
+ const qb = (0, index_js_1.createQueryBuilder)({
422
+ baseUrl: 'http://localhost',
423
+ baseId: 'test-base-id',
424
+ apiKey: 'test-api-key',
425
+ });
426
+ const files = [{ file: new Blob(['']), name: 'test.png' }];
427
+ const attachments = await qb.uploadAttachments(files);
428
+ expect(fetch).toHaveBeenCalledWith('https://media.taylordb.ai/media-collection', expect.objectContaining({
429
+ method: 'POST',
430
+ headers: {
431
+ Authorization: 'Bearer test-api-key',
432
+ },
433
+ }));
434
+ expect(attachments).toHaveLength(1);
435
+ expect(attachments[0]).toBeInstanceOf(shared_1.Attachment);
436
+ expect(attachments[0].fileInformation.originalname).toBe('Designer.png');
437
+ expect(attachments[0].toColumnValue()).toEqual({
438
+ url: 'files/d2330358-ae38-40ef-b127-bd497456d488/31529ce5-5ef2-428d-bb63-aaf8d3e97635.png',
439
+ fileType: 'image/png',
440
+ size: 1483249,
441
+ });
442
+ });
263
443
  });
264
444
  //# sourceMappingURL=query-builder.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"query-builder.spec.js","sourceRoot":"","sources":["../../../src/__tests__/query-builder.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-builder.spec.js","sourceRoot":"","sources":["../../../src/__tests__/query-builder.spec.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,9 @@ interface Compilable {
8
8
  }
9
9
  export declare class Executor {
10
10
  #private;
11
- constructor(baseUrl: string, apiKey: string, transactionId?: string, socketConnection?: SocketConnection);
11
+ constructor(baseUrl: string, apiKey: string, baseId: string, transactionId?: string, socketConnection?: SocketConnection);
12
+ getApiKey(): string;
13
+ getBaseId(): string;
12
14
  get isInTransaction(): boolean;
13
15
  withTransactionId(transactionId: string): Executor;
14
16
  execute<T>(builder: Compilable): Promise<T>;
@@ -17,24 +17,33 @@ class Executor {
17
17
  #baseUrl;
18
18
  #apiKey;
19
19
  #socketConnection;
20
+ #baseId;
20
21
  #transactionId;
21
- constructor(baseUrl, apiKey, transactionId, socketConnection) {
22
+ constructor(baseUrl, apiKey, baseId, transactionId, socketConnection) {
22
23
  this.#baseUrl = baseUrl;
23
24
  this.#apiKey = apiKey;
25
+ this.#baseId = baseId;
24
26
  this.#transactionId = transactionId;
25
27
  this.#socketConnection =
26
28
  socketConnection ??
27
29
  new socket_connection_js_1.SocketConnection({
28
30
  baseUrl,
29
31
  apiKey,
32
+ baseId,
30
33
  clientId: generateUUID(),
31
34
  });
32
35
  }
36
+ getApiKey() {
37
+ return this.#apiKey;
38
+ }
39
+ getBaseId() {
40
+ return this.#baseId;
41
+ }
33
42
  get isInTransaction() {
34
43
  return !!this.#transactionId;
35
44
  }
36
45
  withTransactionId(transactionId) {
37
- return new Executor(this.#baseUrl, this.#apiKey, transactionId, this.#socketConnection);
46
+ return new Executor(this.#baseUrl, this.#apiKey, this.#baseId, transactionId, this.#socketConnection);
38
47
  }
39
48
  async execute(builder) {
40
49
  const { query, variables } = builder.compile();
@@ -1 +1 @@
1
- {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/executor.ts"],"names":[],"mappings":";;;AACA,iEAA0D;AAM1D,MAAM,YAAY,GAAG,GAAG,EAAE;IACxB,IAAI,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QACtD,OAAO,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;IACxC,CAAC;IACD,+DAA+D;IAC/D,OAAO,sCAAsC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE;QACjE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAC1C,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAa,QAAQ;IACnB,QAAQ,CAAS;IACjB,OAAO,CAAS;IAChB,iBAAiB,CAAmB;IACpC,cAAc,CAAU;IAExB,YACE,OAAe,EACf,MAAc,EACd,aAAsB,EACtB,gBAAmC;QAEnC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;QACpC,IAAI,CAAC,iBAAiB;YACpB,gBAAgB;gBAChB,IAAI,uCAAgB,CAAC;oBACnB,OAAO;oBACP,MAAM;oBACN,QAAQ,EAAE,YAAY,EAAE;iBACzB,CAAC,CAAC;IACP,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,iBAAiB,CAAC,aAAqB;QACrC,OAAO,IAAI,QAAQ,CACjB,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,OAAO,EACZ,aAAa,EACb,IAAI,CAAC,iBAAiB,CACvB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAI,OAAmB;QAClC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QAC/C,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,UAAU,CACd,KAAa,EACb,SAA8B,EAC9B,OAAgC;QAEhC,OAAO,IAAI,CAAC,iBAAiB,CAAC,UAAU,CACtC,KAAK,EACL,SAAS,EACT,OAAO,EACP,IAAI,CAAC,cAAc,CACpB,CAAC;IACJ,CAAC;IAED,SAAS,CACP,QAAuC,EACvC,QAAmC;QAEnC,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAE,CAAS,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC/D,CAAC;CACF;AA9DD,4BA8DC"}
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/executor.ts"],"names":[],"mappings":";;;AACA,iEAA0D;AAM1D,MAAM,YAAY,GAAG,GAAG,EAAE;IACxB,IAAI,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QACtD,OAAO,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;IACxC,CAAC;IACD,+DAA+D;IAC/D,OAAO,sCAAsC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE;QACjE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAC1C,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAa,QAAQ;IACnB,QAAQ,CAAS;IACjB,OAAO,CAAS;IAChB,iBAAiB,CAAmB;IACpC,OAAO,CAAS;IAChB,cAAc,CAAU;IAExB,YACE,OAAe,EACf,MAAc,EACd,MAAc,EACd,aAAsB,EACtB,gBAAmC;QAEnC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;QACpC,IAAI,CAAC,iBAAiB;YACpB,gBAAgB;gBAChB,IAAI,uCAAgB,CAAC;oBACnB,OAAO;oBACP,MAAM;oBACN,MAAM;oBACN,QAAQ,EAAE,YAAY,EAAE;iBACzB,CAAC,CAAC;IACP,CAAC;IAEM,SAAS;QACd,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAEM,SAAS;QACd,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,iBAAiB,CAAC,aAAqB;QACrC,OAAO,IAAI,QAAQ,CACjB,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,EACZ,aAAa,EACb,IAAI,CAAC,iBAAiB,CACvB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAI,OAAmB;QAClC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QAC/C,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,UAAU,CACd,KAAa,EACb,SAA8B,EAC9B,OAAgC;QAEhC,OAAO,IAAI,CAAC,iBAAiB,CAAC,UAAU,CACtC,KAAK,EACL,SAAS,EACT,OAAO,EACP,IAAI,CAAC,cAAc,CACpB,CAAC;IACJ,CAAC;IAED,SAAS,CACP,QAAuC,EACvC,QAAmC;QAEnC,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAE,CAAS,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC/D,CAAC;CACF;AA3ED,4BA2EC"}
@@ -0,0 +1,3 @@
1
+ export declare class FieldsProcessor {
2
+ process<T extends Record<string, any>>(record: T): T;
3
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FieldsProcessor = void 0;
4
+ const shared_1 = require("@taylordb/shared");
5
+ class FieldsProcessor {
6
+ process(record) {
7
+ const newRecord = { ...record };
8
+ for (const key in newRecord) {
9
+ const value = newRecord[key];
10
+ if (Array.isArray(value) &&
11
+ value.length > 0 &&
12
+ value[0] instanceof shared_1.Attachment) {
13
+ newRecord[key] = value.map((att) => att.toColumnValue());
14
+ }
15
+ else if (typeof value === 'object' &&
16
+ value !== null &&
17
+ // @ts-ignore
18
+ value instanceof shared_1.Attachment) {
19
+ newRecord[key] = value.toColumnValue();
20
+ }
21
+ }
22
+ return newRecord;
23
+ }
24
+ }
25
+ exports.FieldsProcessor = FieldsProcessor;
26
+ //# sourceMappingURL=fields-processor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fields-processor.js","sourceRoot":"","sources":["../../src/fields-processor.ts"],"names":[],"mappings":";;;AAAA,6CAA8C;AAE9C,MAAa,eAAe;IACnB,OAAO,CAAgC,MAAS;QACrD,MAAM,SAAS,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;QAChC,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;YAE7B,IACE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBACpB,KAAK,CAAC,MAAM,GAAG,CAAC;gBAChB,KAAK,CAAC,CAAC,CAAC,YAAY,mBAAU,EAC9B,CAAC;gBACD,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,GAAe,EAAE,EAAE,CAC7C,GAAG,CAAC,aAAa,EAAE,CACb,CAAC;YACX,CAAC;iBAAM,IACL,OAAO,KAAK,KAAK,QAAQ;gBACzB,KAAK,KAAK,IAAI;gBACd,aAAa;gBACb,KAAK,YAAY,mBAAU,EAC3B,CAAC;gBACD,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,aAAa,EAAS,CAAC;YAChD,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAzBD,0CAyBC"}
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InsertQueryBuilder = void 0;
4
+ const fields_processor_js_1 = require("./fields-processor.js");
4
5
  const query_builder_js_1 = require("./query-builder.js");
5
6
  const selection_builder_js_1 = require("./selection-builder.js");
7
+ const fieldsProcessor = new fields_processor_js_1.FieldsProcessor();
6
8
  /**
7
9
  * A query builder for creating new records in the database.
8
10
  * @template DB - The database type.
@@ -38,9 +40,11 @@ class InsertQueryBuilder {
38
40
  * ```
39
41
  */
40
42
  values(values) {
43
+ const records = Array.isArray(values) ? values : [values];
44
+ const createdRecords = records.map(record => fieldsProcessor.process(record));
41
45
  return new InsertQueryBuilder({
42
46
  ...this.#node,
43
- createdRecords: Array.isArray(values) ? values : [values],
47
+ createdRecords,
44
48
  }, this.#executor);
45
49
  }
46
50
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"insert-query-builder.js","sourceRoot":"","sources":["../../src/insert-query-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"insert-query-builder.js","sourceRoot":"","sources":["../../src/insert-query-builder.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { LinkColumnType } from '@taylordb/shared';
1
+ import { ALinkColumnType, Attachment } from '@taylordb/shared';
2
2
  import { AnyDB, QueryNode, RootQueryNode, SelectionQueryNode } from './@types/internal-types.js';
3
3
  import { LinkColumnNames, NonLinkColumnNames } from './@types/query-builder.js';
4
4
  import { InferDataType, ResolveSelection, ResolveWithObject, ResolveWithPlain } from './@types/type-helpers.js';
@@ -79,7 +79,7 @@ export declare class QueryBuilder<DB extends AnyDB, TableName extends keyof DB,
79
79
  */
80
80
  with<const TArg extends (LinkColumnNames<DB[TableName]> & string) | readonly (LinkColumnNames<DB[TableName]> & string)[]>(relations: TArg): QueryBuilder<DB, TableName, ResolveWithPlain<DB, TableName, TArg, Selection>>;
81
81
  with<const TArg extends {
82
- [K in LinkColumnNames<DB[TableName]>]?: (qb: QueryBuilder<DB, DB[TableName][K] extends LinkColumnType<any, boolean> ? DB[TableName][K]['linkedTo'] : never, object, K>) => QueryBuilder<DB, any, any, any>;
82
+ [K in LinkColumnNames<DB[TableName]>]?: (qb: QueryBuilder<DB, DB[TableName][K] extends ALinkColumnType<any, any, any, any, boolean> ? DB[TableName][K]['linkedTo'] : never, object, K>) => QueryBuilder<DB, any, any, any>;
83
83
  }>(relations: TArg): QueryBuilder<DB, TableName, ResolveWithObject<TArg, Selection>>;
84
84
  /**
85
85
  * Sets the maximum number of records to return.
@@ -185,7 +185,7 @@ export declare class QueryBuilder<DB extends AnyDB, TableName extends keyof DB,
185
185
  * The root query builder class that provides entry points for all query types.
186
186
  */
187
187
  export declare class BaseRootQueryBuilder<DB extends AnyDB> {
188
- #private;
188
+ protected _executor: Executor;
189
189
  constructor(executor: Executor);
190
190
  /**
191
191
  * Creates a new select query builder for the specified table.
@@ -263,13 +263,17 @@ export declare class BaseRootQueryBuilder<DB extends AnyDB> {
263
263
  * ```
264
264
  */
265
265
  aggregateFrom<TableName extends keyof Omit<DB, 'selectTable' | 'attachmentTable' | 'collaboratorsTable'> & string>(tableName: TableName): AggregationQueryBuilder<DB, TableName>;
266
+ uploadAttachments(files: {
267
+ file: Blob;
268
+ name: string;
269
+ }[]): Promise<Attachment[]>;
266
270
  }
267
271
  export declare class RootQueryBuilder<DB extends AnyDB> extends BaseRootQueryBuilder<DB> {
268
- #private;
269
272
  constructor(executor: Executor);
270
273
  transaction<T>(callback: (qb: BaseRootQueryBuilder<DB>) => Promise<T>): Promise<T>;
271
274
  }
272
275
  export declare function createQueryBuilder<DB extends AnyDB>(config: {
273
276
  baseUrl: string;
277
+ baseId: string;
274
278
  apiKey: string;
275
279
  }): RootQueryBuilder<DB>;