@decaf-ts/core 0.5.0 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core.cjs +574 -999
- package/dist/core.esm.cjs +572 -984
- package/lib/esm/identity/decorators.d.ts +1 -8
- package/lib/esm/identity/decorators.js +12 -19
- package/lib/esm/identity/utils.d.ts +1 -1
- package/lib/esm/identity/utils.js +3 -2
- package/lib/esm/index.d.ts +4 -15
- package/lib/esm/index.js +8 -17
- package/lib/esm/interfaces/Executor.d.ts +2 -18
- package/lib/esm/interfaces/Executor.js +1 -1
- package/lib/esm/interfaces/Observable.d.ts +2 -27
- package/lib/esm/interfaces/Observable.js +1 -1
- package/lib/esm/interfaces/Observer.d.ts +0 -13
- package/lib/esm/interfaces/Observer.js +1 -1
- package/lib/esm/interfaces/Paginatable.d.ts +3 -2
- package/lib/esm/interfaces/Paginatable.js +1 -1
- package/lib/esm/interfaces/Queriable.d.ts +19 -3
- package/lib/esm/interfaces/Queriable.js +1 -1
- package/lib/esm/interfaces/RawExecutor.d.ts +1 -18
- package/lib/esm/interfaces/RawExecutor.js +1 -1
- package/lib/esm/interfaces/SequenceOptions.d.ts +0 -7
- package/lib/esm/interfaces/SequenceOptions.js +1 -1
- package/lib/esm/interfaces/index.d.ts +0 -1
- package/lib/esm/interfaces/index.js +1 -2
- package/lib/esm/model/construction.d.ts +9 -9
- package/lib/esm/model/construction.js +1 -1
- package/lib/esm/model/decorators.d.ts +6 -12
- package/lib/esm/model/decorators.js +6 -12
- package/lib/esm/model/index.js +1 -2
- package/lib/esm/persistence/Adapter.d.ts +29 -26
- package/lib/esm/persistence/Adapter.js +133 -45
- package/lib/esm/persistence/Dispatch.d.ts +18 -0
- package/lib/esm/persistence/Dispatch.js +89 -0
- package/lib/esm/persistence/ObserverHandler.d.ts +14 -0
- package/lib/esm/persistence/ObserverHandler.js +42 -0
- package/lib/esm/persistence/Sequence.d.ts +4 -12
- package/lib/esm/persistence/Sequence.js +22 -1
- package/lib/esm/persistence/constants.d.ts +0 -5
- package/lib/esm/persistence/constants.js +1 -7
- package/lib/esm/persistence/errors.d.ts +0 -3
- package/lib/esm/persistence/errors.js +2 -7
- package/lib/esm/persistence/index.d.ts +3 -0
- package/lib/esm/persistence/index.js +4 -1
- package/lib/esm/persistence/types.d.ts +3 -0
- package/lib/esm/persistence/types.js +2 -0
- package/lib/esm/query/Condition.d.ts +10 -13
- package/lib/esm/query/Condition.js +13 -10
- package/lib/esm/query/Paginator.d.ts +11 -10
- package/lib/esm/query/Paginator.js +8 -10
- package/lib/esm/query/Statement.d.ts +37 -53
- package/lib/esm/query/Statement.js +130 -128
- package/lib/esm/query/constants.d.ts +0 -64
- package/lib/esm/query/constants.js +1 -68
- package/lib/esm/query/index.d.ts +0 -5
- package/lib/esm/query/index.js +1 -6
- package/lib/esm/query/options.d.ts +48 -175
- package/lib/esm/query/options.js +1 -1
- package/lib/esm/query/selectors.d.ts +3 -33
- package/lib/esm/query/selectors.js +1 -1
- package/lib/esm/ram/RamAdapter.d.ts +11 -20
- package/lib/esm/ram/RamAdapter.js +49 -140
- package/lib/esm/ram/RamPaginator.d.ts +8 -6
- package/lib/esm/ram/RamPaginator.js +5 -5
- package/lib/esm/ram/RamSequence.d.ts +0 -36
- package/lib/esm/ram/RamSequence.js +2 -51
- package/lib/esm/ram/RamStatement.d.ts +10 -6
- package/lib/esm/ram/RamStatement.js +101 -6
- package/lib/esm/ram/constants.d.ts +1 -0
- package/lib/esm/ram/constants.js +2 -0
- package/lib/esm/ram/handlers.d.ts +6 -0
- package/lib/esm/ram/handlers.js +8 -0
- package/lib/esm/ram/index.d.ts +4 -4
- package/lib/esm/ram/index.js +9 -5
- package/lib/esm/ram/model/RamSequence.d.ts +0 -13
- package/lib/esm/ram/model/RamSequence.js +1 -1
- package/lib/esm/ram/types.d.ts +5 -5
- package/lib/esm/ram/types.js +1 -1
- package/lib/esm/repository/Repository.d.ts +21 -17
- package/lib/esm/repository/Repository.js +89 -31
- package/lib/esm/repository/constants.d.ts +0 -15
- package/lib/esm/repository/constants.js +1 -16
- package/lib/esm/repository/errors.d.ts +0 -6
- package/lib/esm/repository/errors.js +1 -11
- package/lib/esm/repository/injectables.js +1 -1
- package/lib/esm/repository/types.d.ts +0 -3
- package/lib/esm/repository/types.js +1 -1
- package/lib/esm/utils/decorators.d.ts +1 -0
- package/lib/esm/utils/decorators.js +11 -0
- package/lib/esm/utils/errors.d.ts +10 -0
- package/lib/esm/utils/errors.js +17 -0
- package/lib/esm/utils/index.d.ts +2 -0
- package/lib/esm/utils/index.js +3 -0
- package/lib/identity/decorators.cjs +12 -19
- package/lib/identity/decorators.d.ts +1 -8
- package/lib/identity/utils.cjs +3 -2
- package/lib/identity/utils.d.ts +1 -1
- package/lib/index.cjs +8 -17
- package/lib/index.d.ts +4 -15
- package/lib/interfaces/Executor.cjs +1 -1
- package/lib/interfaces/Executor.d.ts +2 -18
- package/lib/interfaces/Observable.cjs +1 -1
- package/lib/interfaces/Observable.d.ts +2 -27
- package/lib/interfaces/Observer.cjs +1 -1
- package/lib/interfaces/Observer.d.ts +0 -13
- package/lib/interfaces/Paginatable.cjs +1 -1
- package/lib/interfaces/Paginatable.d.ts +3 -2
- package/lib/interfaces/Queriable.cjs +1 -1
- package/lib/interfaces/Queriable.d.ts +19 -3
- package/lib/interfaces/RawExecutor.cjs +1 -1
- package/lib/interfaces/RawExecutor.d.ts +1 -18
- package/lib/interfaces/SequenceOptions.cjs +1 -1
- package/lib/interfaces/SequenceOptions.d.ts +0 -7
- package/lib/interfaces/index.cjs +1 -2
- package/lib/interfaces/index.d.ts +0 -1
- package/lib/model/construction.cjs +1 -1
- package/lib/model/construction.d.ts +9 -9
- package/lib/model/decorators.cjs +6 -12
- package/lib/model/decorators.d.ts +6 -12
- package/lib/model/index.cjs +1 -2
- package/lib/persistence/Adapter.cjs +132 -44
- package/lib/persistence/Adapter.d.ts +29 -26
- package/lib/persistence/Dispatch.cjs +93 -0
- package/lib/persistence/Dispatch.d.ts +18 -0
- package/lib/persistence/ObserverHandler.cjs +46 -0
- package/lib/persistence/ObserverHandler.d.ts +14 -0
- package/lib/persistence/Sequence.cjs +22 -1
- package/lib/persistence/Sequence.d.ts +4 -12
- package/lib/persistence/constants.cjs +2 -8
- package/lib/persistence/constants.d.ts +0 -5
- package/lib/persistence/errors.cjs +3 -9
- package/lib/persistence/errors.d.ts +0 -3
- package/lib/persistence/index.cjs +4 -1
- package/lib/persistence/index.d.ts +3 -0
- package/lib/persistence/types.cjs +3 -0
- package/lib/persistence/types.d.ts +3 -0
- package/lib/query/Condition.cjs +12 -9
- package/lib/query/Condition.d.ts +10 -13
- package/lib/query/Paginator.cjs +8 -10
- package/lib/query/Paginator.d.ts +11 -10
- package/lib/query/Statement.cjs +129 -127
- package/lib/query/Statement.d.ts +37 -53
- package/lib/query/constants.cjs +2 -69
- package/lib/query/constants.d.ts +0 -64
- package/lib/query/index.cjs +1 -6
- package/lib/query/index.d.ts +0 -5
- package/lib/query/options.cjs +1 -1
- package/lib/query/options.d.ts +48 -175
- package/lib/query/selectors.cjs +1 -1
- package/lib/query/selectors.d.ts +3 -33
- package/lib/ram/RamAdapter.cjs +47 -172
- package/lib/ram/RamAdapter.d.ts +11 -20
- package/lib/ram/RamPaginator.cjs +5 -5
- package/lib/ram/RamPaginator.d.ts +8 -6
- package/lib/ram/RamSequence.cjs +2 -52
- package/lib/ram/RamSequence.d.ts +0 -36
- package/lib/ram/RamStatement.cjs +101 -6
- package/lib/ram/RamStatement.d.ts +10 -6
- package/lib/ram/constants.cjs +5 -0
- package/lib/ram/constants.d.ts +1 -0
- package/lib/ram/handlers.cjs +11 -0
- package/lib/ram/handlers.d.ts +6 -0
- package/lib/ram/index.cjs +9 -5
- package/lib/ram/index.d.ts +4 -4
- package/lib/ram/model/RamSequence.cjs +1 -1
- package/lib/ram/model/RamSequence.d.ts +0 -13
- package/lib/ram/types.cjs +1 -1
- package/lib/ram/types.d.ts +5 -5
- package/lib/repository/Repository.cjs +89 -31
- package/lib/repository/Repository.d.ts +21 -17
- package/lib/repository/constants.cjs +1 -16
- package/lib/repository/constants.d.ts +0 -15
- package/lib/repository/errors.cjs +2 -14
- package/lib/repository/errors.d.ts +0 -6
- package/lib/repository/injectables.cjs +1 -1
- package/lib/repository/types.cjs +1 -1
- package/lib/repository/types.d.ts +0 -3
- package/lib/utils/decorators.cjs +14 -0
- package/lib/utils/decorators.d.ts +1 -0
- package/lib/utils/errors.cjs +23 -0
- package/lib/utils/errors.d.ts +10 -0
- package/lib/{validators → utils}/index.cjs +2 -2
- package/lib/utils/index.d.ts +2 -0
- package/package.json +1 -1
- package/lib/esm/interfaces/Builder.d.ts +0 -16
- package/lib/esm/interfaces/Builder.js +0 -2
- package/lib/esm/model/IdentifiedBaseModel.d.ts +0 -7
- package/lib/esm/model/IdentifiedBaseModel.js +0 -25
- package/lib/esm/query/Clause.d.ts +0 -50
- package/lib/esm/query/Clause.js +0 -82
- package/lib/esm/query/ClauseFactory.d.ts +0 -71
- package/lib/esm/query/ClauseFactory.js +0 -6
- package/lib/esm/query/Query.d.ts +0 -43
- package/lib/esm/query/Query.js +0 -54
- package/lib/esm/query/clauses/FromClause.d.ts +0 -45
- package/lib/esm/query/clauses/FromClause.js +0 -59
- package/lib/esm/query/clauses/GroupByClause.d.ts +0 -21
- package/lib/esm/query/clauses/GroupByClause.js +0 -19
- package/lib/esm/query/clauses/InsertClause.d.ts +0 -37
- package/lib/esm/query/clauses/InsertClause.js +0 -55
- package/lib/esm/query/clauses/LimitClause.d.ts +0 -29
- package/lib/esm/query/clauses/LimitClause.js +0 -27
- package/lib/esm/query/clauses/OffsetClause.d.ts +0 -21
- package/lib/esm/query/clauses/OffsetClause.js +0 -19
- package/lib/esm/query/clauses/OrderByClause.d.ts +0 -37
- package/lib/esm/query/clauses/OrderByClause.js +0 -39
- package/lib/esm/query/clauses/SelectClause.d.ts +0 -47
- package/lib/esm/query/clauses/SelectClause.js +0 -62
- package/lib/esm/query/clauses/SelectorBasedClause.d.ts +0 -25
- package/lib/esm/query/clauses/SelectorBasedClause.js +0 -44
- package/lib/esm/query/clauses/ValuesClause.d.ts +0 -21
- package/lib/esm/query/clauses/ValuesClause.js +0 -36
- package/lib/esm/query/clauses/WhereClause.d.ts +0 -46
- package/lib/esm/query/clauses/WhereClause.js +0 -71
- package/lib/esm/query/clauses/index.d.ts +0 -10
- package/lib/esm/query/clauses/index.js +0 -11
- package/lib/esm/query/types.d.ts +0 -2
- package/lib/esm/query/types.js +0 -2
- package/lib/esm/ram/RamClauseFactory.d.ts +0 -17
- package/lib/esm/ram/RamClauseFactory.js +0 -92
- package/lib/esm/ram/clauses/FromClause.d.ts +0 -7
- package/lib/esm/ram/clauses/FromClause.js +0 -11
- package/lib/esm/ram/clauses/InsertClause.d.ts +0 -7
- package/lib/esm/ram/clauses/InsertClause.js +0 -13
- package/lib/esm/ram/clauses/OrderByClause.d.ts +0 -7
- package/lib/esm/ram/clauses/OrderByClause.js +0 -39
- package/lib/esm/ram/clauses/SelectClause.d.ts +0 -7
- package/lib/esm/ram/clauses/SelectClause.js +0 -16
- package/lib/esm/ram/clauses/ValuesClause.d.ts +0 -7
- package/lib/esm/ram/clauses/ValuesClause.js +0 -12
- package/lib/esm/ram/clauses/WhereClause.d.ts +0 -7
- package/lib/esm/ram/clauses/WhereClause.js +0 -11
- package/lib/esm/ram/clauses/index.d.ts +0 -6
- package/lib/esm/ram/clauses/index.js +0 -7
- package/lib/esm/validators/ClauseSequenceValidator.d.ts +0 -28
- package/lib/esm/validators/ClauseSequenceValidator.js +0 -95
- package/lib/esm/validators/decorators.d.ts +0 -10
- package/lib/esm/validators/decorators.js +0 -24
- package/lib/esm/validators/index.d.ts +0 -2
- package/lib/esm/validators/index.js +0 -3
- package/lib/interfaces/Builder.cjs +0 -3
- package/lib/interfaces/Builder.d.ts +0 -16
- package/lib/model/IdentifiedBaseModel.cjs +0 -29
- package/lib/model/IdentifiedBaseModel.d.ts +0 -7
- package/lib/query/Clause.cjs +0 -86
- package/lib/query/Clause.d.ts +0 -50
- package/lib/query/ClauseFactory.cjs +0 -10
- package/lib/query/ClauseFactory.d.ts +0 -71
- package/lib/query/Query.cjs +0 -58
- package/lib/query/Query.d.ts +0 -43
- package/lib/query/clauses/FromClause.cjs +0 -63
- package/lib/query/clauses/FromClause.d.ts +0 -45
- package/lib/query/clauses/GroupByClause.cjs +0 -23
- package/lib/query/clauses/GroupByClause.d.ts +0 -21
- package/lib/query/clauses/InsertClause.cjs +0 -59
- package/lib/query/clauses/InsertClause.d.ts +0 -37
- package/lib/query/clauses/LimitClause.cjs +0 -31
- package/lib/query/clauses/LimitClause.d.ts +0 -29
- package/lib/query/clauses/OffsetClause.cjs +0 -23
- package/lib/query/clauses/OffsetClause.d.ts +0 -21
- package/lib/query/clauses/OrderByClause.cjs +0 -43
- package/lib/query/clauses/OrderByClause.d.ts +0 -37
- package/lib/query/clauses/SelectClause.cjs +0 -66
- package/lib/query/clauses/SelectClause.d.ts +0 -47
- package/lib/query/clauses/SelectorBasedClause.cjs +0 -48
- package/lib/query/clauses/SelectorBasedClause.d.ts +0 -25
- package/lib/query/clauses/ValuesClause.cjs +0 -40
- package/lib/query/clauses/ValuesClause.d.ts +0 -21
- package/lib/query/clauses/WhereClause.cjs +0 -75
- package/lib/query/clauses/WhereClause.d.ts +0 -46
- package/lib/query/clauses/index.cjs +0 -27
- package/lib/query/clauses/index.d.ts +0 -10
- package/lib/query/types.cjs +0 -3
- package/lib/query/types.d.ts +0 -2
- package/lib/ram/RamClauseFactory.cjs +0 -96
- package/lib/ram/RamClauseFactory.d.ts +0 -17
- package/lib/ram/clauses/FromClause.cjs +0 -15
- package/lib/ram/clauses/FromClause.d.ts +0 -7
- package/lib/ram/clauses/InsertClause.cjs +0 -17
- package/lib/ram/clauses/InsertClause.d.ts +0 -7
- package/lib/ram/clauses/OrderByClause.cjs +0 -43
- package/lib/ram/clauses/OrderByClause.d.ts +0 -7
- package/lib/ram/clauses/SelectClause.cjs +0 -20
- package/lib/ram/clauses/SelectClause.d.ts +0 -7
- package/lib/ram/clauses/ValuesClause.cjs +0 -16
- package/lib/ram/clauses/ValuesClause.d.ts +0 -7
- package/lib/ram/clauses/WhereClause.cjs +0 -15
- package/lib/ram/clauses/WhereClause.d.ts +0 -7
- package/lib/ram/clauses/index.cjs +0 -23
- package/lib/ram/clauses/index.d.ts +0 -6
- package/lib/validators/ClauseSequenceValidator.cjs +0 -98
- package/lib/validators/ClauseSequenceValidator.d.ts +0 -28
- package/lib/validators/decorators.cjs +0 -27
- package/lib/validators/decorators.d.ts +0 -10
- package/lib/validators/index.d.ts +0 -2
package/lib/query/Statement.cjs
CHANGED
@@ -8,159 +8,161 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
8
8
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
10
10
|
};
|
11
|
+
var _a, _b, _c, _d;
|
11
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
12
13
|
exports.Statement = void 0;
|
13
14
|
const decorator_validation_1 = require("@decaf-ts/decorator-validation");
|
14
|
-
const
|
15
|
-
const errors_1 = require("./errors.cjs");
|
16
|
-
const validators_1 = require("./../validators/index.cjs");
|
17
|
-
const persistence_1 = require("./../persistence/index.cjs");
|
15
|
+
const Condition_1 = require("./Condition.cjs");
|
18
16
|
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
*
|
25
|
-
* @class Statement
|
26
|
-
* @extends Model
|
27
|
-
* @implements Executor
|
28
|
-
* @implements RawExecutor
|
29
|
-
*
|
30
|
-
* @category Query
|
31
|
-
*/
|
32
|
-
class Statement extends decorator_validation_1.Model {
|
33
|
-
constructor(db) {
|
34
|
-
super();
|
35
|
-
this.clauses = undefined;
|
36
|
-
this.target = undefined;
|
37
|
-
this.fullRecord = false;
|
38
|
-
this.type = undefined;
|
39
|
-
this.adapter = db;
|
17
|
+
const decorators_1 = require("./../utils/decorators.cjs");
|
18
|
+
const errors_1 = require("./errors.cjs");
|
19
|
+
class Statement {
|
20
|
+
constructor(adapter) {
|
21
|
+
this.adapter = adapter;
|
40
22
|
}
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
return c1.getPriority() - c2.getPriority();
|
23
|
+
select(selector) {
|
24
|
+
Object.defineProperty(this, "selectSelector", {
|
25
|
+
value: selector,
|
26
|
+
writable: false,
|
46
27
|
});
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
28
|
+
return this;
|
29
|
+
}
|
30
|
+
distinct(selector) {
|
31
|
+
this.distinctSelector = selector;
|
32
|
+
return this;
|
33
|
+
}
|
34
|
+
max(selector) {
|
35
|
+
this.maxSelector = selector;
|
36
|
+
return this;
|
37
|
+
}
|
38
|
+
min(selector) {
|
39
|
+
this.minSelector = selector;
|
40
|
+
return this;
|
41
|
+
}
|
42
|
+
count(selector) {
|
43
|
+
this.countSelector = selector;
|
44
|
+
return this;
|
45
|
+
}
|
46
|
+
from(selector) {
|
47
|
+
this.fromSelector = (typeof selector === "string" ? decorator_validation_1.Model.get(selector) : selector);
|
48
|
+
if (!this.fromSelector)
|
49
|
+
throw new errors_1.QueryError(`Could not find selector model: ${selector}`);
|
50
|
+
return this;
|
51
|
+
}
|
52
|
+
where(condition) {
|
53
|
+
this.whereCondition = condition;
|
54
|
+
return this;
|
55
|
+
}
|
56
|
+
orderBy(selector) {
|
57
|
+
this.orderBySelector = selector;
|
58
|
+
return this;
|
59
|
+
}
|
60
|
+
groupBy(selector) {
|
61
|
+
this.groupBySelector = selector;
|
62
|
+
return this;
|
63
|
+
}
|
64
|
+
limit(value) {
|
65
|
+
this.limitSelector = value;
|
66
|
+
return this;
|
67
|
+
}
|
68
|
+
offset(value) {
|
69
|
+
this.offsetSelector = value;
|
70
|
+
return this;
|
65
71
|
}
|
66
|
-
/**
|
67
|
-
* @inheritDoc
|
68
|
-
*/
|
69
72
|
async execute() {
|
70
73
|
try {
|
71
74
|
const query = this.build();
|
72
|
-
return this.raw(query);
|
75
|
+
return (await this.raw(query));
|
73
76
|
}
|
74
77
|
catch (e) {
|
75
78
|
throw new db_decorators_1.InternalError(e);
|
76
79
|
}
|
77
80
|
}
|
78
|
-
async raw(rawInput
|
79
|
-
const results = await this.adapter.raw(rawInput
|
80
|
-
if (!this.
|
81
|
+
async raw(rawInput) {
|
82
|
+
const results = await this.adapter.raw(rawInput);
|
83
|
+
if (!this.selectSelector)
|
81
84
|
return results;
|
82
|
-
|
83
|
-
throw new db_decorators_1.InternalError("No target defined in statement. should never happen");
|
84
|
-
const pkAttr = (0, db_decorators_1.findPrimaryKey)(new this.target()).id;
|
85
|
+
const pkAttr = (0, db_decorators_1.findPrimaryKey)(new this.fromSelector()).id;
|
85
86
|
const processor = function recordProcessor(r) {
|
86
87
|
const id = r[pkAttr];
|
87
|
-
return this.adapter.revert(r, this.
|
88
|
+
return this.adapter.revert(r, this.fromSelector, pkAttr, id);
|
88
89
|
}.bind(this);
|
89
90
|
if (Array.isArray(results))
|
90
91
|
return results.map(processor);
|
91
92
|
return processor(results);
|
92
93
|
}
|
93
|
-
/**
|
94
|
-
* @inheritDoc
|
95
|
-
*/
|
96
|
-
hasErrors(...exceptions) {
|
97
|
-
const errors = super.hasErrors(...exceptions);
|
98
|
-
if (errors)
|
99
|
-
return errors;
|
100
|
-
for (const i in this.clauses) {
|
101
|
-
const err = this.clauses[i].hasErrors();
|
102
|
-
if (err)
|
103
|
-
return err;
|
104
|
-
}
|
105
|
-
}
|
106
|
-
/**
|
107
|
-
* @summary Adds a clause to the Statement
|
108
|
-
* @param {Clause} clause
|
109
|
-
*/
|
110
|
-
addClause(clause) {
|
111
|
-
if (!this.clauses)
|
112
|
-
this.clauses = [];
|
113
|
-
const priority = clause.getPriority();
|
114
|
-
const currentPriority = this.clauses
|
115
|
-
.map((c, i) => ({ index: i, clause: c }))
|
116
|
-
.find((c) => c.clause.getPriority() === priority);
|
117
|
-
if (currentPriority) {
|
118
|
-
this.clauses[currentPriority.index] = clause;
|
119
|
-
}
|
120
|
-
this.clauses.push(clause);
|
121
|
-
}
|
122
|
-
getAdapter() {
|
123
|
-
return this.adapter;
|
124
|
-
}
|
125
|
-
/**
|
126
|
-
* @summary Defines the output class (when existing)
|
127
|
-
* @param {Constructor} clazz
|
128
|
-
*/
|
129
|
-
setTarget(clazz) {
|
130
|
-
if (this.target)
|
131
|
-
throw new errors_1.QueryError((0, decorator_validation_1.sf)("Output class already defined to {0}", this.target.name));
|
132
|
-
this.target = clazz;
|
133
|
-
}
|
134
|
-
getTarget() {
|
135
|
-
if (!this.target)
|
136
|
-
throw new db_decorators_1.InternalError("No target defined for statement");
|
137
|
-
return this.target;
|
138
|
-
}
|
139
|
-
setFullRecord() {
|
140
|
-
this.fullRecord = true;
|
141
|
-
}
|
142
|
-
setMode(type) {
|
143
|
-
this.type = type;
|
144
|
-
}
|
145
94
|
}
|
146
95
|
exports.Statement = Statement;
|
147
96
|
__decorate([
|
148
|
-
(0,
|
149
|
-
(
|
150
|
-
(
|
151
|
-
__metadata("design:
|
152
|
-
], Statement.prototype, "
|
97
|
+
(0, decorators_1.final)(),
|
98
|
+
__metadata("design:type", Function),
|
99
|
+
__metadata("design:paramtypes", [Array]),
|
100
|
+
__metadata("design:returntype", Object)
|
101
|
+
], Statement.prototype, "select", null);
|
102
|
+
__decorate([
|
103
|
+
(0, decorators_1.final)(),
|
104
|
+
__metadata("design:type", Function),
|
105
|
+
__metadata("design:paramtypes", [typeof (_a = typeof S !== "undefined" && S) === "function" ? _a : Object]),
|
106
|
+
__metadata("design:returntype", Object)
|
107
|
+
], Statement.prototype, "distinct", null);
|
108
|
+
__decorate([
|
109
|
+
(0, decorators_1.final)(),
|
110
|
+
__metadata("design:type", Function),
|
111
|
+
__metadata("design:paramtypes", [typeof (_b = typeof S !== "undefined" && S) === "function" ? _b : Object]),
|
112
|
+
__metadata("design:returntype", Object)
|
113
|
+
], Statement.prototype, "max", null);
|
114
|
+
__decorate([
|
115
|
+
(0, decorators_1.final)(),
|
116
|
+
__metadata("design:type", Function),
|
117
|
+
__metadata("design:paramtypes", [typeof (_c = typeof S !== "undefined" && S) === "function" ? _c : Object]),
|
118
|
+
__metadata("design:returntype", Object)
|
119
|
+
], Statement.prototype, "min", null);
|
120
|
+
__decorate([
|
121
|
+
(0, decorators_1.final)(),
|
122
|
+
__metadata("design:type", Function),
|
123
|
+
__metadata("design:paramtypes", [typeof (_d = typeof S !== "undefined" && S) === "function" ? _d : Object]),
|
124
|
+
__metadata("design:returntype", Object)
|
125
|
+
], Statement.prototype, "count", null);
|
126
|
+
__decorate([
|
127
|
+
(0, decorators_1.final)(),
|
128
|
+
__metadata("design:type", Function),
|
129
|
+
__metadata("design:paramtypes", [Object]),
|
130
|
+
__metadata("design:returntype", Object)
|
131
|
+
], Statement.prototype, "from", null);
|
132
|
+
__decorate([
|
133
|
+
(0, decorators_1.final)(),
|
134
|
+
__metadata("design:type", Function),
|
135
|
+
__metadata("design:paramtypes", [Condition_1.Condition]),
|
136
|
+
__metadata("design:returntype", Object)
|
137
|
+
], Statement.prototype, "where", null);
|
138
|
+
__decorate([
|
139
|
+
(0, decorators_1.final)(),
|
140
|
+
__metadata("design:type", Function),
|
141
|
+
__metadata("design:paramtypes", [Array]),
|
142
|
+
__metadata("design:returntype", Object)
|
143
|
+
], Statement.prototype, "orderBy", null);
|
144
|
+
__decorate([
|
145
|
+
(0, decorators_1.final)(),
|
146
|
+
__metadata("design:type", Function),
|
147
|
+
__metadata("design:paramtypes", [Object]),
|
148
|
+
__metadata("design:returntype", Object)
|
149
|
+
], Statement.prototype, "groupBy", null);
|
153
150
|
__decorate([
|
154
|
-
(0,
|
155
|
-
(
|
156
|
-
__metadata("design:
|
157
|
-
|
151
|
+
(0, decorators_1.final)(),
|
152
|
+
__metadata("design:type", Function),
|
153
|
+
__metadata("design:paramtypes", [Number]),
|
154
|
+
__metadata("design:returntype", Object)
|
155
|
+
], Statement.prototype, "limit", null);
|
158
156
|
__decorate([
|
159
|
-
(0,
|
160
|
-
__metadata("design:type",
|
161
|
-
|
157
|
+
(0, decorators_1.final)(),
|
158
|
+
__metadata("design:type", Function),
|
159
|
+
__metadata("design:paramtypes", [Number]),
|
160
|
+
__metadata("design:returntype", Object)
|
161
|
+
], Statement.prototype, "offset", null);
|
162
162
|
__decorate([
|
163
|
-
(0,
|
164
|
-
__metadata("design:type",
|
165
|
-
|
166
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RhdGVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3F1ZXJ5L1N0YXRlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFDQSx5RUFPd0M7QUFFeEMsK0NBQWlFO0FBQ2pFLHlDQUFzQztBQUV0QywwREFBK0M7QUFDL0MsNERBQXlDO0FBQ3pDLDJEQUF3RTtBQUd4RTs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxNQUFzQixTQUNwQixTQUFRLDRCQUFLO0lBa0JiLFlBQXNCLEVBQTZCO1FBQ2pELEtBQUssRUFBRSxDQUFDO1FBYkEsWUFBTyxHQUFtQixTQUFTLENBQUM7UUFLcEMsV0FBTSxHQUFzQixTQUFTLENBQUM7UUFFdEMsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUc1QixTQUFJLEdBQVksU0FBUyxDQUFDO1FBSWxDLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFUyxLQUFLO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPO1lBQ2YsTUFBTSxJQUFJLG1CQUFVLENBQUMsSUFBQSx5QkFBRSxFQUFDLGlDQUFpQyxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7WUFDM0IsT0FBTyxFQUFFLENBQUMsV0FBVyxFQUFFLEdBQUcsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzdDLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2hDLElBQUksTUFBTTtZQUNSLE1BQU0sSUFBSSxtQkFBVSxDQUNsQixJQUFBLHlCQUFFLEVBQUMsNkJBQTZCLEVBQUUsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQ3JELENBQUM7UUFFSixJQUFJLEtBQVEsQ0FBQztRQUNiLElBQUksQ0FBQztZQUNI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bUI7UUFDekIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQztDQUNGO0FBN0pELDhCQTZKQztBQXRKVztJQUhULElBQUEsK0JBQVEsR0FBRTtJQUNWLElBQUEsZ0NBQVMsRUFBQywrQkFBbUIsQ0FBQyxNQUFNLENBQUM7SUFDckMsSUFBQSwyQkFBYyxHQUFFOzswQ0FDNkI7QUFHcEM7SUFGVCxJQUFBLCtCQUFRLEdBQUU7SUFDVixJQUFBLDJCQUFJLEVBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQzs4QkFDRSxxQkFBTzswQ0FBbUI7QUFFbkM7SUFEVCxJQUFBLCtCQUFRLEdBQUU7O3lDQUNxQztBQUt0QztJQURULElBQUEsK0JBQVEsR0FBRTs7dUNBQ3lCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDb25zdHJ1Y3RvciB9IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcbmltcG9ydCB7XG4gIG1pbmxlbmd0aCxcbiAgTW9kZWwsXG4gIE1vZGVsRXJyb3JEZWZpbml0aW9uLFxuICByZXF1aXJlZCxcbiAgdHlwZSxcbiAgc2YsXG59IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcbmltcG9ydCB7IEV4ZWN1dG9yLCBSYXdFeGVjdXRvciB9IGZyb20gXCIuLi9pbnRlcmZhY2VzXCI7XG5pbXBvcnQgeyBNYW5kYXRvcnlQcmlvcml0aWVzLCBTdGF0ZW1lbnRUeXBlIH0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBRdWVyeUVycm9yIH0gZnJvbSBcIi4vZXJyb3JzXCI7XG5pbXBvcnQgeyBDbGF1c2UgfSBmcm9tIFwiLi9DbGF1c2VcIjtcbmltcG9ydCB7IGNsYXVzZVNlcXVlbmNlIH0gZnJvbSBcIi4uL3ZhbGlkYXRvcnNcIjtcbmltcG9ydCB7IEFkYXB0ZXIgfSBmcm9tIFwiLi4vcGVyc2lzdGVuY2VcIjtcbmltcG9ydCB7IGZpbmRQcmltYXJ5S2V5LCBJbnRlcm5hbEVycm9yIH0gZnJvbSBcIkBkZWNhZi10cy9kYi1kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBQYWdpbmF0b3IgfSBmcm9tIFwiLi9QYWdpbmF0b3JcIjtcblxuLyoqXG4gKiBAc3VtbWFyeSBTdGF0ZW1lbnQgQ2xhc3NcbiAqIEBkZXNjcmlwdGlvbiBob2xkcyBhbGwgdGhlIGNsYXVzZXMgdW50aWwgdGhleSBjYW4gYmUgcHJvY2Vzc2VkXG4gKlxuICogQHBhcmFtIHtNb2RlbEFyZ30gW3N0YXRlbWVudF1cbiAqXG4gKiBAY2xhc3MgU3RhdGVtZW50XG4gKiBAZXh0ZW5kcyBNb2RlbFxuICogQGltcGxlbWVudHMgRXhlY3V0b3JcbiAqIEBpbXBsZW1lbnRzIFJhd0V4ZWN1dG9yXG4gKlxuICogQGNhdGVnb3J5IFF1ZXJ5XG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTdGF0ZW1lbnQ8UT5cbiAgZXh0ZW5kcyBNb2RlbFxuICBpbXBsZW1lbnRzIEV4ZWN1dG9yLCBSYXdFeGVjdXRvcjxRPlxue1xuICBAcmVxdWlyZWQoKVxuICBAbWlubGVuZ3RoKE1hbmRhdG9yeVByaW9yaXRpZXMubGVuZ3RoKVxuICBAY2xhdXNlU2VxdWVuY2UoKVxuICBwcm90ZWN0ZWQgY2xhdXNlcz86IENsYXVzZTxhbnk+W10gPSB1bmRlZmluZWQ7XG4gIEByZXF1aXJlZCgpXG4gIEB0eXBlKFtcIm9iamVjdFwiXSlcbiAgcHJvdGVjdGVkIGFkYXB0ZXI6IEFkYXB0ZXI8YW55LCBRLCBhbnksIGFueT47XG4gIEByZXF1aXJlZCgpXG4gIHByb3RlY3RlZCB0YXJnZXQ/OiBDb25zdHJ1Y3Rvcjxhbnk+ID0gdW5kZWZpbmVkO1xuXG4gIHByb3RlY3RlZCBmdWxsUmVjb3JkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQHJlcXVpcmVkKClcbiAgcHJvdGVjdGVkIHR5cGU/OiBzdHJpbmcgPSB1bmRlZmluZWQ7XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKGRiOiBBZGFwdGVyPGFueSwgUSwgYW55LCBhbnk+KSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkYXB0ZXIgPSBkYjtcbiAgfVxuXG4gIHByb3RlY3RlZCBidWlsZCgpOiBRIHtcbiAgICBpZiAoIXRoaXMuY2xhdXNlcylcbiAgICAgIHRocm93IG5ldyBRdWVyeUVycm9yKHNmKFwiRmFpbGVkIHRvIGJ1aWxkIFN0YXRlbWVudDpcXG57MH1cIiwgXCJObyBDbGF1c2VzXCIpKTtcbiAgICB0aGlzLmNsYXVzZXMuc29ydCgoYzEsIGMyKSA9PiB7XG4gICAgICByZXR1cm4gYzEuZ2V0UHJpb3JpdHkoKSAtIGMyLmdldFByaW9yaXR5KCk7XG4gICAgfSk7XG5cbiAgICBjb25zdCBlcnJvcnMgPSB0aGlzLmhhc0Vycm9ycygpO1xuICAgIGlmIChlcnJvcnMpXG4gICAgICB0aHJvdyBuZXcgUXVlcnlFcnJvcihcbiAgICAgICAgc2YoXCJQb29ybHkgYnVpbHQgc3RhdGVtZW50OiB7MH1cIiwgZXJyb3JzLnRvU3RyaW5nKCkpXG4gICAgICApO1xuXG4gICAgbGV0IHF1ZXJ5OiBRO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBpdGVyYXRvciA9IGZ1bmN0aW9uIChcbiAgICAgICAgY2xhdXNlczogQ2xhdXNlPGFueT5bXSxcbiAgICAgICAgcHJldmlvdXM6IGFueSA9IHt9XG4gICAgICApOiBRIHtcbiAgICAgICAgY29uc3QgYyA9IGNsYXVzZXMuc2hpZnQoKTtcbiAgICAgICAgaWYgKCFjKSByZXR1cm4gcHJldmlvdXMgYXMgUTtcbiAgICAgICAgY29uc3QgcmVzdWx0cyA9IGMuYnVpbGQocHJldmlvdXMpO1xuICAgICAgICByZXR1cm4gaXRlcmF0b3IoY2xhdXNlcywgcmVzdWx0cyBhcyBhbnkpO1xuICAgICAgfTtcblxuICAgICAgcXVlcnkgPSBpdGVyYXRvcihuZXcgQXJyYXkoLi4uKHRoaXMuY2xhdXNlcyBhcyBDbGF1c2U8UT5bXSkpKSBhcyBRO1xuICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgdGhyb3cgbmV3IFF1ZXJ5RXJyb3IoZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHF1ZXJ5O1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbmhlcml0RG9jXG4gICAqL1xuICBhc3luYyBleGVjdXRlPFk+KCk6IFByb21pc2U8WT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBxdWVyeTogUSA9IHRoaXMuYnVpbGQoKTtcbiAgICAgIHJldHVybiB0aGlzLnJhdyhxdWVyeSk7XG4gICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIGFic3RyYWN0IHBhZ2luYXRlPFk+KHNpemU6IG51bWJlcik6IFByb21pc2U8UGFnaW5hdG9yPFksIFE+PjtcblxuICBhc3luYyByYXc8Uj4ocmF3SW5wdXQ6IFEsIC4uLmFyZ3M6IGFueVtdKTogUHJvbWlzZTxSPiB7XG4gICAgY29uc3QgcmVzdWx0cyA9IGF3YWl0IHRoaXMuYWRhcHRlci5yYXc8Uj4ocmF3SW5wdXQsIHRydWUsIC4uLmFyZ3MpO1xuICAgIGlmICghdGhpcy5mdWxsUmVjb3JkKSByZXR1cm4gcmVzdWx0cztcbiAgICBpZiAoIXRoaXMudGFyZ2V0KVxuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXG4gICAgICAgIFwiTm8gdGFyZ2V0IGRlZmluZWQgaW4gc3RhdGVtZW50LiBzaG91bGQgbmV2ZXIgaGFwcGVuXCJcbiAgICAgICk7XG5cbiAgICBjb25zdCBwa0F0dHIgPSBmaW5kUHJpbWFyeUtleShuZXcgdGhpcy50YXJnZXQoKSBhcyBhbnkpLmlkO1xuXG4gICAgY29uc3QgcHJvY2Vzc29yID0gZnVuY3Rpb24gcmVjb3JkUHJvY2Vzc29yKHRoaXM6IFN0YXRlbWVudDxRPiwgcjogYW55KSB7XG4gICAgICBjb25zdCBpZCA9IHJbcGtBdHRyXTtcbiAgICAgIHJldHVybiB0aGlzLmFkYXB0ZXIucmV2ZXJ0KFxuICAgICAgICByLFxuICAgICAgICB0aGlzLnRhcmdldCBhcyBDb25zdHJ1Y3Rvcjxhbnk+LFxuICAgICAgICBwa0F0dHIsXG4gICAgICAgIGlkXG4gICAgICApIGFzIGFueTtcbiAgICB9LmJpbmQodGhpcyk7XG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheShyZXN1bHRzKSkgcmV0dXJuIHJlc3VsdHMubWFwKHByb2Nlc3NvcikgYXMgUjtcbiAgICByZXR1cm4gcHJvY2Vzc29yKHJlc3VsdHMpIGFzIFI7XG4gIH1cblxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIGhhc0Vycm9ycyguLi5leGNlcHRpb25zOiBzdHJpbmdbXSk6IE1vZGVsRXJyb3JEZWZpbml0aW9uIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBlcnJvcnMgPSBzdXBlci5oYXNFcnJvcnMoLi4uZXhjZXB0aW9ucyk7XG4gICAgaWYgKGVycm9ycykgcmV0dXJuIGVycm9ycztcblxuICAgIGZvciAoY29uc3QgaSBpbiB0aGlzLmNsYXVzZXMpIHtcbiAgICAgIGNvbnN0IGVyciA9IHRoaXMuY2xhdXNlc1tpIGFzIGFueV0uaGFzRXJyb3JzKCk7XG4gICAgICBpZiAoZXJyKSByZXR1cm4gZXJyO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAc3VtbWFyeSBBZGRzIGEgY2xhdXNlIHRvIHRoZSBTdGF0ZW1lbnRcbiAgICogQHBhcmFtIHtDbGF1c2V9IGNsYXVzZVxuICAgKi9cbiAgYWRkQ2xhdXNlKGNsYXVzZTogQ2xhdXNlPFE+KSB7XG4gICAgaWYgKCF0aGlzLmNsYXVzZXMpIHRoaXMuY2xhdXNlcyA9IFtdO1xuXG4gICAgY29uc3QgcHJpb3JpdHkgPSBjbGF1c2UuZ2V0UHJpb3JpdHkoKTtcbiAgICBjb25zdCBjdXJyZW50UHJpb3JpdHkgPSB0aGlzLmNsYXVzZXNcbiAgICAgIC5tYXAoKGMsIGkpID0+ICh7IGluZGV4OiBpLCBjbGF1c2U6IGMgfSkpXG4gICAgICAuZmluZCgoYykgPT4gYy5jbGF1c2UuZ2V0UHJpb3JpdHkoKSA9PT0gcHJpb3JpdHkpO1xuICAgIGlmIChjdXJyZW50UHJpb3JpdHkpIHtcbiAgICAgIHRoaXMuY2xhdXNlc1tjdXJyZW50UHJpb3JpdHkuaW5kZXhdID0gY2xhdXNlO1xuICAgIH1cbiAgICB0aGlzLmNsYXVzZXMucHVzaChjbGF1c2UpO1xuICB9XG5cbiAgZ2V0QWRhcHRlcigpOiBBZGFwdGVyPGFueSwgUSwgYW55LCBhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5hZGFwdGVyO1xuICB9XG5cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IERlZmluZXMgdGhlIG91dHB1dCBjbGFzcyAod2hlbiBleGlzdGluZylcbiAgICogQHBhcmFtIHtDb25zdHJ1Y3Rvcn0gY2xhenpcbiAgICovXG4gIHNldFRhcmdldChjbGF6ejogQ29uc3RydWN0b3I8YW55Pikge1xuICAgIGlmICh0aGlzLnRhcmdldClcbiAgICAgIHRocm93IG5ldyBRdWVyeUVycm9yKFxuICAgICAgICBzZihcIk91dHB1dCBjbGFzcyBhbHJlYWR5IGRlZmluZWQgdG8gezB9XCIsIHRoaXMudGFyZ2V0IS5uYW1lKVxuICAgICAgKTtcbiAgICB0aGlzLnRhcmdldCA9IGNsYXp6O1xuICB9XG5cbiAgZ2V0VGFyZ2V0KCkge1xuICAgIGlmICghdGhpcy50YXJnZXQpXG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIk5vIHRhcmdldCBkZWZpbmVkIGZvciBzdGF0ZW1lbnRcIik7XG4gICAgcmV0dXJuIHRoaXMudGFyZ2V0O1xuICB9XG5cbiAgc2V0RnVsbFJlY29yZCgpIHtcbiAgICB0aGlzLmZ1bGxSZWNvcmQgPSB0cnVlO1xuICB9XG5cbiAgc2V0TW9kZSh0eXBlOiBTdGF0ZW1lbnRUeXBlKSB7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgfVxufVxuIl19
|
163
|
+
(0, decorators_1.final)(),
|
164
|
+
__metadata("design:type", Function),
|
165
|
+
__metadata("design:paramtypes", []),
|
166
|
+
__metadata("design:returntype", Promise)
|
167
|
+
], Statement.prototype, "execute", null);
|
168
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RhdGVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3F1ZXJ5L1N0YXRlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBQUEseUVBQXlFO0FBUXpFLCtDQUF3QztBQUN4QywyREFBd0U7QUFDeEUsMERBQTRDO0FBZTVDLHlDQUFzQztBQUV0QyxNQUFzQixTQUFTO0lBZTdCLFlBQWdDLE9BQWtDO1FBQWxDLFlBQU8sR0FBUCxPQUFPLENBQTJCO0lBQUcsQ0FBQztJQVd0RSxNQUFNLENBQ0osUUFBMEI7UUFFMUIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7WUFDNUMsS0FBSyxFQUFFLFFBQVE7WUFDZixRQUFRLEVBQUUsS0FBSztTQUNoQixDQUFDLENBQUM7UUFDSCxPQUFPLElBQW9FLENBQUM7SUFDOUUsQ0FBQztJQUdELFFBQVEsQ0FDTixRQUFXO1FBRVgsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFFBQVEsQ0FBQztRQUNqQyxPQUFPLElBQWlDLENBQUM7SUFDM0MsQ0FBQztJQUdELEdBQUcsQ0FBOEIsUUFBVztRQUMxQyxJQUFJLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQztRQUM1QixPQUFPLElBQTBCLENBQUM7SUFDcEMsQ0FBQztJQUdELEdBQUcsQ0FBOEIsUUFBVztRQUMxQyxJQUFJLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQztRQUM1QixPQUFPLElBQTBCLENBQUM7SUFDcEMsQ0FBQztJQUdELEtBQUssQ0FBOEIsUUFBWTtRQUM3QyxJQUFJLENBQUMsYUFBYSxHQUFHLFFBQVEsQ0FBQztRQUM5QixPQUFPLElBQThCLENBQUM7SUFDeEMsQ0FBQztJQUdNLElBQUksQ0FBQyxRQUF5QjtRQUNuQyxJQUFJLENBQUMsWUFBWSxHQUFHLENBQ2xCLE9BQU8sUUFBUSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsNEJBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxD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O0lBRE4sSUFBQSxrQkFBSyxHQUFFOzs7O3dDQU1QO0FBR007SUFETixJQUFBLGtCQUFLLEdBQUU7Ozs7d0NBSVA7QUFHTTtJQUROLElBQUEsa0JBQUssR0FBRTs7OztzQ0FJUDtBQUdNO0lBRE4sSUFBQSxrQkFBSyxHQUFFOzs7O3VDQUlQO0FBR0s7SUFETCxJQUFBLGtCQUFLLEdBQUU7Ozs7d0NBUVAiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIENvbnN0cnVjdG9yLCBNb2RlbCB9IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcbmltcG9ydCB0eXBlIHsgRXhlY3V0b3IsIFJhd0V4ZWN1dG9yIH0gZnJvbSBcIi4uL2ludGVyZmFjZXNcIjtcbmltcG9ydCB0eXBlIHtcbiAgRnJvbVNlbGVjdG9yLFxuICBHcm91cEJ5U2VsZWN0b3IsXG4gIE9yZGVyQnlTZWxlY3RvcixcbiAgU2VsZWN0U2VsZWN0b3IsXG59IGZyb20gXCIuL3NlbGVjdG9yc1wiO1xuaW1wb3J0IHsgQ29uZGl0aW9uIH0gZnJvbSBcIi4vQ29uZGl0aW9uXCI7XG5pbXBvcnQgeyBmaW5kUHJpbWFyeUtleSwgSW50ZXJuYWxFcnJvciB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgZmluYWwgfSBmcm9tIFwiLi4vdXRpbHMvZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHR5cGUge1xuICBDb3VudE9wdGlvbixcbiAgRGlzdGluY3RPcHRpb24sXG4gIExpbWl0T3B0aW9uLFxuICBNYXhPcHRpb24sXG4gIE1pbk9wdGlvbixcbiAgT2Zmc2V0T3B0aW9uLFxuICBPcmRlckFuZEdyb3VwT3B0aW9uLFxuICBTZWxlY3RPcHRpb24sXG4gIFdoZXJlT3B0aW9uLFxufSBmcm9tIFwiLi9vcHRpb25zXCI7XG5pbXBvcnQgeyBQYWdpbmF0YWJsZSB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL1BhZ2luYXRhYmxlXCI7XG5pbXBvcnQgeyBQYWdpbmF0b3IgfSBmcm9tIFwiLi9QYWdpbmF0b3JcIjtcbmltcG9ydCB7IEFkYXB0ZXIgfSBmcm9tIFwiLi4vcGVyc2lzdGVuY2VcIjtcbmltcG9ydCB7IFF1ZXJ5RXJyb3IgfSBmcm9tIFwiLi9lcnJvcnNcIjtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFN0YXRlbWVudDxRLCBNIGV4dGVuZHMgTW9kZWwsIFI+XG4gIGltcGxlbWVudHMgRXhlY3V0b3I8Uj4sIFJhd0V4ZWN1dG9yPFE+LCBQYWdpbmF0YWJsZTxNLCBSLCBRPlxue1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2VsZWN0U2VsZWN0b3I/OiBTZWxlY3RTZWxlY3RvcjxNPltdO1xuICBwcm90ZWN0ZWQgZGlzdGluY3RTZWxlY3Rvcj86IFNlbGVjdFNlbGVjdG9yPE0+O1xuICBwcm90ZWN0ZWQgbWF4U2VsZWN0b3I/OiBTZWxlY3RTZWxlY3RvcjxNPjtcbiAgcHJvdGVjdGVkIG1pblNlbGVjdG9yPzogU2VsZWN0U2VsZWN0b3I8TT47XG4gIHByb3RlY3RlZCBjb3VudFNlbGVjdG9yPzogU2VsZWN0U2VsZWN0b3I8TT47XG4gIHByb3RlY3RlZCBmcm9tU2VsZWN0b3IhOiBDb25zdHJ1Y3RvcjxNPjtcbiAgcHJvdGVjdGVkIHdoZXJlQ29uZGl0aW9uPzogQ29uZGl0aW9uPE0+O1xuICBwcm90ZWN0ZWQgb3JkZXJCeVNlbGVjdG9yPzogT3JkZXJCeVNlbGVjdG9yPE0+O1xuICBwcm90ZWN0ZWQgZ3JvdXBCeVNlbGVjdG9yPzogR3JvdXBCeVNlbGVjdG9yPE0+O1xuICBwcm90ZWN0ZWQgbGltaXRTZWxlY3Rvcj86IG51bWJlcjtcbiAgcHJvdGVjdGVkIG9mZnNldFNlbGVjdG9yPzogbnVtYmVyO1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgYWRhcHRlcjogQWRhcHRlcjxhbnksIFEsIGFueSwgYW55Pikge31cblxuICBzZWxlY3Q8XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgIFMgZXh0ZW5kcyByZWFkb25seSBTZWxlY3RTZWxlY3RvcjxNPltdLFxuICA+KCk6IFNlbGVjdE9wdGlvbjxNLCBNW10+O1xuICBzZWxlY3Q8UyBleHRlbmRzIHJlYWRvbmx5IFNlbGVjdFNlbGVjdG9yPE0+W10+KFxuICAgIHNlbGVjdG9yOiByZWFkb25seSBbLi4uU11cbiAgKTogU2VsZWN0T3B0aW9uPE0sIFBpY2s8TSwgU1tudW1iZXJdPltdPjtcblxuICBAZmluYWwoKVxuICBzZWxlY3Q8UyBleHRlbmRzIHJlYWRvbmx5IFNlbGVjdFNlbGVjdG9yPE0+W10+KFxuICAgIHNlbGVjdG9yPzogcmVhZG9ubHkgWy4uLlNdXG4gICk6IFNlbGVjdE9wdGlvbjxNLCBNW10+IHwgU2VsZWN0T3B0aW9uPE0sIFBpY2s8TSwgU1tudW1iZXJdPltdPiB7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIFwic2VsZWN0U2VsZWN0b3JcIiwge1xuICAgICAgdmFsdWU6IHNlbGVjdG9yLFxuICAgICAgd3JpdGFibGU6IGZhbHNlLFxuICAgIH0pO1xuICAgIHJldHVybiB0aGlzIGFzIFNlbGVjdE9wdGlvbjxNLCBNW10+IHwgU2VsZWN0T3B0aW9uPE0sIFBpY2s8TSwgU1tudW1iZXJdPltdPjtcbiAgfVxuXG4gIEBmaW5hbCgpXG4gIGRpc3RpbmN0PFMgZXh0ZW5kcyBTZWxlY3RTZWxlY3RvcjxNPj4oXG4gICAgc2VsZWN0b3I6IFNcbiAgKTogRGlzdGluY3RPcHRpb248TSwgTVtTXVtdPiB7XG4gICAgdGhpcy5kaXN0aW5jdFNlbGVjdG9yID0gc2VsZWN0b3I7XG4gICAgcmV0dXJuIHRoaXMgYXMgRGlzdGluY3RPcHRpb248TSwgTVtTXVtdPjtcbiAgfVxuXG4gIEBmaW5hbCgpXG4gIG1heDxTIGV4dGVuZHMgU2VsZWN0U2VsZWN0b3I8TT4+KHNlbGVjdG9yOiBTKTogTWF4T3B0aW9uPE0sIE1bU10+IHtcbiAgICB0aGlzLm1heFNlbGVjdG9yID0gc2VsZWN0b3I7XG4gICAgcmV0dXJuIHRoaXMgYXMgTWF4T3B0aW9uPE0sIE1bU10+O1xuICB9XG5cbiAgQGZpbmFsKClcbiAgbWluPFMgZXh0ZW5kcyBTZWxlY3RTZWxlY3RvcjxNPj4oc2VsZWN0b3I6IFMpOiBNaW5PcHRpb248TSwgTVtTXT4ge1xuICAgIHRoaXMubWluU2VsZWN0b3IgPSBzZWxlY3RvcjtcbiAgICByZXR1cm4gdGhpcyBhcyBNaW5PcHRpb248TSwgTVtTXT47XG4gIH1cblxuICBAZmluYWwoKVxuICBjb3VudDxTIGV4dGVuZHMgU2VsZWN0U2VsZWN0b3I8TT4+KHNlbGVjdG9yPzogUyk6IENvdW50T3B0aW9uPE0sIG51bWJlcj4ge1xuICAgIHRoaXMuY291bnRTZWxlY3RvciA9IHNlbGVjdG9yO1xuICAgIHJldHVybiB0aGlzIGFzIENvdW50T3B0aW9uPE0sIG51bWJlcj47XG4gIH1cblxuICBAZmluYWwoKVxuICBwdWJsaWMgZnJvbShzZWxlY3RvcjogRnJvbVNlbGVjdG9yPE0+KTogV2hlcmVPcHRpb248TSwgUj4ge1xuICAgIHRoaXMuZnJvbVNlbGVjdG9yID0gKFxuICAgICAgdHlwZW9mIHNlbGVjdG9yID09PSBcInN0cmluZ1wiID8gTW9kZWwuZ2V0KHNlbGVjdG9yKSA6IHNlbGVjdG9yXG4gICAgKSBhcyBDb25zdHJ1Y3RvcjxNPjtcbiAgICBpZiAoIXRoaXMuZnJvbVNlbGVjdG9yKVxuICAgICAgdGhyb3cgbmV3IFF1ZXJ5RXJyb3IoYENvdWxkIG5vdCBmaW5kIHNlbGVjdG9yIG1vZGVsOiAke3NlbGVjdG9yfWApO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgQGZpbmFsKClcbiAgcHVibGljIHdoZXJlKGNvbmRpdGlvbjogQ29uZGl0aW9uPE0+KTogT3JkZXJBbmRHcm91cE9wdGlvbjxNLCBSPiB7XG4gICAgdGhpcy53aGVyZUNvbmRpdGlvbiA9IGNvbmRpdGlvbjtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIEBmaW5hbCgpXG4gIHB1YmxpYyBvcmRlckJ5KFxuICAgIHNlbGVjdG9yOiBPcmRlckJ5U2VsZWN0b3I8TT5cbiAgKTogTGltaXRPcHRpb248TSwgUj4gJiBPZmZzZXRPcHRpb248Uj4ge1xuICAgIHRoaXMub3JkZXJCeVNlbGVjdG9yID0gc2VsZWN0b3I7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBAZmluYWwoKVxuICBwdWJsaWMgZ3JvdXBCeShzZWxlY3RvcjogR3JvdXBCeVNlbGVjdG9yPE0+KTogTGltaXRPcHRpb248TSwgUj4ge1xuICAgIHRoaXMuZ3JvdXBCeVNlbGVjdG9yID0gc2VsZWN0b3I7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBAZmluYWwoKVxuICBwdWJsaWMgbGltaXQodmFsdWU6IG51bWJlcik6IE9mZnNldE9wdGlvbjxSPiB7XG4gICAgdGhpcy5saW1pdFNlbGVjdG9yID0gdmFsdWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBAZmluYWwoKVxuICBwdWJsaWMgb2Zmc2V0KHZhbHVlOiBudW1iZXIpOiBFeGVjdXRvcjxSPiB7XG4gICAgdGhpcy5vZmZzZXRTZWxlY3RvciA9IHZhbHVlO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgQGZpbmFsKClcbiAgYXN5bmMgZXhlY3V0ZSgpOiBQcm9taXNlPFI+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcXVlcnk6IFEgPSB0aGlzLmJ1aWxkKCk7XG4gICAgICByZXR1cm4gKGF3YWl0IHRoaXMucmF3KHF1ZXJ5KSkgYXMgUjtcbiAgICB9IGNhdGNoIChlOiB1bmtub3duKSB7XG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihlIGFzIEVycm9yKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyByYXc8Uj4ocmF3SW5wdXQ6IFEpOiBQcm9taXNlPFI+IHtcbiAgICBjb25zdCByZXN1bHRzID0gYXdhaXQgdGhpcy5hZGFwdGVyLnJhdzxSPihyYXdJbnB1dCk7XG4gICAgaWYgKCF0aGlzLnNlbGVjdFNlbGVjdG9yKSByZXR1cm4gcmVzdWx0cztcbiAgICBjb25zdCBwa0F0dHIgPSBmaW5kUHJpbWFyeUtleShcbiAgICAgIG5ldyAodGhpcy5mcm9tU2VsZWN0b3IgYXMgQ29uc3RydWN0b3I8TT4pKClcbiAgICApLmlkO1xuXG4gICAgY29uc3QgcHJvY2Vzc29yID0gZnVuY3Rpb24gcmVjb3JkUHJvY2Vzc29yKFxuICAgICAgdGhpczogU3RhdGVtZW50PFEsIE0sIFI+LFxuICAgICAgcjogYW55XG4gICAgKSB7XG4gICAgICBjb25zdCBpZCA9IHJbcGtBdHRyXTtcbiAgICAgIHJldHVybiB0aGlzLmFkYXB0ZXIucmV2ZXJ0KFxuICAgICAgICByLFxuICAgICAgICB0aGlzLmZyb21TZWxlY3RvciBhcyBDb25zdHJ1Y3Rvcjxhbnk+LFxuICAgICAgICBwa0F0dHIsXG4gICAgICAgIGlkXG4gICAgICApIGFzIGFueTtcbiAgICB9LmJpbmQodGhpcyBhcyBhbnkpO1xuXG4gICAgaWYgKEFycmF5LmlzQXJyYXkocmVzdWx0cykpIHJldHVybiByZXN1bHRzLm1hcChwcm9jZXNzb3IpIGFzIFI7XG4gICAgcmV0dXJuIHByb2Nlc3NvcihyZXN1bHRzKSBhcyBSO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGJ1aWxkKCk6IFE7XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBwYXJzZUNvbmRpdGlvbihjb25kaXRpb246IENvbmRpdGlvbjxNPik6IFE7XG4gIGFic3RyYWN0IHBhZ2luYXRlKHNpemU6IG51bWJlcik6IFByb21pc2U8UGFnaW5hdG9yPE0sIFIsIFE+Pjtcbn1cbiJdfQ==
|
package/lib/query/Statement.d.ts
CHANGED
@@ -1,56 +1,40 @@
|
|
1
|
-
import type
|
2
|
-
import {
|
3
|
-
import {
|
4
|
-
import {
|
5
|
-
import {
|
6
|
-
import {
|
1
|
+
import { type Constructor, Model } from "@decaf-ts/decorator-validation";
|
2
|
+
import type { Executor, RawExecutor } from "../interfaces";
|
3
|
+
import type { FromSelector, GroupBySelector, OrderBySelector, SelectSelector } from "./selectors";
|
4
|
+
import { Condition } from "./Condition";
|
5
|
+
import type { CountOption, DistinctOption, LimitOption, MaxOption, MinOption, OffsetOption, OrderAndGroupOption, SelectOption, WhereOption } from "./options";
|
6
|
+
import { Paginatable } from "../interfaces/Paginatable";
|
7
7
|
import { Paginator } from "./Paginator";
|
8
|
-
|
9
|
-
|
10
|
-
* @description holds all the clauses until they can be processed
|
11
|
-
*
|
12
|
-
* @param {ModelArg} [statement]
|
13
|
-
*
|
14
|
-
* @class Statement
|
15
|
-
* @extends Model
|
16
|
-
* @implements Executor
|
17
|
-
* @implements RawExecutor
|
18
|
-
*
|
19
|
-
* @category Query
|
20
|
-
*/
|
21
|
-
export declare abstract class Statement<Q> extends Model implements Executor, RawExecutor<Q> {
|
22
|
-
protected clauses?: Clause<any>[];
|
8
|
+
import { Adapter } from "../persistence";
|
9
|
+
export declare abstract class Statement<Q, M extends Model, R> implements Executor<R>, RawExecutor<Q>, Paginatable<M, R, Q> {
|
23
10
|
protected adapter: Adapter<any, Q, any, any>;
|
24
|
-
protected
|
25
|
-
protected
|
26
|
-
protected
|
27
|
-
protected
|
28
|
-
protected
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
getTarget(): Constructor<any>;
|
54
|
-
setFullRecord(): void;
|
55
|
-
setMode(type: StatementType): void;
|
11
|
+
protected readonly selectSelector?: SelectSelector<M>[];
|
12
|
+
protected distinctSelector?: SelectSelector<M>;
|
13
|
+
protected maxSelector?: SelectSelector<M>;
|
14
|
+
protected minSelector?: SelectSelector<M>;
|
15
|
+
protected countSelector?: SelectSelector<M>;
|
16
|
+
protected fromSelector: Constructor<M>;
|
17
|
+
protected whereCondition?: Condition<M>;
|
18
|
+
protected orderBySelector?: OrderBySelector<M>;
|
19
|
+
protected groupBySelector?: GroupBySelector<M>;
|
20
|
+
protected limitSelector?: number;
|
21
|
+
protected offsetSelector?: number;
|
22
|
+
protected constructor(adapter: Adapter<any, Q, any, any>);
|
23
|
+
select<S extends readonly SelectSelector<M>[]>(): SelectOption<M, M[]>;
|
24
|
+
select<S extends readonly SelectSelector<M>[]>(selector: readonly [...S]): SelectOption<M, Pick<M, S[number]>[]>;
|
25
|
+
distinct<S extends SelectSelector<M>>(selector: S): DistinctOption<M, M[S][]>;
|
26
|
+
max<S extends SelectSelector<M>>(selector: S): MaxOption<M, M[S]>;
|
27
|
+
min<S extends SelectSelector<M>>(selector: S): MinOption<M, M[S]>;
|
28
|
+
count<S extends SelectSelector<M>>(selector?: S): CountOption<M, number>;
|
29
|
+
from(selector: FromSelector<M>): WhereOption<M, R>;
|
30
|
+
where(condition: Condition<M>): OrderAndGroupOption<M, R>;
|
31
|
+
orderBy(selector: OrderBySelector<M>): LimitOption<M, R> & OffsetOption<R>;
|
32
|
+
groupBy(selector: GroupBySelector<M>): LimitOption<M, R>;
|
33
|
+
limit(value: number): OffsetOption<R>;
|
34
|
+
offset(value: number): Executor<R>;
|
35
|
+
execute(): Promise<R>;
|
36
|
+
raw<R>(rawInput: Q): Promise<R>;
|
37
|
+
protected abstract build(): Q;
|
38
|
+
protected abstract parseCondition(condition: Condition<M>): Q;
|
39
|
+
abstract paginate(size: number): Promise<Paginator<M, R, Q>>;
|
56
40
|
}
|
package/lib/query/constants.cjs
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.
|
3
|
+
exports.GroupOperator = exports.Operator = void 0;
|
4
4
|
var Operator;
|
5
5
|
(function (Operator) {
|
6
6
|
Operator["EQUAL"] = "EQUAL";
|
@@ -20,71 +20,4 @@ var GroupOperator;
|
|
20
20
|
GroupOperator["AND"] = "AND";
|
21
21
|
GroupOperator["OR"] = "OR";
|
22
22
|
})(GroupOperator || (exports.GroupOperator = GroupOperator = {}));
|
23
|
-
|
24
|
-
(function (Const) {
|
25
|
-
Const["NULL"] = "NULL";
|
26
|
-
Const["FULL_RECORD"] = "*";
|
27
|
-
})(Const || (exports.Const = Const = {}));
|
28
|
-
/**
|
29
|
-
* @summary Defines execution order of Clauses in statements as defined in SQL.
|
30
|
-
*
|
31
|
-
* @description sub priorities where defined to better organize clauses within statements, eg From and Join Clauses
|
32
|
-
*
|
33
|
-
* @const Priority
|
34
|
-
*
|
35
|
-
* @category Clauses
|
36
|
-
* @subcategory Constants
|
37
|
-
*/
|
38
|
-
var Priority;
|
39
|
-
(function (Priority) {
|
40
|
-
/**
|
41
|
-
* @summary Defines the priority for the FROM Clause
|
42
|
-
* @description From Clause in SELECT Statements.
|
43
|
-
* Values Clause in INSERT Statements
|
44
|
-
*
|
45
|
-
* @prop FROM
|
46
|
-
*/
|
47
|
-
Priority[Priority["FROM"] = 1] = "FROM";
|
48
|
-
/**
|
49
|
-
* @summary Defines the priority for the JOIN Clause
|
50
|
-
*
|
51
|
-
* @property {number} JOIN
|
52
|
-
*/
|
53
|
-
Priority[Priority["JOIN"] = 1.1] = "JOIN";
|
54
|
-
/**
|
55
|
-
* Where Clause
|
56
|
-
*/
|
57
|
-
Priority[Priority["WHERE"] = 2] = "WHERE";
|
58
|
-
/**
|
59
|
-
* Group By Clause
|
60
|
-
*/
|
61
|
-
Priority[Priority["GROUP_BY"] = 3] = "GROUP_BY";
|
62
|
-
/**
|
63
|
-
* Having Clause
|
64
|
-
*/
|
65
|
-
Priority[Priority["HAVING"] = 4] = "HAVING";
|
66
|
-
/**
|
67
|
-
* Select Clause in SELECT Statements
|
68
|
-
* Insert Clause in INSERT Statements
|
69
|
-
*/
|
70
|
-
Priority[Priority["SELECT"] = 5] = "SELECT";
|
71
|
-
/**
|
72
|
-
* Order By Clause
|
73
|
-
*/
|
74
|
-
Priority[Priority["ORDER_BY"] = 6] = "ORDER_BY";
|
75
|
-
/**
|
76
|
-
* Limit Clause
|
77
|
-
*/
|
78
|
-
Priority[Priority["LIMIT"] = 7] = "LIMIT";
|
79
|
-
/**
|
80
|
-
* Offset Clause
|
81
|
-
*/
|
82
|
-
Priority[Priority["OFFSET"] = 7.1] = "OFFSET";
|
83
|
-
})(Priority || (exports.Priority = Priority = {}));
|
84
|
-
exports.MandatoryPriorities = [Priority.FROM, Priority.SELECT];
|
85
|
-
var StatementType;
|
86
|
-
(function (StatementType) {
|
87
|
-
StatementType["QUERY"] = "query";
|
88
|
-
StatementType["TRANSACTION"] = "transaction";
|
89
|
-
})(StatementType || (exports.StatementType = StatementType = {}));
|
90
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3F1ZXJ5L2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFZLFFBWVg7QUFaRCxXQUFZLFFBQVE7SUFDbEIsMkJBQWUsQ0FBQTtJQUNmLG1DQUF1QixDQUFBO0lBQ3ZCLDZCQUFpQixDQUFBO0lBQ2pCLG1DQUF1QixDQUFBO0lBQ3ZCLCtCQUFtQixDQUFBO0lBQ25CLHFDQUF5QixDQUFBO0lBQ3pCLHVCQUF1QjtJQUN2Qix1QkFBVyxDQUFBO0lBQ1gscUJBQVMsQ0FBQTtJQUNULGFBQWE7SUFDYiw2QkFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBWlcsUUFBUSx3QkFBUixRQUFRLFFBWW5CO0FBRUQsSUFBWSxhQUdYO0FBSEQsV0FBWSxhQUFhO0lBQ3ZCLDRCQUFXLENBQUE7SUFDWCwwQkFBUyxDQUFBO0FBQ1gsQ0FBQyxFQUhXLGFBQWEsNkJBQWIsYUFBYSxRQUd4QjtBQUVELElBQVksS0FHWDtBQUhELFdBQVksS0FBSztJQUNmLHNCQUFhLENBQUE7SUFDYiwwQkFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBSFcsS0FBSyxxQkFBTCxLQUFLLFFBR2hCO0FBRUQ7Ozs7Ozs7OztHQVNHO0FBQ0gsSUFBWSxRQTRDWDtBQTVDRCxXQUFZLFFBQVE7SUFDbEI7Ozs7OztPQU1HO0lBQ0gsdUNBQVEsQ0FBQTtJQUNSOzs7O09BSUc7SUFDSCx5Q0FBVSxDQUFBO0lBQ1Y7O09BRUc7SUFDSCx5Q0FBUyxDQUFBO0lBQ1Q7O09BRUc7SUFDSCwrQ0FBWSxDQUFBO0lBQ1o7O09BRUc7SUFDSCwyQ0FBVSxDQUFBO0lBQ1Y7OztPQUdHO0lBQ0gsMkNBQVUsQ0FBQTtJQUNWOztPQUVHO0lBQ0gsK0NBQVksQ0FBQTtJQUNaOztPQUVHO0lBQ0gseUNBQVMsQ0FBQTtJQUNUOztPQUVHO0lBQ0gsNkNBQVksQ0FBQTtBQUNkLENBQUMsRUE1Q1csUUFBUSx3QkFBUixRQUFRLFFBNENuQjtBQUVZLFFBQUEsbUJBQW1CLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUVwRSxJQUFZLGFBR1g7QUFIRCxXQUFZLGFBQWE7SUFDdkIsZ0NBQWUsQ0FBQTtJQUNmLDRDQUEyQixDQUFBO0FBQzdCLENBQUMsRUFIVyxhQUFhLDZCQUFiLGFBQWEsUUFHeEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBPcGVyYXRvciB7XG4gIEVRVUFMID0gXCJFUVVBTFwiLFxuICBESUZGRVJFTlQgPSBcIkRJRkZFUkVOVFwiLFxuICBCSUdHRVIgPSBcIkJJR0dFUlwiLFxuICBCSUdHRVJfRVEgPSBcIkJJR0dFUl9FUVwiLFxuICBTTUFMTEVSID0gXCJTTUFMTEVSXCIsXG4gIFNNQUxMRVJfRVEgPSBcIlNNQUxMRVJfRVFcIixcbiAgLy8gQkVUV0VFTiA9IFwiQkVUV0VFTlwiLFxuICBOT1QgPSBcIk5PVFwiLFxuICBJTiA9IFwiSU5cIixcbiAgLy8gSVMgPSBcIklTXCIsXG4gIFJFR0VYUCA9IFwiUkVHRVhQXCIsXG59XG5cbmV4cG9ydCBlbnVtIEdyb3VwT3BlcmF0b3Ige1xuICBBTkQgPSBcIkFORFwiLFxuICBPUiA9IFwiT1JcIixcbn1cblxuZXhwb3J0IGVudW0gQ29uc3Qge1xuICBOVUxMID0gXCJOVUxMXCIsXG4gIEZVTExfUkVDT1JEID0gXCIqXCIsXG59XG5cbi8qKlxuICogQHN1bW1hcnkgRGVmaW5lcyBleGVjdXRpb24gb3JkZXIgb2YgQ2xhdXNlcyBpbiBzdGF0ZW1lbnRzIGFzIGRlZmluZWQgaW4gU1FMLlxuICpcbiAqIEBkZXNjcmlwdGlvbiBzdWIgcHJpb3JpdGllcyB3aGVyZSBkZWZpbmVkIHRvIGJldHRlciBvcmdhbml6ZSBjbGF1c2VzIHdpdGhpbiBzdGF0ZW1lbnRzLCBlZyBGcm9tIGFuZCBKb2luIENsYXVzZXNcbiAqXG4gKiBAY29uc3QgUHJpb3JpdHlcbiAqXG4gKiBAY2F0ZWdvcnkgQ2xhdXNlc1xuICogQHN1YmNhdGVnb3J5IENvbnN0YW50c1xuICovXG5leHBvcnQgZW51bSBQcmlvcml0eSB7XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBEZWZpbmVzIHRoZSBwcmlvcml0eSBmb3IgdGhlIEZST00gQ2xhdXNlXG4gICAqIEBkZXNjcmlwdGlvbiBGcm9tIENsYXVzZSBpbiBTRUxFQ1QgU3RhdGVtZW50cy5cbiAgICogVmFsdWVzIENsYXVzZSBpbiBJTlNFUlQgU3RhdGVtZW50c1xuICAgKlxuICAgKiBAcHJvcCBGUk9NXG4gICAqL1xuICBGUk9NID0gMSxcbiAgLyoqXG4gICAqIEBzdW1tYXJ5IERlZmluZXMgdGhlIHByaW9yaXR5IGZvciB0aGUgSk9JTiBDbGF1c2VcbiAgICpcbiAgICogQHByb3BlcnR5IHtudW1iZXJ9IEpPSU5cbiAgICovXG4gIEpPSU4gPSAxLjEsXG4gIC8qKlxuICAgKiBXaGVyZSBDbGF1c2VcbiAgICovXG4gIFdIRVJFID0gMixcbiAgLyoqXG4gICAqIEdyb3VwIEJ5IENsYXVzZVxuICAgKi9cbiAgR1JPVVBfQlkgPSAzLFxuICAvKipcbiAgICogSGF2aW5nIENsYXVzZVxuICAgKi9cbiAgSEFWSU5HID0gNCxcbiAgLyoqXG4gICAqIFNlbGVjdCBDbGF1c2UgaW4gU0VMRUNUIFN0YXRlbWVudHNcbiAgICogSW5zZXJ0IENsYXVzZSBpbiBJTlNFUlQgU3RhdGVtZW50c1xuICAgKi9cbiAgU0VMRUNUID0gNSxcbiAgLyoqXG4gICAqIE9yZGVyIEJ5IENsYXVzZVxuICAgKi9cbiAgT1JERVJfQlkgPSA2LFxuICAvKipcbiAgICogTGltaXQgQ2xhdXNlXG4gICAqL1xuICBMSU1JVCA9IDcsXG4gIC8qKlxuICAgKiBPZmZzZXQgQ2xhdXNlXG4gICAqL1xuICBPRkZTRVQgPSA3LjEsXG59XG5cbmV4cG9ydCBjb25zdCBNYW5kYXRvcnlQcmlvcml0aWVzID0gW1ByaW9yaXR5LkZST00sIFByaW9yaXR5LlNFTEVDVF07XG5cbmV4cG9ydCBlbnVtIFN0YXRlbWVudFR5cGUge1xuICBRVUVSWSA9IFwicXVlcnlcIixcbiAgVFJBTlNBQ1RJT04gPSBcInRyYW5zYWN0aW9uXCIsXG59XG4iXX0=
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3F1ZXJ5L2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFZLFFBWVg7QUFaRCxXQUFZLFFBQVE7SUFDbEIsMkJBQWUsQ0FBQTtJQUNmLG1DQUF1QixDQUFBO0lBQ3ZCLDZCQUFpQixDQUFBO0lBQ2pCLG1DQUF1QixDQUFBO0lBQ3ZCLCtCQUFtQixDQUFBO0lBQ25CLHFDQUF5QixDQUFBO0lBQ3pCLHVCQUF1QjtJQUN2Qix1QkFBVyxDQUFBO0lBQ1gscUJBQVMsQ0FBQTtJQUNULGFBQWE7SUFDYiw2QkFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBWlcsUUFBUSx3QkFBUixRQUFRLFFBWW5CO0FBRUQsSUFBWSxhQUdYO0FBSEQsV0FBWSxhQUFhO0lBQ3ZCLDRCQUFXLENBQUE7SUFDWCwwQkFBUyxDQUFBO0FBQ1gsQ0FBQyxFQUhXLGFBQWEsNkJBQWIsYUFBYSxRQUd4QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIE9wZXJhdG9yIHtcbiAgRVFVQUwgPSBcIkVRVUFMXCIsXG4gIERJRkZFUkVOVCA9IFwiRElGRkVSRU5UXCIsXG4gIEJJR0dFUiA9IFwiQklHR0VSXCIsXG4gIEJJR0dFUl9FUSA9IFwiQklHR0VSX0VRXCIsXG4gIFNNQUxMRVIgPSBcIlNNQUxMRVJcIixcbiAgU01BTExFUl9FUSA9IFwiU01BTExFUl9FUVwiLFxuICAvLyBCRVRXRUVOID0gXCJCRVRXRUVOXCIsXG4gIE5PVCA9IFwiTk9UXCIsXG4gIElOID0gXCJJTlwiLFxuICAvLyBJUyA9IFwiSVNcIixcbiAgUkVHRVhQID0gXCJSRUdFWFBcIixcbn1cblxuZXhwb3J0IGVudW0gR3JvdXBPcGVyYXRvciB7XG4gIEFORCA9IFwiQU5EXCIsXG4gIE9SID0gXCJPUlwiLFxufVxuIl19
|
package/lib/query/constants.d.ts
CHANGED
@@ -13,67 +13,3 @@ export declare enum GroupOperator {
|
|
13
13
|
AND = "AND",
|
14
14
|
OR = "OR"
|
15
15
|
}
|
16
|
-
export declare enum Const {
|
17
|
-
NULL = "NULL",
|
18
|
-
FULL_RECORD = "*"
|
19
|
-
}
|
20
|
-
/**
|
21
|
-
* @summary Defines execution order of Clauses in statements as defined in SQL.
|
22
|
-
*
|
23
|
-
* @description sub priorities where defined to better organize clauses within statements, eg From and Join Clauses
|
24
|
-
*
|
25
|
-
* @const Priority
|
26
|
-
*
|
27
|
-
* @category Clauses
|
28
|
-
* @subcategory Constants
|
29
|
-
*/
|
30
|
-
export declare enum Priority {
|
31
|
-
/**
|
32
|
-
* @summary Defines the priority for the FROM Clause
|
33
|
-
* @description From Clause in SELECT Statements.
|
34
|
-
* Values Clause in INSERT Statements
|
35
|
-
*
|
36
|
-
* @prop FROM
|
37
|
-
*/
|
38
|
-
FROM = 1,
|
39
|
-
/**
|
40
|
-
* @summary Defines the priority for the JOIN Clause
|
41
|
-
*
|
42
|
-
* @property {number} JOIN
|
43
|
-
*/
|
44
|
-
JOIN = 1.1,
|
45
|
-
/**
|
46
|
-
* Where Clause
|
47
|
-
*/
|
48
|
-
WHERE = 2,
|
49
|
-
/**
|
50
|
-
* Group By Clause
|
51
|
-
*/
|
52
|
-
GROUP_BY = 3,
|
53
|
-
/**
|
54
|
-
* Having Clause
|
55
|
-
*/
|
56
|
-
HAVING = 4,
|
57
|
-
/**
|
58
|
-
* Select Clause in SELECT Statements
|
59
|
-
* Insert Clause in INSERT Statements
|
60
|
-
*/
|
61
|
-
SELECT = 5,
|
62
|
-
/**
|
63
|
-
* Order By Clause
|
64
|
-
*/
|
65
|
-
ORDER_BY = 6,
|
66
|
-
/**
|
67
|
-
* Limit Clause
|
68
|
-
*/
|
69
|
-
LIMIT = 7,
|
70
|
-
/**
|
71
|
-
* Offset Clause
|
72
|
-
*/
|
73
|
-
OFFSET = 7.1
|
74
|
-
}
|
75
|
-
export declare const MandatoryPriorities: Priority[];
|
76
|
-
export declare enum StatementType {
|
77
|
-
QUERY = "query",
|
78
|
-
TRANSACTION = "transaction"
|
79
|
-
}
|
package/lib/query/index.cjs
CHANGED
@@ -14,16 +14,11 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
15
|
};
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
-
__exportStar(require("./clauses/index.cjs"), exports);
|
18
|
-
__exportStar(require("./Clause.cjs"), exports);
|
19
|
-
__exportStar(require("./ClauseFactory.cjs"), exports);
|
20
17
|
__exportStar(require("./Condition.cjs"), exports);
|
21
18
|
__exportStar(require("./constants.cjs"), exports);
|
22
19
|
__exportStar(require("./errors.cjs"), exports);
|
23
20
|
__exportStar(require("./options.cjs"), exports);
|
24
21
|
__exportStar(require("./Paginator.cjs"), exports);
|
25
|
-
__exportStar(require("./Query.cjs"), exports);
|
26
22
|
__exportStar(require("./selectors.cjs"), exports);
|
27
23
|
__exportStar(require("./Statement.cjs"), exports);
|
28
|
-
|
29
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcXVlcnkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHNEQUEwQjtBQUMxQiwrQ0FBeUI7QUFDekIsc0RBQWdDO0FBQ2hDLGtEQUE0QjtBQUM1QixrREFBNEI7QUFDNUIsK0NBQXlCO0FBQ3pCLGdEQUEwQjtBQUMxQixrREFBNEI7QUFDNUIsOENBQXdCO0FBQ3hCLGtEQUE0QjtBQUM1QixrREFBNEI7QUFDNUIsOENBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vY2xhdXNlc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vQ2xhdXNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9DbGF1c2VGYWN0b3J5XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9Db25kaXRpb25cIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbnN0YW50c1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXJyb3JzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9vcHRpb25zXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9QYWdpbmF0b3JcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1F1ZXJ5XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zZWxlY3RvcnNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1N0YXRlbWVudFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vdHlwZXNcIjtcbiJdfQ==
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcXVlcnkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGtEQUE0QjtBQUM1QixrREFBNEI7QUFDNUIsK0NBQXlCO0FBQ3pCLGdEQUEwQjtBQUMxQixrREFBNEI7QUFDNUIsa0RBQTRCO0FBQzVCLGtEQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL0NvbmRpdGlvblwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9lcnJvcnNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL29wdGlvbnNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1BhZ2luYXRvclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc2VsZWN0b3JzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9TdGF0ZW1lbnRcIjtcbiJdfQ==
|
package/lib/query/index.d.ts
CHANGED
@@ -1,12 +1,7 @@
|
|
1
|
-
export * from "./clauses";
|
2
|
-
export * from "./Clause";
|
3
|
-
export * from "./ClauseFactory";
|
4
1
|
export * from "./Condition";
|
5
2
|
export * from "./constants";
|
6
3
|
export * from "./errors";
|
7
4
|
export * from "./options";
|
8
5
|
export * from "./Paginator";
|
9
|
-
export * from "./Query";
|
10
6
|
export * from "./selectors";
|
11
7
|
export * from "./Statement";
|
12
|
-
export * from "./types";
|