@decaf-ts/for-couchdb 0.3.0 → 0.3.2
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/LICENSE.md +646 -144
- package/README.md +371 -1
- package/dist/for-couchdb.cjs +907 -326
- package/dist/for-couchdb.esm.cjs +910 -329
- package/lib/adapter.cjs +249 -41
- package/lib/adapter.d.ts +243 -17
- package/lib/constants.cjs +30 -2
- package/lib/constants.d.ts +28 -0
- package/lib/errors.cjs +19 -2
- package/lib/errors.d.ts +17 -0
- package/lib/esm/adapter.d.ts +243 -17
- package/lib/esm/adapter.js +249 -41
- package/lib/esm/constants.d.ts +28 -0
- package/lib/esm/constants.js +30 -2
- package/lib/esm/errors.d.ts +17 -0
- package/lib/esm/errors.js +19 -2
- package/lib/esm/index.d.ts +6 -13
- package/lib/esm/index.js +7 -14
- package/lib/esm/indexes/generator.d.ts +47 -0
- package/lib/esm/indexes/generator.js +58 -1
- package/lib/esm/interfaces/CouchDBRepository.d.ts +10 -0
- package/lib/esm/interfaces/CouchDBRepository.js +1 -1
- package/lib/esm/model/CouchDBSequence.d.ts +15 -9
- package/lib/esm/model/CouchDBSequence.js +12 -1
- package/lib/esm/query/Paginator.d.ts +117 -4
- package/lib/esm/query/Paginator.js +128 -23
- package/lib/esm/query/Statement.d.ts +141 -8
- package/lib/esm/query/Statement.js +256 -28
- package/lib/esm/query/constants.d.ts +43 -0
- package/lib/esm/query/constants.js +44 -1
- package/lib/esm/query/index.d.ts +4 -1
- package/lib/esm/query/index.js +5 -2
- package/lib/esm/query/translate.d.ts +31 -0
- package/lib/esm/query/translate.js +32 -1
- package/lib/esm/sequences/Sequence.d.ts +0 -2
- package/lib/esm/sequences/Sequence.js +5 -9
- package/lib/esm/types.d.ts +55 -12
- package/lib/esm/types.js +1 -1
- package/lib/esm/utils.d.ts +105 -0
- package/lib/esm/utils.js +106 -1
- package/lib/index.cjs +7 -14
- package/lib/index.d.ts +6 -13
- package/lib/indexes/generator.cjs +58 -1
- package/lib/indexes/generator.d.ts +47 -0
- package/lib/interfaces/CouchDBRepository.cjs +1 -1
- package/lib/interfaces/CouchDBRepository.d.ts +10 -0
- package/lib/model/CouchDBSequence.cjs +12 -1
- package/lib/model/CouchDBSequence.d.ts +15 -9
- package/lib/query/Paginator.cjs +126 -21
- package/lib/query/Paginator.d.ts +117 -4
- package/lib/query/Statement.cjs +255 -27
- package/lib/query/Statement.d.ts +141 -8
- package/lib/query/constants.cjs +45 -2
- package/lib/query/constants.d.ts +43 -0
- package/lib/query/index.cjs +5 -2
- package/lib/query/index.d.ts +4 -1
- package/lib/query/translate.cjs +32 -1
- package/lib/query/translate.d.ts +31 -0
- package/lib/sequences/Sequence.cjs +5 -9
- package/lib/sequences/Sequence.d.ts +0 -2
- package/lib/types.cjs +1 -1
- package/lib/types.d.ts +55 -12
- package/lib/utils.cjs +106 -1
- package/lib/utils.d.ts +105 -0
- package/package.json +2 -2
- package/lib/esm/query/FromClause.d.ts +0 -7
- package/lib/esm/query/FromClause.js +0 -20
- package/lib/esm/query/InsertClause.d.ts +0 -7
- package/lib/esm/query/InsertClause.js +0 -13
- package/lib/esm/query/SelectClause.d.ts +0 -7
- package/lib/esm/query/SelectClause.js +0 -16
- package/lib/esm/query/ValuesClause.d.ts +0 -7
- package/lib/esm/query/ValuesClause.js +0 -12
- package/lib/esm/query/WhereClause.d.ts +0 -7
- package/lib/esm/query/WhereClause.js +0 -57
- package/lib/esm/query/factory.d.ts +0 -25
- package/lib/esm/query/factory.js +0 -117
- package/lib/esm/sequences/utils.d.ts +0 -1
- package/lib/esm/sequences/utils.js +0 -16
- package/lib/query/FromClause.cjs +0 -24
- package/lib/query/FromClause.d.ts +0 -7
- package/lib/query/InsertClause.cjs +0 -17
- package/lib/query/InsertClause.d.ts +0 -7
- package/lib/query/SelectClause.cjs +0 -20
- package/lib/query/SelectClause.d.ts +0 -7
- package/lib/query/ValuesClause.cjs +0 -16
- package/lib/query/ValuesClause.d.ts +0 -7
- package/lib/query/WhereClause.cjs +0 -61
- package/lib/query/WhereClause.d.ts +0 -7
- package/lib/query/factory.cjs +0 -121
- package/lib/query/factory.d.ts +0 -25
- package/lib/sequences/utils.cjs +0 -19
- package/lib/sequences/utils.d.ts +0 -1
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { ValuesClause } from "@decaf-ts/core";
|
|
2
|
-
import { ModelArg, Model } from "@decaf-ts/decorator-validation";
|
|
3
|
-
import { MangoQuery } from "../types";
|
|
4
|
-
export declare class CouchDBValuesClause<M extends Model> extends ValuesClause<MangoQuery, M> {
|
|
5
|
-
constructor(clause: ModelArg<ValuesClause<MangoQuery, M>>);
|
|
6
|
-
build(previous: MangoQuery): MangoQuery;
|
|
7
|
-
}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CouchDBWhereClause = void 0;
|
|
4
|
-
const core_1 = require("@decaf-ts/core");
|
|
5
|
-
const constants_1 = require("./constants.cjs");
|
|
6
|
-
const decorator_validation_1 = require("@decaf-ts/decorator-validation");
|
|
7
|
-
const constants_2 = require("./../constants.cjs");
|
|
8
|
-
class CouchDBWhereClause extends core_1.WhereClause {
|
|
9
|
-
constructor(clause) {
|
|
10
|
-
super(clause);
|
|
11
|
-
}
|
|
12
|
-
build(query) {
|
|
13
|
-
const condition = this.adapter.parseCondition(core_1.Condition.and(this.condition, core_1.Condition.attribute(constants_2.CouchDBKeys.TABLE).eq(query.selector[constants_2.CouchDBKeys.TABLE]))).selector;
|
|
14
|
-
const selectorKeys = Object.keys(condition);
|
|
15
|
-
if (selectorKeys.length === 1 &&
|
|
16
|
-
Object.values(constants_1.CouchDBGroupOperator).indexOf(selectorKeys[0]) !== -1)
|
|
17
|
-
switch (selectorKeys[0]) {
|
|
18
|
-
case constants_1.CouchDBGroupOperator.AND:
|
|
19
|
-
condition[constants_1.CouchDBGroupOperator.AND] = [
|
|
20
|
-
...Object.values(condition[constants_1.CouchDBGroupOperator.AND]).reduce((accum, val) => {
|
|
21
|
-
const keys = Object.keys(val);
|
|
22
|
-
if (keys.length !== 1)
|
|
23
|
-
throw new Error("Too many keys in query selector. should be one");
|
|
24
|
-
const k = keys[0];
|
|
25
|
-
if (k === constants_1.CouchDBGroupOperator.AND)
|
|
26
|
-
accum.push(...val[k]);
|
|
27
|
-
else
|
|
28
|
-
accum.push(val);
|
|
29
|
-
return accum;
|
|
30
|
-
}, []),
|
|
31
|
-
];
|
|
32
|
-
query.selector = condition;
|
|
33
|
-
break;
|
|
34
|
-
case constants_1.CouchDBGroupOperator.OR: {
|
|
35
|
-
const s = {};
|
|
36
|
-
s[constants_1.CouchDBGroupOperator.AND] = [
|
|
37
|
-
condition,
|
|
38
|
-
...Object.entries(query.selector).map(([key, val]) => {
|
|
39
|
-
const result = {};
|
|
40
|
-
result[key] = val;
|
|
41
|
-
return result;
|
|
42
|
-
}),
|
|
43
|
-
];
|
|
44
|
-
query.selector = s;
|
|
45
|
-
break;
|
|
46
|
-
}
|
|
47
|
-
default:
|
|
48
|
-
throw new Error("This should be impossible");
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
Object.entries(condition).forEach(([key, val]) => {
|
|
52
|
-
if (query.selector[key])
|
|
53
|
-
console.warn((0, decorator_validation_1.sf)("A {0} query param is about to be overridden: {1} by {2}", key, query.selector[key], val));
|
|
54
|
-
query.selector[key] = val;
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
return query;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
exports.CouchDBWhereClause = CouchDBWhereClause;
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV2hlcmVDbGF1c2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcXVlcnkvV2hlcmVDbGF1c2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEseUNBQXdEO0FBRXhELCtDQUFtRDtBQUNuRCx5RUFBb0Q7QUFDcEQsa0RBQTJDO0FBRzNDLE1BQWEsa0JBQW1CLFNBQVEsa0JBQXVCO0lBQzdELFlBQVksTUFBeUM7UUFDbkQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2hCLENBQUM7SUFFRCxLQUFLLENBQUMsS0FBaUI7UUFDckIsTUFBTSxTQUFTLEdBQWtCLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUMxRCxnQkFBUyxDQUFDLEdBQUcsQ0FDWCxJQUFJLENBQUMsU0FBc0IsRUFDM0IsZ0JBQVMsQ0FBQyxTQUFTLENBQUMsdUJBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQ3ZDLEtBQUssQ0FBQyxRQUFRLENBQUMsdUJBQVcsQ0FBQyxLQUFLLENBQUMsQ0FDbEMsQ0FDRixDQUNGLENBQUMsUUFBUSxDQUFDO1FBRVgsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQW9CLENBQUM7UUFDL0QsSUFDRSxZQUFZLENBQUMsTUFBTSxLQUFLLENBQUM7WUFDekIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxnQ0FBb0IsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFbkUsUUFBUSxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDeEIsS0FBSyxnQ0FBb0IsQ0FBQyxHQUFHO29CQUMzQixTQUFTLENBQUMsZ0NBQW9CLENBQUMsR0FBRyxDQUFDLEdBQUc7d0JBQ3BDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FDZCxTQUFTLENBQUMsZ0NBQW9CLENBQUMsR0FBRyxDQUFrQixDQUNyRCxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQXNCLEVBQUUsR0FBUSxFQUFFLEVBQUU7NEJBQzVDLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7NEJBQzlCLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDO2dDQUNuQixNQUFNLElBQUksS0FBSyxDQUNiLGdEQUFnRCxDQUNqRCxDQUFDOzRCQUNKLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzs0QkFDbEIsSUFBSSxDQUFDLEtBQUssZ0NBQW9CLENBQUMsR0FBRztnQ0FDaEMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFJLEdBQUcsQ0FBQyxDQUFDLENBQVcsQ0FBQyxDQUFDOztnQ0FDOUIsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQzs0QkFDckIsT0FBTyxLQUFLLENBQUM7d0JBQ2YsQ0FBQyxFQUFFLEVBQUUsQ0FBQztxQkFDUCxDQUFDO29CQUNGLEtBQUssQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDO29CQUMzQixNQUFNO2dCQUNSLEtBQUssZ0NBQW9CLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztvQkFDN0IsTUFBTSxDQUFDLEdBQXFCLEVBQUUsQ0FBQztvQkFDL0IsQ0FBQyxDQUFDLGdDQUFvQixDQUFDLEdBQUcsQ0FBQyxHQUFHO3dCQUM1QixTQUFTO3dCQUNULEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRTs0QkFDbkQsTUFBTSxNQUFNLEdBQXFCLEVBQUUsQ0FBQzs0QkFDcEMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsQ0FBQzs0QkFDbEIsT0FBTyxNQUFNLENBQUM7d0JBQ2hCLENBQUMsQ0FBQztxQkFDSCxDQUFDO29CQUNGLEtBQUssQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO29CQUNuQixNQUFNO2dCQUNSLENBQUM7Z0JBQ0Q7b0JBQ0UsTUFBTSxJQUFJLEtBQUssQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1lBQ2pELENBQUM7YUFDRSxDQUFDO1lBQ0osTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsRUFBRSxFQUFFO2dCQUMvQyxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO29CQUNyQixPQUFPLENBQUMsSUFBSSxDQUNWLElBQUEseUJBQUUsRUFDQSx5REFBeUQsRUFDekQsR0FBRyxFQUNILEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFzQixFQUN4QyxHQUF3QixDQUN6QixDQUNGLENBQUM7Z0JBQ0osS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLENBQUM7WUFDNUIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0NBQ0Y7QUF6RUQsZ0RBeUVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uZGl0aW9uLCBXaGVyZUNsYXVzZSB9IGZyb20gXCJAZGVjYWYtdHMvY29yZVwiO1xuaW1wb3J0IHsgTW9kZWxBcmcgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBDb3VjaERCR3JvdXBPcGVyYXRvciB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgc2YgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBDb3VjaERCS2V5cyB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IE1hbmdvT3BlcmF0b3IsIE1hbmdvUXVlcnksIE1hbmdvU2VsZWN0b3IgfSBmcm9tIFwiLi4vdHlwZXNcIjtcblxuZXhwb3J0IGNsYXNzIENvdWNoREJXaGVyZUNsYXVzZSBleHRlbmRzIFdoZXJlQ2xhdXNlPE1hbmdvUXVlcnk+IHtcbiAgY29uc3RydWN0b3IoY2xhdXNlOiBNb2RlbEFyZzxXaGVyZUNsYXVzZTxNYW5nb1F1ZXJ5Pj4pIHtcbiAgICBzdXBlcihjbGF1c2UpO1xuICB9XG5cbiAgYnVpbGQocXVlcnk6IE1hbmdvUXVlcnkpOiBNYW5nb1F1ZXJ5IHtcbiAgICBjb25zdCBjb25kaXRpb246IE1hbmdvU2VsZWN0b3IgPSB0aGlzLmFkYXB0ZXIucGFyc2VDb25kaXRpb24oXG4gICAgICBDb25kaXRpb24uYW5kKFxuICAgICAgICB0aGlzLmNvbmRpdGlvbiBhcyBDb25kaXRpb24sXG4gICAgICAgIENvbmRpdGlvbi5hdHRyaWJ1dGUoQ291Y2hEQktleXMuVEFCTEUpLmVxKFxuICAgICAgICAgIHF1ZXJ5LnNlbGVjdG9yW0NvdWNoREJLZXlzLlRBQkxFXVxuICAgICAgICApXG4gICAgICApXG4gICAgKS5zZWxlY3RvcjtcblxuICAgIGNvbnN0IHNlbGVjdG9yS2V5cyA9IE9iamVjdC5rZXlzKGNvbmRpdGlvbikgYXMgTWFuZ29PcGVyYXRvcltdO1xuICAgIGlmIChcbiAgICAgIHNlbGVjdG9yS2V5cy5sZW5ndGggPT09IDEgJiZcbiAgICAgIE9iamVjdC52YWx1ZXMoQ291Y2hEQkdyb3VwT3BlcmF0b3IpLmluZGV4T2Yoc2VsZWN0b3JLZXlzWzBdKSAhPT0gLTFcbiAgICApXG4gICAgICBzd2l0Y2ggKHNlbGVjdG9yS2V5c1swXSkge1xuICAgICAgICBjYXNlIENvdWNoREJHcm91cE9wZXJhdG9yLkFORDpcbiAgICAgICAgICBjb25kaXRpb25bQ291Y2hEQkdyb3VwT3BlcmF0b3IuQU5EXSA9IFtcbiAgICAgICAgICAgIC4uLk9iamVjdC52YWx1ZXMoXG4gICAgICAgICAgICAgIGNvbmRpdGlvbltDb3VjaERCR3JvdXBPcGVyYXRvci5BTkRdIGFzIE1hbmdvU2VsZWN0b3JcbiAgICAgICAgICAgICkucmVkdWNlKChhY2N1bTogTWFuZ29TZWxlY3RvcltdLCB2YWw6IGFueSkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXModmFsKTtcbiAgICAgICAgICAgICAgaWYgKGtleXMubGVuZ3RoICE9PSAxKVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgICAgIFwiVG9vIG1hbnkga2V5cyBpbiBxdWVyeSBzZWxlY3Rvci4gc2hvdWxkIGJlIG9uZVwiXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgY29uc3QgayA9IGtleXNbMF07XG4gICAgICAgICAgICAgIGlmIChrID09PSBDb3VjaERCR3JvdXBPcGVyYXRvci5BTkQpXG4gICAgICAgICAgICAgICAgYWNjdW0ucHVzaCguLi4odmFsW2tdIGFzIGFueVtdKSk7XG4gICAgICAgICAgICAgIGVsc2UgYWNjdW0ucHVzaCh2YWwpO1xuICAgICAgICAgICAgICByZXR1cm4gYWNjdW07XG4gICAgICAgICAgICB9LCBbXSksXG4gICAgICAgICAgXTtcbiAgICAgICAgICBxdWVyeS5zZWxlY3RvciA9IGNvbmRpdGlvbjtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBDb3VjaERCR3JvdXBPcGVyYXRvci5PUjoge1xuICAgICAgICAgIGNvbnN0IHM6IFJlY29yZDxhbnksIGFueT4gPSB7fTtcbiAgICAgICAgICBzW0NvdWNoREJHcm91cE9wZXJhdG9yLkFORF0gPSBbXG4gICAgICAgICAgICBjb25kaXRpb24sXG4gICAgICAgICAgICAuLi5PYmplY3QuZW50cmllcyhxdWVyeS5zZWxlY3RvcikubWFwKChba2V5LCB2YWxdKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHJlc3VsdDogUmVjb3JkPGFueSwgYW55PiA9IHt9O1xuICAgICAgICAgICAgICByZXN1bHRba2V5XSA9IHZhbDtcbiAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIF07XG4gICAgICAgICAgcXVlcnkuc2VsZWN0b3IgPSBzO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiVGhpcyBzaG91bGQgYmUgaW1wb3NzaWJsZVwiKTtcbiAgICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIE9iamVjdC5lbnRyaWVzKGNvbmRpdGlvbikuZm9yRWFjaCgoW2tleSwgdmFsXSkgPT4ge1xuICAgICAgICBpZiAocXVlcnkuc2VsZWN0b3Jba2V5XSlcbiAgICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgICBzZihcbiAgICAgICAgICAgICAgXCJBIHswfSBxdWVyeSBwYXJhbSBpcyBhYm91dCB0byBiZSBvdmVycmlkZGVuOiB7MX0gYnkgezJ9XCIsXG4gICAgICAgICAgICAgIGtleSxcbiAgICAgICAgICAgICAgcXVlcnkuc2VsZWN0b3Jba2V5XSBhcyB1bmtub3duIGFzIHN0cmluZyxcbiAgICAgICAgICAgICAgdmFsIGFzIHVua25vd24gYXMgc3RyaW5nXG4gICAgICAgICAgICApXG4gICAgICAgICAgKTtcbiAgICAgICAgcXVlcnkuc2VsZWN0b3Jba2V5XSA9IHZhbDtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBxdWVyeTtcbiAgfVxufVxuIl19
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { WhereClause } from "@decaf-ts/core";
|
|
2
|
-
import { ModelArg } from "@decaf-ts/decorator-validation";
|
|
3
|
-
import { MangoQuery } from "../types";
|
|
4
|
-
export declare class CouchDBWhereClause extends WhereClause<MangoQuery> {
|
|
5
|
-
constructor(clause: ModelArg<WhereClause<MangoQuery>>);
|
|
6
|
-
build(query: MangoQuery): MangoQuery;
|
|
7
|
-
}
|
package/lib/query/factory.cjs
DELETED
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Factory = void 0;
|
|
4
|
-
const core_1 = require("@decaf-ts/core");
|
|
5
|
-
const core_2 = require("@decaf-ts/core");
|
|
6
|
-
const core_3 = require("@decaf-ts/core");
|
|
7
|
-
const core_4 = require("@decaf-ts/core");
|
|
8
|
-
const core_5 = require("@decaf-ts/core");
|
|
9
|
-
const FromClause_1 = require("./FromClause.cjs");
|
|
10
|
-
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
|
11
|
-
const InsertClause_1 = require("./InsertClause.cjs");
|
|
12
|
-
const Statement_1 = require("./Statement.cjs");
|
|
13
|
-
const WhereClause_1 = require("./WhereClause.cjs");
|
|
14
|
-
const SelectClause_1 = require("./SelectClause.cjs");
|
|
15
|
-
const ValuesClause_1 = require("./ValuesClause.cjs");
|
|
16
|
-
const constants_1 = require("./constants.cjs");
|
|
17
|
-
class Factory extends core_1.ClauseFactory {
|
|
18
|
-
constructor(adapter) {
|
|
19
|
-
super(adapter);
|
|
20
|
-
}
|
|
21
|
-
from(statement, selector) {
|
|
22
|
-
return new FromClause_1.CouchDBFromClause({ statement: statement, selector: selector });
|
|
23
|
-
}
|
|
24
|
-
groupBy(statement, selector) {
|
|
25
|
-
return new (class extends core_5.GroupByClause {
|
|
26
|
-
constructor(clause) {
|
|
27
|
-
super(clause);
|
|
28
|
-
}
|
|
29
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
30
|
-
build(query) {
|
|
31
|
-
throw new db_decorators_1.InternalError("Not implemented");
|
|
32
|
-
}
|
|
33
|
-
})({
|
|
34
|
-
statement: statement,
|
|
35
|
-
selector: selector,
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
insert() {
|
|
39
|
-
return new InsertClause_1.CouchDBInsertClause({
|
|
40
|
-
statement: new Statement_1.CouchDBStatement(this.adapter),
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
limit(statement, selector) {
|
|
44
|
-
return new (class extends core_2.LimitClause {
|
|
45
|
-
constructor(clause) {
|
|
46
|
-
super(clause);
|
|
47
|
-
}
|
|
48
|
-
build(query) {
|
|
49
|
-
query.limit = this.selector;
|
|
50
|
-
return query;
|
|
51
|
-
}
|
|
52
|
-
})({
|
|
53
|
-
statement: statement,
|
|
54
|
-
selector: selector,
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
offset(statement, selector) {
|
|
58
|
-
return new (class extends core_3.OffsetClause {
|
|
59
|
-
constructor(clause) {
|
|
60
|
-
super(clause);
|
|
61
|
-
}
|
|
62
|
-
build(query) {
|
|
63
|
-
const skip = parseInt(this.selector);
|
|
64
|
-
if (isNaN(skip))
|
|
65
|
-
throw new core_1.QueryError("Failed to parse offset");
|
|
66
|
-
query.skip = skip;
|
|
67
|
-
return query;
|
|
68
|
-
}
|
|
69
|
-
})({
|
|
70
|
-
statement: statement,
|
|
71
|
-
selector: selector,
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
orderBy(statement, selector) {
|
|
75
|
-
return new (class extends core_4.OrderByClause {
|
|
76
|
-
constructor(clause) {
|
|
77
|
-
super(clause);
|
|
78
|
-
}
|
|
79
|
-
build(query) {
|
|
80
|
-
query.sort = query.sort || [];
|
|
81
|
-
query.selector = query.selector || {};
|
|
82
|
-
this.selector.forEach((s) => {
|
|
83
|
-
const [selector, value] = s;
|
|
84
|
-
const rec = {};
|
|
85
|
-
rec[selector] = value;
|
|
86
|
-
query.sort.push(rec);
|
|
87
|
-
if (!query.selector[selector]) {
|
|
88
|
-
query.selector[selector] = {};
|
|
89
|
-
query.selector[selector][constants_1.CouchDBOperator.BIGGER] = null;
|
|
90
|
-
}
|
|
91
|
-
// query.fields = query.fields || [];
|
|
92
|
-
// query.fields = [...new Set([...query.fields, selector]).keys()]
|
|
93
|
-
});
|
|
94
|
-
return query;
|
|
95
|
-
}
|
|
96
|
-
})({
|
|
97
|
-
statement: statement,
|
|
98
|
-
selector: selector,
|
|
99
|
-
});
|
|
100
|
-
}
|
|
101
|
-
select(selector) {
|
|
102
|
-
return new SelectClause_1.CouchDBSelectClause({
|
|
103
|
-
statement: new Statement_1.CouchDBStatement(this.adapter),
|
|
104
|
-
selector: selector,
|
|
105
|
-
});
|
|
106
|
-
}
|
|
107
|
-
values(statement, values) {
|
|
108
|
-
return new ValuesClause_1.CouchDBValuesClause({
|
|
109
|
-
statement: statement,
|
|
110
|
-
values: values,
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
where(statement, condition) {
|
|
114
|
-
return new WhereClause_1.CouchDBWhereClause({
|
|
115
|
-
statement: statement,
|
|
116
|
-
condition: condition,
|
|
117
|
-
});
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
exports.Factory = Factory;
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9xdWVyeS9mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHlDQVl3QjtBQUN4Qix5Q0FBNkM7QUFHN0MseUNBQThDO0FBQzlDLHlDQUErQztBQUMvQyx5Q0FBK0M7QUFHL0MsaURBQWlEO0FBRWpELDJEQUlpQztBQUNqQyxxREFBcUQ7QUFDckQsK0NBQStDO0FBQy9DLG1EQUFtRDtBQUNuRCxxREFBcUQ7QUFDckQscURBQXFEO0FBQ3JELCtDQUE4QztBQUk5QyxNQUFhLE9BSVgsU0FBUSxvQkFBcUQ7SUFDN0QsWUFBWSxPQUFnQztRQUMxQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakIsQ0FBQztJQUVELElBQUksQ0FDRixTQUFnQyxFQUNoQyxRQUF5QjtRQUV6QixPQUFPLElBQUksOEJBQWlCLENBQUMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRCxPQUFPLENBQ0wsU0FBZ0MsRUFDaEMsUUFBeUI7UUFFekIsT0FBTyxJQUFJLENBQUMsS0FBTSxTQUFRLG9CQUF5QjtZQUNqRCxZQUFZLE1BQTJDO2dCQUNyRCxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDaEIsQ0FBQztZQUVELDZEQUE2RDtZQUM3RCxLQUFLLENBQUMsS0FBaUI7Z0JBQ3JCLE1BQU0sSUFBSSw2QkFBYSxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFDN0MsQ0FBQztTQUNGLENBQUMsQ0FBQztZQUNELFNBQVMsRUFBRSxTQUFTO1lBQ3BCLFFBQVEsRUFBRSxRQUFRO1NBQ25CLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNO1FBQ0osT0FBTyxJQUFJLGtDQUFtQixDQUFDO1lBQzdCLFNBQVMsRUFBRSxJQUFJLDRCQUFnQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7U0FDOUMsQ0FB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QWdDLEVBQ2hDLE1BQVc7UUFFWCxPQUFPLElBQUksa0NBQW1CLENBQUk7WUFDaEMsU0FBUyxFQUFFLFNBQVM7WUFDcEIsTUFBTSxFQUFFLE1BQU07U0FDZixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSyxDQUNILFNBQWdDLEVBQ2hDLFNBQW9CO1FBRXBCLE9BQU8sSUFBSSxnQ0FBa0IsQ0FBQztZQUM1QixTQUFTLEVBQUUsU0FBUztZQUNwQixTQUFTLEVBQUUsU0FBUztTQUNyQixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUEvSUQsMEJBK0lDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2xhdXNlRmFjdG9yeSxcbiAgQ29uZGl0aW9uLFxuICBGcm9tQ2xhdXNlLFxuICBGcm9tU2VsZWN0b3IsXG4gIEdyb3VwQnlTZWxlY3RvcixcbiAgTGltaXRTZWxlY3RvcixcbiAgT2Zmc2V0U2VsZWN0b3IsXG4gIE9yZGVyQnlTZWxlY3RvcixcbiAgUXVlcnlFcnJvcixcbiAgU2VsZWN0U2VsZWN0b3IsXG4gIFN0YXRlbWVudCxcbn0gZnJvbSBcIkBkZWNhZi10cy9jb3JlXCI7XG5pbXBvcnQgeyBMaW1pdENsYXVzZSB9IGZyb20gXCJAZGVjYWYtdHMvY29yZVwiO1xuaW1wb3J0IHsgU2VsZWN0Q2xhdXNlIH0gZnJvbSBcIkBkZWNhZi10cy9jb3JlXCI7XG5pbXBvcnQgeyBXaGVyZUNsYXVzZSB9IGZyb20gXCJAZGVjYWYtdHMvY29yZVwiO1xuaW1wb3J0IHsgT2Zmc2V0Q2xhdXNlIH0gZnJvbSBcIkBkZWNhZi10cy9jb3JlXCI7XG5pbXBvcnQgeyBPcmRlckJ5Q2xhdXNlIH0gZnJvbSBcIkBkZWNhZi10cy9jb3JlXCI7XG5pbXBvcnQgeyBHcm91cEJ5Q2xhdXNlIH0gZnJvbSBcIkBkZWNhZi10cy9jb3JlXCI7XG5pbXBvcnQgeyBWYWx1ZXNDbGF1c2UgfSBmcm9tIFwiQGRlY2FmLXRzL2NvcmVcIjtcbmltcG9ydCB7IEluc2VydENsYXVzZSB9IGZyb20gXCJAZGVjYWYtdHMvY29yZVwiO1xuaW1wb3J0IHsgQ291Y2hEQkZyb21DbGF1c2UgfSBmcm9tIFwiLi9Gcm9tQ2xhdXNlXCI7XG5pbXBvcnQgeyBNb2RlbEFyZywgTW9kZWwgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQge1xuICBDb250ZXh0LFxuICBJbnRlcm5hbEVycm9yLFxuICBSZXBvc2l0b3J5RmxhZ3MsXG59IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgQ291Y2hEQkluc2VydENsYXVzZSB9IGZyb20gXCIuL0luc2VydENsYXVzZVwiO1xuaW1wb3J0IHsgQ291Y2hEQlN0YXRlbWVudCB9IGZyb20gXCIuL1N0YXRlbWVudFwiO1xuaW1wb3J0IHsgQ291Y2hEQldoZXJlQ2xhdXNlIH0gZnJvbSBcIi4vV2hlcmVDbGF1c2VcIjtcbmltcG9ydCB7IENvdWNoREJTZWxlY3RDbGF1c2UgfSBmcm9tIFwiLi9TZWxlY3RDbGF1c2VcIjtcbmltcG9ydCB7IENvdWNoREJWYWx1ZXNDbGF1c2UgfSBmcm9tIFwiLi9WYWx1ZXNDbGF1c2VcIjtcbmltcG9ydCB7IENvdWNoREJPcGVyYXRvciB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgQ291Y2hEQkFkYXB0ZXIgfSBmcm9tIFwiLi4vYWRhcHRlclwiO1xuaW1wb3J0IHsgTWFuZ29RdWVyeSwgTWFuZ29TZWxlY3RvciB9IGZyb20gXCIuLi90eXBlc1wiO1xuXG5leHBvcnQgY2xhc3MgRmFjdG9yeTxcbiAgWSxcbiAgRiBleHRlbmRzIFJlcG9zaXRvcnlGbGFncyxcbiAgQyBleHRlbmRzIENvbnRleHQ8Rj4sXG4+IGV4dGVuZHMgQ2xhdXNlRmFjdG9yeTxZLCBNYW5nb1F1ZXJ5LCBDb3VjaERCQWRhcHRlcjxZLCBGLCBDPj4ge1xuICBjb25zdHJ1Y3RvcihhZGFwdGVyOiBDb3VjaERCQWRhcHRlcjxZLCBGLCBDPikge1xuICAgIHN1cGVyKGFkYXB0ZXIpO1xuICB9XG5cbiAgZnJvbTxNIGV4dGVuZHMgTW9kZWw+KFxuICAgIHN0YXRlbWVudDogU3RhdGVtZW50PE1hbmdvUXVlcnk+LFxuICAgIHNlbGVjdG9yOiBGcm9tU2VsZWN0b3I8TT5cbiAgKTogRnJvbUNsYXVzZTxNYW5nb1F1ZXJ5LCBNPiB7XG4gICAgcmV0dXJuIG5ldyBDb3VjaERCRnJvbUNsYXVzZSh7IHN0YXRlbWVudDogc3RhdGVtZW50LCBzZWxlY3Rvcjogc2VsZWN0b3IgfSk7XG4gIH1cblxuICBncm91cEJ5KFxuICAgIHN0YXRlbWVudDogU3RhdGVtZW50PE1hbmdvUXVlcnk+LFxuICAgIHNlbGVjdG9yOiBHcm91cEJ5U2VsZWN0b3JcbiAgKTogR3JvdXBCeUNsYXVzZTxNYW5nb1F1ZXJ5PiB7XG4gICAgcmV0dXJuIG5ldyAoY2xhc3MgZXh0ZW5kcyBHcm91cEJ5Q2xhdXNlPE1hbmdvUXVlcnk+IHtcbiAgICAgIGNvbnN0cnVjdG9yKGNsYXVzZTogTW9kZWxBcmc8R3JvdXBCeUNsYXVzZTxNYW5nb1F1ZXJ5Pj4pIHtcbiAgICAgICAgc3VwZXIoY2xhdXNlKTtcbiAgICAgIH1cblxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgICAgYnVpbGQocXVlcnk6IE1hbmdvUXVlcnkpOiBNYW5nb1F1ZXJ5IHtcbiAgICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJOb3QgaW1wbGVtZW50ZWRcIik7XG4gICAgICB9XG4gICAgfSkoe1xuICAgICAgc3RhdGVtZW50OiBzdGF0ZW1lbnQsXG4gICAgICBzZWxlY3Rvcjogc2VsZWN0b3IsXG4gICAgfSk7XG4gIH1cblxuICBpbnNlcnQ8TSBleHRlbmRzIE1vZGVsPigpOiBJbnNlcnRDbGF1c2U8TWFuZ29RdWVyeSwgTT4ge1xuICAgIHJldHVybiBuZXcgQ291Y2hEQkluc2VydENsYXVzZSh7XG4gICAgICBzdGF0ZW1lbnQ6IG5ldyBDb3VjaERCU3RhdGVtZW50KHRoaXMuYWRhcHRlciksXG4gICAgfSk7XG4gIH1cblxuICBsaW1pdChcbiAgICBzdGF0ZW1lbnQ6IFN0YXRlbWVudDxNYW5nb1F1ZXJ5PixcbiAgICBzZWxlY3RvcjogTGltaXRTZWxlY3RvclxuICApOiBMaW1pdENsYXVzZTxNYW5nb1F1ZXJ5PiB7XG4gICAgcmV0dXJuIG5ldyAoY2xhc3MgZXh0ZW5kcyBMaW1pdENsYXVzZTxNYW5nb1F1ZXJ5PiB7XG4gICAgICBjb25zdHJ1Y3RvcihjbGF1c2U6IE1vZGVsQXJnPExpbWl0Q2xhdXNlPE1hbmdvUXVlcnk+Pikge1xuICAgICAgICBzdXBlcihjbGF1c2UpO1xuICAgICAgfVxuXG4gICAgICBidWlsZChxdWVyeTogTWFuZ29RdWVyeSk6IE1hbmdvUXVlcnkge1xuICAgICAgICBxdWVyeS5saW1pdCA9IHRoaXMuc2VsZWN0b3IgYXMgbnVtYmVyO1xuICAgICAgICByZXR1cm4gcXVlcnk7XG4gICAgICB9XG4gICAgfSkoe1xuICAgICAgc3RhdGVtZW50OiBzdGF0ZW1lbnQsXG4gICAgICBzZWxlY3Rvcjogc2VsZWN0b3IsXG4gICAgfSk7XG4gIH1cblxuICBvZmZzZXQoXG4gICAgc3RhdGVtZW50OiBTdGF0ZW1lbnQ8TWFuZ29RdWVyeT4sXG4gICAgc2VsZWN0b3I6IE9mZnNldFNlbGVjdG9yXG4gICk6IE9mZnNldENsYXVzZTxNYW5nb1F1ZXJ5PiB7XG4gICAgcmV0dXJuIG5ldyAoY2xhc3MgZXh0ZW5kcyBPZmZzZXRDbGF1c2U8TWFuZ29RdWVyeT4ge1xuICAgICAgY29uc3RydWN0b3IoY2xhdXNlOiBNb2RlbEFyZzxPZmZzZXRDbGF1c2U8TWFuZ29RdWVyeT4+KSB7XG4gICAgICAgIHN1cGVyKGNsYXVzZSk7XG4gICAgICB9XG5cbiAgICAgIGJ1aWxkKHF1ZXJ5OiBNYW5nb1F1ZXJ5KTogTWFuZ29RdWVyeSB7XG4gICAgICAgIGNvbnN0IHNraXA6IG51bWJlciA9IHBhcnNlSW50KHRoaXMuc2VsZWN0b3IgYXMgdW5rbm93biBhcyBzdHJpbmcpO1xuICAgICAgICBpZiAoaXNOYU4oc2tpcCkpIHRocm93IG5ldyBRdWVyeUVycm9yKFwiRmFpbGVkIHRvIHBhcnNlIG9mZnNldFwiKTtcbiAgICAgICAgcXVlcnkuc2tpcCA9IHNraXA7XG4gICAgICAgIHJldHVybiBxdWVyeTtcbiAgICAgIH1cbiAgICB9KSh7XG4gICAgICBzdGF0ZW1lbnQ6IHN0YXRlbWVudCxcbiAgICAgIHNlbGVjdG9yOiBzZWxlY3RvcixcbiAgICB9KTtcbiAgfVxuXG4gIG9yZGVyQnkoXG4gICAgc3RhdGVtZW50OiBTdGF0ZW1lbnQ8TWFuZ29RdWVyeT4sXG4gICAgc2VsZWN0b3I6IE9yZGVyQnlTZWxlY3RvcltdXG4gICk6IE9yZGVyQnlDbGF1c2U8TWFuZ29RdWVyeT4ge1xuICAgIHJldHVybiBuZXcgKGNsYXNzIGV4dGVuZHMgT3JkZXJCeUNsYXVzZTxNYW5nb1F1ZXJ5PiB7XG4gICAgICBjb25zdHJ1Y3RvcihjbGF1c2U6IE1vZGVsQXJnPE9yZGVyQnlDbGF1c2U8TWFuZ29RdWVyeT4+KSB7XG4gICAgICAgIHN1cGVyKGNsYXVzZSk7XG4gICAgICB9XG5cbiAgICAgIGJ1aWxkKHF1ZXJ5OiBNYW5nb1F1ZXJ5KTogTWFuZ29RdWVyeSB7XG4gICAgICAgIHF1ZXJ5LnNvcnQgPSBxdWVyeS5zb3J0IHx8IFtdO1xuICAgICAgICBxdWVyeS5zZWxlY3RvciA9IHF1ZXJ5LnNlbGVjdG9yIHx8ICh7fSBhcyBNYW5nb1NlbGVjdG9yKTtcbiAgICAgICAgdGhpcy5zZWxlY3RvciEuZm9yRWFjaCgocykgPT4ge1xuICAgICAgICAgIGNvbnN0IFtzZWxlY3RvciwgdmFsdWVdID0gcztcbiAgICAgICAgICBjb25zdCByZWM6IGFueSA9IHt9O1xuICAgICAgICAgIHJlY1tzZWxlY3Rvcl0gPSB2YWx1ZTtcbiAgICAgICAgICAocXVlcnkuc29ydCBhcyBhbnlbXSkucHVzaChyZWMgYXMgYW55KTtcbiAgICAgICAgICBpZiAoIXF1ZXJ5LnNlbGVjdG9yW3NlbGVjdG9yXSkge1xuICAgICAgICAgICAgcXVlcnkuc2VsZWN0b3Jbc2VsZWN0b3JdID0ge30gYXMgTWFuZ29TZWxlY3RvcjtcbiAgICAgICAgICAgIChxdWVyeS5zZWxlY3RvcltzZWxlY3Rvcl0gYXMgTWFuZ29TZWxlY3RvcilbXG4gICAgICAgICAgICAgIENvdWNoREJPcGVyYXRvci5CSUdHRVJcbiAgICAgICAgICAgIF0gPSBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgICAvLyBxdWVyeS5maWVsZHMgPSBxdWVyeS5maWVsZHMgfHwgW107XG4gICAgICAgICAgLy8gcXVlcnkuZmllbGRzID0gWy4uLm5ldyBTZXQoWy4uLnF1ZXJ5LmZpZWxkcywgc2VsZWN0b3JdKS5rZXlzKCldXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcXVlcnk7XG4gICAgICB9XG4gICAgfSkoe1xuICAgICAgc3RhdGVtZW50OiBzdGF0ZW1lbnQsXG4gICAgICBzZWxlY3Rvcjogc2VsZWN0b3IsXG4gICAgfSk7XG4gIH1cblxuICBzZWxlY3Q8TSBleHRlbmRzIE1vZGVsPihcbiAgICBzZWxlY3RvcjogU2VsZWN0U2VsZWN0b3IgfCB1bmRlZmluZWRcbiAgKTogU2VsZWN0Q2xhdXNlPE1hbmdvUXVlcnksIE0+IHtcbiAgICByZXR1cm4gbmV3IENvdWNoREJTZWxlY3RDbGF1c2Uoe1xuICAgICAgc3RhdGVtZW50OiBuZXcgQ291Y2hEQlN0YXRlbWVudCh0aGlzLmFkYXB0ZXIpLFxuICAgICAgc2VsZWN0b3I6IHNlbGVjdG9yLFxuICAgIH0pO1xuICB9XG5cbiAgdmFsdWVzPE0gZXh0ZW5kcyBNb2RlbD4oXG4gICAgc3RhdGVtZW50OiBTdGF0ZW1lbnQ8TWFuZ29RdWVyeT4sXG4gICAgdmFsdWVzOiBNW11cbiAgKTogVmFsdWVzQ2xhdXNlPE1hbmdvUXVlcnksIE0+IHtcbiAgICByZXR1cm4gbmV3IENvdWNoREJWYWx1ZXNDbGF1c2U8TT4oe1xuICAgICAgc3RhdGVtZW50OiBzdGF0ZW1lbnQsXG4gICAgICB2YWx1ZXM6IHZhbHVlcyxcbiAgICB9KTtcbiAgfVxuXG4gIHdoZXJlKFxuICAgIHN0YXRlbWVudDogU3RhdGVtZW50PE1hbmdvUXVlcnk+LFxuICAgIGNvbmRpdGlvbjogQ29uZGl0aW9uXG4gICk6IFdoZXJlQ2xhdXNlPE1hbmdvUXVlcnk+IHtcbiAgICByZXR1cm4gbmV3IENvdWNoREJXaGVyZUNsYXVzZSh7XG4gICAgICBzdGF0ZW1lbnQ6IHN0YXRlbWVudCxcbiAgICAgIGNvbmRpdGlvbjogY29uZGl0aW9uLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
package/lib/query/factory.d.ts
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { ClauseFactory, Condition, FromClause, FromSelector, GroupBySelector, LimitSelector, OffsetSelector, OrderBySelector, SelectSelector, Statement } from "@decaf-ts/core";
|
|
2
|
-
import { LimitClause } from "@decaf-ts/core";
|
|
3
|
-
import { SelectClause } from "@decaf-ts/core";
|
|
4
|
-
import { WhereClause } from "@decaf-ts/core";
|
|
5
|
-
import { OffsetClause } from "@decaf-ts/core";
|
|
6
|
-
import { OrderByClause } from "@decaf-ts/core";
|
|
7
|
-
import { GroupByClause } from "@decaf-ts/core";
|
|
8
|
-
import { ValuesClause } from "@decaf-ts/core";
|
|
9
|
-
import { InsertClause } from "@decaf-ts/core";
|
|
10
|
-
import { Model } from "@decaf-ts/decorator-validation";
|
|
11
|
-
import { Context, RepositoryFlags } from "@decaf-ts/db-decorators";
|
|
12
|
-
import { CouchDBAdapter } from "../adapter";
|
|
13
|
-
import { MangoQuery } from "../types";
|
|
14
|
-
export declare class Factory<Y, F extends RepositoryFlags, C extends Context<F>> extends ClauseFactory<Y, MangoQuery, CouchDBAdapter<Y, F, C>> {
|
|
15
|
-
constructor(adapter: CouchDBAdapter<Y, F, C>);
|
|
16
|
-
from<M extends Model>(statement: Statement<MangoQuery>, selector: FromSelector<M>): FromClause<MangoQuery, M>;
|
|
17
|
-
groupBy(statement: Statement<MangoQuery>, selector: GroupBySelector): GroupByClause<MangoQuery>;
|
|
18
|
-
insert<M extends Model>(): InsertClause<MangoQuery, M>;
|
|
19
|
-
limit(statement: Statement<MangoQuery>, selector: LimitSelector): LimitClause<MangoQuery>;
|
|
20
|
-
offset(statement: Statement<MangoQuery>, selector: OffsetSelector): OffsetClause<MangoQuery>;
|
|
21
|
-
orderBy(statement: Statement<MangoQuery>, selector: OrderBySelector[]): OrderByClause<MangoQuery>;
|
|
22
|
-
select<M extends Model>(selector: SelectSelector | undefined): SelectClause<MangoQuery, M>;
|
|
23
|
-
values<M extends Model>(statement: Statement<MangoQuery>, values: M[]): ValuesClause<MangoQuery, M>;
|
|
24
|
-
where(statement: Statement<MangoQuery>, condition: Condition): WhereClause<MangoQuery>;
|
|
25
|
-
}
|
package/lib/sequences/utils.cjs
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.parseSequenceValue = parseSequenceValue;
|
|
4
|
-
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
|
5
|
-
function parseSequenceValue(type, value) {
|
|
6
|
-
switch (type) {
|
|
7
|
-
case "Number":
|
|
8
|
-
return typeof value === "string"
|
|
9
|
-
? parseInt(value)
|
|
10
|
-
: typeof value === "number"
|
|
11
|
-
? value
|
|
12
|
-
: BigInt(value);
|
|
13
|
-
case "BigInt":
|
|
14
|
-
return BigInt(value);
|
|
15
|
-
default:
|
|
16
|
-
throw new db_decorators_1.InternalError("Should never happen");
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VxdWVuY2VzL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUEsZ0RBZ0JDO0FBbEJELDJEQUF3RDtBQUV4RCxTQUFnQixrQkFBa0IsQ0FDaEMsSUFBcUMsRUFDckMsS0FBK0I7SUFFL0IsUUFBUSxJQUFJLEVBQUUsQ0FBQztRQUNiLEtBQUssUUFBUTtZQUNYLE9BQU8sT0FBTyxLQUFLLEtBQUssUUFBUTtnQkFDOUIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUM7Z0JBQ2pCLENBQUMsQ0FBQyxPQUFPLEtBQUssS0FBSyxRQUFRO29CQUN6QixDQUFDLENBQUMsS0FBSztvQkFDUCxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3RCLEtBQUssUUFBUTtZQUNYLE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZCO1lBQ0UsTUFBTSxJQUFJLDZCQUFhLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUNuRCxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEludGVybmFsRXJyb3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlU2VxdWVuY2VWYWx1ZShcbiAgdHlwZTogXCJOdW1iZXJcIiB8IFwiQmlnSW50XCIgfCB1bmRlZmluZWQsXG4gIHZhbHVlOiBzdHJpbmcgfCBudW1iZXIgfCBiaWdpbnRcbik6IHN0cmluZyB8IG51bWJlciB8IGJpZ2ludCB7XG4gIHN3aXRjaCAodHlwZSkge1xuICAgIGNhc2UgXCJOdW1iZXJcIjpcbiAgICAgIHJldHVybiB0eXBlb2YgdmFsdWUgPT09IFwic3RyaW5nXCJcbiAgICAgICAgPyBwYXJzZUludCh2YWx1ZSlcbiAgICAgICAgOiB0eXBlb2YgdmFsdWUgPT09IFwibnVtYmVyXCJcbiAgICAgICAgICA/IHZhbHVlXG4gICAgICAgICAgOiBCaWdJbnQodmFsdWUpO1xuICAgIGNhc2UgXCJCaWdJbnRcIjpcbiAgICAgIHJldHVybiBCaWdJbnQodmFsdWUpO1xuICAgIGRlZmF1bHQ6XG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIlNob3VsZCBuZXZlciBoYXBwZW5cIik7XG4gIH1cbn1cbiJdfQ==
|
package/lib/sequences/utils.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function parseSequenceValue(type: "Number" | "BigInt" | undefined, value: string | number | bigint): string | number | bigint;
|