@typesql/core 0.6.1 → 0.7.1

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,23 @@
1
1
  # @typesql/core
2
2
 
3
+ ## 0.7.1
4
+
5
+ ### Patch Changes
6
+
7
+ - Reuse a shared index for cached SQL calls and discard stale entries when writing schema changes.
8
+
9
+ - Remove Node.js version requirement from the package README.
10
+
11
+ ## 0.7.0
12
+
13
+ ### Minor Changes
14
+
15
+ - `sql.combine(items, { separator })` replaces `sql.join(items, separator)`; editors suggest `", "`, `" AND "`, and `" OR "` while accepting other separator strings.
16
+
17
+ ### Patch Changes
18
+
19
+ - Reject forged slot objects in queries by branding fragments and queries with a WeakSet.
20
+
3
21
  ## 0.6.1
4
22
 
5
23
  ### Patch Changes
package/README.md CHANGED
@@ -8,7 +8,7 @@ Write Postgres SQL in TypeScript and get exact types for rows and parameters. Ty
8
8
  npm install @typesql/core
9
9
  ```
10
10
 
11
- Requires TypeScript 7.1 or later and Node.js 26 or later.
11
+ Requires TypeScript 7.1 or later.
12
12
 
13
13
  ## Usage
14
14
 
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/cache/format.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,MAAM,IAAI,CAAC;AAExB,MAAM,WAAW,SAAS;IACzB,QAAQ,CAAC,YAAY,EAAE,OAAO,MAAM,CAAC;IACrC,8DAA8D;IAC9D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,+FAA+F;IAC/F,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,CAAA;KAAE,CAAC;IACrD,sEAAsE;IACtE,QAAQ,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAClD,uEAAuE;IACvE,QAAQ,CAAC,GAAG,EAAE;QAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,QAAQ,EAAE,CAAA;KAAE,CAAC;IAC9D;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAA;KAAE,CAAC;CACjE;AAED,MAAM,WAAW,QAAQ;IACxB,wCAAwC;IACxC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,mFAAmF;IACnF,QAAQ,CAAC,CAAC,EAAE;QACX,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;KACnE,CAAC;IACF,kCAAkC;IAClC,QAAQ,CAAC,CAAC,EAAE;QAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CAChD;AAED,MAAM,WAAW,KAAM,SAAQ,QAAQ;IACtC,uBAAuB;IACvB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,KAAK,CAAA;KAAE,CAAC;CACpD;AAED,MAAM,WAAW,KAAK;IACrB,iDAAiD;IACjD,QAAQ,CAAC,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,mIAAmI;IACnI,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;IACpB,sEAAsE;IACtE,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,SAAS,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,SAAS;IACzB,+BAA+B;IAC/B,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACxB,QAAQ,CAAC,CAAC,EAAE,QAAQ,GAAG;QAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjD,QAAQ,CAAC,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,kEAAkE;IAClE,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,UAAU,WAAY,MAAM,KAAG,SAO1C,CAAC;AAEH,sGAAsG;AACtG,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAkBzD;AAaD,oGAAoG;AACpG,eAAO,MAAM,cAAc,SAAU,SAAS,KAAG,MACJ,CAAC;AAE9C,6EAA6E;AAC7E,eAAO,MAAM,SAAS,MAAO,OAAO,KAAG,MAAmC,CAAC;AAE3E,eAAO,MAAM,IAAI,SAAU,MAAM,sBAAgB,MACgB,CAAC;AAclE;;;;GAIG;AACH,wBAAgB,MAAM,CACrB,IAAI,EAAE,SAAS,GAAG,IAAI,EACtB,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,GACZ,MAAM,CAmDR;AAED,kEAAkE;AAClE,eAAO,MAAM,MAAM,aAAc,MAAM,KAAG,MAA2B,CAAC"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/cache/format.ts"],"names":[],"mappings":"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"}
@@ -77,6 +77,9 @@ export function render(file, id, engine) {
77
77
  const entries = Object.entries(group.entries);
78
78
  if (!entries.length)
79
79
  continue;
80
+ const calls = Object.groupBy(entries.flatMap(([text, e]) => (e.c ?? []).map((c) => ({ text, ...c }))), (c) => `${c.m}#${c.k}`);
81
+ for (const [key, cs] of Object.entries(calls))
82
+ snapshots.push(` ${lit(`${id}#${g}#${key}`)}: D_${g} & { m: M_${cs[0].m}; k: ${cs[0].k}; c: {${cs.map((c) => `${lit(c.text)}: { m: M_${c.m}; k: ${c.k}; g: ${c.g}; p: ${c.p}; q: ${c.q} };`).join(" ")} } };`);
80
83
  out.push(`type D_${g} = { v: ${lit(file.engine)}; t: ${group.t}; w: ${words(group.w)}; q: ${pairs(group.q)}; h: ${group.h} };\n`);
81
84
  snapshots.push(` ${lit(`${id}#${g}`)}: D_${g};`);
82
85
  const body = entries.map(([key, e]) => {
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/cache/format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/cache/format.ts"],"names":[],"mappings":"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"}
@@ -16,8 +16,9 @@ export declare const ddlEntryId: (key: string) => string;
16
16
  export declare function readCache(path: string, engine: string): CacheFile;
17
17
  /**
18
18
  * `file` with `owner`'s entries replaced by `mine`. Entries of other owners stay, with the
19
- * word and pair snapshots they depend on (a snapshot `mine` recomputed replaces the old one:
20
- * an entry of another project that depended on the old one is stale until its job runs).
19
+ * word and pair snapshots they depend on. When a snapshot changes, discard the old group's
20
+ * entries and ownership before installing the new snapshot: retained calls must never be
21
+ * presented as results computed against a newer schema. Other projects regenerate their entries.
21
22
  */
22
23
  export declare function merge(file: CacheFile, mine: Contribution, owner: string): CacheFile;
23
24
  /** Run `fn` holding `<path>.lock`; a lock older than `staleMs` is taken over (its holder died). */
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/cache/store.ts"],"names":[],"mappings":"AAiBA,OAAO,EACN,KAAK,SAAS,EACd,KAAK,QAAQ,EAGb,KAAK,KAAK,EAGV,MAAM,aAAa,CAAC;AAErB,8CAA8C;AAC9C,MAAM,WAAW,YAAY;IAC5B,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,CAAA;KAAE,CAAC;IACrD,QAAQ,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAClD,QAAQ,CAAC,GAAG,EAAE;QAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,QAAQ,EAAE,CAAA;KAAE,CAAC;CAC9D;AAED,eAAO,MAAM,YAAY,UAAW,MAAM,OAAO,MAAM,KAAG,MACvC,CAAC;AACpB,eAAO,MAAM,UAAU,QAAS,MAAM,KAAG,MAAuB,CAAC;AAEjE,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CASjE;AAED;;;;GAIG;AACH,wBAAgB,KAAK,CACpB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,MAAM,GACX,SAAS,CAsGX;AAED,mGAAmG;AACnG,wBAAsB,QAAQ,CAAC,CAAC,EAC/B,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,OAAO,SAAS,GACd,OAAO,CAAC,CAAC,CAAC,CAyBZ;AAED,oGAAoG;AACpG,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAWjE"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/cache/store.ts"],"names":[],"mappings":"AAiBA,OAAO,EACN,KAAK,SAAS,EACd,KAAK,QAAQ,EAGb,KAAK,KAAK,EAGV,MAAM,aAAa,CAAC;AAErB,8CAA8C;AAC9C,MAAM,WAAW,YAAY;IAC5B,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,CAAA;KAAE,CAAC;IACrD,QAAQ,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAClD,QAAQ,CAAC,GAAG,EAAE;QAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,QAAQ,EAAE,CAAA;KAAE,CAAC;CAC9D;AAED,eAAO,MAAM,YAAY,UAAW,MAAM,OAAO,MAAM,KAAG,MACvC,CAAC;AACpB,eAAO,MAAM,UAAU,QAAS,MAAM,KAAG,MAAuB,CAAC;AAEjE,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CASjE;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CACpB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,MAAM,GACX,SAAS,CAuHX;AAED,mGAAmG;AACnG,wBAAsB,QAAQ,CAAC,CAAC,EAC/B,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,OAAO,SAAS,GACd,OAAO,CAAC,CAAC,CAAC,CAyBZ;AAED,oGAAoG;AACpG,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAWjE"}
@@ -23,8 +23,9 @@ export function readCache(path, engine) {
23
23
  }
24
24
  /**
25
25
  * `file` with `owner`'s entries replaced by `mine`. Entries of other owners stay, with the
26
- * word and pair snapshots they depend on (a snapshot `mine` recomputed replaces the old one:
27
- * an entry of another project that depended on the old one is stale until its job runs).
26
+ * word and pair snapshots they depend on. When a snapshot changes, discard the old group's
27
+ * entries and ownership before installing the new snapshot: retained calls must never be
28
+ * presented as results computed against a newer schema. Other projects regenerate their entries.
28
29
  */
29
30
  export function merge(file, mine, owner) {
30
31
  const owners = {};
@@ -58,6 +59,16 @@ export function merge(file, mine, owner) {
58
59
  entries: {},
59
60
  };
60
61
  const target = groups[g];
62
+ if (target.t !== group.t ||
63
+ target.h !== group.h ||
64
+ ["w", "q"].some((k) => Object.entries(group[k]).some(([key, value]) => Object.hasOwn(target[k], key) &&
65
+ JSON.stringify(target[k][key]) !== JSON.stringify(value)))) {
66
+ for (const key of Object.keys(target.entries))
67
+ delete owners[groupEntryId(g, key)];
68
+ target.entries = {};
69
+ target.w = {};
70
+ target.q = {};
71
+ }
61
72
  target.t = group.t;
62
73
  target.h = group.h;
63
74
  Object.assign(target.w, group.w);
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/cache/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/cache/store.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { CallEntry, FreshVariants, IsUnion, OneOf, QueryCacheKeys, Same, Second } from "./engine/cache.js";
1
+ import type { CacheSnapshots, CallEntry, IsUnion, ReadyCallTable } from "./engine/cache.js";
2
2
  import type { AnyErr, SqlError } from "./engine/errors.js";
3
3
  import type { ArgsOf, ParamsOf, RowOf, Validate } from "./engine/infer.js";
4
4
  import type { CheckCarried, HasDefaultable, InlineMarker, JsonMarker, RewriteInlineStr, Skip, ValueEnc, WithDefaults } from "./engine/inline.js";
@@ -174,7 +174,7 @@ type PairTexts<Ps extends readonly unknown[]> = {
174
174
  };
175
175
  };
176
176
  /**
177
- * The representative statement piece of `sql.join(items, sep)` over an array: every distinct
177
+ * The representative statement piece of `sql.combine(items, { separator: sep })` over an array: every distinct
178
178
  * element once, joined with `Sep` and renumbered, plus the values those elements carry. A
179
179
  * statement that is valid with each element present once is valid for any count and order of
180
180
  * them in a list position (ORDER BY, SET, VALUES rows, AND chains, …), so one analysis covers
@@ -192,17 +192,20 @@ export type ListRep<E, Sep extends string> = [E] extends [never] ? {
192
192
  readonly carried: PairCarried<Ps>;
193
193
  } : never : never;
194
194
  /**
195
- * `sql.join(items, sep)`: a tuple keeps the literal text (and the values in order), an array is
195
+ * `sql.combine(items, { separator: sep })`: a tuple keeps the literal text (and the values in order), an array is
196
196
  * typed by its representative piece (`ListRep`).
197
197
  */
198
- type JoinOf<Items extends readonly Slottable[], Sep extends string> = number extends Items["length"] ? Fragment<ListRep<Items[number], Sep>["text"], readonly unknown[], ListRep<Items[number], Sep>["carried"]> : Fragment<JoinedText<SlotTexts<Items> extends readonly {
198
+ type CombineOf<Items extends readonly Slottable[], Sep extends string> = string extends Sep ? Fragment<string, readonly unknown[], []> : number extends Items["length"] ? Fragment<ListRep<Items[number], Sep>["text"], readonly unknown[], ListRep<Items[number], Sep>["carried"]> : Fragment<JoinedText<SlotTexts<Items> extends readonly {
199
199
  readonly text: string;
200
200
  }[] ? SlotTexts<Items> : never, Sep>, readonly unknown[], JoinedCarried<Items>>;
201
- type GateCallCheck<DB, TM, Keys, Q extends string> = [DB, TM, Q] extends [
201
+ /** Suggested separators in editors; other strings still retain their literal type. */
202
+ type CombineSeparator = ", " | " AND " | " OR " | (string & {});
203
+ type GateCallCheck<DB, TM, Keys, Q extends string> = CallCached<DB, TM, Keys, Q> extends infer C extends CallEntry ? [C] extends [never] ? InferredCheck<DB, TM, Q> : C["g"] : never;
204
+ type InferredCheck<DB, TM, Q extends string> = [DB, TM, Q] extends [
202
205
  infer D,
203
206
  infer M,
204
207
  infer Q2 extends string
205
- ] ? [Q2] extends [keyof QueryCacheKeys] ? CallCached<D, M, Keys, Q2> extends infer C ? [C] extends [never] ? Surface<CallCheck<D, M, Q2>> : C extends CallEntry ? C["g"] : never : never : Surface<CallCheck<D, M, Q2>> : never;
208
+ ] ? Surface<CallCheck<D, M, Q2>> : never;
206
209
  type GateSlottedCheck<DB, TM, Q extends string, S> = [DB, TM, Q, S] extends [
207
210
  infer D,
208
211
  infer M,
@@ -214,7 +217,7 @@ type GateFragCheck<Text extends string, Slotted extends boolean> = [
214
217
  Slotted
215
218
  ] extends [infer T2 extends string, infer B extends boolean] ? Surface<FragCheck<T2, B>> : never;
216
219
  type BoxCallArgs<DB, TM, Keys, Q extends string> = Extract<{
217
- [K in Q as `${K}`]: [K] extends [keyof QueryCacheKeys] ? CallCached<DB, TM, Keys, K> extends infer C ? [C] extends [never] ? CallArgs<DB, TM, K> : C extends CallEntry ? C["p"] : never : never : CallArgs<DB, TM, K>;
220
+ [K in Q as `${K}`]: CallCached<DB, TM, Keys, K> extends infer C extends CallEntry ? [C] extends [never] ? CallArgs<DB, TM, K> : C["p"] : never;
218
221
  }[`${Q}`], readonly unknown[]>;
219
222
  type BoxSlottedArgs<DB, TM, Q extends string, S> = Extract<{
220
223
  [K in Q as `${K}`]: SlottedArgs<DB, TM, K, S>;
@@ -227,10 +230,10 @@ type BoxFragArgs<Text extends string> = Extract<{
227
230
  * replaces the check, the arguments and the return type below with what they were when the
228
231
  * entry was computed, so the call skips the text rewrites and the row and parameter builders.
229
232
  */
230
- /** The cached call (`never` on a miss), for a key of `QueryCacheKeys`. Exported for tests. */
231
- export type CallCached<DB, TM, Keys, Q extends string> = IsUnion<Q> extends true ? never : Second<OneOf<FreshVariants<DB, Q> extends infer V ? V extends [infer G, {
232
- readonly c: infer C extends CallEntry;
233
- }] ? C extends unknown ? [Keys] extends [C["k"]] ? Same<TM, C["m"]> extends true ? [G, C] : never : never : never : never : never>>;
233
+ /** The cached call (`never` on a miss), from the shared call index. Exported for tests. */
234
+ export type CallCached<DB, TM, Keys, Q extends string> = [
235
+ keyof CacheSnapshots
236
+ ] extends [never] ? never : IsUnion<Q> extends true ? never : [Q] extends [keyof ReadyCallTable<DB, TM, Keys>] ? ReadyCallTable<DB, TM, Keys>[Q] : never;
234
237
  /**
235
238
  * What the type cache stores for the plain call `sql(Q, …)` (engine/cache.ts `CallEntry`): the
236
239
  * query argument's check, the arguments after it and the return type. The cache job's probe file
@@ -247,8 +250,8 @@ export type CallTypes<DB, TM, Keys extends RowKeys, Q extends string> = {
247
250
  * did before.
248
251
  */
249
252
  type CallRet<DB, TM, Keys extends RowKeys, Q extends string> = [Q] extends [
250
- keyof QueryCacheKeys
251
- ] ? CallCached<DB, TM, Keys, Q> extends infer C ? [C] extends [never] ? Query<KeyedRow<RowOf<DB, TM, PText<Q>>, Keys>, ParamsOf<DB, TM, PText<Q>>, PText<Q>> : C extends CallEntry ? C["q"] : never : never : Query<KeyedRow<RowOf<DB, TM, PText<Q>>, Keys>, ParamsOf<DB, TM, PText<Q>>, PText<Q>>;
253
+ infer Q extends string
254
+ ] ? CallCached<DB, TM, Keys, Q> extends infer C extends CallEntry ? [C] extends [never] ? Query<KeyedRow<RowOf<DB, TM, PText<Q>>, Keys>, ParamsOf<DB, TM, PText<Q>>, PText<Q>> : C["q"] : never : never;
252
255
  /**
253
256
  * The typed SQL function returned by `createSql<DB, TypeMap>()`.
254
257
  *
@@ -313,13 +316,15 @@ export interface Sql<DB, TM, Keys extends RowKeys = "preserve"> {
313
316
  /** Any other name (`string`, a generic): a dynamic fragment, for `sql.as<Row>()`. */
314
317
  id(...parts: readonly [string, ...string[]]): Fragment<string, [], []>;
315
318
  /**
316
- * Join fragments with a separator: `sql.join([a, b], " AND ")`, or a runtime array of
317
- * fragments whose texts are known, `sql.join(keys.map((k) => SORT[k]))`. A tuple keeps the
319
+ * Combine fragments with a separator: `sql.combine([a, b], { separator: " AND " })`, or a runtime array of
320
+ * fragments whose texts are known, `sql.combine(keys.map((k) => SORT[k]))`. A tuple keeps the
318
321
  * literal text. For an array the count and order are dynamic, but every element type is a
319
322
  * literal, so the statement is still checked: it is validated once with each distinct element
320
323
  * present (see `ListRep`). Throws at runtime when there are no items.
321
324
  */
322
- join<const Items extends readonly Slottable[], const Sep extends string = ", ">(items: Items, separator?: Sep): JoinOf<Items, Sep>;
325
+ combine<const Items extends readonly Slottable[], const Sep extends CombineSeparator = ", ">(items: Items, options?: {
326
+ readonly separator?: Sep;
327
+ }): CombineOf<Items, Sep>;
323
328
  /**
324
329
  * `SET` list from an object: `sql("UPDATE users SET {set} WHERE id = $1", { set: sql.set("users", input) }, id)`.
325
330
  * Keys must be columns of `table` and values must fit them; `undefined` values are skipped.
@@ -1 +1 @@
1
- {"version":3,"file":"create-sql.d.ts","sourceRoot":"","sources":["../src/create-sql.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-sql.d.ts","sourceRoot":"","sources":["../src/create-sql.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { makeFragment, makeQuery, } from "./query.js";
1
+ import { isSlottable, makeFragment, makeQuery, } from "./query.js";
2
2
  import { hasInline, param, resolveInline, takeValue, } from "./runtime/inline.js";
3
3
  import { json } from "./runtime/json.js";
4
4
  import { joinFragments, maxParam, quoteIdent, rewriteNamedOnce, splice, } from "./runtime/splice.js";
@@ -6,11 +6,11 @@ import { buildSet, buildValues } from "./runtime/write.js";
6
6
  function isSlotMap(v) {
7
7
  if (v === null || typeof v !== "object" || Array.isArray(v))
8
8
  return false;
9
- for (const x of Object.values(v)) {
10
- if (x === null ||
11
- typeof x !== "object" ||
12
- typeof x.text !== "string" ||
13
- !Array.isArray(x.values))
9
+ const values = Object.values(v);
10
+ if (values.length === 0)
11
+ return false;
12
+ for (const x of values) {
13
+ if (!isSlottable(x))
14
14
  return false;
15
15
  }
16
16
  return true;
@@ -73,10 +73,10 @@ export function createSql(executor, options) {
73
73
  return makeFragment(r.text, r.values);
74
74
  },
75
75
  id: (...parts) => makeFragment(quoteIdent(...parts), []),
76
- join: (items, separator = ", ") => {
76
+ combine: (items, options) => {
77
77
  if (items.length === 0)
78
- throw new Error("typesql: sql.join() needs at least one item; put a fixed element first (`[base, ...rest]`) or skip the clause");
79
- const r = joinFragments(items, separator);
78
+ throw new Error("typesql: sql.combine() needs at least one item; put a fixed element first (`[base, ...rest]`) or skip the clause");
79
+ const r = joinFragments(items, options?.separator ?? ", ");
80
80
  return makeFragment(r.text, r.values);
81
81
  },
82
82
  set: (_table, values) => {
@@ -1 +1 @@
1
- {"version":3,"file":"create-sql.js","sourceRoot":"","sources":["../src/create-sql.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-sql.js","sourceRoot":"","sources":["../src/create-sql.ts"],"names":[],"mappings":"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"}
@@ -51,7 +51,7 @@ export interface DdlCacheKeys {
51
51
  * Version of the engine's output. An entry computed by another version is never used. It is a
52
52
  * hash of the type-level sources, kept up to date by `node scripts/cache-version.ts`.
53
53
  */
54
- export type CacheVersion = "f5679a2f8325";
54
+ export type CacheVersion = "0bcf710b83e8";
55
55
  /** A relation, function or catalog entry that did not exist when the entry was computed. */
56
56
  export interface Missing {
57
57
  readonly "typesql.missing": true;
@@ -172,6 +172,20 @@ export type CallEntry = {
172
172
  * interfaces are parameters (defaulting to the augmented ones) so that tests can pass their own.
173
173
  */
174
174
  type GroupStale<DB, G, Snaps> = G extends keyof Snaps ? Snaps[G] extends infer D extends DbSnapshot ? Stale<DB, D> : "*" : "*";
175
+ /** Select compatible call groups once per schema, type map and row-key mode. */
176
+ export type ReadyCallTable<DB, TM, Keys, Snaps = CacheSnapshots> = [
177
+ DB,
178
+ TM,
179
+ Keys
180
+ ] extends [infer D, infer M, infer K] ? MergeCalls<ReadyCalls<D, M, K, Snaps>> : never;
181
+ type MergeCalls<T> = [T] extends [never] ? {} : UnionToIntersection<T>;
182
+ type ReadyCalls<DB, TM, Keys, Snaps> = {
183
+ [G in keyof Snaps]: Snaps[G] extends {
184
+ m: infer M;
185
+ k: infer K;
186
+ c: infer Q extends Record<string, CallEntry>;
187
+ } ? [Keys] extends [K] ? Same<TM, M> extends true ? [GroupStale<DB, G, Snaps>] extends [never] ? Q : never : never : never : never;
188
+ }[keyof Snaps];
175
189
  /** The entry of `Q` in group `G` when its dependencies are unchanged in `DB`. */
176
190
  type FreshIn<DB, G, E, Snaps> = GroupStale<DB, G, Snaps> extends infer S ? [S] extends [never] ? E : E extends {
177
191
  readonly r: infer R;
@@ -1 +1 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/engine/cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/engine/cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,MAAM,WAAW,UAAU;CAAG;AAC9B,+CAA+C;AAE/C,MAAM,WAAW,cAAc;CAAG;AAClC,iEAAiE;AAEjE,MAAM,WAAW,cAAc;CAAG;AAElC;;;;GAIG;AAEH,MAAM,WAAW,QAAQ;CAAG;AAC5B,6CAA6C;AAE7C,MAAM,WAAW,YAAY;CAAG;AAEhC;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,cAAc,CAAC;AAE1C,4FAA4F;AAC5F,MAAM,WAAW,OAAO;IACvB,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC;CACjC;AACD;;;GAGG;AACH,MAAM,WAAW,OAAO;IACvB,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC;CACjC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,UAAU,GAAG;IACxB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,CAAC,EAAE;QACX,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS;YACjC,GAAG,EAAE,OAAO;YACZ,EAAE,EAAE,OAAO;YACX,EAAE,EAAE,OAAO;YACX,GAAG,EAAE,OAAO;SACZ,CAAC;KACF,CAAC;IACF,QAAQ,CAAC,CAAC,EAAE;QAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IACjD,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,KAAK,CAAC,EAAE,EAAE,CAAC,SAAS,UAAU,IACvC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,YAAY,GAAG,KAAK,GAAG,GAAG,CAAC,GAC3C,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,GAAG,CAAC,GACtD;KACC,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GACnE,KAAK,GACL,CAAC;CACH,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GACxB;KACC,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GACtE,KAAK,GACL,CAAC;CACH,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GACxB,CAAC,CAAC,SAAS;IAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;CAAE,GAChC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,IAAI,GAClC,KAAK,GACL,IAAI,GACL,KAAK,CAAC,GACR,CAAC,CAAC,SAAS;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;CAAE,GAClC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,IAAI,GACvB,KAAK,GACL,MAAM,GACP,KAAK,CAAC,CAAC;AAEZ;;;;;;GAMG;AACH,MAAM,MAAM,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACtD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC;AAC/E;;;GAGG;AACH,KAAK,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,OAAO,GACnD,CAAC,GACD,CAAC,SAAS;IAAE,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAA;CAAE,GAClD,CAAC,GACD,CAAC,SAAS,MAAM,GACf;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GAChC,CAAC,CAAC;AAEP,KAAK,SAAS,CAAC,EAAE,EAAE,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,SAAS,OAAO,EAAE,IAChE,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,GAC3D,KAAK,GACL,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,GACrC,KAAK,GACL,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,GACxC,KAAK,GACL,CAAC,CAAC,CAAC,CAAC,SAAS,OAAO,GACnB,IAAI,GACJ,IAAI,CACJ,CAAC,SAAS,MAAM,eAAe,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,OAAO,EAC9D,CAAC,CAAC,CAAC,CAAC,CACJ,CAAC;AAER,KAAK,KAAK,CAAC,EAAE,EAAE,CAAC,SAAS,MAAM,IAAI,EAAE,SAAS;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,GAC5E,CAAC,SAAS,MAAM,EAAE,GACjB,EAAE,CAAC,CAAC,CAAC,GACL,OAAO,GACR,OAAO,CAAC;AACX,KAAK,QAAQ,CAAC,EAAE,EAAE,CAAC,SAAS,MAAM,IAAI,EAAE,SAAS;IAChD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;CAC7B,GACE,CAAC,SAAS,MAAM,CAAC,GAChB,CAAC,CAAC,CAAC,CAAC,GACJ,OAAO,GACR,OAAO,CAAC;AACX,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,MAAM,CAAC,EAAE,GAClE,CAAC,SAAS,MAAM,EAAE,GACjB,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC,GACpB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GACR,OAAO,GACR,OAAO,GACR,OAAO,CAAC;AAEX;;;GAGG;AACH,MAAM,MAAM,SAAS,CAAC,EAAE,IAAI;KAC1B,CAAC,IAAI,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,SAAS,QAAQ,GAAG,YAAY,GACxD,KAAK,GACL,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAC7B,CAAC,GAAG,GAAG,CAAC,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAC5B;SACC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAC3D,CAAC,GAAG,GAAG,CAAC,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAC/B,KAAK;KACR,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;CAC1B,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC;AAErB,0FAA0F;AAC1F,MAAM,MAAM,UAAU,GAAG;IACxB,gEAAgE;IAChE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;IACrB,qFAAqF;IACrF,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC;CACvB,CAAC;AACF,MAAM,MAAM,SAAS,GAAG;IACvB,kEAAkE;IAClE,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,2EAA2E;IAC3E,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC;IACpB,iCAAiC;IACjC,QAAQ,CAAC,CAAC,EAAE,SAAS,OAAO,EAAE,CAAC;IAC/B,mBAAmB;IACnB,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF;;;GAGG;AACH,KAAK,UAAU,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC,SAAS,MAAM,KAAK,GAClD,KAAK,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,SAAS,UAAU,GAC1C,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GACZ,GAAG,GACJ,GAAG,CAAC;AAEP,gFAAgF;AAChF,MAAM,MAAM,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,GAAG,cAAc,IAAI;IAClE,EAAE;IACF,EAAE;IACF,IAAI;CACJ,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GAClC,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,GACtC,KAAK,CAAC;AACT,KAAK,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;AACvE,KAAK,UAAU,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,IAAI;KACrC,CAAC,IAAI,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS;QACpC,CAAC,EAAE,MAAM,CAAC,CAAC;QACX,CAAC,EAAE,MAAM,CAAC,CAAC;QACX,CAAC,EAAE,MAAM,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;KAC7C,GACE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GACjB,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,IAAI,GACvB,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GACzC,CAAC,GACD,KAAK,GACN,KAAK,GACN,KAAK,GACN,KAAK;CACR,CAAC,MAAM,KAAK,CAAC,CAAC;AAEf,iFAAiF;AACjF,KAAK,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,IAC3B,UAAU,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,SAAS,MAAM,CAAC,GACrC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAClB,CAAC,GACD,CAAC,SAAS;IAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;CAAE,GAChC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAC9B,CAAC,GACD,KAAK,GACN,KAAK,GACP,KAAK,CAAC;AAEV;;;;GAIG;AACH,MAAM,MAAM,aAAa,CACxB,EAAE,EACF,CAAC,SAAS,MAAM,EAChB,EAAE,GAAG,UAAU,EACf,KAAK,GAAG,cAAc,IACnB;KACF,CAAC,IAAI,MAAM,EAAE,GAAG,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC,GACnC,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,MAAM,CAAC,GAC9C,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAClB,KAAK,GACL,CAAC,CAAC,EAAE,CAAC,CAAC,GACP,KAAK,GACN,KAAK;CACR,CAAC,MAAM,EAAE,CAAC,CAAC;AAEZ;;;GAGG;AACH,MAAM,MAAM,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,SAAS,KAAK,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;AAChE,KAAK,MAAM,CAAC,CAAC,IACZ,mBAAmB,CAAC,CAAC,SAAS,OAAO,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,GAAG,KAAK,CAAC,SAAS,CACvE,CAAC,EAAE,MAAM,CAAC,KACN,IAAI,GACN,CAAC,GACD,KAAK,CAAC;AACV,KAAK,mBAAmB,CAAC,CAAC,IAAI,CAC7B,CAAC,SAAS,OAAO,GACd,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,GACd,KAAK,CACR,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,IAAI,GAC3B,CAAC,GACD,KAAK,CAAC;AAET,6FAA6F;AAC7F,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,OAAO,GAC9C,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GACd,KAAK,GACL,IAAI,GACL,KAAK,CAAC;AAET;;;GAGG;AACH,MAAM,MAAM,cAAc,CACzB,EAAE,EACF,CAAC,SAAS,MAAM,EAChB,EAAE,GAAG,UAAU,EACf,KAAK,GAAG,cAAc,IAEtB,OAAO,CAAC,CAAC,CAAC,SAAS,IAAI,GACpB,KAAK,GACL,MAAM,CACN,KAAK,CACJ,aAAa,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,SAAS,MAAM,CAAC,GAC5C,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;IAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;CAAE,CAAC,GAC3C,CAAC,CAAC,EAAE,CAAC,CAAC,GACN,KAAK,GACN,KAAK,CACR,CACD,CAAC;AAEL,uGAAuG;AACvG,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GACxC,KAAK,GACL,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,GAC3B,CAAC,GACD,KAAK,CAAC;AAIV;;;;GAIG;AACH,MAAM,MAAM,aAAa,CAAC,EAAE,EAAE,CAAC,SAAS,MAAM,IAC7C,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,GAC3B,CAAC,SAAS;IACV,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;CACxB,GACC;IACA,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IACjB,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;IAChB,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;CAClB,GACA,CAAC,GACF,KAAK,CAAC;AAEV;;;GAGG;AACH,MAAM,MAAM,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;CAAE,GACvE;IAAE,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAA;CAAE,GACnC,CAAC,SAAS,MAAM,GACf,CAAC,SAAS,SAAS,GAClB,MAAM,CAAC,CAAC,CAAC,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;CAAE,GACjD,CAAC,GACF,CAAC,SAAS,MAAM,GACf;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GAC/B,CAAC,CAAC;AAEP;;;GAGG;AACH,MAAM,MAAM,SAAS,CAAC,EAAE,EAAE,CAAC,SAAS,MAAM,EAAE,EAAE,GAAG,QAAQ,IACxD,OAAO,CAAC,CAAC,CAAC,SAAS,IAAI,GACpB,KAAK,GACL,KAAK,CACL,WAAW,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,MAAM,CAAC,GAC/B,CAAC,SAAS;IACV,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,SAAS,UAAU,CAAC;IACvC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;CACpB,GACC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GACzC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC,GAChB,KAAK,GACN,KAAK,GACN,KAAK,CACR,CAAC;AACL,KAAK,WAAW,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,IAAI;KACvC,CAAC,IAAI,MAAM,EAAE,GAAG,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK;CACzD,CAAC,MAAM,EAAE,CAAC,CAAC;AACZ,KAAK,SAAS,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS;IAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;CAAE,GACtD,CAAC,GACD,CAAC,SAAS;IAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;CAAE,GACrD,UAAU,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,GACpB,KAAK,CAAC;AAEV,wGAAwG;AACxG,MAAM,MAAM,SAAS,CAAC,MAAM,EAAE,KAAK,IAAI;IACtC,QAAQ,CAAC,CAAC,EAAE;SACV,CAAC,IAAI,MAAM,KAAK,IAAI,CAAC,SAAS,MAAM,MAAM,GACxC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GACrC,KAAK,GACL,CAAC,GACF,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;KACf,CAAC;IACF,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,MAAM,EAAE,MAAM,KAAK,CAAC,CAAC;CAC/C,CAAC"}
@@ -6,7 +6,7 @@ import type { Opaque, SplitFirst } from "./inline.js";
6
6
  * follow the parameters already present (outer `$n` first, then fragments in order).
7
7
  *
8
8
  * Only `{identifier}` is a slot; `'{1,2}'` or `'{"a":1}'` inside literals are left alone.
9
- * A fragment whose text is not a literal (`sql.raw`, `sql.join` over a non-tuple array)
9
+ * A fragment whose text is not a literal (`sql.raw`, `sql.combine` over a non-tuple array)
10
10
  * makes the result `string`, which `Validate` reports as a dynamic fragment.
11
11
  */
12
12
  export type Splice<Q extends string, S> = string extends Q ? string : SpliceLoop<Q, S, MaxParamStr<Q>, "">;
@@ -80,7 +80,7 @@ type LastOf<U> = UnionToIntersection<U extends unknown ? (x: U) => void : never>
80
80
  export type UnionList<U, Acc extends readonly unknown[] = []> = [U] extends [
81
81
  never
82
82
  ] ? Acc : LastOf<U> extends infer L ? UnionList<Exclude<U, L>, [L, ...Acc]> : never;
83
- /** Text of `sql.join([f1, f2], sep)` for tuple inputs; `string` for arrays. */
83
+ /** Text of `sql.combine([f1, f2], sep)` for tuple inputs; `string` for arrays. */
84
84
  export type JoinedText<Items extends readonly {
85
85
  readonly text: string;
86
86
  }[], Sep extends string, Off extends number = 0, Acc extends string = "", First extends boolean = true> = Items extends readonly [
@@ -1 +1 @@
1
- {"version":3,"file":"splice.d.ts","sourceRoot":"","sources":["../../src/engine/splice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"splice.d.ts","sourceRoot":"","sources":["../../src/engine/splice.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ import type { JoinedText, QuotedIdent, UnionList } from "./splice.js";
5
5
  /**
6
6
  * Types of the write helpers `sql.set(table, values)` and `sql.values(table, rows)`.
7
7
  *
8
- * Their runtime text depends on which keys are defined, so, like `sql.join` over an array, they
8
+ * Their runtime text depends on which keys are defined, so, like `sql.combine` over an array, they
9
9
  * are typed with a representative text: every key of the input type once (`"a" = $1, "b" = $2`
10
10
  * / `("a", "b") VALUES ($1, $2)`), carrying the encoded value types. The statement they are
11
11
  * spliced into is checked with that text, so the columns are checked again in context.
package/dist/query.d.ts CHANGED
@@ -83,6 +83,12 @@ export declare function mapRows<Q extends {
83
83
  export declare function rowKeysOf(q: {
84
84
  readonly text: string;
85
85
  }): RowKeys;
86
+ /**
87
+ * True when `v` is an authentic fragment or query created by typesql (`sql()`, `sql.as()`,
88
+ * `sql.fragment()`, `sql.raw()`, `sql.id()`, `sql.combine()`, `sql.set()`, `sql.values()`).
89
+ * Unforgeable from plain JSON.
90
+ */
91
+ export declare function isSlottable(v: unknown): boolean;
86
92
  /**
87
93
  * A plain object whose `execute*` methods are non-enumerable, so it still deep-equals
88
94
  * `{ text, values }` (strictly, too). `rowKeys` renames the keys of the rows `execute*` return.
@@ -1 +1 @@
1
- {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../src/query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../src/query.ts"],"names":[],"mappings":"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"}
package/dist/query.js CHANGED
@@ -26,6 +26,15 @@ export function mapRows(q, rows) {
26
26
  export function rowKeysOf(q) {
27
27
  return q[ROW_KEYS] ?? "preserve";
28
28
  }
29
+ const SLOTTABLES = new WeakSet();
30
+ /**
31
+ * True when `v` is an authentic fragment or query created by typesql (`sql()`, `sql.as()`,
32
+ * `sql.fragment()`, `sql.raw()`, `sql.id()`, `sql.combine()`, `sql.set()`, `sql.values()`).
33
+ * Unforgeable from plain JSON.
34
+ */
35
+ export function isSlottable(v) {
36
+ return typeof v === "object" && v !== null && SLOTTABLES.has(v);
37
+ }
29
38
  /**
30
39
  * A plain object whose `execute*` methods are non-enumerable, so it still deep-equals
31
40
  * `{ text, values }` (strictly, too). `rowKeys` renames the keys of the rows `execute*` return.
@@ -41,7 +50,7 @@ export function makeQuery(text, values, executor, rowKeys) {
41
50
  const result = await pick(given)(text, values);
42
51
  return applyRowKeys(isRows(result) ? result : result.rows, rowKeys);
43
52
  };
44
- return Object.defineProperties({ text, values }, {
53
+ const query = Object.defineProperties({ text, values }, {
45
54
  [ROW_KEYS]: { value: rowKeys },
46
55
  execute: { value: execute },
47
56
  executeCount: {
@@ -68,11 +77,15 @@ export function makeQuery(text, values, executor, rowKeys) {
68
77
  },
69
78
  },
70
79
  });
80
+ SLOTTABLES.add(query);
81
+ return query;
71
82
  }
72
83
  function isRows(result) {
73
84
  return Array.isArray(result);
74
85
  }
75
86
  export function makeFragment(text, values) {
76
- return { text, values };
87
+ const fragment = { text, values };
88
+ SLOTTABLES.add(fragment);
89
+ return fragment;
77
90
  }
78
91
  //# sourceMappingURL=query.js.map
package/dist/query.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["../src/query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../src/query.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typesql/core",
3
- "version": "0.6.1",
3
+ "version": "0.7.1",
4
4
  "description": "Type-level Postgres SQL inference for TypeScript, tested against PostgreSQL 18's regression suite. Zero runtime dependencies.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -155,6 +155,14 @@ export function render(
155
155
  for (const [g, group] of Object.entries(file.groups)) {
156
156
  const entries = Object.entries(group.entries);
157
157
  if (!entries.length) continue;
158
+ const calls = Object.groupBy(
159
+ entries.flatMap(([text, e]) => (e.c ?? []).map((c) => ({ text, ...c }))),
160
+ (c) => `${c.m}#${c.k}`,
161
+ );
162
+ for (const [key, cs] of Object.entries(calls))
163
+ snapshots.push(
164
+ ` ${lit(`${id}#${g}#${key}`)}: D_${g} & { m: M_${cs![0]!.m}; k: ${cs![0]!.k}; c: {${cs!.map((c) => `${lit(c.text)}: { m: M_${c.m}; k: ${c.k}; g: ${c.g}; p: ${c.p}; q: ${c.q} };`).join(" ")} } };`,
165
+ );
158
166
  out.push(
159
167
  `type D_${g} = { v: ${lit(file.engine)}; t: ${group.t}; w: ${words(group.w)}; q: ${pairs(group.q)}; h: ${group.h} };\n`,
160
168
  );
@@ -49,8 +49,9 @@ export function readCache(path: string, engine: string): CacheFile {
49
49
 
50
50
  /**
51
51
  * `file` with `owner`'s entries replaced by `mine`. Entries of other owners stay, with the
52
- * word and pair snapshots they depend on (a snapshot `mine` recomputed replaces the old one:
53
- * an entry of another project that depended on the old one is stale until its job runs).
52
+ * word and pair snapshots they depend on. When a snapshot changes, discard the old group's
53
+ * entries and ownership before installing the new snapshot: retained calls must never be
54
+ * presented as results computed against a newer schema. Other projects regenerate their entries.
54
55
  */
55
56
  export function merge(
56
57
  file: CacheFile,
@@ -100,6 +101,23 @@ export function merge(
100
101
  entries: {},
101
102
  };
102
103
  const target = groups[g];
104
+ if (
105
+ target.t !== group.t ||
106
+ target.h !== group.h ||
107
+ (["w", "q"] as const).some((k) =>
108
+ Object.entries(group[k]).some(
109
+ ([key, value]) =>
110
+ Object.hasOwn(target[k], key) &&
111
+ JSON.stringify(target[k][key]) !== JSON.stringify(value),
112
+ ),
113
+ )
114
+ ) {
115
+ for (const key of Object.keys(target.entries))
116
+ delete owners[groupEntryId(g, key)];
117
+ target.entries = {};
118
+ target.w = {};
119
+ target.q = {};
120
+ }
103
121
  target.t = group.t;
104
122
  target.h = group.h;
105
123
  Object.assign(target.w, group.w);
package/src/create-sql.ts CHANGED
@@ -1,11 +1,8 @@
1
1
  import type {
2
+ CacheSnapshots,
2
3
  CallEntry,
3
- FreshVariants,
4
4
  IsUnion,
5
- OneOf,
6
- QueryCacheKeys,
7
- Same,
8
- Second,
5
+ ReadyCallTable,
9
6
  } from "./engine/cache.js";
10
7
  import type { AnyErr, SqlError } from "./engine/errors.js";
11
8
  import type { ArgsOf, ParamsOf, RowOf, Validate } from "./engine/infer.js";
@@ -45,6 +42,7 @@ import {
45
42
  type CARRIED,
46
43
  type Executor,
47
44
  type Fragment,
45
+ isSlottable,
48
46
  makeFragment,
49
47
  makeQuery,
50
48
  type Query,
@@ -448,7 +446,7 @@ type PairTexts<Ps extends readonly unknown[]> = {
448
446
  };
449
447
 
450
448
  /**
451
- * The representative statement piece of `sql.join(items, sep)` over an array: every distinct
449
+ * The representative statement piece of `sql.combine(items, { separator: sep })` over an array: every distinct
452
450
  * element once, joined with `Sep` and renumbered, plus the values those elements carry. A
453
451
  * statement that is valid with each element present once is valid for any count and order of
454
452
  * them in a list position (ORDER BY, SET, VALUES rows, AND chains, …), so one analysis covers
@@ -469,43 +467,46 @@ export type ListRep<E, Sep extends string> = [E] extends [never]
469
467
  : never;
470
468
 
471
469
  /**
472
- * `sql.join(items, sep)`: a tuple keeps the literal text (and the values in order), an array is
470
+ * `sql.combine(items, { separator: sep })`: a tuple keeps the literal text (and the values in order), an array is
473
471
  * typed by its representative piece (`ListRep`).
474
472
  */
475
- type JoinOf<
473
+ type CombineOf<
476
474
  Items extends readonly Slottable[],
477
475
  Sep extends string,
478
- > = number extends Items["length"]
479
- ? Fragment<
480
- ListRep<Items[number], Sep>["text"],
481
- readonly unknown[],
482
- ListRep<Items[number], Sep>["carried"]
483
- >
484
- : Fragment<
485
- JoinedText<
486
- SlotTexts<Items> extends readonly { readonly text: string }[]
487
- ? SlotTexts<Items>
488
- : never,
489
- Sep
490
- >,
491
- readonly unknown[],
492
- JoinedCarried<Items>
493
- >;
494
-
495
- type GateCallCheck<DB, TM, Keys, Q extends string> = [DB, TM, Q] extends [
476
+ > = string extends Sep
477
+ ? Fragment<string, readonly unknown[], []>
478
+ : number extends Items["length"]
479
+ ? Fragment<
480
+ ListRep<Items[number], Sep>["text"],
481
+ readonly unknown[],
482
+ ListRep<Items[number], Sep>["carried"]
483
+ >
484
+ : Fragment<
485
+ JoinedText<
486
+ SlotTexts<Items> extends readonly { readonly text: string }[]
487
+ ? SlotTexts<Items>
488
+ : never,
489
+ Sep
490
+ >,
491
+ readonly unknown[],
492
+ JoinedCarried<Items>
493
+ >;
494
+
495
+ /** Suggested separators in editors; other strings still retain their literal type. */
496
+ type CombineSeparator = ", " | " AND " | " OR " | (string & {});
497
+
498
+ type GateCallCheck<DB, TM, Keys, Q extends string> =
499
+ CallCached<DB, TM, Keys, Q> extends infer C extends CallEntry
500
+ ? [C] extends [never]
501
+ ? InferredCheck<DB, TM, Q>
502
+ : C["g"]
503
+ : never;
504
+ type InferredCheck<DB, TM, Q extends string> = [DB, TM, Q] extends [
496
505
  infer D,
497
506
  infer M,
498
507
  infer Q2 extends string,
499
508
  ]
500
- ? [Q2] extends [keyof QueryCacheKeys]
501
- ? CallCached<D, M, Keys, Q2> extends infer C
502
- ? [C] extends [never]
503
- ? Surface<CallCheck<D, M, Q2>>
504
- : C extends CallEntry
505
- ? C["g"]
506
- : never
507
- : never
508
- : Surface<CallCheck<D, M, Q2>>
509
+ ? Surface<CallCheck<D, M, Q2>>
509
510
  : never;
510
511
  type GateSlottedCheck<DB, TM, Q extends string, S> = [DB, TM, Q, S] extends [
511
512
  infer D,
@@ -523,15 +524,12 @@ type GateFragCheck<Text extends string, Slotted extends boolean> = [
523
524
  : never;
524
525
  type BoxCallArgs<DB, TM, Keys, Q extends string> = Extract<
525
526
  {
526
- [K in Q as `${K}`]: [K] extends [keyof QueryCacheKeys]
527
- ? CallCached<DB, TM, Keys, K> extends infer C
528
- ? [C] extends [never]
529
- ? CallArgs<DB, TM, K>
530
- : C extends CallEntry
531
- ? C["p"]
532
- : never
533
- : never
534
- : CallArgs<DB, TM, K>;
527
+ [K in Q as `${K}`]: CallCached<DB, TM, Keys, K> extends infer C extends
528
+ CallEntry
529
+ ? [C] extends [never]
530
+ ? CallArgs<DB, TM, K>
531
+ : C["p"]
532
+ : never;
535
533
  }[`${Q}`],
536
534
  readonly unknown[]
537
535
  >;
@@ -551,25 +549,16 @@ type BoxFragArgs<Text extends string> = Extract<
551
549
  * replaces the check, the arguments and the return type below with what they were when the
552
550
  * entry was computed, so the call skips the text rewrites and the row and parameter builders.
553
551
  */
554
- /** The cached call (`never` on a miss), for a key of `QueryCacheKeys`. Exported for tests. */
555
- export type CallCached<DB, TM, Keys, Q extends string> =
556
- IsUnion<Q> extends true
552
+ /** The cached call (`never` on a miss), from the shared call index. Exported for tests. */
553
+ export type CallCached<DB, TM, Keys, Q extends string> = [
554
+ keyof CacheSnapshots,
555
+ ] extends [never]
556
+ ? never
557
+ : IsUnion<Q> extends true
557
558
  ? never
558
- : Second<
559
- OneOf<
560
- FreshVariants<DB, Q> extends infer V
561
- ? V extends [infer G, { readonly c: infer C extends CallEntry }]
562
- ? C extends unknown
563
- ? [Keys] extends [C["k"]]
564
- ? Same<TM, C["m"]> extends true
565
- ? [G, C]
566
- : never
567
- : never
568
- : never
569
- : never
570
- : never
571
- >
572
- >;
559
+ : [Q] extends [keyof ReadyCallTable<DB, TM, Keys>]
560
+ ? ReadyCallTable<DB, TM, Keys>[Q]
561
+ : never;
573
562
  /**
574
563
  * What the type cache stores for the plain call `sql(Q, …)` (engine/cache.ts `CallEntry`): the
575
564
  * query argument's check, the arguments after it and the return type. The cache job's probe file
@@ -587,24 +576,18 @@ export type CallTypes<DB, TM, Keys extends RowKeys, Q extends string> = {
587
576
  * did before.
588
577
  */
589
578
  type CallRet<DB, TM, Keys extends RowKeys, Q extends string> = [Q] extends [
590
- keyof QueryCacheKeys,
579
+ infer Q extends string,
591
580
  ]
592
- ? CallCached<DB, TM, Keys, Q> extends infer C
581
+ ? CallCached<DB, TM, Keys, Q> extends infer C extends CallEntry
593
582
  ? [C] extends [never]
594
583
  ? Query<
595
584
  KeyedRow<RowOf<DB, TM, PText<Q>>, Keys>,
596
585
  ParamsOf<DB, TM, PText<Q>>,
597
586
  PText<Q>
598
587
  >
599
- : C extends CallEntry
600
- ? C["q"]
601
- : never
588
+ : C["q"]
602
589
  : never
603
- : Query<
604
- KeyedRow<RowOf<DB, TM, PText<Q>>, Keys>,
605
- ParamsOf<DB, TM, PText<Q>>,
606
- PText<Q>
607
- >;
590
+ : never;
608
591
 
609
592
  /**
610
593
  * The typed SQL function returned by `createSql<DB, TypeMap>()`.
@@ -708,16 +691,19 @@ export interface Sql<DB, TM, Keys extends RowKeys = "preserve"> {
708
691
  id(...parts: readonly [string, ...string[]]): Fragment<string, [], []>;
709
692
 
710
693
  /**
711
- * Join fragments with a separator: `sql.join([a, b], " AND ")`, or a runtime array of
712
- * fragments whose texts are known, `sql.join(keys.map((k) => SORT[k]))`. A tuple keeps the
694
+ * Combine fragments with a separator: `sql.combine([a, b], { separator: " AND " })`, or a runtime array of
695
+ * fragments whose texts are known, `sql.combine(keys.map((k) => SORT[k]))`. A tuple keeps the
713
696
  * literal text. For an array the count and order are dynamic, but every element type is a
714
697
  * literal, so the statement is still checked: it is validated once with each distinct element
715
698
  * present (see `ListRep`). Throws at runtime when there are no items.
716
699
  */
717
- join<
700
+ combine<
718
701
  const Items extends readonly Slottable[],
719
- const Sep extends string = ", ",
720
- >(items: Items, separator?: Sep): JoinOf<Items, Sep>;
702
+ const Sep extends CombineSeparator = ", ",
703
+ >(
704
+ items: Items,
705
+ options?: { readonly separator?: Sep },
706
+ ): CombineOf<Items, Sep>;
721
707
 
722
708
  /**
723
709
  * `SET` list from an object: `sql("UPDATE users SET {set} WHERE id = $1", { set: sql.set("users", input) }, id)`.
@@ -754,14 +740,10 @@ export interface Sql<DB, TM, Keys extends RowKeys = "preserve"> {
754
740
 
755
741
  function isSlotMap(v: unknown): v is SlotMap {
756
742
  if (v === null || typeof v !== "object" || Array.isArray(v)) return false;
757
- for (const x of Object.values(v as Record<string, unknown>)) {
758
- if (
759
- x === null ||
760
- typeof x !== "object" ||
761
- typeof (x as Spliceable).text !== "string" ||
762
- !Array.isArray((x as Spliceable).values)
763
- )
764
- return false;
743
+ const values = Object.values(v as Record<string, unknown>);
744
+ if (values.length === 0) return false;
745
+ for (const x of values) {
746
+ if (!isSlottable(x)) return false;
765
747
  }
766
748
  return true;
767
749
  }
@@ -850,12 +832,15 @@ export function createSql<DB, TM = DefaultTypeMap>(
850
832
  return makeFragment(r.text, r.values);
851
833
  },
852
834
  id: (...parts: readonly string[]) => makeFragment(quoteIdent(...parts), []),
853
- join: (items: readonly Spliceable[], separator: string = ", ") => {
835
+ combine: (
836
+ items: readonly Spliceable[],
837
+ options?: { readonly separator?: string },
838
+ ) => {
854
839
  if (items.length === 0)
855
840
  throw new Error(
856
- "typesql: sql.join() needs at least one item; put a fixed element first (`[base, ...rest]`) or skip the clause",
841
+ "typesql: sql.combine() needs at least one item; put a fixed element first (`[base, ...rest]`) or skip the clause",
857
842
  );
858
- const r = joinFragments(items, separator);
843
+ const r = joinFragments(items, options?.separator ?? ", ");
859
844
  return makeFragment(r.text, r.values);
860
845
  },
861
846
  set: (_table: string, values: Readonly<Record<string, unknown>>) => {
@@ -54,7 +54,7 @@ export interface DdlCacheKeys {}
54
54
  * Version of the engine's output. An entry computed by another version is never used. It is a
55
55
  * hash of the type-level sources, kept up to date by `node scripts/cache-version.ts`.
56
56
  */
57
- export type CacheVersion = "f5679a2f8325";
57
+ export type CacheVersion = "0bcf710b83e8";
58
58
 
59
59
  /** A relation, function or catalog entry that did not exist when the entry was computed. */
60
60
  export interface Missing {
@@ -232,6 +232,31 @@ type GroupStale<DB, G, Snaps> = G extends keyof Snaps
232
232
  : "*"
233
233
  : "*";
234
234
 
235
+ /** Select compatible call groups once per schema, type map and row-key mode. */
236
+ export type ReadyCallTable<DB, TM, Keys, Snaps = CacheSnapshots> = [
237
+ DB,
238
+ TM,
239
+ Keys,
240
+ ] extends [infer D, infer M, infer K]
241
+ ? MergeCalls<ReadyCalls<D, M, K, Snaps>>
242
+ : never;
243
+ type MergeCalls<T> = [T] extends [never] ? {} : UnionToIntersection<T>;
244
+ type ReadyCalls<DB, TM, Keys, Snaps> = {
245
+ [G in keyof Snaps]: Snaps[G] extends {
246
+ m: infer M;
247
+ k: infer K;
248
+ c: infer Q extends Record<string, CallEntry>;
249
+ }
250
+ ? [Keys] extends [K]
251
+ ? Same<TM, M> extends true
252
+ ? [GroupStale<DB, G, Snaps>] extends [never]
253
+ ? Q
254
+ : never
255
+ : never
256
+ : never
257
+ : never;
258
+ }[keyof Snaps];
259
+
235
260
  /** The entry of `Q` in group `G` when its dependencies are unchanged in `DB`. */
236
261
  type FreshIn<DB, G, E, Snaps> =
237
262
  GroupStale<DB, G, Snaps> extends infer S
@@ -7,7 +7,7 @@ import type { Opaque, SplitFirst } from "./inline.js";
7
7
  * follow the parameters already present (outer `$n` first, then fragments in order).
8
8
  *
9
9
  * Only `{identifier}` is a slot; `'{1,2}'` or `'{"a":1}'` inside literals are left alone.
10
- * A fragment whose text is not a literal (`sql.raw`, `sql.join` over a non-tuple array)
10
+ * A fragment whose text is not a literal (`sql.raw`, `sql.combine` over a non-tuple array)
11
11
  * makes the result `string`, which `Validate` reports as a dynamic fragment.
12
12
  */
13
13
  export type Splice<Q extends string, S> = string extends Q // type-mutate: equivalent cond-false – a shortcut: string matches no slot, so SpliceLoop gives string too
@@ -274,7 +274,7 @@ export type UnionList<U, Acc extends readonly unknown[] = []> = [U] extends [
274
274
  ? UnionList<Exclude<U, L>, [L, ...Acc]>
275
275
  : never;
276
276
 
277
- /** Text of `sql.join([f1, f2], sep)` for tuple inputs; `string` for arrays. */
277
+ /** Text of `sql.combine([f1, f2], sep)` for tuple inputs; `string` for arrays. */
278
278
  export type JoinedText<
279
279
  Items extends readonly { readonly text: string }[],
280
280
  Sep extends string,
@@ -6,7 +6,7 @@ import type { JoinedText, QuotedIdent, UnionList } from "./splice.js";
6
6
  /**
7
7
  * Types of the write helpers `sql.set(table, values)` and `sql.values(table, rows)`.
8
8
  *
9
- * Their runtime text depends on which keys are defined, so, like `sql.join` over an array, they
9
+ * Their runtime text depends on which keys are defined, so, like `sql.combine` over an array, they
10
10
  * are typed with a representative text: every key of the input type once (`"a" = $1, "b" = $2`
11
11
  * / `("a", "b") VALUES ($1, $2)`), carrying the encoded value types. The statement they are
12
12
  * spliced into is checked with that text, so the columns are checked again in context.
package/src/query.ts CHANGED
@@ -117,6 +117,17 @@ export function rowKeysOf(q: { readonly text: string }): RowKeys {
117
117
  return (q as { readonly [ROW_KEYS]?: RowKeys })[ROW_KEYS] ?? "preserve";
118
118
  }
119
119
 
120
+ const SLOTTABLES = new WeakSet<object>();
121
+
122
+ /**
123
+ * True when `v` is an authentic fragment or query created by typesql (`sql()`, `sql.as()`,
124
+ * `sql.fragment()`, `sql.raw()`, `sql.id()`, `sql.combine()`, `sql.set()`, `sql.values()`).
125
+ * Unforgeable from plain JSON.
126
+ */
127
+ export function isSlottable(v: unknown): boolean {
128
+ return typeof v === "object" && v !== null && SLOTTABLES.has(v);
129
+ }
130
+
120
131
  /**
121
132
  * A plain object whose `execute*` methods are non-enumerable, so it still deep-equals
122
133
  * `{ text, values }` (strictly, too). `rowKeys` renames the keys of the rows `execute*` return.
@@ -143,7 +154,7 @@ export function makeQuery<
143
154
  const result = await pick(given)(text, values);
144
155
  return applyRowKeys(isRows(result) ? result : result.rows, rowKeys);
145
156
  };
146
- return Object.defineProperties(
157
+ const query = Object.defineProperties(
147
158
  { text, values },
148
159
  {
149
160
  [ROW_KEYS]: { value: rowKeys },
@@ -173,6 +184,8 @@ export function makeQuery<
173
184
  },
174
185
  },
175
186
  ) as unknown as Query<Row, Params, Text>;
187
+ SLOTTABLES.add(query);
188
+ return query;
176
189
  }
177
190
 
178
191
  function isRows(
@@ -186,5 +199,7 @@ export function makeFragment<
186
199
  Params extends readonly unknown[],
187
200
  Carried extends readonly unknown[] = readonly unknown[],
188
201
  >(text: string, values: readonly unknown[]): Fragment<Text, Params, Carried> {
189
- return { text, values };
202
+ const fragment = { text, values };
203
+ SLOTTABLES.add(fragment);
204
+ return fragment;
190
205
  }