effect-dynamodb 0.1.0 → 1.1.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 (66) hide show
  1. package/dist/DynamoClient.d.ts +3 -3
  2. package/dist/DynamoClient.d.ts.map +1 -1
  3. package/dist/DynamoClient.js +1 -3
  4. package/dist/DynamoClient.js.map +1 -1
  5. package/dist/Entity.d.ts +69 -10
  6. package/dist/Entity.d.ts.map +1 -1
  7. package/dist/Entity.js +383 -2
  8. package/dist/Entity.js.map +1 -1
  9. package/dist/KeyComposer.d.ts +14 -0
  10. package/dist/KeyComposer.d.ts.map +1 -1
  11. package/dist/KeyComposer.js +22 -1
  12. package/dist/KeyComposer.js.map +1 -1
  13. package/dist/index.d.ts +1 -1
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js.map +1 -1
  16. package/dist/internal/EntityConfig.d.ts +33 -0
  17. package/dist/internal/EntityConfig.d.ts.map +1 -1
  18. package/dist/internal/EntitySchemas.d.ts +14 -3
  19. package/dist/internal/EntitySchemas.d.ts.map +1 -1
  20. package/dist/internal/EntitySchemas.js +41 -2
  21. package/dist/internal/EntitySchemas.js.map +1 -1
  22. package/dist/internal/EntityTypes.d.ts +35 -3
  23. package/dist/internal/EntityTypes.d.ts.map +1 -1
  24. package/dist/internal/TransactableOps.d.ts +1 -1
  25. package/dist/internal/TransactableOps.d.ts.map +1 -1
  26. package/package.json +1 -1
  27. package/dist/_AggregateCursor.d.ts +0 -44
  28. package/dist/_AggregateCursor.d.ts.map +0 -1
  29. package/dist/_AggregateCursor.js +0 -18
  30. package/dist/_AggregateCursor.js.map +0 -1
  31. package/dist/_AggregateEdges.d.ts +0 -77
  32. package/dist/_AggregateEdges.d.ts.map +0 -1
  33. package/dist/_AggregateEdges.js +0 -41
  34. package/dist/_AggregateEdges.js.map +0 -1
  35. package/dist/_AggregateSchemas.d.ts +0 -69
  36. package/dist/_AggregateSchemas.d.ts.map +0 -1
  37. package/dist/_AggregateSchemas.js +0 -194
  38. package/dist/_AggregateSchemas.js.map +0 -1
  39. package/dist/_AggregateTypes.d.ts +0 -94
  40. package/dist/_AggregateTypes.d.ts.map +0 -1
  41. package/dist/_AggregateTypes.js +0 -7
  42. package/dist/_AggregateTypes.js.map +0 -1
  43. package/dist/_EntityCombinators.d.ts +0 -155
  44. package/dist/_EntityCombinators.d.ts.map +0 -1
  45. package/dist/_EntityCombinators.js +0 -158
  46. package/dist/_EntityCombinators.js.map +0 -1
  47. package/dist/_EntityConfig.d.ts +0 -100
  48. package/dist/_EntityConfig.d.ts.map +0 -1
  49. package/dist/_EntityConfig.js +0 -7
  50. package/dist/_EntityConfig.js.map +0 -1
  51. package/dist/_EntityOps.d.ts +0 -205
  52. package/dist/_EntityOps.d.ts.map +0 -1
  53. package/dist/_EntityOps.js +0 -137
  54. package/dist/_EntityOps.js.map +0 -1
  55. package/dist/_EntitySchemas.d.ts +0 -57
  56. package/dist/_EntitySchemas.d.ts.map +0 -1
  57. package/dist/_EntitySchemas.js +0 -298
  58. package/dist/_EntitySchemas.js.map +0 -1
  59. package/dist/_EntityTypes.d.ts +0 -81
  60. package/dist/_EntityTypes.d.ts.map +0 -1
  61. package/dist/_EntityTypes.js +0 -7
  62. package/dist/_EntityTypes.js.map +0 -1
  63. package/dist/_sparse_check.d.ts +0 -2
  64. package/dist/_sparse_check.d.ts.map +0 -1
  65. package/dist/_sparse_check.js +0 -193
  66. package/dist/_sparse_check.js.map +0 -1
@@ -49,6 +49,39 @@ export type SoftDeleteConfig = boolean | {
49
49
  readonly ttl?: Duration.Duration | undefined;
50
50
  readonly preserveUnique?: boolean | undefined;
51
51
  };
52
+ /**
53
+ * Time-series configuration. When set, the entity stores one "current" item
54
+ * per partition and many immutable "event" items. See guides/timeseries.mdx.
55
+ *
56
+ * Current-item SK matches the primary index SK. Event-item SK is
57
+ * `<currentSk>#e#<orderBy-value>`, GSI keys stripped, `_ttl` set.
58
+ *
59
+ * `.append(input)` is a `TransactWriteItems` (UpdateItem current + Put event)
60
+ * with CAS `attribute_not_exists(pk) OR #orderBy < :newOb`. Returns
61
+ * `{ applied: true | false, current }` — stale is a value, not an error.
62
+ *
63
+ * Mutually exclusive with `versioned` (EDD-9012) and `softDelete` (EDD-9015).
64
+ */
65
+ export type TimeSeriesConfig<TAppendInput extends Schema.Top = Schema.Top> = {
66
+ /** Model attribute used as the monotonic clock for CAS and event SK decoration. Required. */
67
+ readonly orderBy: string;
68
+ /** TTL applied to event items (not current). Omit for retention-forever. */
69
+ readonly ttl?: Duration.Duration | undefined;
70
+ /**
71
+ * REQUIRED schema restricting which model fields are allowed in `.append()`
72
+ * input AND which fields are written into the current-item SET clause.
73
+ * The schema MUST include `orderBy` plus all PK/SK composite fields.
74
+ *
75
+ * Fields in the model but NOT in this schema are never referenced by
76
+ * `.append()`'s UpdateExpression and therefore cannot be overwritten — this
77
+ * is the enrichment-preservation contract.
78
+ *
79
+ * Omitting `appendInput` is a hard error at `make()` time (EDD-9016).
80
+ * Users who genuinely want every append to overwrite every model field
81
+ * must pass the full model schema explicitly.
82
+ */
83
+ readonly appendInput: TAppendInput;
84
+ };
52
85
  /** An array of model field names that together form a unique constraint. */
53
86
  export type UniqueFieldsDef = ReadonlyArray<string>;
54
87
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"EntityConfig.d.ts","sourceRoot":"","sources":["../../src/internal/EntityConfig.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAM9C;;;;;;GAMG;AACH,MAAM,MAAM,oBAAoB,GAC5B,MAAM,GACN,MAAM,CAAC,GAAG,GACV;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GAAG,GAAG,SAAS,CAAA;CAAE,CAAA;AAErF;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GACxB,OAAO,GACP;IACE,QAAQ,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,SAAS,CAAA;IACnD,QAAQ,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,SAAS,CAAA;CACpD,CAAA;AAEL;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,GACvB,OAAO,GACP;IACE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACrC,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;CAC7C,CAAA;AAEL;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GACxB,OAAO,GACP;IACE,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC9C,CAAA;AAEL,4EAA4E;AAC5E,MAAM,MAAM,eAAe,GAAG,aAAa,CAAC,MAAM,CAAC,CAAA;AAEnD;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAC3B,eAAe,GACf;IAAE,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;CAAE,CAAA;AAEtF;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAA;AAEzE;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,uCAAuC;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IACvC,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;CACxC;AAED;;;;;GAKG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;KAAE,CAAA;IAC5C,QAAQ,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAA;CACtC"}
1
+ {"version":3,"file":"EntityConfig.d.ts","sourceRoot":"","sources":["../../src/internal/EntityConfig.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAM9C;;;;;;GAMG;AACH,MAAM,MAAM,oBAAoB,GAC5B,MAAM,GACN,MAAM,CAAC,GAAG,GACV;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GAAG,GAAG,SAAS,CAAA;CAAE,CAAA;AAErF;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GACxB,OAAO,GACP;IACE,QAAQ,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,SAAS,CAAA;IACnD,QAAQ,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,SAAS,CAAA;CACpD,CAAA;AAEL;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,GACvB,OAAO,GACP;IACE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACrC,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;CAC7C,CAAA;AAEL;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GACxB,OAAO,GACP;IACE,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC9C,CAAA;AAEL;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,gBAAgB,CAAC,YAAY,SAAS,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI;IAC3E,6FAA6F;IAC7F,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,4EAA4E;IAC5E,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;IAC5C;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAA;CACnC,CAAA;AAED,4EAA4E;AAC5E,MAAM,MAAM,eAAe,GAAG,aAAa,CAAC,MAAM,CAAC,CAAA;AAEnD;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAC3B,eAAe,GACf;IAAE,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;CAAE,CAAA;AAEtF;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAA;AAEzE;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,uCAAuC;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IACvC,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;CACxC;AAED;;;;;GAKG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;KAAE,CAAA;IAC5C,QAAQ,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAA;CACtC"}
@@ -6,7 +6,7 @@
6
6
  import { Schema } from "effect";
7
7
  import { type DynamoEncoding } from "../DynamoModel.js";
8
8
  import type { IndexDefinition } from "../KeyComposer.js";
9
- import type { TimestampsConfig, UniqueConstraintDef, VersionedConfig } from "./EntityConfig.js";
9
+ import type { TimeSeriesConfig, TimestampsConfig, UniqueConstraintDef, VersionedConfig } from "./EntityConfig.js";
10
10
  export interface ResolvedSystemFields {
11
11
  readonly createdAt: string | null;
12
12
  readonly createdAtEncoding: DynamoEncoding | null;
@@ -14,7 +14,7 @@ export interface ResolvedSystemFields {
14
14
  readonly updatedAtEncoding: DynamoEncoding | null;
15
15
  readonly version: string | null;
16
16
  }
17
- export declare const resolveSystemFields: (timestamps?: TimestampsConfig | undefined, versioned?: VersionedConfig | undefined) => ResolvedSystemFields;
17
+ export declare const resolveSystemFields: (timestamps?: TimestampsConfig | undefined, versioned?: VersionedConfig | undefined, timeSeries?: TimeSeriesConfig<any> | undefined) => ResolvedSystemFields;
18
18
  export declare const primaryKeyComposites: (indexes: globalThis.Record<string, IndexDefinition>) => ReadonlyArray<string>;
19
19
  export declare const allKeyFieldNames: (indexes: globalThis.Record<string, IndexDefinition>) => ReadonlyArray<string>;
20
20
  export declare const allCompositeAttributes: (indexes: globalThis.Record<string, IndexDefinition>) => ReadonlyArray<string>;
@@ -47,11 +47,22 @@ export interface DerivedSchemas {
47
47
  readonly itemSchema: Schema.Codec<any>;
48
48
  /** Record fields + deletedAt for soft-deleted items */
49
49
  readonly deletedRecordSchema: Schema.Codec<any>;
50
+ /**
51
+ * `appendInput` schema for `.append()` on time-series entities.
52
+ * `null` when the entity is not configured with `timeSeries`.
53
+ */
54
+ readonly appendInputSchema: Schema.Codec<any> | null;
55
+ /**
56
+ * Record schema for history/event items. Same shape as `recordSchema` minus
57
+ * `updatedAt` (time-series auto-suppresses it). `null` when the entity is
58
+ * not configured with `timeSeries`.
59
+ */
60
+ readonly historyRecordSchema: Schema.Codec<any> | null;
50
61
  }
51
62
  export declare const buildDerivedSchemas: (modelFields: SchemaFields, indexes: globalThis.Record<string, IndexDefinition>, systemFields: ResolvedSystemFields, resolvedRefs?: ReadonlyArray<{
52
63
  readonly fieldName: string;
53
64
  readonly idFieldName: string;
54
65
  readonly identifierSchema: Schema.Top;
55
- }>, immutableFields?: ReadonlySet<string>, identifierField?: string | undefined) => DerivedSchemas;
66
+ }>, immutableFields?: ReadonlySet<string>, identifierField?: string | undefined, timeSeries?: TimeSeriesConfig<any> | undefined) => DerivedSchemas;
56
67
  export declare const resolveUniqueFields: (def: UniqueConstraintDef) => ReadonlyArray<string>;
57
68
  //# sourceMappingURL=EntitySchemas.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EntitySchemas.d.ts","sourceRoot":"","sources":["../../src/internal/EntitySchemas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntitySchemas.d.ts","sourceRoot":"","sources":["../../src/internal/EntitySchemas.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ const resolveTimestampField = (config, defaultName) => {
25
25
  const encoding = config.schema ? (getEncoding(config.schema) ?? null) : null;
26
26
  return [fieldName, encoding];
27
27
  };
28
- export const resolveSystemFields = (timestamps, versioned) => {
28
+ export const resolveSystemFields = (timestamps, versioned, timeSeries) => {
29
29
  let createdAt = null;
30
30
  let createdAtEncoding = null;
31
31
  let updatedAt = null;
@@ -46,6 +46,21 @@ export const resolveSystemFields = (timestamps, versioned) => {
46
46
  else if (typeof versioned === "object" && versioned !== null) {
47
47
  version = versioned.field ?? "version";
48
48
  }
49
+ // Time-series entities auto-suppress `updatedAt` — the `orderBy` attribute
50
+ // serves as the update clock. `createdAt` is preserved.
51
+ if (timeSeries !== undefined && timeSeries !== null) {
52
+ if (updatedAt !== null) {
53
+ if (typeof timestamps === "object" &&
54
+ timestamps !== null &&
55
+ timestamps.updated !== undefined) {
56
+ // eslint-disable-next-line no-console
57
+ console.warn("[effect-dynamodb] timeSeries entity: `timestamps.updated` is ignored — " +
58
+ "the `orderBy` attribute is the event-time clock.");
59
+ }
60
+ updatedAt = null;
61
+ updatedAtEncoding = null;
62
+ }
63
+ }
49
64
  return { createdAt, createdAtEncoding, updatedAt, updatedAtEncoding, version };
50
65
  };
51
66
  // ---------------------------------------------------------------------------
@@ -135,7 +150,7 @@ const dateFromSelfSchema = (encoding) => {
135
150
  return Schema.DateValid;
136
151
  }
137
152
  };
138
- export const buildDerivedSchemas = (modelFields, indexes, systemFields, resolvedRefs = [], immutableFields = new Set(), identifierField = undefined) => {
153
+ export const buildDerivedSchemas = (modelFields, indexes, systemFields, resolvedRefs = [], immutableFields = new Set(), identifierField = undefined, timeSeries = undefined) => {
139
154
  // --- Build fromSelf field map for date fields ---
140
155
  // These replace transform schemas with their "from self" variants so
141
156
  // Schema.decode accepts domain values after storage→domain conversion.
@@ -280,6 +295,28 @@ export const buildDerivedSchemas = (modelFields, indexes, systemFields, resolved
280
295
  ...systemSchemaFields,
281
296
  }).filter(([k]) => !hiddenFieldNames.has(k))))
282
297
  : recordSchema;
298
+ // --- Time-series derived schemas ---
299
+ // `appendInputSchema`: the user-supplied schema directly. `Entity.make()`
300
+ // enforces that every PK/SK composite + `orderBy` appears in its fields.
301
+ // `historyRecordSchema`: event-item shape. Model fields (with fromSelf for
302
+ // date-annotated) + createdAt (when configured, no updatedAt ever since
303
+ // timeSeries auto-suppresses). No GSI key attrs — events strip GSI keys.
304
+ const timeSeriesEnabled = timeSeries !== undefined && timeSeries !== null;
305
+ const appendInputSchema = timeSeriesEnabled ? timeSeries.appendInput : null;
306
+ // Events are point-in-time facts keyed by `orderBy`. They do NOT carry
307
+ // `createdAt` or `updatedAt` (§4.5 — events already carry `orderBy` as the
308
+ // temporal anchor). Schema is just model fields with fromSelf for dates.
309
+ const historyRecordSchema = timeSeriesEnabled
310
+ ? (() => {
311
+ const hiddenFilter = (record) => hasHiddenFields
312
+ ? Object.fromEntries(Object.entries(record).filter(([k]) => !hiddenFieldNames.has(k)))
313
+ : record;
314
+ return Schema.Struct(hiddenFilter({
315
+ ...modelFields,
316
+ ...fromSelfFields,
317
+ }));
318
+ })()
319
+ : null;
283
320
  return {
284
321
  modelSchema: modelSchema,
285
322
  modelDecodeSchema: modelDecodeVisibleSchema,
@@ -290,6 +327,8 @@ export const buildDerivedSchemas = (modelFields, indexes, systemFields, resolved
290
327
  keySchema: keySchema,
291
328
  itemSchema: itemSchema,
292
329
  deletedRecordSchema: deletedRecordSchema,
330
+ appendInputSchema: appendInputSchema,
331
+ historyRecordSchema: historyRecordSchema,
293
332
  };
294
333
  };
295
334
  // ---------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"EntitySchemas.js","sourceRoot":"","sources":["../../src/internal/EntitySchemas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntitySchemas.js","sourceRoot":"","sources":["../../src/internal/EntitySchemas.ts"],"names":[],"mappings":"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"}
@@ -18,23 +18,55 @@ export type PrimaryKeyComposites<TIndexes> = TIndexes extends {
18
18
  };
19
19
  };
20
20
  } ? PKC[number] | SKC[number] : string;
21
- /** Compute system fields added by timestamps and versioned config */
22
- export type SystemFieldsType<TTimestamps, TVersioned> = ([TTimestamps] extends [undefined] ? {} : [TTimestamps] extends [false] ? {} : {
21
+ /** Compute system fields added by timestamps and versioned config.
22
+ *
23
+ * Time-series entities auto-suppress `updatedAt` — the `orderBy` attribute IS
24
+ * the update clock. `createdAt` is preserved and set via `if_not_exists`.
25
+ */
26
+ export type SystemFieldsType<TTimestamps, TVersioned, TTimeSeries = undefined> = ([
27
+ TTimestamps
28
+ ] extends [undefined] ? {} : [TTimestamps] extends [false] ? {} : [TTimeSeries] extends [undefined | false] ? {
23
29
  readonly createdAt: DateTime.Utc;
24
30
  readonly updatedAt: DateTime.Utc;
31
+ } : {
32
+ readonly createdAt: DateTime.Utc;
25
33
  }) & ([TVersioned] extends [undefined] ? {} : [TVersioned] extends [false] ? {} : {
26
34
  readonly version: number;
27
35
  });
28
36
  /** Entity key type: Pick model fields by primary key composites */
29
37
  export type EntityKeyType<TModel extends Schema.Top, TIndexes> = Pick<ModelType<TModel>, PrimaryKeyComposites<TIndexes> & keyof ModelType<TModel>>;
30
38
  /** Entity record type: model fields + system fields */
31
- export type EntityRecordType<TModel extends Schema.Top, TTimestamps, TVersioned> = ModelType<TModel> & SystemFieldsType<TTimestamps, TVersioned>;
39
+ export type EntityRecordType<TModel extends Schema.Top, TTimestamps, TVersioned, TTimeSeries = undefined> = ModelType<TModel> & SystemFieldsType<TTimestamps, TVersioned, TTimeSeries>;
32
40
  /** Entity input type: same as model fields (system fields auto-managed) */
33
41
  export type EntityInputType<TModel extends Schema.Top> = ModelType<TModel>;
34
42
  /** Entity create type: input fields minus identifier (or PK composites as fallback) */
35
43
  export type EntityCreateType<TModel extends Schema.Top, TIndexes, TIdentifier extends string | undefined> = [TIdentifier] extends [string] ? Omit<ModelType<TModel>, TIdentifier> : Omit<ModelType<TModel>, PrimaryKeyComposites<TIndexes>>;
36
44
  /** Entity update type: partial model fields minus primary key composites */
37
45
  export type EntityUpdateType<TModel extends Schema.Top, TIndexes> = Partial<Omit<ModelType<TModel>, PrimaryKeyComposites<TIndexes>>>;
46
+ /**
47
+ * Input type for `.append()` on a time-series entity.
48
+ *
49
+ * Derived from the required `appendInput` schema. Always includes `orderBy`
50
+ * plus all PK/SK composite fields (enforced at `Entity.make()` time).
51
+ */
52
+ export type AppendInputType<TAppendInput> = [TAppendInput] extends [Schema.Top] ? Schema.Schema.Type<TAppendInput> : never;
53
+ /**
54
+ * Return type of `.append()` — a discriminated union.
55
+ *
56
+ * - `{ applied: true, current }` — transaction succeeded; `current` is the new state.
57
+ * - `{ applied: false, reason: "stale", current }` — CAS rejected the write;
58
+ * `current` is the winning state (obtained via follow-up GetItem).
59
+ *
60
+ * Errors on the Effect error channel: `DynamoClientError`, `ValidationError`.
61
+ */
62
+ export type AppendResult<TModel extends Schema.Top> = {
63
+ readonly applied: true;
64
+ readonly current: ModelType<TModel>;
65
+ } | {
66
+ readonly applied: false;
67
+ readonly reason: "stale";
68
+ readonly current: ModelType<TModel>;
69
+ };
38
70
  /** Extract PK-only composite attribute names (excludes SK) */
39
71
  type PrimaryPkOnlyComposites<TIndexes> = TIndexes extends {
40
72
  readonly primary: {
@@ -1 +1 @@
1
- {"version":3,"file":"EntityTypes.d.ts","sourceRoot":"","sources":["../../src/internal/EntityTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntityTypes.d.ts","sourceRoot":"","sources":["../../src/internal/EntityTypes.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ import * as KeyComposer from "../KeyComposer.js";
13
13
  */
14
14
  export declare const resolveTableNames: (infos: ReadonlyArray<{
15
15
  readonly entity: Entity;
16
- }>) => Effect.Effect<Map<Entity<Schema.Top, string, Record<string, KeyComposer.IndexDefinition>, import("./EntityConfig.js").TimestampsConfig | undefined, import("./EntityConfig.js").VersionedConfig | undefined, import("./EntityConfig.js").SoftDeleteConfig | undefined, import("./EntityConfig.js").UniqueConfig | undefined, undefined, undefined>, string>, never, import("../Table.js").TableConfig>;
16
+ }>) => Effect.Effect<Map<Entity<Schema.Top, string, Record<string, KeyComposer.IndexDefinition>, import("./EntityConfig.js").TimestampsConfig | undefined, import("./EntityConfig.js").VersionedConfig | undefined, import("./EntityConfig.js").SoftDeleteConfig | undefined, import("./EntityConfig.js").UniqueConfig | undefined, undefined, undefined, undefined>, string>, never, import("../Table.js").TableConfig>;
17
17
  /**
18
18
  * Compose the primary key for an entity item.
19
19
  */
@@ -1 +1 @@
1
- {"version":3,"file":"TransactableOps.d.ts","sourceRoot":"","sources":["../../src/internal/TransactableOps.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AACvC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,KAAK,WAAW,MAAM,mBAAmB,CAAA;AAGhD;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,OAAO,aAAa,CAAC;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,2YAU/E,CAAA;AAEJ;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAC5B,QAAQ,MAAM,EACd,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC3B,MAAM,CAAC,MAAM,EAAE,OAAO,CAOxB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB,GAClC,QAAQ,MAAM,EACd,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,WAAW,MAAM,KAChB,MAAM,CAAC,MAAM,CACd,MAAM,CAAC,MAAM,EAAE,OAAO,0BAA0B,EAAE,cAAc,CAAC,EACjE,eAAe,CAiCb,CAAA"}
1
+ {"version":3,"file":"TransactableOps.d.ts","sourceRoot":"","sources":["../../src/internal/TransactableOps.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AACvC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,KAAK,WAAW,MAAM,mBAAmB,CAAA;AAGhD;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,OAAO,aAAa,CAAC;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,sZAU/E,CAAA;AAEJ;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAC5B,QAAQ,MAAM,EACd,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC3B,MAAM,CAAC,MAAM,EAAE,OAAO,CAOxB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB,GAClC,QAAQ,MAAM,EACd,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,WAAW,MAAM,KAChB,MAAM,CAAC,MAAM,CACd,MAAM,CAAC,MAAM,EAAE,OAAO,0BAA0B,EAAE,cAAc,CAAC,EACjE,eAAe,CAiCb,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "effect-dynamodb",
3
- "version": "0.1.0",
3
+ "version": "1.1.0",
4
4
  "description": "Effect TS ORM for DynamoDB — schema-driven entity modeling, single-table design, composite keys, transactions, and Stream-based pagination",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -1,44 +0,0 @@
1
- /**
2
- * @internal Aggregate cursor and update context types.
3
- *
4
- * Extracted from Aggregate.ts for decomposition. Not part of the public API.
5
- */
6
- import type { Optic } from "effect";
7
- /**
8
- * A pre-bound optic rooted at the current aggregate state.
9
- * Navigate with `.key()`, `.optionalKey()`, or `.at()`, then apply terminals
10
- * `.get()`, `.replace()`, or `.modify()` — no need to pass the source explicitly.
11
- * For composing externally-defined optics, use `optic` + `state`.
12
- */
13
- export interface Cursor<S, A = S> {
14
- /** Focus on a required key */
15
- readonly key: <K extends keyof A & string>(k: K) => Cursor<S, A[K]>;
16
- /** Focus on an optional key (narrows away `undefined`) */
17
- readonly optionalKey: <K extends keyof A & string>(k: K) => Cursor<S, NonNullable<A[K]>>;
18
- /** Focus on an array element by index (available when focused on an array) */
19
- readonly at: A extends ReadonlyArray<infer E> ? (index: number) => Cursor<S, E> : never;
20
- /** Read the focused value (returns `undefined` for absent optional/indexed focuses) */
21
- readonly get: () => A;
22
- /** Replace the focused value, returning the full updated state */
23
- readonly replace: (value: A) => S;
24
- /** Modify the focused value with a function, returning the full updated state */
25
- readonly modify: (f: (a: A) => A) => S;
26
- }
27
- /** @internal Build a cursor by binding a source value into an optic */
28
- export declare const makeCursor: <S>(source: S, optic: Optic.Iso<S, S>) => Cursor<S, S>;
29
- /** Context provided to the aggregate update mutation function */
30
- export interface UpdateContext<TIso, TClass = unknown> {
31
- /** The current aggregate state as a plain object */
32
- readonly state: TIso;
33
- /** Pre-bound cursor — navigate with `.key()`, then `.get()` / `.replace()` / `.modify()` */
34
- readonly cursor: Cursor<TIso>;
35
- /** Composable optic rooted at the plain type — use with externally-defined lenses and `state` */
36
- readonly optic: Optic.Iso<TIso, TIso>;
37
- /** The current state as a Schema.Class instance (rarely needed) */
38
- readonly current: TClass;
39
- }
40
- /** Discriminator config for binding a sub-aggregate */
41
- export interface DiscriminatorConfig {
42
- readonly discriminator: Record<string, unknown>;
43
- }
44
- //# sourceMappingURL=_AggregateCursor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"_AggregateCursor.d.ts","sourceRoot":"","sources":["../src/_AggregateCursor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAMnC;;;;;GAKG;AACH,MAAM,WAAW,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC;IAC9B,8BAA8B;IAC9B,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACnE,0DAA0D;IAC1D,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACxF,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,EAAE,CAAC,SAAS,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAA;IACvF,uFAAuF;IACvF,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IACrB,kEAAkE;IAClE,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAA;IACjC,iFAAiF;IACjF,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;CACvC;AAED,uEAAuE;AACvE,eAAO,MAAM,UAAU,GAAI,CAAC,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAU5E,CAAA;AAED,iEAAiE;AACjE,MAAM,WAAW,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IACnD,oDAAoD;IACpD,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAA;IACpB,4FAA4F;IAC5F,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;IAC7B,iGAAiG;IACjG,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IACrC,mEAAmE;IACnE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB;AAED,uDAAuD;AACvD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAChD"}
@@ -1,18 +0,0 @@
1
- /**
2
- * @internal Aggregate cursor and update context types.
3
- *
4
- * Extracted from Aggregate.ts for decomposition. Not part of the public API.
5
- */
6
- /** @internal Build a cursor by binding a source value into an optic */
7
- export const makeCursor = (source, optic) => {
8
- const build = (op) => ({
9
- key: (k) => build(op.key(k)),
10
- optionalKey: (k) => build(op.optionalKey(k)),
11
- at: ((index) => build(op.at(index))),
12
- get: () => (op.get ? op.get(source) : op.getResult(source)?.value),
13
- replace: (value) => op.replace(value, source),
14
- modify: (f) => op.modify(f)(source),
15
- });
16
- return build(optic);
17
- };
18
- //# sourceMappingURL=_AggregateCursor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"_AggregateCursor.js","sourceRoot":"","sources":["../src/_AggregateCursor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA6BH,uEAAuE;AACvE,MAAM,CAAC,MAAM,UAAU,GAAG,CAAI,MAAS,EAAE,KAAsB,EAAgB,EAAE;IAC/E,MAAM,KAAK,GAAG,CAAI,EAAO,EAAgB,EAAE,CAAC,CAAC;QAC3C,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC5B,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAC5C,EAAE,EAAE,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAQ;QACnD,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;QAClE,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC;QAC7C,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;KACpC,CAAC,CAAA;IACF,OAAO,KAAK,CAAC,KAAK,CAAC,CAAA;AACrB,CAAC,CAAA"}
@@ -1,77 +0,0 @@
1
- /**
2
- * @internal Aggregate edge descriptor types and builders.
3
- *
4
- * Extracted from Aggregate.ts for decomposition. Not part of the public API.
5
- */
6
- import type { Schema } from "effect";
7
- /** Structural entity type for refs — avoids import of Entity */
8
- export interface RefEntity {
9
- readonly _tag: "Entity";
10
- readonly entityType: string;
11
- readonly model: Schema.Top;
12
- readonly schemas: {
13
- readonly recordSchema: Schema.Codec<any>;
14
- };
15
- /** Get an entity by key — uses `any` for structural compatibility with Entity's narrower key type */
16
- readonly get: (key: any) => any;
17
- }
18
- /** A one-to-one edge: one member item per aggregate instance */
19
- export interface OneEdge {
20
- readonly _tag: "OneEdge";
21
- readonly name: string;
22
- readonly entityType: string;
23
- readonly entity?: RefEntity | undefined;
24
- readonly discriminator?: Record<string, unknown> | undefined;
25
- }
26
- /** Configuration for a many edge */
27
- export interface ManyEdgeConfig {
28
- readonly entityType: string;
29
- readonly entity?: RefEntity | undefined;
30
- readonly inputField?: string | undefined;
31
- readonly edgeAttributes?: ReadonlyArray<string> | undefined;
32
- readonly sk?: {
33
- readonly composite: ReadonlyArray<string>;
34
- } | undefined;
35
- readonly assemble?: ((items: ReadonlyArray<unknown>) => unknown) | undefined;
36
- readonly decompose?: ((value: unknown) => ReadonlyArray<unknown>) | undefined;
37
- }
38
- /** A one-to-many edge: multiple member items per aggregate instance */
39
- export interface ManyEdge {
40
- readonly _tag: "ManyEdge";
41
- readonly name: string;
42
- readonly entityType: string;
43
- readonly entity?: RefEntity | undefined;
44
- readonly inputField?: string | undefined;
45
- readonly edgeAttributes?: ReadonlyArray<string> | undefined;
46
- readonly sk?: {
47
- readonly composite: ReadonlyArray<string>;
48
- } | undefined;
49
- readonly assemble?: ((items: ReadonlyArray<unknown>) => unknown) | undefined;
50
- readonly decompose?: ((value: unknown) => ReadonlyArray<unknown>) | undefined;
51
- }
52
- /** A ref edge: no decomposition, hydrates via entity, data stays inline */
53
- export interface RefEdge {
54
- readonly _tag: "RefEdge";
55
- readonly entity: RefEntity;
56
- }
57
- /** Union of edge types */
58
- export type AggregateEdge = OneEdge | ManyEdge | RefEdge;
59
- /** Create a one-to-one edge descriptor */
60
- export declare const one: (name: string, config: {
61
- readonly entityType: string;
62
- readonly entity?: RefEntity;
63
- readonly discriminator?: Record<string, unknown>;
64
- }) => OneEdge;
65
- /** Create a one-to-many edge descriptor */
66
- export declare function many<const IF extends string>(name: string, config: ManyEdgeConfig & {
67
- readonly inputField: IF;
68
- }): ManyEdge & {
69
- readonly inputField: IF;
70
- };
71
- export declare function many(name: string, config: ManyEdgeConfig): ManyEdge;
72
- /** Create a ref edge descriptor — no decomposition, hydrates via entity, data stays inline */
73
- export declare const ref: (entity: RefEntity) => RefEdge;
74
- export declare const isOneEdge: (edge: AggregateEdge) => edge is OneEdge;
75
- export declare const isManyEdge: (edge: AggregateEdge) => edge is ManyEdge;
76
- export declare const isRefEdge: (edge: AggregateEdge) => edge is RefEdge;
77
- //# sourceMappingURL=_AggregateEdges.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"_AggregateEdges.d.ts","sourceRoot":"","sources":["../src/_AggregateEdges.ts"],"names":[],"mappings":"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"}
@@ -1,41 +0,0 @@
1
- /**
2
- * @internal Aggregate edge descriptor types and builders.
3
- *
4
- * Extracted from Aggregate.ts for decomposition. Not part of the public API.
5
- */
6
- // ---------------------------------------------------------------------------
7
- // Edge builders
8
- // ---------------------------------------------------------------------------
9
- /** Create a one-to-one edge descriptor */
10
- export const one = (name, config) => ({
11
- _tag: "OneEdge",
12
- name,
13
- entityType: config.entityType,
14
- entity: config.entity,
15
- discriminator: config.discriminator,
16
- });
17
- export function many(name, config) {
18
- return {
19
- _tag: "ManyEdge",
20
- name,
21
- entityType: config.entityType,
22
- entity: config.entity,
23
- inputField: config.inputField,
24
- edgeAttributes: config.edgeAttributes,
25
- sk: config.sk,
26
- assemble: config.assemble,
27
- decompose: config.decompose,
28
- };
29
- }
30
- /** Create a ref edge descriptor — no decomposition, hydrates via entity, data stays inline */
31
- export const ref = (entity) => ({
32
- _tag: "RefEdge",
33
- entity,
34
- });
35
- // ---------------------------------------------------------------------------
36
- // Type guards
37
- // ---------------------------------------------------------------------------
38
- export const isOneEdge = (edge) => edge._tag === "OneEdge";
39
- export const isManyEdge = (edge) => edge._tag === "ManyEdge";
40
- export const isRefEdge = (edge) => edge._tag === "RefEdge";
41
- //# sourceMappingURL=_AggregateEdges.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"_AggregateEdges.js","sourceRoot":"","sources":["../src/_AggregateEdges.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAkEH,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E,0CAA0C;AAC1C,MAAM,CAAC,MAAM,GAAG,GAAG,CACjB,IAAY,EACZ,MAIC,EACQ,EAAE,CAAC,CAAC;IACb,IAAI,EAAE,SAAS;IACf,IAAI;IACJ,UAAU,EAAE,MAAM,CAAC,UAAU;IAC7B,MAAM,EAAE,MAAM,CAAC,MAAM;IACrB,aAAa,EAAE,MAAM,CAAC,aAAa;CACpC,CAAC,CAAA;AAQF,MAAM,UAAU,IAAI,CAAC,IAAY,EAAE,MAAsB;IACvD,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,IAAI;QACJ,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAA;AACH,CAAC;AAED,8FAA8F;AAC9F,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,MAAiB,EAAW,EAAE,CAAC,CAAC;IAClD,IAAI,EAAE,SAAS;IACf,MAAM;CACP,CAAC,CAAA;AAEF,8EAA8E;AAC9E,cAAc;AACd,8EAA8E;AAE9E,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAmB,EAAmB,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAA;AAC1F,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAmB,EAAoB,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,CAAA;AAC7F,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAmB,EAAmB,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAA"}