@rocicorp/zero 0.10.2025010800 → 0.10.2025011400

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 (324) hide show
  1. package/README.md +32 -0
  2. package/out/advanced.js +1 -1
  3. package/out/{chunk-Y6OVFUGE.js → chunk-I5GSZARI.js} +1 -7
  4. package/out/{chunk-Y6OVFUGE.js.map → chunk-I5GSZARI.js.map} +1 -1
  5. package/out/{chunk-PPRTDNXA.js → chunk-TS7IMB6J.js} +785 -1660
  6. package/out/chunk-TS7IMB6J.js.map +7 -0
  7. package/out/react.js +1 -1
  8. package/out/react.js.map +1 -1
  9. package/out/replicache/src/btree/node.d.ts +5 -3
  10. package/out/replicache/src/btree/node.d.ts.map +1 -1
  11. package/out/replicache/src/btree/read.d.ts +4 -1
  12. package/out/replicache/src/btree/read.d.ts.map +1 -1
  13. package/out/replicache/src/btree/write.d.ts +4 -1
  14. package/out/replicache/src/btree/write.d.ts.map +1 -1
  15. package/out/replicache/src/dag/key-type-enum.d.ts +0 -1
  16. package/out/replicache/src/dag/key-type-enum.d.ts.map +1 -1
  17. package/out/replicache/src/db/commit.d.ts +12 -35
  18. package/out/replicache/src/db/commit.d.ts.map +1 -1
  19. package/out/replicache/src/db/index-operation-enum.d.ts +0 -1
  20. package/out/replicache/src/db/index-operation-enum.d.ts.map +1 -1
  21. package/out/replicache/src/db/index.d.ts +4 -1
  22. package/out/replicache/src/db/index.d.ts.map +1 -1
  23. package/out/replicache/src/db/meta-type-enum.d.ts +0 -7
  24. package/out/replicache/src/db/meta-type-enum.d.ts.map +1 -1
  25. package/out/replicache/src/db/read.d.ts +4 -1
  26. package/out/replicache/src/db/read.d.ts.map +1 -1
  27. package/out/replicache/src/db/rebase.d.ts +5 -2
  28. package/out/replicache/src/db/rebase.d.ts.map +1 -1
  29. package/out/replicache/src/db/write.d.ts +8 -6
  30. package/out/replicache/src/db/write.d.ts.map +1 -1
  31. package/out/replicache/src/format-version-enum.d.ts +0 -2
  32. package/out/replicache/src/format-version-enum.d.ts.map +1 -1
  33. package/out/replicache/src/format-version.d.ts +4 -1
  34. package/out/replicache/src/format-version.d.ts.map +1 -1
  35. package/out/replicache/src/get-default-puller.d.ts +1 -3
  36. package/out/replicache/src/get-default-puller.d.ts.map +1 -1
  37. package/out/replicache/src/invoke-kind-enum.d.ts +0 -1
  38. package/out/replicache/src/invoke-kind-enum.d.ts.map +1 -1
  39. package/out/replicache/src/mod.d.ts +5 -5
  40. package/out/replicache/src/mod.d.ts.map +1 -1
  41. package/out/replicache/src/mutation-recovery.d.ts +1 -2
  42. package/out/replicache/src/mutation-recovery.d.ts.map +1 -1
  43. package/out/replicache/src/persist/clients.d.ts +3 -1
  44. package/out/replicache/src/persist/clients.d.ts.map +1 -1
  45. package/out/replicache/src/persist/persist.d.ts +4 -1
  46. package/out/replicache/src/persist/persist.d.ts.map +1 -1
  47. package/out/replicache/src/persist/refresh.d.ts +4 -1
  48. package/out/replicache/src/persist/refresh.d.ts.map +1 -1
  49. package/out/replicache/src/puller.d.ts +2 -20
  50. package/out/replicache/src/puller.d.ts.map +1 -1
  51. package/out/replicache/src/replicache-impl.d.ts +1 -2
  52. package/out/replicache/src/replicache-impl.d.ts.map +1 -1
  53. package/out/replicache/src/subscriptions.d.ts +5 -3
  54. package/out/replicache/src/subscriptions.d.ts.map +1 -1
  55. package/out/replicache/src/sync/diff.d.ts +4 -1
  56. package/out/replicache/src/sync/diff.d.ts.map +1 -1
  57. package/out/replicache/src/sync/handle-pull-response-result-type-enum.d.ts +0 -1
  58. package/out/replicache/src/sync/handle-pull-response-result-type-enum.d.ts.map +1 -1
  59. package/out/replicache/src/sync/pull.d.ts +7 -33
  60. package/out/replicache/src/sync/pull.d.ts.map +1 -1
  61. package/out/replicache/src/sync/push.d.ts +3 -30
  62. package/out/replicache/src/sync/push.d.ts.map +1 -1
  63. package/out/shared/src/enum.d.ts +37 -0
  64. package/out/shared/src/enum.d.ts.map +1 -0
  65. package/out/shared/src/enum.js +2 -0
  66. package/out/shared/src/enum.js.map +1 -0
  67. package/out/shared/src/options.d.ts.map +1 -1
  68. package/out/shared/src/options.js +15 -7
  69. package/out/shared/src/options.js.map +1 -1
  70. package/out/solid.js +30 -36
  71. package/out/solid.js.map +3 -3
  72. package/out/zero/src/change-protocol.d.ts +2 -0
  73. package/out/zero/src/change-protocol.d.ts.map +1 -0
  74. package/out/zero/src/change-protocol.js +2 -0
  75. package/out/zero/src/change-protocol.js.map +1 -0
  76. package/out/zero-cache/src/config/zero-config.d.ts +30 -4
  77. package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
  78. package/out/zero-cache/src/config/zero-config.js +31 -15
  79. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  80. package/out/zero-cache/src/db/mode-enum.d.ts +5 -0
  81. package/out/zero-cache/src/db/mode-enum.d.ts.map +1 -0
  82. package/out/zero-cache/src/db/mode-enum.js +3 -0
  83. package/out/zero-cache/src/db/mode-enum.js.map +1 -0
  84. package/out/zero-cache/src/db/pg-to-lite.d.ts.map +1 -1
  85. package/out/zero-cache/src/db/pg-to-lite.js +2 -1
  86. package/out/zero-cache/src/db/pg-to-lite.js.map +1 -1
  87. package/out/zero-cache/src/db/postgres-type-class-enum.d.ts +15 -0
  88. package/out/zero-cache/src/db/postgres-type-class-enum.d.ts.map +1 -0
  89. package/out/zero-cache/src/db/postgres-type-class-enum.js +10 -0
  90. package/out/zero-cache/src/db/postgres-type-class-enum.js.map +1 -0
  91. package/out/zero-cache/src/db/specs.d.ts +7 -16
  92. package/out/zero-cache/src/db/specs.d.ts.map +1 -1
  93. package/out/zero-cache/src/db/specs.js +1 -11
  94. package/out/zero-cache/src/db/specs.js.map +1 -1
  95. package/out/zero-cache/src/db/transaction-pool.d.ts +3 -4
  96. package/out/zero-cache/src/db/transaction-pool.d.ts.map +1 -1
  97. package/out/zero-cache/src/db/transaction-pool.js +1 -5
  98. package/out/zero-cache/src/db/transaction-pool.js.map +1 -1
  99. package/out/zero-cache/src/server/change-streamer.d.ts.map +1 -1
  100. package/out/zero-cache/src/server/change-streamer.js +2 -6
  101. package/out/zero-cache/src/server/change-streamer.js.map +1 -1
  102. package/out/zero-cache/src/server/life-cycle.d.ts +3 -2
  103. package/out/zero-cache/src/server/life-cycle.d.ts.map +1 -1
  104. package/out/zero-cache/src/server/life-cycle.js +15 -12
  105. package/out/zero-cache/src/server/life-cycle.js.map +1 -1
  106. package/out/zero-cache/src/server/main.d.ts.map +1 -1
  107. package/out/zero-cache/src/server/main.js +25 -16
  108. package/out/zero-cache/src/server/main.js.map +1 -1
  109. package/out/zero-cache/src/server/multi/config.d.ts +20 -3
  110. package/out/zero-cache/src/server/multi/config.d.ts.map +1 -1
  111. package/out/zero-cache/src/server/multi/config.js +10 -2
  112. package/out/zero-cache/src/server/multi/config.js.map +1 -1
  113. package/out/zero-cache/src/server/multi/main.d.ts.map +1 -1
  114. package/out/zero-cache/src/server/multi/main.js +9 -3
  115. package/out/zero-cache/src/server/multi/main.js.map +1 -1
  116. package/out/zero-cache/src/services/{change-streamer → change-source}/pg/change-source.d.ts +2 -2
  117. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts.map +1 -0
  118. package/out/zero-cache/src/services/{change-streamer → change-source}/pg/change-source.js +18 -49
  119. package/out/zero-cache/src/services/change-source/pg/change-source.js.map +1 -0
  120. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts.map +1 -0
  121. package/out/zero-cache/src/services/{change-streamer → change-source}/pg/initial-sync.js +7 -8
  122. package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -0
  123. package/out/zero-cache/src/services/{change-streamer → change-source}/pg/lsn.d.ts +1 -1
  124. package/out/zero-cache/src/services/change-source/pg/lsn.d.ts.map +1 -0
  125. package/out/zero-cache/src/services/change-source/pg/lsn.js.map +1 -0
  126. package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/ddl.d.ts +15 -15
  127. package/out/zero-cache/src/services/change-source/pg/schema/ddl.d.ts.map +1 -0
  128. package/out/zero-cache/src/services/change-source/pg/schema/ddl.js.map +1 -0
  129. package/out/zero-cache/src/services/change-source/pg/schema/init.d.ts.map +1 -0
  130. package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/init.js +1 -1
  131. package/out/zero-cache/src/services/change-source/pg/schema/init.js.map +1 -0
  132. package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/published.d.ts +6 -6
  133. package/out/zero-cache/src/services/change-source/pg/schema/published.d.ts.map +1 -0
  134. package/out/zero-cache/src/services/change-source/pg/schema/published.js.map +1 -0
  135. package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/shard.d.ts +1 -1
  136. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts.map +1 -0
  137. package/out/zero-cache/src/services/change-source/pg/schema/shard.js.map +1 -0
  138. package/out/zero-cache/src/services/change-source/pg/schema/validation.d.ts.map +1 -0
  139. package/out/zero-cache/src/services/change-source/pg/schema/validation.js.map +1 -0
  140. package/out/zero-cache/src/services/change-source/pg/shard-config.d.ts.map +1 -0
  141. package/out/zero-cache/src/services/change-source/pg/shard-config.js.map +1 -0
  142. package/out/zero-cache/src/services/change-source/pg/sync-schema.d.ts.map +1 -0
  143. package/out/zero-cache/src/services/{change-streamer → change-source}/pg/sync-schema.js +7 -6
  144. package/out/zero-cache/src/services/change-source/pg/sync-schema.js.map +1 -0
  145. package/out/zero-cache/src/services/change-source/protocol/current/control.d.ts +19 -0
  146. package/out/zero-cache/src/services/change-source/protocol/current/control.d.ts.map +1 -0
  147. package/out/zero-cache/src/services/change-source/protocol/current/control.js +17 -0
  148. package/out/zero-cache/src/services/change-source/protocol/current/control.js.map +1 -0
  149. package/out/zero-cache/src/services/{change-streamer/schema/change.d.ts → change-source/protocol/current/data.d.ts} +28 -23
  150. package/out/zero-cache/src/services/change-source/protocol/current/data.d.ts.map +1 -0
  151. package/out/zero-cache/src/services/{change-streamer/schema/change.js → change-source/protocol/current/data.js} +9 -4
  152. package/out/zero-cache/src/services/change-source/protocol/current/data.js.map +1 -0
  153. package/out/zero-cache/src/services/change-source/protocol/current/downstream.d.ts +475 -0
  154. package/out/zero-cache/src/services/change-source/protocol/current/downstream.d.ts.map +1 -0
  155. package/out/zero-cache/src/services/change-source/protocol/current/downstream.js +23 -0
  156. package/out/zero-cache/src/services/change-source/protocol/current/downstream.js.map +1 -0
  157. package/out/zero-cache/src/services/change-source/protocol/current/mod.d.ts +6 -0
  158. package/out/zero-cache/src/services/change-source/protocol/current/mod.d.ts.map +1 -0
  159. package/out/zero-cache/src/services/change-source/protocol/current/mod.js +6 -0
  160. package/out/zero-cache/src/services/change-source/protocol/current/mod.js.map +1 -0
  161. package/out/zero-cache/src/services/change-source/protocol/current/path.d.ts +20 -0
  162. package/out/zero-cache/src/services/change-source/protocol/current/path.d.ts.map +1 -0
  163. package/out/zero-cache/src/services/change-source/protocol/current/path.js +20 -0
  164. package/out/zero-cache/src/services/change-source/protocol/current/path.js.map +1 -0
  165. package/out/zero-cache/src/services/change-source/protocol/current/upstream.d.ts +17 -0
  166. package/out/zero-cache/src/services/change-source/protocol/current/upstream.d.ts.map +1 -0
  167. package/out/zero-cache/src/services/change-source/protocol/current/upstream.js +12 -0
  168. package/out/zero-cache/src/services/change-source/protocol/current/upstream.js.map +1 -0
  169. package/out/zero-cache/src/services/change-source/protocol/mod.d.ts +2 -0
  170. package/out/zero-cache/src/services/change-source/protocol/mod.d.ts.map +1 -0
  171. package/out/zero-cache/src/services/change-source/protocol/mod.js +5 -0
  172. package/out/zero-cache/src/services/change-source/protocol/mod.js.map +1 -0
  173. package/out/zero-cache/src/services/change-streamer/change-streamer-service.d.ts +3 -159
  174. package/out/zero-cache/src/services/change-streamer/change-streamer-service.d.ts.map +1 -1
  175. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js +22 -22
  176. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js.map +1 -1
  177. package/out/zero-cache/src/services/change-streamer/change-streamer.d.ts +7 -319
  178. package/out/zero-cache/src/services/change-streamer/change-streamer.d.ts.map +1 -1
  179. package/out/zero-cache/src/services/change-streamer/change-streamer.js +3 -18
  180. package/out/zero-cache/src/services/change-streamer/change-streamer.js.map +1 -1
  181. package/out/zero-cache/src/services/change-streamer/error-type-enum.d.ts +9 -0
  182. package/out/zero-cache/src/services/change-streamer/error-type-enum.d.ts.map +1 -0
  183. package/out/zero-cache/src/services/change-streamer/error-type-enum.js +6 -0
  184. package/out/zero-cache/src/services/change-streamer/error-type-enum.js.map +1 -0
  185. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts +1 -1
  186. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts.map +1 -1
  187. package/out/zero-cache/src/services/change-streamer/storer.d.ts +1 -1
  188. package/out/zero-cache/src/services/change-streamer/storer.d.ts.map +1 -1
  189. package/out/zero-cache/src/services/change-streamer/storer.js +7 -25
  190. package/out/zero-cache/src/services/change-streamer/storer.js.map +1 -1
  191. package/out/zero-cache/src/services/change-streamer/subscriber.d.ts +5 -1
  192. package/out/zero-cache/src/services/change-streamer/subscriber.d.ts.map +1 -1
  193. package/out/zero-cache/src/services/change-streamer/subscriber.js +2 -1
  194. package/out/zero-cache/src/services/change-streamer/subscriber.js.map +1 -1
  195. package/out/zero-cache/src/services/litestream/commands.d.ts +8 -0
  196. package/out/zero-cache/src/services/litestream/commands.d.ts.map +1 -0
  197. package/out/zero-cache/src/services/litestream/commands.js +61 -0
  198. package/out/zero-cache/src/services/litestream/commands.js.map +1 -0
  199. package/out/zero-cache/src/services/litestream/config.yml +7 -0
  200. package/out/zero-cache/src/services/mutagen/mutagen.d.ts +1 -1
  201. package/out/zero-cache/src/services/mutagen/mutagen.d.ts.map +1 -1
  202. package/out/zero-cache/src/services/mutagen/mutagen.js +5 -4
  203. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  204. package/out/zero-cache/src/services/replicator/incremental-sync.d.ts +3 -2
  205. package/out/zero-cache/src/services/replicator/incremental-sync.d.ts.map +1 -1
  206. package/out/zero-cache/src/services/replicator/incremental-sync.js +17 -49
  207. package/out/zero-cache/src/services/replicator/incremental-sync.js.map +1 -1
  208. package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts +3 -4
  209. package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts.map +1 -1
  210. package/out/zero-cache/src/services/replicator/schema/replication-state.js +15 -20
  211. package/out/zero-cache/src/services/replicator/schema/replication-state.js.map +1 -1
  212. package/out/zero-cache/src/services/running-state.d.ts +7 -0
  213. package/out/zero-cache/src/services/running-state.d.ts.map +1 -1
  214. package/out/zero-cache/src/services/running-state.js +8 -1
  215. package/out/zero-cache/src/services/running-state.js.map +1 -1
  216. package/out/zero-cache/src/services/view-syncer/client-handler.js +1 -1
  217. package/out/zero-cache/src/services/view-syncer/client-handler.js.map +1 -1
  218. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts.map +1 -1
  219. package/out/zero-cache/src/services/view-syncer/cvr-store.js +3 -2
  220. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -1
  221. package/out/zero-cache/src/services/view-syncer/cvr.d.ts.map +1 -1
  222. package/out/zero-cache/src/services/view-syncer/cvr.js +4 -3
  223. package/out/zero-cache/src/services/view-syncer/cvr.js.map +1 -1
  224. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts.map +1 -1
  225. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +4 -2
  226. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
  227. package/out/zero-cache/src/services/view-syncer/snapshotter.js +3 -3
  228. package/out/zero-cache/src/services/view-syncer/snapshotter.js.map +1 -1
  229. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  230. package/out/zero-cache/src/services/view-syncer/view-syncer.js +6 -5
  231. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  232. package/out/zero-cache/src/types/error-for-client.d.ts +2 -2
  233. package/out/zero-cache/src/types/pg.js +2 -2
  234. package/out/zero-cache/src/types/pg.js.map +1 -1
  235. package/out/zero-cache/src/types/processes.d.ts +4 -2
  236. package/out/zero-cache/src/types/processes.d.ts.map +1 -1
  237. package/out/zero-cache/src/types/processes.js.map +1 -1
  238. package/out/zero-cache/src/types/schema-versions.js +1 -1
  239. package/out/zero-cache/src/types/schema-versions.js.map +1 -1
  240. package/out/zero-cache/src/workers/connection.d.ts.map +1 -1
  241. package/out/zero-cache/src/workers/connection.js +2 -1
  242. package/out/zero-cache/src/workers/connection.js.map +1 -1
  243. package/out/zero-cache/src/workers/syncer.js +1 -1
  244. package/out/zero-cache/src/workers/syncer.js.map +1 -1
  245. package/out/zero-client/src/client/connection-state-enum.d.ts +7 -0
  246. package/out/zero-client/src/client/connection-state-enum.d.ts.map +1 -0
  247. package/out/zero-client/src/client/metric-name-enum.d.ts +13 -0
  248. package/out/zero-client/src/client/metric-name-enum.d.ts.map +1 -0
  249. package/out/zero-client/src/client/metrics.d.ts +2 -9
  250. package/out/zero-client/src/client/metrics.d.ts.map +1 -1
  251. package/out/zero-client/src/client/ping-result-enum.d.ts +5 -0
  252. package/out/zero-client/src/client/ping-result-enum.d.ts.map +1 -0
  253. package/out/zero-client/src/client/server-error.d.ts +4 -1
  254. package/out/zero-client/src/client/server-error.d.ts.map +1 -1
  255. package/out/zero-client/src/client/zero.d.ts +4 -5
  256. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  257. package/out/zero-protocol/src/error-kind-enum.d.ts +31 -0
  258. package/out/zero-protocol/src/error-kind-enum.d.ts.map +1 -0
  259. package/out/zero-protocol/src/error-kind-enum.js +20 -0
  260. package/out/zero-protocol/src/error-kind-enum.js.map +1 -0
  261. package/out/zero-protocol/src/error.d.ts +4 -21
  262. package/out/zero-protocol/src/error.d.ts.map +1 -1
  263. package/out/zero-protocol/src/error.js +1 -21
  264. package/out/zero-protocol/src/error.js.map +1 -1
  265. package/out/zero-protocol/src/mutation-type-enum.d.ts +5 -0
  266. package/out/zero-protocol/src/mutation-type-enum.d.ts.map +1 -0
  267. package/out/zero-protocol/src/mutation-type-enum.js +4 -0
  268. package/out/zero-protocol/src/mutation-type-enum.js.map +1 -0
  269. package/out/zero-protocol/src/push.d.ts +8 -12
  270. package/out/zero-protocol/src/push.d.ts.map +1 -1
  271. package/out/zero-protocol/src/push.js +1 -5
  272. package/out/zero-protocol/src/push.js.map +1 -1
  273. package/out/zero-protocol/src/up.d.ts +2 -2
  274. package/out/zero-schema/src/normalize-table-schema.d.ts +4 -3
  275. package/out/zero-schema/src/normalize-table-schema.d.ts.map +1 -1
  276. package/out/zero-schema/src/normalize-table-schema.js +27 -23
  277. package/out/zero-schema/src/normalize-table-schema.js.map +1 -1
  278. package/out/zero-schema/src/normalized-schema.d.ts.map +1 -1
  279. package/out/zero-schema/src/normalized-schema.js +19 -2
  280. package/out/zero-schema/src/normalized-schema.js.map +1 -1
  281. package/out/zero-schema/src/schema.d.ts +1 -1
  282. package/out/zero-schema/src/schema.d.ts.map +1 -1
  283. package/out/zero-schema/src/schema.js +5 -4
  284. package/out/zero-schema/src/schema.js.map +1 -1
  285. package/out/zero-solid/src/solid-view.d.ts +4 -1
  286. package/out/zero-solid/src/solid-view.d.ts.map +1 -1
  287. package/out/zero-solid/src/use-query.d.ts +4 -7
  288. package/out/zero-solid/src/use-query.d.ts.map +1 -1
  289. package/out/zero.js +2 -2
  290. package/package.json +9 -5
  291. package/out/chunk-PPRTDNXA.js.map +0 -7
  292. package/out/zero-cache/src/services/change-streamer/pg/change-source.d.ts.map +0 -1
  293. package/out/zero-cache/src/services/change-streamer/pg/change-source.js.map +0 -1
  294. package/out/zero-cache/src/services/change-streamer/pg/initial-sync.d.ts.map +0 -1
  295. package/out/zero-cache/src/services/change-streamer/pg/initial-sync.js.map +0 -1
  296. package/out/zero-cache/src/services/change-streamer/pg/lsn.d.ts.map +0 -1
  297. package/out/zero-cache/src/services/change-streamer/pg/lsn.js.map +0 -1
  298. package/out/zero-cache/src/services/change-streamer/pg/schema/ddl.d.ts.map +0 -1
  299. package/out/zero-cache/src/services/change-streamer/pg/schema/ddl.js.map +0 -1
  300. package/out/zero-cache/src/services/change-streamer/pg/schema/init.d.ts.map +0 -1
  301. package/out/zero-cache/src/services/change-streamer/pg/schema/init.js.map +0 -1
  302. package/out/zero-cache/src/services/change-streamer/pg/schema/published.d.ts.map +0 -1
  303. package/out/zero-cache/src/services/change-streamer/pg/schema/published.js.map +0 -1
  304. package/out/zero-cache/src/services/change-streamer/pg/schema/shard.d.ts.map +0 -1
  305. package/out/zero-cache/src/services/change-streamer/pg/schema/shard.js.map +0 -1
  306. package/out/zero-cache/src/services/change-streamer/pg/schema/validation.d.ts.map +0 -1
  307. package/out/zero-cache/src/services/change-streamer/pg/schema/validation.js.map +0 -1
  308. package/out/zero-cache/src/services/change-streamer/pg/shard-config.d.ts.map +0 -1
  309. package/out/zero-cache/src/services/change-streamer/pg/shard-config.js.map +0 -1
  310. package/out/zero-cache/src/services/change-streamer/pg/sync-schema.d.ts.map +0 -1
  311. package/out/zero-cache/src/services/change-streamer/pg/sync-schema.js.map +0 -1
  312. package/out/zero-cache/src/services/change-streamer/schema/change.d.ts.map +0 -1
  313. package/out/zero-cache/src/services/change-streamer/schema/change.js.map +0 -1
  314. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/initial-sync.d.ts +0 -0
  315. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/lsn.js +0 -0
  316. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/ddl.js +0 -0
  317. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/init.d.ts +0 -0
  318. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/published.js +0 -0
  319. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/shard.js +0 -0
  320. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/validation.d.ts +0 -0
  321. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/schema/validation.js +0 -0
  322. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/shard-config.d.ts +0 -0
  323. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/shard-config.js +0 -0
  324. /package/out/zero-cache/src/services/{change-streamer → change-source}/pg/sync-schema.d.ts +0 -0
@@ -1,32 +1,15 @@
1
1
  import * as v from '../../shared/src/valita.js';
2
- export declare enum ErrorKind {
3
- AuthInvalidated = "AuthInvalidated",
4
- ClientNotFound = "ClientNotFound",
5
- InvalidConnectionRequest = "InvalidConnectionRequest",
6
- InvalidConnectionRequestBaseCookie = "InvalidConnectionRequestBaseCookie",
7
- InvalidConnectionRequestLastMutationID = "InvalidConnectionRequestLastMutationID",
8
- InvalidConnectionRequestClientDeleted = "InvalidConnectionRequestClientDeleted",
9
- InvalidMessage = "InvalidMessage",
10
- InvalidPush = "InvalidPush",
11
- MutationFailed = "MutationFailed",
12
- MutationRateLimited = "MutationRateLimited",
13
- Unauthorized = "Unauthorized",
14
- VersionNotSupported = "VersionNotSupported",
15
- SchemaVersionNotSupported = "SchemaVersionNotSupported",
16
- ServerOverloaded = "ServerOverloaded",
17
- Internal = "Internal"
18
- }
19
- export declare const errorKindSchema: v.UnionType<[v.Type<ErrorKind.AuthInvalidated>, v.Type<ErrorKind.ClientNotFound>, v.Type<ErrorKind.InvalidConnectionRequest>, v.Type<ErrorKind.InvalidConnectionRequestBaseCookie>, v.Type<ErrorKind.InvalidConnectionRequestLastMutationID>, v.Type<ErrorKind.InvalidConnectionRequestClientDeleted>, v.Type<ErrorKind.InvalidMessage>, v.Type<ErrorKind.InvalidPush>, v.Type<ErrorKind.MutationRateLimited>, v.Type<ErrorKind.MutationFailed>, v.Type<ErrorKind.Unauthorized>, v.Type<ErrorKind.VersionNotSupported>, v.Type<ErrorKind.SchemaVersionNotSupported>, v.Type<ErrorKind.Internal>]>;
2
+ export declare const errorKindSchema: v.UnionType<[v.Type<"AuthInvalidated">, v.Type<"ClientNotFound">, v.Type<"InvalidConnectionRequest">, v.Type<"InvalidConnectionRequestBaseCookie">, v.Type<"InvalidConnectionRequestLastMutationID">, v.Type<"InvalidConnectionRequestClientDeleted">, v.Type<"InvalidMessage">, v.Type<"InvalidPush">, v.Type<"MutationRateLimited">, v.Type<"MutationFailed">, v.Type<"Unauthorized">, v.Type<"VersionNotSupported">, v.Type<"SchemaVersionNotSupported">, v.Type<"Internal">]>;
20
3
  declare const serverOverloadedBodySchema: v.ObjectType<{
21
- kind: v.Type<ErrorKind.ServerOverloaded>;
4
+ kind: v.Type<"ServerOverloaded">;
22
5
  message: v.Type<string>;
23
6
  minBackoffMs: v.Optional<number>;
24
7
  }, undefined>;
25
8
  export declare const errorBodySchema: v.UnionType<[v.ObjectType<{
26
- kind: v.UnionType<[v.Type<ErrorKind.AuthInvalidated>, v.Type<ErrorKind.ClientNotFound>, v.Type<ErrorKind.InvalidConnectionRequest>, v.Type<ErrorKind.InvalidConnectionRequestBaseCookie>, v.Type<ErrorKind.InvalidConnectionRequestLastMutationID>, v.Type<ErrorKind.InvalidConnectionRequestClientDeleted>, v.Type<ErrorKind.InvalidMessage>, v.Type<ErrorKind.InvalidPush>, v.Type<ErrorKind.MutationRateLimited>, v.Type<ErrorKind.MutationFailed>, v.Type<ErrorKind.Unauthorized>, v.Type<ErrorKind.VersionNotSupported>, v.Type<ErrorKind.SchemaVersionNotSupported>, v.Type<ErrorKind.Internal>]>;
9
+ kind: v.UnionType<[v.Type<"AuthInvalidated">, v.Type<"ClientNotFound">, v.Type<"InvalidConnectionRequest">, v.Type<"InvalidConnectionRequestBaseCookie">, v.Type<"InvalidConnectionRequestLastMutationID">, v.Type<"InvalidConnectionRequestClientDeleted">, v.Type<"InvalidMessage">, v.Type<"InvalidPush">, v.Type<"MutationRateLimited">, v.Type<"MutationFailed">, v.Type<"Unauthorized">, v.Type<"VersionNotSupported">, v.Type<"SchemaVersionNotSupported">, v.Type<"Internal">]>;
27
10
  message: v.Type<string>;
28
11
  }, undefined>, v.ObjectType<{
29
- kind: v.Type<ErrorKind.ServerOverloaded>;
12
+ kind: v.Type<"ServerOverloaded">;
30
13
  message: v.Type<string>;
31
14
  minBackoffMs: v.Optional<number>;
32
15
  }, undefined>]>;
@@ -1 +1 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../../zero-protocol/src/error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAC;AAMhD,oBAAY,SAAS;IACnB,eAAe,oBAAoB;IACnC,cAAc,mBAAmB;IACjC,wBAAwB,6BAA6B;IACrD,kCAAkC,uCAAuC;IACzE,sCAAsC,2CAA2C;IACjF,qCAAqC,0CAA0C;IAC/E,cAAc,mBAAmB;IACjC,WAAW,gBAAgB;IAC3B,cAAc,mBAAmB;IACjC,mBAAmB,wBAAwB;IAC3C,YAAY,iBAAiB;IAC7B,mBAAmB,wBAAwB;IAC3C,yBAAyB,8BAA8B;IACvD,gBAAgB,qBAAqB;IACrC,QAAQ,aAAa;CACtB;AAED,eAAO,MAAM,eAAe,mkBAe3B,CAAC;AAOF,QAAA,MAAM,0BAA0B;;;;aAI9B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;eAG3B,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,kBAAkB,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAGlD,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC"}
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../../zero-protocol/src/error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAC;AAGhD,eAAO,MAAM,eAAe,mdAe3B,CAAC;AAOF,QAAA,MAAM,0BAA0B;;;;aAI9B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;eAG3B,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,kBAAkB,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAGlD,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC"}
@@ -1,25 +1,5 @@
1
1
  import * as v from '../../shared/src/valita.js';
2
- // Note: Metric names depend on these values,
3
- // so if you add or change on here a corresponding dashboard
4
- // change will likely be needed.
5
- export var ErrorKind;
6
- (function (ErrorKind) {
7
- ErrorKind["AuthInvalidated"] = "AuthInvalidated";
8
- ErrorKind["ClientNotFound"] = "ClientNotFound";
9
- ErrorKind["InvalidConnectionRequest"] = "InvalidConnectionRequest";
10
- ErrorKind["InvalidConnectionRequestBaseCookie"] = "InvalidConnectionRequestBaseCookie";
11
- ErrorKind["InvalidConnectionRequestLastMutationID"] = "InvalidConnectionRequestLastMutationID";
12
- ErrorKind["InvalidConnectionRequestClientDeleted"] = "InvalidConnectionRequestClientDeleted";
13
- ErrorKind["InvalidMessage"] = "InvalidMessage";
14
- ErrorKind["InvalidPush"] = "InvalidPush";
15
- ErrorKind["MutationFailed"] = "MutationFailed";
16
- ErrorKind["MutationRateLimited"] = "MutationRateLimited";
17
- ErrorKind["Unauthorized"] = "Unauthorized";
18
- ErrorKind["VersionNotSupported"] = "VersionNotSupported";
19
- ErrorKind["SchemaVersionNotSupported"] = "SchemaVersionNotSupported";
20
- ErrorKind["ServerOverloaded"] = "ServerOverloaded";
21
- ErrorKind["Internal"] = "Internal";
22
- })(ErrorKind || (ErrorKind = {}));
2
+ import * as ErrorKind from './error-kind-enum.js';
23
3
  export const errorKindSchema = v.union(v.literal(ErrorKind.AuthInvalidated), v.literal(ErrorKind.ClientNotFound), v.literal(ErrorKind.InvalidConnectionRequest), v.literal(ErrorKind.InvalidConnectionRequestBaseCookie), v.literal(ErrorKind.InvalidConnectionRequestLastMutationID), v.literal(ErrorKind.InvalidConnectionRequestClientDeleted), v.literal(ErrorKind.InvalidMessage), v.literal(ErrorKind.InvalidPush), v.literal(ErrorKind.MutationRateLimited), v.literal(ErrorKind.MutationFailed), v.literal(ErrorKind.Unauthorized), v.literal(ErrorKind.VersionNotSupported), v.literal(ErrorKind.SchemaVersionNotSupported), v.literal(ErrorKind.Internal));
24
4
  const basicErrorBodySchema = v.object({
25
5
  kind: errorKindSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../../../../zero-protocol/src/error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAC;AAEhD,6CAA6C;AAC7C,4DAA4D;AAC5D,gCAAgC;AAEhC,MAAM,CAAN,IAAY,SAgBX;AAhBD,WAAY,SAAS;IACnB,gDAAmC,CAAA;IACnC,8CAAiC,CAAA;IACjC,kEAAqD,CAAA;IACrD,sFAAyE,CAAA;IACzE,8FAAiF,CAAA;IACjF,4FAA+E,CAAA;IAC/E,8CAAiC,CAAA;IACjC,wCAA2B,CAAA;IAC3B,8CAAiC,CAAA;IACjC,wDAA2C,CAAA;IAC3C,0CAA6B,CAAA;IAC7B,wDAA2C,CAAA;IAC3C,oEAAuD,CAAA;IACvD,kDAAqC,CAAA;IACrC,kCAAqB,CAAA;AACvB,CAAC,EAhBW,SAAS,KAAT,SAAS,QAgBpB;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CACpC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,EACpC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,EACnC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,wBAAwB,CAAC,EAC7C,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,kCAAkC,CAAC,EACvD,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,sCAAsC,CAAC,EAC3D,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,qCAAqC,CAAC,EAC1D,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,EACnC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,EAChC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,EACxC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,EACnC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,EACjC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,EACxC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,yBAAyB,CAAC,EAC9C,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAC9B,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,IAAI,EAAE,eAAe;IACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;CACpB,CAAC,CAAC;AAEH,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC;IAC3C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CACpC,oBAAoB,EACpB,0BAA0B,CAC3B,CAAC;AAMF,MAAM,CAAC,MAAM,kBAAkB,GAAyB,CAAC,CAAC,KAAK,CAAC;IAC9D,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,eAAe;CAChB,CAAC,CAAC"}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../../../../zero-protocol/src/error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAC;AAChD,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAElD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CACpC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,EACpC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,EACnC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,wBAAwB,CAAC,EAC7C,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,kCAAkC,CAAC,EACvD,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,sCAAsC,CAAC,EAC3D,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,qCAAqC,CAAC,EAC1D,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,EACnC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,EAChC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,EACxC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,EACnC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,EACjC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,EACxC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,yBAAyB,CAAC,EAC9C,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAC9B,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,IAAI,EAAE,eAAe;IACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;CACpB,CAAC,CAAC;AAEH,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC;IAC3C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CACpC,oBAAoB,EACpB,0BAA0B,CAC3B,CAAC;AAMF,MAAM,CAAC,MAAM,kBAAkB,GAAyB,CAAC,CAAC,KAAK,CAAC;IAC9D,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,eAAe;CAChB,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare const CRUD = "crud";
2
+ export declare const Custom = "custom";
3
+ export type CRUD = typeof CRUD;
4
+ export type Custom = typeof Custom;
5
+ //# sourceMappingURL=mutation-type-enum.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutation-type-enum.d.ts","sourceRoot":"","sources":["../../../../zero-protocol/src/mutation-type-enum.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,IAAI,SAAS,CAAC;AAC3B,eAAO,MAAM,MAAM,WAAW,CAAC;AAE/B,MAAM,MAAM,IAAI,GAAG,OAAO,IAAI,CAAC;AAC/B,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC"}
@@ -0,0 +1,4 @@
1
+ /* eslint-disable @typescript-eslint/naming-convention */
2
+ export const CRUD = 'crud';
3
+ export const Custom = 'custom';
4
+ //# sourceMappingURL=mutation-type-enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutation-type-enum.js","sourceRoot":"","sources":["../../../../zero-protocol/src/mutation-type-enum.ts"],"names":[],"mappings":"AAAA,yDAAyD;AAEzD,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC;AAC3B,MAAM,CAAC,MAAM,MAAM,GAAG,QAAQ,CAAC"}
@@ -1,9 +1,5 @@
1
1
  import * as v from '../../shared/src/valita.js';
2
2
  export declare const CRUD_MUTATION_NAME = "_zero_crud";
3
- export declare enum MutationType {
4
- CRUD = "crud",
5
- Custom = "custom"
6
- }
7
3
  /**
8
4
  * Inserts if entity with id does not already exist.
9
5
  */
@@ -86,7 +82,7 @@ declare const crudArgSchema: v.ObjectType<{
86
82
  }, undefined>]>>;
87
83
  }, undefined>;
88
84
  export declare const crudMutationSchema: v.ObjectType<{
89
- type: v.Type<MutationType.CRUD>;
85
+ type: v.Type<"crud">;
90
86
  id: v.Type<number>;
91
87
  clientID: v.Type<string>;
92
88
  name: v.Type<"_zero_crud">;
@@ -116,7 +112,7 @@ export declare const crudMutationSchema: v.ObjectType<{
116
112
  timestamp: v.Type<number>;
117
113
  }, undefined>;
118
114
  export declare const customMutationSchema: v.ObjectType<{
119
- type: v.Type<MutationType.Custom>;
115
+ type: v.Type<"custom">;
120
116
  id: v.Type<number>;
121
117
  clientID: v.Type<string>;
122
118
  name: v.Type<string>;
@@ -124,7 +120,7 @@ export declare const customMutationSchema: v.ObjectType<{
124
120
  timestamp: v.Type<number>;
125
121
  }, undefined>;
126
122
  export declare const mutationSchema: v.UnionType<[v.ObjectType<{
127
- type: v.Type<MutationType.CRUD>;
123
+ type: v.Type<"crud">;
128
124
  id: v.Type<number>;
129
125
  clientID: v.Type<string>;
130
126
  name: v.Type<"_zero_crud">;
@@ -153,7 +149,7 @@ export declare const mutationSchema: v.UnionType<[v.ObjectType<{
153
149
  }, undefined>]>;
154
150
  timestamp: v.Type<number>;
155
151
  }, undefined>, v.ObjectType<{
156
- type: v.Type<MutationType.Custom>;
152
+ type: v.Type<"custom">;
157
153
  id: v.Type<number>;
158
154
  clientID: v.Type<string>;
159
155
  name: v.Type<string>;
@@ -163,7 +159,7 @@ export declare const mutationSchema: v.UnionType<[v.ObjectType<{
163
159
  export declare const pushBodySchema: v.ObjectType<{
164
160
  clientGroupID: v.Type<string>;
165
161
  mutations: v.ArrayType<v.UnionType<[v.ObjectType<{
166
- type: v.Type<MutationType.CRUD>;
162
+ type: v.Type<"crud">;
167
163
  id: v.Type<number>;
168
164
  clientID: v.Type<string>;
169
165
  name: v.Type<"_zero_crud">;
@@ -192,7 +188,7 @@ export declare const pushBodySchema: v.ObjectType<{
192
188
  }, undefined>]>;
193
189
  timestamp: v.Type<number>;
194
190
  }, undefined>, v.ObjectType<{
195
- type: v.Type<MutationType.Custom>;
191
+ type: v.Type<"custom">;
196
192
  id: v.Type<number>;
197
193
  clientID: v.Type<string>;
198
194
  name: v.Type<string>;
@@ -207,7 +203,7 @@ export declare const pushBodySchema: v.ObjectType<{
207
203
  export declare const pushMessageSchema: v.TupleType<[v.Type<"push">, v.ObjectType<{
208
204
  clientGroupID: v.Type<string>;
209
205
  mutations: v.ArrayType<v.UnionType<[v.ObjectType<{
210
- type: v.Type<MutationType.CRUD>;
206
+ type: v.Type<"crud">;
211
207
  id: v.Type<number>;
212
208
  clientID: v.Type<string>;
213
209
  name: v.Type<"_zero_crud">;
@@ -236,7 +232,7 @@ export declare const pushMessageSchema: v.TupleType<[v.Type<"push">, v.ObjectTyp
236
232
  }, undefined>]>;
237
233
  timestamp: v.Type<number>;
238
234
  }, undefined>, v.ObjectType<{
239
- type: v.Type<MutationType.Custom>;
235
+ type: v.Type<"custom">;
240
236
  id: v.Type<number>;
241
237
  clientID: v.Type<string>;
242
238
  name: v.Type<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../../../zero-protocol/src/push.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAC;AAIhD,eAAO,MAAM,kBAAkB,eAAe,CAAC;AAE/C,oBAAY,YAAY;IACtB,IAAI,SAAS;IACb,MAAM,WAAW;CAClB;AAED;;GAEG;AACH,QAAA,MAAM,cAAc;;;;;aAKlB,CAAC;AAEH;;;GAGG;AACH,QAAA,MAAM,cAAc;;;;;aAKlB,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,cAAc;;;;;aAMlB,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,cAAc;;;;;aAMlB,CAAC;AAEH,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;eAKjB,CAAC;AAEF,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;aAEjB,CAAC;AAIH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAO7B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;aAO/B,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAAoD,CAAC;AAEhF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAOzB,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAA+C,CAAC;AAE9E,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAClD,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;AACtC,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAC5D,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
1
+ {"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../../../zero-protocol/src/push.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAC;AAKhD,eAAO,MAAM,kBAAkB,eAAe,CAAC;AAE/C;;GAEG;AACH,QAAA,MAAM,cAAc;;;;;aAKlB,CAAC;AAEH;;;GAGG;AACH,QAAA,MAAM,cAAc;;;;;aAKlB,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,cAAc;;;;;aAMlB,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,cAAc;;;;;aAMlB,CAAC;AAEH,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;eAKjB,CAAC;AAEF,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;aAEjB,CAAC;AAIH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAO7B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;aAO/B,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAAoD,CAAC;AAEhF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAOzB,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAA+C,CAAC;AAE9E,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAClD,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;AACtC,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAC5D,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
@@ -1,13 +1,9 @@
1
1
  import { jsonSchema } from '../../shared/src/json-schema.js';
2
2
  import * as v from '../../shared/src/valita.js';
3
3
  import { rowSchema } from './data.js';
4
+ import * as MutationType from './mutation-type-enum.js';
4
5
  import { primaryKeySchema, primaryKeyValueRecordSchema } from './primary-key.js';
5
6
  export const CRUD_MUTATION_NAME = '_zero_crud';
6
- export var MutationType;
7
- (function (MutationType) {
8
- MutationType["CRUD"] = "crud";
9
- MutationType["Custom"] = "custom";
10
- })(MutationType || (MutationType = {}));
11
7
  /**
12
8
  * Inserts if entity with id does not already exist.
13
9
  */
@@ -1 +1 @@
1
- {"version":3,"file":"push.js","sourceRoot":"","sources":["../../../../zero-protocol/src/push.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"push.js","sourceRoot":"","sources":["../../../../zero-protocol/src/push.ts"],"names":[],"mappings":"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"}
@@ -30,7 +30,7 @@ export declare const upstreamSchema: v.UnionType<[v.TupleType<[v.Type<"initConne
30
30
  }, undefined>]>, v.TupleType<[v.Type<"push">, v.ObjectType<{
31
31
  clientGroupID: v.Type<string>;
32
32
  mutations: v.ArrayType<v.UnionType<[v.ObjectType<{
33
- type: v.Type<import("./push.js").MutationType.CRUD>;
33
+ type: v.Type<"crud">;
34
34
  id: v.Type<number>;
35
35
  clientID: v.Type<string>;
36
36
  name: v.Type<"_zero_crud">;
@@ -59,7 +59,7 @@ export declare const upstreamSchema: v.UnionType<[v.TupleType<[v.Type<"initConne
59
59
  }, undefined>]>;
60
60
  timestamp: v.Type<number>;
61
61
  }, undefined>, v.ObjectType<{
62
- type: v.Type<import("./push.js").MutationType.Custom>;
62
+ type: v.Type<"custom">;
63
63
  id: v.Type<number>;
64
64
  clientID: v.Type<string>;
65
65
  name: v.Type<string>;
@@ -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":"AACA,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,CAQjE"}
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,8 +1,9 @@
1
- import { assert } from '../../shared/src/asserts.js';
1
+ import { normalizeSchema } from './normalized-schema.js';
2
+ import {} from './table-schema.js';
2
3
  export function createSchema(schema) {
3
- for (const [tableName, table] of Object.entries(schema.tables)) {
4
- assert(tableName === table.tableName, `createSchema tableName mismatch, expected ${tableName} === ${table.tableName}`);
5
- }
4
+ // normalizeSchema will throw if the schema is invalid.
5
+ normalizeSchema(schema);
6
+ // We still want to return s to cause less surprises.
6
7
  return schema;
7
8
  }
8
9
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../zero-schema/src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,6BAA6B,CAAC;AAQnD,MAAM,UAAU,YAAY,CAAyB,MAAS;IAC5D,KAAK,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/D,MAAM,CACJ,SAAS,KAAK,KAAK,CAAC,SAAS,EAC7B,6CAA6C,SAAS,QAAQ,KAAK,CAAC,SAAS,EAAE,CAChF,CAAC;IACJ,CAAC;IACD,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,9 @@ import {
13
13
  escapeLike,
14
14
  getDefaultPuller,
15
15
  makeIDBName
16
- } from "./chunk-PPRTDNXA.js";
16
+ } from "./chunk-TS7IMB6J.js";
17
17
  import "./chunk-HARIWJ2J.js";
18
- import "./chunk-Y6OVFUGE.js";
18
+ import "./chunk-I5GSZARI.js";
19
19
  import "./chunk-F5QR3K72.js";
20
20
  export {
21
21
  ANYONE_CAN,