@c9up/atlas 0.1.18 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +55 -14
- package/db.darwin-arm64.node +0 -0
- package/db.darwin-x64.node +0 -0
- package/db.linux-arm64-gnu.node +0 -0
- package/db.linux-x64-gnu.node +0 -0
- package/db.win32-x64-msvc.node +0 -0
- package/dist/AtlasProvider.d.ts +6 -0
- package/dist/AtlasProvider.d.ts.map +1 -1
- package/dist/AtlasProvider.js +2 -2
- package/dist/AtlasProvider.js.map +1 -1
- package/dist/BaseEntity.d.ts +171 -7
- package/dist/BaseEntity.d.ts.map +1 -1
- package/dist/BaseEntity.js +339 -31
- package/dist/BaseEntity.js.map +1 -1
- package/dist/BaseModel.d.ts +91 -0
- package/dist/BaseModel.d.ts.map +1 -0
- package/dist/BaseModel.js +193 -0
- package/dist/BaseModel.js.map +1 -0
- package/dist/BaseRepository.d.ts +77 -15
- package/dist/BaseRepository.d.ts.map +1 -1
- package/dist/BaseRepository.js +1423 -354
- package/dist/BaseRepository.js.map +1 -1
- package/dist/ModelQuery.d.ts +429 -11
- package/dist/ModelQuery.d.ts.map +1 -1
- package/dist/ModelQuery.js +1733 -145
- package/dist/ModelQuery.js.map +1 -1
- package/dist/Transaction.d.ts +17 -0
- package/dist/Transaction.d.ts.map +1 -1
- package/dist/Transaction.js +57 -5
- package/dist/Transaction.js.map +1 -1
- package/dist/adapters/NapiDbAdapter.d.ts +33 -4
- package/dist/adapters/NapiDbAdapter.d.ts.map +1 -1
- package/dist/adapters/NapiDbAdapter.js +101 -11
- package/dist/adapters/NapiDbAdapter.js.map +1 -1
- package/dist/console/migrationCommands.d.ts +48 -0
- package/dist/console/migrationCommands.d.ts.map +1 -0
- package/dist/console/migrationCommands.js +220 -0
- package/dist/console/migrationCommands.js.map +1 -0
- package/dist/decorators/entity.d.ts +37 -6
- package/dist/decorators/entity.d.ts.map +1 -1
- package/dist/decorators/entity.js +32 -2
- package/dist/decorators/entity.js.map +1 -1
- package/dist/events.d.ts +64 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +82 -0
- package/dist/events.js.map +1 -0
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/metadata-keys.d.ts +3 -2
- package/dist/metadata-keys.d.ts.map +1 -1
- package/dist/naming/NamingStrategy.d.ts +7 -0
- package/dist/naming/NamingStrategy.d.ts.map +1 -1
- package/dist/naming/NamingStrategy.js +16 -0
- package/dist/naming/NamingStrategy.js.map +1 -1
- package/dist/schema/Migration.d.ts +26 -3
- package/dist/schema/Migration.d.ts.map +1 -1
- package/dist/schema/Migration.js +33 -24
- package/dist/schema/Migration.js.map +1 -1
- package/dist/schema/MigrationRunner.d.ts +43 -32
- package/dist/schema/MigrationRunner.d.ts.map +1 -1
- package/dist/schema/MigrationRunner.js +211 -26
- package/dist/schema/MigrationRunner.js.map +1 -1
- package/dist/schema/Schema.d.ts +57 -0
- package/dist/schema/Schema.d.ts.map +1 -1
- package/dist/schema/Schema.js +138 -3
- package/dist/schema/Schema.js.map +1 -1
- package/dist/schema/SchemaCheck.d.ts.map +1 -1
- package/dist/schema/SchemaCheck.js +3 -1
- package/dist/schema/SchemaCheck.js.map +1 -1
- package/dist/schema/TableBuilder.d.ts +247 -8
- package/dist/schema/TableBuilder.d.ts.map +1 -1
- package/dist/schema/TableBuilder.js +607 -41
- package/dist/schema/TableBuilder.js.map +1 -1
- package/dist/schema/catalog.d.ts +47 -0
- package/dist/schema/catalog.d.ts.map +1 -0
- package/dist/schema/catalog.js +111 -0
- package/dist/schema/catalog.js.map +1 -0
- package/dist/schema/introspect.js.map +1 -1
- package/dist/schema/types.d.ts +150 -1
- package/dist/schema/types.d.ts.map +1 -1
- package/dist/schema/types.js +11 -0
- package/dist/schema/types.js.map +1 -1
- package/dist/services/db.d.ts +6 -0
- package/dist/services/db.d.ts.map +1 -1
- package/dist/services/db.js +17 -0
- package/dist/services/db.js.map +1 -1
- package/dist/testing/DatabaseCleanup.d.ts +7 -4
- package/dist/testing/DatabaseCleanup.d.ts.map +1 -1
- package/dist/testing/DatabaseCleanup.js +21 -18
- package/dist/testing/DatabaseCleanup.js.map +1 -1
- package/dist/testing/Factory.d.ts +70 -5
- package/dist/testing/Factory.d.ts.map +1 -1
- package/dist/testing/Factory.js +209 -10
- package/dist/testing/Factory.js.map +1 -1
- package/index.darwin-arm64.node +0 -0
- package/index.darwin-x64.node +0 -0
- package/index.linux-arm64-gnu.node +0 -0
- package/index.linux-x64-gnu.node +0 -0
- package/index.win32-x64-msvc.node +0 -0
- package/package.json +4 -1
- package/scripts/guard-publish.mjs +15 -0
- package/src/AtlasProvider.ts +8 -1
- package/src/BaseEntity.ts +449 -40
- package/src/BaseModel.ts +324 -0
- package/src/BaseRepository.ts +1659 -371
- package/src/ModelQuery.ts +2290 -203
- package/src/Transaction.ts +68 -5
- package/src/adapters/NapiDbAdapter.ts +159 -10
- package/src/console/migrationCommands.ts +258 -0
- package/src/decorators/entity.ts +53 -6
- package/src/events.ts +112 -0
- package/src/index.ts +19 -0
- package/src/metadata-keys.ts +3 -2
- package/src/naming/NamingStrategy.ts +23 -0
- package/src/schema/Migration.ts +42 -3
- package/src/schema/MigrationRunner.ts +270 -27
- package/src/schema/Schema.ts +210 -3
- package/src/schema/SchemaCheck.ts +7 -2
- package/src/schema/TableBuilder.ts +735 -41
- package/src/schema/catalog.ts +166 -0
- package/src/schema/introspect.ts +3 -4
- package/src/schema/types.ts +137 -2
- package/src/services/db.ts +28 -0
- package/src/testing/DatabaseCleanup.ts +23 -22
- package/src/testing/Factory.ts +332 -15
package/dist/ModelQuery.d.ts
CHANGED
|
@@ -6,27 +6,46 @@
|
|
|
6
6
|
*
|
|
7
7
|
* Builds SQL fluently and executes against the database connection.
|
|
8
8
|
*/
|
|
9
|
-
import type
|
|
10
|
-
import type
|
|
9
|
+
import { type BaseEntity, type DomainEvent } from "./BaseEntity.js";
|
|
10
|
+
import { type DatabaseConnection } from "./BaseRepository.js";
|
|
11
11
|
import { type AtlasDialect } from "./query/native.js";
|
|
12
12
|
type PreloadCallback = (query: ModelQuery<BaseEntity>) => void;
|
|
13
13
|
type ColumnResolver = (column: string) => string;
|
|
14
|
+
/**
|
|
15
|
+
* Lower a value bound for a given property to its DB form — mirrors
|
|
16
|
+
* `BaseRepository.#applyPrepare` (a `@column.dateTime` DateTime → ISO string, a
|
|
17
|
+
* `@Column({ prepare })` adapter runs). Threaded into ModelQuery so the fluent
|
|
18
|
+
* `update()` / WHERE paths don't bypass prepare the way direct repo writes don't.
|
|
19
|
+
*/
|
|
20
|
+
type ValuePreparer = (column: string, value: unknown) => unknown;
|
|
14
21
|
type WhereCallback = (q: ModelQuery<BaseEntity>) => void;
|
|
15
|
-
/** Enable or disable Atlas strict mode. When enabled, whereRaw/joinRaw throw in user code. */
|
|
22
|
+
/** Enable or disable Atlas strict mode. When enabled, whereRaw/joinRaw/havingRaw throw in user code. */
|
|
16
23
|
export declare function setAtlasStrictMode(enabled: boolean): void;
|
|
17
24
|
/** Current strict mode state — lazy env var read on first access. */
|
|
18
25
|
export declare function isAtlasStrictMode(): boolean;
|
|
19
26
|
export declare function runWithAtlasInternalBypass<T>(fn: () => T): T;
|
|
20
|
-
/**
|
|
27
|
+
/**
|
|
28
|
+
* Multi-condition join builder passed to innerJoin/leftJoin/rightJoin callbacks.
|
|
29
|
+
* `on`/`andOn`/`orOn` join two COLUMNS; `onVal`/`andOnVal`/`orOnVal` join a column
|
|
30
|
+
* to a bound VALUE (AdonisJS/Knex parity) — the value flows through the join-params
|
|
31
|
+
* channel into the compiled parameter list.
|
|
32
|
+
*/
|
|
21
33
|
interface JoinBuilder {
|
|
34
|
+
/** A column-to-column part (`value` absent) or a column-to-value part (`value` set). */
|
|
22
35
|
parts: Array<{
|
|
23
36
|
kind: "and" | "or";
|
|
24
37
|
left: string;
|
|
25
|
-
right
|
|
38
|
+
right?: string;
|
|
39
|
+
value?: {
|
|
40
|
+
v: unknown;
|
|
41
|
+
};
|
|
26
42
|
}>;
|
|
27
43
|
on(left: string, right: string): JoinBuilder;
|
|
28
44
|
andOn(left: string, right: string): JoinBuilder;
|
|
45
|
+
orOn(left: string, right: string): JoinBuilder;
|
|
46
|
+
onVal(left: string, value: unknown): JoinBuilder;
|
|
29
47
|
andOnVal(left: string, value: unknown): JoinBuilder;
|
|
48
|
+
orOnVal(left: string, value: unknown): JoinBuilder;
|
|
30
49
|
}
|
|
31
50
|
/** Offset-based paginator (Story 29.10). */
|
|
32
51
|
export declare class Paginator<T> {
|
|
@@ -43,24 +62,53 @@ export declare class Paginator<T> {
|
|
|
43
62
|
total: number;
|
|
44
63
|
perPage: number;
|
|
45
64
|
currentPage: number;
|
|
46
|
-
});
|
|
65
|
+
}, metaKeys?: Record<string, string>);
|
|
47
66
|
all(): T[];
|
|
67
|
+
/** Total row count across all pages. */
|
|
68
|
+
get total(): number;
|
|
69
|
+
/** Rows per page. */
|
|
70
|
+
get perPage(): number;
|
|
71
|
+
/** The current page number. */
|
|
72
|
+
get currentPage(): number;
|
|
73
|
+
/** The last page number. */
|
|
74
|
+
get lastPage(): number;
|
|
75
|
+
/** The first page number (always 1). */
|
|
76
|
+
get firstPage(): number;
|
|
77
|
+
/** True when there is more than one page of results (AdonisJS `hasPages`). */
|
|
78
|
+
get hasPages(): boolean;
|
|
79
|
+
/** True when there is at least one more page after the current one (AdonisJS `hasMorePages`). */
|
|
80
|
+
get hasMorePages(): boolean;
|
|
48
81
|
serialize(opts?: {
|
|
49
82
|
fields?: string[];
|
|
50
83
|
}): {
|
|
51
84
|
data: unknown[];
|
|
52
|
-
meta:
|
|
85
|
+
meta: Record<string, unknown>;
|
|
53
86
|
};
|
|
54
87
|
baseUrl(url: string): this;
|
|
55
88
|
queryString(qs: Record<string, unknown>): this;
|
|
89
|
+
/**
|
|
90
|
+
* Build the URL for a page number, honouring `baseUrl` + `queryString`.
|
|
91
|
+
* Returns `''` when no `baseUrl` was set (AdonisJS `getUrl`).
|
|
92
|
+
*/
|
|
93
|
+
getUrl(page: number): string;
|
|
94
|
+
/** URL of the next page, or `null` when on the last page (AdonisJS `getNextPageUrl`). */
|
|
95
|
+
getNextPageUrl(): string | null;
|
|
96
|
+
/** URL of the previous page, or `null` when on the first page (AdonisJS `getPreviousPageUrl`). */
|
|
97
|
+
getPreviousPageUrl(): string | null;
|
|
98
|
+
/** URLs for an inclusive page range, clamped to `[1, lastPage]` (AdonisJS `getUrlsForRange`). */
|
|
99
|
+
getUrlsForRange(start: number, end: number): Array<{
|
|
100
|
+
page: number;
|
|
101
|
+
url: string;
|
|
102
|
+
isActive: boolean;
|
|
103
|
+
}>;
|
|
56
104
|
toJSON(): {
|
|
57
105
|
data: unknown[];
|
|
58
|
-
meta:
|
|
106
|
+
meta: Record<string, unknown>;
|
|
59
107
|
};
|
|
60
108
|
}
|
|
61
109
|
export declare class ModelQuery<T extends BaseEntity> {
|
|
62
110
|
#private;
|
|
63
|
-
constructor(tableName: string, db: DatabaseConnection, hydrateFn: (row: Record<string, unknown>) => T, entityClass: new () => T, resolveColumn?: ColumnResolver, softDeletes?: boolean, dialect?: AtlasDialect);
|
|
111
|
+
constructor(tableName: string, db: DatabaseConnection, hydrateFn: (row: Record<string, unknown>) => T, entityClass: new () => T, resolveColumn?: ColumnResolver, softDeletes?: boolean, dialect?: AtlasDialect, prepareValue?: ValuePreparer, onDomainEvents?: (events: DomainEvent[]) => Promise<void>);
|
|
64
112
|
/** Include soft-deleted rows in the result (default behavior excludes them). */
|
|
65
113
|
withTrashed(): this;
|
|
66
114
|
/** Return ONLY soft-deleted rows (deleted_at IS NOT NULL). */
|
|
@@ -84,6 +132,29 @@ export declare class ModelQuery<T extends BaseEntity> {
|
|
|
84
132
|
orWhere(column: string, operator: string, value: unknown): this;
|
|
85
133
|
whereNull(column: string): this;
|
|
86
134
|
whereNotNull(column: string): this;
|
|
135
|
+
andWhere(callback: WhereCallback): this;
|
|
136
|
+
andWhere(column: string, value: unknown): this;
|
|
137
|
+
andWhere(column: string, operator: string, value: unknown): this;
|
|
138
|
+
/** Alias of {@link whereNot} (Lucid parity). */
|
|
139
|
+
andWhereNot(column: string, value: unknown): this;
|
|
140
|
+
/** Alias of {@link whereIn} (Lucid parity). */
|
|
141
|
+
andWhereIn(column: string, values: readonly unknown[]): this;
|
|
142
|
+
/** Alias of {@link whereNotIn} (Lucid parity). */
|
|
143
|
+
andWhereNotIn(column: string, values: readonly unknown[]): this;
|
|
144
|
+
/** Alias of {@link whereNull} (Lucid parity). */
|
|
145
|
+
andWhereNull(column: string): this;
|
|
146
|
+
/** Alias of {@link whereNotNull} (Lucid parity). */
|
|
147
|
+
andWhereNotNull(column: string): this;
|
|
148
|
+
/** Alias of {@link whereBetween} (Lucid parity). */
|
|
149
|
+
andWhereBetween(column: string, range: readonly [unknown, unknown]): this;
|
|
150
|
+
/** Alias of {@link whereNotBetween} (Lucid parity). */
|
|
151
|
+
andWhereNotBetween(column: string, range: readonly [unknown, unknown]): this;
|
|
152
|
+
/** Alias of {@link whereLike} (Lucid parity). */
|
|
153
|
+
andWhereLike(column: string, pattern: string): this;
|
|
154
|
+
/** Alias of {@link whereILike} (Lucid parity). */
|
|
155
|
+
andWhereILike(column: string, pattern: string): this;
|
|
156
|
+
/** Alias of {@link whereColumn} (Lucid parity). */
|
|
157
|
+
andWhereColumn(left: string, operator: string, right: string): this;
|
|
87
158
|
/** `WHERE col != ?` — negation of `where`. */
|
|
88
159
|
whereNot(column: string, value: unknown): this;
|
|
89
160
|
/** `WHERE col IN (...)` — accepts an array of values OR a `ModelQuery` subquery source. */
|
|
@@ -102,6 +173,24 @@ export declare class ModelQuery<T extends BaseEntity> {
|
|
|
102
173
|
* on SQLite and MySQL at compile time.
|
|
103
174
|
*/
|
|
104
175
|
whereILike(column: string, pattern: string): this;
|
|
176
|
+
/** `OR col IS NULL`. */
|
|
177
|
+
orWhereNull(column: string): this;
|
|
178
|
+
/** `OR col IS NOT NULL`. */
|
|
179
|
+
orWhereNotNull(column: string): this;
|
|
180
|
+
/** `OR col != ?`. */
|
|
181
|
+
orWhereNot(column: string, value: unknown): this;
|
|
182
|
+
/** `OR col IN (...)` — array or `ModelQuery` subquery source. */
|
|
183
|
+
orWhereIn(column: string, source: readonly unknown[] | ModelQuery<BaseEntity>): this;
|
|
184
|
+
/** `OR col NOT IN (...)` — array or `ModelQuery` subquery source. */
|
|
185
|
+
orWhereNotIn(column: string, source: readonly unknown[] | ModelQuery<BaseEntity>): this;
|
|
186
|
+
/** `OR col BETWEEN ? AND ?`. */
|
|
187
|
+
orWhereBetween(column: string, range: readonly [unknown, unknown]): this;
|
|
188
|
+
/** `OR col NOT BETWEEN ? AND ?`. */
|
|
189
|
+
orWhereNotBetween(column: string, range: readonly [unknown, unknown]): this;
|
|
190
|
+
/** `OR col LIKE ?`. */
|
|
191
|
+
orWhereLike(column: string, pattern: string): this;
|
|
192
|
+
/** `OR col ILIKE ?` (rewritten to LOWER() LIKE LOWER() on sqlite/mysql). */
|
|
193
|
+
orWhereILike(column: string, pattern: string): this;
|
|
105
194
|
/**
|
|
106
195
|
* **⚠ UNSAFE** — append a raw SQL fragment to the WHERE clause with
|
|
107
196
|
* `?`-style bindings. The Rust compiler re-indexes the placeholders so they
|
|
@@ -125,6 +214,29 @@ export declare class ModelQuery<T extends BaseEntity> {
|
|
|
125
214
|
* @unsafe Raw SQL fragment — never concatenate user input into `sql`.
|
|
126
215
|
*/
|
|
127
216
|
whereRaw(sql: string, bindings?: readonly unknown[]): this;
|
|
217
|
+
/** Alias of {@link whereRaw} (Lucid parity). Subject to the same strict-mode gate. */
|
|
218
|
+
andWhereRaw(sql: string, bindings?: readonly unknown[]): this;
|
|
219
|
+
/**
|
|
220
|
+
* `OR <raw fragment>` (Lucid parity).
|
|
221
|
+
*
|
|
222
|
+
* @unsafe Raw SQL fragment — never concatenate user input into `sql`.
|
|
223
|
+
* Subject to the same strict-mode gate as {@link whereRaw}.
|
|
224
|
+
*/
|
|
225
|
+
orWhereRaw(sql: string, bindings?: readonly unknown[]): this;
|
|
226
|
+
/**
|
|
227
|
+
* Framework-internal: register the deferred m2m EXISTS predicate for a lazy
|
|
228
|
+
* `related().query()`. The builder is re-invoked on every `#buildSpec()` with
|
|
229
|
+
* the pivot constraints known at that moment, so `.wherePivot()` added after
|
|
230
|
+
* the proxy returned still applies. Not exported from the barrel.
|
|
231
|
+
*/
|
|
232
|
+
setPivotExistsBuilder(builder: (pivotWheres: ReadonlyArray<{
|
|
233
|
+
column: string;
|
|
234
|
+
operator: string;
|
|
235
|
+
value: unknown;
|
|
236
|
+
}>) => {
|
|
237
|
+
sql: string;
|
|
238
|
+
bindings: unknown[];
|
|
239
|
+
}): this;
|
|
128
240
|
/**
|
|
129
241
|
* **SAFE** alternative to `whereRaw` for the common case of a single
|
|
130
242
|
* SQL expression built from a validated column + operator + bound value.
|
|
@@ -143,6 +255,73 @@ export declare class ModelQuery<T extends BaseEntity> {
|
|
|
143
255
|
*/
|
|
144
256
|
whereExpr(column: string, operator: string, value: unknown): this;
|
|
145
257
|
whereExpr(column: string, extraExpression: string, operator: string, value: unknown): this;
|
|
258
|
+
/**
|
|
259
|
+
* Compare two COLUMNS (AdonisJS/Knex `whereColumn`) — `WHERE "a" op "b"`.
|
|
260
|
+
* Both sides go through the identifier quoter (injection-safe) and the
|
|
261
|
+
* operator is allow-listed; nothing is bound (it's a column reference, not a
|
|
262
|
+
* value), which the standard `where`/`whereExpr` value-binding path can't do.
|
|
263
|
+
*/
|
|
264
|
+
/** `WHERE EXISTS (subquery)` (Lucid parity). */
|
|
265
|
+
whereExists(subquery: ModelQuery<BaseEntity>): this;
|
|
266
|
+
/** Alias of {@link whereExists} (Lucid parity). */
|
|
267
|
+
andWhereExists(subquery: ModelQuery<BaseEntity>): this;
|
|
268
|
+
/** `OR EXISTS (subquery)` (Lucid parity). */
|
|
269
|
+
orWhereExists(subquery: ModelQuery<BaseEntity>): this;
|
|
270
|
+
/** `WHERE NOT EXISTS (subquery)` (Lucid parity). */
|
|
271
|
+
whereNotExists(subquery: ModelQuery<BaseEntity>): this;
|
|
272
|
+
/** Alias of {@link whereNotExists} (Lucid parity). */
|
|
273
|
+
andWhereNotExists(subquery: ModelQuery<BaseEntity>): this;
|
|
274
|
+
/** `OR NOT EXISTS (subquery)` (Lucid parity). */
|
|
275
|
+
orWhereNotExists(subquery: ModelQuery<BaseEntity>): this;
|
|
276
|
+
/**
|
|
277
|
+
* `WHERE <col at path> <op> ?` — compare a value inside a JSON column
|
|
278
|
+
* (Lucid/Knex `whereJsonPath`). `path` is a JSONPath (`$.a.b`, `$.items[0]`).
|
|
279
|
+
*
|
|
280
|
+
* query.whereJsonPath('data', '$.address.city', '=', 'Paris')
|
|
281
|
+
*/
|
|
282
|
+
whereJsonPath(column: string, path: string, operator: string, value: unknown): this;
|
|
283
|
+
/** Alias of {@link whereJsonPath} (Lucid parity). */
|
|
284
|
+
andWhereJsonPath(column: string, path: string, operator: string, value: unknown): this;
|
|
285
|
+
/** `OR <col at path> <op> ?` (Lucid parity). */
|
|
286
|
+
orWhereJsonPath(column: string, path: string, operator: string, value: unknown): this;
|
|
287
|
+
/**
|
|
288
|
+
* `WHERE <col> @> ?` — the JSON column contains `value` (Lucid/Knex
|
|
289
|
+
* `whereJsonSupersetOf`). `value` is any JSON-serialisable value.
|
|
290
|
+
*
|
|
291
|
+
* Postgres and MySQL only — SQLite has no JSON containment operator and the
|
|
292
|
+
* compiler raises `E_UNSUPPORTED` there.
|
|
293
|
+
*/
|
|
294
|
+
whereJsonSupersetOf(column: string, value: unknown): this;
|
|
295
|
+
/** Alias of {@link whereJsonSupersetOf} (Lucid parity). */
|
|
296
|
+
andWhereJsonSupersetOf(column: string, value: unknown): this;
|
|
297
|
+
/** `OR <col> @> ?` (Lucid parity). See {@link whereJsonSupersetOf}. */
|
|
298
|
+
orWhereJsonSupersetOf(column: string, value: unknown): this;
|
|
299
|
+
/** `WHERE NOT (<col> @> ?)` (Lucid parity). */
|
|
300
|
+
whereNotJsonSupersetOf(column: string, value: unknown): this;
|
|
301
|
+
/** `OR NOT (<col> @> ?)` (Lucid parity). */
|
|
302
|
+
orWhereNotJsonSupersetOf(column: string, value: unknown): this;
|
|
303
|
+
/**
|
|
304
|
+
* `WHERE <col> <@ ?` — the JSON column is contained in `value` (Lucid/Knex
|
|
305
|
+
* `whereJsonSubsetOf`). Postgres/MySQL only; see {@link whereJsonSupersetOf}.
|
|
306
|
+
*/
|
|
307
|
+
whereJsonSubsetOf(column: string, value: unknown): this;
|
|
308
|
+
/** Alias of {@link whereJsonSubsetOf} (Lucid parity). */
|
|
309
|
+
andWhereJsonSubsetOf(column: string, value: unknown): this;
|
|
310
|
+
/** `OR <col> <@ ?` (Lucid parity). See {@link whereJsonSubsetOf}. */
|
|
311
|
+
orWhereJsonSubsetOf(column: string, value: unknown): this;
|
|
312
|
+
/** `WHERE NOT (<col> <@ ?)` (Lucid parity). */
|
|
313
|
+
whereNotJsonSubsetOf(column: string, value: unknown): this;
|
|
314
|
+
/** `OR NOT (<col> <@ ?)` (Lucid parity). */
|
|
315
|
+
orWhereNotJsonSubsetOf(column: string, value: unknown): this;
|
|
316
|
+
whereColumn(left: string, operator: string, right: string): this;
|
|
317
|
+
/** `OR`-combined {@link whereColumn}. */
|
|
318
|
+
orWhereColumn(left: string, operator: string, right: string): this;
|
|
319
|
+
/** `WHERE NOT (left <op> right)` — negation of {@link whereColumn} (Lucid parity). */
|
|
320
|
+
whereNotColumn(left: string, operator: string, right: string): this;
|
|
321
|
+
/** Alias of {@link whereNotColumn} (Lucid parity). */
|
|
322
|
+
andWhereNotColumn(left: string, operator: string, right: string): this;
|
|
323
|
+
/** `OR NOT (left <op> right)` (Lucid parity). */
|
|
324
|
+
orWhereNotColumn(left: string, operator: string, right: string): this;
|
|
146
325
|
/**
|
|
147
326
|
* `WHERE EXISTS (SELECT * FROM related WHERE <join> AND <cb>)` — filter parent rows
|
|
148
327
|
* by the existence of related rows, optionally constrained by a callback.
|
|
@@ -155,6 +334,10 @@ export declare class ModelQuery<T extends BaseEntity> {
|
|
|
155
334
|
/** `WHERE NOT EXISTS (...)` — negation of whereHas. */
|
|
156
335
|
whereDoesntHave(relationName: string, callback?: (query: ModelQuery<BaseEntity>) => void): this;
|
|
157
336
|
orWhereDoesntHave(relationName: string, callback?: (query: ModelQuery<BaseEntity>) => void): this;
|
|
337
|
+
/** Alias of {@link whereHas} (Lucid parity) — `whereHas` is already AND. */
|
|
338
|
+
andWhereHas(relationName: string, callback?: (query: ModelQuery<BaseEntity>) => void): this;
|
|
339
|
+
/** Alias of {@link whereDoesntHave} (Lucid parity). */
|
|
340
|
+
andWhereDoesntHave(relationName: string, callback?: (query: ModelQuery<BaseEntity>) => void): this;
|
|
158
341
|
/**
|
|
159
342
|
* Short form of `whereHas`. With an operator + count, emits a count threshold:
|
|
160
343
|
* has('comments') → EXISTS (SELECT * FROM comments WHERE <join>)
|
|
@@ -164,6 +347,12 @@ export declare class ModelQuery<T extends BaseEntity> {
|
|
|
164
347
|
orHas(relationName: string, countOp?: string, countThreshold?: number): this;
|
|
165
348
|
/** `WHERE NOT EXISTS (...)` — short form. */
|
|
166
349
|
doesntHave(relationName: string): this;
|
|
350
|
+
/** `OR NOT EXISTS (...)` — the OR form of {@link doesntHave} (Lucid parity). */
|
|
351
|
+
orDoesntHave(relationName: string): this;
|
|
352
|
+
/** Alias of {@link has} (Lucid parity) — `has` is already AND. */
|
|
353
|
+
andHas(relationName: string, countOp?: string, countThreshold?: number): this;
|
|
354
|
+
/** Alias of {@link doesntHave} (Lucid parity). */
|
|
355
|
+
andDoesntHave(relationName: string): this;
|
|
167
356
|
/**
|
|
168
357
|
* Set this query's projection alias — only meaningful when this ModelQuery
|
|
169
358
|
* is used as the sub-builder callback argument of `withCount` / `withAggregate`.
|
|
@@ -204,12 +393,181 @@ export declare class ModelQuery<T extends BaseEntity> {
|
|
|
204
393
|
*/
|
|
205
394
|
withAggregate(relationName: string, callback: (query: ModelQuery<BaseEntity>) => void): this;
|
|
206
395
|
orderBy(column: string, direction?: "asc" | "desc"): this;
|
|
396
|
+
/**
|
|
397
|
+
* `ORDER BY <raw fragment>` (Lucid/Knex `orderByRaw`) — for orderings with
|
|
398
|
+
* no typed form: `NULLS LAST`, `RANDOM()`, a CASE expression, a computed
|
|
399
|
+
* alias.
|
|
400
|
+
*
|
|
401
|
+
* query.orderBy('rank').orderByRaw('created_at DESC NULLS LAST')
|
|
402
|
+
*
|
|
403
|
+
* The fragment keeps its position among the plain `orderBy` terms.
|
|
404
|
+
*
|
|
405
|
+
* **Strict mode**: like {@link whereRaw}, this throws when
|
|
406
|
+
* `setAtlasStrictMode(true)` (or `ATLAS_STRICT`) is on.
|
|
407
|
+
*
|
|
408
|
+
* @unsafe Raw SQL fragment — never concatenate user input into `sql`.
|
|
409
|
+
*/
|
|
410
|
+
orderByRaw(sql: string): this;
|
|
411
|
+
/**
|
|
412
|
+
* `GROUP BY col1, col2, …` (AdonisJS/Lucid `groupBy`). Columns are resolved
|
|
413
|
+
* through the entity's column map (camelCase → snake_case) like `orderBy`.
|
|
414
|
+
* For a grouping expression with no typed form, see {@link groupByRaw}.
|
|
415
|
+
*/
|
|
416
|
+
groupBy(...columns: string[]): this;
|
|
417
|
+
/**
|
|
418
|
+
* `GROUP BY <raw fragment>` (Lucid/Knex `groupByRaw`) — for groupings with
|
|
419
|
+
* no typed form, e.g. `DATE_TRUNC('day', created_at)`.
|
|
420
|
+
*
|
|
421
|
+
* The fragment keeps its position among the plain `groupBy` terms.
|
|
422
|
+
*
|
|
423
|
+
* **Strict mode**: like {@link whereRaw}, this throws when
|
|
424
|
+
* `setAtlasStrictMode(true)` (or `ATLAS_STRICT`) is on.
|
|
425
|
+
*
|
|
426
|
+
* @unsafe Raw SQL fragment — never concatenate user input into `sql`.
|
|
427
|
+
*/
|
|
428
|
+
groupByRaw(sql: string): this;
|
|
429
|
+
/**
|
|
430
|
+
* `HAVING <col> <op> ?` — applied after `groupBy` (AdonisJS/Lucid `having`).
|
|
431
|
+
* A bare model property is resolved through the entity column map (honouring
|
|
432
|
+
* `@Column({ columnName })`) via {@link #resolveHavingCol}; an aggregate
|
|
433
|
+
* expression (`COUNT(*)`, `SUM(col)`, …) or a result alias is left verbatim so
|
|
434
|
+
* `having` can still reference `withCount`/`withAggregate` aliases.
|
|
435
|
+
*/
|
|
436
|
+
having(column: string, operator: string, value: unknown): this;
|
|
437
|
+
/** `OR HAVING <col> <op> ?` — OR-combined {@link having}. */
|
|
438
|
+
orHaving(column: string, operator: string, value: unknown): this;
|
|
439
|
+
/**
|
|
440
|
+
* **⚠ UNSAFE** — append a raw SQL `HAVING` fragment with `?` bindings
|
|
441
|
+
* (AdonisJS/Lucid `havingRaw`). The Rust compiler re-indexes the placeholders;
|
|
442
|
+
* everything else in `sql` is trusted verbatim. All values must go through
|
|
443
|
+
* `bindings`.
|
|
444
|
+
*
|
|
445
|
+
* @unsafe Raw SQL fragment — never concatenate user input into `sql`.
|
|
446
|
+
*/
|
|
447
|
+
havingRaw(sql: string, bindings?: readonly unknown[]): this;
|
|
448
|
+
/**
|
|
449
|
+
* `UNION (<query>)` (AdonisJS/Lucid `union`). The other query is compiled and
|
|
450
|
+
* appended as a parenthesised UNION branch; its bindings are re-indexed into
|
|
451
|
+
* the outer parameter list.
|
|
452
|
+
*/
|
|
453
|
+
union(query: ModelQuery<BaseEntity>): this;
|
|
454
|
+
/** `UNION ALL (<query>)` — duplicate-preserving {@link union}. */
|
|
455
|
+
unionAll(query: ModelQuery<BaseEntity>): this;
|
|
456
|
+
/** `INTERSECT (<query>)` — rows present in both (Lucid/Knex `intersect`). */
|
|
457
|
+
intersect(query: ModelQuery<BaseEntity>): this;
|
|
458
|
+
/**
|
|
459
|
+
* `INTERSECT ALL (<query>)` — duplicate-preserving {@link intersect}.
|
|
460
|
+
*
|
|
461
|
+
* Postgres and MySQL only: SQLite's compound operators are UNION, UNION ALL,
|
|
462
|
+
* INTERSECT and EXCEPT — there is no INTERSECT ALL — so the compiler raises
|
|
463
|
+
* `E_UNSUPPORTED` there rather than emitting a syntax error.
|
|
464
|
+
*/
|
|
465
|
+
intersectAll(query: ModelQuery<BaseEntity>): this;
|
|
466
|
+
/** `EXCEPT (<query>)` — rows in this query but not the other (Lucid/Knex `except`). */
|
|
467
|
+
except(query: ModelQuery<BaseEntity>): this;
|
|
468
|
+
/** `EXCEPT ALL (<query>)` — duplicate-preserving {@link except}. Not on SQLite; see {@link intersectAll}. */
|
|
469
|
+
exceptAll(query: ModelQuery<BaseEntity>): this;
|
|
470
|
+
/**
|
|
471
|
+
* `WITH <name> AS (<query>)` — register a Common Table Expression
|
|
472
|
+
* (AdonisJS/Lucid `with`). The CTE name is validated as an identifier; the
|
|
473
|
+
* sub-query is compiled and its bindings are re-indexed into the outer list.
|
|
474
|
+
*/
|
|
475
|
+
with(name: string, query: ModelQuery<BaseEntity>): this;
|
|
476
|
+
/**
|
|
477
|
+
* `WITH RECURSIVE <name> AS (<query>)` — a self-referencing CTE
|
|
478
|
+
* (Lucid/Knex `withRecursive`), for trees and graph walks.
|
|
479
|
+
*
|
|
480
|
+
* RECURSIVE is a property of the WITH clause rather than of one CTE, so a
|
|
481
|
+
* single recursive entry makes the whole clause recursive — which is what
|
|
482
|
+
* all three dialects require. Mixing `with()` and `withRecursive()` is fine.
|
|
483
|
+
*
|
|
484
|
+
* The recursive term itself is a `UNION`/`UNION ALL` inside `query`, e.g.
|
|
485
|
+
* an anchor `SELECT` unioned with a select that references `<name>`.
|
|
486
|
+
*/
|
|
487
|
+
withRecursive(name: string, query: ModelQuery<BaseEntity>): this;
|
|
488
|
+
/**
|
|
489
|
+
* `WITH <name> AS MATERIALIZED (<query>)` — force the CTE to be evaluated
|
|
490
|
+
* once and stashed (Lucid/Knex `withMaterialized`).
|
|
491
|
+
*
|
|
492
|
+
* Postgres 12+ and SQLite 3.35+ only; MySQL has no such hint and the
|
|
493
|
+
* compiler raises `E_UNSUPPORTED` rather than emitting a syntax error.
|
|
494
|
+
*/
|
|
495
|
+
withMaterialized(name: string, query: ModelQuery<BaseEntity>): this;
|
|
496
|
+
/** `WITH <name> AS NOT MATERIALIZED (<query>)` — let it be inlined (Lucid/Knex `withNotMaterialized`). See {@link withMaterialized}. */
|
|
497
|
+
withNotMaterialized(name: string, query: ModelQuery<BaseEntity>): this;
|
|
498
|
+
/**
|
|
499
|
+
* `@ManyToMany` only — filter loaded relations by a PIVOT-table column
|
|
500
|
+
* (AdonisJS/Lucid `wherePivot`). Recorded separately from the related-table
|
|
501
|
+
* WHEREs and applied to the pivot lookup query by the m2m preload resolver;
|
|
502
|
+
* inert on non-m2m relations.
|
|
503
|
+
*
|
|
504
|
+
* userRepo.query().preload('roles', q => q.wherePivot('active', true))
|
|
505
|
+
*/
|
|
506
|
+
wherePivot(column: string, value: unknown): this;
|
|
507
|
+
wherePivot(column: string, operator: string, value: unknown): this;
|
|
508
|
+
/** Alias of {@link wherePivot} (Lucid parity) — pivot filters already AND together. */
|
|
509
|
+
andWherePivot(column: string, value: unknown): this;
|
|
510
|
+
andWherePivot(column: string, operator: string, value: unknown): this;
|
|
511
|
+
/**
|
|
512
|
+
* `@ManyToMany` only — OR form of {@link wherePivot} (Lucid parity).
|
|
513
|
+
*
|
|
514
|
+
* The pivot filters are compiled as a parenthesised group, so an OR joins
|
|
515
|
+
* the other pivot filters and cannot escape the `pivot_fk IN (parents)`
|
|
516
|
+
* scoping that makes the preload correct.
|
|
517
|
+
*/
|
|
518
|
+
orWherePivot(column: string, value: unknown): this;
|
|
519
|
+
orWherePivot(column: string, operator: string, value: unknown): this;
|
|
520
|
+
/** `@ManyToMany` only — `WHERE <pivotCol> IN (...)` on the pivot table (AdonisJS Lucid `whereInPivot`). */
|
|
521
|
+
whereInPivot(column: string, values: readonly unknown[]): this;
|
|
522
|
+
/** Alias of {@link whereInPivot} (Lucid parity). */
|
|
523
|
+
andWhereInPivot(column: string, values: readonly unknown[]): this;
|
|
524
|
+
/** `@ManyToMany` only — OR form of {@link whereInPivot} (Lucid parity). */
|
|
525
|
+
orWhereInPivot(column: string, values: readonly unknown[]): this;
|
|
526
|
+
/** Alias of {@link whereInPivot} kept for the earlier atlas name. */
|
|
527
|
+
wherePivotIn(column: string, values: readonly unknown[]): this;
|
|
528
|
+
/** `@ManyToMany` only — `WHERE <pivotCol> != <value>` on the pivot table (AdonisJS Lucid `whereNotPivot`). */
|
|
529
|
+
whereNotPivot(column: string, value: unknown): this;
|
|
530
|
+
/** Alias of {@link whereNotPivot} (Lucid parity). */
|
|
531
|
+
andWhereNotPivot(column: string, value: unknown): this;
|
|
532
|
+
/** `@ManyToMany` only — OR form of {@link whereNotPivot} (Lucid parity). */
|
|
533
|
+
orWhereNotPivot(column: string, value: unknown): this;
|
|
534
|
+
/** `@ManyToMany` only — `WHERE <pivotCol> NOT IN (...)` on the pivot table (AdonisJS Lucid `whereNotInPivot`). */
|
|
535
|
+
whereNotInPivot(column: string, values: readonly unknown[]): this;
|
|
536
|
+
/** Alias of {@link whereNotInPivot} (Lucid parity). */
|
|
537
|
+
andWhereNotInPivot(column: string, values: readonly unknown[]): this;
|
|
538
|
+
/** `@ManyToMany` only — OR form of {@link whereNotInPivot} (Lucid parity). */
|
|
539
|
+
orWhereNotInPivot(column: string, values: readonly unknown[]): this;
|
|
540
|
+
/** `@ManyToMany` only — `WHERE <pivotCol> IS NULL` on the pivot table (Lucid `whereNullPivot`). */
|
|
541
|
+
whereNullPivot(column: string): this;
|
|
542
|
+
/** Alias of {@link whereNullPivot} (Lucid parity). */
|
|
543
|
+
andWhereNullPivot(column: string): this;
|
|
544
|
+
/** `@ManyToMany` only — OR form of {@link whereNullPivot} (Lucid parity). */
|
|
545
|
+
orWhereNullPivot(column: string): this;
|
|
546
|
+
/** `@ManyToMany` only — `WHERE <pivotCol> IS NOT NULL` on the pivot table (Lucid `whereNotNullPivot`). */
|
|
547
|
+
whereNotNullPivot(column: string): this;
|
|
548
|
+
/** Alias of {@link whereNotNullPivot} (Lucid parity). */
|
|
549
|
+
andWhereNotNullPivot(column: string): this;
|
|
550
|
+
/** `@ManyToMany` only — OR form of {@link whereNotNullPivot} (Lucid parity). */
|
|
551
|
+
orWhereNotNullPivot(column: string): this;
|
|
552
|
+
/** Read-only accessor for pivot constraints — consumed by the m2m preload resolver. */
|
|
553
|
+
get pivotConstraints(): ReadonlyArray<{
|
|
554
|
+
column: string;
|
|
555
|
+
operator: string;
|
|
556
|
+
value: unknown;
|
|
557
|
+
type: "and" | "or";
|
|
558
|
+
}>;
|
|
207
559
|
limit(n: number): this;
|
|
208
560
|
offset(n: number): this;
|
|
209
561
|
/** Execute and return the first matching entity or null. Fires beforeFind/afterFind. */
|
|
210
562
|
first(): Promise<T | null>;
|
|
211
563
|
/** Execute and return the first matching entity or throw. */
|
|
212
564
|
firstOrFail(): Promise<T>;
|
|
565
|
+
/**
|
|
566
|
+
* Return the single matching row, or throw if there are zero OR more than one
|
|
567
|
+
* (AdonisJS/Laravel `sole`). Use when exactly one row is a correctness
|
|
568
|
+
* invariant — a second match signals a bug the silent `first()` would hide.
|
|
569
|
+
*/
|
|
570
|
+
sole(): Promise<T>;
|
|
213
571
|
/**
|
|
214
572
|
* Thenable — `await someQuery` is equivalent to `await someQuery.exec()`.
|
|
215
573
|
* A chain like `await repo.query().where('active', true).orderBy('id')`
|
|
@@ -229,6 +587,19 @@ export declare class ModelQuery<T extends BaseEntity> {
|
|
|
229
587
|
};
|
|
230
588
|
/** Execute and return all matching entities, with preloaded relations. Fires beforeFetch/afterFetch. */
|
|
231
589
|
exec(): Promise<T[]>;
|
|
590
|
+
/**
|
|
591
|
+
* Execute and return PLAIN row objects (raw snake_case DB columns), skipping
|
|
592
|
+
* model hydration, `@column({ consume })`, dirty-tracking and preloads —
|
|
593
|
+
* AdonisJS Lucid `pojo()`. Fast read path for reports/exports where model
|
|
594
|
+
* instances aren't needed.
|
|
595
|
+
*/
|
|
596
|
+
pojo<R = Record<string, unknown>>(): Promise<R[]>;
|
|
597
|
+
/**
|
|
598
|
+
* Thread arbitrary context onto every instance this query hydrates, exposed as
|
|
599
|
+
* `entity.$sideloaded` (AdonisJS Lucid `sideload`) — e.g. the current tenant or
|
|
600
|
+
* user, so hooks/computed can read it. Merges across calls. Chainable.
|
|
601
|
+
*/
|
|
602
|
+
sideload(values: Record<string, unknown>): this;
|
|
232
603
|
/**
|
|
233
604
|
* Resolve a relation to its table + correlated join predicate and return an
|
|
234
605
|
* `ExistsWhere` clause. Used by whereHas / has / doesntHave / whereDoesntHave.
|
|
@@ -265,7 +636,7 @@ export declare class ModelQuery<T extends BaseEntity> {
|
|
|
265
636
|
*
|
|
266
637
|
* @unsafe Raw SQL fragment — never concatenate user input into `fragment`.
|
|
267
638
|
*/
|
|
268
|
-
joinRaw(fragment: string): this;
|
|
639
|
+
joinRaw(fragment: string, bindings?: readonly unknown[]): this;
|
|
269
640
|
/**
|
|
270
641
|
* **SAFE** helper that builds an `INNER JOIN <table> ON <left> = <right>`
|
|
271
642
|
* with dialect-correct identifier quoting on both sides. Thin sugar over
|
|
@@ -279,8 +650,26 @@ export declare class ModelQuery<T extends BaseEntity> {
|
|
|
279
650
|
*/
|
|
280
651
|
joinOn(table: string, left: string, right: string): this;
|
|
281
652
|
distinct(): this;
|
|
653
|
+
/**
|
|
654
|
+
* `SELECT DISTINCT ON (cols) …` — keep the first row per distinct set of
|
|
655
|
+
* `columns` (Lucid/Knex `distinctOn`). Takes precedence over
|
|
656
|
+
* {@link distinct}.
|
|
657
|
+
*
|
|
658
|
+
* Postgres-only, and the compiler refuses it elsewhere: MySQL and SQLite
|
|
659
|
+
* would parse `DISTINCT (a, b)` as a plain DISTINCT over a row value and
|
|
660
|
+
* return a *different* result set rather than fail — a silent wrong answer
|
|
661
|
+
* is worse than an error.
|
|
662
|
+
*
|
|
663
|
+
* Postgres also requires the leading `ORDER BY` terms to match `columns`;
|
|
664
|
+
* that is left to the database to enforce.
|
|
665
|
+
*/
|
|
666
|
+
distinctOn(...columns: string[]): this;
|
|
282
667
|
/** `SELECT COUNT(DISTINCT col)`. */
|
|
283
668
|
countDistinct(column: string): Promise<number>;
|
|
669
|
+
/** `SUM(DISTINCT col)` (Lucid parity). */
|
|
670
|
+
sumDistinct(column: string): Promise<number | null>;
|
|
671
|
+
/** `AVG(DISTINCT col)` (Lucid parity). */
|
|
672
|
+
avgDistinct(column: string): Promise<number | null>;
|
|
284
673
|
/** `SELECT 1 FROM ... LIMIT 1` — returns boolean. */
|
|
285
674
|
exists(): Promise<boolean>;
|
|
286
675
|
doesntExist(): Promise<boolean>;
|
|
@@ -325,14 +714,43 @@ export declare class ModelQuery<T extends BaseEntity> {
|
|
|
325
714
|
clone(): ModelQuery<T>;
|
|
326
715
|
/** Execute a fluent UPDATE. Returns affected rows (or rows when `returning` is set). */
|
|
327
716
|
update(patch: Record<string, unknown>, returning?: string[]): Promise<number | Record<string, unknown>[]>;
|
|
328
|
-
/**
|
|
717
|
+
/**
|
|
718
|
+
* Execute a fluent DELETE. For a `@SoftDeletes` model this SOFT-deletes the
|
|
719
|
+
* scoped rows (stamps `deleted_at`) — consistent with the entity-level
|
|
720
|
+
* `delete()`; use {@link forceDelete} for a hard `DELETE`. For a non-soft-delete
|
|
721
|
+
* model it issues a hard `DELETE`. Returns affected rows (or rows when
|
|
722
|
+
* `returning` is set).
|
|
723
|
+
*/
|
|
329
724
|
delete(returning?: string[]): Promise<number | Record<string, unknown>[]>;
|
|
725
|
+
/** Hard `DELETE` of the scoped rows, bypassing `@SoftDeletes` (AdonisJS/Lucid `forceDelete`). */
|
|
726
|
+
forceDelete(returning?: string[]): Promise<number | Record<string, unknown>[]>;
|
|
727
|
+
/**
|
|
728
|
+
* Bulk restore: clear `deleted_at` on the trashed rows matching the user's
|
|
729
|
+
* predicates (the soft-delete counterpart of {@link delete}). No-op count `0`
|
|
730
|
+
* on a non-soft-delete model. Independent of the current soft-scope — it always
|
|
731
|
+
* targets trashed rows (`deleted_at IS NOT NULL`).
|
|
732
|
+
*/
|
|
733
|
+
restore(returning?: string[]): Promise<number | Record<string, unknown>[]>;
|
|
330
734
|
increment(column: string, amount: number): Promise<number>;
|
|
331
735
|
increment(patch: Record<string, number>): Promise<number>;
|
|
332
736
|
decrement(column: string, amount: number): Promise<number>;
|
|
333
737
|
decrement(patch: Record<string, number>): Promise<number>;
|
|
334
738
|
forUpdate(): this;
|
|
335
739
|
forShare(): this;
|
|
740
|
+
/** Postgres `FOR NO KEY UPDATE` — a weaker lock that doesn't block FK checks (AdonisJS/Knex). */
|
|
741
|
+
forNoKeyUpdate(): this;
|
|
742
|
+
/** Postgres `FOR KEY SHARE` — the weakest share lock (AdonisJS/Knex). */
|
|
743
|
+
forKeyShare(): this;
|
|
744
|
+
/**
|
|
745
|
+
* Append `SKIP LOCKED` to the lock clause — locked rows are skipped instead of
|
|
746
|
+
* waited on (AdonisJS/Knex). Requires a base lock (`forUpdate`/`forShare`/…).
|
|
747
|
+
*/
|
|
748
|
+
skipLocked(): this;
|
|
749
|
+
/**
|
|
750
|
+
* Append `NOWAIT` to the lock clause — error immediately instead of waiting on
|
|
751
|
+
* a locked row (AdonisJS/Knex). Requires a base lock (`forUpdate`/`forShare`/…).
|
|
752
|
+
*/
|
|
753
|
+
noWait(): this;
|
|
336
754
|
}
|
|
337
755
|
export {};
|
|
338
756
|
//# sourceMappingURL=ModelQuery.d.ts.map
|
package/dist/ModelQuery.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelQuery.d.ts","sourceRoot":"","sources":["../src/ModelQuery.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAU9D,OAAO,EACN,KAAK,YAAY,EAGjB,MAAM,mBAAmB,CAAC;AAkC3B,KAAK,eAAe,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;AAE/D,KAAK,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;AAwJjD,KAAK,aAAa,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;AAkBzD,8FAA8F;AAC9F,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAEzD;AAED,qEAAqE;AACrE,wBAAgB,iBAAiB,IAAI,OAAO,CAM3C;AASD,wBAAgB,0BAA0B,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAQ5D;AAKD,qFAAqF;AACrF,UAAU,WAAW;IACpB,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,WAAW,CAAC;IAC7C,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,WAAW,CAAC;IAChD,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC;CACpD;AAED,4CAA4C;AAC5C,qBAAa,SAAS,CAAC,CAAC;;IACvB,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE;QACd,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;KAClB,CAAC;gBAKD,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE;IAO9D,GAAG,IAAI,CAAC,EAAE;IAIV,SAAS,CAAC,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG;QACxC,IAAI,EAAE,OAAO,EAAE,CAAC;QAChB,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;KAC3B;IAWD,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI1B,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAK9C,MAAM,IAAI;QACT,IAAI,EAAE,OAAO,EAAE,CAAC;QAChB,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACrD;CAqBD;AAOD,qBAAa,UAAU,CAAC,CAAC,SAAS,UAAU;;gBA8B1C,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE,kBAAkB,EACtB,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAC9C,WAAW,EAAE,UAAU,CAAC,EACxB,aAAa,GAAE,cAAyB,EACxC,WAAW,UAAQ,EACnB,OAAO,GAAE,YAAgC;IAW1C,gFAAgF;IAChF,WAAW,IAAI,IAAI;IAKnB,8DAA8D;IAC9D,WAAW,IAAI,IAAI;IAKnB;;;;;;;OAOG;IACH,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,eAAe,GAAG,IAAI;IAK/D,4FAA4F;IAC5F,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAOxC,KAAK,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI;IACpC,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAC3C,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAa7D,OAAO,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI;IACtC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAC7C,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAa/D,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAU/B,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAUlC,8CAA8C;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAU9C,2FAA2F;IAC3F,OAAO,CACN,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,UAAU,CAAC,UAAU,CAAC,GACjD,IAAI;IAoBP,+FAA+F;IAC/F,UAAU,CACT,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,UAAU,CAAC,UAAU,CAAC,GACjD,IAAI;IAoBP,qDAAqD;IACrD,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,IAAI;IAUtE,sCAAsC;IACtC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,IAAI;IAUzE,yDAAyD;IACzD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAUhD;;;;OAIG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAUjD;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,GAAE,SAAS,OAAO,EAAO,GAAG,IAAI;IA8B9D;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IACjE,SAAS,CACR,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,GACZ,IAAI;IAoDP;;;;;OAKG;IACH,QAAQ,CACP,YAAY,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,GAChD,IAAI;IAOP,wEAAwE;IACxE,UAAU,CACT,YAAY,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,GAChD,IAAI;IAOP,uDAAuD;IACvD,eAAe,CACd,YAAY,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,GAChD,IAAI;IAOP,iBAAiB,CAChB,YAAY,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,GAChD,IAAI;IAOP;;;;OAIG;IACH,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI;IAc1E,KAAK,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI;IAc5E,6CAA6C;IAC7C,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAKtC;;;;;;;OAOG;IACH,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKvB,oFAAoF;IACpF,IAAI,aAAa,IAAI,MAAM,GAAG,SAAS,CAEtC;IAED,wGAAwG;IACxG,IAAI,gBAAgB,IAAI,SAAS,MAAM,EAAE,CAExC;IAID,uGAAuG;IACvG,eAAe,CACd,IAAI,EAAE,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,EAC7C,MAAM,GAAE,MAAY,GAClB,IAAI;IAYP,oFAAoF;IAC9E,KAAK,CAAC,MAAM,GAAE,MAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAM5C,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAK3C,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAK3C,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAK3C,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAKjD;;;;;;;;OAQG;IACH,SAAS,CACR,YAAY,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,GAChD,IAAI;IAYP;;;;;;OAMG;IACH,aAAa,CACZ,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,GAC/C,IAAI;IAYP,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,GAAE,KAAK,GAAG,MAAc,GAAG,IAAI;IAKhE,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAYtB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAQvB,wFAAwF;IAClF,KAAK,IAAI,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAUhC,6DAA6D;IACvD,WAAW,IAAI,OAAO,CAAC,CAAC,CAAC;IAM/B;;;;;;;;;;OAUG;IAEH,IAAI,CAAC,QAAQ,GAAG,CAAC,EAAE,EAAE,QAAQ,GAAG,KAAK,EACpC,WAAW,CAAC,EACT,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,GAClD,IAAI,GACJ,SAAS,EACZ,UAAU,CAAC,EACR,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,GACvD,IAAI,GACJ,SAAS,GACV,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IA8C/B,sDAAsD;IACtD,KAAK,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,EAAE,CAAA;KAAE;IAgB3C,wGAAwG;IACxG,IAAI,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC;IAilBpB;;;;;;;;;;;OAWG;IAGH,gDAAgD;IAChD,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAC3D,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI;IAS/D,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAC1D,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI;IAS9D,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAC3D,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI;IAS/D,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAM9B;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAW/B;;;;;;;;;;OAUG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAMxD,QAAQ,IAAI,IAAI;IAKhB,oCAAoC;IAC9B,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAMpD,qDAAqD;IAC/C,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAS1B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAIrC,+DAA+D;IACzD,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAmB/C,6EAA6E;IAC7E,KAAK,CACJ,QAAQ,EAAE,CACT,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,KACzD,IAAI,GACP,IAAI;IA2BP,+CAA+C;IAC/C,UAAU,CACT,QAAQ,EAAE,CACT,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,KACzD,IAAI,GACP,IAAI;IAMP,EAAE,CAAC,CAAC,EACH,SAAS,EAAE,CAAC,GAAG,SAAS,GAAG,IAAI,GAAG,KAAK,EACvC,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,EACjC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,IAAI,GACxB,IAAI;IAMP,MAAM,CAAC,CAAC,EACP,SAAS,EAAE,CAAC,GAAG,SAAS,GAAG,IAAI,GAAG,KAAK,EACvC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,IAAI,GACnB,IAAI;IAOP,8BAA8B;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IA0BpE;;;;;;;;;;;;OAYG;IACG,cAAc,CAAC,IAAI,EAAE;QAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;KAC3B,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IA2DxE,gEAAgE;IAChE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAU5C,KAAK,CAAC,IAAI,UAAO,GAAG,IAAI;IAKxB,oFAAoF;IACpF,OAAO,IAAI,MAAM;IASjB,mFAAmF;IACnF,KAAK,IAAI,UAAU,CAAC,CAAC,CAAC;IA2BtB,wFAAwF;IAClF,MAAM,CACX,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,SAAS,CAAC,EAAE,MAAM,EAAE,GAClB,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAyB9C,wFAAwF;IAClF,MAAM,CACX,SAAS,CAAC,EAAE,MAAM,EAAE,GAClB,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAoB9C,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC1D,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAQzD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC1D,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAUzD,SAAS,IAAI,IAAI;IAWjB,QAAQ,IAAI,IAAI;CAoQhB"}
|
|
1
|
+
{"version":3,"file":"ModelQuery.d.ts","sourceRoot":"","sources":["../src/ModelQuery.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,WAAW,EAAY,MAAM,iBAAiB,CAAC;AAG9E,OAAO,EAGN,KAAK,kBAAkB,EAEvB,MAAM,qBAAqB,CAAC;AAY7B,OAAO,EACN,KAAK,YAAY,EAGjB,MAAM,mBAAmB,CAAC;AA8E3B,KAAK,eAAe,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;AAE/D,KAAK,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;AACjD;;;;;GAKG;AACH,KAAK,aAAa,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;AAqUjE,KAAK,aAAa,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;AAoBzD,wGAAwG;AACxG,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAEzD;AAED,qEAAqE;AACrE,wBAAgB,iBAAiB,IAAI,OAAO,CAM3C;AASD,wBAAgB,0BAA0B,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAQ5D;AAKD;;;;;GAKG;AACH,UAAU,WAAW;IACpB,wFAAwF;IACxF,KAAK,EAAE,KAAK,CAAC;QACZ,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE;YAAE,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;KACvB,CAAC,CAAC;IACH,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,WAAW,CAAC;IAC7C,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,WAAW,CAAC;IAChD,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,WAAW,CAAC;IAC/C,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC;IACpD,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC;CACnD;AAED,4CAA4C;AAC5C,qBAAa,SAAS,CAAC,CAAC;;IACvB,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE;QACd,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;KAClB,CAAC;gBAMD,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAQlC,GAAG,IAAI,CAAC,EAAE;IAMV,wCAAwC;IACxC,IAAI,KAAK,IAAI,MAAM,CAElB;IACD,qBAAqB;IACrB,IAAI,OAAO,IAAI,MAAM,CAEpB;IACD,+BAA+B;IAC/B,IAAI,WAAW,IAAI,MAAM,CAExB;IACD,4BAA4B;IAC5B,IAAI,QAAQ,IAAI,MAAM,CAErB;IACD,wCAAwC;IACxC,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,8EAA8E;IAC9E,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,iGAAiG;IACjG,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED,SAAS,CAAC,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG;QACxC,IAAI,EAAE,OAAO,EAAE,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC9B;IAaD,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI1B,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAK9C;;;OAGG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAS5B,yFAAyF;IACzF,cAAc,IAAI,MAAM,GAAG,IAAI;IAI/B,kGAAkG;IAClG,kBAAkB,IAAI,MAAM,GAAG,IAAI;IAMnC,iGAAiG;IACjG,eAAe,CACd,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACT,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;IAoC1D,MAAM,IAAI;QACT,IAAI,EAAE,OAAO,EAAE,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC9B;CAGD;AAOD,qBAAa,UAAU,CAAC,CAAC,SAAS,UAAU;;gBA+E1C,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE,kBAAkB,EACtB,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAC9C,WAAW,EAAE,UAAU,CAAC,EACxB,aAAa,GAAE,cAAyB,EACxC,WAAW,UAAQ,EACnB,OAAO,GAAE,YAAgC,EACzC,YAAY,GAAE,aAA4B,EAC1C,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC;IAkB1D,gFAAgF;IAChF,WAAW,IAAI,IAAI;IAKnB,8DAA8D;IAC9D,WAAW,IAAI,IAAI;IAKnB;;;;;;;OAOG;IACH,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,eAAe,GAAG,IAAI;IAK/D,4FAA4F;IAC5F,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IA0BxC,KAAK,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI;IACpC,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAC3C,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAa7D,OAAO,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI;IACtC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAC7C,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAa/D,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAU/B,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAiBlC,QAAQ,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAgBhE,gDAAgD;IAChD,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAIjD,+CAA+C;IAC/C,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI;IAI5D,kDAAkD;IAClD,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI;IAI/D,iDAAiD;IACjD,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIlC,oDAAoD;IACpD,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIrC,oDAAoD;IACpD,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,IAAI;IAIzE,uDAAuD;IACvD,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,IAAI;IAI5E,iDAAiD;IACjD,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAInD,kDAAkD;IAClD,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAIpD,mDAAmD;IACnD,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAInE,8CAA8C;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAU9C,2FAA2F;IAC3F,OAAO,CACN,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,UAAU,CAAC,UAAU,CAAC,GACjD,IAAI;IAoBP,+FAA+F;IAC/F,UAAU,CACT,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,UAAU,CAAC,UAAU,CAAC,GACjD,IAAI;IAoBP,qDAAqD;IACrD,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,IAAI;IAUtE,sCAAsC;IACtC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,IAAI;IAUzE,yDAAyD;IACzD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAUhD;;;;OAIG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAcjD,wBAAwB;IACxB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAUjC,4BAA4B;IAC5B,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAUpC,qBAAqB;IACrB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAUhD,iEAAiE;IACjE,SAAS,CACR,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,UAAU,CAAC,UAAU,CAAC,GACjD,IAAI;IAoBP,qEAAqE;IACrE,YAAY,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,UAAU,CAAC,UAAU,CAAC,GACjD,IAAI;IAoBP,gCAAgC;IAChC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,IAAI;IAUxE,oCAAoC;IACpC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,IAAI;IAU3E,uBAAuB;IACvB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAUlD,4EAA4E;IAC5E,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAUnD;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,GAAE,SAAS,OAAO,EAAO,GAAG,IAAI;IAkC9D,sFAAsF;IACtF,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,GAAE,SAAS,OAAO,EAAO,GAAG,IAAI;IAIjE;;;;;OAKG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,GAAE,SAAS,OAAO,EAAO,GAAG,IAAI;IAgBhE;;;;;OAKG;IACH,qBAAqB,CACpB,OAAO,EAAE,CACR,WAAW,EAAE,aAAa,CAAC;QAC1B,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,OAAO,CAAC;KACf,CAAC,KACE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,EAAE,CAAA;KAAE,GACvC,IAAI;IAKP;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IACjE,SAAS,CACR,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,GACZ,IAAI;IAyEP;;;;;OAKG;IAeH,gDAAgD;IAChD,WAAW,CAAC,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI;IAInD,mDAAmD;IACnD,cAAc,CAAC,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI;IAItD,6CAA6C;IAC7C,aAAa,CAAC,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI;IAIrD,oDAAoD;IACpD,cAAc,CAAC,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI;IAItD,sDAAsD;IACtD,iBAAiB,CAAC,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI;IAIzD,iDAAiD;IACjD,gBAAgB,CAAC,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI;IAWxD;;;;;OAKG;IACH,aAAa,CACZ,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,GACZ,IAAI;IAIP,qDAAqD;IACrD,gBAAgB,CACf,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,GACZ,IAAI;IAIP,gDAAgD;IAChD,eAAe,CACd,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,GACZ,IAAI;IAIP;;;;;;OAMG;IACH,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAIzD,2DAA2D;IAC3D,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAI5D,uEAAuE;IACvE,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAI3D,+CAA+C;IAC/C,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAI5D,4CAA4C;IAC5C,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAI9D;;;OAGG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAIvD,yDAAyD;IACzD,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAI1D,qEAAqE;IACrE,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAIzD,+CAA+C;IAC/C,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAI1D,4CAA4C;IAC5C,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IA2D5D,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAIhE,yCAAyC;IACzC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAIlE,sFAAsF;IACtF,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAInE,sDAAsD;IACtD,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAItE,iDAAiD;IACjD,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IA+ErE;;;;;OAKG;IACH,QAAQ,CACP,YAAY,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,GAChD,IAAI;IAOP,wEAAwE;IACxE,UAAU,CACT,YAAY,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,GAChD,IAAI;IAOP,uDAAuD;IACvD,eAAe,CACd,YAAY,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,GAChD,IAAI;IAOP,iBAAiB,CAChB,YAAY,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,GAChD,IAAI;IAOP,4EAA4E;IAC5E,WAAW,CACV,YAAY,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,GAChD,IAAI;IAIP,uDAAuD;IACvD,kBAAkB,CACjB,YAAY,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,GAChD,IAAI;IAIP;;;;OAIG;IACH,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI;IAc1E,KAAK,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI;IAc5E,6CAA6C;IAC7C,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAKtC,gFAAgF;IAChF,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAKxC,kEAAkE;IAClE,MAAM,CACL,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,MAAM,EAChB,cAAc,CAAC,EAAE,MAAM,GACrB,IAAI;IAIP,kDAAkD;IAClD,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAIzC;;;;;;;OAOG;IACH,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKvB,oFAAoF;IACpF,IAAI,aAAa,IAAI,MAAM,GAAG,SAAS,CAEtC;IAED,wGAAwG;IACxG,IAAI,gBAAgB,IAAI,SAAS,MAAM,EAAE,CAExC;IAID,uGAAuG;IACvG,eAAe,CACd,IAAI,EAAE,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,EAC7C,MAAM,GAAE,MAAY,GAClB,IAAI;IAYP,oFAAoF;IAC9E,KAAK,CAAC,MAAM,GAAE,MAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAQ5C,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAO3C,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAO3C,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAO3C,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAOjD;;;;;;;;OAQG;IACH,SAAS,CACR,YAAY,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,GAChD,IAAI;IAYP;;;;;;OAMG;IACH,aAAa,CACZ,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,GAC/C,IAAI;IAYP,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,GAAE,KAAK,GAAG,MAAc,GAAG,IAAI;IAKhE;;;;;;;;;;;;;OAaG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAM7B;;;;OAIG;IACH,OAAO,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAKnC;;;;;;;;;;OAUG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAM7B;;;;;;OAMG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAyB9D,6DAA6D;IAC7D,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAUhE;;;;;;;OAOG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,GAAE,SAAS,OAAO,EAAO,GAAG,IAAI;IAkB/D;;;;OAIG;IACH,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI;IAK1C,kEAAkE;IAClE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI;IAK7C,6EAA6E;IAC7E,SAAS,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI;IAK9C;;;;;;OAMG;IACH,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI;IAKjD,uFAAuF;IACvF,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI;IAK3C,6GAA6G;IAC7G,SAAS,CAAC,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI;IAK9C;;;;OAIG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI;IAIvD;;;;;;;;;;OAUG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI;IAIhE;;;;;;OAMG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI;IAMnE,wIAAwI;IACxI,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI;IAqBtE;;;;;;;OAOG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAChD,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAKlE,uFAAuF;IACvF,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IACnD,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IASrE;;;;;;OAMG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAClD,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IASpE,2GAA2G;IAC3G,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI;IAI9D,oDAAoD;IACpD,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI;IAIjE,2EAA2E;IAC3E,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI;IAIhE,qEAAqE;IACrE,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI;IAI9D,8GAA8G;IAC9G,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAInD,qDAAqD;IACrD,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAItD,4EAA4E;IAC5E,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAIrD,kHAAkH;IAClH,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI;IAIjE,uDAAuD;IACvD,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI;IAIpE,8EAA8E;IAC9E,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI;IAInE,mGAAmG;IACnG,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIpC,sDAAsD;IACtD,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIvC,6EAA6E;IAC7E,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAItC,0GAA0G;IAC1G,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIvC,yDAAyD;IACzD,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI1C,gFAAgF;IAChF,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IA0BzC,uFAAuF;IACvF,IAAI,gBAAgB,IAAI,aAAa,CAAC;QACrC,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,OAAO,CAAC;QACf,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC;KACnB,CAAC,CAED;IAED,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAYtB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAQvB,wFAAwF;IAClF,KAAK,IAAI,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAUhC,6DAA6D;IACvD,WAAW,IAAI,OAAO,CAAC,CAAC,CAAC;IAM/B;;;;OAIG;IACG,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC;IAaxB;;;;;;;;;;OAUG;IAEH,IAAI,CAAC,QAAQ,GAAG,CAAC,EAAE,EAAE,QAAQ,GAAG,KAAK,EACpC,WAAW,CAAC,EACT,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,GAClD,IAAI,GACJ,SAAS,EACZ,UAAU,CAAC,EACR,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,GACvD,IAAI,GACJ,SAAS,GACV,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IA6I/B,sDAAsD;IACtD,KAAK,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,EAAE,CAAA;KAAE;IAgB3C,wGAAwG;IACxG,IAAI,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC;IA6CpB;;;;;OAKG;IACG,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC;IAKvD;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAuxB/C;;;;;;;;;;;OAWG;IAGH,gDAAgD;IAChD,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAC3D,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI;IAS/D,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAC1D,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI;IAS9D,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAC3D,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI;IAS/D,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAM9B;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAE,SAAS,OAAO,EAAO,GAAG,IAAI;IAWlE;;;;;;;;;;OAUG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAMxD,QAAQ,IAAI,IAAI;IAKhB;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAKtC,oCAAoC;IAC9B,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAQpD,0CAA0C;IACpC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAOzD,0CAA0C;IACpC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAOzD,qDAAqD;IAC/C,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAa1B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAIrC,+DAA+D;IACzD,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAmB/C,6EAA6E;IAC7E,KAAK,CACJ,QAAQ,EAAE,CACT,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,KACzD,IAAI,GACP,IAAI;IA2BP,+CAA+C;IAC/C,UAAU,CACT,QAAQ,EAAE,CACT,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,KACzD,IAAI,GACP,IAAI;IAMP,EAAE,CAAC,CAAC,EACH,SAAS,EAAE,CAAC,GAAG,SAAS,GAAG,IAAI,GAAG,KAAK,EACvC,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,EACjC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,IAAI,GACxB,IAAI;IAMP,MAAM,CAAC,CAAC,EACP,SAAS,EAAE,CAAC,GAAG,SAAS,GAAG,IAAI,GAAG,KAAK,EACvC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,IAAI,GACnB,IAAI;IAOP,8BAA8B;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAmDpE;;;;;;;;;;;;OAYG;IACG,cAAc,CAAC,IAAI,EAAE;QAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;KAC3B,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IA+DxE,gEAAgE;IAChE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAU5C,KAAK,CAAC,IAAI,UAAO,GAAG,IAAI;IAqBxB,oFAAoF;IACpF,OAAO,IAAI,MAAM;IASjB,mFAAmF;IACnF,KAAK,IAAI,UAAU,CAAC,CAAC,CAAC;IAiDtB,wFAAwF;IAClF,MAAM,CACX,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,SAAS,CAAC,EAAE,MAAM,EAAE,GAClB,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IA4B9C;;;;;;OAMG;IACG,MAAM,CACX,SAAS,CAAC,EAAE,MAAM,EAAE,GAClB,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAc9C,iGAAiG;IAC3F,WAAW,CAChB,SAAS,CAAC,EAAE,MAAM,EAAE,GAClB,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAU9C;;;;;OAKG;IACG,OAAO,CACZ,SAAS,CAAC,EAAE,MAAM,EAAE,GAClB,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAqB9C,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC1D,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAQzD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC1D,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAUzD,SAAS,IAAI,IAAI;IAWjB,QAAQ,IAAI,IAAI;IAWhB,iGAAiG;IACjG,cAAc,IAAI,IAAI;IAWtB,yEAAyE;IACzE,WAAW,IAAI,IAAI;IAWnB;;;OAGG;IACH,UAAU,IAAI,IAAI;IASlB;;;OAGG;IACH,MAAM,IAAI,IAAI;CAqWd"}
|