@decaf-ts/for-couchdb 0.6.3 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/for-couchdb.cjs +1 -1
- package/dist/for-couchdb.cjs.map +1 -1
- package/dist/for-couchdb.js +1 -1
- package/dist/for-couchdb.js.map +1 -1
- package/lib/cjs/adapter.js.map +1 -0
- package/lib/cjs/constants.js.map +1 -0
- package/lib/cjs/decorators.js.map +1 -0
- package/lib/cjs/errors.js.map +1 -0
- package/lib/{index.cjs → cjs/index.cjs} +1 -1
- package/lib/cjs/index.js.map +1 -0
- package/lib/cjs/indexes/generator.js.map +1 -0
- package/lib/cjs/indexes/index.js.map +1 -0
- package/lib/cjs/metadata.js.map +1 -0
- package/lib/cjs/query/Paginator.js.map +1 -0
- package/lib/{query → cjs/query}/Statement.cjs +60 -0
- package/lib/cjs/query/Statement.js.map +1 -0
- package/lib/cjs/query/constants.js.map +1 -0
- package/lib/cjs/query/index.js.map +1 -0
- package/lib/cjs/query/translate.js.map +1 -0
- package/lib/cjs/repository.js.map +1 -0
- package/lib/{views → cjs}/types.js.map +1 -1
- package/lib/cjs/utils.js.map +1 -0
- package/lib/cjs/views/generator.js.map +1 -0
- package/lib/cjs/views/index.js.map +1 -0
- package/lib/cjs/views/types.js.map +1 -0
- package/lib/esm/index.js +1 -1
- package/lib/esm/query/Statement.js +61 -1
- package/lib/esm/query/Statement.js.map +1 -1
- package/lib/{esm → types}/index.d.ts +1 -1
- package/lib/{query → types/query}/Statement.d.ts +3 -1
- package/package.json +15 -8
- package/lib/adapter.js.map +0 -1
- package/lib/constants.js.map +0 -1
- package/lib/decorators.js.map +0 -1
- package/lib/errors.js.map +0 -1
- package/lib/esm/adapter.d.ts +0 -296
- package/lib/esm/constants.d.ts +0 -42
- package/lib/esm/decorators.d.ts +0 -8
- package/lib/esm/errors.d.ts +0 -21
- package/lib/esm/query/Statement.d.ts +0 -193
- package/lib/index.d.ts +0 -28
- package/lib/index.js.map +0 -1
- package/lib/indexes/generator.d.ts +0 -51
- package/lib/indexes/generator.js.map +0 -1
- package/lib/indexes/index.d.ts +0 -1
- package/lib/indexes/index.js.map +0 -1
- package/lib/metadata.d.ts +0 -4
- package/lib/metadata.js.map +0 -1
- package/lib/query/Paginator.d.ts +0 -105
- package/lib/query/Paginator.js.map +0 -1
- package/lib/query/Statement.js.map +0 -1
- package/lib/query/constants.d.ts +0 -47
- package/lib/query/constants.js.map +0 -1
- package/lib/query/index.d.ts +0 -4
- package/lib/query/index.js.map +0 -1
- package/lib/query/translate.d.ts +0 -34
- package/lib/query/translate.js.map +0 -1
- package/lib/repository.d.ts +0 -39
- package/lib/repository.js.map +0 -1
- package/lib/types.d.ts +0 -166
- package/lib/types.js.map +0 -1
- package/lib/utils.d.ts +0 -112
- package/lib/utils.js.map +0 -1
- package/lib/views/generator.d.ts +0 -13
- package/lib/views/generator.js.map +0 -1
- package/lib/views/index.d.ts +0 -2
- package/lib/views/index.js.map +0 -1
- package/lib/views/types.d.ts +0 -30
- /package/lib/{adapter.cjs → cjs/adapter.cjs} +0 -0
- /package/lib/{constants.cjs → cjs/constants.cjs} +0 -0
- /package/lib/{decorators.cjs → cjs/decorators.cjs} +0 -0
- /package/lib/{errors.cjs → cjs/errors.cjs} +0 -0
- /package/lib/{indexes → cjs/indexes}/generator.cjs +0 -0
- /package/lib/{indexes → cjs/indexes}/index.cjs +0 -0
- /package/lib/{metadata.cjs → cjs/metadata.cjs} +0 -0
- /package/lib/{query → cjs/query}/Paginator.cjs +0 -0
- /package/lib/{query → cjs/query}/constants.cjs +0 -0
- /package/lib/{query → cjs/query}/index.cjs +0 -0
- /package/lib/{query → cjs/query}/translate.cjs +0 -0
- /package/lib/{repository.cjs → cjs/repository.cjs} +0 -0
- /package/lib/{types.cjs → cjs/types.cjs} +0 -0
- /package/lib/{utils.cjs → cjs/utils.cjs} +0 -0
- /package/lib/{views → cjs/views}/generator.cjs +0 -0
- /package/lib/{views → cjs/views}/index.cjs +0 -0
- /package/lib/{views → cjs/views}/types.cjs +0 -0
- /package/lib/{adapter.d.ts → types/adapter.d.ts} +0 -0
- /package/lib/{constants.d.ts → types/constants.d.ts} +0 -0
- /package/lib/{decorators.d.ts → types/decorators.d.ts} +0 -0
- /package/lib/{errors.d.ts → types/errors.d.ts} +0 -0
- /package/lib/{esm → types}/indexes/generator.d.ts +0 -0
- /package/lib/{esm → types}/indexes/index.d.ts +0 -0
- /package/lib/{esm → types}/metadata.d.ts +0 -0
- /package/lib/{esm → types}/query/Paginator.d.ts +0 -0
- /package/lib/{esm → types}/query/constants.d.ts +0 -0
- /package/lib/{esm → types}/query/index.d.ts +0 -0
- /package/lib/{esm → types}/query/translate.d.ts +0 -0
- /package/lib/{esm → types}/repository.d.ts +0 -0
- /package/lib/{esm → types}/types.d.ts +0 -0
- /package/lib/{esm → types}/utils.d.ts +0 -0
- /package/lib/{esm → types}/views/generator.d.ts +0 -0
- /package/lib/{esm → types}/views/index.d.ts +0 -0
- /package/lib/{esm → types}/views/types.d.ts +0 -0
|
@@ -1,193 +0,0 @@
|
|
|
1
|
-
import { Adapter, AdapterFlags, Condition, ContextOf, SelectSelector, Statement, UnsupportedError, ViewKind } from "@decaf-ts/core";
|
|
2
|
-
import { MangoQuery, ViewResponse } from "../types";
|
|
3
|
-
import { Model } from "@decaf-ts/decorator-validation";
|
|
4
|
-
import { CouchDBViewMetadata } from "../views/types";
|
|
5
|
-
import { CouchDBAdapter } from "../adapter";
|
|
6
|
-
type CouchDBViewDescriptor = {
|
|
7
|
-
ddoc: string;
|
|
8
|
-
view: string;
|
|
9
|
-
options: Record<string, any>;
|
|
10
|
-
};
|
|
11
|
-
type CouchDBAggregateInfo = {
|
|
12
|
-
kind: ViewKind;
|
|
13
|
-
meta: CouchDBViewMetadata;
|
|
14
|
-
descriptor: CouchDBViewDescriptor;
|
|
15
|
-
countDistinct?: boolean;
|
|
16
|
-
} | {
|
|
17
|
-
kind: "avg";
|
|
18
|
-
attribute: string;
|
|
19
|
-
sumDescriptor: CouchDBViewDescriptor;
|
|
20
|
-
countDescriptor: CouchDBViewDescriptor;
|
|
21
|
-
};
|
|
22
|
-
/**
|
|
23
|
-
* @description Statement builder for CouchDB Mango queries
|
|
24
|
-
* @summary Provides a fluent interface for building CouchDB Mango queries with type safety
|
|
25
|
-
* @template M - The model type that extends Model
|
|
26
|
-
* @template R - The result type
|
|
27
|
-
* @param adapter - The CouchDB adapter
|
|
28
|
-
* @class CouchDBStatement
|
|
29
|
-
* @example
|
|
30
|
-
* // Example of using CouchDBStatement
|
|
31
|
-
* const adapter = new MyCouchDBAdapter(scope);
|
|
32
|
-
* const statement = new CouchDBStatement<User, User[]>(adapter);
|
|
33
|
-
*
|
|
34
|
-
* // Build a query
|
|
35
|
-
* const users = await statement
|
|
36
|
-
* .from(User)
|
|
37
|
-
* .where(Condition.attribute<User>('age').gt(18))
|
|
38
|
-
* .orderBy('lastName', 'asc')
|
|
39
|
-
* .limit(10)
|
|
40
|
-
* .execute();
|
|
41
|
-
*/
|
|
42
|
-
export declare class CouchDBStatement<M extends Model, A extends Adapter<any, any, MangoQuery, any>, R> extends Statement<M, A, R, MangoQuery> {
|
|
43
|
-
protected manualAggregation?: CouchDBAggregateInfo;
|
|
44
|
-
protected attributeTypeCache: Map<string, string | undefined>;
|
|
45
|
-
constructor(adapter: A, overrides?: Partial<AdapterFlags>);
|
|
46
|
-
/**
|
|
47
|
-
* @description Builds a CouchDB Mango query from the statement
|
|
48
|
-
* @summary Converts the statement's conditions, selectors, and options into a CouchDB Mango query
|
|
49
|
-
* @return {MangoQuery} The built Mango query
|
|
50
|
-
* @throws {Error} If there are invalid query conditions
|
|
51
|
-
* @mermaid
|
|
52
|
-
* sequenceDiagram
|
|
53
|
-
* participant Statement
|
|
54
|
-
* participant Repository
|
|
55
|
-
* participant parseCondition
|
|
56
|
-
*
|
|
57
|
-
* Statement->>Statement: build()
|
|
58
|
-
* Note over Statement: Initialize selectors
|
|
59
|
-
* Statement->>Repository: Get table name
|
|
60
|
-
* Repository-->>Statement: Return table name
|
|
61
|
-
* Statement->>Statement: Create base query
|
|
62
|
-
*
|
|
63
|
-
* alt Has selectSelector
|
|
64
|
-
* Statement->>Statement: Add fields to query
|
|
65
|
-
* end
|
|
66
|
-
*
|
|
67
|
-
* alt Has whereCondition
|
|
68
|
-
* Statement->>Statement: Create combined condition with table
|
|
69
|
-
* Statement->>parseCondition: Parse condition
|
|
70
|
-
* parseCondition-->>Statement: Return parsed condition
|
|
71
|
-
*
|
|
72
|
-
* alt Is group operator
|
|
73
|
-
* alt Is AND operator
|
|
74
|
-
* Statement->>Statement: Flatten nested AND conditions
|
|
75
|
-
* else Is OR operator
|
|
76
|
-
* Statement->>Statement: Combine with table condition
|
|
77
|
-
* else
|
|
78
|
-
* Statement->>Statement: Throw error
|
|
79
|
-
* end
|
|
80
|
-
* else
|
|
81
|
-
* Statement->>Statement: Merge conditions with existing selector
|
|
82
|
-
* end
|
|
83
|
-
* end
|
|
84
|
-
*
|
|
85
|
-
* alt Has orderBySelector
|
|
86
|
-
* Statement->>Statement: Add sort to query
|
|
87
|
-
* Statement->>Statement: Ensure field exists in selector
|
|
88
|
-
* end
|
|
89
|
-
*
|
|
90
|
-
* alt Has limitSelector
|
|
91
|
-
* Statement->>Statement: Set limit
|
|
92
|
-
* else
|
|
93
|
-
* Statement->>Statement: Use default limit
|
|
94
|
-
* end
|
|
95
|
-
*
|
|
96
|
-
* alt Has offsetSelector
|
|
97
|
-
* Statement->>Statement: Set skip
|
|
98
|
-
* end
|
|
99
|
-
*
|
|
100
|
-
* Statement-->>Statement: Return query
|
|
101
|
-
*/
|
|
102
|
-
protected build(): MangoQuery;
|
|
103
|
-
/**
|
|
104
|
-
* @description Processes a record from CouchDB
|
|
105
|
-
* @summary Extracts the ID from a CouchDB document and reverts it to a model instance
|
|
106
|
-
* @param {any} r - The raw record from CouchDB
|
|
107
|
-
* @param pkAttr - The primary key attribute of the model
|
|
108
|
-
* @param {"Number" | "BigInt" | undefined} sequenceType - The type of the sequence
|
|
109
|
-
* @return {any} The processed record
|
|
110
|
-
*/
|
|
111
|
-
protected processRecord(record: any, ctx: ContextOf<A>): M;
|
|
112
|
-
/**
|
|
113
|
-
* @description Executes a raw Mango query
|
|
114
|
-
* @summary Sends a raw Mango query to CouchDB and processes the results
|
|
115
|
-
* @template R - The result type
|
|
116
|
-
* @param {MangoQuery} rawInput - The raw Mango query to execute
|
|
117
|
-
* @return {Promise<R>} A promise that resolves to the query results
|
|
118
|
-
*/
|
|
119
|
-
raw<R>(rawInput: MangoQuery, ...args: any[]): Promise<R>;
|
|
120
|
-
/**
|
|
121
|
-
* @description Parses a condition into a CouchDB Mango query selector
|
|
122
|
-
* @summary Converts a Condition object into a CouchDB Mango query selector structure
|
|
123
|
-
* @param {Condition<M>} condition - The condition to parse
|
|
124
|
-
* @return {MangoQuery} The Mango query with the parsed condition as its selector
|
|
125
|
-
* @mermaid
|
|
126
|
-
* sequenceDiagram
|
|
127
|
-
* participant Statement
|
|
128
|
-
* participant translateOperators
|
|
129
|
-
* participant merge
|
|
130
|
-
*
|
|
131
|
-
* Statement->>Statement: parseCondition(condition)
|
|
132
|
-
*
|
|
133
|
-
* Note over Statement: Extract condition parts
|
|
134
|
-
*
|
|
135
|
-
* alt Simple comparison operator
|
|
136
|
-
* Statement->>translateOperators: translateOperators(operator)
|
|
137
|
-
* translateOperators-->>Statement: Return CouchDB operator
|
|
138
|
-
* Statement->>Statement: Create selector with attribute and operator
|
|
139
|
-
* else NOT operator
|
|
140
|
-
* Statement->>Statement: parseCondition(attr1)
|
|
141
|
-
* Statement->>translateOperators: translateOperators(Operator.NOT)
|
|
142
|
-
* translateOperators-->>Statement: Return CouchDB NOT operator
|
|
143
|
-
* Statement->>Statement: Create negated selector
|
|
144
|
-
* else AND/OR operator
|
|
145
|
-
* Statement->>Statement: parseCondition(attr1)
|
|
146
|
-
* Statement->>Statement: parseCondition(comparison)
|
|
147
|
-
* Statement->>translateOperators: translateOperators(operator)
|
|
148
|
-
* translateOperators-->>Statement: Return CouchDB group operator
|
|
149
|
-
* Statement->>merge: merge(operator, op1, op2)
|
|
150
|
-
* merge-->>Statement: Return merged selector
|
|
151
|
-
* end
|
|
152
|
-
*
|
|
153
|
-
* Statement-->>Statement: Return query with selector
|
|
154
|
-
*/
|
|
155
|
-
protected buildAggregateInfo(): CouchDBAggregateInfo | undefined;
|
|
156
|
-
protected createAggregateDescriptor(kind: ViewKind, attribute?: string): Extract<CouchDBAggregateInfo, {
|
|
157
|
-
kind: ViewKind;
|
|
158
|
-
}> | undefined;
|
|
159
|
-
protected createAggregateQuery(info: CouchDBAggregateInfo): MangoQuery & {
|
|
160
|
-
aggregate: true;
|
|
161
|
-
aggregateInfo: CouchDBAggregateInfo;
|
|
162
|
-
};
|
|
163
|
-
protected shouldUseManualAggregation(): boolean;
|
|
164
|
-
protected executeAggregate<R>(info: CouchDBAggregateInfo, ctx: ContextOf<A>): Promise<R>;
|
|
165
|
-
protected handleAverage<R>(info: CouchDBAggregateInfo, ctx: ContextOf<A>): Promise<R>;
|
|
166
|
-
protected executeManualAggregation<R>(docs: any[], info: CouchDBAggregateInfo, ctx: ContextOf<A>): R;
|
|
167
|
-
protected computeCount<R>(docs: any[], attribute?: string): R;
|
|
168
|
-
protected computeDistinctCount<R>(docs: any[], attribute?: string): R;
|
|
169
|
-
protected computeDistinctValues<R>(docs: any[], attribute?: string): R;
|
|
170
|
-
protected computeSum<R>(docs: any[], attribute?: string): R;
|
|
171
|
-
protected computeAverage<R>(docs: any[], attribute?: string): R;
|
|
172
|
-
protected computeMinMax<R>(docs: any[], attribute: string | undefined, mode: "min" | "max"): R;
|
|
173
|
-
protected computeGroupBy<R>(docs: any[], attribute: string): R;
|
|
174
|
-
protected groupSelectResults(docs: any[]): Record<string, any[]>;
|
|
175
|
-
protected collectValues(docs: any[], attribute: string): any[];
|
|
176
|
-
protected convertValueByAttribute(attribute: string, value: any): any;
|
|
177
|
-
protected getAttributeType(attribute?: string): string | undefined;
|
|
178
|
-
protected normalizeMetaType(metaType: any): string | undefined;
|
|
179
|
-
protected normalizeComparable(value: any): number | null;
|
|
180
|
-
protected groupKey(value: any): string;
|
|
181
|
-
protected toNumericValue(value: any, field: string, context: string): number;
|
|
182
|
-
protected convertAggregateValue(attribute: string | undefined, value: any): any;
|
|
183
|
-
protected resolveSelectorAttribute(selector?: SelectSelector<M> | null): string | undefined;
|
|
184
|
-
protected missingDecorator(kind: ViewKind | "avg", attribute?: string): UnsupportedError;
|
|
185
|
-
protected decoratorForKind(kind: ViewKind | "avg"): string;
|
|
186
|
-
protected processViewResponse<R>(info: CouchDBAggregateInfo, response: ViewResponse): R;
|
|
187
|
-
protected isViewAggregate(info: CouchDBAggregateInfo): info is Extract<CouchDBAggregateInfo, {
|
|
188
|
-
kind: ViewKind;
|
|
189
|
-
}>;
|
|
190
|
-
protected getCouchAdapter(): CouchDBAdapter<any, any, any>;
|
|
191
|
-
protected parseCondition(condition: Condition<M>): MangoQuery;
|
|
192
|
-
}
|
|
193
|
-
export {};
|
package/lib/index.d.ts
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
export * from "./indexes";
|
|
2
|
-
export * from "./repository";
|
|
3
|
-
export * from "./adapter";
|
|
4
|
-
export * from "./constants";
|
|
5
|
-
export * from "./errors";
|
|
6
|
-
export * from "./metadata";
|
|
7
|
-
export * from "./decorators";
|
|
8
|
-
export * from "./types";
|
|
9
|
-
export * from "./utils";
|
|
10
|
-
export * from "./query";
|
|
11
|
-
export * from "./views";
|
|
12
|
-
/**
|
|
13
|
-
* @description CouchDB adapter for Decaf.ts
|
|
14
|
-
* @summary A TypeScript adapter for CouchDB database operations, providing a seamless integration with the Decaf.ts framework. This module includes classes, interfaces, and utilities for working with CouchDB databases, including support for Mango queries, document operations, and sequence management.
|
|
15
|
-
* @module for-couchdb
|
|
16
|
-
*/
|
|
17
|
-
/**
|
|
18
|
-
* @description Stores the current package version
|
|
19
|
-
* @summary The version string of the for-couchdb package
|
|
20
|
-
* @const VERSION
|
|
21
|
-
*/
|
|
22
|
-
export declare const VERSION = "0.6.2";
|
|
23
|
-
/**
|
|
24
|
-
* @description Stores the current package name
|
|
25
|
-
* @summary The version string of the for-couchdb package
|
|
26
|
-
* @const PACKAGE_NAME
|
|
27
|
-
*/
|
|
28
|
-
export declare const PACKAGE_NAME = "@decaf-ts/for-couchdb";
|
package/lib/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qDAAgD;AAEhD,sDAA0B;AAC1B,mDAA6B;AAC7B,gDAA0B;AAC1B,kDAA4B;AAC5B,+CAAyB;AACzB,iDAA2B;AAC3B,mDAA6B;AAC7B,8CAAwB;AACxB,8CAAwB;AACxB,oDAAwB;AACxB,oDAAwB;AAExB;;;;GAIG;AAEH;;;;GAIG;AACU,QAAA,OAAO,GAAG,aAAa,CAAC;AAErC;;;;GAIG;AACU,QAAA,YAAY,GAAG,aAAa,CAAC;AAE1C,qBAAQ,CAAC,eAAe,CAAC,oBAAY,EAAE,eAAO,CAAC,CAAC"}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { Model } from "@decaf-ts/decorator-validation";
|
|
2
|
-
import { CreateIndexRequest } from "../types";
|
|
3
|
-
import { Constructor } from "@decaf-ts/decoration";
|
|
4
|
-
/**
|
|
5
|
-
* @description Generates CouchDB index configurations for models
|
|
6
|
-
* @summary Creates a set of CouchDB index configurations based on the metadata of the provided models
|
|
7
|
-
* @template M - The model type that extends Model
|
|
8
|
-
* @param models - Array of model constructors to generate indexes for
|
|
9
|
-
* @return {CreateIndexRequest[]} Array of CouchDB index configurations
|
|
10
|
-
* @function generateIndexes
|
|
11
|
-
* @memberOf module:for-couchdb
|
|
12
|
-
* @mermaid
|
|
13
|
-
* sequenceDiagram
|
|
14
|
-
* participant Caller
|
|
15
|
-
* participant generateIndexes
|
|
16
|
-
* participant generateIndexName
|
|
17
|
-
* participant Repository
|
|
18
|
-
*
|
|
19
|
-
* Caller->>generateIndexes: models
|
|
20
|
-
*
|
|
21
|
-
* Note over generateIndexes: Create base table index
|
|
22
|
-
* generateIndexes->>generateIndexName: [CouchDBKeys.TABLE]
|
|
23
|
-
* generateIndexName-->>generateIndexes: tableName
|
|
24
|
-
* generateIndexes->>generateIndexes: Create table index config
|
|
25
|
-
*
|
|
26
|
-
* loop For each model
|
|
27
|
-
* generateIndexes->>Repository: Get indexes metadata
|
|
28
|
-
* Repository-->>generateIndexes: index metadata
|
|
29
|
-
*
|
|
30
|
-
* loop For each index in metadata
|
|
31
|
-
* Note over generateIndexes: Extract index properties
|
|
32
|
-
* generateIndexes->>Repository: Get table name
|
|
33
|
-
* Repository-->>generateIndexes: tableName
|
|
34
|
-
*
|
|
35
|
-
* Note over generateIndexes: Define nested generate function
|
|
36
|
-
*
|
|
37
|
-
* generateIndexes->>generateIndexes: Call generate() for default order
|
|
38
|
-
* Note over generateIndexes: Create index name and config
|
|
39
|
-
*
|
|
40
|
-
* alt Has directions
|
|
41
|
-
* loop For each direction
|
|
42
|
-
* generateIndexes->>generateIndexes: Call generate(direction)
|
|
43
|
-
* Note over generateIndexes: Create ordered index config
|
|
44
|
-
* end
|
|
45
|
-
* end
|
|
46
|
-
* end
|
|
47
|
-
* end
|
|
48
|
-
*
|
|
49
|
-
* generateIndexes-->>Caller: Array of index configurations
|
|
50
|
-
*/
|
|
51
|
-
export declare function generateIndexes<M extends Model>(models: Constructor<M>[]): CreateIndexRequest[];
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../src/indexes/generator.ts"],"names":[],"mappings":"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"}
|
package/lib/indexes/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./generator";
|
package/lib/indexes/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/indexes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAA4B"}
|
package/lib/metadata.d.ts
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { Model } from "@decaf-ts/decorator-validation";
|
|
2
|
-
export declare function setMetadata<M extends Model>(model: M, metadata: any): void;
|
|
3
|
-
export declare function getMetadata<M extends Model>(model: M): any;
|
|
4
|
-
export declare function removeMetadata<M extends Model>(model: M): void;
|
package/lib/metadata.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":";;AAGA,kCAOC;AAED,kCAMC;AAED,wCAMC;AA1BD,yCAAiD;AAGjD,SAAgB,WAAW,CAAkB,KAAQ,EAAE,QAAa;IAClE,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,sBAAe,CAAC,QAAQ,EAAE;QACrD,UAAU,EAAE,KAAK;QACjB,YAAY,EAAE,IAAI;QAClB,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,QAAQ;KAChB,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,WAAW,CAAkB,KAAQ;IACnD,MAAM,UAAU,GAAG,MAAM,CAAC,wBAAwB,CAChD,KAAK,EACL,sBAAe,CAAC,QAAQ,CACzB,CAAC;IACF,OAAO,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACnD,CAAC;AAED,SAAgB,cAAc,CAAkB,KAAQ;IACtD,MAAM,UAAU,GAAG,MAAM,CAAC,wBAAwB,CAChD,KAAK,EACL,sBAAe,CAAC,QAAQ,CACzB,CAAC;IACF,IAAI,UAAU;QAAE,OAAQ,KAAa,CAAC,sBAAe,CAAC,QAAQ,CAAC,CAAC;AAClE,CAAC"}
|
package/lib/query/Paginator.d.ts
DELETED
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
import { MaybeContextualArg, Paginator } from "@decaf-ts/core";
|
|
2
|
-
import { MangoQuery } from "../types";
|
|
3
|
-
import { Model } from "@decaf-ts/decorator-validation";
|
|
4
|
-
import { CouchDBAdapter } from "../adapter";
|
|
5
|
-
import { Constructor } from "@decaf-ts/decoration";
|
|
6
|
-
/**
|
|
7
|
-
* @description Paginator for ConuchDB query results
|
|
8
|
-
* @summary Implements pagination for CouchDB queries using bookmarks for efficient navigation through result sets
|
|
9
|
-
* @template M - The model type that extends Model
|
|
10
|
-
* @template R - The result type
|
|
11
|
-
* @param {CouchDBAdapter<any, any, any>} adapter - The CouchDB adapter
|
|
12
|
-
* @param {MangoQuery} query - The Mango query to paginate
|
|
13
|
-
* @param {number} size - The page size
|
|
14
|
-
* @param {Constructor<M>} clazz - The model constructor
|
|
15
|
-
* @class CouchDBPaginator
|
|
16
|
-
* @example
|
|
17
|
-
* // Example of using CouchDBPaginator
|
|
18
|
-
* const adapter = new MyCouchDBAdapter(scope);
|
|
19
|
-
* const query = { selector: { type: "user" } };
|
|
20
|
-
* const paginator = new CouchDBPaginator(adapter, query, 10, User);
|
|
21
|
-
*
|
|
22
|
-
* // Get the first page
|
|
23
|
-
* const page1 = await paginator.page(1);
|
|
24
|
-
*
|
|
25
|
-
* // Get the next page
|
|
26
|
-
* const page2 = await paginator.page(2);
|
|
27
|
-
*/
|
|
28
|
-
export declare class CouchDBPaginator<M extends Model> extends Paginator<M, M[], MangoQuery> {
|
|
29
|
-
/**
|
|
30
|
-
* @description Creates a new CouchDBPaginator instance
|
|
31
|
-
* @summary Initializes a paginator for CouchDB query results
|
|
32
|
-
* @param {CouchDBAdapter<any, any, any, any>} adapter - The CouchDB adapter
|
|
33
|
-
* @param {MangoQuery} query - The Mango query to paginate
|
|
34
|
-
* @param {number} size - The page size
|
|
35
|
-
* @param {Constructor<M>} clazz - The model constructor
|
|
36
|
-
*/
|
|
37
|
-
constructor(adapter: CouchDBAdapter<any, any, any>, query: MangoQuery, size: number, clazz: Constructor<M>);
|
|
38
|
-
/**
|
|
39
|
-
* @description Prepares a query for pagination
|
|
40
|
-
* @summary Modifies the raw query to include pagination parameters
|
|
41
|
-
* @param {MangoQuery} rawStatement - The original Mango query
|
|
42
|
-
* @return {MangoQuery} The prepared query with pagination parameters
|
|
43
|
-
*/
|
|
44
|
-
protected prepare(rawStatement: MangoQuery): MangoQuery;
|
|
45
|
-
/**
|
|
46
|
-
* @description Retrieves a specific page of results
|
|
47
|
-
* @summary Executes the query with pagination and processes the results
|
|
48
|
-
* @param {number} [page=1] - The page number to retrieve
|
|
49
|
-
* @return {Promise<R[]>} A promise that resolves to an array of results
|
|
50
|
-
* @throws {PagingError} If trying to access a page other than the first without a bookmark, or if no class is defined
|
|
51
|
-
* @mermaid
|
|
52
|
-
* sequenceDiagram
|
|
53
|
-
* participant Client
|
|
54
|
-
* participant CouchDBPaginator
|
|
55
|
-
* participant Adapter
|
|
56
|
-
* participant CouchDB
|
|
57
|
-
*
|
|
58
|
-
* Client->>CouchDBPaginator: page(pageNumber)
|
|
59
|
-
* Note over CouchDBPaginator: Clone statement
|
|
60
|
-
* CouchDBPaginator->>CouchDBPaginator: validatePage(page)
|
|
61
|
-
*
|
|
62
|
-
* alt page !== 1
|
|
63
|
-
* CouchDBPaginator->>CouchDBPaginator: Check bookmark
|
|
64
|
-
* alt No bookmark
|
|
65
|
-
* CouchDBPaginator-->>Client: Throw PagingError
|
|
66
|
-
* else Has bookmark
|
|
67
|
-
* CouchDBPaginator->>CouchDBPaginator: Add bookmark to statement
|
|
68
|
-
* end
|
|
69
|
-
* end
|
|
70
|
-
*
|
|
71
|
-
* CouchDBPaginator->>Adapter: raw(statement, false)
|
|
72
|
-
* Adapter->>CouchDB: Execute query
|
|
73
|
-
* CouchDB-->>Adapter: Return results
|
|
74
|
-
* Adapter-->>CouchDBPaginator: Return MangoResponse
|
|
75
|
-
*
|
|
76
|
-
* Note over CouchDBPaginator: Process results
|
|
77
|
-
*
|
|
78
|
-
* alt Has warning
|
|
79
|
-
* CouchDBPaginator->>CouchDBPaginator: Log warning
|
|
80
|
-
* end
|
|
81
|
-
*
|
|
82
|
-
* CouchDBPaginator->>CouchDBPaginator: Check for clazz
|
|
83
|
-
*
|
|
84
|
-
* alt No clazz
|
|
85
|
-
* CouchDBPaginator-->>Client: Throw PagingError
|
|
86
|
-
* else Has clazz
|
|
87
|
-
* CouchDBPaginator->>CouchDBPaginator: Find primary key
|
|
88
|
-
*
|
|
89
|
-
* alt Has fields in statement
|
|
90
|
-
* CouchDBPaginator->>CouchDBPaginator: Use docs directly
|
|
91
|
-
* else No fields
|
|
92
|
-
* CouchDBPaginator->>CouchDBPaginator: Process each document
|
|
93
|
-
* loop For each document
|
|
94
|
-
* CouchDBPaginator->>CouchDBPaginator: Extract original ID
|
|
95
|
-
* CouchDBPaginator->>Adapter: revert(doc, clazz, pkDef.id, parsedId)
|
|
96
|
-
* end
|
|
97
|
-
* end
|
|
98
|
-
*
|
|
99
|
-
* CouchDBPaginator->>CouchDBPaginator: Store bookmark
|
|
100
|
-
* CouchDBPaginator->>CouchDBPaginator: Update currentPage
|
|
101
|
-
* CouchDBPaginator-->>Client: Return results
|
|
102
|
-
* end
|
|
103
|
-
*/
|
|
104
|
-
page(page?: number | undefined, bookmark?: any, ...args: MaybeContextualArg<any>): Promise<M[]>;
|
|
105
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Paginator.js","sourceRoot":"","sources":["../../src/query/Paginator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Statement.js","sourceRoot":"","sources":["../../src/query/Statement.ts"],"names":[],"mappings":"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"}
|
package/lib/query/constants.d.ts
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { MangoOperator } from "../types";
|
|
2
|
-
/**
|
|
3
|
-
* @description Default query limit for CouchDB queries
|
|
4
|
-
* @summary Maximum number of documents to return in a single query
|
|
5
|
-
* @const CouchDBQueryLimit
|
|
6
|
-
* @memberOf module:for-couchdb
|
|
7
|
-
*/
|
|
8
|
-
export declare const CouchDBQueryLimit = 250;
|
|
9
|
-
/**
|
|
10
|
-
* @description Mapping of operator names to CouchDB Mango query operators
|
|
11
|
-
* @summary Constants for CouchDB comparison operators used in Mango queries
|
|
12
|
-
* @typedef {Object} CouchDBOperatorType
|
|
13
|
-
* @property {string} EQUAL - Equality operator ($eq)
|
|
14
|
-
* @property {string} DIFFERENT - Inequality operator ($ne)
|
|
15
|
-
* @property {string} BIGGER - Greater than operator ($gt)
|
|
16
|
-
* @property {string} BIGGER_EQ - Greater than or equal operator ($gte)
|
|
17
|
-
* @property {string} SMALLER - Less than operator ($lt)
|
|
18
|
-
* @property {string} SMALLER_EQ - Less than or equal operator ($lte)
|
|
19
|
-
* @property {string} NOT - Negation operator ($not)
|
|
20
|
-
* @property {string} IN - In array operator ($in)
|
|
21
|
-
* @property {string} REGEXP - Regular expression operator ($regex)
|
|
22
|
-
* @const CouchDBOperator
|
|
23
|
-
* @type {CouchDBOperatorType}
|
|
24
|
-
* @memberOf module:for-couchdb
|
|
25
|
-
*/
|
|
26
|
-
export declare const CouchDBOperator: Record<string, MangoOperator>;
|
|
27
|
-
/**
|
|
28
|
-
* @description Mapping of logical operator names to CouchDB Mango query operators
|
|
29
|
-
* @summary Constants for CouchDB logical operators used in Mango queries
|
|
30
|
-
* @typedef {Object} CouchDBGroupOperatorType
|
|
31
|
-
* @property {string} AND - Logical AND operator ($and)
|
|
32
|
-
* @property {string} OR - Logical OR operator ($or)
|
|
33
|
-
* @const CouchDBGroupOperator
|
|
34
|
-
* @type {CouchDBGroupOperatorType}
|
|
35
|
-
* @memberOf module:for-couchdb
|
|
36
|
-
*/
|
|
37
|
-
export declare const CouchDBGroupOperator: Record<string, MangoOperator>;
|
|
38
|
-
/**
|
|
39
|
-
* @description Special constant values used in CouchDB queries
|
|
40
|
-
* @summary String constants representing special values in CouchDB
|
|
41
|
-
* @typedef {Object} CouchDBConstType
|
|
42
|
-
* @property {string} NULL - String representation of null value
|
|
43
|
-
* @const CouchDBConst
|
|
44
|
-
* @type {CouchDBConstType}
|
|
45
|
-
* @memberOf module:for-couchdb
|
|
46
|
-
*/
|
|
47
|
-
export declare const CouchDBConst: Record<string, string>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/query/constants.ts"],"names":[],"mappings":";;;AAEA;;;;;GAKG;AACU,QAAA,iBAAiB,GAAG,GAAG,CAAC;AAErC;;;;;;;;;;;;;;;;GAgBG;AACU,QAAA,eAAe,GAAkC;IAC5D,KAAK,EAAE,KAAK;IACZ,SAAS,EAAE,KAAK;IAChB,MAAM,EAAE,KAAK;IACb,SAAS,EAAE,MAAM;IACjB,OAAO,EAAE,KAAK;IACd,UAAU,EAAE,MAAM;IAClB,uBAAuB;IACvB,GAAG,EAAE,MAAM;IACX,EAAE,EAAE,KAAK;IACT,aAAa;IACb,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF;;;;;;;;;GASG;AACU,QAAA,oBAAoB,GAAkC;IACjE,GAAG,EAAE,MAAM;IACX,EAAE,EAAE,KAAK;CACV,CAAC;AAEF;;;;;;;;GAQG;AACU,QAAA,YAAY,GAA2B;IAClD,IAAI,EAAE,MAAM;CACb,CAAC"}
|
package/lib/query/index.d.ts
DELETED
package/lib/query/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/query/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAA4B;AAC5B,kDAA4B;AAC5B,kDAA4B;AAC5B,kDAA4B"}
|
package/lib/query/translate.d.ts
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { GroupOperator, Operator } from "@decaf-ts/core";
|
|
2
|
-
import { MangoOperator } from "../types";
|
|
3
|
-
/**
|
|
4
|
-
* @description Translates core operators to CouchDB Mango operators
|
|
5
|
-
* @summary Converts Decaf.ts core operators to their equivalent CouchDB Mango query operators
|
|
6
|
-
* @param {GroupOperator | Operator} operator - The core operator to translate
|
|
7
|
-
* @return {MangoOperator} The equivalent CouchDB Mango operator
|
|
8
|
-
* @throws {QueryError} If no translation exists for the given operator
|
|
9
|
-
* @function translateOperators
|
|
10
|
-
* @memberOf module:for-couchdb
|
|
11
|
-
* @mermaid
|
|
12
|
-
* sequenceDiagram
|
|
13
|
-
* participant Caller
|
|
14
|
-
* participant translateOperators
|
|
15
|
-
* participant CouchDBOperator
|
|
16
|
-
* participant CouchDBGroupOperator
|
|
17
|
-
*
|
|
18
|
-
* Caller->>translateOperators: operator
|
|
19
|
-
*
|
|
20
|
-
* translateOperators->>CouchDBOperator: Check for match
|
|
21
|
-
* alt Found in CouchDBOperator
|
|
22
|
-
* CouchDBOperator-->>translateOperators: Return matching operator
|
|
23
|
-
* translateOperators-->>Caller: Return MangoOperator
|
|
24
|
-
* else Not found
|
|
25
|
-
* translateOperators->>CouchDBGroupOperator: Check for match
|
|
26
|
-
* alt Found in CouchDBGroupOperator
|
|
27
|
-
* CouchDBGroupOperator-->>translateOperators: Return matching operator
|
|
28
|
-
* translateOperators-->>Caller: Return MangoOperator
|
|
29
|
-
* else Not found
|
|
30
|
-
* translateOperators-->>Caller: Throw QueryError
|
|
31
|
-
* end
|
|
32
|
-
* end
|
|
33
|
-
*/
|
|
34
|
-
export declare function translateOperators(operator: GroupOperator | Operator): MangoOperator;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"translate.js","sourceRoot":"","sources":["../../src/query/translate.ts"],"names":[],"mappings":";;AAoCA,gDAUC;AA7CD,+CAAoE;AACpE,yCAA4C;AAG5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,SAAgB,kBAAkB,CAChC,QAAkC;IAElC,KAAK,MAAM,SAAS,IAAI,CAAC,2BAAe,EAAE,gCAAoB,CAAC,EAAE,CAAC;QAChE,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC;QAC9D,IAAI,EAAE;YAAE,OAAO,SAAS,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IACD,MAAM,IAAI,iBAAU,CAClB,mDAAmD,QAAQ,EAAE,CAC9D,CAAC;AACJ,CAAC"}
|
package/lib/repository.d.ts
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { MaybeContextualArg, Repository } from "@decaf-ts/core";
|
|
2
|
-
import { Model } from "@decaf-ts/decorator-validation";
|
|
3
|
-
import { Constructor } from "@decaf-ts/decoration";
|
|
4
|
-
import type { CouchDBAdapter } from "./adapter";
|
|
5
|
-
import { ContextOf } from "@decaf-ts/core";
|
|
6
|
-
import type { PrimaryKeyType } from "@decaf-ts/db-decorators";
|
|
7
|
-
export declare class CouchDBRepository<M extends Model, A extends CouchDBAdapter<any, any, any>> extends Repository<M, A> {
|
|
8
|
-
constructor(adapter: A, model: Constructor<M>, force?: boolean);
|
|
9
|
-
protected assignMetadata(model: M, source?: M): M;
|
|
10
|
-
protected assignMetadata(models: M[], source?: M[]): M[];
|
|
11
|
-
create(model: M, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
|
|
12
|
-
createAll(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
13
|
-
read(id: PrimaryKeyType, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
|
|
14
|
-
readAll(ids: PrimaryKeyType[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
15
|
-
update(model: M, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
|
|
16
|
-
updateAll(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
17
|
-
delete(id: PrimaryKeyType, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
|
|
18
|
-
deleteAll(ids: PrimaryKeyType[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
19
|
-
/**
|
|
20
|
-
* @description Prepares a model for update.
|
|
21
|
-
* @summary Validates the model and prepares it for update in the database.
|
|
22
|
-
* @param {M} model - The model to update.
|
|
23
|
-
* @param {...any[]} args - Additional arguments.
|
|
24
|
-
* @return The prepared model and context arguments.
|
|
25
|
-
* @throws {InternalError} If the model has no primary key value.
|
|
26
|
-
* @throws {ValidationError} If the model fails validation.
|
|
27
|
-
*/
|
|
28
|
-
protected updatePrefix(model: M, ...args: MaybeContextualArg<ContextOf<A>>): Promise<[M, ...args: any[], ContextOf<A>, M | undefined]>;
|
|
29
|
-
/**
|
|
30
|
-
* @description Prepares multiple models for update.
|
|
31
|
-
* @summary Validates multiple models and prepares them for update in the database.
|
|
32
|
-
* @param {M[]} models - The models to update.
|
|
33
|
-
* @param {...any[]} args - Additional arguments.
|
|
34
|
-
* @return {Promise<any[]>} The prepared models and context arguments.
|
|
35
|
-
* @throws {InternalError} If any model has no primary key value.
|
|
36
|
-
* @throws {ValidationError} If any model fails validation.
|
|
37
|
-
*/
|
|
38
|
-
protected updateAllPrefix(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<[M[], ...args: any[], ContextOf<A>, M[] | undefined]>;
|
|
39
|
-
}
|
package/lib/repository.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"repository.js","sourceRoot":"","sources":["../src/repository.ts"],"names":[],"mappings":"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"}
|