mongolite-ts 0.1.4 → 0.1.7
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/collection.d.ts +8 -2
- package/dist/collection.js +47 -42
- package/dist/collection.js.map +1 -1
- package/dist/index.d.ts +5 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/package.json +7 -12
package/dist/collection.d.ts
CHANGED
|
@@ -6,12 +6,15 @@ import { DocumentWithId, Filter, UpdateFilter, InsertOneResult, UpdateResult, De
|
|
|
6
6
|
export declare class FindCursor<T extends DocumentWithId> {
|
|
7
7
|
private db;
|
|
8
8
|
private collectionName;
|
|
9
|
+
private readonly options;
|
|
9
10
|
private queryParts;
|
|
10
11
|
private limitCount;
|
|
11
12
|
private skipCount;
|
|
12
13
|
private sortCriteria;
|
|
13
14
|
private projectionFields;
|
|
14
|
-
constructor(db: SQLiteDB, collectionName: string, initialFilter: Filter<T
|
|
15
|
+
constructor(db: SQLiteDB, collectionName: string, initialFilter: Filter<T>, options?: {
|
|
16
|
+
verbose?: boolean;
|
|
17
|
+
});
|
|
15
18
|
private parseJsonPath;
|
|
16
19
|
private buildWhereClause;
|
|
17
20
|
private buildSelectQuery;
|
|
@@ -54,7 +57,10 @@ export declare class FindCursor<T extends DocumentWithId> {
|
|
|
54
57
|
export declare class MongoLiteCollection<T extends DocumentWithId> {
|
|
55
58
|
private db;
|
|
56
59
|
readonly name: string;
|
|
57
|
-
|
|
60
|
+
private readonly options;
|
|
61
|
+
constructor(db: SQLiteDB, name: string, options?: {
|
|
62
|
+
verbose?: boolean;
|
|
63
|
+
});
|
|
58
64
|
/**
|
|
59
65
|
* Ensures the SQLite table for this collection exists, creating it if necessary.
|
|
60
66
|
* The table will have an `_id` column (indexed) and a `data` column for JSON.
|
package/dist/collection.js
CHANGED
|
@@ -6,9 +6,10 @@ const uuid_1 = require("uuid");
|
|
|
6
6
|
* Represents a cursor for find operations, allowing chaining of limit, skip, and sort.
|
|
7
7
|
*/
|
|
8
8
|
class FindCursor {
|
|
9
|
-
constructor(db, collectionName, initialFilter) {
|
|
9
|
+
constructor(db, collectionName, initialFilter, options = {}) {
|
|
10
10
|
this.db = db;
|
|
11
11
|
this.collectionName = collectionName;
|
|
12
|
+
this.options = options;
|
|
12
13
|
this.limitCount = null;
|
|
13
14
|
this.skipCount = null;
|
|
14
15
|
this.sortCriteria = null;
|
|
@@ -21,27 +22,30 @@ class FindCursor {
|
|
|
21
22
|
buildWhereClause(filter, params) {
|
|
22
23
|
const conditions = [];
|
|
23
24
|
// Handle $and, $or, $nor logical operators at the top level
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
25
|
+
for (const key of Object.keys(filter)) {
|
|
26
|
+
if (key === '$and' && filter.$and) {
|
|
27
|
+
const condition = filter.$and;
|
|
28
|
+
const andConditions = condition
|
|
29
|
+
.map((subFilter) => `(${this.buildWhereClause(subFilter, params)})`)
|
|
30
|
+
.join(' AND ');
|
|
31
|
+
conditions.push(`(${andConditions})`);
|
|
32
|
+
}
|
|
33
|
+
else if (key === '$or' && filter.$or) {
|
|
34
|
+
const condition = filter.$or;
|
|
35
|
+
const orConditions = condition
|
|
36
|
+
.map((subFilter) => `(${this.buildWhereClause(subFilter, params)})`)
|
|
37
|
+
.join(' OR ');
|
|
38
|
+
conditions.push(`(${orConditions})`);
|
|
39
|
+
}
|
|
40
|
+
else if (key === '$nor' && filter.$nor) {
|
|
41
|
+
const condition = filter.$nor;
|
|
42
|
+
const norConditions = condition
|
|
43
|
+
.map((subFilter) => `(${this.buildWhereClause(subFilter, params)})`)
|
|
44
|
+
.join(' OR ');
|
|
45
|
+
conditions.push(`NOT (${norConditions})`);
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
// Handle field conditions
|
|
45
49
|
if (key.startsWith('$'))
|
|
46
50
|
continue; // Skip logical operators already handled
|
|
47
51
|
const value = filter[key];
|
|
@@ -79,27 +83,27 @@ class FindCursor {
|
|
|
79
83
|
switch (op) {
|
|
80
84
|
case '$eq':
|
|
81
85
|
conditions.push(`json_extract(data, ${jsonPath}) = ?`);
|
|
82
|
-
params.push(
|
|
86
|
+
params.push(opValue);
|
|
83
87
|
break;
|
|
84
88
|
case '$ne':
|
|
85
89
|
conditions.push(`json_extract(data, ${jsonPath}) != ?`);
|
|
86
|
-
params.push(
|
|
90
|
+
params.push(opValue);
|
|
87
91
|
break;
|
|
88
92
|
case '$gt':
|
|
89
93
|
conditions.push(`json_extract(data, ${jsonPath}) > ?`);
|
|
90
|
-
params.push(
|
|
94
|
+
params.push(opValue);
|
|
91
95
|
break;
|
|
92
96
|
case '$gte':
|
|
93
97
|
conditions.push(`json_extract(data, ${jsonPath}) >= ?`);
|
|
94
|
-
params.push(
|
|
98
|
+
params.push(opValue);
|
|
95
99
|
break;
|
|
96
100
|
case '$lt':
|
|
97
101
|
conditions.push(`json_extract(data, ${jsonPath}) < ?`);
|
|
98
|
-
params.push(
|
|
102
|
+
params.push(opValue);
|
|
99
103
|
break;
|
|
100
104
|
case '$lte':
|
|
101
105
|
conditions.push(`json_extract(data, ${jsonPath}) <= ?`);
|
|
102
|
-
params.push(
|
|
106
|
+
params.push(opValue);
|
|
103
107
|
break;
|
|
104
108
|
case '$in':
|
|
105
109
|
if (Array.isArray(opValue) && opValue.length > 0) {
|
|
@@ -107,7 +111,7 @@ class FindCursor {
|
|
|
107
111
|
.map(() => `json_extract(data, ${jsonPath}) = ?`)
|
|
108
112
|
.join(' OR ');
|
|
109
113
|
conditions.push(`(${inConditions})`);
|
|
110
|
-
opValue.forEach((val) => params.push(
|
|
114
|
+
opValue.forEach((val) => params.push(val));
|
|
111
115
|
}
|
|
112
116
|
else {
|
|
113
117
|
conditions.push('1=0'); // Empty $in array, nothing will match
|
|
@@ -119,7 +123,7 @@ class FindCursor {
|
|
|
119
123
|
.map(() => `json_extract(data, ${jsonPath}) != ?`)
|
|
120
124
|
.join(' AND ');
|
|
121
125
|
conditions.push(`(${ninConditions})`);
|
|
122
|
-
opValue.forEach((val) => params.push(
|
|
126
|
+
opValue.forEach((val) => params.push(val));
|
|
123
127
|
}
|
|
124
128
|
// Empty $nin array means match everything, so no condition needed
|
|
125
129
|
break;
|
|
@@ -149,6 +153,10 @@ class FindCursor {
|
|
|
149
153
|
const params = [];
|
|
150
154
|
const whereClause = this.buildWhereClause(filter, params);
|
|
151
155
|
const sql = `SELECT _id, data FROM "${this.collectionName}" WHERE ${whereClause}`;
|
|
156
|
+
if (this.options.verbose) {
|
|
157
|
+
console.log(`SQL Query: ${sql}`);
|
|
158
|
+
console.log(`Parameters: ${JSON.stringify(params)}`);
|
|
159
|
+
}
|
|
152
160
|
return { sql, params };
|
|
153
161
|
}
|
|
154
162
|
/**
|
|
@@ -329,9 +337,10 @@ exports.FindCursor = FindCursor;
|
|
|
329
337
|
* as if it were a MongoDB collection.
|
|
330
338
|
*/
|
|
331
339
|
class MongoLiteCollection {
|
|
332
|
-
constructor(db, name) {
|
|
340
|
+
constructor(db, name, options = {}) {
|
|
333
341
|
this.db = db;
|
|
334
342
|
this.name = name;
|
|
343
|
+
this.options = options;
|
|
335
344
|
this.ensureTable().catch((err) => {
|
|
336
345
|
// This error should be handled or logged appropriately.
|
|
337
346
|
// For now, console.error is used. In a real app, a more robust
|
|
@@ -443,7 +452,7 @@ class MongoLiteCollection {
|
|
|
443
452
|
*/
|
|
444
453
|
find(filter = {}) {
|
|
445
454
|
// ensureTable is called by operations on the cursor or by constructor
|
|
446
|
-
return new FindCursor(this.db, this.name, filter);
|
|
455
|
+
return new FindCursor(this.db, this.name, filter, this.options);
|
|
447
456
|
}
|
|
448
457
|
/**
|
|
449
458
|
* Updates a single document matching the filter.
|
|
@@ -489,7 +498,7 @@ class MongoLiteCollection {
|
|
|
489
498
|
if (!rowToUpdate) {
|
|
490
499
|
return { acknowledged: true, matchedCount: 0, modifiedCount: 0, upsertedId: null };
|
|
491
500
|
}
|
|
492
|
-
|
|
501
|
+
const currentDoc = JSON.parse(rowToUpdate.data);
|
|
493
502
|
let modified = false;
|
|
494
503
|
// Process update operators
|
|
495
504
|
for (const operator in update) {
|
|
@@ -576,10 +585,6 @@ class MongoLiteCollection {
|
|
|
576
585
|
}
|
|
577
586
|
}
|
|
578
587
|
if (modified) {
|
|
579
|
-
// Get the modifiedCount
|
|
580
|
-
const matchedRecordSql = `SELECT COUNT(*) as count FROM "${this.name}" WHERE ${whereClause}`;
|
|
581
|
-
const matchedRecord = await this.db.get(matchedRecordSql, paramsForSelect);
|
|
582
|
-
const matchedCount = matchedRecord?.count || 0;
|
|
583
588
|
// Update the document in SQLite
|
|
584
589
|
const updateSql = `UPDATE "${this.name}" SET data = ? WHERE _id = ?`;
|
|
585
590
|
const updateParams = [JSON.stringify(currentDoc), rowToUpdate._id];
|
|
@@ -587,8 +592,8 @@ class MongoLiteCollection {
|
|
|
587
592
|
return {
|
|
588
593
|
acknowledged: true,
|
|
589
594
|
matchedCount: 1,
|
|
590
|
-
modifiedCount:
|
|
591
|
-
upsertedId: null,
|
|
595
|
+
modifiedCount: 1, // Since we found and modified exactly one document
|
|
596
|
+
upsertedId: null,
|
|
592
597
|
};
|
|
593
598
|
}
|
|
594
599
|
return {
|
|
@@ -616,7 +621,7 @@ class MongoLiteCollection {
|
|
|
616
621
|
let modifiedCount = 0;
|
|
617
622
|
const updatedIds = [];
|
|
618
623
|
for (const rowToUpdate of rowsToUpdate) {
|
|
619
|
-
|
|
624
|
+
const currentDoc = JSON.parse(rowToUpdate.data);
|
|
620
625
|
let modified = false;
|
|
621
626
|
// Process update operators
|
|
622
627
|
for (const operator in update) {
|
|
@@ -783,14 +788,14 @@ class MongoLiteCollection {
|
|
|
783
788
|
const paramsForDelete = [];
|
|
784
789
|
const whereClause = new FindCursor(this.db, this.name, filter)['buildWhereClause'](filter, paramsForDelete);
|
|
785
790
|
// Get the number of documents that would be deleted
|
|
786
|
-
const countSql = `SELECT COUNT(*) as count FROM "${this.name}" WHERE ${whereClause}`;
|
|
791
|
+
const countSql = `SELECT COUNT(*) as count FROM "${this.name}" WHERE ${whereClause} LIMIT 1`;
|
|
787
792
|
const countResult = await this.db.get(countSql, paramsForDelete);
|
|
788
793
|
const deleteSql = `
|
|
789
794
|
DELETE FROM "${this.name}"
|
|
790
795
|
WHERE ROWID IN (SELECT ROWID FROM "${this.name}" WHERE ${whereClause} LIMIT 1);
|
|
791
796
|
`;
|
|
792
797
|
await this.db.run(deleteSql, paramsForDelete);
|
|
793
|
-
return { acknowledged: true, deletedCount: countResult ? 1 : 0 };
|
|
798
|
+
return { acknowledged: true, deletedCount: countResult?.count ? 1 : 0 };
|
|
794
799
|
}
|
|
795
800
|
/**
|
|
796
801
|
* Deletes multiple documents matching the filter.
|
package/dist/collection.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collection.js","sourceRoot":"","sources":["../src/collection.ts"],"names":[],"mappings":";;;AAAA,+BAAoC;AAoBpC;;GAEG;AACH,MAAa,UAAU;IAUrB,YACU,EAAY,EACZ,cAAsB,EAC9B,aAAwB;QAFhB,OAAE,GAAF,EAAE,CAAU;QACZ,mBAAc,GAAd,cAAc,CAAQ;QAPxB,eAAU,GAAkB,IAAI,CAAC;QACjC,cAAS,GAAkB,IAAI,CAAC;QAChC,iBAAY,GAA2B,IAAI,CAAC;QAC5C,qBAAgB,GAAyB,IAAI,CAAC;QAOpD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACzD,CAAC;IAEO,aAAa,CAAC,IAAY;QAChC,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC;IAC3C,CAAC;IAEO,gBAAgB,CAAC,MAAiB,EAAE,MAAiB;QAC3D,MAAM,UAAU,GAAa,EAAE,CAAC;QAEhC,4DAA4D;QAC5D,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI;iBAC9B,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC;iBACnE,IAAI,CAAC,OAAO,CAAC,CAAC;YACjB,UAAU,CAAC,IAAI,CAAC,IAAI,aAAa,GAAG,CAAC,CAAC;QACxC,CAAC;aAAM,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;YACtB,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG;iBAC5B,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC;iBACnE,IAAI,CAAC,MAAM,CAAC,CAAC;YAChB,UAAU,CAAC,IAAI,CAAC,IAAI,YAAY,GAAG,CAAC,CAAC;QACvC,CAAC;aAAM,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI;iBAC9B,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC;iBACnE,IAAI,CAAC,MAAM,CAAC,CAAC;YAChB,UAAU,CAAC,IAAI,CAAC,QAAQ,aAAa,GAAG,CAAC,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,0BAA0B;YAC1B,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;gBACzB,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;oBAAE,SAAS,CAAC,yCAAyC;gBAE5E,MAAM,KAAK,GAAG,MAAM,CAAC,GAAsB,CAAC,CAAC;gBAC7C,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;oBAClB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;wBAC9B,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBAC3B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACrB,CAAC;yBAAM,IACL,OAAO,KAAK,KAAK,QAAQ;wBACzB,KAAK,KAAK,IAAI;wBACb,KAAgC,CAAC,GAAG,EACrC,CAAC;wBACD,MAAM,QAAQ,GAAI,KAAgC,CAAC,GAAe,CAAC;wBACnE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACxB,UAAU,CAAC,IAAI,CAAC,WAAW,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;4BACjE,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;wBAC3B,CAAC;6BAAM,CAAC;4BACN,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,yCAAyC;wBACnE,CAAC;oBACH,CAAC;yBAAM,IACL,OAAO,KAAK,KAAK,QAAQ;wBACzB,KAAK,KAAK,IAAI;wBACb,KAAgC,CAAC,GAAG,EACrC,CAAC;wBACD,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBAC5B,MAAM,CAAC,IAAI,CAAE,KAAgC,CAAC,GAAG,CAAC,CAAC;oBACrD,CAAC;oBACD,6CAA6C;gBAC/C,CAAC;qBAAM,CAAC;oBACN,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;oBACzC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;wBAChD,0DAA0D;wBAC1D,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;4BACvB,MAAM,OAAO,GAAI,KAA6B,CAAC,EAA+B,CAAC,CAAC;4BAChF,QAAQ,EAAE,EAAE,CAAC;gCACX,KAAK,KAAK;oCACR,UAAU,CAAC,IAAI,CAAC,sBAAsB,QAAQ,OAAO,CAAC,CAAC;oCACvD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;oCACrC,MAAM;gCACR,KAAK,KAAK;oCACR,UAAU,CAAC,IAAI,CAAC,sBAAsB,QAAQ,QAAQ,CAAC,CAAC;oCACxD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;oCACrC,MAAM;gCACR,KAAK,KAAK;oCACR,UAAU,CAAC,IAAI,CAAC,sBAAsB,QAAQ,OAAO,CAAC,CAAC;oCACvD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;oCACrC,MAAM;gCACR,KAAK,MAAM;oCACT,UAAU,CAAC,IAAI,CAAC,sBAAsB,QAAQ,QAAQ,CAAC,CAAC;oCACxD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;oCACrC,MAAM;gCACR,KAAK,KAAK;oCACR,UAAU,CAAC,IAAI,CAAC,sBAAsB,QAAQ,OAAO,CAAC,CAAC;oCACvD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;oCACrC,MAAM;gCACR,KAAK,MAAM;oCACT,UAAU,CAAC,IAAI,CAAC,sBAAsB,QAAQ,QAAQ,CAAC,CAAC;oCACxD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;oCACrC,MAAM;gCACR,KAAK,KAAK;oCACR,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wCACjD,MAAM,YAAY,GAAG,OAAO;6CACzB,GAAG,CAAC,GAAG,EAAE,CAAC,sBAAsB,QAAQ,OAAO,CAAC;6CAChD,IAAI,CAAC,MAAM,CAAC,CAAC;wCAChB,UAAU,CAAC,IAAI,CAAC,IAAI,YAAY,GAAG,CAAC,CAAC;wCACrC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oCAC7D,CAAC;yCAAM,CAAC;wCACN,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,sCAAsC;oCAChE,CAAC;oCACD,MAAM;gCACR,KAAK,MAAM;oCACT,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wCACjD,MAAM,aAAa,GAAG,OAAO;6CAC1B,GAAG,CAAC,GAAG,EAAE,CAAC,sBAAsB,QAAQ,QAAQ,CAAC;6CACjD,IAAI,CAAC,OAAO,CAAC,CAAC;wCACjB,UAAU,CAAC,IAAI,CAAC,IAAI,aAAa,GAAG,CAAC,CAAC;wCACtC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oCAC7D,CAAC;oCACD,kEAAkE;oCAClE,MAAM;gCACR,KAAK,SAAS;oCACZ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;wCACrB,UAAU,CAAC,IAAI,CAAC,sBAAsB,QAAQ,eAAe,CAAC,CAAC;oCACjE,CAAC;yCAAM,CAAC;wCACN,UAAU,CAAC,IAAI,CAAC,sBAAsB,QAAQ,WAAW,CAAC,CAAC;oCAC7D,CAAC;oCACD,MAAM;gCACR,gCAAgC;4BAClC,CAAC;wBACH,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,wCAAwC;wBACxC,UAAU,CAAC,IAAI,CAAC,sBAAsB,QAAQ,OAAO,CAAC,CAAC;wBACvD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACrB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAClE,CAAC;IAEO,gBAAgB,CAAC,MAAiB;QACxC,MAAM,MAAM,GAAc,EAAE,CAAC;QAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC1D,MAAM,GAAG,GAAG,0BAA0B,IAAI,CAAC,cAAc,WAAW,WAAW,EAAE,CAAC;QAClF,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,KAAa;QACxB,IAAI,KAAK,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QACvE,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACI,IAAI,CAAC,KAAa;QACvB,IAAI,KAAK,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACtE,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACI,IAAI,CAAC,YAA6B;QACvC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACI,OAAO,CAAC,UAAyB;QACtC,IAAI,CAAC,gBAAgB,GAAG,UAAU,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,eAAe,CAAC,GAAM;QAC5B,IAAI,CAAC,IAAI,CAAC,gBAAgB;YAAE,OAAO,GAAG,CAAC;QAEvC,MAAM,YAAY,GAAe,EAAE,CAAC;QACpC,IAAI,WAAW,GAAG,IAAI,CAAC,CAAC,kEAAkE;QAC1F,IAAI,oBAAoB,GAAG,KAAK,CAAC;QAEjC,yDAAyD;QACzD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxC,IAAI,GAAG,KAAK,KAAK;gBAAE,SAAS;YAC5B,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAc,CAAC,KAAK,CAAC,EAAE,CAAC;gBAChD,oBAAoB,GAAG,IAAI,CAAC;gBAC5B,MAAM;YACR,CAAC;YACD,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAc,CAAC,KAAK,CAAC,EAAE,CAAC;gBAChD,WAAW,GAAG,KAAK,CAAC;gBACpB,4EAA4E;YAC9E,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC7D,kEAAkE;YAClE,2EAA2E;YAC3E,WAAW,GAAG,KAAK,CAAC;QACtB,CAAC;aAAM,IAAI,oBAAoB,EAAE,CAAC;YAChC,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,iBAAiB;YACjB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACxC,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAc,CAAC,KAAK,CAAC,EAAE,CAAC;oBAChD,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;wBACtB,2DAA2D;wBAC3D,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBAC5B,IAAI,OAAO,GAAQ,GAAG,CAAC;wBACvB,IAAI,MAAM,GAAQ,YAAY,CAAC;wBAE/B,0CAA0C;wBAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;4BACzC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;4BACxB,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,SAAS;gCAAE,MAAM;4BAE1C,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE,CAAC;gCAClC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;4BACvB,CAAC;4BAED,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;4BAC3B,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;wBAC3B,CAAC;wBAED,0CAA0C;wBAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;wBAC1C,IAAI,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC,KAAK,SAAS,EAAE,CAAC;4BAClD,MAAM,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;wBAC7C,CAAC;oBACH,CAAC;yBAAM,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;wBACtB,YAAY,CAAC,GAAc,CAAC,GAAG,GAAG,CAAC,GAAc,CAAC,CAAC;oBACrD,CAAC;gBACH,CAAC;YACH,CAAC;YACD,2EAA2E;YAC3E,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,IAAI,GAAG,EAAE,CAAC;gBACpD,YAAY,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;YAC7B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,iBAAiB;YACjB,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;YACjC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACxC,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAc,CAAC,KAAK,CAAC,EAAE,CAAC;oBAChD,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;wBACtB,2DAA2D;wBAC3D,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBAC5B,IAAI,OAAO,GAAQ,YAAY,CAAC;wBAEhC,oDAAoD;wBACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;4BACzC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;4BACxB,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,SAAS;gCAAE,MAAM;4BAC1C,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;wBAC7B,CAAC;wBAED,qDAAqD;wBACrD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;wBAC1C,IAAI,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC,KAAK,SAAS,EAAE,CAAC;4BAClD,OAAO,OAAO,CAAC,WAAW,CAAC,CAAC;wBAC9B,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,OAAO,YAAY,CAAC,GAAc,CAAC,CAAC;oBACtC,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,OAAO;QAClB,IAAI,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QACnC,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAEhD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE;gBAC3E,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;oBACpB,OAAO,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;gBAC/C,CAAC;gBACD,OAAO,sBAAsB,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;YAC5F,CAAC,CAAC,CAAC;YACH,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,QAAQ,IAAI,aAAa,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACpD,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YAC7B,QAAQ,IAAI,UAAU,CAAC;YACvB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACpC,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;gBAC7B,6CAA6C;gBAC7C,oDAAoD;gBACpD,QAAQ,IAAI,WAAW,CAAC,CAAC,mCAAmC;YAC9D,CAAC;YACD,QAAQ,IAAI,WAAW,CAAC;YACxB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnC,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAY,QAAQ,EAAE,WAAW,CAAC,CAAC;QACjE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACtB,MAAM,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAO,CAAC;YAC3D,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AA5UD,gCA4UC;AAED;;;GAGG;AACH,MAAa,mBAAmB;IAC9B,YACU,EAAY,EACJ,IAAY;QADpB,OAAE,GAAF,EAAE,CAAU;QACJ,SAAI,GAAJ,IAAI,CAAQ;QAE5B,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YAC/B,wDAAwD;YACxD,+DAA+D;YAC/D,gEAAgE;YAChE,uDAAuD;YACvD,OAAO,CAAC,KAAK,CAAC,0BAA0B,IAAI,CAAC,IAAI,UAAU,EAAE,GAAG,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,WAAW;QACtB,kFAAkF;QAClF,MAAM,cAAc,GAAG;oCACS,IAAI,CAAC,IAAI;;;;KAIxC,CAAC;QACF,uGAAuG;QACvG,oEAAoE;QACpE,2GAA2G;QAC3G,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACnC,sEAAsE;QACxE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,yBAAyB,IAAI,CAAC,IAAI,IAAI,EAAE,KAAK,CAAC,CAAC;YAC7D,MAAM,KAAK,CAAC,CAAC,qCAAqC;QACpD,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CAAC,GAAsC;QACpD,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,oCAAoC;QAC9D,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,IAAA,SAAM,GAAE,CAAC;QAClC,6DAA6D;QAC7D,MAAM,EAAE,GAAG,EAAE,GAAG,WAAW,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,+CAA+C;QAEvG,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAE7C,MAAM,GAAG,GAAG,gBAAgB,IAAI,CAAC,IAAI,6BAA6B,CAAC;QACnE,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC1C,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;QACnD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,mFAAmF;YACnF,OAAO,CAAC,KAAK,CAAC,iCAAiC,IAAI,CAAC,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC;YACpE,iEAAiE;YACjE,IAAK,KAA+B,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;gBAClE,MAAM,IAAI,KAAK,CAAC,kBAAkB,KAAK,EAAE,CAAC,CAAC;YAC7C,CAAC;YACD,MAAM,KAAK,CAAC,CAAC,wBAAwB;QACvC,CAAC;IACH,CAAC;IAED;;;;;SAKK;IACL,KAAK,CAAC,UAAU,CAAC,IAA2C;QAC1D,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,oCAAoC;QAC9D,MAAM,OAAO,GAAsB,EAAE,CAAC;QAEtC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,IAAA,SAAM,GAAE,CAAC;YAClC,6DAA6D;YAC7D,MAAM,EAAE,GAAG,EAAE,GAAG,WAAW,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,+CAA+C;YAEvG,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YAE7C,MAAM,GAAG,GAAG,gBAAgB,IAAI,CAAC,IAAI,6BAA6B,CAAC;YACnE,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;gBAC1C,OAAO,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;YAC1D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,iCAAiC,IAAI,CAAC,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC;gBACpE,IAAK,KAA+B,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;oBAClE,MAAM,IAAI,KAAK,CAAC,kBAAkB,KAAK,EAAE,CAAC,CAAC;gBAC7C,CAAC;gBACD,MAAM,KAAK,CAAC,CAAC,wBAAwB;YACvC,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,OAAO,CAAC,MAAiB,EAAE,UAA0B;QACzD,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1C,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC7B,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;QACvC,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChD,CAAC;IAED;;;;OAIG;IACH,IAAI,CAAC,SAAoB,EAAE;QACzB,sEAAsE;QACtE,OAAO,IAAI,UAAU,CAAI,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACvD,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CACb,MAAiB,EACjB,MAAuB,EACvB,UAAgC,EAAE;QAElC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAEzB,qCAAqC;QACrC,MAAM,eAAe,GAAc,EAAE,CAAC;QACtC,MAAM,WAAW,GAAG,IAAI,UAAU,CAAI,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,CACnF,MAAM,EACN,eAAe,CAChB,CAAC;QACF,MAAM,SAAS,GAAG,0BAA0B,IAAI,CAAC,IAAI,WAAW,WAAW,UAAU,CAAC;QAEtF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAY,SAAS,EAAE,eAAe,CAAC,CAAC;QAE7E,IAAI,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACpC,sEAAsE;YACtE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;QACrF,CAAC;QACD,sEAAsE;QACtE,IAAI,CAAC,WAAW,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnC,MAAM,QAAQ,GAAG,IAAA,SAAM,GAAE,CAAC;YAC1B,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,IAAI,EAAO,CAAC,CAAC,mCAAmC;YAC1F,oBAAoB;YACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACxC,MAAM,SAAS,GAAG,gBAAgB,IAAI,CAAC,IAAI,6BAA6B,CAAC;YACzE,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;gBACnD,OAAO;oBACL,YAAY,EAAE,IAAI;oBAClB,YAAY,EAAE,CAAC;oBACf,aAAa,EAAE,CAAC;oBAChB,UAAU,EAAE,QAAQ;iBACrB,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,6CAA6C,IAAI,CAAC,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC;gBAChF,IAAK,KAA+B,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;oBAClE,MAAM,IAAI,KAAK,CAAC,gCAAgC,QAAQ,EAAE,CAAC,CAAC;gBAC9D,CAAC;gBACD,MAAM,KAAK,CAAC,CAAC,wBAAwB;YACvC,CAAC;QACH,CAAC;QACD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;QACrF,CAAC;QAED,IAAI,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,QAAQ,GAAG,KAAK,CAAC;QAErB,2BAA2B;QAC3B,KAAK,MAAM,QAAQ,IAAI,MAAM,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,QAAiC,CAAC,CAAC;YACzD,IAAI,CAAC,MAAM;gBAAE,SAAS;YAEtB,QAAQ,QAAQ,EAAE,CAAC;gBACjB,KAAK,MAAM;oBACT,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;wBAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;wBAC3B,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;wBAC7C,QAAQ,GAAG,IAAI,CAAC;oBAClB,CAAC;oBACD,MAAM;gBAER,KAAK,QAAQ;oBACX,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;wBAC1B,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;wBACxC,QAAQ,GAAG,IAAI,CAAC;oBAClB,CAAC;oBACD,MAAM;gBAER,KAAK,MAAM;oBACT,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;wBAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;wBAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;4BAC9B,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;4BAChE,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;gCACrC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,YAAY,GAAG,KAAK,CAAC,CAAC;gCAC5D,QAAQ,GAAG,IAAI,CAAC;4BAClB,CAAC;wBACH,CAAC;oBACH,CAAC;oBACD,MAAM;gBAER,KAAK,OAAO;oBACV,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;wBAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;wBAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;wBAE3D,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;4BAChC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;gCACpE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;oCAC/B,YAAY,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;oCAClC,QAAQ,GAAG,IAAI,CAAC;gCAClB,CAAC;4BACH,CAAC;iCAAM,CAAC;gCACN,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gCACzB,QAAQ,GAAG,IAAI,CAAC;4BAClB,CAAC;wBACH,CAAC;6BAAM,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;4BACtC,oDAAoD;4BACpD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;gCACpE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;oCAC/B,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;oCACxD,QAAQ,GAAG,IAAI,CAAC;gCAClB,CAAC;4BACH,CAAC;iCAAM,CAAC;gCACN,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;gCAC/C,QAAQ,GAAG,IAAI,CAAC;4BAClB,CAAC;wBACH,CAAC;oBACH,CAAC;oBACD,MAAM;gBAER,KAAK,OAAO;oBACV,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;wBAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;wBAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;wBAE3D,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;4BAChC,uBAAuB;4BACvB,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;gCAC5C,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;oCAC1D,iDAAiD;oCACjD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gCACxD,CAAC;gCACD,OAAO,IAAI,KAAK,KAAK,CAAC;4BACxB,CAAC,CAAC,CAAC;4BAEH,IAAI,QAAQ,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC;gCAC5C,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;gCAChD,QAAQ,GAAG,IAAI,CAAC;4BAClB,CAAC;wBACH,CAAC;oBACH,CAAC;oBACD,MAAM;YACV,CAAC;QACH,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,wBAAwB;YACxB,MAAM,gBAAgB,GAAG,kCAAkC,IAAI,CAAC,IAAI,WAAW,WAAW,EAAE,CAAC;YAC7F,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAoB,gBAAgB,EAAE,eAAe,CAAC,CAAC;YAC9F,MAAM,YAAY,GAAG,aAAa,EAAE,KAAK,IAAI,CAAC,CAAC;YAE/C,gCAAgC;YAChC,MAAM,SAAS,GAAG,WAAW,IAAI,CAAC,IAAI,8BAA8B,CAAC;YACrE,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;YAEnE,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;YAC3C,OAAO;gBACL,YAAY,EAAE,IAAI;gBAClB,YAAY,EAAE,CAAC;gBACf,aAAa,EAAE,YAAY;gBAC3B,UAAU,EAAE,IAAI,EAAE,8BAA8B;aACjD,CAAC;QACJ,CAAC;QAED,OAAO;YACL,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,CAAC,EAAE,uBAAuB;YACzC,UAAU,EAAE,IAAI;SACjB,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU,CAAC,MAAiB,EAAE,MAAuB;QACzD,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,eAAe,GAAc,EAAE,CAAC;QACtC,MAAM,WAAW,GAAG,IAAI,UAAU,CAAI,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,CACnF,MAAM,EACN,eAAe,CAChB,CAAC;QACF,MAAM,SAAS,GAAG,0BAA0B,IAAI,CAAC,IAAI,WAAW,WAAW,EAAE,CAAC;QAC9E,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAY,SAAS,EAAE,eAAe,CAAC,CAAC;QAC9E,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;QACrF,CAAC;QACD,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACvC,IAAI,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAC9C,IAAI,QAAQ,GAAG,KAAK,CAAC;YACrB,2BAA2B;YAC3B,KAAK,MAAM,QAAQ,IAAI,MAAM,EAAE,CAAC;gBAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,QAAiC,CAAC,CAAC;gBACzD,IAAI,CAAC,MAAM;oBAAE,SAAS;gBACtB,QAAQ,QAAQ,EAAE,CAAC;oBACjB,KAAK,MAAM;wBACT,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;4BAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;4BAC3B,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;4BAC7C,QAAQ,GAAG,IAAI,CAAC;wBAClB,CAAC;wBACD,MAAM;oBACR,KAAK,QAAQ;wBACX,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;4BAC1B,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;4BACxC,QAAQ,GAAG,IAAI,CAAC;wBAClB,CAAC;wBACD,MAAM;oBACR,KAAK,MAAM;wBACT,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;4BAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;4BAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gCAC9B,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gCAChE,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;oCACrC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,YAAY,GAAG,KAAK,CAAC,CAAC;oCAC5D,QAAQ,GAAG,IAAI,CAAC;gCAClB,CAAC;4BACH,CAAC;wBACH,CAAC;wBACD,MAAM;oBACR,KAAK,OAAO;wBACV,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;4BAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;4BAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;4BAC3D,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;gCAChC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;oCACpE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;wCAC/B,YAAY,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;wCAClC,QAAQ,GAAG,IAAI,CAAC;oCAClB,CAAC;gCACH,CAAC;qCAAM,CAAC;oCACN,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oCACzB,QAAQ,GAAG,IAAI,CAAC;gCAClB,CAAC;4BACH,CAAC;iCAAM,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gCACtC,oDAAoD;gCACpD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;oCACpE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;wCAC/B,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;wCACxD,QAAQ,GAAG,IAAI,CAAC;oCAClB,CAAC;gCACH,CAAC;qCAAM,CAAC;oCACN,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;oCAC/C,QAAQ,GAAG,IAAI,CAAC;gCAClB,CAAC;4BACH,CAAC;wBACH,CAAC;wBACD,MAAM;oBACR,KAAK,OAAO;wBACV,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;4BAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;4BAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;4BAC3D,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;gCAClC,uBAAuB;gCACrB,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;oCAC5C,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;wCAC1D,iDAAiD;wCACjD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;oCACxD,CAAC;oCACD,OAAO,IAAI,KAAK,KAAK,CAAC;gCACxB,CAAC,CAAC,CAAC;gCAEH,IAAI,QAAQ,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC;oCAC5C,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;oCAChD,QAAQ,GAAG,IAAI,CAAC;gCAClB,CAAC;4BACH,CAAC;wBACH,CAAC;wBACD,MAAM;oBACR,gCAAgC;oBAChC;wBACE,MAAM,IAAI,KAAK,CAAC,gCAAgC,QAAQ,EAAE,CAAC,CAAC;gBAChE,CAAC;YACH,CAAC;YACD,IAAI,QAAQ,EAAE,CAAC;gBACb,gCAAgC;gBAChC,MAAM,SAAS,GAAG,WAAW,IAAI,CAAC,IAAI,8BAA8B,CAAC;gBACrE,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;gBACnE,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;gBAC3C,aAAa,EAAE,CAAC;gBAChB,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;QACD,OAAO;YACL,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,YAAY,CAAC,MAAM;YACjC,aAAa,EAAE,aAAa;YAC5B,UAAU,EAAE,IAAI,EAAE,8BAA8B;SACjD,CAAC;IACJ,CAAC;IAED,+CAA+C;IAC/C,8DAA8D;IACtD,cAAc,CAAC,GAAQ,EAAE,IAAY,EAAE,KAAU;QACvD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,OAAO,GAAG,GAAG,CAAC;QAElB,0CAA0C;QAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YAEpB,4CAA4C;YAC5C,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;gBACxD,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;YACpB,CAAC;iBAAM,IAAI,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;gBAC5C,4EAA4E;gBAC5E,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;YACpB,CAAC;YAED,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;QAED,iCAAiC;QACjC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;IACzC,CAAC;IAED,oBAAoB;IACpB,8DAA8D;IACtD,gBAAgB,CAAC,GAAQ,EAAE,IAAY;QAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,OAAO,GAAG,GAAG,CAAC;QAElB,0CAA0C;QAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;gBAC5F,OAAO,CAAC,uCAAuC;YACjD,CAAC;YACD,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;QAED,uCAAuC;QACvC,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;IAED,6BAA6B;IAC7B,8DAA8D;IACtD,cAAc,CAAC,GAAQ,EAAE,IAAY;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,OAAO,GAAG,GAAG,CAAC;QAElB,4BAA4B;QAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC/B,OAAO,SAAS,CAAC,CAAC,qBAAqB;YACzC,CAAC;YACD,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,SAAS,CAAC,MAAiB;QAC/B,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAEzB,MAAM,eAAe,GAAc,EAAE,CAAC;QACtC,MAAM,WAAW,GAAG,IAAI,UAAU,CAAI,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,CACnF,MAAM,EACN,eAAe,CAChB,CAAC;QAEF,oDAAoD;QACpD,MAAM,QAAQ,GAAG,kCAAkC,IAAI,CAAC,IAAI,WAAW,WAAW,EAAE,CAAC;QACrF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAoB,QAAQ,EAAE,eAAe,CAAC,CAAC;QAEpF,MAAM,SAAS,GAAG;qBACD,IAAI,CAAC,IAAI;2CACa,IAAI,CAAC,IAAI,WAAW,WAAW;KACrE,CAAC;QAEF,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;QAC9C,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnE,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU,CAAC,MAAiB;QAChC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAEzB,MAAM,eAAe,GAAc,EAAE,CAAC;QACtC,MAAM,WAAW,GAAG,IAAI,UAAU,CAAI,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,CACnF,MAAM,EACN,eAAe,CAChB,CAAC;QAEF,oDAAoD;QACpD,MAAM,QAAQ,GAAG,kCAAkC,IAAI,CAAC,IAAI,WAAW,WAAW,EAAE,CAAC;QACrF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAoB,QAAQ,EAAE,eAAe,CAAC,CAAC;QAEpF,MAAM,SAAS,GAAG,gBAAgB,IAAI,CAAC,IAAI,WAAW,WAAW,EAAE,CAAC;QAEpE,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;QAC9C,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnF,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,cAAc,CAAC,SAAoB,EAAE;QACzC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAEzB,MAAM,cAAc,GAAc,EAAE,CAAC;QACrC,MAAM,WAAW,GAAG,IAAI,UAAU,CAAI,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,CACnF,MAAM,EACN,cAAc,CACf,CAAC;QACF,MAAM,QAAQ,GAAG,kCAAkC,IAAI,CAAC,IAAI,WAAW,WAAW,EAAE,CAAC;QAErF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAoB,QAAQ,EAAE,cAAc,CAAC,CAAC;QAC9E,OAAO,MAAM,EAAE,KAAK,IAAI,CAAC,CAAC;IAC5B,CAAC;CACF;AA3iBD,kDA2iBC"}
|
|
1
|
+
{"version":3,"file":"collection.js","sourceRoot":"","sources":["../src/collection.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -5,16 +5,20 @@ export { MongoLiteCollection } from './collection';
|
|
|
5
5
|
export * from './types';
|
|
6
6
|
export interface MongoLiteClientOptions extends DBMongoLiteOptions {
|
|
7
7
|
}
|
|
8
|
+
type MongoLiteOptions = {
|
|
9
|
+
verbose?: boolean;
|
|
10
|
+
};
|
|
8
11
|
/**
|
|
9
12
|
* MongoLite class is the main entry point for interacting with the SQLite-backed database.
|
|
10
13
|
*/
|
|
11
14
|
export declare class MongoLite {
|
|
12
15
|
private db;
|
|
16
|
+
private options;
|
|
13
17
|
/**
|
|
14
18
|
* Creates a new MongoLite client instance.
|
|
15
19
|
* @param dbPathOrOptions Path to the SQLite database file or an options object.
|
|
16
20
|
*/
|
|
17
|
-
constructor(dbPathOrOptions: string | MongoLiteClientOptions);
|
|
21
|
+
constructor(dbPathOrOptions: string | MongoLiteClientOptions, options?: MongoLiteOptions);
|
|
18
22
|
/**
|
|
19
23
|
* Connects to the database.
|
|
20
24
|
* Note: Most operations will auto-connect if needed.
|
package/dist/index.js
CHANGED
|
@@ -28,8 +28,9 @@ class MongoLite {
|
|
|
28
28
|
* Creates a new MongoLite client instance.
|
|
29
29
|
* @param dbPathOrOptions Path to the SQLite database file or an options object.
|
|
30
30
|
*/
|
|
31
|
-
constructor(dbPathOrOptions) {
|
|
31
|
+
constructor(dbPathOrOptions, options = {}) {
|
|
32
32
|
this.db = new db_1.SQLiteDB(dbPathOrOptions);
|
|
33
|
+
this.options = options;
|
|
33
34
|
}
|
|
34
35
|
/**
|
|
35
36
|
* Connects to the database.
|
|
@@ -50,7 +51,7 @@ class MongoLite {
|
|
|
50
51
|
* @returns A MongoLiteCollection instance.
|
|
51
52
|
*/
|
|
52
53
|
collection(name) {
|
|
53
|
-
return new collection_1.MongoLiteCollection(this.db, name);
|
|
54
|
+
return new collection_1.MongoLiteCollection(this.db, name, this.options);
|
|
54
55
|
}
|
|
55
56
|
}
|
|
56
57
|
exports.MongoLite = MongoLite;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6BAAwE;AACxE,6CAAmD;AAGnD,2CAAmD;AAA1C,iHAAA,mBAAmB,OAAA;AAC5B,0CAAwB;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6BAAwE;AACxE,6CAAmD;AAGnD,2CAAmD;AAA1C,iHAAA,mBAAmB,OAAA;AAC5B,0CAAwB;AAOxB;;GAEG;AACH,MAAa,SAAS;IAIpB;;;OAGG;IACH,YAAY,eAAgD,EAAE,UAA4B,EAAE;QAC1F,IAAI,CAAC,EAAE,GAAG,IAAI,aAAQ,CAAC,eAAe,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO;QACX,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACH,UAAU,CAA4C,IAAY;QAChE,OAAO,IAAI,gCAAmB,CAAI,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACjE,CAAC;CACF;AApCD,8BAoCC"}
|
package/package.json
CHANGED
|
@@ -1,21 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mongolite-ts",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.7",
|
|
4
4
|
"description": "A MongoDB-like client using SQLite as a persistent store, written in TypeScript.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
|
+
"type": "module",
|
|
6
7
|
"types": "dist/index.d.ts",
|
|
7
8
|
"scripts": {
|
|
8
9
|
"build": "tsc",
|
|
9
|
-
"test": "
|
|
10
|
-
"test:watch": "jest --watch",
|
|
11
|
-
"test:coverage": "jest --coverage",
|
|
10
|
+
"test": "node --import tsx tests/*.test.ts",
|
|
12
11
|
"prepare": "npm run build",
|
|
13
12
|
"lint": "eslint src/**/*.ts tests/**/*.ts",
|
|
14
13
|
"lint:fix": "eslint src/**/*.ts tests/**/*.ts --fix"
|
|
15
14
|
},
|
|
16
15
|
"repository": {
|
|
17
16
|
"type": "git",
|
|
18
|
-
"url": "git+https://github.com/
|
|
17
|
+
"url": "git+https://github.com/semics-tech/mongolite.git"
|
|
19
18
|
},
|
|
20
19
|
"keywords": [
|
|
21
20
|
"mongodb",
|
|
@@ -26,25 +25,21 @@
|
|
|
26
25
|
"nosql",
|
|
27
26
|
"json"
|
|
28
27
|
],
|
|
29
|
-
"author": "
|
|
28
|
+
"author": "Oliver Breeden <oliver@semics.co.uk>",
|
|
30
29
|
"license": "MIT",
|
|
31
30
|
"bugs": {
|
|
32
|
-
"url": "https://github.com/
|
|
31
|
+
"url": "https://github.com/semics-tech/mongolite/issues"
|
|
33
32
|
},
|
|
34
|
-
"homepage": "https://github.com/
|
|
33
|
+
"homepage": "https://github.com/semics-tech/mongolite-ts#readme",
|
|
35
34
|
"devDependencies": {
|
|
36
|
-
"@types/jest": "^29.5.12",
|
|
37
35
|
"@types/node": "^20.17.57",
|
|
38
36
|
"@types/sqlite3": "^3.1.11",
|
|
39
37
|
"@typescript-eslint/eslint-plugin": "^7.9.0",
|
|
40
38
|
"@typescript-eslint/parser": "^7.9.0",
|
|
41
39
|
"eslint": "^8.57.0",
|
|
42
40
|
"eslint-config-prettier": "^9.1.0",
|
|
43
|
-
"eslint-plugin-jest": "^28.5.0",
|
|
44
41
|
"eslint-plugin-prettier": "^5.1.3",
|
|
45
|
-
"jest": "^29.7.0",
|
|
46
42
|
"prettier": "^3.2.5",
|
|
47
|
-
"ts-jest": "^29.1.2",
|
|
48
43
|
"tsx": "^4.19.4",
|
|
49
44
|
"typescript": "^5.4.5"
|
|
50
45
|
},
|