@rocicorp/zero 0.11.2025011402 → 0.11.2025011801

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 (282) hide show
  1. package/out/{chunk-AII6TS5B.js → chunk-QV5ZN4MA.js} +635 -1834
  2. package/out/chunk-QV5ZN4MA.js.map +7 -0
  3. package/out/react.js.map +2 -2
  4. package/out/shared/src/btree-set.d.ts +34 -0
  5. package/out/shared/src/btree-set.d.ts.map +1 -0
  6. package/out/shared/src/btree-set.js +528 -0
  7. package/out/shared/src/btree-set.js.map +1 -0
  8. package/out/shared/src/expand.d.ts +3 -0
  9. package/out/shared/src/expand.d.ts.map +1 -1
  10. package/out/solid.js +7 -2
  11. package/out/solid.js.map +2 -2
  12. package/out/zero-advanced/src/mod.d.ts +1 -1
  13. package/out/zero-advanced/src/mod.d.ts.map +1 -1
  14. package/out/zero-cache/src/auth/load-schema.d.ts +1 -1
  15. package/out/zero-cache/src/auth/load-schema.d.ts.map +1 -1
  16. package/out/zero-cache/src/auth/write-authorizer.d.ts +1 -1
  17. package/out/zero-cache/src/auth/write-authorizer.d.ts.map +1 -1
  18. package/out/zero-cache/src/auth/write-authorizer.js +3 -6
  19. package/out/zero-cache/src/auth/write-authorizer.js.map +1 -1
  20. package/out/zero-cache/src/db/lite-tables.d.ts +14 -1
  21. package/out/zero-cache/src/db/lite-tables.d.ts.map +1 -1
  22. package/out/zero-cache/src/db/lite-tables.js +89 -6
  23. package/out/zero-cache/src/db/lite-tables.js.map +1 -1
  24. package/out/zero-cache/src/db/pg-to-lite.d.ts.map +1 -1
  25. package/out/zero-cache/src/db/pg-to-lite.js +3 -1
  26. package/out/zero-cache/src/db/pg-to-lite.js.map +1 -1
  27. package/out/zero-cache/src/db/postgres-replica-identity-enum.d.ts +9 -0
  28. package/out/zero-cache/src/db/postgres-replica-identity-enum.d.ts.map +1 -0
  29. package/out/zero-cache/src/db/postgres-replica-identity-enum.js +7 -0
  30. package/out/zero-cache/src/db/postgres-replica-identity-enum.js.map +1 -0
  31. package/out/zero-cache/src/db/specs.d.ts +39 -10
  32. package/out/zero-cache/src/db/specs.d.ts.map +1 -1
  33. package/out/zero-cache/src/db/specs.js +8 -1
  34. package/out/zero-cache/src/db/specs.js.map +1 -1
  35. package/out/zero-cache/src/server/change-streamer.d.ts.map +1 -1
  36. package/out/zero-cache/src/server/change-streamer.js +1 -1
  37. package/out/zero-cache/src/server/change-streamer.js.map +1 -1
  38. package/out/zero-cache/src/server/life-cycle.d.ts +2 -2
  39. package/out/zero-cache/src/server/life-cycle.d.ts.map +1 -1
  40. package/out/zero-cache/src/server/life-cycle.js +12 -3
  41. package/out/zero-cache/src/server/life-cycle.js.map +1 -1
  42. package/out/zero-cache/src/server/main.d.ts.map +1 -1
  43. package/out/zero-cache/src/server/main.js +11 -6
  44. package/out/zero-cache/src/server/main.js.map +1 -1
  45. package/out/zero-cache/src/server/multi/config.d.ts +14 -14
  46. package/out/zero-cache/src/server/multi/config.d.ts.map +1 -1
  47. package/out/zero-cache/src/server/multi/config.js +24 -2
  48. package/out/zero-cache/src/server/multi/config.js.map +1 -1
  49. package/out/zero-cache/src/server/multi/main.d.ts.map +1 -1
  50. package/out/zero-cache/src/server/multi/main.js +28 -8
  51. package/out/zero-cache/src/server/multi/main.js.map +1 -1
  52. package/out/zero-cache/src/server/multi/tenant-dispatcher.d.ts +1 -1
  53. package/out/zero-cache/src/server/multi/tenant-dispatcher.d.ts.map +1 -1
  54. package/out/zero-cache/src/server/multi/tenant-dispatcher.js +15 -3
  55. package/out/zero-cache/src/server/multi/tenant-dispatcher.js.map +1 -1
  56. package/out/zero-cache/src/server/replicator.js +2 -3
  57. package/out/zero-cache/src/server/replicator.js.map +1 -1
  58. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts +4 -4
  59. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts.map +1 -1
  60. package/out/zero-cache/src/services/change-source/pg/change-source.js +50 -32
  61. package/out/zero-cache/src/services/change-source/pg/change-source.js.map +1 -1
  62. package/out/zero-cache/src/services/change-source/pg/schema/ddl.d.ts +45 -25
  63. package/out/zero-cache/src/services/change-source/pg/schema/ddl.d.ts.map +1 -1
  64. package/out/zero-cache/src/services/change-source/pg/schema/init.d.ts.map +1 -1
  65. package/out/zero-cache/src/services/change-source/pg/schema/init.js +6 -28
  66. package/out/zero-cache/src/services/change-source/pg/schema/init.js.map +1 -1
  67. package/out/zero-cache/src/services/change-source/pg/schema/published.d.ts +18 -10
  68. package/out/zero-cache/src/services/change-source/pg/schema/published.d.ts.map +1 -1
  69. package/out/zero-cache/src/services/change-source/pg/schema/published.js +14 -7
  70. package/out/zero-cache/src/services/change-source/pg/schema/published.js.map +1 -1
  71. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts +7 -4
  72. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts.map +1 -1
  73. package/out/zero-cache/src/services/change-source/pg/schema/shard.js +29 -1
  74. package/out/zero-cache/src/services/change-source/pg/schema/shard.js.map +1 -1
  75. package/out/zero-cache/src/services/change-source/pg/schema/validation.d.ts +2 -2
  76. package/out/zero-cache/src/services/change-source/pg/schema/validation.d.ts.map +1 -1
  77. package/out/zero-cache/src/services/change-source/pg/schema/validation.js +8 -4
  78. package/out/zero-cache/src/services/change-source/pg/schema/validation.js.map +1 -1
  79. package/out/zero-cache/src/services/change-source/pg/sync-schema.d.ts.map +1 -1
  80. package/out/zero-cache/src/services/change-source/pg/sync-schema.js +1 -0
  81. package/out/zero-cache/src/services/change-source/pg/sync-schema.js.map +1 -1
  82. package/out/zero-cache/src/services/change-source/protocol/current/data.d.ts +10 -10
  83. package/out/zero-cache/src/services/change-source/protocol/current/downstream.d.ts +17 -15
  84. package/out/zero-cache/src/services/change-source/protocol/current/downstream.d.ts.map +1 -1
  85. package/out/zero-cache/src/services/change-source/protocol/current/downstream.js +2 -1
  86. package/out/zero-cache/src/services/change-source/protocol/current/downstream.js.map +1 -1
  87. package/out/zero-cache/src/services/change-source/protocol/current/mod.d.ts +1 -0
  88. package/out/zero-cache/src/services/change-source/protocol/current/mod.d.ts.map +1 -1
  89. package/out/zero-cache/src/services/change-source/protocol/current/mod.js +1 -0
  90. package/out/zero-cache/src/services/change-source/protocol/current/mod.js.map +1 -1
  91. package/out/zero-cache/src/services/change-source/protocol/current/status.d.ts +38 -0
  92. package/out/zero-cache/src/services/change-source/protocol/current/status.d.ts.map +1 -0
  93. package/out/zero-cache/src/services/change-source/protocol/current/status.js +14 -0
  94. package/out/zero-cache/src/services/change-source/protocol/current/status.js.map +1 -0
  95. package/out/zero-cache/src/services/change-source/protocol/current/upstream.d.ts +3 -13
  96. package/out/zero-cache/src/services/change-source/protocol/current/upstream.d.ts.map +1 -1
  97. package/out/zero-cache/src/services/change-source/protocol/current/upstream.js +3 -10
  98. package/out/zero-cache/src/services/change-source/protocol/current/upstream.js.map +1 -1
  99. package/out/zero-cache/src/services/change-streamer/change-streamer-http.d.ts +7 -3
  100. package/out/zero-cache/src/services/change-streamer/change-streamer-http.d.ts.map +1 -1
  101. package/out/zero-cache/src/services/change-streamer/change-streamer-http.js +30 -24
  102. package/out/zero-cache/src/services/change-streamer/change-streamer-http.js.map +1 -1
  103. package/out/zero-cache/src/services/change-streamer/change-streamer-service.d.ts +6 -4
  104. package/out/zero-cache/src/services/change-streamer/change-streamer-service.d.ts.map +1 -1
  105. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js +4 -1
  106. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js.map +1 -1
  107. package/out/zero-cache/src/services/change-streamer/change-streamer.d.ts +5 -5
  108. package/out/zero-cache/src/services/change-streamer/storer.d.ts +3 -1
  109. package/out/zero-cache/src/services/change-streamer/storer.d.ts.map +1 -1
  110. package/out/zero-cache/src/services/change-streamer/storer.js +18 -10
  111. package/out/zero-cache/src/services/change-streamer/storer.js.map +1 -1
  112. package/out/zero-cache/src/services/dispatcher/websocket-handoff.d.ts.map +1 -1
  113. package/out/zero-cache/src/services/dispatcher/websocket-handoff.js +2 -16
  114. package/out/zero-cache/src/services/dispatcher/websocket-handoff.js.map +1 -1
  115. package/out/zero-cache/src/services/http-service.d.ts +1 -1
  116. package/out/zero-cache/src/services/http-service.d.ts.map +1 -1
  117. package/out/zero-cache/src/services/http-service.js +1 -0
  118. package/out/zero-cache/src/services/http-service.js.map +1 -1
  119. package/out/zero-cache/src/services/litestream/commands.d.ts.map +1 -1
  120. package/out/zero-cache/src/services/litestream/commands.js +6 -2
  121. package/out/zero-cache/src/services/litestream/commands.js.map +1 -1
  122. package/out/zero-cache/src/services/mutagen/mutagen.d.ts +1 -1
  123. package/out/zero-cache/src/services/mutagen/mutagen.d.ts.map +1 -1
  124. package/out/zero-cache/src/services/replicator/incremental-sync.d.ts +1 -1
  125. package/out/zero-cache/src/services/replicator/incremental-sync.d.ts.map +1 -1
  126. package/out/zero-cache/src/services/replicator/incremental-sync.js +15 -5
  127. package/out/zero-cache/src/services/replicator/incremental-sync.js.map +1 -1
  128. package/out/zero-cache/src/services/replicator/replicator.d.ts.map +1 -1
  129. package/out/zero-cache/src/services/replicator/replicator.js +4 -2
  130. package/out/zero-cache/src/services/replicator/replicator.js.map +1 -1
  131. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts.map +1 -1
  132. package/out/zero-cache/src/services/view-syncer/cvr-store.js +20 -51
  133. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -1
  134. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts +0 -5
  135. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts.map +1 -1
  136. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +18 -35
  137. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
  138. package/out/zero-cache/src/services/view-syncer/snapshotter.d.ts +3 -3
  139. package/out/zero-cache/src/services/view-syncer/snapshotter.d.ts.map +1 -1
  140. package/out/zero-cache/src/services/view-syncer/snapshotter.js.map +1 -1
  141. package/out/zero-cache/src/types/processes.d.ts.map +1 -1
  142. package/out/zero-cache/src/types/processes.js +17 -2
  143. package/out/zero-cache/src/types/processes.js.map +1 -1
  144. package/out/zero-cache/src/types/row-key.d.ts.map +1 -1
  145. package/out/zero-cache/src/types/row-key.js +7 -1
  146. package/out/zero-cache/src/types/row-key.js.map +1 -1
  147. package/out/zero-cache/src/types/ws.d.ts +4 -0
  148. package/out/zero-cache/src/types/ws.d.ts.map +1 -0
  149. package/out/zero-cache/src/types/ws.js +19 -0
  150. package/out/zero-cache/src/types/ws.js.map +1 -0
  151. package/out/zero-client/src/client/context.d.ts.map +1 -1
  152. package/out/zero-client/src/client/crud.d.ts +3 -4
  153. package/out/zero-client/src/client/crud.d.ts.map +1 -1
  154. package/out/zero-client/src/client/keys.d.ts +2 -2
  155. package/out/zero-client/src/client/keys.d.ts.map +1 -1
  156. package/out/zero-client/src/client/zero-poke-handler.d.ts +3 -3
  157. package/out/zero-client/src/client/zero-poke-handler.d.ts.map +1 -1
  158. package/out/zero-client/src/client/zero.d.ts +1 -1
  159. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  160. package/out/zero-client/src/mod.d.ts +5 -4
  161. package/out/zero-client/src/mod.d.ts.map +1 -1
  162. package/out/zero-react/src/use-query.d.ts +6 -5
  163. package/out/zero-react/src/use-query.d.ts.map +1 -1
  164. package/out/zero-schema/src/builder/relationship-builder.d.ts +50 -0
  165. package/out/zero-schema/src/builder/relationship-builder.d.ts.map +1 -0
  166. package/out/zero-schema/src/builder/relationship-builder.js +24 -0
  167. package/out/zero-schema/src/builder/relationship-builder.js.map +1 -0
  168. package/out/zero-schema/src/builder/schema-builder.d.ts +40 -0
  169. package/out/zero-schema/src/builder/schema-builder.d.ts.map +1 -0
  170. package/out/zero-schema/src/builder/schema-builder.js +51 -0
  171. package/out/zero-schema/src/builder/schema-builder.js.map +1 -0
  172. package/out/zero-schema/src/builder/table-builder.d.ts +69 -0
  173. package/out/zero-schema/src/builder/table-builder.d.ts.map +1 -0
  174. package/out/zero-schema/src/builder/table-builder.js +102 -0
  175. package/out/zero-schema/src/builder/table-builder.js.map +1 -0
  176. package/out/zero-schema/src/mod.d.ts +2 -2
  177. package/out/zero-schema/src/mod.d.ts.map +1 -1
  178. package/out/zero-schema/src/permissions.d.ts +11 -12
  179. package/out/zero-schema/src/permissions.d.ts.map +1 -1
  180. package/out/zero-schema/src/schema-config.d.ts +2 -4
  181. package/out/zero-schema/src/schema-config.d.ts.map +1 -1
  182. package/out/zero-schema/src/schema-config.js +12 -61
  183. package/out/zero-schema/src/schema-config.js.map +1 -1
  184. package/out/zero-schema/src/table-schema.d.ts +28 -53
  185. package/out/zero-schema/src/table-schema.d.ts.map +1 -1
  186. package/out/zero-schema/src/table-schema.js +6 -13
  187. package/out/zero-schema/src/table-schema.js.map +1 -1
  188. package/out/zero-solid/src/solid-view.d.ts +4 -3
  189. package/out/zero-solid/src/solid-view.d.ts.map +1 -1
  190. package/out/zero-solid/src/use-query.d.ts +5 -4
  191. package/out/zero-solid/src/use-query.d.ts.map +1 -1
  192. package/out/zero.js +17 -7
  193. package/out/zql/src/ivm/exists.d.ts +1 -1
  194. package/out/zql/src/ivm/exists.d.ts.map +1 -1
  195. package/out/zql/src/ivm/exists.js +3 -3
  196. package/out/zql/src/ivm/exists.js.map +1 -1
  197. package/out/zql/src/ivm/fan-in.d.ts +1 -1
  198. package/out/zql/src/ivm/fan-in.d.ts.map +1 -1
  199. package/out/zql/src/ivm/fan-in.js +3 -2
  200. package/out/zql/src/ivm/fan-in.js.map +1 -1
  201. package/out/zql/src/ivm/filter.d.ts +1 -1
  202. package/out/zql/src/ivm/filter.d.ts.map +1 -1
  203. package/out/zql/src/ivm/filter.js +3 -3
  204. package/out/zql/src/ivm/filter.js.map +1 -1
  205. package/out/zql/src/ivm/join.d.ts +1 -1
  206. package/out/zql/src/ivm/join.d.ts.map +1 -1
  207. package/out/zql/src/ivm/join.js +2 -3
  208. package/out/zql/src/ivm/join.js.map +1 -1
  209. package/out/zql/src/ivm/memory-source.js +8 -10
  210. package/out/zql/src/ivm/memory-source.js.map +1 -1
  211. package/out/zql/src/ivm/memory-storage.d.ts.map +1 -1
  212. package/out/zql/src/ivm/operator.d.ts +5 -0
  213. package/out/zql/src/ivm/operator.d.ts.map +1 -1
  214. package/out/zql/src/ivm/operator.js +9 -0
  215. package/out/zql/src/ivm/operator.js.map +1 -1
  216. package/out/zql/src/ivm/skip.d.ts +1 -1
  217. package/out/zql/src/ivm/skip.d.ts.map +1 -1
  218. package/out/zql/src/ivm/skip.js +2 -3
  219. package/out/zql/src/ivm/skip.js.map +1 -1
  220. package/out/zql/src/ivm/take.d.ts +1 -1
  221. package/out/zql/src/ivm/take.d.ts.map +1 -1
  222. package/out/zql/src/ivm/take.js +2 -3
  223. package/out/zql/src/ivm/take.js.map +1 -1
  224. package/out/zql/src/ivm/view.d.ts +3 -3
  225. package/out/zql/src/ivm/view.d.ts.map +1 -1
  226. package/out/zql/src/query/auth-query.d.ts +9 -10
  227. package/out/zql/src/query/auth-query.d.ts.map +1 -1
  228. package/out/zql/src/query/auth-query.js +6 -7
  229. package/out/zql/src/query/auth-query.js.map +1 -1
  230. package/out/zql/src/query/expression.d.ts +11 -13
  231. package/out/zql/src/query/expression.d.ts.map +1 -1
  232. package/out/zql/src/query/expression.js +1 -1
  233. package/out/zql/src/query/expression.js.map +1 -1
  234. package/out/zql/src/query/query-impl.d.ts +26 -25
  235. package/out/zql/src/query/query-impl.d.ts.map +1 -1
  236. package/out/zql/src/query/query-impl.js +76 -52
  237. package/out/zql/src/query/query-impl.js.map +1 -1
  238. package/out/zql/src/query/query-internal.d.ts +5 -5
  239. package/out/zql/src/query/query-internal.d.ts.map +1 -1
  240. package/out/zql/src/query/query.d.ts +37 -80
  241. package/out/zql/src/query/query.d.ts.map +1 -1
  242. package/out/zql/src/query/query.js +0 -1
  243. package/out/zql/src/query/query.js.map +1 -1
  244. package/out/zqlite/src/table-source.d.ts.map +1 -1
  245. package/out/zqlite/src/table-source.js +33 -11
  246. package/out/zqlite/src/table-source.js.map +1 -1
  247. package/package.json +4 -4
  248. package/out/btree/b+tree.d.ts +0 -471
  249. package/out/btree/b+tree.d.ts.map +0 -1
  250. package/out/btree/b+tree.js +0 -1708
  251. package/out/btree/b+tree.js.map +0 -1
  252. package/out/btree/interfaces.d.ts +0 -270
  253. package/out/btree/interfaces.d.ts.map +0 -1
  254. package/out/btree/interfaces.js +0 -3
  255. package/out/btree/interfaces.js.map +0 -1
  256. package/out/btree/src/mod.d.ts +0 -2
  257. package/out/btree/src/mod.d.ts.map +0 -1
  258. package/out/btree/src/mod.js +0 -2
  259. package/out/btree/src/mod.js.map +0 -1
  260. package/out/chunk-AII6TS5B.js.map +0 -7
  261. package/out/shared/src/sorted-entries.d.ts +0 -2
  262. package/out/shared/src/sorted-entries.d.ts.map +0 -1
  263. package/out/shared/src/sorted-entries.js +0 -6
  264. package/out/shared/src/sorted-entries.js.map +0 -1
  265. package/out/zero-cache/src/db/queries.d.ts +0 -24
  266. package/out/zero-cache/src/db/queries.d.ts.map +0 -1
  267. package/out/zero-cache/src/db/queries.js +0 -60
  268. package/out/zero-cache/src/db/queries.js.map +0 -1
  269. package/out/zero-schema/src/column.d.ts +0 -79
  270. package/out/zero-schema/src/column.d.ts.map +0 -1
  271. package/out/zero-schema/src/normalize-table-schema.d.ts +0 -51
  272. package/out/zero-schema/src/normalize-table-schema.d.ts.map +0 -1
  273. package/out/zero-schema/src/normalize-table-schema.js +0 -122
  274. package/out/zero-schema/src/normalize-table-schema.js.map +0 -1
  275. package/out/zero-schema/src/normalized-schema.d.ts +0 -22
  276. package/out/zero-schema/src/normalized-schema.d.ts.map +0 -1
  277. package/out/zero-schema/src/normalized-schema.js +0 -48
  278. package/out/zero-schema/src/normalized-schema.js.map +0 -1
  279. package/out/zero-schema/src/schema.d.ts +0 -9
  280. package/out/zero-schema/src/schema.d.ts.map +0 -1
  281. package/out/zero-schema/src/schema.js +0 -9
  282. package/out/zero-schema/src/schema.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"btree-set.js","sourceRoot":"","sources":["../../../../shared/src/btree-set.ts"],"names":[],"mappings":"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"}
@@ -4,4 +4,7 @@
4
4
  export type Expand<T> = T extends infer O ? {
5
5
  [K in keyof O]: O[K];
6
6
  } : never;
7
+ export type ExpandRecursive<T> = T extends object ? T extends infer O ? {
8
+ [K in keyof O]: ExpandRecursive<O[K]>;
9
+ } : never : T;
7
10
  //# sourceMappingURL=expand.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"expand.d.ts","sourceRoot":"","sources":["../../../../shared/src/expand.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,GAAG;KAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAC,GAAG,KAAK,CAAC"}
1
+ {"version":3,"file":"expand.d.ts","sourceRoot":"","sources":["../../../../shared/src/expand.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,GAAG;KAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAC,GAAG,KAAK,CAAC;AAE3E,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GAC7C,CAAC,SAAS,MAAM,CAAC,GACf;KAAE,CAAC,IAAI,MAAM,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAC,GACvC,KAAK,GACP,CAAC,CAAC"}
package/out/solid.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Zero
3
- } from "./chunk-AII6TS5B.js";
3
+ } from "./chunk-QV5ZN4MA.js";
4
4
  import "./chunk-HARIWJ2J.js";
5
5
  import "./chunk-ULOTOBTC.js";
6
6
  import {
@@ -87,7 +87,12 @@ var SolidView = class {
87
87
  }
88
88
  };
89
89
  function solidViewFactory(_query, input, format, onDestroy, _onTransactionCommit, queryComplete) {
90
- return new SolidView(input, format, onDestroy, queryComplete);
90
+ return new SolidView(
91
+ input,
92
+ format,
93
+ onDestroy,
94
+ queryComplete
95
+ );
91
96
  }
92
97
 
93
98
  // ../zero-solid/src/use-query.ts
package/out/solid.js.map CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../zero-solid/src/create-zero.ts", "../../zero-solid/src/use-query.ts", "../../zero-solid/src/solid-view.ts"],
4
- "sourcesContent": ["import {batch} from 'solid-js';\nimport {Zero, type ZeroOptions} from '../../zero-client/src/mod.js';\nimport type {ZeroAdvancedOptions} from '../../zero-advanced/src/mod.js';\nimport type {Schema} from '../../zero-schema/src/mod.js';\n\nexport function createZero<S extends Schema>(options: ZeroOptions<S>): Zero<S> {\n const opts: ZeroAdvancedOptions<S> = {\n ...options,\n batchViewUpdates: batch,\n };\n return new Zero(opts);\n}\n", "import {createMemo, onCleanup, type Accessor} from 'solid-js';\nimport type {\n AdvancedQuery,\n Query,\n QueryType,\n Smash,\n TableSchema,\n} from '../../zero-advanced/src/mod.js';\nimport {solidViewFactory, type QueryResultDetails} from './solid-view.js';\n\nexport type QueryResult<TReturn extends QueryType> = readonly [\n Accessor<Smash<TReturn>>,\n Accessor<QueryResultDetails>,\n];\n\nexport function useQuery<\n TSchema extends TableSchema,\n TReturn extends QueryType,\n>(querySignal: () => Query<TSchema, TReturn>): QueryResult<TReturn> {\n // Wrap in in createMemo to ensure a new view is created if the querySignal changes.\n const view = createMemo(() => {\n const query = querySignal();\n const view = (query as AdvancedQuery<TSchema, TReturn>).materialize(\n solidViewFactory,\n );\n\n onCleanup(() => {\n view.destroy();\n });\n return view;\n });\n\n return [() => view().data, () => view().resultDetails];\n}\n", "import {\n createStore,\n produce,\n type SetStoreFunction,\n type Store,\n} from 'solid-js/store';\nimport {\n applyChange,\n type Change,\n type Entry,\n type Format,\n type Input,\n type Output,\n type Query,\n type QueryType,\n type Smash,\n type TableSchema,\n type View,\n type ViewFactory,\n} from '../../zero-advanced/src/mod.js';\nimport type {ResultType} from '../../zql/src/query/typed-view.js';\n\nexport type QueryResultDetails = {\n readonly type: ResultType;\n};\n\ntype State = [Entry, QueryResultDetails];\n\nconst complete = {type: 'complete'} as const;\nconst unknown = {type: 'unknown'} as const;\n\nexport class SolidView<V extends View> implements Output {\n readonly #input: Input;\n readonly #format: Format;\n readonly #onDestroy: () => void;\n\n #state: Store<State>;\n #setState: SetStoreFunction<State>;\n\n constructor(\n input: Input,\n format: Format = {singular: false, relationships: {}},\n onDestroy: () => void = () => {},\n queryComplete: true | Promise<true> = true,\n ) {\n this.#input = input;\n this.#format = format;\n this.#onDestroy = onDestroy;\n [this.#state, this.#setState] = createStore<State>([\n {'': format.singular ? undefined : []},\n queryComplete === true ? complete : unknown,\n ]);\n input.setOutput(this);\n\n this.#setState(\n produce(draftState => {\n for (const node of input.fetch({})) {\n applyChange(\n draftState[0],\n {type: 'add', node},\n input.getSchema(),\n '',\n this.#format,\n );\n }\n }),\n );\n if (queryComplete !== true) {\n void queryComplete.then(() => {\n this.#setState(oldState => [oldState[0], complete]);\n });\n }\n }\n\n get data(): V {\n return this.#state[0][''] as V;\n }\n\n get resultDetails(): QueryResultDetails {\n return this.#state[1];\n }\n\n destroy(): void {\n this.#onDestroy();\n }\n\n push(change: Change): void {\n this.#setState(\n produce((draftState: State) => {\n applyChange(\n draftState[0],\n change,\n this.#input.getSchema(),\n '',\n this.#format,\n );\n }),\n );\n }\n}\n\nexport function solidViewFactory<\n TSchema extends TableSchema,\n TReturn extends QueryType,\n>(\n _query: Query<TSchema, TReturn>,\n input: Input,\n format: Format,\n onDestroy: () => void,\n _onTransactionCommit: (cb: () => void) => void,\n queryComplete: true | Promise<true>,\n): SolidView<Smash<TReturn>> {\n return new SolidView<Smash<TReturn>>(input, format, onDestroy, queryComplete);\n}\n\nsolidViewFactory satisfies ViewFactory<TableSchema, QueryType, unknown>;\n"],
5
- "mappings": ";;;;;;;;;;;AAAA,SAAQ,aAAY;AAKb,SAAS,WAA6B,SAAkC;AAC7E,QAAM,OAA+B;AAAA,IACnC,GAAG;AAAA,IACH,kBAAkB;AAAA,EACpB;AACA,SAAO,IAAI,KAAK,IAAI;AACtB;;;ACXA,SAAQ,YAAY,iBAA+B;;;ACAnD;AAAA,EACE;AAAA,EACA;AAAA,OAGK;AAuBP,IAAM,WAAW,EAAC,MAAM,WAAU;AAClC,IAAM,UAAU,EAAC,MAAM,UAAS;AAEzB,IAAM,YAAN,MAAkD;AAAA,EAC9C;AAAA,EACA;AAAA,EACA;AAAA,EAET;AAAA,EACA;AAAA,EAEA,YACE,OACA,SAAiB,EAAC,UAAU,OAAO,eAAe,CAAC,EAAC,GACpD,YAAwB,MAAM;AAAA,EAAC,GAC/B,gBAAsC,MACtC;AACA,SAAK,SAAS;AACd,SAAK,UAAU;AACf,SAAK,aAAa;AAClB,KAAC,KAAK,QAAQ,KAAK,SAAS,IAAI,YAAmB;AAAA,MACjD,EAAC,IAAI,OAAO,WAAW,SAAY,CAAC,EAAC;AAAA,MACrC,kBAAkB,OAAO,WAAW;AAAA,IACtC,CAAC;AACD,UAAM,UAAU,IAAI;AAEpB,SAAK;AAAA,MACH,QAAQ,gBAAc;AACpB,mBAAW,QAAQ,MAAM,MAAM,CAAC,CAAC,GAAG;AAClC;AAAA,YACE,WAAW,CAAC;AAAA,YACZ,EAAC,MAAM,OAAO,KAAI;AAAA,YAClB,MAAM,UAAU;AAAA,YAChB;AAAA,YACA,KAAK;AAAA,UACP;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACH;AACA,QAAI,kBAAkB,MAAM;AAC1B,WAAK,cAAc,KAAK,MAAM;AAC5B,aAAK,UAAU,cAAY,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC;AAAA,MACpD,CAAC;AAAA,IACH;AAAA,EACF;AAAA,EAEA,IAAI,OAAU;AACZ,WAAO,KAAK,OAAO,CAAC,EAAE,EAAE;AAAA,EAC1B;AAAA,EAEA,IAAI,gBAAoC;AACtC,WAAO,KAAK,OAAO,CAAC;AAAA,EACtB;AAAA,EAEA,UAAgB;AACd,SAAK,WAAW;AAAA,EAClB;AAAA,EAEA,KAAK,QAAsB;AACzB,SAAK;AAAA,MACH,QAAQ,CAAC,eAAsB;AAC7B;AAAA,UACE,WAAW,CAAC;AAAA,UACZ;AAAA,UACA,KAAK,OAAO,UAAU;AAAA,UACtB;AAAA,UACA,KAAK;AAAA,QACP;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF;AACF;AAEO,SAAS,iBAId,QACA,OACA,QACA,WACA,sBACA,eAC2B;AAC3B,SAAO,IAAI,UAA0B,OAAO,QAAQ,WAAW,aAAa;AAC9E;;;ADlGO,SAAS,SAGd,aAAkE;AAElE,QAAM,OAAO,WAAW,MAAM;AAC5B,UAAM,QAAQ,YAAY;AAC1B,UAAMA,QAAQ,MAA0C;AAAA,MACtD;AAAA,IACF;AAEA,cAAU,MAAM;AACd,MAAAA,MAAK,QAAQ;AAAA,IACf,CAAC;AACD,WAAOA;AAAA,EACT,CAAC;AAED,SAAO,CAAC,MAAM,KAAK,EAAE,MAAM,MAAM,KAAK,EAAE,aAAa;AACvD;",
4
+ "sourcesContent": ["import {batch} from 'solid-js';\nimport {Zero, type ZeroOptions} from '../../zero-client/src/mod.js';\nimport type {ZeroAdvancedOptions} from '../../zero-advanced/src/mod.js';\nimport type {Schema} from '../../zero-schema/src/mod.js';\n\nexport function createZero<S extends Schema>(options: ZeroOptions<S>): Zero<S> {\n const opts: ZeroAdvancedOptions<S> = {\n ...options,\n batchViewUpdates: batch,\n };\n return new Zero(opts);\n}\n", "import {createMemo, onCleanup, type Accessor} from 'solid-js';\nimport type {\n AdvancedQuery,\n HumanReadable,\n Query,\n} from '../../zero-advanced/src/mod.js';\nimport {solidViewFactory, type QueryResultDetails} from './solid-view.js';\nimport type {Schema} from '../../zero-schema/src/mod.js';\n\nexport type QueryResult<TReturn> = readonly [\n Accessor<HumanReadable<TReturn>>,\n Accessor<QueryResultDetails>,\n];\n\nexport function useQuery<\n TSchema extends Schema,\n TTable extends keyof TSchema['tables'] & string,\n TReturn,\n>(querySignal: () => Query<TSchema, TTable, TReturn>): QueryResult<TReturn> {\n // Wrap in in createMemo to ensure a new view is created if the querySignal changes.\n const view = createMemo(() => {\n const query = querySignal();\n const view = (query as AdvancedQuery<TSchema, TTable, TReturn>).materialize(\n solidViewFactory,\n );\n\n onCleanup(() => {\n view.destroy();\n });\n return view;\n });\n\n return [() => view().data, () => view().resultDetails];\n}\n", "import {\n createStore,\n produce,\n type SetStoreFunction,\n type Store,\n} from 'solid-js/store';\nimport {\n applyChange,\n type Change,\n type Entry,\n type Format,\n type HumanReadable,\n type Input,\n type Output,\n type Query,\n type ViewFactory,\n} from '../../zero-advanced/src/mod.js';\nimport type {ResultType} from '../../zql/src/query/typed-view.js';\nimport type {Schema} from '../../zero-schema/src/mod.js';\n\nexport type QueryResultDetails = {\n readonly type: ResultType;\n};\n\ntype State = [Entry, QueryResultDetails];\n\nconst complete = {type: 'complete'} as const;\nconst unknown = {type: 'unknown'} as const;\n\nexport class SolidView<V> implements Output {\n readonly #input: Input;\n readonly #format: Format;\n readonly #onDestroy: () => void;\n\n #state: Store<State>;\n #setState: SetStoreFunction<State>;\n\n constructor(\n input: Input,\n format: Format = {singular: false, relationships: {}},\n onDestroy: () => void = () => {},\n queryComplete: true | Promise<true> = true,\n ) {\n this.#input = input;\n this.#format = format;\n this.#onDestroy = onDestroy;\n [this.#state, this.#setState] = createStore<State>([\n {'': format.singular ? undefined : []},\n queryComplete === true ? complete : unknown,\n ]);\n input.setOutput(this);\n\n this.#setState(\n produce(draftState => {\n for (const node of input.fetch({})) {\n applyChange(\n draftState[0],\n {type: 'add', node},\n input.getSchema(),\n '',\n this.#format,\n );\n }\n }),\n );\n if (queryComplete !== true) {\n void queryComplete.then(() => {\n this.#setState(oldState => [oldState[0], complete]);\n });\n }\n }\n\n get data(): V {\n return this.#state[0][''] as V;\n }\n\n get resultDetails(): QueryResultDetails {\n return this.#state[1];\n }\n\n destroy(): void {\n this.#onDestroy();\n }\n\n push(change: Change): void {\n this.#setState(\n produce((draftState: State) => {\n applyChange(\n draftState[0],\n change,\n this.#input.getSchema(),\n '',\n this.#format,\n );\n }),\n );\n }\n}\n\nexport function solidViewFactory<\n TSchema extends Schema,\n TTable extends keyof TSchema['tables'] & string,\n TReturn,\n>(\n _query: Query<TSchema, TTable, TReturn>,\n input: Input,\n format: Format,\n onDestroy: () => void,\n _onTransactionCommit: (cb: () => void) => void,\n queryComplete: true | Promise<true>,\n) {\n return new SolidView<HumanReadable<TReturn>>(\n input,\n format,\n onDestroy,\n queryComplete,\n );\n}\n\nsolidViewFactory satisfies ViewFactory<Schema, string, unknown, unknown>;\n"],
5
+ "mappings": ";;;;;;;;;;;AAAA,SAAQ,aAAY;AAKb,SAAS,WAA6B,SAAkC;AAC7E,QAAM,OAA+B;AAAA,IACnC,GAAG;AAAA,IACH,kBAAkB;AAAA,EACpB;AACA,SAAO,IAAI,KAAK,IAAI;AACtB;;;ACXA,SAAQ,YAAY,iBAA+B;;;ACAnD;AAAA,EACE;AAAA,EACA;AAAA,OAGK;AAqBP,IAAM,WAAW,EAAC,MAAM,WAAU;AAClC,IAAM,UAAU,EAAC,MAAM,UAAS;AAEzB,IAAM,YAAN,MAAqC;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EAET;AAAA,EACA;AAAA,EAEA,YACE,OACA,SAAiB,EAAC,UAAU,OAAO,eAAe,CAAC,EAAC,GACpD,YAAwB,MAAM;AAAA,EAAC,GAC/B,gBAAsC,MACtC;AACA,SAAK,SAAS;AACd,SAAK,UAAU;AACf,SAAK,aAAa;AAClB,KAAC,KAAK,QAAQ,KAAK,SAAS,IAAI,YAAmB;AAAA,MACjD,EAAC,IAAI,OAAO,WAAW,SAAY,CAAC,EAAC;AAAA,MACrC,kBAAkB,OAAO,WAAW;AAAA,IACtC,CAAC;AACD,UAAM,UAAU,IAAI;AAEpB,SAAK;AAAA,MACH,QAAQ,gBAAc;AACpB,mBAAW,QAAQ,MAAM,MAAM,CAAC,CAAC,GAAG;AAClC;AAAA,YACE,WAAW,CAAC;AAAA,YACZ,EAAC,MAAM,OAAO,KAAI;AAAA,YAClB,MAAM,UAAU;AAAA,YAChB;AAAA,YACA,KAAK;AAAA,UACP;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACH;AACA,QAAI,kBAAkB,MAAM;AAC1B,WAAK,cAAc,KAAK,MAAM;AAC5B,aAAK,UAAU,cAAY,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC;AAAA,MACpD,CAAC;AAAA,IACH;AAAA,EACF;AAAA,EAEA,IAAI,OAAU;AACZ,WAAO,KAAK,OAAO,CAAC,EAAE,EAAE;AAAA,EAC1B;AAAA,EAEA,IAAI,gBAAoC;AACtC,WAAO,KAAK,OAAO,CAAC;AAAA,EACtB;AAAA,EAEA,UAAgB;AACd,SAAK,WAAW;AAAA,EAClB;AAAA,EAEA,KAAK,QAAsB;AACzB,SAAK;AAAA,MACH,QAAQ,CAAC,eAAsB;AAC7B;AAAA,UACE,WAAW,CAAC;AAAA,UACZ;AAAA,UACA,KAAK,OAAO,UAAU;AAAA,UACtB;AAAA,UACA,KAAK;AAAA,QACP;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF;AACF;AAEO,SAAS,iBAKd,QACA,OACA,QACA,WACA,sBACA,eACA;AACA,SAAO,IAAI;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;;;ADvGO,SAAS,SAId,aAA0E;AAE1E,QAAM,OAAO,WAAW,MAAM;AAC5B,UAAM,QAAQ,YAAY;AAC1B,UAAMA,QAAQ,MAAkD;AAAA,MAC9D;AAAA,IACF;AAEA,cAAU,MAAM;AACd,MAAAA,MAAK,QAAQ;AAAA,IACf,CAAC;AACD,WAAOA;AAAA,EACT,CAAC;AAED,SAAO,CAAC,MAAM,KAAK,EAAE,MAAM,MAAM,KAAK,EAAE,aAAa;AACvD;",
6
6
  "names": ["view"]
7
7
  }
@@ -3,7 +3,7 @@ export type { Input, Output } from '../../zql/src/ivm/operator.js';
3
3
  export { applyChange } from '../../zql/src/ivm/view-apply-change.js';
4
4
  export type { Entry, Format, View, ViewFactory } from '../../zql/src/ivm/view.js';
5
5
  export type { AdvancedQuery } from '../../zql/src/query/query-internal.js';
6
- export type { Query, QueryType, Smash } from '../../zql/src/query/query.js';
6
+ export type { Query, HumanReadable } from '../../zql/src/query/query.js';
7
7
  export type { TableSchema } from '../../zero-schema/src/table-schema.js';
8
8
  export type { ZeroAdvancedOptions } from '../../zero-client/src/client/options.js';
9
9
  //# sourceMappingURL=mod.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../../zero-advanced/src/mod.ts"],"names":[],"mappings":"AAAA,YAAY,EAAC,MAAM,EAAC,MAAM,6BAA6B,CAAC;AACxD,YAAY,EAAC,KAAK,EAAE,MAAM,EAAC,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAC,WAAW,EAAC,MAAM,wCAAwC,CAAC;AACnE,YAAY,EAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAC,MAAM,2BAA2B,CAAC;AAChF,YAAY,EAAC,aAAa,EAAC,MAAM,uCAAuC,CAAC;AACzE,YAAY,EAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAC,MAAM,8BAA8B,CAAC;AAC1E,YAAY,EAAC,WAAW,EAAC,MAAM,uCAAuC,CAAC;AACvE,YAAY,EAAC,mBAAmB,EAAC,MAAM,yCAAyC,CAAC"}
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../../zero-advanced/src/mod.ts"],"names":[],"mappings":"AAAA,YAAY,EAAC,MAAM,EAAC,MAAM,6BAA6B,CAAC;AACxD,YAAY,EAAC,KAAK,EAAE,MAAM,EAAC,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAC,WAAW,EAAC,MAAM,wCAAwC,CAAC;AACnE,YAAY,EAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAC,MAAM,2BAA2B,CAAC;AAChF,YAAY,EAAC,aAAa,EAAC,MAAM,uCAAuC,CAAC;AACzE,YAAY,EAAC,KAAK,EAAE,aAAa,EAAC,MAAM,8BAA8B,CAAC;AACvE,YAAY,EAAC,WAAW,EAAC,MAAM,uCAAuC,CAAC;AACvE,YAAY,EAAC,mBAAmB,EAAC,MAAM,yCAAyC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { type PermissionsConfig } from '../../../zero-schema/src/compiled-permissions.js';
2
- import type { Schema } from '../../../zero-schema/src/schema.js';
2
+ import type { Schema } from '../../../zero-schema/src/builder/schema-builder.js';
3
3
  import type { ZeroConfig } from '../config/zero-config.js';
4
4
  export declare function getSchema(config: ZeroConfig): Promise<{
5
5
  schema: Schema;
@@ -1 +1 @@
1
- {"version":3,"file":"load-schema.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/auth/load-schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,iBAAiB,EAAC,MAAM,kDAAkD,CAAC;AACxF,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,oCAAoC,CAAC;AAE/D,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AAUzD,wBAAgB,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC;IACrD,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,iBAAiB,CAAC;CAChC,CAAC,CAiBD"}
1
+ {"version":3,"file":"load-schema.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/auth/load-schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,iBAAiB,EAAC,MAAM,kDAAkD,CAAC;AACxF,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,oDAAoD,CAAC;AAE/E,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AAUzD,wBAAgB,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC;IACrD,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,iBAAiB,CAAC;CAChC,CAAC,CAiBD"}
@@ -1,8 +1,8 @@
1
1
  import { LogContext } from '@rocicorp/logger';
2
2
  import type { JWTPayload } from 'jose';
3
3
  import type { CRUDOp, UpsertOp } from '../../../zero-protocol/src/mod.js';
4
+ import type { Schema } from '../../../zero-schema/src/builder/schema-builder.js';
4
5
  import type { PermissionsConfig } from '../../../zero-schema/src/compiled-permissions.js';
5
- import type { Schema } from '../../../zero-schema/src/schema.js';
6
6
  import { Database } from '../../../zqlite/src/db.js';
7
7
  import type { ZeroConfig } from '../config/zero-config.js';
8
8
  export interface WriteAuthorizer {
@@ -1 +1 @@
1
- {"version":3,"file":"write-authorizer.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/auth/write-authorizer.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,MAAM,CAAC;AAUrC,OAAO,KAAK,EACV,MAAM,EAIN,QAAQ,EACT,MAAM,mCAAmC,CAAC;AAK3C,OAAO,KAAK,EACV,iBAAiB,EAElB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,oCAAoC,CAAC;AAU/D,OAAO,EAAC,QAAQ,EAAC,MAAM,2BAA2B,CAAC;AAMnD,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AAUzD,MAAM,WAAW,eAAe;IAC9B,cAAc,CACZ,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,GAC/B,OAAO,CAAC;IACX,eAAe,CACb,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,GAC/B,OAAO,CAAC;IACX,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;CAC1D;AAED,qBAAa,mBAAoB,YAAW,eAAe;;gBAYvD,EAAE,EAAE,UAAU,EACd,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC,EAC3C,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,iBAAiB,GAAG,SAAS,EAC1C,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,MAAM;IAsBd,cAAc,CACZ,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE;IAsBlC,eAAe,CACb,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE;IAyDlC,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE;CAmSzD"}
1
+ {"version":3,"file":"write-authorizer.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/auth/write-authorizer.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,MAAM,CAAC;AASrC,OAAO,KAAK,EACV,MAAM,EAIN,QAAQ,EACT,MAAM,mCAAmC,CAAC;AAK3C,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,oDAAoD,CAAC;AAC/E,OAAO,KAAK,EACV,iBAAiB,EAElB,MAAM,kDAAkD,CAAC;AAS1D,OAAO,EAAC,QAAQ,EAAC,MAAM,2BAA2B,CAAC;AAMnD,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AASzD,MAAM,WAAW,eAAe;IAC9B,cAAc,CACZ,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,GAC/B,OAAO,CAAC;IACX,eAAe,CACb,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,GAC/B,OAAO,CAAC;IACX,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;CAC1D;AAED,qBAAa,mBAAoB,YAAW,eAAe;;gBAYvD,EAAE,EAAE,UAAU,EACd,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC,EAC3C,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,iBAAiB,GAAG,SAAS,EAC1C,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,MAAM;IAqBd,cAAc,CACZ,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE;IAsBlC,eAAe,CACb,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE;IAyDlC,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE;CA8RzD"}
@@ -3,7 +3,6 @@ import { tmpdir } from 'node:os';
3
3
  import path from 'node:path';
4
4
  import { pid } from 'node:process';
5
5
  import { assert } from '../../../shared/src/asserts.js';
6
- import { must } from '../../../shared/src/must.js';
7
6
  import { randInt } from '../../../shared/src/rand.js';
8
7
  import * as v from '../../../shared/src/valita.js';
9
8
  import { primaryKeyValueSchema, } from '../../../zero-protocol/src/primary-key.js';
@@ -13,10 +12,9 @@ import { dnf } from '../../../zql/src/query/dnf.js';
13
12
  import { Database } from '../../../zqlite/src/db.js';
14
13
  import { compile, sql } from '../../../zqlite/src/internal/sql.js';
15
14
  import { fromSQLiteTypes, TableSource, } from '../../../zqlite/src/table-source.js';
16
- import { listTables } from '../db/lite-tables.js';
15
+ import { computeZqlSpecs } from '../db/lite-tables.js';
17
16
  import { StatementRunner } from '../db/statements.js';
18
17
  import { DatabaseStorage } from '../services/view-syncer/database-storage.js';
19
- import { setSpecs } from '../services/view-syncer/pipeline-driver.js';
20
18
  import { mapLiteDataTypeToZqlSchemaValue } from '../types/lite.js';
21
19
  export class WriteAuthorizerImpl {
22
20
  #schema;
@@ -41,8 +39,7 @@ export class WriteAuthorizerImpl {
41
39
  getSource: name => this.#getSource(name),
42
40
  createStorage: () => cgStorage.createStorage(),
43
41
  };
44
- this.#tableSpecs = new Map();
45
- setSpecs(listTables(replica), this.#tableSpecs);
42
+ this.#tableSpecs = computeZqlSpecs(this.#lc, replica);
46
43
  this.#statementRunner = new StatementRunner(replica);
47
44
  }
48
45
  canPreMutation(authData, ops) {
@@ -194,7 +191,7 @@ export class WriteAuthorizerImpl {
194
191
  return true;
195
192
  }
196
193
  const rowPolicies = rules.row;
197
- let rowQuery = authQuery(must(this.#schema.tables[op.tableName], 'No schema found for table ' + op.tableName));
194
+ let rowQuery = authQuery(this.#schema, op.tableName);
198
195
  op.primaryKey.forEach(pk => {
199
196
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
200
197
  rowQuery = rowQuery.where(pk, '=', op.value[pk]);
@@ -1 +1 @@
1
- {"version":3,"file":"write-authorizer.js","sourceRoot":"","sources":["../../../../../zero-cache/src/auth/write-authorizer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"write-authorizer.js","sourceRoot":"","sources":["../../../../../zero-cache/src/auth/write-authorizer.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,18 @@
1
+ import type { LogContext } from '@rocicorp/logger';
1
2
  import type { Database } from '../../../zqlite/src/db.js';
2
- import type { LiteIndexSpec, LiteTableSpec } from './specs.js';
3
+ import type { LiteAndZqlSpec, LiteIndexSpec, LiteTableSpec } from './specs.js';
3
4
  export declare function listTables(db: Database): LiteTableSpec[];
4
5
  export declare function listIndexes(db: Database): LiteIndexSpec[];
6
+ /**
7
+ * Computes a TableSpec "view" of the replicated data that is
8
+ * suitable for processing / consumption for the client. This
9
+ * includes:
10
+ * * excluding tables without a PRIMARY KEY or UNIQUE INDEX
11
+ * * excluding columns with types that are not supported by ZQL
12
+ * * choosing columns to use as the primary key amongst those
13
+ * in unique indexes
14
+ *
15
+ * @param tableSpecs an optional map to reset and populate
16
+ */
17
+ export declare function computeZqlSpecs(lc: LogContext, replica: Database, tableSpecs?: Map<string, LiteAndZqlSpec>): Map<string, LiteAndZqlSpec>;
5
18
  //# sourceMappingURL=lite-tables.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lite-tables.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/db/lite-tables.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,2BAA2B,CAAC;AACxD,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EAEd,MAAM,YAAY,CAAC;AAWpB,wBAAgB,UAAU,CAAC,EAAE,EAAE,QAAQ,GAAG,aAAa,EAAE,CAyDxD;AAED,wBAAgB,WAAW,CAAC,EAAE,EAAE,QAAQ,GAAG,aAAa,EAAE,CA0CzD"}
1
+ {"version":3,"file":"lite-tables.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/db/lite-tables.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAMjD,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,2BAA2B,CAAC;AAKxD,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACb,aAAa,EAEd,MAAM,YAAY,CAAC;AAWpB,wBAAgB,UAAU,CAAC,EAAE,EAAE,QAAQ,GAAG,aAAa,EAAE,CAqDxD;AAED,wBAAgB,WAAW,CAAC,EAAE,EAAE,QAAQ,GAAG,aAAa,EAAE,CAyCzD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAC7B,EAAE,EAAE,UAAU,EACd,OAAO,EAAE,QAAQ,EACjB,UAAU,GAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAa,GAClD,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAqE7B"}
@@ -1,5 +1,9 @@
1
1
  import { assert } from '../../../shared/src/asserts.js';
2
2
  import { must } from '../../../shared/src/must.js';
3
+ import { difference } from '../../../shared/src/set-utils.js';
4
+ import * as v from '../../../shared/src/valita.js';
5
+ import { primaryKeySchema } from '../../../zero-protocol/src/primary-key.js';
6
+ import { dataTypeToZqlValueType, mapLiteDataTypeToZqlSchemaValue, } from '../types/lite.js';
3
7
  export function listTables(db) {
4
8
  const columns = db
5
9
  .prepare(`
@@ -14,6 +18,7 @@ export function listTables(db) {
14
18
  LEFT JOIN pragma_table_info(m.name) as p
15
19
  WHERE m.type = 'table'
16
20
  AND m.name NOT LIKE 'sqlite_%'
21
+ AND m.name NOT LIKE '_zero.%'
17
22
  `)
18
23
  .all();
19
24
  const tables = [];
@@ -24,7 +29,6 @@ export function listTables(db) {
24
29
  table = {
25
30
  name: col.table,
26
31
  columns: {},
27
- primaryKey: [],
28
32
  };
29
33
  tables.push(table);
30
34
  }
@@ -36,16 +40,16 @@ export function listTables(db) {
36
40
  dflt: col.dflt,
37
41
  };
38
42
  if (col.keyPos) {
43
+ if (!table.primaryKey) {
44
+ table = { ...table, primaryKey: [] };
45
+ }
46
+ assert(table.primaryKey);
39
47
  while (table.primaryKey.length < col.keyPos) {
40
48
  table.primaryKey.push('');
41
49
  }
42
50
  table.primaryKey[col.keyPos - 1] = col.name;
43
51
  }
44
52
  });
45
- // Sanity check that the primary keys are filled in.
46
- Object.values(tables).forEach(table => {
47
- assert(table.primaryKey.indexOf('') < 0, `Invalid primary key for ${JSON.stringify(table)}`);
48
- });
49
53
  return tables;
50
54
  }
51
55
  export function listIndexes(db) {
@@ -60,7 +64,6 @@ export function listIndexes(db) {
60
64
  JOIN pragma_index_list(idx.tbl_name) AS info ON info.name = idx.name
61
65
  JOIN pragma_index_xinfo(idx.name) as col
62
66
  WHERE idx.type = 'index' AND
63
- info.origin != 'pk' AND
64
67
  col.key = 1 AND
65
68
  idx.tbl_name NOT LIKE '_zero.%'
66
69
  ORDER BY idx.name, col.seqno ASC`)
@@ -82,4 +85,84 @@ export function listIndexes(db) {
82
85
  }
83
86
  return ret;
84
87
  }
88
+ /**
89
+ * Computes a TableSpec "view" of the replicated data that is
90
+ * suitable for processing / consumption for the client. This
91
+ * includes:
92
+ * * excluding tables without a PRIMARY KEY or UNIQUE INDEX
93
+ * * excluding columns with types that are not supported by ZQL
94
+ * * choosing columns to use as the primary key amongst those
95
+ * in unique indexes
96
+ *
97
+ * @param tableSpecs an optional map to reset and populate
98
+ */
99
+ export function computeZqlSpecs(lc, replica, tableSpecs = new Map()) {
100
+ tableSpecs.clear();
101
+ const uniqueColumns = new Map();
102
+ for (const { tableName, columns } of listIndexes(replica).filter(idx => idx.unique)) {
103
+ if (!uniqueColumns.has(tableName)) {
104
+ uniqueColumns.set(tableName, []);
105
+ }
106
+ uniqueColumns.get(tableName)?.push(Object.keys(columns));
107
+ }
108
+ listTables(replica).forEach(fullTable => {
109
+ // Only include columns for which the mapped ZQL Value is defined.
110
+ const columns = Object.fromEntries(Object.entries(fullTable.columns).filter(([_, spec]) => dataTypeToZqlValueType(spec.dataType)));
111
+ const visibleColumns = new Set(Object.keys(columns));
112
+ // Collect all columns that are part of a unique index.
113
+ const allKeyColumns = new Set();
114
+ // Examine all column combinations that can serve as a primary key.
115
+ const keys = (uniqueColumns.get(fullTable.name) ?? []).filter(key => {
116
+ if (difference(new Set(key), visibleColumns).size > 0) {
117
+ return false; // Exclude indexes over non-visible columns.
118
+ }
119
+ for (const col of key) {
120
+ allKeyColumns.add(col);
121
+ }
122
+ return true;
123
+ });
124
+ if (keys.length === 0) {
125
+ // Only include tables with a row key.
126
+ lc.debug?.(`not syncing table ${fullTable.name} because it has no primary key`);
127
+ return;
128
+ }
129
+ // Pick the "best" (i.e. shortest) key for default IVM operations.
130
+ const primaryKey = keys.sort(keyCmp)[0];
131
+ // The unionKey is used to reference rows in the CVR (and del-patches),
132
+ // which facilitates clients migrating from one PK to another.
133
+ // TODO: Update CVR to use this.
134
+ const unionKey = [...allKeyColumns];
135
+ const tableSpec = {
136
+ ...fullTable,
137
+ columns,
138
+ // normalize (sort) keys to minimize creating new objects.
139
+ // See row-key.ts: normalizedKeyOrder()
140
+ primaryKey: v.parse(primaryKey.sort(), primaryKeySchema),
141
+ unionKey: v.parse(unionKey.sort(), primaryKeySchema),
142
+ };
143
+ tableSpecs.set(tableSpec.name, {
144
+ tableSpec,
145
+ zqlSpec: Object.fromEntries(Object.entries(tableSpec.columns).map(([name, { dataType }]) => [
146
+ name,
147
+ mapLiteDataTypeToZqlSchemaValue(dataType),
148
+ ])),
149
+ });
150
+ });
151
+ return tableSpecs;
152
+ }
153
+ // Deterministic comparator for favoring shorter row keys.
154
+ function keyCmp(a, b) {
155
+ if (a.length !== b.length) {
156
+ return a.length - b.length; // Fewer columns are better.
157
+ }
158
+ for (let i = 0; i < a.length; i++) {
159
+ if (a[i] < b[i]) {
160
+ return -1;
161
+ }
162
+ if (a[i] > b[i]) {
163
+ return 1;
164
+ }
165
+ }
166
+ return 0;
167
+ }
85
168
  //# sourceMappingURL=lite-tables.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"lite-tables.js","sourceRoot":"","sources":["../../../../../zero-cache/src/db/lite-tables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,gCAAgC,CAAC;AACtD,OAAO,EAAC,IAAI,EAAC,MAAM,6BAA6B,CAAC;AAiBjD,MAAM,UAAU,UAAU,CAAC,EAAY;IACrC,MAAM,OAAO,GAAG,EAAE;SACf,OAAO,CACN;;;;;;;;;;;;OAYC,CACF;SACA,GAAG,EAAkB,CAAC;IAEzB,MAAM,MAAM,GAAoB,EAAE,CAAC;IACnC,IAAI,KAAgC,CAAC;IAErC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACpB,IAAI,GAAG,CAAC,KAAK,KAAK,KAAK,EAAE,IAAI,EAAE,CAAC;YAC9B,YAAY;YACZ,KAAK,GAAG;gBACN,IAAI,EAAE,GAAG,CAAC,KAAK;gBACf,OAAO,EAAE,EAAE;gBACX,UAAU,EAAE,EAAE;aACf,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;QAED,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG;YACxB,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC;YAC1C,QAAQ,EAAE,GAAG,CAAC,IAAI;YAClB,sBAAsB,EAAE,IAAI;YAC5B,OAAO,EAAE,GAAG,CAAC,OAAO,KAAK,CAAC;YAC1B,IAAI,EAAE,GAAG,CAAC,IAAI;SACf,CAAC;QACF,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,OAAO,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;gBAC5C,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC5B,CAAC;YACD,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC;QAC9C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,oDAAoD;IACpD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACpC,MAAM,CACJ,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,EAChC,2BAA2B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CACnD,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,EAAY;IACtC,MAAM,OAAO,GAAG,EAAE;SACf,OAAO,CACN;;;;;;;;;;;;;wCAakC,CACnC;SACA,GAAG,EAMH,CAAC;IAEJ,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,KAAK,MAAM,EAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAC,IAAI,OAAO,EAAE,CAAC;QACxE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,IAAI,EAAE,CAAC;YAC9B,kDAAkD;YAClD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,IAAI,CAAC;gBACP,SAAS;gBACT,IAAI;gBACJ,OAAO,EAAE,EAAC,CAAC,MAAM,CAAC,EAAE,GAAG,EAAC;gBACxB,MAAM,EAAE,MAAM,KAAK,CAAC;aACrB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"lite-tables.js","sourceRoot":"","sources":["../../../../../zero-cache/src/db/lite-tables.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"pg-to-lite.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/db/pg-to-lite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAKjD,OAAO,EACL,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,SAAS,EACf,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,wBAAwB,EAAE,UAMtC,CAAC;AAEF,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,UAAU,EACd,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,QAQf;AAqCD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,UAAU,CAAA;CAAC,EACxC,aAAa,CAAC,EAAE,gBAAgB,GAC/B,UAAU,CAwBZ;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,SAAS,GAAG,aAAa,CAkB7D;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,SAAS,GAAG,aAAa,CAOtE"}
1
+ {"version":3,"file":"pg-to-lite.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/db/pg-to-lite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAKjD,OAAO,EACL,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,SAAS,EACf,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,wBAAwB,EAAE,UAMtC,CAAC;AAEF,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,UAAU,EACd,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,QAQf;AAqCD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,UAAU,CAAA;CAAC,EACxC,aAAa,CAAC,EAAE,gBAAgB,GAC/B,UAAU,CAwBZ;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,SAAS,GAAG,aAAa,CAoB7D;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,SAAS,GAAG,aAAa,CAOtE"}
@@ -65,7 +65,9 @@ export function mapPostgresToLiteColumn(table, column, ignoreDefault) {
65
65
  };
66
66
  }
67
67
  export function mapPostgresToLite(t) {
68
- const { schema: _, ...liteSpec } = t;
68
+ // PRIMARY KEYS are not written to the replica. Instead, we rely
69
+ // UNIQUE indexes, including those created for upstream PRIMARY KEYs.
70
+ const { schema: _, primaryKey: _dropped, ...liteSpec } = t;
69
71
  const name = liteTableName(t);
70
72
  return {
71
73
  ...liteSpec,
@@ -1 +1 @@
1
- {"version":3,"file":"pg-to-lite.js","sourceRoot":"","sources":["../../../../../zero-cache/src/db/pg-to-lite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pg-to-lite.js","sourceRoot":"","sources":["../../../../../zero-cache/src/db/pg-to-lite.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export declare const Default = "d";
2
+ export declare const Nothing = "n";
3
+ export declare const Full = "f";
4
+ export declare const Index = "i";
5
+ export type Default = typeof Default;
6
+ export type Nothing = typeof Nothing;
7
+ export type Full = typeof Full;
8
+ export type Index = typeof Index;
9
+ //# sourceMappingURL=postgres-replica-identity-enum.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postgres-replica-identity-enum.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/db/postgres-replica-identity-enum.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,OAAO,MAAM,CAAC;AAC3B,eAAO,MAAM,OAAO,MAAM,CAAC;AAC3B,eAAO,MAAM,IAAI,MAAM,CAAC;AACxB,eAAO,MAAM,KAAK,MAAM,CAAC;AAEzB,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC;AACrC,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC;AACrC,MAAM,MAAM,IAAI,GAAG,OAAO,IAAI,CAAC;AAC/B,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC"}
@@ -0,0 +1,7 @@
1
+ /* eslint-disable @typescript-eslint/naming-convention */
2
+ // Values of the `relreplident` column in https://www.postgresql.org/docs/current/catalog-pg-class.html
3
+ export const Default = 'd';
4
+ export const Nothing = 'n';
5
+ export const Full = 'f';
6
+ export const Index = 'i';
7
+ //# sourceMappingURL=postgres-replica-identity-enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postgres-replica-identity-enum.js","sourceRoot":"","sources":["../../../../../zero-cache/src/db/postgres-replica-identity-enum.ts"],"names":[],"mappings":"AAAA,yDAAyD;AAEzD,uGAAuG;AAEvG,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAC;AAC3B,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAC;AAC3B,MAAM,CAAC,MAAM,IAAI,GAAG,GAAG,CAAC;AACxB,MAAM,CAAC,MAAM,KAAK,GAAG,GAAG,CAAC"}