@stamhoofd/sql 2.119.0 → 2.120.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/dist/{src/ModelCache.d.ts → ModelCache.d.ts} +1 -1
- package/dist/ModelCache.d.ts.map +1 -0
- package/{src/ModelCache.ts → dist/ModelCache.js} +8 -16
- package/dist/ModelCache.js.map +1 -0
- package/dist/{src/QueryableModel.d.ts → QueryableModel.d.ts} +7 -6
- package/dist/QueryableModel.d.ts.map +1 -0
- package/dist/{src/QueryableModel.js → QueryableModel.js} +9 -13
- package/dist/QueryableModel.js.map +1 -0
- package/dist/{src/SQL.d.ts → SQL.d.ts} +7 -5
- package/dist/SQL.d.ts.map +1 -0
- package/dist/SQL.js +100 -0
- package/dist/SQL.js.map +1 -0
- package/dist/{src/SQLDelete.d.ts → SQLDelete.d.ts} +2 -2
- package/dist/SQLDelete.d.ts.map +1 -0
- package/dist/{src/SQLDelete.js → SQLDelete.js} +8 -12
- package/dist/SQLDelete.js.map +1 -0
- package/dist/SQLExpression.d.ts.map +1 -0
- package/dist/{src/SQLExpression.js → SQLExpression.js} +3 -8
- package/dist/SQLExpression.js.map +1 -0
- package/dist/{src/SQLExpressions.d.ts → SQLExpressions.d.ts} +2 -2
- package/dist/SQLExpressions.d.ts.map +1 -0
- package/dist/{src/SQLExpressions.js → SQLExpressions.js} +78 -115
- package/dist/SQLExpressions.js.map +1 -0
- package/dist/{src/SQLInsert.d.ts → SQLInsert.d.ts} +3 -2
- package/dist/SQLInsert.d.ts.map +1 -0
- package/dist/{src/SQLInsert.js → SQLInsert.js} +17 -21
- package/dist/SQLInsert.js.map +1 -0
- package/dist/{src/SQLJoin.d.ts → SQLJoin.d.ts} +1 -1
- package/dist/SQLJoin.d.ts.map +1 -0
- package/{src/SQLJoin.ts → dist/SQLJoin.js} +15 -18
- package/dist/SQLJoin.js.map +1 -0
- package/dist/{src/SQLJsonExpressions.d.ts → SQLJsonExpressions.d.ts} +2 -2
- package/dist/SQLJsonExpressions.d.ts.map +1 -0
- package/dist/{src/SQLJsonExpressions.js → SQLJsonExpressions.js} +31 -44
- package/dist/SQLJsonExpressions.js.map +1 -0
- package/dist/SQLLogger.d.ts.map +1 -0
- package/dist/{src/SQLLogger.js → SQLLogger.js} +5 -8
- package/dist/SQLLogger.js.map +1 -0
- package/dist/{src/SQLOrderBy.d.ts → SQLOrderBy.d.ts} +1 -1
- package/dist/SQLOrderBy.d.ts.map +1 -0
- package/dist/{src/SQLOrderBy.js → SQLOrderBy.js} +8 -13
- package/dist/SQLOrderBy.js.map +1 -0
- package/dist/{src/SQLSelect.d.ts → SQLSelect.d.ts} +3 -3
- package/dist/SQLSelect.d.ts.map +1 -0
- package/dist/{src/SQLSelect.js → SQLSelect.js} +24 -29
- package/dist/SQLSelect.js.map +1 -0
- package/dist/{src/SQLTranslatedStringHelper.d.ts → SQLTranslatedStringHelper.d.ts} +3 -2
- package/dist/SQLTranslatedStringHelper.d.ts.map +1 -0
- package/dist/SQLTranslatedStringHelper.js +33 -0
- package/dist/SQLTranslatedStringHelper.js.map +1 -0
- package/dist/{src/SQLUpdate.d.ts → SQLUpdate.d.ts} +3 -2
- package/dist/SQLUpdate.d.ts.map +1 -0
- package/{src/SQLUpdate.ts → dist/SQLUpdate.js} +18 -35
- package/dist/SQLUpdate.js.map +1 -0
- package/dist/{src/SQLWhere.d.ts → SQLWhere.d.ts} +3 -3
- package/dist/SQLWhere.d.ts.map +1 -0
- package/dist/{src/SQLWhere.js → SQLWhere.js} +42 -56
- package/dist/SQLWhere.js.map +1 -0
- package/dist/{src/filters → filters}/SQLFilter.d.ts +5 -5
- package/dist/filters/SQLFilter.d.ts.map +1 -0
- package/{src/filters/SQLFilter.ts → dist/filters/SQLFilter.js} +55 -121
- package/dist/filters/SQLFilter.js.map +1 -0
- package/dist/{src/filters → filters}/SQLSorter.d.ts +6 -6
- package/dist/filters/SQLSorter.d.ts.map +1 -0
- package/dist/{src/filters → filters}/SQLSorter.js +4 -7
- package/dist/filters/SQLSorter.js.map +1 -0
- package/dist/filters/compilers/contains.d.ts +4 -0
- package/dist/filters/compilers/contains.d.ts.map +1 -0
- package/{src/filters/compilers/contains.ts → dist/filters/compilers/contains.js} +7 -25
- package/dist/filters/compilers/contains.js.map +1 -0
- package/dist/filters/compilers/equals.d.ts +4 -0
- package/dist/filters/compilers/equals.d.ts.map +1 -0
- package/dist/filters/compilers/equals.js +44 -0
- package/dist/filters/compilers/equals.js.map +1 -0
- package/dist/filters/compilers/greater.d.ts +4 -0
- package/dist/filters/compilers/greater.d.ts.map +1 -0
- package/dist/filters/compilers/greater.js +15 -0
- package/dist/filters/compilers/greater.js.map +1 -0
- package/dist/filters/compilers/in.d.ts +4 -0
- package/dist/filters/compilers/in.d.ts.map +1 -0
- package/{src/filters/compilers/in.ts → dist/filters/compilers/in.js} +7 -21
- package/dist/filters/compilers/in.js.map +1 -0
- package/dist/filters/compilers/index.d.ts.map +1 -0
- package/{src/filters/compilers/index.ts → dist/filters/compilers/index.js} +1 -0
- package/dist/filters/compilers/index.js.map +1 -0
- package/dist/filters/compilers/less.d.ts +4 -0
- package/dist/filters/compilers/less.d.ts.map +1 -0
- package/dist/filters/compilers/less.js +15 -0
- package/dist/filters/compilers/less.js.map +1 -0
- package/dist/filters/helpers/isJSONColumn.d.ts +5 -0
- package/dist/filters/helpers/isJSONColumn.d.ts.map +1 -0
- package/{src/filters/helpers/isJSONColumn.ts → dist/filters/helpers/isJSONColumn.js} +4 -5
- package/dist/filters/helpers/isJSONColumn.js.map +1 -0
- package/dist/{src/filters → filters}/helpers/normalizeCompareValue.d.ts +1 -1
- package/dist/filters/helpers/normalizeCompareValue.d.ts.map +1 -0
- package/{src/filters/helpers/normalizeCompareValue.ts → dist/filters/helpers/normalizeCompareValue.js} +2 -20
- package/dist/filters/helpers/normalizeCompareValue.js.map +1 -0
- package/dist/index.d.ts +14 -14
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +14 -25
- package/dist/index.js.map +1 -1
- package/package.json +6 -6
- package/dist/src/ModelCache.d.ts.map +0 -1
- package/dist/src/ModelCache.js +0 -57
- package/dist/src/ModelCache.js.map +0 -1
- package/dist/src/QueryableModel.d.ts.map +0 -1
- package/dist/src/QueryableModel.js.map +0 -1
- package/dist/src/SQL.d.ts.map +0 -1
- package/dist/src/SQL.js +0 -103
- package/dist/src/SQL.js.map +0 -1
- package/dist/src/SQLDelete.d.ts.map +0 -1
- package/dist/src/SQLDelete.js.map +0 -1
- package/dist/src/SQLExpression.d.ts.map +0 -1
- package/dist/src/SQLExpression.js.map +0 -1
- package/dist/src/SQLExpressions.d.ts.map +0 -1
- package/dist/src/SQLExpressions.js.map +0 -1
- package/dist/src/SQLInsert.d.ts.map +0 -1
- package/dist/src/SQLInsert.js.map +0 -1
- package/dist/src/SQLJoin.d.ts.map +0 -1
- package/dist/src/SQLJoin.js +0 -61
- package/dist/src/SQLJoin.js.map +0 -1
- package/dist/src/SQLJsonExpressions.d.ts.map +0 -1
- package/dist/src/SQLJsonExpressions.js.map +0 -1
- package/dist/src/SQLLogger.d.ts.map +0 -1
- package/dist/src/SQLLogger.js.map +0 -1
- package/dist/src/SQLOrderBy.d.ts.map +0 -1
- package/dist/src/SQLOrderBy.js.map +0 -1
- package/dist/src/SQLSelect.d.ts.map +0 -1
- package/dist/src/SQLSelect.js.map +0 -1
- package/dist/src/SQLTranslatedStringHelper.d.ts.map +0 -1
- package/dist/src/SQLTranslatedStringHelper.js +0 -37
- package/dist/src/SQLTranslatedStringHelper.js.map +0 -1
- package/dist/src/SQLUpdate.d.ts.map +0 -1
- package/dist/src/SQLUpdate.js +0 -60
- package/dist/src/SQLUpdate.js.map +0 -1
- package/dist/src/SQLWhere.d.ts.map +0 -1
- package/dist/src/SQLWhere.js.map +0 -1
- package/dist/src/filters/SQLFilter.d.ts.map +0 -1
- package/dist/src/filters/SQLFilter.js +0 -220
- package/dist/src/filters/SQLFilter.js.map +0 -1
- package/dist/src/filters/SQLSorter.d.ts.map +0 -1
- package/dist/src/filters/SQLSorter.js.map +0 -1
- package/dist/src/filters/compilers/contains.d.ts +0 -4
- package/dist/src/filters/compilers/contains.d.ts.map +0 -1
- package/dist/src/filters/compilers/contains.js +0 -29
- package/dist/src/filters/compilers/contains.js.map +0 -1
- package/dist/src/filters/compilers/equals.d.ts +0 -4
- package/dist/src/filters/compilers/equals.d.ts.map +0 -1
- package/dist/src/filters/compilers/equals.js +0 -47
- package/dist/src/filters/compilers/equals.js.map +0 -1
- package/dist/src/filters/compilers/greater.d.ts +0 -4
- package/dist/src/filters/compilers/greater.d.ts.map +0 -1
- package/dist/src/filters/compilers/greater.js +0 -18
- package/dist/src/filters/compilers/greater.js.map +0 -1
- package/dist/src/filters/compilers/in.d.ts +0 -4
- package/dist/src/filters/compilers/in.d.ts.map +0 -1
- package/dist/src/filters/compilers/in.js +0 -51
- package/dist/src/filters/compilers/in.js.map +0 -1
- package/dist/src/filters/compilers/index.d.ts.map +0 -1
- package/dist/src/filters/compilers/index.js +0 -8
- package/dist/src/filters/compilers/index.js.map +0 -1
- package/dist/src/filters/compilers/less.d.ts +0 -4
- package/dist/src/filters/compilers/less.d.ts.map +0 -1
- package/dist/src/filters/compilers/less.js +0 -18
- package/dist/src/filters/compilers/less.js.map +0 -1
- package/dist/src/filters/helpers/isJSONColumn.d.ts +0 -4
- package/dist/src/filters/helpers/isJSONColumn.d.ts.map +0 -1
- package/dist/src/filters/helpers/isJSONColumn.js +0 -17
- package/dist/src/filters/helpers/isJSONColumn.js.map +0 -1
- package/dist/src/filters/helpers/normalizeCompareValue.d.ts.map +0 -1
- package/dist/src/filters/helpers/normalizeCompareValue.js +0 -87
- package/dist/src/filters/helpers/normalizeCompareValue.js.map +0 -1
- package/dist/tests/filters/$and.test.d.ts +0 -2
- package/dist/tests/filters/$and.test.d.ts.map +0 -1
- package/dist/tests/filters/$and.test.js +0 -216
- package/dist/tests/filters/$and.test.js.map +0 -1
- package/dist/tests/filters/$contains.test.d.ts +0 -2
- package/dist/tests/filters/$contains.test.d.ts.map +0 -1
- package/dist/tests/filters/$contains.test.js +0 -917
- package/dist/tests/filters/$contains.test.js.map +0 -1
- package/dist/tests/filters/$eq.test.d.ts +0 -2
- package/dist/tests/filters/$eq.test.d.ts.map +0 -1
- package/dist/tests/filters/$eq.test.js +0 -1464
- package/dist/tests/filters/$eq.test.js.map +0 -1
- package/dist/tests/filters/$gt.test.d.ts +0 -2
- package/dist/tests/filters/$gt.test.d.ts.map +0 -1
- package/dist/tests/filters/$gt.test.js +0 -641
- package/dist/tests/filters/$gt.test.js.map +0 -1
- package/dist/tests/filters/$gte.test.d.ts +0 -2
- package/dist/tests/filters/$gte.test.d.ts.map +0 -1
- package/dist/tests/filters/$gte.test.js +0 -433
- package/dist/tests/filters/$gte.test.js.map +0 -1
- package/dist/tests/filters/$in.test.d.ts +0 -2
- package/dist/tests/filters/$in.test.d.ts.map +0 -1
- package/dist/tests/filters/$in.test.js +0 -773
- package/dist/tests/filters/$in.test.js.map +0 -1
- package/dist/tests/filters/$lt.test.d.ts +0 -2
- package/dist/tests/filters/$lt.test.d.ts.map +0 -1
- package/dist/tests/filters/$lt.test.js +0 -433
- package/dist/tests/filters/$lt.test.js.map +0 -1
- package/dist/tests/filters/$lte.test.d.ts +0 -2
- package/dist/tests/filters/$lte.test.d.ts.map +0 -1
- package/dist/tests/filters/$lte.test.js +0 -472
- package/dist/tests/filters/$lte.test.js.map +0 -1
- package/dist/tests/filters/$neq.test.d.ts +0 -2
- package/dist/tests/filters/$neq.test.d.ts.map +0 -1
- package/dist/tests/filters/$neq.test.js +0 -32
- package/dist/tests/filters/$neq.test.js.map +0 -1
- package/dist/tests/filters/$not.test.d.ts +0 -2
- package/dist/tests/filters/$not.test.d.ts.map +0 -1
- package/dist/tests/filters/$not.test.js +0 -50
- package/dist/tests/filters/$not.test.js.map +0 -1
- package/dist/tests/filters/$or.test.d.ts +0 -2
- package/dist/tests/filters/$or.test.d.ts.map +0 -1
- package/dist/tests/filters/$or.test.js +0 -185
- package/dist/tests/filters/$or.test.js.map +0 -1
- package/dist/tests/filters/SQLTranslatedStringHelper.test.d.ts +0 -2
- package/dist/tests/filters/SQLTranslatedStringHelper.test.d.ts.map +0 -1
- package/dist/tests/filters/SQLTranslatedStringHelper.test.js +0 -491
- package/dist/tests/filters/SQLTranslatedStringHelper.test.js.map +0 -1
- package/dist/tests/filters/dot-syntax.test.d.ts +0 -2
- package/dist/tests/filters/dot-syntax.test.d.ts.map +0 -1
- package/dist/tests/filters/dot-syntax.test.js +0 -210
- package/dist/tests/filters/dot-syntax.test.js.map +0 -1
- package/dist/tests/filters/exists.test.d.ts +0 -2
- package/dist/tests/filters/exists.test.d.ts.map +0 -1
- package/dist/tests/filters/exists.test.js +0 -96
- package/dist/tests/filters/exists.test.js.map +0 -1
- package/dist/tests/filters/joined-relations.test.d.ts +0 -2
- package/dist/tests/filters/joined-relations.test.d.ts.map +0 -1
- package/dist/tests/filters/joined-relations.test.js +0 -167
- package/dist/tests/filters/joined-relations.test.js.map +0 -1
- package/dist/tests/filters/special-cases.test.d.ts +0 -2
- package/dist/tests/filters/special-cases.test.d.ts.map +0 -1
- package/dist/tests/filters/special-cases.test.js +0 -114
- package/dist/tests/filters/special-cases.test.js.map +0 -1
- package/dist/tests/filters/wildcard.test.d.ts +0 -2
- package/dist/tests/filters/wildcard.test.d.ts.map +0 -1
- package/dist/tests/filters/wildcard.test.js +0 -67
- package/dist/tests/filters/wildcard.test.js.map +0 -1
- package/dist/tests/jest.global.setup.d.ts +0 -3
- package/dist/tests/jest.global.setup.d.ts.map +0 -1
- package/dist/tests/jest.global.setup.js +0 -7
- package/dist/tests/jest.global.setup.js.map +0 -1
- package/dist/tests/jest.setup.d.ts +0 -2
- package/dist/tests/jest.setup.d.ts.map +0 -1
- package/dist/tests/jest.setup.js +0 -5
- package/dist/tests/jest.setup.js.map +0 -1
- package/dist/tests/utils/index.d.ts +0 -57
- package/dist/tests/utils/index.d.ts.map +0 -1
- package/dist/tests/utils/index.js +0 -206
- package/dist/tests/utils/index.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
- package/src/QueryableModel.ts +0 -134
- package/src/SQL.ts +0 -128
- package/src/SQLDelete.ts +0 -73
- package/src/SQLExpression.ts +0 -34
- package/src/SQLExpressions.ts +0 -587
- package/src/SQLInsert.ts +0 -113
- package/src/SQLJsonExpressions.ts +0 -283
- package/src/SQLLogger.ts +0 -82
- package/src/SQLOrderBy.ts +0 -69
- package/src/SQLSelect.ts +0 -520
- package/src/SQLTranslatedStringHelper.ts +0 -40
- package/src/SQLWhere.ts +0 -744
- package/src/filters/SQLSorter.ts +0 -60
- package/src/filters/compilers/equals.ts +0 -73
- package/src/filters/compilers/greater.ts +0 -21
- package/src/filters/compilers/less.ts +0 -20
- /package/dist/{src/SQLExpression.d.ts → SQLExpression.d.ts} +0 -0
- /package/dist/{src/SQLLogger.d.ts → SQLLogger.d.ts} +0 -0
- /package/dist/{src/filters → filters}/compilers/index.d.ts +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModelCache.d.ts","sourceRoot":"","sources":["../src/ModelCache.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAErC;;GAEG;AACH,qBAAa,UAAU,CAAC,CAAC,SAAS,cAAc;IAC5C,KAAK,wCAEF;IAEH,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;IAQ3B,SAAS,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC;IA2BtB,KAAK,CAAC,KAAK,EAAE,CAAC;IAUd,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;CAG9B"}
|
|
@@ -1,27 +1,22 @@
|
|
|
1
1
|
import { AutoEncoder } from '@simonbackx/simple-encoding';
|
|
2
|
-
import { QueryableModel } from './QueryableModel.js';
|
|
3
2
|
import { LRUCache } from 'lru-cache';
|
|
4
|
-
|
|
5
3
|
/**
|
|
6
4
|
* There simply is no reason not to cache data in memory for the most used models.
|
|
7
5
|
*/
|
|
8
|
-
export class ModelCache
|
|
9
|
-
cache = new LRUCache
|
|
6
|
+
export class ModelCache {
|
|
7
|
+
cache = new LRUCache({
|
|
10
8
|
max: 1000,
|
|
11
9
|
});
|
|
12
|
-
|
|
13
|
-
getById(id: string | number) {
|
|
10
|
+
getById(id) {
|
|
14
11
|
const base = this.cache.get(id);
|
|
15
12
|
if (!base) {
|
|
16
13
|
return base;
|
|
17
14
|
}
|
|
18
15
|
return this.deepClone(base);
|
|
19
16
|
}
|
|
20
|
-
|
|
21
|
-
deepClone(model: M): M {
|
|
17
|
+
deepClone(model) {
|
|
22
18
|
const copy = new model.static();
|
|
23
19
|
copy.copyFrom(model);
|
|
24
|
-
|
|
25
20
|
for (const column of copy.static.columns.values()) {
|
|
26
21
|
try {
|
|
27
22
|
this[column.name] = structuredClone(model[column.name]);
|
|
@@ -37,15 +32,12 @@ export class ModelCache<M extends QueryableModel> {
|
|
|
37
32
|
}
|
|
38
33
|
}
|
|
39
34
|
}
|
|
40
|
-
|
|
41
35
|
if (!copy.existsInDatabase) {
|
|
42
36
|
throw new Error('Unexpected not exists');
|
|
43
37
|
}
|
|
44
|
-
|
|
45
|
-
return copy as M;
|
|
38
|
+
return copy;
|
|
46
39
|
}
|
|
47
|
-
|
|
48
|
-
store(model: M) {
|
|
40
|
+
store(model) {
|
|
49
41
|
const clone = this.deepClone(model);
|
|
50
42
|
const id = clone.getPrimaryKey();
|
|
51
43
|
if (!id) {
|
|
@@ -54,8 +46,8 @@ export class ModelCache<M extends QueryableModel> {
|
|
|
54
46
|
}
|
|
55
47
|
this.cache.set(id, model);
|
|
56
48
|
}
|
|
57
|
-
|
|
58
|
-
clearId(id: string | number) {
|
|
49
|
+
clearId(id) {
|
|
59
50
|
this.cache.delete(id);
|
|
60
51
|
}
|
|
61
52
|
}
|
|
53
|
+
//# sourceMappingURL=ModelCache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModelCache.js","sourceRoot":"","sources":["../src/ModelCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAErC;;GAEG;AACH,MAAM,OAAO,UAAU;IACnB,KAAK,GAAG,IAAI,QAAQ,CAAqB;QACrC,GAAG,EAAE,IAAI;KACZ,CAAC,CAAC;IAEH,OAAO,CAAC,EAAmB;QACvB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,SAAS,CAAC,KAAQ;QACd,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QAChC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAErB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YAChD,IAAI,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YAC5D,CAAC;YACD,OAAO,CAAC,EAAE,CAAC;gBACP,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBAChE,yBAAyB;gBACzB,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,WAAW,EAAE,CAAC;oBAC5C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;gBACnD,CAAC;qBACI,CAAC;oBACF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC3C,CAAC;YACL,CAAC;QACL,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,IAAS,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,KAAQ;QACV,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACpC,MAAM,EAAE,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC;QACjC,IAAI,CAAC,EAAE,EAAE,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAC;YAC7D,OAAO;QACX,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,CAAC,EAAmB;QACvB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;CACJ"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { SQLResultNamespacedRow } from '@simonbackx/simple-database';
|
|
2
|
+
import { Model } from '@simonbackx/simple-database';
|
|
2
3
|
import { SQLSelect } from './SQLSelect.js';
|
|
3
|
-
import { SQLDelete } from './SQLDelete.js';
|
|
4
|
-
import { SQLUpdate } from './SQLUpdate.js';
|
|
5
|
-
import { SQLInsert } from './SQLInsert.js';
|
|
6
|
-
import { SQLExpression } from './SQLExpression.js';
|
|
7
|
-
import { ModelCache } from './ModelCache.js';
|
|
4
|
+
import type { SQLDelete } from './SQLDelete.js';
|
|
5
|
+
import type { SQLUpdate } from './SQLUpdate.js';
|
|
6
|
+
import type { SQLInsert } from './SQLInsert.js';
|
|
7
|
+
import type { SQLExpression } from './SQLExpression.js';
|
|
8
|
+
import type { ModelCache } from './ModelCache.js';
|
|
8
9
|
export declare class QueryableModel extends Model {
|
|
9
10
|
rawSelectedRow: SQLResultNamespacedRow | null;
|
|
10
11
|
static cache: ModelCache<QueryableModel> | null;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueryableModel.d.ts","sourceRoot":"","sources":["../src/QueryableModel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,qBAAa,cAAe,SAAQ,KAAK;IACrC,cAAc,EAAE,sBAAsB,GAAG,IAAI,CAAQ;IACrD,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,cAAc,CAAC,GAAG,IAAI,CAAQ;IAEvD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,OAAO,KAAK,GAAG,OAAO,cAAc,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,aAAa,GAAG,MAAM,CAAC,EAAE,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAyB1I,MAAM,CAAC,MAAM,IAAI,SAAS;IAI1B,MAAM,CAAC,MAAM,IAAI,SAAS;IAI1B,MAAM,CAAC,MAAM,IAAI,SAAS;IAIpB,OAAO;WAWA,UAAU,CAAC,CAAC,SAAS,OAAO,cAAc,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE;IAuBzF;;;OAGG;WACmB,OAAO,CAAC,CAAC,SAAS,OAAO,KAAK,EAAE,IAAI,EAAE,CAAC,GAAG,OAAO,cAAc,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;WAC/H,OAAO,CAAC,CAAC,SAAS,OAAO,KAAK,EAAE,IAAI,EAAE,CAAC,GAAG,OAAO,cAAc,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IAYjJ;;;OAGG;WACmB,QAAQ,CAAC,CAAC,SAAS,OAAO,KAAK,EAAE,IAAI,EAAE,CAAC,GAAG,OAAO,cAAc,EAAE,GAAG,GAAG,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;CA4BnJ"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const SQLSelect_js_1 = require("./SQLSelect.js");
|
|
6
|
-
const SQL_js_1 = require("./SQL.js");
|
|
7
|
-
class QueryableModel extends simple_database_1.Model {
|
|
1
|
+
import { Model } from '@simonbackx/simple-database';
|
|
2
|
+
import { SQLSelect } from './SQLSelect.js';
|
|
3
|
+
import { SQL } from './SQL.js';
|
|
4
|
+
export class QueryableModel extends Model {
|
|
8
5
|
rawSelectedRow = null;
|
|
9
6
|
static cache = null;
|
|
10
7
|
static select(...columns) {
|
|
@@ -23,17 +20,17 @@ class QueryableModel extends simple_database_1.Model {
|
|
|
23
20
|
}
|
|
24
21
|
return d;
|
|
25
22
|
};
|
|
26
|
-
const select = new
|
|
27
|
-
return select.from(
|
|
23
|
+
const select = new SQLSelect(transformer, ...(columns.length === 0 ? [SQL.wildcard()] : columns));
|
|
24
|
+
return select.from(SQL.table(this.table));
|
|
28
25
|
}
|
|
29
26
|
static delete() {
|
|
30
|
-
return
|
|
27
|
+
return SQL.delete().from(SQL.table(this.table));
|
|
31
28
|
}
|
|
32
29
|
static update() {
|
|
33
|
-
return
|
|
30
|
+
return SQL.update(SQL.table(this.table));
|
|
34
31
|
}
|
|
35
32
|
static insert() {
|
|
36
|
-
return
|
|
33
|
+
return SQL.insert(SQL.table(this.table));
|
|
37
34
|
}
|
|
38
35
|
async refresh() {
|
|
39
36
|
const { fields, skipUpdate } = this.getChangedDatabaseProperties();
|
|
@@ -104,5 +101,4 @@ class QueryableModel extends simple_database_1.Model {
|
|
|
104
101
|
return this.select().where(this.primary.name, ids).limit(ids.length).fetch();
|
|
105
102
|
}
|
|
106
103
|
}
|
|
107
|
-
exports.QueryableModel = QueryableModel;
|
|
108
104
|
//# sourceMappingURL=QueryableModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueryableModel.js","sourceRoot":"","sources":["../src/QueryableModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
-
import { SQLResultNamespacedRow } from '@simonbackx/simple-database';
|
|
1
|
+
import type { SQLResultNamespacedRow } from '@simonbackx/simple-database';
|
|
2
2
|
import { SQLDelete } from './SQLDelete.js';
|
|
3
|
-
import { SQLExpression } from './SQLExpression.js';
|
|
4
|
-
import {
|
|
3
|
+
import type { SQLExpression } from './SQLExpression.js';
|
|
4
|
+
import type { SQLColumnExpressionParams, SQLScalarValue } from './SQLExpressions.js';
|
|
5
|
+
import { SQLAssignment, SQLCoalesce, SQLColumnExpression, SQLDistinct, SQLIf, SQLIsNull, SQLJSONTableExpression, SQLTableExpression, SQLWildcardSelectExpression } from './SQLExpressions.js';
|
|
5
6
|
import { SQLInsert } from './SQLInsert.js';
|
|
6
7
|
import { SQLJoin } from './SQLJoin.js';
|
|
7
|
-
import {
|
|
8
|
+
import type { SQLJsonValueType } from './SQLJsonExpressions.js';
|
|
9
|
+
import { SQLJsonExtract, SQLJsonKeys, SQLJsonLength, SQLJsonType, SQLJsonUnquote, SQLJsonValue, SQLLpad } from './SQLJsonExpressions.js';
|
|
8
10
|
import { parseTable, SQLSelect } from './SQLSelect.js';
|
|
9
11
|
import { SQLUpdate } from './SQLUpdate.js';
|
|
10
|
-
import { ParseWhereArguments, SQLWhere } from './SQLWhere.js';
|
|
12
|
+
import type { ParseWhereArguments, SQLWhere } from './SQLWhere.js';
|
|
11
13
|
declare class StaticSQL {
|
|
12
14
|
wildcard(namespace?: string): SQLWildcardSelectExpression;
|
|
13
15
|
column(...args: SQLColumnExpressionParams): SQLColumnExpression;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SQL.d.ts","sourceRoot":"","sources":["../src/SQL.ts"],"names":[],"mappings":"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"}
|
package/dist/SQL.js
ADDED
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { SQLDelete } from './SQLDelete.js';
|
|
2
|
+
import { isSQLExpression } from './SQLExpression.js';
|
|
3
|
+
import { SQLAssignment, SQLCoalesce, SQLColumnExpression, SQLDistinct, SQLIf, SQLIsNull, SQLJSONTableExpression, SQLParentNamespace, SQLSafeValue, SQLScalar, SQLTableExpression, SQLWildcardSelectExpression } from './SQLExpressions.js';
|
|
4
|
+
import { SQLInsert } from './SQLInsert.js';
|
|
5
|
+
import { SQLJoin, SQLJoinType } from './SQLJoin.js';
|
|
6
|
+
import { SQLJsonExtract, SQLJsonKeys, SQLJsonLength, SQLJsonType, SQLJsonUnquote, SQLJsonValue, SQLLpad } from './SQLJsonExpressions.js';
|
|
7
|
+
import { parseTable, SQLSelect } from './SQLSelect.js';
|
|
8
|
+
import { SQLUpdate } from './SQLUpdate.js';
|
|
9
|
+
import { SQLEmptyWhere } from './SQLWhere.js';
|
|
10
|
+
class StaticSQL {
|
|
11
|
+
wildcard(namespace) {
|
|
12
|
+
return new SQLWildcardSelectExpression(namespace);
|
|
13
|
+
}
|
|
14
|
+
column(...args) {
|
|
15
|
+
return new SQLColumnExpression(...args);
|
|
16
|
+
}
|
|
17
|
+
parentColumn(column) {
|
|
18
|
+
return new SQLColumnExpression(SQLParentNamespace, column);
|
|
19
|
+
}
|
|
20
|
+
jsonExtract(column, path, asScalar = false) {
|
|
21
|
+
return new SQLJsonExtract(column, asScalar ? new SQLScalar(path) : new SQLSafeValue(path));
|
|
22
|
+
}
|
|
23
|
+
jsonValue(column, path, type, asScalar = false) {
|
|
24
|
+
return new SQLJsonValue(column, type, asScalar ? new SQLScalar(path) : new SQLSafeValue(path));
|
|
25
|
+
}
|
|
26
|
+
jsonKeys(column) {
|
|
27
|
+
return new SQLJsonKeys(column);
|
|
28
|
+
}
|
|
29
|
+
jsonType(column) {
|
|
30
|
+
return new SQLJsonType(column);
|
|
31
|
+
}
|
|
32
|
+
lpad(column, length, value) {
|
|
33
|
+
return new SQLLpad(column, new SQLSafeValue(length), new SQLSafeValue(value));
|
|
34
|
+
}
|
|
35
|
+
jsonUnquotedValue(column, path) {
|
|
36
|
+
return new SQLJsonUnquote(new SQLJsonExtract(column, new SQLSafeValue(path)));
|
|
37
|
+
}
|
|
38
|
+
jsonLength(column, path) {
|
|
39
|
+
return new SQLJsonLength(column, path ? new SQLSafeValue(path) : undefined);
|
|
40
|
+
}
|
|
41
|
+
table(table, asNamespace) {
|
|
42
|
+
return new SQLTableExpression(table, asNamespace);
|
|
43
|
+
}
|
|
44
|
+
jsonTable(expression, asNamespace) {
|
|
45
|
+
return new SQLJSONTableExpression(expression, asNamespace);
|
|
46
|
+
}
|
|
47
|
+
select(...columns) {
|
|
48
|
+
if (columns.length === 0) {
|
|
49
|
+
return new SQLSelect(this.wildcard());
|
|
50
|
+
}
|
|
51
|
+
return new SQLSelect(...columns);
|
|
52
|
+
}
|
|
53
|
+
insert(tableName) {
|
|
54
|
+
return new SQLInsert(tableName);
|
|
55
|
+
}
|
|
56
|
+
update(tableName) {
|
|
57
|
+
return new SQLUpdate(tableName);
|
|
58
|
+
}
|
|
59
|
+
assignment(key, value) {
|
|
60
|
+
return new SQLAssignment(typeof key === 'string' ? new SQLColumnExpression(key) : key, isSQLExpression(value) ? value : new SQLScalar(value));
|
|
61
|
+
}
|
|
62
|
+
where(...args) {
|
|
63
|
+
return new SQLEmptyWhere().and(...args);
|
|
64
|
+
}
|
|
65
|
+
whereNot(...args) {
|
|
66
|
+
return new SQLEmptyWhere().andNot(...args);
|
|
67
|
+
}
|
|
68
|
+
delete() {
|
|
69
|
+
return new SQLDelete();
|
|
70
|
+
}
|
|
71
|
+
leftJoin(...args) {
|
|
72
|
+
return new SQLJoin(SQLJoinType.Left, parseTable(...args));
|
|
73
|
+
}
|
|
74
|
+
rightJoin(...args) {
|
|
75
|
+
return new SQLJoin(SQLJoinType.Right, parseTable(...args));
|
|
76
|
+
}
|
|
77
|
+
innerJoin(...args) {
|
|
78
|
+
return new SQLJoin(SQLJoinType.Inner, parseTable(...args));
|
|
79
|
+
}
|
|
80
|
+
join(...args) {
|
|
81
|
+
return new SQLJoin(SQLJoinType.Inner, parseTable(...args));
|
|
82
|
+
}
|
|
83
|
+
if(...args) {
|
|
84
|
+
return new SQLIf(...args);
|
|
85
|
+
}
|
|
86
|
+
coalesce(...args) {
|
|
87
|
+
return new SQLCoalesce(...args);
|
|
88
|
+
}
|
|
89
|
+
distinct(column) {
|
|
90
|
+
if (!column) {
|
|
91
|
+
return new SQLDistinct(this.wildcard());
|
|
92
|
+
}
|
|
93
|
+
return new SQLDistinct(column);
|
|
94
|
+
}
|
|
95
|
+
isNull(column) {
|
|
96
|
+
return new SQLIsNull(column);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
export const SQL = new StaticSQL();
|
|
100
|
+
//# sourceMappingURL=SQL.js.map
|
package/dist/SQL.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SQL.js","sourceRoot":"","sources":["../src/SQL.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { SQLExpression, SQLExpressionOptions, SQLQuery } from './SQLExpression.js';
|
|
2
|
-
import { SQLJoin } from './SQLJoin.js';
|
|
1
|
+
import type { SQLExpression, SQLExpressionOptions, SQLQuery } from './SQLExpression.js';
|
|
2
|
+
import type { SQLJoin } from './SQLJoin.js';
|
|
3
3
|
declare class EmptyClass {
|
|
4
4
|
}
|
|
5
5
|
declare const SQLDelete_base: {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SQLDelete.d.ts","sourceRoot":"","sources":["../src/SQLDelete.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,QAAQ,EAAC,MAAM,oBAAoB,CAAC;AAEvF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAI5C,cAAM,UAAU;CAAG;;;;;;;;;;;;;AACnB,qBAAa,SAAU,SAAQ,cAAsB,YAAW,aAAa;IACzE,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,CAAC,YAAY,CAAC,OAAO,OAAO,CAAC,CAAC,EAAE,CAAM;IAE9C,KAAK,IAAI,IAAI;IAMb,IAAI,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAKhC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,OAAO,OAAO,CAAC,GAAG,IAAI;IAK9C,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;IA+B1C,MAAM,IAAI,OAAO,CAAC;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;IAW3C,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,KAAK,GAAG,EAAE,UAAU,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;CAGpH"}
|
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const SQLExpression_js_1 = require("./SQLExpression.js");
|
|
6
|
-
const SQLLogger_js_1 = require("./SQLLogger.js");
|
|
7
|
-
const SQLWhere_js_1 = require("./SQLWhere.js");
|
|
1
|
+
import { Database } from '@simonbackx/simple-database';
|
|
2
|
+
import { joinSQLQuery, normalizeSQLQuery } from './SQLExpression.js';
|
|
3
|
+
import { SQLLogger } from './SQLLogger.js';
|
|
4
|
+
import { Whereable } from './SQLWhere.js';
|
|
8
5
|
class EmptyClass {
|
|
9
6
|
}
|
|
10
|
-
class SQLDelete extends
|
|
7
|
+
export class SQLDelete extends Whereable(EmptyClass) {
|
|
11
8
|
_from;
|
|
12
9
|
_joins = [];
|
|
13
10
|
clone() {
|
|
@@ -43,19 +40,18 @@ class SQLDelete extends (0, SQLWhere_js_1.Whereable)(EmptyClass) {
|
|
|
43
40
|
query.push(this._where.getSQL(options));
|
|
44
41
|
}
|
|
45
42
|
}
|
|
46
|
-
return
|
|
43
|
+
return joinSQLQuery(query, ' ');
|
|
47
44
|
}
|
|
48
45
|
async delete() {
|
|
49
46
|
if (this._where && this._where.isAlways === false) {
|
|
50
47
|
return { affectedRows: 0 };
|
|
51
48
|
}
|
|
52
|
-
const { query, params } =
|
|
53
|
-
const [rows] = await
|
|
49
|
+
const { query, params } = normalizeSQLQuery(this.getSQL());
|
|
50
|
+
const [rows] = await SQLLogger.log(Database.delete(query, params), query, params);
|
|
54
51
|
return rows;
|
|
55
52
|
}
|
|
56
53
|
async then(onFulfilled, onRejected) {
|
|
57
54
|
return this.delete().then(onFulfilled, onRejected);
|
|
58
55
|
}
|
|
59
56
|
}
|
|
60
|
-
exports.SQLDelete = SQLDelete;
|
|
61
57
|
//# sourceMappingURL=SQLDelete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SQLDelete.js","sourceRoot":"","sources":["../src/SQLDelete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAEvD,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAErE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,MAAM,UAAU;CAAG;AACnB,MAAM,OAAO,SAAU,SAAQ,SAAS,CAAC,UAAU,CAAC;IAChD,KAAK,CAAgB;IACrB,MAAM,GAAqC,EAAE,CAAC;IAE9C,KAAK;QACD,MAAM,CAAC,GAAG,IAAI,SAAS,EAAE,CAAC;QAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACvB,OAAO,CAAQ,CAAC;IACpB,CAAC;IAED,IAAI,CAAC,KAAoB;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,CAAC,IAAkC;QACnC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,OAA8B;QACjC,MAAM,KAAK,GAAe;YACtB,QAAQ;SACX,CAAC;QAEF,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;QACxB,OAAO,CAAC,gBAAgB,GAAI,IAAI,CAAC,KAAa,CAAC,SAAS,IAAK,IAAI,CAAC,KAAa,CAAC,KAAK,IAAI,SAAS,CAAC;QAEnG,KAAK,CAAC,IAAI,CACN,MAAM,CACT,CAAC;QAEF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAEvC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAEvD,QAAQ;QACR,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;YACpC,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;YACjF,CAAC;iBACI,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBACvB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;YAC5C,CAAC;QACL,CAAC;QAED,OAAO,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,MAAM;QACR,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;YAChD,OAAO,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;QAC/B,CAAC;QAED,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAE3D,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAClF,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,WAAqD,EAAE,UAAgC;QAC9F,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;IACvD,CAAC;CACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SQLExpression.d.ts","sourceRoot":"","sources":["../src/SQLExpression.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,oBAAoB,GAAG;IAC/B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,GAAG,EAAE,CAAA;CAAE,CAAC;AAClE,MAAM,MAAM,QAAQ,GAAG,kBAAkB,GAAG,MAAM,CAAC;AAEnD,wBAAgB,YAAY,CAAC,OAAO,EAAE,CAAC,QAAQ,GAAG,SAAS,GAAG,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAM7G;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,QAAQ,GAAG,kBAAkB,CAKjE;AAED,MAAM,WAAW,aAAa;IAC1B,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ,CAAC;CACpD;AAED,MAAM,WAAW,kBAAmB,SAAQ,aAAa;IACrD,OAAO,IAAI,MAAM,CAAC;CACrB;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,aAAa,CAElE"}
|
|
@@ -1,22 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.joinSQLQuery = joinSQLQuery;
|
|
4
|
-
exports.normalizeSQLQuery = normalizeSQLQuery;
|
|
5
|
-
exports.isSQLExpression = isSQLExpression;
|
|
6
|
-
function joinSQLQuery(queries, seperator) {
|
|
1
|
+
export function joinSQLQuery(queries, seperator) {
|
|
7
2
|
queries = queries.filter(q => q !== undefined && q !== null);
|
|
8
3
|
return {
|
|
9
4
|
query: queries.map(q => typeof q === 'string' ? q : q.query).join(seperator ?? ''),
|
|
10
5
|
params: queries.flatMap(q => typeof q === 'string' ? [] : q.params),
|
|
11
6
|
};
|
|
12
7
|
}
|
|
13
|
-
function normalizeSQLQuery(q) {
|
|
8
|
+
export function normalizeSQLQuery(q) {
|
|
14
9
|
return {
|
|
15
10
|
query: typeof q === 'string' ? q : q.query,
|
|
16
11
|
params: typeof q === 'string' ? [] : q.params,
|
|
17
12
|
};
|
|
18
13
|
}
|
|
19
|
-
function isSQLExpression(obj) {
|
|
14
|
+
export function isSQLExpression(obj) {
|
|
20
15
|
return typeof obj === 'object' && obj !== null && !!obj.getSQL && typeof obj.getSQL === 'function';
|
|
21
16
|
}
|
|
22
17
|
//# sourceMappingURL=SQLExpression.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SQLExpression.js","sourceRoot":"","sources":["../src/SQLExpression.ts"],"names":[],"mappings":"AAQA,MAAM,UAAU,YAAY,CAAC,OAAwC,EAAE,SAAkB;IACrF,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;IAC7D,OAAO;QACH,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;QACnF,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,MAAM,CAAC;KACvE,CAAC;AACN,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,CAAW;IACzC,OAAO;QACH,KAAK,EAAE,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK;QAC1C,MAAM,EAAE,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM;KAChD,CAAC;AACN,CAAC;AAUD,MAAM,UAAU,eAAe,CAAC,GAAY;IACxC,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,CAAE,GAAW,CAAC,MAAM,IAAI,OAAQ,GAAW,CAAC,MAAM,KAAK,UAAU,CAAC;AACzH,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { SQLExpression, SQLExpressionOptions, SQLNamedExpression, SQLQuery } from './SQLExpression.js';
|
|
2
|
-
import { ParseWhereArguments } from './SQLWhere.js';
|
|
1
|
+
import type { SQLExpression, SQLExpressionOptions, SQLNamedExpression, SQLQuery } from './SQLExpression.js';
|
|
2
|
+
import type { ParseWhereArguments } from './SQLWhere.js';
|
|
3
3
|
export type SQLScalarValue = string | number | boolean | Date;
|
|
4
4
|
export type SQLDynamicExpression = SQLScalarValue | SQLScalarValue[] | null | SQLExpression;
|
|
5
5
|
export declare function scalarToSQLExpression(s: SQLScalarValue | null): SQLExpression;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SQLExpressions.d.ts","sourceRoot":"","sources":["../src/SQLExpressions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE5G,OAAO,KAAK,EAAE,mBAAmB,EAAC,MAAM,eAAe,CAAC;AAGxD,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAC9D,MAAM,MAAM,oBAAoB,GAAG,cAAc,GAAG,cAAc,EAAE,GAAG,IAAI,GAAG,aAAa,CAAC;AAE5F,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,aAAa,CAM7E;AAED,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,oBAAoB,GAAG,aAAa,CAa/E;AAED,qBAAa,WAAY,YAAW,aAAa;IAC7C,UAAU,EAAE,aAAa,CAAC;gBAEd,UAAU,EAAE,aAAa;IAIrC,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAMnD;AAED,qBAAa,aAAc,YAAW,aAAa;IAC/C,UAAU,EAAE,aAAa,CAAC;gBAEd,UAAU,EAAE,aAAa;IAIrC,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAOnD;AAED,qBAAa,QAAS,YAAW,aAAa;IAC1C,UAAU,EAAE,aAAa,GAAG,IAAI,CAAC;gBAErB,UAAU,GAAE,aAAa,GAAG,IAAW;IAInD,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAOnD;AAED,qBAAa,QAAS,YAAW,aAAa;IAC1C,UAAU,EAAE,aAAa,CAAC;gBAEd,UAAU,EAAE,aAAa;IAIrC,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAOnD;AAED,qBAAa,WAAY,YAAW,aAAa;IAC7C,MAAM,IAAI,QAAQ;CAGrB;AAED,qBAAa,qBAAsB,YAAW,aAAa;IACvD,MAAM,IAAI,QAAQ;CAGrB;AAED,qBAAa,YAAa,YAAW,aAAa;IAC9C,MAAM,IAAI,QAAQ;CAGrB;AAED,qBAAa,WAAY,YAAW,aAAa;IAC7C,WAAW,EAAE,oBAAoB,EAAE,CAAC;gBAExB,GAAG,WAAW,EAAE,oBAAoB,EAAE;IAIlD,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAOnD;AAED,qBAAa,cAAe,YAAW,aAAa;IAChD,WAAW,EAAE,aAAa,EAAE,CAAC;gBAEjB,GAAG,WAAW,EAAE,aAAa,EAAE;IAI3C,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAGnD;AAED,qBAAa,MAAO,YAAW,aAAa;IACxC,UAAU,EAAE,aAAa,CAAC;gBAEd,UAAU,EAAE,aAAa;IAIrC,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAOnD;AAED,qBAAa,MAAO,YAAW,aAAa;IACxC,UAAU,EAAE,aAAa,CAAC;gBAEd,UAAU,EAAE,aAAa;IAIrC,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAOnD;AAED,qBAAa,WAAY,YAAW,aAAa;IAC7C,UAAU,EAAE,aAAa,CAAC;IAC1B,EAAE,EAAE,QAAQ,CAAC;gBAED,UAAU,EAAE,aAAa,EAAE,EAAE,EAAE,QAAQ;IAKnD,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAOnD;AAED,qBAAa,aAAc,YAAW,aAAa;IAC/C,GAAG,EAAE,aAAa,CAAC;IACnB,KAAK,EAAE,aAAa,CAAC;gBAET,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa;IAKpD,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAOnD;AAED,qBAAa,QAAS,YAAW,aAAa;IAC1C,IAAI,EAAE,MAAM,CAAC;gBAED,IAAI,EAAE,MAAM;IAIxB,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAGnD;AAED,qBAAa,SAAU,YAAW,aAAa;IAC3C,WAAW,EAAE,aAAa,EAAE,CAAC;gBAEjB,GAAG,WAAW,EAAE,aAAa,EAAE;IAI3C,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAOnD;AAED,qBAAa,MAAO,YAAW,aAAa;IACxC,UAAU,EAAE,aAAa,CAAC;gBAEd,UAAU,EAAE,aAAa;IAIrC,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAOnD;AAED,qBAAa,OAAQ,YAAW,aAAa;IACzC,KAAK,EAAE,aAAa,CAAC;IACrB,EAAE,SAAU;gBAEA,KAAK,EAAE,aAAa,EAAE,EAAE,SAAS;IAK7C,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CASnD;AAED,cAAM,aAAc,YAAW,aAAa;IACxC,KAAK,EAAE,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;gBAEf,KAAK,EAAE,IAAI,GAAG,IAAI,GAAG,KAAK;IAItC,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAGnD;AACD,eAAO,MAAM,WAAW,eAA0B,CAAC;AACnD,eAAO,MAAM,WAAW,eAA0B,CAAC;AACnD,eAAO,MAAM,YAAY,eAA2B,CAAC;AAErD,qBAAa,OAAQ,YAAW,aAAa;IACzC,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAGnD;AAED,qBAAa,MAAO,YAAW,aAAa;IACxC,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAGnD;AAED,qBAAa,SAAU,YAAW,aAAa;IAC3C,KAAK,EAAE,cAAc,CAAC;gBAEV,KAAK,EAAE,cAAc;IAIjC,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAMnD;AAED,qBAAa,YAAa,YAAW,aAAa;IAC9C,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;gBAEX,KAAK,EAAE,MAAM,GAAG,MAAM;IAIlC,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAGnD;AAED,qBAAa,QAAS,YAAW,aAAa;IAC1C,KAAK,EAAE,cAAc,EAAE,CAAC;gBAEZ,KAAK,EAAE,cAAc,EAAE;IAInC,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAMnD;AAED,qBAAa,2BAA4B,YAAW,aAAa;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;gBAEP,SAAS,CAAC,EAAE,MAAM;IAI9B,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAGnD;AAED,qBAAa,sBAAuB,YAAW,aAAa;IACxD,SAAS,EAAE,MAAM,CAAC;gBAEN,SAAS,EAAE,MAAM;IAI7B,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAGnD;AAED,eAAO,MAAM,mBAAmB,EAAE,aAOjC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,aAOhC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACpC,SAAS,EAAE,MAAM,GAAG,aAAa;IACjC,MAAM,EAAE,MAAM;CACjB,GAAG;IACA,MAAM,EAAE,MAAM;CACjB,CAAC;AAEF,qBAAa,mBAAoB,YAAW,aAAa;IACrD,SAAS,EAAE,aAAa,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;gBAEH,GAAG,IAAI,EAAE,yBAAyB;IAkB9C,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAOnD;AAED,qBAAa,SAAU,YAAW,aAAa;IAC/B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAAuB,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAA7D,gBAAgB,EAAE,mBAAmB,EAAmB,KAAK,EAAE,MAAM,GAAG,MAAM;IAG3G,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CASnD;AAED,qBAAa,kBAAmB,YAAW,kBAAkB;IACzD;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;gBAEF,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM;IAK/C,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;IAOhD,OAAO,IAAI,MAAM;CAGpB;AAED,MAAM,MAAM,sBAAsB,GAAG,SAAS,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;AACzE,qBAAa,kBAAmB,YAAW,aAAa;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,sBAAsB,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;gBAED,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,MAAM;IAMpE,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CASnD;AAED,qBAAa,sBAAuB,YAAW,kBAAkB;IAC7D,UAAU,EAAE,aAAa,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,SAAU;IAClB,OAAO,EAAE,kBAAkB,EAAE,CAAM;gBAEvB,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM;IAK1D,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,MAAM,GAAG,sBAAsB;IAK3F,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;IAchD,OAAO,IAAI,MAAM;CAGpB;AAED,qBAAa,KAAM,YAAW,aAAa;IACvC,GAAG,EAAE,aAAa,CAAC;IACnB,KAAK,EAAE,aAAa,CAAiB;IACrC,KAAK,EAAE,aAAa,CAAiB;gBAEzB,GAAG,IAAI,EAAE,mBAAmB;IAIxC,IAAI,CAAC,IAAI,EAAE,oBAAoB,GAAG,KAAK;IAKvC,IAAI,CAAC,KAAK,EAAE,oBAAoB,GAAG,KAAK;IAKxC,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAWnD;AAED,qBAAa,WAAY,YAAW,aAAa;IAC7C,WAAW,EAAE,aAAa,EAAE,CAAM;gBAEtB,GAAG,WAAW,EAAE,aAAa,EAAE;IAI3C,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAOnD;AAED,qBAAa,SAAU,YAAW,aAAa;IAC3C,UAAU,EAAE,aAAa,CAAC;gBAEd,UAAU,EAAE,aAAa;IAIrC,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,QAAQ;CAMnD"}
|