@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/ram/RamSequence.d.ts
CHANGED
@@ -3,48 +3,12 @@ import { Sequence } from "../persistence";
|
|
3
3
|
import { SequenceOptions } from "../interfaces";
|
4
4
|
import { RamAdapter } from "./RamAdapter";
|
5
5
|
import { Repo } from "../repository";
|
6
|
-
export declare function parseSequenceValue(type: "Number" | "BigInt" | undefined, value: string | number | bigint): string | number | bigint;
|
7
|
-
/**
|
8
|
-
* @summary Abstract implementation of a Sequence
|
9
|
-
* @description provides the basic functionality for {@link Sequence}s
|
10
|
-
*
|
11
|
-
* @param {SequenceOptions} options
|
12
|
-
*
|
13
|
-
* @class CouchDBSequence
|
14
|
-
* @implements Sequence
|
15
|
-
*
|
16
|
-
* @category Sequences
|
17
|
-
*/
|
18
6
|
export declare class RamSequence extends Sequence {
|
19
7
|
protected repo: Repo<Seq>;
|
20
8
|
constructor(options: SequenceOptions, adapter: RamAdapter);
|
21
|
-
/**
|
22
|
-
* @summary Retrieves the current value for the sequence
|
23
|
-
* @protected
|
24
|
-
*/
|
25
9
|
current(): Promise<string | number | bigint>;
|
26
|
-
/**
|
27
|
-
* @summary Parses the {@link Sequence} value
|
28
|
-
*
|
29
|
-
* @protected
|
30
|
-
* @param value
|
31
|
-
*/
|
32
10
|
private parse;
|
33
|
-
/**
|
34
|
-
* @summary increments the sequence
|
35
|
-
* @description Sequence specific implementation
|
36
|
-
*
|
37
|
-
* @param {string | number | bigint} current
|
38
|
-
* @param count
|
39
|
-
* @protected
|
40
|
-
*/
|
41
11
|
private increment;
|
42
|
-
/**
|
43
|
-
* @summary Generates the next value in th sequence
|
44
|
-
* @description calls {@link Sequence#parse} on the current value
|
45
|
-
* followed by {@link Sequence#increment}
|
46
|
-
*
|
47
|
-
*/
|
48
12
|
next(): Promise<number | string | bigint>;
|
49
13
|
range(count: number): Promise<(number | string | bigint)[]>;
|
50
14
|
}
|
package/lib/ram/RamStatement.cjs
CHANGED
@@ -4,19 +4,114 @@ exports.RamStatement = void 0;
|
|
4
4
|
const query_1 = require("./../query/index.cjs");
|
5
5
|
const RamPaginator_1 = require("./RamPaginator.cjs");
|
6
6
|
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
7
|
-
|
8
|
-
|
9
|
-
|
7
|
+
const Statement_1 = require("./../query/Statement.cjs");
|
8
|
+
const reflection_1 = require("@decaf-ts/reflection");
|
9
|
+
class RamStatement extends Statement_1.Statement {
|
10
|
+
constructor(adapter) {
|
11
|
+
super(adapter);
|
10
12
|
}
|
11
|
-
|
13
|
+
getSort() {
|
14
|
+
return (el1, el2) => {
|
15
|
+
if (!this.orderBySelector)
|
16
|
+
throw new db_decorators_1.InternalError("orderBySelector not set. Should be impossible");
|
17
|
+
const selector = this.orderBySelector;
|
18
|
+
const [key, direction] = selector;
|
19
|
+
const type = reflection_1.Reflection.getTypeFromDecorator(el1, key);
|
20
|
+
if (!type)
|
21
|
+
throw new query_1.QueryError(`type not compatible with sorting: ${type}`);
|
22
|
+
switch (type) {
|
23
|
+
case "string":
|
24
|
+
case "String":
|
25
|
+
return ((direction === "asc" ? 1 : -1) *
|
26
|
+
el1[key].localeCompare(el2[key]));
|
27
|
+
case "number":
|
28
|
+
case "Number":
|
29
|
+
return ((direction === "asc" ? 1 : -1) *
|
30
|
+
(el1[key] -
|
31
|
+
el2[key]));
|
32
|
+
case "object":
|
33
|
+
case "Object":
|
34
|
+
if (el1[key] instanceof Date &&
|
35
|
+
el2[key] instanceof Date)
|
36
|
+
return ((direction === "asc" ? 1 : -1) *
|
37
|
+
(el1[key].valueOf() -
|
38
|
+
el2[key].valueOf()));
|
39
|
+
throw new query_1.QueryError(`Sorting not supported for not date classes`);
|
40
|
+
default:
|
41
|
+
throw new query_1.QueryError(`sorting not supported for type ${type}`);
|
42
|
+
}
|
43
|
+
};
|
44
|
+
}
|
45
|
+
build() {
|
46
|
+
const result = {
|
47
|
+
select: this.selectSelector,
|
48
|
+
from: this.fromSelector,
|
49
|
+
where: this.whereCondition
|
50
|
+
? this.parseCondition(this.whereCondition).where
|
51
|
+
: // eslint-disable-next-line @typescript-eslint/no-unused-vars
|
52
|
+
(el) => {
|
53
|
+
return true;
|
54
|
+
},
|
55
|
+
limit: this.limitSelector,
|
56
|
+
skip: this.offsetSelector,
|
57
|
+
};
|
58
|
+
if (this.orderBySelector)
|
59
|
+
result.sort = this.getSort();
|
60
|
+
return result;
|
61
|
+
}
|
62
|
+
async paginate(size) {
|
12
63
|
try {
|
13
64
|
const query = this.build();
|
14
|
-
return new RamPaginator_1.RamPaginator(this, size,
|
65
|
+
return new RamPaginator_1.RamPaginator(this.adapter, query, size, this.fromSelector);
|
15
66
|
}
|
16
67
|
catch (e) {
|
17
68
|
throw new db_decorators_1.InternalError(e);
|
18
69
|
}
|
19
70
|
}
|
71
|
+
parseCondition(condition) {
|
72
|
+
return {
|
73
|
+
where: (m) => {
|
74
|
+
const { attr1, operator, comparison } = condition;
|
75
|
+
if ([query_1.GroupOperator.AND, query_1.GroupOperator.OR, query_1.Operator.NOT].indexOf(operator) === -1) {
|
76
|
+
switch (operator) {
|
77
|
+
case query_1.Operator.BIGGER:
|
78
|
+
return m[attr1] > comparison;
|
79
|
+
case query_1.Operator.BIGGER_EQ:
|
80
|
+
return m[attr1] >= comparison;
|
81
|
+
case query_1.Operator.DIFFERENT:
|
82
|
+
return m[attr1] !== comparison;
|
83
|
+
case query_1.Operator.EQUAL:
|
84
|
+
return m[attr1] === comparison;
|
85
|
+
case query_1.Operator.REGEXP:
|
86
|
+
if (typeof m[attr1] !== "string")
|
87
|
+
throw new query_1.QueryError(`Invalid regexp comparison on a non string attribute: ${m[attr1]}`);
|
88
|
+
return !!m[attr1].match(new RegExp(comparison, "g"));
|
89
|
+
case query_1.Operator.SMALLER:
|
90
|
+
return m[attr1] < comparison;
|
91
|
+
case query_1.Operator.SMALLER_EQ:
|
92
|
+
return m[attr1] <= comparison;
|
93
|
+
default:
|
94
|
+
throw new db_decorators_1.InternalError(`Invalid operator for standard comparisons: ${operator}`);
|
95
|
+
}
|
96
|
+
}
|
97
|
+
else if (operator === query_1.Operator.NOT) {
|
98
|
+
throw new db_decorators_1.InternalError("Not implemented");
|
99
|
+
}
|
100
|
+
else {
|
101
|
+
const op1 = this.parseCondition(attr1);
|
102
|
+
const op2 = this.parseCondition(comparison);
|
103
|
+
switch (operator) {
|
104
|
+
case query_1.GroupOperator.AND:
|
105
|
+
return op1.where(m) && op2.where(m);
|
106
|
+
case query_1.GroupOperator.OR:
|
107
|
+
return op1.where(m) || op2.where(m);
|
108
|
+
default:
|
109
|
+
throw new db_decorators_1.InternalError(`Invalid operator for And/Or comparisons: ${operator}`);
|
110
|
+
}
|
111
|
+
}
|
112
|
+
},
|
113
|
+
};
|
114
|
+
}
|
20
115
|
}
|
21
116
|
exports.RamStatement = RamStatement;
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmFtU3RhdGVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3JhbS9SYW1TdGF0ZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsZ0RBQWdEO0FBSWhELHFEQUE4QztBQUM5QywyREFBd0Q7QUFFeEQsTUFBYSxZQUE4QixTQUFRLGlCQUFzQjtJQUN2RSxZQUFZLEVBQXVDO1FBQ2pELEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNaLENBQUM7SUFFRCxRQUFRLENBQUksSUFBWTtRQUN0QixJQUFJLENBQUM7WUFDSCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDM0IsT0FBTyxJQUFJLDJCQUFZLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLENBQVEsQ0FBQztRQUNwRCxDQUFDO1FBQUMsT0FBTyxDQUFNLEVBQUUsQ0FBQztZQUNoQixNQUFNLElBQUksNkJBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM3QixDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBYkQsb0NBYUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQYWdpbmF0b3IsIFN0YXRlbWVudCB9IGZyb20gXCIuLi9xdWVyeVwiO1xuaW1wb3J0IHsgUmFtUXVlcnkgfSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHsgTW9kZWwgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBBZGFwdGVyIH0gZnJvbSBcIi4uL3BlcnNpc3RlbmNlXCI7XG5pbXBvcnQgeyBSYW1QYWdpbmF0b3IgfSBmcm9tIFwiLi9SYW1QYWdpbmF0b3JcIjtcbmltcG9ydCB7IEludGVybmFsRXJyb3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnNcIjtcblxuZXhwb3J0IGNsYXNzIFJhbVN0YXRlbWVudDxNIGV4dGVuZHMgTW9kZWw+IGV4dGVuZHMgU3RhdGVtZW50PFJhbVF1ZXJ5PE0+PiB7XG4gIGNvbnN0cnVjdG9yKGRiOiBBZGFwdGVyPGFueSwgUmFtUXVlcnk8TT4sIGFueSwgYW55Pikge1xuICAgIHN1cGVyKGRiKTtcbiAgfVxuXG4gIHBhZ2luYXRlPFY+KHNpemU6IG51bWJlcik6IFByb21pc2U8UGFnaW5hdG9yPFYsIFJhbVF1ZXJ5PE0+Pj4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBxdWVyeSA9IHRoaXMuYnVpbGQoKTtcbiAgICAgIHJldHVybiBuZXcgUmFtUGFnaW5hdG9yKHRoaXMsIHNpemUsIHF1ZXJ5KSBhcyBhbnk7XG4gICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihlKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmFtU3RhdGVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3JhbS9SYW1TdGF0ZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsZ0RBTWtCO0FBR2xCLHFEQUE4QztBQUM5QywyREFBd0Q7QUFDeEQsd0RBQStDO0FBQy9DLHFEQUFrRDtBQUdsRCxNQUFhLFlBQWlDLFNBQVEscUJBSXJEO0lBQ0MsWUFBWSxPQUFtQjtRQUM3QixLQUFLLENBQUMsT0FBYyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVPLE9BQU87UUFDYixPQUFPLENBQUMsR0FBVSxFQUFFLEdBQVUsRUFBRSxFQUFFO1lBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZTtnQkFDdkIsTUFBTSxJQUFJLDZCQUFhLENBQ3JCLCtDQUErQyxDQUNoRCxDQUFDO1lBQ0osTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQztZQUN0QyxNQUFNLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxHQUFHLFFBQVEsQ0FBQztZQUNsQyxNQUFNLElBQUksR0FBRyx1QkFBVSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsRUFBRSxHQUFhLENBQUMsQ0FBQztZQUNqRSxJQUFJLENBQUMsSUFBSTtnQkFDUCxNQUFNLElBQUksa0JBQVUsQ0FBQyxxQ0FBcUMsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUVwRSxRQUFRLElBQUksRUFBRSxDQUFDO2dCQUNiLEtBQUssUUFBUSxDQUFDO2dCQUNkLEtBQUssUUFBUTtvQkFDWCxPQUFPLENBQ0wsQ0FBQyxTQUFTLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO3dCQUM3QixHQUFHLENBQUMsR0FBa0IsQ0FBdUIsQ0FBQyxhQUFhLENBQzFELEdBQUcsQ0FBQyxHQUFrQixDQUFzQixDQUM3QyxDQUNGLENBQUM7Z0JBQ0osS0FBSyxRQUFRLENBQUM7Z0JBQ2QsS0FB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LENBQUM7d0JBQ2pCLEtBQUsscUJBQWEsQ0FBQyxHQUFHOzRCQUNwQixPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQzt3QkFDdEMsS0FBSyxxQkFBYSxDQUFDLEVBQUU7NEJBQ25CLE9BQU8sR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO3dCQUN0Qzs0QkFDRSxNQUFNLElBQUksNkJBQWEsQ0FDckIsNENBQTRDLFFBQVEsRUFBRSxDQUN2RCxDQUFDO29CQUNOLENBQUM7Z0JBQ0gsQ0FBQztZQUNILENBQUM7U0FDa0IsQ0FBQztJQUN4QixDQUFDO0NBQ0Y7QUFySkQsb0NBcUpDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29uZGl0aW9uLFxuICBHcm91cE9wZXJhdG9yLFxuICBPcGVyYXRvcixcbiAgUGFnaW5hdG9yLFxuICBRdWVyeUVycm9yLFxufSBmcm9tIFwiLi4vcXVlcnlcIjtcbmltcG9ydCB7IFJhd1JhbVF1ZXJ5IH0gZnJvbSBcIi4vdHlwZXNcIjtcbmltcG9ydCB7IE1vZGVsIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgUmFtUGFnaW5hdG9yIH0gZnJvbSBcIi4vUmFtUGFnaW5hdG9yXCI7XG5pbXBvcnQgeyBJbnRlcm5hbEVycm9yIH0gZnJvbSBcIkBkZWNhZi10cy9kYi1kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBTdGF0ZW1lbnQgfSBmcm9tIFwiLi4vcXVlcnkvU3RhdGVtZW50XCI7XG5pbXBvcnQgeyBSZWZsZWN0aW9uIH0gZnJvbSBcIkBkZWNhZi10cy9yZWZsZWN0aW9uXCI7XG5pbXBvcnQgeyBSYW1BZGFwdGVyIH0gZnJvbSBcIi4vUmFtQWRhcHRlclwiO1xuXG5leHBvcnQgY2xhc3MgUmFtU3RhdGVtZW50PE0gZXh0ZW5kcyBNb2RlbCwgUj4gZXh0ZW5kcyBTdGF0ZW1lbnQ8XG4gIFJhd1JhbVF1ZXJ5PE0+LFxuICBNLFxuICBSXG4+IHtcbiAgY29uc3RydWN0b3IoYWRhcHRlcjogUmFtQWRhcHRlcikge1xuICAgIHN1cGVyKGFkYXB0ZXIgYXMgYW55KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0U29ydCgpIHtcbiAgICByZXR1cm4gKGVsMTogTW9kZWwsIGVsMjogTW9kZWwpID0+IHtcbiAgICAgIGlmICghdGhpcy5vcmRlckJ5U2VsZWN0b3IpXG4gICAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgICAgIFwib3JkZXJCeVNlbGVjdG9yIG5vdCBzZXQuIFNob3VsZCBiZSBpbXBvc3NpYmxlXCJcbiAgICAgICAgKTtcbiAgICAgIGNvbnN0IHNlbGVjdG9yID0gdGhpcy5vcmRlckJ5U2VsZWN0b3I7XG4gICAgICBjb25zdCBba2V5LCBkaXJlY3Rpb25dID0gc2VsZWN0b3I7XG4gICAgICBjb25zdCB0eXBlID0gUmVmbGVjdGlvbi5nZXRUeXBlRnJvbURlY29yYXRvcihlbDEsIGtleSBhcyBzdHJpbmcpO1xuICAgICAgaWYgKCF0eXBlKVxuICAgICAgICB0aHJvdyBuZXcgUXVlcnlFcnJvcihgdHlwZSBub3QgY29tcGF0aWJsZSB3aXRoIHNvcnRpbmc6ICR7dHlwZX1gKTtcblxuICAgICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICAgIGNhc2UgXCJzdHJpbmdcIjpcbiAgICAgICAgY2FzZSBcIlN0cmluZ1wiOlxuICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAoZGlyZWN0aW9uID09PSBcImFzY1wiID8gMSA6IC0xKSAqXG4gICAgICAgICAgICAoZWwxW2tleSBhcyBrZXlvZiBNb2RlbF0gYXMgdW5rbm93biBhcyBzdHJpbmcpLmxvY2FsZUNvbXBhcmUoXG4gICAgICAgICAgICAgIGVsMltrZXkgYXMga2V5b2YgTW9kZWxdIGFzIHVua25vd24gYXMgc3RyaW5nXG4gICAgICAgICAgICApXG4gICAgICAgICAgKTtcbiAgICAgICAgY2FzZSBcIm51bWJlclwiOlxuICAgICAgICBjYXNlIFwiTnVtYmVyXCI6XG4gICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIChkaXJlY3Rpb24gPT09IFwiYXNjXCIgPyAxIDogLTEpICpcbiAgICAgICAgICAgICgoZWwxW2tleSBhcyBrZXlvZiBNb2RlbF0gYXMgdW5rbm93biBhcyBudW1iZXIpIC1cbiAgICAgICAgICAgICAgKGVsMltrZXkgYXMga2V5b2YgTW9kZWxdIGFzIHVua25vd24gYXMgbnVtYmVyKSlcbiAgICAgICAgICApO1xuICAgICAgICBjYXNlIFwib2JqZWN0XCI6XG4gICAgICAgIGNhc2UgXCJPYmplY3RcIjpcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBlbDFba2V5IGFzIGtleW9mIE1vZGVsXSBpbnN0YW5jZW9mIERhdGUgJiZcbiAgICAgICAgICAgIGVsMltrZXkgYXMga2V5b2YgTW9kZWxdIGluc3RhbmNlb2YgRGF0ZVxuICAgICAgICAgIClcbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgIChkaXJlY3Rpb24gPT09IFwiYXNjXCIgPyAxIDogLTEpICpcbiAgICAgICAgICAgICAgKChlbDFba2V5IGFzIGtleW9mIE1vZGVsXSBhcyB1bmtub3duIGFzIERhdGUpLnZhbHVlT2YoKSAtXG4gICAgICAgICAgICAgICAgKGVsMltrZXkgYXMga2V5b2YgTW9kZWxdIGFzIHVua25vd24gYXMgRGF0ZSkudmFsdWVPZigpKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB0aHJvdyBuZXcgUXVlcnlFcnJvcihgU29ydGluZyBub3Qgc3VwcG9ydGVkIGZvciBub3QgZGF0ZSBjbGFzc2VzYCk7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgdGhyb3cgbmV3IFF1ZXJ5RXJyb3IoYHNvcnRpbmcgbm90IHN1cHBvcnRlZCBmb3IgdHlwZSAke3R5cGV9YCk7XG4gICAgICB9XG4gICAgfTtcbiAgfVxuXG4gIHByb3RlY3RlZCBidWlsZCgpOiBSYXdSYW1RdWVyeTxNPiB7XG4gICAgY29uc3QgcmVzdWx0OiBSYXdSYW1RdWVyeTxNPiA9IHtcbiAgICAgIHNlbGVjdDogdGhpcy5zZWxlY3RTZWxlY3RvcixcbiAgICAgIGZyb206IHRoaXMuZnJvbVNlbGVjdG9yLFxuICAgICAgd2hlcmU6IHRoaXMud2hlcmVDb25kaXRpb25cbiAgICAgICAgPyB0aGlzLnBhcnNlQ29uZGl0aW9uKHRoaXMud2hlcmVDb25kaXRpb24pLndoZXJlXG4gICAgICAgIDogLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgICAgICAgIChlbDogTSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgfSxcbiAgICAgIGxpbWl0OiB0aGlzLmxpbWl0U2VsZWN0b3IsXG4gICAgICBza2lwOiB0aGlzLm9mZnNldFNlbGVjdG9yLFxuICAgIH07XG4gICAgaWYgKHRoaXMub3JkZXJCeVNlbGVjdG9yKSByZXN1bHQuc29ydCA9IHRoaXMuZ2V0U29ydCgpO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBhc3luYyBwYWdpbmF0ZShzaXplOiBudW1iZXIpOiBQcm9taXNlPFBhZ2luYXRvcjxNLCBSLCBSYXdSYW1RdWVyeTxNPj4+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcXVlcnkgPSB0aGlzLmJ1aWxkKCk7XG4gICAgICByZXR1cm4gbmV3IFJhbVBhZ2luYXRvcjxNLCBSPihcbiAgICAgICAgdGhpcy5hZGFwdGVyLFxuICAgICAgICBxdWVyeSxcbiAgICAgICAgc2l6ZSxcbiAgICAgICAgdGhpcy5mcm9tU2VsZWN0b3JcbiAgICAgICk7XG4gICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihlKTtcbiAgICB9XG4gIH1cblxuICBwYXJzZUNvbmRpdGlvbjxNIGV4dGVuZHMgTW9kZWw+KGNvbmRpdGlvbjogQ29uZGl0aW9uPE0+KTogUmF3UmFtUXVlcnk8TT4ge1xuICAgIHJldHVybiB7XG4gICAgICB3aGVyZTogKG06IE1vZGVsKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgYXR0cjEsIG9wZXJhdG9yLCBjb21wYXJpc29uIH0gPSBjb25kaXRpb24gYXMgdW5rbm93biBhcyB7XG4gICAgICAgICAgYXR0cjE6IHN0cmluZyB8IENvbmRpdGlvbjxNPjtcbiAgICAgICAgICBvcGVyYXRvcjogT3BlcmF0b3IgfCBHcm91cE9wZXJhdG9yO1xuICAgICAgICAgIGNvbXBhcmlzb246IGFueTtcbiAgICAgICAgfTtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgW0dyb3VwT3BlcmF0b3IuQU5ELCBHcm91cE9wZXJhdG9yLk9SLCBPcGVyYXRvci5OT1RdLmluZGV4T2YoXG4gICAgICAgICAgICBvcGVyYXRvciBhcyBHcm91cE9wZXJhdG9yXG4gICAgICAgICAgKSA9PT0gLTFcbiAgICAgICAgKSB7XG4gICAgICAgICAgc3dpdGNoIChvcGVyYXRvcikge1xuICAgICAgICAgICAgY2FzZSBPcGVyYXRvci5CSUdHRVI6XG4gICAgICAgICAgICAgIHJldHVybiBtW2F0dHIxIGFzIGtleW9mIE1vZGVsXSA+IGNvbXBhcmlzb247XG4gICAgICAgICAgICBjYXNlIE9wZXJhdG9yLkJJR0dFUl9FUTpcbiAgICAgICAgICAgICAgcmV0dXJuIG1bYXR0cjEgYXMga2V5b2YgTW9kZWxdID49IGNvbXBhcmlzb247XG4gICAgICAgICAgICBjYXNlIE9wZXJhdG9yLkRJRkZFUkVOVDpcbiAgICAgICAgICAgICAgcmV0dXJuIG1bYXR0cjEgYXMga2V5b2YgTW9kZWxdICE9PSBjb21wYXJpc29uO1xuICAgICAgICAgICAgY2FzZSBPcGVyYXRvci5FUVVBTDpcbiAgICAgICAgICAgICAgcmV0dXJuIG1bYXR0cjEgYXMga2V5b2YgTW9kZWxdID09PSBjb21wYXJpc29uO1xuICAgICAgICAgICAgY2FzZSBPcGVyYXRvci5SRUdFWFA6XG4gICAgICAgICAgICAgIGlmICh0eXBlb2YgbVthdHRyMSBhcyBrZXlvZiBNb2RlbF0gIT09IFwic3RyaW5nXCIpXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IFF1ZXJ5RXJyb3IoXG4gICAgICAgICAgICAgICAgICBgSW52YWxpZCByZWdleHAgY29tcGFyaXNvbiBvbiBhIG5vbiBzdHJpbmcgYXR0cmlidXRlOiAke21bYXR0cjEgYXMga2V5b2YgTW9kZWxdfWBcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICByZXR1cm4gISEobVthdHRyMSBhcyBrZXlvZiBNb2RlbF0gYXMgdW5rbm93biBhcyBzdHJpbmcpLm1hdGNoKFxuICAgICAgICAgICAgICAgIG5ldyBSZWdFeHAoY29tcGFyaXNvbiwgXCJnXCIpXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICBjYXNlIE9wZXJhdG9yLlNNQUxMRVI6XG4gICAgICAgICAgICAgIHJldHVybiBtW2F0dHIxIGFzIGtleW9mIE1vZGVsXSA8IGNvbXBhcmlzb247XG4gICAgICAgICAgICBjYXNlIE9wZXJhdG9yLlNNQUxMRVJfRVE6XG4gICAgICAgICAgICAgIHJldHVybiBtW2F0dHIxIGFzIGtleW9mIE1vZGVsXSA8PSBjb21wYXJpc29uO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXG4gICAgICAgICAgICAgICAgYEludmFsaWQgb3BlcmF0b3IgZm9yIHN0YW5kYXJkIGNvbXBhcmlzb25zOiAke29wZXJhdG9yfWBcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAob3BlcmF0b3IgPT09IE9wZXJhdG9yLk5PVCkge1xuICAgICAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFwiTm90IGltcGxlbWVudGVkXCIpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IG9wMTogUmF3UmFtUXVlcnk8YW55PiA9IHRoaXMucGFyc2VDb25kaXRpb24oXG4gICAgICAgICAgICBhdHRyMSBhcyBDb25kaXRpb248TT5cbiAgICAgICAgICApO1xuICAgICAgICAgIGNvbnN0IG9wMjogUmF3UmFtUXVlcnk8YW55PiA9IHRoaXMucGFyc2VDb25kaXRpb24oXG4gICAgICAgICAgICBjb21wYXJpc29uIGFzIENvbmRpdGlvbjxNPlxuICAgICAgICAgICk7XG4gICAgICAgICAgc3dpdGNoIChvcGVyYXRvcikge1xuICAgICAgICAgICAgY2FzZSBHcm91cE9wZXJhdG9yLkFORDpcbiAgICAgICAgICAgICAgcmV0dXJuIG9wMS53aGVyZShtKSAmJiBvcDIud2hlcmUobSk7XG4gICAgICAgICAgICBjYXNlIEdyb3VwT3BlcmF0b3IuT1I6XG4gICAgICAgICAgICAgIHJldHVybiBvcDEud2hlcmUobSkgfHwgb3AyLndoZXJlKG0pO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXG4gICAgICAgICAgICAgICAgYEludmFsaWQgb3BlcmF0b3IgZm9yIEFuZC9PciBjb21wYXJpc29uczogJHtvcGVyYXRvcn1gXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgIH0gYXMgUmF3UmFtUXVlcnk8YW55PjtcbiAgfVxufVxuIl19
|
@@ -1,8 +1,12 @@
|
|
1
|
-
import {
|
2
|
-
import {
|
1
|
+
import { Condition, Paginator } from "../query";
|
2
|
+
import { RawRamQuery } from "./types";
|
3
3
|
import { Model } from "@decaf-ts/decorator-validation";
|
4
|
-
import {
|
5
|
-
|
6
|
-
|
7
|
-
|
4
|
+
import { Statement } from "../query/Statement";
|
5
|
+
import { RamAdapter } from "./RamAdapter";
|
6
|
+
export declare class RamStatement<M extends Model, R> extends Statement<RawRamQuery<M>, M, R> {
|
7
|
+
constructor(adapter: RamAdapter);
|
8
|
+
private getSort;
|
9
|
+
protected build(): RawRamQuery<M>;
|
10
|
+
paginate(size: number): Promise<Paginator<M, R, RawRamQuery<M>>>;
|
11
|
+
parseCondition<M extends Model>(condition: Condition<M>): RawRamQuery<M>;
|
8
12
|
}
|
@@ -0,0 +1,5 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.RamFlavour = void 0;
|
4
|
+
exports.RamFlavour = "ram";
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3JhbS9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSxVQUFVLEdBQUcsS0FBSyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFJhbUZsYXZvdXIgPSBcInJhbVwiO1xuIl19
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare const RamFlavour = "ram";
|
@@ -0,0 +1,11 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.createdByOnRamCreateUpdate = createdByOnRamCreateUpdate;
|
4
|
+
const persistence_1 = require("./../persistence/index.cjs");
|
5
|
+
async function createdByOnRamCreateUpdate(context, data, key, model) {
|
6
|
+
const uuid = context.get("UUID");
|
7
|
+
if (!uuid)
|
8
|
+
throw new persistence_1.UnsupportedError("This adapter does not support user identification");
|
9
|
+
model[key] = uuid;
|
10
|
+
}
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmFtL2hhbmRsZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBT0EsZ0VBbUJDO0FBckJELDREQUFrRDtBQUUzQyxLQUFLLFVBQVUsMEJBQTBCLENBUTlDLE9BQW1CLEVBQ25CLElBQU8sRUFDUCxHQUFZLEVBQ1osS0FBUTtJQUVSLE1BQU0sSUFBSSxHQUFXLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDekMsSUFBSSxDQUFDLElBQUk7UUFDUCxNQUFNLElBQUksOEJBQWdCLENBQ3hCLG1EQUFtRCxDQUNwRCxDQUFDO0lBQ0osS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQWtCLENBQUM7QUFDbEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZGVsIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgUmVwbyB9IGZyb20gXCIuLi9yZXBvc2l0b3J5XCI7XG5pbXBvcnQgeyBSZWxhdGlvbnNNZXRhZGF0YSB9IGZyb20gXCIuLi9tb2RlbFwiO1xuaW1wb3J0IHsgUmFtRmxhZ3MgfSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHsgQ29udGV4dCB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgVW5zdXBwb3J0ZWRFcnJvciB9IGZyb20gXCIuLi9wZXJzaXN0ZW5jZVwiO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlZEJ5T25SYW1DcmVhdGVVcGRhdGU8XG4gIE0gZXh0ZW5kcyBNb2RlbCxcbiAgUiBleHRlbmRzIFJlcG88TSwgRiwgQz4sXG4gIFYgZXh0ZW5kcyBSZWxhdGlvbnNNZXRhZGF0YSxcbiAgRiBleHRlbmRzIFJhbUZsYWdzLFxuICBDIGV4dGVuZHMgQ29udGV4dDxGPixcbj4oXG4gIHRoaXM6IFIsXG4gIGNvbnRleHQ6IENvbnRleHQ8Rj4sXG4gIGRhdGE6IFYsXG4gIGtleToga2V5b2YgTSxcbiAgbW9kZWw6IE1cbik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCB1dWlkOiBzdHJpbmcgPSBjb250ZXh0LmdldChcIlVVSURcIik7XG4gIGlmICghdXVpZClcbiAgICB0aHJvdyBuZXcgVW5zdXBwb3J0ZWRFcnJvcihcbiAgICAgIFwiVGhpcyBhZGFwdGVyIGRvZXMgbm90IHN1cHBvcnQgdXNlciBpZGVudGlmaWNhdGlvblwiXG4gICAgKTtcbiAgbW9kZWxba2V5XSA9IHV1aWQgYXMgTVtrZXlvZiBNXTtcbn1cbiJdfQ==
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
2
|
+
import { Repo } from "../repository";
|
3
|
+
import { RelationsMetadata } from "../model";
|
4
|
+
import { RamFlags } from "./types";
|
5
|
+
import { Context } from "@decaf-ts/db-decorators";
|
6
|
+
export declare function createdByOnRamCreateUpdate<M extends Model, R extends Repo<M, F, C>, V extends RelationsMetadata, F extends RamFlags, C extends Context<F>>(this: R, context: Context<F>, data: V, key: keyof M, model: M): Promise<void>;
|
package/lib/ram/index.cjs
CHANGED
@@ -14,13 +14,17 @@ 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
|
-
|
17
|
+
const RamAdapter_1 = require("./RamAdapter.cjs");
|
18
|
+
// Invoked there to ensure decoration override
|
19
|
+
RamAdapter_1.RamAdapter.decoration();
|
18
20
|
__exportStar(require("./model/index.cjs"), exports);
|
19
|
-
__exportStar(require("./
|
20
|
-
__exportStar(require("./
|
21
|
+
__exportStar(require("./constants.cjs"), exports);
|
22
|
+
__exportStar(require("./handlers.cjs"), exports);
|
21
23
|
__exportStar(require("./RamContext.cjs"), exports);
|
22
24
|
__exportStar(require("./RamPaginator.cjs"), exports);
|
23
|
-
__exportStar(require("./RamSequence.cjs"), exports);
|
24
25
|
__exportStar(require("./RamStatement.cjs"), exports);
|
26
|
+
__exportStar(require("./RamSequence.cjs"), exports);
|
25
27
|
__exportStar(require("./types.cjs"), exports);
|
26
|
-
|
28
|
+
// left to last on purpose
|
29
|
+
__exportStar(require("./RamAdapter.cjs"), exports);
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmFtL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxpREFBMEM7QUFFMUMsOENBQThDO0FBQzlDLHVCQUFVLENBQUMsVUFBVSxFQUFFLENBQUM7QUFFeEIsb0RBQXdCO0FBQ3hCLGtEQUE0QjtBQUM1QixpREFBMkI7QUFDM0IsbURBQTZCO0FBQzdCLHFEQUErQjtBQUMvQixxREFBK0I7QUFDL0Isb0RBQThCO0FBQzlCLDhDQUF3QjtBQUN4QiwwQkFBMEI7QUFDMUIsbURBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmFtQWRhcHRlciB9IGZyb20gXCIuL1JhbUFkYXB0ZXJcIjtcblxuLy8gSW52b2tlZCB0aGVyZSB0byBlbnN1cmUgZGVjb3JhdGlvbiBvdmVycmlkZVxuUmFtQWRhcHRlci5kZWNvcmF0aW9uKCk7XG5cbmV4cG9ydCAqIGZyb20gXCIuL21vZGVsXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb25zdGFudHNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2hhbmRsZXJzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9SYW1Db250ZXh0XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9SYW1QYWdpbmF0b3JcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1JhbVN0YXRlbWVudFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vUmFtU2VxdWVuY2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3R5cGVzXCI7XG4vLyBsZWZ0IHRvIGxhc3Qgb24gcHVycG9zZVxuZXhwb3J0ICogZnJvbSBcIi4vUmFtQWRhcHRlclwiO1xuIl19
|
package/lib/ram/index.d.ts
CHANGED
@@ -1,9 +1,9 @@
|
|
1
|
-
export * from "./clauses";
|
2
1
|
export * from "./model";
|
3
|
-
export * from "./
|
4
|
-
export * from "./
|
2
|
+
export * from "./constants";
|
3
|
+
export * from "./handlers";
|
5
4
|
export * from "./RamContext";
|
6
5
|
export * from "./RamPaginator";
|
7
|
-
export * from "./RamSequence";
|
8
6
|
export * from "./RamStatement";
|
7
|
+
export * from "./RamSequence";
|
9
8
|
export * from "./types";
|
9
|
+
export * from "./RamAdapter";
|
@@ -33,4 +33,4 @@ exports.Sequence = Sequence = __decorate([
|
|
33
33
|
(0, decorator_validation_1.model)(),
|
34
34
|
__metadata("design:paramtypes", [Object])
|
35
35
|
], Sequence);
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmFtU2VxdWVuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmFtL21vZGVsL1JhbVNlcXVlbmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLHlFQUFpRTtBQUVqRSxtREFBc0Q7QUFDdEQseURBQW9DO0FBSTdCLElBQU0sUUFBUSxHQUFkLE1BQU0sUUFBUyxTQUFRLGlCQUFTO0lBUXJDLFlBQVksR0FBd0I7UUFDbEMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2IsQ0FBQztDQUNGLENBQUE7QUFYWSw0QkFBUTtBQUVuQjtJQURDLElBQUEsYUFBRSxHQUFFOztvQ0FDTztBQUlaO0lBRkMsSUFBQSwrQkFBUSxHQUFFO0lBQ1YsSUFBQSxhQUFLLEdBQUU7O3lDQUNrQjttQkFOZixRQUFRO0lBRnBCLElBQUEsYUFBSyxFQUFDLGVBQWUsQ0FBQztJQUN0QixJQUFBLDRCQUFLLEdBQUU7O0dBQ0ssUUFBUSxDQVdwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1vZGVsLCByZXF1aXJlZCB9IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcbmltcG9ydCB0eXBlIHsgTW9kZWxBcmcgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBCYXNlTW9kZWwsIGluZGV4LCB0YWJsZSB9IGZyb20gXCIuLi8uLi9tb2RlbFwiO1xuaW1wb3J0IHsgcGsgfSBmcm9tIFwiLi4vLi4vaWRlbnRpdHlcIjtcblxuQHRhYmxlKFwiX19SYW1TZXF1ZW5jZVwiKVxuQG1vZGVsKClcbmV4cG9ydCBjbGFzcyBTZXF1ZW5jZSBleHRlbmRzIEJhc2VNb2RlbCB7XG4gIEBwaygpXG4gIGlkITogc3RyaW5nO1xuXG4gIEByZXF1aXJlZCgpXG4gIEBpbmRleCgpXG4gIGN1cnJlbnQhOiBzdHJpbmcgfCBudW1iZXI7XG5cbiAgY29uc3RydWN0b3Ioc2VxPzogTW9kZWxBcmc8U2VxdWVuY2U+KSB7XG4gICAgc3VwZXIoc2VxKTtcbiAgfVxufVxuIl19
|
@@ -1,20 +1,7 @@
|
|
1
1
|
import type { ModelArg } from "@decaf-ts/decorator-validation";
|
2
2
|
import { BaseModel } from "../../model";
|
3
3
|
export declare class Sequence extends BaseModel {
|
4
|
-
/**
|
5
|
-
* @summary the Primary key for the DBSequence
|
6
|
-
* @prop name
|
7
|
-
*
|
8
|
-
* @see pk
|
9
|
-
*/
|
10
4
|
id: string;
|
11
|
-
/**
|
12
|
-
* @summary the current value for the DBSequence
|
13
|
-
* @prop current
|
14
|
-
*
|
15
|
-
* @see required
|
16
|
-
* @see index
|
17
|
-
*/
|
18
5
|
current: string | number;
|
19
6
|
constructor(seq?: ModelArg<Sequence>);
|
20
7
|
}
|
package/lib/ram/types.cjs
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmFtL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25zdHJ1Y3RvciwgTW9kZWwgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBSZXBvc2l0b3J5IH0gZnJvbSBcIi4uL3JlcG9zaXRvcnlcIjtcbmltcG9ydCB7IENvbnRleHQsIFJlcG9zaXRvcnlGbGFncyB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgUmFtQWRhcHRlciB9IGZyb20gXCIuL1JhbUFkYXB0ZXJcIjtcblxuZXhwb3J0IHR5cGUgUmFtU3RvcmFnZSA9IE1hcDxzdHJpbmcsIE1hcDxzdHJpbmcgfCBudW1iZXIsIGFueT4+O1xuXG5leHBvcnQgdHlwZSBSYXdSYW1RdWVyeTxNIGV4dGVuZHMgTW9kZWw+ID0ge1xuICBzZWxlY3Q6IHVuZGVmaW5lZCB8IChrZXlvZiBNKVtdO1xuICBmcm9tOiBDb25zdHJ1Y3RvcjxNPjtcbiAgd2hlcmU6IChlbDogTSkgPT4gYm9vbGVhbjtcbiAgc29ydD86IChlbDogTSwgZWwyOiBNKSA9PiBudW1iZXI7XG4gIGxpbWl0PzogbnVtYmVyO1xuICBza2lwPzogbnVtYmVyO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBSYW1GbGFncyBleHRlbmRzIFJlcG9zaXRvcnlGbGFncyB7XG4gIFVVSUQ6IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgUmFtUmVwb3NpdG9yeTxNIGV4dGVuZHMgTW9kZWw+ID0gUmVwb3NpdG9yeTxcbiAgTSxcbiAgUmF3UmFtUXVlcnk8YW55PixcbiAgUmFtQWRhcHRlcixcbiAgUmFtRmxhZ3MsXG4gIENvbnRleHQ8UmFtRmxhZ3M+XG4+O1xuIl19
|
package/lib/ram/types.d.ts
CHANGED
@@ -2,10 +2,10 @@ import { Constructor, Model } from "@decaf-ts/decorator-validation";
|
|
2
2
|
import { Repository } from "../repository";
|
3
3
|
import { Context, RepositoryFlags } from "@decaf-ts/db-decorators";
|
4
4
|
import { RamAdapter } from "./RamAdapter";
|
5
|
-
export type RamStorage =
|
6
|
-
export type
|
7
|
-
select: undefined |
|
8
|
-
from:
|
5
|
+
export type RamStorage = Map<string, Map<string | number, any>>;
|
6
|
+
export type RawRamQuery<M extends Model> = {
|
7
|
+
select: undefined | (keyof M)[];
|
8
|
+
from: Constructor<M>;
|
9
9
|
where: (el: M) => boolean;
|
10
10
|
sort?: (el: M, el2: M) => number;
|
11
11
|
limit?: number;
|
@@ -14,4 +14,4 @@ export type RamQuery<M extends Model> = {
|
|
14
14
|
export interface RamFlags extends RepositoryFlags {
|
15
15
|
UUID: string;
|
16
16
|
}
|
17
|
-
export type RamRepository<M extends Model> = Repository<M,
|
17
|
+
export type RamRepository<M extends Model> = Repository<M, RawRamQuery<any>, RamAdapter, RamFlags, Context<RamFlags>>;
|