@spinajs/orm 2.0.541 → 2.0.543
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/builders.d.ts +75 -66
- package/lib/cjs/builders.d.ts.map +1 -1
- package/lib/cjs/builders.js +159 -90
- package/lib/cjs/builders.js.map +1 -1
- package/lib/cjs/interfaces.d.ts +5 -2
- package/lib/cjs/interfaces.d.ts.map +1 -1
- package/lib/cjs/interfaces.js +7 -1
- package/lib/cjs/interfaces.js.map +1 -1
- package/lib/cjs/migration-runner.d.ts +22 -1
- package/lib/cjs/migration-runner.d.ts.map +1 -1
- package/lib/cjs/migration-runner.js +58 -7
- package/lib/cjs/migration-runner.js.map +1 -1
- package/lib/cjs/migration-service.d.ts +6 -0
- package/lib/cjs/migration-service.d.ts.map +1 -1
- package/lib/cjs/migration-service.js +2 -1
- package/lib/cjs/migration-service.js.map +1 -1
- package/lib/cjs/quoting.d.ts +10 -0
- package/lib/cjs/quoting.d.ts.map +1 -1
- package/lib/cjs/quoting.js +14 -1
- package/lib/cjs/quoting.js.map +1 -1
- package/lib/mjs/builders.d.ts +75 -66
- package/lib/mjs/builders.d.ts.map +1 -1
- package/lib/mjs/builders.js +159 -89
- package/lib/mjs/builders.js.map +1 -1
- package/lib/mjs/interfaces.d.ts +5 -2
- package/lib/mjs/interfaces.d.ts.map +1 -1
- package/lib/mjs/interfaces.js +6 -0
- package/lib/mjs/interfaces.js.map +1 -1
- package/lib/mjs/migration-runner.d.ts +22 -1
- package/lib/mjs/migration-runner.d.ts.map +1 -1
- package/lib/mjs/migration-runner.js +58 -7
- package/lib/mjs/migration-runner.js.map +1 -1
- package/lib/mjs/migration-service.d.ts +6 -0
- package/lib/mjs/migration-service.d.ts.map +1 -1
- package/lib/mjs/migration-service.js +2 -1
- package/lib/mjs/migration-service.js.map +1 -1
- package/lib/mjs/quoting.d.ts +10 -0
- package/lib/mjs/quoting.d.ts.map +1 -1
- package/lib/mjs/quoting.js +13 -0
- package/lib/mjs/quoting.js.map +1 -1
- package/lib/tsconfig.cjs.tsbuildinfo +1 -1
- package/lib/tsconfig.mjs.tsbuildinfo +1 -1
- package/package.json +7 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migration-runner.d.ts","sourceRoot":"","sources":["../../src/migration-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,SAAS,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAU,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAI/C,OAAO,EAA2B,qBAAqB,EAAE,cAAc,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAErJ;;;;GAIG;AACH,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"migration-runner.d.ts","sourceRoot":"","sources":["../../src/migration-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,SAAS,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAU,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAI/C,OAAO,EAA2B,qBAAqB,EAAE,cAAc,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAErJ;;;;GAIG;AACH,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAWrD;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;IAC3C,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,2BAA4B,SAAQ,mBAAmB;IACtE;;OAEG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;;;;GAKG;AACH,qBAAa,eAAe;IAId,SAAS,CAAC,GAAG,EAAE,oBAAoB;IAF/C,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC;IAEnB,YAAsB,GAAG,EAAE,oBAAoB,EAAI;IAEnD;;;;;;;;;;;;;;;OAeG;IACU,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAWrF;IAED;;;;;;;;;;;OAWG;IACH,UAAgB,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,CA8BrH;IAED;;;;;;;;;;;;;OAaG;IACU,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,2BAA2B,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAS/F;IAEY,MAAM,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAWtD;IAED;;;;;OAKG;IACU,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAchF;IAED;;OAEG;IACH,UAAgB,OAAO,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAIvE;IAED;;;;;;;;;;OAUG;IACH,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC,CAsGlH;CACF"}
|
|
@@ -23,6 +23,14 @@ const migration_service_js_1 = require("./migration-service.js");
|
|
|
23
23
|
*/
|
|
24
24
|
var symbols_js_2 = require("./symbols.js");
|
|
25
25
|
Object.defineProperty(exports, "MIGRATION_FILE_REGEXP", { enumerable: true, get: function () { return symbols_js_2.MIGRATION_FILE_REGEXP; } });
|
|
26
|
+
/**
|
|
27
|
+
* Timestamp first, then name: two migrations generated in the same second are otherwise ordered
|
|
28
|
+
* by whatever the registry happened to hold, which differs between a file-scan boot and a
|
|
29
|
+
* programmatic registration. Equal on both = 0, so a sort stays stable.
|
|
30
|
+
*/
|
|
31
|
+
function compareUnits(a, b) {
|
|
32
|
+
return a.created < b.created ? -1 : a.created > b.created ? 1 : a.name.localeCompare(b.name);
|
|
33
|
+
}
|
|
26
34
|
/**
|
|
27
35
|
* Cross-connection orchestrator: validates and orders the migration registry, groups it by the
|
|
28
36
|
* connection each migration declared, and hands each group to that connection's
|
|
@@ -35,7 +43,15 @@ class MigrationRunner {
|
|
|
35
43
|
}
|
|
36
44
|
/**
|
|
37
45
|
* Applies every pending migration on every configured connection, or only `name` when one is
|
|
38
|
-
* given, in `(created, name)` order.
|
|
46
|
+
* given, in `(created, name)` order ACROSS connections.
|
|
47
|
+
*
|
|
48
|
+
* Across, not connection by connection: migrations on different connections often target the
|
|
49
|
+
* same server, and one of them may read what another created - a view in one schema over a
|
|
50
|
+
* table a migration on another connection adds. Running each connection's whole backlog in
|
|
51
|
+
* turn applies such a pair in the wrong order whenever both are pending at once, which is
|
|
52
|
+
* exactly the case of a deployment catching up on several releases. So the pending set is
|
|
53
|
+
* walked in global order and handed to each connection's service in consecutive stretches;
|
|
54
|
+
* returning to a connection continues the batch it already opened.
|
|
39
55
|
*
|
|
40
56
|
* A `name` that matches nothing in the registry throws rather than returning `[]`: an empty
|
|
41
57
|
* result from a typo is indistinguishable from "already up to date", so the CLI would exit 0
|
|
@@ -43,12 +59,50 @@ class MigrationRunner {
|
|
|
43
59
|
*/
|
|
44
60
|
async up(name, options) {
|
|
45
61
|
const executed = [];
|
|
46
|
-
|
|
62
|
+
const opened = new Set();
|
|
63
|
+
for (const [driver, units] of await this.stretches(this.plan(name, options?.force ?? true, options?.connection))) {
|
|
47
64
|
const service = await this.service(driver);
|
|
48
|
-
executed.push(...(await service.up(units, { fake: options?.fake })));
|
|
65
|
+
executed.push(...(await service.up(units, { fake: options?.fake, continueBatch: opened.has(driver) })));
|
|
66
|
+
opened.add(driver);
|
|
49
67
|
}
|
|
50
68
|
return executed;
|
|
51
69
|
}
|
|
70
|
+
/**
|
|
71
|
+
* The planned groups re-cut into runs of consecutive same-connection migrations, in global
|
|
72
|
+
* `(created, name)` order.
|
|
73
|
+
*
|
|
74
|
+
* Only what still has to run takes part in the cut - applied migrations would split the
|
|
75
|
+
* pending ones into many needless stretches, each one lock and one table read. A FAILED
|
|
76
|
+
* migration does take part: its service refuses the run at that point, as it always has.
|
|
77
|
+
*
|
|
78
|
+
* A connection with nothing left to run still gets an empty stretch, at the end: the service's
|
|
79
|
+
* refusal to run over a FAILED row covers every row of the connection, registered or not, and
|
|
80
|
+
* skipping the call would quietly drop that guard for it.
|
|
81
|
+
*/
|
|
82
|
+
async stretches(groups) {
|
|
83
|
+
const queue = [];
|
|
84
|
+
const idle = [];
|
|
85
|
+
for (const [driver, units] of groups) {
|
|
86
|
+
const status = await (await this.service(driver)).status(units);
|
|
87
|
+
const open = new Set(status.filter((s) => s.pending || s.failed).map((s) => s.name));
|
|
88
|
+
if (open.size === 0) {
|
|
89
|
+
idle.push(driver);
|
|
90
|
+
}
|
|
91
|
+
queue.push(...units.filter((u) => open.has(u.name)).map((unit) => ({ driver, unit })));
|
|
92
|
+
}
|
|
93
|
+
queue.sort((a, b) => compareUnits(a.unit, b.unit));
|
|
94
|
+
const result = [];
|
|
95
|
+
for (const { driver, unit } of queue) {
|
|
96
|
+
const last = result[result.length - 1];
|
|
97
|
+
if (last && last[0] === driver) {
|
|
98
|
+
last[1].push(unit);
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
result.push([driver, [unit]]);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
return [...result, ...idle.map((driver) => [driver, []])];
|
|
105
|
+
}
|
|
52
106
|
/**
|
|
53
107
|
* Rolls the last applied batch back on every configured connection, or every batch with
|
|
54
108
|
* `{ all: true }`. `name` narrows the run to a single migration and - exactly like `up` - throws
|
|
@@ -144,10 +198,7 @@ class MigrationRunner {
|
|
|
144
198
|
}
|
|
145
199
|
return { name: m.name, created, type: m.type };
|
|
146
200
|
})
|
|
147
|
-
|
|
148
|
-
// ordered by whatever the registry happened to hold, which differs between a file-scan
|
|
149
|
-
// boot and a programmatic registration. Equal on both = 0, so the sort stays stable
|
|
150
|
-
.sort((a, b) => (a.created < b.created ? -1 : a.created > b.created ? 1 : a.name.localeCompare(b.name)));
|
|
201
|
+
.sort(compareUnits);
|
|
151
202
|
// Resolved to a DRIVER rather than compared as a string, because that is what the groups
|
|
152
203
|
// below are keyed by: `db.Aliases` binds several names to one `OrmDriver`, so
|
|
153
204
|
// `--connection <alias>` and `--connection <the name it points at>` have to select the same
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migration-runner.js","sourceRoot":"","sources":["../../src/migration-runner.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,oDAAkD;AAClD,iCAAiC;AAGjC,6CAAqD;AACrD,mDAA6D;AAC7D,mDAA+C;AAC/C,iEAAqJ;AAErJ;;;;GAIG;AACH,2CAAqD;AAA5C,mHAAA,qBAAqB,OAAA;
|
|
1
|
+
{"version":3,"file":"migration-runner.js","sourceRoot":"","sources":["../../src/migration-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,6 +41,12 @@ export interface IMigrationRunOptions {
|
|
|
41
41
|
* Record the migration as applied without running its `up()`.
|
|
42
42
|
*/
|
|
43
43
|
fake?: boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Record into the connection's latest batch instead of opening a new one. `MigrationRunner.up`
|
|
46
|
+
* passes it when one run returns to a connection it already migrated, so a run stays one batch
|
|
47
|
+
* per connection - which is what `down()` rolls back.
|
|
48
|
+
*/
|
|
49
|
+
continueBatch?: boolean;
|
|
44
50
|
}
|
|
45
51
|
export interface IMigrationDownOptions extends IMigrationRunOptions {
|
|
46
52
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migration-service.d.ts","sourceRoot":"","sources":["../../src/migration-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,GAAG,EAAU,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGjC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,wBAAwB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGzE,eAAO,MAAM,oBAAoB,sBAAsB,CAAC;AACxD,eAAO,MAAM,4BAA4B,MAAM,CAAC;AAChD,eAAO,MAAM,sBAAsB,QAAS,CAAC;AAC7C,eAAO,MAAM,0BAA0B,SAAU,CAAC;AAElD;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAE3C,MAAM,MAAM,sBAAsB,GAAG,SAAS,GAAG,aAAa,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,YAAY,EAAE,IAAI,GAAG,IAAI,CAAC;IAC1B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,QAAQ,CAAC;IAClB,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;CAC3B;AAED,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"migration-service.d.ts","sourceRoot":"","sources":["../../src/migration-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -490,7 +490,8 @@ class DefaultMigrationService extends OrmMigrationService {
|
|
|
490
490
|
}
|
|
491
491
|
const instanceOf = (u) => instances.get(u.name);
|
|
492
492
|
const optedOut = (u) => this.optedOutOfTransaction(u, instances.get(u.name));
|
|
493
|
-
const
|
|
493
|
+
const latest = Math.max(0, ...records.filter((r) => r.FinishedAt && !r.RolledBackAt).map((r) => r.Batch ?? 0));
|
|
494
|
+
const batch = options?.continueBatch && latest > 0 ? latest : latest + 1;
|
|
494
495
|
const executed = [];
|
|
495
496
|
if (options?.fake) {
|
|
496
497
|
const stamp = new Date();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migration-service.js","sourceRoot":"","sources":["../../src/migration-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"migration-service.js","sourceRoot":"","sources":["../../src/migration-service.ts"],"names":[],"mappings":"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"}
|
package/lib/cjs/quoting.d.ts
CHANGED
|
@@ -30,4 +30,14 @@ export declare abstract class IdentifierQuoter {
|
|
|
30
30
|
*/
|
|
31
31
|
quoteQualified(name: string): string;
|
|
32
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* Writes a VALUE into SQL text the way one dialect spells literals.
|
|
35
|
+
*
|
|
36
|
+
* Only for statements the engine stores as text and therefore cannot bind into -
|
|
37
|
+
* CREATE VIEW and CREATE EVENT. Every other statement keeps binding its values.
|
|
38
|
+
* No default registration, for the same reason {@link IdentifierQuoter} has none.
|
|
39
|
+
*/
|
|
40
|
+
export declare abstract class LiteralQuoter {
|
|
41
|
+
abstract quote(value: unknown): string;
|
|
42
|
+
}
|
|
33
43
|
//# sourceMappingURL=quoting.d.ts.map
|
package/lib/cjs/quoting.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quoting.d.ts","sourceRoot":"","sources":["../../src/quoting.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,8BACsB,gBAAgB;IACpC;;OAEG;IACH,SAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5C;;;;;;;;OAQG;IACI,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK1C;CACF"}
|
|
1
|
+
{"version":3,"file":"quoting.d.ts","sourceRoot":"","sources":["../../src/quoting.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,8BACsB,gBAAgB;IACpC;;OAEG;IACH,SAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5C;;;;;;;;OAQG;IACI,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK1C;CACF;AAED;;;;;;GAMG;AACH,8BACsB,aAAa;IACjC,SAAgB,KAAK,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC;CAC/C"}
|
package/lib/cjs/quoting.js
CHANGED
|
@@ -6,7 +6,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.IdentifierQuoter = void 0;
|
|
9
|
+
exports.LiteralQuoter = exports.IdentifierQuoter = void 0;
|
|
10
10
|
const di_1 = require("@spinajs/di");
|
|
11
11
|
/**
|
|
12
12
|
* Quotes identifiers — table, column and alias names — the way one dialect spells them.
|
|
@@ -45,4 +45,17 @@ exports.IdentifierQuoter = IdentifierQuoter;
|
|
|
45
45
|
exports.IdentifierQuoter = IdentifierQuoter = __decorate([
|
|
46
46
|
(0, di_1.NewInstance)()
|
|
47
47
|
], IdentifierQuoter);
|
|
48
|
+
/**
|
|
49
|
+
* Writes a VALUE into SQL text the way one dialect spells literals.
|
|
50
|
+
*
|
|
51
|
+
* Only for statements the engine stores as text and therefore cannot bind into -
|
|
52
|
+
* CREATE VIEW and CREATE EVENT. Every other statement keeps binding its values.
|
|
53
|
+
* No default registration, for the same reason {@link IdentifierQuoter} has none.
|
|
54
|
+
*/
|
|
55
|
+
let LiteralQuoter = class LiteralQuoter {
|
|
56
|
+
};
|
|
57
|
+
exports.LiteralQuoter = LiteralQuoter;
|
|
58
|
+
exports.LiteralQuoter = LiteralQuoter = __decorate([
|
|
59
|
+
(0, di_1.NewInstance)()
|
|
60
|
+
], LiteralQuoter);
|
|
48
61
|
//# sourceMappingURL=quoting.js.map
|
package/lib/cjs/quoting.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quoting.js","sourceRoot":"","sources":["../../src/quoting.ts"],"names":[],"mappings":";;;;;;;;;AAAA,oCAA0C;AAE1C;;;;;;;;;;;;;;;GAeG;AAEI,IAAe,gBAAgB,GAA/B,MAAe,gBAAgB;IAMpC;;;;;;;;OAQG;IACI,cAAc,CAAC,IAAY;QAChC,OAAO,MAAM,CAAC,IAAI,CAAC;aAChB,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aAC/B,IAAI,CAAC,GAAG,CAAC,CAAC;IACf,CAAC;CACF,CAAA;;2BArBqB,gBAAgB;IADrC,IAAA,gBAAW,GAAE;GACQ,gBAAgB,CAqBrC"}
|
|
1
|
+
{"version":3,"file":"quoting.js","sourceRoot":"","sources":["../../src/quoting.ts"],"names":[],"mappings":";;;;;;;;;AAAA,oCAA0C;AAE1C;;;;;;;;;;;;;;;GAeG;AAEI,IAAe,gBAAgB,GAA/B,MAAe,gBAAgB;IAMpC;;;;;;;;OAQG;IACI,cAAc,CAAC,IAAY;QAChC,OAAO,MAAM,CAAC,IAAI,CAAC;aAChB,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aAC/B,IAAI,CAAC,GAAG,CAAC,CAAC;IACf,CAAC;CACF,CAAA;;2BArBqB,gBAAgB;IADrC,IAAA,gBAAW,GAAE;GACQ,gBAAgB,CAqBrC;AAED;;;;;;GAMG;AAEI,IAAe,aAAa,GAA5B,MAAe,aAAa;CAElC,CAAA;;wBAFqB,aAAa;IADlC,IAAA,gBAAW,GAAE;GACQ,aAAa,CAElC"}
|
package/lib/mjs/builders.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Container, Constructor, IContainer, Class } from '@spinajs/di';
|
|
2
2
|
import { ColumnType, QueryMethod, SortOrder, WhereBoolean, SqlOperator, JoinMethod } from './enums.js';
|
|
3
3
|
import { IColumnsBuilder, ICompilerOutput, ILimitBuilder, IOrderByBuilder, IQueryBuilder, IQueryLimit, ISort, IWhereBuilder, QueryContext, IJoinBuilder, IBuilderMiddleware, IWithRecursiveBuilder, ReferentialAction, IGroupByBuilder, IUpdateResult, DefaultValueBuilder, ColumnAlterationType, QueryMiddleware, IBuilder, IDeleteQueryBuilder, IUpdateQueryBuilder, ISelectQueryBuilder, IJoinStatementOptions } from './interfaces.js';
|
|
4
|
-
import { ColumnStatement, IQueryStatement,
|
|
4
|
+
import { ColumnStatement, IQueryStatement, Wrap } from './statements.js';
|
|
5
5
|
import { ModelDataWithRelationDataSearchable, PickRelations, Unbox, WhereFunction } from './types.js';
|
|
6
6
|
import type { OrmDriver } from './driver.js';
|
|
7
7
|
import { ModelBase } from './model.js';
|
|
@@ -640,6 +640,37 @@ export declare class DropViewQueryBuilder extends QueryBuilder {
|
|
|
640
640
|
ifExists(): this;
|
|
641
641
|
toDB(): ICompilerOutput;
|
|
642
642
|
}
|
|
643
|
+
export type ViewAlgorithm = 'UNDEFINED' | 'MERGE' | 'TEMPTABLE';
|
|
644
|
+
export type ViewSecurity = 'DEFINER' | 'INVOKER';
|
|
645
|
+
export type ViewCheckOption = 'CASCADED' | 'LOCAL';
|
|
646
|
+
/**
|
|
647
|
+
* CREATE VIEW. Which optional clauses exist is the dialect's business: a driver's compiler
|
|
648
|
+
* throws MethodNotImplemented for a clause its engine does not have.
|
|
649
|
+
*/
|
|
650
|
+
export declare class CreateViewQueryBuilder extends QueryBuilder {
|
|
651
|
+
Replace: boolean;
|
|
652
|
+
IfNotExists: boolean;
|
|
653
|
+
Temporary: boolean;
|
|
654
|
+
Columns: string[];
|
|
655
|
+
Algorithm?: ViewAlgorithm;
|
|
656
|
+
Security?: ViewSecurity;
|
|
657
|
+
/** `true` is the plain `WITH CHECK OPTION` */
|
|
658
|
+
CheckOption?: ViewCheckOption | true;
|
|
659
|
+
Body?: SelectQueryBuilder | RawQuery;
|
|
660
|
+
constructor(container: Container, driver: OrmDriver, name: string, database?: string);
|
|
661
|
+
orReplace(): this;
|
|
662
|
+
ifNotExists(): this;
|
|
663
|
+
temporary(): this;
|
|
664
|
+
columns(names: string[]): this;
|
|
665
|
+
algorithm(algorithm: ViewAlgorithm): this;
|
|
666
|
+
security(security: ViewSecurity): this;
|
|
667
|
+
checkOption(option?: ViewCheckOption): this;
|
|
668
|
+
/**
|
|
669
|
+
* @param body - callback receiving a fresh select builder, a ready select builder, or raw SQL
|
|
670
|
+
*/
|
|
671
|
+
as(body: ((select: SelectQueryBuilder) => void) | SelectQueryBuilder | RawQuery): this;
|
|
672
|
+
toDB(): ICompilerOutput;
|
|
673
|
+
}
|
|
643
674
|
/**
|
|
644
675
|
* Creates a whole database ( schema in some engines ), eg.
|
|
645
676
|
*
|
|
@@ -821,76 +852,53 @@ export declare class CloneTableQueryBuilder extends QueryBuilder {
|
|
|
821
852
|
deepClone(srcTable: string, newTable: string, filter?: (query: SelectQueryBuilder) => void): Promise<this>;
|
|
822
853
|
toDB(): ICompilerOutput[];
|
|
823
854
|
}
|
|
824
|
-
export
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
Hour: number;
|
|
829
|
-
Second: number;
|
|
830
|
-
second(s: number): void;
|
|
831
|
-
minute(m: number): void;
|
|
832
|
-
hour(h: number): void;
|
|
833
|
-
month(m: number): void;
|
|
834
|
-
year(y: number): void;
|
|
855
|
+
export type EventIntervalUnit = 'YEAR' | 'QUARTER' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR' | 'MINUTE' | 'SECOND';
|
|
856
|
+
export interface IEventInterval {
|
|
857
|
+
Value: number;
|
|
858
|
+
Unit: EventIntervalUnit;
|
|
835
859
|
}
|
|
860
|
+
/**
|
|
861
|
+
* A job scheduled inside the database engine. Engines without native events throw
|
|
862
|
+
* MethodNotImplemented at compile time - check `supportedFeatures().events` first.
|
|
863
|
+
*/
|
|
836
864
|
export declare class EventQueryBuilder extends QueryBuilder {
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
fromNow(): EventIntervalDesc;
|
|
865
|
+
Every?: IEventInterval;
|
|
866
|
+
FromNow?: IEventInterval;
|
|
867
|
+
At?: DateTime;
|
|
868
|
+
Starts?: DateTime;
|
|
869
|
+
Ends?: DateTime;
|
|
870
|
+
Preserve: boolean;
|
|
871
|
+
Enabled: boolean;
|
|
872
|
+
IfNotExists: boolean;
|
|
873
|
+
Comment?: string;
|
|
874
|
+
Actions: (RawQuery | QueryBuilder)[];
|
|
875
|
+
constructor(container: Container, driver: OrmDriver, name: string);
|
|
876
|
+
/** Repeat with the given interval */
|
|
877
|
+
every(value: number, unit: EventIntervalUnit): this;
|
|
878
|
+
/** Run once at a point in time */
|
|
879
|
+
at(dateTime: DateTime): this;
|
|
880
|
+
/** Run once, the given interval from now */
|
|
881
|
+
fromNow(value: number, unit: EventIntervalUnit): this;
|
|
882
|
+
starts(dateTime: DateTime): this;
|
|
883
|
+
ends(dateTime: DateTime): this;
|
|
884
|
+
/** Keep the event after its last run ( ON COMPLETION PRESERVE ) */
|
|
885
|
+
preserve(): this;
|
|
886
|
+
disabled(): this;
|
|
887
|
+
ifNotExists(): this;
|
|
888
|
+
comment(comment: string): this;
|
|
862
889
|
/**
|
|
863
|
-
*
|
|
864
|
-
*
|
|
890
|
+
* One action is emitted as given - a statement, or raw SQL carrying its own BEGIN ... END.
|
|
891
|
+
* Several actions are wrapped in BEGIN ... END.
|
|
865
892
|
*/
|
|
866
|
-
do(sql:
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
* Add comment to schedule for documentation. It is passed to sql engine
|
|
870
|
-
*
|
|
871
|
-
* @param comment - comment text
|
|
872
|
-
*/
|
|
873
|
-
comment(comment: string): void;
|
|
874
|
-
toDB(): ICompilerOutput[];
|
|
893
|
+
do(sql: RawQuery | QueryBuilder | (RawQuery | QueryBuilder)[]): this;
|
|
894
|
+
toDB(): ICompilerOutput;
|
|
895
|
+
private assertNoSchedule;
|
|
875
896
|
}
|
|
876
897
|
export declare class DropEventQueryBuilder extends QueryBuilder {
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
toDB(): ICompilerOutput[];
|
|
882
|
-
}
|
|
883
|
-
/**
|
|
884
|
-
* Creates schedule job in database engine.
|
|
885
|
-
* Note, some engines does not support this, so it will implemented
|
|
886
|
-
* as nodejs interval
|
|
887
|
-
*/
|
|
888
|
-
export declare class ScheduleQueryBuilder {
|
|
889
|
-
protected container: Container;
|
|
890
|
-
protected driver: OrmDriver;
|
|
891
|
-
constructor(container: Container, driver: OrmDriver);
|
|
892
|
-
create(name: string, callback: (event: EventQueryBuilder) => void): EventQueryBuilder;
|
|
893
|
-
drop(name: string): DropEventQueryBuilder;
|
|
898
|
+
Exists: boolean;
|
|
899
|
+
constructor(container: Container, driver: OrmDriver, name: string);
|
|
900
|
+
ifExists(): this;
|
|
901
|
+
toDB(): ICompilerOutput;
|
|
894
902
|
}
|
|
895
903
|
export declare class SchemaQueryBuilder {
|
|
896
904
|
protected container: Container;
|
|
@@ -900,6 +908,7 @@ export declare class SchemaQueryBuilder {
|
|
|
900
908
|
cloneTable(callback: (clone: CloneTableQueryBuilder) => void): CloneTableQueryBuilder;
|
|
901
909
|
alterTable(name: string, callback: (table: AlterTableQueryBuilder) => void): AlterTableQueryBuilder;
|
|
902
910
|
dropTable(name: string, schema?: string): DropTableQueryBuilder;
|
|
911
|
+
createView(name: string, callback: (view: CreateViewQueryBuilder) => void): CreateViewQueryBuilder;
|
|
903
912
|
dropView(name: string, schema?: string): DropViewQueryBuilder;
|
|
904
913
|
/**
|
|
905
914
|
* Creates database eg.
|
|
@@ -917,7 +926,7 @@ export declare class SchemaQueryBuilder {
|
|
|
917
926
|
*/
|
|
918
927
|
dropDatabase(name: string): DropDatabaseQueryBuilder;
|
|
919
928
|
tableExists(name: string, schema?: string): Promise<boolean>;
|
|
920
|
-
|
|
929
|
+
createEvent(name: string, callback: (event: EventQueryBuilder) => void): EventQueryBuilder;
|
|
921
930
|
dropEvent(name: string): DropEventQueryBuilder;
|
|
922
931
|
/**
|
|
923
932
|
* Executes raw SQL statement on the database.
|