@inflector/optima-pg 1.0.6 → 1.0.7
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/dist/index.d.ts +1 -0
- package/dist/index.js +30 -6
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -354,6 +354,7 @@ declare class Table<T extends Record<string, AnyColumn>> {
|
|
|
354
354
|
private db;
|
|
355
355
|
private listenFn;
|
|
356
356
|
constructor(name: string, schema: T, db: Kysely<any>, listenFn: ListenFn);
|
|
357
|
+
private serializeDateInWhereNodes;
|
|
357
358
|
private serializeDates;
|
|
358
359
|
private getVectorCols;
|
|
359
360
|
private deserializeRow;
|
package/dist/index.js
CHANGED
|
@@ -425,6 +425,30 @@ var Table = class {
|
|
|
425
425
|
this.schema = schema;
|
|
426
426
|
this.listenFn = listenFn;
|
|
427
427
|
}
|
|
428
|
+
serializeDateInWhereNodes(nodes) {
|
|
429
|
+
return nodes.map((node) => {
|
|
430
|
+
if ("and" in node) {
|
|
431
|
+
return { and: this.serializeDateInWhereNodes(node.and) };
|
|
432
|
+
}
|
|
433
|
+
if ("or" in node) {
|
|
434
|
+
return { or: this.serializeDateInWhereNodes(node.or) };
|
|
435
|
+
}
|
|
436
|
+
if ("val" in node && node.val instanceof Date) {
|
|
437
|
+
return {
|
|
438
|
+
...node,
|
|
439
|
+
val: node.val.toISOString().replace("T", " ").replace("Z", "+00")
|
|
440
|
+
};
|
|
441
|
+
}
|
|
442
|
+
if ("low" in node) {
|
|
443
|
+
return {
|
|
444
|
+
...node,
|
|
445
|
+
low: node.low instanceof Date ? node.low.toISOString().replace("T", " ").replace("Z", "+00") : node.low,
|
|
446
|
+
high: node.high instanceof Date ? node.high.toISOString().replace("T", " ").replace("Z", "+00") : node.high
|
|
447
|
+
};
|
|
448
|
+
}
|
|
449
|
+
return node;
|
|
450
|
+
});
|
|
451
|
+
}
|
|
428
452
|
serializeDates(row) {
|
|
429
453
|
return Object.fromEntries(
|
|
430
454
|
Object.entries(row).map(([k, v]) => {
|
|
@@ -481,7 +505,7 @@ var Table = class {
|
|
|
481
505
|
query = query.selectAll();
|
|
482
506
|
}
|
|
483
507
|
if (data.where) {
|
|
484
|
-
query = applyWhere(query, resolveWhere(data.where));
|
|
508
|
+
query = applyWhere(query, this.serializeDateInWhereNodes(resolveWhere(data.where)));
|
|
485
509
|
}
|
|
486
510
|
if (data.distinct) {
|
|
487
511
|
query = query.distinct();
|
|
@@ -503,7 +527,7 @@ var Table = class {
|
|
|
503
527
|
return createFluentBuilder2(async (data) => {
|
|
504
528
|
let query = this.db.selectFrom(this.name);
|
|
505
529
|
if (data.where) {
|
|
506
|
-
query = applyWhere(query, resolveWhere(data.where));
|
|
530
|
+
query = applyWhere(query, this.serializeDateInWhereNodes(resolveWhere(data.where)));
|
|
507
531
|
}
|
|
508
532
|
query = query.limit(1);
|
|
509
533
|
const rows = await query.execute();
|
|
@@ -537,7 +561,7 @@ var Table = class {
|
|
|
537
561
|
return createFluentBuilder2(async (data) => {
|
|
538
562
|
let query = this.db.deleteFrom(this.name);
|
|
539
563
|
if (data.where) {
|
|
540
|
-
query = applyWhere(query, resolveWhere(data.where));
|
|
564
|
+
query = applyWhere(query, this.serializeDateInWhereNodes(resolveWhere(data.where)));
|
|
541
565
|
}
|
|
542
566
|
if (data.returning) {
|
|
543
567
|
return await query.returningAll().execute();
|
|
@@ -550,7 +574,7 @@ var Table = class {
|
|
|
550
574
|
return createFluentBuilder2(async (data) => {
|
|
551
575
|
let query = this.db.updateTable(this.name).set(this.serializeDates(set));
|
|
552
576
|
if (data.where) {
|
|
553
|
-
query = applyWhere(query, resolveWhere(data.where));
|
|
577
|
+
query = applyWhere(query, this.serializeDateInWhereNodes(resolveWhere(data.where)));
|
|
554
578
|
}
|
|
555
579
|
if (data.returning) {
|
|
556
580
|
return await query.returningAll().execute();
|
|
@@ -563,7 +587,7 @@ var Table = class {
|
|
|
563
587
|
return createFluentBuilder2(async (data) => {
|
|
564
588
|
let query = this.db.selectFrom(this.name);
|
|
565
589
|
if (data.where) {
|
|
566
|
-
query = applyWhere(query, resolveWhere(data.where));
|
|
590
|
+
query = applyWhere(query, this.serializeDateInWhereNodes(resolveWhere(data.where)));
|
|
567
591
|
}
|
|
568
592
|
const result = await query.select(this.db.fn.countAll().as("count")).executeTakeFirstOrThrow();
|
|
569
593
|
return Number(result.count);
|
|
@@ -573,7 +597,7 @@ var Table = class {
|
|
|
573
597
|
return createFluentBuilder2(async (data) => {
|
|
574
598
|
let query = this.db.selectFrom(this.name);
|
|
575
599
|
if (data.where) {
|
|
576
|
-
query = applyWhere(query, resolveWhere(data.where));
|
|
600
|
+
query = applyWhere(query, this.serializeDateInWhereNodes(resolveWhere(data.where)));
|
|
577
601
|
}
|
|
578
602
|
const result = await query.selectAll().limit(1).execute();
|
|
579
603
|
return result.length > 0;
|