@decaf-ts/core 0.5.0 → 0.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +21 -157
- package/README.md +652 -15
- package/dist/core.cjs +2638 -1085
- package/dist/core.esm.cjs +2636 -1070
- package/lib/esm/identity/decorators.d.ts +52 -14
- package/lib/esm/identity/decorators.js +54 -16
- package/lib/esm/identity/utils.d.ts +20 -1
- package/lib/esm/identity/utils.js +22 -2
- package/lib/esm/index.d.ts +11 -15
- package/lib/esm/index.js +17 -19
- package/lib/esm/interfaces/ErrorParser.d.ts +12 -0
- package/lib/esm/interfaces/ErrorParser.js +1 -1
- package/lib/esm/interfaces/Executor.d.ts +10 -13
- package/lib/esm/interfaces/Executor.js +1 -1
- package/lib/esm/interfaces/Observable.d.ts +20 -18
- package/lib/esm/interfaces/Observable.js +1 -1
- package/lib/esm/interfaces/Observer.d.ts +7 -8
- package/lib/esm/interfaces/Observer.js +1 -1
- package/lib/esm/interfaces/Paginatable.d.ts +18 -2
- package/lib/esm/interfaces/Paginatable.js +1 -1
- package/lib/esm/interfaces/Queriable.d.ts +44 -3
- package/lib/esm/interfaces/Queriable.js +1 -1
- package/lib/esm/interfaces/RawExecutor.d.ts +10 -13
- package/lib/esm/interfaces/RawExecutor.js +1 -1
- package/lib/esm/interfaces/SequenceOptions.d.ts +50 -5
- package/lib/esm/interfaces/SequenceOptions.js +19 -1
- package/lib/esm/interfaces/index.d.ts +0 -1
- package/lib/esm/interfaces/index.js +1 -2
- package/lib/esm/model/BaseModel.d.ts +31 -0
- package/lib/esm/model/BaseModel.js +24 -1
- package/lib/esm/model/construction.d.ts +442 -9
- package/lib/esm/model/construction.js +441 -2
- package/lib/esm/model/decorators.d.ts +166 -42
- package/lib/esm/model/decorators.js +161 -37
- package/lib/esm/model/index.js +1 -2
- package/lib/esm/model/types.d.ts +9 -0
- package/lib/esm/model/types.js +1 -1
- package/lib/esm/persistence/Adapter.d.ts +384 -40
- package/lib/esm/persistence/Adapter.js +415 -59
- package/lib/esm/persistence/Dispatch.d.ts +131 -0
- package/lib/esm/persistence/Dispatch.js +187 -0
- package/lib/esm/persistence/ObserverHandler.d.ts +109 -0
- package/lib/esm/persistence/ObserverHandler.js +137 -0
- package/lib/esm/persistence/Sequence.d.ts +89 -8
- package/lib/esm/persistence/Sequence.js +91 -1
- package/lib/esm/persistence/constants.d.ts +22 -5
- package/lib/esm/persistence/constants.js +23 -7
- package/lib/esm/persistence/decorators.d.ts +10 -0
- package/lib/esm/persistence/decorators.js +11 -1
- package/lib/esm/persistence/errors.d.ts +23 -3
- package/lib/esm/persistence/errors.js +25 -7
- package/lib/esm/persistence/index.d.ts +3 -0
- package/lib/esm/persistence/index.js +4 -1
- package/lib/esm/persistence/types.d.ts +21 -0
- package/lib/esm/persistence/types.js +2 -0
- package/lib/esm/query/Condition.d.ts +88 -44
- package/lib/esm/query/Condition.js +144 -62
- package/lib/esm/query/Paginator.d.ts +67 -10
- package/lib/esm/query/Paginator.js +64 -10
- package/lib/esm/query/Statement.d.ts +82 -47
- package/lib/esm/query/Statement.js +175 -122
- package/lib/esm/query/constants.d.ts +25 -64
- package/lib/esm/query/constants.js +26 -68
- package/lib/esm/query/errors.d.ts +14 -0
- package/lib/esm/query/errors.js +15 -1
- package/lib/esm/query/index.d.ts +0 -5
- package/lib/esm/query/index.js +1 -6
- package/lib/esm/query/options.d.ts +69 -178
- package/lib/esm/query/options.js +1 -1
- package/lib/esm/query/selectors.d.ts +20 -24
- package/lib/esm/query/selectors.js +1 -1
- package/lib/esm/ram/RamAdapter.d.ts +322 -20
- package/lib/esm/ram/RamAdapter.js +360 -140
- package/lib/esm/ram/RamContext.d.ts +16 -1
- package/lib/esm/ram/RamContext.js +18 -3
- package/lib/esm/ram/RamPaginator.d.ts +51 -6
- package/lib/esm/ram/RamPaginator.js +58 -6
- package/lib/esm/ram/RamSequence.d.ts +49 -24
- package/lib/esm/ram/RamSequence.js +52 -40
- package/lib/esm/ram/RamStatement.d.ts +84 -6
- package/lib/esm/ram/RamStatement.js +175 -6
- package/lib/esm/ram/constants.d.ts +9 -0
- package/lib/esm/ram/constants.js +10 -0
- package/lib/esm/ram/handlers.d.ts +25 -0
- package/lib/esm/ram/handlers.js +27 -0
- package/lib/esm/ram/index.d.ts +4 -4
- package/lib/esm/ram/index.js +9 -5
- package/lib/esm/ram/model/RamSequence.d.ts +21 -9
- package/lib/esm/ram/model/RamSequence.js +19 -1
- package/lib/esm/ram/types.d.ts +47 -5
- package/lib/esm/ram/types.js +1 -1
- package/lib/esm/repository/Repository.d.ts +381 -22
- package/lib/esm/repository/Repository.js +446 -43
- package/lib/esm/repository/constants.d.ts +23 -13
- package/lib/esm/repository/constants.js +24 -14
- package/lib/esm/repository/decorators.d.ts +27 -0
- package/lib/esm/repository/decorators.js +28 -1
- package/lib/esm/repository/errors.d.ts +12 -11
- package/lib/esm/repository/errors.js +13 -16
- package/lib/esm/repository/injectables.d.ts +18 -0
- package/lib/esm/repository/injectables.js +19 -1
- package/lib/esm/repository/types.d.ts +13 -1
- package/lib/esm/repository/types.js +1 -1
- package/lib/esm/repository/utils.d.ts +11 -0
- package/lib/esm/repository/utils.js +12 -1
- package/lib/esm/utils/decorators.d.ts +9 -0
- package/lib/esm/utils/decorators.js +19 -0
- package/lib/esm/utils/errors.d.ts +56 -0
- package/lib/esm/utils/errors.js +63 -0
- package/lib/esm/utils/index.d.ts +2 -0
- package/lib/esm/utils/index.js +3 -0
- package/lib/identity/decorators.cjs +54 -16
- package/lib/identity/decorators.d.ts +52 -14
- package/lib/identity/utils.cjs +22 -2
- package/lib/identity/utils.d.ts +20 -1
- package/lib/index.cjs +17 -19
- package/lib/index.d.ts +11 -15
- package/lib/interfaces/ErrorParser.cjs +1 -1
- package/lib/interfaces/ErrorParser.d.ts +12 -0
- package/lib/interfaces/Executor.cjs +1 -1
- package/lib/interfaces/Executor.d.ts +10 -13
- package/lib/interfaces/Observable.cjs +1 -1
- package/lib/interfaces/Observable.d.ts +20 -18
- package/lib/interfaces/Observer.cjs +1 -1
- package/lib/interfaces/Observer.d.ts +7 -8
- package/lib/interfaces/Paginatable.cjs +1 -1
- package/lib/interfaces/Paginatable.d.ts +18 -2
- package/lib/interfaces/Queriable.cjs +1 -1
- package/lib/interfaces/Queriable.d.ts +44 -3
- package/lib/interfaces/RawExecutor.cjs +1 -1
- package/lib/interfaces/RawExecutor.d.ts +10 -13
- package/lib/interfaces/SequenceOptions.cjs +19 -1
- package/lib/interfaces/SequenceOptions.d.ts +50 -5
- package/lib/interfaces/index.cjs +1 -2
- package/lib/interfaces/index.d.ts +0 -1
- package/lib/model/BaseModel.cjs +24 -1
- package/lib/model/BaseModel.d.ts +31 -0
- package/lib/model/construction.cjs +441 -2
- package/lib/model/construction.d.ts +442 -9
- package/lib/model/decorators.cjs +161 -37
- package/lib/model/decorators.d.ts +166 -42
- package/lib/model/index.cjs +1 -2
- package/lib/model/types.cjs +1 -1
- package/lib/model/types.d.ts +9 -0
- package/lib/persistence/Adapter.cjs +414 -58
- package/lib/persistence/Adapter.d.ts +384 -40
- package/lib/persistence/Dispatch.cjs +191 -0
- package/lib/persistence/Dispatch.d.ts +131 -0
- package/lib/persistence/ObserverHandler.cjs +141 -0
- package/lib/persistence/ObserverHandler.d.ts +109 -0
- package/lib/persistence/Sequence.cjs +91 -1
- package/lib/persistence/Sequence.d.ts +89 -8
- package/lib/persistence/constants.cjs +24 -8
- package/lib/persistence/constants.d.ts +22 -5
- package/lib/persistence/decorators.cjs +11 -1
- package/lib/persistence/decorators.d.ts +10 -0
- package/lib/persistence/errors.cjs +26 -9
- package/lib/persistence/errors.d.ts +23 -3
- package/lib/persistence/index.cjs +4 -1
- package/lib/persistence/index.d.ts +3 -0
- package/lib/persistence/types.cjs +3 -0
- package/lib/persistence/types.d.ts +21 -0
- package/lib/query/Condition.cjs +143 -61
- package/lib/query/Condition.d.ts +88 -44
- package/lib/query/Paginator.cjs +64 -10
- package/lib/query/Paginator.d.ts +67 -10
- package/lib/query/Statement.cjs +174 -121
- package/lib/query/Statement.d.ts +82 -47
- package/lib/query/constants.cjs +27 -69
- package/lib/query/constants.d.ts +25 -64
- package/lib/query/errors.cjs +15 -1
- package/lib/query/errors.d.ts +14 -0
- package/lib/query/index.cjs +1 -6
- package/lib/query/index.d.ts +0 -5
- package/lib/query/options.cjs +1 -1
- package/lib/query/options.d.ts +69 -178
- package/lib/query/selectors.cjs +1 -1
- package/lib/query/selectors.d.ts +20 -24
- package/lib/ram/RamAdapter.cjs +358 -172
- package/lib/ram/RamAdapter.d.ts +322 -20
- package/lib/ram/RamContext.cjs +18 -3
- package/lib/ram/RamContext.d.ts +16 -1
- package/lib/ram/RamPaginator.cjs +58 -6
- package/lib/ram/RamPaginator.d.ts +51 -6
- package/lib/ram/RamSequence.cjs +52 -41
- package/lib/ram/RamSequence.d.ts +49 -24
- package/lib/ram/RamStatement.cjs +175 -6
- package/lib/ram/RamStatement.d.ts +84 -6
- package/lib/ram/constants.cjs +13 -0
- package/lib/ram/constants.d.ts +9 -0
- package/lib/ram/handlers.cjs +30 -0
- package/lib/ram/handlers.d.ts +25 -0
- package/lib/ram/index.cjs +9 -5
- package/lib/ram/index.d.ts +4 -4
- package/lib/ram/model/RamSequence.cjs +19 -1
- package/lib/ram/model/RamSequence.d.ts +21 -9
- package/lib/ram/types.cjs +1 -1
- package/lib/ram/types.d.ts +47 -5
- package/lib/repository/Repository.cjs +445 -42
- package/lib/repository/Repository.d.ts +381 -22
- package/lib/repository/constants.cjs +24 -14
- package/lib/repository/constants.d.ts +23 -13
- package/lib/repository/decorators.cjs +28 -1
- package/lib/repository/decorators.d.ts +27 -0
- package/lib/repository/errors.cjs +14 -19
- package/lib/repository/errors.d.ts +12 -11
- package/lib/repository/injectables.cjs +19 -1
- package/lib/repository/injectables.d.ts +18 -0
- package/lib/repository/types.cjs +1 -1
- package/lib/repository/types.d.ts +13 -1
- package/lib/repository/utils.cjs +12 -1
- package/lib/repository/utils.d.ts +11 -0
- package/lib/utils/decorators.cjs +22 -0
- package/lib/utils/decorators.d.ts +9 -0
- package/lib/utils/errors.cjs +69 -0
- package/lib/utils/errors.d.ts +56 -0
- package/lib/{validators → utils}/index.cjs +2 -2
- package/lib/utils/index.d.ts +2 -0
- package/package.json +5 -5
- package/lib/esm/interfaces/Builder.d.ts +0 -16
- package/lib/esm/interfaces/Builder.js +0 -2
- package/lib/esm/model/IdentifiedBaseModel.d.ts +0 -7
- package/lib/esm/model/IdentifiedBaseModel.js +0 -25
- package/lib/esm/query/Clause.d.ts +0 -50
- package/lib/esm/query/Clause.js +0 -82
- package/lib/esm/query/ClauseFactory.d.ts +0 -71
- package/lib/esm/query/ClauseFactory.js +0 -6
- package/lib/esm/query/Query.d.ts +0 -43
- package/lib/esm/query/Query.js +0 -54
- package/lib/esm/query/clauses/FromClause.d.ts +0 -45
- package/lib/esm/query/clauses/FromClause.js +0 -59
- package/lib/esm/query/clauses/GroupByClause.d.ts +0 -21
- package/lib/esm/query/clauses/GroupByClause.js +0 -19
- package/lib/esm/query/clauses/InsertClause.d.ts +0 -37
- package/lib/esm/query/clauses/InsertClause.js +0 -55
- package/lib/esm/query/clauses/LimitClause.d.ts +0 -29
- package/lib/esm/query/clauses/LimitClause.js +0 -27
- package/lib/esm/query/clauses/OffsetClause.d.ts +0 -21
- package/lib/esm/query/clauses/OffsetClause.js +0 -19
- package/lib/esm/query/clauses/OrderByClause.d.ts +0 -37
- package/lib/esm/query/clauses/OrderByClause.js +0 -39
- package/lib/esm/query/clauses/SelectClause.d.ts +0 -47
- package/lib/esm/query/clauses/SelectClause.js +0 -62
- package/lib/esm/query/clauses/SelectorBasedClause.d.ts +0 -25
- package/lib/esm/query/clauses/SelectorBasedClause.js +0 -44
- package/lib/esm/query/clauses/ValuesClause.d.ts +0 -21
- package/lib/esm/query/clauses/ValuesClause.js +0 -36
- package/lib/esm/query/clauses/WhereClause.d.ts +0 -46
- package/lib/esm/query/clauses/WhereClause.js +0 -71
- package/lib/esm/query/clauses/index.d.ts +0 -10
- package/lib/esm/query/clauses/index.js +0 -11
- package/lib/esm/query/types.d.ts +0 -2
- package/lib/esm/query/types.js +0 -2
- package/lib/esm/ram/RamClauseFactory.d.ts +0 -17
- package/lib/esm/ram/RamClauseFactory.js +0 -92
- package/lib/esm/ram/clauses/FromClause.d.ts +0 -7
- package/lib/esm/ram/clauses/FromClause.js +0 -11
- package/lib/esm/ram/clauses/InsertClause.d.ts +0 -7
- package/lib/esm/ram/clauses/InsertClause.js +0 -13
- package/lib/esm/ram/clauses/OrderByClause.d.ts +0 -7
- package/lib/esm/ram/clauses/OrderByClause.js +0 -39
- package/lib/esm/ram/clauses/SelectClause.d.ts +0 -7
- package/lib/esm/ram/clauses/SelectClause.js +0 -16
- package/lib/esm/ram/clauses/ValuesClause.d.ts +0 -7
- package/lib/esm/ram/clauses/ValuesClause.js +0 -12
- package/lib/esm/ram/clauses/WhereClause.d.ts +0 -7
- package/lib/esm/ram/clauses/WhereClause.js +0 -11
- package/lib/esm/ram/clauses/index.d.ts +0 -6
- package/lib/esm/ram/clauses/index.js +0 -7
- package/lib/esm/validators/ClauseSequenceValidator.d.ts +0 -28
- package/lib/esm/validators/ClauseSequenceValidator.js +0 -95
- package/lib/esm/validators/decorators.d.ts +0 -10
- package/lib/esm/validators/decorators.js +0 -24
- package/lib/esm/validators/index.d.ts +0 -2
- package/lib/esm/validators/index.js +0 -3
- package/lib/interfaces/Builder.cjs +0 -3
- package/lib/interfaces/Builder.d.ts +0 -16
- package/lib/model/IdentifiedBaseModel.cjs +0 -29
- package/lib/model/IdentifiedBaseModel.d.ts +0 -7
- package/lib/query/Clause.cjs +0 -86
- package/lib/query/Clause.d.ts +0 -50
- package/lib/query/ClauseFactory.cjs +0 -10
- package/lib/query/ClauseFactory.d.ts +0 -71
- package/lib/query/Query.cjs +0 -58
- package/lib/query/Query.d.ts +0 -43
- package/lib/query/clauses/FromClause.cjs +0 -63
- package/lib/query/clauses/FromClause.d.ts +0 -45
- package/lib/query/clauses/GroupByClause.cjs +0 -23
- package/lib/query/clauses/GroupByClause.d.ts +0 -21
- package/lib/query/clauses/InsertClause.cjs +0 -59
- package/lib/query/clauses/InsertClause.d.ts +0 -37
- package/lib/query/clauses/LimitClause.cjs +0 -31
- package/lib/query/clauses/LimitClause.d.ts +0 -29
- package/lib/query/clauses/OffsetClause.cjs +0 -23
- package/lib/query/clauses/OffsetClause.d.ts +0 -21
- package/lib/query/clauses/OrderByClause.cjs +0 -43
- package/lib/query/clauses/OrderByClause.d.ts +0 -37
- package/lib/query/clauses/SelectClause.cjs +0 -66
- package/lib/query/clauses/SelectClause.d.ts +0 -47
- package/lib/query/clauses/SelectorBasedClause.cjs +0 -48
- package/lib/query/clauses/SelectorBasedClause.d.ts +0 -25
- package/lib/query/clauses/ValuesClause.cjs +0 -40
- package/lib/query/clauses/ValuesClause.d.ts +0 -21
- package/lib/query/clauses/WhereClause.cjs +0 -75
- package/lib/query/clauses/WhereClause.d.ts +0 -46
- package/lib/query/clauses/index.cjs +0 -27
- package/lib/query/clauses/index.d.ts +0 -10
- package/lib/query/types.cjs +0 -3
- package/lib/query/types.d.ts +0 -2
- package/lib/ram/RamClauseFactory.cjs +0 -96
- package/lib/ram/RamClauseFactory.d.ts +0 -17
- package/lib/ram/clauses/FromClause.cjs +0 -15
- package/lib/ram/clauses/FromClause.d.ts +0 -7
- package/lib/ram/clauses/InsertClause.cjs +0 -17
- package/lib/ram/clauses/InsertClause.d.ts +0 -7
- package/lib/ram/clauses/OrderByClause.cjs +0 -43
- package/lib/ram/clauses/OrderByClause.d.ts +0 -7
- package/lib/ram/clauses/SelectClause.cjs +0 -20
- package/lib/ram/clauses/SelectClause.d.ts +0 -7
- package/lib/ram/clauses/ValuesClause.cjs +0 -16
- package/lib/ram/clauses/ValuesClause.d.ts +0 -7
- package/lib/ram/clauses/WhereClause.cjs +0 -15
- package/lib/ram/clauses/WhereClause.d.ts +0 -7
- package/lib/ram/clauses/index.cjs +0 -23
- package/lib/ram/clauses/index.d.ts +0 -6
- package/lib/validators/ClauseSequenceValidator.cjs +0 -98
- package/lib/validators/ClauseSequenceValidator.d.ts +0 -28
- package/lib/validators/decorators.cjs +0 -27
- package/lib/validators/decorators.d.ts +0 -10
- package/lib/validators/index.d.ts +0 -2
package/lib/query/Statement.d.ts
CHANGED
@@ -1,56 +1,91 @@
|
|
1
|
-
import type
|
2
|
-
import {
|
3
|
-
import {
|
4
|
-
import {
|
5
|
-
import {
|
6
|
-
import {
|
1
|
+
import { type Constructor, Model } from "@decaf-ts/decorator-validation";
|
2
|
+
import type { Executor, RawExecutor } from "../interfaces";
|
3
|
+
import type { FromSelector, GroupBySelector, OrderBySelector, SelectSelector } from "./selectors";
|
4
|
+
import { Condition } from "./Condition";
|
5
|
+
import type { CountOption, DistinctOption, LimitOption, MaxOption, MinOption, OffsetOption, OrderAndGroupOption, SelectOption, WhereOption } from "./options";
|
6
|
+
import { Paginatable } from "../interfaces/Paginatable";
|
7
7
|
import { Paginator } from "./Paginator";
|
8
|
+
import { Adapter } from "../persistence";
|
8
9
|
/**
|
9
|
-
* @
|
10
|
-
* @
|
10
|
+
* @description Base class for database query statements
|
11
|
+
* @summary Provides a foundation for building and executing database queries
|
11
12
|
*
|
12
|
-
*
|
13
|
+
* This abstract class implements the query builder pattern for constructing
|
14
|
+
* database queries. It supports various query operations like select, from,
|
15
|
+
* where, orderBy, groupBy, limit, and offset. It also provides methods for
|
16
|
+
* executing queries and handling pagination.
|
13
17
|
*
|
18
|
+
* @template Q - The query type specific to the database adapter
|
19
|
+
* @template M - The model type this statement operates on
|
20
|
+
* @template R - The return type of the query
|
21
|
+
* @param {Adapter<any, Q, any, any>} adapter - The database adapter to use for executing queries
|
14
22
|
* @class Statement
|
15
|
-
* @
|
16
|
-
*
|
17
|
-
*
|
23
|
+
* @example
|
24
|
+
* // Create a statement to query users
|
25
|
+
* const statement = new SQLStatement(adapter);
|
26
|
+
* const users = await statement
|
27
|
+
* .select()
|
28
|
+
* .from(User)
|
29
|
+
* .where(Condition.attribute("status").eq("active"))
|
30
|
+
* .orderBy(["createdAt", "DESC"])
|
31
|
+
* .limit(10)
|
32
|
+
* .execute();
|
33
|
+
*
|
34
|
+
* // Use pagination
|
35
|
+
* const paginator = await statement
|
36
|
+
* .select()
|
37
|
+
* .from(User)
|
38
|
+
* .paginate(20); // 20 users per page
|
39
|
+
*
|
40
|
+
* @mermaid
|
41
|
+
* sequenceDiagram
|
42
|
+
* participant Client
|
43
|
+
* participant Statement
|
44
|
+
* participant Adapter
|
45
|
+
* participant Database
|
18
46
|
*
|
19
|
-
*
|
47
|
+
* Client->>Statement: select()
|
48
|
+
* Client->>Statement: from(Model)
|
49
|
+
* Client->>Statement: where(condition)
|
50
|
+
* Client->>Statement: orderBy([field, direction])
|
51
|
+
* Client->>Statement: limit(value)
|
52
|
+
* Client->>Statement: execute()
|
53
|
+
* Statement->>Statement: build()
|
54
|
+
* Statement->>Adapter: raw(query)
|
55
|
+
* Adapter->>Database: execute query
|
56
|
+
* Database-->>Adapter: return results
|
57
|
+
* Adapter-->>Statement: return processed results
|
58
|
+
* Statement-->>Client: return final results
|
20
59
|
*/
|
21
|
-
export declare abstract class Statement<Q
|
22
|
-
protected clauses?: Clause<any>[];
|
60
|
+
export declare abstract class Statement<Q, M extends Model, R> implements Executor<R>, RawExecutor<Q>, Paginatable<M, R, Q> {
|
23
61
|
protected adapter: Adapter<any, Q, any, any>;
|
24
|
-
protected
|
25
|
-
protected
|
26
|
-
protected
|
27
|
-
protected
|
28
|
-
protected
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
getTarget(): Constructor<any>;
|
54
|
-
setFullRecord(): void;
|
55
|
-
setMode(type: StatementType): void;
|
62
|
+
protected readonly selectSelector?: SelectSelector<M>[];
|
63
|
+
protected distinctSelector?: SelectSelector<M>;
|
64
|
+
protected maxSelector?: SelectSelector<M>;
|
65
|
+
protected minSelector?: SelectSelector<M>;
|
66
|
+
protected countSelector?: SelectSelector<M>;
|
67
|
+
protected fromSelector: Constructor<M>;
|
68
|
+
protected whereCondition?: Condition<M>;
|
69
|
+
protected orderBySelector?: OrderBySelector<M>;
|
70
|
+
protected groupBySelector?: GroupBySelector<M>;
|
71
|
+
protected limitSelector?: number;
|
72
|
+
protected offsetSelector?: number;
|
73
|
+
protected constructor(adapter: Adapter<any, Q, any, any>);
|
74
|
+
select<S extends readonly SelectSelector<M>[]>(): SelectOption<M, M[]>;
|
75
|
+
select<S extends readonly SelectSelector<M>[]>(selector: readonly [...S]): SelectOption<M, Pick<M, S[number]>[]>;
|
76
|
+
distinct<S extends SelectSelector<M>>(selector: S): DistinctOption<M, M[S][]>;
|
77
|
+
max<S extends SelectSelector<M>>(selector: S): MaxOption<M, M[S]>;
|
78
|
+
min<S extends SelectSelector<M>>(selector: S): MinOption<M, M[S]>;
|
79
|
+
count<S extends SelectSelector<M>>(selector?: S): CountOption<M, number>;
|
80
|
+
from(selector: FromSelector<M>): WhereOption<M, R>;
|
81
|
+
where(condition: Condition<M>): OrderAndGroupOption<M, R>;
|
82
|
+
orderBy(selector: OrderBySelector<M>): LimitOption<M, R> & OffsetOption<R>;
|
83
|
+
groupBy(selector: GroupBySelector<M>): LimitOption<M, R>;
|
84
|
+
limit(value: number): OffsetOption<R>;
|
85
|
+
offset(value: number): Executor<R>;
|
86
|
+
execute(): Promise<R>;
|
87
|
+
raw<R>(rawInput: Q): Promise<R>;
|
88
|
+
protected abstract build(): Q;
|
89
|
+
protected abstract parseCondition(condition: Condition<M>): Q;
|
90
|
+
abstract paginate(size: number): Promise<Paginator<M, R, Q>>;
|
56
91
|
}
|
package/lib/query/constants.cjs
CHANGED
@@ -1,90 +1,48 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.
|
3
|
+
exports.GroupOperator = exports.Operator = void 0;
|
4
|
+
/**
|
5
|
+
* @description Comparison operators for query conditions
|
6
|
+
* @summary Enum defining the available operators for comparing values in database queries
|
7
|
+
* @enum {string}
|
8
|
+
* @readonly
|
9
|
+
* @memberOf module:core
|
10
|
+
*/
|
4
11
|
var Operator;
|
5
12
|
(function (Operator) {
|
13
|
+
/** Equal comparison (=) */
|
6
14
|
Operator["EQUAL"] = "EQUAL";
|
15
|
+
/** Not equal comparison (!=) */
|
7
16
|
Operator["DIFFERENT"] = "DIFFERENT";
|
17
|
+
/** Greater than comparison (>) */
|
8
18
|
Operator["BIGGER"] = "BIGGER";
|
19
|
+
/** Greater than or equal comparison (>=) */
|
9
20
|
Operator["BIGGER_EQ"] = "BIGGER_EQ";
|
21
|
+
/** Less than comparison (<) */
|
10
22
|
Operator["SMALLER"] = "SMALLER";
|
23
|
+
/** Less than or equal comparison (<=) */
|
11
24
|
Operator["SMALLER_EQ"] = "SMALLER_EQ";
|
12
25
|
// BETWEEN = "BETWEEN",
|
26
|
+
/** Negation operator (NOT) */
|
13
27
|
Operator["NOT"] = "NOT";
|
28
|
+
/** Inclusion operator (IN) */
|
14
29
|
Operator["IN"] = "IN";
|
15
30
|
// IS = "IS",
|
31
|
+
/** Regular expression matching */
|
16
32
|
Operator["REGEXP"] = "REGEXP";
|
17
33
|
})(Operator || (exports.Operator = Operator = {}));
|
34
|
+
/**
|
35
|
+
* @description Logical operators for combining query conditions
|
36
|
+
* @summary Enum defining the available operators for grouping multiple conditions in database queries
|
37
|
+
* @enum {string}
|
38
|
+
* @readonly
|
39
|
+
* @memberOf module:core
|
40
|
+
*/
|
18
41
|
var GroupOperator;
|
19
42
|
(function (GroupOperator) {
|
43
|
+
/** Logical AND operator - all conditions must be true */
|
20
44
|
GroupOperator["AND"] = "AND";
|
45
|
+
/** Logical OR operator - at least one condition must be true */
|
21
46
|
GroupOperator["OR"] = "OR";
|
22
47
|
})(GroupOperator || (exports.GroupOperator = GroupOperator = {}));
|
23
|
-
|
24
|
-
(function (Const) {
|
25
|
-
Const["NULL"] = "NULL";
|
26
|
-
Const["FULL_RECORD"] = "*";
|
27
|
-
})(Const || (exports.Const = Const = {}));
|
28
|
-
/**
|
29
|
-
* @summary Defines execution order of Clauses in statements as defined in SQL.
|
30
|
-
*
|
31
|
-
* @description sub priorities where defined to better organize clauses within statements, eg From and Join Clauses
|
32
|
-
*
|
33
|
-
* @const Priority
|
34
|
-
*
|
35
|
-
* @category Clauses
|
36
|
-
* @subcategory Constants
|
37
|
-
*/
|
38
|
-
var Priority;
|
39
|
-
(function (Priority) {
|
40
|
-
/**
|
41
|
-
* @summary Defines the priority for the FROM Clause
|
42
|
-
* @description From Clause in SELECT Statements.
|
43
|
-
* Values Clause in INSERT Statements
|
44
|
-
*
|
45
|
-
* @prop FROM
|
46
|
-
*/
|
47
|
-
Priority[Priority["FROM"] = 1] = "FROM";
|
48
|
-
/**
|
49
|
-
* @summary Defines the priority for the JOIN Clause
|
50
|
-
*
|
51
|
-
* @property {number} JOIN
|
52
|
-
*/
|
53
|
-
Priority[Priority["JOIN"] = 1.1] = "JOIN";
|
54
|
-
/**
|
55
|
-
* Where Clause
|
56
|
-
*/
|
57
|
-
Priority[Priority["WHERE"] = 2] = "WHERE";
|
58
|
-
/**
|
59
|
-
* Group By Clause
|
60
|
-
*/
|
61
|
-
Priority[Priority["GROUP_BY"] = 3] = "GROUP_BY";
|
62
|
-
/**
|
63
|
-
* Having Clause
|
64
|
-
*/
|
65
|
-
Priority[Priority["HAVING"] = 4] = "HAVING";
|
66
|
-
/**
|
67
|
-
* Select Clause in SELECT Statements
|
68
|
-
* Insert Clause in INSERT Statements
|
69
|
-
*/
|
70
|
-
Priority[Priority["SELECT"] = 5] = "SELECT";
|
71
|
-
/**
|
72
|
-
* Order By Clause
|
73
|
-
*/
|
74
|
-
Priority[Priority["ORDER_BY"] = 6] = "ORDER_BY";
|
75
|
-
/**
|
76
|
-
* Limit Clause
|
77
|
-
*/
|
78
|
-
Priority[Priority["LIMIT"] = 7] = "LIMIT";
|
79
|
-
/**
|
80
|
-
* Offset Clause
|
81
|
-
*/
|
82
|
-
Priority[Priority["OFFSET"] = 7.1] = "OFFSET";
|
83
|
-
})(Priority || (exports.Priority = Priority = {}));
|
84
|
-
exports.MandatoryPriorities = [Priority.FROM, Priority.SELECT];
|
85
|
-
var StatementType;
|
86
|
-
(function (StatementType) {
|
87
|
-
StatementType["QUERY"] = "query";
|
88
|
-
StatementType["TRANSACTION"] = "transaction";
|
89
|
-
})(StatementType || (exports.StatementType = StatementType = {}));
|
90
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3F1ZXJ5L2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFZLFFBWVg7QUFaRCxXQUFZLFFBQVE7SUFDbEIsMkJBQWUsQ0FBQTtJQUNmLG1DQUF1QixDQUFBO0lBQ3ZCLDZCQUFpQixDQUFBO0lBQ2pCLG1DQUF1QixDQUFBO0lBQ3ZCLCtCQUFtQixDQUFBO0lBQ25CLHFDQUF5QixDQUFBO0lBQ3pCLHVCQUF1QjtJQUN2Qix1QkFBVyxDQUFBO0lBQ1gscUJBQVMsQ0FBQTtJQUNULGFBQWE7SUFDYiw2QkFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBWlcsUUFBUSx3QkFBUixRQUFRLFFBWW5CO0FBRUQsSUFBWSxhQUdYO0FBSEQsV0FBWSxhQUFhO0lBQ3ZCLDRCQUFXLENBQUE7SUFDWCwwQkFBUyxDQUFBO0FBQ1gsQ0FBQyxFQUhXLGFBQWEsNkJBQWIsYUFBYSxRQUd4QjtBQUVELElBQVksS0FHWDtBQUhELFdBQVksS0FBSztJQUNmLHNCQUFhLENBQUE7SUFDYiwwQkFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBSFcsS0FBSyxxQkFBTCxLQUFLLFFBR2hCO0FBRUQ7Ozs7Ozs7OztHQVNHO0FBQ0gsSUFBWSxRQTRDWDtBQTVDRCxXQUFZLFFBQVE7SUFDbEI7Ozs7OztPQU1HO0lBQ0gsdUNBQVEsQ0FBQTtJQUNSOzs7O09BSUc7SUFDSCx5Q0FBVSxDQUFBO0lBQ1Y7O09BRUc7SUFDSCx5Q0FBUyxDQUFBO0lBQ1Q7O09BRUc7SUFDSCwrQ0FBWSxDQUFBO0lBQ1o7O09BRUc7SUFDSCwyQ0FBVSxDQUFBO0lBQ1Y7OztPQUdHO0lBQ0gsMkNBQVUsQ0FBQTtJQUNWOztPQUVHO0lBQ0gsK0NBQVksQ0FBQTtJQUNaOztPQUVHO0lBQ0gseUNBQVMsQ0FBQTtJQUNUOztPQUVHO0lBQ0gsNkNBQVksQ0FBQTtBQUNkLENBQUMsRUE1Q1csUUFBUSx3QkFBUixRQUFRLFFBNENuQjtBQUVZLFFBQUEsbUJBQW1CLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUVwRSxJQUFZLGFBR1g7QUFIRCxXQUFZLGFBQWE7SUFDdkIsZ0NBQWUsQ0FBQTtJQUNmLDRDQUEyQixDQUFBO0FBQzdCLENBQUMsRUFIVyxhQUFhLDZCQUFiLGFBQWEsUUFHeEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBPcGVyYXRvciB7XG4gIEVRVUFMID0gXCJFUVVBTFwiLFxuICBESUZGRVJFTlQgPSBcIkRJRkZFUkVOVFwiLFxuICBCSUdHRVIgPSBcIkJJR0dFUlwiLFxuICBCSUdHRVJfRVEgPSBcIkJJR0dFUl9FUVwiLFxuICBTTUFMTEVSID0gXCJTTUFMTEVSXCIsXG4gIFNNQUxMRVJfRVEgPSBcIlNNQUxMRVJfRVFcIixcbiAgLy8gQkVUV0VFTiA9IFwiQkVUV0VFTlwiLFxuICBOT1QgPSBcIk5PVFwiLFxuICBJTiA9IFwiSU5cIixcbiAgLy8gSVMgPSBcIklTXCIsXG4gIFJFR0VYUCA9IFwiUkVHRVhQXCIsXG59XG5cbmV4cG9ydCBlbnVtIEdyb3VwT3BlcmF0b3Ige1xuICBBTkQgPSBcIkFORFwiLFxuICBPUiA9IFwiT1JcIixcbn1cblxuZXhwb3J0IGVudW0gQ29uc3Qge1xuICBOVUxMID0gXCJOVUxMXCIsXG4gIEZVTExfUkVDT1JEID0gXCIqXCIsXG59XG5cbi8qKlxuICogQHN1bW1hcnkgRGVmaW5lcyBleGVjdXRpb24gb3JkZXIgb2YgQ2xhdXNlcyBpbiBzdGF0ZW1lbnRzIGFzIGRlZmluZWQgaW4gU1FMLlxuICpcbiAqIEBkZXNjcmlwdGlvbiBzdWIgcHJpb3JpdGllcyB3aGVyZSBkZWZpbmVkIHRvIGJldHRlciBvcmdhbml6ZSBjbGF1c2VzIHdpdGhpbiBzdGF0ZW1lbnRzLCBlZyBGcm9tIGFuZCBKb2luIENsYXVzZXNcbiAqXG4gKiBAY29uc3QgUHJpb3JpdHlcbiAqXG4gKiBAY2F0ZWdvcnkgQ2xhdXNlc1xuICogQHN1YmNhdGVnb3J5IENvbnN0YW50c1xuICovXG5leHBvcnQgZW51bSBQcmlvcml0eSB7XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBEZWZpbmVzIHRoZSBwcmlvcml0eSBmb3IgdGhlIEZST00gQ2xhdXNlXG4gICAqIEBkZXNjcmlwdGlvbiBGcm9tIENsYXVzZSBpbiBTRUxFQ1QgU3RhdGVtZW50cy5cbiAgICogVmFsdWVzIENsYXVzZSBpbiBJTlNFUlQgU3RhdGVtZW50c1xuICAgKlxuICAgKiBAcHJvcCBGUk9NXG4gICAqL1xuICBGUk9NID0gMSxcbiAgLyoqXG4gICAqIEBzdW1tYXJ5IERlZmluZXMgdGhlIHByaW9yaXR5IGZvciB0aGUgSk9JTiBDbGF1c2VcbiAgICpcbiAgICogQHByb3BlcnR5IHtudW1iZXJ9IEpPSU5cbiAgICovXG4gIEpPSU4gPSAxLjEsXG4gIC8qKlxuICAgKiBXaGVyZSBDbGF1c2VcbiAgICovXG4gIFdIRVJFID0gMixcbiAgLyoqXG4gICAqIEdyb3VwIEJ5IENsYXVzZVxuICAgKi9cbiAgR1JPVVBfQlkgPSAzLFxuICAvKipcbiAgICogSGF2aW5nIENsYXVzZVxuICAgKi9cbiAgSEFWSU5HID0gNCxcbiAgLyoqXG4gICAqIFNlbGVjdCBDbGF1c2UgaW4gU0VMRUNUIFN0YXRlbWVudHNcbiAgICogSW5zZXJ0IENsYXVzZSBpbiBJTlNFUlQgU3RhdGVtZW50c1xuICAgKi9cbiAgU0VMRUNUID0gNSxcbiAgLyoqXG4gICAqIE9yZGVyIEJ5IENsYXVzZVxuICAgKi9cbiAgT1JERVJfQlkgPSA2LFxuICAvKipcbiAgICogTGltaXQgQ2xhdXNlXG4gICAqL1xuICBMSU1JVCA9IDcsXG4gIC8qKlxuICAgKiBPZmZzZXQgQ2xhdXNlXG4gICAqL1xuICBPRkZTRVQgPSA3LjEsXG59XG5cbmV4cG9ydCBjb25zdCBNYW5kYXRvcnlQcmlvcml0aWVzID0gW1ByaW9yaXR5LkZST00sIFByaW9yaXR5LlNFTEVDVF07XG5cbmV4cG9ydCBlbnVtIFN0YXRlbWVudFR5cGUge1xuICBRVUVSWSA9IFwicXVlcnlcIixcbiAgVFJBTlNBQ1RJT04gPSBcInRyYW5zYWN0aW9uXCIsXG59XG4iXX0=
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3F1ZXJ5L2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7Ozs7O0dBTUc7QUFDSCxJQUFZLFFBcUJYO0FBckJELFdBQVksUUFBUTtJQUNsQiwyQkFBMkI7SUFDM0IsMkJBQWUsQ0FBQTtJQUNmLGdDQUFnQztJQUNoQyxtQ0FBdUIsQ0FBQTtJQUN2QixrQ0FBa0M7SUFDbEMsNkJBQWlCLENBQUE7SUFDakIsNENBQTRDO0lBQzVDLG1DQUF1QixDQUFBO0lBQ3ZCLCtCQUErQjtJQUMvQiwrQkFBbUIsQ0FBQTtJQUNuQix5Q0FBeUM7SUFDekMscUNBQXlCLENBQUE7SUFDekIsdUJBQXVCO0lBQ3ZCLDhCQUE4QjtJQUM5Qix1QkFBVyxDQUFBO0lBQ1gsOEJBQThCO0lBQzlCLHFCQUFTLENBQUE7SUFDVCxhQUFhO0lBQ2Isa0NBQWtDO0lBQ2xDLDZCQUFpQixDQUFBO0FBQ25CLENBQUMsRUFyQlcsUUFBUSx3QkFBUixRQUFRLFFBcUJuQjtBQUVEOzs7Ozs7R0FNRztBQUNILElBQVksYUFLWDtBQUxELFdBQVksYUFBYTtJQUN2Qix5REFBeUQ7SUFDekQsNEJBQVcsQ0FBQTtJQUNYLGdFQUFnRTtJQUNoRSwwQkFBUyxDQUFBO0FBQ1gsQ0FBQyxFQUxXLGFBQWEsNkJBQWIsYUFBYSxRQUt4QiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGRlc2NyaXB0aW9uIENvbXBhcmlzb24gb3BlcmF0b3JzIGZvciBxdWVyeSBjb25kaXRpb25zXG4gKiBAc3VtbWFyeSBFbnVtIGRlZmluaW5nIHRoZSBhdmFpbGFibGUgb3BlcmF0b3JzIGZvciBjb21wYXJpbmcgdmFsdWVzIGluIGRhdGFiYXNlIHF1ZXJpZXNcbiAqIEBlbnVtIHtzdHJpbmd9XG4gKiBAcmVhZG9ubHlcbiAqIEBtZW1iZXJPZiBtb2R1bGU6Y29yZVxuICovXG5leHBvcnQgZW51bSBPcGVyYXRvciB7XG4gIC8qKiBFcXVhbCBjb21wYXJpc29uICg9KSAqL1xuICBFUVVBTCA9IFwiRVFVQUxcIixcbiAgLyoqIE5vdCBlcXVhbCBjb21wYXJpc29uICghPSkgKi9cbiAgRElGRkVSRU5UID0gXCJESUZGRVJFTlRcIixcbiAgLyoqIEdyZWF0ZXIgdGhhbiBjb21wYXJpc29uICg+KSAqL1xuICBCSUdHRVIgPSBcIkJJR0dFUlwiLFxuICAvKiogR3JlYXRlciB0aGFuIG9yIGVxdWFsIGNvbXBhcmlzb24gKD49KSAqL1xuICBCSUdHRVJfRVEgPSBcIkJJR0dFUl9FUVwiLFxuICAvKiogTGVzcyB0aGFuIGNvbXBhcmlzb24gKDwpICovXG4gIFNNQUxMRVIgPSBcIlNNQUxMRVJcIixcbiAgLyoqIExlc3MgdGhhbiBvciBlcXVhbCBjb21wYXJpc29uICg8PSkgKi9cbiAgU01BTExFUl9FUSA9IFwiU01BTExFUl9FUVwiLFxuICAvLyBCRVRXRUVOID0gXCJCRVRXRUVOXCIsXG4gIC8qKiBOZWdhdGlvbiBvcGVyYXRvciAoTk9UKSAqL1xuICBOT1QgPSBcIk5PVFwiLFxuICAvKiogSW5jbHVzaW9uIG9wZXJhdG9yIChJTikgKi9cbiAgSU4gPSBcIklOXCIsXG4gIC8vIElTID0gXCJJU1wiLFxuICAvKiogUmVndWxhciBleHByZXNzaW9uIG1hdGNoaW5nICovXG4gIFJFR0VYUCA9IFwiUkVHRVhQXCIsXG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIExvZ2ljYWwgb3BlcmF0b3JzIGZvciBjb21iaW5pbmcgcXVlcnkgY29uZGl0aW9uc1xuICogQHN1bW1hcnkgRW51bSBkZWZpbmluZyB0aGUgYXZhaWxhYmxlIG9wZXJhdG9ycyBmb3IgZ3JvdXBpbmcgbXVsdGlwbGUgY29uZGl0aW9ucyBpbiBkYXRhYmFzZSBxdWVyaWVzXG4gKiBAZW51bSB7c3RyaW5nfVxuICogQHJlYWRvbmx5XG4gKiBAbWVtYmVyT2YgbW9kdWxlOmNvcmVcbiAqL1xuZXhwb3J0IGVudW0gR3JvdXBPcGVyYXRvciB7XG4gIC8qKiBMb2dpY2FsIEFORCBvcGVyYXRvciAtIGFsbCBjb25kaXRpb25zIG11c3QgYmUgdHJ1ZSAqL1xuICBBTkQgPSBcIkFORFwiLFxuICAvKiogTG9naWNhbCBPUiBvcGVyYXRvciAtIGF0IGxlYXN0IG9uZSBjb25kaXRpb24gbXVzdCBiZSB0cnVlICovXG4gIE9SID0gXCJPUlwiLFxufVxuIl19
|
package/lib/query/constants.d.ts
CHANGED
@@ -1,79 +1,40 @@
|
|
1
|
+
/**
|
2
|
+
* @description Comparison operators for query conditions
|
3
|
+
* @summary Enum defining the available operators for comparing values in database queries
|
4
|
+
* @enum {string}
|
5
|
+
* @readonly
|
6
|
+
* @memberOf module:core
|
7
|
+
*/
|
1
8
|
export declare enum Operator {
|
9
|
+
/** Equal comparison (=) */
|
2
10
|
EQUAL = "EQUAL",
|
11
|
+
/** Not equal comparison (!=) */
|
3
12
|
DIFFERENT = "DIFFERENT",
|
13
|
+
/** Greater than comparison (>) */
|
4
14
|
BIGGER = "BIGGER",
|
15
|
+
/** Greater than or equal comparison (>=) */
|
5
16
|
BIGGER_EQ = "BIGGER_EQ",
|
17
|
+
/** Less than comparison (<) */
|
6
18
|
SMALLER = "SMALLER",
|
19
|
+
/** Less than or equal comparison (<=) */
|
7
20
|
SMALLER_EQ = "SMALLER_EQ",
|
21
|
+
/** Negation operator (NOT) */
|
8
22
|
NOT = "NOT",
|
23
|
+
/** Inclusion operator (IN) */
|
9
24
|
IN = "IN",
|
25
|
+
/** Regular expression matching */
|
10
26
|
REGEXP = "REGEXP"
|
11
27
|
}
|
28
|
+
/**
|
29
|
+
* @description Logical operators for combining query conditions
|
30
|
+
* @summary Enum defining the available operators for grouping multiple conditions in database queries
|
31
|
+
* @enum {string}
|
32
|
+
* @readonly
|
33
|
+
* @memberOf module:core
|
34
|
+
*/
|
12
35
|
export declare enum GroupOperator {
|
36
|
+
/** Logical AND operator - all conditions must be true */
|
13
37
|
AND = "AND",
|
38
|
+
/** Logical OR operator - at least one condition must be true */
|
14
39
|
OR = "OR"
|
15
40
|
}
|
16
|
-
export declare enum Const {
|
17
|
-
NULL = "NULL",
|
18
|
-
FULL_RECORD = "*"
|
19
|
-
}
|
20
|
-
/**
|
21
|
-
* @summary Defines execution order of Clauses in statements as defined in SQL.
|
22
|
-
*
|
23
|
-
* @description sub priorities where defined to better organize clauses within statements, eg From and Join Clauses
|
24
|
-
*
|
25
|
-
* @const Priority
|
26
|
-
*
|
27
|
-
* @category Clauses
|
28
|
-
* @subcategory Constants
|
29
|
-
*/
|
30
|
-
export declare enum Priority {
|
31
|
-
/**
|
32
|
-
* @summary Defines the priority for the FROM Clause
|
33
|
-
* @description From Clause in SELECT Statements.
|
34
|
-
* Values Clause in INSERT Statements
|
35
|
-
*
|
36
|
-
* @prop FROM
|
37
|
-
*/
|
38
|
-
FROM = 1,
|
39
|
-
/**
|
40
|
-
* @summary Defines the priority for the JOIN Clause
|
41
|
-
*
|
42
|
-
* @property {number} JOIN
|
43
|
-
*/
|
44
|
-
JOIN = 1.1,
|
45
|
-
/**
|
46
|
-
* Where Clause
|
47
|
-
*/
|
48
|
-
WHERE = 2,
|
49
|
-
/**
|
50
|
-
* Group By Clause
|
51
|
-
*/
|
52
|
-
GROUP_BY = 3,
|
53
|
-
/**
|
54
|
-
* Having Clause
|
55
|
-
*/
|
56
|
-
HAVING = 4,
|
57
|
-
/**
|
58
|
-
* Select Clause in SELECT Statements
|
59
|
-
* Insert Clause in INSERT Statements
|
60
|
-
*/
|
61
|
-
SELECT = 5,
|
62
|
-
/**
|
63
|
-
* Order By Clause
|
64
|
-
*/
|
65
|
-
ORDER_BY = 6,
|
66
|
-
/**
|
67
|
-
* Limit Clause
|
68
|
-
*/
|
69
|
-
LIMIT = 7,
|
70
|
-
/**
|
71
|
-
* Offset Clause
|
72
|
-
*/
|
73
|
-
OFFSET = 7.1
|
74
|
-
}
|
75
|
-
export declare const MandatoryPriorities: Priority[];
|
76
|
-
export declare enum StatementType {
|
77
|
-
QUERY = "query",
|
78
|
-
TRANSACTION = "transaction"
|
79
|
-
}
|
package/lib/query/errors.cjs
CHANGED
@@ -2,16 +2,30 @@
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.PagingError = exports.QueryError = void 0;
|
4
4
|
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
5
|
+
/**
|
6
|
+
* @description Error thrown during query operations
|
7
|
+
* @summary Represents errors that occur during query building or execution
|
8
|
+
* @param {string | Error} msg - The error message or Error object
|
9
|
+
* @class QueryError
|
10
|
+
* @category Errors
|
11
|
+
*/
|
5
12
|
class QueryError extends db_decorators_1.BaseError {
|
6
13
|
constructor(msg) {
|
7
14
|
super(QueryError.name, msg, 500);
|
8
15
|
}
|
9
16
|
}
|
10
17
|
exports.QueryError = QueryError;
|
18
|
+
/**
|
19
|
+
* @description Error thrown during pagination operations
|
20
|
+
* @summary Represents errors that occur during pagination setup or execution
|
21
|
+
* @param {string | Error} msg - The error message or Error object
|
22
|
+
* @class PagingError
|
23
|
+
* @category Errors
|
24
|
+
*/
|
11
25
|
class PagingError extends db_decorators_1.BaseError {
|
12
26
|
constructor(msg) {
|
13
27
|
super(PagingError.name, msg, 500);
|
14
28
|
}
|
15
29
|
}
|
16
30
|
exports.PagingError = PagingError;
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3F1ZXJ5L2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyREFBb0Q7QUFFcEQ7Ozs7OztHQU1HO0FBQ0gsTUFBYSxVQUFXLFNBQVEseUJBQVM7SUFDdkMsWUFBWSxHQUFtQjtRQUM3QixLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDbkMsQ0FBQztDQUNGO0FBSkQsZ0NBSUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFhLFdBQVksU0FBUSx5QkFBUztJQUN4QyxZQUFZLEdBQW1CO1FBQzdCLEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNwQyxDQUFDO0NBQ0Y7QUFKRCxrQ0FJQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VFcnJvciB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvbiBFcnJvciB0aHJvd24gZHVyaW5nIHF1ZXJ5IG9wZXJhdGlvbnNcbiAqIEBzdW1tYXJ5IFJlcHJlc2VudHMgZXJyb3JzIHRoYXQgb2NjdXIgZHVyaW5nIHF1ZXJ5IGJ1aWxkaW5nIG9yIGV4ZWN1dGlvblxuICogQHBhcmFtIHtzdHJpbmcgfCBFcnJvcn0gbXNnIC0gVGhlIGVycm9yIG1lc3NhZ2Ugb3IgRXJyb3Igb2JqZWN0XG4gKiBAY2xhc3MgUXVlcnlFcnJvclxuICogQGNhdGVnb3J5IEVycm9yc1xuICovXG5leHBvcnQgY2xhc3MgUXVlcnlFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1zZzogc3RyaW5nIHwgRXJyb3IpIHtcbiAgICBzdXBlcihRdWVyeUVycm9yLm5hbWUsIG1zZywgNTAwKTtcbiAgfVxufVxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbiBFcnJvciB0aHJvd24gZHVyaW5nIHBhZ2luYXRpb24gb3BlcmF0aW9uc1xuICogQHN1bW1hcnkgUmVwcmVzZW50cyBlcnJvcnMgdGhhdCBvY2N1ciBkdXJpbmcgcGFnaW5hdGlvbiBzZXR1cCBvciBleGVjdXRpb25cbiAqIEBwYXJhbSB7c3RyaW5nIHwgRXJyb3J9IG1zZyAtIFRoZSBlcnJvciBtZXNzYWdlIG9yIEVycm9yIG9iamVjdFxuICogQGNsYXNzIFBhZ2luZ0Vycm9yXG4gKiBAY2F0ZWdvcnkgRXJyb3JzXG4gKi9cbmV4cG9ydCBjbGFzcyBQYWdpbmdFcnJvciBleHRlbmRzIEJhc2VFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1zZzogc3RyaW5nIHwgRXJyb3IpIHtcbiAgICBzdXBlcihQYWdpbmdFcnJvci5uYW1lLCBtc2csIDUwMCk7XG4gIH1cbn1cbiJdfQ==
|
package/lib/query/errors.d.ts
CHANGED
@@ -1,7 +1,21 @@
|
|
1
1
|
import { BaseError } from "@decaf-ts/db-decorators";
|
2
|
+
/**
|
3
|
+
* @description Error thrown during query operations
|
4
|
+
* @summary Represents errors that occur during query building or execution
|
5
|
+
* @param {string | Error} msg - The error message or Error object
|
6
|
+
* @class QueryError
|
7
|
+
* @category Errors
|
8
|
+
*/
|
2
9
|
export declare class QueryError extends BaseError {
|
3
10
|
constructor(msg: string | Error);
|
4
11
|
}
|
12
|
+
/**
|
13
|
+
* @description Error thrown during pagination operations
|
14
|
+
* @summary Represents errors that occur during pagination setup or execution
|
15
|
+
* @param {string | Error} msg - The error message or Error object
|
16
|
+
* @class PagingError
|
17
|
+
* @category Errors
|
18
|
+
*/
|
5
19
|
export declare class PagingError extends BaseError {
|
6
20
|
constructor(msg: string | Error);
|
7
21
|
}
|
package/lib/query/index.cjs
CHANGED
@@ -14,16 +14,11 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
15
|
};
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
-
__exportStar(require("./clauses/index.cjs"), exports);
|
18
|
-
__exportStar(require("./Clause.cjs"), exports);
|
19
|
-
__exportStar(require("./ClauseFactory.cjs"), exports);
|
20
17
|
__exportStar(require("./Condition.cjs"), exports);
|
21
18
|
__exportStar(require("./constants.cjs"), exports);
|
22
19
|
__exportStar(require("./errors.cjs"), exports);
|
23
20
|
__exportStar(require("./options.cjs"), exports);
|
24
21
|
__exportStar(require("./Paginator.cjs"), exports);
|
25
|
-
__exportStar(require("./Query.cjs"), exports);
|
26
22
|
__exportStar(require("./selectors.cjs"), exports);
|
27
23
|
__exportStar(require("./Statement.cjs"), exports);
|
28
|
-
|
29
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcXVlcnkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHNEQUEwQjtBQUMxQiwrQ0FBeUI7QUFDekIsc0RBQWdDO0FBQ2hDLGtEQUE0QjtBQUM1QixrREFBNEI7QUFDNUIsK0NBQXlCO0FBQ3pCLGdEQUEwQjtBQUMxQixrREFBNEI7QUFDNUIsOENBQXdCO0FBQ3hCLGtEQUE0QjtBQUM1QixrREFBNEI7QUFDNUIsOENBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vY2xhdXNlc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vQ2xhdXNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9DbGF1c2VGYWN0b3J5XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9Db25kaXRpb25cIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbnN0YW50c1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXJyb3JzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9vcHRpb25zXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9QYWdpbmF0b3JcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1F1ZXJ5XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zZWxlY3RvcnNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1N0YXRlbWVudFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vdHlwZXNcIjtcbiJdfQ==
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcXVlcnkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGtEQUE0QjtBQUM1QixrREFBNEI7QUFDNUIsK0NBQXlCO0FBQ3pCLGdEQUEwQjtBQUMxQixrREFBNEI7QUFDNUIsa0RBQTRCO0FBQzVCLGtEQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL0NvbmRpdGlvblwiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9lcnJvcnNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL29wdGlvbnNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1BhZ2luYXRvclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc2VsZWN0b3JzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9TdGF0ZW1lbnRcIjtcbiJdfQ==
|
package/lib/query/index.d.ts
CHANGED
@@ -1,12 +1,7 @@
|
|
1
|
-
export * from "./clauses";
|
2
|
-
export * from "./Clause";
|
3
|
-
export * from "./ClauseFactory";
|
4
1
|
export * from "./Condition";
|
5
2
|
export * from "./constants";
|
6
3
|
export * from "./errors";
|
7
4
|
export * from "./options";
|
8
5
|
export * from "./Paginator";
|
9
|
-
export * from "./Query";
|
10
6
|
export * from "./selectors";
|
11
7
|
export * from "./Statement";
|
12
|
-
export * from "./types";
|
package/lib/query/options.cjs
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9xdWVyeS9vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktb2JqZWN0LXR5cGUgKi9cbmltcG9ydCB7XG4gIEdyb3VwQnlTZWxlY3RvcixcbiAgTGltaXRTZWxlY3RvcixcbiAgT2Zmc2V0U2VsZWN0b3IsXG4gIE9yZGVyQnlTZWxlY3RvcixcbiAgU2VsZWN0U2VsZWN0b3IsXG59IGZyb20gXCIuL3NlbGVjdG9yc1wiO1xuaW1wb3J0IHsgRXhlY3V0b3IgfSBmcm9tIFwiLi4vaW50ZXJmYWNlc1wiO1xuaW1wb3J0IHsgQ29uc3RydWN0b3IsIE1vZGVsIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgQ29uZGl0aW9uIH0gZnJvbSBcIi4vQ29uZGl0aW9uXCI7XG5pbXBvcnQgeyBQYWdpbmF0YWJsZSB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL1BhZ2luYXRhYmxlXCI7XG5cbi8qKlxuICogQHN1bW1hcnkgU3RhdGVtZW50IEJ1aWxkZXIgaW50ZXJmYWNlXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgZmluYWwgbWV0aG9kIHRvIGJ1aWxkIHRoZSBzdGF0ZW1lbnRcbiAqXG4gKiBAdHlwZWRlZiBRIFRoZSBxdWVyeSBvYmplY3QgdHlwZSB0byBidWlsZFxuICogQGludGVyZmFjZSBRdWVyeUJ1aWxkZXJcbiAqXG4gKiBAY2F0ZWdvcnkgUXVlcnlcbiAqIEBzdWJjYXRlZ29yeSBPcHRpb25zXG4gKlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFF1ZXJ5QnVpbGRlcjxRPiBleHRlbmRzIEV4ZWN1dG9yIHtcbiAgLyoqXG4gICAqIE1ldGhvZCB0byBidWlsZCBhbmQgdmFsaWRhdGUgdGhlIHByZXBhcmVkIHN0YXRlbWVudCBiZWZvcmUgdGhlIGV4ZWN1dGlvbjtcbiAgICpcbiAgICogQHRocm93cyB7UXVlcnlFcnJvcn0gIGZvciBpbnZhbGlkIHN0YXRlbWVudHNcbiAgICogQG1ldGhvZFxuICAgKi9cbiAgYnVpbGQocHJldmlvdXM6IFEpOiBRO1xufVxuXG4vKipcbiAqIEBzdW1tYXJ5IEdyb3VwQnkgT3B0aW9uIGludGVyZmFjZVxuICogQGRlc2NyaXB0aW9uIEV4cG9zZXMgdGhlIEdST1VQIEJZIG1ldGhvZCBhbmQgcmVtYWluaW5nIG9wdGlvbnNcbiAqXG4gKiBAaW50ZXJmYWNlIEdyb3VwQnlPcHRpb25cbiAqIEBleHRlbmRzIFF1ZXJ5QnVpbGRlclxuICpcbiAqIEBjYXRlZ29yeSBRdWVyeVxuICogQHN1YmNhdGVnb3J5IE9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHcm91cEJ5T3B0aW9uIGV4dGVuZHMgRXhlY3V0b3Ige1xuICAvKipcbiAgICogQHN1bW1hcnkgR3JvdXBzIHJlY29yZHMgYnkgYW4gYXR0cmlidXRlXG4gICAqXG4gICAqIEBwYXJhbSB7R3JvdXBCeVNlbGVjdG9yfSBzZWxlY3RvclxuICAgKiBAbWV0aG9kXG4gICAqL1xuICBncm91cEJ5KHNlbGVjdG9yOiBHcm91cEJ5U2VsZWN0b3IpOiBFeGVjdXRvcjtcbn1cbi8qKlxuICogQHN1bW1hcnkgT2Zmc2V0IE9wdGlvbiBpbnRlcmZhY2VcbiAqIEBkZXNjcmlwdGlvbiBFeHBvc2VzIHRoZSBPRkZTRVQgbWV0aG9kIGFuZCByZW1haW5pbmcgb3B0aW9uc1xuICpcbiAqIEBpbnRlcmZhY2UgR3JvdXBCeU9wdGlvblxuICogQGV4dGVuZHMgUXVlcnlCdWlsZGVyXG4gKlxuICogQGNhdGVnb3J5IFF1ZXJ5XG4gKiBAc3ViY2F0ZWdvcnkgT3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIE9mZnNldE9wdGlvbiBleHRlbmRzIEV4ZWN1dG9yIHtcbiAgLyoqXG4gICAqIEBzdW1tYXJ5IE9mZnNldHMgdGhlIHJlc3VsdHMgYnkgdGhlIHByb3ZpZGVkIHNlbGVjdG9yXG4gICAqXG4gICAqIEBwYXJhbSB7T2Zmc2V0U2VsZWN0b3J9IHNlbGVjdG9yXG4gICAqIEBtZXRob2RcbiAgICovXG4gIG9mZnNldChzZWxlY3RvcjogT2Zmc2V0U2VsZWN0b3IpOiBFeGVjdXRvcjtcbn1cbi8qKlxuICogQHN1bW1hcnkgTGltaXQgT3B0aW9uIGludGVyZmFjZVxuICogQGRlc2NyaXB0aW9uIEV4cG9zZXMgdGhlIExJTUlUIG1ldGhvZCBhbmQgcmVtYWluaW5nIG9wdGlvbnNcbiAqXG4gKiBAaW50ZXJmYWNlIExpbWl0T3B0aW9uXG4gKiBAZXh0ZW5kcyBRdWVyeUJ1aWxkZXJcbiAqXG4gKiBAY2F0ZWdvcnkgUXVlcnlcbiAqIEBzdWJjYXRlZ29yeSBPcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGltaXRPcHRpb24gZXh0ZW5kcyBFeGVjdXRvciwgUGFnaW5hdGFibGUge1xuICAvKipcbiAgICogQHN1bW1hcnkgTGltaXRzIHRoZSByZXN1bHRzIHRvIHRoZSBwcm92aWRlZCBudW1iZXJcbiAgICpcbiAgICogQHBhcmFtIHtMaW1pdFNlbGVjdG9yfSBzZWxlY3RvclxuICAgKiBAbWV0aG9kXG4gICAqL1xuICBsaW1pdChzZWxlY3RvcjogTGltaXRTZWxlY3Rvcik6IE9mZnNldE9wdGlvbjtcbn1cbi8qKlxuICogQHN1bW1hcnkgT3JkZXJwQnkgT3B0aW9uIGludGVyZmFjZVxuICogQGRlc2NyaXB0aW9uIEV4cG9zZXMgdGhlIE9SREVSIEJZIG1ldGhvZCBhbmQgcmVtYWluaW5nIG9wdGlvbnNcbiAqXG4gKiBAaW50ZXJmYWNlIE9yZGVyQnlPcHRpb25cbiAqIEBleHRlbmRzIFF1ZXJ5QnVpbGRlclxuICpcbiAqIEBjYXRlZ29yeSBRdWVyeVxuICogQHN1YmNhdGVnb3J5IE9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPcmRlckJ5T3B0aW9uIGV4dGVuZHMgRXhlY3V0b3IsIFBhZ2luYXRhYmxlIHtcbiAgLyoqXG4gICAqIEBzdW1tYXJ5IE9yZGVycyB0aGUgcmVzdWx0cyBieSB0aGUgcHJvdmlkZWQgYXR0cmlidXRlIGFuZCBhY2NvcmRpbmcgdG8gdGhlIHByb3ZpZGVkIGRpcmVjdGlvblxuICAgKlxuICAgKiBAcGFyYW0ge09yZGVyQnlTZWxlY3Rvcn0gc2VsZWN0b3JcbiAgICogQG1ldGhvZFxuICAgKi9cbiAgb3JkZXJCeSguLi5zZWxlY3RvcjogT3JkZXJCeVNlbGVjdG9yW10pOiBMaW1pdE9wdGlvbiAmIE9mZnNldE9wdGlvbjtcbn1cbi8qKlxuICogQHN1bW1hcnkgR3JvdXBzIHNldmVyYWwgb3JkZXIgYW5kIGdyb3VwaW5nIG9wdGlvbnNcbiAqXG4gKiBAaW50ZXJmYWNlIE9yZGVyQW5kR3JvdXBPcHRpb25cbiAqIEBleHRlbmRzIE9yZGVyQnlPcHRpb25cbiAqIEBleHRlbmRzIEdyb3VwQnlPcHRpb25cbiAqIEBleHRlbmRzIExpbWl0T3B0aW9uXG4gKiBAZXh0ZW5kcyBPZmZzZXRPcHRpb25cbiAqXG4gKiBAY2F0ZWdvcnkgUXVlcnlcbiAqIEBzdWJjYXRlZ29yeSBPcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT3JkZXJBbmRHcm91cE9wdGlvblxuICBleHRlbmRzIE9yZGVyQnlPcHRpb24sXG4gICAgR3JvdXBCeU9wdGlvbixcbiAgICBMaW1pdE9wdGlvbixcbiAgICBPZmZzZXRPcHRpb24ge31cbi8qKlxuICogQHN1bW1hcnkgV2hlcmUgT3B0aW9uIGludGVyZmFjZVxuICogQGRlc2NyaXB0aW9uIEV4cG9zZXMgdGhlIFdIRVJFIG1ldGhvZCBhbmQgcmVtYWluaW5nIG9wdGlvbnNcbiAqXG4gKiBAaW50ZXJmYWNlIFdoZXJlT3B0aW9uXG4gKiBAZXh0ZW5kcyBPcmRlckFuZEdyb3VwT3B0aW9uXG4gKlxuICogQGNhdGVnb3J5IFF1ZXJ5XG4gKiBAc3ViY2F0ZWdvcnkgT3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFdoZXJlT3B0aW9uIGV4dGVuZHMgT3JkZXJBbmRHcm91cE9wdGlvbiB7XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBmaWx0ZXIgdGhlIHJlY29yZHMgYnkgYSBjb25kaXRpb25cbiAgICpcbiAgICogQHBhcmFtIHtDb25kaXRpb259IGNvbmRpdGlvblxuICAgKiBAbWV0aG9kXG4gICAqL1xuICB3aGVyZShjb25kaXRpb246IENvbmRpdGlvbik6IE9yZGVyQW5kR3JvdXBPcHRpb247XG59XG5cbi8qKlxuICogQHN1bW1hcnkgRnJvbSBPcHRpb24gSW50ZXJmYWNlXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgRlJPTSBtZXRob2QgYW5kIHJlbWFpbmluZyBvcHRpb25zXG4gKlxuICogQGludGVyZmFjZSBGcm9tT3B0aW9uXG4gKlxuICogQGNhdGVnb3J5IFF1ZXJ5XG4gKiBAc3ViY2F0ZWdvcnkgT3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEZyb21PcHRpb248TSBleHRlbmRzIE1vZGVsPiB7XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBzZWxlY3RzIHJlY29yZHMgZnJvbSBhIHRhYmxlXG4gICAqXG4gICAqIEBwYXJhbSB7Q29uc3RydWN0b3J9IHRhYmxlTmFtZVxuICAgKiBAbWV0aG9kXG4gICAqL1xuICBmcm9tKHRhYmxlTmFtZTogQ29uc3RydWN0b3I8TT4gfCBzdHJpbmcpOiBXaGVyZU9wdGlvbjtcbn1cblxuLyoqXG4gKiBAc3VtbWFyeSBEaXN0aW5jdCBPcHRpb24gSW50ZXJmYWNlXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgcmVtYWluaW5nIG9wdGlvbnMgYWZ0ZXIgYSBESVNUSU5DVFxuICpcbiAqIEBpbnRlcmZhY2UgRGlzdGluY3RPcHRpb25cbiAqIEBleHRlbmRzIEZyb21PcHRpb25cbiAqXG4gKiBAY2F0ZWdvcnkgUXVlcnlcbiAqIEBzdWJjYXRlZ29yeSBPcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGlzdGluY3RPcHRpb248TSBleHRlbmRzIE1vZGVsPiBleHRlbmRzIEZyb21PcHRpb248TT4ge31cblxuLyoqXG4gKiBAc3VtbWFyeSBNYXggT3B0aW9uIEludGVyZmFjZVxuICogQGRlc2NyaXB0aW9uIEV4cG9zZXMgdGhlIHJlbWFpbmluZyBvcHRpb25zIGFmdGVyIGEgTUFYXG4gKlxuICogQGludGVyZmFjZSBNYXhPcHRpb25cbiAqIEBleHRlbmRzIEZyb21PcHRpb25cbiAqXG4gKiBAY2F0ZWdvcnkgUXVlcnlcbiAqIEBzdWJjYXRlZ29yeSBPcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWF4T3B0aW9uPE0gZXh0ZW5kcyBNb2RlbD4gZXh0ZW5kcyBGcm9tT3B0aW9uPE0+IHt9XG5cbi8qKlxuICogQHN1bW1hcnkgTWluIE9wdGlvbiBJbnRlcmZhY2VcbiAqIEBkZXNjcmlwdGlvbiBFeHBvc2VzIHRoZSByZW1haW5pbmcgb3B0aW9ucyBhZnRlciBhIE1JTlxuICpcbiAqIEBpbnRlcmZhY2UgTWluT3B0aW9uXG4gKiBAZXh0ZW5kcyBGcm9tT3B0aW9uXG4gKlxuICogQGNhdGVnb3J5IFF1ZXJ5XG4gKiBAc3ViY2F0ZWdvcnkgT3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIE1pbk9wdGlvbjxNIGV4dGVuZHMgTW9kZWw+IGV4dGVuZHMgRnJvbU9wdGlvbjxNPiB7fVxuXG4vKipcbiAqIEBzdW1tYXJ5IENvdW50IE9wdGlvbiBJbnRlcmZhY2VcbiAqIEBkZXNjcmlwdGlvbiBFeHBvc2VzIHRoZSByZW1haW5pbmcgb3B0aW9ucyBhZnRlciBhIENPVU5UXG4gKlxuICogQGludGVyZmFjZSBDb3VudE9wdGlvblxuICogQGV4dGVuZHMgRnJvbU9wdGlvblxuICpcbiAqIEBjYXRlZ29yeSBRdWVyeVxuICogQHN1YmNhdGVnb3J5IE9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb3VudE9wdGlvbjxNIGV4dGVuZHMgTW9kZWw+IGV4dGVuZHMgRnJvbU9wdGlvbjxNPiB7fVxuXG4vKipcbiAqIEBzdW1tYXJ5IFNlbGVjdCBPcHRpb24gSW50ZXJmYWNlXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgcmVtYWluaW5nIG9wdGlvbnMgYWZ0ZXIgYSBTRUxFQ1RcbiAqXG4gKiBAaW50ZXJmYWNlIFNlbGVjdE9wdGlvblxuICogQGV4dGVuZHMgRnJvbU9wdGlvblxuICpcbiAqIEBjYXRlZ29yeSBRdWVyeVxuICogQHN1YmNhdGVnb3J5IE9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RPcHRpb248TSBleHRlbmRzIE1vZGVsPiBleHRlbmRzIEZyb21PcHRpb248TT4ge1xuICAvKipcbiAgICogQHN1bW1hcnkgc2VsZWN0cyBkaXN0aW5jdCB2YWx1ZXNcbiAgICpcbiAgICogQHBhcmFtIHtTZWxlY3RTZWxlY3Rvcn0gc2VsZWN0b3JcbiAgICogQG1ldGhvZFxuICAgKi9cbiAgZGlzdGluY3Qoc2VsZWN0b3I6IFNlbGVjdFNlbGVjdG9yKTogRGlzdGluY3RPcHRpb248TT47XG4gIC8qKlxuICAgKiBAc3VtbWFyeSB0aGUgbWF4aW11bSB2YWx1ZVxuICAgKlxuICAgKiBAcGFyYW0ge1NlbGVjdFNlbGVjdG9yfSBzZWxlY3RvclxuICAgKiBAbWV0aG9kXG4gICAqL1xuICBtYXgoc2VsZWN0b3I6IFNlbGVjdFNlbGVjdG9yKTogTWF4T3B0aW9uPE0+O1xuICAvKipcbiAgICogQHN1bW1hcnkgc2VsZWN0cyB0aGUgbWluaW11bSB2YWx1ZVxuICAgKlxuICAgKiBAcGFyYW0ge1NlbGVjdFNlbGVjdG9yfSBzZWxlY3RvclxuICAgKiBAbWV0aG9kXG4gICAqL1xuICBtaW4oc2VsZWN0b3I6IFNlbGVjdFNlbGVjdG9yKTogTWluT3B0aW9uPE0+O1xuICAvKipcbiAgICogQHN1bW1hcnkgY291bnRzIHRoZSByZWNvcmRzXG4gICAqXG4gICAqIEBwYXJhbSB7U2VsZWN0U2VsZWN0b3J9IHNlbGVjdG9yXG4gICAqIEBtZXRob2RcbiAgICovXG4gIGNvdW50KHNlbGVjdG9yPzogU2VsZWN0U2VsZWN0b3IpOiBDb3VudE9wdGlvbjxNPjtcbn1cblxuLyoqXG4gKiBAc3VtbWFyeSBJbnRvIE9wdGlvbiBJbnRlcmZhY2VcbiAqIEBkZXNjcmlwdGlvbiBFeHBvc2VzIHRoZSByZW1haW5pbmcgb3B0aW9ucyBhZnRlciBhbiBJTlRPXG4gKlxuICogQGludGVyZmFjZSBJbnRvT3B0aW9uXG4gKlxuICogQGNhdGVnb3J5IFF1ZXJ5XG4gKiBAc3ViY2F0ZWdvcnkgT3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEludG9PcHRpb248TSBleHRlbmRzIE1vZGVsPiB7XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBzZXRzIHRoZSBtb2RlbHMgdG8gaW5zZXJ0XG4gICAqXG4gICAqIEBwYXJhbSB7VFtdfSBtb2RlbHNcbiAgICogQG1ldGhvZFxuICAgKi9cbiAgdmFsdWVzKC4uLm1vZGVsczogTVtdKTogRXhlY3V0b3I7XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBmaWx0ZXIgcmVjb3JkcyB0byBpbnNlcnRcbiAgICpcbiAgICogQHBhcmFtIHtDb25kaXRpb259IGNvbmRpdGlvblxuICAgKiBAbWV0aG9kXG4gICAqL1xuICB3aGVyZShjb25kaXRpb246IENvbmRpdGlvbik6IEV4ZWN1dG9yO1xufVxuLyoqXG4gKiBAc3VtbWFyeSBWYWx1ZXN0IE9wdGlvbiBJbnRlcmZhY2VcbiAqIEBkZXNjcmlwdGlvbiBFeHBvc2VzIHRoZSByZW1haW5pbmcgb3B0aW9ucyBhZnRlciBhIFZBTFVFU1xuICpcbiAqIEBpbnRlcmZhY2UgVmFsdWVzT3B0aW9uXG4gKiBAZXh0ZW5kcyBRdWVyeUJ1aWxkZXJcbiAqXG4gKiBAY2F0ZWdvcnkgUXVlcnlcbiAqIEBzdWJjYXRlZ29yeSBPcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmFsdWVzT3B0aW9uIGV4dGVuZHMgRXhlY3V0b3Ige31cbi8qKlxuICogQHN1bW1hcnkgSW5zZXJ0IE9wdGlvbiBJbnRlcmZhY2VcbiAqIEBkZXNjcmlwdGlvbiBFeHBvc2VzIHRoZSByZW1haW5pbmcgb3B0aW9ucyBhZnRlciBhbiBJTlNFUlRcbiAqXG4gKiBAaW50ZXJmYWNlIEluc2VydE9wdGlvblxuICpcbiAqIEBjYXRlZ29yeSBRdWVyeVxuICogQHN1YmNhdGVnb3J5IE9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnNlcnRPcHRpb248TSBleHRlbmRzIE1vZGVsPiB7XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBzZWxlY3RzIHRoZSB0YWJsZSB0byBpbnNlcnQgcmVjb3JkcyBpbnRvXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgQ29uc3RydWN0b3J9IHRhYmxlXG4gICAqIEBtZXRob2RcbiAgICovXG4gIGludG8odGFibGU6IENvbnN0cnVjdG9yPE0+KTogSW50b09wdGlvbjxNPjtcbn1cblxuLyoqXG4gKiBAc3VtbWFyeSB7QGxpbmsgT3BlcmF0b3J9IE9wdGlvbiBJbnRlcmZhY2VcbiAqIEBkZXNjcmlwdGlvbiBFeHBvc2VzIHRoZSBhdmFpbGFibGUgb3BlcmF0b3JzIGZvciBhIHtAbGluayBDb25kaXRpb259XG4gKlxuICogQGludGVyZmFjZSBBdHRyaWJ1dGVPcHRpb25cbiAqXG4gKiBAY2F0ZWdvcnkgUXVlcnlcbiAqIEBzdWJjYXRlZ29yeSBDb25kaXRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXR0cmlidXRlT3B0aW9uIHtcbiAgLyoqXG4gICAqIEBzdW1tYXJ5IFRlc3QgZXF1YWxpdHlcbiAgICpcbiAgICogQHBhcmFtIHthbnl9IHZhbCB0aGUgdmFsdWUgdG8gdGVzdFxuICAgKiBAbWV0aG9kXG4gICAqL1xuICBlcSh2YWw6IGFueSk6IENvbmRpdGlvbjtcbiAgLyoqXG4gICAqIEBzdW1tYXJ5IFRlc3QgZGlmZmVyZW5jZVxuICAgKlxuICAgKiBAcGFyYW0ge2FueX0gdmFsIHRoZSB2YWx1ZSB0byB0ZXN0XG4gICAqIEBtZXRob2RcbiAgICovXG4gIGRpZih2YWw6IGFueSk6IENvbmRpdGlvbjtcbiAgLyoqXG4gICAqIEBzdW1tYXJ5IFRlc3QgZ3JlYXRlciB0aGFuXG4gICAqXG4gICAqIEBwYXJhbSB7YW55fSB2YWwgdGhlIHZhbHVlIHRvIHRlc3RcbiAgICogQG1ldGhvZFxuICAgKi9cbiAgZ3QodmFsOiBhbnkpOiBDb25kaXRpb247XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBUZXN0IGxvd2VyIHRoYW5cbiAgICpcbiAgICogQHBhcmFtIHthbnl9IHZhbCB0aGUgdmFsdWUgdG8gdGVzdFxuICAgKiBAbWV0aG9kXG4gICAqL1xuICBsdCh2YWw6IGFueSk6IENvbmRpdGlvbjtcbiAgLyoqXG4gICAqIEBzdW1tYXJ5IFRlc3QgZ3JlYXRlciBvciBlcXVhbCB0b1xuICAgKlxuICAgKiBAcGFyYW0ge2FueX0gdmFsIHRoZSB2YWx1ZSB0byB0ZXN0XG4gICAqIEBtZXRob2RcbiAgICovXG4gIGd0ZSh2YWw6IGFueSk6IENvbmRpdGlvbjtcbiAgLyoqXG4gICAqIEBzdW1tYXJ5IFRlc3QgbG93ZXIgb3IgZXF1YWwgdG9cbiAgICpcbiAgICogQHBhcmFtIHthbnl9IHZhbCB0aGUgdmFsdWUgdG8gdGVzdFxuICAgKiBAbWV0aG9kXG4gICAqL1xuICBsdGUodmFsOiBhbnkpOiBDb25kaXRpb247XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBUZXN0IHZhbHVlIGluIGEgcmFuZ2Ugb2YgdmFsdWVzXG4gICAqIEBwYXJhbSB7YW55W119IHZhbFxuICAgKi9cbiAgaW4odmFsOiBhbnlbXSk6IENvbmRpdGlvbjtcbiAgLyoqXG4gICAqIEBzdW1tYXJ5IFRlc3QgbWF0Y2hlcyB7QGxpbmsgUmVnRXhwfVxuICAgKlxuICAgKiBAcGFyYW0ge2FueX0gdmFsIHRoZSB2YWx1ZSB0byB0ZXN0XG4gICAqIEBtZXRob2RcbiAgICovXG4gIHJlZ2V4cCh2YWw6IHN0cmluZyB8IFJlZ0V4cCk6IENvbmRpdGlvbjtcbn1cbi8qKlxuICogQHN1bW1hcnkgVGhlIHN0YXJ0aW5nIHBvaW50IGZvciBjcmVhdGluZyBDb25kaXRpb25zXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgYXZhaWxhYmxlIG9wZXJhdGlvbnMgZm9yIGEge0BsaW5rIENvbmRpdGlvbn1cbiAqXG4gKiBAaW50ZXJmYWNlIENvbmRpdGlvbkJ1aWxkZXJPcHRpb25cbiAqXG4gKiBAY2F0ZWdvcnkgUXVlcnlcbiAqIEBzdWJjYXRlZ29yeSBDb25kaXRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZGl0aW9uQnVpbGRlck9wdGlvbiB7XG4gIGF0dHJpYnV0ZShhdHRyOiBzdHJpbmcpOiBBdHRyaWJ1dGVPcHRpb247XG59XG4iXX0=
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9xdWVyeS9vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktb2JqZWN0LXR5cGUgKi9cbmltcG9ydCB7XG4gIEdyb3VwQnlTZWxlY3RvcixcbiAgTGltaXRTZWxlY3RvcixcbiAgT2Zmc2V0U2VsZWN0b3IsXG4gIE9yZGVyQnlTZWxlY3RvcixcbiAgU2VsZWN0U2VsZWN0b3IsXG59IGZyb20gXCIuL3NlbGVjdG9yc1wiO1xuaW1wb3J0IHsgRXhlY3V0b3IgfSBmcm9tIFwiLi4vaW50ZXJmYWNlc1wiO1xuaW1wb3J0IHsgQ29uc3RydWN0b3IsIE1vZGVsIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgQ29uZGl0aW9uIH0gZnJvbSBcIi4vQ29uZGl0aW9uXCI7XG5pbXBvcnQgeyBQYWdpbmF0YWJsZSB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL1BhZ2luYXRhYmxlXCI7XG5cbi8qKlxuICogQHN1bW1hcnkgR3JvdXBCeSBPcHRpb24gaW50ZXJmYWNlXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgR1JPVVAgQlkgbWV0aG9kIGFuZCByZW1haW5pbmcgb3B0aW9uc1xuICpcbiAqIEBpbnRlcmZhY2UgR3JvdXBCeU9wdGlvblxuICogQG1lbWJlck9mIG1vZHVsZTpjb3JlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR3JvdXBCeU9wdGlvbjxNIGV4dGVuZHMgTW9kZWwsIFI+IGV4dGVuZHMgRXhlY3V0b3I8Uj4ge1xuICBncm91cEJ5KHNlbGVjdG9yOiBHcm91cEJ5U2VsZWN0b3I8TT4pOiBFeGVjdXRvcjxSPjtcbn1cbi8qKlxuICogQHN1bW1hcnkgT2Zmc2V0IE9wdGlvbiBpbnRlcmZhY2VcbiAqIEBkZXNjcmlwdGlvbiBFeHBvc2VzIHRoZSBPRkZTRVQgbWV0aG9kIGFuZCByZW1haW5pbmcgb3B0aW9uc1xuICpcbiAqIEBpbnRlcmZhY2UgR3JvdXBCeU9wdGlvblxuICogQG1lbWJlck9mIG1vZHVsZTpjb3JlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT2Zmc2V0T3B0aW9uPFI+IGV4dGVuZHMgRXhlY3V0b3I8Uj4ge1xuICBvZmZzZXQoc2VsZWN0b3I6IE9mZnNldFNlbGVjdG9yKTogRXhlY3V0b3I8Uj47XG59XG4vKipcbiAqIEBzdW1tYXJ5IExpbWl0IE9wdGlvbiBpbnRlcmZhY2VcbiAqIEBkZXNjcmlwdGlvbiBFeHBvc2VzIHRoZSBMSU1JVCBtZXRob2QgYW5kIHJlbWFpbmluZyBvcHRpb25zXG4gKlxuICogQGludGVyZmFjZSBMaW1pdE9wdGlvblxuICogQG1lbWJlck9mIG1vZHVsZTpjb3JlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGltaXRPcHRpb248TSBleHRlbmRzIE1vZGVsLCBSPlxuICBleHRlbmRzIEV4ZWN1dG9yPFI+LFxuICAgIFBhZ2luYXRhYmxlPE0sIFIsIGFueT4ge1xuICBsaW1pdChzZWxlY3RvcjogTGltaXRTZWxlY3Rvcik6IE9mZnNldE9wdGlvbjxSPjtcbn1cbi8qKlxuICogQHN1bW1hcnkgT3JkZXJCeSBPcHRpb24gaW50ZXJmYWNlXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgT1JERVIgQlkgbWV0aG9kIGFuZCByZW1haW5pbmcgb3B0aW9uc1xuICpcbiAqIEBpbnRlcmZhY2UgT3JkZXJCeU9wdGlvblxuICogQG1lbWJlck9mIG1vZHVsZTpjb3JlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT3JkZXJCeU9wdGlvbjxNIGV4dGVuZHMgTW9kZWwsIFI+XG4gIGV4dGVuZHMgRXhlY3V0b3I8Uj4sXG4gICAgUGFnaW5hdGFibGU8TSwgUiwgYW55PiB7XG4gIG9yZGVyQnkoc2VsZWN0b3I6IE9yZGVyQnlTZWxlY3RvcjxNPik6IExpbWl0T3B0aW9uPE0sIFI+ICYgT2Zmc2V0T3B0aW9uPFI+O1xufVxuLyoqXG4gKiBAc3VtbWFyeSBPcmRlckJ5IE9wdGlvbiBpbnRlcmZhY2VcbiAqIEBkZXNjcmlwdGlvbiBFeHBvc2VzIHRoZSBPUkRFUiBCWSBtZXRob2QgYW5kIHJlbWFpbmluZyBvcHRpb25zXG4gKlxuICogQGludGVyZmFjZSBUaGVuQnlPcHRpb25cbiAqIEBtZW1iZXJPZiBtb2R1bGU6Y29yZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRoZW5CeU9wdGlvbjxNIGV4dGVuZHMgTW9kZWwsIFI+XG4gIGV4dGVuZHMgTGltaXRPcHRpb248TSwgUj4sXG4gICAgT2Zmc2V0T3B0aW9uPFI+LFxuICAgIEV4ZWN1dG9yPFI+LFxuICAgIFBhZ2luYXRhYmxlPE0sIFIsIGFueT4ge1xuICB0aGVuQnkoc2VsZWN0b3I6IE9yZGVyQnlTZWxlY3RvcjxNPik6IFRoZW5CeU9wdGlvbjxNLCBSPjtcbn1cbi8qKlxuICogQHN1bW1hcnkgR3JvdXBzIHNldmVyYWwgb3JkZXIgYW5kIGdyb3VwaW5nIG9wdGlvbnNcbiAqXG4gKiBAaW50ZXJmYWNlIE9yZGVyQW5kR3JvdXBPcHRpb25cbiAqIEBleHRlbmRzIE9yZGVyQnlPcHRpb25cbiAqIEBleHRlbmRzIEdyb3VwQnlPcHRpb25cbiAqIEBleHRlbmRzIExpbWl0T3B0aW9uXG4gKiBAZXh0ZW5kcyBPZmZzZXRPcHRpb25cbiAqIEBtZW1iZXJPZiBtb2R1bGU6Y29yZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIE9yZGVyQW5kR3JvdXBPcHRpb248TSBleHRlbmRzIE1vZGVsLCBSPlxuICBleHRlbmRzIE9yZGVyQnlPcHRpb248TSwgUj4sXG4gICAgRXhlY3V0b3I8Uj4sXG4gICAgR3JvdXBCeU9wdGlvbjxNLCBSPixcbiAgICBMaW1pdE9wdGlvbjxNLCBSPixcbiAgICBPZmZzZXRPcHRpb248Uj4ge31cbi8qKlxuICogQHN1bW1hcnkgV2hlcmUgT3B0aW9uIGludGVyZmFjZVxuICogQGRlc2NyaXB0aW9uIEV4cG9zZXMgdGhlIFdIRVJFIG1ldGhvZCBhbmQgcmVtYWluaW5nIG9wdGlvbnNcbiAqXG4gKiBAaW50ZXJmYWNlIFdoZXJlT3B0aW9uXG4gKiBAZXh0ZW5kcyBPcmRlckFuZEdyb3VwT3B0aW9uXG4gKiBAbWVtYmVyT2YgbW9kdWxlOmNvcmVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBXaGVyZU9wdGlvbjxNIGV4dGVuZHMgTW9kZWwsIFI+XG4gIGV4dGVuZHMgT3JkZXJBbmRHcm91cE9wdGlvbjxNLCBSPiB7XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBmaWx0ZXIgdGhlIHJlY29yZHMgYnkgYSBjb25kaXRpb25cbiAgICpcbiAgICogQHBhcmFtIHtDb25kaXRpb259IGNvbmRpdGlvblxuICAgKiBAbWV0aG9kXG4gICAqL1xuICB3aGVyZShjb25kaXRpb246IENvbmRpdGlvbjxNPik6IE9yZGVyQW5kR3JvdXBPcHRpb248TSwgUj47XG59XG5cbi8qKlxuICogQHN1bW1hcnkgRnJvbSBPcHRpb24gSW50ZXJmYWNlXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgRlJPTSBtZXRob2QgYW5kIHJlbWFpbmluZyBvcHRpb25zXG4gKlxuICogQGludGVyZmFjZSBGcm9tT3B0aW9uXG4gKiBAbWVtYmVyT2YgbW9kdWxlOmNvcmVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGcm9tT3B0aW9uPE0gZXh0ZW5kcyBNb2RlbCwgUj4ge1xuICAvKipcbiAgICogQHN1bW1hcnkgc2VsZWN0cyByZWNvcmRzIGZyb20gYSB0YWJsZVxuICAgKlxuICAgKiBAcGFyYW0ge0NvbnN0cnVjdG9yfSB0YWJsZU5hbWVcbiAgICogQG1ldGhvZFxuICAgKi9cbiAgZnJvbSh0YWJsZU5hbWU6IENvbnN0cnVjdG9yPE0+IHwgc3RyaW5nKTogV2hlcmVPcHRpb248TSwgUj47XG59XG5cbi8qKlxuICogQHN1bW1hcnkgRGlzdGluY3QgT3B0aW9uIEludGVyZmFjZVxuICogQGRlc2NyaXB0aW9uIEV4cG9zZXMgdGhlIHJlbWFpbmluZyBvcHRpb25zIGFmdGVyIGEgRElTVElOQ1RcbiAqXG4gKiBAaW50ZXJmYWNlIERpc3RpbmN0T3B0aW9uXG4gKiBAZXh0ZW5kcyBGcm9tT3B0aW9uXG4gKiBAbWVtYmVyT2YgbW9kdWxlOmNvcmVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEaXN0aW5jdE9wdGlvbjxNIGV4dGVuZHMgTW9kZWwsIFI+IGV4dGVuZHMgRnJvbU9wdGlvbjxNLCBSPiB7fVxuXG4vKipcbiAqIEBzdW1tYXJ5IE1heCBPcHRpb24gSW50ZXJmYWNlXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgcmVtYWluaW5nIG9wdGlvbnMgYWZ0ZXIgYSBNQVhcbiAqXG4gKiBAaW50ZXJmYWNlIE1heE9wdGlvblxuICogQGV4dGVuZHMgRnJvbU9wdGlvblxuICogQG1lbWJlck9mIG1vZHVsZTpjb3JlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWF4T3B0aW9uPE0gZXh0ZW5kcyBNb2RlbCwgUj4gZXh0ZW5kcyBGcm9tT3B0aW9uPE0sIFI+IHt9XG5cbi8qKlxuICogQHN1bW1hcnkgTWluIE9wdGlvbiBJbnRlcmZhY2VcbiAqIEBkZXNjcmlwdGlvbiBFeHBvc2VzIHRoZSByZW1haW5pbmcgb3B0aW9ucyBhZnRlciBhIE1JTlxuICpcbiAqIEBpbnRlcmZhY2UgTWluT3B0aW9uXG4gKiBAZXh0ZW5kcyBGcm9tT3B0aW9uXG4gKiBAbWVtYmVyT2YgbW9kdWxlOmNvcmVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNaW5PcHRpb248TSBleHRlbmRzIE1vZGVsLCBSPiBleHRlbmRzIEZyb21PcHRpb248TSwgUj4ge31cblxuLyoqXG4gKiBAc3VtbWFyeSBDb3VudCBPcHRpb24gSW50ZXJmYWNlXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgcmVtYWluaW5nIG9wdGlvbnMgYWZ0ZXIgYSBDT1VOVFxuICpcbiAqIEBpbnRlcmZhY2UgQ291bnRPcHRpb25cbiAqIEBleHRlbmRzIEZyb21PcHRpb25cbiAqIEBtZW1iZXJPZiBtb2R1bGU6Y29yZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvdW50T3B0aW9uPE0gZXh0ZW5kcyBNb2RlbCwgUj4gZXh0ZW5kcyBGcm9tT3B0aW9uPE0sIFI+IHt9XG5cbi8qKlxuICogQHN1bW1hcnkgU2VsZWN0IE9wdGlvbiBJbnRlcmZhY2VcbiAqIEBkZXNjcmlwdGlvbiBFeHBvc2VzIHRoZSByZW1haW5pbmcgb3B0aW9ucyBhZnRlciBhIFNFTEVDVFxuICpcbiAqIEBpbnRlcmZhY2UgU2VsZWN0T3B0aW9uXG4gKiBAZXh0ZW5kcyBGcm9tT3B0aW9uXG4gKiBAbWVtYmVyT2YgbW9kdWxlOmNvcmVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RPcHRpb248TSBleHRlbmRzIE1vZGVsLCBSPiBleHRlbmRzIEZyb21PcHRpb248TSwgUj4ge1xuICBkaXN0aW5jdDxTIGV4dGVuZHMgU2VsZWN0U2VsZWN0b3I8TT4+KHNlbGVjdG9yOiBTKTogRGlzdGluY3RPcHRpb248TSwgTVtTXVtdPjtcblxuICBtYXg8UyBleHRlbmRzIFNlbGVjdFNlbGVjdG9yPE0+PihzZWxlY3RvcjogUyk6IE1heE9wdGlvbjxNLCBNW1NdPjtcblxuICBtaW48UyBleHRlbmRzIFNlbGVjdFNlbGVjdG9yPE0+PihzZWxlY3RvcjogUyk6IE1pbk9wdGlvbjxNLCBNW1NdPjtcblxuICBjb3VudDxTIGV4dGVuZHMgU2VsZWN0U2VsZWN0b3I8TT4+KHNlbGVjdG9yPzogUyk6IENvdW50T3B0aW9uPE0sIG51bWJlcj47XG59XG5cbi8qKlxuICogQHN1bW1hcnkgSW50byBPcHRpb24gSW50ZXJmYWNlXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgcmVtYWluaW5nIG9wdGlvbnMgYWZ0ZXIgYW4gSU5UT1xuICpcbiAqIEBpbnRlcmZhY2UgSW50b09wdGlvblxuICogQG1lbWJlck9mIG1vZHVsZTpjb3JlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW50b09wdGlvbjxNIGV4dGVuZHMgTW9kZWwsIFI+IHtcbiAgdmFsdWVzKC4uLm1vZGVsczogTVtdKTogRXhlY3V0b3I8Uj47XG5cbiAgd2hlcmUoY29uZGl0aW9uOiBDb25kaXRpb248TT4pOiBFeGVjdXRvcjxSPjtcbn1cbi8qKlxuICogQHN1bW1hcnkgVmFsdWVzdCBPcHRpb24gSW50ZXJmYWNlXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgcmVtYWluaW5nIG9wdGlvbnMgYWZ0ZXIgYSBWQUxVRVNcbiAqXG4gKiBAaW50ZXJmYWNlIFZhbHVlc09wdGlvblxuICogQG1lbWJlck9mIG1vZHVsZTpjb3JlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmFsdWVzT3B0aW9uPE0gZXh0ZW5kcyBNb2RlbD4gZXh0ZW5kcyBFeGVjdXRvcjxNPiB7fVxuLyoqXG4gKiBAc3VtbWFyeSBJbnNlcnQgT3B0aW9uIEludGVyZmFjZVxuICogQGRlc2NyaXB0aW9uIEV4cG9zZXMgdGhlIHJlbWFpbmluZyBvcHRpb25zIGFmdGVyIGFuIElOU0VSVFxuICpcbiAqIEBpbnRlcmZhY2UgSW5zZXJ0T3B0aW9uXG4gKiBAbWVtYmVyT2YgbW9kdWxlOmNvcmVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnNlcnRPcHRpb248TSBleHRlbmRzIE1vZGVsLCBSID0gdm9pZD4ge1xuICAvKipcbiAgICogQHN1bW1hcnkgc2VsZWN0cyB0aGUgdGFibGUgdG8gaW5zZXJ0IHJlY29yZHMgaW50b1xuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZyB8IENvbnN0cnVjdG9yfSB0YWJsZVxuICAgKiBAbWV0aG9kXG4gICAqL1xuICBpbnRvKHRhYmxlOiBDb25zdHJ1Y3RvcjxNPik6IEludG9PcHRpb248TSwgUj47XG59XG5cbi8qKlxuICogQHN1bW1hcnkge0BsaW5rIE9wZXJhdG9yfSBPcHRpb24gSW50ZXJmYWNlXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgYXZhaWxhYmxlIG9wZXJhdG9ycyBmb3IgYSB7QGxpbmsgQ29uZGl0aW9ufVxuICpcbiAqIEBpbnRlcmZhY2UgQXR0cmlidXRlT3B0aW9uXG4gKiBAbWVtYmVyT2YgbW9kdWxlOmNvcmVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBdHRyaWJ1dGVPcHRpb248TSBleHRlbmRzIE1vZGVsPiB7XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBUZXN0IGVxdWFsaXR5XG4gICAqXG4gICAqIEBwYXJhbSB7YW55fSB2YWwgdGhlIHZhbHVlIHRvIHRlc3RcbiAgICogQG1ldGhvZFxuICAgKi9cbiAgZXEodmFsOiBhbnkpOiBDb25kaXRpb248TT47XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBUZXN0IGRpZmZlcmVuY2VcbiAgICpcbiAgICogQHBhcmFtIHthbnl9IHZhbCB0aGUgdmFsdWUgdG8gdGVzdFxuICAgKiBAbWV0aG9kXG4gICAqL1xuICBkaWYodmFsOiBhbnkpOiBDb25kaXRpb248TT47XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBUZXN0IGdyZWF0ZXIgdGhhblxuICAgKlxuICAgKiBAcGFyYW0ge2FueX0gdmFsIHRoZSB2YWx1ZSB0byB0ZXN0XG4gICAqIEBtZXRob2RcbiAgICovXG4gIGd0KHZhbDogYW55KTogQ29uZGl0aW9uPE0+O1xuICAvKipcbiAgICogQHN1bW1hcnkgVGVzdCBsb3dlciB0aGFuXG4gICAqXG4gICAqIEBwYXJhbSB7YW55fSB2YWwgdGhlIHZhbHVlIHRvIHRlc3RcbiAgICogQG1ldGhvZFxuICAgKi9cbiAgbHQodmFsOiBhbnkpOiBDb25kaXRpb248TT47XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBUZXN0IGdyZWF0ZXIgb3IgZXF1YWwgdG9cbiAgICpcbiAgICogQHBhcmFtIHthbnl9IHZhbCB0aGUgdmFsdWUgdG8gdGVzdFxuICAgKiBAbWV0aG9kXG4gICAqL1xuICBndGUodmFsOiBhbnkpOiBDb25kaXRpb248TT47XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBUZXN0IGxvd2VyIG9yIGVxdWFsIHRvXG4gICAqXG4gICAqIEBwYXJhbSB7YW55fSB2YWwgdGhlIHZhbHVlIHRvIHRlc3RcbiAgICogQG1ldGhvZFxuICAgKi9cbiAgbHRlKHZhbDogYW55KTogQ29uZGl0aW9uPE0+O1xuICAvKipcbiAgICogQHN1bW1hcnkgVGVzdCB2YWx1ZSBpbiBhIHJhbmdlIG9mIHZhbHVlc1xuICAgKiBAcGFyYW0ge2FueVtdfSB2YWxcbiAgICovXG4gIGluKHZhbDogYW55W10pOiBDb25kaXRpb248TT47XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBUZXN0IG1hdGNoZXMge0BsaW5rIFJlZ0V4cH1cbiAgICpcbiAgICogQHBhcmFtIHthbnl9IHZhbCB0aGUgdmFsdWUgdG8gdGVzdFxuICAgKiBAbWV0aG9kXG4gICAqL1xuICByZWdleHAodmFsOiBzdHJpbmcgfCBSZWdFeHApOiBDb25kaXRpb248TT47XG59XG4vKipcbiAqIEBkZXNjcmlwdGlvbiBUaGUgc3RhcnRpbmcgcG9pbnQgZm9yIGNyZWF0aW5nIHF1ZXJ5IGNvbmRpdGlvbnNcbiAqIEBzdW1tYXJ5IEV4cG9zZXMgdGhlIGF2YWlsYWJsZSBvcGVyYXRpb25zIGZvciBidWlsZGluZyBkYXRhYmFzZSBxdWVyeSBjb25kaXRpb25zXG4gKiBAdGVtcGxhdGUgTSAtIFRoZSBtb2RlbCB0eXBlIHRoaXMgY29uZGl0aW9uIGJ1aWxkZXIgb3BlcmF0ZXMgb25cbiAqIEBpbnRlcmZhY2UgQ29uZGl0aW9uQnVpbGRlck9wdGlvblxuICogQG1lbWJlck9mIG1vZHVsZTpjb3JlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZGl0aW9uQnVpbGRlck9wdGlvbjxNIGV4dGVuZHMgTW9kZWw+IHtcbiAgYXR0cmlidXRlKGF0dHI6IGtleW9mIE0pOiBBdHRyaWJ1dGVPcHRpb248TT47XG59XG4iXX0=
|