prisma-effect-kysely 5.5.0 → 5.6.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/CHANGELOG.md CHANGED
@@ -1,5 +1,46 @@
1
1
  # Changelog
2
2
 
3
+ ## 5.6.0
4
+
5
+ ### Minor Changes
6
+
7
+ - bf7d87c: feat: DateTime columns now map to `DateFromInput` (dual-boundary Date schema)
8
+
9
+ `DateTime` columns previously mapped to `Schema.DateFromSelf`
10
+ (`Encoded = Date`), which broke RPC/HTTP wire decode where JSON-parsed
11
+ input is a string. Now maps to a new exported `DateFromInput` schema:
12
+ - **Type** = `Date` (runtime — unchanged)
13
+ - **Encoded** = `Date | string` (was `Date`)
14
+
15
+ Defined as `Schema.Union(Schema.DateFromSelf, Schema.Date)`, so decode
16
+ accepts native `Date` instances (Kysely DA layer — pg driver returns Date)
17
+ AND ISO strings (RPC/HTTP wire layer — JSON.parse output). One primitive
18
+ serves both consumer boundaries; consumers no longer need parallel
19
+ schemas or `Schema.extend` overrides for date columns.
20
+
21
+ **Why minor (not major)**: existing public API behavior is preserved.
22
+ `Selectable<T>` / `Insertable<T>` / `Updateable<T>` Type sides unchanged.
23
+ Decode accepts MORE inputs (Date AND string), not fewer. Encode picks
24
+ the first union member (`DateFromSelf`, identity) so Kysely-bound
25
+ encode still produces Date instances — existing call sites keep working.
26
+
27
+ **Why the change**: `DateFromSelf` optimized for the in-memory Kysely
28
+ boundary; `Schema.Date` optimizes for the JSON wire boundary. Modern
29
+ apps cross both with the same generated schemas. Picking either single
30
+ primitive forced consumers to patch around it at one boundary.
31
+ `DateFromInput` accepts both encoded shapes natively. Mirrors the
32
+ `JsonValue` dual-boundary discipline already in this package
33
+ (`Schema<JsonValue, JsonValue>` is wire-safe by construction).
34
+
35
+ **Migration**: no code changes for typical consumers. If you imported
36
+ `Schema.DateFromSelf` directly from generated `types.ts` in a way that
37
+ depended on the literal symbol, switch to `DateFromInput` imported from
38
+ `prisma-effect-kysely`.
39
+
40
+ **Internal**: consolidated duplicated `PRISMA_TO_EFFECT_SCHEMA` /
41
+ `PRISMA_SCALAR_MAP` constants. `src/effect/type.ts` now imports the
42
+ canonical map from `src/utils/type-mappings.ts`.
43
+
3
44
  ## 5.5.0
4
45
 
5
46
  ### Minor Changes
package/README.md CHANGED
@@ -27,7 +27,7 @@ Three files: `enums.ts`, `types.ts`, `index.ts`.
27
27
 
28
28
  ```typescript
29
29
  import { Schema } from "effect";
30
- import { columnType, generated, Selectable } from "prisma-effect-kysely";
30
+ import { columnType, DateFromInput, generated, Selectable } from "prisma-effect-kysely";
31
31
 
32
32
  // Branded ID
33
33
  export const UserId = Schema.UUID.pipe(Schema.brand("UserId"));
@@ -37,7 +37,7 @@ export type UserId = typeof UserId.Type;
37
37
  export const User = Schema.Struct({
38
38
  id: columnType(Schema.UUID, Schema.Never, Schema.Never),
39
39
  email: Schema.String,
40
- createdAt: generated(Schema.DateFromSelf),
40
+ createdAt: generated(DateFromInput),
41
41
  });
42
42
  export type User = typeof User;
43
43
 
@@ -80,13 +80,13 @@ Schema names are PascalCase regardless of Prisma model name (`session_preference
80
80
  | BigInt | `Schema.BigInt` |
81
81
  | Decimal | `Schema.String` |
82
82
  | Boolean | `Schema.Boolean` |
83
- | DateTime | `Schema.DateFromSelf` |
84
- | Json | `Schema.Unknown` |
83
+ | DateTime | `DateFromInput` |
84
+ | Json | `JsonValue` |
85
85
  | Bytes | `Schema.Uint8Array` |
86
86
  | Enum | `Schema.Literal(...)` |
87
87
  | UUID | `Schema.UUID` |
88
88
 
89
- Arrays → `Schema.Array(t)`. Nullable → `Schema.NullOr(t)`.
89
+ Arrays → `Schema.Array(t)`. Nullable → `Schema.NullOr(t)`. `DateFromInput` accepts `Date | string` on the encoded side; `JsonValue` is `Schema<JsonValue, JsonValue>`. Both are wire-safe (`JSON.parse` output decodes cleanly).
90
90
 
91
91
  ## UUID Detection
92
92
 
@@ -1 +1 @@
1
- {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../src/effect/generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAErD,OAAO,EAAsB,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAQ/E;;GAEG;AACH,qBAAa,eAAe;IACd,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,IAAI,CAAC,QAAQ;IAEhD;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,SAAS,IAAI,CAAC,aAAa,EAAE;IAIlD;;;OAGG;IACH,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,IAAI,CAAC,KAAK,EAAE;IAcxE;;;OAGG;IACH,OAAO,CAAC,aAAa;IAOrB;;;;OAIG;IACH,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,IAAI,CAAC,KAAK,EAAE;IAqBpE;;OAEG;IACH,mBAAmB,CAAC,QAAQ,EAAE,OAAO;IAoBrC;;OAEG;IACH,wBAAwB,CAAC,UAAU,EAAE,aAAa,EAAE;CAGrD"}
1
+ {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../src/effect/generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAErD,OAAO,EAAsB,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAQ/E;;GAEG;AACH,qBAAa,eAAe;IACd,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,IAAI,CAAC,QAAQ;IAEhD;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,SAAS,IAAI,CAAC,aAAa,EAAE;IAIlD;;;OAGG;IACH,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,IAAI,CAAC,KAAK,EAAE;IAcxE;;;OAGG;IACH,OAAO,CAAC,aAAa;IAOrB;;;;OAIG;IACH,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,IAAI,CAAC,KAAK,EAAE;IAqBpE;;OAEG;IACH,mBAAmB,CAAC,QAAQ,EAAE,OAAO;IAqBrC;;OAEG;IACH,wBAAwB,CAAC,UAAU,EAAE,aAAa,EAAE;CAGrD"}
@@ -78,9 +78,10 @@ export type ${name} = typeof ${name};`;
78
78
  const header = generateFileHeader();
79
79
  // Import runtime helpers from prisma-effect-kysely
80
80
  // columnType and generated are used for field type annotations
81
+ // DateFromInput is the dual-boundary Date schema (Date | string ↔ Date)
81
82
  const imports = [
82
83
  `import { Schema } from "effect";`,
83
- `import { columnType, generated, JsonValue } from "prisma-effect-kysely";`,
84
+ `import { columnType, generated, JsonValue, DateFromInput } from "prisma-effect-kysely";`,
84
85
  ];
85
86
  if (hasEnums) {
86
87
  // Import PascalCase enum schemas
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../src/effect/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../src/effect/generator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../src/effect/type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AA2BrD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,IAAI,EAAE,IAAI,CAAC,QAAQ,EACnB,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,UAmC5B;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,IAAI,EAAE,IAAI,CAAC,QAAQ,EACnB,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,UAgB5B"}
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../src/effect/type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAMrD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,IAAI,EAAE,IAAI,CAAC,QAAQ,EACnB,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,UAmC5B;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,IAAI,EAAE,IAAI,CAAC,QAAQ,EACnB,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,UAgB5B"}
@@ -1,27 +1,7 @@
1
1
  import { isListField, isRequiredField, isUuidField } from '../prisma/type.js';
2
2
  import { extractEffectTypeOverride } from '../utils/annotations.js';
3
3
  import { toPascalCase } from '../utils/naming.js';
4
- /**
5
- * Prisma scalar type mapping to Effect Schema types
6
- * Uses const assertion to avoid type guards
7
- *
8
- * Note: DateTime uses Schema.DateFromSelf (not Schema.Date) so that:
9
- * - Type = Date (runtime)
10
- * - Encoded = Date (database)
11
- * This allows Kysely to work with native Date objects directly.
12
- * Schema.Date would encode to string, requiring ISO string conversions.
13
- */
14
- const PRISMA_SCALAR_MAP = {
15
- String: 'Schema.String',
16
- Int: 'Schema.Number',
17
- Float: 'Schema.Number',
18
- BigInt: 'Schema.BigInt',
19
- Decimal: 'Schema.String', // For precision
20
- Boolean: 'Schema.Boolean',
21
- DateTime: 'Schema.DateFromSelf', // Native Date type for Kysely compatibility
22
- Json: 'JsonValue', // Recursive JSON type — prevents null absorption in NullOr
23
- Bytes: 'Schema.Uint8Array',
24
- };
4
+ import { PRISMA_TO_EFFECT_SCHEMA as PRISMA_SCALAR_MAP } from '../utils/type-mappings.js';
25
5
  /**
26
6
  * Map Prisma field type to Effect Schema type
27
7
  * Priority order: annotation → FK branded → UUID → scalar → enum → unknown fallback
@@ -1 +1 @@
1
- {"version":3,"file":"type.js","sourceRoot":"","sources":["../../src/effect/type.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;;;;;;;GASG;AACH,MAAM,iBAAiB,GAAG;IACxB,MAAM,EAAE,eAAe;IACvB,GAAG,EAAE,eAAe;IACpB,KAAK,EAAE,eAAe;IACtB,MAAM,EAAE,eAAe;IACvB,OAAO,EAAE,eAAe,EAAE,gBAAgB;IAC1C,OAAO,EAAE,gBAAgB;IACzB,QAAQ,EAAE,qBAAqB,EAAE,4CAA4C;IAC7E,IAAI,EAAE,WAAW,EAAE,2DAA2D;IAC9E,KAAK,EAAE,mBAAmB;CAClB,CAAC;AAEX;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAClC,KAAiB,EACjB,IAAmB,EACnB,KAA2B;IAE3B,+CAA+C;IAC/C,MAAM,YAAY,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACtD,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,8DAA8D;IAC9D,6EAA6E;IAC7E,IAAI,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAE,CAAC;QAC3C,OAAO,GAAG,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC;IAC1C,CAAC;IAED,oEAAoE;IACpE,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;QAClD,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,8DAA8D;IAC9D,MAAM,UAAU,GAAG,iBAAiB,CAAC,KAAK,CAAC,IAAsC,CAAC,CAAC;IACnF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,oCAAoC;IACpC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC;IACxE,IAAI,OAAO,EAAE,CAAC;QACZ,mDAAmD;QACnD,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,kCAAkC;IAClC,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAC5B,KAAiB,EACjB,IAAmB,EACnB,KAA2B;IAE3B,IAAI,QAAQ,GAAG,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAExD,gBAAgB;IAChB,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,QAAQ,GAAG,gBAAgB,QAAQ,GAAG,CAAC;IACzC,CAAC;IAED,wEAAwE;IACxE,yFAAyF;IACzF,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,QAAQ,GAAG,iBAAiB,QAAQ,GAAG,CAAC;IAC1C,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"type.js","sourceRoot":"","sources":["../../src/effect/type.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,uBAAuB,IAAI,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEzF;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAClC,KAAiB,EACjB,IAAmB,EACnB,KAA2B;IAE3B,+CAA+C;IAC/C,MAAM,YAAY,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACtD,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,8DAA8D;IAC9D,6EAA6E;IAC7E,IAAI,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAE,CAAC;QAC3C,OAAO,GAAG,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC;IAC1C,CAAC;IAED,oEAAoE;IACpE,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;QAClD,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,8DAA8D;IAC9D,MAAM,UAAU,GAAG,iBAAiB,CAAC,KAAK,CAAC,IAAsC,CAAC,CAAC;IACnF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,oCAAoC;IACpC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC;IACxE,IAAI,OAAO,EAAE,CAAC;QACZ,mDAAmD;QACnD,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,kCAAkC;IAClC,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAC5B,KAAiB,EACjB,IAAmB,EACnB,KAA2B;IAE3B,IAAI,QAAQ,GAAG,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAExD,gBAAgB;IAChB,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,QAAQ,GAAG,gBAAgB,QAAQ,GAAG,CAAC;IACzC,CAAC;IAED,wEAAwE;IACxE,yFAAyF;IACzF,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,QAAQ,GAAG,iBAAiB,QAAQ,GAAG,CAAC;IAC1C,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -183,6 +183,30 @@ export type JsonValue = string | number | boolean | null | ReadonlyArray<JsonVal
183
183
  readonly [key: string]: JsonValue;
184
184
  };
185
185
  export declare const JsonValue: Schema.Schema<JsonValue, JsonValue>;
186
+ /**
187
+ * Dual-input Date schema. Accepts both `Date` instances (from Kysely / pg
188
+ * driver, in-memory rows) and ISO date strings (from JSON wire transport)
189
+ * on the Encoded side. Always produces a valid `Date` on the Type side.
190
+ *
191
+ * - **Type** = `Date`
192
+ * - **Encoded** = `Date | string`
193
+ *
194
+ * Decode resolution: tries `DateFromSelf` first (cheapest, identity); falls
195
+ * through to `Schema.Date` for ISO strings. Both reject invalid dates.
196
+ *
197
+ * Encode direction: Kysely receives Date instances (the schema's first
198
+ * union member is identity-encoded), so DA writes work transparently.
199
+ *
200
+ * This is the canonical mapping for Prisma DateTime columns because
201
+ * generated schemas are consumed at TWO boundaries:
202
+ * 1. Kysely DA layer: native Date instances on both sides.
203
+ * 2. RPC/HTTP wire: ISO strings on the Encoded side.
204
+ *
205
+ * `JsonValue` (above) follows the same dual-boundary discipline by being
206
+ * Type === Encoded === plain JSON primitives. `DateFromInput` extends the
207
+ * pattern to a primitive (Date) that JSON cannot natively represent.
208
+ */
209
+ export declare const DateFromInput: Schema.Schema<Date, Date | string>;
186
210
  /**
187
211
  * Extract the insert type from a field using the __insert__ phantom property:
188
212
  * - ColumnType<S, I, U> -> I (via __insert__)
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/kysely/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/kysely/helpers.ts"],"names":[],"mappings":"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"}
@@ -55,6 +55,33 @@ export const generated = (schema) => {
55
55
  return Object.assign(annotated, { from: schema });
56
56
  };
57
57
  export const JsonValue = Schema.suspend(() => Schema.Union(Schema.String, Schema.Number, Schema.Boolean, Schema.Null, Schema.Array(JsonValue), Schema.Record({ key: Schema.String, value: JsonValue })));
58
+ // ============================================================================
59
+ // DateFromInput Schema (dual-input Date — accepts Date instances OR ISO strings)
60
+ // ============================================================================
61
+ /**
62
+ * Dual-input Date schema. Accepts both `Date` instances (from Kysely / pg
63
+ * driver, in-memory rows) and ISO date strings (from JSON wire transport)
64
+ * on the Encoded side. Always produces a valid `Date` on the Type side.
65
+ *
66
+ * - **Type** = `Date`
67
+ * - **Encoded** = `Date | string`
68
+ *
69
+ * Decode resolution: tries `DateFromSelf` first (cheapest, identity); falls
70
+ * through to `Schema.Date` for ISO strings. Both reject invalid dates.
71
+ *
72
+ * Encode direction: Kysely receives Date instances (the schema's first
73
+ * union member is identity-encoded), so DA writes work transparently.
74
+ *
75
+ * This is the canonical mapping for Prisma DateTime columns because
76
+ * generated schemas are consumed at TWO boundaries:
77
+ * 1. Kysely DA layer: native Date instances on both sides.
78
+ * 2. RPC/HTTP wire: ISO strings on the Encoded side.
79
+ *
80
+ * `JsonValue` (above) follows the same dual-boundary discipline by being
81
+ * Type === Encoded === plain JSON primitives. `DateFromInput` extends the
82
+ * pattern to a primitive (Date) that JSON cannot natively represent.
83
+ */
84
+ export const DateFromInput = Schema.Union(Schema.DateFromSelf, Schema.Date);
58
85
  /**
59
86
  * Schema for validating column type annotations structure
60
87
  */
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/kysely/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/kysely/helpers.ts"],"names":[],"mappings":"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"}
@@ -11,11 +11,14 @@
11
11
  * Prisma scalar type mapping to Effect Schema types
12
12
  * Uses const assertion for type safety
13
13
  *
14
- * Note: DateTime uses Schema.DateFromSelf (not Schema.Date) so that:
14
+ * DateTime uses `DateFromInput` (this package's dual-input Date schema):
15
15
  * - Type = Date (runtime)
16
- * - Encoded = Date (database)
17
- * This allows Kysely to work with native Date objects directly.
18
- * Schema.Date would encode to string, requiring ISO string conversions.
16
+ * - Encoded = Date | string (accepts native Date from Kysely AND ISO
17
+ * string from JSON wire transport)
18
+ *
19
+ * Single primitive serves both consumer boundaries — DA layer and RPC
20
+ * wire — so consumers don't need parallel schemas or boundary-specific
21
+ * helpers. Mirrors the JsonValue dual-boundary pattern.
19
22
  */
20
23
  export declare const PRISMA_TO_EFFECT_SCHEMA: {
21
24
  readonly String: "Schema.String";
@@ -24,7 +27,7 @@ export declare const PRISMA_TO_EFFECT_SCHEMA: {
24
27
  readonly BigInt: "Schema.BigInt";
25
28
  readonly Decimal: "Schema.String";
26
29
  readonly Boolean: "Schema.Boolean";
27
- readonly DateTime: "Schema.DateFromSelf";
30
+ readonly DateTime: "DateFromInput";
28
31
  readonly Json: "JsonValue";
29
32
  readonly Bytes: "Schema.Uint8Array";
30
33
  };
@@ -54,7 +57,7 @@ export declare function isPrismaScalarType(type: string): type is PrismaScalarTy
54
57
  * Get Effect Schema type for a Prisma scalar type
55
58
  * Returns undefined for non-scalar types (enums, relations)
56
59
  */
57
- export declare function getEffectSchemaType(type: string): "Schema.String" | "Schema.Number" | "Schema.BigInt" | "Schema.Boolean" | "Schema.DateFromSelf" | "JsonValue" | "Schema.Uint8Array" | undefined;
60
+ export declare function getEffectSchemaType(type: string): "Schema.String" | "Schema.Number" | "Schema.BigInt" | "Schema.Boolean" | "DateFromInput" | "JsonValue" | "Schema.Uint8Array" | undefined;
58
61
  /**
59
62
  * Get TypeScript type for a Prisma scalar type
60
63
  * Returns the input type unchanged for non-scalar types (enums, models)
@@ -1 +1 @@
1
- {"version":3,"file":"type-mappings.d.ts","sourceRoot":"","sources":["../../src/utils/type-mappings.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;CAU1B,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;CAUvB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,uBAAuB,CAAC;AAEpE;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,gBAAgB,CAEzE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,kJAK/C;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,UAK7C"}
1
+ {"version":3,"file":"type-mappings.d.ts","sourceRoot":"","sources":["../../src/utils/type-mappings.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;CAU1B,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;CAUvB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,uBAAuB,CAAC;AAEpE;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,gBAAgB,CAEzE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,4IAK/C;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,UAK7C"}
@@ -11,11 +11,14 @@
11
11
  * Prisma scalar type mapping to Effect Schema types
12
12
  * Uses const assertion for type safety
13
13
  *
14
- * Note: DateTime uses Schema.DateFromSelf (not Schema.Date) so that:
14
+ * DateTime uses `DateFromInput` (this package's dual-input Date schema):
15
15
  * - Type = Date (runtime)
16
- * - Encoded = Date (database)
17
- * This allows Kysely to work with native Date objects directly.
18
- * Schema.Date would encode to string, requiring ISO string conversions.
16
+ * - Encoded = Date | string (accepts native Date from Kysely AND ISO
17
+ * string from JSON wire transport)
18
+ *
19
+ * Single primitive serves both consumer boundaries — DA layer and RPC
20
+ * wire — so consumers don't need parallel schemas or boundary-specific
21
+ * helpers. Mirrors the JsonValue dual-boundary pattern.
19
22
  */
20
23
  export const PRISMA_TO_EFFECT_SCHEMA = {
21
24
  String: 'Schema.String',
@@ -24,7 +27,7 @@ export const PRISMA_TO_EFFECT_SCHEMA = {
24
27
  BigInt: 'Schema.BigInt',
25
28
  Decimal: 'Schema.String', // For precision
26
29
  Boolean: 'Schema.Boolean',
27
- DateTime: 'Schema.DateFromSelf', // Native Date type for Kysely compatibility
30
+ DateTime: 'DateFromInput', // Date | string ↔ Date dual-boundary safe
28
31
  Json: 'JsonValue', // Recursive JSON type — prevents null absorption in NullOr
29
32
  Bytes: 'Schema.Uint8Array',
30
33
  };
@@ -1 +1 @@
1
- {"version":3,"file":"type-mappings.js","sourceRoot":"","sources":["../../src/utils/type-mappings.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,MAAM,EAAE,eAAe;IACvB,GAAG,EAAE,eAAe;IACpB,KAAK,EAAE,eAAe;IACtB,MAAM,EAAE,eAAe;IACvB,OAAO,EAAE,eAAe,EAAE,gBAAgB;IAC1C,OAAO,EAAE,gBAAgB;IACzB,QAAQ,EAAE,qBAAqB,EAAE,4CAA4C;IAC7E,IAAI,EAAE,WAAW,EAAE,2DAA2D;IAC9E,KAAK,EAAE,mBAAmB;CAClB,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,QAAQ;IACb,KAAK,EAAE,QAAQ;IACf,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,MAAM;IAChB,IAAI,EAAE,WAAW;IACjB,KAAK,EAAE,QAAQ;IACf,OAAO,EAAE,QAAQ;IACjB,MAAM,EAAE,QAAQ,EAAE,oBAAoB;CAC9B,CAAC;AAOX;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,IAAI,IAAI,uBAAuB,CAAC;AACzC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,OAAO,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"type-mappings.js","sourceRoot":"","sources":["../../src/utils/type-mappings.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,MAAM,EAAE,eAAe;IACvB,GAAG,EAAE,eAAe;IACpB,KAAK,EAAE,eAAe;IACtB,MAAM,EAAE,eAAe;IACvB,OAAO,EAAE,eAAe,EAAE,gBAAgB;IAC1C,OAAO,EAAE,gBAAgB;IACzB,QAAQ,EAAE,eAAe,EAAE,4CAA4C;IACvE,IAAI,EAAE,WAAW,EAAE,2DAA2D;IAC9E,KAAK,EAAE,mBAAmB;CAClB,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,QAAQ;IACb,KAAK,EAAE,QAAQ;IACf,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,MAAM;IAChB,IAAI,EAAE,WAAW;IACjB,KAAK,EAAE,QAAQ;IACf,OAAO,EAAE,QAAQ;IACjB,MAAM,EAAE,QAAQ,EAAE,oBAAoB;CAC9B,CAAC;AAOX;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,IAAI,IAAI,uBAAuB,CAAC;AACzC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,OAAO,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prisma-effect-kysely",
3
- "version": "5.5.0",
3
+ "version": "5.6.0",
4
4
  "description": "Prisma generator that creates Effect Schema types from Prisma schema compatible with Kysely",
5
5
  "license": "MIT",
6
6
  "author": "Samuel Ho",