@pramen/server 0.0.2 → 0.0.3

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.
@@ -52,7 +52,7 @@ type RelTargetTable<S extends SchemaDef, R> = R extends {
52
52
  /** A `where` clause: column predicates + AND/OR, plus relation keys that take a
53
53
  * nested `WhereClause` over the related entity (traversal). */
54
54
  export type WhereClause<S extends SchemaDef, T extends keyof S, D extends number = 5> = WhereInput<FieldsOf<S[T]>> & ([D] extends [never] ? object : {
55
- [K in keyof RelationsOf<S[T]>]?: WhereClause<S, RelTargetTable<S, RelationsOf<S[T]>[K]>, PrevDepth[D]>;
55
+ [K in keyof RelationsOf<S[T]> as string extends K ? never : number extends K ? never : K]?: WhereClause<S, RelTargetTable<S, RelationsOf<S[T]>[K]>, PrevDepth[D]>;
56
56
  });
57
57
  /** Patch input for updates: every column optional, value typed (nullable). */
58
58
  export type InferUpdate<F extends EntityFields> = Partial<{
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pramen/server",
3
- "version": "0.0.2",
3
+ "version": "0.0.3",
4
4
  "description": "pramen server runtime — schema, ACL, ORM, live queries, files, and the createPramen(app) factory for Cloudflare Workers + Durable Objects.",
5
5
  "license": "MIT",
6
6
  "repository": {
package/src/sdk/infer.ts CHANGED
@@ -76,7 +76,14 @@ export type WhereClause<S extends SchemaDef, T extends keyof S, D extends number
76
76
  ([D] extends [never]
77
77
  ? object
78
78
  : {
79
- [K in keyof RelationsOf<S[T]>]?: WhereClause<S, RelTargetTable<S, RelationsOf<S[T]>[K]>, PrevDepth[D]>;
79
+ // Remap away the `string`/`number` index keys so a relationless entity
80
+ // (RelationsOf = Record<string, never>) contributes `{}`, not an index
81
+ // signature that would reject every column key in the WhereInput half.
82
+ [K in keyof RelationsOf<S[T]> as string extends K ? never : number extends K ? never : K]?: WhereClause<
83
+ S,
84
+ RelTargetTable<S, RelationsOf<S[T]>[K]>,
85
+ PrevDepth[D]
86
+ >;
80
87
  });
81
88
 
82
89
  /** Patch input for updates: every column optional, value typed (nullable). */