effect-dynamodb 1.9.5 → 1.11.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/dist/Aggregate.d.ts.map +1 -1
- package/dist/Aggregate.js +5 -42
- package/dist/Aggregate.js.map +1 -1
- package/dist/DynamoClient.d.ts +88 -5
- package/dist/DynamoClient.d.ts.map +1 -1
- package/dist/DynamoClient.js +158 -4
- package/dist/DynamoClient.js.map +1 -1
- package/dist/Entity.d.ts +35 -17
- package/dist/Entity.d.ts.map +1 -1
- package/dist/Entity.js +503 -16
- package/dist/Entity.js.map +1 -1
- package/dist/Table.d.ts +78 -0
- package/dist/Table.d.ts.map +1 -1
- package/dist/Table.js +153 -0
- package/dist/Table.js.map +1 -1
- package/dist/VectorSearchEmulation.d.ts +101 -0
- package/dist/VectorSearchEmulation.d.ts.map +1 -0
- package/dist/VectorSearchEmulation.js +290 -0
- package/dist/VectorSearchEmulation.js.map +1 -0
- package/dist/index.d.ts +9 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/internal/BoundCrud.d.ts +62 -48
- package/dist/internal/BoundCrud.d.ts.map +1 -1
- package/dist/internal/BoundCrud.js +7 -1
- package/dist/internal/BoundCrud.js.map +1 -1
- package/dist/internal/BoundVectorQuery.d.ts +130 -0
- package/dist/internal/BoundVectorQuery.d.ts.map +1 -0
- package/dist/internal/BoundVectorQuery.js +257 -0
- package/dist/internal/BoundVectorQuery.js.map +1 -0
- package/dist/internal/EntityCombinators.d.ts +16 -0
- package/dist/internal/EntityCombinators.d.ts.map +1 -1
- package/dist/internal/EntityCombinators.js +25 -1
- package/dist/internal/EntityCombinators.js.map +1 -1
- package/dist/internal/EntityOps.d.ts +19 -6
- package/dist/internal/EntityOps.d.ts.map +1 -1
- package/dist/internal/EntityOps.js +5 -2
- package/dist/internal/EntityOps.js.map +1 -1
- package/dist/internal/TransactableOps.d.ts +1 -1
- package/dist/internal/TransactableOps.d.ts.map +1 -1
- package/package.json +6 -6
package/dist/DynamoClient.js
CHANGED
|
@@ -7,19 +7,21 @@
|
|
|
7
7
|
*
|
|
8
8
|
* @module
|
|
9
9
|
*/
|
|
10
|
-
import { BatchGetItemCommand, BatchWriteItemCommand, CreateBackupCommand, CreateTableCommand, DeleteBackupCommand, DeleteItemCommand, DeleteTableCommand, DescribeContinuousBackupsCommand, DescribeExportCommand, DescribeTableCommand, DescribeTimeToLiveCommand, DynamoDBClient, ExportTableToPointInTimeCommand, GetItemCommand, ListBackupsCommand, ListTablesCommand, ListTagsOfResourceCommand, PutItemCommand, QueryCommand, RestoreTableFromBackupCommand, RestoreTableToPointInTimeCommand, ScanCommand, TagResourceCommand, TransactGetItemsCommand, TransactWriteItemsCommand, UntagResourceCommand, UpdateContinuousBackupsCommand, UpdateItemCommand, UpdateTableCommand, UpdateTimeToLiveCommand, } from "@aws-sdk/client-dynamodb";
|
|
10
|
+
import { BatchGetItemCommand, BatchWriteItemCommand, CreateBackupCommand, CreateTableCommand, DeleteBackupCommand, DeleteItemCommand, DeleteTableCommand, DescribeContinuousBackupsCommand, DescribeExportCommand, DescribeTableCommand, DescribeTimeToLiveCommand, DynamoDBClient, ExportTableToPointInTimeCommand, GetItemCommand, ListBackupsCommand, ListTablesCommand, ListTagsOfResourceCommand, PutItemCommand, QueryCommand, RestoreTableFromBackupCommand, RestoreTableToPointInTimeCommand, ScanCommand, SearchVectorsCommand, TagResourceCommand, TransactGetItemsCommand, TransactWriteItemsCommand, UntagResourceCommand, UpdateContinuousBackupsCommand, UpdateItemCommand, UpdateTableCommand, UpdateTimeToLiveCommand, } from "@aws-sdk/client-dynamodb";
|
|
11
11
|
import * as DynamoSchema from "@effect-dynamodb/schema/DynamoSchema.js";
|
|
12
|
+
import { Embedder } from "@effect-dynamodb/schema/Embedder.js";
|
|
12
13
|
import { DynamoError, DynamoValidationError, InternalServerError, isAwsInternalServerError, isAwsResourceNotFound, isAwsThrottling, isAwsValidationError, ResourceNotFoundError, ThrottlingError, ValidationError, } from "@effect-dynamodb/schema/Errors.js";
|
|
13
14
|
import { makeDefaultCrypto } from "@effect-dynamodb/schema/internal/DefaultCrypto.js";
|
|
14
15
|
import * as KeyComposer from "@effect-dynamodb/schema/KeyComposer.js";
|
|
15
|
-
import { Config, Context, Crypto, Effect, Layer } from "effect";
|
|
16
|
+
import { Config, Context, Crypto, Duration, Effect, Layer, Option } from "effect";
|
|
16
17
|
import { bind as aggregateBind } from "./Aggregate.js";
|
|
17
18
|
import { bind as entityBind, fromDefinition as entityFromDefinition } from "./Entity.js";
|
|
18
19
|
import { BoundQueryImpl } from "./internal/BoundQuery.js";
|
|
20
|
+
import { makeBoundVectorQuery, } from "./internal/BoundVectorQuery.js";
|
|
19
21
|
import { createConditionOps } from "./internal/Expr.js";
|
|
20
22
|
import { createPathBuilder } from "./internal/PathBuilder.js";
|
|
21
23
|
import * as Query from "./Query.js";
|
|
22
|
-
import { definition as tableDefinition } from "./Table.js";
|
|
24
|
+
import { mergeVectorIndexes, definition as tableDefinition, toVectorIndexSpec } from "./Table.js";
|
|
23
25
|
/**
|
|
24
26
|
* Effect Context.Service for the DynamoDB client service.
|
|
25
27
|
*
|
|
@@ -80,6 +82,14 @@ export class DynamoClient extends Context.Service()("@effect-dynamodb/DynamoClie
|
|
|
80
82
|
*/
|
|
81
83
|
static make = (config) => makeFromConfig(config);
|
|
82
84
|
}
|
|
85
|
+
// ---------------------------------------------------------------------------
|
|
86
|
+
// makeFromConfig — entity-centric make implementation
|
|
87
|
+
// ---------------------------------------------------------------------------
|
|
88
|
+
/**
|
|
89
|
+
* Accessor names the bound entity owns outright. A vector index logical name
|
|
90
|
+
* that lands on one of these would take the corresponding feature offline.
|
|
91
|
+
*/
|
|
92
|
+
const RESERVED_ACCESSOR_NAMES = new Set(["scan", "reembed"]);
|
|
83
93
|
const makeFromConfig = (config) => Effect.gen(function* () {
|
|
84
94
|
// 1. Resolve the provide function from context.
|
|
85
95
|
//
|
|
@@ -92,8 +102,36 @@ const makeFromConfig = (config) => Effect.gen(function* () {
|
|
|
92
102
|
// admit `Crypto.Crypto`. See `DESIGN.md` for the `R = never` rationale.
|
|
93
103
|
const baseCtx = yield* Effect.context();
|
|
94
104
|
const cryptoService = config.crypto ?? makeDefaultCrypto();
|
|
95
|
-
const
|
|
105
|
+
const withCrypto = Context.add(baseCtx, Crypto.Crypto, cryptoService);
|
|
106
|
+
// Bundle the Embedder the same way, so entities with `vectorIndexes` keep
|
|
107
|
+
// `R = never` on their bound operations. An explicit `embedder` wins; an
|
|
108
|
+
// ambient one already in context is honoured; otherwise nothing is added
|
|
109
|
+
// and the write path fails with a pointed `EmbeddingError` naming the index
|
|
110
|
+
// (rather than forcing the service on every consumer's type).
|
|
111
|
+
const ambientEmbedder = Context.getOption(baseCtx, Embedder);
|
|
112
|
+
const embedderService = config.embedder ?? (Option.isSome(ambientEmbedder) ? ambientEmbedder.value : undefined);
|
|
113
|
+
const ctx = embedderService !== undefined
|
|
114
|
+
? Context.add(withCrypto, Embedder, embedderService)
|
|
115
|
+
: withCrypto;
|
|
96
116
|
const provide = (effect) => Effect.provide(effect, ctx);
|
|
117
|
+
// Dimension agreement between the Embedder and every bound vector index is
|
|
118
|
+
// a construction-time invariant — a mismatch would otherwise surface as a
|
|
119
|
+
// per-write failure long after wiring. See `DESIGN.md §14`.
|
|
120
|
+
if (embedderService !== undefined) {
|
|
121
|
+
for (const [entityKey, rawEntity] of Object.entries(config.entities)) {
|
|
122
|
+
const declared = rawEntity._vectorIndexes;
|
|
123
|
+
if (!declared)
|
|
124
|
+
continue;
|
|
125
|
+
for (const [logicalName, definition] of Object.entries(declared)) {
|
|
126
|
+
if (definition.dimensions === embedderService.dimensions)
|
|
127
|
+
continue;
|
|
128
|
+
throw new Error(`[EDD-9037] Entity "${entityKey}" vector index "${logicalName}" declares ` +
|
|
129
|
+
`${definition.dimensions} dimensions, but the provided Embedder produces ` +
|
|
130
|
+
`${embedderService.dimensions}. Dimensions are immutable on a DynamoDB vector index — ` +
|
|
131
|
+
`align the index declaration with the embedding model.`);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
97
135
|
// Helper: validate query composites at runtime
|
|
98
136
|
const validateQueryComposites = (indexName, indexDef, composites) => {
|
|
99
137
|
const pkAttrs = indexDef.pk.composite;
|
|
@@ -219,6 +257,29 @@ const makeFromConfig = (config) => Effect.gen(function* () {
|
|
|
219
257
|
}
|
|
220
258
|
}
|
|
221
259
|
}
|
|
260
|
+
// Vector search accessors — one per declared vector index.
|
|
261
|
+
for (const [logicalName, definition] of Object.entries(entityLike._vectorIndexes ?? {})) {
|
|
262
|
+
// Accessors share one namespace on the bound entity. A vector index
|
|
263
|
+
// named after an existing index accessor (or `scan` / `reembed`) would
|
|
264
|
+
// silently replace it and take the other feature offline, so make the
|
|
265
|
+
// collision a construction-time failure instead.
|
|
266
|
+
if (logicalName in accessors || RESERVED_ACCESSOR_NAMES.has(logicalName)) {
|
|
267
|
+
throw new Error(`[EDD-9038] Entity "${key}": vector index "${logicalName}" collides with an existing ` +
|
|
268
|
+
`accessor of the same name. Vector index names share a namespace with GSI query ` +
|
|
269
|
+
`accessors, \`scan\` and \`reembed\` — rename one of them.`);
|
|
270
|
+
}
|
|
271
|
+
const vqConfig = {
|
|
272
|
+
entityType: entityLike.entityType,
|
|
273
|
+
logicalName,
|
|
274
|
+
definition,
|
|
275
|
+
schema: entityLike._schema,
|
|
276
|
+
tableTag: entityLike._tableTag,
|
|
277
|
+
decode: (raw) => entityLike._decodeRecord(raw),
|
|
278
|
+
provide,
|
|
279
|
+
resolveDbName: entityLike._resolveDbName ?? ((domainName) => domainName),
|
|
280
|
+
};
|
|
281
|
+
accessors[logicalName] = (query) => makeBoundVectorQuery(vqConfig, query);
|
|
282
|
+
}
|
|
222
283
|
// Add scan accessor
|
|
223
284
|
accessors.scan = () => {
|
|
224
285
|
const scanQuery = Query.makeScan({
|
|
@@ -436,6 +497,7 @@ const isResourceInUse = (err) => err._tag === "DynamoError" &&
|
|
|
436
497
|
const idempotentCreate = (effect) => Effect.catchIf(effect, isResourceInUse, () => Effect.void);
|
|
437
498
|
const buildTableOperationsFromTable = (tableName, table, client) => {
|
|
438
499
|
const def = tableDefinition(table);
|
|
500
|
+
const vectorIndexes = mergeVectorIndexes(table.entities);
|
|
439
501
|
return {
|
|
440
502
|
...buildTableOperations(tableName, client),
|
|
441
503
|
create: (options) => idempotentCreate(client
|
|
@@ -445,6 +507,40 @@ const buildTableOperationsFromTable = (tableName, table, client) => {
|
|
|
445
507
|
...def,
|
|
446
508
|
})
|
|
447
509
|
.pipe(Effect.asVoid)),
|
|
510
|
+
addVectorIndex: (indexName) => {
|
|
511
|
+
const entry = vectorIndexes.get(indexName);
|
|
512
|
+
if (entry === undefined) {
|
|
513
|
+
return Effect.fail(new DynamoError({
|
|
514
|
+
operation: "UpdateTable",
|
|
515
|
+
cause: `[EDD-9036] No entity registered on table "${tableName}" declares vector index ` +
|
|
516
|
+
`"${indexName}". Declared: ${[...vectorIndexes.keys()].sort().join(", ") || "(none)"}`,
|
|
517
|
+
}));
|
|
518
|
+
}
|
|
519
|
+
// UpdateTable, like CreateTable, requires every SearchSchema element to
|
|
520
|
+
// be declared in AttributeDefinitions (the composed HASH partition is
|
|
521
|
+
// always a string; filter types were derived at Entity.make).
|
|
522
|
+
const attributeDefinitions = [
|
|
523
|
+
{ AttributeName: entry.definition.partitionField, AttributeType: "S" },
|
|
524
|
+
...Object.entries(entry.filterStoredTypes).map(([AttributeName, AttributeType]) => ({
|
|
525
|
+
AttributeName,
|
|
526
|
+
AttributeType,
|
|
527
|
+
})),
|
|
528
|
+
];
|
|
529
|
+
return client
|
|
530
|
+
.updateTable({
|
|
531
|
+
TableName: tableName,
|
|
532
|
+
AttributeDefinitions: attributeDefinitions,
|
|
533
|
+
VectorIndexUpdates: [
|
|
534
|
+
{
|
|
535
|
+
Create: toVectorIndexSpec(entry.definition, {
|
|
536
|
+
filters: entry.filters,
|
|
537
|
+
resolveDbName: entry.resolveDbName,
|
|
538
|
+
}),
|
|
539
|
+
},
|
|
540
|
+
],
|
|
541
|
+
})
|
|
542
|
+
.pipe(Effect.asVoid);
|
|
543
|
+
},
|
|
448
544
|
};
|
|
449
545
|
};
|
|
450
546
|
const buildTableOperations = (tableName, client) => ({
|
|
@@ -528,7 +624,61 @@ const buildTableOperations = (tableName, client) => ({
|
|
|
528
624
|
})
|
|
529
625
|
.pipe(Effect.asVoid),
|
|
530
626
|
tags: () => client.listTagsOfResource({ ResourceArn: tableName }),
|
|
627
|
+
addVectorIndex: (indexName) => Effect.fail(new DynamoError({
|
|
628
|
+
operation: "UpdateTable",
|
|
629
|
+
cause: `[EDD-9036] Cannot add vector index "${indexName}" — this table handle was built ` +
|
|
630
|
+
`without entity registrations, so no vector index declarations are available. ` +
|
|
631
|
+
`Pass \`tables\` to DynamoClient.make().`,
|
|
632
|
+
})),
|
|
633
|
+
removeVectorIndex: (indexName) => client
|
|
634
|
+
.updateTable({
|
|
635
|
+
TableName: tableName,
|
|
636
|
+
VectorIndexUpdates: [{ Delete: { IndexName: indexName } }],
|
|
637
|
+
})
|
|
638
|
+
.pipe(Effect.asVoid),
|
|
639
|
+
waitForVectorIndex: (indexName, options) => waitForVectorIndexReady(tableName, indexName, client, options),
|
|
531
640
|
});
|
|
641
|
+
/** Default poll interval while waiting for a vector index to finish backfilling. */
|
|
642
|
+
const VECTOR_INDEX_POLL_INTERVAL = Duration.seconds(2);
|
|
643
|
+
/** Default overall timeout while waiting for a vector index to finish backfilling. */
|
|
644
|
+
const VECTOR_INDEX_TIMEOUT = Duration.minutes(10);
|
|
645
|
+
/**
|
|
646
|
+
* @internal Poll `DescribeTable` until the named vector index is ACTIVE and no
|
|
647
|
+
* longer backfilling.
|
|
648
|
+
*
|
|
649
|
+
* A vector index absent from `DescribeTable` output is treated as "nothing to
|
|
650
|
+
* wait for" rather than an error: DynamoDB Local silently discards
|
|
651
|
+
* `VectorIndexes` on `CreateTable`, so every local run would otherwise block
|
|
652
|
+
* for the full timeout.
|
|
653
|
+
*/
|
|
654
|
+
const waitForVectorIndexReady = (tableName, indexName, client, options) => {
|
|
655
|
+
const pollInterval = options?.pollInterval ?? VECTOR_INDEX_POLL_INTERVAL;
|
|
656
|
+
const timeout = options?.timeout ?? VECTOR_INDEX_TIMEOUT;
|
|
657
|
+
const poll = Effect.gen(function* () {
|
|
658
|
+
const described = yield* client.describeTable({ TableName: tableName });
|
|
659
|
+
const indexes = described.Table?.VectorIndexes;
|
|
660
|
+
if (indexes === undefined || indexes.length === 0)
|
|
661
|
+
return true;
|
|
662
|
+
const found = indexes.find((i) => i.IndexName === indexName);
|
|
663
|
+
if (found === undefined)
|
|
664
|
+
return true;
|
|
665
|
+
return found.IndexStatus === "ACTIVE" && found.Backfilling !== true;
|
|
666
|
+
});
|
|
667
|
+
return Effect.gen(function* () {
|
|
668
|
+
while (true) {
|
|
669
|
+
if (yield* poll)
|
|
670
|
+
return;
|
|
671
|
+
yield* Effect.sleep(pollInterval);
|
|
672
|
+
}
|
|
673
|
+
}).pipe(Effect.timeoutOrElse({
|
|
674
|
+
duration: timeout,
|
|
675
|
+
orElse: () => Effect.fail(new DynamoError({
|
|
676
|
+
operation: "DescribeTable",
|
|
677
|
+
cause: `Vector index "${indexName}" on table "${tableName}" did not become ACTIVE within ` +
|
|
678
|
+
`${Duration.format(Duration.fromInputUnsafe(timeout))}.`,
|
|
679
|
+
})),
|
|
680
|
+
}));
|
|
681
|
+
};
|
|
532
682
|
/** @internal Classify an AWS SDK error into a specific tagged error type. */
|
|
533
683
|
const classifyError = (operation) => (cause) => {
|
|
534
684
|
if (isAwsThrottling(cause))
|
|
@@ -586,6 +736,10 @@ const buildService = (region, endpoint, credentials) => Effect.gen(function* ()
|
|
|
586
736
|
try: () => client.send(new ScanCommand(input)),
|
|
587
737
|
catch: classifyError("Scan"),
|
|
588
738
|
}),
|
|
739
|
+
searchVectors: (input) => Effect.tryPromise({
|
|
740
|
+
try: () => client.send(new SearchVectorsCommand(input)),
|
|
741
|
+
catch: classifyError("SearchVectors"),
|
|
742
|
+
}),
|
|
589
743
|
batchGetItem: (input) => Effect.tryPromise({
|
|
590
744
|
try: () => client.send(new BatchGetItemCommand(input)),
|
|
591
745
|
catch: classifyError("BatchGetItem"),
|
package/dist/DynamoClient.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DynamoClient.js","sourceRoot":"","sources":["../src/DynamoClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA8DH,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,gCAAgC,EAChC,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,cAAc,EACd,+BAA+B,EAC/B,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,yBAAyB,EACzB,cAAc,EACd,YAAY,EACZ,6BAA6B,EAC7B,gCAAgC,EAChC,WAAW,EACX,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,EACzB,oBAAoB,EACpB,8BAA8B,EAC9B,iBAAiB,EACjB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,0BAA0B,CAAA;AACjC,OAAO,KAAK,YAAY,MAAM,yCAAyC,CAAA;AAEvE,OAAO,EACL,WAAW,EACX,qBAAqB,EACrB,mBAAmB,EACnB,wBAAwB,EACxB,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,eAAe,EACf,eAAe,GAChB,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAA;AAOrF,OAAO,KAAK,WAAW,MAAM,wCAAwC,CAAA;AACrE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAe,MAAM,QAAQ,CAAA;AAE5E,OAAO,EAAE,IAAI,IAAI,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAEtD,OAAO,EAAE,IAAI,IAAI,UAAU,EAAE,cAAc,IAAI,oBAAoB,EAAE,MAAM,aAAa,CAAA;AACxF,OAAO,EAAyB,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC,OAAO,EAAE,UAAU,IAAI,eAAe,EAAE,MAAM,YAAY,CAAA;AAyK1D;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,YAAa,SAAQ,OAAO,CAAC,OAAO,EAAqC,CACpF,+BAA+B,CAChC;IACC;;;;;;OAMG;IACH,MAAM,CAAU,KAAK,GAAG,CAAC,MAMxB,EAA6B,EAAE,CAC9B,KAAK,CAAC,MAAM,CAAC,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAA;IAE9F;;;;;;;OAOG;IACH,MAAM,CAAU,WAAW,GAAG,CAAC,MAM9B,EAAiD,EAAE,CAClD,KAAK,CAAC,MAAM,CACV,YAAY,EACZ,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAA;QACnC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACpF,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW;YACpC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;YAC1C,CAAC,CAAC,SAAS,CAAA;QACb,OAAO,KAAK,CAAC,CAAC,YAAY,CACxB,MAAM,EACN,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EACjE,WAAW,IAAI,WAAW,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAC3E,CAAA;IACH,CAAC,CAAC,CACH,CAAA;IAEH;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,MAAM,CAAU,IAAI,GAkDhB,CAAC,MAAW,EAAO,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;;AAwQlD,MAAM,cAAc,GAAG,CAAC,MAKvB,EAAyD,EAAE,CAC1D,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,gDAAgD;IAChD,EAAE;IACF,2EAA2E;IAC3E,4EAA4E;IAC5E,2EAA2E;IAC3E,sEAAsE;IACtE,4EAA4E;IAC5E,yEAAyE;IACzE,wEAAwE;IACxE,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,EAA8B,CAAA;IACnE,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,IAAI,iBAAiB,EAAE,CAAA;IAC1D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IAC9D,MAAM,OAAO,GAAG,CACd,MAAuE,EAC3C,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAE5D,+CAA+C;IAC/C,MAAM,uBAAuB,GAAG,CAC9B,SAAiB,EACjB,QAAyB,EACzB,UAAmC,EAC7B,EAAE;QACR,MAAM,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC,SAAS,CAAA;QACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC,SAAS,CAAA;QAErC,uCAAuC;QACvC,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;gBACnC,MAAM,IAAI,KAAK,CACb,wDAAwD,IAAI,gBAAgB,SAAS,GAAG,CACzF,CAAA;YACH,CAAC;QACH,CAAC;QAED,+CAA+C;QAC/C,IAAI,YAAY,GAAG,CAAC,CAAC,CAAA;QACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC1C,IAAI,CAAC,KAAK,YAAY,GAAG,CAAC,EAAE,CAAC;oBAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;oBAC7D,MAAM,IAAI,KAAK,CACb,kCAAkC,OAAO,CAAC,CAAC,CAAC,gBAAgB,SAAS,gCAAgC,OAAO,oDAAoD,CACjK,CAAA;gBACH,CAAC;gBACD,YAAY,GAAG,CAAC,CAAA;YAClB,CAAC;QACH,CAAC;QAED,0BAA0B;QAC1B,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC,CAAA;QACnD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CACb,2CAA2C,GAAG,gBAAgB,SAAS,wBAAwB,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC3H,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAA;IAED,6DAA6D;IAC7D,MAAM,wBAAwB,GAAG,CAC/B,UAAsB,EACtB,UAAkB,EAClB,QAAyB,EACzB,EAAE;QACF,OAAO,CAAC,UAAmC,EAAE,EAAE;YAC7C,uBAAuB,CAAC,UAAU,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAA;YACzD,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CACnC,UAAU,CAAC,OAAO,EAClB,UAAU,CAAC,UAAU,EACrB,QAAQ,EACR,UAAU,CACX,CAAA;YACD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;gBACvB,SAAS,EAAE,EAAE;gBACb,SAAS,EAAE,QAAQ,CAAC,KAAK;gBACzB,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC,KAAK;gBAC1B,OAAO;gBACP,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC,KAAK;gBAC1B,WAAW,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;gBACpC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC;gBAC/C,gBAAgB,EAAE,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAe,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;aAC7E,CAAC,CAAA;YAEF,2CAA2C;YAC3C,MAAM,eAAe,GAAG,QAAQ,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAChD,CAAC,IAAY,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,SAAS,CACjD,CAAA;YACD,MAAM,UAAU,GAAG,eAAe;gBAChC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE;oBACjB,UAAU,EAAE,WAAW,CAAC,oBAAoB,CAC1C,UAAU,CAAC,OAAO,EAClB,UAAU,CAAC,UAAU,EACrB,CAAC,EACD,QAAQ,EACR,UAAU,CACX;iBACF,CAAC;gBACJ,CAAC,CAAC,KAAK,CAAA;YAET,MAAM,WAAW,GAAG,iBAAiB,EAAE,CAAA;YACvC,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAA;YAEzC,gFAAgF;YAChF,MAAM,kBAAkB,GAAG,CAAC,SAAiC,EAA0B,EAAE;gBACvF,MAAM,QAAQ,GAAG,WAAW,CAAC,oBAAoB,CAC/C,UAAU,CAAC,OAAO,EAClB,UAAU,CAAC,UAAU,EACrB,CAAC,EACD,QAAQ,EACR,UAAU,CACX,CAAA;gBACD,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,GAAG,QAAQ,IAAI,KAAK,EAAE,CAAA;gBACzD,IAAI,IAAI,IAAI,SAAS;oBAAE,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAA;gBAC3D,IAAI,IAAI,IAAI,SAAS;oBAAE,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAA;gBAC3D,IAAI,KAAK,IAAI,SAAS;oBAAE,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAA;gBAC9D,IAAI,IAAI,IAAI,SAAS;oBAAE,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAA;gBAC3D,IAAI,KAAK,IAAI,SAAS;oBAAE,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAA;gBAC9D,IAAI,SAAS,IAAI,SAAS;oBACxB,OAAO,EAAE,OAAO,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;gBACpF,IAAI,YAAY,IAAI,SAAS;oBAAE,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAA;gBACnF,OAAO,SAAS,CAAA;YAClB,CAAC,CAAA;YAED,MAAM,QAAQ,GAA8B;gBAC1C,WAAW;gBACX,YAAY;gBACZ,OAAO;gBACP,kBAAkB;gBAClB,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,SAAS;aAChC,CAAA;YACD,OAAO,IAAI,cAAc,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QACjD,CAAC,CAAA;IACH,CAAC,CAAA;IAED,kDAAkD;IAClD,MAAM,aAAa,GAA4B,EAAE,CAAA;IACjD,kDAAkD;IAClD,oEAAoE;IACpE,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAG9B,CAAA;IAEH,KAAK,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/D,yEAAyE;QACzE,qEAAqE;QACrE,sEAAsE;QACtE,sEAAsE;QACtE,2EAA2E;QAC3E,0EAA0E;QAC1E,4DAA4D;QAC5D,MAAM,MAAM,GACV,OAAQ,SAA+B,CAAC,GAAG,KAAK,UAAU;YACxD,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,oBAAoB,CAAC,SAAwC,CAAC,CAAA;QACpE,uEAAuE;QACvE,2EAA2E;QAC3E,oEAAoE;QACpE,yEAAyE;QACzE,uCAAuC;QACvC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,cAAc,CACxC,UAAU,CAAC,MAAoB,CAAC,EAChC,MAAM,CAAC,MAAM,EACb,aAAa,CACd,CAAA;QACD,MAAM,UAAU,GAAG,MAA+B,CAAA;QAClD,MAAM,SAAS,GAA4B,EAAE,CAAA;QAE7C,2DAA2D;QAC3D,KAAK,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACvE,IAAI,CAAC,QAAQ;gBAAE,SAAQ;YAEvB,SAAS,CAAC,SAAS,CAAC,GAAG,wBAAwB,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;YAEhF,iDAAiD;YACjD,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACxB,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;oBAClD,CAAC,CAAC,QAAQ,CAAC,UAAU;oBACrB,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;gBACzB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;oBACjC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACrC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;oBACrC,CAAC;oBACD,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAA;gBACjF,CAAC;YACH,CAAC;QACH,CAAC;QAED,oBAAoB;QACpB,SAAS,CAAC,IAAI,GAAG,GAAG,EAAE;YACpB,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC;gBAC/B,SAAS,EAAE,EAAE;gBACb,SAAS,EAAE,SAAS;gBACpB,WAAW,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;gBACpC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC;gBAC/C,gBAAgB,EAAE,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAe,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;aAC7E,CAAC,CAAA;YACF,MAAM,WAAW,GAAG,iBAAiB,EAAE,CAAA;YACvC,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAA;YACzC,MAAM,QAAQ,GAA8B,EAAE,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,CAAA;YAClF,OAAO,IAAI,cAAc,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QAChD,CAAC,CAAA;QAED,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,SAAS,EAAE,CAAA;IACjD,CAAC;IAED,gDAAgD;IAChD,MAAM,gBAAgB,GAA4B,EAAE,CAAA;IACpD,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,iBAAiB,EAAE,CAAC;QACpD,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAmC,EAAE,EAAE;YACnE,0CAA0C;YAC1C,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAE,CAAA;YAC/B,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAA;YAErC,wCAAwC;YACxC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAA;YAC9C,MAAM,WAAW,GAAa,EAAE,CAAA;YAChC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,CAAA;gBAChE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;YAChD,CAAC;YAED,qDAAqD;YACrD,MAAM,WAAW,GAAG,CAAC,GAA4B,EAAE,EAAE;gBACnD,MAAM,UAAU,GAAG,GAAG,CAAC,SAA+B,CAAA;gBACtD,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,OAAO,MAAM,CAAC,IAAI,CAChB,IAAI,eAAe,CAAC;wBAClB,UAAU,EAAE,SAAS;wBACrB,SAAS,EAAE,mBAAmB;wBAC9B,KAAK,EAAE,wBAAwB;qBAChC,CAAC,CACH,CAAA;gBACH,CAAC;gBACD,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;gBAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,OAAO,MAAM,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAA;gBACrE,CAAC;gBACD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,KAAK,UAAU,CAAC,CAAA;gBAC1E,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO,MAAM,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAA;gBACrE,CAAC;gBACD,OAAO,MAAM,CAAC,UAAU;qBACrB,aAAa,CAAC,GAAG,CAAC;qBAClB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAgB,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;YAC3F,CAAC,CAAA;YAED,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CACnC,WAAW,CAAC,UAAU,CAAC,OAAO,EAC9B,WAAW,CAAC,UAAU,CAAC,UAAU,EACjC,QAAQ,EACR,UAAU,CACX,CAAA;YAED,wDAAwD;YACxD,IAAI,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;gBACrB,SAAS,EAAE,EAAE;gBACb,SAAS,EAAE,QAAQ,CAAC,KAAK;gBACzB,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC,KAAK;gBAC1B,OAAO;gBACP,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC,KAAK;gBAC1B,WAAW;gBACX,OAAO,EAAE,WAAkB;gBAC3B,gBAAgB,EAAE,WAAW,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAe,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;aACzF,CAAC,CAAA;YAEF,qEAAqE;YACrE,0EAA0E;YAC1E,yEAAyE;YACzE,EAAE;YACF,uEAAuE;YACvE,wEAAwE;YACxE,yEAAyE;YACzE,IAAI,QAAQ,CAAC,EAAE,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACvD,MAAM,IAAI,GAAG,QAAQ,CAAC,UAAU,CAAA;gBAChC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;oBACnC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;oBAC3C,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;gBACd,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAA;gBACvE,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;gBAC/D,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAA;gBAC5E,MAAM,QAAQ,GAAG,GAAG,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAA;gBACjD,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAA;YACtD,CAAC;YAED,uDAAuD;YACvD,MAAM,WAAW,GAAG,iBAAiB,EAAE,CAAA;YACvC,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAA;YACzC,MAAM,iBAAiB,GAAG,CAAO,GAA6B,EAAE,EAAE,CAChE,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAA+B,CAAA;YACxD,MAAM,QAAQ,GAA8B;gBAC1C,WAAW;gBACX,YAAY;gBACZ,OAAO,EAAE,iBAAiB;aAC3B,CAAA;YACD,MAAM,EAAE,GAAG,IAAI,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;YAE9C,oCAAoC;YACpC,MAAM,eAAe,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAC1C;YAAC,EAAU,CAAC,OAAO,GAAG,GAAG,EAAE,CAC1B,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,CAAC,KAAY,EAAE,EAAE;gBAC7C,MAAM,MAAM,GAA8B,EAAE,CAAA;gBAC5C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;oBAC7B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,CAAA;gBAC/B,CAAC;gBACD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,MAAM,SAAS,GAAI,IAAY,CAAC,UAAU,CAAA;oBAC1C,IAAI,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;wBACnC,MAAM,CAAC,SAAS,CAAE,CAAC,IAAI,CAAE,IAAY,CAAC,QAAQ,CAAC,CAAA;oBACjD,CAAC;gBACH,CAAC;gBACD,OAAO,MAAM,CAAA;YACf,CAAC,CAAC,CAAA;YAEJ,OAAO,EAAE,CAAA;QACX,CAAC,CAAA;IACH,CAAC;IAED,qBAAqB;IACrB,MAAM,eAAe,GAA4B,EAAE,CAAA;IACnD,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,KAAK,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;YACjE,eAAe,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;QACxD,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;IAClC,MAAM,MAAM,GAAoC,EAAE,CAAA;IAElD,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9D,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAA;YACpC,yEAAyE;YACzE,qEAAqE;YACrE,0EAA0E;YAC1E,4EAA4E;YAC5E,2EAA2E;YAC3E,iEAAiE;YACjE,IAAI,WAAW,GAAG,KAAyB,CAAA;YAC3C,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACtB,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAA;gBACjC,MAAM,YAAY,GAAG,KAAK,CAAC,UAAqC,CAAA;gBAChE,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAA;gBAC3D,MAAM,qBAAqB,GAA6B,EAAE,CAAA;gBAC1D,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC9D,MAAM,MAAM,GAAI,GAA0D,CAAC,SAAS,CAAA;oBACpF,IAAI,MAAM,KAAK,SAAS;wBAAE,SAAQ;oBAClC,IAAI,MAAM,CAAC,GAAG,KAAK,WAAW;wBAAE,SAAQ;oBACxC,mEAAmE;oBACnE,mEAAmE;oBACnE,IAAI,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC;wBAAE,SAAQ;oBACrC,qBAAqB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAA;gBAC3C,CAAC;gBACD,IAAI,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrC,WAAW,GAAG;wBACZ,GAAI,KAA0B;wBAC9B,UAAU,EAAE;4BACV,GAAG,YAAY;4BACf,GAAG,MAAM,CAAC,WAAW,CAAC,qBAAqB,CAAC;yBAC7C;qBACkB,CAAA;gBACvB,CAAC;YACH,CAAC;YACD,MAAM,CAAC,QAAQ,CAAC,GAAG,6BAA6B,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,CAAC,CAAA;QACzF,CAAC;IACH,CAAC;SAAM,CAAC;QACN,+EAA+E;QAC/E,6EAA6E;QAC7E,wDAAwD;QACxD,MAAM,aAAa,GAAG,IAAI,GAAG,EAO1B,CAAA;QACH,KAAK,MAAM,CAAC,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzD,MAAM,UAAU,GAAG,MAA+B,CAAA;YAClD,MAAM,KAAK,GAAG,UAAU,CAAC,SAAS,CAAC,GAAG,CAAA;YACtC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,UAAU,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAA;YACvF,CAAC;YACD,aAAa,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACrD,CAAC;QACD,0EAA0E;QAC1E,uEAAuE;QACvE,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,KAAK,MAAM,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;gBACxD,MAAM,MAAM,GAAI,GAA0D,CAAC,SAAS,CAAA;gBACpF,IAAI,MAAM,IAAI,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC5C,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBACrD,CAAC;YACH,CAAC;QACH,CAAC;QACD,KAAK,MAAM,CACT,AADU,EAEV,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,eAAe,EAAE,EAC9D,IAAI,aAAa,EAAE,CAAC;YACnB,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,GAAG,CAAA;YAC9B,yEAAyE;YACzE,2BAA2B;YAC3B,MAAM,cAAc,GAAG;gBACrB,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;gBACzE,UAAU,EAAE,MAAM,CAAC,WAAW,CAC5B,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC3B,CAAuB,CAAC,IAAI,IAAI,eAAe,CAAC,IAAI;oBACrD,CAAC;iBACF,CAAC,CACH;aACkB,CAAA;YACrB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,6BAA6B,CACtD,WAAW,CAAC,IAAI,EAChB,cAAc,EACd,MAAM,CACP,CAAA;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,aAAa;QACvB,UAAU,EAAE,eAAe;QAC3B,WAAW,EAAE,gBAAgB;QAC7B,MAAM;KACA,CAAA;AACV,CAAC,CAAC,CAAA;AAEJ,8EAA8E;AAC9E,oDAAoD;AACpD,8EAA8E;AAE9E,oFAAoF;AACpF,MAAM,eAAe,GAAG,CAAC,GAAsB,EAAW,EAAE,CAC1D,GAAG,CAAC,IAAI,KAAK,aAAa;IAC1B,GAAG,CAAC,KAAK,IAAI,IAAI;IACjB,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ;IAC7B,MAAM,IAAI,GAAG,CAAC,KAAK;IAClB,GAAG,CAAC,KAA0B,CAAC,IAAI,KAAK,wBAAwB,CAAA;AAEnE,oEAAoE;AACpE,MAAM,gBAAgB,GAAG,CACvB,MAA8C,EACN,EAAE,CAC1C,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;AAE5D,MAAM,6BAA6B,GAAG,CACpC,SAAiB,EACjB,KAAY,EACZ,MAA2B,EACV,EAAE;IACnB,MAAM,GAAG,GAAG,eAAe,CAAC,KAAK,CAAC,CAAA;IAClC,OAAO;QACL,GAAG,oBAAoB,CAAC,SAAS,EAAE,MAAM,CAAC;QAC1C,MAAM,EAAE,CAAC,OAA4B,EAAE,EAAE,CACvC,gBAAgB,CACd,MAAM;aACH,WAAW,CAAC;YACX,SAAS,EAAE,SAAS;YACpB,WAAW,EAAE,OAAO,EAAE,WAAW,IAAI,iBAAiB;YACtD,GAAG,GAAG;SACP,CAAC;aACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CACvB;KACJ,CAAA;AACH,CAAC,CAAA;AAED,MAAM,oBAAoB,GAAG,CAAC,SAAiB,EAAE,MAA2B,EAAmB,EAAE,CAAC,CAAC;IACjG,MAAM,EAAE,CAAC,OAA4B,EAAE,EAAE,CACvC,gBAAgB,CACd,MAAM;SACH,WAAW,CAAC;QACX,SAAS,EAAE,SAAS;QACpB,WAAW,EAAE,OAAO,EAAE,WAAW,IAAI,iBAAiB;QACtD,SAAS,EAAE;YACT,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE;YACxC,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE;SAC1C;QACD,oBAAoB,EAAE;YACpB,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE;YAC3C,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE;SAC5C;KACF,CAAC;SACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CACvB;IACH,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC9E,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IAC9D,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAChB,MAAM;SACH,WAAW,CAAC,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,SAAS,EAA6B,CAAC;SAC1E,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IACxB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IACjF,WAAW,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IAC/D,iBAAiB,EAAE,CAAC,SAAS,EAAE,EAAE,CAC/B,MAAM,CAAC,sBAAsB,CAAC;QAC5B,eAAe,EAAE,GAAG,SAAS,UAAU;QACvC,SAAS,EAAE,SAAS;KACrB,CAAC;IACJ,yBAAyB,EAAE,GAAG,EAAE,CAC9B,MAAM;SACH,uBAAuB,CAAC;QACvB,SAAS,EAAE,SAAS;QACpB,gCAAgC,EAAE,EAAE,0BAA0B,EAAE,IAAI,EAAE;KACvE,CAAC;SACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IACxB,0BAA0B,EAAE,GAAG,EAAE,CAC/B,MAAM;SACH,uBAAuB,CAAC;QACvB,SAAS,EAAE,SAAS;QACpB,gCAAgC,EAAE,EAAE,0BAA0B,EAAE,KAAK,EAAE;KACxE,CAAC;SACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IACxB,oBAAoB,EAAE,CAAC,SAAS,EAAE,EAAE,CAClC,MAAM,CAAC,yBAAyB,CAAC;QAC/B,eAAe,EAAE,SAAS;QAC1B,eAAe,EAAE,GAAG,SAAS,eAAe;QAC5C,eAAe,EAAE,SAAS;KAC3B,CAAC;IACJ,UAAU,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,CAChC,MAAM,CAAC,wBAAwB,CAAC;QAC9B,QAAQ,EAAE,SAAS,EAAE,4CAA4C;QACjE,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,OAAO,EAAE,QAAQ;QAC3B,YAAY,EAAE,OAAO,EAAE,YAAY;KACpC,CAAC;IACJ,SAAS,EAAE,CAAC,aAAa,EAAE,EAAE,CAC3B,MAAM;SACH,gBAAgB,CAAC;QAChB,SAAS,EAAE,SAAS;QACpB,uBAAuB,EAAE;YACvB,OAAO,EAAE,IAAI;YACb,aAAa,EAAE,aAAa;SAC7B;KACF,CAAC;SACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IACxB,UAAU,EAAE,CAAC,aAAa,EAAE,EAAE,CAC5B,MAAM;SACH,gBAAgB,CAAC;QAChB,SAAS,EAAE,SAAS;QACpB,uBAAuB,EAAE;YACvB,OAAO,EAAE,KAAK;YACd,aAAa,EAAE,aAAa;SAC7B;KACF,CAAC;SACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IACxB,WAAW,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IACtE,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CACZ,MAAM;SACH,WAAW,CAAC;QACX,WAAW,EAAE,SAAS,EAAE,uBAAuB;QAC/C,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;KACnE,CAAC;SACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IACxB,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CACjB,MAAM;SACH,aAAa,CAAC;QACb,WAAW,EAAE,SAAS,EAAE,uBAAuB;QAC/C,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC;KACtB,CAAC;SACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IACxB,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;CAClE,CAAC,CAAA;AAEF,6EAA6E;AAC7E,MAAM,aAAa,GACjB,CAAC,SAAiB,EAAE,EAAE,CACtB,CAAC,KAAc,EAAqB,EAAE;IACpC,IAAI,eAAe,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,eAAe,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;IAC5E,IAAI,oBAAoB,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,qBAAqB,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;IACvF,IAAI,wBAAwB,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,mBAAmB,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;IACzF,IAAI,qBAAqB,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,qBAAqB,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;IACxF,OAAO,IAAI,WAAW,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;AAC9C,CAAC,CAAA;AAEH,2FAA2F;AAC3F,MAAM,YAAY,GAAG,CACnB,MAAc,EACd,QAA4B,EAC5B,WAA2F,EAC3F,EAAE,CACF,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,YAAY,GAAoD,EAAE,MAAM,EAAE,CAAA;IAChF,IAAI,QAAQ,KAAK,SAAS;QAAE,YAAY,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5D,IAAI,WAAW,KAAK,SAAS;QAAE,YAAY,CAAC,WAAW,GAAG,WAAW,CAAA;IACrE,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,cAAc,CACzC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,cAAc,CAAC,YAAY,CAAC,CAAC,EACnD,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CACtC,CAAA;IACD,OAAO;QACL,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE,CACrB,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACrD,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC;SACpC,CAAC;QACJ,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE,CACrB,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACrD,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC;SACpC,CAAC;QACJ,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE,CACvB,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,oBAAoB,CAAC,KAAK,CAAC,CAAC;YACvD,KAAK,EAAE,aAAa,CAAC,eAAe,CAAC;SACtC,CAAC;QACJ,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC;YACjD,KAAK,EAAE,aAAa,CAAC,SAAS,CAAC;SAChC,CAAC;QACJ,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC;YACjD,KAAK,EAAE,aAAa,CAAC,SAAS,CAAC;SAChC,CAAC;QACJ,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE,CACpB,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACpD,KAAK,EAAE,aAAa,CAAC,YAAY,CAAC;SACnC,CAAC;QACJ,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE,CACpB,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACpD,KAAK,EAAE,aAAa,CAAC,YAAY,CAAC;SACnC,CAAC;QACJ,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC;YAC/C,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC;SAC9B,CAAC;QACJ,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CACd,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC;YAC9C,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC;SAC7B,CAAC;QACJ,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE,CACtB,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACtD,KAAK,EAAE,aAAa,CAAC,cAAc,CAAC;SACrC,CAAC;QACJ,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CACxB,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,qBAAqB,CAAC,KAAK,CAAC,CAAC;YACxD,KAAK,EAAE,aAAa,CAAC,gBAAgB,CAAC;SACvC,CAAC;QACJ,gBAAgB,EAAE,CAAC,KAAK,EAAE,EAAE,CAC1B,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,uBAAuB,CAAC,KAAK,CAAC,CAAC;YAC1D,KAAK,EAAE,aAAa,CAAC,kBAAkB,CAAC;SACzC,CAAC;QACJ,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE,CAC5B,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,yBAAyB,CAAC,KAAK,CAAC,CAAC;YAC5D,KAAK,EAAE,aAAa,CAAC,oBAAoB,CAAC;SAC3C,CAAC;QACJ,2BAA2B;QAC3B,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE,CACrB,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACrD,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC;SACpC,CAAC;QACJ,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE,CACpB,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACpD,KAAK,EAAE,aAAa,CAAC,YAAY,CAAC;SACnC,CAAC;QACJ,iBAAiB;QACjB,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE,CACtB,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACtD,KAAK,EAAE,aAAa,CAAC,cAAc,CAAC;SACrC,CAAC;QACJ,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE,CACtB,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACtD,KAAK,EAAE,aAAa,CAAC,cAAc,CAAC;SACrC,CAAC;QACJ,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE,CACrB,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACrD,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC;SACpC,CAAC;QACJ,sBAAsB,EAAE,CAAC,KAAK,EAAE,EAAE,CAChC,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,6BAA6B,CAAC,KAAK,CAAC,CAAC;YAChE,KAAK,EAAE,aAAa,CAAC,wBAAwB,CAAC;SAC/C,CAAC;QACJ,eAAe;QACf,yBAAyB,EAAE,CAAC,KAAK,EAAE,EAAE,CACnC,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,gCAAgC,CAAC,KAAK,CAAC,CAAC;YACnE,KAAK,EAAE,aAAa,CAAC,2BAA2B,CAAC;SAClD,CAAC;QACJ,uBAAuB,EAAE,CAAC,KAAK,EAAE,EAAE,CACjC,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,8BAA8B,CAAC,KAAK,CAAC,CAAC;YACjE,KAAK,EAAE,aAAa,CAAC,yBAAyB,CAAC;SAChD,CAAC;QACJ,yBAAyB,EAAE,CAAC,KAAK,EAAE,EAAE,CACnC,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,gCAAgC,CAAC,KAAK,CAAC,CAAC;YACnE,KAAK,EAAE,aAAa,CAAC,2BAA2B,CAAC;SAClD,CAAC;QACJ,iBAAiB;QACjB,wBAAwB,EAAE,CAAC,KAAK,EAAE,EAAE,CAClC,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,+BAA+B,CAAC,KAAK,CAAC,CAAC;YAClE,KAAK,EAAE,aAAa,CAAC,0BAA0B,CAAC;SACjD,CAAC;QACJ,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CACxB,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,qBAAqB,CAAC,KAAK,CAAC,CAAC;YACxD,KAAK,EAAE,aAAa,CAAC,gBAAgB,CAAC;SACvC,CAAC;QACJ,cAAc;QACd,gBAAgB,EAAE,CAAC,KAAK,EAAE,EAAE,CAC1B,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,uBAAuB,CAAC,KAAK,CAAC,CAAC;YAC1D,KAAK,EAAE,aAAa,CAAC,kBAAkB,CAAC;SACzC,CAAC;QACJ,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE,CAC5B,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,yBAAyB,CAAC,KAAK,CAAC,CAAC;YAC5D,KAAK,EAAE,aAAa,CAAC,oBAAoB,CAAC;SAC3C,CAAC;QACJ,eAAe;QACf,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE,CACrB,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACrD,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC;SACpC,CAAC;QACJ,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE,CACvB,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,oBAAoB,CAAC,KAAK,CAAC,CAAC;YACvD,KAAK,EAAE,aAAa,CAAC,eAAe,CAAC;SACtC,CAAC;QACJ,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE,CAC5B,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,yBAAyB,CAAC,KAAK,CAAC,CAAC;YAC5D,KAAK,EAAE,aAAa,CAAC,oBAAoB,CAAC;SAC3C,CAAC;KACyB,CAAA;AACjC,CAAC,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"DynamoClient.js","sourceRoot":"","sources":["../src/DynamoClient.ts"],"names":[],"mappings":"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"}
|
package/dist/Entity.d.ts
CHANGED
|
@@ -11,6 +11,7 @@ import { type ConfiguredModel, type ExtractIdentifier } from "@effect-dynamodb/s
|
|
|
11
11
|
import * as DynamoSchema from "@effect-dynamodb/schema/DynamoSchema.js";
|
|
12
12
|
import { ConditionalCheckFailed, ItemNotFound, OptimisticLockError, StaleAppend, UniqueConstraintViolation, ValidationError } from "@effect-dynamodb/schema/Errors.js";
|
|
13
13
|
import type { GsiConfig, IndexDefinition, KeyPart } from "@effect-dynamodb/schema/KeyComposer.js";
|
|
14
|
+
import type { VectorIndexConfig, VectorIndexDefinition } from "@effect-dynamodb/schema/VectorIndex.js";
|
|
14
15
|
import { Effect, Schema, Stream } from "effect";
|
|
15
16
|
import { DynamoClient, type DynamoClientError } from "./DynamoClient.js";
|
|
16
17
|
import type { ConditionInput } from "./Expression.js";
|
|
@@ -18,12 +19,12 @@ import { type Expr } from "./internal/Expr.js";
|
|
|
18
19
|
import * as Query from "./Query.js";
|
|
19
20
|
import { type TableConfig } from "./Table.js";
|
|
20
21
|
export type { CascadeIndexConfig, GeneratedIdConfig, RefValue, SoftDeleteConfig, TimeSeriesConfig, TimestampFieldConfig, TimestampsConfig, UniqueConfig, UniqueConstraintDef, UniqueFieldsDef, VersionedConfig, } from "@effect-dynamodb/schema/internal/EntityConfig.js";
|
|
21
|
-
export { type CascadeConfig, type CascadeTarget, type DecodeMode, type EntityBase, type EntityDelete, EntityDeleteImpl, EntityDeleteTypeId, type EntityGet, EntityGetImpl, type EntityGetOpts, type EntityOp, EntityOpTypeId, type EntityPut, EntityPutImpl, type EntityUpdate, EntityUpdateImpl, EntityUpdateTypeId, emptyUpdateState, type ReturnValuesMode, returnValuesMap, type UpdateState, } from "./internal/EntityOps.js";
|
|
22
|
+
export { type CascadeConfig, type CascadeTarget, type DecodeMode, type EntityBase, type EntityDelete, EntityDeleteImpl, EntityDeleteTypeId, type EntityGet, EntityGetImpl, type EntityGetOpts, type EntityOp, EntityOpTypeId, type EntityPut, EntityPutImpl, type EntityPutOpts, type EntityUpdate, EntityUpdateImpl, EntityUpdateTypeId, emptyUpdateState, type ReturnValuesMode, returnValuesMap, type UpdateState, type WithVectors, } from "./internal/EntityOps.js";
|
|
22
23
|
import { type EntityDelete, type EntityGet, type EntityPut, type EntityUpdate } from "./internal/EntityOps.js";
|
|
23
24
|
export { add, append, asItem, asModel, asNative, asRecord, cascade, clearMap, consistentRead, deleteFromSet, expectedVersion, pathAdd, pathAppend, pathDelete, pathIfNotExists, pathPrepend, pathRemove, pathSet, pathSubtract, project, remove, removeEntries, returnValues, set, subtract, } from "./internal/EntityCombinators.js";
|
|
24
25
|
import type { GeneratedIdConfig, SoftDeleteConfig, TimeSeriesConfig, TimestampsConfig, UniqueConfig, VersionedConfig } from "@effect-dynamodb/schema/internal/EntityConfig.js";
|
|
25
26
|
import { type DerivedSchemas, type ResolvedSystemFields } from "@effect-dynamodb/schema/internal/EntitySchemas.js";
|
|
26
|
-
import type { AppendInputType, AppendSuccess as AppendSuccessType, EntityInputType, EntityKeyType, EntityRecordType, EntityRefCreateType, EntityRefInputType, EntityRefUpdateType, EntityUpdateType, IndexPkInput, ModelType, PrimaryKeyComposites, RefErrors, WithGeneratedId } from "@effect-dynamodb/schema/internal/EntityTypes.js";
|
|
27
|
+
import type { AppendInputType, AppendSuccess as AppendSuccessType, EntityInputType, EntityKeyType, EntityRecordType, EntityRefCreateType, EntityRefInputType, EntityRefUpdateType, EntityUpdateType, IndexPkInput, ModelType, PrimaryKeyComposites, RefErrors, VectorErrors, WithGeneratedId } from "@effect-dynamodb/schema/internal/EntityTypes.js";
|
|
27
28
|
export type { IndexDefinition, KeyPart };
|
|
28
29
|
/**
|
|
29
30
|
* Compose a unique-constraint sentinel key, returning `undefined` when any
|
|
@@ -61,7 +62,7 @@ export { normalizeTtlSeconds };
|
|
|
61
62
|
* @typeParam TUnique - Unique constraint definitions
|
|
62
63
|
* @typeParam TIdentifier - Identifier field name (auto-generated, omitted from Create type)
|
|
63
64
|
*/
|
|
64
|
-
export interface Entity<TModel extends Schema.Top = Schema.Top, TEntityType extends string = string, TIndexes extends globalThis.Record<string, IndexDefinition> = globalThis.Record<string, IndexDefinition>, TTimestamps extends TimestampsConfig | undefined = TimestampsConfig | undefined, TVersioned extends VersionedConfig | undefined = VersionedConfig | undefined, TSoftDelete extends SoftDeleteConfig | undefined = SoftDeleteConfig | undefined, TUnique extends UniqueConfig | undefined = UniqueConfig | undefined, TRefs extends globalThis.Record<string, AnyRefValue> | undefined = undefined, TIdentifier extends string | undefined = undefined, TTimeSeries extends TimeSeriesConfig<any> | undefined = undefined, TGeneratedId extends GeneratedIdConfig | undefined = undefined> {
|
|
65
|
+
export interface Entity<TModel extends Schema.Top = Schema.Top, TEntityType extends string = string, TIndexes extends globalThis.Record<string, IndexDefinition> = globalThis.Record<string, IndexDefinition>, TTimestamps extends TimestampsConfig | undefined = TimestampsConfig | undefined, TVersioned extends VersionedConfig | undefined = VersionedConfig | undefined, TSoftDelete extends SoftDeleteConfig | undefined = SoftDeleteConfig | undefined, TUnique extends UniqueConfig | undefined = UniqueConfig | undefined, TRefs extends globalThis.Record<string, AnyRefValue> | undefined = undefined, TIdentifier extends string | undefined = undefined, TTimeSeries extends TimeSeriesConfig<any> | undefined = undefined, TGeneratedId extends GeneratedIdConfig | undefined = undefined, TVectorIndexes extends globalThis.Record<string, VectorIndexConfig> | undefined = undefined> {
|
|
65
66
|
readonly _tag: "Entity";
|
|
66
67
|
readonly model: TModel;
|
|
67
68
|
readonly entityType: TEntityType;
|
|
@@ -73,6 +74,10 @@ export interface Entity<TModel extends Schema.Top = Schema.Top, TEntityType exte
|
|
|
73
74
|
readonly identifier: TIdentifier;
|
|
74
75
|
readonly timeSeries: TTimeSeries;
|
|
75
76
|
readonly generatedId: TGeneratedId;
|
|
77
|
+
/** Vector index declarations as authored (see `DESIGN.md §14`). */
|
|
78
|
+
readonly vectorIndexes: TVectorIndexes;
|
|
79
|
+
/** @internal Normalized vector index definitions keyed by logical name. */
|
|
80
|
+
readonly _vectorIndexes: globalThis.Record<string, VectorIndexDefinition>;
|
|
76
81
|
/** @internal Resolved ref metadata — used by cascade to inspect target entities */
|
|
77
82
|
readonly _resolvedRefs: ReadonlyArray<{
|
|
78
83
|
readonly fieldName: string;
|
|
@@ -82,6 +87,10 @@ export interface Entity<TModel extends Schema.Top = Schema.Top, TEntityType exte
|
|
|
82
87
|
}>;
|
|
83
88
|
/** @internal Full decode pipeline: rename + schema decode. Used by Batch/Aggregate. */
|
|
84
89
|
readonly _decodeRecord: (raw: globalThis.Record<string, unknown>) => Effect.Effect<any, ValidationError>;
|
|
90
|
+
/** @internal Domain field name → stored DynamoDB attribute name (`storedAs` renames). */
|
|
91
|
+
readonly _resolveDbName: (domainName: string) => string;
|
|
92
|
+
/** @internal Entity schema version baked into composed keys. */
|
|
93
|
+
readonly _entityVersion: number;
|
|
85
94
|
/**
|
|
86
95
|
* @internal Flatten sparse-map fields into per-entry top-level attributes.
|
|
87
96
|
* Mutates the item in place. Used by Transaction/Batch put builders.
|
|
@@ -143,24 +152,24 @@ export interface Entity<TModel extends Schema.Top = Schema.Top, TEntityType exte
|
|
|
143
152
|
/** Fetch an item by primary key. Returns a lazy {@link EntityGet} intermediate. */
|
|
144
153
|
readonly get: (key: EntityKeyType<TModel, TIndexes>) => EntityGet<ModelType<TModel>, EntityRecordType<TModel, TTimestamps, TVersioned>, ItemNotFound | DynamoClientError | ValidationError, DynamoClient | TableConfig>;
|
|
145
154
|
/** Create or replace an item. Returns a lazy {@link EntityPut} intermediate. */
|
|
146
|
-
readonly put: (input: WithGeneratedId<EntityRefInputType<TModel, TRefs, TTimestamps, TVersioned, TTimeSeries>, TGeneratedId>) => EntityPut<ModelType<TModel>, EntityRecordType<TModel, TTimestamps, TVersioned>, DynamoClientError | ValidationError | UniqueConstraintViolation | RefErrors<TRefs>, DynamoClient | TableConfig>;
|
|
155
|
+
readonly put: (input: WithGeneratedId<EntityRefInputType<TModel, TRefs, TTimestamps, TVersioned, TTimeSeries>, TGeneratedId>) => EntityPut<ModelType<TModel>, EntityRecordType<TModel, TTimestamps, TVersioned>, DynamoClientError | ValidationError | UniqueConstraintViolation | RefErrors<TRefs> | VectorErrors<TVectorIndexes>, DynamoClient | TableConfig>;
|
|
147
156
|
/**
|
|
148
157
|
* Begin an update operation on an existing item. Returns a lazy {@link EntityUpdate} intermediate.
|
|
149
158
|
* Pipe to {@link set} to provide update fields and {@link expectedVersion} for optimistic locking.
|
|
150
159
|
*/
|
|
151
|
-
readonly update: (key: EntityKeyType<TModel, TIndexes>) => EntityUpdate<ModelType<TModel>, EntityRecordType<TModel, TTimestamps, TVersioned>, EntityRefUpdateType<TModel, TIndexes, TRefs, TTimestamps, TVersioned>, DynamoClientError | ItemNotFound | OptimisticLockError | UniqueConstraintViolation | ValidationError | RefErrors<TRefs>, DynamoClient | TableConfig>;
|
|
160
|
+
readonly update: (key: EntityKeyType<TModel, TIndexes>) => EntityUpdate<ModelType<TModel>, EntityRecordType<TModel, TTimestamps, TVersioned>, EntityRefUpdateType<TModel, TIndexes, TRefs, TTimestamps, TVersioned>, DynamoClientError | ItemNotFound | OptimisticLockError | UniqueConstraintViolation | ValidationError | RefErrors<TRefs> | VectorErrors<TVectorIndexes>, DynamoClient | TableConfig>;
|
|
152
161
|
/** Delete an item by primary key. Returns a lazy {@link EntityDelete} intermediate. */
|
|
153
162
|
readonly delete: (key: EntityKeyType<TModel, TIndexes>) => EntityDelete<DynamoClientError | ItemNotFound, DynamoClient | TableConfig>;
|
|
154
163
|
/**
|
|
155
164
|
* Create a new item. Fails with `ConditionalCheckFailed` if an item with the same
|
|
156
165
|
* primary key already exists. Equivalent to `put(input)` with an `attribute_not_exists` condition.
|
|
157
166
|
*/
|
|
158
|
-
readonly create: (input: WithGeneratedId<EntityRefInputType<TModel, TRefs, TTimestamps, TVersioned, TTimeSeries>, TGeneratedId>) => EntityPut<ModelType<TModel>, EntityRecordType<TModel, TTimestamps, TVersioned>, DynamoClientError | ValidationError | UniqueConstraintViolation | ConditionalCheckFailed | RefErrors<TRefs>, DynamoClient | TableConfig>;
|
|
167
|
+
readonly create: (input: WithGeneratedId<EntityRefInputType<TModel, TRefs, TTimestamps, TVersioned, TTimeSeries>, TGeneratedId>) => EntityPut<ModelType<TModel>, EntityRecordType<TModel, TTimestamps, TVersioned>, DynamoClientError | ValidationError | UniqueConstraintViolation | ConditionalCheckFailed | RefErrors<TRefs> | VectorErrors<TVectorIndexes>, DynamoClient | TableConfig>;
|
|
159
168
|
/**
|
|
160
169
|
* Update an existing item. Fails with `ConditionalCheckFailed` if the item doesn't exist.
|
|
161
170
|
* Equivalent to `update(key)` with an automatic `attribute_exists` condition on the PK field.
|
|
162
171
|
*/
|
|
163
|
-
readonly patch: (key: EntityKeyType<TModel, TIndexes>) => EntityUpdate<ModelType<TModel>, EntityRecordType<TModel, TTimestamps, TVersioned>, EntityRefUpdateType<TModel, TIndexes, TRefs, TTimestamps, TVersioned>, DynamoClientError | ItemNotFound | OptimisticLockError | UniqueConstraintViolation | ValidationError | ConditionalCheckFailed | RefErrors<TRefs>, DynamoClient | TableConfig>;
|
|
172
|
+
readonly patch: (key: EntityKeyType<TModel, TIndexes>) => EntityUpdate<ModelType<TModel>, EntityRecordType<TModel, TTimestamps, TVersioned>, EntityRefUpdateType<TModel, TIndexes, TRefs, TTimestamps, TVersioned>, DynamoClientError | ItemNotFound | OptimisticLockError | UniqueConstraintViolation | ValidationError | ConditionalCheckFailed | RefErrors<TRefs> | VectorErrors<TVectorIndexes>, DynamoClient | TableConfig>;
|
|
164
173
|
/**
|
|
165
174
|
* Delete an existing item. Fails with `ConditionalCheckFailed` if the item doesn't exist.
|
|
166
175
|
* Equivalent to `delete(key)` with an automatic `attribute_exists` condition on the PK field.
|
|
@@ -174,7 +183,7 @@ export interface Entity<TModel extends Schema.Top = Schema.Top, TEntityType exte
|
|
|
174
183
|
*
|
|
175
184
|
* Does NOT support unique constraints or retain (cannot determine if item existed).
|
|
176
185
|
*/
|
|
177
|
-
readonly upsert: (input: WithGeneratedId<EntityRefInputType<TModel, TRefs, TTimestamps, TVersioned, TTimeSeries>, TGeneratedId>) => EntityPut<ModelType<TModel>, EntityRecordType<TModel, TTimestamps, TVersioned>, DynamoClientError | ValidationError | ItemNotFound | ConditionalCheckFailed | RefErrors<TRefs>, DynamoClient | TableConfig>;
|
|
186
|
+
readonly upsert: (input: WithGeneratedId<EntityRefInputType<TModel, TRefs, TTimestamps, TVersioned, TTimeSeries>, TGeneratedId>) => EntityPut<ModelType<TModel>, EntityRecordType<TModel, TTimestamps, TVersioned>, DynamoClientError | ValidationError | ItemNotFound | ConditionalCheckFailed | RefErrors<TRefs> | VectorErrors<TVectorIndexes>, DynamoClient | TableConfig>;
|
|
178
187
|
/** Fetch a specific version snapshot by version number. */
|
|
179
188
|
readonly getVersion: (key: EntityKeyType<TModel, TIndexes>, version: number) => EntityGet<ModelType<TModel>, EntityRecordType<TModel, TTimestamps, TVersioned>, ItemNotFound | DynamoClientError | ValidationError, DynamoClient | TableConfig>;
|
|
180
189
|
/** Query version history for an item. Returns a Query for piping with limit, reverse, collect. */
|
|
@@ -324,7 +333,15 @@ export interface Entity<TModel extends Schema.Top = Schema.Top, TEntityType exte
|
|
|
324
333
|
* }) {}
|
|
325
334
|
* ```
|
|
326
335
|
*/
|
|
327
|
-
|
|
336
|
+
/**
|
|
337
|
+
* The logical vector index names an entity declares, as a string union.
|
|
338
|
+
*
|
|
339
|
+
* Resolves to `never` for entities without `vectorIndexes`, which makes
|
|
340
|
+
* `.withVector()` uncallable on them — an unusable method beats a method that
|
|
341
|
+
* silently does nothing.
|
|
342
|
+
*/
|
|
343
|
+
export type VectorIndexNames<TVectorIndexes> = TVectorIndexes extends globalThis.Record<string, VectorIndexConfig> ? keyof TVectorIndexes & string : never;
|
|
344
|
+
export interface BoundEntity<TModel extends Schema.Top, TIndexes extends globalThis.Record<string, IndexDefinition>, TRefs extends globalThis.Record<string, AnyRefValue> | undefined, TKey = EntityKeyType<TModel, TIndexes>, TTimeSeries extends TimeSeriesConfig<any> | undefined = undefined, TTimestamps extends TimestampsConfig | undefined = undefined, TVersioned extends VersionedConfig | undefined = undefined, TGeneratedId extends GeneratedIdConfig | undefined = undefined, TVectorIndexes extends globalThis.Record<string, VectorIndexConfig> | undefined = undefined> {
|
|
328
345
|
/** Fetch an item by primary key. Returns an Effect that resolves to the model type. */
|
|
329
346
|
readonly get: (key: TKey) => Effect.Effect<ModelType<TModel>, ItemNotFound | DynamoClientError | ValidationError, never>;
|
|
330
347
|
/**
|
|
@@ -336,12 +353,12 @@ export interface BoundEntity<TModel extends Schema.Top, TIndexes extends globalT
|
|
|
336
353
|
* yield* db.entities.Users.put(input).condition({ status: "active" })
|
|
337
354
|
* ```
|
|
338
355
|
*/
|
|
339
|
-
readonly put: (input: WithGeneratedId<EntityRefInputType<TModel, TRefs, TTimestamps, TVersioned, TTimeSeries>, TGeneratedId>) => import("./internal/BoundCrud.js").BoundPut<ModelType<TModel>, ModelType<TModel>, DynamoClientError | ValidationError | UniqueConstraintViolation | RefErrors<TRefs>>;
|
|
356
|
+
readonly put: (input: WithGeneratedId<EntityRefInputType<TModel, TRefs, TTimestamps, TVersioned, TTimeSeries>, TGeneratedId>) => import("./internal/BoundCrud.js").BoundPut<ModelType<TModel>, ModelType<TModel>, DynamoClientError | ValidationError | UniqueConstraintViolation | RefErrors<TRefs> | VectorErrors<TVectorIndexes>, VectorIndexNames<TVectorIndexes>>;
|
|
340
357
|
/**
|
|
341
358
|
* Create a new item. Fails with {@link ConditionalCheckFailed} if an item with the same
|
|
342
359
|
* primary key already exists. Returns a fluent {@link BoundPut}.
|
|
343
360
|
*/
|
|
344
|
-
readonly create: (input: WithGeneratedId<EntityRefInputType<TModel, TRefs, TTimestamps, TVersioned, TTimeSeries>, TGeneratedId>) => import("./internal/BoundCrud.js").BoundPut<ModelType<TModel>, ModelType<TModel>, DynamoClientError | ValidationError | UniqueConstraintViolation | ConditionalCheckFailed | RefErrors<TRefs>>;
|
|
361
|
+
readonly create: (input: WithGeneratedId<EntityRefInputType<TModel, TRefs, TTimestamps, TVersioned, TTimeSeries>, TGeneratedId>) => import("./internal/BoundCrud.js").BoundPut<ModelType<TModel>, ModelType<TModel>, DynamoClientError | ValidationError | UniqueConstraintViolation | ConditionalCheckFailed | RefErrors<TRefs> | VectorErrors<TVectorIndexes>, VectorIndexNames<TVectorIndexes>>;
|
|
345
362
|
/**
|
|
346
363
|
* Begin an update on an existing item. Returns a fluent {@link BoundUpdate} — chain
|
|
347
364
|
* `.set(...)`, `.remove(...)`, `.add(...)`, `.condition(...)`, `.expectedVersion(...)`,
|
|
@@ -351,7 +368,7 @@ export interface BoundEntity<TModel extends Schema.Top, TIndexes extends globalT
|
|
|
351
368
|
* yield* db.entities.Tasks.update({ id }).set(updates).expectedVersion(3)
|
|
352
369
|
* ```
|
|
353
370
|
*/
|
|
354
|
-
readonly update: (key: TKey) => import("./internal/BoundCrud.js").BoundUpdate<ModelType<TModel>, ModelType<TModel>, EntityRefUpdateType<TModel, TIndexes, TRefs, TTimestamps, TVersioned>, DynamoClientError | ItemNotFound | OptimisticLockError | UniqueConstraintViolation | ValidationError | RefErrors<TRefs>>;
|
|
371
|
+
readonly update: (key: TKey) => import("./internal/BoundCrud.js").BoundUpdate<ModelType<TModel>, ModelType<TModel>, EntityRefUpdateType<TModel, TIndexes, TRefs, TTimestamps, TVersioned>, DynamoClientError | ItemNotFound | OptimisticLockError | UniqueConstraintViolation | ValidationError | RefErrors<TRefs> | VectorErrors<TVectorIndexes>, VectorIndexNames<TVectorIndexes>>;
|
|
355
372
|
/**
|
|
356
373
|
* Delete an item by primary key. Returns a fluent {@link BoundDelete} — yield to execute,
|
|
357
374
|
* chain `.condition(...)` and/or `.returnValues(...)`.
|
|
@@ -367,7 +384,7 @@ export interface BoundEntity<TModel extends Schema.Top, TIndexes extends globalT
|
|
|
367
384
|
* Uses DynamoDB UpdateItem with `if_not_exists()` for immutable fields and
|
|
368
385
|
* createdAt so they're only set on first creation.
|
|
369
386
|
*/
|
|
370
|
-
readonly upsert: (input: WithGeneratedId<EntityRefInputType<TModel, TRefs, TTimestamps, TVersioned, TTimeSeries>, TGeneratedId>) => import("./internal/BoundCrud.js").BoundPut<ModelType<TModel>, ModelType<TModel>, DynamoClientError | ValidationError | ItemNotFound | ConditionalCheckFailed | RefErrors<TRefs>>;
|
|
387
|
+
readonly upsert: (input: WithGeneratedId<EntityRefInputType<TModel, TRefs, TTimestamps, TVersioned, TTimeSeries>, TGeneratedId>) => import("./internal/BoundCrud.js").BoundPut<ModelType<TModel>, ModelType<TModel>, DynamoClientError | ValidationError | ItemNotFound | ConditionalCheckFailed | RefErrors<TRefs> | VectorErrors<TVectorIndexes>, VectorIndexNames<TVectorIndexes>>;
|
|
371
388
|
/**
|
|
372
389
|
* Update an existing item. Fails with {@link ConditionalCheckFailed} if the item doesn't exist.
|
|
373
390
|
* Returns a fluent {@link BoundUpdate}.
|
|
@@ -376,7 +393,7 @@ export interface BoundEntity<TModel extends Schema.Top, TIndexes extends globalT
|
|
|
376
393
|
* yield* db.entities.Tasks.patch({ id }).set(updates)
|
|
377
394
|
* ```
|
|
378
395
|
*/
|
|
379
|
-
readonly patch: (key: TKey) => import("./internal/BoundCrud.js").BoundUpdate<ModelType<TModel>, ModelType<TModel>, EntityRefUpdateType<TModel, TIndexes, TRefs, TTimestamps, TVersioned>, DynamoClientError | ItemNotFound | OptimisticLockError | UniqueConstraintViolation | ValidationError | ConditionalCheckFailed | RefErrors<TRefs>>;
|
|
396
|
+
readonly patch: (key: TKey) => import("./internal/BoundCrud.js").BoundUpdate<ModelType<TModel>, ModelType<TModel>, EntityRefUpdateType<TModel, TIndexes, TRefs, TTimestamps, TVersioned>, DynamoClientError | ItemNotFound | OptimisticLockError | UniqueConstraintViolation | ValidationError | ConditionalCheckFailed | RefErrors<TRefs> | VectorErrors<TVectorIndexes>, VectorIndexNames<TVectorIndexes>>;
|
|
380
397
|
/** Delete an existing item, fails if not found. Returns a fluent {@link BoundDelete}. */
|
|
381
398
|
readonly deleteIfExists: (key: TKey) => import("./internal/BoundCrud.js").BoundDelete<ModelType<TModel>, DynamoClientError | ItemNotFound | ConditionalCheckFailed>;
|
|
382
399
|
/** Fetch a specific version snapshot by version number. */
|
|
@@ -584,7 +601,7 @@ type PrimaryKeyDef = IndexDefinition & ({
|
|
|
584
601
|
* })
|
|
585
602
|
* ```
|
|
586
603
|
*/
|
|
587
|
-
export declare const make: <TModel extends Schema.Top, const TEntityType extends string, const TPrimaryKey extends PrimaryKeyDef, const TGsiIndexes extends globalThis.Record<string, GsiConfig> = {}, const TTimestamps extends TimestampsConfig | undefined = undefined, const TVersioned extends VersionedConfig | undefined = undefined, const TSoftDelete extends SoftDeleteConfig | undefined = undefined, const TUnique extends UniqueConfig | undefined = undefined, const TRefs extends globalThis.Record<string, AnyRefValue> | undefined = undefined, const TTimeSeries extends TimeSeriesConfig<any> | undefined = undefined, const TGeneratedId extends GeneratedIdConfig | undefined = undefined, const TAttrs extends {} = {}>(config: {
|
|
604
|
+
export declare const make: <TModel extends Schema.Top, const TEntityType extends string, const TPrimaryKey extends PrimaryKeyDef, const TGsiIndexes extends globalThis.Record<string, GsiConfig> = {}, const TTimestamps extends TimestampsConfig | undefined = undefined, const TVersioned extends VersionedConfig | undefined = undefined, const TSoftDelete extends SoftDeleteConfig | undefined = undefined, const TUnique extends UniqueConfig | undefined = undefined, const TRefs extends globalThis.Record<string, AnyRefValue> | undefined = undefined, const TTimeSeries extends TimeSeriesConfig<any> | undefined = undefined, const TGeneratedId extends GeneratedIdConfig | undefined = undefined, const TVectorIndexes extends globalThis.Record<string, VectorIndexConfig<any>> | undefined = undefined, const TAttrs extends {} = {}>(config: {
|
|
588
605
|
readonly model: TModel | ConfiguredModel<TModel, TAttrs>;
|
|
589
606
|
readonly entityType: TEntityType;
|
|
590
607
|
readonly primaryKey: TPrimaryKey;
|
|
@@ -596,7 +613,8 @@ export declare const make: <TModel extends Schema.Top, const TEntityType extends
|
|
|
596
613
|
readonly refs?: TRefs;
|
|
597
614
|
readonly timeSeries?: TTimeSeries;
|
|
598
615
|
readonly generatedId?: TGeneratedId;
|
|
599
|
-
|
|
616
|
+
readonly vectorIndexes?: TVectorIndexes;
|
|
617
|
+
}) => Entity<TModel, TEntityType, NormalizedIndexes<TPrimaryKey, TGsiIndexes>, TTimestamps, TVersioned, TSoftDelete, TUnique, TRefs, ExtractIdentifier<ConfiguredModel<TModel, TAttrs>>, TTimeSeries, TGeneratedId, TVectorIndexes>;
|
|
600
618
|
/**
|
|
601
619
|
* Promote a pure `@effect-dynamodb/schema` {@link EntityDefinition} into a full
|
|
602
620
|
* operational runtime {@link Entity}, attaching CRUD/query operations. The
|
|
@@ -625,7 +643,7 @@ export declare const fromDefinition: (def: EntityDefinition) => Entity;
|
|
|
625
643
|
*
|
|
626
644
|
* @internal Used by `DynamoClient.make()` to bind entities.
|
|
627
645
|
*/
|
|
628
|
-
export declare const bind: <TModel extends Schema.Top, TEntityType extends string, TIndexes extends globalThis.Record<string, IndexDefinition>, TTimestamps extends TimestampsConfig | undefined, TVersioned extends VersionedConfig | undefined, TSoftDelete extends SoftDeleteConfig | undefined, TUnique extends UniqueConfig | undefined, TRefs extends globalThis.Record<string, AnyRefValue> | undefined, TIdentifier extends string | undefined, TTimeSeries extends TimeSeriesConfig<any> | undefined = undefined, TGeneratedId extends GeneratedIdConfig | undefined = undefined>(entity: Entity<TModel, TEntityType, TIndexes, TTimestamps, TVersioned, TSoftDelete, TUnique, TRefs, TIdentifier, TTimeSeries, TGeneratedId>) => Effect.Effect<BoundEntity<TModel, TIndexes, TRefs, EntityKeyType<TModel, TIndexes>, TTimeSeries, TTimestamps, TVersioned, TGeneratedId>, never, DynamoClient | TableConfig>;
|
|
646
|
+
export declare const bind: <TModel extends Schema.Top, TEntityType extends string, TIndexes extends globalThis.Record<string, IndexDefinition>, TTimestamps extends TimestampsConfig | undefined, TVersioned extends VersionedConfig | undefined, TSoftDelete extends SoftDeleteConfig | undefined, TUnique extends UniqueConfig | undefined, TRefs extends globalThis.Record<string, AnyRefValue> | undefined, TIdentifier extends string | undefined, TTimeSeries extends TimeSeriesConfig<any> | undefined = undefined, TGeneratedId extends GeneratedIdConfig | undefined = undefined, TVectorIndexes extends globalThis.Record<string, VectorIndexConfig> | undefined = undefined>(entity: Entity<TModel, TEntityType, TIndexes, TTimestamps, TVersioned, TSoftDelete, TUnique, TRefs, TIdentifier, TTimeSeries, TGeneratedId, TVectorIndexes>) => Effect.Effect<BoundEntity<TModel, TIndexes, TRefs, EntityKeyType<TModel, TIndexes>, TTimeSeries, TTimestamps, TVersioned, TGeneratedId, TVectorIndexes>, never, DynamoClient | TableConfig>;
|
|
629
647
|
export interface TransactableInfo {
|
|
630
648
|
readonly opType: "get" | "put" | "update" | "delete";
|
|
631
649
|
readonly entity: Entity;
|