@warlock.js/cascade 4.5.0 → 4.6.1
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/CHANGELOG.md +33 -0
- package/cjs/index.cjs +1012 -104
- package/cjs/index.cjs.map +1 -1
- package/esm/contracts/database-driver.contract.d.mts +27 -4
- package/esm/contracts/database-driver.contract.d.mts.map +1 -1
- package/esm/contracts/database-id-generator.contract.d.mts +38 -0
- package/esm/contracts/database-id-generator.contract.d.mts.map +1 -1
- package/esm/contracts/index.d.mts +1 -1
- package/esm/contracts/query-builder.contract.d.mts +27 -0
- package/esm/contracts/query-builder.contract.d.mts.map +1 -1
- package/esm/data-source/data-source.d.mts +21 -1
- package/esm/data-source/data-source.d.mts.map +1 -1
- package/esm/data-source/data-source.mjs +22 -0
- package/esm/data-source/data-source.mjs.map +1 -1
- package/esm/drivers/mongodb/mongodb-driver.d.mts +2 -2
- package/esm/drivers/mongodb/mongodb-driver.d.mts.map +1 -1
- package/esm/drivers/mongodb/mongodb-driver.mjs +5 -4
- package/esm/drivers/mongodb/mongodb-driver.mjs.map +1 -1
- package/esm/drivers/mongodb/mongodb-id-generator.d.mts +98 -48
- package/esm/drivers/mongodb/mongodb-id-generator.d.mts.map +1 -1
- package/esm/drivers/mongodb/mongodb-id-generator.mjs +153 -59
- package/esm/drivers/mongodb/mongodb-id-generator.mjs.map +1 -1
- package/esm/drivers/mongodb/mongodb-query-builder.d.mts +25 -0
- package/esm/drivers/mongodb/mongodb-query-builder.d.mts.map +1 -1
- package/esm/drivers/mongodb/mongodb-query-builder.mjs +32 -0
- package/esm/drivers/mongodb/mongodb-query-builder.mjs.map +1 -1
- package/esm/drivers/mongodb/mongodb-query-parser.d.mts +36 -0
- package/esm/drivers/mongodb/mongodb-query-parser.d.mts.map +1 -1
- package/esm/drivers/mongodb/mongodb-query-parser.mjs +80 -1
- package/esm/drivers/mongodb/mongodb-query-parser.mjs.map +1 -1
- package/esm/drivers/postgres/postgres-dialect.d.mts +32 -4
- package/esm/drivers/postgres/postgres-dialect.d.mts.map +1 -1
- package/esm/drivers/postgres/postgres-dialect.mjs +57 -4
- package/esm/drivers/postgres/postgres-dialect.mjs.map +1 -1
- package/esm/drivers/postgres/postgres-driver.d.mts +83 -1
- package/esm/drivers/postgres/postgres-driver.d.mts.map +1 -1
- package/esm/drivers/postgres/postgres-driver.mjs +129 -16
- package/esm/drivers/postgres/postgres-driver.mjs.map +1 -1
- package/esm/drivers/postgres/postgres-query-builder.d.mts +32 -0
- package/esm/drivers/postgres/postgres-query-builder.d.mts.map +1 -1
- package/esm/drivers/postgres/postgres-query-builder.mjs +47 -1
- package/esm/drivers/postgres/postgres-query-builder.mjs.map +1 -1
- package/esm/drivers/postgres/postgres-query-parser.d.mts +13 -2
- package/esm/drivers/postgres/postgres-query-parser.d.mts.map +1 -1
- package/esm/drivers/postgres/postgres-query-parser.mjs +21 -4
- package/esm/drivers/postgres/postgres-query-parser.mjs.map +1 -1
- package/esm/drivers/postgres/types.d.mts +15 -0
- package/esm/drivers/postgres/types.d.mts.map +1 -1
- package/esm/drivers/sql/sql-dialect.contract.d.mts +20 -0
- package/esm/drivers/sql/sql-dialect.contract.d.mts.map +1 -1
- package/esm/expressions/aggregate-expressions.d.mts +71 -34
- package/esm/expressions/aggregate-expressions.d.mts.map +1 -1
- package/esm/expressions/aggregate-expressions.mjs +80 -7
- package/esm/expressions/aggregate-expressions.mjs.map +1 -1
- package/esm/expressions/column-expressions.d.mts +193 -0
- package/esm/expressions/column-expressions.d.mts.map +1 -0
- package/esm/expressions/column-expressions.mjs +152 -0
- package/esm/expressions/column-expressions.mjs.map +1 -0
- package/esm/index.d.mts +3 -2
- package/esm/index.mjs +2 -1
- package/esm/model/methods/write-methods.d.mts +29 -0
- package/esm/model/methods/write-methods.d.mts.map +1 -0
- package/esm/model/methods/write-methods.mjs +164 -2
- package/esm/model/methods/write-methods.mjs.map +1 -1
- package/esm/model/model.d.mts +64 -3
- package/esm/model/model.d.mts.map +1 -1
- package/esm/model/model.mjs +65 -3
- package/esm/model/model.mjs.map +1 -1
- package/esm/writer/database-writer.d.mts.map +1 -1
- package/esm/writer/database-writer.mjs +4 -3
- package/esm/writer/database-writer.mjs.map +1 -1
- package/llms-full.txt +111 -8
- package/llms.txt +3 -3
- package/package.json +4 -4
- package/skills/README.md +3 -3
- package/skills/aggregate-data/SKILL.md +43 -3
- package/skills/manage-transactions/SKILL.md +45 -2
- package/skills/perform-atomic-ops/SKILL.md +23 -3
|
@@ -56,6 +56,25 @@ type InsertResult<TDocument = unknown> = {
|
|
|
56
56
|
type UpdateResult = {
|
|
57
57
|
modifiedCount: number;
|
|
58
58
|
};
|
|
59
|
+
/**
|
|
60
|
+
* Result returned by a raw query execution ({@link DriverContract.query}).
|
|
61
|
+
*
|
|
62
|
+
* Mirrors the shape both the `pg` and MongoDB drivers already return: an
|
|
63
|
+
* array of typed `rows` and the affected `rowCount` (`null` for statements
|
|
64
|
+
* that don't report one). `command` / `fields` are optional driver extras
|
|
65
|
+
* (the `pg` driver populates them; MongoDB does not).
|
|
66
|
+
*
|
|
67
|
+
* @typeParam T - The row shape (defaults to a generic record).
|
|
68
|
+
*/
|
|
69
|
+
type RawQueryResult<T = Record<string, unknown>> = {
|
|
70
|
+
/** Rows returned by the query, typed as `T`. */readonly rows: T[]; /** Rows affected by INSERT/UPDATE/DELETE, or `null` when not reported. */
|
|
71
|
+
readonly rowCount: number | null; /** Command executed (SELECT, INSERT, …) — driver-dependent. */
|
|
72
|
+
readonly command?: string; /** Result column metadata — driver-dependent. */
|
|
73
|
+
readonly fields?: ReadonlyArray<{
|
|
74
|
+
readonly name: string;
|
|
75
|
+
readonly dataTypeID: number;
|
|
76
|
+
}>;
|
|
77
|
+
};
|
|
59
78
|
/**
|
|
60
79
|
* Database-agnostic update operations.
|
|
61
80
|
*
|
|
@@ -318,13 +337,17 @@ interface DriverContract {
|
|
|
318
337
|
getSQLSerializer(): SQLSerializer;
|
|
319
338
|
/**
|
|
320
339
|
* Execute a raw SQL query.
|
|
321
|
-
* Used by the runner to execute phase-ordered SQL.
|
|
322
340
|
*
|
|
341
|
+
* Transaction-aware: when called inside a `transaction()` scope the driver
|
|
342
|
+
* routes the query through the active transaction client automatically.
|
|
343
|
+
* Used by the runner to execute phase-ordered SQL and by `Model.raw()`.
|
|
344
|
+
*
|
|
345
|
+
* @typeParam T - The expected row shape.
|
|
323
346
|
* @param sql - SQL query string
|
|
324
347
|
* @param params - Optional query parameters
|
|
325
|
-
* @returns
|
|
348
|
+
* @returns The query result (`rows` + `rowCount`)
|
|
326
349
|
*/
|
|
327
|
-
query<T = unknown
|
|
350
|
+
query<T = Record<string, unknown>>(sql: string, params?: unknown[]): Promise<RawQueryResult<T>>;
|
|
328
351
|
/**
|
|
329
352
|
* Create a new database.
|
|
330
353
|
*
|
|
@@ -439,5 +462,5 @@ type DropDatabaseOptions = {
|
|
|
439
462
|
ifExists?: boolean;
|
|
440
463
|
};
|
|
441
464
|
//#endregion
|
|
442
|
-
export { CreateDatabaseOptions, DriverContract, DriverEvent, DriverEventListener, DriverTransactionContract, DropDatabaseOptions, InsertResult, TransactionContext, UpdateOperations, UpdateResult };
|
|
465
|
+
export { CreateDatabaseOptions, DriverContract, DriverEvent, DriverEventListener, DriverTransactionContract, DropDatabaseOptions, InsertResult, RawQueryResult, TransactionContext, UpdateOperations, UpdateResult };
|
|
443
466
|
//# sourceMappingURL=database-driver.contract.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database-driver.contract.d.mts","names":[],"sources":["../../../../../../../@warlock.js/cascade/src/contracts/database-driver.contract.ts"],"mappings":";;;;;;;;;;;KASY,WAAA;;KAGA,mBAAA,OAA0B,IAAI;;UAGzB,yBAAA;EANM;EAQrB,OAAA,EAAS,QAAA;EALC;EAOV,MAAA,IAAU,OAAA;;EAEV,QAAA,IAAY,OAAA;AAAA;AANd;;;;;;AAAA,UAeiB,kBAAA;EATI;;;;;;;;;AAAA;AASrB;;;;AAmB0B;AAI1B;;;EAJE,QAAA,CAAS,MAAe;AAAA;;KAId,YAAA;EACV,QAAA,EAAU,SAAS;AAAA;AAIrB;AAAA,KAAY,YAAA;EACV,aAAa;AAAA;AAAA;
|
|
1
|
+
{"version":3,"file":"database-driver.contract.d.mts","names":[],"sources":["../../../../../../../@warlock.js/cascade/src/contracts/database-driver.contract.ts"],"mappings":"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"}
|
|
@@ -63,6 +63,44 @@ interface IdGeneratorContract {
|
|
|
63
63
|
* ```
|
|
64
64
|
*/
|
|
65
65
|
generateNextId(options: GenerateIdOptions): Promise<number>;
|
|
66
|
+
/**
|
|
67
|
+
* Reserve a contiguous block of `count` ids in a SINGLE atomic operation.
|
|
68
|
+
*
|
|
69
|
+
* This is the batch counterpart of {@link generateNextId}, intended for
|
|
70
|
+
* multi-row inserts (`createMany`): instead of N separate counter round-trips
|
|
71
|
+
* (one per row), the counter is advanced by `count * incrementIdBy` in one
|
|
72
|
+
* atomic step and the whole block is handed back at once.
|
|
73
|
+
*
|
|
74
|
+
* Semantics:
|
|
75
|
+
* - Returns the `count` reserved ids in ascending order. The FIRST id of the
|
|
76
|
+
* first-ever block for a table equals `initialId` (same anchor as
|
|
77
|
+
* {@link generateNextId}); subsequent blocks continue from the stored
|
|
78
|
+
* counter, so blocks never overlap — even across concurrent callers.
|
|
79
|
+
* - Goal of "update the stored last id" is satisfied by the same atomic op:
|
|
80
|
+
* advancing the counter by `count * incrementIdBy` leaves the persisted
|
|
81
|
+
* counter equal to the block's LAST id, so {@link getLastId} stays
|
|
82
|
+
* consistent with no extra write. Do NOT pair this with {@link setLastId}.
|
|
83
|
+
* - **Not transactional.** Like {@link generateNextId} (and SQL `SERIAL`),
|
|
84
|
+
* the counter write is standalone and durable immediately; if a surrounding
|
|
85
|
+
* transaction rolls back, the reserved block is consumed and left as a gap.
|
|
86
|
+
*
|
|
87
|
+
* Optional: drivers without a counter (SQL with native `AUTO_INCREMENT` /
|
|
88
|
+
* `SERIAL`) do not implement this — callers must feature-detect it and fall
|
|
89
|
+
* back to per-row {@link generateNextId}.
|
|
90
|
+
*
|
|
91
|
+
* @param options - `GenerateIdOptions` plus the block `count` (`>= 1`)
|
|
92
|
+
* @returns The reserved ids in ascending order (length `count`)
|
|
93
|
+
*
|
|
94
|
+
* @example
|
|
95
|
+
* ```typescript
|
|
96
|
+
* // Reserve 100 ids in one atomic op for a bulk insert
|
|
97
|
+
* const ids = await idGenerator.generateNextIds({ table: "users", count: 100 });
|
|
98
|
+
* // ids[0] is the first, ids[99] the last; getLastId("users") === ids[99]
|
|
99
|
+
* ```
|
|
100
|
+
*/
|
|
101
|
+
generateNextIds?(options: GenerateIdOptions & {
|
|
102
|
+
count: number;
|
|
103
|
+
}): Promise<number[]>;
|
|
66
104
|
/**
|
|
67
105
|
* Get the last generated ID for a table.
|
|
68
106
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database-id-generator.contract.d.mts","names":[],"sources":["../../../../../../../@warlock.js/cascade/src/contracts/database-id-generator.contract.ts"],"mappings":";;AAGA;;KAAY,iBAAA;EAAiB,gCAE3B,KAAA,UAEA;EAAA,SAAA,WAEa;EAAb,aAAA;AAAA
|
|
1
|
+
{"version":3,"file":"database-id-generator.contract.d.mts","names":[],"sources":["../../../../../../../@warlock.js/cascade/src/contracts/database-id-generator.contract.ts"],"mappings":";;AAGA;;KAAY,iBAAA;EAAiB,gCAE3B,KAAA,UAEA;EAAA,SAAA,WAEa;EAAb,aAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyI6C;;;;UAvG9B,mBAAA;;;;;;;;;;;;;;;;;;;;;;;;EAwBf,cAAA,CAAe,OAAA,EAAS,iBAAA,GAAoB,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqC5C,eAAA,EAAiB,OAAA,EAAS,iBAAA;IAAsB,KAAA;EAAA,IAAkB,OAAA;;;;;;;;;;;;;;;EAgBlE,SAAA,CAAU,KAAA,WAAgB,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;EA0B1B,SAAA,CAAU,KAAA,UAAe,EAAA,WAAa,OAAA;AAAA"}
|
|
@@ -2,7 +2,7 @@ import { DriverBlueprintContract, TableIndexInformation } from "./driver-bluepri
|
|
|
2
2
|
import { ColumnDefinition, ColumnType, ForeignKeyDefinition, FullTextIndexOptions, GeoIndexOptions, IndexDefinition, MigrationDriverContract, MigrationDriverFactory, VectorIndexOptions } from "./migration-driver.contract.mjs";
|
|
3
3
|
import { ChunkCallback, CursorPaginationOptions, CursorPaginationResult, DriverQuery, GroupByInput, HavingInput, JoinOptions, OrderDirection, PaginationOptions, PaginationResult, QueryBuilderContract, RawExpression, WhereCallback, WhereObject, WhereOperator } from "./query-builder.contract.mjs";
|
|
4
4
|
import { SyncAdapterContract, SyncInstruction } from "./sync-adapter.contract.mjs";
|
|
5
|
-
import { CreateDatabaseOptions, DriverContract, DriverEvent, DriverEventListener, DriverTransactionContract, DropDatabaseOptions, InsertResult, TransactionContext, UpdateOperations, UpdateResult } from "./database-driver.contract.mjs";
|
|
5
|
+
import { CreateDatabaseOptions, DriverContract, DriverEvent, DriverEventListener, DriverTransactionContract, DropDatabaseOptions, InsertResult, RawQueryResult, TransactionContext, UpdateOperations, UpdateResult } from "./database-driver.contract.mjs";
|
|
6
6
|
import { GenerateIdOptions, IdGeneratorContract } from "./database-id-generator.contract.mjs";
|
|
7
7
|
import { RemoverContract, RemoverOptions, RemoverResult } from "./database-remover.contract.mjs";
|
|
8
8
|
import { RestorerContract, RestorerOptions, RestorerResult } from "./database-restorer.contract.mjs";
|
|
@@ -1360,6 +1360,33 @@ interface QueryBuilderContract<T = unknown> {
|
|
|
1360
1360
|
* ```
|
|
1361
1361
|
*/
|
|
1362
1362
|
groupBy(fields: GroupByInput, aggregates: Record<string, RawExpression>): this;
|
|
1363
|
+
/**
|
|
1364
|
+
* Portable date-bucketed GROUP BY.
|
|
1365
|
+
*
|
|
1366
|
+
* Buckets `column` to the given granularity and groups by the truncated
|
|
1367
|
+
* value, exposing the bucket under the column's own name in the result.
|
|
1368
|
+
* Optional `aggregates` follow the same rules as the two-arg {@link groupBy}
|
|
1369
|
+
* (`$agg.*` helpers or driver-native raw expressions).
|
|
1370
|
+
*
|
|
1371
|
+
* - **PostgreSQL**: `date_trunc('<unit>', "column")`
|
|
1372
|
+
* - **MongoDB**: `{ $dateTrunc: { date: "$column", unit } }` in the `$group` `_id`
|
|
1373
|
+
*
|
|
1374
|
+
* @param column - The date/timestamp column to bucket
|
|
1375
|
+
* @param unit - The bucket granularity (`day` / `week` / `month` / `year`)
|
|
1376
|
+
* @param aggregates - Optional aggregate projections keyed by output alias
|
|
1377
|
+
*
|
|
1378
|
+
* @example
|
|
1379
|
+
* ```typescript
|
|
1380
|
+
* import { $agg, $expr } from "@warlock.js/cascade";
|
|
1381
|
+
*
|
|
1382
|
+
* await Order.query()
|
|
1383
|
+
* .groupByDate("created_at", "month", {
|
|
1384
|
+
* revenue: $agg.sum($expr.mul("price", "quantity")),
|
|
1385
|
+
* })
|
|
1386
|
+
* .get();
|
|
1387
|
+
* ```
|
|
1388
|
+
*/
|
|
1389
|
+
groupByDate(column: string, unit: "day" | "week" | "month" | "year", aggregates?: Record<string, RawExpression>): this;
|
|
1363
1390
|
/**
|
|
1364
1391
|
* Apply raw grouping expressions.
|
|
1365
1392
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-builder.contract.d.mts","names":[],"sources":["../../../../../../../@warlock.js/cascade/src/contracts/query-builder.contract.ts"],"mappings":";;;;;KAGY,cAAA;AAAZ;;;AAAA,KAKY,WAAA;EALc,kCAOxB,KAAA,UAFqB;EAIrB,UAAA,WAcmB;EAZnB,QAAA,WAFA;EAIA,YAAA;EAEA,IAAA,kDAEA;EAAA,KAAA,WAEU;EAAV,OAAA,GAAU,MAAA,mBAIV;EAFA,MAAA,aAIA;EAFA,UAAA,GAAa,MAAM,mBAEX;EAAR,QAAA;AAAA;;;;KAMU,gBAAA;EACV,IAAA,EAAM,CAAC;EACP,UAAA;IACE,KAAA;IACA,IAAA;IACA,KAAA;IACA,KAAA;EAAA;AAAA;AAOJ;;;AAAA,KAAY,sBAAA;EACV,IAAA,EAAM,CAAC;EACP,UAAA;IACE,OAAA;IACA,OAAA;IACA,UAAA;IACA,UAAA;EAAA;AAAA;;AAAU;AAOd;KAAY,aAAA,OACV,IAAA,EAAM,CAAA,IACN,UAAA,aACG,OAAO;;;;KAKA,uBAAA;EACV,MAAA;EACA,SAAA;EACA,KAAA;EACA,MAAA;AAAA;AAJF;;;AAAA,KAUY,iBAAA;EACV,IAAA;EACA,KAAK;AAAA;;;AARC;KAcI,aAAA;AAAA,KAwBA,WAAA,GAAc,MAAM;;;;KAKpB,aAAA,OAAoB,OAAA,EAAS,oBAAoB,CAAC,CAAA;AAL9D;;;AAAA,KAUY,YAAA,uBAGR,MAAA,oBACA,KAAA,CAAM,MAAA;AAdsB;AAKhC;;AALgC,KAmBpB,WAAA,GACR,MAAA,qBACC,KAAA,UAAe,KAAA,cACf,KAAA,UAAe,QAAA,EAAU,aAAa,EAAE,KAAA;;;;KAKjC,aAAA,YAAyB,MAAM;;;AAtBqB;AAKhE;;;;;;;;;;;;AAIgB;AAKhB;KA2BY,WAAA;wDAEV,KAAA,WA5BE;EA8BF,QAAA,cA7BkB;EA+BlB,QAAA,cA9BkB;EAgClB,MAAA;AAAA;;AAhCgD;AAKlD;;;;AAA2C;UAqC1B,oBAAA;EAlBM;;;EAsBrB,KAAA;EAlBA;;;;EAuBA,OAAA,CAAQ,QAAA,GAAW,IAAA,OAAW,KAAA;EATf;;;;;EAgBf,UAAA,CAAW,QAAA,GAAW,KAAA,kBAAuB,OAAA;EAwBX;;;;;EAjBlC,WAAA,CAAY,QAAA,GAAW,OAAA,SAAgB,OAAA,iBAAwB,OAAA;EA6C1C;;;;;EAtCrB,SAAA,CAAU,QAAA,GAAW,OAAA,SAAgB,OAAA,iBAAwB,OAAA;EA8L/B;;;;EApL9B,mBAAA,GAAsB,GAAA,SAAY,qBAAA;EAqNK;;;;EA/MvC,oBAAA,GAAuB,GAAA,SAAY,kBAAA;EAoPG;;;EA/OtC,oBAAA,GAAuB,GAAA;EA8TN;;;EAzTjB,aAAA;EA4VqB;;;;;;EAhVrB,kBAAA,GAAqB,GAAA,qBAAwB,KAAA,EAAO,oBAAA;EA6WpB;;;;;;;;;;;EAhWhC,cAAA,GAAiB,GAAA;IAukBD,wFAnkBZ,QAAA,UA8kBkB;IA5kBlB,aAAA;EAAA;EA6nBwC;;;;EArnB5C,aAAA,GAAgB,GAAA;IAGZ,KAAA;IACA,IAAA;IACA,KAAA;IACA,QAAA;IACA,UAAA;IACA,QAAA;IACA,UAAA;IACA,YAAA;IACA,WAAA;IACA,MAAA;EAAA;EAo0Be;;;;EA5zBnB,mBAAA,GAAsB,MAAA;EAs9BN;;;EAj9BhB,UAAA;EAymC+C;;;;;;;;;;;;;;;;;;;;;;;;;EA9kC/C,QAAA,IAAY,SAAA;EAm4CS;;;;;;;;;;;;;;;EAl3CrB,kBAAA,IAAsB,UAAA;EAo8CZ;;;;;;;;;;;EAv7CV,mBAAA;EAkgD8C;;;;;;;;;;;;;;;;EAh/C9C,KAAA,CAAM,SAAA,aAAsB,IAAA;EAnLN;;;;;;;;;;;;;;;;EAyMtB,KAAA,CAAM,KAAA,UAAe,KAAA;EACrB,KAAA,CAAM,KAAA,UAAe,QAAA,EAAU,aAAA,EAAe,KAAA;EAC9C,KAAA,CAAM,UAAA,EAAY,WAAA;EAClB,KAAA,CAAM,QAAA,EAAU,aAAA,CAAc,CAAA;EAzKP;;;;;;;EAkLvB,QAAA,CAAS,UAAA,EAAY,aAAA,EAAe,QAAA;EAhJhC;;;;;;EAwJJ,UAAA,CAAW,UAAA,EAAY,aAAA,EAAe,QAAA;EAxIlC;;;;;;EAgJJ,WAAA,CAAY,KAAA,UAAe,QAAA,EAAU,aAAA,EAAe,MAAA;EAlIpD;;;;;;EA0IA,aAAA,CAAc,KAAA,UAAe,QAAA,EAAU,aAAA,EAAe,MAAA;EA5EtD;;;;;;;;;EAuFA,YAAA,CAAa,WAAA,EAAa,KAAA,EAAO,IAAA,UAAc,QAAA,EAAU,aAAA,EAAe,KAAA;EA9CnD;;;;;;EAsDrB,mBAAA,CAAoB,KAAA,UAAe,WAAA,UAAqB,WAAA;EApD1B;;;;;;EA4D9B,SAAA,CAAU,KAAA,UAAe,KAAA,EAAO,IAAA;EA3CT;;;EAgDvB,eAAA,CAAgB,KAAA,UAAe,KAAA,EAAO,IAAA;EAxC1B;;;EA6CZ,eAAA,CAAgB,KAAA,UAAe,KAAA,EAAO,IAAA;EArCtC;;;EA0CA,cAAA,CAAe,KAAA,UAAe,KAAA,EAAO,IAAA;EA1CiB;;;;;;EAkDtD,SAAA,CAAU,KAAA,UAAe,KAAA;EAvCZ;;;EA4Cb,QAAA,CAAS,KAAA,UAAe,KAAA;EApCgC;;;EAyCxD,UAAA,CAAW,KAAA,UAAe,KAAA;EAjCD;;;EAsCzB,SAAA,CAAU,KAAA,UAAe,KAAA;EAjCM;;;EAsC/B,iBAAA,CAAkB,IAAA,UAAc,KAAA;EAjCD;;;EAsC/B,sBAAA,CAAuB,IAAA,UAAc,KAAA;EAjCP;;;EAsC9B,oBAAA,CAAqB,IAAA;EAzBrB;;;;;;EAiCA,eAAA,CAAgB,IAAA,UAAc,QAAA,EAAU,aAAA,EAAe,KAAA;EAvB7C;;;EA4BV,gBAAA,CAAiB,IAAA;EAvBe;;;EA4BhC,iBAAA,CAAkB,IAAA;EAlBlB;;;;;;EA0BA,gBAAA,CAAiB,KAAA,UAAe,QAAA,EAAU,aAAA,EAAe,KAAA;EAbzD;;;EAkBA,OAAA,CAAQ,KAAA;EALR;;;EAUA,QAAA,CAAS,MAAA,EAAQ,KAAA;EAVwC;;;EAezD,SAAA,CAAU,KAAA;EALO;;;EAUjB,SAAA,CAAU,KAAA;EAAV;;;EAKA,aAAA,CAAc,MAAA,qBAA2B,KAAA;EAAA;;;EAKzC,eAAA,CAAgB,MAAA,qBAA2B,KAAA;EAK3C;;;EAAA,WAAA,CAAY,KAAA,UAAe,KAAA;EAKR;;;EAAnB,QAAA,CAAS,QAAA,EAAU,aAAA,CAAc,CAAA;EAKZ;;;EAArB,UAAA,CAAW,QAAA,EAAU,aAAA,CAAc,CAAA;EASb;;;;;;;EAAtB,WAAA,CAAY,QAAA,EAAU,aAAA,CAAc,CAAA;EAiB5B;;;;;;;EARR,cAAA,CAAe,QAAA,EAAU,aAAA,CAAc,CAAA;EAUnB;;;;;;EAFpB,OAAA,CAAQ,KAAA,UAAe,KAAA;EACvB,OAAA,CAAQ,KAAA,UAAe,QAAA,EAAU,aAAA,EAAe,KAAA;EAChD,OAAA,CAAQ,UAAA,EAAY,WAAA;EACpB,OAAA,CAAQ,QAAA,EAAU,aAAA,CAAc,CAAA;EAgBrB;;;;;;EARX,OAAA,CAAQ,KAAA,UAAe,MAAA;EAgCV;;;;;;EAxBb,UAAA,CAAW,KAAA,UAAe,MAAA;EAwCQ;;;;;;EAhClC,SAAA,CAAU,KAAA;EAgDqB;;;;;;EAxC/B,YAAA,CAAa,KAAA;EAgEb;;;;;;EAxDA,YAAA,CAAa,KAAA,UAAe,KAAA;EAgEI;;;;;;EAxDhC,eAAA,CAAgB,KAAA,UAAe,KAAA;EAwEnB;;;;;;EAhEZ,SAAA,CAAU,KAAA,UAAe,OAAA,EAAS,MAAA;EAqFxB;;;;;;EA7EV,YAAA,CAAa,KAAA,UAAe,OAAA;EAkG5B;;;;;;EA1FA,eAAA,CAAgB,KAAA,UAAe,KAAA;EAkGsB;;;;;;EA1FrD,kBAAA,CAAmB,KAAA,UAAe,KAAA;EA0GM;;;;;;EAlGxC,aAAA,CAAc,KAAA,UAAe,KAAA;EAgH7B;;;;;;EAxGA,gBAAA,CAAiB,KAAA,UAAe,KAAA;EAiHvB;;;;;;EAzGT,gBAAA,CAAiB,KAAA,UAAe,KAAA,GAAQ,IAAA,EAAM,IAAA;EA6H/B;;;;;;EArHf,mBAAA,CAAoB,KAAA,UAAe,KAAA,GAAQ,IAAA,EAAM,IAAA;EAkI3B;;;;;;EA1HtB,WAAA,CAAY,KAAA;EAuIZ;;;;;;EA/HA,cAAA,CAAe,KAAA;EAmJf;;;;;;;;;;EAvIA,SAAA,CAAU,KAAA,UAAe,IAAA;EACzB,SAAA,CAAU,KAAA,UAAe,QAAA,iCAAyC,IAAA;EAwJhE;;;;;;EAhJF,UAAA,CAAW,KAAA,UAAe,OAAA,GAAU,WAAA;EA4JlC;;;;;;;;;;;EA/IF,kBAAA,CAAmB,KAAA,UAAe,KAAA,WAAgB,GAAA;EA2KtB;;;;;;EAnK5B,qBAAA,CAAsB,KAAA,UAAe,KAAA,WAAgB,GAAA;EAgLxC;;;;;;EAxKb,oBAAA,CAAqB,KAAA,UAAe,KAAA,WAAgB,GAAA;EA4LpD;;;;;;EApLA,wBAAA,CAAyB,KAAA,UAAe,KAAA,WAAgB,GAAA;EA2MxD;;;;;;EA/LA,MAAA,CAAO,MAAA;EACP,MAAA,CAAO,MAAA,EAAQ,MAAA;EACf,MAAA,IAAU,MAAA,EAAQ,KAAA;EAClB,MAAA,IAAU,IAAA,EAAM,KAAA;EAgPF;;;;;;EAxOd,QAAA,CAAS,KAAA,UAAe,KAAA;EA+PN;;;;;;EAvPlB,SAAA,CAAU,UAAA,EAAY,aAAA,EAAe,QAAA;EA8QlB;;;;;;;;;EAnQnB,aAAA,CACE,WAAA,EAAa,KAAA;IACX,KAAA;IACA,UAAA,EAAY,aAAA;IACZ,QAAA;EAAA;EA4Sc;;;;;;EAlSlB,SAAA,CAAU,UAAA,EAAY,aAAA,EAAe,KAAA;EAoVF;;;EA/UnC,YAAA,CAAa,UAAA,EAAY,aAAA,EAAe,KAAA;EAmXhC;;;;;;EA3WR,eAAA,CACE,KAAA,UACA,SAAA,8DACA,KAAA;EAsZc;;;;;;EA7YhB,YAAA,CAAa,KAAA,UAAe,KAAA;EAgbf;;;;;;EAxab,WAAA,CAAY,KAAA,UAAe,KAAA;EAidzB;;;;;;;;;;;;;EAlcF,UAAA,CACE,KAAA,EAAO,KAAA;IAAQ,IAAA,EAAM,aAAA;IAAe,IAAA,EAAM,aAAA;EAAA,IAC1C,SAAA,EAAW,aAAA,YACX,KAAA;EAyhBF;;;;;;EAhhBA,UAAA,CACE,SAAA,EAAW,aAAA,EACX,SAAA,EAAW,aAAA,YACX,SAAA,EAAW,aAAA,YACX,KAAA;EA4iBF;;;;;;;;EAjiBA,sBAAA,CAAuB,QAAA,GAAW,UAAA,EAAY,MAAA;EA0iBlC;;;;;;EAliBZ,UAAA,CAAW,IAAA,UAAc,KAAA;EA4jBzB;;;;;;EApjBA,aAAA,CAAc,IAAA,UAAc,UAAA,EAAY,aAAA,EAAe,KAAA;EAykBjD;;;EApkBN,YAAA,CAAa,IAAA;EAolBN;;;;;;EA5kBP,YAAA,CAAa,MAAA,EAAQ,KAAA,UAAe,aAAA,GAAgB,KAAA;EAymBpC;;;;;;EAjmBhB,cAAA,CAAe,MAAA,EAAQ,KAAA,UAAe,aAAA,GAAgB,KAAA;EAsoBxB;;;;;;;;;;EA1nB9B,YAAA,CAAa,IAAA,EAAM,aAAA;EA2oBG;;;;;;EAnoBtB,QAAA,CAAS,MAAA;EA4oBC;;;EAvoBV,WAAA;EAwpBK;;;EAnpBL,SAAA;EA0qBA;;;EArqBA,aAAA;EAqqBkD;;;;;;;EA5pBlD,cAAA,CAAe,MAAA;EAurBb;;;;;;EA/qBF,SAAA,CAAU,MAAA;EA8rBV;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA5pBA,IAAA,CAAK,KAAA,UAAe,UAAA,UAAoB,YAAA;EACxC,IAAA,CAAK,OAAA,EAAS,WAAA;EAotBV;;;;;;;;;;;;;;;;;;;;EA9rBJ,QAAA,CAAS,KAAA,UAAe,UAAA,UAAoB,YAAA;EAC5C,QAAA,CAAS,OAAA,EAAS,WAAA;EAuvBlB;;;;;;;;;;;;;;;;;;;;EAjuBA,SAAA,CAAU,KAAA,UAAe,UAAA,UAAoB,YAAA;EAC7C,SAAA,CAAU,OAAA,EAAS,WAAA;EAkxByB;;;;;;;;;;;;;;;;;;;;EA5vB5C,SAAA,CAAU,KAAA,UAAe,UAAA,UAAoB,YAAA;EAC7C,SAAA,CAAU,OAAA,EAAS,WAAA;EA80BO;;;AAAmC;;;;;;;;;;;;;;;;EAzzB7D,QAAA,CAAS,KAAA,UAAe,UAAA,UAAoB,YAAA;EAC5C,QAAA,CAAS,OAAA,EAAS,WAAA;;;;;;;;;;;;;;;;;;;EAoBlB,SAAA,CAAU,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BV,OAAA,CAAQ,UAAA,EAAY,aAAA,EAAe,QAAA;;;;;;;;;;;;;;;;;;;;;;;EA4BnC,IAAA,CAAK,QAAA;;;;;;;EAQL,IAAA,IAAQ,SAAA;;;;;;;;;;;;;;;;;;;;;;EAuBR,IAAA,CAAK,QAAA,UAAkB,UAAA,GAAa,KAAA,EAAO,oBAAA;;;;;;;;;;;;;;;;;;;;;;EAuB3C,IAAA,CAAK,SAAA,EAAW,MAAA,qBAA2B,KAAA,EAAO,oBAAA;;;;;;;;;;;;;;;;;;;EAoBlD,SAAA,CAAU,QAAA;;;;;;;;;;;;;;EAeV,SAAA,IAAa,SAAA;;;;;;;;;;;EAYb,SAAA,CAAU,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BV,SAAA,CACE,SAAA,EAAW,MAAA,2BAAiC,KAAA,EAAO,oBAAA;;;;;;;;;;;;;EAerD,GAAA,CAAI,QAAA;;;;;;;;;;;;;;;;;;EAmBJ,GAAA,CAAI,QAAA,UAAkB,QAAA,UAAkB,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;EA0BxC,QAAA,CAAS,QAAA,UAAkB,QAAA,GAAW,KAAA,EAAO,oBAAA;;;;;;;;;;;;;;;EAgB7C,UAAA,CAAW,QAAA,UAAkB,QAAA,GAAW,KAAA,EAAO,oBAAA;;;;;;;;;;;;;EAc/C,UAAA,CAAW,QAAA;;;;;;;;;;;;;;;;;;EAmBX,eAAA,CAAgB,QAAA,UAAkB,QAAA,GAAW,KAAA,EAAO,oBAAA;;;;;;;;EAapD,OAAA,CAAQ,KAAA,UAAe,SAAA,GAAY,cAAA;EACnC,OAAA,CAAQ,MAAA,EAAQ,MAAA,SAAe,cAAA;;;;;;;EAQ/B,WAAA,CAAY,KAAA;;;;;;;EAQZ,UAAA,CAAW,UAAA,EAAY,aAAA,EAAe,QAAA;;;;;;;EAQtC,aAAA,CAAc,KAAA;;;;;;;;;EAUd,MAAA,CAAO,MAAA,YAAkB,OAAA,CAAQ,CAAA;;;;;;;;EASjC,MAAA,CAAO,MAAA;;;;;;;EAYP,KAAA,CAAM,KAAA;;;;;;;EAQN,IAAA,CAAK,KAAA;;;;;;;EAQL,MAAA,CAAO,KAAA;;;;;;;EAQP,IAAA,CAAK,KAAA;;;;;;;EAQL,MAAA,CAAO,KAAA,YAAiB,MAAA;;;;;;;;EAaxB,OAAA,CAAQ,MAAA,EAAQ,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqChB,OAAA,CAAQ,MAAA,EAAQ,YAAA,EAAc,UAAA,EAAY,MAAA,SAAe,aAAA;;;;;;;EAQzD,UAAA,CAAW,UAAA,EAAY,aAAA,EAAe,QAAA;;;;;;;EAQtC,MAAA,CAAO,KAAA,UAAe,KAAA;EACtB,MAAA,CAAO,KAAA,UAAe,QAAA,EAAU,aAAA,EAAe,KAAA;EAC/C,MAAA,CAAO,SAAA,EAAW,WAAA;;;;;;;EAQlB,SAAA,CAAU,UAAA,EAAY,aAAA,EAAe,QAAA;;;;;;;;;;;;EAiBrC,IAAA,CAAK,OAAA,EAAS,WAAA;;;;;;;;;;EAed,GAAA,CAAI,OAAA,GAAU,MAAA;;;;;;;EAQd,MAAA,IAAU,SAAA,aAAsB,IAAA,cAAkB,CAAA;;;;;;;;EASlD,KAAA;;;;;;;;EASA,GAAA,CAAI,QAAA,GAAW,OAAA;;;;;;;EAQf,IAAA,IACE,SAAA,EAAW,CAAA,8BACX,QAAA,GAAW,OAAA,QAAe,KAAA,EAAO,CAAA,WACjC,SAAA,IAAa,OAAA;;;;;;;EAaf,GAAA,UAAa,CAAA,KAAM,OAAA,CAAQ,MAAA;;;;;;;EAQ3B,KAAA,UAAe,CAAA,KAAM,OAAA,CAAQ,MAAA;;;;;;;;EAS7B,WAAA,UAAqB,CAAA,KAAM,OAAA,CAAQ,MAAA;;;;;;;EAQnC,IAAA,UAAc,CAAA,EAAG,KAAA,YAAiB,OAAA,CAAQ,MAAA;;;;;;;EAQ1C,KAAA,IAAS,OAAA;;;;;;;EAQT,GAAA,CAAI,KAAA,WAAgB,OAAA;;;;;;;EAQpB,GAAA,CAAI,KAAA,WAAgB,OAAA;;;;;;;EAQpB,GAAA,CAAI,KAAA,WAAgB,OAAA;;;;;;;EAQpB,GAAA,CAAI,KAAA,WAAgB,OAAA;;;;;;;;;EAUpB,QAAA,cAAsB,KAAA,WAAgB,OAAA,CAAQ,CAAA;;;;;;;EAQ9C,KAAA,CAAM,KAAA,WAAgB,OAAA;;;;;;;EAQtB,KAAA,cAAmB,KAAA,WAAgB,OAAA,CAAQ,CAAA;;;;;;;EAQ3C,MAAA,IAAU,OAAA;;;;;;;EAQV,SAAA,IAAa,OAAA;;;;;;;EAQb,aAAA,CAAc,KAAA,WAAgB,OAAA;;;;;;;;EAS9B,SAAA,CAAU,KAAA,UAAe,MAAA,YAAkB,OAAA;;;;;;;;EAS3C,SAAA,CAAU,KAAA,UAAe,MAAA,YAAkB,OAAA;;;;;;;EAQ3C,aAAA,CAAc,KAAA,UAAe,MAAA,YAAkB,OAAA;;;;;;;EAQ/C,aAAA,CAAc,KAAA,UAAe,MAAA,YAAkB,OAAA;;;;;;;;;;;EAgB/C,KAAA,CAAM,IAAA,UAAc,QAAA,EAAU,aAAA,CAAc,CAAA,IAAK,OAAA;;;;;;;;EASjD,QAAA,CAAS,OAAA,EAAS,iBAAA,GAAoB,OAAA,CAAQ,gBAAA,CAAiB,CAAA;;;;;;;;EAS/D,cAAA,CAAe,OAAA,EAAS,uBAAA,GAA0B,OAAA,CAAQ,sBAAA,CAAuB,CAAA;;;;;;;;;;;;;;;EAoBjF,KAAA,IAAS,WAAA;;;;;EAMT,MAAA;;;;;;;EAQA,OAAA,IAAW,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+BX,SAAA,CAAU,MAAA,UAAgB,SAAA,YAAqB,KAAA;AAAA"}
|
|
1
|
+
{"version":3,"file":"query-builder.contract.d.mts","names":[],"sources":["../../../../../../../@warlock.js/cascade/src/contracts/query-builder.contract.ts"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DeleteStrategy, MigrationDefaults, ModelDefaults, RelationDefaults } from "../types.mjs";
|
|
2
|
-
import { DriverContract } from "../contracts/database-driver.contract.mjs";
|
|
2
|
+
import { DriverContract, RawQueryResult } from "../contracts/database-driver.contract.mjs";
|
|
3
3
|
import { IdGeneratorContract } from "../contracts/database-id-generator.contract.mjs";
|
|
4
4
|
//#region ../@warlock.js/cascade/src/data-source/data-source.d.ts
|
|
5
5
|
/**
|
|
@@ -154,6 +154,26 @@ declare class DataSource {
|
|
|
154
154
|
* ```
|
|
155
155
|
*/
|
|
156
156
|
get idGenerator(): IdGeneratorContract | undefined;
|
|
157
|
+
/**
|
|
158
|
+
* Execute a raw query against this data source's driver.
|
|
159
|
+
*
|
|
160
|
+
* Thin passthrough to `driver.query`, so it is transaction-aware: inside a
|
|
161
|
+
* `transaction()` scope the query auto-joins the active transaction
|
|
162
|
+
* client/session.
|
|
163
|
+
*
|
|
164
|
+
* @typeParam T - The expected row shape.
|
|
165
|
+
* @param sql - Raw SQL string (driver dialect).
|
|
166
|
+
* @param params - Optional positional query parameters.
|
|
167
|
+
* @returns The driver's raw query result (`rows` + `rowCount`).
|
|
168
|
+
*
|
|
169
|
+
* @example
|
|
170
|
+
* ```typescript
|
|
171
|
+
* const { rows } = await dataSource.raw<{ count: number }>(
|
|
172
|
+
* "SELECT COUNT(*)::int AS count FROM users",
|
|
173
|
+
* );
|
|
174
|
+
* ```
|
|
175
|
+
*/
|
|
176
|
+
raw<T = Record<string, unknown>>(sql: string, params?: unknown[]): Promise<RawQueryResult<T>>;
|
|
157
177
|
}
|
|
158
178
|
//#endregion
|
|
159
179
|
export { DataSource, DataSourceOptions };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-source.d.mts","names":[],"sources":["../../../../../../../@warlock.js/cascade/src/data-source/data-source.ts"],"mappings":";;;;;;;KAMY,iBAAA;EAAA,+CAEV,IAAA;EAEA,MAAA,EAAQ,cAAA,EAagB;EAXxB,SAAA;EAiCgB;;;;;;;;;;EAtBhB,qBAAA,GAAwB,cAAA;EAYxB;;;;;;;;;;EAAA,iBAAA;EAuDO;AAAA;AA8BT;;;;;;EA3EE,aAAA,GAAgB,OAAA,CAAQ,aAAA;EA+FY;;;;;;;;EArFpC,iBAAA,GAAoB,iBAAA;
|
|
1
|
+
{"version":3,"file":"data-source.d.mts","names":[],"sources":["../../../../../../../@warlock.js/cascade/src/data-source/data-source.ts"],"mappings":";;;;;;;KAMY,iBAAA;EAAA,+CAEV,IAAA;EAEA,MAAA,EAAQ,cAAA,EAagB;EAXxB,SAAA;EAiCgB;;;;;;;;;;EAtBhB,qBAAA,GAAwB,cAAA;EAYxB;;;;;;;;;;EAAA,iBAAA;EAuDO;AAAA;AA8BT;;;;;;EA3EE,aAAA,GAAgB,OAAA,CAAQ,aAAA;EA+FY;;;;;;;;EArFpC,iBAAA,GAAoB,iBAAA;EAgKV;;;;;;;;;EArJV,gBAAA,GAAmB,gBAAA;EAuEqB;;;EAlExC,UAAA;IAwEmC;;;;;;;;;;;IA5DjC,aAAA;IAkIA;;;;;IA3HA,KAAA;EAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;cA8BS,UAAA;;WAEK,IAAA;;WAGA,MAAA,EAAQ,cAAA;;WAGR,SAAA;;WAGA,qBAAA,GAAwB,cAAA;;WAGxB,iBAAA;;WAGA,aAAA,GAAgB,OAAA,CAAQ,aAAA;;WAGxB,iBAAA,GAAoB,iBAAA;;WAGpB,gBAAA,GAAmB,gBAAA;;WAGnB,UAAA;IACd,aAAA;IACA,KAAA;EAAA;;;;;;cAQiB,OAAA,EAAS,iBAAA;;;;;;;;;;;;;;;;;MA4BjB,WAAA,IAAe,mBAAA;;;;;;;;;;;;;;;;;;;;EA4BnB,GAAA,KAAQ,MAAA,mBACb,GAAA,UACA,MAAA,eACC,OAAA,CAAQ,cAAA,CAAe,CAAA;AAAA"}
|
|
@@ -80,6 +80,28 @@ var DataSource = class {
|
|
|
80
80
|
const driver = this.driver;
|
|
81
81
|
if (typeof driver.getIdGenerator === "function") return driver.getIdGenerator();
|
|
82
82
|
}
|
|
83
|
+
/**
|
|
84
|
+
* Execute a raw query against this data source's driver.
|
|
85
|
+
*
|
|
86
|
+
* Thin passthrough to `driver.query`, so it is transaction-aware: inside a
|
|
87
|
+
* `transaction()` scope the query auto-joins the active transaction
|
|
88
|
+
* client/session.
|
|
89
|
+
*
|
|
90
|
+
* @typeParam T - The expected row shape.
|
|
91
|
+
* @param sql - Raw SQL string (driver dialect).
|
|
92
|
+
* @param params - Optional positional query parameters.
|
|
93
|
+
* @returns The driver's raw query result (`rows` + `rowCount`).
|
|
94
|
+
*
|
|
95
|
+
* @example
|
|
96
|
+
* ```typescript
|
|
97
|
+
* const { rows } = await dataSource.raw<{ count: number }>(
|
|
98
|
+
* "SELECT COUNT(*)::int AS count FROM users",
|
|
99
|
+
* );
|
|
100
|
+
* ```
|
|
101
|
+
*/
|
|
102
|
+
raw(sql, params) {
|
|
103
|
+
return this.driver.query(sql, params);
|
|
104
|
+
}
|
|
83
105
|
};
|
|
84
106
|
|
|
85
107
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-source.mjs","names":[],"sources":["../../../../../../../@warlock.js/cascade/src/data-source/data-source.ts"],"sourcesContent":["import type { DriverContract, IdGeneratorContract } from \"../contracts\";\nimport type { DeleteStrategy, MigrationDefaults, ModelDefaults, RelationDefaults } from \"../types\";\n\n/**\n * Configuration options used when registering a data source.\n */\nexport type DataSourceOptions = {\n /** Unique name identifying the data source. */\n name: string;\n /** Driver bound to the data source. */\n driver: DriverContract;\n /** Whether this data source should be considered the default one. */\n isDefault?: boolean;\n /**\n * Default delete strategy for models using this data source.\n *\n * - MongoDB: Typically `\"trash\"` (uses RecycleBin collection)\n * - PostgreSQL: Typically `\"permanent\"` or `\"soft\"`\n *\n * Can be overridden by model static property or destroy() options.\n *\n * @default undefined (falls back to \"permanent\")\n */\n defaultDeleteStrategy?: DeleteStrategy;\n\n /**\n * Default trash table/collection name for \"trash\" delete strategy.\n *\n * - MongoDB: Typically `\"RecycleBin\"`\n * - If not set, defaults to `{table}Trash` pattern\n *\n * Can be overridden by Model.trashTable static property.\n *\n * @default undefined (uses {table}Trash pattern)\n */\n defaultTrashTable?: string;\n\n /**\n * Default model configuration for all models using this data source.\n *\n * These defaults override driver defaults but are overridden by\n * individual model static properties.\n *\n * @default undefined\n */\n modelDefaults?: Partial<ModelDefaults>;\n\n /**\n * Migration-level defaults (UUID strategy, etc.).\n *\n * These defaults override driver migration defaults but can be\n * overridden by individual migration calls.\n *\n * @default undefined (uses driver defaults)\n */\n migrationDefaults?: MigrationDefaults;\n\n /**\n * Default relation conventions (FK suffix, pivot-table naming order).\n *\n * Consumed by the runtime convention helpers in\n * `relations/key-conventions.ts` whenever a relation definition omits\n * an explicit `foreignKey` / `pivot` / pivot-column override.\n *\n * @default undefined (uses framework defaults)\n */\n relationDefaults?: RelationDefaults;\n\n /**\n * Migration configuration options.\n */\n migrations?: {\n /**\n * Whether to wrap migrations in database transactions.\n *\n * Overrides driver defaults:\n * - PostgreSQL default: `true` (DDL is transactional)\n * - MongoDB default: `false` (DDL cannot be transactional)\n *\n * Individual migrations can override this with their own `transactional` property.\n *\n * @default undefined (uses driver default)\n */\n transactional?: boolean;\n\n /**\n * Name of the migrations tracking table/collection.\n *\n * @default \"_migrations\"\n */\n table?: string;\n };\n};\n\n/**\n * Wrapper that couples a driver with its metadata.\n *\n * A data source represents a database connection with all its associated services.\n * The ID generator (if needed) is provided by the driver itself.\n *\n * @example\n * ```typescript\n * // MongoDB with auto ID generation\n * const mongoDriver = new MongoDbDriver({\n * host: \"localhost\",\n * port: 27017,\n * database: \"myapp\",\n * autoGenerateId: true, // Driver creates its own ID generator\n * });\n *\n * const dataSource = new DataSource({\n * name: \"primary\",\n * driver: mongoDriver,\n * isDefault: true,\n * });\n *\n * // Access ID generator from driver\n * const idGenerator = dataSource.idGenerator;\n * ```\n */\nexport class DataSource {\n /** Unique name identifying this data source. */\n public readonly name: string;\n\n /** Database driver for executing queries. */\n public readonly driver: DriverContract;\n\n /** Whether this is the default data source. */\n public readonly isDefault: boolean;\n\n /** Default delete strategy for models using this data source. */\n public readonly defaultDeleteStrategy?: DeleteStrategy;\n\n /** Default trash table/collection name for \"trash\" delete strategy. */\n public readonly defaultTrashTable?: string;\n\n /** Default model configuration for all models using this data source. */\n public readonly modelDefaults?: Partial<ModelDefaults>;\n\n /** Migration-level defaults (UUID strategy, etc.). */\n public readonly migrationDefaults?: MigrationDefaults;\n\n /** Default relation conventions (FK suffix, pivot ordering). */\n public readonly relationDefaults?: RelationDefaults;\n\n /** Migration configuration options. */\n public readonly migrations?: {\n transactional?: boolean;\n table?: string;\n };\n\n /**\n * Create a new data source.\n *\n * @param options - Configuration options\n */\n public constructor(options: DataSourceOptions) {\n this.name = options.name;\n this.driver = options.driver;\n this.isDefault = Boolean(options.isDefault);\n this.defaultDeleteStrategy = options.defaultDeleteStrategy;\n this.defaultTrashTable = options.defaultTrashTable;\n this.modelDefaults = options.modelDefaults;\n this.migrationDefaults = options.migrationDefaults;\n this.relationDefaults = options.relationDefaults;\n this.migrations = options.migrations;\n }\n\n /**\n * Get the ID generator from the driver (if available).\n *\n * NoSQL drivers like MongoDB can provide their own ID generator.\n * SQL drivers return undefined as they use native AUTO_INCREMENT.\n *\n * @returns The ID generator instance, or undefined\n *\n * @example\n * ```typescript\n * const idGenerator = dataSource.idGenerator;\n * if (idGenerator) {\n * const id = await idGenerator.generateNextId({ table: \"users\" });\n * }\n * ```\n */\n public get idGenerator(): IdGeneratorContract | undefined {\n // Check if driver has a getIdGenerator method (duck typing)\n const driver = this.driver as any;\n if (typeof driver.getIdGenerator === \"function\") {\n return driver.getIdGenerator();\n }\n return undefined;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAwHA,IAAa,aAAb,MAAwB;;CAEtB,AAAgB;;CAGhB,AAAgB;;CAGhB,AAAgB;;CAGhB,AAAgB;;CAGhB,AAAgB;;CAGhB,AAAgB;;CAGhB,AAAgB;;CAGhB,AAAgB;;CAGhB,AAAgB;;;;;;CAUhB,AAAO,YAAY,SAA4B;EAC7C,KAAK,OAAO,QAAQ;EACpB,KAAK,SAAS,QAAQ;EACtB,KAAK,YAAY,QAAQ,QAAQ,SAAS;EAC1C,KAAK,wBAAwB,QAAQ;EACrC,KAAK,oBAAoB,QAAQ;EACjC,KAAK,gBAAgB,QAAQ;EAC7B,KAAK,oBAAoB,QAAQ;EACjC,KAAK,mBAAmB,QAAQ;EAChC,KAAK,aAAa,QAAQ;CAC5B;;;;;;;;;;;;;;;;;CAkBA,IAAW,cAA+C;EAExD,MAAM,SAAS,KAAK;EACpB,IAAI,OAAO,OAAO,mBAAmB,YACnC,OAAO,OAAO,eAAe;CAGjC;AACF"}
|
|
1
|
+
{"version":3,"file":"data-source.mjs","names":[],"sources":["../../../../../../../@warlock.js/cascade/src/data-source/data-source.ts"],"sourcesContent":["import type { DriverContract, IdGeneratorContract, RawQueryResult } from \"../contracts\";\nimport type { DeleteStrategy, MigrationDefaults, ModelDefaults, RelationDefaults } from \"../types\";\n\n/**\n * Configuration options used when registering a data source.\n */\nexport type DataSourceOptions = {\n /** Unique name identifying the data source. */\n name: string;\n /** Driver bound to the data source. */\n driver: DriverContract;\n /** Whether this data source should be considered the default one. */\n isDefault?: boolean;\n /**\n * Default delete strategy for models using this data source.\n *\n * - MongoDB: Typically `\"trash\"` (uses RecycleBin collection)\n * - PostgreSQL: Typically `\"permanent\"` or `\"soft\"`\n *\n * Can be overridden by model static property or destroy() options.\n *\n * @default undefined (falls back to \"permanent\")\n */\n defaultDeleteStrategy?: DeleteStrategy;\n\n /**\n * Default trash table/collection name for \"trash\" delete strategy.\n *\n * - MongoDB: Typically `\"RecycleBin\"`\n * - If not set, defaults to `{table}Trash` pattern\n *\n * Can be overridden by Model.trashTable static property.\n *\n * @default undefined (uses {table}Trash pattern)\n */\n defaultTrashTable?: string;\n\n /**\n * Default model configuration for all models using this data source.\n *\n * These defaults override driver defaults but are overridden by\n * individual model static properties.\n *\n * @default undefined\n */\n modelDefaults?: Partial<ModelDefaults>;\n\n /**\n * Migration-level defaults (UUID strategy, etc.).\n *\n * These defaults override driver migration defaults but can be\n * overridden by individual migration calls.\n *\n * @default undefined (uses driver defaults)\n */\n migrationDefaults?: MigrationDefaults;\n\n /**\n * Default relation conventions (FK suffix, pivot-table naming order).\n *\n * Consumed by the runtime convention helpers in\n * `relations/key-conventions.ts` whenever a relation definition omits\n * an explicit `foreignKey` / `pivot` / pivot-column override.\n *\n * @default undefined (uses framework defaults)\n */\n relationDefaults?: RelationDefaults;\n\n /**\n * Migration configuration options.\n */\n migrations?: {\n /**\n * Whether to wrap migrations in database transactions.\n *\n * Overrides driver defaults:\n * - PostgreSQL default: `true` (DDL is transactional)\n * - MongoDB default: `false` (DDL cannot be transactional)\n *\n * Individual migrations can override this with their own `transactional` property.\n *\n * @default undefined (uses driver default)\n */\n transactional?: boolean;\n\n /**\n * Name of the migrations tracking table/collection.\n *\n * @default \"_migrations\"\n */\n table?: string;\n };\n};\n\n/**\n * Wrapper that couples a driver with its metadata.\n *\n * A data source represents a database connection with all its associated services.\n * The ID generator (if needed) is provided by the driver itself.\n *\n * @example\n * ```typescript\n * // MongoDB with auto ID generation\n * const mongoDriver = new MongoDbDriver({\n * host: \"localhost\",\n * port: 27017,\n * database: \"myapp\",\n * autoGenerateId: true, // Driver creates its own ID generator\n * });\n *\n * const dataSource = new DataSource({\n * name: \"primary\",\n * driver: mongoDriver,\n * isDefault: true,\n * });\n *\n * // Access ID generator from driver\n * const idGenerator = dataSource.idGenerator;\n * ```\n */\nexport class DataSource {\n /** Unique name identifying this data source. */\n public readonly name: string;\n\n /** Database driver for executing queries. */\n public readonly driver: DriverContract;\n\n /** Whether this is the default data source. */\n public readonly isDefault: boolean;\n\n /** Default delete strategy for models using this data source. */\n public readonly defaultDeleteStrategy?: DeleteStrategy;\n\n /** Default trash table/collection name for \"trash\" delete strategy. */\n public readonly defaultTrashTable?: string;\n\n /** Default model configuration for all models using this data source. */\n public readonly modelDefaults?: Partial<ModelDefaults>;\n\n /** Migration-level defaults (UUID strategy, etc.). */\n public readonly migrationDefaults?: MigrationDefaults;\n\n /** Default relation conventions (FK suffix, pivot ordering). */\n public readonly relationDefaults?: RelationDefaults;\n\n /** Migration configuration options. */\n public readonly migrations?: {\n transactional?: boolean;\n table?: string;\n };\n\n /**\n * Create a new data source.\n *\n * @param options - Configuration options\n */\n public constructor(options: DataSourceOptions) {\n this.name = options.name;\n this.driver = options.driver;\n this.isDefault = Boolean(options.isDefault);\n this.defaultDeleteStrategy = options.defaultDeleteStrategy;\n this.defaultTrashTable = options.defaultTrashTable;\n this.modelDefaults = options.modelDefaults;\n this.migrationDefaults = options.migrationDefaults;\n this.relationDefaults = options.relationDefaults;\n this.migrations = options.migrations;\n }\n\n /**\n * Get the ID generator from the driver (if available).\n *\n * NoSQL drivers like MongoDB can provide their own ID generator.\n * SQL drivers return undefined as they use native AUTO_INCREMENT.\n *\n * @returns The ID generator instance, or undefined\n *\n * @example\n * ```typescript\n * const idGenerator = dataSource.idGenerator;\n * if (idGenerator) {\n * const id = await idGenerator.generateNextId({ table: \"users\" });\n * }\n * ```\n */\n public get idGenerator(): IdGeneratorContract | undefined {\n // Check if driver has a getIdGenerator method (duck typing)\n const driver = this.driver as any;\n if (typeof driver.getIdGenerator === \"function\") {\n return driver.getIdGenerator();\n }\n return undefined;\n }\n\n /**\n * Execute a raw query against this data source's driver.\n *\n * Thin passthrough to `driver.query`, so it is transaction-aware: inside a\n * `transaction()` scope the query auto-joins the active transaction\n * client/session.\n *\n * @typeParam T - The expected row shape.\n * @param sql - Raw SQL string (driver dialect).\n * @param params - Optional positional query parameters.\n * @returns The driver's raw query result (`rows` + `rowCount`).\n *\n * @example\n * ```typescript\n * const { rows } = await dataSource.raw<{ count: number }>(\n * \"SELECT COUNT(*)::int AS count FROM users\",\n * );\n * ```\n */\n public raw<T = Record<string, unknown>>(\n sql: string,\n params?: unknown[],\n ): Promise<RawQueryResult<T>> {\n return this.driver.query<T>(sql, params);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAwHA,IAAa,aAAb,MAAwB;;CAEtB,AAAgB;;CAGhB,AAAgB;;CAGhB,AAAgB;;CAGhB,AAAgB;;CAGhB,AAAgB;;CAGhB,AAAgB;;CAGhB,AAAgB;;CAGhB,AAAgB;;CAGhB,AAAgB;;;;;;CAUhB,AAAO,YAAY,SAA4B;EAC7C,KAAK,OAAO,QAAQ;EACpB,KAAK,SAAS,QAAQ;EACtB,KAAK,YAAY,QAAQ,QAAQ,SAAS;EAC1C,KAAK,wBAAwB,QAAQ;EACrC,KAAK,oBAAoB,QAAQ;EACjC,KAAK,gBAAgB,QAAQ;EAC7B,KAAK,oBAAoB,QAAQ;EACjC,KAAK,mBAAmB,QAAQ;EAChC,KAAK,aAAa,QAAQ;CAC5B;;;;;;;;;;;;;;;;;CAkBA,IAAW,cAA+C;EAExD,MAAM,SAAS,KAAK;EACpB,IAAI,OAAO,OAAO,mBAAmB,YACnC,OAAO,OAAO,eAAe;CAGjC;;;;;;;;;;;;;;;;;;;;CAqBA,AAAO,IACL,KACA,QAC4B;EAC5B,OAAO,KAAK,OAAO,MAAS,KAAK,MAAM;CACzC;AACF"}
|
|
@@ -5,7 +5,7 @@ import { DatabaseDirtyTracker } from "../../database-dirty-tracker.mjs";
|
|
|
5
5
|
import { SQLSerializer } from "../../migration/sql-serializer.mjs";
|
|
6
6
|
import { QueryBuilderContract } from "../../contracts/query-builder.contract.mjs";
|
|
7
7
|
import { SyncAdapterContract } from "../../contracts/sync-adapter.contract.mjs";
|
|
8
|
-
import { DriverContract, DriverEvent, DriverEventListener, DriverTransactionContract, InsertResult, TransactionContext, UpdateOperations, UpdateResult } from "../../contracts/database-driver.contract.mjs";
|
|
8
|
+
import { DriverContract, DriverEvent, DriverEventListener, DriverTransactionContract, InsertResult, RawQueryResult, TransactionContext, UpdateOperations, UpdateResult } from "../../contracts/database-driver.contract.mjs";
|
|
9
9
|
import { IdGeneratorContract } from "../../contracts/database-id-generator.contract.mjs";
|
|
10
10
|
import { MongoDriverOptions } from "./types.mjs";
|
|
11
11
|
import { ClientSession, Db, MongoClient, MongoClientOptions } from "mongodb";
|
|
@@ -278,7 +278,7 @@ declare class MongoDbDriver implements DriverContract {
|
|
|
278
278
|
* Execute a raw SQL query.
|
|
279
279
|
* Not supported for MongoDB.
|
|
280
280
|
*/
|
|
281
|
-
query<T = unknown
|
|
281
|
+
query<T = Record<string, unknown>>(_sql: string, _params?: unknown[]): Promise<RawQueryResult<T>>;
|
|
282
282
|
/**
|
|
283
283
|
* Create a new database.
|
|
284
284
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mongodb-driver.d.mts","names":[],"sources":["../../../../../../../../@warlock.js/cascade/src/drivers/mongodb/mongodb-driver.ts"],"mappings":";;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"mongodb-driver.d.mts","names":[],"sources":["../../../../../../../../@warlock.js/cascade/src/drivers/mongodb/mongodb-driver.ts"],"mappings":"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"}
|
|
@@ -481,7 +481,10 @@ var MongoDbDriver = class {
|
|
|
481
481
|
* @throws {Error} If transaction fails, is explicitly rolled back, or replica set not configured
|
|
482
482
|
*/
|
|
483
483
|
async transaction(fn, options) {
|
|
484
|
-
|
|
484
|
+
const ctx = { rollback(reason) {
|
|
485
|
+
throw new TransactionRollbackError(reason);
|
|
486
|
+
} };
|
|
487
|
+
if (databaseTransactionContext.hasActiveTransaction()) return fn(ctx);
|
|
485
488
|
await this.ensureReplicaSetAvailable();
|
|
486
489
|
const session = this.getClientInstance().startSession();
|
|
487
490
|
try {
|
|
@@ -491,9 +494,7 @@ var MongoDbDriver = class {
|
|
|
491
494
|
});
|
|
492
495
|
databaseTransactionContext.enter({ session });
|
|
493
496
|
try {
|
|
494
|
-
const result = await fn(
|
|
495
|
-
throw new TransactionRollbackError(reason);
|
|
496
|
-
} });
|
|
497
|
+
const result = await fn(ctx);
|
|
497
498
|
await session.commitTransaction();
|
|
498
499
|
return result;
|
|
499
500
|
} catch (error) {
|