@rudderjs/database 1.1.0 → 1.2.0
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/README.md +70 -0
- package/dist/db.d.ts +21 -3
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +27 -5
- package/dist/db.js.map +1 -1
- package/dist/index.d.ts +14 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +23 -4
- package/dist/index.js.map +1 -1
- package/dist/native/adapter.d.ts +202 -0
- package/dist/native/adapter.d.ts.map +1 -0
- package/dist/native/adapter.js +440 -0
- package/dist/native/adapter.js.map +1 -0
- package/dist/native/compiler.d.ts +371 -0
- package/dist/native/compiler.d.ts.map +1 -0
- package/dist/native/compiler.js +978 -0
- package/dist/native/compiler.js.map +1 -0
- package/dist/native/dialect-mysql.d.ts +26 -0
- package/dist/native/dialect-mysql.d.ts.map +1 -0
- package/dist/native/dialect-mysql.js +188 -0
- package/dist/native/dialect-mysql.js.map +1 -0
- package/dist/native/dialect-pg.d.ts +26 -0
- package/dist/native/dialect-pg.d.ts.map +1 -0
- package/dist/native/dialect-pg.js +192 -0
- package/dist/native/dialect-pg.js.map +1 -0
- package/dist/native/dialect.d.ts +255 -0
- package/dist/native/dialect.d.ts.map +1 -0
- package/dist/native/dialect.js +237 -0
- package/dist/native/dialect.js.map +1 -0
- package/dist/native/driver.d.ts +37 -0
- package/dist/native/driver.d.ts.map +1 -0
- package/dist/native/driver.js +19 -0
- package/dist/native/driver.js.map +1 -0
- package/dist/native/drivers/better-sqlite3.d.ts +56 -0
- package/dist/native/drivers/better-sqlite3.d.ts.map +1 -0
- package/dist/native/drivers/better-sqlite3.js +171 -0
- package/dist/native/drivers/better-sqlite3.js.map +1 -0
- package/dist/native/drivers/mysql.d.ts +30 -0
- package/dist/native/drivers/mysql.d.ts.map +1 -0
- package/dist/native/drivers/mysql.js +176 -0
- package/dist/native/drivers/mysql.js.map +1 -0
- package/dist/native/drivers/postgres.d.ts +57 -0
- package/dist/native/drivers/postgres.d.ts.map +1 -0
- package/dist/native/drivers/postgres.js +155 -0
- package/dist/native/drivers/postgres.js.map +1 -0
- package/dist/native/errors.d.ts +43 -0
- package/dist/native/errors.d.ts.map +1 -0
- package/dist/native/errors.js +64 -0
- package/dist/native/errors.js.map +1 -0
- package/dist/native/index.d.ts +27 -0
- package/dist/native/index.d.ts.map +1 -0
- package/dist/native/index.js +55 -0
- package/dist/native/index.js.map +1 -0
- package/dist/native/isolation.d.ts +14 -0
- package/dist/native/isolation.d.ts.map +1 -0
- package/dist/native/isolation.js +37 -0
- package/dist/native/isolation.js.map +1 -0
- package/dist/native/query-builder.d.ts +303 -0
- package/dist/native/query-builder.d.ts.map +1 -0
- package/dist/native/query-builder.js +984 -0
- package/dist/native/query-builder.js.map +1 -0
- package/dist/native/replica-picker.d.ts +22 -0
- package/dist/native/replica-picker.d.ts.map +1 -0
- package/dist/native/replica-picker.js +65 -0
- package/dist/native/replica-picker.js.map +1 -0
- package/dist/native/schema/alter-blueprint.d.ts +37 -0
- package/dist/native/schema/alter-blueprint.d.ts.map +1 -0
- package/dist/native/schema/alter-blueprint.js +56 -0
- package/dist/native/schema/alter-blueprint.js.map +1 -0
- package/dist/native/schema/blueprint.d.ts +151 -0
- package/dist/native/schema/blueprint.d.ts.map +1 -0
- package/dist/native/schema/blueprint.js +286 -0
- package/dist/native/schema/blueprint.js.map +1 -0
- package/dist/native/schema/column.d.ts +168 -0
- package/dist/native/schema/column.d.ts.map +1 -0
- package/dist/native/schema/column.js +190 -0
- package/dist/native/schema/column.js.map +1 -0
- package/dist/native/schema/ddl-compiler.d.ts +34 -0
- package/dist/native/schema/ddl-compiler.d.ts.map +1 -0
- package/dist/native/schema/ddl-compiler.js +352 -0
- package/dist/native/schema/ddl-compiler.js.map +1 -0
- package/dist/native/schema/inspect.d.ts +67 -0
- package/dist/native/schema/inspect.d.ts.map +1 -0
- package/dist/native/schema/inspect.js +312 -0
- package/dist/native/schema/inspect.js.map +1 -0
- package/dist/native/schema/introspect.d.ts +34 -0
- package/dist/native/schema/introspect.d.ts.map +1 -0
- package/dist/native/schema/introspect.js +101 -0
- package/dist/native/schema/introspect.js.map +1 -0
- package/dist/native/schema/migration.d.ts +8 -0
- package/dist/native/schema/migration.d.ts.map +1 -0
- package/dist/native/schema/migration.js +19 -0
- package/dist/native/schema/migration.js.map +1 -0
- package/dist/native/schema/migrator.d.ts +144 -0
- package/dist/native/schema/migrator.d.ts.map +1 -0
- package/dist/native/schema/migrator.js +239 -0
- package/dist/native/schema/migrator.js.map +1 -0
- package/dist/native/schema/rebuild.d.ts +11 -0
- package/dist/native/schema/rebuild.d.ts.map +1 -0
- package/dist/native/schema/rebuild.js +92 -0
- package/dist/native/schema/rebuild.js.map +1 -0
- package/dist/native/schema/schema-builder.d.ts +46 -0
- package/dist/native/schema/schema-builder.d.ts.map +1 -0
- package/dist/native/schema/schema-builder.js +153 -0
- package/dist/native/schema/schema-builder.js.map +1 -0
- package/dist/native/schema/schema-facade.d.ts +63 -0
- package/dist/native/schema/schema-facade.d.ts.map +1 -0
- package/dist/native/schema/schema-facade.js +124 -0
- package/dist/native/schema/schema-facade.js.map +1 -0
- package/dist/native/schema/schema-types.d.ts +27 -0
- package/dist/native/schema/schema-types.d.ts.map +1 -0
- package/dist/native/schema/schema-types.js +52 -0
- package/dist/native/schema/schema-types.js.map +1 -0
- package/dist/native/schema/types-generator.d.ts +73 -0
- package/dist/native/schema/types-generator.d.ts.map +1 -0
- package/dist/native/schema/types-generator.js +181 -0
- package/dist/native/schema/types-generator.js.map +1 -0
- package/dist/registry-bridge.d.ts +24 -4
- package/dist/registry-bridge.d.ts.map +1 -1
- package/dist/registry-bridge.js +20 -0
- package/dist/registry-bridge.js.map +1 -1
- package/dist/sticky.d.ts +22 -0
- package/dist/sticky.d.ts.map +1 -0
- package/dist/sticky.js +61 -0
- package/dist/sticky.js.map +1 -0
- package/package.json +32 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-builder.js","sourceRoot":"","sources":["../../src/native/query-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How reads pick a replica on a read/write-split connection.
|
|
3
|
+
*
|
|
4
|
+
* - `'round-robin'` (default) — cycle through the replicas in `read.url` order.
|
|
5
|
+
* - `'random'` — uniform random per query.
|
|
6
|
+
* - `number[]` — weighted random: one non-negative weight per replica, in
|
|
7
|
+
* `read.url` order. `[3, 1]` sends ~75% of reads to the first replica —
|
|
8
|
+
* size weights to replica capacity.
|
|
9
|
+
* - `(count) => index` — custom: called once per read query with the replica
|
|
10
|
+
* count; returns the index of the replica to serve it.
|
|
11
|
+
*/
|
|
12
|
+
export type ReadReplicaPicker = 'round-robin' | 'random' | readonly number[] | ((count: number) => number);
|
|
13
|
+
/**
|
|
14
|
+
* Build the per-query index picker for `count` replicas. Weight lists are
|
|
15
|
+
* validated here — at adapter construction, so a bad list fails fast at boot
|
|
16
|
+
* (default connection) or first use (named connection), not per query. A
|
|
17
|
+
* custom function's return value is validated on every call instead (it can't
|
|
18
|
+
* be proven sound up front). `rng` returns a float in `[0, 1)` and is
|
|
19
|
+
* injectable for deterministic tests only.
|
|
20
|
+
*/
|
|
21
|
+
export declare function makeReplicaPicker(picker: ReadReplicaPicker | undefined, count: number, rng?: () => number): () => number;
|
|
22
|
+
//# sourceMappingURL=replica-picker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"replica-picker.d.ts","sourceRoot":"","sources":["../../src/native/replica-picker.ts"],"names":[],"mappings":"AAWA;;;;;;;;;;GAUG;AACH,MAAM,MAAM,iBAAiB,GACzB,aAAa,GACb,QAAQ,GACR,SAAS,MAAM,EAAE,GACjB,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,CAAA;AAE/B;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,iBAAiB,GAAG,SAAS,EACrC,KAAK,EAAE,MAAM,EACb,GAAG,GAAE,MAAM,MAAoB,GAC9B,MAAM,MAAM,CAgDd"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
// Read-replica selection for a read/write-split connection.
|
|
2
|
+
//
|
|
3
|
+
// The adapter builds ONE picker per split connection and calls it once per
|
|
4
|
+
// read terminal — after the sticky check, so a sticky hit never consumes a
|
|
5
|
+
// pick. Strategies: round-robin (the default and the historical behavior),
|
|
6
|
+
// uniform random, weighted random (one weight per replica), or a
|
|
7
|
+
// caller-supplied index function (the escape hatch — Drizzle's `getReplica`
|
|
8
|
+
// equivalent). The Drizzle adapter shares this module via the
|
|
9
|
+
// `@rudderjs/orm/native` re-export shim, so both engines validate and pick
|
|
10
|
+
// identically.
|
|
11
|
+
/**
|
|
12
|
+
* Build the per-query index picker for `count` replicas. Weight lists are
|
|
13
|
+
* validated here — at adapter construction, so a bad list fails fast at boot
|
|
14
|
+
* (default connection) or first use (named connection), not per query. A
|
|
15
|
+
* custom function's return value is validated on every call instead (it can't
|
|
16
|
+
* be proven sound up front). `rng` returns a float in `[0, 1)` and is
|
|
17
|
+
* injectable for deterministic tests only.
|
|
18
|
+
*/
|
|
19
|
+
export function makeReplicaPicker(picker, count, rng = Math.random) {
|
|
20
|
+
if (picker === undefined || picker === 'round-robin') {
|
|
21
|
+
let rr = 0;
|
|
22
|
+
return () => rr++ % count;
|
|
23
|
+
}
|
|
24
|
+
if (picker === 'random') {
|
|
25
|
+
return () => Math.floor(rng() * count);
|
|
26
|
+
}
|
|
27
|
+
if (typeof picker === 'function') {
|
|
28
|
+
return () => {
|
|
29
|
+
const i = picker(count);
|
|
30
|
+
if (!Number.isInteger(i) || i < 0 || i >= count) {
|
|
31
|
+
throw new Error(`[RudderJS DB] Custom read picker returned ${String(i)} — ` +
|
|
32
|
+
`expected an integer replica index in [0, ${count - 1}].`);
|
|
33
|
+
}
|
|
34
|
+
return i;
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
// Weighted random. One weight per replica, validated up front.
|
|
38
|
+
const weights = picker;
|
|
39
|
+
if (weights.length !== count) {
|
|
40
|
+
throw new Error(`[RudderJS DB] Read picker weights list has ${weights.length} entr${weights.length === 1 ? 'y' : 'ies'} ` +
|
|
41
|
+
`for ${count} replica(s) — provide one weight per read.url entry.`);
|
|
42
|
+
}
|
|
43
|
+
if (weights.some((w) => typeof w !== 'number' || !Number.isFinite(w) || w < 0)) {
|
|
44
|
+
throw new Error('[RudderJS DB] Read picker weights must be finite numbers >= 0.');
|
|
45
|
+
}
|
|
46
|
+
const total = weights.reduce((sum, w) => sum + w, 0);
|
|
47
|
+
if (total <= 0) {
|
|
48
|
+
throw new Error('[RudderJS DB] Read picker weights must sum to more than 0.');
|
|
49
|
+
}
|
|
50
|
+
return () => {
|
|
51
|
+
let roll = rng() * total;
|
|
52
|
+
for (let i = 0; i < weights.length; i++) {
|
|
53
|
+
roll -= weights[i];
|
|
54
|
+
if (roll < 0)
|
|
55
|
+
return i;
|
|
56
|
+
}
|
|
57
|
+
// Floating-point edge (roll never went negative): last positive weight.
|
|
58
|
+
for (let i = weights.length - 1; i >= 0; i--) {
|
|
59
|
+
if (weights[i] > 0)
|
|
60
|
+
return i;
|
|
61
|
+
}
|
|
62
|
+
return 0;
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=replica-picker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"replica-picker.js","sourceRoot":"","sources":["../../src/native/replica-picker.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,EAAE;AACF,2EAA2E;AAC3E,2EAA2E;AAC3E,2EAA2E;AAC3E,iEAAiE;AACjE,4EAA4E;AAC5E,8DAA8D;AAC9D,2EAA2E;AAC3E,eAAe;AAmBf;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAC/B,MAAqC,EACrC,KAAa,EACb,MAAoB,IAAI,CAAC,MAAM;IAE/B,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;QACrD,IAAI,EAAE,GAAG,CAAC,CAAA;QACV,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,KAAK,CAAA;IAC3B,CAAC;IACD,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAA;IACxC,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;QACjC,OAAO,GAAG,EAAE;YACV,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;YACvB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC;gBAChD,MAAM,IAAI,KAAK,CACb,6CAA6C,MAAM,CAAC,CAAC,CAAC,KAAK;oBACzD,4CAA4C,KAAK,GAAG,CAAC,IAAI,CAC5D,CAAA;YACH,CAAC;YACD,OAAO,CAAC,CAAA;QACV,CAAC,CAAA;IACH,CAAC;IAED,+DAA+D;IAC/D,MAAM,OAAO,GAAG,MAAM,CAAA;IACtB,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CACb,8CAA8C,OAAO,CAAC,MAAM,QAAQ,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG;YACvG,OAAO,KAAK,sDAAsD,CACrE,CAAA;IACH,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAC/E,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;IACnF,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;IACpD,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAA;IAC/E,CAAC;IACD,OAAO,GAAG,EAAE;QACV,IAAI,IAAI,GAAG,GAAG,EAAE,GAAG,KAAK,CAAA;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,IAAI,IAAI,OAAO,CAAC,CAAC,CAAE,CAAA;YACnB,IAAI,IAAI,GAAG,CAAC;gBAAE,OAAO,CAAC,CAAA;QACxB,CAAC;QACD,wEAAwE;QACxE,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,IAAI,OAAO,CAAC,CAAC,CAAE,GAAG,CAAC;gBAAE,OAAO,CAAC,CAAA;QAC/B,CAAC;QACD,OAAO,CAAC,CAAA;IACV,CAAC,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Blueprint } from './blueprint.js';
|
|
2
|
+
/** A `renameColumn(from, to)` intent. */
|
|
3
|
+
export interface RenameColumn {
|
|
4
|
+
from: string;
|
|
5
|
+
to: string;
|
|
6
|
+
}
|
|
7
|
+
export declare class AlterBlueprint extends Blueprint {
|
|
8
|
+
/** Columns to drop (`t.dropColumn('votes')`). */
|
|
9
|
+
readonly droppedColumns: string[];
|
|
10
|
+
/** Column renames (`t.renameColumn('from', 'to')`). */
|
|
11
|
+
readonly renamedColumns: RenameColumn[];
|
|
12
|
+
/** Indexes to drop by name (`t.dropIndex('users_email_unique')`). */
|
|
13
|
+
readonly droppedIndexes: string[];
|
|
14
|
+
/** Foreign keys to drop, by constraint name or by the column list they cover
|
|
15
|
+
* (`t.dropForeign('users_user_id_foreign')` / `t.dropForeign(['user_id'])`).
|
|
16
|
+
* SQLite can't drop an FK in place, so the alter compiler rejects these with
|
|
17
|
+
* a clear pointer — recorded here only so the intent surfaces a good error. */
|
|
18
|
+
readonly droppedForeignKeys: Array<string | string[]>;
|
|
19
|
+
/** Drop an existing column. */
|
|
20
|
+
dropColumn(...names: string[]): void;
|
|
21
|
+
/** Rename an existing column. */
|
|
22
|
+
renameColumn(from: string, to: string): void;
|
|
23
|
+
/** Drop an index by name. */
|
|
24
|
+
dropIndex(name: string): void;
|
|
25
|
+
/** Drop a foreign key by constraint name or by the column(s) it covers.
|
|
26
|
+
* Not supported in place on SQLite — the compiler throws a helpful error. */
|
|
27
|
+
dropForeign(target: string | string[]): void;
|
|
28
|
+
/**
|
|
29
|
+
* Reverse a {@link Blueprint.morphs} / `nullableMorphs`: drop the composite
|
|
30
|
+
* index, then the `{name}Type` + `{name}Id` columns. The index name defaults to
|
|
31
|
+
* `{table}_{name}Type_{name}Id_index` (mirrors the DDL compiler's default index
|
|
32
|
+
* name) — pass the same `indexName` you passed to `morphs(...)` if you overrode
|
|
33
|
+
* it. The compiler emits the `DROP INDEX` before the `DROP COLUMN`s.
|
|
34
|
+
*/
|
|
35
|
+
dropMorphs(name: string, indexName?: string): void;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=alter-blueprint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alter-blueprint.d.ts","sourceRoot":"","sources":["../../../src/native/schema/alter-blueprint.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,yCAAyC;AACzC,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAI,MAAM,CAAA;CACb;AAED,qBAAa,cAAe,SAAQ,SAAS;IAC3C,iDAAiD;IACjD,QAAQ,CAAC,cAAc,EAAE,MAAM,EAAE,CAAK;IACtC,uDAAuD;IACvD,QAAQ,CAAC,cAAc,EAAE,YAAY,EAAE,CAAK;IAC5C,qEAAqE;IACrE,QAAQ,CAAC,cAAc,EAAE,MAAM,EAAE,CAAK;IACtC;;;oFAGgF;IAChF,QAAQ,CAAC,kBAAkB,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,CAAK;IAE1D,+BAA+B;IAC/B,UAAU,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI;IAIpC,iCAAiC;IACjC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI;IAI5C,6BAA6B;IAC7B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI7B;kFAC8E;IAC9E,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAI5C;;;;;;OAMG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;CAInD"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
// ─── AlterBlueprint (Schema.table) ─────────────────────────
|
|
2
|
+
//
|
|
3
|
+
// PURE: records the intents of a `Schema.table('users', (t) => …)` ALTER. It
|
|
4
|
+
// extends {@link Blueprint} so every column factory (`t.string`, `t.integer`, …)
|
|
5
|
+
// and `t.index` / `t.unique` are reused verbatim — on an alter they mean "ADD
|
|
6
|
+
// this column / index". On top of that it records the alter-only operations:
|
|
7
|
+
// drop column, rename column, drop index.
|
|
8
|
+
//
|
|
9
|
+
// SQLite supports ADD COLUMN, RENAME COLUMN, DROP COLUMN, and table RENAME
|
|
10
|
+
// natively (modern SQLite, which better-sqlite3 ships); the DDL compiler emits
|
|
11
|
+
// those directly. Changing an existing column (`t.string('x').change()`) is a
|
|
12
|
+
// native `ALTER COLUMN` / `MODIFY` on pg/mysql (7.4b); on SQLite it needs the
|
|
13
|
+
// table-rebuild dance, routed by SchemaBuilder before the compiler runs.
|
|
14
|
+
import { Blueprint } from './blueprint.js';
|
|
15
|
+
export class AlterBlueprint extends Blueprint {
|
|
16
|
+
/** Columns to drop (`t.dropColumn('votes')`). */
|
|
17
|
+
droppedColumns = [];
|
|
18
|
+
/** Column renames (`t.renameColumn('from', 'to')`). */
|
|
19
|
+
renamedColumns = [];
|
|
20
|
+
/** Indexes to drop by name (`t.dropIndex('users_email_unique')`). */
|
|
21
|
+
droppedIndexes = [];
|
|
22
|
+
/** Foreign keys to drop, by constraint name or by the column list they cover
|
|
23
|
+
* (`t.dropForeign('users_user_id_foreign')` / `t.dropForeign(['user_id'])`).
|
|
24
|
+
* SQLite can't drop an FK in place, so the alter compiler rejects these with
|
|
25
|
+
* a clear pointer — recorded here only so the intent surfaces a good error. */
|
|
26
|
+
droppedForeignKeys = [];
|
|
27
|
+
/** Drop an existing column. */
|
|
28
|
+
dropColumn(...names) {
|
|
29
|
+
this.droppedColumns.push(...names);
|
|
30
|
+
}
|
|
31
|
+
/** Rename an existing column. */
|
|
32
|
+
renameColumn(from, to) {
|
|
33
|
+
this.renamedColumns.push({ from, to });
|
|
34
|
+
}
|
|
35
|
+
/** Drop an index by name. */
|
|
36
|
+
dropIndex(name) {
|
|
37
|
+
this.droppedIndexes.push(name);
|
|
38
|
+
}
|
|
39
|
+
/** Drop a foreign key by constraint name or by the column(s) it covers.
|
|
40
|
+
* Not supported in place on SQLite — the compiler throws a helpful error. */
|
|
41
|
+
dropForeign(target) {
|
|
42
|
+
this.droppedForeignKeys.push(target);
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Reverse a {@link Blueprint.morphs} / `nullableMorphs`: drop the composite
|
|
46
|
+
* index, then the `{name}Type` + `{name}Id` columns. The index name defaults to
|
|
47
|
+
* `{table}_{name}Type_{name}Id_index` (mirrors the DDL compiler's default index
|
|
48
|
+
* name) — pass the same `indexName` you passed to `morphs(...)` if you overrode
|
|
49
|
+
* it. The compiler emits the `DROP INDEX` before the `DROP COLUMN`s.
|
|
50
|
+
*/
|
|
51
|
+
dropMorphs(name, indexName) {
|
|
52
|
+
this.dropIndex(indexName ?? `${this.table}_${name}Type_${name}Id_index`);
|
|
53
|
+
this.dropColumn(`${name}Type`, `${name}Id`);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=alter-blueprint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alter-blueprint.js","sourceRoot":"","sources":["../../../src/native/schema/alter-blueprint.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,EAAE;AACF,6EAA6E;AAC7E,iFAAiF;AACjF,8EAA8E;AAC9E,6EAA6E;AAC7E,0CAA0C;AAC1C,EAAE;AACF,2EAA2E;AAC3E,+EAA+E;AAC/E,8EAA8E;AAC9E,8EAA8E;AAC9E,yEAAyE;AAEzE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAQ1C,MAAM,OAAO,cAAe,SAAQ,SAAS;IAC3C,iDAAiD;IACxC,cAAc,GAAa,EAAE,CAAA;IACtC,uDAAuD;IAC9C,cAAc,GAAmB,EAAE,CAAA;IAC5C,qEAAqE;IAC5D,cAAc,GAAa,EAAE,CAAA;IACtC;;;oFAGgF;IACvE,kBAAkB,GAA6B,EAAE,CAAA;IAE1D,+BAA+B;IAC/B,UAAU,CAAC,GAAG,KAAe;QAC3B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAA;IACpC,CAAC;IAED,iCAAiC;IACjC,YAAY,CAAC,IAAY,EAAE,EAAU;QACnC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;IACxC,CAAC;IAED,6BAA6B;IAC7B,SAAS,CAAC,IAAY;QACpB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;kFAC8E;IAC9E,WAAW,CAAC,MAAyB;QACnC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACtC,CAAC;IAED;;;;;;OAMG;IACH,UAAU,CAAC,IAAY,EAAE,SAAkB;QACzC,IAAI,CAAC,SAAS,CAAC,SAAS,IAAI,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,QAAQ,IAAI,UAAU,CAAC,CAAA;QACxE,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,MAAM,EAAE,GAAG,IAAI,IAAI,CAAC,CAAA;IAC7C,CAAC;CACF"}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import { ColumnBuilder, type ColumnDefinition, type ForeignKeyDefinition, type ForeignKeyActionInput } from './column.js';
|
|
2
|
+
/** A table-level index intent (`Blueprint.index` / `.unique` / column modifiers). */
|
|
3
|
+
export interface IndexDefinition {
|
|
4
|
+
/** Columns covered, in order. */
|
|
5
|
+
columns: string[];
|
|
6
|
+
unique: boolean;
|
|
7
|
+
/** Index name. Defaults to `{table}_{col[_col…]}_{index|unique}` (Laravel-style). */
|
|
8
|
+
name?: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Fluent builder for a table-level foreign key (`Blueprint.foreign(...)`).
|
|
12
|
+
* Mutates the {@link ForeignKeyDefinition} the Blueprint recorded and returns
|
|
13
|
+
* `this` so the constraint chains Laravel-style:
|
|
14
|
+
* `t.foreign('user_id').references('id').on('users').onDelete('cascade')`.
|
|
15
|
+
*/
|
|
16
|
+
export declare class ForeignKeyBuilder {
|
|
17
|
+
private readonly fk;
|
|
18
|
+
constructor(fk: ForeignKeyDefinition);
|
|
19
|
+
/** Referenced column(s) on the foreign table (defaults to `id`). */
|
|
20
|
+
references(columns: string | string[]): this;
|
|
21
|
+
/** Referenced table. */
|
|
22
|
+
on(table: string): this;
|
|
23
|
+
onDelete(action: ForeignKeyActionInput): this;
|
|
24
|
+
onUpdate(action: ForeignKeyActionInput): this;
|
|
25
|
+
/** `onDelete('cascade')`. */
|
|
26
|
+
cascadeOnDelete(): this;
|
|
27
|
+
/** `onDelete('restrict')`. */
|
|
28
|
+
restrictOnDelete(): this;
|
|
29
|
+
/** `onDelete('set null')` — pair with nullable column(s). */
|
|
30
|
+
nullOnDelete(): this;
|
|
31
|
+
/** `onUpdate('cascade')`. */
|
|
32
|
+
cascadeOnUpdate(): this;
|
|
33
|
+
/** Override the default `{table}_{col[_col…]}_foreign` constraint name. */
|
|
34
|
+
name(name: string): this;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Records one table's shape. Mirrors Laravel's `Blueprint`: a column method
|
|
38
|
+
* returns a {@link ColumnBuilder} so modifiers chain; table-level helpers
|
|
39
|
+
* (`primary` / `unique` / `index`) record composite constraints.
|
|
40
|
+
*/
|
|
41
|
+
export declare class Blueprint {
|
|
42
|
+
readonly table: string;
|
|
43
|
+
readonly columns: ColumnDefinition[];
|
|
44
|
+
/** Composite (or explicitly-named single) primary key. Single-column PKs set
|
|
45
|
+
* inline via `.primary()` live on the column instead. */
|
|
46
|
+
primaryColumns: string[] | null;
|
|
47
|
+
readonly indexes: IndexDefinition[];
|
|
48
|
+
/** Table-level foreign keys (`Blueprint.foreign(...)`). Column-level FKs
|
|
49
|
+
* (`constrained()`) live on their {@link ColumnDefinition} instead; the
|
|
50
|
+
* compiler collects both. */
|
|
51
|
+
readonly foreignKeys: ForeignKeyDefinition[];
|
|
52
|
+
constructor(table: string);
|
|
53
|
+
private add;
|
|
54
|
+
/** Auto-incrementing integer primary key (`id` by default). */
|
|
55
|
+
id(name?: string): ColumnBuilder;
|
|
56
|
+
/** Auto-incrementing integer primary key under an explicit name. */
|
|
57
|
+
increments(name: string): ColumnBuilder;
|
|
58
|
+
/** Alias of {@link increments} — bigint on pg/mysql, INTEGER on SQLite. */
|
|
59
|
+
bigIncrements(name: string): ColumnBuilder;
|
|
60
|
+
integer(name: string): ColumnBuilder;
|
|
61
|
+
bigInteger(name: string): ColumnBuilder;
|
|
62
|
+
/** Small integer — `smallint` (pg/mysql), `INTEGER` (sqlite). */
|
|
63
|
+
smallInteger(name: string): ColumnBuilder;
|
|
64
|
+
/** Tiny integer — `tinyint` (mysql), `smallint` (pg), `INTEGER` (sqlite). */
|
|
65
|
+
tinyInteger(name: string): ColumnBuilder;
|
|
66
|
+
/** Medium integer — `mediumint` (mysql), `integer` (pg), `INTEGER` (sqlite). */
|
|
67
|
+
mediumInteger(name: string): ColumnBuilder;
|
|
68
|
+
/** Unsigned big integer intended as a foreign key. Chain `.constrained()` (or
|
|
69
|
+
* `.references(...).on(...)`) to attach the FK constraint. */
|
|
70
|
+
foreignId(name: string): ColumnBuilder;
|
|
71
|
+
/**
|
|
72
|
+
* Laravel `foreignIdFor`: an unsigned big-integer FK column whose name is
|
|
73
|
+
* derived from a related table (`'users'` → `userId`) unless `column` is given.
|
|
74
|
+
* Chain `.constrained()` to attach the constraint. Naming follows the engine's
|
|
75
|
+
* camelCase convention (singularize + `Id`), a divergence from Laravel's
|
|
76
|
+
* `{snake}_id`.
|
|
77
|
+
*/
|
|
78
|
+
foreignIdFor(related: string, column?: string): ColumnBuilder;
|
|
79
|
+
string(name: string, length?: number): ColumnBuilder;
|
|
80
|
+
/** Fixed-length `char(length)` (pg/mysql); `TEXT` on sqlite. */
|
|
81
|
+
char(name: string, length?: number): ColumnBuilder;
|
|
82
|
+
text(name: string): ColumnBuilder;
|
|
83
|
+
/** `mediumtext` (mysql); `text` (pg/sqlite). */
|
|
84
|
+
mediumText(name: string): ColumnBuilder;
|
|
85
|
+
/** `longtext` (mysql); `text` (pg/sqlite). */
|
|
86
|
+
longText(name: string): ColumnBuilder;
|
|
87
|
+
uuid(name?: string): ColumnBuilder;
|
|
88
|
+
/** 26-char ULID — `char(26)` (pg/mysql), `TEXT` (sqlite). */
|
|
89
|
+
ulid(name?: string): ColumnBuilder;
|
|
90
|
+
/** A `uuid` column intended as a foreign key — chain `.constrained()`. */
|
|
91
|
+
foreignUuid(name: string): ColumnBuilder;
|
|
92
|
+
/** A `ulid` column intended as a foreign key — chain `.constrained()`. */
|
|
93
|
+
foreignUlid(name: string): ColumnBuilder;
|
|
94
|
+
json(name: string): ColumnBuilder;
|
|
95
|
+
/** `jsonb` (pg) — binary JSON; falls back to `json` (mysql) / `TEXT` (sqlite). */
|
|
96
|
+
jsonb(name: string): ColumnBuilder;
|
|
97
|
+
/**
|
|
98
|
+
* Enumerated string column. `enum(...)` on MySQL; `varchar(255)` + a
|
|
99
|
+
* `CHECK (… IN (…))` constraint on pg/sqlite. Values are migration-author
|
|
100
|
+
* supplied — rendered as quoted literals, never bound. Throws on an empty list.
|
|
101
|
+
*/
|
|
102
|
+
enum(name: string, values: string[]): ColumnBuilder;
|
|
103
|
+
/** MySQL `set(...)` — multiple allowed values stored as a comma list. Throws a
|
|
104
|
+
* clear NotImplemented on pg/sqlite (no native SET type). */
|
|
105
|
+
set(name: string, values: string[]): ColumnBuilder;
|
|
106
|
+
decimal(name: string, precision?: number, scale?: number): ColumnBuilder;
|
|
107
|
+
float(name: string): ColumnBuilder;
|
|
108
|
+
/** Double-precision float — `double precision` (pg), `double` (mysql), `REAL` (sqlite). */
|
|
109
|
+
double(name: string): ColumnBuilder;
|
|
110
|
+
boolean(name: string): ColumnBuilder;
|
|
111
|
+
/** Calendar date (no time) — `date` (pg/mysql), `TEXT` (sqlite). */
|
|
112
|
+
date(name: string): ColumnBuilder;
|
|
113
|
+
/** Time of day (no date). Optional fractional-seconds `precision` → `time(p)`
|
|
114
|
+
* on pg/mysql; `TEXT` on sqlite. */
|
|
115
|
+
time(name: string, precision?: number): ColumnBuilder;
|
|
116
|
+
dateTime(name: string): ColumnBuilder;
|
|
117
|
+
timestamp(name: string): ColumnBuilder;
|
|
118
|
+
binary(name: string): ColumnBuilder;
|
|
119
|
+
/** `createdAt` + `updatedAt`, nullable (Laravel parity), camelCase per engine
|
|
120
|
+
* convention. */
|
|
121
|
+
timestamps(): void;
|
|
122
|
+
/** `deletedAt` nullable — the column the soft-delete scope filters on. */
|
|
123
|
+
softDeletes(name?: string): ColumnBuilder;
|
|
124
|
+
/**
|
|
125
|
+
* Polymorphic relation columns (Laravel `morphs`): a `{name}Id` (unsigned big
|
|
126
|
+
* integer) + `{name}Type` (string) pair plus a composite index over both. The
|
|
127
|
+
* columns use the engine's **camelCase** morph convention (`commentableId` /
|
|
128
|
+
* `commentableType`) — the same columns `morphTo` / `morphMany` read/write —
|
|
129
|
+
* not Laravel's snake_case. The index covers `[{name}Type, {name}Id]` (type
|
|
130
|
+
* first, matching Laravel), defaulting to `{table}_{name}Type_{name}Id_index`;
|
|
131
|
+
* pass `indexName` to override (pair with the same name in {@link dropMorphs}).
|
|
132
|
+
*/
|
|
133
|
+
morphs(name: string, indexName?: string): void;
|
|
134
|
+
/** Nullable variant of {@link morphs} — both columns allow NULL (the relation
|
|
135
|
+
* is optional). Same `[{name}Type, {name}Id]` composite index. */
|
|
136
|
+
nullableMorphs(name: string, indexName?: string): void;
|
|
137
|
+
/** Composite (or named single) primary key. */
|
|
138
|
+
primary(columns: string | string[]): void;
|
|
139
|
+
/** Composite (or single) unique index. */
|
|
140
|
+
unique(columns: string | string[], name?: string): void;
|
|
141
|
+
/** Composite (or single) non-unique index. */
|
|
142
|
+
index(columns: string | string[], name?: string): void;
|
|
143
|
+
/**
|
|
144
|
+
* Composite / explicit foreign key:
|
|
145
|
+
* `t.foreign('user_id').references('id').on('users').onDelete('cascade')`.
|
|
146
|
+
* Returns a {@link ForeignKeyBuilder}; the referenced column defaults to `id`.
|
|
147
|
+
* For the single-column shorthand, prefer `t.foreignId('user_id').constrained()`.
|
|
148
|
+
*/
|
|
149
|
+
foreign(columns: string | string[]): ForeignKeyBuilder;
|
|
150
|
+
}
|
|
151
|
+
//# sourceMappingURL=blueprint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blueprint.d.ts","sourceRoot":"","sources":["../../../src/native/schema/blueprint.ts"],"names":[],"mappings":"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"}
|