@decaf-ts/core 0.4.1 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core.cjs +179 -168
- package/dist/core.esm.cjs +134 -134
- package/lib/esm/identity/decorators.d.ts +3 -2
- package/lib/esm/identity/decorators.js +7 -5
- package/lib/esm/index.d.ts +1 -1
- package/lib/esm/index.js +1 -1
- package/lib/esm/interfaces/ErrorParser.d.ts +4 -0
- package/lib/esm/interfaces/ErrorParser.js +2 -0
- package/lib/esm/interfaces/index.d.ts +1 -0
- package/lib/esm/interfaces/index.js +2 -1
- package/lib/esm/model/construction.d.ts +13 -10
- package/lib/esm/model/construction.js +8 -3
- package/lib/esm/model/decorators.d.ts +9 -8
- package/lib/esm/model/decorators.js +34 -14
- package/lib/esm/model/index.d.ts +1 -1
- package/lib/esm/model/index.js +3 -2
- package/lib/esm/persistence/Adapter.d.ts +14 -13
- package/lib/esm/persistence/Adapter.js +37 -26
- package/lib/esm/query/Clause.d.ts +2 -2
- package/lib/esm/query/ClauseFactory.d.ts +3 -3
- package/lib/esm/query/ClauseFactory.js +1 -1
- package/lib/esm/query/Paginator.d.ts +2 -2
- package/lib/esm/query/Paginator.js +4 -3
- package/lib/esm/query/Query.d.ts +1 -1
- package/lib/esm/query/Query.js +1 -1
- package/lib/esm/query/Statement.d.ts +3 -3
- package/lib/esm/query/Statement.js +1 -1
- package/lib/esm/query/errors.js +3 -3
- package/lib/esm/ram/RamAdapter.d.ts +41 -0
- package/lib/esm/ram/RamAdapter.js +230 -0
- package/lib/esm/ram/RamClauseFactory.d.ts +17 -0
- package/lib/esm/ram/RamClauseFactory.js +92 -0
- package/lib/esm/ram/RamContext.d.ts +5 -0
- package/lib/esm/ram/RamContext.js +7 -0
- package/lib/esm/ram/RamPaginator.d.ts +7 -0
- package/lib/esm/ram/RamPaginator.js +20 -0
- package/lib/esm/ram/RamSequence.d.ts +50 -0
- package/lib/esm/ram/RamSequence.js +130 -0
- package/lib/esm/ram/RamStatement.d.ts +8 -0
- package/lib/esm/ram/RamStatement.js +18 -0
- package/lib/esm/ram/clauses/FromClause.d.ts +7 -0
- package/lib/esm/ram/clauses/FromClause.js +11 -0
- package/lib/esm/ram/clauses/InsertClause.d.ts +7 -0
- package/lib/esm/ram/clauses/InsertClause.js +13 -0
- package/lib/esm/ram/clauses/OrderByClause.d.ts +7 -0
- package/lib/esm/ram/clauses/OrderByClause.js +39 -0
- package/lib/esm/ram/clauses/SelectClause.d.ts +7 -0
- package/lib/esm/ram/clauses/SelectClause.js +16 -0
- package/lib/esm/ram/clauses/ValuesClause.d.ts +7 -0
- package/lib/esm/ram/clauses/ValuesClause.js +12 -0
- package/lib/esm/ram/clauses/WhereClause.d.ts +7 -0
- package/lib/esm/ram/clauses/WhereClause.js +11 -0
- package/lib/esm/ram/clauses/index.d.ts +6 -0
- package/lib/esm/ram/clauses/index.js +7 -0
- package/lib/esm/ram/index.d.ts +9 -0
- package/lib/esm/ram/index.js +10 -0
- package/lib/esm/ram/model/RamSequence.d.ts +20 -0
- package/lib/esm/ram/model/RamSequence.js +33 -0
- package/lib/esm/ram/model/index.d.ts +1 -0
- package/lib/esm/ram/model/index.js +2 -0
- package/lib/esm/ram/types.d.ts +17 -0
- package/lib/esm/ram/types.js +2 -0
- package/lib/esm/repository/Repository.d.ts +6 -3
- package/lib/esm/repository/Repository.js +27 -15
- package/lib/esm/repository/errors.d.ts +6 -0
- package/lib/esm/repository/errors.js +12 -2
- package/lib/esm/repository/index.d.ts +0 -1
- package/lib/esm/repository/index.js +1 -2
- package/lib/identity/decorators.cjs +10 -8
- package/lib/identity/decorators.d.ts +3 -2
- package/lib/identity/index.cjs +1 -1
- package/lib/identity/utils.cjs +3 -3
- package/lib/index.cjs +2 -2
- package/lib/index.d.ts +1 -1
- package/lib/interfaces/ErrorParser.cjs +3 -0
- package/lib/interfaces/ErrorParser.d.ts +4 -0
- package/lib/interfaces/index.cjs +2 -1
- package/lib/interfaces/index.d.ts +1 -0
- package/lib/model/IdentifiedBaseModel.cjs +1 -1
- package/lib/model/construction.cjs +11 -6
- package/lib/model/construction.d.ts +13 -10
- package/lib/model/decorators.cjs +39 -19
- package/lib/model/decorators.d.ts +9 -8
- package/lib/model/index.cjs +3 -2
- package/lib/model/index.d.ts +1 -1
- package/lib/persistence/Adapter.cjs +37 -26
- package/lib/persistence/Adapter.d.ts +14 -13
- package/lib/persistence/Sequence.cjs +2 -2
- package/lib/persistence/decorators.cjs +1 -1
- package/lib/persistence/index.cjs +1 -1
- package/lib/query/Clause.cjs +1 -1
- package/lib/query/Clause.d.ts +2 -2
- package/lib/query/ClauseFactory.cjs +1 -1
- package/lib/query/ClauseFactory.d.ts +3 -3
- package/lib/query/Condition.cjs +1 -1
- package/lib/query/Paginator.cjs +4 -3
- package/lib/query/Paginator.d.ts +2 -2
- package/lib/query/Query.cjs +1 -1
- package/lib/query/Query.d.ts +1 -1
- package/lib/query/Statement.cjs +3 -3
- package/lib/query/Statement.d.ts +3 -3
- package/lib/query/clauses/FromClause.cjs +3 -3
- package/lib/query/clauses/GroupByClause.cjs +2 -2
- package/lib/query/clauses/InsertClause.cjs +3 -3
- package/lib/query/clauses/LimitClause.cjs +2 -2
- package/lib/query/clauses/OffsetClause.cjs +2 -2
- package/lib/query/clauses/OrderByClause.cjs +2 -2
- package/lib/query/clauses/SelectClause.cjs +2 -2
- package/lib/query/clauses/SelectorBasedClause.cjs +2 -2
- package/lib/query/clauses/ValuesClause.cjs +3 -3
- package/lib/query/clauses/WhereClause.cjs +4 -4
- package/lib/query/clauses/index.cjs +1 -1
- package/lib/query/errors.cjs +3 -3
- package/lib/query/index.cjs +1 -1
- package/lib/ram/RamAdapter.cjs +268 -0
- package/lib/ram/RamAdapter.d.ts +41 -0
- package/lib/ram/RamClauseFactory.cjs +96 -0
- package/lib/ram/RamClauseFactory.d.ts +17 -0
- package/lib/ram/RamContext.cjs +11 -0
- package/lib/ram/RamContext.d.ts +5 -0
- package/lib/ram/RamPaginator.cjs +24 -0
- package/lib/ram/RamPaginator.d.ts +7 -0
- package/lib/ram/RamSequence.cjs +135 -0
- package/lib/ram/RamSequence.d.ts +50 -0
- package/lib/ram/RamStatement.cjs +22 -0
- package/lib/ram/RamStatement.d.ts +8 -0
- package/lib/ram/clauses/FromClause.cjs +15 -0
- package/lib/ram/clauses/FromClause.d.ts +7 -0
- package/lib/ram/clauses/InsertClause.cjs +17 -0
- package/lib/ram/clauses/InsertClause.d.ts +7 -0
- package/lib/ram/clauses/OrderByClause.cjs +43 -0
- package/lib/ram/clauses/OrderByClause.d.ts +7 -0
- package/lib/ram/clauses/SelectClause.cjs +20 -0
- package/lib/ram/clauses/SelectClause.d.ts +7 -0
- package/lib/ram/clauses/ValuesClause.cjs +16 -0
- package/lib/ram/clauses/ValuesClause.d.ts +7 -0
- package/lib/ram/clauses/WhereClause.cjs +15 -0
- package/lib/ram/clauses/WhereClause.d.ts +7 -0
- package/lib/ram/clauses/index.cjs +23 -0
- package/lib/ram/clauses/index.d.ts +6 -0
- package/lib/ram/index.cjs +26 -0
- package/lib/ram/index.d.ts +9 -0
- package/lib/ram/model/RamSequence.cjs +36 -0
- package/lib/ram/model/RamSequence.d.ts +20 -0
- package/lib/ram/model/index.cjs +18 -0
- package/lib/ram/model/index.d.ts +1 -0
- package/lib/ram/types.cjs +3 -0
- package/lib/ram/types.d.ts +17 -0
- package/lib/repository/Repository.cjs +32 -20
- package/lib/repository/Repository.d.ts +6 -3
- package/lib/repository/decorators.cjs +1 -1
- package/lib/repository/errors.cjs +15 -3
- package/lib/repository/errors.d.ts +6 -0
- package/lib/repository/index.cjs +1 -2
- package/lib/repository/index.d.ts +0 -1
- package/lib/repository/injectables.cjs +3 -3
- package/lib/repository/utils.cjs +3 -3
- package/lib/validators/ClauseSequenceValidator.cjs +5 -5
- package/lib/validators/decorators.cjs +2 -2
- package/lib/validators/index.cjs +1 -1
- package/package.json +10 -3
- package/lib/esm/model/User.d.ts +0 -9
- package/lib/esm/model/User.js +0 -34
- package/lib/esm/repository/Context.d.ts +0 -10
- package/lib/esm/repository/Context.js +0 -12
- package/lib/model/User.cjs +0 -37
- package/lib/model/User.d.ts +0 -9
- package/lib/repository/Context.cjs +0 -16
- package/lib/repository/Context.d.ts +0 -10
@@ -0,0 +1,135 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.RamSequence = void 0;
|
4
|
+
exports.parseSequenceValue = parseSequenceValue;
|
5
|
+
const RamSequence_1 = require("./model/RamSequence.cjs");
|
6
|
+
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
7
|
+
const persistence_1 = require("./../persistence/index.cjs");
|
8
|
+
const repository_1 = require("./../repository/index.cjs");
|
9
|
+
function parseSequenceValue(type, value) {
|
10
|
+
switch (type) {
|
11
|
+
case "Number":
|
12
|
+
return typeof value === "string"
|
13
|
+
? parseInt(value)
|
14
|
+
: typeof value === "number"
|
15
|
+
? value
|
16
|
+
: BigInt(value);
|
17
|
+
case "BigInt":
|
18
|
+
return BigInt(value);
|
19
|
+
default:
|
20
|
+
throw new db_decorators_1.InternalError("Should never happen");
|
21
|
+
}
|
22
|
+
}
|
23
|
+
/**
|
24
|
+
* @summary Abstract implementation of a Sequence
|
25
|
+
* @description provides the basic functionality for {@link Sequence}s
|
26
|
+
*
|
27
|
+
* @param {SequenceOptions} options
|
28
|
+
*
|
29
|
+
* @class CouchDBSequence
|
30
|
+
* @implements Sequence
|
31
|
+
*
|
32
|
+
* @category Sequences
|
33
|
+
*/
|
34
|
+
class RamSequence extends persistence_1.Sequence {
|
35
|
+
constructor(options, adapter) {
|
36
|
+
super(options);
|
37
|
+
this.repo = repository_1.Repository.forModel(RamSequence_1.Sequence, adapter.flavour);
|
38
|
+
}
|
39
|
+
/**
|
40
|
+
* @summary Retrieves the current value for the sequence
|
41
|
+
* @protected
|
42
|
+
*/
|
43
|
+
async current() {
|
44
|
+
const { name, startWith } = this.options;
|
45
|
+
try {
|
46
|
+
const sequence = await this.repo.read(name);
|
47
|
+
return this.parse(sequence.current);
|
48
|
+
}
|
49
|
+
catch (e) {
|
50
|
+
if (e instanceof db_decorators_1.NotFoundError) {
|
51
|
+
if (typeof startWith === "undefined")
|
52
|
+
throw new db_decorators_1.InternalError("Starting value is not defined for a non existing sequence");
|
53
|
+
try {
|
54
|
+
return this.parse(startWith);
|
55
|
+
}
|
56
|
+
catch (e) {
|
57
|
+
throw new db_decorators_1.InternalError(`Failed to parse initial value for sequence ${startWith}: ${e}`);
|
58
|
+
}
|
59
|
+
}
|
60
|
+
throw new db_decorators_1.InternalError(`Failed to retrieve current value for sequence ${name}: ${e}`);
|
61
|
+
}
|
62
|
+
}
|
63
|
+
/**
|
64
|
+
* @summary Parses the {@link Sequence} value
|
65
|
+
*
|
66
|
+
* @protected
|
67
|
+
* @param value
|
68
|
+
*/
|
69
|
+
parse(value) {
|
70
|
+
return parseSequenceValue(this.options.type, value);
|
71
|
+
}
|
72
|
+
/**
|
73
|
+
* @summary increments the sequence
|
74
|
+
* @description Sequence specific implementation
|
75
|
+
*
|
76
|
+
* @param {string | number | bigint} current
|
77
|
+
* @param count
|
78
|
+
* @protected
|
79
|
+
*/
|
80
|
+
async increment(current, count) {
|
81
|
+
const { type, incrementBy, name } = this.options;
|
82
|
+
let next;
|
83
|
+
const toIncrementBy = count || incrementBy;
|
84
|
+
if (toIncrementBy % incrementBy !== 0)
|
85
|
+
throw new db_decorators_1.InternalError(`Value to increment does not consider the incrementBy setting: ${incrementBy}`);
|
86
|
+
switch (type) {
|
87
|
+
case "Number":
|
88
|
+
next = this.parse(current) + toIncrementBy;
|
89
|
+
break;
|
90
|
+
case "BigInt":
|
91
|
+
next = this.parse(current) + BigInt(toIncrementBy);
|
92
|
+
break;
|
93
|
+
default:
|
94
|
+
throw new db_decorators_1.InternalError("Should never happen");
|
95
|
+
}
|
96
|
+
let seq;
|
97
|
+
const repo = this.repo.override({
|
98
|
+
ignoredValidationProperties: ["updatedOn"],
|
99
|
+
});
|
100
|
+
try {
|
101
|
+
seq = await repo.update(new RamSequence_1.Sequence({ id: name, current: next }));
|
102
|
+
}
|
103
|
+
catch (e) {
|
104
|
+
if (!(e instanceof db_decorators_1.NotFoundError)) {
|
105
|
+
throw e;
|
106
|
+
}
|
107
|
+
seq = await repo.create(new RamSequence_1.Sequence({ id: name, current: next }));
|
108
|
+
}
|
109
|
+
return seq.current;
|
110
|
+
}
|
111
|
+
/**
|
112
|
+
* @summary Generates the next value in th sequence
|
113
|
+
* @description calls {@link Sequence#parse} on the current value
|
114
|
+
* followed by {@link Sequence#increment}
|
115
|
+
*
|
116
|
+
*/
|
117
|
+
async next() {
|
118
|
+
const current = await this.current();
|
119
|
+
return this.increment(current);
|
120
|
+
}
|
121
|
+
async range(count) {
|
122
|
+
const current = (await this.current());
|
123
|
+
const incrementBy = this.parse(this.options.incrementBy);
|
124
|
+
const next = await this.increment(current, this.parse(count) * incrementBy);
|
125
|
+
const range = [];
|
126
|
+
for (let i = 1; i <= count; i++) {
|
127
|
+
range.push(current + incrementBy * this.parse(i));
|
128
|
+
}
|
129
|
+
if (range[range.length - 1] !== next)
|
130
|
+
throw new db_decorators_1.InternalError("Miscalculation of range");
|
131
|
+
return range;
|
132
|
+
}
|
133
|
+
}
|
134
|
+
exports.RamSequence = RamSequence;
|
135
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmFtU2VxdWVuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmFtL1JhbVNlcXVlbmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQU9BLGdEQWdCQztBQXZCRCx5REFBc0Q7QUFDdEQsMkRBQXVFO0FBQ3ZFLDREQUEwQztBQUcxQywwREFBaUQ7QUFFakQsU0FBZ0Isa0JBQWtCLENBQ2hDLElBQXFDLEVBQ3JDLEtBQStCO0lBRS9CLFFBQVEsSUFBSSxFQUFFLENBQUM7UUFDYixLQUFLLFFBQVE7WUFDWCxPQUFPLE9BQU8sS0FBSyxLQUFLLFFBQVE7Z0JBQzlCLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO2dCQUNqQixDQUFDLENBQUMsT0FBTyxLQUFLLEtBQUssUUFBUTtvQkFDekIsQ0FBQyxDQUFDLEtBQUs7b0JBQ1AsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN0QixLQUFLLFFBQVE7WUFDWCxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QjtZQUNFLE1BQU0sSUFBSSw2QkFBYSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDbkQsQ0FBQztBQUNILENBQUM7QUFFRDs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBYSxXQUFZLFNBQVEsc0JBQVE7SUFHdkMsWUFBWSxPQUF3QixFQUFFLE9BQW1CO1FBQ3ZELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNmLElBQUksQ0FBQyxJQUFJLEdBQUcsdUJBQVUsQ0FBQyxRQUFRLENBQUMsc0JBQUcsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxPQUFPO1FBQ1gsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3pDLElBQUksQ0FBQztZQUNILE1BQU0sUUFBUSxHQUFRLE1BQU0sSUFBSSxDQUFDLElB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TyxFQUFFLENBQUM7UUFDckMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQWE7UUFDdkIsTUFBTSxPQUFPLEdBQUcsQ0FBQyxNQUFNLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBVyxDQUFDO1FBQ2pELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQVcsQ0FBQztRQUNuRSxNQUFNLElBQUksR0FBNkIsTUFBTSxJQUFJLENBQUMsU0FBUyxDQUN6RCxPQUFPLEVBQ04sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQVksR0FBRyxXQUFXLENBQzVDLENBQUM7UUFDRixNQUFNLEtBQUssR0FBaUMsRUFBRSxDQUFDO1FBQy9DLEtBQUssSUFBSSxDQUFDLEdBQVcsQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUN4QyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxXQUFXLEdBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQVksQ0FBQyxDQUFDO1FBQ2hFLENBQUM7UUFDRCxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxLQUFLLElBQUk7WUFDbEMsTUFBTSxJQUFJLDZCQUFhLENBQUMseUJBQXlCLENBQUMsQ0FBQztRQUNyRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7Q0FDRjtBQXRIRCxrQ0FzSEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXF1ZW5jZSBhcyBTZXEgfSBmcm9tIFwiLi9tb2RlbC9SYW1TZXF1ZW5jZVwiO1xuaW1wb3J0IHsgSW50ZXJuYWxFcnJvciwgTm90Rm91bmRFcnJvciB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgU2VxdWVuY2UgfSBmcm9tIFwiLi4vcGVyc2lzdGVuY2VcIjtcbmltcG9ydCB7IFNlcXVlbmNlT3B0aW9ucyB9IGZyb20gXCIuLi9pbnRlcmZhY2VzXCI7XG5pbXBvcnQgeyBSYW1BZGFwdGVyIH0gZnJvbSBcIi4vUmFtQWRhcHRlclwiO1xuaW1wb3J0IHsgUmVwbywgUmVwb3NpdG9yeSB9IGZyb20gXCIuLi9yZXBvc2l0b3J5XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZVNlcXVlbmNlVmFsdWUoXG4gIHR5cGU6IFwiTnVtYmVyXCIgfCBcIkJpZ0ludFwiIHwgdW5kZWZpbmVkLFxuICB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgYmlnaW50XG4pOiBzdHJpbmcgfCBudW1iZXIgfCBiaWdpbnQge1xuICBzd2l0Y2ggKHR5cGUpIHtcbiAgICBjYXNlIFwiTnVtYmVyXCI6XG4gICAgICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiXG4gICAgICAgID8gcGFyc2VJbnQodmFsdWUpXG4gICAgICAgIDogdHlwZW9mIHZhbHVlID09PSBcIm51bWJlclwiXG4gICAgICAgICAgPyB2YWx1ZVxuICAgICAgICAgIDogQmlnSW50KHZhbHVlKTtcbiAgICBjYXNlIFwiQmlnSW50XCI6XG4gICAgICByZXR1cm4gQmlnSW50KHZhbHVlKTtcbiAgICBkZWZhdWx0OlxuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJTaG91bGQgbmV2ZXIgaGFwcGVuXCIpO1xuICB9XG59XG5cbi8qKlxuICogQHN1bW1hcnkgQWJzdHJhY3QgaW1wbGVtZW50YXRpb24gb2YgYSBTZXF1ZW5jZVxuICogQGRlc2NyaXB0aW9uIHByb3ZpZGVzIHRoZSBiYXNpYyBmdW5jdGlvbmFsaXR5IGZvciB7QGxpbmsgU2VxdWVuY2V9c1xuICpcbiAqIEBwYXJhbSB7U2VxdWVuY2VPcHRpb25zfSBvcHRpb25zXG4gKlxuICogQGNsYXNzIENvdWNoREJTZXF1ZW5jZVxuICogQGltcGxlbWVudHMgU2VxdWVuY2VcbiAqXG4gKiBAY2F0ZWdvcnkgU2VxdWVuY2VzXG4gKi9cbmV4cG9ydCBjbGFzcyBSYW1TZXF1ZW5jZSBleHRlbmRzIFNlcXVlbmNlIHtcbiAgcHJvdGVjdGVkIHJlcG86IFJlcG88U2VxPjtcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBTZXF1ZW5jZU9wdGlvbnMsIGFkYXB0ZXI6IFJhbUFkYXB0ZXIpIHtcbiAgICBzdXBlcihvcHRpb25zKTtcbiAgICB0aGlzLnJlcG8gPSBSZXBvc2l0b3J5LmZvck1vZGVsKFNlcSwgYWRhcHRlci5mbGF2b3VyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAc3VtbWFyeSBSZXRyaWV2ZXMgdGhlIGN1cnJlbnQgdmFsdWUgZm9yIHRoZSBzZXF1ZW5jZVxuICAgKiBAcHJvdGVjdGVkXG4gICAqL1xuICBhc3luYyBjdXJyZW50KCk6IFByb21pc2U8c3RyaW5nIHwgbnVtYmVyIHwgYmlnaW50PiB7XG4gICAgY29uc3QgeyBuYW1lLCBzdGFydFdpdGggfSA9IHRoaXMub3B0aW9ucztcbiAgICB0cnkge1xuICAgICAgY29uc3Qgc2VxdWVuY2U6IFNlcSA9IGF3YWl0IHRoaXMucmVwby5yZWFkKG5hbWUgYXMgc3RyaW5nKTtcbiAgICAgIHJldHVybiB0aGlzLnBhcnNlKHNlcXVlbmNlLmN1cnJlbnQgYXMgc3RyaW5nIHwgbnVtYmVyKTtcbiAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgIGlmIChlIGluc3RhbmNlb2YgTm90Rm91bmRFcnJvcikge1xuICAgICAgICBpZiAodHlwZW9mIHN0YXJ0V2l0aCA9PT0gXCJ1bmRlZmluZWRcIilcbiAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcbiAgICAgICAgICAgIFwiU3RhcnRpbmcgdmFsdWUgaXMgbm90IGRlZmluZWQgZm9yIGEgbm9uIGV4aXN0aW5nIHNlcXVlbmNlXCJcbiAgICAgICAgICApO1xuICAgICAgICB0cnkge1xuICAgICAgICAgIHJldHVybiB0aGlzLnBhcnNlKHN0YXJ0V2l0aCk7XG4gICAgICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgICAgICAgYEZhaWxlZCB0byBwYXJzZSBpbml0aWFsIHZhbHVlIGZvciBzZXF1ZW5jZSAke3N0YXJ0V2l0aH06ICR7ZX1gXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXG4gICAgICAgIGBGYWlsZWQgdG8gcmV0cmlldmUgY3VycmVudCB2YWx1ZSBmb3Igc2VxdWVuY2UgJHtuYW1lfTogJHtlfWBcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IFBhcnNlcyB0aGUge0BsaW5rIFNlcXVlbmNlfSB2YWx1ZVxuICAgKlxuICAgKiBAcHJvdGVjdGVkXG4gICAqIEBwYXJhbSB2YWx1ZVxuICAgKi9cbiAgcHJpdmF0ZSBwYXJzZSh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgYmlnaW50KTogc3RyaW5nIHwgbnVtYmVyIHwgYmlnaW50IHtcbiAgICByZXR1cm4gcGFyc2VTZXF1ZW5jZVZhbHVlKHRoaXMub3B0aW9ucy50eXBlLCB2YWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogQHN1bW1hcnkgaW5jcmVtZW50cyB0aGUgc2VxdWVuY2VcbiAgICogQGRlc2NyaXB0aW9uIFNlcXVlbmNlIHNwZWNpZmljIGltcGxlbWVudGF0aW9uXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgbnVtYmVyIHwgYmlnaW50fSBjdXJyZW50XG4gICAqIEBwYXJhbSBjb3VudFxuICAgKiBAcHJvdGVjdGVkXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGluY3JlbWVudChcbiAgICBjdXJyZW50OiBzdHJpbmcgfCBudW1iZXIgfCBiaWdpbnQsXG4gICAgY291bnQ/OiBudW1iZXJcbiAgKTogUHJvbWlzZTxzdHJpbmcgfCBudW1iZXIgfCBiaWdpbnQ+IHtcbiAgICBjb25zdCB7IHR5cGUsIGluY3JlbWVudEJ5LCBuYW1lIH0gPSB0aGlzLm9wdGlvbnM7XG4gICAgbGV0IG5leHQ6IHN0cmluZyB8IG51bWJlciB8IGJpZ2ludDtcbiAgICBjb25zdCB0b0luY3JlbWVudEJ5ID0gY291bnQgfHwgaW5jcmVtZW50Qnk7XG4gICAgaWYgKHRvSW5jcmVtZW50QnkgJSBpbmNyZW1lbnRCeSAhPT0gMClcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgICBgVmFsdWUgdG8gaW5jcmVtZW50IGRvZXMgbm90IGNvbnNpZGVyIHRoZSBpbmNyZW1lbnRCeSBzZXR0aW5nOiAke2luY3JlbWVudEJ5fWBcbiAgICAgICk7XG4gICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICBjYXNlIFwiTnVtYmVyXCI6XG4gICAgICAgIG5leHQgPSAodGhpcy5wYXJzZShjdXJyZW50KSBhcyBudW1iZXIpICsgdG9JbmNyZW1lbnRCeTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIFwiQmlnSW50XCI6XG4gICAgICAgIG5leHQgPSAodGhpcy5wYXJzZShjdXJyZW50KSBhcyBiaWdpbnQpICsgQmlnSW50KHRvSW5jcmVtZW50QnkpO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFwiU2hvdWxkIG5ldmVyIGhhcHBlblwiKTtcbiAgICB9XG4gICAgbGV0IHNlcTogU2VxO1xuICAgIGNvbnN0IHJlcG8gPSB0aGlzLnJlcG8ub3ZlcnJpZGUoe1xuICAgICAgaWdub3JlZFZhbGlkYXRpb25Qcm9wZXJ0aWVzOiBbXCJ1cGRhdGVkT25cIl0sXG4gICAgfSk7XG4gICAgdHJ5IHtcbiAgICAgIHNlcSA9IGF3YWl0IHJlcG8udXBkYXRlKG5ldyBTZXEoeyBpZDogbmFtZSwgY3VycmVudDogbmV4dCB9KSk7XG4gICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICBpZiAoIShlIGluc3RhbmNlb2YgTm90Rm91bmRFcnJvcikpIHtcbiAgICAgICAgdGhyb3cgZTtcbiAgICAgIH1cbiAgICAgIHNlcSA9IGF3YWl0IHJlcG8uY3JlYXRlKG5ldyBTZXEoeyBpZDogbmFtZSwgY3VycmVudDogbmV4dCB9KSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHNlcS5jdXJyZW50IGFzIHN0cmluZyB8IG51bWJlciB8IGJpZ2ludDtcbiAgfVxuXG4gIC8qKlxuICAgKiBAc3VtbWFyeSBHZW5lcmF0ZXMgdGhlIG5leHQgdmFsdWUgaW4gdGggc2VxdWVuY2VcbiAgICogQGRlc2NyaXB0aW9uIGNhbGxzIHtAbGluayBTZXF1ZW5jZSNwYXJzZX0gb24gdGhlIGN1cnJlbnQgdmFsdWVcbiAgICogZm9sbG93ZWQgYnkge0BsaW5rIFNlcXVlbmNlI2luY3JlbWVudH1cbiAgICpcbiAgICovXG4gIGFzeW5jIG5leHQoKTogUHJvbWlzZTxudW1iZXIgfCBzdHJpbmcgfCBiaWdpbnQ+IHtcbiAgICBjb25zdCBjdXJyZW50ID0gYXdhaXQgdGhpcy5jdXJyZW50KCk7XG4gICAgcmV0dXJuIHRoaXMuaW5jcmVtZW50KGN1cnJlbnQpO1xuICB9XG5cbiAgYXN5bmMgcmFuZ2UoY291bnQ6IG51bWJlcik6IFByb21pc2U8KG51bWJlciB8IHN0cmluZyB8IGJpZ2ludClbXT4ge1xuICAgIGNvbnN0IGN1cnJlbnQgPSAoYXdhaXQgdGhpcy5jdXJyZW50KCkpIGFzIG51bWJlcjtcbiAgICBjb25zdCBpbmNyZW1lbnRCeSA9IHRoaXMucGFyc2UodGhpcy5vcHRpb25zLmluY3JlbWVudEJ5KSBhcyBudW1iZXI7XG4gICAgY29uc3QgbmV4dDogc3RyaW5nIHwgbnVtYmVyIHwgYmlnaW50ID0gYXdhaXQgdGhpcy5pbmNyZW1lbnQoXG4gICAgICBjdXJyZW50LFxuICAgICAgKHRoaXMucGFyc2UoY291bnQpIGFzIG51bWJlcikgKiBpbmNyZW1lbnRCeVxuICAgICk7XG4gICAgY29uc3QgcmFuZ2U6IChudW1iZXIgfCBzdHJpbmcgfCBiaWdpbnQpW10gPSBbXTtcbiAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAxOyBpIDw9IGNvdW50OyBpKyspIHtcbiAgICAgIHJhbmdlLnB1c2goY3VycmVudCArIGluY3JlbWVudEJ5ICogKHRoaXMucGFyc2UoaSkgYXMgbnVtYmVyKSk7XG4gICAgfVxuICAgIGlmIChyYW5nZVtyYW5nZS5sZW5ndGggLSAxXSAhPT0gbmV4dClcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFwiTWlzY2FsY3VsYXRpb24gb2YgcmFuZ2VcIik7XG4gICAgcmV0dXJuIHJhbmdlO1xuICB9XG59XG4iXX0=
|
@@ -0,0 +1,50 @@
|
|
1
|
+
import { Sequence as Seq } from "./model/RamSequence";
|
2
|
+
import { Sequence } from "../persistence";
|
3
|
+
import { SequenceOptions } from "../interfaces";
|
4
|
+
import { RamAdapter } from "./RamAdapter";
|
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
|
+
export declare class RamSequence extends Sequence {
|
19
|
+
protected repo: Repo<Seq>;
|
20
|
+
constructor(options: SequenceOptions, adapter: RamAdapter);
|
21
|
+
/**
|
22
|
+
* @summary Retrieves the current value for the sequence
|
23
|
+
* @protected
|
24
|
+
*/
|
25
|
+
current(): Promise<string | number | bigint>;
|
26
|
+
/**
|
27
|
+
* @summary Parses the {@link Sequence} value
|
28
|
+
*
|
29
|
+
* @protected
|
30
|
+
* @param value
|
31
|
+
*/
|
32
|
+
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
|
+
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
|
+
next(): Promise<number | string | bigint>;
|
49
|
+
range(count: number): Promise<(number | string | bigint)[]>;
|
50
|
+
}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.RamStatement = void 0;
|
4
|
+
const query_1 = require("./../query/index.cjs");
|
5
|
+
const RamPaginator_1 = require("./RamPaginator.cjs");
|
6
|
+
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
7
|
+
class RamStatement extends query_1.Statement {
|
8
|
+
constructor(db) {
|
9
|
+
super(db);
|
10
|
+
}
|
11
|
+
paginate(size) {
|
12
|
+
try {
|
13
|
+
const query = this.build();
|
14
|
+
return new RamPaginator_1.RamPaginator(this, size, query);
|
15
|
+
}
|
16
|
+
catch (e) {
|
17
|
+
throw new db_decorators_1.InternalError(e);
|
18
|
+
}
|
19
|
+
}
|
20
|
+
}
|
21
|
+
exports.RamStatement = RamStatement;
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmFtU3RhdGVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3JhbS9SYW1TdGF0ZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsZ0RBQWdEO0FBSWhELHFEQUE4QztBQUM5QywyREFBd0Q7QUFFeEQsTUFBYSxZQUE4QixTQUFRLGlCQUFzQjtJQUN2RSxZQUFZLEVBQXVDO1FBQ2pELEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNaLENBQUM7SUFFRCxRQUFRLENBQUksSUFBWTtRQUN0QixJQUFJLENBQUM7WUFDSCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDM0IsT0FBTyxJQUFJLDJCQUFZLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLENBQVEsQ0FBQztRQUNwRCxDQUFDO1FBQUMsT0FBTyxDQUFNLEVBQUUsQ0FBQztZQUNoQixNQUFNLElBQUksNkJBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM3QixDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBYkQsb0NBYUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQYWdpbmF0b3IsIFN0YXRlbWVudCB9IGZyb20gXCIuLi9xdWVyeVwiO1xuaW1wb3J0IHsgUmFtUXVlcnkgfSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHsgTW9kZWwgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBBZGFwdGVyIH0gZnJvbSBcIi4uL3BlcnNpc3RlbmNlXCI7XG5pbXBvcnQgeyBSYW1QYWdpbmF0b3IgfSBmcm9tIFwiLi9SYW1QYWdpbmF0b3JcIjtcbmltcG9ydCB7IEludGVybmFsRXJyb3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnNcIjtcblxuZXhwb3J0IGNsYXNzIFJhbVN0YXRlbWVudDxNIGV4dGVuZHMgTW9kZWw+IGV4dGVuZHMgU3RhdGVtZW50PFJhbVF1ZXJ5PE0+PiB7XG4gIGNvbnN0cnVjdG9yKGRiOiBBZGFwdGVyPGFueSwgUmFtUXVlcnk8TT4sIGFueSwgYW55Pikge1xuICAgIHN1cGVyKGRiKTtcbiAgfVxuXG4gIHBhZ2luYXRlPFY+KHNpemU6IG51bWJlcik6IFByb21pc2U8UGFnaW5hdG9yPFYsIFJhbVF1ZXJ5PE0+Pj4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBxdWVyeSA9IHRoaXMuYnVpbGQoKTtcbiAgICAgIHJldHVybiBuZXcgUmFtUGFnaW5hdG9yKHRoaXMsIHNpemUsIHF1ZXJ5KSBhcyBhbnk7XG4gICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihlKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import { Paginator, Statement } from "../query";
|
2
|
+
import { RamQuery } from "./types";
|
3
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
4
|
+
import { Adapter } from "../persistence";
|
5
|
+
export declare class RamStatement<M extends Model> extends Statement<RamQuery<M>> {
|
6
|
+
constructor(db: Adapter<any, RamQuery<M>, any, any>);
|
7
|
+
paginate<V>(size: number): Promise<Paginator<V, RamQuery<M>>>;
|
8
|
+
}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.RamFromClause = void 0;
|
4
|
+
const query_1 = require("./../../query/index.cjs");
|
5
|
+
class RamFromClause extends query_1.FromClause {
|
6
|
+
constructor(clause) {
|
7
|
+
super(clause);
|
8
|
+
}
|
9
|
+
build(previous) {
|
10
|
+
previous.from = this.selector;
|
11
|
+
return previous;
|
12
|
+
}
|
13
|
+
}
|
14
|
+
exports.RamFromClause = RamFromClause;
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRnJvbUNsYXVzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yYW0vY2xhdXNlcy9Gcm9tQ2xhdXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLG1EQUF5QztBQUV6QyxNQUFhLGFBQStCLFNBQVEsa0JBR25EO0lBQ0MsWUFBWSxNQUE4QztRQUN4RCxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDaEIsQ0FBQztJQUVELEtBQUssQ0FBQyxRQUF1QjtRQUMzQixRQUFRLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDOUIsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztDQUNGO0FBWkQsc0NBWUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2RlbEFyZywgTW9kZWwgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBSYW1RdWVyeSB9IGZyb20gXCIuLi90eXBlc1wiO1xuaW1wb3J0IHsgRnJvbUNsYXVzZSB9IGZyb20gXCIuLi8uLi9xdWVyeVwiO1xuXG5leHBvcnQgY2xhc3MgUmFtRnJvbUNsYXVzZTxNIGV4dGVuZHMgTW9kZWw+IGV4dGVuZHMgRnJvbUNsYXVzZTxcbiAgUmFtUXVlcnk8YW55PixcbiAgTVxuPiB7XG4gIGNvbnN0cnVjdG9yKGNsYXVzZTogTW9kZWxBcmc8RnJvbUNsYXVzZTxSYW1RdWVyeTxhbnk+LCBNPj4pIHtcbiAgICBzdXBlcihjbGF1c2UpO1xuICB9XG5cbiAgYnVpbGQocHJldmlvdXM6IFJhbVF1ZXJ5PGFueT4pOiBSYW1RdWVyeTxhbnk+IHtcbiAgICBwcmV2aW91cy5mcm9tID0gdGhpcy5zZWxlY3RvcjtcbiAgICByZXR1cm4gcHJldmlvdXM7XG4gIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import { ModelArg, Model } from "@decaf-ts/decorator-validation";
|
2
|
+
import { RamQuery } from "../types";
|
3
|
+
import { FromClause } from "../../query";
|
4
|
+
export declare class RamFromClause<M extends Model> extends FromClause<RamQuery<any>, M> {
|
5
|
+
constructor(clause: ModelArg<FromClause<RamQuery<any>, M>>);
|
6
|
+
build(previous: RamQuery<any>): RamQuery<any>;
|
7
|
+
}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.RamInsertClause = void 0;
|
4
|
+
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
5
|
+
const query_1 = require("./../../query/index.cjs");
|
6
|
+
// noinspection JSAnnotator
|
7
|
+
class RamInsertClause extends query_1.InsertClause {
|
8
|
+
constructor(clause) {
|
9
|
+
super(clause);
|
10
|
+
}
|
11
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
12
|
+
build(query) {
|
13
|
+
throw new db_decorators_1.InternalError("Not supported");
|
14
|
+
}
|
15
|
+
}
|
16
|
+
exports.RamInsertClause = RamInsertClause;
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5zZXJ0Q2xhdXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3JhbS9jbGF1c2VzL0luc2VydENsYXVzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSwyREFBd0Q7QUFFeEQsbURBQTJDO0FBRTNDLDJCQUEyQjtBQUMzQixNQUFhLGVBQWlDLFNBQVEsb0JBR3JEO0lBQ0MsWUFBWSxNQUFnRDtRQUMxRCxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDaEIsQ0FBQztJQUVELDZEQUE2RDtJQUM3RCxLQUFLLENBQUMsS0FBb0I7UUFDeEIsTUFBTSxJQUFJLDZCQUFhLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDM0MsQ0FBQztDQUNGO0FBWkQsMENBWUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2RlbEFyZywgTW9kZWwgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBJbnRlcm5hbEVycm9yIH0gZnJvbSBcIkBkZWNhZi10cy9kYi1kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBSYW1RdWVyeSB9IGZyb20gXCIuLi90eXBlc1wiO1xuaW1wb3J0IHsgSW5zZXJ0Q2xhdXNlIH0gZnJvbSBcIi4uLy4uL3F1ZXJ5XCI7XG5cbi8vIG5vaW5zcGVjdGlvbiBKU0Fubm90YXRvclxuZXhwb3J0IGNsYXNzIFJhbUluc2VydENsYXVzZTxNIGV4dGVuZHMgTW9kZWw+IGV4dGVuZHMgSW5zZXJ0Q2xhdXNlPFxuICBSYW1RdWVyeTxhbnk+LFxuICBNXG4+IHtcbiAgY29uc3RydWN0b3IoY2xhdXNlOiBNb2RlbEFyZzxJbnNlcnRDbGF1c2U8UmFtUXVlcnk8YW55PiwgTT4+KSB7XG4gICAgc3VwZXIoY2xhdXNlKTtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgYnVpbGQocXVlcnk6IFJhbVF1ZXJ5PGFueT4pOiBSYW1RdWVyeTxhbnk+IHtcbiAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIk5vdCBzdXBwb3J0ZWRcIik7XG4gIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import { ModelArg, Model } from "@decaf-ts/decorator-validation";
|
2
|
+
import { RamQuery } from "../types";
|
3
|
+
import { InsertClause } from "../../query";
|
4
|
+
export declare class RamInsertClause<M extends Model> extends InsertClause<RamQuery<any>, M> {
|
5
|
+
constructor(clause: ModelArg<InsertClause<RamQuery<any>, M>>);
|
6
|
+
build(query: RamQuery<any>): RamQuery<any>;
|
7
|
+
}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.RamOrderByClause = void 0;
|
4
|
+
const query_1 = require("./../../query/index.cjs");
|
5
|
+
const reflection_1 = require("@decaf-ts/reflection");
|
6
|
+
class RamOrderByClause extends query_1.OrderByClause {
|
7
|
+
constructor(clause) {
|
8
|
+
super(clause);
|
9
|
+
}
|
10
|
+
build(query) {
|
11
|
+
query.sort = (el1, el2) => {
|
12
|
+
const selectors = this.selector;
|
13
|
+
const [key, direction] = selectors[0];
|
14
|
+
const type = reflection_1.Reflection.getTypeFromDecorator(el1, key);
|
15
|
+
if (!type)
|
16
|
+
throw new query_1.QueryError(`type not compatible with sorting: ${type}`);
|
17
|
+
switch (type) {
|
18
|
+
case "string":
|
19
|
+
case "String":
|
20
|
+
return ((direction === "asc" ? 1 : -1) *
|
21
|
+
el1[key].localeCompare(el2[key]));
|
22
|
+
case "number":
|
23
|
+
case "Number":
|
24
|
+
return ((direction === "asc" ? 1 : -1) *
|
25
|
+
(el1[key] -
|
26
|
+
el2[key]));
|
27
|
+
case "object":
|
28
|
+
case "Object":
|
29
|
+
if (el1[key] instanceof Date &&
|
30
|
+
el2[key] instanceof Date)
|
31
|
+
return ((direction === "asc" ? 1 : -1) *
|
32
|
+
(el1[key].valueOf() -
|
33
|
+
el2[key].valueOf()));
|
34
|
+
throw new query_1.QueryError(`Sorting not supported for not date classes`);
|
35
|
+
default:
|
36
|
+
throw new query_1.QueryError(`sorting not supported for type ${type}`);
|
37
|
+
}
|
38
|
+
};
|
39
|
+
return query;
|
40
|
+
}
|
41
|
+
}
|
42
|
+
exports.RamOrderByClause = RamOrderByClause;
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3JkZXJCeUNsYXVzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yYW0vY2xhdXNlcy9PcmRlckJ5Q2xhdXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLG1EQUF5RTtBQUV6RSxxREFBa0Q7QUFFbEQsTUFBYSxnQkFBaUIsU0FBUSxxQkFBNEI7SUFDaEUsWUFBWSxNQUE4QztRQUN4RCxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDaEIsQ0FBQztJQUVELEtBQUssQ0FBQyxLQUFvQjtRQUN4QixLQUFLLENBQUMsSUFBSSxHQUFHLENBQUMsR0FBVSxFQUFFLEdBQVUsRUFBRSxFQUFFO1lBQ3RDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxRQUE2QixDQUFDO1lBQ3JELE1BQU0sQ0FBQyxHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3RDLE1BQU0sSUFBSSxHQUFHLHVCQUFVLENBQUMsb0JBQW9CLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxJQUFJO2dCQUNQLE1BQU0sSUFBSSxrQkFBVSxDQUFDLHFDQUFxQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBRXBFLFFBQVEsSUFBSSxFQUFFLENBQUM7Z0JBQ2IsS0FBSyxRQUFRLENBQUM7Z0JBQ2QsS0FBSyxRQUFRO29CQUNYLE9BQU8sQ0FDTCxDQUFDLFNBQVMsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7d0JBQzdCLEdBQUcsQ0FBQyxHQUFrQixDQUF1QixDQUFDLGFBQWEsQ0FDMUQsR0FBRyxDQUFDLEdBQWtCLENBQXNCLENBQzdDLENBQ0YsQ0FBQztnQkFDSixLQUFLLFFBQVEsQ0FBQztnQkFDZCxLQUFLLFFBQVE7b0JBQ1gsT0FBTyxDQUNMLENBQUMsU0FBUyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzt3QkFDOUIsQ0FBRSxHQUFHLENBQUMsR0FBa0IsQ0FBdUI7NEJBQzVDLEdBQUcsQ0FBQyxHQUFrQixDQUF1QixDQUFDLENBQ2xELENBQUM7Z0JBQ0osS0FBSyxRQUFRLENBQUM7Z0JBQ2QsS0FBSyxRQUFRO29CQUNYLElBQ0UsR0FBRyxDQUFDLEdBQWtCLENBQUMsWUFBWSxJQUFJO3dCQUN2QyxHQUFHLENBQUMsR0FBa0IsQ0FBQyxZQUFZLElBQUk7d0JBRXZDLE9BQU8sQ0FDTCxDQUFDLFNBQVMsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7NEJBQzlCLENBQUUsR0FBRyxDQUFDLEdBQWtCLENBQXFCLENBQUMsT0FBTyxFQUFFO2dDQUNwRCxHQUFHLENBQUMsR0FBa0IsQ0FBcUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUMxRCxDQUFDO29CQUNKLE1BQU0sSUFBSSxrQkFBVSxDQUFDLDRDQUE0QyxDQUFDLENBQUM7Z0JBQ3JFO29CQUNFLE1BQU0sSUFBSSxrQkFBVSxDQUFDLGtDQUFrQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ25FLENBQUM7UUFDSCxDQUFDLENBQUM7UUFDRixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7Q0FDRjtBQS9DRCw0Q0ErQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSYW1RdWVyeSB9IGZyb20gXCIuLi90eXBlc1wiO1xuaW1wb3J0IHsgT3JkZXJCeUNsYXVzZSwgT3JkZXJCeVNlbGVjdG9yLCBRdWVyeUVycm9yIH0gZnJvbSBcIi4uLy4uL3F1ZXJ5XCI7XG5pbXBvcnQgeyBNb2RlbCwgTW9kZWxBcmcgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBSZWZsZWN0aW9uIH0gZnJvbSBcIkBkZWNhZi10cy9yZWZsZWN0aW9uXCI7XG5cbmV4cG9ydCBjbGFzcyBSYW1PcmRlckJ5Q2xhdXNlIGV4dGVuZHMgT3JkZXJCeUNsYXVzZTxSYW1RdWVyeTxhbnk+PiB7XG4gIGNvbnN0cnVjdG9yKGNsYXVzZTogTW9kZWxBcmc8T3JkZXJCeUNsYXVzZTxSYW1RdWVyeTxhbnk+Pj4pIHtcbiAgICBzdXBlcihjbGF1c2UpO1xuICB9XG5cbiAgYnVpbGQocXVlcnk6IFJhbVF1ZXJ5PGFueT4pOiBSYW1RdWVyeTxhbnk+IHtcbiAgICBxdWVyeS5zb3J0ID0gKGVsMTogTW9kZWwsIGVsMjogTW9kZWwpID0+IHtcbiAgICAgIGNvbnN0IHNlbGVjdG9ycyA9IHRoaXMuc2VsZWN0b3IgYXMgT3JkZXJCeVNlbGVjdG9yW107XG4gICAgICBjb25zdCBba2V5LCBkaXJlY3Rpb25dID0gc2VsZWN0b3JzWzBdO1xuICAgICAgY29uc3QgdHlwZSA9IFJlZmxlY3Rpb24uZ2V0VHlwZUZyb21EZWNvcmF0b3IoZWwxLCBrZXkpO1xuICAgICAgaWYgKCF0eXBlKVxuICAgICAgICB0aHJvdyBuZXcgUXVlcnlFcnJvcihgdHlwZSBub3QgY29tcGF0aWJsZSB3aXRoIHNvcnRpbmc6ICR7dHlwZX1gKTtcblxuICAgICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICAgIGNhc2UgXCJzdHJpbmdcIjpcbiAgICAgICAgY2FzZSBcIlN0cmluZ1wiOlxuICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAoZGlyZWN0aW9uID09PSBcImFzY1wiID8gMSA6IC0xKSAqXG4gICAgICAgICAgICAoZWwxW2tleSBhcyBrZXlvZiBNb2RlbF0gYXMgdW5rbm93biBhcyBzdHJpbmcpLmxvY2FsZUNvbXBhcmUoXG4gICAgICAgICAgICAgIGVsMltrZXkgYXMga2V5b2YgTW9kZWxdIGFzIHVua25vd24gYXMgc3RyaW5nXG4gICAgICAgICAgICApXG4gICAgICAgICAgKTtcbiAgICAgICAgY2FzZSBcIm51bWJlclwiOlxuICAgICAgICBjYXNlIFwiTnVtYmVyXCI6XG4gICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIChkaXJlY3Rpb24gPT09IFwiYXNjXCIgPyAxIDogLTEpICpcbiAgICAgICAgICAgICgoZWwxW2tleSBhcyBrZXlvZiBNb2RlbF0gYXMgdW5rbm93biBhcyBudW1iZXIpIC1cbiAgICAgICAgICAgICAgKGVsMltrZXkgYXMga2V5b2YgTW9kZWxdIGFzIHVua25vd24gYXMgbnVtYmVyKSlcbiAgICAgICAgICApO1xuICAgICAgICBjYXNlIFwib2JqZWN0XCI6XG4gICAgICAgIGNhc2UgXCJPYmplY3RcIjpcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBlbDFba2V5IGFzIGtleW9mIE1vZGVsXSBpbnN0YW5jZW9mIERhdGUgJiZcbiAgICAgICAgICAgIGVsMltrZXkgYXMga2V5b2YgTW9kZWxdIGluc3RhbmNlb2YgRGF0ZVxuICAgICAgICAgIClcbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgIChkaXJlY3Rpb24gPT09IFwiYXNjXCIgPyAxIDogLTEpICpcbiAgICAgICAgICAgICAgKChlbDFba2V5IGFzIGtleW9mIE1vZGVsXSBhcyB1bmtub3duIGFzIERhdGUpLnZhbHVlT2YoKSAtXG4gICAgICAgICAgICAgICAgKGVsMltrZXkgYXMga2V5b2YgTW9kZWxdIGFzIHVua25vd24gYXMgRGF0ZSkudmFsdWVPZigpKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB0aHJvdyBuZXcgUXVlcnlFcnJvcihgU29ydGluZyBub3Qgc3VwcG9ydGVkIGZvciBub3QgZGF0ZSBjbGFzc2VzYCk7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgdGhyb3cgbmV3IFF1ZXJ5RXJyb3IoYHNvcnRpbmcgbm90IHN1cHBvcnRlZCBmb3IgdHlwZSAke3R5cGV9YCk7XG4gICAgICB9XG4gICAgfTtcbiAgICByZXR1cm4gcXVlcnk7XG4gIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import { RamQuery } from "../types";
|
2
|
+
import { OrderByClause } from "../../query";
|
3
|
+
import { ModelArg } from "@decaf-ts/decorator-validation";
|
4
|
+
export declare class RamOrderByClause extends OrderByClause<RamQuery<any>> {
|
5
|
+
constructor(clause: ModelArg<OrderByClause<RamQuery<any>>>);
|
6
|
+
build(query: RamQuery<any>): RamQuery<any>;
|
7
|
+
}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.RamSelectClause = void 0;
|
4
|
+
const query_1 = require("./../../query/index.cjs");
|
5
|
+
class RamSelectClause extends query_1.SelectClause {
|
6
|
+
constructor(clause) {
|
7
|
+
super(clause);
|
8
|
+
}
|
9
|
+
build(query) {
|
10
|
+
if (!this.selector || this.selector === query_1.Const.FULL_RECORD) {
|
11
|
+
query.select = undefined;
|
12
|
+
return query;
|
13
|
+
}
|
14
|
+
const selector = typeof this.selector === "string" ? [this.selector] : this.selector;
|
15
|
+
query.select = selector;
|
16
|
+
return query;
|
17
|
+
}
|
18
|
+
}
|
19
|
+
exports.RamSelectClause = RamSelectClause;
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VsZWN0Q2xhdXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3JhbS9jbGF1c2VzL1NlbGVjdENsYXVzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSxtREFBa0Q7QUFFbEQsTUFBYSxlQUFpQyxTQUFRLG9CQUdyRDtJQUNDLFlBQVksTUFBZ0Q7UUFDMUQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2hCLENBQUM7SUFFRCxLQUFLLENBQUMsS0FBb0I7UUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxhQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDMUQsS0FBSyxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUM7WUFDekIsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBRUQsTUFBTSxRQUFRLEdBQ1osT0FBTyxJQUFJLENBQUMsUUFBUSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDdEUsS0FBSyxDQUFDLE1BQU0sR0FBRyxRQUF1QixDQUFDO1FBQ3ZDLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztDQUNGO0FBbkJELDBDQW1CQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZGVsQXJnLCBNb2RlbCB9IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcbmltcG9ydCB7IFJhbVF1ZXJ5IH0gZnJvbSBcIi4uL3R5cGVzXCI7XG5pbXBvcnQgeyBDb25zdCwgU2VsZWN0Q2xhdXNlIH0gZnJvbSBcIi4uLy4uL3F1ZXJ5XCI7XG5cbmV4cG9ydCBjbGFzcyBSYW1TZWxlY3RDbGF1c2U8TSBleHRlbmRzIE1vZGVsPiBleHRlbmRzIFNlbGVjdENsYXVzZTxcbiAgUmFtUXVlcnk8YW55PixcbiAgTVxuPiB7XG4gIGNvbnN0cnVjdG9yKGNsYXVzZTogTW9kZWxBcmc8U2VsZWN0Q2xhdXNlPFJhbVF1ZXJ5PGFueT4sIE0+Pikge1xuICAgIHN1cGVyKGNsYXVzZSk7XG4gIH1cblxuICBidWlsZChxdWVyeTogUmFtUXVlcnk8YW55Pik6IFJhbVF1ZXJ5PGFueT4ge1xuICAgIGlmICghdGhpcy5zZWxlY3RvciB8fCB0aGlzLnNlbGVjdG9yID09PSBDb25zdC5GVUxMX1JFQ09SRCkge1xuICAgICAgcXVlcnkuc2VsZWN0ID0gdW5kZWZpbmVkO1xuICAgICAgcmV0dXJuIHF1ZXJ5O1xuICAgIH1cblxuICAgIGNvbnN0IHNlbGVjdG9yID1cbiAgICAgIHR5cGVvZiB0aGlzLnNlbGVjdG9yID09PSBcInN0cmluZ1wiID8gW3RoaXMuc2VsZWN0b3JdIDogdGhpcy5zZWxlY3RvcjtcbiAgICBxdWVyeS5zZWxlY3QgPSBzZWxlY3RvciBhcyAoa2V5b2YgTSlbXTtcbiAgICByZXR1cm4gcXVlcnk7XG4gIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import { ModelArg, Model } from "@decaf-ts/decorator-validation";
|
2
|
+
import { RamQuery } from "../types";
|
3
|
+
import { SelectClause } from "../../query";
|
4
|
+
export declare class RamSelectClause<M extends Model> extends SelectClause<RamQuery<any>, M> {
|
5
|
+
constructor(clause: ModelArg<SelectClause<RamQuery<any>, M>>);
|
6
|
+
build(query: RamQuery<any>): RamQuery<any>;
|
7
|
+
}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.RamValuesClause = void 0;
|
4
|
+
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
5
|
+
const query_1 = require("./../../query/index.cjs");
|
6
|
+
class RamValuesClause extends query_1.ValuesClause {
|
7
|
+
constructor(clause) {
|
8
|
+
super(clause);
|
9
|
+
}
|
10
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
11
|
+
build(previous) {
|
12
|
+
throw new db_decorators_1.InternalError("Not implemented");
|
13
|
+
}
|
14
|
+
}
|
15
|
+
exports.RamValuesClause = RamValuesClause;
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVmFsdWVzQ2xhdXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3JhbS9jbGF1c2VzL1ZhbHVlc0NsYXVzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSwyREFBd0Q7QUFFeEQsbURBQTJDO0FBRTNDLE1BQWEsZUFBaUMsU0FBUSxvQkFHckQ7SUFDQyxZQUFZLE1BQWdEO1FBQzFELEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoQixDQUFDO0lBRUQsNkRBQTZEO0lBQzdELEtBQUssQ0FBQyxRQUF1QjtRQUMzQixNQUFNLElBQUksNkJBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7Q0FDRjtBQVpELDBDQVlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kZWxBcmcsIE1vZGVsIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgSW50ZXJuYWxFcnJvciB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgUmFtUXVlcnkgfSBmcm9tIFwiLi4vdHlwZXNcIjtcbmltcG9ydCB7IFZhbHVlc0NsYXVzZSB9IGZyb20gXCIuLi8uLi9xdWVyeVwiO1xuXG5leHBvcnQgY2xhc3MgUmFtVmFsdWVzQ2xhdXNlPE0gZXh0ZW5kcyBNb2RlbD4gZXh0ZW5kcyBWYWx1ZXNDbGF1c2U8XG4gIFJhbVF1ZXJ5PGFueT4sXG4gIE1cbj4ge1xuICBjb25zdHJ1Y3RvcihjbGF1c2U6IE1vZGVsQXJnPFZhbHVlc0NsYXVzZTxSYW1RdWVyeTxhbnk+LCBNPj4pIHtcbiAgICBzdXBlcihjbGF1c2UpO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICBidWlsZChwcmV2aW91czogUmFtUXVlcnk8YW55Pik6IFJhbVF1ZXJ5PGFueT4ge1xuICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFwiTm90IGltcGxlbWVudGVkXCIpO1xuICB9XG59XG4iXX0=
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import { ModelArg, Model } from "@decaf-ts/decorator-validation";
|
2
|
+
import { RamQuery } from "../types";
|
3
|
+
import { ValuesClause } from "../../query";
|
4
|
+
export declare class RamValuesClause<M extends Model> extends ValuesClause<RamQuery<any>, M> {
|
5
|
+
constructor(clause: ModelArg<ValuesClause<RamQuery<any>, M>>);
|
6
|
+
build(previous: RamQuery<any>): RamQuery<any>;
|
7
|
+
}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.RamWhereClause = void 0;
|
4
|
+
const query_1 = require("./../../query/index.cjs");
|
5
|
+
class RamWhereClause extends query_1.WhereClause {
|
6
|
+
constructor(clause) {
|
7
|
+
super(clause);
|
8
|
+
}
|
9
|
+
build(query) {
|
10
|
+
query.where = this.adapter.parseCondition(this.condition).where;
|
11
|
+
return query;
|
12
|
+
}
|
13
|
+
}
|
14
|
+
exports.RamWhereClause = RamWhereClause;
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV2hlcmVDbGF1c2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmFtL2NsYXVzZXMvV2hlcmVDbGF1c2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsbURBQXFEO0FBRXJELE1BQWEsY0FBZSxTQUFRLG1CQUEwQjtJQUM1RCxZQUFZLE1BQTRDO1FBQ3RELEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoQixDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQW9CO1FBQ3hCLEtBQUssQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQ3ZDLElBQUksQ0FBQyxTQUFzQixDQUM1QixDQUFDLEtBQUssQ0FBQztRQUNSLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztDQUNGO0FBWEQsd0NBV0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2RlbEFyZyB9IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcbmltcG9ydCB7IFJhbVF1ZXJ5IH0gZnJvbSBcIi4uL3R5cGVzXCI7XG5pbXBvcnQgeyBDb25kaXRpb24sIFdoZXJlQ2xhdXNlIH0gZnJvbSBcIi4uLy4uL3F1ZXJ5XCI7XG5cbmV4cG9ydCBjbGFzcyBSYW1XaGVyZUNsYXVzZSBleHRlbmRzIFdoZXJlQ2xhdXNlPFJhbVF1ZXJ5PGFueT4+IHtcbiAgY29uc3RydWN0b3IoY2xhdXNlOiBNb2RlbEFyZzxXaGVyZUNsYXVzZTxSYW1RdWVyeTxhbnk+Pj4pIHtcbiAgICBzdXBlcihjbGF1c2UpO1xuICB9XG5cbiAgYnVpbGQocXVlcnk6IFJhbVF1ZXJ5PGFueT4pOiBSYW1RdWVyeTxhbnk+IHtcbiAgICBxdWVyeS53aGVyZSA9IHRoaXMuYWRhcHRlci5wYXJzZUNvbmRpdGlvbihcbiAgICAgIHRoaXMuY29uZGl0aW9uIGFzIENvbmRpdGlvblxuICAgICkud2hlcmU7XG4gICAgcmV0dXJuIHF1ZXJ5O1xuICB9XG59XG4iXX0=
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import { ModelArg } from "@decaf-ts/decorator-validation";
|
2
|
+
import { RamQuery } from "../types";
|
3
|
+
import { WhereClause } from "../../query";
|
4
|
+
export declare class RamWhereClause extends WhereClause<RamQuery<any>> {
|
5
|
+
constructor(clause: ModelArg<WhereClause<RamQuery<any>>>);
|
6
|
+
build(query: RamQuery<any>): RamQuery<any>;
|
7
|
+
}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
+
if (k2 === undefined) k2 = k;
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
+
}
|
8
|
+
Object.defineProperty(o, k2, desc);
|
9
|
+
}) : (function(o, m, k, k2) {
|
10
|
+
if (k2 === undefined) k2 = k;
|
11
|
+
o[k2] = m[k];
|
12
|
+
}));
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
|
+
};
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
+
__exportStar(require("./FromClause.cjs"), exports);
|
18
|
+
__exportStar(require("./InsertClause.cjs"), exports);
|
19
|
+
__exportStar(require("./OrderByClause.cjs"), exports);
|
20
|
+
__exportStar(require("./SelectClause.cjs"), exports);
|
21
|
+
__exportStar(require("./ValuesClause.cjs"), exports);
|
22
|
+
__exportStar(require("./WhereClause.cjs"), exports);
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmFtL2NsYXVzZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1EQUE2QjtBQUM3QixxREFBK0I7QUFDL0Isc0RBQWdDO0FBQ2hDLHFEQUErQjtBQUMvQixxREFBK0I7QUFDL0Isb0RBQThCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vRnJvbUNsYXVzZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vSW5zZXJ0Q2xhdXNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9PcmRlckJ5Q2xhdXNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9TZWxlY3RDbGF1c2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1ZhbHVlc0NsYXVzZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vV2hlcmVDbGF1c2VcIjtcbiJdfQ==
|
@@ -0,0 +1,26 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
+
if (k2 === undefined) k2 = k;
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
+
}
|
8
|
+
Object.defineProperty(o, k2, desc);
|
9
|
+
}) : (function(o, m, k, k2) {
|
10
|
+
if (k2 === undefined) k2 = k;
|
11
|
+
o[k2] = m[k];
|
12
|
+
}));
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
|
+
};
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
+
__exportStar(require("./clauses/index.cjs"), exports);
|
18
|
+
__exportStar(require("./model/index.cjs"), exports);
|
19
|
+
__exportStar(require("./RamAdapter.cjs"), exports);
|
20
|
+
__exportStar(require("./RamClauseFactory.cjs"), exports);
|
21
|
+
__exportStar(require("./RamContext.cjs"), exports);
|
22
|
+
__exportStar(require("./RamPaginator.cjs"), exports);
|
23
|
+
__exportStar(require("./RamSequence.cjs"), exports);
|
24
|
+
__exportStar(require("./RamStatement.cjs"), exports);
|
25
|
+
__exportStar(require("./types.cjs"), exports);
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmFtL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxzREFBMEI7QUFDMUIsb0RBQXdCO0FBQ3hCLG1EQUE2QjtBQUM3Qix5REFBbUM7QUFDbkMsbURBQTZCO0FBQzdCLHFEQUErQjtBQUMvQixvREFBOEI7QUFDOUIscURBQStCO0FBQy9CLDhDQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2NsYXVzZXNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL21vZGVsXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9SYW1BZGFwdGVyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9SYW1DbGF1c2VGYWN0b3J5XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9SYW1Db250ZXh0XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9SYW1QYWdpbmF0b3JcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1JhbVNlcXVlbmNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9SYW1TdGF0ZW1lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3R5cGVzXCI7XG4iXX0=
|
@@ -0,0 +1,9 @@
|
|
1
|
+
export * from "./clauses";
|
2
|
+
export * from "./model";
|
3
|
+
export * from "./RamAdapter";
|
4
|
+
export * from "./RamClauseFactory";
|
5
|
+
export * from "./RamContext";
|
6
|
+
export * from "./RamPaginator";
|
7
|
+
export * from "./RamSequence";
|
8
|
+
export * from "./RamStatement";
|
9
|
+
export * from "./types";
|
@@ -0,0 +1,36 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
7
|
+
};
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
10
|
+
};
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
12
|
+
exports.Sequence = void 0;
|
13
|
+
const decorator_validation_1 = require("@decaf-ts/decorator-validation");
|
14
|
+
const model_1 = require("./../../model/index.cjs");
|
15
|
+
const identity_1 = require("./../../identity/index.cjs");
|
16
|
+
let Sequence = class Sequence extends model_1.BaseModel {
|
17
|
+
constructor(seq) {
|
18
|
+
super(seq);
|
19
|
+
}
|
20
|
+
};
|
21
|
+
exports.Sequence = Sequence;
|
22
|
+
__decorate([
|
23
|
+
(0, identity_1.pk)(),
|
24
|
+
__metadata("design:type", String)
|
25
|
+
], Sequence.prototype, "id", void 0);
|
26
|
+
__decorate([
|
27
|
+
(0, decorator_validation_1.required)(),
|
28
|
+
(0, model_1.index)(),
|
29
|
+
__metadata("design:type", Object)
|
30
|
+
], Sequence.prototype, "current", void 0);
|
31
|
+
exports.Sequence = Sequence = __decorate([
|
32
|
+
(0, model_1.table)("__RamSequence"),
|
33
|
+
(0, decorator_validation_1.model)(),
|
34
|
+
__metadata("design:paramtypes", [Object])
|
35
|
+
], Sequence);
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmFtU2VxdWVuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmFtL21vZGVsL1JhbVNlcXVlbmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLHlFQUFpRTtBQUVqRSxtREFBc0Q7QUFDdEQseURBQW9DO0FBSTdCLElBQU0sUUFBUSxHQUFkLE1BQU0sUUFBUyxTQUFRLGlCQUFTO0lBb0JyQyxZQUFZLEdBQXdCO1FBQ2xDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNiLENBQUM7Q0FDRixDQUFBO0FBdkJZLDRCQUFRO0FBUW5CO0lBREMsSUFBQSxhQUFFLEdBQUU7O29DQUNPO0FBVVo7SUFGQyxJQUFBLCtCQUFRLEdBQUU7SUFDVixJQUFBLGFBQUssR0FBRTs7eUNBQ2tCO21CQWxCZixRQUFRO0lBRnBCLElBQUEsYUFBSyxFQUFDLGVBQWUsQ0FBQztJQUN0QixJQUFBLDRCQUFLLEdBQUU7O0dBQ0ssUUFBUSxDQXVCcEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtb2RlbCwgcmVxdWlyZWQgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgdHlwZSB7IE1vZGVsQXJnIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgQmFzZU1vZGVsLCBpbmRleCwgdGFibGUgfSBmcm9tIFwiLi4vLi4vbW9kZWxcIjtcbmltcG9ydCB7IHBrIH0gZnJvbSBcIi4uLy4uL2lkZW50aXR5XCI7XG5cbkB0YWJsZShcIl9fUmFtU2VxdWVuY2VcIilcbkBtb2RlbCgpXG5leHBvcnQgY2xhc3MgU2VxdWVuY2UgZXh0ZW5kcyBCYXNlTW9kZWwge1xuICAvKipcbiAgICogQHN1bW1hcnkgdGhlIFByaW1hcnkga2V5IGZvciB0aGUgREJTZXF1ZW5jZVxuICAgKiBAcHJvcCBuYW1lXG4gICAqXG4gICAqIEBzZWUgcGtcbiAgICovXG4gIEBwaygpXG4gIGlkITogc3RyaW5nO1xuICAvKipcbiAgICogQHN1bW1hcnkgdGhlIGN1cnJlbnQgdmFsdWUgZm9yIHRoZSBEQlNlcXVlbmNlXG4gICAqIEBwcm9wIGN1cnJlbnRcbiAgICpcbiAgICogQHNlZSByZXF1aXJlZFxuICAgKiBAc2VlIGluZGV4XG4gICAqL1xuICBAcmVxdWlyZWQoKVxuICBAaW5kZXgoKVxuICBjdXJyZW50ITogc3RyaW5nIHwgbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKHNlcT86IE1vZGVsQXJnPFNlcXVlbmNlPikge1xuICAgIHN1cGVyKHNlcSk7XG4gIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,20 @@
|
|
1
|
+
import type { ModelArg } from "@decaf-ts/decorator-validation";
|
2
|
+
import { BaseModel } from "../../model";
|
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
|
+
id: string;
|
11
|
+
/**
|
12
|
+
* @summary the current value for the DBSequence
|
13
|
+
* @prop current
|
14
|
+
*
|
15
|
+
* @see required
|
16
|
+
* @see index
|
17
|
+
*/
|
18
|
+
current: string | number;
|
19
|
+
constructor(seq?: ModelArg<Sequence>);
|
20
|
+
}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
+
if (k2 === undefined) k2 = k;
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
+
}
|
8
|
+
Object.defineProperty(o, k2, desc);
|
9
|
+
}) : (function(o, m, k, k2) {
|
10
|
+
if (k2 === undefined) k2 = k;
|
11
|
+
o[k2] = m[k];
|
12
|
+
}));
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
|
+
};
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
+
__exportStar(require("./RamSequence.cjs"), exports);
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmFtL21vZGVsL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvREFBOEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9SYW1TZXF1ZW5jZVwiO1xuIl19
|
@@ -0,0 +1 @@
|
|
1
|
+
export * from "./RamSequence";
|
@@ -0,0 +1,3 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmFtL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25zdHJ1Y3RvciwgTW9kZWwgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBSZXBvc2l0b3J5IH0gZnJvbSBcIi4uL3JlcG9zaXRvcnlcIjtcbmltcG9ydCB7IENvbnRleHQsIFJlcG9zaXRvcnlGbGFncyB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgUmFtQWRhcHRlciB9IGZyb20gXCIuL1JhbUFkYXB0ZXJcIjtcblxuZXhwb3J0IHR5cGUgUmFtU3RvcmFnZSA9IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGFueT4+O1xuXG5leHBvcnQgdHlwZSBSYW1RdWVyeTxNIGV4dGVuZHMgTW9kZWw+ID0ge1xuICBzZWxlY3Q6IHVuZGVmaW5lZCB8IGtleW9mIE0gfCAoa2V5b2YgTSlbXTtcbiAgZnJvbTogc3RyaW5nIHwgTSB8IENvbnN0cnVjdG9yPE0+O1xuICB3aGVyZTogKGVsOiBNKSA9PiBib29sZWFuO1xuICBzb3J0PzogKGVsOiBNLCBlbDI6IE0pID0+IG51bWJlcjtcbiAgbGltaXQ/OiBudW1iZXI7XG4gIHNraXA/OiBudW1iZXI7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIFJhbUZsYWdzIGV4dGVuZHMgUmVwb3NpdG9yeUZsYWdzIHtcbiAgVVVJRDogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBSYW1SZXBvc2l0b3J5PE0gZXh0ZW5kcyBNb2RlbD4gPSBSZXBvc2l0b3J5PFxuICBNLFxuICBSYW1RdWVyeTxNPixcbiAgUmFtQWRhcHRlcixcbiAgUmFtRmxhZ3MsXG4gIENvbnRleHQ8UmFtRmxhZ3M+XG4+O1xuIl19
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import { Constructor, Model } from "@decaf-ts/decorator-validation";
|
2
|
+
import { Repository } from "../repository";
|
3
|
+
import { Context, RepositoryFlags } from "@decaf-ts/db-decorators";
|
4
|
+
import { RamAdapter } from "./RamAdapter";
|
5
|
+
export type RamStorage = Record<string, Record<string, any>>;
|
6
|
+
export type RamQuery<M extends Model> = {
|
7
|
+
select: undefined | keyof M | (keyof M)[];
|
8
|
+
from: string | M | Constructor<M>;
|
9
|
+
where: (el: M) => boolean;
|
10
|
+
sort?: (el: M, el2: M) => number;
|
11
|
+
limit?: number;
|
12
|
+
skip?: number;
|
13
|
+
};
|
14
|
+
export interface RamFlags extends RepositoryFlags {
|
15
|
+
UUID: string;
|
16
|
+
}
|
17
|
+
export type RamRepository<M extends Model> = Repository<M, RamQuery<M>, RamAdapter, RamFlags, Context<RamFlags>>;
|