@rocicorp/zero 0.10.2025010500 → 0.10.2025011100

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 (208) hide show
  1. package/README.md +32 -0
  2. package/out/change-protocol.js +257 -0
  3. package/out/change-protocol.js.map +7 -0
  4. package/out/{chunk-VLJ76GO7.js → chunk-FEVIDCUL.js} +1626 -2373
  5. package/out/chunk-FEVIDCUL.js.map +7 -0
  6. package/out/chunk-ZRR54VX5.js +224 -0
  7. package/out/chunk-ZRR54VX5.js.map +7 -0
  8. package/out/react.js.map +1 -1
  9. package/out/replicache/src/db/commit.d.ts +12 -35
  10. package/out/replicache/src/db/commit.d.ts.map +1 -1
  11. package/out/replicache/src/db/meta-type-enum.d.ts +1 -7
  12. package/out/replicache/src/db/meta-type-enum.d.ts.map +1 -1
  13. package/out/replicache/src/db/rebase.d.ts.map +1 -1
  14. package/out/replicache/src/db/write.d.ts +0 -1
  15. package/out/replicache/src/db/write.d.ts.map +1 -1
  16. package/out/replicache/src/get-default-puller.d.ts +1 -3
  17. package/out/replicache/src/get-default-puller.d.ts.map +1 -1
  18. package/out/replicache/src/mod.d.ts +5 -5
  19. package/out/replicache/src/mod.d.ts.map +1 -1
  20. package/out/replicache/src/mutation-recovery.d.ts +1 -2
  21. package/out/replicache/src/mutation-recovery.d.ts.map +1 -1
  22. package/out/replicache/src/puller.d.ts +2 -20
  23. package/out/replicache/src/puller.d.ts.map +1 -1
  24. package/out/replicache/src/replicache-impl.d.ts +1 -2
  25. package/out/replicache/src/replicache-impl.d.ts.map +1 -1
  26. package/out/replicache/src/sync/pull.d.ts +3 -30
  27. package/out/replicache/src/sync/pull.d.ts.map +1 -1
  28. package/out/replicache/src/sync/push.d.ts +3 -30
  29. package/out/replicache/src/sync/push.d.ts.map +1 -1
  30. package/out/shared/src/options.d.ts.map +1 -1
  31. package/out/shared/src/options.js +16 -8
  32. package/out/shared/src/options.js.map +1 -1
  33. package/out/solid.js +30 -35
  34. package/out/solid.js.map +3 -3
  35. package/out/zero/src/change-protocol.d.ts +2 -0
  36. package/out/zero/src/change-protocol.d.ts.map +1 -0
  37. package/out/zero/src/change-protocol.js +2 -0
  38. package/out/zero/src/change-protocol.js.map +1 -0
  39. package/out/zero/src/zero-cache-dev.d.ts.map +1 -1
  40. package/out/zero/src/zero-cache-dev.js +6 -6
  41. package/out/zero/src/zero-cache-dev.js.map +1 -1
  42. package/out/zero-cache/src/config/zero-config.d.ts +30 -4
  43. package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
  44. package/out/zero-cache/src/config/zero-config.js +31 -15
  45. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  46. package/out/zero-cache/src/db/specs.d.ts +1 -1
  47. package/out/zero-cache/src/server/change-streamer.d.ts.map +1 -1
  48. package/out/zero-cache/src/server/change-streamer.js +2 -6
  49. package/out/zero-cache/src/server/change-streamer.js.map +1 -1
  50. package/out/zero-cache/src/server/life-cycle.d.ts +3 -2
  51. package/out/zero-cache/src/server/life-cycle.d.ts.map +1 -1
  52. package/out/zero-cache/src/server/life-cycle.js +15 -12
  53. package/out/zero-cache/src/server/life-cycle.js.map +1 -1
  54. package/out/zero-cache/src/server/main.d.ts.map +1 -1
  55. package/out/zero-cache/src/server/main.js +21 -11
  56. package/out/zero-cache/src/server/main.js.map +1 -1
  57. package/out/zero-cache/src/server/multi/config.d.ts +20 -3
  58. package/out/zero-cache/src/server/multi/config.d.ts.map +1 -1
  59. package/out/zero-cache/src/server/multi/config.js +10 -2
  60. package/out/zero-cache/src/server/multi/config.js.map +1 -1
  61. package/out/zero-cache/src/server/multi/main.d.ts.map +1 -1
  62. package/out/zero-cache/src/server/multi/main.js +9 -3
  63. package/out/zero-cache/src/server/multi/main.js.map +1 -1
  64. package/out/zero-cache/src/services/{change-streamer → change-source}/pg/change-source.d.ts +2 -2
  65. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts.map +1 -0
  66. package/out/zero-cache/src/services/{change-streamer → change-source}/pg/change-source.js +1 -1
  67. package/out/zero-cache/src/services/change-source/pg/change-source.js.map +1 -0
  68. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts.map +1 -0
  69. package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -0
  70. package/out/zero-cache/src/services/{change-streamer → change-source}/pg/lsn.d.ts +1 -1
  71. package/out/zero-cache/src/services/change-source/pg/lsn.d.ts.map +1 -0
  72. package/out/zero-cache/src/services/change-source/pg/lsn.js.map +1 -0
  73. package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/ddl.d.ts +5 -5
  74. package/out/zero-cache/src/services/change-source/pg/schema/ddl.d.ts.map +1 -0
  75. package/out/zero-cache/src/services/change-source/pg/schema/ddl.js.map +1 -0
  76. package/out/zero-cache/src/services/change-source/pg/schema/init.d.ts.map +1 -0
  77. package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/init.js +1 -1
  78. package/out/zero-cache/src/services/change-source/pg/schema/init.js.map +1 -0
  79. package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/published.d.ts +2 -2
  80. package/out/zero-cache/src/services/change-source/pg/schema/published.d.ts.map +1 -0
  81. package/out/zero-cache/src/services/change-source/pg/schema/published.js.map +1 -0
  82. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts.map +1 -0
  83. package/out/zero-cache/src/services/change-source/pg/schema/shard.js.map +1 -0
  84. package/out/zero-cache/src/services/change-source/pg/schema/validation.d.ts.map +1 -0
  85. package/out/zero-cache/src/services/change-source/pg/schema/validation.js.map +1 -0
  86. package/out/zero-cache/src/services/change-source/pg/shard-config.d.ts.map +1 -0
  87. package/out/zero-cache/src/services/change-source/pg/shard-config.js.map +1 -0
  88. package/out/zero-cache/src/services/change-source/pg/sync-schema.d.ts.map +1 -0
  89. package/out/zero-cache/src/services/change-source/pg/sync-schema.js.map +1 -0
  90. package/out/zero-cache/src/services/change-source/protocol/current/control.d.ts +38 -0
  91. package/out/zero-cache/src/services/change-source/protocol/current/control.d.ts.map +1 -0
  92. package/out/zero-cache/src/services/change-source/protocol/current/control.js +36 -0
  93. package/out/zero-cache/src/services/change-source/protocol/current/control.js.map +1 -0
  94. package/out/zero-cache/src/services/{change-streamer/schema/change.d.ts → change-source/protocol/current/data.d.ts} +28 -23
  95. package/out/zero-cache/src/services/change-source/protocol/current/data.d.ts.map +1 -0
  96. package/out/zero-cache/src/services/{change-streamer/schema/change.js → change-source/protocol/current/data.js} +9 -4
  97. package/out/zero-cache/src/services/change-source/protocol/current/data.js.map +1 -0
  98. package/out/zero-cache/src/services/change-source/protocol/current/downstream.d.ts +469 -0
  99. package/out/zero-cache/src/services/change-source/protocol/current/downstream.d.ts.map +1 -0
  100. package/out/zero-cache/src/services/change-source/protocol/current/downstream.js +19 -0
  101. package/out/zero-cache/src/services/change-source/protocol/current/downstream.js.map +1 -0
  102. package/out/zero-cache/src/services/change-source/protocol/current/mod.d.ts +6 -0
  103. package/out/zero-cache/src/services/change-source/protocol/current/mod.d.ts.map +1 -0
  104. package/out/zero-cache/src/services/change-source/protocol/current/mod.js +6 -0
  105. package/out/zero-cache/src/services/change-source/protocol/current/mod.js.map +1 -0
  106. package/out/zero-cache/src/services/change-source/protocol/current/path.d.ts +20 -0
  107. package/out/zero-cache/src/services/change-source/protocol/current/path.d.ts.map +1 -0
  108. package/out/zero-cache/src/services/change-source/protocol/current/path.js +20 -0
  109. package/out/zero-cache/src/services/change-source/protocol/current/path.js.map +1 -0
  110. package/out/zero-cache/src/services/change-source/protocol/current/upstream.d.ts +17 -0
  111. package/out/zero-cache/src/services/change-source/protocol/current/upstream.d.ts.map +1 -0
  112. package/out/zero-cache/src/services/change-source/protocol/current/upstream.js +12 -0
  113. package/out/zero-cache/src/services/change-source/protocol/current/upstream.js.map +1 -0
  114. package/out/zero-cache/src/services/change-source/protocol/mod.d.ts +2 -0
  115. package/out/zero-cache/src/services/change-source/protocol/mod.d.ts.map +1 -0
  116. package/out/zero-cache/src/services/change-source/protocol/mod.js +5 -0
  117. package/out/zero-cache/src/services/change-source/protocol/mod.js.map +1 -0
  118. package/out/zero-cache/src/services/change-streamer/change-streamer-service.d.ts +3 -157
  119. package/out/zero-cache/src/services/change-streamer/change-streamer-service.d.ts.map +1 -1
  120. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js +3 -13
  121. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js.map +1 -1
  122. package/out/zero-cache/src/services/change-streamer/change-streamer.d.ts +1 -309
  123. package/out/zero-cache/src/services/change-streamer/change-streamer.d.ts.map +1 -1
  124. package/out/zero-cache/src/services/change-streamer/change-streamer.js +3 -11
  125. package/out/zero-cache/src/services/change-streamer/change-streamer.js.map +1 -1
  126. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts +1 -1
  127. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts.map +1 -1
  128. package/out/zero-cache/src/services/change-streamer/storer.d.ts +1 -1
  129. package/out/zero-cache/src/services/change-streamer/storer.d.ts.map +1 -1
  130. package/out/zero-cache/src/services/change-streamer/storer.js +1 -0
  131. package/out/zero-cache/src/services/change-streamer/storer.js.map +1 -1
  132. package/out/zero-cache/src/services/litestream/commands.d.ts +8 -0
  133. package/out/zero-cache/src/services/litestream/commands.d.ts.map +1 -0
  134. package/out/zero-cache/src/services/litestream/commands.js +61 -0
  135. package/out/zero-cache/src/services/litestream/commands.js.map +1 -0
  136. package/out/zero-cache/src/services/litestream/config.yml +7 -0
  137. package/out/zero-cache/src/services/mutagen/mutagen.js +1 -1
  138. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  139. package/out/zero-cache/src/services/replicator/incremental-sync.d.ts +3 -2
  140. package/out/zero-cache/src/services/replicator/incremental-sync.d.ts.map +1 -1
  141. package/out/zero-cache/src/services/view-syncer/client-handler.js +1 -1
  142. package/out/zero-cache/src/services/view-syncer/client-handler.js.map +1 -1
  143. package/out/zero-cache/src/services/view-syncer/cvr.js +1 -1
  144. package/out/zero-cache/src/services/view-syncer/cvr.js.map +1 -1
  145. package/out/zero-cache/src/types/processes.d.ts +4 -2
  146. package/out/zero-cache/src/types/processes.d.ts.map +1 -1
  147. package/out/zero-cache/src/types/processes.js.map +1 -1
  148. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  149. package/out/zero-react/src/use-query.d.ts.map +1 -1
  150. package/out/zero-schema/src/column.d.ts +77 -25
  151. package/out/zero-schema/src/column.d.ts.map +1 -1
  152. package/out/zero-schema/src/normalize-table-schema.d.ts +4 -3
  153. package/out/zero-schema/src/normalize-table-schema.d.ts.map +1 -1
  154. package/out/zero-schema/src/normalize-table-schema.js +27 -23
  155. package/out/zero-schema/src/normalize-table-schema.js.map +1 -1
  156. package/out/zero-schema/src/normalized-schema.d.ts.map +1 -1
  157. package/out/zero-schema/src/normalized-schema.js +19 -2
  158. package/out/zero-schema/src/normalized-schema.js.map +1 -1
  159. package/out/zero-schema/src/schema.d.ts +1 -1
  160. package/out/zero-schema/src/schema.d.ts.map +1 -1
  161. package/out/zero-schema/src/schema.js +5 -0
  162. package/out/zero-schema/src/schema.js.map +1 -1
  163. package/out/zero-solid/src/solid-view.d.ts +4 -1
  164. package/out/zero-solid/src/solid-view.d.ts.map +1 -1
  165. package/out/zero-solid/src/use-query.d.ts +4 -7
  166. package/out/zero-solid/src/use-query.d.ts.map +1 -1
  167. package/out/zero.js +2 -1
  168. package/out/zql/src/ivm/take.d.ts.map +1 -1
  169. package/out/zql/src/ivm/take.js +13 -6
  170. package/out/zql/src/ivm/take.js.map +1 -1
  171. package/package.json +9 -6
  172. package/out/chunk-VLJ76GO7.js.map +0 -7
  173. package/out/zero-cache/src/services/change-streamer/pg/change-source.d.ts.map +0 -1
  174. package/out/zero-cache/src/services/change-streamer/pg/change-source.js.map +0 -1
  175. package/out/zero-cache/src/services/change-streamer/pg/initial-sync.d.ts.map +0 -1
  176. package/out/zero-cache/src/services/change-streamer/pg/initial-sync.js.map +0 -1
  177. package/out/zero-cache/src/services/change-streamer/pg/lsn.d.ts.map +0 -1
  178. package/out/zero-cache/src/services/change-streamer/pg/lsn.js.map +0 -1
  179. package/out/zero-cache/src/services/change-streamer/pg/schema/ddl.d.ts.map +0 -1
  180. package/out/zero-cache/src/services/change-streamer/pg/schema/ddl.js.map +0 -1
  181. package/out/zero-cache/src/services/change-streamer/pg/schema/init.d.ts.map +0 -1
  182. package/out/zero-cache/src/services/change-streamer/pg/schema/init.js.map +0 -1
  183. package/out/zero-cache/src/services/change-streamer/pg/schema/published.d.ts.map +0 -1
  184. package/out/zero-cache/src/services/change-streamer/pg/schema/published.js.map +0 -1
  185. package/out/zero-cache/src/services/change-streamer/pg/schema/shard.d.ts.map +0 -1
  186. package/out/zero-cache/src/services/change-streamer/pg/schema/shard.js.map +0 -1
  187. package/out/zero-cache/src/services/change-streamer/pg/schema/validation.d.ts.map +0 -1
  188. package/out/zero-cache/src/services/change-streamer/pg/schema/validation.js.map +0 -1
  189. package/out/zero-cache/src/services/change-streamer/pg/shard-config.d.ts.map +0 -1
  190. package/out/zero-cache/src/services/change-streamer/pg/shard-config.js.map +0 -1
  191. package/out/zero-cache/src/services/change-streamer/pg/sync-schema.d.ts.map +0 -1
  192. package/out/zero-cache/src/services/change-streamer/pg/sync-schema.js.map +0 -1
  193. package/out/zero-cache/src/services/change-streamer/schema/change.d.ts.map +0 -1
  194. package/out/zero-cache/src/services/change-streamer/schema/change.js.map +0 -1
  195. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/initial-sync.d.ts +0 -0
  196. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/initial-sync.js +0 -0
  197. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/lsn.js +0 -0
  198. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/ddl.js +0 -0
  199. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/init.d.ts +0 -0
  200. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/published.js +0 -0
  201. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/shard.d.ts +0 -0
  202. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/shard.js +0 -0
  203. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/validation.d.ts +0 -0
  204. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/validation.js +0 -0
  205. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/shard-config.d.ts +0 -0
  206. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/shard-config.js +0 -0
  207. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/sync-schema.d.ts +0 -0
  208. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/sync-schema.js +0 -0
@@ -18,10 +18,11 @@ export declare class NormalizedTableSchema implements TableSchema {
18
18
  readonly relationships: {
19
19
  readonly [name: string]: NormalizedRelationship;
20
20
  };
21
- constructor(tableSchema: TableSchema, tableSchemaCache: TableSchemaCache);
21
+ constructor(tableSchema: TableSchema, tableSchemaCache: TableSchemaCache, assertFieldRelation: AssertFieldRelation);
22
22
  }
23
23
  export declare function normalizeTableSchema(tableSchema: TableSchema | NormalizedTableSchema): NormalizedTableSchema;
24
- export declare function normalizeTableSchemaWithCache(tableSchema: TableSchema | NormalizedTableSchema, expectedName: string, tableSchemaCache: TableSchemaCache): NormalizedTableSchema;
24
+ export type AssertFieldRelation = (tableName: string, relationShipName: string, relation: NormalizedFieldRelationship) => void;
25
+ export declare function normalizeTableSchemaWithCache(tableSchema: TableSchema | NormalizedTableSchema, expectedTableName: string, tableSchemaCache: TableSchemaCache, assertFieldRelation: AssertFieldRelation): NormalizedTableSchema;
25
26
  export type NormalizedPrimaryKey = Normalized<PrimaryKey>;
26
27
  export declare function normalizePrimaryKey(primaryKey: PrimaryKey | string): NormalizedPrimaryKey;
27
28
  export type DecycledNormalizedTableSchema = Omit<NormalizedTableSchema, 'relationships'> & {
@@ -36,7 +37,7 @@ export type DecycledNormalizedFieldRelationship = Omit<NormalizedFieldRelationsh
36
37
  readonly destSchema: string;
37
38
  };
38
39
  type NormalizedRelationship = NormalizedFieldRelationship | NormalizedJunctionRelationship;
39
- type NormalizedFieldRelationship = {
40
+ export type NormalizedFieldRelationship = {
40
41
  sourceField: CompoundKey;
41
42
  destField: CompoundKey;
42
43
  destSchema: NormalizedTableSchema;
@@ -1 +1 @@
1
- {"version":3,"file":"normalize-table-schema.d.ts","sourceRoot":"","sources":["../../../../zero-schema/src/normalize-table-schema.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gCAAgC,CAAC;AAChE,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,wCAAwC,CAAC;AACvE,OAAO,EAKL,KAAK,WAAW,EAChB,KAAK,WAAW,EAEjB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,CAAC,MAAM,UAAU,EAAE,OAAO,MAAM,CAAC;AAExC,KAAK,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG;IAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,EAAE,IAAI,CAAA;CAAC,CAAC;AAEvD;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,GAAG,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;AAEvE,qBAAa,qBAAsB,YAAW,WAAW;IACvD,SAAiB,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,oBAAoB,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC9C,QAAQ,CAAC,aAAa,EAAE;QAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,sBAAsB,CAAA;KAAC,CAAC;gBAE9D,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAAE,gBAAgB;CAWzE;AAED,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,WAAW,GAAG,qBAAqB,GAC/C,qBAAqB,CAMvB;AAED,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,WAAW,GAAG,qBAAqB,EAChD,YAAY,EAAE,MAAM,EACpB,gBAAgB,EAAE,gBAAgB,GACjC,qBAAqB,CAmBvB;AAED,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;AAS1D,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,UAAU,GAAG,MAAM,GAC9B,oBAAoB,CAMtB;AAsDD,MAAM,MAAM,6BAA6B,GAAG,IAAI,CAC9C,qBAAqB,EACrB,eAAe,CAChB,GAAG;IACF,QAAQ,CAAC,aAAa,EAAE;QACtB,QAAQ,EAAE,YAAY,EAAE,MAAM,GAC1B,mCAAmC,GACnC,SAAS;YACP,mCAAmC;YACnC,mCAAmC;SACpC,CAAC;KACP,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,mCAAmC,GAAG,IAAI,CACpD,2BAA2B,EAC3B,YAAY,CACb,GAAG;IAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAAC,CAAC;AAElC,KAAK,sBAAsB,GACvB,2BAA2B,GAC3B,8BAA8B,CAAC;AAYnC,KAAK,2BAA2B,GAAG;IACjC,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,WAAW,CAAC;IACvB,UAAU,EAAE,qBAAqB,CAAC;CACnC,CAAC;AAsBF,MAAM,MAAM,8BAA8B,GAAG,SAAS;IACpD,2BAA2B;IAC3B,2BAA2B;CAC5B,CAAC;AAiCF,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAClC,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAMvC"}
1
+ {"version":3,"file":"normalize-table-schema.d.ts","sourceRoot":"","sources":["../../../../zero-schema/src/normalize-table-schema.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gCAAgC,CAAC;AAChE,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,wCAAwC,CAAC;AACvE,OAAO,EAKL,KAAK,WAAW,EAChB,KAAK,WAAW,EAEjB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,CAAC,MAAM,UAAU,EAAE,OAAO,MAAM,CAAC;AAExC,KAAK,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG;IAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,EAAE,IAAI,CAAA;CAAC,CAAC;AAEvD;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,GAAG,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;AAEvE,qBAAa,qBAAsB,YAAW,WAAW;IACvD,SAAiB,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,oBAAoB,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC9C,QAAQ,CAAC,aAAa,EAAE;QAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,sBAAsB,CAAA;KAAC,CAAC;gBAGxE,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,gBAAgB,EAClC,mBAAmB,EAAE,mBAAmB;CAc3C;AAID,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,WAAW,GAAG,qBAAqB,GAC/C,qBAAqB,CAOvB;AAED,MAAM,MAAM,mBAAmB,GAAG,CAChC,SAAS,EAAE,MAAM,EACjB,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,2BAA2B,KAClC,IAAI,CAAC;AAEV,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,WAAW,GAAG,qBAAqB,EAChD,iBAAiB,EAAE,MAAM,EACzB,gBAAgB,EAAE,gBAAgB,EAClC,mBAAmB,EAAE,mBAAmB,GACvC,qBAAqB,CAoBvB;AAED,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;AAS1D,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,UAAU,GAAG,MAAM,GAC9B,oBAAoB,CAMtB;AAgED,MAAM,MAAM,6BAA6B,GAAG,IAAI,CAC9C,qBAAqB,EACrB,eAAe,CAChB,GAAG;IACF,QAAQ,CAAC,aAAa,EAAE;QACtB,QAAQ,EAAE,YAAY,EAAE,MAAM,GAC1B,mCAAmC,GACnC,SAAS;YACP,mCAAmC;YACnC,mCAAmC;SACpC,CAAC;KACP,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,mCAAmC,GAAG,IAAI,CACpD,2BAA2B,EAC3B,YAAY,CACb,GAAG;IAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAAC,CAAC;AAElC,KAAK,sBAAsB,GACvB,2BAA2B,GAC3B,8BAA8B,CAAC;AA2BnC,MAAM,MAAM,2BAA2B,GAAG;IACxC,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,WAAW,CAAC;IACvB,UAAU,EAAE,qBAAqB,CAAC;CACnC,CAAC;AA6BF,MAAM,MAAM,8BAA8B,GAAG,SAAS;IACpD,2BAA2B;IAC3B,2BAA2B;CAC5B,CAAC;AAiDF,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAClC,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAavC"}
@@ -6,28 +6,29 @@ export class NormalizedTableSchema {
6
6
  primaryKey;
7
7
  columns;
8
8
  relationships;
9
- constructor(tableSchema, tableSchemaCache) {
9
+ constructor(tableSchema, tableSchemaCache, assertFieldRelation) {
10
10
  this.tableName = tableSchema.tableName;
11
11
  const primaryKey = normalizePrimaryKey(tableSchema.primaryKey);
12
12
  this.primaryKey = primaryKey;
13
13
  this.columns = normalizeColumns(tableSchema.columns, primaryKey);
14
14
  tableSchemaCache.set(tableSchema, this);
15
- this.relationships = normalizeRelationships(tableSchema.relationships, tableSchemaCache);
15
+ this.relationships = normalizeRelationships(this.tableName, tableSchema.relationships, tableSchemaCache, assertFieldRelation);
16
16
  }
17
17
  }
18
+ const noop = () => { };
18
19
  export function normalizeTableSchema(tableSchema) {
19
- return normalizeTableSchemaWithCache(tableSchema, tableSchema.tableName, new Map());
20
+ return normalizeTableSchemaWithCache(tableSchema, tableSchema.tableName, new Map(), noop);
20
21
  }
21
- export function normalizeTableSchemaWithCache(tableSchema, expectedName, tableSchemaCache) {
22
+ export function normalizeTableSchemaWithCache(tableSchema, expectedTableName, tableSchemaCache, assertFieldRelation) {
22
23
  if (tableSchema instanceof NormalizedTableSchema) {
23
24
  return tableSchema;
24
25
  }
25
- assert(tableSchema.tableName === expectedName, `Table name mismatch: "${tableSchema.tableName}" !== "${expectedName}"`);
26
+ assert(tableSchema.tableName === expectedTableName, `Table name mismatch: "${tableSchema.tableName}" !== "${expectedTableName}"`);
26
27
  let normalizedTableSchema = tableSchemaCache.get(tableSchema);
27
28
  if (normalizedTableSchema) {
28
29
  return normalizedTableSchema;
29
30
  }
30
- normalizedTableSchema = new NormalizedTableSchema(tableSchema, tableSchemaCache);
31
+ normalizedTableSchema = new NormalizedTableSchema(tableSchema, tableSchemaCache, assertFieldRelation);
31
32
  return normalizedTableSchema;
32
33
  }
33
34
  function assertNoDuplicates(arr) {
@@ -65,41 +66,43 @@ function normalizeColumn(value) {
65
66
  optional: value.optional ?? false,
66
67
  };
67
68
  }
68
- function normalizeRelationships(relationships, tableSchemaCache) {
69
+ function normalizeRelationships(tableName, relationships, tableSchemaCache, assertFieldRelation) {
69
70
  const rv = {};
70
71
  if (relationships) {
71
- for (const [name, relationship] of sortedEntries(relationships)) {
72
- rv[name] = normalizeRelationship(relationship, tableSchemaCache);
72
+ for (const [relationshipName, relationship] of sortedEntries(relationships)) {
73
+ rv[relationshipName] = normalizeRelationship(tableName, relationshipName, relationship, tableSchemaCache, assertFieldRelation);
73
74
  }
74
75
  }
75
76
  return rv;
76
77
  }
77
- function normalizeRelationship(relationship, tableSchemaCache) {
78
+ function normalizeRelationship(tableName, relationshipName, relationship, tableSchemaCache, assertFieldRelation) {
78
79
  if (isFieldRelationship(relationship)) {
79
- return normalizeFieldRelationship(relationship, tableSchemaCache);
80
+ return normalizeFieldRelationship(tableName, relationshipName, relationship, tableSchemaCache, assertFieldRelation);
80
81
  }
81
- return normalizeJunctionRelationship(relationship, tableSchemaCache);
82
+ return normalizeJunctionRelationship(tableName, relationshipName, relationship, tableSchemaCache, assertFieldRelation);
82
83
  }
83
- function normalizeFieldRelationship(relationship, tableSchemaCache) {
84
+ function normalizeFieldRelationship(tableName, relationshipName, relationship, tableSchemaCache, assertFieldRelation) {
84
85
  const sourceField = normalizeFieldName(relationship.sourceField);
85
86
  const destField = normalizeFieldName(relationship.destField);
86
87
  assert(sourceField.length === destField.length, 'Source and destination fields must have the same length');
87
- return {
88
+ const destSchema = normalizeLazyTableSchema(relationship.destSchema, tableSchemaCache, assertFieldRelation);
89
+ const normalized = {
88
90
  sourceField,
89
91
  destField,
90
- destSchema: normalizeLazyTableSchema(relationship.destSchema, tableSchemaCache),
92
+ destSchema,
91
93
  };
94
+ assertFieldRelation(tableName, relationshipName, normalized);
95
+ return normalized;
92
96
  }
93
- function normalizeJunctionRelationship(relationship, tableSchemaCache) {
94
- return [
95
- normalizeFieldRelationship(relationship[0], tableSchemaCache),
96
- normalizeFieldRelationship(relationship[1], tableSchemaCache),
97
- ];
97
+ function normalizeJunctionRelationship(tableName, relationshipName, relationship, tableSchemaCache, assertFieldRelation) {
98
+ const first = normalizeFieldRelationship(tableName, relationshipName, relationship[0], tableSchemaCache, assertFieldRelation);
99
+ const second = normalizeFieldRelationship(first.destSchema.tableName, relationshipName, relationship[1], tableSchemaCache, assertFieldRelation);
100
+ return [first, second];
98
101
  }
99
- function normalizeLazyTableSchema(tableSchema, buildCache) {
102
+ function normalizeLazyTableSchema(tableSchema, buildCache, assertFieldRelation) {
100
103
  const tableSchemaInstance = typeof tableSchema === 'function' ? tableSchema() : tableSchema;
101
104
  return normalizeTableSchemaWithCache(tableSchemaInstance, tableSchemaInstance.tableName, // Don't care about name here.
102
- buildCache);
105
+ buildCache, assertFieldRelation);
103
106
  }
104
107
  function normalizeFieldName(sourceField) {
105
108
  if (typeof sourceField === 'string') {
@@ -110,8 +113,9 @@ function normalizeFieldName(sourceField) {
110
113
  }
111
114
  export function normalizeTables(tables) {
112
115
  const result = {};
116
+ const assertFieldRelation = tableName => tableName in tables;
113
117
  for (const [name, table] of sortedEntries(tables)) {
114
- result[name] = normalizeTableSchemaWithCache(table, name, new Map());
118
+ result[name] = normalizeTableSchemaWithCache(table, name, new Map(), assertFieldRelation);
115
119
  }
116
120
  return result;
117
121
  }
@@ -1 +1 @@
1
- {"version":3,"file":"normalize-table-schema.js","sourceRoot":"","sources":["../../../../zero-schema/src/normalize-table-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"normalize-table-schema.js","sourceRoot":"","sources":["../../../../zero-schema/src/normalize-table-schema.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"normalized-schema.d.ts","sourceRoot":"","sources":["../../../../zero-schema/src/normalized-schema.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,6BAA6B,EAClC,KAAK,qBAAqB,EAE3B,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAExC;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAKhE;AAED,qBAAa,gBAAgB;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,qBAAqB,CAAC;KACjD,CAAC;gBAEU,MAAM,EAAE,MAAM;CAI3B;AAED,MAAM,MAAM,wBAAwB,GAAG,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,GAAG;IACxE,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,6BAA6B,CAAC;KACzD,CAAC;CACH,CAAC"}
1
+ {"version":3,"file":"normalized-schema.d.ts","sourceRoot":"","sources":["../../../../zero-schema/src/normalized-schema.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,KAAK,6BAA6B,EAElC,KAAK,qBAAqB,EAE3B,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAKxC;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAUhE;AAED,qBAAa,gBAAgB;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,qBAAqB,CAAC;KACjD,CAAC;gBAEU,MAAM,EAAE,MAAM;CAI3B;AAED,MAAM,MAAM,wBAAwB,GAAG,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,GAAG;IACxE,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,6BAA6B,CAAC;KACzD,CAAC;CACH,CAAC"}
@@ -1,5 +1,7 @@
1
+ import { assert } from '../../shared/src/asserts.js';
1
2
  import { sortedEntries } from '../../shared/src/sorted-entries.js';
2
3
  import { normalizeTableSchemaWithCache, } from './normalize-table-schema.js';
4
+ const normalizedCache = new WeakMap();
3
5
  /**
4
6
  * Creates a normalized schema from a schema.
5
7
  *
@@ -10,7 +12,11 @@ export function normalizeSchema(schema) {
10
12
  if (schema instanceof NormalizedSchema) {
11
13
  return schema;
12
14
  }
13
- return new NormalizedSchema(schema);
15
+ let s;
16
+ if (!(s = normalizedCache.get(schema))) {
17
+ normalizedCache.set(schema, (s = new NormalizedSchema(schema)));
18
+ }
19
+ return s;
14
20
  }
15
21
  export class NormalizedSchema {
16
22
  version;
@@ -23,8 +29,19 @@ export class NormalizedSchema {
23
29
  function normalizeTables(tables) {
24
30
  const rv = {};
25
31
  const tableSchemaCache = new Map();
32
+ function assertFieldRelation(tableName, relationShipName, relation) {
33
+ const destTableName = relation.destSchema.tableName;
34
+ assert(destTableName in tables, `Relationship "${tableName}"."${relationShipName}" destination "${destTableName}" is missing in schema`);
35
+ assertColumns(relation.sourceField, tables[tableName]);
36
+ assertColumns(relation.destField, tables[destTableName]);
37
+ }
38
+ function assertColumns(columnNames, table) {
39
+ for (const columnName of columnNames) {
40
+ assert(columnName in table.columns, `Column "${columnName}" is missing in table "${table.tableName}"`);
41
+ }
42
+ }
26
43
  for (const [name, table] of sortedEntries(tables)) {
27
- rv[name] = normalizeTableSchemaWithCache(table, name, tableSchemaCache);
44
+ rv[name] = normalizeTableSchemaWithCache(table, name, tableSchemaCache, assertFieldRelation);
28
45
  }
29
46
  return rv;
30
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"normalized-schema.js","sourceRoot":"","sources":["../../../../zero-schema/src/normalized-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,oCAAoC,CAAC;AAEjE,OAAO,EACL,6BAA6B,GAI9B,MAAM,6BAA6B,CAAC;AAGrC;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,MAAc;IAC5C,IAAI,MAAM,YAAY,gBAAgB,EAAE,CAAC;QACvC,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,OAAO,gBAAgB;IAClB,OAAO,CAAS;IAChB,MAAM,CAEb;IAEF,YAAY,MAAc;QACxB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;CACF;AAQD,SAAS,eAAe,CAAC,MAAwB;IAG/C,MAAM,EAAE,GAEH,EAAE,CAAC;IACR,MAAM,gBAAgB,GAAqB,IAAI,GAAG,EAAE,CAAC;IACrD,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,EAAE,CAAC,IAAI,CAAC,GAAG,6BAA6B,CAAC,KAAK,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"normalized-schema.js","sourceRoot":"","sources":["../../../../zero-schema/src/normalized-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,6BAA6B,CAAC;AACnD,OAAO,EAAC,aAAa,EAAC,MAAM,oCAAoC,CAAC;AAGjE,OAAO,EACL,6BAA6B,GAK9B,MAAM,6BAA6B,CAAC;AAIrC,MAAM,eAAe,GAAG,IAAI,OAAO,EAA4B,CAAC;AAEhE;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,MAAc;IAC5C,IAAI,MAAM,YAAY,gBAAgB,EAAE,CAAC;QACvC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,CAAC,CAAC;IACN,IAAI,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QACvC,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,OAAO,gBAAgB;IAClB,OAAO,CAAS;IAChB,MAAM,CAEb;IAEF,YAAY,MAAc;QACxB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;CACF;AAQD,SAAS,eAAe,CAAC,MAAwB;IAG/C,MAAM,EAAE,GAEH,EAAE,CAAC;IACR,MAAM,gBAAgB,GAAqB,IAAI,GAAG,EAAE,CAAC;IAErD,SAAS,mBAAmB,CAC1B,SAAiB,EACjB,gBAAwB,EACxB,QAAqC;QAErC,MAAM,aAAa,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC;QACpD,MAAM,CACJ,aAAa,IAAI,MAAM,EACvB,iBAAiB,SAAS,MAAM,gBAAgB,kBAAkB,aAAa,wBAAwB,CACxG,CAAC;QACF,aAAa,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;QACvD,aAAa,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,SAAS,aAAa,CAAC,WAAwB,EAAE,KAAkB;QACjE,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,MAAM,CACJ,UAAU,IAAI,KAAK,CAAC,OAAO,EAC3B,WAAW,UAAU,0BAA0B,KAAK,CAAC,SAAS,GAAG,CAClE,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,EAAE,CAAC,IAAI,CAAC,GAAG,6BAA6B,CACtC,KAAK,EACL,IAAI,EACJ,gBAAgB,EAChB,mBAAmB,CACpB,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { TableSchema } from './table-schema.js';
1
+ import { type TableSchema } from './table-schema.js';
2
2
  export type Schema = {
3
3
  readonly version: number;
4
4
  readonly tables: {
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../zero-schema/src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAEnD,MAAM,MAAM,MAAM,GAAG;IACnB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE;QAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,WAAW,CAAA;KAAC,CAAC;CAC1D,CAAC;AAEF,wBAAgB,YAAY,CAAC,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAEjE"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../zero-schema/src/schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAEnD,MAAM,MAAM,MAAM,GAAG;IACnB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE;QAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,WAAW,CAAA;KAAC,CAAC;CAC1D,CAAC;AAEF,wBAAgB,YAAY,CAAC,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAKjE"}
@@ -1,4 +1,9 @@
1
+ import { normalizeSchema } from './normalized-schema.js';
2
+ import {} from './table-schema.js';
1
3
  export function createSchema(schema) {
4
+ // normalizeSchema will throw if the schema is invalid.
5
+ normalizeSchema(schema);
6
+ // We still want to return s to cause less surprises.
2
7
  return schema;
3
8
  }
4
9
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../zero-schema/src/schema.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,YAAY,CAAyB,MAAS;IAC5D,OAAO,MAAW,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../zero-schema/src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAkB,MAAM,mBAAmB,CAAC;AAOnD,MAAM,UAAU,YAAY,CAAyB,MAAS;IAC5D,uDAAuD;IACvD,eAAe,CAAC,MAAM,CAAC,CAAC;IACxB,qDAAqD;IACrD,OAAO,MAAW,CAAC;AACrB,CAAC"}
@@ -1,10 +1,13 @@
1
1
  import { type Change, type Format, type Input, type Output, type Query, type QueryType, type Smash, type TableSchema, type View } from '../../zero-advanced/src/mod.js';
2
2
  import type { ResultType } from '../../zql/src/query/typed-view.js';
3
+ export type QueryResultDetails = {
4
+ readonly type: ResultType;
5
+ };
3
6
  export declare class SolidView<V extends View> implements Output {
4
7
  #private;
5
8
  constructor(input: Input, format?: Format, onDestroy?: () => void, queryComplete?: true | Promise<true>);
6
9
  get data(): V;
7
- get resultType(): ResultType;
10
+ get resultDetails(): QueryResultDetails;
8
11
  destroy(): void;
9
12
  push(change: Change): void;
10
13
  }
@@ -1 +1 @@
1
- {"version":3,"file":"solid-view.d.ts","sourceRoot":"","sources":["../../../../zero-solid/src/solid-view.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,MAAM,EAEX,KAAK,MAAM,EACX,KAAK,KAAK,EACV,KAAK,MAAM,EACX,KAAK,KAAK,EACV,KAAK,SAAS,EACd,KAAK,KAAK,EACV,KAAK,WAAW,EAChB,KAAK,IAAI,EAEV,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,mCAAmC,CAAC;AAElE,qBAAa,SAAS,CAAC,CAAC,SAAS,IAAI,CAAE,YAAW,MAAM;;gBAcpD,KAAK,EAAE,KAAK,EACZ,MAAM,GAAE,MAA6C,EACrD,SAAS,GAAE,MAAM,IAAe,EAChC,aAAa,GAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAQ;IAiC5C,IAAI,IAAI,IACwB,CAAC,CAChC;IAED,IAAI,UAAU,eAEb;IAED,OAAO;IAIP,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAa3B;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,SAAS,WAAW,EAC3B,OAAO,SAAS,SAAS,EAEzB,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,EAC/B,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,IAAI,EACrB,oBAAoB,EAAE,CAAC,EAAE,EAAE,MAAM,IAAI,KAAK,IAAI,EAC9C,aAAa,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAClC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAS3B"}
1
+ {"version":3,"file":"solid-view.d.ts","sourceRoot":"","sources":["../../../../zero-solid/src/solid-view.ts"],"names":[],"mappings":"AAMA,OAAO,EAEL,KAAK,MAAM,EAEX,KAAK,MAAM,EACX,KAAK,KAAK,EACV,KAAK,MAAM,EACX,KAAK,KAAK,EACV,KAAK,SAAS,EACd,KAAK,KAAK,EACV,KAAK,WAAW,EAChB,KAAK,IAAI,EAEV,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,mCAAmC,CAAC;AAElE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;CAC3B,CAAC;AAOF,qBAAa,SAAS,CAAC,CAAC,SAAS,IAAI,CAAE,YAAW,MAAM;;gBASpD,KAAK,EAAE,KAAK,EACZ,MAAM,GAAE,MAA6C,EACrD,SAAS,GAAE,MAAM,IAAe,EAChC,aAAa,GAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAQ;IA+B5C,IAAI,IAAI,IAAI,CAAC,CAEZ;IAED,IAAI,aAAa,IAAI,kBAAkB,CAEtC;IAED,OAAO,IAAI,IAAI;IAIf,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAa3B;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,SAAS,WAAW,EAC3B,OAAO,SAAS,SAAS,EAEzB,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,EAC/B,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,IAAI,EACrB,oBAAoB,EAAE,CAAC,EAAE,EAAE,MAAM,IAAI,KAAK,IAAI,EAC9C,aAAa,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAClC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAE3B"}
@@ -1,12 +1,9 @@
1
1
  import { type Accessor } from 'solid-js';
2
2
  import type { Query, QueryType, Smash, TableSchema } from '../../zero-advanced/src/mod.js';
3
- import type { ResultType } from '../../zql/src/query/typed-view.js';
4
- export type QueryResultDetails = Readonly<{
5
- type: ResultType;
6
- }>;
3
+ import { type QueryResultDetails } from './solid-view.js';
7
4
  export type QueryResult<TReturn extends QueryType> = readonly [
8
- Smash<TReturn>,
9
- QueryResultDetails
5
+ Accessor<Smash<TReturn>>,
6
+ Accessor<QueryResultDetails>
10
7
  ];
11
- export declare function useQuery<TSchema extends TableSchema, TReturn extends QueryType>(querySignal: () => Query<TSchema, TReturn>): Accessor<QueryResult<TReturn>>;
8
+ export declare function useQuery<TSchema extends TableSchema, TReturn extends QueryType>(querySignal: () => Query<TSchema, TReturn>): QueryResult<TReturn>;
12
9
  //# sourceMappingURL=use-query.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-query.d.ts","sourceRoot":"","sources":["../../../../zero-solid/src/use-query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,QAAQ,EAAwB,MAAM,UAAU,CAAC;AAC9D,OAAO,KAAK,EACV,KAAK,EAEL,SAAS,EACT,KAAK,EACL,WAAW,EACZ,MAAM,gCAAgC,CAAC;AAExC,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,mCAAmC,CAAC;AAElE,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC;IACxC,IAAI,EAAE,UAAU,CAAC;CAClB,CAAC,CAAC;AAEH,MAAM,MAAM,WAAW,CAAC,OAAO,SAAS,SAAS,IAAI,SAAS;IAC5D,KAAK,CAAC,OAAO,CAAC;IACd,kBAAkB;CACnB,CAAC;AAEF,wBAAgB,QAAQ,CACtB,OAAO,SAAS,WAAW,EAC3B,OAAO,SAAS,SAAS,EACzB,WAAW,EAAE,MAAM,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAa5E"}
1
+ {"version":3,"file":"use-query.d.ts","sourceRoot":"","sources":["../../../../zero-solid/src/use-query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,QAAQ,EAAC,MAAM,UAAU,CAAC;AAC9D,OAAO,KAAK,EAEV,KAAK,EACL,SAAS,EACT,KAAK,EACL,WAAW,EACZ,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAmB,KAAK,kBAAkB,EAAC,MAAM,iBAAiB,CAAC;AAE1E,MAAM,MAAM,WAAW,CAAC,OAAO,SAAS,SAAS,IAAI,SAAS;IAC5D,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACxB,QAAQ,CAAC,kBAAkB,CAAC;CAC7B,CAAC;AAEF,wBAAgB,QAAQ,CACtB,OAAO,SAAS,WAAW,EAC3B,OAAO,SAAS,SAAS,EACzB,WAAW,EAAE,MAAM,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,CAelE"}
package/out/zero.js CHANGED
@@ -13,9 +13,10 @@ import {
13
13
  escapeLike,
14
14
  getDefaultPuller,
15
15
  makeIDBName
16
- } from "./chunk-VLJ76GO7.js";
16
+ } from "./chunk-FEVIDCUL.js";
17
17
  import "./chunk-HARIWJ2J.js";
18
18
  import "./chunk-Y6OVFUGE.js";
19
+ import "./chunk-ZRR54VX5.js";
19
20
  import "./chunk-F5QR3K72.js";
20
21
  export {
21
22
  ANYONE_CAN,
@@ -1 +1 @@
1
- {"version":3,"file":"take.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/take.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,2CAA2C,CAAC;AAE1E,OAAO,EAEL,KAAK,MAAM,EAGZ,MAAM,aAAa,CAAC;AAErB,OAAO,EAAiC,KAAK,IAAI,EAAC,MAAM,WAAW,CAAC;AACpE,OAAO,KAAK,EACV,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,MAAM,EACN,OAAO,EACR,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAc,KAAK,MAAM,EAAC,MAAM,aAAa,CAAC;AAiBrD,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC;AAEtC;;;;;;;GAOG;AACH,qBAAa,IAAK,YAAW,QAAQ;;gBAUjC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS;IAgBzC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI/B,SAAS,IAAI,YAAY;IAIxB,KAAK,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC;IA2FtC,OAAO,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC;IA4CzC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAsZ1B,OAAO,IAAI,IAAI;CAGhB"}
1
+ {"version":3,"file":"take.d.ts","sourceRoot":"","sources":["../../../../../zql/src/ivm/take.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,2CAA2C,CAAC;AAE1E,OAAO,EAEL,KAAK,MAAM,EAGZ,MAAM,aAAa,CAAC;AAErB,OAAO,EAAiC,KAAK,IAAI,EAAC,MAAM,WAAW,CAAC;AACpE,OAAO,KAAK,EACV,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,MAAM,EACN,OAAO,EACR,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAc,KAAK,MAAM,EAAC,MAAM,aAAa,CAAC;AAiBrD,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC;AAEtC;;;;;;;GAOG;AACH,qBAAa,IAAK,YAAW,QAAQ;;gBAUjC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS;IAgBzC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI/B,SAAS,IAAI,YAAY;IAIxB,KAAK,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC;IAiGtC,OAAO,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC;IA4CzC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAsZ1B,OAAO,IAAI,IAAI;CAGhB"}
@@ -93,6 +93,7 @@ export class Take {
93
93
  let size = 0;
94
94
  let bound;
95
95
  let downstreamEarlyReturn = true;
96
+ let exceptionThrown = false;
96
97
  try {
97
98
  for (const inputNode of this.#input.fetch(req)) {
98
99
  yield inputNode;
@@ -104,13 +105,19 @@ export class Take {
104
105
  }
105
106
  downstreamEarlyReturn = false;
106
107
  }
108
+ catch (e) {
109
+ exceptionThrown = true;
110
+ throw e;
111
+ }
107
112
  finally {
108
- this.#setTakeState(takeStateKey, size, bound, this.#storage.get(MAX_BOUND_KEY));
109
- // If it becomes necessary to support downstream early return, this
110
- // assert should be removed, and replaced with code that consumes
111
- // the input stream until limit is reached or the input stream is
112
- // exhausted so that takeState is properly hydrated.
113
- assert(!downstreamEarlyReturn, 'Unexpected early return prevented full hydration');
113
+ if (!exceptionThrown) {
114
+ this.#setTakeState(takeStateKey, size, bound, this.#storage.get(MAX_BOUND_KEY));
115
+ // If it becomes necessary to support downstream early return, this
116
+ // assert should be removed, and replaced with code that consumes
117
+ // the input stream until limit is reached or the input stream is
118
+ // exhausted so that takeState is properly hydrated.
119
+ assert(!downstreamEarlyReturn, 'Unexpected early return prevented full hydration');
120
+ }
114
121
  }
115
122
  }
116
123
  *cleanup(req) {
@@ -1 +1 @@
1
- {"version":3,"file":"take.js","sourceRoot":"","sources":["../../../../../zql/src/ivm/take.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"take.js","sourceRoot":"","sources":["../../../../../zql/src/ivm/take.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rocicorp/zero",
3
- "version": "0.10.2025010500+85e3f0",
3
+ "version": "0.10.2025011100+4a1fd2",
4
4
  "scripts": {
5
5
  "build": "rm -rf out && npm run build-server && npm run build-client",
6
6
  "build-client": "tsc -p tsconfig.client.json && tsc-alias -p tsconfig.client.json && node tool/build.js",
@@ -11,7 +11,8 @@
11
11
  "check-types:watch": "tsc --watch",
12
12
  "format": "prettier --write .",
13
13
  "check-format": "prettier --check .",
14
- "lint": "eslint --ext .ts,.tsx,.js,.jsx src/"
14
+ "lint": "eslint --ext .ts,.tsx,.js,.jsx src/",
15
+ "prepack": "cp ../zero-cache/src/services/litestream/config.yml ./out/zero-cache/src/services/litestream/"
15
16
  },
16
17
  "dependencies": {
17
18
  "@badrap/valita": "0.3.11",
@@ -36,15 +37,14 @@
36
37
  "command-line-args": "^6.0.1",
37
38
  "command-line-usage": "^7.0.3",
38
39
  "compare-utf8": "^0.1.1",
40
+ "defu": "^6.1.4",
39
41
  "dotenv": "^16.4.5",
40
42
  "eventemitter3": "^5.0.1",
41
43
  "fastify": "^5.0.0",
42
44
  "jose": "^5.9.3",
43
45
  "js-xxhash": "^4.0.0",
44
46
  "json-custom-numbers": "^3.1.1",
45
- "lodash.kebabcase": "^4.1.1",
46
- "lodash.merge": "^4.6.2",
47
- "lodash.snakecase": "^4.1.1",
47
+ "kasi": "^1.1.0",
48
48
  "nanoid": "^5.0.8",
49
49
  "pg": "^8.11.3",
50
50
  "pg-format": "npm:pg-format-fix@^1.0.5",
@@ -53,7 +53,6 @@
53
53
  "postgres": "^3.4.4",
54
54
  "postgres-array": "^3.0.2",
55
55
  "semver": "^7.5.4",
56
- "strip-ansi": "^7.1.0",
57
56
  "tsx": "^4.19.1",
58
57
  "url-pattern": "^1.0.3",
59
58
  "ws": "^8.18.0"
@@ -91,6 +90,10 @@
91
90
  "./advanced": {
92
91
  "types": "./out/zero/src/advanced.d.ts",
93
92
  "default": "./out/advanced.js"
93
+ },
94
+ "./change-protocol": {
95
+ "types": "./out/zero-cache/src/services/change-source/protocol/mod.d.ts",
96
+ "default": "./out/change-protocol.js"
94
97
  }
95
98
  },
96
99
  "bin": {