@decaf-ts/core 0.3.38 → 0.4.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/README.md +7 -1
- package/dist/core.cjs +2361 -0
- package/dist/core.esm.cjs +2307 -0
- package/lib/esm/identity/decorators.js +1 -2
- package/lib/esm/identity/index.js +1 -2
- package/lib/esm/identity/utils.js +1 -2
- package/{dist/types → lib/esm}/index.d.ts +1 -1
- package/lib/esm/index.js +2 -3
- package/lib/esm/interfaces/Builder.js +1 -2
- package/lib/esm/interfaces/Executor.js +1 -2
- package/lib/esm/interfaces/Observable.js +1 -2
- package/lib/esm/interfaces/Observer.js +1 -2
- package/lib/esm/interfaces/Paginatable.js +1 -2
- package/lib/esm/interfaces/Queriable.js +1 -2
- package/lib/esm/interfaces/RawExecutor.js +1 -2
- package/lib/esm/interfaces/SequenceOptions.js +1 -2
- package/lib/esm/interfaces/index.js +1 -2
- package/lib/esm/model/BaseModel.js +1 -2
- package/lib/esm/model/IdentifiedBaseModel.js +1 -2
- package/{dist/types → lib/esm}/model/User.d.ts +2 -1
- package/lib/esm/model/User.js +1 -2
- package/lib/esm/model/construction.js +2 -3
- package/lib/esm/model/decorators.js +1 -2
- package/lib/esm/model/index.js +1 -2
- package/lib/esm/model/types.js +1 -2
- package/lib/esm/persistence/Adapter.js +1 -2
- package/lib/esm/persistence/Sequence.js +1 -2
- package/lib/esm/persistence/constants.js +1 -2
- package/lib/esm/persistence/decorators.js +1 -2
- package/lib/esm/persistence/errors.js +1 -2
- package/lib/esm/persistence/index.js +1 -2
- package/lib/esm/query/Clause.js +1 -2
- package/lib/esm/query/ClauseFactory.js +1 -2
- package/lib/esm/query/Condition.js +1 -2
- package/lib/esm/query/Paginator.js +1 -2
- package/lib/esm/query/Query.js +1 -2
- package/{dist/types → lib/esm}/query/Statement.d.ts +2 -1
- package/lib/esm/query/Statement.js +1 -2
- package/lib/esm/query/clauses/FromClause.js +1 -2
- package/lib/esm/query/clauses/GroupByClause.js +1 -2
- package/lib/esm/query/clauses/InsertClause.js +1 -2
- package/lib/esm/query/clauses/LimitClause.js +1 -2
- package/lib/esm/query/clauses/OffsetClause.js +1 -2
- package/lib/esm/query/clauses/OrderByClause.js +1 -2
- package/lib/esm/query/clauses/SelectClause.js +1 -2
- package/lib/esm/query/clauses/SelectorBasedClause.js +1 -2
- package/lib/esm/query/clauses/ValuesClause.js +1 -2
- package/lib/esm/query/clauses/WhereClause.js +1 -2
- package/lib/esm/query/clauses/index.js +1 -2
- package/lib/esm/query/constants.js +1 -2
- package/lib/esm/query/errors.js +1 -2
- package/lib/esm/query/index.js +1 -2
- package/lib/esm/query/options.js +1 -2
- package/lib/esm/query/selectors.js +1 -2
- package/lib/esm/query/types.js +1 -2
- package/lib/esm/repository/Context.js +1 -2
- package/lib/esm/repository/Repository.js +1 -2
- package/lib/esm/repository/constants.js +1 -2
- package/lib/esm/repository/decorators.js +1 -2
- package/lib/esm/repository/errors.js +1 -2
- package/lib/esm/repository/index.js +1 -2
- package/lib/esm/repository/injectables.js +1 -2
- package/lib/esm/repository/types.js +1 -2
- package/lib/esm/repository/utils.js +1 -2
- package/lib/esm/validators/ClauseSequenceValidator.js +1 -2
- package/lib/esm/validators/decorators.js +1 -2
- package/lib/esm/validators/index.js +1 -2
- package/lib/identity/decorators.cjs +1 -2
- package/lib/identity/decorators.d.ts +24 -0
- package/lib/identity/index.cjs +1 -2
- package/lib/identity/index.d.ts +2 -0
- package/lib/identity/utils.cjs +1 -2
- package/lib/identity/utils.d.ts +3 -0
- package/lib/index.cjs +2 -3
- package/lib/index.d.ts +25 -0
- package/lib/interfaces/Builder.cjs +1 -2
- package/lib/interfaces/Builder.d.ts +16 -0
- package/lib/interfaces/Executor.cjs +1 -2
- package/lib/interfaces/Executor.d.ts +19 -0
- package/lib/interfaces/Observable.cjs +1 -2
- package/lib/interfaces/Observable.d.ts +31 -0
- package/lib/interfaces/Observer.cjs +1 -2
- package/lib/interfaces/Observer.d.ts +16 -0
- package/lib/interfaces/Paginatable.cjs +1 -2
- package/lib/interfaces/Paginatable.d.ts +4 -0
- package/lib/interfaces/Queriable.cjs +1 -2
- package/lib/interfaces/Queriable.d.ts +6 -0
- package/lib/interfaces/RawExecutor.cjs +1 -2
- package/lib/interfaces/RawExecutor.d.ts +20 -0
- package/lib/interfaces/SequenceOptions.cjs +1 -2
- package/lib/interfaces/SequenceOptions.d.ts +19 -0
- package/lib/interfaces/index.cjs +1 -2
- package/lib/interfaces/index.d.ts +7 -0
- package/lib/model/BaseModel.cjs +1 -2
- package/lib/model/BaseModel.d.ts +6 -0
- package/lib/model/IdentifiedBaseModel.cjs +1 -2
- package/lib/model/IdentifiedBaseModel.d.ts +7 -0
- package/lib/model/User.cjs +1 -2
- package/lib/model/User.d.ts +9 -0
- package/lib/model/construction.cjs +2 -3
- package/lib/model/construction.d.ts +15 -0
- package/lib/model/decorators.cjs +1 -2
- package/lib/model/decorators.d.ts +75 -0
- package/lib/model/index.cjs +1 -2
- package/lib/model/index.d.ts +4 -0
- package/lib/model/types.cjs +1 -2
- package/lib/model/types.d.ts +6 -0
- package/lib/persistence/Adapter.cjs +1 -2
- package/lib/persistence/Adapter.d.ts +86 -0
- package/lib/persistence/Sequence.cjs +1 -2
- package/lib/persistence/Sequence.d.ts +22 -0
- package/lib/persistence/constants.cjs +1 -2
- package/lib/persistence/constants.d.ts +22 -0
- package/lib/persistence/decorators.cjs +1 -2
- package/lib/persistence/decorators.d.ts +1 -0
- package/lib/persistence/errors.cjs +1 -2
- package/lib/persistence/errors.d.ts +7 -0
- package/lib/persistence/index.cjs +1 -2
- package/lib/persistence/index.d.ts +5 -0
- package/lib/query/Clause.cjs +1 -2
- package/lib/query/Clause.d.ts +50 -0
- package/lib/query/ClauseFactory.cjs +1 -2
- package/lib/query/ClauseFactory.d.ts +71 -0
- package/lib/query/Condition.cjs +1 -2
- package/lib/query/Condition.d.ts +75 -0
- package/lib/query/Paginator.cjs +1 -2
- package/lib/query/Paginator.d.ts +22 -0
- package/lib/query/Query.cjs +1 -2
- package/lib/query/Query.d.ts +43 -0
- package/lib/query/Statement.cjs +1 -2
- package/lib/query/Statement.d.ts +56 -0
- package/lib/query/clauses/FromClause.cjs +1 -2
- package/lib/query/clauses/FromClause.d.ts +45 -0
- package/lib/query/clauses/GroupByClause.cjs +1 -2
- package/lib/query/clauses/GroupByClause.d.ts +21 -0
- package/lib/query/clauses/InsertClause.cjs +1 -2
- package/lib/query/clauses/InsertClause.d.ts +37 -0
- package/lib/query/clauses/LimitClause.cjs +1 -2
- package/lib/query/clauses/LimitClause.d.ts +29 -0
- package/lib/query/clauses/OffsetClause.cjs +1 -2
- package/lib/query/clauses/OffsetClause.d.ts +21 -0
- package/lib/query/clauses/OrderByClause.cjs +1 -2
- package/lib/query/clauses/OrderByClause.d.ts +37 -0
- package/lib/query/clauses/SelectClause.cjs +1 -2
- package/lib/query/clauses/SelectClause.d.ts +47 -0
- package/lib/query/clauses/SelectorBasedClause.cjs +1 -2
- package/lib/query/clauses/SelectorBasedClause.d.ts +25 -0
- package/lib/query/clauses/ValuesClause.cjs +1 -2
- package/lib/query/clauses/ValuesClause.d.ts +21 -0
- package/lib/query/clauses/WhereClause.cjs +1 -2
- package/lib/query/clauses/WhereClause.d.ts +46 -0
- package/lib/query/clauses/index.cjs +1 -2
- package/lib/query/clauses/index.d.ts +10 -0
- package/lib/query/constants.cjs +1 -2
- package/lib/query/constants.d.ts +79 -0
- package/lib/query/errors.cjs +1 -2
- package/lib/query/errors.d.ts +7 -0
- package/lib/query/index.cjs +1 -2
- package/lib/query/index.d.ts +12 -0
- package/lib/query/options.cjs +1 -2
- package/lib/query/options.d.ts +372 -0
- package/lib/query/selectors.cjs +1 -2
- package/lib/query/selectors.d.ts +38 -0
- package/lib/query/types.cjs +1 -2
- package/lib/query/types.d.ts +2 -0
- package/lib/repository/Context.cjs +1 -2
- package/lib/repository/Context.d.ts +10 -0
- package/lib/repository/Repository.cjs +1 -2
- package/lib/repository/Repository.d.ts +70 -0
- package/lib/repository/constants.cjs +1 -2
- package/lib/repository/constants.d.ts +25 -0
- package/lib/repository/decorators.cjs +1 -2
- package/lib/repository/decorators.d.ts +2 -0
- package/lib/repository/errors.cjs +1 -2
- package/lib/repository/errors.d.ts +12 -0
- package/lib/repository/index.cjs +1 -2
- package/lib/repository/index.d.ts +8 -0
- package/lib/repository/injectables.cjs +1 -2
- package/lib/repository/injectables.d.ts +5 -0
- package/lib/repository/types.cjs +1 -2
- package/lib/repository/types.d.ts +15 -0
- package/lib/repository/utils.cjs +1 -2
- package/lib/repository/utils.d.ts +3 -0
- package/lib/validators/ClauseSequenceValidator.cjs +1 -2
- package/lib/validators/ClauseSequenceValidator.d.ts +28 -0
- package/lib/validators/decorators.cjs +1 -2
- package/lib/validators/decorators.d.ts +10 -0
- package/lib/validators/index.cjs +1 -2
- package/lib/validators/index.d.ts +2 -0
- package/package.json +24 -37
- package/dist/core.js +0 -2
- package/dist/core.js.LICENSE.txt +0 -14
- package/dist/esm/core.js +0 -2
- package/dist/esm/core.js.LICENSE.txt +0 -14
- /package/{dist/types → lib/esm}/identity/decorators.d.ts +0 -0
- /package/{dist/types → lib/esm}/identity/index.d.ts +0 -0
- /package/{dist/types → lib/esm}/identity/utils.d.ts +0 -0
- /package/{dist/types → lib/esm}/interfaces/Builder.d.ts +0 -0
- /package/{dist/types → lib/esm}/interfaces/Executor.d.ts +0 -0
- /package/{dist/types → lib/esm}/interfaces/Observable.d.ts +0 -0
- /package/{dist/types → lib/esm}/interfaces/Observer.d.ts +0 -0
- /package/{dist/types → lib/esm}/interfaces/Paginatable.d.ts +0 -0
- /package/{dist/types → lib/esm}/interfaces/Queriable.d.ts +0 -0
- /package/{dist/types → lib/esm}/interfaces/RawExecutor.d.ts +0 -0
- /package/{dist/types → lib/esm}/interfaces/SequenceOptions.d.ts +0 -0
- /package/{dist/types → lib/esm}/interfaces/index.d.ts +0 -0
- /package/{dist/types → lib/esm}/model/BaseModel.d.ts +0 -0
- /package/{dist/types → lib/esm}/model/IdentifiedBaseModel.d.ts +0 -0
- /package/{dist/types → lib/esm}/model/construction.d.ts +0 -0
- /package/{dist/types → lib/esm}/model/decorators.d.ts +0 -0
- /package/{dist/types → lib/esm}/model/index.d.ts +0 -0
- /package/{dist/types → lib/esm}/model/types.d.ts +0 -0
- /package/{dist/types → lib/esm}/persistence/Adapter.d.ts +0 -0
- /package/{dist/types → lib/esm}/persistence/Sequence.d.ts +0 -0
- /package/{dist/types → lib/esm}/persistence/constants.d.ts +0 -0
- /package/{dist/types → lib/esm}/persistence/decorators.d.ts +0 -0
- /package/{dist/types → lib/esm}/persistence/errors.d.ts +0 -0
- /package/{dist/types → lib/esm}/persistence/index.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/Clause.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/ClauseFactory.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/Condition.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/Paginator.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/Query.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/clauses/FromClause.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/clauses/GroupByClause.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/clauses/InsertClause.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/clauses/LimitClause.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/clauses/OffsetClause.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/clauses/OrderByClause.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/clauses/SelectClause.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/clauses/SelectorBasedClause.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/clauses/ValuesClause.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/clauses/WhereClause.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/clauses/index.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/constants.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/errors.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/index.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/options.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/selectors.d.ts +0 -0
- /package/{dist/types → lib/esm}/query/types.d.ts +0 -0
- /package/{dist/types → lib/esm}/repository/Context.d.ts +0 -0
- /package/{dist/types → lib/esm}/repository/Repository.d.ts +0 -0
- /package/{dist/types → lib/esm}/repository/constants.d.ts +0 -0
- /package/{dist/types → lib/esm}/repository/decorators.d.ts +0 -0
- /package/{dist/types → lib/esm}/repository/errors.d.ts +0 -0
- /package/{dist/types → lib/esm}/repository/index.d.ts +0 -0
- /package/{dist/types → lib/esm}/repository/injectables.d.ts +0 -0
- /package/{dist/types → lib/esm}/repository/types.d.ts +0 -0
- /package/{dist/types → lib/esm}/repository/utils.d.ts +0 -0
- /package/{dist/types → lib/esm}/validators/ClauseSequenceValidator.d.ts +0 -0
- /package/{dist/types → lib/esm}/validators/decorators.d.ts +0 -0
- /package/{dist/types → lib/esm}/validators/index.d.ts +0 -0
package/lib/query/Condition.cjs
CHANGED
@@ -248,5 +248,4 @@ __decorate([
|
|
248
248
|
(0, decorator_validation_1.required)(),
|
249
249
|
__metadata("design:type", Object)
|
250
250
|
], Condition.prototype, "comparison", void 0);
|
251
|
-
|
252
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,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SSxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUM7WUFDdEIsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDdEIsQ0FBQztRQUVEOzs7O1dBSUc7UUFDSyxLQUFLO1lBQ1gsSUFBSSxDQUFDO2dCQUNILE9BQU8sSUFBSSxTQUFTLENBQ2xCLElBQUksQ0FBQyxLQUEyQixFQUNoQyxJQUFJLENBQUMsUUFBb0IsRUFDekIsSUFBSSxDQUFDLFVBQWlCLENBQ3ZCLENBQUM7WUFDSixDQUFDO1lBQUMsT0FBTyxDQUFNLEVBQUUsQ0FBQztnQkFDaEIsTUFBTSxJQUFJLG1CQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDMUIsQ0FBQztRQUNILENBQUM7S0FyR21CLEFBc0dyQixDQUFDO0lBRUYsTUFBTSxLQUFLLE9BQU87UUFDaEIsT0FBTyxJQUFJLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqQyxDQUFDOztBQXZQSCw4QkF3UEM7QUF0UFc7SUFEVCxJQUFBLCtCQUFRLEdBQUU7O3dDQUNzQztBQUV2QztJQURULElBQUEsK0JBQVEsR0FBRTs7MkNBQytDO0FBRWhEO0lBRFQsSUFBQSwrQkFBUSxHQUFFOzs2Q0FDNEIiLCJmaWxlIjoicXVlcnkvQ29uZGl0aW9uLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXR0cmlidXRlT3B0aW9uLCBDb25kaXRpb25CdWlsZGVyT3B0aW9uIH0gZnJvbSBcIi4vb3B0aW9uc1wiO1xuaW1wb3J0IHtcbiAgTW9kZWwsXG4gIE1vZGVsRXJyb3JEZWZpbml0aW9uLFxuICByZXF1aXJlZCxcbiAgc2YsXG59IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcbmltcG9ydCB7IEdyb3VwT3BlcmF0b3IsIE9wZXJhdG9yIH0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBRdWVyeUVycm9yIH0gZnJvbSBcIi4vZXJyb3JzXCI7XG5cbi8qKlxuICogQHN1bW1hcnkgQ29uZGl0aW9uIENsYXNzXG4gKiBAZGVzY3JpcHRpb24gUmVwcmVzZW50cyBhIGxvZ2ljYWwgY29uZGl0aW9uXG4gKlxuICogQHBhcmFtIHtzdHJpbmcgfCBDb25kaXRpb259IGF0dHIxXG4gKiBAcGFyYW0ge09wZXJhdG9yIHwgR3JvdXBPcGVyYXRvcn0gb3BlcmF0b3JcbiAqIEBwYXJhbSB7c3RyaW5nIHwgQ29uZGl0aW9ufSBjb21wYXJpc29uXG4gKlxuICogQGNsYXNzIENvbmRpdGlvblxuICogQGltcGxlbWVudHMgRXhlY3V0b3JcbiAqXG4gKiBAY2F0ZWdvcnkgUXVlcnlcbiAqIEBzdWJjYXRlZ29yeSBDb25kaXRpb25zXG4gKi9cblxuZXhwb3J0IGNsYXNzIENvbmRpdGlvbiBleHRlbmRzIE1vZGVsIHtcbiAgQHJlcXVpcmVkKClcbiAgcHJvdGVjdGVkIGF0dHIxPzogc3RyaW5nIHwgQ29uZGl0aW9uID0gdW5kZWZpbmVkO1xuICBAcmVxdWlyZWQoKVxuICBwcm90ZWN0ZWQgb3BlcmF0b3I/OiBPcGVyYXRvciB8IEdyb3VwT3BlcmF0b3IgPSB1bmRlZmluZWQ7XG4gIEByZXF1aXJlZCgpXG4gIHByb3RlY3RlZCBjb21wYXJpc29uPzogYW55ID0gdW5kZWZpbmVkO1xuXG4gIHByaXZhdGUgY29uc3RydWN0b3IoXG4gICAgYXR0cjE6IHN0cmluZyB8IENvbmRpdGlvbixcbiAgICBvcGVyYXRvcjogT3BlcmF0b3IgfCBHcm91cE9wZXJhdG9yLFxuICAgIGNvbXBhcmlzb246IGFueVxuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuYXR0cjEgPSBhdHRyMTtcbiAgICB0aGlzLm9wZXJhdG9yID0gb3BlcmF0b3I7XG4gICAgdGhpcy5jb21wYXJpc29uID0gY29tcGFyaXNvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBAc3VtbWFyeSBKb2lucyAyIHtAbGluayBDb25kaXRpb259cyBvbiBhbiB7QGxpbmsgT3BlcmF0b3IjQU5EfSBvcGVyYXRpb25cbiAgICogQHBhcmFtIHtDb25kaXRpb259IGNvbmRpdGlvblxuICAgKi9cbiAgYW5kKGNvbmRpdGlvbjogQ29uZGl0aW9uKTogQ29uZGl0aW9uIHtcbiAgICByZXR1cm4gQ29uZGl0aW9uLmFuZCh0aGlzLCBjb25kaXRpb24pO1xuICB9XG5cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IEpvaW5zIDIge0BsaW5rIENvbmRpdGlvbn1zIG9uIGFuIHtAbGluayBPcGVyYXRvciNPUn0gb3BlcmF0aW9uXG4gICAqIEBwYXJhbSB7Q29uZGl0aW9ufSBjb25kaXRpb25cbiAgICovXG4gIG9yKGNvbmRpdGlvbjogQ29uZGl0aW9uKTogQ29uZGl0aW9uIHtcbiAgICByZXR1cm4gQ29uZGl0aW9uLm9yKHRoaXMsIGNvbmRpdGlvbik7XG4gIH1cblxuICAvKipcbiAgICogQHN1bW1hcnkgZXhjbHVkZXMgYSB2YWx1dCBmcm9tIHRoZSByZXN1bHRcbiAgICogQHBhcmFtIHZhbFxuICAgKi9cbiAgbm90KHZhbDogYW55KTogQ29uZGl0aW9uIHtcbiAgICByZXR1cm4gbmV3IENvbmRpdGlvbih0aGlzLCBPcGVyYXRvci5OT1QsIHZhbCk7XG4gIH1cblxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIGhhc0Vycm9ycyguLi5leGNlcHRpb25zOiBzdHJpbmdbXSk6IE1vZGVsRXJyb3JEZWZpbml0aW9uIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBlcnJvcnMgPSBzdXBlci5oYXNFcnJvcnMoLi4uZXhjZXB0aW9ucyk7XG4gICAgaWYgKGVycm9ycykgcmV0dXJuIGVycm9ycztcblxuICAgIGlmICh0eXBlb2YgdGhpcy5hdHRyMSA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgaWYgKHRoaXMuY29tcGFyaXNvbiBpbnN0YW5jZW9mIENvbmRpdGlvbilcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBjb21wYXJpc29uOiB7XG4gICAgICAgICAgICBjb25kaXRpb246IFwiQm90aCBzaWRlcyBvZiB0aGUgY29tcGFyaXNvbiBtdXN0IGJlIG9mIHRoZSBzYW1lIHR5cGVcIixcbiAgICAgICAgICB9LFxuICAgICAgICB9IGFzIE1vZGVsRXJyb3JEZWZpbml0aW9uO1xuICAgICAgaWYgKE9iamVjdC52YWx1ZXMoT3BlcmF0b3IpLmluZGV4T2YodGhpcy5vcGVyYXRvciBhcyBPcGVyYXRvcikgPT09IC0xKVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG9wZXJhdG9yOiB7XG4gICAgICAgICAgICBjb25kaXRpb246IHNmKFwiSW52YWxpZCBvcGVyYXRvciB7MH1cIiwgdGhpcy5vcGVyYXRvciBhcyBzdHJpbmcpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0gYXMgTW9kZWxFcnJvckRlZmluaXRpb247XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuYXR0cjEgaW5zdGFuY2VvZiBDb25kaXRpb24pIHtcbiAgICAgIGlmIChcbiAgICAgICAgISh0aGlzLmNvbXBhcmlzb24gaW5zdGFuY2VvZiBDb25kaXRpb24pICYmXG4gICAgICAgIHRoaXMub3BlcmF0b3IgIT09IE9wZXJhdG9yLk5PVFxuICAgICAgKVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGNvbXBhcmlzb246IHtcbiAgICAgICAgICAgIGNvbmRpdGlvbjogc2YoXCJJbnZhbGlkIG9wZXJhdG9yIHswfVwiLCB0aGlzLm9wZXJhdG9yIGFzIHN0cmluZyksXG4gICAgICAgICAgfSxcbiAgICAgICAgfSBhcyBNb2RlbEVycm9yRGVmaW5pdGlvbjtcbiAgICAgIGlmIChcbiAgICAgICAgT2JqZWN0LnZhbHVlcyhHcm91cE9wZXJhdG9yKS5pbmRleE9mKHRoaXMub3BlcmF0b3IgYXMgR3JvdXBPcGVyYXRvcikgPT09XG4gICAgICAgICAgLTEgJiZcbiAgICAgICAgdGhpcy5vcGVyYXRvciAhPT0gT3BlcmF0b3IuTk9UXG4gICAgICApXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgb3BlcmF0b3I6IHtcbiAgICAgICAgICAgIGNvbmRpdGlvbjogc2YoXCJJbnZhbGlkIG9wZXJhdG9yIHswfVwiLCB0aGlzLm9wZXJhdG9yIGFzIHN0cmluZyksXG4gICAgICAgICAgfSxcbiAgICAgICAgfSBhcyBNb2RlbEVycm9yRGVmaW5pdGlvbjtcbiAgICAgIC8vIGlmICh0aGlzLm9wZXJhdG9yICE9PSBPcGVyYXRvci5OT1QgJiYgdHlwZW9mIHRoaXMuYXR0cjEuYXR0cjEgIT09IFwic3RyaW5nXCIpXG4gICAgICAvLyAgICAgcmV0dXJuIHtcbiAgICAgIC8vICAgICAgICAgYXR0cjE6IHtcbiAgICAgIC8vICAgICAgICAgICAgIGNvbmRpdGlvbjogc3RyaW5nRm9ybWF0KFwiUGFyZW50IGNvbmRpdGlvbiBhdHRyaWJ1dGUgbXVzdCBiZSBhIHN0cmluZ1wiKVxuICAgICAgLy8gICAgICAgICB9XG4gICAgICAvLyAgICAgfSBhcyBNb2RlbEVycm9yRGVmaW5pdGlvblxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAc3VtbWFyeSBKb2lucyAyIHtAbGluayBDb25kaXRpb259cyBvbiBhbiB7QGxpbmsgT3BlcmF0b3IjQU5EfSBvcGVyYXRpb25cbiAgICogQHBhcmFtIHtDb25kaXRpb259IGNvbmRpdGlvbjFcbiAgICogQHBhcmFtIHtDb25kaXRpb259IGNvbmRpdGlvbjJcbiAgICovXG4gIHN0YXRpYyBhbmQoY29uZGl0aW9uMTogQ29uZGl0aW9uLCBjb25kaXRpb24yOiBDb25kaXRpb24pOiBDb25kaXRpb24ge1xuICAgIHJldHVybiBDb25kaXRpb24uZ3JvdXAoY29uZGl0aW9uMSwgR3JvdXBPcGVyYXRvci5BTkQsIGNvbmRpdGlvbjIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IEpvaW5zIDIge0BsaW5rIENvbmRpdGlvbn1zIG9uIGFuIHtAbGluayBPcGVyYXRvciNPUn0gb3BlcmF0aW9uXG4gICAqIEBwYXJhbSB7Q29uZGl0aW9ufSBjb25kaXRpb24xXG4gICAqIEBwYXJhbSB7Q29uZGl0aW9ufSBjb25kaXRpb24yXG4gICAqL1xuICBzdGF0aWMgb3IoY29uZGl0aW9uMTogQ29uZGl0aW9uLCBjb25kaXRpb24yOiBDb25kaXRpb24pOiBDb25kaXRpb24ge1xuICAgIHJldHVybiBDb25kaXRpb24uZ3JvdXAoY29uZGl0aW9uMSwgR3JvdXBPcGVyYXRvci5PUiwgY29uZGl0aW9uMik7XG4gIH1cblxuICAvKipcbiAgICogQHN1bW1hcnkgR3JvdXBzIDIge0BsaW5rIENvbmRpdGlvbn1zIGJ5IHRoZSBzcGVjaWZpZWQge0BsaW5rIEdyb3VwT3BlcmF0b3J9XG4gICAqIEBwYXJhbSB7Q29uZGl0aW9ufSBjb25kaXRpb24xXG4gICAqIEBwYXJhbSB7R3JvdXBPcGVyYXRvcn0gb3BlcmF0b3JcbiAgICogQHBhcmFtIHtDb25kaXRpb259IGNvbmRpdGlvbjJcbiAgICovXG4gIHByaXZhdGUgc3RhdGljIGdyb3VwKFxuICAgIGNvbmRpdGlvbjE6IENvbmRpdGlvbixcbiAgICBvcGVyYXRvcjogR3JvdXBPcGVyYXRvcixcbiAgICBjb25kaXRpb24yOiBDb25kaXRpb25cbiAgKTogQ29uZGl0aW9uIHtcbiAgICByZXR1cm4gbmV3IENvbmRpdGlvbihjb25kaXRpb24xLCBvcGVyYXRvciwgY29uZGl0aW9uMik7XG4gIH1cblxuICBzdGF0aWMgYXR0cmlidXRlKGF0dHI6IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgQ29uZGl0aW9uLkJ1aWxkZXIoKS5hdHRyaWJ1dGUoYXR0cik7XG4gIH1cblxuICAvKipcbiAgICogQHN1bW1hcnkgQ29uZGl0aW9uIEJ1aWxkZXIgQ2xhc3NcbiAgICogQGRlc2NyaXB0aW9uIHByb3ZpZGVzIGEgc2ltcGxlIEFQSSB0byBidWlsZCB7QGxpbmsgQ29uZGl0aW9ufXNcbiAgICpcbiAgICogQGNsYXNzIENvbmRpdGlvbkJ1aWxkZXJcbiAgICogQGltcGxlbWVudHMgQnVpbGRlclxuICAgKiBAaW1wbGVtZW50cyBBdHRyaWJ1dGVPcHRpb25cbiAgICpcbiAgICogQGNhdGVnb3J5IFF1ZXJ5XG4gICAqIEBzdWJjYXRlZ29yeSBDb25kaXRpb25zXG4gICAqL1xuICBwcml2YXRlIHN0YXRpYyBCdWlsZGVyID0gY2xhc3MgQ29uZGl0aW9uQnVpbGRlclxuICAgIGltcGxlbWVudHMgQ29uZGl0aW9uQnVpbGRlck9wdGlvbiwgQXR0cmlidXRlT3B0aW9uXG4gIHtcbiAgICBhdHRyMT86IHN0cmluZyB8IENvbmRpdGlvbiA9IHVuZGVmaW5lZDtcbiAgICBvcGVyYXRvcj86IE9wZXJhdG9yIHwgR3JvdXBPcGVyYXRvciA9IHVuZGVmaW5lZDtcbiAgICBjb21wYXJpc29uPzogYW55ID0gdW5kZWZpbmVkO1xuXG4gICAgLyoqXG4gICAgICogQGluaGVyaXREb2NcbiAgICAgKi9cbiAgICBhdHRyaWJ1dGUoYXR0cjogc3RyaW5nKTogQXR0cmlidXRlT3B0aW9uIHtcbiAgICAgIHRoaXMuYXR0cjEgPSBhdHRyO1xuICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHN1bW1hcnkgQ3JlYXRlcyBhbiBFcXVhbGl0eSBDb21wYXJpc29uXG4gICAgICogQHBhcmFtIHthbnl9IHZhbFxuICAgICAqL1xuICAgIGVxKHZhbDogYW55KSB7XG4gICAgICByZXR1cm4gdGhpcy5zZXRPcChPcGVyYXRvci5FUVVBTCwgdmFsKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAc3VtbWFyeSBDcmVhdGVzIGEgRGlmZmVyZW50IENvbXBhcmlzb25cbiAgICAgKiBAcGFyYW0ge2FueX0gdmFsXG4gICAgICovXG4gICAgZGlmKHZhbDogYW55KSB7XG4gICAgICByZXR1cm4gdGhpcy5zZXRPcChPcGVyYXRvci5ESUZGRVJFTlQsIHZhbCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHN1bW1hcnkgQ3JlYXRlcyBhIEdyZWF0ZXIgVGhhbiBDb21wYXJpc29uXG4gICAgICogQHBhcmFtIHthbnl9IHZhbFxuICAgICAqL1xuICAgIGd0KHZhbDogYW55KSB7XG4gICAgICByZXR1cm4gdGhpcy5zZXRPcChPcGVyYXRvci5CSUdHRVIsIHZhbCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHN1bW1hcnkgQ3JlYXRlcyBhIExvd2VyIFRoYW4gQ29tcGFyaXNvblxuICAgICAqIEBwYXJhbSB7YW55fSB2YWxcbiAgICAgKi9cbiAgICBsdCh2YWw6IGFueSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2V0T3AoT3BlcmF0b3IuU01BTExFUiwgdmFsKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAc3VtbWFyeSBDcmVhdGVzIGEgR3JlYXRlciBvciBFcXVhbCB0byBDb21wYXJpc29uXG4gICAgICogQHBhcmFtIHthbnl9IHZhbFxuICAgICAqL1xuICAgIGd0ZSh2YWw6IGFueSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2V0T3AoT3BlcmF0b3IuQklHR0VSX0VRLCB2YWwpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBzdW1tYXJ5IENyZWF0ZXMgYSBMb3dlciBvciBFcXVhbCB0byBDb21wYXJpc29uXG4gICAgICogQHBhcmFtIHthbnl9IHZhbFxuICAgICAqL1xuICAgIGx0ZSh2YWw6IGFueSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2V0T3AoT3BlcmF0b3IuU01BTExFUl9FUSwgdmFsKTtcbiAgICB9XG5cbiAgICBpbihhcnI6IGFueVtdKSB7XG4gICAgICByZXR1cm4gdGhpcy5zZXRPcChPcGVyYXRvci5JTiwgYXJyKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAc3VtbWFyeSBDcmVhdGVzIGEgUmVnZXhwbyBDb21wYXJpc29uXG4gICAgICogQHBhcmFtIHthbnl9IHZhbFxuICAgICAqL1xuICAgIHJlZ2V4cCh2YWw6IGFueSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2V0T3AoT3BlcmF0b3IuUkVHRVhQLCBuZXcgUmVnRXhwKHZhbCkuc291cmNlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAc3VtbWFyeSBDcmVhdGVzIGFuIHtAbGluayBPcGVyYXRvcn0gYmFzZWQgQ29tcGFyaXNvblxuICAgICAqIEBwYXJhbSB7T3BlcmF0b3J9IG9wXG4gICAgICogQHBhcmFtIHthbnl9IHZhbFxuICAgICAqL1xuICAgIHByaXZhdGUgc2V0T3Aob3A6IE9wZXJhdG9yLCB2YWw6IGFueSkge1xuICAgICAgdGhpcy5vcGVyYXRvciA9IG9wO1xuICAgICAgdGhpcy5jb21wYXJpc29uID0gdmFsO1xuICAgICAgcmV0dXJuIHRoaXMuYnVpbGQoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAc3VtbWFyeSBCdWlsZHMgdGhlIERhdGFiYXNlIE9iamVjdFxuICAgICAqIEB0aHJvd3Mge1F1ZXJ5RXJyb3J9IGlmIGl0IGZhaWxzIHRvIGJ1aWxkIHRoZSB7QGxpbmsgQ29uZGl0aW9ufVxuICAgICAqIEBwcml2YXRlXG4gICAgICovXG4gICAgcHJpdmF0ZSBidWlsZCgpOiBDb25kaXRpb24ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIG5ldyBDb25kaXRpb24oXG4gICAgICAgICAgdGhpcy5hdHRyMSBhcyBzdHJpbmcgfCBDb25kaXRpb24sXG4gICAgICAgICAgdGhpcy5vcGVyYXRvciBhcyBPcGVyYXRvcixcbiAgICAgICAgICB0aGlzLmNvbXBhcmlzb24gYXMgYW55XG4gICAgICAgICk7XG4gICAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgICAgdGhyb3cgbmV3IFF1ZXJ5RXJyb3IoZSk7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIHN0YXRpYyBnZXQgYnVpbGRlcigpOiBDb25kaXRpb25CdWlsZGVyT3B0aW9uIHtcbiAgICByZXR1cm4gbmV3IENvbmRpdGlvbi5CdWlsZGVyKCk7XG4gIH1cbn1cbiJdfQ==
|
251
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uZGl0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3F1ZXJ5L0NvbmRpdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFDQSx5RUFLd0M7QUFDeEMsMkNBQXNEO0FBQ3RELHFDQUFzQztBQUV0Qzs7Ozs7Ozs7Ozs7OztHQWFHO0FBRUgsTUFBYSxTQUFVLFNBQVEsNEJBQUs7SUFRbEMsWUFDRSxLQUF5QixFQUN6QixRQUFrQyxFQUNsQyxVQUFlO1FBRWYsS0FBSyxFQUFFLENBQUM7UUFYQSxVQUFLLEdBQXdCLFNBQVMsQ0FBQztRQUV2QyxhQUFRLEdBQThCLFNBQVMsQ0FBQztRQUVoRCxlQUFVLEdBQVMsU0FBUyxDQUFDO1FBUXJDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFFRDs7O09BR0c7SUFDSCxHQUFHLENBQUMsU0FBb0I7UUFDdEIsT0FBTyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsRUFBRSxDQUFDLFNBQW9CO1FBQ3JCLE9BQU8sU0FBUyxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVEOzs7T0FHRztJQUNILEdBQUcsQ0FBQyxHQUFRO1FBQ1YsT0FBTyxJQUFJLFNBQVMsQ0FBQyxJQUFJLEVBQUUsb0JBQVEsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsU0FBUyxDQUFDLEdBQUcsVUFBb0I7UUFDL0IsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDO1FBQzlDLElBQUksTUFB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QUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsVUFBVSxHQUFHLEdBQUcsQ0FBQztZQUN0QixPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN0QixDQUFDO1FBRUQ7Ozs7V0FJRztRQUNLLEtBQUs7WUFDWCxJQUFJLENBQUM7Z0JBQ0gsT0FBTyxJQUFJLFNBQVMsQ0FDbEIsSUFBSSxDQUFDLEtBQTJCLEVBQ2hDLElBQUksQ0FBQyxRQUFvQixFQUN6QixJQUFJLENBQUMsVUFBaUIsQ0FDdkIsQ0FBQztZQUNKLENBQUM7WUFBQyxPQUFPLENBQU0sRUFBRSxDQUFDO2dCQUNoQixNQUFNLElBQUksbUJBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMxQixDQUFDO1FBQ0gsQ0FBQztLQUNGLEFBdEdxQixDQXNHcEI7SUFFRixNQUFNLEtBQUssT0FBTztRQUNoQixPQUFPLElBQUksU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2pDLENBQUM7O0FBdlBILDhCQXdQQztBQXRQVztJQURULElBQUEsK0JBQVEsR0FBRTs7d0NBQ3NDO0FBRXZDO0lBRFQsSUFBQSwrQkFBUSxHQUFFOzsyQ0FDK0M7QUFFaEQ7SUFEVCxJQUFBLCtCQUFRLEdBQUU7OzZDQUM0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF0dHJpYnV0ZU9wdGlvbiwgQ29uZGl0aW9uQnVpbGRlck9wdGlvbiB9IGZyb20gXCIuL29wdGlvbnNcIjtcbmltcG9ydCB7XG4gIE1vZGVsLFxuICBNb2RlbEVycm9yRGVmaW5pdGlvbixcbiAgcmVxdWlyZWQsXG4gIHNmLFxufSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBHcm91cE9wZXJhdG9yLCBPcGVyYXRvciB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgUXVlcnlFcnJvciB9IGZyb20gXCIuL2Vycm9yc1wiO1xuXG4vKipcbiAqIEBzdW1tYXJ5IENvbmRpdGlvbiBDbGFzc1xuICogQGRlc2NyaXB0aW9uIFJlcHJlc2VudHMgYSBsb2dpY2FsIGNvbmRpdGlvblxuICpcbiAqIEBwYXJhbSB7c3RyaW5nIHwgQ29uZGl0aW9ufSBhdHRyMVxuICogQHBhcmFtIHtPcGVyYXRvciB8IEdyb3VwT3BlcmF0b3J9IG9wZXJhdG9yXG4gKiBAcGFyYW0ge3N0cmluZyB8IENvbmRpdGlvbn0gY29tcGFyaXNvblxuICpcbiAqIEBjbGFzcyBDb25kaXRpb25cbiAqIEBpbXBsZW1lbnRzIEV4ZWN1dG9yXG4gKlxuICogQGNhdGVnb3J5IFF1ZXJ5XG4gKiBAc3ViY2F0ZWdvcnkgQ29uZGl0aW9uc1xuICovXG5cbmV4cG9ydCBjbGFzcyBDb25kaXRpb24gZXh0ZW5kcyBNb2RlbCB7XG4gIEByZXF1aXJlZCgpXG4gIHByb3RlY3RlZCBhdHRyMT86IHN0cmluZyB8IENvbmRpdGlvbiA9IHVuZGVmaW5lZDtcbiAgQHJlcXVpcmVkKClcbiAgcHJvdGVjdGVkIG9wZXJhdG9yPzogT3BlcmF0b3IgfCBHcm91cE9wZXJhdG9yID0gdW5kZWZpbmVkO1xuICBAcmVxdWlyZWQoKVxuICBwcm90ZWN0ZWQgY29tcGFyaXNvbj86IGFueSA9IHVuZGVmaW5lZDtcblxuICBwcml2YXRlIGNvbnN0cnVjdG9yKFxuICAgIGF0dHIxOiBzdHJpbmcgfCBDb25kaXRpb24sXG4gICAgb3BlcmF0b3I6IE9wZXJhdG9yIHwgR3JvdXBPcGVyYXRvcixcbiAgICBjb21wYXJpc29uOiBhbnlcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmF0dHIxID0gYXR0cjE7XG4gICAgdGhpcy5vcGVyYXRvciA9IG9wZXJhdG9yO1xuICAgIHRoaXMuY29tcGFyaXNvbiA9IGNvbXBhcmlzb247XG4gIH1cblxuICAvKipcbiAgICogQHN1bW1hcnkgSm9pbnMgMiB7QGxpbmsgQ29uZGl0aW9ufXMgb24gYW4ge0BsaW5rIE9wZXJhdG9yI0FORH0gb3BlcmF0aW9uXG4gICAqIEBwYXJhbSB7Q29uZGl0aW9ufSBjb25kaXRpb25cbiAgICovXG4gIGFuZChjb25kaXRpb246IENvbmRpdGlvbik6IENvbmRpdGlvbiB7XG4gICAgcmV0dXJuIENvbmRpdGlvbi5hbmQodGhpcywgY29uZGl0aW9uKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAc3VtbWFyeSBKb2lucyAyIHtAbGluayBDb25kaXRpb259cyBvbiBhbiB7QGxpbmsgT3BlcmF0b3IjT1J9IG9wZXJhdGlvblxuICAgKiBAcGFyYW0ge0NvbmRpdGlvbn0gY29uZGl0aW9uXG4gICAqL1xuICBvcihjb25kaXRpb246IENvbmRpdGlvbik6IENvbmRpdGlvbiB7XG4gICAgcmV0dXJuIENvbmRpdGlvbi5vcih0aGlzLCBjb25kaXRpb24pO1xuICB9XG5cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IGV4Y2x1ZGVzIGEgdmFsdXQgZnJvbSB0aGUgcmVzdWx0XG4gICAqIEBwYXJhbSB2YWxcbiAgICovXG4gIG5vdCh2YWw6IGFueSk6IENvbmRpdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBDb25kaXRpb24odGhpcywgT3BlcmF0b3IuTk9ULCB2YWwpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbmhlcml0RG9jXG4gICAqL1xuICBoYXNFcnJvcnMoLi4uZXhjZXB0aW9uczogc3RyaW5nW10pOiBNb2RlbEVycm9yRGVmaW5pdGlvbiB8IHVuZGVmaW5lZCB7XG4gICAgY29uc3QgZXJyb3JzID0gc3VwZXIuaGFzRXJyb3JzKC4uLmV4Y2VwdGlvbnMpO1xuICAgIGlmIChlcnJvcnMpIHJldHVybiBlcnJvcnM7XG5cbiAgICBpZiAodHlwZW9mIHRoaXMuYXR0cjEgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgIGlmICh0aGlzLmNvbXBhcmlzb24gaW5zdGFuY2VvZiBDb25kaXRpb24pXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgY29tcGFyaXNvbjoge1xuICAgICAgICAgICAgY29uZGl0aW9uOiBcIkJvdGggc2lkZXMgb2YgdGhlIGNvbXBhcmlzb24gbXVzdCBiZSBvZiB0aGUgc2FtZSB0eXBlXCIsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSBhcyBNb2RlbEVycm9yRGVmaW5pdGlvbjtcbiAgICAgIGlmIChPYmplY3QudmFsdWVzKE9wZXJhdG9yKS5pbmRleE9mKHRoaXMub3BlcmF0b3IgYXMgT3BlcmF0b3IpID09PSAtMSlcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBvcGVyYXRvcjoge1xuICAgICAgICAgICAgY29uZGl0aW9uOiBzZihcIkludmFsaWQgb3BlcmF0b3IgezB9XCIsIHRoaXMub3BlcmF0b3IgYXMgc3RyaW5nKSxcbiAgICAgICAgICB9LFxuICAgICAgICB9IGFzIE1vZGVsRXJyb3JEZWZpbml0aW9uO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmF0dHIxIGluc3RhbmNlb2YgQ29uZGl0aW9uKSB7XG4gICAgICBpZiAoXG4gICAgICAgICEodGhpcy5jb21wYXJpc29uIGluc3RhbmNlb2YgQ29uZGl0aW9uKSAmJlxuICAgICAgICB0aGlzLm9wZXJhdG9yICE9PSBPcGVyYXRvci5OT1RcbiAgICAgIClcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBjb21wYXJpc29uOiB7XG4gICAgICAgICAgICBjb25kaXRpb246IHNmKFwiSW52YWxpZCBvcGVyYXRvciB7MH1cIiwgdGhpcy5vcGVyYXRvciBhcyBzdHJpbmcpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0gYXMgTW9kZWxFcnJvckRlZmluaXRpb247XG4gICAgICBpZiAoXG4gICAgICAgIE9iamVjdC52YWx1ZXMoR3JvdXBPcGVyYXRvcikuaW5kZXhPZih0aGlzLm9wZXJhdG9yIGFzIEdyb3VwT3BlcmF0b3IpID09PVxuICAgICAgICAgIC0xICYmXG4gICAgICAgIHRoaXMub3BlcmF0b3IgIT09IE9wZXJhdG9yLk5PVFxuICAgICAgKVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG9wZXJhdG9yOiB7XG4gICAgICAgICAgICBjb25kaXRpb246IHNmKFwiSW52YWxpZCBvcGVyYXRvciB7MH1cIiwgdGhpcy5vcGVyYXRvciBhcyBzdHJpbmcpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0gYXMgTW9kZWxFcnJvckRlZmluaXRpb247XG4gICAgICAvLyBpZiAodGhpcy5vcGVyYXRvciAhPT0gT3BlcmF0b3IuTk9UICYmIHR5cGVvZiB0aGlzLmF0dHIxLmF0dHIxICE9PSBcInN0cmluZ1wiKVxuICAgICAgLy8gICAgIHJldHVybiB7XG4gICAgICAvLyAgICAgICAgIGF0dHIxOiB7XG4gICAgICAvLyAgICAgICAgICAgICBjb25kaXRpb246IHN0cmluZ0Zvcm1hdChcIlBhcmVudCBjb25kaXRpb24gYXR0cmlidXRlIG11c3QgYmUgYSBzdHJpbmdcIilcbiAgICAgIC8vICAgICAgICAgfVxuICAgICAgLy8gICAgIH0gYXMgTW9kZWxFcnJvckRlZmluaXRpb25cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQHN1bW1hcnkgSm9pbnMgMiB7QGxpbmsgQ29uZGl0aW9ufXMgb24gYW4ge0BsaW5rIE9wZXJhdG9yI0FORH0gb3BlcmF0aW9uXG4gICAqIEBwYXJhbSB7Q29uZGl0aW9ufSBjb25kaXRpb24xXG4gICAqIEBwYXJhbSB7Q29uZGl0aW9ufSBjb25kaXRpb24yXG4gICAqL1xuICBzdGF0aWMgYW5kKGNvbmRpdGlvbjE6IENvbmRpdGlvbiwgY29uZGl0aW9uMjogQ29uZGl0aW9uKTogQ29uZGl0aW9uIHtcbiAgICByZXR1cm4gQ29uZGl0aW9uLmdyb3VwKGNvbmRpdGlvbjEsIEdyb3VwT3BlcmF0b3IuQU5ELCBjb25kaXRpb24yKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAc3VtbWFyeSBKb2lucyAyIHtAbGluayBDb25kaXRpb259cyBvbiBhbiB7QGxpbmsgT3BlcmF0b3IjT1J9IG9wZXJhdGlvblxuICAgKiBAcGFyYW0ge0NvbmRpdGlvbn0gY29uZGl0aW9uMVxuICAgKiBAcGFyYW0ge0NvbmRpdGlvbn0gY29uZGl0aW9uMlxuICAgKi9cbiAgc3RhdGljIG9yKGNvbmRpdGlvbjE6IENvbmRpdGlvbiwgY29uZGl0aW9uMjogQ29uZGl0aW9uKTogQ29uZGl0aW9uIHtcbiAgICByZXR1cm4gQ29uZGl0aW9uLmdyb3VwKGNvbmRpdGlvbjEsIEdyb3VwT3BlcmF0b3IuT1IsIGNvbmRpdGlvbjIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IEdyb3VwcyAyIHtAbGluayBDb25kaXRpb259cyBieSB0aGUgc3BlY2lmaWVkIHtAbGluayBHcm91cE9wZXJhdG9yfVxuICAgKiBAcGFyYW0ge0NvbmRpdGlvbn0gY29uZGl0aW9uMVxuICAgKiBAcGFyYW0ge0dyb3VwT3BlcmF0b3J9IG9wZXJhdG9yXG4gICAqIEBwYXJhbSB7Q29uZGl0aW9ufSBjb25kaXRpb24yXG4gICAqL1xuICBwcml2YXRlIHN0YXRpYyBncm91cChcbiAgICBjb25kaXRpb24xOiBDb25kaXRpb24sXG4gICAgb3BlcmF0b3I6IEdyb3VwT3BlcmF0b3IsXG4gICAgY29uZGl0aW9uMjogQ29uZGl0aW9uXG4gICk6IENvbmRpdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBDb25kaXRpb24oY29uZGl0aW9uMSwgb3BlcmF0b3IsIGNvbmRpdGlvbjIpO1xuICB9XG5cbiAgc3RhdGljIGF0dHJpYnV0ZShhdHRyOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gbmV3IENvbmRpdGlvbi5CdWlsZGVyKCkuYXR0cmlidXRlKGF0dHIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IENvbmRpdGlvbiBCdWlsZGVyIENsYXNzXG4gICAqIEBkZXNjcmlwdGlvbiBwcm92aWRlcyBhIHNpbXBsZSBBUEkgdG8gYnVpbGQge0BsaW5rIENvbmRpdGlvbn1zXG4gICAqXG4gICAqIEBjbGFzcyBDb25kaXRpb25CdWlsZGVyXG4gICAqIEBpbXBsZW1lbnRzIEJ1aWxkZXJcbiAgICogQGltcGxlbWVudHMgQXR0cmlidXRlT3B0aW9uXG4gICAqXG4gICAqIEBjYXRlZ29yeSBRdWVyeVxuICAgKiBAc3ViY2F0ZWdvcnkgQ29uZGl0aW9uc1xuICAgKi9cbiAgcHJpdmF0ZSBzdGF0aWMgQnVpbGRlciA9IGNsYXNzIENvbmRpdGlvbkJ1aWxkZXJcbiAgICBpbXBsZW1lbnRzIENvbmRpdGlvbkJ1aWxkZXJPcHRpb24sIEF0dHJpYnV0ZU9wdGlvblxuICB7XG4gICAgYXR0cjE/OiBzdHJpbmcgfCBDb25kaXRpb24gPSB1bmRlZmluZWQ7XG4gICAgb3BlcmF0b3I/OiBPcGVyYXRvciB8IEdyb3VwT3BlcmF0b3IgPSB1bmRlZmluZWQ7XG4gICAgY29tcGFyaXNvbj86IGFueSA9IHVuZGVmaW5lZDtcblxuICAgIC8qKlxuICAgICAqIEBpbmhlcml0RG9jXG4gICAgICovXG4gICAgYXR0cmlidXRlKGF0dHI6IHN0cmluZyk6IEF0dHJpYnV0ZU9wdGlvbiB7XG4gICAgICB0aGlzLmF0dHIxID0gYXR0cjtcbiAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBzdW1tYXJ5IENyZWF0ZXMgYW4gRXF1YWxpdHkgQ29tcGFyaXNvblxuICAgICAqIEBwYXJhbSB7YW55fSB2YWxcbiAgICAgKi9cbiAgICBlcSh2YWw6IGFueSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2V0T3AoT3BlcmF0b3IuRVFVQUwsIHZhbCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHN1bW1hcnkgQ3JlYXRlcyBhIERpZmZlcmVudCBDb21wYXJpc29uXG4gICAgICogQHBhcmFtIHthbnl9IHZhbFxuICAgICAqL1xuICAgIGRpZih2YWw6IGFueSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2V0T3AoT3BlcmF0b3IuRElGRkVSRU5ULCB2YWwpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBzdW1tYXJ5IENyZWF0ZXMgYSBHcmVhdGVyIFRoYW4gQ29tcGFyaXNvblxuICAgICAqIEBwYXJhbSB7YW55fSB2YWxcbiAgICAgKi9cbiAgICBndCh2YWw6IGFueSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2V0T3AoT3BlcmF0b3IuQklHR0VSLCB2YWwpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBzdW1tYXJ5IENyZWF0ZXMgYSBMb3dlciBUaGFuIENvbXBhcmlzb25cbiAgICAgKiBAcGFyYW0ge2FueX0gdmFsXG4gICAgICovXG4gICAgbHQodmFsOiBhbnkpIHtcbiAgICAgIHJldHVybiB0aGlzLnNldE9wKE9wZXJhdG9yLlNNQUxMRVIsIHZhbCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHN1bW1hcnkgQ3JlYXRlcyBhIEdyZWF0ZXIgb3IgRXF1YWwgdG8gQ29tcGFyaXNvblxuICAgICAqIEBwYXJhbSB7YW55fSB2YWxcbiAgICAgKi9cbiAgICBndGUodmFsOiBhbnkpIHtcbiAgICAgIHJldHVybiB0aGlzLnNldE9wKE9wZXJhdG9yLkJJR0dFUl9FUSwgdmFsKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAc3VtbWFyeSBDcmVhdGVzIGEgTG93ZXIgb3IgRXF1YWwgdG8gQ29tcGFyaXNvblxuICAgICAqIEBwYXJhbSB7YW55fSB2YWxcbiAgICAgKi9cbiAgICBsdGUodmFsOiBhbnkpIHtcbiAgICAgIHJldHVybiB0aGlzLnNldE9wKE9wZXJhdG9yLlNNQUxMRVJfRVEsIHZhbCk7XG4gICAgfVxuXG4gICAgaW4oYXJyOiBhbnlbXSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2V0T3AoT3BlcmF0b3IuSU4sIGFycik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHN1bW1hcnkgQ3JlYXRlcyBhIFJlZ2V4cG8gQ29tcGFyaXNvblxuICAgICAqIEBwYXJhbSB7YW55fSB2YWxcbiAgICAgKi9cbiAgICByZWdleHAodmFsOiBhbnkpIHtcbiAgICAgIHJldHVybiB0aGlzLnNldE9wKE9wZXJhdG9yLlJFR0VYUCwgbmV3IFJlZ0V4cCh2YWwpLnNvdXJjZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHN1bW1hcnkgQ3JlYXRlcyBhbiB7QGxpbmsgT3BlcmF0b3J9IGJhc2VkIENvbXBhcmlzb25cbiAgICAgKiBAcGFyYW0ge09wZXJhdG9yfSBvcFxuICAgICAqIEBwYXJhbSB7YW55fSB2YWxcbiAgICAgKi9cbiAgICBwcml2YXRlIHNldE9wKG9wOiBPcGVyYXRvciwgdmFsOiBhbnkpIHtcbiAgICAgIHRoaXMub3BlcmF0b3IgPSBvcDtcbiAgICAgIHRoaXMuY29tcGFyaXNvbiA9IHZhbDtcbiAgICAgIHJldHVybiB0aGlzLmJ1aWxkKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHN1bW1hcnkgQnVpbGRzIHRoZSBEYXRhYmFzZSBPYmplY3RcbiAgICAgKiBAdGhyb3dzIHtRdWVyeUVycm9yfSBpZiBpdCBmYWlscyB0byBidWlsZCB0aGUge0BsaW5rIENvbmRpdGlvbn1cbiAgICAgKiBAcHJpdmF0ZVxuICAgICAqL1xuICAgIHByaXZhdGUgYnVpbGQoKTogQ29uZGl0aW9uIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHJldHVybiBuZXcgQ29uZGl0aW9uKFxuICAgICAgICAgIHRoaXMuYXR0cjEgYXMgc3RyaW5nIHwgQ29uZGl0aW9uLFxuICAgICAgICAgIHRoaXMub3BlcmF0b3IgYXMgT3BlcmF0b3IsXG4gICAgICAgICAgdGhpcy5jb21wYXJpc29uIGFzIGFueVxuICAgICAgICApO1xuICAgICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICAgIHRocm93IG5ldyBRdWVyeUVycm9yKGUpO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBzdGF0aWMgZ2V0IGJ1aWxkZXIoKTogQ29uZGl0aW9uQnVpbGRlck9wdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBDb25kaXRpb24uQnVpbGRlcigpO1xuICB9XG59XG4iXX0=
|
@@ -0,0 +1,75 @@
|
|
1
|
+
import { AttributeOption, ConditionBuilderOption } from "./options";
|
2
|
+
import { Model, ModelErrorDefinition } from "@decaf-ts/decorator-validation";
|
3
|
+
import { GroupOperator, Operator } from "./constants";
|
4
|
+
/**
|
5
|
+
* @summary Condition Class
|
6
|
+
* @description Represents a logical condition
|
7
|
+
*
|
8
|
+
* @param {string | Condition} attr1
|
9
|
+
* @param {Operator | GroupOperator} operator
|
10
|
+
* @param {string | Condition} comparison
|
11
|
+
*
|
12
|
+
* @class Condition
|
13
|
+
* @implements Executor
|
14
|
+
*
|
15
|
+
* @category Query
|
16
|
+
* @subcategory Conditions
|
17
|
+
*/
|
18
|
+
export declare class Condition extends Model {
|
19
|
+
protected attr1?: string | Condition;
|
20
|
+
protected operator?: Operator | GroupOperator;
|
21
|
+
protected comparison?: any;
|
22
|
+
private constructor();
|
23
|
+
/**
|
24
|
+
* @summary Joins 2 {@link Condition}s on an {@link Operator#AND} operation
|
25
|
+
* @param {Condition} condition
|
26
|
+
*/
|
27
|
+
and(condition: Condition): Condition;
|
28
|
+
/**
|
29
|
+
* @summary Joins 2 {@link Condition}s on an {@link Operator#OR} operation
|
30
|
+
* @param {Condition} condition
|
31
|
+
*/
|
32
|
+
or(condition: Condition): Condition;
|
33
|
+
/**
|
34
|
+
* @summary excludes a valut from the result
|
35
|
+
* @param val
|
36
|
+
*/
|
37
|
+
not(val: any): Condition;
|
38
|
+
/**
|
39
|
+
* @inheritDoc
|
40
|
+
*/
|
41
|
+
hasErrors(...exceptions: string[]): ModelErrorDefinition | undefined;
|
42
|
+
/**
|
43
|
+
* @summary Joins 2 {@link Condition}s on an {@link Operator#AND} operation
|
44
|
+
* @param {Condition} condition1
|
45
|
+
* @param {Condition} condition2
|
46
|
+
*/
|
47
|
+
static and(condition1: Condition, condition2: Condition): Condition;
|
48
|
+
/**
|
49
|
+
* @summary Joins 2 {@link Condition}s on an {@link Operator#OR} operation
|
50
|
+
* @param {Condition} condition1
|
51
|
+
* @param {Condition} condition2
|
52
|
+
*/
|
53
|
+
static or(condition1: Condition, condition2: Condition): Condition;
|
54
|
+
/**
|
55
|
+
* @summary Groups 2 {@link Condition}s by the specified {@link GroupOperator}
|
56
|
+
* @param {Condition} condition1
|
57
|
+
* @param {GroupOperator} operator
|
58
|
+
* @param {Condition} condition2
|
59
|
+
*/
|
60
|
+
private static group;
|
61
|
+
static attribute(attr: string): AttributeOption;
|
62
|
+
/**
|
63
|
+
* @summary Condition Builder Class
|
64
|
+
* @description provides a simple API to build {@link Condition}s
|
65
|
+
*
|
66
|
+
* @class ConditionBuilder
|
67
|
+
* @implements Builder
|
68
|
+
* @implements AttributeOption
|
69
|
+
*
|
70
|
+
* @category Query
|
71
|
+
* @subcategory Conditions
|
72
|
+
*/
|
73
|
+
private static Builder;
|
74
|
+
static get builder(): ConditionBuilderOption;
|
75
|
+
}
|
package/lib/query/Paginator.cjs
CHANGED
@@ -39,5 +39,4 @@ class Paginator {
|
|
39
39
|
}
|
40
40
|
}
|
41
41
|
exports.Paginator = Paginator;
|
42
|
-
|
43
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9xdWVyeS9QYWdpbmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUNBQXVDO0FBR3ZDLE1BQXNCLFNBQVM7SUFRN0IsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVO1lBQUUsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN6RSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUVELElBQWMsT0FBTztRQUNuQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELFlBQ1ksSUFBa0IsRUFDbkIsSUFBWSxFQUNGLGFBQWdCO1FBRnpCLFNBQUksR0FBSixJQUFJLENBQWM7UUFDbkIsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNGLGtCQUFhLEdBQWIsYUFBYSxDQUFHO0lBQ2xDLENBQUM7SUFJSixLQUFLLENBQUMsSUFBSTtRQUNSLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxLQUFLLENBQUMsUUFBUTtRQUNaLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFUyxZQUFZLENBQUMsSUFBWTtRQUNqQyxJQUFJLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztZQUNyQyxNQUFNLElBQUksb0JBQVcsQ0FDbkIsc0RBQXNELENBQ3ZELENBQUM7UUFDSixJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVztZQUN6QixNQUFNLElBQUksb0JBQVcsQ0FDbkIsc0RBQXNELENBQ3ZELENBQUM7SUFDTixDQUFDO0NBR0Y7QUF6REQsOEJBeURDIiwiZmlsZSI6InF1ZXJ5L1BhZ2luYXRvci5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBhZ2luZ0Vycm9yIH0gZnJvbSBcIi4vZXJyb3JzXCI7XG5pbXBvcnQgeyBTdGF0ZW1lbnQgfSBmcm9tIFwiLi9TdGF0ZW1lbnRcIjtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFBhZ2luYXRvcjxWLCBRPiB7XG4gIHByb3RlY3RlZCBfY3VycmVudFBhZ2UhOiBudW1iZXI7XG4gIHByb3RlY3RlZCBfdG90YWxQYWdlcyE6IG51bWJlcjtcbiAgcHJvdGVjdGVkIF9yZWNvcmRDb3VudCE6IG51bWJlcjtcbiAgcHJvdGVjdGVkIGxpbWl0ITogbnVtYmVyO1xuXG4gIHByaXZhdGUgX3N0YXRlbWVudD86IFE7XG5cbiAgZ2V0IGN1cnJlbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2N1cnJlbnRQYWdlO1xuICB9XG5cbiAgZ2V0IHRvdGFsKCkge1xuICAgIHJldHVybiB0aGlzLl90b3RhbFBhZ2VzO1xuICB9XG5cbiAgZ2V0IGNvdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3JlY29yZENvdW50O1xuICB9XG5cbiAgZ2V0IHN0YXRlbWVudCgpIHtcbiAgICBpZiAoIXRoaXMuX3N0YXRlbWVudCkgdGhpcy5fc3RhdGVtZW50ID0gdGhpcy5wcmVwYXJlKHRoaXMuX3Jhd1N0YXRlbWVudCk7XG4gICAgcmV0dXJuIHRoaXMuX3N0YXRlbWVudDtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgYWRhcHRlcigpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0LmdldEFkYXB0ZXIoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgc3RhdDogU3RhdGVtZW50PFE+LFxuICAgIHJlYWRvbmx5IHNpemU6IG51bWJlcixcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgX3Jhd1N0YXRlbWVudDogUVxuICApIHt9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IHByZXBhcmUocmF3U3RhdGVtZW50OiBRKTogUTtcblxuICBhc3luYyBuZXh0KCkge1xuICAgIHJldHVybiB0aGlzLnBhZ2UodGhpcy5jdXJyZW50ICsgMSk7XG4gIH1cblxuICBhc3luYyBwcmV2aW91cygpIHtcbiAgICByZXR1cm4gdGhpcy5wYWdlKHRoaXMuY3VycmVudCAtIDEpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHZhbGlkYXRlUGFnZShwYWdlOiBudW1iZXIpIHtcbiAgICBpZiAocGFnZSA8IDEgfHwgIU51bWJlci5pc0ludGVnZXIocGFnZSkpXG4gICAgICB0aHJvdyBuZXcgUGFnaW5nRXJyb3IoXG4gICAgICAgIFwicGFnZSBudW1iZXIgY2Fubm90IGJlIHVuZGVyIDEgYW5kIG11c3QgYmUgYW4gaW50ZWdlclwiXG4gICAgICApO1xuICAgIGlmIChwYWdlID4gdGhpcy5fdG90YWxQYWdlcylcbiAgICAgIHRocm93IG5ldyBQYWdpbmdFcnJvcihcbiAgICAgICAgXCJwYWdlIG51bWJlciBjYW5ub3QgYmUgdW5kZXIgMSBhbmQgbXVzdCBiZSBhbiBpbnRlZ2VyXCJcbiAgICAgICk7XG4gIH1cblxuICBhYnN0cmFjdCBwYWdlKHBhZ2U/OiBudW1iZXIsIC4uLmFyZ3M6IGFueVtdKTogUHJvbWlzZTxWW10+O1xufVxuIl19
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGFnaW5hdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3F1ZXJ5L1BhZ2luYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxQ0FBdUM7QUFHdkMsTUFBc0IsU0FBUztJQVE3QixJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDWCxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVU7WUFBRSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3pFLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBYyxPQUFPO1FBQ25CLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsWUFDWSxJQUFrQixFQUNuQixJQUFZLEVBQ0YsYUFBZ0I7UUFGekIsU0FBSSxHQUFKLElBQUksQ0FBYztRQUNuQixTQUFJLEdBQUosSUFBSSxDQUFRO1FBQ0Ysa0JBQWEsR0FBYixhQUFhLENBQUc7SUFDbEMsQ0FBQztJQUlKLEtBQUssQ0FBQyxJQUFJO1FBQ1IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELEtBQUssQ0FBQyxRQUFRO1FBQ1osT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVTLFlBQVksQ0FBQyxJQUFZO1FBQ2pDLElBQUksSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO1lBQ3JDLE1BQU0sSUFBSSxvQkFBVyxDQUNuQixzREFBc0QsQ0FDdkQsQ0FBQztRQUNKLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXO1lBQ3pCLE1BQU0sSUFBSSxvQkFBVyxDQUNuQixzREFBc0QsQ0FDdkQsQ0FBQztJQUNOLENBQUM7Q0FHRjtBQXpERCw4QkF5REMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQYWdpbmdFcnJvciB9IGZyb20gXCIuL2Vycm9yc1wiO1xuaW1wb3J0IHsgU3RhdGVtZW50IH0gZnJvbSBcIi4vU3RhdGVtZW50XCI7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBQYWdpbmF0b3I8ViwgUT4ge1xuICBwcm90ZWN0ZWQgX2N1cnJlbnRQYWdlITogbnVtYmVyO1xuICBwcm90ZWN0ZWQgX3RvdGFsUGFnZXMhOiBudW1iZXI7XG4gIHByb3RlY3RlZCBfcmVjb3JkQ291bnQhOiBudW1iZXI7XG4gIHByb3RlY3RlZCBsaW1pdCE6IG51bWJlcjtcblxuICBwcml2YXRlIF9zdGF0ZW1lbnQ/OiBRO1xuXG4gIGdldCBjdXJyZW50KCkge1xuICAgIHJldHVybiB0aGlzLl9jdXJyZW50UGFnZTtcbiAgfVxuXG4gIGdldCB0b3RhbCgpIHtcbiAgICByZXR1cm4gdGhpcy5fdG90YWxQYWdlcztcbiAgfVxuXG4gIGdldCBjb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9yZWNvcmRDb3VudDtcbiAgfVxuXG4gIGdldCBzdGF0ZW1lbnQoKSB7XG4gICAgaWYgKCF0aGlzLl9zdGF0ZW1lbnQpIHRoaXMuX3N0YXRlbWVudCA9IHRoaXMucHJlcGFyZSh0aGlzLl9yYXdTdGF0ZW1lbnQpO1xuICAgIHJldHVybiB0aGlzLl9zdGF0ZW1lbnQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IGFkYXB0ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdC5nZXRBZGFwdGVyKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHN0YXQ6IFN0YXRlbWVudDxRPixcbiAgICByZWFkb25seSBzaXplOiBudW1iZXIsXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IF9yYXdTdGF0ZW1lbnQ6IFFcbiAgKSB7fVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBwcmVwYXJlKHJhd1N0YXRlbWVudDogUSk6IFE7XG5cbiAgYXN5bmMgbmV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5wYWdlKHRoaXMuY3VycmVudCArIDEpO1xuICB9XG5cbiAgYXN5bmMgcHJldmlvdXMoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFnZSh0aGlzLmN1cnJlbnQgLSAxKTtcbiAgfVxuXG4gIHByb3RlY3RlZCB2YWxpZGF0ZVBhZ2UocGFnZTogbnVtYmVyKSB7XG4gICAgaWYgKHBhZ2UgPCAxIHx8ICFOdW1iZXIuaXNJbnRlZ2VyKHBhZ2UpKVxuICAgICAgdGhyb3cgbmV3IFBhZ2luZ0Vycm9yKFxuICAgICAgICBcInBhZ2UgbnVtYmVyIGNhbm5vdCBiZSB1bmRlciAxIGFuZCBtdXN0IGJlIGFuIGludGVnZXJcIlxuICAgICAgKTtcbiAgICBpZiAocGFnZSA+IHRoaXMuX3RvdGFsUGFnZXMpXG4gICAgICB0aHJvdyBuZXcgUGFnaW5nRXJyb3IoXG4gICAgICAgIFwicGFnZSBudW1iZXIgY2Fubm90IGJlIHVuZGVyIDEgYW5kIG11c3QgYmUgYW4gaW50ZWdlclwiXG4gICAgICApO1xuICB9XG5cbiAgYWJzdHJhY3QgcGFnZShwYWdlPzogbnVtYmVyLCAuLi5hcmdzOiBhbnlbXSk6IFByb21pc2U8VltdPjtcbn1cbiJdfQ==
|
@@ -0,0 +1,22 @@
|
|
1
|
+
import { Statement } from "./Statement";
|
2
|
+
export declare abstract class Paginator<V, Q> {
|
3
|
+
protected stat: Statement<Q>;
|
4
|
+
readonly size: number;
|
5
|
+
protected readonly _rawStatement: Q;
|
6
|
+
protected _currentPage: number;
|
7
|
+
protected _totalPages: number;
|
8
|
+
protected _recordCount: number;
|
9
|
+
protected limit: number;
|
10
|
+
private _statement?;
|
11
|
+
get current(): number;
|
12
|
+
get total(): number;
|
13
|
+
get count(): number;
|
14
|
+
get statement(): Q;
|
15
|
+
protected get adapter(): import("..").Adapter<any, Q>;
|
16
|
+
protected constructor(stat: Statement<Q>, size: number, _rawStatement: Q);
|
17
|
+
protected abstract prepare(rawStatement: Q): Q;
|
18
|
+
next(): Promise<V[]>;
|
19
|
+
previous(): Promise<V[]>;
|
20
|
+
protected validatePage(page: number): void;
|
21
|
+
abstract page(page?: number, ...args: any[]): Promise<V[]>;
|
22
|
+
}
|
package/lib/query/Query.cjs
CHANGED
@@ -55,5 +55,4 @@ class Query {
|
|
55
55
|
}
|
56
56
|
}
|
57
57
|
exports.Query = Query;
|
58
|
-
|
59
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9xdWVyeS9RdWVyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFVQSwyQ0FBb0M7QUFHcEM7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFhLEtBQUs7SUFDaEIsWUFBb0IsT0FBd0I7UUFBeEIsWUFBTyxHQUFQLE9BQU8sQ0FBaUI7SUFBRyxDQUFDO0lBRWhEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxXQUEyQixpQkFBSyxDQUFDLFdBQVc7UUFDakQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUksUUFBUSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUNEOzs7T0FHRztJQUNILEdBQUcsQ0FBQyxRQUF3QjtRQUMxQixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUNEOzs7T0FHRztJQUNILEdBQUcsQ0FBQyxRQUF3QjtRQUMxQixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUNEOzs7T0FHRztJQUNILFFBQVEsQ0FBQyxRQUF3QjtRQUMvQixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUNEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxRQUF5QjtRQUM3QixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELE1BQU07UUFDSixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBSyxDQUFDO0lBQzFDLENBQUM7Q0FDRjtBQTFDRCxzQkEwQ0MiLCJmaWxlIjoicXVlcnkvUXVlcnkuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb3VudE9wdGlvbixcbiAgRGlzdGluY3RPcHRpb24sXG4gIEluc2VydE9wdGlvbixcbiAgTWF4T3B0aW9uLFxuICBNaW5PcHRpb24sXG4gIFNlbGVjdE9wdGlvbixcbn0gZnJvbSBcIi4vb3B0aW9uc1wiO1xuaW1wb3J0IHsgU2VsZWN0U2VsZWN0b3IgfSBmcm9tIFwiLi9zZWxlY3RvcnNcIjtcbmltcG9ydCB7IEFkYXB0ZXIgfSBmcm9tIFwiLi4vcGVyc2lzdGVuY2VcIjtcbmltcG9ydCB7IENvbnN0IH0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBNb2RlbCB9IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcblxuLyoqXG4gKiBAc3VtbWFyeSBIZWxwZXIgQ2xhc3MgdG8gYnVpbGQgcXVlcmllc1xuICpcbiAqIEBwYXJhbSB7RGF0YWJhc2V9IGRiXG4gKlxuICogQGNsYXNzIFF1ZXJ5XG4gKlxuICogQGNhdGVnb3J5IFF1ZXJ5XG4gKi9cbmV4cG9ydCBjbGFzcyBRdWVyeTxRLCBNIGV4dGVuZHMgTW9kZWw+IHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhZGFwdGVyOiBBZGFwdGVyPGFueSwgUT4pIHt9XG5cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IENyZWF0ZXMgYSBTZWxlY3QgQ2xhdXNlXG4gICAqIEBwYXJhbSB7U2VsZWN0U2VsZWN0b3J9IFtzZWxlY3Rvcl1cbiAgICovXG4gIHNlbGVjdChzZWxlY3RvcjogU2VsZWN0U2VsZWN0b3IgPSBDb25zdC5GVUxMX1JFQ09SRCk6IFNlbGVjdE9wdGlvbjxNPiB7XG4gICAgcmV0dXJuIHRoaXMuYWRhcHRlci5DbGF1c2VzLnNlbGVjdDxNPihzZWxlY3Rvcik7XG4gIH1cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IENyZWF0ZXMgYSBNaW4gQ2xhdXNlXG4gICAqIEBwYXJhbSB7U2VsZWN0U2VsZWN0b3J9IHNlbGVjdG9yXG4gICAqL1xuICBtaW4oc2VsZWN0b3I6IFNlbGVjdFNlbGVjdG9yKTogTWluT3B0aW9uPE0+IHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3QoKS5taW4oc2VsZWN0b3IpO1xuICB9XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBDcmVhdGVzIGEgTWF4IENsYXVzZVxuICAgKiBAcGFyYW0ge1NlbGVjdFNlbGVjdG9yfSBzZWxlY3RvclxuICAgKi9cbiAgbWF4KHNlbGVjdG9yOiBTZWxlY3RTZWxlY3Rvcik6IE1heE9wdGlvbjxNPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0KCkubWF4KHNlbGVjdG9yKTtcbiAgfVxuICAvKipcbiAgICogQHN1bW1hcnkgQ3JlYXRlcyBhIERpc3RpbmN0IENsYXVzZVxuICAgKiBAcGFyYW0ge1NlbGVjdFNlbGVjdG9yfSBzZWxlY3RvclxuICAgKi9cbiAgZGlzdGluY3Qoc2VsZWN0b3I6IFNlbGVjdFNlbGVjdG9yKTogRGlzdGluY3RPcHRpb248TT4ge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdCgpLmRpc3RpbmN0KHNlbGVjdG9yKTtcbiAgfVxuICAvKipcbiAgICogQHN1bW1hcnkgQ3JlYXRlcyBhIENvdW50IENsYXVzZVxuICAgKiBAcGFyYW0ge1NlbGVjdFNlbGVjdG9yfSBzZWxlY3RvclxuICAgKi9cbiAgY291bnQoc2VsZWN0b3I/OiBTZWxlY3RTZWxlY3Rvcik6IENvdW50T3B0aW9uPE0+IHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3QoKS5jb3VudChzZWxlY3Rvcik7XG4gIH1cblxuICBpbnNlcnQoKTogSW5zZXJ0T3B0aW9uPE0+IHtcbiAgICByZXR1cm4gdGhpcy5hZGFwdGVyLkNsYXVzZXMuaW5zZXJ0PE0+KCk7XG4gIH1cbn1cbiJdfQ==
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcXVlcnkvUXVlcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBVUEsMkNBQW9DO0FBR3BDOzs7Ozs7OztHQVFHO0FBQ0gsTUFBYSxLQUFLO0lBQ2hCLFlBQW9CLE9BQXdCO1FBQXhCLFlBQU8sR0FBUCxPQUFPLENBQWlCO0lBQUcsQ0FBQztJQUVoRDs7O09BR0c7SUFDSCxNQUFNLENBQUMsV0FBMkIsaUJBQUssQ0FBQyxXQUFXO1FBQ2pELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFJLFFBQVEsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFDRDs7O09BR0c7SUFDSCxHQUFHLENBQUMsUUFBd0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFDRDs7O09BR0c7SUFDSCxHQUFHLENBQUMsUUFBd0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFDRDs7O09BR0c7SUFDSCxRQUFRLENBQUMsUUFBd0I7UUFDL0IsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFDRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsUUFBeUI7UUFDN0IsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxNQUFNO1FBQ0osT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUssQ0FBQztJQUMxQyxDQUFDO0NBQ0Y7QUExQ0Qsc0JBMENDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ291bnRPcHRpb24sXG4gIERpc3RpbmN0T3B0aW9uLFxuICBJbnNlcnRPcHRpb24sXG4gIE1heE9wdGlvbixcbiAgTWluT3B0aW9uLFxuICBTZWxlY3RPcHRpb24sXG59IGZyb20gXCIuL29wdGlvbnNcIjtcbmltcG9ydCB7IFNlbGVjdFNlbGVjdG9yIH0gZnJvbSBcIi4vc2VsZWN0b3JzXCI7XG5pbXBvcnQgeyBBZGFwdGVyIH0gZnJvbSBcIi4uL3BlcnNpc3RlbmNlXCI7XG5pbXBvcnQgeyBDb25zdCB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgTW9kZWwgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5cbi8qKlxuICogQHN1bW1hcnkgSGVscGVyIENsYXNzIHRvIGJ1aWxkIHF1ZXJpZXNcbiAqXG4gKiBAcGFyYW0ge0RhdGFiYXNlfSBkYlxuICpcbiAqIEBjbGFzcyBRdWVyeVxuICpcbiAqIEBjYXRlZ29yeSBRdWVyeVxuICovXG5leHBvcnQgY2xhc3MgUXVlcnk8USwgTSBleHRlbmRzIE1vZGVsPiB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYWRhcHRlcjogQWRhcHRlcjxhbnksIFE+KSB7fVxuXG4gIC8qKlxuICAgKiBAc3VtbWFyeSBDcmVhdGVzIGEgU2VsZWN0IENsYXVzZVxuICAgKiBAcGFyYW0ge1NlbGVjdFNlbGVjdG9yfSBbc2VsZWN0b3JdXG4gICAqL1xuICBzZWxlY3Qoc2VsZWN0b3I6IFNlbGVjdFNlbGVjdG9yID0gQ29uc3QuRlVMTF9SRUNPUkQpOiBTZWxlY3RPcHRpb248TT4ge1xuICAgIHJldHVybiB0aGlzLmFkYXB0ZXIuQ2xhdXNlcy5zZWxlY3Q8TT4oc2VsZWN0b3IpO1xuICB9XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBDcmVhdGVzIGEgTWluIENsYXVzZVxuICAgKiBAcGFyYW0ge1NlbGVjdFNlbGVjdG9yfSBzZWxlY3RvclxuICAgKi9cbiAgbWluKHNlbGVjdG9yOiBTZWxlY3RTZWxlY3Rvcik6IE1pbk9wdGlvbjxNPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0KCkubWluKHNlbGVjdG9yKTtcbiAgfVxuICAvKipcbiAgICogQHN1bW1hcnkgQ3JlYXRlcyBhIE1heCBDbGF1c2VcbiAgICogQHBhcmFtIHtTZWxlY3RTZWxlY3Rvcn0gc2VsZWN0b3JcbiAgICovXG4gIG1heChzZWxlY3RvcjogU2VsZWN0U2VsZWN0b3IpOiBNYXhPcHRpb248TT4ge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdCgpLm1heChzZWxlY3Rvcik7XG4gIH1cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IENyZWF0ZXMgYSBEaXN0aW5jdCBDbGF1c2VcbiAgICogQHBhcmFtIHtTZWxlY3RTZWxlY3Rvcn0gc2VsZWN0b3JcbiAgICovXG4gIGRpc3RpbmN0KHNlbGVjdG9yOiBTZWxlY3RTZWxlY3Rvcik6IERpc3RpbmN0T3B0aW9uPE0+IHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3QoKS5kaXN0aW5jdChzZWxlY3Rvcik7XG4gIH1cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IENyZWF0ZXMgYSBDb3VudCBDbGF1c2VcbiAgICogQHBhcmFtIHtTZWxlY3RTZWxlY3Rvcn0gc2VsZWN0b3JcbiAgICovXG4gIGNvdW50KHNlbGVjdG9yPzogU2VsZWN0U2VsZWN0b3IpOiBDb3VudE9wdGlvbjxNPiB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0KCkuY291bnQoc2VsZWN0b3IpO1xuICB9XG5cbiAgaW5zZXJ0KCk6IEluc2VydE9wdGlvbjxNPiB7XG4gICAgcmV0dXJuIHRoaXMuYWRhcHRlci5DbGF1c2VzLmluc2VydDxNPigpO1xuICB9XG59XG4iXX0=
|
@@ -0,0 +1,43 @@
|
|
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>);
|
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/query/Statement.cjs
CHANGED
@@ -163,5 +163,4 @@ __decorate([
|
|
163
163
|
(0, decorator_validation_1.required)(),
|
164
164
|
__metadata("design:type", String)
|
165
165
|
], Statement.prototype, "type", void 0);
|
166
|
-
|
167
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,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LENBQUM7Q0FDRjtBQTdKRCw4QkE2SkM7QUF0Slc7SUFIVCxJQUFBLCtCQUFRLEdBQUU7SUFDVixJQUFBLGdDQUFTLEVBQUMsK0JBQW1CLENBQUMsTUFBTSxDQUFDO0lBQ3JDLElBQUEsMkJBQWMsR0FBRTs7MENBQzZCO0FBR3BDO0lBRlQsSUFBQSwrQkFBUSxHQUFFO0lBQ1YsSUFBQSwyQkFBSSxFQUFDLENBQUMsUUFBUSxDQUFDLENBQUM7OEJBQ0UscUJBQU87MENBQVM7QUFFekI7SUFEVCxJQUFBLCtCQUFRLEdBQUU7O3lDQUNxQztBQUt0QztJQURULElBQUEsK0JBQVEsR0FBRTs7dUNBQ3lCIiwiZmlsZSI6InF1ZXJ5L1N0YXRlbWVudC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbnN0cnVjdG9yLFxuICBtaW5sZW5ndGgsXG4gIE1vZGVsLFxuICBNb2RlbEVycm9yRGVmaW5pdGlvbixcbiAgcmVxdWlyZWQsXG4gIHR5cGUsXG4gIHNmLFxufSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBFeGVjdXRvciwgUmF3RXhlY3V0b3IgfSBmcm9tIFwiLi4vaW50ZXJmYWNlc1wiO1xuaW1wb3J0IHsgTWFuZGF0b3J5UHJpb3JpdGllcywgU3RhdGVtZW50VHlwZSB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgUXVlcnlFcnJvciB9IGZyb20gXCIuL2Vycm9yc1wiO1xuaW1wb3J0IHsgQ2xhdXNlIH0gZnJvbSBcIi4vQ2xhdXNlXCI7XG5pbXBvcnQgeyBjbGF1c2VTZXF1ZW5jZSB9IGZyb20gXCIuLi92YWxpZGF0b3JzXCI7XG5pbXBvcnQgeyBBZGFwdGVyIH0gZnJvbSBcIi4uL3BlcnNpc3RlbmNlXCI7XG5pbXBvcnQgeyBmaW5kUHJpbWFyeUtleSwgSW50ZXJuYWxFcnJvciB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgUGFnaW5hdG9yIH0gZnJvbSBcIi4vUGFnaW5hdG9yXCI7XG5cbi8qKlxuICogQHN1bW1hcnkgU3RhdGVtZW50IENsYXNzXG4gKiBAZGVzY3JpcHRpb24gaG9sZHMgYWxsIHRoZSBjbGF1c2VzIHVudGlsIHRoZXkgY2FuIGJlIHByb2Nlc3NlZFxuICpcbiAqIEBwYXJhbSB7TW9kZWxBcmd9IFtzdGF0ZW1lbnRdXG4gKlxuICogQGNsYXNzIFN0YXRlbWVudFxuICogQGV4dGVuZHMgTW9kZWxcbiAqIEBpbXBsZW1lbnRzIEV4ZWN1dG9yXG4gKiBAaW1wbGVtZW50cyBSYXdFeGVjdXRvclxuICpcbiAqIEBjYXRlZ29yeSBRdWVyeVxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU3RhdGVtZW50PFE+XG4gIGV4dGVuZHMgTW9kZWxcbiAgaW1wbGVtZW50cyBFeGVjdXRvciwgUmF3RXhlY3V0b3I8UT5cbntcbiAgQHJlcXVpcmVkKClcbiAgQG1pbmxlbmd0aChNYW5kYXRvcnlQcmlvcml0aWVzLmxlbmd0aClcbiAgQGNsYXVzZVNlcXVlbmNlKClcbiAgcHJvdGVjdGVkIGNsYXVzZXM/OiBDbGF1c2U8YW55PltdID0gdW5kZWZpbmVkO1xuICBAcmVxdWlyZWQoKVxuICBAdHlwZShbXCJvYmplY3RcIl0pXG4gIHByb3RlY3RlZCBhZGFwdGVyOiBBZGFwdGVyPGFueSwgUT47XG4gIEByZXF1aXJlZCgpXG4gIHByb3RlY3RlZCB0YXJnZXQ/OiBDb25zdHJ1Y3Rvcjxhbnk+ID0gdW5kZWZpbmVkO1xuXG4gIHByb3RlY3RlZCBmdWxsUmVjb3JkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQHJlcXVpcmVkKClcbiAgcHJvdGVjdGVkIHR5cGU/OiBzdHJpbmcgPSB1bmRlZmluZWQ7XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKGRiOiBBZGFwdGVyPGFueSwgUT4pIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuYWRhcHRlciA9IGRiO1xuICB9XG5cbiAgcHJvdGVjdGVkIGJ1aWxkKCk6IFEge1xuICAgIGlmICghdGhpcy5jbGF1c2VzKVxuICAgICAgdGhyb3cgbmV3IFF1ZXJ5RXJyb3Ioc2YoXCJGYWlsZWQgdG8gYnVpbGQgU3RhdGVtZW50OlxcbnswfVwiLCBcIk5vIENsYXVzZXNcIikpO1xuICAgIHRoaXMuY2xhdXNlcy5zb3J0KChjMSwgYzIpID0+IHtcbiAgICAgIHJldHVybiBjMS5nZXRQcmlvcml0eSgpIC0gYzIuZ2V0UHJpb3JpdHkoKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IGVycm9ycyA9IHRoaXMuaGFzRXJyb3JzKCk7XG4gICAgaWYgKGVycm9ycylcbiAgICAgIHRocm93IG5ldyBRdWVyeUVycm9yKFxuICAgICAgICBzZihcIlBvb3JseSBidWlsdCBzdGF0ZW1lbnQ6IHswfVwiLCBlcnJvcnMudG9TdHJpbmcoKSlcbiAgICAgICk7XG5cbiAgICBsZXQgcXVlcnk6IFE7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGl0ZXJhdG9yID0gZnVuY3Rpb24gKFxuICAgICAgICBjbGF1c2VzOiBDbGF1c2U8YW55PltdLFxuICAgICAgICBwcmV2aW91czogYW55ID0ge31cbiAgICAgICk6IFEge1xuICAgICAgICBjb25zdCBjID0gY2xhdXNlcy5zaGlmdCgpO1xuICAgICAgICBpZiAoIWMpIHJldHVybiBwcmV2aW91cyBhcyBRO1xuICAgICAgICBjb25zdCByZXN1bHRzID0gYy5idWlsZChwcmV2aW91cyk7XG4gICAgICAgIHJldHVybiBpdGVyYXRvcihjbGF1c2VzLCByZXN1bHRzIGFzIGFueSk7XG4gICAgICB9O1xuXG4gICAgICBxdWVyeSA9IGl0ZXJhdG9yKG5ldyBBcnJheSguLi4odGhpcy5jbGF1c2VzIGFzIENsYXVzZTxRPltdKSkpIGFzIFE7XG4gICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICB0aHJvdyBuZXcgUXVlcnlFcnJvcihlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcXVlcnk7XG4gIH1cblxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIGFzeW5jIGV4ZWN1dGU8WT4oKTogUHJvbWlzZTxZPiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHF1ZXJ5OiBRID0gdGhpcy5idWlsZCgpO1xuICAgICAgcmV0dXJuIHRoaXMucmF3KHF1ZXJ5KTtcbiAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKGUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAaW5oZXJpdERvY1xuICAgKi9cbiAgYWJzdHJhY3QgcGFnaW5hdGU8WT4oc2l6ZTogbnVtYmVyKTogUHJvbWlzZTxQYWdpbmF0b3I8WSwgUT4+O1xuXG4gIGFzeW5jIHJhdzxSPihyYXdJbnB1dDogUSwgLi4uYXJnczogYW55W10pOiBQcm9taXNlPFI+IHtcbiAgICBjb25zdCByZXN1bHRzID0gYXdhaXQgdGhpcy5hZGFwdGVyLnJhdzxSPihyYXdJbnB1dCwgdHJ1ZSwgLi4uYXJncyk7XG4gICAgaWYgKCF0aGlzLmZ1bGxSZWNvcmQpIHJldHVybiByZXN1bHRzO1xuICAgIGlmICghdGhpcy50YXJnZXQpXG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcbiAgICAgICAgXCJObyB0YXJnZXQgZGVmaW5lZCBpbiBzdGF0ZW1lbnQuIHNob3VsZCBuZXZlciBoYXBwZW5cIlxuICAgICAgKTtcblxuICAgIGNvbnN0IHBrQXR0ciA9IGZpbmRQcmltYXJ5S2V5KG5ldyB0aGlzLnRhcmdldCgpIGFzIGFueSkuaWQ7XG5cbiAgICBjb25zdCBwcm9jZXNzb3IgPSBmdW5jdGlvbiByZWNvcmRQcm9jZXNzb3IodGhpczogU3RhdGVtZW50PFE+LCByOiBhbnkpIHtcbiAgICAgIGNvbnN0IGlkID0gcltwa0F0dHJdO1xuICAgICAgcmV0dXJuIHRoaXMuYWRhcHRlci5yZXZlcnQoXG4gICAgICAgIHIsXG4gICAgICAgIHRoaXMudGFyZ2V0IGFzIENvbnN0cnVjdG9yPGFueT4sXG4gICAgICAgIHBrQXR0cixcbiAgICAgICAgaWRcbiAgICAgICkgYXMgYW55O1xuICAgIH0uYmluZCh0aGlzKTtcblxuICAgIGlmIChBcnJheS5pc0FycmF5KHJlc3VsdHMpKSByZXR1cm4gcmVzdWx0cy5tYXAocHJvY2Vzc29yKSBhcyBSO1xuICAgIHJldHVybiBwcm9jZXNzb3IocmVzdWx0cykgYXMgUjtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW5oZXJpdERvY1xuICAgKi9cbiAgaGFzRXJyb3JzKC4uLmV4Y2VwdGlvbnM6IHN0cmluZ1tdKTogTW9kZWxFcnJvckRlZmluaXRpb24gfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IGVycm9ycyA9IHN1cGVyLmhhc0Vycm9ycyguLi5leGNlcHRpb25zKTtcbiAgICBpZiAoZXJyb3JzKSByZXR1cm4gZXJyb3JzO1xuXG4gICAgZm9yIChjb25zdCBpIGluIHRoaXMuY2xhdXNlcykge1xuICAgICAgY29uc3QgZXJyID0gdGhpcy5jbGF1c2VzW2kgYXMgYW55XS5oYXNFcnJvcnMoKTtcbiAgICAgIGlmIChlcnIpIHJldHVybiBlcnI7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IEFkZHMgYSBjbGF1c2UgdG8gdGhlIFN0YXRlbWVudFxuICAgKiBAcGFyYW0ge0NsYXVzZX0gY2xhdXNlXG4gICAqL1xuICBhZGRDbGF1c2UoY2xhdXNlOiBDbGF1c2U8UT4pIHtcbiAgICBpZiAoIXRoaXMuY2xhdXNlcykgdGhpcy5jbGF1c2VzID0gW107XG5cbiAgICBjb25zdCBwcmlvcml0eSA9IGNsYXVzZS5nZXRQcmlvcml0eSgpO1xuICAgIGNvbnN0IGN1cnJlbnRQcmlvcml0eSA9IHRoaXMuY2xhdXNlc1xuICAgICAgLm1hcCgoYywgaSkgPT4gKHsgaW5kZXg6IGksIGNsYXVzZTogYyB9KSlcbiAgICAgIC5maW5kKChjKSA9PiBjLmNsYXVzZS5nZXRQcmlvcml0eSgpID09PSBwcmlvcml0eSk7XG4gICAgaWYgKGN1cnJlbnRQcmlvcml0eSkge1xuICAgICAgdGhpcy5jbGF1c2VzW2N1cnJlbnRQcmlvcml0eS5pbmRleF0gPSBjbGF1c2U7XG4gICAgfVxuICAgIHRoaXMuY2xhdXNlcy5wdXNoKGNsYXVzZSk7XG4gIH1cblxuICBnZXRBZGFwdGVyKCk6IEFkYXB0ZXI8YW55LCBRPiB7XG4gICAgcmV0dXJuIHRoaXMuYWRhcHRlcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBAc3VtbWFyeSBEZWZpbmVzIHRoZSBvdXRwdXQgY2xhc3MgKHdoZW4gZXhpc3RpbmcpXG4gICAqIEBwYXJhbSB7Q29uc3RydWN0b3J9IGNsYXp6XG4gICAqL1xuICBzZXRUYXJnZXQoY2xheno6IENvbnN0cnVjdG9yPGFueT4pIHtcbiAgICBpZiAodGhpcy50YXJnZXQpXG4gICAgICB0aHJvdyBuZXcgUXVlcnlFcnJvcihcbiAgICAgICAgc2YoXCJPdXRwdXQgY2xhc3MgYWxyZWFkeSBkZWZpbmVkIHRvIHswfVwiLCB0aGlzLnRhcmdldCEubmFtZSlcbiAgICAgICk7XG4gICAgdGhpcy50YXJnZXQgPSBjbGF6ejtcbiAgfVxuXG4gIGdldFRhcmdldCgpIHtcbiAgICBpZiAoIXRoaXMudGFyZ2V0KVxuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJObyB0YXJnZXQgZGVmaW5lZCBmb3Igc3RhdGVtZW50XCIpO1xuICAgIHJldHVybiB0aGlzLnRhcmdldDtcbiAgfVxuXG4gIHNldEZ1bGxSZWNvcmQoKSB7XG4gICAgdGhpcy5mdWxsUmVjb3JkID0gdHJ1ZTtcbiAgfVxuXG4gIHNldE1vZGUodHlwZTogU3RhdGVtZW50VHlwZSkge1xuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gIH1cbn1cbiJdfQ==
|
166
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RhdGVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3F1ZXJ5L1N0YXRlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFDQSx5RUFPd0M7QUFFeEMsMkNBQWlFO0FBQ2pFLHFDQUFzQztBQUV0Qyw4Q0FBK0M7QUFDL0MsZ0RBQXlDO0FBQ3pDLDJEQUF3RTtBQUd4RTs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxNQUFzQixTQUNwQixTQUFRLDRCQUFLO0lBa0JiLFlBQXNCLEVBQW1CO1FBQ3ZDLEtBQUssRUFBRSxDQUFDO1FBYkEsWUFBTyxHQUFtQixTQUFTLENBQUM7UUFLcEMsV0FBTSxHQUFzQixTQUFTLENBQUM7UUFFdEMsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUc1QixTQUFJLEdBQVksU0FBUyxDQUFDO1FBSWxDLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFUyxLQUFLO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPO1lBQ2YsTUFBTSxJQUFJLG1CQUFVLENBQUMsSUFBQSx5QkFBRSxFQUFDLGlDQUFpQyxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7WUFDM0IsT0FBTyxFQUFFLENBQUMsV0FBVyxFQUFFLEdBQUcsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzdDLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2hDLElBQUksTUFBTTtZQUNSLE1BQU0sSUFBSSxtQkFBVSxDQUNsQixJQUFBLHlCQUFFLEVBQUMsNkJBQTZCLEVBQUUsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQ3JELENBQUM7UUFFSixJQUFJLEtBQVEsQ0FBQztRQUNiLElBQUksQ0FBQztZQUNI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bUI7UUFDekIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQztDQUNGO0FBN0pELDhCQTZKQztBQXRKVztJQUhULElBQUEsK0JBQVEsR0FBRTtJQUNWLElBQUEsZ0NBQVMsRUFBQywrQkFBbUIsQ0FBQyxNQUFNLENBQUM7SUFDckMsSUFBQSwyQkFBYyxHQUFFOzswQ0FDNkI7QUFHcEM7SUFGVCxJQUFBLCtCQUFRLEdBQUU7SUFDVixJQUFBLDJCQUFJLEVBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQzs4QkFDRSxxQkFBTzswQ0FBUztBQUV6QjtJQURULElBQUEsK0JBQVEsR0FBRTs7eUNBQ3FDO0FBS3RDO0lBRFQsSUFBQSwrQkFBUSxHQUFFOzt1Q0FDeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENvbnN0cnVjdG9yIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHtcbiAgbWlubGVuZ3RoLFxuICBNb2RlbCxcbiAgTW9kZWxFcnJvckRlZmluaXRpb24sXG4gIHJlcXVpcmVkLFxuICB0eXBlLFxuICBzZixcbn0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgRXhlY3V0b3IsIFJhd0V4ZWN1dG9yIH0gZnJvbSBcIi4uL2ludGVyZmFjZXNcIjtcbmltcG9ydCB7IE1hbmRhdG9yeVByaW9yaXRpZXMsIFN0YXRlbWVudFR5cGUgfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IFF1ZXJ5RXJyb3IgfSBmcm9tIFwiLi9lcnJvcnNcIjtcbmltcG9ydCB7IENsYXVzZSB9IGZyb20gXCIuL0NsYXVzZVwiO1xuaW1wb3J0IHsgY2xhdXNlU2VxdWVuY2UgfSBmcm9tIFwiLi4vdmFsaWRhdG9yc1wiO1xuaW1wb3J0IHsgQWRhcHRlciB9IGZyb20gXCIuLi9wZXJzaXN0ZW5jZVwiO1xuaW1wb3J0IHsgZmluZFByaW1hcnlLZXksIEludGVybmFsRXJyb3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnNcIjtcbmltcG9ydCB7IFBhZ2luYXRvciB9IGZyb20gXCIuL1BhZ2luYXRvclwiO1xuXG4vKipcbiAqIEBzdW1tYXJ5IFN0YXRlbWVudCBDbGFzc1xuICogQGRlc2NyaXB0aW9uIGhvbGRzIGFsbCB0aGUgY2xhdXNlcyB1bnRpbCB0aGV5IGNhbiBiZSBwcm9jZXNzZWRcbiAqXG4gKiBAcGFyYW0ge01vZGVsQXJnfSBbc3RhdGVtZW50XVxuICpcbiAqIEBjbGFzcyBTdGF0ZW1lbnRcbiAqIEBleHRlbmRzIE1vZGVsXG4gKiBAaW1wbGVtZW50cyBFeGVjdXRvclxuICogQGltcGxlbWVudHMgUmF3RXhlY3V0b3JcbiAqXG4gKiBAY2F0ZWdvcnkgUXVlcnlcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFN0YXRlbWVudDxRPlxuICBleHRlbmRzIE1vZGVsXG4gIGltcGxlbWVudHMgRXhlY3V0b3IsIFJhd0V4ZWN1dG9yPFE+XG57XG4gIEByZXF1aXJlZCgpXG4gIEBtaW5sZW5ndGgoTWFuZGF0b3J5UHJpb3JpdGllcy5sZW5ndGgpXG4gIEBjbGF1c2VTZXF1ZW5jZSgpXG4gIHByb3RlY3RlZCBjbGF1c2VzPzogQ2xhdXNlPGFueT5bXSA9IHVuZGVmaW5lZDtcbiAgQHJlcXVpcmVkKClcbiAgQHR5cGUoW1wib2JqZWN0XCJdKVxuICBwcm90ZWN0ZWQgYWRhcHRlcjogQWRhcHRlcjxhbnksIFE+O1xuICBAcmVxdWlyZWQoKVxuICBwcm90ZWN0ZWQgdGFyZ2V0PzogQ29uc3RydWN0b3I8YW55PiA9IHVuZGVmaW5lZDtcblxuICBwcm90ZWN0ZWQgZnVsbFJlY29yZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEByZXF1aXJlZCgpXG4gIHByb3RlY3RlZCB0eXBlPzogc3RyaW5nID0gdW5kZWZpbmVkO1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihkYjogQWRhcHRlcjxhbnksIFE+KSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkYXB0ZXIgPSBkYjtcbiAgfVxuXG4gIHByb3RlY3RlZCBidWlsZCgpOiBRIHtcbiAgICBpZiAoIXRoaXMuY2xhdXNlcylcbiAgICAgIHRocm93IG5ldyBRdWVyeUVycm9yKHNmKFwiRmFpbGVkIHRvIGJ1aWxkIFN0YXRlbWVudDpcXG57MH1cIiwgXCJObyBDbGF1c2VzXCIpKTtcbiAgICB0aGlzLmNsYXVzZXMuc29ydCgoYzEsIGMyKSA9PiB7XG4gICAgICByZXR1cm4gYzEuZ2V0UHJpb3JpdHkoKSAtIGMyLmdldFByaW9yaXR5KCk7XG4gICAgfSk7XG5cbiAgICBjb25zdCBlcnJvcnMgPSB0aGlzLmhhc0Vycm9ycygpO1xuICAgIGlmIChlcnJvcnMpXG4gICAgICB0aHJvdyBuZXcgUXVlcnlFcnJvcihcbiAgICAgICAgc2YoXCJQb29ybHkgYnVpbHQgc3RhdGVtZW50OiB7MH1cIiwgZXJyb3JzLnRvU3RyaW5nKCkpXG4gICAgICApO1xuXG4gICAgbGV0IHF1ZXJ5OiBRO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBpdGVyYXRvciA9IGZ1bmN0aW9uIChcbiAgICAgICAgY2xhdXNlczogQ2xhdXNlPGFueT5bXSxcbiAgICAgICAgcHJldmlvdXM6IGFueSA9IHt9XG4gICAgICApOiBRIHtcbiAgICAgICAgY29uc3QgYyA9IGNsYXVzZXMuc2hpZnQoKTtcbiAgICAgICAgaWYgKCFjKSByZXR1cm4gcHJldmlvdXMgYXMgUTtcbiAgICAgICAgY29uc3QgcmVzdWx0cyA9IGMuYnVpbGQocHJldmlvdXMpO1xuICAgICAgICByZXR1cm4gaXRlcmF0b3IoY2xhdXNlcywgcmVzdWx0cyBhcyBhbnkpO1xuICAgICAgfTtcblxuICAgICAgcXVlcnkgPSBpdGVyYXRvcihuZXcgQXJyYXkoLi4uKHRoaXMuY2xhdXNlcyBhcyBDbGF1c2U8UT5bXSkpKSBhcyBRO1xuICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgdGhyb3cgbmV3IFF1ZXJ5RXJyb3IoZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHF1ZXJ5O1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbmhlcml0RG9jXG4gICAqL1xuICBhc3luYyBleGVjdXRlPFk+KCk6IFByb21pc2U8WT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBxdWVyeTogUSA9IHRoaXMuYnVpbGQoKTtcbiAgICAgIHJldHVybiB0aGlzLnJhdyhxdWVyeSk7XG4gICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIGFic3RyYWN0IHBhZ2luYXRlPFk+KHNpemU6IG51bWJlcik6IFByb21pc2U8UGFnaW5hdG9yPFksIFE+PjtcblxuICBhc3luYyByYXc8Uj4ocmF3SW5wdXQ6IFEsIC4uLmFyZ3M6IGFueVtdKTogUHJvbWlzZTxSPiB7XG4gICAgY29uc3QgcmVzdWx0cyA9IGF3YWl0IHRoaXMuYWRhcHRlci5yYXc8Uj4ocmF3SW5wdXQsIHRydWUsIC4uLmFyZ3MpO1xuICAgIGlmICghdGhpcy5mdWxsUmVjb3JkKSByZXR1cm4gcmVzdWx0cztcbiAgICBpZiAoIXRoaXMudGFyZ2V0KVxuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXG4gICAgICAgIFwiTm8gdGFyZ2V0IGRlZmluZWQgaW4gc3RhdGVtZW50LiBzaG91bGQgbmV2ZXIgaGFwcGVuXCJcbiAgICAgICk7XG5cbiAgICBjb25zdCBwa0F0dHIgPSBmaW5kUHJpbWFyeUtleShuZXcgdGhpcy50YXJnZXQoKSBhcyBhbnkpLmlkO1xuXG4gICAgY29uc3QgcHJvY2Vzc29yID0gZnVuY3Rpb24gcmVjb3JkUHJvY2Vzc29yKHRoaXM6IFN0YXRlbWVudDxRPiwgcjogYW55KSB7XG4gICAgICBjb25zdCBpZCA9IHJbcGtBdHRyXTtcbiAgICAgIHJldHVybiB0aGlzLmFkYXB0ZXIucmV2ZXJ0KFxuICAgICAgICByLFxuICAgICAgICB0aGlzLnRhcmdldCBhcyBDb25zdHJ1Y3Rvcjxhbnk+LFxuICAgICAgICBwa0F0dHIsXG4gICAgICAgIGlkXG4gICAgICApIGFzIGFueTtcbiAgICB9LmJpbmQodGhpcyk7XG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheShyZXN1bHRzKSkgcmV0dXJuIHJlc3VsdHMubWFwKHByb2Nlc3NvcikgYXMgUjtcbiAgICByZXR1cm4gcHJvY2Vzc29yKHJlc3VsdHMpIGFzIFI7XG4gIH1cblxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIGhhc0Vycm9ycyguLi5leGNlcHRpb25zOiBzdHJpbmdbXSk6IE1vZGVsRXJyb3JEZWZpbml0aW9uIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBlcnJvcnMgPSBzdXBlci5oYXNFcnJvcnMoLi4uZXhjZXB0aW9ucyk7XG4gICAgaWYgKGVycm9ycykgcmV0dXJuIGVycm9ycztcblxuICAgIGZvciAoY29uc3QgaSBpbiB0aGlzLmNsYXVzZXMpIHtcbiAgICAgIGNvbnN0IGVyciA9IHRoaXMuY2xhdXNlc1tpIGFzIGFueV0uaGFzRXJyb3JzKCk7XG4gICAgICBpZiAoZXJyKSByZXR1cm4gZXJyO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAc3VtbWFyeSBBZGRzIGEgY2xhdXNlIHRvIHRoZSBTdGF0ZW1lbnRcbiAgICogQHBhcmFtIHtDbGF1c2V9IGNsYXVzZVxuICAgKi9cbiAgYWRkQ2xhdXNlKGNsYXVzZTogQ2xhdXNlPFE+KSB7XG4gICAgaWYgKCF0aGlzLmNsYXVzZXMpIHRoaXMuY2xhdXNlcyA9IFtdO1xuXG4gICAgY29uc3QgcHJpb3JpdHkgPSBjbGF1c2UuZ2V0UHJpb3JpdHkoKTtcbiAgICBjb25zdCBjdXJyZW50UHJpb3JpdHkgPSB0aGlzLmNsYXVzZXNcbiAgICAgIC5tYXAoKGMsIGkpID0+ICh7IGluZGV4OiBpLCBjbGF1c2U6IGMgfSkpXG4gICAgICAuZmluZCgoYykgPT4gYy5jbGF1c2UuZ2V0UHJpb3JpdHkoKSA9PT0gcHJpb3JpdHkpO1xuICAgIGlmIChjdXJyZW50UHJpb3JpdHkpIHtcbiAgICAgIHRoaXMuY2xhdXNlc1tjdXJyZW50UHJpb3JpdHkuaW5kZXhdID0gY2xhdXNlO1xuICAgIH1cbiAgICB0aGlzLmNsYXVzZXMucHVzaChjbGF1c2UpO1xuICB9XG5cbiAgZ2V0QWRhcHRlcigpOiBBZGFwdGVyPGFueSwgUT4ge1xuICAgIHJldHVybiB0aGlzLmFkYXB0ZXI7XG4gIH1cblxuICAvKipcbiAgICogQHN1bW1hcnkgRGVmaW5lcyB0aGUgb3V0cHV0IGNsYXNzICh3aGVuIGV4aXN0aW5nKVxuICAgKiBAcGFyYW0ge0NvbnN0cnVjdG9yfSBjbGF6elxuICAgKi9cbiAgc2V0VGFyZ2V0KGNsYXp6OiBDb25zdHJ1Y3Rvcjxhbnk+KSB7XG4gICAgaWYgKHRoaXMudGFyZ2V0KVxuICAgICAgdGhyb3cgbmV3IFF1ZXJ5RXJyb3IoXG4gICAgICAgIHNmKFwiT3V0cHV0IGNsYXNzIGFscmVhZHkgZGVmaW5lZCB0byB7MH1cIiwgdGhpcy50YXJnZXQhLm5hbWUpXG4gICAgICApO1xuICAgIHRoaXMudGFyZ2V0ID0gY2xheno7XG4gIH1cblxuICBnZXRUYXJnZXQoKSB7XG4gICAgaWYgKCF0aGlzLnRhcmdldClcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFwiTm8gdGFyZ2V0IGRlZmluZWQgZm9yIHN0YXRlbWVudFwiKTtcbiAgICByZXR1cm4gdGhpcy50YXJnZXQ7XG4gIH1cblxuICBzZXRGdWxsUmVjb3JkKCkge1xuICAgIHRoaXMuZnVsbFJlY29yZCA9IHRydWU7XG4gIH1cblxuICBzZXRNb2RlKHR5cGU6IFN0YXRlbWVudFR5cGUpIHtcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICB9XG59XG4iXX0=
|
@@ -0,0 +1,56 @@
|
|
1
|
+
import type { Constructor } from "@decaf-ts/decorator-validation";
|
2
|
+
import { Model, ModelErrorDefinition } from "@decaf-ts/decorator-validation";
|
3
|
+
import { Executor, RawExecutor } from "../interfaces";
|
4
|
+
import { StatementType } from "./constants";
|
5
|
+
import { Clause } from "./Clause";
|
6
|
+
import { Adapter } from "../persistence";
|
7
|
+
import { Paginator } from "./Paginator";
|
8
|
+
/**
|
9
|
+
* @summary Statement Class
|
10
|
+
* @description holds all the clauses until they can be processed
|
11
|
+
*
|
12
|
+
* @param {ModelArg} [statement]
|
13
|
+
*
|
14
|
+
* @class Statement
|
15
|
+
* @extends Model
|
16
|
+
* @implements Executor
|
17
|
+
* @implements RawExecutor
|
18
|
+
*
|
19
|
+
* @category Query
|
20
|
+
*/
|
21
|
+
export declare abstract class Statement<Q> extends Model implements Executor, RawExecutor<Q> {
|
22
|
+
protected clauses?: Clause<any>[];
|
23
|
+
protected adapter: Adapter<any, Q>;
|
24
|
+
protected target?: Constructor<any>;
|
25
|
+
protected fullRecord: boolean;
|
26
|
+
protected type?: string;
|
27
|
+
protected constructor(db: Adapter<any, Q>);
|
28
|
+
protected build(): Q;
|
29
|
+
/**
|
30
|
+
* @inheritDoc
|
31
|
+
*/
|
32
|
+
execute<Y>(): Promise<Y>;
|
33
|
+
/**
|
34
|
+
* @inheritDoc
|
35
|
+
*/
|
36
|
+
abstract paginate<Y>(size: number): Promise<Paginator<Y, Q>>;
|
37
|
+
raw<R>(rawInput: Q, ...args: any[]): Promise<R>;
|
38
|
+
/**
|
39
|
+
* @inheritDoc
|
40
|
+
*/
|
41
|
+
hasErrors(...exceptions: string[]): ModelErrorDefinition | undefined;
|
42
|
+
/**
|
43
|
+
* @summary Adds a clause to the Statement
|
44
|
+
* @param {Clause} clause
|
45
|
+
*/
|
46
|
+
addClause(clause: Clause<Q>): void;
|
47
|
+
getAdapter(): Adapter<any, Q>;
|
48
|
+
/**
|
49
|
+
* @summary Defines the output class (when existing)
|
50
|
+
* @param {Constructor} clazz
|
51
|
+
*/
|
52
|
+
setTarget(clazz: Constructor<any>): void;
|
53
|
+
getTarget(): Constructor<any>;
|
54
|
+
setFullRecord(): void;
|
55
|
+
setMode(type: StatementType): void;
|
56
|
+
}
|
@@ -60,5 +60,4 @@ class FromClause extends SelectorBasedClause_1.SelectorBasedClause {
|
|
60
60
|
}
|
61
61
|
}
|
62
62
|
exports.FromClause = FromClause;
|
63
|
-
|
64
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9xdWVyeS9jbGF1c2VzL0Zyb21DbGF1c2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNENBQXdDO0FBY3hDLCtEQUE0RDtBQUU1RCxzQ0FBdUM7QUFFdkMseUVBS3dDO0FBRXhDOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsTUFBc0IsVUFDcEIsU0FBUSx5Q0FBdUM7SUFHL0MsWUFBc0IsTUFBbUM7UUFDdkQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLFFBQVEsRUFBRSxvQkFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsUUFBUTtZQUNYLE9BQU8sSUFBSSxDQUFDLFFBQVEsS0FBSyxRQUFRO2dCQUMvQixDQUFDLENBQUMsNEJBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztnQkFDMUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQ2hCLE1BQU0sSUFBSSxtQkFBVSxDQUFDLElBQUEsbUNBQVksRUFBQyxvQ0FBb0MsQ0FBQyxDQUFDLENBQUM7UUFDM0UsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQTBCLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBT0Q7O09BRUc7SUFDSCxLQUFLLENBQUMsU0FBb0I7UUFDeEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFDRDs7T0FFRztJQUNILE9BQU8sQ0FBQyxHQUFHLFFBQTJCO1FBQ3BDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBQ0Q7O09BRUc7SUFDSCxPQUFPLENBQUMsUUFBeUI7UUFDL0IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFDRDs7T0FFRztJQUNILEtBQUssQ0FBQyxRQUF1QjtRQUMzQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUNEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLFFBQXdCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN2RCxDQUFDO0NBQ0Y7QUFsREQsZ0NBa0RDIiwiZmlsZSI6InF1ZXJ5L2NsYXVzZXMvRnJvbUNsYXVzZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByaW9yaXR5IH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHtcbiAgRnJvbVNlbGVjdG9yLFxuICBHcm91cEJ5U2VsZWN0b3IsXG4gIExpbWl0U2VsZWN0b3IsXG4gIE9mZnNldFNlbGVjdG9yLFxuICBPcmRlckJ5U2VsZWN0b3IsXG59IGZyb20gXCIuLi9zZWxlY3RvcnNcIjtcbmltcG9ydCB7XG4gIExpbWl0T3B0aW9uLFxuICBPZmZzZXRPcHRpb24sXG4gIE9yZGVyQW5kR3JvdXBPcHRpb24sXG4gIFdoZXJlT3B0aW9uLFxufSBmcm9tIFwiLi4vb3B0aW9uc1wiO1xuaW1wb3J0IHsgU2VsZWN0b3JCYXNlZENsYXVzZSB9IGZyb20gXCIuL1NlbGVjdG9yQmFzZWRDbGF1c2VcIjtcbmltcG9ydCB7IEV4ZWN1dG9yIH0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXNcIjtcbmltcG9ydCB7IFF1ZXJ5RXJyb3IgfSBmcm9tIFwiLi4vZXJyb3JzXCI7XG5pbXBvcnQgeyBDb25kaXRpb24gfSBmcm9tIFwiLi4vQ29uZGl0aW9uXCI7XG5pbXBvcnQge1xuICBDb25zdHJ1Y3RvcixcbiAgTW9kZWwsXG4gIE1vZGVsQXJnLFxuICBzdHJpbmdGb3JtYXQsXG59IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcblxuLyoqXG4gKiBAc3VtbWFyeSBUaGUgRlJPTSBjbGF1c2VcbiAqXG4gKiBAcGFyYW0ge01vZGVsQXJnfSBbY2xhdXNlXVxuICpcbiAqIEBjbGFzcyBGcm9tQ2xhdXNlXG4gKiBAZXh0ZW5kcyBTZWxlY3RvckJhc2VkQ2xhdXNlXG4gKiBAaW1wbGVtZW50cyBXaGVyZU9wdGlvblxuICpcbiAqIEBjYXRlZ29yeSBRdWVyeVxuICogQHN1YmNhdGVnb3J5IENsYXVzZXNcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEZyb21DbGF1c2U8USwgTSBleHRlbmRzIE1vZGVsPlxuICBleHRlbmRzIFNlbGVjdG9yQmFzZWRDbGF1c2U8USwgRnJvbVNlbGVjdG9yPE0+PlxuICBpbXBsZW1lbnRzIFdoZXJlT3B0aW9uXG57XG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihjbGF1c2U/OiBNb2RlbEFyZzxGcm9tQ2xhdXNlPFEsIE0+Pikge1xuICAgIHN1cGVyKE9iamVjdC5hc3NpZ24oe30sIGNsYXVzZSwgeyBwcmlvcml0eTogUHJpb3JpdHkuRlJPTSB9KSk7XG4gICAgdGhpcy5zZWxlY3RvciA9XG4gICAgICB0eXBlb2YgdGhpcy5zZWxlY3RvciA9PT0gXCJzdHJpbmdcIlxuICAgICAgICA/IE1vZGVsLmdldCh0aGlzLnNlbGVjdG9yKVxuICAgICAgICA6IHRoaXMuc2VsZWN0b3I7XG4gICAgaWYgKCF0aGlzLnNlbGVjdG9yKVxuICAgICAgdGhyb3cgbmV3IFF1ZXJ5RXJyb3Ioc3RyaW5nRm9ybWF0KFwiQ291bGQgbm90IGZpbmQgc2VsZWN0b3IgbW9kZWw6IHswfVwiKSk7XG4gICAgdGhpcy5zdGF0ZW1lbnQuc2V0VGFyZ2V0KHRoaXMuc2VsZWN0b3IgYXMgQ29uc3RydWN0b3I8TT4pO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbmhlcml0RG9jXG4gICAqL1xuICBhYnN0cmFjdCBidWlsZChxdWVyeTogUSk6IFE7XG5cbiAgLyoqXG4gICAqIEBpbmhlcml0RG9jXG4gICAqL1xuICB3aGVyZShjb25kaXRpb246IENvbmRpdGlvbik6IE9yZGVyQW5kR3JvdXBPcHRpb24ge1xuICAgIHJldHVybiB0aGlzLkNsYXVzZXMud2hlcmUodGhpcy5zdGF0ZW1lbnQsIGNvbmRpdGlvbik7XG4gIH1cbiAgLyoqXG4gICAqIEBpbmhlcml0RG9jXG4gICAqL1xuICBvcmRlckJ5KC4uLnNlbGVjdG9yOiBPcmRlckJ5U2VsZWN0b3JbXSk6IExpbWl0T3B0aW9uICYgT2Zmc2V0T3B0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5DbGF1c2VzLm9yZGVyQnkodGhpcy5zdGF0ZW1lbnQsIHNlbGVjdG9yKTtcbiAgfVxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIGdyb3VwQnkoc2VsZWN0b3I6IEdyb3VwQnlTZWxlY3Rvcik6IEV4ZWN1dG9yIHtcbiAgICByZXR1cm4gdGhpcy5DbGF1c2VzLmdyb3VwQnkodGhpcy5zdGF0ZW1lbnQsIHNlbGVjdG9yKTtcbiAgfVxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIGxpbWl0KHNlbGVjdG9yOiBMaW1pdFNlbGVjdG9yKTogT2Zmc2V0T3B0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5DbGF1c2VzLmxpbWl0KHRoaXMuc3RhdGVtZW50LCBzZWxlY3Rvcik7XG4gIH1cbiAgLyoqXG4gICAqIEBpbmhlcml0RG9jXG4gICAqL1xuICBvZmZzZXQoc2VsZWN0b3I6IE9mZnNldFNlbGVjdG9yKTogRXhlY3V0b3Ige1xuICAgIHJldHVybiB0aGlzLkNsYXVzZXMub2Zmc2V0KHRoaXMuc3RhdGVtZW50LCBzZWxlY3Rvcik7XG4gIH1cbn1cbiJdfQ==
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRnJvbUNsYXVzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9xdWVyeS9jbGF1c2VzL0Zyb21DbGF1c2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNENBQXdDO0FBY3hDLCtEQUE0RDtBQUU1RCxzQ0FBdUM7QUFFdkMseUVBS3dDO0FBRXhDOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsTUFBc0IsVUFDcEIsU0FBUSx5Q0FBdUM7SUFHL0MsWUFBc0IsTUFBbUM7UUFDdkQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLFFBQVEsRUFBRSxvQkFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsUUFBUTtZQUNYLE9BQU8sSUFBSSxDQUFDLFFBQVEsS0FBSyxRQUFRO2dCQUMvQixDQUFDLENBQUMsNEJBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztnQkFDMUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQ2hCLE1BQU0sSUFBSSxtQkFBVSxDQUFDLElBQUEsbUNBQVksRUFBQyxvQ0FBb0MsQ0FBQyxDQUFDLENBQUM7UUFDM0UsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQTBCLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBT0Q7O09BRUc7SUFDSCxLQUFLLENBQUMsU0FBb0I7UUFDeEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFDRDs7T0FFRztJQUNILE9BQU8sQ0FBQyxHQUFHLFFBQTJCO1FBQ3BDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBQ0Q7O09BRUc7SUFDSCxPQUFPLENBQUMsUUFBeUI7UUFDL0IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFDRDs7T0FFRztJQUNILEtBQUssQ0FBQyxRQUF1QjtRQUMzQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUNEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLFFBQXdCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN2RCxDQUFDO0NBQ0Y7QUFsREQsZ0NBa0RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJpb3JpdHkgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQge1xuICBGcm9tU2VsZWN0b3IsXG4gIEdyb3VwQnlTZWxlY3RvcixcbiAgTGltaXRTZWxlY3RvcixcbiAgT2Zmc2V0U2VsZWN0b3IsXG4gIE9yZGVyQnlTZWxlY3Rvcixcbn0gZnJvbSBcIi4uL3NlbGVjdG9yc1wiO1xuaW1wb3J0IHtcbiAgTGltaXRPcHRpb24sXG4gIE9mZnNldE9wdGlvbixcbiAgT3JkZXJBbmRHcm91cE9wdGlvbixcbiAgV2hlcmVPcHRpb24sXG59IGZyb20gXCIuLi9vcHRpb25zXCI7XG5pbXBvcnQgeyBTZWxlY3RvckJhc2VkQ2xhdXNlIH0gZnJvbSBcIi4vU2VsZWN0b3JCYXNlZENsYXVzZVwiO1xuaW1wb3J0IHsgRXhlY3V0b3IgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlc1wiO1xuaW1wb3J0IHsgUXVlcnlFcnJvciB9IGZyb20gXCIuLi9lcnJvcnNcIjtcbmltcG9ydCB7IENvbmRpdGlvbiB9IGZyb20gXCIuLi9Db25kaXRpb25cIjtcbmltcG9ydCB7XG4gIENvbnN0cnVjdG9yLFxuICBNb2RlbCxcbiAgTW9kZWxBcmcsXG4gIHN0cmluZ0Zvcm1hdCxcbn0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuXG4vKipcbiAqIEBzdW1tYXJ5IFRoZSBGUk9NIGNsYXVzZVxuICpcbiAqIEBwYXJhbSB7TW9kZWxBcmd9IFtjbGF1c2VdXG4gKlxuICogQGNsYXNzIEZyb21DbGF1c2VcbiAqIEBleHRlbmRzIFNlbGVjdG9yQmFzZWRDbGF1c2VcbiAqIEBpbXBsZW1lbnRzIFdoZXJlT3B0aW9uXG4gKlxuICogQGNhdGVnb3J5IFF1ZXJ5XG4gKiBAc3ViY2F0ZWdvcnkgQ2xhdXNlc1xuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRnJvbUNsYXVzZTxRLCBNIGV4dGVuZHMgTW9kZWw+XG4gIGV4dGVuZHMgU2VsZWN0b3JCYXNlZENsYXVzZTxRLCBGcm9tU2VsZWN0b3I8TT4+XG4gIGltcGxlbWVudHMgV2hlcmVPcHRpb25cbntcbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKGNsYXVzZT86IE1vZGVsQXJnPEZyb21DbGF1c2U8USwgTT4+KSB7XG4gICAgc3VwZXIoT2JqZWN0LmFzc2lnbih7fSwgY2xhdXNlLCB7IHByaW9yaXR5OiBQcmlvcml0eS5GUk9NIH0pKTtcbiAgICB0aGlzLnNlbGVjdG9yID1cbiAgICAgIHR5cGVvZiB0aGlzLnNlbGVjdG9yID09PSBcInN0cmluZ1wiXG4gICAgICAgID8gTW9kZWwuZ2V0KHRoaXMuc2VsZWN0b3IpXG4gICAgICAgIDogdGhpcy5zZWxlY3RvcjtcbiAgICBpZiAoIXRoaXMuc2VsZWN0b3IpXG4gICAgICB0aHJvdyBuZXcgUXVlcnlFcnJvcihzdHJpbmdGb3JtYXQoXCJDb3VsZCBub3QgZmluZCBzZWxlY3RvciBtb2RlbDogezB9XCIpKTtcbiAgICB0aGlzLnN0YXRlbWVudC5zZXRUYXJnZXQodGhpcy5zZWxlY3RvciBhcyBDb25zdHJ1Y3RvcjxNPik7XG4gIH1cblxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIGFic3RyYWN0IGJ1aWxkKHF1ZXJ5OiBRKTogUTtcblxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIHdoZXJlKGNvbmRpdGlvbjogQ29uZGl0aW9uKTogT3JkZXJBbmRHcm91cE9wdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuQ2xhdXNlcy53aGVyZSh0aGlzLnN0YXRlbWVudCwgY29uZGl0aW9uKTtcbiAgfVxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIG9yZGVyQnkoLi4uc2VsZWN0b3I6IE9yZGVyQnlTZWxlY3RvcltdKTogTGltaXRPcHRpb24gJiBPZmZzZXRPcHRpb24ge1xuICAgIHJldHVybiB0aGlzLkNsYXVzZXMub3JkZXJCeSh0aGlzLnN0YXRlbWVudCwgc2VsZWN0b3IpO1xuICB9XG4gIC8qKlxuICAgKiBAaW5oZXJpdERvY1xuICAgKi9cbiAgZ3JvdXBCeShzZWxlY3RvcjogR3JvdXBCeVNlbGVjdG9yKTogRXhlY3V0b3Ige1xuICAgIHJldHVybiB0aGlzLkNsYXVzZXMuZ3JvdXBCeSh0aGlzLnN0YXRlbWVudCwgc2VsZWN0b3IpO1xuICB9XG4gIC8qKlxuICAgKiBAaW5oZXJpdERvY1xuICAgKi9cbiAgbGltaXQoc2VsZWN0b3I6IExpbWl0U2VsZWN0b3IpOiBPZmZzZXRPcHRpb24ge1xuICAgIHJldHVybiB0aGlzLkNsYXVzZXMubGltaXQodGhpcy5zdGF0ZW1lbnQsIHNlbGVjdG9yKTtcbiAgfVxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIG9mZnNldChzZWxlY3RvcjogT2Zmc2V0U2VsZWN0b3IpOiBFeGVjdXRvciB7XG4gICAgcmV0dXJuIHRoaXMuQ2xhdXNlcy5vZmZzZXQodGhpcy5zdGF0ZW1lbnQsIHNlbGVjdG9yKTtcbiAgfVxufVxuIl19
|
@@ -0,0 +1,45 @@
|
|
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
|
+
}
|
@@ -20,5 +20,4 @@ class GroupByClause extends SelectorBasedClause_1.SelectorBasedClause {
|
|
20
20
|
}
|
21
21
|
}
|
22
22
|
exports.GroupByClause = GroupByClause;
|
23
|
-
|
24
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9xdWVyeS9jbGF1c2VzL0dyb3VwQnlDbGF1c2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsNENBQXdDO0FBQ3hDLCtEQUE0RDtBQUU1RDs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBc0IsYUFBaUIsU0FBUSx5Q0FHOUM7SUFDQyxZQUFzQixNQUFtQztRQUN2RCxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsUUFBUSxFQUFFLG9CQUFRLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7Q0FLRjtBQVhELHNDQVdDIiwiZmlsZSI6InF1ZXJ5L2NsYXVzZXMvR3JvdXBCeUNsYXVzZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZGVsQXJnIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgR3JvdXBCeVNlbGVjdG9yIH0gZnJvbSBcIi4uL3NlbGVjdG9yc1wiO1xuaW1wb3J0IHsgUHJpb3JpdHkgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBTZWxlY3RvckJhc2VkQ2xhdXNlIH0gZnJvbSBcIi4vU2VsZWN0b3JCYXNlZENsYXVzZVwiO1xuXG4vKipcbiAqIEBzdW1tYXJ5IFRoZSBHUk9VUCBCWSBjbGF1c2VcbiAqXG4gKiBAcGFyYW0ge0NsYXVzZUFyZ30gW2NsYXVzZV1cbiAqXG4gKiBAY2xhc3MgR3JvdXBCeUNsYXVzZVxuICogQGV4dGVuZHMgU2VsZWN0b3JCYXNlZENsYXVzZVxuICpcbiAqIEBjYXRlZ29yeSBRdWVyeVxuICogQHN1YmNhdGVnb3J5IENsYXVzZXNcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEdyb3VwQnlDbGF1c2U8UT4gZXh0ZW5kcyBTZWxlY3RvckJhc2VkQ2xhdXNlPFxuICBRLFxuICBHcm91cEJ5U2VsZWN0b3Jcbj4ge1xuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoY2xhdXNlPzogTW9kZWxBcmc8R3JvdXBCeUNsYXVzZTxRPj4pIHtcbiAgICBzdXBlcihPYmplY3QuYXNzaWduKHt9LCBjbGF1c2UsIHsgcHJpb3JpdHk6IFByaW9yaXR5LkdST1VQX0JZIH0pKTtcbiAgfVxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIGFic3RyYWN0IGJ1aWxkKHF1ZXJ5OiBRKTogUTtcbn1cbiJdfQ==
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JvdXBCeUNsYXVzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9xdWVyeS9jbGF1c2VzL0dyb3VwQnlDbGF1c2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsNENBQXdDO0FBQ3hDLCtEQUE0RDtBQUU1RDs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBc0IsYUFBaUIsU0FBUSx5Q0FHOUM7SUFDQyxZQUFzQixNQUFtQztRQUN2RCxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsUUFBUSxFQUFFLG9CQUFRLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7Q0FLRjtBQVhELHNDQVdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kZWxBcmcgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBHcm91cEJ5U2VsZWN0b3IgfSBmcm9tIFwiLi4vc2VsZWN0b3JzXCI7XG5pbXBvcnQgeyBQcmlvcml0eSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IFNlbGVjdG9yQmFzZWRDbGF1c2UgfSBmcm9tIFwiLi9TZWxlY3RvckJhc2VkQ2xhdXNlXCI7XG5cbi8qKlxuICogQHN1bW1hcnkgVGhlIEdST1VQIEJZIGNsYXVzZVxuICpcbiAqIEBwYXJhbSB7Q2xhdXNlQXJnfSBbY2xhdXNlXVxuICpcbiAqIEBjbGFzcyBHcm91cEJ5Q2xhdXNlXG4gKiBAZXh0ZW5kcyBTZWxlY3RvckJhc2VkQ2xhdXNlXG4gKlxuICogQGNhdGVnb3J5IFF1ZXJ5XG4gKiBAc3ViY2F0ZWdvcnkgQ2xhdXNlc1xuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgR3JvdXBCeUNsYXVzZTxRPiBleHRlbmRzIFNlbGVjdG9yQmFzZWRDbGF1c2U8XG4gIFEsXG4gIEdyb3VwQnlTZWxlY3RvclxuPiB7XG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihjbGF1c2U/OiBNb2RlbEFyZzxHcm91cEJ5Q2xhdXNlPFE+Pikge1xuICAgIHN1cGVyKE9iamVjdC5hc3NpZ24oe30sIGNsYXVzZSwgeyBwcmlvcml0eTogUHJpb3JpdHkuR1JPVVBfQlkgfSkpO1xuICB9XG4gIC8qKlxuICAgKiBAaW5oZXJpdERvY1xuICAgKi9cbiAgYWJzdHJhY3QgYnVpbGQocXVlcnk6IFEpOiBRO1xufVxuIl19
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import { ModelArg } from "@decaf-ts/decorator-validation";
|
2
|
+
import { GroupBySelector } from "../selectors";
|
3
|
+
import { SelectorBasedClause } from "./SelectorBasedClause";
|
4
|
+
/**
|
5
|
+
* @summary The GROUP BY clause
|
6
|
+
*
|
7
|
+
* @param {ClauseArg} [clause]
|
8
|
+
*
|
9
|
+
* @class GroupByClause
|
10
|
+
* @extends SelectorBasedClause
|
11
|
+
*
|
12
|
+
* @category Query
|
13
|
+
* @subcategory Clauses
|
14
|
+
*/
|
15
|
+
export declare abstract class GroupByClause<Q> extends SelectorBasedClause<Q, GroupBySelector> {
|
16
|
+
protected constructor(clause?: ModelArg<GroupByClause<Q>>);
|
17
|
+
/**
|
18
|
+
* @inheritDoc
|
19
|
+
*/
|
20
|
+
abstract build(query: Q): Q;
|
21
|
+
}
|
@@ -56,5 +56,4 @@ __decorate([
|
|
56
56
|
(0, decorator_validation_1.required)(),
|
57
57
|
__metadata("design:type", String)
|
58
58
|
], InsertClause.prototype, "table", void 0);
|
59
|
-
|
60
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9xdWVyeS9jbGF1c2VzL0luc2VydENsYXVzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFFQSw0Q0FBd0M7QUFDeEMsc0NBQW1DO0FBQ25DLHlFQUt3QztBQUd4Qzs7Ozs7Ozs7Ozs7R0FXRztBQUNILE1BQXNCLFlBQ3BCLFNBQVEsZUFBUztJQU1qQixZQUFzQixNQUFxQztRQUN6RCxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsUUFBUSxFQUFFLG9CQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBSHhELFVBQUssR0FBWSxTQUFTLENBQUM7SUFJckMsQ0FBQztJQU1EOztPQUVHO0lBQ0gsSUFBSSxDQUFDLEtBQXFCO1FBQ3hCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLHVCQUF1QjtRQUNoRCxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxHQUFHLE1BQVc7UUFDbkIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFDRDs7T0FFRztJQUNILEtBQUssQ0FBQyxTQUFvQjtRQUN4QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDdkQsQ0FBQztDQUNGO0FBbkNELG9DQW1DQztBQTlCVztJQURULElBQUEsK0JBQVEsR0FBRTs7MkNBQzBCIiwiZmlsZSI6InF1ZXJ5L2NsYXVzZXMvSW5zZXJ0Q2xhdXNlLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uZGl0aW9uIH0gZnJvbSBcIi4uL0NvbmRpdGlvblwiO1xuaW1wb3J0IHsgSW5zZXJ0T3B0aW9uLCBJbnRvT3B0aW9uLCBPcmRlckFuZEdyb3VwT3B0aW9uIH0gZnJvbSBcIi4uL29wdGlvbnNcIjtcbmltcG9ydCB7IFByaW9yaXR5IH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgQ2xhdXNlIH0gZnJvbSBcIi4uL0NsYXVzZVwiO1xuaW1wb3J0IHtcbiAgQ29uc3RydWN0b3IsXG4gIE1vZGVsLFxuICBNb2RlbEFyZyxcbiAgcmVxdWlyZWQsXG59IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcbmltcG9ydCB7IEV4ZWN1dG9yIH0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXNcIjtcblxuLyoqXG4gKiBAc3VtbWFyeSBUaGUgSU5TRVJUL0lOVE8gY2xhdXNlXG4gKlxuICogQHBhcmFtIHtDbGF1c2VBcmd9IFtjbGF1c2VdXG4gKlxuICogQGNsYXNzIEZyb21DbGF1c2VcbiAqIEBleHRlbmRzIENsYXVzZVxuICogQGltcGxlbWVudHMgSW50b09wdGlvblxuICpcbiAqIEBjYXRlZ29yeSBRdWVyeVxuICogQHN1YmNhdGVnb3J5IENsYXVzZXNcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEluc2VydENsYXVzZTxRLCBNIGV4dGVuZHMgTW9kZWw+XG4gIGV4dGVuZHMgQ2xhdXNlPFE+XG4gIGltcGxlbWVudHMgSW5zZXJ0T3B0aW9uPE0+LCBJbnRvT3B0aW9uPE0+XG57XG4gIEByZXF1aXJlZCgpXG4gIHByb3RlY3RlZCB0YWJsZT86IHN0cmluZyA9IHVuZGVmaW5lZDtcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoY2xhdXNlPzogTW9kZWxBcmc8SW5zZXJ0Q2xhdXNlPFEsIE0+Pikge1xuICAgIHN1cGVyKE9iamVjdC5hc3NpZ24oe30sIGNsYXVzZSwgeyBwcmlvcml0eTogUHJpb3JpdHkuU0VMRUNUIH0pKTtcbiAgfVxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIGFic3RyYWN0IGJ1aWxkKHF1ZXJ5OiBRKTogUTtcblxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIGludG8odGFibGU6IENvbnN0cnVjdG9yPE0+KTogSW50b09wdGlvbjxNPiB7XG4gICAgdGhpcy50YWJsZSA9IHRhYmxlLm5hbWU7IC8vIFRPRE8gZ2V0IG1hcHBlZCBuYW1lXG4gICAgdGhpcy5zdGF0ZW1lbnQuc2V0VGFyZ2V0KHRhYmxlKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIHZhbHVlcyguLi5tb2RlbHM6IE1bXSk6IEV4ZWN1dG9yIHtcbiAgICByZXR1cm4gdGhpcy5DbGF1c2VzLnZhbHVlcyh0aGlzLnN0YXRlbWVudCwgbW9kZWxzKTtcbiAgfVxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIHdoZXJlKGNvbmRpdGlvbjogQ29uZGl0aW9uKTogT3JkZXJBbmRHcm91cE9wdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuQ2xhdXNlcy53aGVyZSh0aGlzLnN0YXRlbWVudCwgY29uZGl0aW9uKTtcbiAgfVxufVxuIl19
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5zZXJ0Q2xhdXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3F1ZXJ5L2NsYXVzZXMvSW5zZXJ0Q2xhdXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUVBLDRDQUF3QztBQUN4QyxzQ0FBbUM7QUFDbkMseUVBS3dDO0FBR3hDOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsTUFBc0IsWUFDcEIsU0FBUSxlQUFTO0lBTWpCLFlBQXNCLE1BQXFDO1FBQ3pELEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxRQUFRLEVBQUUsb0JBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFIeEQsVUFBSyxHQUFZLFNBQVMsQ0FBQztJQUlyQyxDQUFDO0lBTUQ7O09BRUc7SUFDSCxJQUFJLENBQUMsS0FBcUI7UUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsdUJBQXVCO1FBQ2hELElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLEdBQUcsTUFBVztRQUNuQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUNEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLFNBQW9CO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUN2RCxDQUFDO0NBQ0Y7QUFuQ0Qsb0NBbUNDO0FBOUJXO0lBRFQsSUFBQSwrQkFBUSxHQUFFOzsyQ0FDMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25kaXRpb24gfSBmcm9tIFwiLi4vQ29uZGl0aW9uXCI7XG5pbXBvcnQgeyBJbnNlcnRPcHRpb24sIEludG9PcHRpb24sIE9yZGVyQW5kR3JvdXBPcHRpb24gfSBmcm9tIFwiLi4vb3B0aW9uc1wiO1xuaW1wb3J0IHsgUHJpb3JpdHkgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBDbGF1c2UgfSBmcm9tIFwiLi4vQ2xhdXNlXCI7XG5pbXBvcnQge1xuICBDb25zdHJ1Y3RvcixcbiAgTW9kZWwsXG4gIE1vZGVsQXJnLFxuICByZXF1aXJlZCxcbn0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgRXhlY3V0b3IgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlc1wiO1xuXG4vKipcbiAqIEBzdW1tYXJ5IFRoZSBJTlNFUlQvSU5UTyBjbGF1c2VcbiAqXG4gKiBAcGFyYW0ge0NsYXVzZUFyZ30gW2NsYXVzZV1cbiAqXG4gKiBAY2xhc3MgRnJvbUNsYXVzZVxuICogQGV4dGVuZHMgQ2xhdXNlXG4gKiBAaW1wbGVtZW50cyBJbnRvT3B0aW9uXG4gKlxuICogQGNhdGVnb3J5IFF1ZXJ5XG4gKiBAc3ViY2F0ZWdvcnkgQ2xhdXNlc1xuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgSW5zZXJ0Q2xhdXNlPFEsIE0gZXh0ZW5kcyBNb2RlbD5cbiAgZXh0ZW5kcyBDbGF1c2U8UT5cbiAgaW1wbGVtZW50cyBJbnNlcnRPcHRpb248TT4sIEludG9PcHRpb248TT5cbntcbiAgQHJlcXVpcmVkKClcbiAgcHJvdGVjdGVkIHRhYmxlPzogc3RyaW5nID0gdW5kZWZpbmVkO1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihjbGF1c2U/OiBNb2RlbEFyZzxJbnNlcnRDbGF1c2U8USwgTT4+KSB7XG4gICAgc3VwZXIoT2JqZWN0LmFzc2lnbih7fSwgY2xhdXNlLCB7IHByaW9yaXR5OiBQcmlvcml0eS5TRUxFQ1QgfSkpO1xuICB9XG4gIC8qKlxuICAgKiBAaW5oZXJpdERvY1xuICAgKi9cbiAgYWJzdHJhY3QgYnVpbGQocXVlcnk6IFEpOiBRO1xuXG4gIC8qKlxuICAgKiBAaW5oZXJpdERvY1xuICAgKi9cbiAgaW50byh0YWJsZTogQ29uc3RydWN0b3I8TT4pOiBJbnRvT3B0aW9uPE0+IHtcbiAgICB0aGlzLnRhYmxlID0gdGFibGUubmFtZTsgLy8gVE9ETyBnZXQgbWFwcGVkIG5hbWVcbiAgICB0aGlzLnN0YXRlbWVudC5zZXRUYXJnZXQodGFibGUpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG4gIC8qKlxuICAgKiBAaW5oZXJpdERvY1xuICAgKi9cbiAgdmFsdWVzKC4uLm1vZGVsczogTVtdKTogRXhlY3V0b3Ige1xuICAgIHJldHVybiB0aGlzLkNsYXVzZXMudmFsdWVzKHRoaXMuc3RhdGVtZW50LCBtb2RlbHMpO1xuICB9XG4gIC8qKlxuICAgKiBAaW5oZXJpdERvY1xuICAgKi9cbiAgd2hlcmUoY29uZGl0aW9uOiBDb25kaXRpb24pOiBPcmRlckFuZEdyb3VwT3B0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5DbGF1c2VzLndoZXJlKHRoaXMuc3RhdGVtZW50LCBjb25kaXRpb24pO1xuICB9XG59XG4iXX0=
|
@@ -0,0 +1,37 @@
|
|
1
|
+
import { Condition } from "../Condition";
|
2
|
+
import { InsertOption, IntoOption, OrderAndGroupOption } from "../options";
|
3
|
+
import { Clause } from "../Clause";
|
4
|
+
import { Constructor, Model, ModelArg } from "@decaf-ts/decorator-validation";
|
5
|
+
import { Executor } from "../../interfaces";
|
6
|
+
/**
|
7
|
+
* @summary The INSERT/INTO clause
|
8
|
+
*
|
9
|
+
* @param {ClauseArg} [clause]
|
10
|
+
*
|
11
|
+
* @class FromClause
|
12
|
+
* @extends Clause
|
13
|
+
* @implements IntoOption
|
14
|
+
*
|
15
|
+
* @category Query
|
16
|
+
* @subcategory Clauses
|
17
|
+
*/
|
18
|
+
export declare abstract class InsertClause<Q, M extends Model> extends Clause<Q> implements InsertOption<M>, IntoOption<M> {
|
19
|
+
protected table?: string;
|
20
|
+
protected constructor(clause?: ModelArg<InsertClause<Q, M>>);
|
21
|
+
/**
|
22
|
+
* @inheritDoc
|
23
|
+
*/
|
24
|
+
abstract build(query: Q): Q;
|
25
|
+
/**
|
26
|
+
* @inheritDoc
|
27
|
+
*/
|
28
|
+
into(table: Constructor<M>): IntoOption<M>;
|
29
|
+
/**
|
30
|
+
* @inheritDoc
|
31
|
+
*/
|
32
|
+
values(...models: M[]): Executor;
|
33
|
+
/**
|
34
|
+
* @inheritDoc
|
35
|
+
*/
|
36
|
+
where(condition: Condition): OrderAndGroupOption;
|
37
|
+
}
|
@@ -28,5 +28,4 @@ class LimitClause extends SelectorBasedClause_1.SelectorBasedClause {
|
|
28
28
|
}
|
29
29
|
}
|
30
30
|
exports.LimitClause = LimitClause;
|
31
|
-
|
32
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9xdWVyeS9jbGF1c2VzL0xpbWl0Q2xhdXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtEQUE0RDtBQUk1RCw0Q0FBd0M7QUFHeEM7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0gsTUFBc0IsV0FDcEIsU0FBUSx5Q0FBcUM7SUFHN0MsWUFBc0IsTUFBaUM7UUFDckQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLFFBQVEsRUFBRSxvQkFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBS0Q7O09BRUc7SUFDSCxNQUFNLENBQUMsUUFBd0I7UUFDN0IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7Q0FDRjtBQWpCRCxrQ0FpQkMiLCJmaWxlIjoicXVlcnkvY2xhdXNlcy9MaW1pdENsYXVzZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlbGVjdG9yQmFzZWRDbGF1c2UgfSBmcm9tIFwiLi9TZWxlY3RvckJhc2VkQ2xhdXNlXCI7XG5pbXBvcnQgeyBPZmZzZXRPcHRpb24gfSBmcm9tIFwiLi4vb3B0aW9uc1wiO1xuaW1wb3J0IHsgRXhlY3V0b3IgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlc1wiO1xuaW1wb3J0IHsgTGltaXRTZWxlY3RvciwgT2Zmc2V0U2VsZWN0b3IgfSBmcm9tIFwiLi4vc2VsZWN0b3JzXCI7XG5pbXBvcnQgeyBQcmlvcml0eSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IE1vZGVsQXJnIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuXG4vKipcbiAqIEBzdW1tYXJ5IExpbWl0IENsYXVzZVxuICogQGRlc2NyaXB0aW9uIExpbWl0cyB0aGUgcmVzdWx0c1xuICpcbiAqIEBwYXJhbSB7Q2xhdXNlQXJnfSBbY2xhdXNlXVxuICpcbiAqIEBjbGFzcyBMaW1pdENsYXVzZVxuICogQGV4dGVuZHMgU2VsZWN0b3JCYXNlZENsYXVzZTxUPlxuICogQGltcGxlbWVudHMgT2Zmc2V0T3B0aW9uPFQ+XG4gKlxuICogQGNhdGVnb3J5IFF1ZXJ5XG4gKiBAc3ViY2F0ZWdvcnkgQ2xhdXNlc1xuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTGltaXRDbGF1c2U8UT5cbiAgZXh0ZW5kcyBTZWxlY3RvckJhc2VkQ2xhdXNlPFEsIExpbWl0U2VsZWN0b3I+XG4gIGltcGxlbWVudHMgT2Zmc2V0T3B0aW9uXG57XG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihjbGF1c2U/OiBNb2RlbEFyZzxMaW1pdENsYXVzZTxRPj4pIHtcbiAgICBzdXBlcihPYmplY3QuYXNzaWduKHt9LCBjbGF1c2UsIHsgcHJpb3JpdHk6IFByaW9yaXR5LkdST1VQX0JZIH0pKTtcbiAgfVxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIGFic3RyYWN0IGJ1aWxkKHF1ZXJ5OiBRKTogUTtcbiAgLyoqXG4gICAqIEBpbmhlcml0RG9jXG4gICAqL1xuICBvZmZzZXQoc2VsZWN0b3I6IE9mZnNldFNlbGVjdG9yKTogRXhlY3V0b3Ige1xuICAgIHJldHVybiB0aGlzLkNsYXVzZXMub2Zmc2V0KHRoaXMuc3RhdGVtZW50LCBzZWxlY3Rvcik7XG4gIH1cbn1cbiJdfQ==
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGltaXRDbGF1c2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcXVlcnkvY2xhdXNlcy9MaW1pdENsYXVzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrREFBNEQ7QUFJNUQsNENBQXdDO0FBR3hDOzs7Ozs7Ozs7Ozs7R0FZRztBQUNILE1BQXNCLFdBQ3BCLFNBQVEseUNBQXFDO0lBRzdDLFlBQXNCLE1BQWlDO1FBQ3JELEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxRQUFRLEVBQUUsb0JBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUtEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLFFBQXdCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN2RCxDQUFDO0NBQ0Y7QUFqQkQsa0NBaUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VsZWN0b3JCYXNlZENsYXVzZSB9IGZyb20gXCIuL1NlbGVjdG9yQmFzZWRDbGF1c2VcIjtcbmltcG9ydCB7IE9mZnNldE9wdGlvbiB9IGZyb20gXCIuLi9vcHRpb25zXCI7XG5pbXBvcnQgeyBFeGVjdXRvciB9IGZyb20gXCIuLi8uLi9pbnRlcmZhY2VzXCI7XG5pbXBvcnQgeyBMaW1pdFNlbGVjdG9yLCBPZmZzZXRTZWxlY3RvciB9IGZyb20gXCIuLi9zZWxlY3RvcnNcIjtcbmltcG9ydCB7IFByaW9yaXR5IH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgTW9kZWxBcmcgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5cbi8qKlxuICogQHN1bW1hcnkgTGltaXQgQ2xhdXNlXG4gKiBAZGVzY3JpcHRpb24gTGltaXRzIHRoZSByZXN1bHRzXG4gKlxuICogQHBhcmFtIHtDbGF1c2VBcmd9IFtjbGF1c2VdXG4gKlxuICogQGNsYXNzIExpbWl0Q2xhdXNlXG4gKiBAZXh0ZW5kcyBTZWxlY3RvckJhc2VkQ2xhdXNlPFQ+XG4gKiBAaW1wbGVtZW50cyBPZmZzZXRPcHRpb248VD5cbiAqXG4gKiBAY2F0ZWdvcnkgUXVlcnlcbiAqIEBzdWJjYXRlZ29yeSBDbGF1c2VzXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBMaW1pdENsYXVzZTxRPlxuICBleHRlbmRzIFNlbGVjdG9yQmFzZWRDbGF1c2U8USwgTGltaXRTZWxlY3Rvcj5cbiAgaW1wbGVtZW50cyBPZmZzZXRPcHRpb25cbntcbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKGNsYXVzZT86IE1vZGVsQXJnPExpbWl0Q2xhdXNlPFE+Pikge1xuICAgIHN1cGVyKE9iamVjdC5hc3NpZ24oe30sIGNsYXVzZSwgeyBwcmlvcml0eTogUHJpb3JpdHkuR1JPVVBfQlkgfSkpO1xuICB9XG4gIC8qKlxuICAgKiBAaW5oZXJpdERvY1xuICAgKi9cbiAgYWJzdHJhY3QgYnVpbGQocXVlcnk6IFEpOiBRO1xuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIG9mZnNldChzZWxlY3RvcjogT2Zmc2V0U2VsZWN0b3IpOiBFeGVjdXRvciB7XG4gICAgcmV0dXJuIHRoaXMuQ2xhdXNlcy5vZmZzZXQodGhpcy5zdGF0ZW1lbnQsIHNlbGVjdG9yKTtcbiAgfVxufVxuIl19
|
@@ -0,0 +1,29 @@
|
|
1
|
+
import { SelectorBasedClause } from "./SelectorBasedClause";
|
2
|
+
import { OffsetOption } from "../options";
|
3
|
+
import { Executor } from "../../interfaces";
|
4
|
+
import { LimitSelector, OffsetSelector } from "../selectors";
|
5
|
+
import { ModelArg } from "@decaf-ts/decorator-validation";
|
6
|
+
/**
|
7
|
+
* @summary Limit Clause
|
8
|
+
* @description Limits the results
|
9
|
+
*
|
10
|
+
* @param {ClauseArg} [clause]
|
11
|
+
*
|
12
|
+
* @class LimitClause
|
13
|
+
* @extends SelectorBasedClause<T>
|
14
|
+
* @implements OffsetOption<T>
|
15
|
+
*
|
16
|
+
* @category Query
|
17
|
+
* @subcategory Clauses
|
18
|
+
*/
|
19
|
+
export declare abstract class LimitClause<Q> extends SelectorBasedClause<Q, LimitSelector> implements OffsetOption {
|
20
|
+
protected constructor(clause?: ModelArg<LimitClause<Q>>);
|
21
|
+
/**
|
22
|
+
* @inheritDoc
|
23
|
+
*/
|
24
|
+
abstract build(query: Q): Q;
|
25
|
+
/**
|
26
|
+
* @inheritDoc
|
27
|
+
*/
|
28
|
+
offset(selector: OffsetSelector): Executor;
|
29
|
+
}
|
@@ -20,5 +20,4 @@ class OffsetClause extends SelectorBasedClause_1.SelectorBasedClause {
|
|
20
20
|
}
|
21
21
|
}
|
22
22
|
exports.OffsetClause = OffsetClause;
|
23
|
-
|
24
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9xdWVyeS9jbGF1c2VzL09mZnNldENsYXVzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrREFBNEQ7QUFFNUQsNENBQXdDO0FBR3hDOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFzQixZQUFnQixTQUFRLHlDQUc3QztJQUNDLFlBQXNCLE1BQWtDO1FBQ3RELEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxRQUFRLEVBQUUsb0JBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDcEUsQ0FBQztDQUtGO0FBWEQsb0NBV0MiLCJmaWxlIjoicXVlcnkvY2xhdXNlcy9PZmZzZXRDbGF1c2UuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZWxlY3RvckJhc2VkQ2xhdXNlIH0gZnJvbSBcIi4vU2VsZWN0b3JCYXNlZENsYXVzZVwiO1xuaW1wb3J0IHsgT2Zmc2V0U2VsZWN0b3IgfSBmcm9tIFwiLi4vc2VsZWN0b3JzXCI7XG5pbXBvcnQgeyBQcmlvcml0eSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IE1vZGVsQXJnIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuXG4vKipcbiAqIEBzdW1tYXJ5IFRoZSBPRkZTRVQgY2xhdXNlXG4gKlxuICogQHBhcmFtIHtDbGF1c2VBcmd9IFtjbGF1c2VdXG4gKlxuICogQGNsYXNzIEZyb21DbGF1c2VcbiAqIEBleHRlbmRzIFNlbGVjdG9yQmFzZWRDbGF1c2VcbiAqXG4gKiBAY2F0ZWdvcnkgUXVlcnlcbiAqIEBzdWJjYXRlZ29yeSBDbGF1c2VzXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBPZmZzZXRDbGF1c2U8UT4gZXh0ZW5kcyBTZWxlY3RvckJhc2VkQ2xhdXNlPFxuICBRLFxuICBPZmZzZXRTZWxlY3RvclxuPiB7XG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihjbGF1c2U/OiBNb2RlbEFyZzxPZmZzZXRDbGF1c2U8UT4+KSB7XG4gICAgc3VwZXIoT2JqZWN0LmFzc2lnbih7fSwgY2xhdXNlLCB7IHByaW9yaXR5OiBQcmlvcml0eS5HUk9VUF9CWSB9KSk7XG4gIH1cbiAgLyoqXG4gICAqIEBpbmhlcml0RG9jXG4gICAqL1xuICBhYnN0cmFjdCBidWlsZChxdWVyeTogUSk6IFE7XG59XG4iXX0=
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT2Zmc2V0Q2xhdXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3F1ZXJ5L2NsYXVzZXMvT2Zmc2V0Q2xhdXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtEQUE0RDtBQUU1RCw0Q0FBd0M7QUFHeEM7Ozs7Ozs7Ozs7R0FVRztBQUNILE1BQXNCLFlBQWdCLFNBQVEseUNBRzdDO0lBQ0MsWUFBc0IsTUFBa0M7UUFDdEQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLFFBQVEsRUFBRSxvQkFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0NBS0Y7QUFYRCxvQ0FXQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlbGVjdG9yQmFzZWRDbGF1c2UgfSBmcm9tIFwiLi9TZWxlY3RvckJhc2VkQ2xhdXNlXCI7XG5pbXBvcnQgeyBPZmZzZXRTZWxlY3RvciB9IGZyb20gXCIuLi9zZWxlY3RvcnNcIjtcbmltcG9ydCB7IFByaW9yaXR5IH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgTW9kZWxBcmcgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5cbi8qKlxuICogQHN1bW1hcnkgVGhlIE9GRlNFVCBjbGF1c2VcbiAqXG4gKiBAcGFyYW0ge0NsYXVzZUFyZ30gW2NsYXVzZV1cbiAqXG4gKiBAY2xhc3MgRnJvbUNsYXVzZVxuICogQGV4dGVuZHMgU2VsZWN0b3JCYXNlZENsYXVzZVxuICpcbiAqIEBjYXRlZ29yeSBRdWVyeVxuICogQHN1YmNhdGVnb3J5IENsYXVzZXNcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE9mZnNldENsYXVzZTxRPiBleHRlbmRzIFNlbGVjdG9yQmFzZWRDbGF1c2U8XG4gIFEsXG4gIE9mZnNldFNlbGVjdG9yXG4+IHtcbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKGNsYXVzZT86IE1vZGVsQXJnPE9mZnNldENsYXVzZTxRPj4pIHtcbiAgICBzdXBlcihPYmplY3QuYXNzaWduKHt9LCBjbGF1c2UsIHsgcHJpb3JpdHk6IFByaW9yaXR5LkdST1VQX0JZIH0pKTtcbiAgfVxuICAvKipcbiAgICogQGluaGVyaXREb2NcbiAgICovXG4gIGFic3RyYWN0IGJ1aWxkKHF1ZXJ5OiBRKTogUTtcbn1cbiJdfQ==
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import { SelectorBasedClause } from "./SelectorBasedClause";
|
2
|
+
import { OffsetSelector } from "../selectors";
|
3
|
+
import { ModelArg } from "@decaf-ts/decorator-validation";
|
4
|
+
/**
|
5
|
+
* @summary The OFFSET clause
|
6
|
+
*
|
7
|
+
* @param {ClauseArg} [clause]
|
8
|
+
*
|
9
|
+
* @class FromClause
|
10
|
+
* @extends SelectorBasedClause
|
11
|
+
*
|
12
|
+
* @category Query
|
13
|
+
* @subcategory Clauses
|
14
|
+
*/
|
15
|
+
export declare abstract class OffsetClause<Q> extends SelectorBasedClause<Q, OffsetSelector> {
|
16
|
+
protected constructor(clause?: ModelArg<OffsetClause<Q>>);
|
17
|
+
/**
|
18
|
+
* @inheritDoc
|
19
|
+
*/
|
20
|
+
abstract build(query: Q): Q;
|
21
|
+
}
|