effect-dynamodb 1.25.0 → 1.27.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.
Files changed (72) hide show
  1. package/dist/Aggregate.d.ts +7 -0
  2. package/dist/Aggregate.d.ts.map +1 -1
  3. package/dist/Aggregate.js +150 -4
  4. package/dist/Aggregate.js.map +1 -1
  5. package/dist/Collection.d.ts +9 -1
  6. package/dist/Collection.d.ts.map +1 -1
  7. package/dist/Collection.js +3 -0
  8. package/dist/Collection.js.map +1 -1
  9. package/dist/DynamoClient.d.ts +80 -28
  10. package/dist/DynamoClient.d.ts.map +1 -1
  11. package/dist/DynamoClient.js +83 -11
  12. package/dist/DynamoClient.js.map +1 -1
  13. package/dist/Entity.d.ts +80 -27
  14. package/dist/Entity.d.ts.map +1 -1
  15. package/dist/Entity.js +406 -76
  16. package/dist/Entity.js.map +1 -1
  17. package/dist/EventStore.d.ts +454 -55
  18. package/dist/EventStore.d.ts.map +1 -1
  19. package/dist/EventStore.js +681 -129
  20. package/dist/EventStore.js.map +1 -1
  21. package/dist/Query.d.ts +53 -0
  22. package/dist/Query.d.ts.map +1 -1
  23. package/dist/Query.js +88 -6
  24. package/dist/Query.js.map +1 -1
  25. package/dist/StorageEncoding.d.ts +160 -0
  26. package/dist/StorageEncoding.d.ts.map +1 -0
  27. package/dist/StorageEncoding.js +258 -0
  28. package/dist/StorageEncoding.js.map +1 -0
  29. package/dist/Table.d.ts.map +1 -1
  30. package/dist/Table.js +8 -6
  31. package/dist/Table.js.map +1 -1
  32. package/dist/Transaction.d.ts.map +1 -1
  33. package/dist/Transaction.js +5 -0
  34. package/dist/Transaction.js.map +1 -1
  35. package/dist/compression/zlib.d.ts +75 -0
  36. package/dist/compression/zlib.d.ts.map +1 -0
  37. package/dist/compression/zlib.js +109 -0
  38. package/dist/compression/zlib.js.map +1 -0
  39. package/dist/index.d.ts +4 -1
  40. package/dist/index.d.ts.map +1 -1
  41. package/dist/index.js +3 -1
  42. package/dist/index.js.map +1 -1
  43. package/dist/internal/BoundCrud.d.ts +39 -35
  44. package/dist/internal/BoundCrud.d.ts.map +1 -1
  45. package/dist/internal/BoundCrud.js.map +1 -1
  46. package/dist/internal/BoundQuery.d.ts +3 -3
  47. package/dist/internal/BoundQuery.d.ts.map +1 -1
  48. package/dist/internal/BoundQuery.js.map +1 -1
  49. package/dist/internal/BoundVectorQuery.d.ts +12 -0
  50. package/dist/internal/BoundVectorQuery.d.ts.map +1 -1
  51. package/dist/internal/BoundVectorQuery.js +14 -1
  52. package/dist/internal/BoundVectorQuery.js.map +1 -1
  53. package/dist/internal/EntityCombinators.d.ts.map +1 -1
  54. package/dist/internal/EntityCombinators.js +16 -1
  55. package/dist/internal/EntityCombinators.js.map +1 -1
  56. package/dist/internal/Expr.d.ts +5 -3
  57. package/dist/internal/Expr.d.ts.map +1 -1
  58. package/dist/internal/Expr.js +1 -1
  59. package/dist/internal/Expr.js.map +1 -1
  60. package/dist/internal/Packed.d.ts +289 -0
  61. package/dist/internal/Packed.d.ts.map +1 -0
  62. package/dist/internal/Packed.js +654 -0
  63. package/dist/internal/Packed.js.map +1 -0
  64. package/dist/internal/PathBuilder.d.ts +45 -2
  65. package/dist/internal/PathBuilder.d.ts.map +1 -1
  66. package/dist/internal/PathBuilder.js +4 -0
  67. package/dist/internal/PathBuilder.js.map +1 -1
  68. package/dist/internal/TransactableOps.d.ts +1 -1
  69. package/dist/internal/TransactableOps.d.ts.map +1 -1
  70. package/dist/internal/TransactableOps.js +2 -0
  71. package/dist/internal/TransactableOps.js.map +1 -1
  72. package/package.json +6 -2
@@ -8,9 +8,10 @@
8
8
  * @module
9
9
  */
10
10
  import type { BatchGetItemCommandInput, BatchGetItemCommandOutput, BatchWriteItemCommandInput, BatchWriteItemCommandOutput, CreateBackupCommandInput, CreateBackupCommandOutput, CreateTableCommandInput, CreateTableCommandOutput, DeleteBackupCommandInput, DeleteBackupCommandOutput, DeleteItemCommandInput, DeleteItemCommandOutput, DeleteTableCommandInput, DeleteTableCommandOutput, DescribeContinuousBackupsCommandInput, DescribeContinuousBackupsCommandOutput, DescribeExportCommandInput, DescribeExportCommandOutput, DescribeTableCommandInput, DescribeTableCommandOutput, DescribeTimeToLiveCommandInput, DescribeTimeToLiveCommandOutput, ExportTableToPointInTimeCommandInput, ExportTableToPointInTimeCommandOutput, GetItemCommandInput, GetItemCommandOutput, ListBackupsCommandInput, ListBackupsCommandOutput, ListTablesCommandInput, ListTablesCommandOutput, ListTagsOfResourceCommandInput, ListTagsOfResourceCommandOutput, PutItemCommandInput, PutItemCommandOutput, QueryCommandInput, QueryCommandOutput, RestoreTableFromBackupCommandInput, RestoreTableFromBackupCommandOutput, RestoreTableToPointInTimeCommandInput, RestoreTableToPointInTimeCommandOutput, ScanCommandInput, ScanCommandOutput, SearchVectorsCommandInput, SearchVectorsCommandOutput, TagResourceCommandInput, TagResourceCommandOutput, TransactGetItemsCommandInput, TransactGetItemsCommandOutput, TransactWriteItemsCommandInput, TransactWriteItemsCommandOutput, UntagResourceCommandInput, UntagResourceCommandOutput, UpdateContinuousBackupsCommandInput, UpdateContinuousBackupsCommandOutput, UpdateItemCommandInput, UpdateItemCommandOutput, UpdateTableCommandInput, UpdateTableCommandOutput, UpdateTimeToLiveCommandInput, UpdateTimeToLiveCommandOutput } from "@aws-sdk/client-dynamodb";
11
+ import { Compression, type Compressor } from "@effect-dynamodb/schema/Compression.js";
11
12
  import type { EmbedderService } from "@effect-dynamodb/schema/Embedder.js";
12
13
  import type { EntityDefinition } from "@effect-dynamodb/schema/Entity.js";
13
- import { DynamoError, DynamoValidationError, InternalServerError, ResourceNotFoundError, ThrottlingError } from "@effect-dynamodb/schema/Errors.js";
14
+ import { DynamoError, DynamoValidationError, InternalServerError, ResourceNotFoundError, ThrottlingError, ValidationError } from "@effect-dynamodb/schema/Errors.js";
14
15
  import type { EntityKeyType, IndexPkInput, IndexSkFields } from "@effect-dynamodb/schema/internal/EntityTypes.js";
15
16
  import type { IndexDefinition } from "@effect-dynamodb/schema/KeyComposer.js";
16
17
  import type { VectorIndexConfig } from "@effect-dynamodb/schema/VectorIndex.js";
@@ -18,6 +19,7 @@ import { Config, Context, Crypto, Duration, Effect, Layer, type Schema, type Str
18
19
  import type { Aggregate as AggregateType, BoundAggregate } from "./Aggregate.js";
19
20
  import type { BoundEntity, Entity as EntityType } from "./Entity.js";
20
21
  import { type BoundVectorQuery } from "./internal/BoundVectorQuery.js";
22
+ import { type PathModel } from "./internal/PathBuilder.js";
21
23
  import type { CreateTableOptions, TableConfig } from "./Table.js";
22
24
  /** Union of all DynamoDB client error types */
23
25
  export type DynamoClientError = DynamoError | ThrottlingError | DynamoValidationError | InternalServerError | ResourceNotFoundError;
@@ -97,6 +99,24 @@ export interface DynamoClientService {
97
99
  /** List tags on a DynamoDB resource. */
98
100
  readonly listTagsOfResource: (input: ListTagsOfResourceCommandInput) => Effect.Effect<ListTagsOfResourceCommandOutput, DynamoClientError>;
99
101
  }
102
+ /** Static client configuration accepted by {@link DynamoClient.layer}. */
103
+ type ClientConfig = {
104
+ readonly region: string;
105
+ readonly endpoint?: string | undefined;
106
+ readonly credentials?: {
107
+ readonly accessKeyId: string;
108
+ readonly secretAccessKey: string;
109
+ } | undefined;
110
+ };
111
+ /** Config-provider client configuration accepted by {@link DynamoClient.layerConfig}. */
112
+ type ClientConfigFromConfig = {
113
+ readonly region: Config.Config<string>;
114
+ readonly endpoint?: Config.Config<string> | undefined;
115
+ readonly credentials?: Config.Config<{
116
+ readonly accessKeyId: string;
117
+ readonly secretAccessKey: string;
118
+ }> | undefined;
119
+ };
100
120
  declare const DynamoClient_base: Context.ServiceClass<DynamoClient, "@effect-dynamodb/DynamoClient", DynamoClientService>;
101
121
  /**
102
122
  * Effect Context.Service for the DynamoDB client service.
@@ -117,15 +137,37 @@ export declare class DynamoClient extends DynamoClient_base {
117
137
  * @param config.region - AWS region
118
138
  * @param config.endpoint - Optional endpoint override (e.g., for DynamoDB Local)
119
139
  * @param config.credentials - Optional static credentials
140
+ * @param config.compressors - Optional compressors for packed storage
141
+ * (`DynamoModel.Packed` with `compression`). When given, the layer also
142
+ * provides the `Compression` service built from them. That reaches whatever
143
+ * this layer is merged with — but not past a wrapper that consumes it
144
+ * through `Layer.provide` (a decorated client, say), whose output is only
145
+ * `DynamoClient`. Prefer a separate `Compression.layer([...])` merged into
146
+ * the application layer, which works however the client is composed.
147
+ *
148
+ * @example
149
+ * ```typescript
150
+ * import * as ZlibCompression from "effect-dynamodb/compression/zlib"
151
+ * // Recommended: the compressors as their own layer, beside the client
152
+ * const AppLayer = Layer.mergeAll(
153
+ * DynamoClient.layer({ region: "us-east-1" }),
154
+ * Compression.layer([ZlibCompression.zstd()]),
155
+ * )
156
+ * // Also works, when this layer is used directly:
157
+ * const live = DynamoClient.layer({ region: "us-east-1", compressors: [ZlibCompression.zstd()] })
158
+ * ```
120
159
  */
121
- static readonly layer: (config: {
122
- readonly region: string;
123
- readonly endpoint?: string | undefined;
124
- readonly credentials?: {
125
- readonly accessKeyId: string;
126
- readonly secretAccessKey: string;
127
- } | undefined;
128
- }) => Layer.Layer<DynamoClient>;
160
+ static readonly layer: {
161
+ (config: ClientConfig & {
162
+ readonly compressors: ReadonlyArray<Compressor>;
163
+ }): Layer.Layer<DynamoClient | Compression>;
164
+ (config: ClientConfig & {
165
+ readonly compressors?: undefined;
166
+ }): Layer.Layer<DynamoClient>;
167
+ (config: ClientConfig & {
168
+ readonly compressors?: ReadonlyArray<Compressor> | undefined;
169
+ }): Layer.Layer<DynamoClient>;
170
+ };
129
171
  /**
130
172
  * Create a live Layer that reads configuration from Effect Config providers
131
173
  * (e.g., environment variables, config files).
@@ -133,15 +175,21 @@ export declare class DynamoClient extends DynamoClient_base {
133
175
  * @param config.region - Config for AWS region
134
176
  * @param config.endpoint - Optional Config for endpoint override
135
177
  * @param config.credentials - Optional Config for static credentials
178
+ * @param config.compressors - Optional compressors for packed storage; when
179
+ * given, the layer also provides the `Compression` service (see {@link layer}
180
+ * for why a separate `Compression.layer([...])` is the recommended form).
136
181
  */
137
- static readonly layerConfig: (config: {
138
- readonly region: Config.Config<string>;
139
- readonly endpoint?: Config.Config<string> | undefined;
140
- readonly credentials?: Config.Config<{
141
- readonly accessKeyId: string;
142
- readonly secretAccessKey: string;
143
- }> | undefined;
144
- }) => Layer.Layer<DynamoClient, Config.ConfigError>;
182
+ static readonly layerConfig: {
183
+ (config: ClientConfigFromConfig & {
184
+ readonly compressors: ReadonlyArray<Compressor>;
185
+ }): Layer.Layer<DynamoClient | Compression, Config.ConfigError>;
186
+ (config: ClientConfigFromConfig & {
187
+ readonly compressors?: undefined;
188
+ }): Layer.Layer<DynamoClient, Config.ConfigError>;
189
+ (config: ClientConfigFromConfig & {
190
+ readonly compressors?: ReadonlyArray<Compressor> | undefined;
191
+ }): Layer.Layer<DynamoClient, Config.ConfigError>;
192
+ };
145
193
  /**
146
194
  * Create a typed client gateway from entities, aggregates, and (optionally) tables.
147
195
  *
@@ -172,6 +220,7 @@ export declare class DynamoClient extends DynamoClient_base {
172
220
  readonly tables: TTables;
173
221
  readonly crypto?: Crypto.Crypto;
174
222
  readonly embedder?: EmbedderService;
223
+ readonly compressors?: ReadonlyArray<Compressor>;
175
224
  }): Effect.Effect<TypedClient<TEntities, TAggregates, TTables>, never, DynamoClient | TableConfig>;
176
225
  <TEntities extends Record<string, {
177
226
  readonly _tag: "Entity";
@@ -180,6 +229,7 @@ export declare class DynamoClient extends DynamoClient_base {
180
229
  readonly aggregates: TAggregates;
181
230
  readonly crypto?: Crypto.Crypto;
182
231
  readonly embedder?: EmbedderService;
232
+ readonly compressors?: ReadonlyArray<Compressor>;
183
233
  }): Effect.Effect<TypedClient<TEntities, TAggregates, Record<string, TableLike>>, never, DynamoClient | TableConfig>;
184
234
  <TEntities extends Record<string, {
185
235
  readonly _tag: "Entity";
@@ -188,6 +238,7 @@ export declare class DynamoClient extends DynamoClient_base {
188
238
  readonly tables: TTables;
189
239
  readonly crypto?: Crypto.Crypto;
190
240
  readonly embedder?: EmbedderService;
241
+ readonly compressors?: ReadonlyArray<Compressor>;
191
242
  }): Effect.Effect<TypedClient<TEntities, Record<string, never>, TTables>, never, DynamoClient | TableConfig>;
192
243
  <TEntities extends Record<string, {
193
244
  readonly _tag: "Entity";
@@ -195,6 +246,7 @@ export declare class DynamoClient extends DynamoClient_base {
195
246
  readonly entities: TEntities;
196
247
  readonly crypto?: Crypto.Crypto;
197
248
  readonly embedder?: EmbedderService;
249
+ readonly compressors?: ReadonlyArray<Compressor>;
198
250
  }): Effect.Effect<TypedClient<TEntities, Record<string, never>, Record<string, TableLike>>, never, DynamoClient | TableConfig>;
199
251
  };
200
252
  }
@@ -229,16 +281,16 @@ export type CollectionSelected<TResult> = {
229
281
  */
230
282
  export interface CollectionQuery<TResult> {
231
283
  /** Execute and collect all pages into a grouped result. */
232
- readonly collect: () => Effect.Effect<TResult, DynamoClientError | import("@effect-dynamodb/schema/Errors.js").ValidationError, never>;
284
+ readonly collect: () => Effect.Effect<TResult, DynamoClientError | ValidationError, never>;
233
285
  /** Execute a single page, grouped like `collect()`. */
234
286
  readonly fetch: () => Effect.Effect<{
235
287
  items: TResult;
236
288
  cursor: string | null;
237
- }, DynamoClientError | import("@effect-dynamodb/schema/Errors.js").ValidationError, never>;
289
+ }, DynamoClientError | ValidationError, never>;
238
290
  /** Stream every item, page by page, each tagged with its member. */
239
- readonly paginate: () => Stream.Stream<CollectionStreamItem<TResult>, DynamoClientError | import("@effect-dynamodb/schema/Errors.js").ValidationError, never>;
291
+ readonly paginate: () => Stream.Stream<CollectionStreamItem<TResult>, DynamoClientError | ValidationError, never>;
240
292
  /** Count the members' items (every member's, together). */
241
- readonly count: () => Effect.Effect<number, DynamoClientError | import("@effect-dynamodb/schema/Errors.js").ValidationError, never>;
293
+ readonly count: () => Effect.Effect<number, DynamoClientError | ValidationError, never>;
242
294
  /**
243
295
  * Project attributes — by domain name, per member: each member's items come
244
296
  * back as partial records under its key.
@@ -293,13 +345,13 @@ export type TypedClient<TEntities extends Record<string, {
293
345
  * entities at bind time, so the type and runtime agree.
294
346
  */
295
347
  readonly entities: {
296
- readonly [K in keyof TEntities]: TEntities[K] extends EntityType<infer M, any, infer I, infer Ts, infer V, any, any, infer R, any, infer TS, infer GenId, infer VI> ? Resolve<BoundEntity<M, I, R, ResolveKey<M, I>, TS, Ts, V, GenId, VI> & {
348
+ readonly [K in keyof TEntities]: TEntities[K] extends EntityType<infer M, any, infer I, infer Ts, infer V, any, any, infer R, any, infer TS, infer GenId, infer VI, infer P> ? Resolve<BoundEntity<M, I, R, ResolveKey<M, I>, TS, Ts, V, GenId, VI, P> & {
297
349
  /** Scan this entity. Returns a BoundQuery for building scan queries. */
298
- readonly scan: () => import("./internal/BoundQuery.js").BoundQuery<Schema.Schema.Type<M>, never, Schema.Schema.Type<M>>;
299
- } & EntityIndexAccessors<M, I, R> & EntityVectorAccessors<M, VI>> : TEntities[K] extends EntityDefinition<infer M, any, infer I, infer Ts, infer V, any, any, infer R, any, infer TS, infer GenId, infer VI> ? Resolve<BoundEntity<M, I, R, ResolveKey<M, I>, TS, Ts, V, GenId, VI> & {
350
+ readonly scan: () => import("./internal/BoundQuery.js").BoundQuery<PathModel<Schema.Schema.Type<M>, P>, never, Schema.Schema.Type<M>>;
351
+ } & EntityIndexAccessors<M, I, R, P> & EntityVectorAccessors<M, VI>> : TEntities[K] extends EntityDefinition<infer M, any, infer I, infer Ts, infer V, any, any, infer R, any, infer TS, infer GenId, infer VI, infer P> ? Resolve<BoundEntity<M, I, R, ResolveKey<M, I>, TS, Ts, V, GenId, VI, P> & {
300
352
  /** Scan this entity. Returns a BoundQuery for building scan queries. */
301
- readonly scan: () => import("./internal/BoundQuery.js").BoundQuery<Schema.Schema.Type<M>, never, Schema.Schema.Type<M>>;
302
- } & EntityIndexAccessors<M, I, R> & EntityVectorAccessors<M, VI>> : never;
353
+ readonly scan: () => import("./internal/BoundQuery.js").BoundQuery<PathModel<Schema.Schema.Type<M>, P>, never, Schema.Schema.Type<M>>;
354
+ } & EntityIndexAccessors<M, I, R, P> & EntityVectorAccessors<M, VI>> : never;
303
355
  };
304
356
  /** Bound aggregates with CRUD + list operations (R = never). */
305
357
  readonly aggregates: {
@@ -357,8 +409,8 @@ type ResolveSkFields<M extends Schema.Top, I, K extends keyof I, Provided, R = u
357
409
  * Generic over provided input — `.where()` only exposes SK composites NOT already provided.
358
410
  * `R` (refs) lets ref-derived composite names (e.g. `playerId`) resolve to their
359
411
  * branded identifier types instead of being silently dropped. */
360
- type EntityIndexAccessors<M extends Schema.Top, I extends Record<string, IndexDefinition>, R = undefined> = {
361
- readonly [K in keyof I & string]: <Provided extends IndexPkInput<M, I, K, R>>(composites: Provided) => import("./internal/BoundQuery.js").BoundQuery<Schema.Schema.Type<M>, ResolveSkFields<M, I, K, Provided, R>, Schema.Schema.Type<M>>;
412
+ type EntityIndexAccessors<M extends Schema.Top, I extends Record<string, IndexDefinition>, R = undefined, P extends string = never> = {
413
+ readonly [K in keyof I & string]: <Provided extends IndexPkInput<M, I, K, R>>(composites: Provided) => import("./internal/BoundQuery.js").BoundQuery<PathModel<Schema.Schema.Type<M>, P>, ResolveSkFields<M, I, K, Provided, R>, Schema.Schema.Type<M>>;
362
414
  };
363
415
  /**
364
416
  * Partition composites a vector index accessor requires.
@@ -1 +1 @@
1
- {"version":3,"file":"DynamoClient.d.ts","sourceRoot":"","sources":["../src/DynamoClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DynamoClient.d.ts","sourceRoot":"","sources":["../src/DynamoClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EACzB,0BAA0B,EAC1B,2BAA2B,EAC3B,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACxB,yBAAyB,EACzB,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,wBAAwB,EACxB,qCAAqC,EACrC,sCAAsC,EACtC,0BAA0B,EAC1B,2BAA2B,EAC3B,yBAAyB,EACzB,0BAA0B,EAC1B,8BAA8B,EAC9B,+BAA+B,EAC/B,oCAAoC,EACpC,qCAAqC,EACrC,mBAAmB,EACnB,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,8BAA8B,EAC9B,+BAA+B,EAC/B,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,kCAAkC,EAClC,mCAAmC,EACnC,qCAAqC,EACrC,sCAAsC,EACtC,gBAAgB,EAChB,iBAAiB,EACjB,yBAAyB,EACzB,0BAA0B,EAC1B,uBAAuB,EACvB,wBAAwB,EACxB,4BAA4B,EAC5B,6BAA6B,EAC7B,8BAA8B,EAC9B,+BAA+B,EAC/B,yBAAyB,EACzB,0BAA0B,EAC1B,mCAAmC,EACnC,oCAAoC,EACpC,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,wBAAwB,EACxB,4BAA4B,EAC5B,6BAA6B,EAC9B,MAAM,0BAA0B,CAAA;AAkCjC,OAAO,EACL,WAAW,EACX,KAAK,UAAU,EAEhB,MAAM,wCAAwC,CAAA;AAE/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AAE1E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AACzE,OAAO,EACL,WAAW,EACX,qBAAqB,EACrB,mBAAmB,EAKnB,qBAAqB,EACrB,eAAe,EACf,eAAe,EAChB,MAAM,mCAAmC,CAAA;AAO1C,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EACZ,aAAa,EACd,MAAM,iDAAiD,CAAA;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAA;AAE7E,OAAO,KAAK,EACV,iBAAiB,EAElB,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EACL,MAAM,EACN,OAAO,EACP,MAAM,EACN,QAAQ,EACR,MAAM,EACN,KAAK,EAEL,KAAK,MAAM,EACX,KAAK,MAAM,EACZ,MAAM,QAAQ,CAAA;AACf,OAAO,KAAK,EAAE,SAAS,IAAI,aAAa,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEhF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,aAAa,CAAA;AASpE,OAAO,EACL,KAAK,gBAAgB,EAGtB,MAAM,gCAAgC,CAAA;AASvC,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAQ7E,OAAO,KAAK,EAAE,kBAAkB,EAAS,WAAW,EAAE,MAAM,YAAY,CAAA;AAyExE,+CAA+C;AAC/C,MAAM,MAAM,iBAAiB,GACzB,WAAW,GACX,eAAe,GACf,qBAAqB,GACrB,mBAAmB,GACnB,qBAAqB,CAAA;AAEzB;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,+BAA+B;IAC/B,QAAQ,CAAC,WAAW,EAAE,CACpB,KAAK,EAAE,uBAAuB,KAC3B,MAAM,CAAC,MAAM,CAAC,wBAAwB,EAAE,iBAAiB,CAAC,CAAA;IAE/D,+BAA+B;IAC/B,QAAQ,CAAC,WAAW,EAAE,CACpB,KAAK,EAAE,uBAAuB,KAC3B,MAAM,CAAC,MAAM,CAAC,wBAAwB,EAAE,iBAAiB,CAAC,CAAA;IAE/D,sEAAsE;IACtE,QAAQ,CAAC,aAAa,EAAE,CACtB,KAAK,EAAE,yBAAyB,KAC7B,MAAM,CAAC,MAAM,CAAC,0BAA0B,EAAE,iBAAiB,CAAC,CAAA;IAEjE,yBAAyB;IACzB,QAAQ,CAAC,OAAO,EAAE,CAChB,KAAK,EAAE,mBAAmB,KACvB,MAAM,CAAC,MAAM,CAAC,oBAAoB,EAAE,iBAAiB,CAAC,CAAA;IAE3D,gCAAgC;IAChC,QAAQ,CAAC,OAAO,EAAE,CAChB,KAAK,EAAE,mBAAmB,KACvB,MAAM,CAAC,MAAM,CAAC,oBAAoB,EAAE,iBAAiB,CAAC,CAAA;IAE3D,mCAAmC;IACnC,QAAQ,CAAC,UAAU,EAAE,CACnB,KAAK,EAAE,sBAAsB,KAC1B,MAAM,CAAC,MAAM,CAAC,uBAAuB,EAAE,iBAAiB,CAAC,CAAA;IAE9D,sDAAsD;IACtD,QAAQ,CAAC,UAAU,EAAE,CACnB,KAAK,EAAE,sBAAsB,KAC1B,MAAM,CAAC,MAAM,CAAC,uBAAuB,EAAE,iBAAiB,CAAC,CAAA;IAE9D,gDAAgD;IAChD,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,CAAA;IAElG,+CAA+C;IAC/C,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAA;IAE/F;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,aAAa,EAAE,CACtB,KAAK,EAAE,yBAAyB,KAC7B,MAAM,CAAC,MAAM,CAAC,0BAA0B,EAAE,iBAAiB,CAAC,CAAA;IAEjE,qDAAqD;IACrD,QAAQ,CAAC,YAAY,EAAE,CACrB,KAAK,EAAE,wBAAwB,KAC5B,MAAM,CAAC,MAAM,CAAC,yBAAyB,EAAE,iBAAiB,CAAC,CAAA;IAEhE,yEAAyE;IACzE,QAAQ,CAAC,cAAc,EAAE,CACvB,KAAK,EAAE,0BAA0B,KAC9B,MAAM,CAAC,MAAM,CAAC,2BAA2B,EAAE,iBAAiB,CAAC,CAAA;IAElE,oDAAoD;IACpD,QAAQ,CAAC,gBAAgB,EAAE,CACzB,KAAK,EAAE,4BAA4B,KAChC,MAAM,CAAC,MAAM,CAAC,6BAA6B,EAAE,iBAAiB,CAAC,CAAA;IAEpE,oEAAoE;IACpE,QAAQ,CAAC,kBAAkB,EAAE,CAC3B,KAAK,EAAE,8BAA8B,KAClC,MAAM,CAAC,MAAM,CAAC,+BAA+B,EAAE,iBAAiB,CAAC,CAAA;IAItE,kEAAkE;IAClE,QAAQ,CAAC,WAAW,EAAE,CACpB,KAAK,EAAE,uBAAuB,KAC3B,MAAM,CAAC,MAAM,CAAC,wBAAwB,EAAE,iBAAiB,CAAC,CAAA;IAE/D,uBAAuB;IACvB,QAAQ,CAAC,UAAU,EAAE,CACnB,KAAK,EAAE,sBAAsB,KAC1B,MAAM,CAAC,MAAM,CAAC,uBAAuB,EAAE,iBAAiB,CAAC,CAAA;IAI9D,kCAAkC;IAClC,QAAQ,CAAC,YAAY,EAAE,CACrB,KAAK,EAAE,wBAAwB,KAC5B,MAAM,CAAC,MAAM,CAAC,yBAAyB,EAAE,iBAAiB,CAAC,CAAA;IAEhE,uBAAuB;IACvB,QAAQ,CAAC,YAAY,EAAE,CACrB,KAAK,EAAE,wBAAwB,KAC5B,MAAM,CAAC,MAAM,CAAC,yBAAyB,EAAE,iBAAiB,CAAC,CAAA;IAEhE,oBAAoB;IACpB,QAAQ,CAAC,WAAW,EAAE,CACpB,KAAK,EAAE,uBAAuB,KAC3B,MAAM,CAAC,MAAM,CAAC,wBAAwB,EAAE,iBAAiB,CAAC,CAAA;IAE/D,qCAAqC;IACrC,QAAQ,CAAC,sBAAsB,EAAE,CAC/B,KAAK,EAAE,kCAAkC,KACtC,MAAM,CAAC,MAAM,CAAC,mCAAmC,EAAE,iBAAiB,CAAC,CAAA;IAI1E,mDAAmD;IACnD,QAAQ,CAAC,yBAAyB,EAAE,CAClC,KAAK,EAAE,qCAAqC,KACzC,MAAM,CAAC,MAAM,CAAC,sCAAsC,EAAE,iBAAiB,CAAC,CAAA;IAE7E,8BAA8B;IAC9B,QAAQ,CAAC,uBAAuB,EAAE,CAChC,KAAK,EAAE,mCAAmC,KACvC,MAAM,CAAC,MAAM,CAAC,oCAAoC,EAAE,iBAAiB,CAAC,CAAA;IAE3E,0CAA0C;IAC1C,QAAQ,CAAC,yBAAyB,EAAE,CAClC,KAAK,EAAE,qCAAqC,KACzC,MAAM,CAAC,MAAM,CAAC,sCAAsC,EAAE,iBAAiB,CAAC,CAAA;IAI7E,mDAAmD;IACnD,QAAQ,CAAC,wBAAwB,EAAE,CACjC,KAAK,EAAE,oCAAoC,KACxC,MAAM,CAAC,MAAM,CAAC,qCAAqC,EAAE,iBAAiB,CAAC,CAAA;IAE5E,0BAA0B;IAC1B,QAAQ,CAAC,cAAc,EAAE,CACvB,KAAK,EAAE,0BAA0B,KAC9B,MAAM,CAAC,MAAM,CAAC,2BAA2B,EAAE,iBAAiB,CAAC,CAAA;IAIlE,uCAAuC;IACvC,QAAQ,CAAC,gBAAgB,EAAE,CACzB,KAAK,EAAE,4BAA4B,KAChC,MAAM,CAAC,MAAM,CAAC,6BAA6B,EAAE,iBAAiB,CAAC,CAAA;IAEpE,yCAAyC;IACzC,QAAQ,CAAC,kBAAkB,EAAE,CAC3B,KAAK,EAAE,8BAA8B,KAClC,MAAM,CAAC,MAAM,CAAC,+BAA+B,EAAE,iBAAiB,CAAC,CAAA;IAItE,+BAA+B;IAC/B,QAAQ,CAAC,WAAW,EAAE,CACpB,KAAK,EAAE,uBAAuB,KAC3B,MAAM,CAAC,MAAM,CAAC,wBAAwB,EAAE,iBAAiB,CAAC,CAAA;IAE/D,4CAA4C;IAC5C,QAAQ,CAAC,aAAa,EAAE,CACtB,KAAK,EAAE,yBAAyB,KAC7B,MAAM,CAAC,MAAM,CAAC,0BAA0B,EAAE,iBAAiB,CAAC,CAAA;IAEjE,wCAAwC;IACxC,QAAQ,CAAC,kBAAkB,EAAE,CAC3B,KAAK,EAAE,8BAA8B,KAClC,MAAM,CAAC,MAAM,CAAC,+BAA+B,EAAE,iBAAiB,CAAC,CAAA;CACvE;AAED,0EAA0E;AAC1E,KAAK,YAAY,GAAG;IAClB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACtC,QAAQ,CAAC,WAAW,CAAC,EACjB;QAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;KAAE,GAClE,SAAS,CAAA;CACd,CAAA;AAED,yFAAyF;AACzF,KAAK,sBAAsB,GAAG;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IACrD,QAAQ,CAAC,WAAW,CAAC,EACjB,MAAM,CAAC,MAAM,CAAC;QAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;KAAE,CAAC,GACjF,SAAS,CAAA;CACd,CAAA;;AAcD;;;;;;;;;;;GAWG;AACH,qBAAa,YAAa,SAAQ,iBAEjC;IACC;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE;QACrB,CACE,MAAM,EAAE,YAAY,GAAG;YAAE,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,UAAU,CAAC,CAAA;SAAE,GACzE,KAAK,CAAC,KAAK,CAAC,YAAY,GAAG,WAAW,CAAC,CAAA;QAC1C,CAAC,MAAM,EAAE,YAAY,GAAG;YAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,CAAA;SAAE,GAAG,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;QACxF,CACE,MAAM,EAAE,YAAY,GAAG;YAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,GAAG,SAAS,CAAA;SAAE,GACtF,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;KAC7B,CAIW;IAEZ;;;;;;;;;;OAUG;IACH,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE;QAC3B,CACE,MAAM,EAAE,sBAAsB,GAAG;YAAE,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,UAAU,CAAC,CAAA;SAAE,GACnF,KAAK,CAAC,KAAK,CAAC,YAAY,GAAG,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,CAAA;QAC9D,CACE,MAAM,EAAE,sBAAsB,GAAG;YAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,CAAA;SAAE,GACpE,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,WAAW,CAAC,CAAA;QAChD,CACE,MAAM,EAAE,sBAAsB,GAAG;YAC/B,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,GAAG,SAAS,CAAA;SAC7D,GACA,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,WAAW,CAAC,CAAA;KACjD,CAsBW;IAEZ;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE;QACpB,CACE,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;SAAE,CAAC,EAC7D,WAAW,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EAChE,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EACzC,MAAM,EAAE;YACR,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;YAC5B,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAA;YAChC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;YACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAA;YAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAA;YACnC,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,CAAA;SACjD,GAAG,MAAM,CAAC,MAAM,CACf,WAAW,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,EAC5C,KAAK,EACL,YAAY,GAAG,WAAW,CAC3B,CAAA;QAED,CACE,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;SAAE,CAAC,EAC7D,WAAW,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EAChE,MAAM,EAAE;YACR,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;YAC5B,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAA;YAChC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAA;YAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAA;YACnC,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,CAAA;SACjD,GAAG,MAAM,CAAC,MAAM,CACf,WAAW,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,EAC9D,KAAK,EACL,YAAY,GAAG,WAAW,CAC3B,CAAA;QAED,CACE,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;SAAE,CAAC,EAC7D,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EACzC,MAAM,EAAE;YACR,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;YAC5B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;YACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAA;YAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAA;YACnC,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,CAAA;SACjD,GAAG,MAAM,CAAC,MAAM,CACf,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,EACtD,KAAK,EACL,YAAY,GAAG,WAAW,CAC3B,CAAA;QAED,CAAC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;SAAE,CAAC,EAAE,MAAM,EAAE;YACtE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;YAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAA;YAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAA;YACnC,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,CAAA;SACjD,GAAG,MAAM,CAAC,MAAM,CACf,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,EACxE,KAAK,EACL,YAAY,GAAG,WAAW,CAC3B,CAAA;KACF,CAA+C;CACjD;AAMD,6EAA6E;AAC7E,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,OAAO,yCAAyC,EAAE,YAAY,CAAA;IAC/E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;KAAE,CAAC,CAAA;IAC9D,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5C,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;CACxD;AAED;;;GAGG;AACH,MAAM,MAAM,oBAAoB,CAAC,OAAO,IAAI;IAC1C,QAAQ,EAAE,CAAC,IAAI,MAAM,OAAO,GAAG;QAC7B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;QAClB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAA;KACvE;CACF,CAAC,MAAM,OAAO,CAAC,CAAA;AAEhB,gFAAgF;AAChF,MAAM,MAAM,kBAAkB,CAAC,OAAO,IAAI;IACxC,QAAQ,EAAE,CAAC,IAAI,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC9D,CAAA;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe,CAAC,OAAO;IACtC,2DAA2D;IAC3D,QAAQ,CAAC,OAAO,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,eAAe,EAAE,KAAK,CAAC,CAAA;IAC1F,uDAAuD;IACvD,QAAQ,CAAC,KAAK,EAAE,MAAM,MAAM,CAAC,MAAM,CACjC;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,EACzC,iBAAiB,GAAG,eAAe,EACnC,KAAK,CACN,CAAA;IACD,oEAAoE;IACpE,QAAQ,CAAC,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,CACpC,oBAAoB,CAAC,OAAO,CAAC,EAC7B,iBAAiB,GAAG,eAAe,EACnC,KAAK,CACN,CAAA;IACD,2DAA2D;IAC3D,QAAQ,CAAC,KAAK,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,GAAG,eAAe,EAAE,KAAK,CAAC,CAAA;IACvF;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,CACf,UAAU,EACN,aAAa,CAAC,MAAM,CAAC,GACrB,CAAC,CACC,CAAC,EAAE,OAAO,2BAA2B,EAAE,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,KACxE,aAAa,CAAC,OAAO,2BAA2B,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,KACjF,eAAe,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAA;IACjD,2CAA2C;IAC3C,QAAQ,CAAC,MAAM,EAAE;QACf,CACE,EAAE,EAAE,CACF,CAAC,EAAE,OAAO,2BAA2B,EAAE,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,EAC3E,GAAG,EAAE,OAAO,oBAAoB,EAAE,YAAY,CAAC,OAAO,CAAC,KACpD,OAAO,oBAAoB,EAAE,IAAI,GACrC,eAAe,CAAC,OAAO,CAAC,CAAA;QAC3B,CAAC,SAAS,EAAE,OAAO,oBAAoB,EAAE,kBAAkB,GAAG,eAAe,CAAC,OAAO,CAAC,CAAA;KACvF,CAAA;IACD,4EAA4E;IAC5E,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,eAAe,CAAC,OAAO,CAAC,CAAA;IACvD,8DAA8D;IAC9D,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,eAAe,CAAC,OAAO,CAAC,CAAA;IAC1D,0BAA0B;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,eAAe,CAAC,OAAO,CAAC,CAAA;IAChD,0BAA0B;IAC1B,QAAQ,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,eAAe,CAAC,OAAO,CAAC,CAAA;IAChE,wCAAwC;IACxC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,eAAe,CAAC,OAAO,CAAC,CAAA;IAC1D;;;;OAIG;IACH,QAAQ,CAAC,cAAc,EAAE,MAAM,eAAe,CAAC,OAAO,CAAC,CAAA;IACvD;;;OAGG;IACH,QAAQ,CAAC,eAAe,EAAE,MAAM,eAAe,CAAC,OAAO,CAAC,CAAA;CACzD;AAED;;;;GAIG;AACH,MAAM,MAAM,WAAW,CACrB,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC,EAC7D,WAAW,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACxF,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IACnE;IACF;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,QAAQ,EAAE;QACjB,QAAQ,EAAE,CAAC,IAAI,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,UAAU,CAC9D,MAAM,CAAC,EACP,GAAG,EACH,MAAM,CAAC,EACP,MAAM,EAAE,EACR,MAAM,CAAC,EACP,GAAG,EACH,GAAG,EACH,MAAM,CAAC,EACP,GAAG,EACH,MAAM,EAAE,EACR,MAAM,KAAK,EACX,MAAM,EAAE,EACR,MAAM,CAAC,CACR,GACG,OAAO,CACL,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG;YAChE,wEAAwE;YACxE,QAAQ,CAAC,IAAI,EAAE,MAAM,OAAO,0BAA0B,EAAE,UAAU,CAChE,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EACnC,KAAK,EACL,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CACtB,CAAA;SACF,GAAG,oBAAoB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAClC,qBAAqB,CAAC,CAAC,EAAE,EAAE,CAAC,CAC/B,GACD,SAAS,CAAC,CAAC,CAAC,SAAS,gBAAgB,CACjC,MAAM,CAAC,EACP,GAAG,EACH,MAAM,CAAC,EACP,MAAM,EAAE,EACR,MAAM,CAAC,EACP,GAAG,EACH,GAAG,EACH,MAAM,CAAC,EACP,GAAG,EACH,MAAM,EAAE,EACR,MAAM,KAAK,EACX,MAAM,EAAE,EACR,MAAM,CAAC,CACR,GACD,OAAO,CACL,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG;YAChE,wEAAwE;YACxE,QAAQ,CAAC,IAAI,EAAE,MAAM,OAAO,0BAA0B,EAAE,UAAU,CAChE,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EACnC,KAAK,EACL,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CACtB,CAAA;SACF,GAAG,oBAAoB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAClC,qBAAqB,CAAC,CAAC,EAAE,EAAE,CAAC,CAC/B,GACD,KAAK;KACZ,CAAA;IAED,gEAAgE;IAChE,QAAQ,CAAC,UAAU,EAAE;QACnB,QAAQ,EAAE,CAAC,IAAI,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,SAAS,aAAa,CACrE,MAAM,CAAC,EACP,MAAM,IAAI,EACV,MAAM,MAAM,CACb,GACG,cAAc,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,GAC/B,KAAK;KACV,CAAA;IAED;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,EAAE;QACpB,QAAQ,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,eAAe,CAAC,GAAG,CAAC,CAAA;KACpF,CAAA;IAED,mDAAmD;IACnD,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,EAAE,CAAC,IAAI,MAAM,OAAO,GAAG,eAAe;KAC/C,CAAA;CACF,CAAA;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,CAAC,cAAc,EAAE,MAAM,GAAG,CACxB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAChC,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;CAChD;AAED,wGAAwG;AACxG,KAAK,OAAO,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,CAAA;AAE1C;oEACoE;AACpE,KAAK,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,EAAE,CAAC,IACrC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,GAAG,KAAK,CAAA;AAExE;;;;;;;;;;;GAWG;AACH,KAAK,eAAe,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,SAAS,IACtF,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,QAAQ,CAAC,SAAS,MAAM,EAAE,GAC5D,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,GACxB,KAAK,GACL;IAAE,QAAQ,EAAE,CAAC,IAAI,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;CAAE,GACrC,KAAK,CAAA;AAEX;;;iEAGiE;AACjE,KAAK,oBAAoB,CACvB,CAAC,SAAS,MAAM,CAAC,GAAG,EACpB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EACzC,CAAC,GAAG,SAAS,EACb,CAAC,SAAS,MAAM,GAAG,KAAK,IACtB;IACF,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,QAAQ,SAAS,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC1E,UAAU,EAAE,QAAQ,KACjB,OAAO,0BAA0B,EAAE,UAAU,CAChD,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EACnC,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,EACrC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CACtB;CACF,CAAA;AAED;;;;;;;GAOG;AACH,KAAK,oBAAoB,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS;IAC7D,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAA;CAC3C,GACG,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GACjB,KAAK,GACL;IAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GAC/E,KAAK,CAAA;AAET;;;;;;GAMG;AACH,KAAK,iBAAiB,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,SAAS,MAAM,CAAC,CAAA;CAAE,GAC7F,CAAC,GACD,KAAK,CAAA;AAET;;;;GAIG;AACH,KAAK,qBAAqB,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,EAAE,EAAE,IACjD,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,GACxC;IACE,QAAQ,EAAE,CAAC,IAAI,MAAM,EAAE,GAAG,MAAM,GAAG,CACjC,KAAK,EAAE,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,KAClC,gBAAgB,CACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EACrB,oBAAoB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAC9B,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EACxB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CACtB;CACF,GAAG;IACF;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE;QAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAC1C,KAAK,MAAM,CAAC,MAAM,CACjB,MAAM,EACJ,iBAAiB,GACjB,OAAO,mCAAmC,EAAE,eAAe,GAC3D,OAAO,mCAAmC,EAAE,cAAc,EAC5D,KAAK,CACN,CAAA;CACF,GACD,EAAE,CAAA;AAER;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,0CAA0C;IAC1C,QAAQ,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,kBAAkB,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;IACzF,0CAA0C;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;IAC7D,0BAA0B;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,0BAA0B,EAAE,iBAAiB,CAAC,CAAA;IACrF,6BAA6B;IAC7B,QAAQ,CAAC,MAAM,EAAE,CACf,KAAK,EAAE,IAAI,CAAC,uBAAuB,EAAE,WAAW,CAAC,KAC9C,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;IAC3C,kCAAkC;IAClC,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,yBAAyB,EAAE,iBAAiB,CAAC,CAAA;IAC9F,mCAAmC;IACnC,QAAQ,CAAC,WAAW,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,wBAAwB,EAAE,iBAAiB,CAAC,CAAA;IACtF,6BAA6B;IAC7B,QAAQ,CAAC,iBAAiB,EAAE,CAC1B,SAAS,EAAE,MAAM,KACd,MAAM,CAAC,MAAM,CAAC,mCAAmC,EAAE,iBAAiB,CAAC,CAAA;IAC1E,qCAAqC;IACrC,QAAQ,CAAC,yBAAyB,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;IAChF,sCAAsC;IACtC,QAAQ,CAAC,0BAA0B,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;IACjF,kCAAkC;IAClC,QAAQ,CAAC,oBAAoB,EAAE,CAC7B,SAAS,EAAE,IAAI,KACZ,MAAM,CAAC,MAAM,CAAC,sCAAsC,EAAE,iBAAiB,CAAC,CAAA;IAC7E,0BAA0B;IAC1B,QAAQ,CAAC,UAAU,EAAE,CACnB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,eAAe,GAAG,KAAK,CAAA;KAAE,KACtF,MAAM,CAAC,MAAM,CAAC,qCAAqC,EAAE,iBAAiB,CAAC,CAAA;IAC5E,kCAAkC;IAClC,QAAQ,CAAC,SAAS,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;IACrF,mCAAmC;IACnC,QAAQ,CAAC,UAAU,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;IACtF,6BAA6B;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,+BAA+B,EAAE,iBAAiB,CAAC,CAAA;IAC7F,sBAAsB;IACtB,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;IACtF,mCAAmC;IACnC,QAAQ,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;IAC1F,+BAA+B;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,+BAA+B,EAAE,iBAAiB,CAAC,CAAA;IAItF;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;IAEtF,8DAA8D;IAC9D,QAAQ,CAAC,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;IAEzF;;;;;;;OAOG;IACH,QAAQ,CAAC,kBAAkB,EAAE,CAC3B,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAA;QAClD,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAA;KAC9C,KACE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;CAC5C"}
@@ -8,6 +8,7 @@
8
8
  * @module
9
9
  */
10
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
+ import { Compression, make as makeCompressionRegistry, } from "@effect-dynamodb/schema/Compression.js";
11
12
  import * as DynamoSchema from "@effect-dynamodb/schema/DynamoSchema.js";
12
13
  import { Embedder } from "@effect-dynamodb/schema/Embedder.js";
13
14
  import { DynamoError, DynamoValidationError, InternalServerError, isAwsInternalServerError, isAwsResourceNotFound, isAwsThrottling, isAwsValidationError, ResourceNotFoundError, ThrottlingError, ValidationError, } from "@effect-dynamodb/schema/Errors.js";
@@ -20,6 +21,7 @@ import { bind as entityBind, fromDefinition as entityFromDefinition } from "./En
20
21
  import { BoundQueryImpl, collectionNaming, entityNaming, } from "./internal/BoundQuery.js";
21
22
  import { makeBoundVectorQuery, } from "./internal/BoundVectorQuery.js";
22
23
  import { createConditionOps } from "./internal/Expr.js";
24
+ import { codecRequirements, collectionPackedQueryOptions, entityPackedQueryOptions, unregisteredCodecError, } from "./internal/Packed.js";
23
25
  import { createPathBuilder } from "./internal/PathBuilder.js";
24
26
  import { diagnoseFailure, explainDiagnosis, withCause, } from "./internal/WriteDiagnosis.js";
25
27
  import * as Query from "./Query.js";
@@ -82,6 +84,13 @@ const assertCollectionKeyFormAgreement = (collName, members) => {
82
84
  }
83
85
  }
84
86
  };
87
+ /**
88
+ * Add the `Compression` service built from `compressors` beside a client
89
+ * layer. The registry is validated (EDD-9078) when the layer is constructed.
90
+ */
91
+ const withCompressors = (client, compressors) => compressors === undefined
92
+ ? client
93
+ : Layer.merge(client, Layer.succeed(Compression, makeCompressionRegistry(compressors)));
85
94
  /**
86
95
  * Effect Context.Service for the DynamoDB client service.
87
96
  *
@@ -101,8 +110,27 @@ export class DynamoClient extends Context.Service()("@effect-dynamodb/DynamoClie
101
110
  * @param config.region - AWS region
102
111
  * @param config.endpoint - Optional endpoint override (e.g., for DynamoDB Local)
103
112
  * @param config.credentials - Optional static credentials
113
+ * @param config.compressors - Optional compressors for packed storage
114
+ * (`DynamoModel.Packed` with `compression`). When given, the layer also
115
+ * provides the `Compression` service built from them. That reaches whatever
116
+ * this layer is merged with — but not past a wrapper that consumes it
117
+ * through `Layer.provide` (a decorated client, say), whose output is only
118
+ * `DynamoClient`. Prefer a separate `Compression.layer([...])` merged into
119
+ * the application layer, which works however the client is composed.
120
+ *
121
+ * @example
122
+ * ```typescript
123
+ * import * as ZlibCompression from "effect-dynamodb/compression/zlib"
124
+ * // Recommended: the compressors as their own layer, beside the client
125
+ * const AppLayer = Layer.mergeAll(
126
+ * DynamoClient.layer({ region: "us-east-1" }),
127
+ * Compression.layer([ZlibCompression.zstd()]),
128
+ * )
129
+ * // Also works, when this layer is used directly:
130
+ * const live = DynamoClient.layer({ region: "us-east-1", compressors: [ZlibCompression.zstd()] })
131
+ * ```
104
132
  */
105
- static layer = (config) => Layer.effect(DynamoClient, buildService(config.region, config.endpoint, config.credentials));
133
+ static layer = (config) => withCompressors(Layer.effect(DynamoClient, buildService(config.region, config.endpoint, config.credentials)), config.compressors);
106
134
  /**
107
135
  * Create a live Layer that reads configuration from Effect Config providers
108
136
  * (e.g., environment variables, config files).
@@ -110,15 +138,18 @@ export class DynamoClient extends Context.Service()("@effect-dynamodb/DynamoClie
110
138
  * @param config.region - Config for AWS region
111
139
  * @param config.endpoint - Optional Config for endpoint override
112
140
  * @param config.credentials - Optional Config for static credentials
141
+ * @param config.compressors - Optional compressors for packed storage; when
142
+ * given, the layer also provides the `Compression` service (see {@link layer}
143
+ * for why a separate `Compression.layer([...])` is the recommended form).
113
144
  */
114
- static layerConfig = (config) => Layer.effect(DynamoClient, Effect.gen(function* () {
145
+ static layerConfig = (config) => withCompressors(Layer.effect(DynamoClient, Effect.gen(function* () {
115
146
  const region = yield* config.region;
116
147
  const endpoint = config.endpoint ? yield* Config.option(config.endpoint) : undefined;
117
148
  const credentials = config.credentials
118
149
  ? yield* Config.option(config.credentials)
119
150
  : undefined;
120
151
  return yield* buildService(region, endpoint && endpoint._tag === "Some" ? endpoint.value : undefined, credentials && credentials._tag === "Some" ? credentials.value : undefined);
121
- }));
152
+ })), config.compressors);
122
153
  /**
123
154
  * Create a typed client gateway from entities, aggregates, and (optionally) tables.
124
155
  *
@@ -174,6 +205,14 @@ const collectionLiveRows = (members) => {
174
205
  reads: [...new Set(["__edd_e__", ...[...byType.values()].flatMap((live) => live.reads)])],
175
206
  };
176
207
  };
208
+ /**
209
+ * Each packed field of an entity once, by its domain name, with its config: a
210
+ * renamed field has a guard per name (domain and stored), both carrying it.
211
+ */
212
+ const packedFieldConfigs = (entity) => (entity._packedFields ?? []).map((field) => [
213
+ field,
214
+ entity._packedGuards?.find((guard) => guard.attribute === field)?.storedAs,
215
+ ]);
177
216
  const makeFromConfig = (config) => Effect.gen(function* () {
178
217
  // 1. Resolve the provide function from context.
179
218
  //
@@ -194,9 +233,34 @@ const makeFromConfig = (config) => Effect.gen(function* () {
194
233
  // (rather than forcing the service on every consumer's type).
195
234
  const ambientEmbedder = Context.getOption(baseCtx, Embedder);
196
235
  const embedderService = config.embedder ?? (Option.isSome(ambientEmbedder) ? ambientEmbedder.value : undefined);
197
- const ctx = embedderService !== undefined
236
+ const withEmbedder = embedderService !== undefined
198
237
  ? Context.add(withCrypto, Embedder, embedderService)
199
238
  : withCrypto;
239
+ // Bundle the compressor registry for packed storage the same way: explicit
240
+ // `compressors` win, then an ambient `Compression` at bind time. Without
241
+ // either nothing is added. A `Compression` provided only at run time then
242
+ // reaches bound operations (they read it with `Effect.serviceOption`), but
243
+ // only when no bound member's `Packed` config names a codec: such a member
244
+ // fails the bind-time [EDD-9078] check below before any operation runs.
245
+ const ambientCompression = Context.getOption(baseCtx, Compression);
246
+ const compressionRegistry = config.compressors !== undefined
247
+ ? makeCompressionRegistry(config.compressors)
248
+ : Option.isSome(ambientCompression)
249
+ ? ambientCompression.value
250
+ : undefined;
251
+ // A bound member whose packed config names a codec meets values
252
+ // compressed with it on every read and write, so the codec must be
253
+ // registered here — a configuration defect (`[EDD-9078]`) at bind, not a
254
+ // ValidationError on the first compressed value (#147).
255
+ const codecError = unregisteredCodecError("DynamoClient.make", [
256
+ ...Object.entries(config.entities).flatMap(([key, entity]) => codecRequirements(`entity "${key}"`, packedFieldConfigs(entity))),
257
+ ...Object.entries(config.aggregates ?? {}).flatMap(([key, aggregate]) => [...(aggregate._packedByType ?? new Map())].flatMap(([edgeType, packed]) => codecRequirements(`aggregate "${key}" (edge "${edgeType}")`, Object.entries(packed)))),
258
+ ], compressionRegistry);
259
+ if (codecError !== undefined)
260
+ throw codecError;
261
+ const ctx = compressionRegistry !== undefined
262
+ ? Context.add(withEmbedder, Compression, compressionRegistry)
263
+ : withEmbedder;
200
264
  const provide = (effect) => Effect.provide(effect, ctx);
201
265
  // Dimension agreement between the Embedder and every bound vector index is
202
266
  // a construction-time invariant — a mismatch would otherwise surface as a
@@ -276,6 +340,7 @@ const makeFromConfig = (config) => Effect.gen(function* () {
276
340
  skField: indexDef.sk.field,
277
341
  entityTypes: [entityLike.entityType],
278
342
  decoder: (raw) => entityLike._decodeRecord(raw),
343
+ ...entityPackedQueryOptions(entityLike),
279
344
  resolveTableName: entityLike._tableTag.useSync((tc) => tc.name),
280
345
  keyFields: [
281
346
  indexDef.pk.field,
@@ -518,12 +583,13 @@ const makeFromConfig = (config) => Effect.gen(function* () {
518
583
  const entity = typeof rawEntity.get === "function"
519
584
  ? rawEntity
520
585
  : entityFromDefinition(rawEntity);
521
- // Provide the resolved Crypto service into the bind so the bound `put`
522
- // (which yields `Crypto.Crypto` when `generatedId` is configured) resolves
523
- // it from context — keeping the bound method at `R = never`. `bind`
524
- // respects an already-present Crypto and only fills its own default when
525
- // absent, so this override is honored.
526
- const bound = yield* Effect.provideService(entityBind(entity), Crypto.Crypto, cryptoService);
586
+ // Provide the resolved services (Crypto, Embedder, Compression) into the
587
+ // bind: `bind` captures its context at bind time, so the bound CRUD
588
+ // methods resolve the explicit `crypto`, `embedder` and `compressors`
589
+ // given here — keeping them at `R = never`. `bind` respects an
590
+ // already-present Crypto and only fills its own default when absent, so
591
+ // the override is honored.
592
+ const bound = yield* provide(entityBind(entity));
527
593
  const entityLike = entity;
528
594
  const accessors = {};
529
595
  // Add query accessor for each index — including `primary`.
@@ -563,6 +629,8 @@ const makeFromConfig = (config) => Effect.gen(function* () {
563
629
  schema: entityLike._schema,
564
630
  tableTag: entityLike._tableTag,
565
631
  decode: (raw) => entityLike._decodeRecord(raw),
632
+ unpackRaw: entityLike._unpackFields,
633
+ unpackAttributes: entityLike._dispatchAttributes,
566
634
  provide,
567
635
  resolveDbName: entityLike._resolveDbName ?? ((domainName) => domainName),
568
636
  };
@@ -575,6 +643,7 @@ const makeFromConfig = (config) => Effect.gen(function* () {
575
643
  indexName: undefined,
576
644
  entityTypes: [entityLike.entityType],
577
645
  decoder: (raw) => entityLike._decodeRecord(raw),
646
+ ...entityPackedQueryOptions(entityLike),
578
647
  resolveTableName: entityLike._tableTag.useSync((tc) => tc.name),
579
648
  keyFields: [entityLike.indexes.primary?.pk.field, entityLike.indexes.primary?.sk.field],
580
649
  liveRows: entityLike._liveRows?.(),
@@ -650,6 +719,7 @@ const makeFromConfig = (config) => Effect.gen(function* () {
650
719
  skField: indexDef.sk.field,
651
720
  entityTypes,
652
721
  decoder: collDecoder,
722
+ ...collectionPackedQueryOptions(members.map((m) => m.entityLike)),
653
723
  resolveTableName: firstMember.entityLike._tableTag.useSync((tc) => tc.name),
654
724
  keyFields: [
655
725
  indexDef.pk.field,
@@ -722,7 +792,9 @@ const makeFromConfig = (config) => Effect.gen(function* () {
722
792
  const boundAggregates = {};
723
793
  if (config.aggregates) {
724
794
  for (const [key, aggregate] of Object.entries(config.aggregates)) {
725
- boundAggregates[key] = yield* aggregateBind(aggregate);
795
+ // Same as entities: the aggregate captures the resolved services
796
+ // (notably `Compression`, for packed edge entity fields) at bind time.
797
+ boundAggregates[key] = yield* provide(aggregateBind(aggregate));
726
798
  }
727
799
  }
728
800
  // 5. Build table operations