@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
@@ -10,9 +10,3 @@ import { BaseError } from "@decaf-ts/db-decorators";
|
|
10
10
|
export declare class ObserverError extends BaseError {
|
11
11
|
constructor(msg: string | Error);
|
12
12
|
}
|
13
|
-
export declare class AuthorizationError extends BaseError {
|
14
|
-
constructor(msg: string | Error);
|
15
|
-
}
|
16
|
-
export declare class ForbiddenError extends BaseError {
|
17
|
-
constructor(msg: string | Error);
|
18
|
-
}
|
@@ -34,4 +34,4 @@ class InjectablesRegistry extends injectable_decorators_1.InjectableRegistryImp
|
|
34
34
|
}
|
35
35
|
}
|
36
36
|
exports.InjectablesRegistry = InjectablesRegistry;
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0YWJsZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmVwb3NpdG9yeS9pbmplY3RhYmxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyRUFHeUM7QUFDekMsaURBQTBDO0FBQzFDLHlFQUF5RTtBQUN6RSx1Q0FBOEQ7QUFDOUQsOERBQTJEO0FBQzNELDBEQUFpRDtBQUVqRCxNQUFhLG1CQUFvQixTQUFRLDZDQUFxQjtJQUM1RDtRQUNFLEtBQUssRUFBRSxDQUFDO0lBQ1YsQ0FBQztJQUVRLEdBQUcsQ0FBSSxJQUFZO1FBQzFCLElBQUksVUFBVSxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLFVBQVU7WUFDYixJQUFJLENBQUM7Z0JBQ0gsTUFBTSxDQUFDLEdBQUcsNEJBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzFCLElBQUksQ0FBQztvQkFBRSxVQUFVLEdBQUcsdUJBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQzNDLElBQUksVUFBVSxFQUFFLENBQUM7b0JBQ2YsSUFBSSxVQUFVLFlBQVksdUJBQVU7d0JBQUUsT0FBTyxVQUFlLENBQUM7b0JBQzdELE1BQU0sT0FBTyxHQUNYLE9BQU8sQ0FBQyxXQUFXLENBQ2pCLGlCQUFPLENBQUMsR0FBRyxDQUFDLDJCQUFlLENBQUMsT0FBTyxDQUFDLEVBQ3BDLFVBQVUsQ0FBQyxXQUFXLENBQ3ZCO3dCQUNELE9BQU8sQ0FBQyxXQUFXLENBQ2pCLGlCQUFPLENBQUMsR0FBRyxDQUFDLDJCQUFlLENBQUMsT0FBTyxDQUFDLEVBQ3BDLENBQTBCLENBQzNCLENBQUM7b0JBQ0osbUNBQVcsQ0FBQyxRQUFRLENBQ2xCLFVBQVUsRUFDVixJQUFBLDJDQUFtQyxFQUNqQyxDQUEwQixFQUMxQixPQUFPLENBQ1IsQ0FDRixDQUFDO2dCQUNKLENBQUM7Z0JBQ0QsNkRBQTZEO1lBQy9ELENBQUM7WUFBQyxPQUFPLENBQU0sRUFBRSxDQUFDO2dCQUNoQixPQUFPLFNBQVMsQ0FBQztZQUNuQixDQUFDO1FBQ0gsT0FBTyxVQUEyQixDQUFDO0lBQ3JDLENBQUM7Q0FDRjtBQXBDRCxrREFvQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJbmplY3RhYmxlUmVnaXN0cnlJbXAsXG4gIEluamVjdGFibGVzLFxufSBmcm9tIFwiQGRlY2FmLXRzL2luamVjdGFibGUtZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgUmVwb3NpdG9yeSB9IGZyb20gXCIuL1JlcG9zaXRvcnlcIjtcbmltcG9ydCB7IE1vZGVsLCBNb2RlbENvbnN0cnVjdG9yIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgZ2VuZXJhdGVJbmplY3RhYmxlTmFtZUZvclJlcG9zaXRvcnkgfSBmcm9tIFwiLi91dGlsc1wiO1xuaW1wb3J0IHsgUGVyc2lzdGVuY2VLZXlzIH0gZnJvbSBcIi4uL3BlcnNpc3RlbmNlL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgQWRhcHRlciB9IGZyb20gXCIuLi9wZXJzaXN0ZW5jZS9BZGFwdGVyXCI7XG5cbmV4cG9ydCBjbGFzcyBJbmplY3RhYmxlc1JlZ2lzdHJ5IGV4dGVuZHMgSW5qZWN0YWJsZVJlZ2lzdHJ5SW1wIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG92ZXJyaWRlIGdldDxUPihuYW1lOiBzdHJpbmcpOiBUIHwgdW5kZWZpbmVkIHtcbiAgICBsZXQgaW5qZWN0YWJsZSA9IHN1cGVyLmdldChuYW1lKTtcbiAgICBpZiAoIWluamVjdGFibGUpXG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBtID0gTW9kZWwuZ2V0KG5hbWUpO1xuICAgICAgICBpZiAobSkgaW5qZWN0YWJsZSA9IFJlcG9zaXRvcnkuZm9yTW9kZWwobSk7XG4gICAgICAgIGlmIChpbmplY3RhYmxlKSB7XG4gICAgICAgICAgaWYgKGluamVjdGFibGUgaW5zdGFuY2VvZiBSZXBvc2l0b3J5KSByZXR1cm4gaW5qZWN0YWJsZSBhcyBUO1xuICAgICAgICAgIGNvbnN0IGZsYXZvdXIgPVxuICAgICAgICAgICAgUmVmbGVjdC5nZXRNZXRhZGF0YShcbiAgICAgICAgICAgICAgQWRhcHRlci5rZXkoUGVyc2lzdGVuY2VLZXlzLkFEQVBURVIpLFxuICAgICAgICAgICAgICBpbmplY3RhYmxlLmNvbnN0cnVjdG9yXG4gICAgICAgICAgICApIHx8XG4gICAgICAgICAgICBSZWZsZWN0LmdldE1ldGFkYXRhKFxuICAgICAgICAgICAgICBBZGFwdGVyLmtleShQZXJzaXN0ZW5jZUtleXMuQURBUFRFUiksXG4gICAgICAgICAgICAgIG0gYXMgTW9kZWxDb25zdHJ1Y3Rvcjxhbnk+XG4gICAgICAgICAgICApO1xuICAgICAgICAgIEluamVjdGFibGVzLnJlZ2lzdGVyKFxuICAgICAgICAgICAgaW5qZWN0YWJsZSxcbiAgICAgICAgICAgIGdlbmVyYXRlSW5qZWN0YWJsZU5hbWVGb3JSZXBvc2l0b3J5KFxuICAgICAgICAgICAgICBtIGFzIE1vZGVsQ29uc3RydWN0b3I8YW55PixcbiAgICAgICAgICAgICAgZmxhdm91clxuICAgICAgICAgICAgKVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG4gICAgcmV0dXJuIGluamVjdGFibGUgYXMgVCB8IHVuZGVmaW5lZDtcbiAgfVxufVxuIl19
|
package/lib/repository/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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmVwb3NpdG9yeS90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2FzY2FkZSwgT3JkZXJEaXJlY3Rpb24gfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcblxuZXhwb3J0IHR5cGUgQ2FzY2FkZU1ldGFkYXRhID0ge1xuICB1cGRhdGU6IENhc2NhZGU7XG4gIGRlbGV0ZTogQ2FzY2FkZTtcbn07XG5cbmV4cG9ydCB0eXBlIEluZGV4TWV0YWRhdGEgPSB7XG4gIGRpcmVjdGlvbnM/OiBPcmRlckRpcmVjdGlvblsyXTtcbiAgY29tcG9zaXRpb25zPzogc3RyaW5nW107XG59O1xuXG5leHBvcnQgdHlwZSBOYW1lZEluZGV4TWV0YWRhdGEgPSBJbmRleE1ldGFkYXRhICYge1xuICBzdWZmaXg6IHN0cmluZztcbn07XG4iXX0=
|
@@ -0,0 +1,14 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.final = final;
|
4
|
+
function final() {
|
5
|
+
return (target, propertyKey, descriptor) => {
|
6
|
+
if (!descriptor)
|
7
|
+
throw new Error("final decorator can only be used on methods");
|
8
|
+
if (descriptor?.configurable) {
|
9
|
+
descriptor.configurable = false;
|
10
|
+
}
|
11
|
+
return descriptor;
|
12
|
+
};
|
13
|
+
}
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9kZWNvcmF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsc0JBYUM7QUFiRCxTQUFnQixLQUFLO0lBQ25CLE9BQU8sQ0FDTCxNQUFjLEVBQ2QsV0FBaUIsRUFDakIsVUFBK0IsRUFDL0IsRUFBRTtRQUNGLElBQUksQ0FBQyxVQUFVO1lBQ2IsTUFBTSxJQUFJLEtBQUssQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO1FBQ2pFLElBQUksVUFBVSxFQUFFLFlBQVksRUFBRSxDQUFDO1lBQzdCLFVBQVUsQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1FBQ2xDLENBQUM7UUFDRCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGZpbmFsKCkge1xuICByZXR1cm4gKFxuICAgIHRhcmdldDogb2JqZWN0LFxuICAgIHByb3BlcnR5S2V5PzogYW55LFxuICAgIGRlc2NyaXB0b3I/OiBQcm9wZXJ0eURlc2NyaXB0b3JcbiAgKSA9PiB7XG4gICAgaWYgKCFkZXNjcmlwdG9yKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiZmluYWwgZGVjb3JhdG9yIGNhbiBvbmx5IGJlIHVzZWQgb24gbWV0aG9kc1wiKTtcbiAgICBpZiAoZGVzY3JpcHRvcj8uY29uZmlndXJhYmxlKSB7XG4gICAgICBkZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSA9IGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gZGVzY3JpcHRvcjtcbiAgfTtcbn1cbiJdfQ==
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare function final(): (target: object, propertyKey?: any, descriptor?: PropertyDescriptor) => PropertyDescriptor;
|
@@ -0,0 +1,23 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.ConnectionError = exports.ForbiddenError = exports.AuthorizationError = void 0;
|
4
|
+
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
5
|
+
class AuthorizationError extends db_decorators_1.BaseError {
|
6
|
+
constructor(msg) {
|
7
|
+
super(AuthorizationError.name, msg, 401);
|
8
|
+
}
|
9
|
+
}
|
10
|
+
exports.AuthorizationError = AuthorizationError;
|
11
|
+
class ForbiddenError extends db_decorators_1.BaseError {
|
12
|
+
constructor(msg) {
|
13
|
+
super(ForbiddenError.name, msg, 403);
|
14
|
+
}
|
15
|
+
}
|
16
|
+
exports.ForbiddenError = ForbiddenError;
|
17
|
+
class ConnectionError extends db_decorators_1.BaseError {
|
18
|
+
constructor(msg) {
|
19
|
+
super(ConnectionError.name, msg, 503);
|
20
|
+
}
|
21
|
+
}
|
22
|
+
exports.ConnectionError = ConnectionError;
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyREFBb0Q7QUFFcEQsTUFBYSxrQkFBbUIsU0FBUSx5QkFBUztJQUMvQyxZQUFZLEdBQW1CO1FBQzdCLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzNDLENBQUM7Q0FDRjtBQUpELGdEQUlDO0FBRUQsTUFBYSxjQUFlLFNBQVEseUJBQVM7SUFDM0MsWUFBWSxHQUFtQjtRQUM3QixLQUFLLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDdkMsQ0FBQztDQUNGO0FBSkQsd0NBSUM7QUFFRCxNQUFhLGVBQWdCLFNBQVEseUJBQVM7SUFDNUMsWUFBWSxHQUFtQjtRQUM3QixLQUFLLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDeEMsQ0FBQztDQUNGO0FBSkQsMENBSUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlRXJyb3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnNcIjtcblxuZXhwb3J0IGNsYXNzIEF1dGhvcml6YXRpb25FcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1zZzogc3RyaW5nIHwgRXJyb3IpIHtcbiAgICBzdXBlcihBdXRob3JpemF0aW9uRXJyb3IubmFtZSwgbXNnLCA0MDEpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBGb3JiaWRkZW5FcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1zZzogc3RyaW5nIHwgRXJyb3IpIHtcbiAgICBzdXBlcihGb3JiaWRkZW5FcnJvci5uYW1lLCBtc2csIDQwMyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIENvbm5lY3Rpb25FcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1zZzogc3RyaW5nIHwgRXJyb3IpIHtcbiAgICBzdXBlcihDb25uZWN0aW9uRXJyb3IubmFtZSwgbXNnLCA1MDMpO1xuICB9XG59XG4iXX0=
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import { BaseError } from "@decaf-ts/db-decorators";
|
2
|
+
export declare class AuthorizationError extends BaseError {
|
3
|
+
constructor(msg: string | Error);
|
4
|
+
}
|
5
|
+
export declare class ForbiddenError extends BaseError {
|
6
|
+
constructor(msg: string | Error);
|
7
|
+
}
|
8
|
+
export declare class ConnectionError extends BaseError {
|
9
|
+
constructor(msg: string | Error);
|
10
|
+
}
|
@@ -15,5 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
15
15
|
};
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
17
17
|
__exportStar(require("./decorators.cjs"), exports);
|
18
|
-
__exportStar(require("./
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
18
|
+
__exportStar(require("./errors.cjs"), exports);
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1EQUE2QjtBQUM3QiwrQ0FBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9kZWNvcmF0b3JzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9lcnJvcnNcIjtcbiJdfQ==
|
package/package.json
CHANGED
@@ -1,16 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* @summary Standard Builder APi for the Builder design pattern
|
3
|
-
* @description Expose the build method
|
4
|
-
*
|
5
|
-
* @interface Builder
|
6
|
-
*
|
7
|
-
* @category Construction
|
8
|
-
*/
|
9
|
-
export interface Builder<T> {
|
10
|
-
/**
|
11
|
-
* @summary Build the Object
|
12
|
-
*
|
13
|
-
* @method
|
14
|
-
*/
|
15
|
-
build(...args: any[]): T;
|
16
|
-
}
|
@@ -1,2 +0,0 @@
|
|
1
|
-
export {};
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbnRlcmZhY2VzL0J1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHN1bW1hcnkgU3RhbmRhcmQgQnVpbGRlciBBUGkgZm9yIHRoZSBCdWlsZGVyIGRlc2lnbiBwYXR0ZXJuXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlIHRoZSBidWlsZCBtZXRob2RcbiAqXG4gKiBAaW50ZXJmYWNlIEJ1aWxkZXJcbiAqXG4gKiBAY2F0ZWdvcnkgQ29uc3RydWN0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVpbGRlcjxUPiB7XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBCdWlsZCB0aGUgT2JqZWN0XG4gICAqXG4gICAqIEBtZXRob2RcbiAgICovXG4gIGJ1aWxkKC4uLmFyZ3M6IGFueVtdKTogVDtcbn1cbiJdfQ==
|
@@ -1,7 +0,0 @@
|
|
1
|
-
import { ModelArg } from "@decaf-ts/decorator-validation";
|
2
|
-
import { BaseModel } from "./BaseModel";
|
3
|
-
export declare abstract class IdentifiedBaseModel extends BaseModel {
|
4
|
-
createdBy: string;
|
5
|
-
updatedBy: string;
|
6
|
-
protected constructor(arg?: ModelArg<IdentifiedBaseModel>);
|
7
|
-
}
|
@@ -1,25 +0,0 @@
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
4
|
-
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;
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
6
|
-
};
|
7
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
8
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
9
|
-
};
|
10
|
-
import { createdBy, updatedBy } from "./decorators";
|
11
|
-
import { BaseModel } from "./BaseModel";
|
12
|
-
export class IdentifiedBaseModel extends BaseModel {
|
13
|
-
constructor(arg) {
|
14
|
-
super(arg);
|
15
|
-
}
|
16
|
-
}
|
17
|
-
__decorate([
|
18
|
-
createdBy(),
|
19
|
-
__metadata("design:type", String)
|
20
|
-
], IdentifiedBaseModel.prototype, "createdBy", void 0);
|
21
|
-
__decorate([
|
22
|
-
updatedBy(),
|
23
|
-
__metadata("design:type", String)
|
24
|
-
], IdentifiedBaseModel.prototype, "updatedBy", void 0);
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSWRlbnRpZmllZEJhc2VNb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tb2RlbC9JZGVudGlmaWVkQmFzZU1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFeEMsTUFBTSxPQUFnQixtQkFBb0IsU0FBUSxTQUFTO0lBTXpELFlBQXNCLEdBQW1DO1FBQ3ZELEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNiLENBQUM7Q0FDRjtBQVBDO0lBREMsU0FBUyxFQUFFOztzREFDTztBQUVuQjtJQURDLFNBQVMsRUFBRTs7c0RBQ08iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2RlbEFyZyB9IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcbmltcG9ydCB7IGNyZWF0ZWRCeSwgdXBkYXRlZEJ5IH0gZnJvbSBcIi4vZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgQmFzZU1vZGVsIH0gZnJvbSBcIi4vQmFzZU1vZGVsXCI7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBJZGVudGlmaWVkQmFzZU1vZGVsIGV4dGVuZHMgQmFzZU1vZGVsIHtcbiAgQGNyZWF0ZWRCeSgpXG4gIGNyZWF0ZWRCeSE6IHN0cmluZztcbiAgQHVwZGF0ZWRCeSgpXG4gIHVwZGF0ZWRCeSE6IHN0cmluZztcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoYXJnPzogTW9kZWxBcmc8SWRlbnRpZmllZEJhc2VNb2RlbD4pIHtcbiAgICBzdXBlcihhcmcpO1xuICB9XG59XG4iXX0=
|
@@ -1,50 +0,0 @@
|
|
1
|
-
import { Executor } from "../interfaces";
|
2
|
-
import { Model, ModelArg } from "@decaf-ts/decorator-validation";
|
3
|
-
import { QueryBuilder } from "./options";
|
4
|
-
import { Priority } from "./constants";
|
5
|
-
import { Statement } from "./Statement";
|
6
|
-
import { Paginatable } from "../interfaces/Paginatable";
|
7
|
-
import { Paginator } from "./Paginator";
|
8
|
-
/**
|
9
|
-
*/
|
10
|
-
/**
|
11
|
-
* @summary Clause Class
|
12
|
-
* @description Represents a Clause in a {@link Statement}
|
13
|
-
*
|
14
|
-
* @typedef Q Represents que query object the persistence adapter uses
|
15
|
-
*
|
16
|
-
* @param {ModelArg<Clause<Q>>} [clause]
|
17
|
-
*
|
18
|
-
* @class Clause
|
19
|
-
* @extends Model
|
20
|
-
* @implements Executor
|
21
|
-
* @implements QueryBuilder
|
22
|
-
* @abstract
|
23
|
-
*
|
24
|
-
* @category Query
|
25
|
-
* @subcategory Clauses
|
26
|
-
*/
|
27
|
-
export declare abstract class Clause<Q> extends Model implements Executor, Paginatable, QueryBuilder<Q> {
|
28
|
-
readonly priority: Priority;
|
29
|
-
readonly statement: Statement<Q>;
|
30
|
-
protected constructor(clause?: ModelArg<Clause<Q>>);
|
31
|
-
protected get adapter(): import("..").Adapter<any, Q, any, any>;
|
32
|
-
protected get Clauses(): import("./ClauseFactory").ClauseFactory<any, Q, import("..").Adapter<any, Q, any, any>>;
|
33
|
-
/**
|
34
|
-
* @summary return the priority of the clause
|
35
|
-
* @see Priority
|
36
|
-
*/
|
37
|
-
getPriority(): number;
|
38
|
-
abstract build(previous: Q): Q;
|
39
|
-
/**
|
40
|
-
* @inheritDoc
|
41
|
-
* @abstract
|
42
|
-
*/
|
43
|
-
execute<R>(): Promise<R>;
|
44
|
-
/**
|
45
|
-
* @inheritDoc
|
46
|
-
* @abstract
|
47
|
-
*/
|
48
|
-
paginate<R>(size: number): Promise<Paginator<R, Q>>;
|
49
|
-
toString(): string;
|
50
|
-
}
|
package/lib/esm/query/Clause.js
DELETED
@@ -1,82 +0,0 @@
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
4
|
-
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;
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
6
|
-
};
|
7
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
8
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
9
|
-
};
|
10
|
-
import { Model, required, type, } from "@decaf-ts/decorator-validation";
|
11
|
-
import { QueryError } from "./errors";
|
12
|
-
import { Priority } from "./constants";
|
13
|
-
import { Statement } from "./Statement";
|
14
|
-
/**
|
15
|
-
*/
|
16
|
-
/**
|
17
|
-
* @summary Clause Class
|
18
|
-
* @description Represents a Clause in a {@link Statement}
|
19
|
-
*
|
20
|
-
* @typedef Q Represents que query object the persistence adapter uses
|
21
|
-
*
|
22
|
-
* @param {ModelArg<Clause<Q>>} [clause]
|
23
|
-
*
|
24
|
-
* @class Clause
|
25
|
-
* @extends Model
|
26
|
-
* @implements Executor
|
27
|
-
* @implements QueryBuilder
|
28
|
-
* @abstract
|
29
|
-
*
|
30
|
-
* @category Query
|
31
|
-
* @subcategory Clauses
|
32
|
-
*/
|
33
|
-
export class Clause extends Model {
|
34
|
-
constructor(clause) {
|
35
|
-
super();
|
36
|
-
this.priority = clause?.priority;
|
37
|
-
this.statement = clause?.statement;
|
38
|
-
if (!this.statement || !this.priority)
|
39
|
-
throw new QueryError("Missing statement or priority. Should be impossible");
|
40
|
-
this.statement.addClause(this);
|
41
|
-
}
|
42
|
-
get adapter() {
|
43
|
-
return this.statement.getAdapter();
|
44
|
-
}
|
45
|
-
get Clauses() {
|
46
|
-
return this.statement.getAdapter().Clauses;
|
47
|
-
}
|
48
|
-
/**
|
49
|
-
* @summary return the priority of the clause
|
50
|
-
* @see Priority
|
51
|
-
*/
|
52
|
-
getPriority() {
|
53
|
-
return this.priority;
|
54
|
-
}
|
55
|
-
/**
|
56
|
-
* @inheritDoc
|
57
|
-
* @abstract
|
58
|
-
*/
|
59
|
-
async execute() {
|
60
|
-
return this.statement.execute();
|
61
|
-
}
|
62
|
-
/**
|
63
|
-
* @inheritDoc
|
64
|
-
* @abstract
|
65
|
-
*/
|
66
|
-
async paginate(size) {
|
67
|
-
return this.statement.paginate(size);
|
68
|
-
}
|
69
|
-
toString() {
|
70
|
-
return this.constructor.name;
|
71
|
-
}
|
72
|
-
}
|
73
|
-
__decorate([
|
74
|
-
required(),
|
75
|
-
__metadata("design:type", Number)
|
76
|
-
], Clause.prototype, "priority", void 0);
|
77
|
-
__decorate([
|
78
|
-
required(),
|
79
|
-
type("object"),
|
80
|
-
__metadata("design:type", Statement)
|
81
|
-
], Clause.prototype, "statement", void 0);
|
82
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xhdXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3F1ZXJ5L0NsYXVzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFDQSxPQUFPLEVBQ0wsS0FBSyxFQUVMLFFBQVEsRUFDUixJQUFJLEdBQ0wsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUl4QztHQUNHO0FBRUg7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQkc7QUFDSCxNQUFNLE9BQWdCLE1BQ3BCLFNBQVEsS0FBSztJQVViLFlBQXNCLE1BQTRCO1FBQ2hELEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLEVBQUUsUUFBUSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxFQUFFLFNBQVMsQ0FBQztRQUNuQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQ25DLE1BQU0sSUFBSSxVQUFVLENBQ2xCLHFEQUFxRCxDQUN0RCxDQUFDO1FBQ0osSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELElBQWMsT0FBTztRQUNuQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELElBQWMsT0FBTztRQUNuQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLENBQUMsT0FBTyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBa0IsQ0FBQztJQUNqQyxDQUFDO0lBSUQ7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLE9BQU87UUFDWCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUNEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxRQUFRLENBQUksSUFBWTtRQUM1QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztJQUMvQixDQUFDO0NBa0JGO0FBdEVVO0lBRFIsUUFBUSxFQUFFOzt3Q0FDa0I7QUFJcEI7SUFGUixRQUFRLEVBQUU7SUFDVixJQUFJLENBQUMsUUFBUSxDQUFDOzhCQUNNLFNBQVM7eUNBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFeGVjdXRvciB9IGZyb20gXCIuLi9pbnRlcmZhY2VzXCI7XG5pbXBvcnQge1xuICBNb2RlbCxcbiAgTW9kZWxBcmcsXG4gIHJlcXVpcmVkLFxuICB0eXBlLFxufSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBRdWVyeUJ1aWxkZXIgfSBmcm9tIFwiLi9vcHRpb25zXCI7XG5pbXBvcnQgeyBRdWVyeUVycm9yIH0gZnJvbSBcIi4vZXJyb3JzXCI7XG5pbXBvcnQgeyBQcmlvcml0eSB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgU3RhdGVtZW50IH0gZnJvbSBcIi4vU3RhdGVtZW50XCI7XG5pbXBvcnQgeyBQYWdpbmF0YWJsZSB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL1BhZ2luYXRhYmxlXCI7XG5pbXBvcnQgeyBQYWdpbmF0b3IgfSBmcm9tIFwiLi9QYWdpbmF0b3JcIjtcblxuLyoqXG4gKi9cblxuLyoqXG4gKiBAc3VtbWFyeSBDbGF1c2UgQ2xhc3NcbiAqIEBkZXNjcmlwdGlvbiBSZXByZXNlbnRzIGEgQ2xhdXNlIGluIGEge0BsaW5rIFN0YXRlbWVudH1cbiAqXG4gKiBAdHlwZWRlZiBRIFJlcHJlc2VudHMgcXVlIHF1ZXJ5IG9iamVjdCB0aGUgcGVyc2lzdGVuY2UgYWRhcHRlciB1c2VzXG4gKlxuICogQHBhcmFtIHtNb2RlbEFyZzxDbGF1c2U8UT4+fSBbY2xhdXNlXVxuICpcbiAqIEBjbGFzcyBDbGF1c2VcbiAqIEBleHRlbmRzIE1vZGVsXG4gKiBAaW1wbGVtZW50cyBFeGVjdXRvclxuICogQGltcGxlbWVudHMgUXVlcnlCdWlsZGVyXG4gKiBAYWJzdHJhY3RcbiAqXG4gKiBAY2F0ZWdvcnkgUXVlcnlcbiAqIEBzdWJjYXRlZ29yeSBDbGF1c2VzXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBDbGF1c2U8UT5cbiAgZXh0ZW5kcyBNb2RlbFxuICBpbXBsZW1lbnRzIEV4ZWN1dG9yLCBQYWdpbmF0YWJsZSwgUXVlcnlCdWlsZGVyPFE+XG57XG4gIEByZXF1aXJlZCgpXG4gIHJlYWRvbmx5IHByaW9yaXR5ITogUHJpb3JpdHk7XG5cbiAgQHJlcXVpcmVkKClcbiAgQHR5cGUoXCJvYmplY3RcIilcbiAgcmVhZG9ubHkgc3RhdGVtZW50ITogU3RhdGVtZW50PFE+O1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihjbGF1c2U/OiBNb2RlbEFyZzxDbGF1c2U8UT4+KSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnByaW9yaXR5ID0gY2xhdXNlPy5wcmlvcml0eTtcbiAgICB0aGlzLnN0YXRlbWVudCA9IGNsYXVzZT8uc3RhdGVtZW50O1xuICAgIGlmICghdGhpcy5zdGF0ZW1lbnQgfHwgIXRoaXMucHJpb3JpdHkpXG4gICAgICB0aHJvdyBuZXcgUXVlcnlFcnJvcihcbiAgICAgICAgXCJNaXNzaW5nIHN0YXRlbWVudCBvciBwcmlvcml0eS4gU2hvdWxkIGJlIGltcG9zc2libGVcIlxuICAgICAgKTtcbiAgICB0aGlzLnN0YXRlbWVudC5hZGRDbGF1c2UodGhpcyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IGFkYXB0ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGVtZW50LmdldEFkYXB0ZXIoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgQ2xhdXNlcygpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZW1lbnQuZ2V0QWRhcHRlcigpLkNsYXVzZXM7XG4gIH1cblxuICAvKipcbiAgICogQHN1bW1hcnkgcmV0dXJuIHRoZSBwcmlvcml0eSBvZiB0aGUgY2xhdXNlXG4gICAqIEBzZWUgUHJpb3JpdHlcbiAgICovXG4gIGdldFByaW9yaXR5KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucHJpb3JpdHkgYXMgbnVtYmVyO1xuICB9XG5cbiAgYWJzdHJhY3QgYnVpbGQocHJldmlvdXM6IFEpOiBRO1xuXG4gIC8qKlxuICAgKiBAaW5oZXJpdERvY1xuICAgKiBAYWJzdHJhY3RcbiAgICovXG4gIGFzeW5jIGV4ZWN1dGU8Uj4oKTogUHJvbWlzZTxSPiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGVtZW50LmV4ZWN1dGUoKTtcbiAgfVxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICogQGFic3RyYWN0XG4gICAqL1xuICBhc3luYyBwYWdpbmF0ZTxSPihzaXplOiBudW1iZXIpOiBQcm9taXNlPFBhZ2luYXRvcjxSLCBRPj4ge1xuICAgIHJldHVybiB0aGlzLnN0YXRlbWVudC5wYWdpbmF0ZShzaXplKTtcbiAgfVxuXG4gIHRvU3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnN0cnVjdG9yLm5hbWU7XG4gIH1cblxuICAvLyAvKipcbiAgLy8gICogQHN1bW1hcnkgRmFjdG9yeSBtZXRob2QgZm9yIHtAbGluayBGcm9tQ2xhdXNlfVxuICAvLyAgKiBAcGFyYW0ge3twcmlvcml0eTogbnVtYmVyLCBzdGF0ZW1lbnQ6IFN0YXRlbWVudCwgZ2V0UHJpb3JpdHk6IEZ1bmN0aW9uLCBidWlsZDogRnVuY3Rpb24sIHByb2Nlc3M6IEZ1bmN0aW9ufX0gY2xhdXNlXG4gIC8vICAqL1xuICAvLyBzdGF0aWMgaXNDbGF1c2UoY2xhdXNlOiBQYXJ0aWFsPENsYXVzZTxhbnk+Pikge1xuICAvLyAgIHJldHVybiBjbGF1c2UgaW5zdGFuY2VvZiBDbGF1c2U7XG4gIC8vICAgcmV0dXJuIChcbiAgLy8gICAgIGNsYXVzZS5jb25zdHJ1Y3RvciAmJlxuICAvLyAgICAgY2xhdXNlLmNvbnN0cnVjdG9yLm5hbWUgJiZcbiAgLy8gICAgIGNsYXVzZS5wcmlvcml0eSAmJlxuICAvLyAgICAgY2xhdXNlLnN0YXRlbWVudCAmJlxuICAvLyAgICAgY2xhdXNlLmdldFByaW9yaXR5ICYmXG4gIC8vICAgICBjbGF1c2UuYnVpbGQgJiZcbiAgLy8gICAgIGNsYXVzZS5leGVjdXRlXG4gIC8vICAgKTtcbiAgLy8gfVxufVxuIl19
|
@@ -1,71 +0,0 @@
|
|
1
|
-
import { FromClause } from "./clauses";
|
2
|
-
import { GroupByClause } from "./clauses/GroupByClause";
|
3
|
-
import { InsertClause } from "./clauses/InsertClause";
|
4
|
-
import { LimitClause } from "./clauses/LimitClause";
|
5
|
-
import { OffsetClause } from "./clauses/OffsetClause";
|
6
|
-
import { OrderByClause } from "./clauses/OrderByClause";
|
7
|
-
import { SelectClause } from "./clauses/SelectClause";
|
8
|
-
import { ValuesClause } from "./clauses/ValuesClause";
|
9
|
-
import { WhereClause } from "./clauses/WhereClause";
|
10
|
-
import { Adapter } from "../persistence";
|
11
|
-
import { Condition } from "./Condition";
|
12
|
-
import { FromSelector, GroupBySelector, LimitSelector, OffsetSelector, OrderBySelector, SelectSelector } from "./selectors";
|
13
|
-
import { Statement } from "./Statement";
|
14
|
-
import { Model } from "@decaf-ts/decorator-validation";
|
15
|
-
export declare abstract class ClauseFactory<Y, Q, A extends Adapter<Y, Q, any, any>> {
|
16
|
-
protected adapter: A;
|
17
|
-
/**
|
18
|
-
* @summary Factory method for {@link FromClause}
|
19
|
-
* @param {Statement} statement
|
20
|
-
* @param {FromSelector} selector
|
21
|
-
*/
|
22
|
-
abstract from<M extends Model>(statement: Statement<Q>, selector: FromSelector<M>): FromClause<Q, M>;
|
23
|
-
/**
|
24
|
-
* @summary Factory method for {@link GroupByClause}
|
25
|
-
* @param {Statement} statement
|
26
|
-
* @param {GroupBySelector} selector
|
27
|
-
*/
|
28
|
-
abstract groupBy(statement: Statement<Q>, selector: GroupBySelector): GroupByClause<Q>;
|
29
|
-
/**
|
30
|
-
* @summary Factory method for {@link InsertClause}
|
31
|
-
* @param {Statement} statement
|
32
|
-
*/
|
33
|
-
abstract insert<M extends Model>(): InsertClause<Q, M>;
|
34
|
-
/**
|
35
|
-
* @summary Factory method for {@link LimitClause}
|
36
|
-
* @param {Statement} statement
|
37
|
-
* @param {LimitSelector} selector
|
38
|
-
*/
|
39
|
-
abstract limit(statement: Statement<Q>, selector: LimitSelector): LimitClause<Q>;
|
40
|
-
/**
|
41
|
-
* @summary Factory method for {@link OffsetClause}
|
42
|
-
* @param {Statement} statement
|
43
|
-
* @param {OffsetSelector} selector
|
44
|
-
*/
|
45
|
-
abstract offset(statement: Statement<Q>, selector: OffsetSelector): OffsetClause<Q>;
|
46
|
-
/**
|
47
|
-
* @summary Factory method for {@link OrderByClause}
|
48
|
-
* @param {Statement} statement
|
49
|
-
* @param {OrderBySelector} selector
|
50
|
-
*/
|
51
|
-
abstract orderBy(statement: Statement<Q>, selector: OrderBySelector[]): OrderByClause<Q>;
|
52
|
-
/**
|
53
|
-
* @summary Factory method for {@link SelectClause}
|
54
|
-
* @param {Statement} statement
|
55
|
-
* @param {SelectSelector} [selector]
|
56
|
-
*/
|
57
|
-
abstract select<M extends Model>(selector?: SelectSelector): SelectClause<Q, M>;
|
58
|
-
/**
|
59
|
-
* @summary Factory method for {@link ValuesClause}
|
60
|
-
* @param {Statement} statement
|
61
|
-
* @param {M[]} values
|
62
|
-
*/
|
63
|
-
abstract values<M extends Model>(statement: Statement<Q>, values: M[]): ValuesClause<Q, M>;
|
64
|
-
/**
|
65
|
-
* @summary Factory method for {@link WhereClause}
|
66
|
-
* @param {Statement} statement
|
67
|
-
* @param {Condition} condition
|
68
|
-
*/
|
69
|
-
abstract where(statement: Statement<Q>, condition: Condition): WhereClause<Q>;
|
70
|
-
protected constructor(adapter: A);
|
71
|
-
}
|
@@ -1,6 +0,0 @@
|
|
1
|
-
export class ClauseFactory {
|
2
|
-
constructor(adapter) {
|
3
|
-
this.adapter = adapter;
|
4
|
-
}
|
5
|
-
}
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xhdXNlRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9xdWVyeS9DbGF1c2VGYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNCQSxNQUFNLE9BQWdCLGFBQWE7SUEyRWpDLFlBQWdDLE9BQVU7UUFBVixZQUFPLEdBQVAsT0FBTyxDQUFHO0lBQUcsQ0FBQztDQUMvQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZyb21DbGF1c2UgfSBmcm9tIFwiLi9jbGF1c2VzXCI7XG5pbXBvcnQgeyBHcm91cEJ5Q2xhdXNlIH0gZnJvbSBcIi4vY2xhdXNlcy9Hcm91cEJ5Q2xhdXNlXCI7XG5pbXBvcnQgeyBJbnNlcnRDbGF1c2UgfSBmcm9tIFwiLi9jbGF1c2VzL0luc2VydENsYXVzZVwiO1xuaW1wb3J0IHsgTGltaXRDbGF1c2UgfSBmcm9tIFwiLi9jbGF1c2VzL0xpbWl0Q2xhdXNlXCI7XG5pbXBvcnQgeyBPZmZzZXRDbGF1c2UgfSBmcm9tIFwiLi9jbGF1c2VzL09mZnNldENsYXVzZVwiO1xuaW1wb3J0IHsgT3JkZXJCeUNsYXVzZSB9IGZyb20gXCIuL2NsYXVzZXMvT3JkZXJCeUNsYXVzZVwiO1xuaW1wb3J0IHsgU2VsZWN0Q2xhdXNlIH0gZnJvbSBcIi4vY2xhdXNlcy9TZWxlY3RDbGF1c2VcIjtcbmltcG9ydCB7IFZhbHVlc0NsYXVzZSB9IGZyb20gXCIuL2NsYXVzZXMvVmFsdWVzQ2xhdXNlXCI7XG5pbXBvcnQgeyBXaGVyZUNsYXVzZSB9IGZyb20gXCIuL2NsYXVzZXMvV2hlcmVDbGF1c2VcIjtcbmltcG9ydCB7IEFkYXB0ZXIgfSBmcm9tIFwiLi4vcGVyc2lzdGVuY2VcIjtcbmltcG9ydCB7IENvbmRpdGlvbiB9IGZyb20gXCIuL0NvbmRpdGlvblwiO1xuaW1wb3J0IHtcbiAgRnJvbVNlbGVjdG9yLFxuICBHcm91cEJ5U2VsZWN0b3IsXG4gIExpbWl0U2VsZWN0b3IsXG4gIE9mZnNldFNlbGVjdG9yLFxuICBPcmRlckJ5U2VsZWN0b3IsXG4gIFNlbGVjdFNlbGVjdG9yLFxufSBmcm9tIFwiLi9zZWxlY3RvcnNcIjtcbmltcG9ydCB7IFN0YXRlbWVudCB9IGZyb20gXCIuL1N0YXRlbWVudFwiO1xuaW1wb3J0IHsgTW9kZWwgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBDbGF1c2VGYWN0b3J5PFksIFEsIEEgZXh0ZW5kcyBBZGFwdGVyPFksIFEsIGFueSwgYW55Pj4ge1xuICAvKipcbiAgICogQHN1bW1hcnkgRmFjdG9yeSBtZXRob2QgZm9yIHtAbGluayBGcm9tQ2xhdXNlfVxuICAgKiBAcGFyYW0ge1N0YXRlbWVudH0gc3RhdGVtZW50XG4gICAqIEBwYXJhbSB7RnJvbVNlbGVjdG9yfSBzZWxlY3RvclxuICAgKi9cbiAgYWJzdHJhY3QgZnJvbTxNIGV4dGVuZHMgTW9kZWw+KFxuICAgIHN0YXRlbWVudDogU3RhdGVtZW50PFE+LFxuICAgIHNlbGVjdG9yOiBGcm9tU2VsZWN0b3I8TT5cbiAgKTogRnJvbUNsYXVzZTxRLCBNPjtcbiAgLyoqXG4gICAqIEBzdW1tYXJ5IEZhY3RvcnkgbWV0aG9kIGZvciB7QGxpbmsgR3JvdXBCeUNsYXVzZX1cbiAgICogQHBhcmFtIHtTdGF0ZW1lbnR9IHN0YXRlbWVudFxuICAgKiBAcGFyYW0ge0dyb3VwQnlTZWxlY3Rvcn0gc2VsZWN0b3JcbiAgICovXG4gIGFic3RyYWN0IGdyb3VwQnkoXG4gICAgc3RhdGVtZW50OiBTdGF0ZW1lbnQ8UT4sXG4gICAgc2VsZWN0b3I6IEdyb3VwQnlTZWxlY3RvclxuICApOiBHcm91cEJ5Q2xhdXNlPFE+O1xuICAvKipcbiAgICogQHN1bW1hcnkgRmFjdG9yeSBtZXRob2QgZm9yIHtAbGluayBJbnNlcnRDbGF1c2V9XG4gICAqIEBwYXJhbSB7U3RhdGVtZW50fSBzdGF0ZW1lbnRcbiAgICovXG4gIGFic3RyYWN0IGluc2VydDxNIGV4dGVuZHMgTW9kZWw+KCk6IEluc2VydENsYXVzZTxRLCBNPjtcbiAgLyoqXG4gICAqIEBzdW1tYXJ5IEZhY3RvcnkgbWV0aG9kIGZvciB7QGxpbmsgTGltaXRDbGF1c2V9XG4gICAqIEBwYXJhbSB7U3RhdGVtZW50fSBzdGF0ZW1lbnRcbiAgICogQHBhcmFtIHtMaW1pdFNlbGVjdG9yfSBzZWxlY3RvclxuICAgKi9cbiAgYWJzdHJhY3QgbGltaXQoXG4gICAgc3RhdGVtZW50OiBTdGF0ZW1lbnQ8UT4sXG4gICAgc2VsZWN0b3I6IExpbWl0U2VsZWN0b3JcbiAgKTogTGltaXRDbGF1c2U8UT47XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBGYWN0b3J5IG1ldGhvZCBmb3Ige0BsaW5rIE9mZnNldENsYXVzZX1cbiAgICogQHBhcmFtIHtTdGF0ZW1lbnR9IHN0YXRlbWVudFxuICAgKiBAcGFyYW0ge09mZnNldFNlbGVjdG9yfSBzZWxlY3RvclxuICAgKi9cbiAgYWJzdHJhY3Qgb2Zmc2V0KFxuICAgIHN0YXRlbWVudDogU3RhdGVtZW50PFE+LFxuICAgIHNlbGVjdG9yOiBPZmZzZXRTZWxlY3RvclxuICApOiBPZmZzZXRDbGF1c2U8UT47XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBGYWN0b3J5IG1ldGhvZCBmb3Ige0BsaW5rIE9yZGVyQnlDbGF1c2V9XG4gICAqIEBwYXJhbSB7U3RhdGVtZW50fSBzdGF0ZW1lbnRcbiAgICogQHBhcmFtIHtPcmRlckJ5U2VsZWN0b3J9IHNlbGVjdG9yXG4gICAqL1xuICBhYnN0cmFjdCBvcmRlckJ5KFxuICAgIHN0YXRlbWVudDogU3RhdGVtZW50PFE+LFxuICAgIHNlbGVjdG9yOiBPcmRlckJ5U2VsZWN0b3JbXVxuICApOiBPcmRlckJ5Q2xhdXNlPFE+O1xuICAvKipcbiAgICogQHN1bW1hcnkgRmFjdG9yeSBtZXRob2QgZm9yIHtAbGluayBTZWxlY3RDbGF1c2V9XG4gICAqIEBwYXJhbSB7U3RhdGVtZW50fSBzdGF0ZW1lbnRcbiAgICogQHBhcmFtIHtTZWxlY3RTZWxlY3Rvcn0gW3NlbGVjdG9yXVxuICAgKi9cbiAgYWJzdHJhY3Qgc2VsZWN0PE0gZXh0ZW5kcyBNb2RlbD4oXG4gICAgc2VsZWN0b3I/OiBTZWxlY3RTZWxlY3RvclxuICApOiBTZWxlY3RDbGF1c2U8USwgTT47XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBGYWN0b3J5IG1ldGhvZCBmb3Ige0BsaW5rIFZhbHVlc0NsYXVzZX1cbiAgICogQHBhcmFtIHtTdGF0ZW1lbnR9IHN0YXRlbWVudFxuICAgKiBAcGFyYW0ge01bXX0gdmFsdWVzXG4gICAqL1xuICBhYnN0cmFjdCB2YWx1ZXM8TSBleHRlbmRzIE1vZGVsPihcbiAgICBzdGF0ZW1lbnQ6IFN0YXRlbWVudDxRPixcbiAgICB2YWx1ZXM6IE1bXVxuICApOiBWYWx1ZXNDbGF1c2U8USwgTT47XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBGYWN0b3J5IG1ldGhvZCBmb3Ige0BsaW5rIFdoZXJlQ2xhdXNlfVxuICAgKiBAcGFyYW0ge1N0YXRlbWVudH0gc3RhdGVtZW50XG4gICAqIEBwYXJhbSB7Q29uZGl0aW9ufSBjb25kaXRpb25cbiAgICovXG4gIGFic3RyYWN0IHdoZXJlKHN0YXRlbWVudDogU3RhdGVtZW50PFE+LCBjb25kaXRpb246IENvbmRpdGlvbik6IFdoZXJlQ2xhdXNlPFE+O1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgYWRhcHRlcjogQSkge31cbn1cbiJdfQ==
|
package/lib/esm/query/Query.d.ts
DELETED
@@ -1,43 +0,0 @@
|
|
1
|
-
import { CountOption, DistinctOption, InsertOption, MaxOption, MinOption, SelectOption } from "./options";
|
2
|
-
import { SelectSelector } from "./selectors";
|
3
|
-
import { Adapter } from "../persistence";
|
4
|
-
import { Model } from "@decaf-ts/decorator-validation";
|
5
|
-
/**
|
6
|
-
* @summary Helper Class to build queries
|
7
|
-
*
|
8
|
-
* @param {Database} db
|
9
|
-
*
|
10
|
-
* @class Query
|
11
|
-
*
|
12
|
-
* @category Query
|
13
|
-
*/
|
14
|
-
export declare class Query<Q, M extends Model> {
|
15
|
-
private adapter;
|
16
|
-
constructor(adapter: Adapter<any, Q, any, any>);
|
17
|
-
/**
|
18
|
-
* @summary Creates a Select Clause
|
19
|
-
* @param {SelectSelector} [selector]
|
20
|
-
*/
|
21
|
-
select(selector?: SelectSelector): SelectOption<M>;
|
22
|
-
/**
|
23
|
-
* @summary Creates a Min Clause
|
24
|
-
* @param {SelectSelector} selector
|
25
|
-
*/
|
26
|
-
min(selector: SelectSelector): MinOption<M>;
|
27
|
-
/**
|
28
|
-
* @summary Creates a Max Clause
|
29
|
-
* @param {SelectSelector} selector
|
30
|
-
*/
|
31
|
-
max(selector: SelectSelector): MaxOption<M>;
|
32
|
-
/**
|
33
|
-
* @summary Creates a Distinct Clause
|
34
|
-
* @param {SelectSelector} selector
|
35
|
-
*/
|
36
|
-
distinct(selector: SelectSelector): DistinctOption<M>;
|
37
|
-
/**
|
38
|
-
* @summary Creates a Count Clause
|
39
|
-
* @param {SelectSelector} selector
|
40
|
-
*/
|
41
|
-
count(selector?: SelectSelector): CountOption<M>;
|
42
|
-
insert(): InsertOption<M>;
|
43
|
-
}
|
package/lib/esm/query/Query.js
DELETED
@@ -1,54 +0,0 @@
|
|
1
|
-
import { Const } from "./constants";
|
2
|
-
/**
|
3
|
-
* @summary Helper Class to build queries
|
4
|
-
*
|
5
|
-
* @param {Database} db
|
6
|
-
*
|
7
|
-
* @class Query
|
8
|
-
*
|
9
|
-
* @category Query
|
10
|
-
*/
|
11
|
-
export class Query {
|
12
|
-
constructor(adapter) {
|
13
|
-
this.adapter = adapter;
|
14
|
-
}
|
15
|
-
/**
|
16
|
-
* @summary Creates a Select Clause
|
17
|
-
* @param {SelectSelector} [selector]
|
18
|
-
*/
|
19
|
-
select(selector = Const.FULL_RECORD) {
|
20
|
-
return this.adapter.Clauses.select(selector);
|
21
|
-
}
|
22
|
-
/**
|
23
|
-
* @summary Creates a Min Clause
|
24
|
-
* @param {SelectSelector} selector
|
25
|
-
*/
|
26
|
-
min(selector) {
|
27
|
-
return this.select().min(selector);
|
28
|
-
}
|
29
|
-
/**
|
30
|
-
* @summary Creates a Max Clause
|
31
|
-
* @param {SelectSelector} selector
|
32
|
-
*/
|
33
|
-
max(selector) {
|
34
|
-
return this.select().max(selector);
|
35
|
-
}
|
36
|
-
/**
|
37
|
-
* @summary Creates a Distinct Clause
|
38
|
-
* @param {SelectSelector} selector
|
39
|
-
*/
|
40
|
-
distinct(selector) {
|
41
|
-
return this.select().distinct(selector);
|
42
|
-
}
|
43
|
-
/**
|
44
|
-
* @summary Creates a Count Clause
|
45
|
-
* @param {SelectSelector} selector
|
46
|
-
*/
|
47
|
-
count(selector) {
|
48
|
-
return this.select().count(selector);
|
49
|
-
}
|
50
|
-
insert() {
|
51
|
-
return this.adapter.Clauses.insert();
|
52
|
-
}
|
53
|
-
}
|
54
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcXVlcnkvUXVlcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBVUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUdwQzs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sT0FBTyxLQUFLO0lBQ2hCLFlBQW9CLE9BQWtDO1FBQWxDLFlBQU8sR0FBUCxPQUFPLENBQTJCO0lBQUcsQ0FBQztJQUUxRDs7O09BR0c7SUFDSCxNQUFNLENBQUMsV0FBMkIsS0FBSyxDQUFDLFdBQVc7UUFDakQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUksUUFBUSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUNEOzs7T0FHRztJQUNILEdBQUcsQ0FBQyxRQUF3QjtRQUMxQixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUNEOzs7T0FHRztJQUNILEdBQUcsQ0FBQyxRQUF3QjtRQUMxQixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUNEOzs7T0FHRztJQUNILFFBQVEsQ0FBQyxRQUF3QjtRQUMvQixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUNEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxRQUF5QjtRQUM3QixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELE1BQU07UUFDSixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBSyxDQUFDO0lBQzFDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvdW50T3B0aW9uLFxuICBEaXN0aW5jdE9wdGlvbixcbiAgSW5zZXJ0T3B0aW9uLFxuICBNYXhPcHRpb24sXG4gIE1pbk9wdGlvbixcbiAgU2VsZWN0T3B0aW9uLFxufSBmcm9tIFwiLi9vcHRpb25zXCI7XG5pbXBvcnQgeyBTZWxlY3RTZWxlY3RvciB9IGZyb20gXCIuL3NlbGVjdG9yc1wiO1xuaW1wb3J0IHsgQWRhcHRlciB9IGZyb20gXCIuLi9wZXJzaXN0ZW5jZVwiO1xuaW1wb3J0IHsgQ29uc3QgfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IE1vZGVsIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuXG4vKipcbiAqIEBzdW1tYXJ5IEhlbHBlciBDbGFzcyB0byBidWlsZCBxdWVyaWVzXG4gKlxuICogQHBhcmFtIHtEYXRhYmFzZX0gZGJcbiAqXG4gKiBAY2xhc3MgUXVlcnlcbiAqXG4gKiBAY2F0ZWdvcnkgUXVlcnlcbiAqL1xuZXhwb3J0IGNsYXNzIFF1ZXJ5PFEsIE0gZXh0ZW5kcyBNb2RlbD4ge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFkYXB0ZXI6IEFkYXB0ZXI8YW55LCBRLCBhbnksIGFueT4pIHt9XG5cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IENyZWF0ZXMgYSBTZWxlY3QgQ2xhdXNlXG4gICAqIEBwYXJhbSB7U2VsZWN0U2VsZWN0b3J9IFtzZWxlY3Rvcl1cbiAgICovXG4gIHNlbGVjdChzZWxlY3RvcjogU2VsZWN0U2VsZWN0b3IgPSBDb25zdC5GVUxMX1JFQ09SRCk6IFNlbGVjdE9wdGlvbjxNPiB7XG4gICAgcmV0dXJuIHRoaXMuYWRhcHRlci5DbGF1c2VzLnNlbGVjdDxNPihzZWxlY3Rvcik7XG4gIH1cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IENyZWF0ZXMgYSBNaW4gQ2xhdXNlXG4gICAqIEBwYXJhbSB7U2VsZWN0U2VsZWN0b3J9IHNlbGVjdG9yXG4gICAqL1xuICBtaW4oc2VsZWN0b3I6IFNlbGVjdFNlbGVjdG9yKTogTWluT3B0aW9uPE0+IHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3QoKS5taW4oc2VsZWN0b3IpO1xuICB9XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBDcmVhdGVzIGEgTWF4IENsYXVzZVxuICAgKiBAcGFyYW0ge1NlbGVjdFNlbGVjdG9yfSBzZWxlY3RvclxuICAgKi9cbiAgbWF4KHNlbGVjdG9yOiBTZWxlY3RTZWxlY3Rvcik6IE1heE9wdGlvbjxNPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0KCkubWF4KHNlbGVjdG9yKTtcbiAgfVxuICAvKipcbiAgICogQHN1bW1hcnkgQ3JlYXRlcyBhIERpc3RpbmN0IENsYXVzZVxuICAgKiBAcGFyYW0ge1NlbGVjdFNlbGVjdG9yfSBzZWxlY3RvclxuICAgKi9cbiAgZGlzdGluY3Qoc2VsZWN0b3I6IFNlbGVjdFNlbGVjdG9yKTogRGlzdGluY3RPcHRpb248TT4ge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdCgpLmRpc3RpbmN0KHNlbGVjdG9yKTtcbiAgfVxuICAvKipcbiAgICogQHN1bW1hcnkgQ3JlYXRlcyBhIENvdW50IENsYXVzZVxuICAgKiBAcGFyYW0ge1NlbGVjdFNlbGVjdG9yfSBzZWxlY3RvclxuICAgKi9cbiAgY291bnQoc2VsZWN0b3I/OiBTZWxlY3RTZWxlY3Rvcik6IENvdW50T3B0aW9uPE0+IHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3QoKS5jb3VudChzZWxlY3Rvcik7XG4gIH1cblxuICBpbnNlcnQoKTogSW5zZXJ0T3B0aW9uPE0+IHtcbiAgICByZXR1cm4gdGhpcy5hZGFwdGVyLkNsYXVzZXMuaW5zZXJ0PE0+KCk7XG4gIH1cbn1cbiJdfQ==
|
@@ -1,45 +0,0 @@
|
|
1
|
-
import { FromSelector, GroupBySelector, LimitSelector, OffsetSelector, OrderBySelector } from "../selectors";
|
2
|
-
import { LimitOption, OffsetOption, OrderAndGroupOption, WhereOption } from "../options";
|
3
|
-
import { SelectorBasedClause } from "./SelectorBasedClause";
|
4
|
-
import { Executor } from "../../interfaces";
|
5
|
-
import { Condition } from "../Condition";
|
6
|
-
import { Model, ModelArg } from "@decaf-ts/decorator-validation";
|
7
|
-
/**
|
8
|
-
* @summary The FROM clause
|
9
|
-
*
|
10
|
-
* @param {ModelArg} [clause]
|
11
|
-
*
|
12
|
-
* @class FromClause
|
13
|
-
* @extends SelectorBasedClause
|
14
|
-
* @implements WhereOption
|
15
|
-
*
|
16
|
-
* @category Query
|
17
|
-
* @subcategory Clauses
|
18
|
-
*/
|
19
|
-
export declare abstract class FromClause<Q, M extends Model> extends SelectorBasedClause<Q, FromSelector<M>> implements WhereOption {
|
20
|
-
protected constructor(clause?: ModelArg<FromClause<Q, M>>);
|
21
|
-
/**
|
22
|
-
* @inheritDoc
|
23
|
-
*/
|
24
|
-
abstract build(query: Q): Q;
|
25
|
-
/**
|
26
|
-
* @inheritDoc
|
27
|
-
*/
|
28
|
-
where(condition: Condition): OrderAndGroupOption;
|
29
|
-
/**
|
30
|
-
* @inheritDoc
|
31
|
-
*/
|
32
|
-
orderBy(...selector: OrderBySelector[]): LimitOption & OffsetOption;
|
33
|
-
/**
|
34
|
-
* @inheritDoc
|
35
|
-
*/
|
36
|
-
groupBy(selector: GroupBySelector): Executor;
|
37
|
-
/**
|
38
|
-
* @inheritDoc
|
39
|
-
*/
|
40
|
-
limit(selector: LimitSelector): OffsetOption;
|
41
|
-
/**
|
42
|
-
* @inheritDoc
|
43
|
-
*/
|
44
|
-
offset(selector: OffsetSelector): Executor;
|
45
|
-
}
|
@@ -1,59 +0,0 @@
|
|
1
|
-
import { Priority } from "../constants";
|
2
|
-
import { SelectorBasedClause } from "./SelectorBasedClause";
|
3
|
-
import { QueryError } from "../errors";
|
4
|
-
import { Model, stringFormat, } from "@decaf-ts/decorator-validation";
|
5
|
-
/**
|
6
|
-
* @summary The FROM clause
|
7
|
-
*
|
8
|
-
* @param {ModelArg} [clause]
|
9
|
-
*
|
10
|
-
* @class FromClause
|
11
|
-
* @extends SelectorBasedClause
|
12
|
-
* @implements WhereOption
|
13
|
-
*
|
14
|
-
* @category Query
|
15
|
-
* @subcategory Clauses
|
16
|
-
*/
|
17
|
-
export class FromClause extends SelectorBasedClause {
|
18
|
-
constructor(clause) {
|
19
|
-
super(Object.assign({}, clause, { priority: Priority.FROM }));
|
20
|
-
this.selector =
|
21
|
-
typeof this.selector === "string"
|
22
|
-
? Model.get(this.selector)
|
23
|
-
: this.selector;
|
24
|
-
if (!this.selector)
|
25
|
-
throw new QueryError(stringFormat("Could not find selector model: {0}"));
|
26
|
-
this.statement.setTarget(this.selector);
|
27
|
-
}
|
28
|
-
/**
|
29
|
-
* @inheritDoc
|
30
|
-
*/
|
31
|
-
where(condition) {
|
32
|
-
return this.Clauses.where(this.statement, condition);
|
33
|
-
}
|
34
|
-
/**
|
35
|
-
* @inheritDoc
|
36
|
-
*/
|
37
|
-
orderBy(...selector) {
|
38
|
-
return this.Clauses.orderBy(this.statement, selector);
|
39
|
-
}
|
40
|
-
/**
|
41
|
-
* @inheritDoc
|
42
|
-
*/
|
43
|
-
groupBy(selector) {
|
44
|
-
return this.Clauses.groupBy(this.statement, selector);
|
45
|
-
}
|
46
|
-
/**
|
47
|
-
* @inheritDoc
|
48
|
-
*/
|
49
|
-
limit(selector) {
|
50
|
-
return this.Clauses.limit(this.statement, selector);
|
51
|
-
}
|
52
|
-
/**
|
53
|
-
* @inheritDoc
|
54
|
-
*/
|
55
|
-
offset(selector) {
|
56
|
-
return this.Clauses.offset(this.statement, selector);
|
57
|
-
}
|
58
|
-
}
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRnJvbUNsYXVzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9xdWVyeS9jbGF1c2VzL0Zyb21DbGF1c2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQWN4QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUU1RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXZDLE9BQU8sRUFFTCxLQUFLLEVBRUwsWUFBWSxHQUNiLE1BQU0sZ0NBQWdDLENBQUM7QUFFeEM7Ozs7Ozs7Ozs7O0dBV0c7QUFDSCxNQUFNLE9BQWdCLFVBQ3BCLFNBQVEsbUJBQXVDO0lBRy9DLFlBQXNCLE1BQW1DO1FBQ3ZELEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxRQUFRLEVBQUUsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsUUFBUTtZQUNYLE9BQU8sSUFBSSxDQUFDLFFBQVEsS0FBSyxRQUFRO2dCQUMvQixDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO2dCQUMxQixDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7WUFDaEIsTUFBTSxJQUFJLFVBQVUsQ0FBQyxZQUFZLENBQUMsb0NBQW9DLENBQUMsQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUEwQixDQUFDLENBQUM7SUFDNUQsQ0FBQztJQU9EOztPQUVHO0lBQ0gsS0FBSyxDQUFDLFNBQW9CO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBQ0Q7O09BRUc7SUFDSCxPQUFPLENBQUMsR0FBRyxRQUEyQjtRQUNwQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUNEOztPQUVHO0lBQ0gsT0FBTyxDQUFDLFFBQXlCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBQ0Q7O09BRUc7SUFDSCxLQUFLLENBQUMsUUFBdUI7UUFDM0IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFDRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxRQUF3QjtRQUM3QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDdkQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJpb3JpdHkgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQge1xuICBGcm9tU2VsZWN0b3IsXG4gIEdyb3VwQnlTZWxlY3RvcixcbiAgTGltaXRTZWxlY3RvcixcbiAgT2Zmc2V0U2VsZWN0b3IsXG4gIE9yZGVyQnlTZWxlY3Rvcixcbn0gZnJvbSBcIi4uL3NlbGVjdG9yc1wiO1xuaW1wb3J0IHtcbiAgTGltaXRPcHRpb24sXG4gIE9mZnNldE9wdGlvbixcbiAgT3JkZXJBbmRHcm91cE9wdGlvbixcbiAgV2hlcmVPcHRpb24sXG59IGZyb20gXCIuLi9vcHRpb25zXCI7XG5pbXBvcnQgeyBTZWxlY3RvckJhc2VkQ2xhdXNlIH0gZnJvbSBcIi4vU2VsZWN0b3JCYXNlZENsYXVzZVwiO1xuaW1wb3J0IHsgRXhlY3V0b3IgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlc1wiO1xuaW1wb3J0IHsgUXVlcnlFcnJvciB9IGZyb20gXCIuLi9lcnJvcnNcIjtcbmltcG9ydCB7IENvbmRpdGlvbiB9IGZyb20gXCIuLi9Db25kaXRpb25cIjtcbmltcG9ydCB7XG4gIENvbnN0cnVjdG9yLFxuICBNb2RlbCxcbiAgTW9kZWxBcmcsXG4gIHN0cmluZ0Zvcm1hdCxcbn0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuXG4vKipcbiAqIEBzdW1tYXJ5IFRoZSBGUk9NIGNsYXVzZVxuICpcbiAqIEBwYXJhbSB7TW9kZWxBcmd9IFtjbGF1c2VdXG4gKlxuICogQGNsYXNzIEZyb21DbGF1c2VcbiAqIEBleHRlbmRzIFNlbGVjdG9yQmFzZWRDbGF1c2VcbiAqIEBpbXBsZW1lbnRzIFdoZXJlT3B0aW9uXG4gKlxuICogQGNhdGVnb3J5IFF1ZXJ5XG4gKiBAc3ViY2F0ZWdvcnkgQ2xhdXNlc1xuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRnJvbUNsYXVzZTxRLCBNIGV4dGVuZHMgTW9kZWw+XG4gIGV4dGVuZHMgU2VsZWN0b3JCYXNlZENsYXVzZTxRLCBGcm9tU2VsZWN0b3I8TT4+XG4gIGltcGxlbWVudHMgV2hlcmVPcHRpb25cbntcbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKGNsYXVzZT86IE1vZGVsQXJnPEZyb21DbGF1c2U8USwgTT4+KSB7XG4gICAgc3VwZXIoT2JqZWN0LmFzc2lnbih7fSwgY2xhdXNlLCB7IHByaW9yaXR5OiBQcmlvcml0eS5GUk9NIH0pKTtcbiAgICB0aGlzLnNlbGVjdG9yID1cbiAgICAgIHR5cGVvZiB0aGlzLnNlbGVjdG9yID09PSBcInN0cmluZ1wiXG4gICAgICAgID8gTW9kZWwuZ2V0KHRoaXMuc2VsZWN0b3IpXG4gICAgICAgIDogdGhpcy5zZWxlY3RvcjtcbiAgICBpZiAoIXRoaXMuc2VsZWN0b3IpXG4gICAgICB0aHJvdyBuZXcgUXVlcnlFcnJvcihzdHJpbmdGb3JtYXQoXCJDb3VsZCBub3QgZmluZCBzZWxlY3RvciBtb2RlbDogezB9XCIpKTtcbiAgICB0aGlzLnN0YXRlbWVudC5zZXRUYXJnZXQodGhpcy5zZWxlY3RvciBhcyBDb25zdHJ1Y3RvcjxNPik7XG4gIH1cblxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIGFic3RyYWN0IGJ1aWxkKHF1ZXJ5OiBRKTogUTtcblxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIHdoZXJlKGNvbmRpdGlvbjogQ29uZGl0aW9uKTogT3JkZXJBbmRHcm91cE9wdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuQ2xhdXNlcy53aGVyZSh0aGlzLnN0YXRlbWVudCwgY29uZGl0aW9uKTtcbiAgfVxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIG9yZGVyQnkoLi4uc2VsZWN0b3I6IE9yZGVyQnlTZWxlY3RvcltdKTogTGltaXRPcHRpb24gJiBPZmZzZXRPcHRpb24ge1xuICAgIHJldHVybiB0aGlzLkNsYXVzZXMub3JkZXJCeSh0aGlzLnN0YXRlbWVudCwgc2VsZWN0b3IpO1xuICB9XG4gIC8qKlxuICAgKiBAaW5oZXJpdERvY1xuICAgKi9cbiAgZ3JvdXBCeShzZWxlY3RvcjogR3JvdXBCeVNlbGVjdG9yKTogRXhlY3V0b3Ige1xuICAgIHJldHVybiB0aGlzLkNsYXVzZXMuZ3JvdXBCeSh0aGlzLnN0YXRlbWVudCwgc2VsZWN0b3IpO1xuICB9XG4gIC8qKlxuICAgKiBAaW5oZXJpdERvY1xuICAgKi9cbiAgbGltaXQoc2VsZWN0b3I6IExpbWl0U2VsZWN0b3IpOiBPZmZzZXRPcHRpb24ge1xuICAgIHJldHVybiB0aGlzLkNsYXVzZXMubGltaXQodGhpcy5zdGF0ZW1lbnQsIHNlbGVjdG9yKTtcbiAgfVxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIG9mZnNldChzZWxlY3RvcjogT2Zmc2V0U2VsZWN0b3IpOiBFeGVjdXRvciB7XG4gICAgcmV0dXJuIHRoaXMuQ2xhdXNlcy5vZmZzZXQodGhpcy5zdGF0ZW1lbnQsIHNlbGVjdG9yKTtcbiAgfVxufVxuIl19
|