@rocicorp/zero 0.23.2025101600 → 0.24.3000-canary.0

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 (681) hide show
  1. package/out/analyze-query/src/bin-analyze.d.ts.map +1 -1
  2. package/out/analyze-query/src/bin-analyze.js +12 -12
  3. package/out/analyze-query/src/bin-analyze.js.map +1 -1
  4. package/out/analyze-query/src/bin-transform.d.ts.map +1 -1
  5. package/out/analyze-query/src/bin-transform.js +3 -2
  6. package/out/analyze-query/src/bin-transform.js.map +1 -1
  7. package/out/analyze-query/src/explain-queries.d.ts +1 -1
  8. package/out/analyze-query/src/explain-queries.d.ts.map +1 -1
  9. package/out/analyze-query/src/run-ast.d.ts +13 -23
  10. package/out/analyze-query/src/run-ast.d.ts.map +1 -1
  11. package/out/analyze-query/src/run-ast.js +41 -20
  12. package/out/analyze-query/src/run-ast.js.map +1 -1
  13. package/out/ast-to-zql/src/ast-to-zql.js +6 -5
  14. package/out/ast-to-zql/src/ast-to-zql.js.map +1 -1
  15. package/out/ast-to-zql/src/bin.js +1 -1
  16. package/out/ast-to-zql/src/format.js +1 -1
  17. package/out/chunk-AFADJQ2O.js +1 -0
  18. package/out/chunk-AFADJQ2O.js.map +7 -0
  19. package/out/chunk-ASRS2LFV.js +35 -0
  20. package/out/chunk-ASRS2LFV.js.map +7 -0
  21. package/out/chunk-ECUMGQGC.js +220 -0
  22. package/out/chunk-ECUMGQGC.js.map +7 -0
  23. package/out/{chunk-SGW2EIVJ.js → chunk-EZM3XBAB.js} +1 -1
  24. package/out/{chunk-SGW2EIVJ.js.map → chunk-EZM3XBAB.js.map} +2 -2
  25. package/out/{chunk-6N4NUSIN.js → chunk-KKQHE37F.js} +16 -9
  26. package/out/chunk-KKQHE37F.js.map +7 -0
  27. package/out/{chunk-WFFZJYGV.js → chunk-O26W3FL4.js} +4870 -442
  28. package/out/chunk-O26W3FL4.js.map +7 -0
  29. package/out/{chunk-G442PJSB.js → chunk-VHLCXJ6Q.js} +1801 -5008
  30. package/out/chunk-VHLCXJ6Q.js.map +7 -0
  31. package/out/{chunk-O7W55FT4.js → chunk-VZOYWIRW.js} +1 -1
  32. package/out/chunk-VZOYWIRW.js.map +7 -0
  33. package/out/chunk-ZZXMKAAG.js +64 -0
  34. package/out/chunk-ZZXMKAAG.js.map +7 -0
  35. package/out/expo-sqlite.js +11 -0
  36. package/out/expo-sqlite.js.map +7 -0
  37. package/out/{inspector-YIRP3TTL.js → inspector-IU2HG74I.js} +2 -2
  38. package/out/lazy-inspector-NCBESZMS.js +574 -0
  39. package/out/lazy-inspector-NCBESZMS.js.map +7 -0
  40. package/out/op-sqlite.js +80 -0
  41. package/out/op-sqlite.js.map +7 -0
  42. package/out/react-native.js +18 -334
  43. package/out/react-native.js.map +4 -4
  44. package/out/react.js +104 -41
  45. package/out/react.js.map +2 -2
  46. package/out/replicache/src/btree/read.d.ts.map +1 -1
  47. package/out/replicache/src/btree/write.d.ts.map +1 -1
  48. package/out/replicache/src/call-default-fetch.d.ts.map +1 -1
  49. package/out/replicache/src/connection-loop.d.ts.map +1 -1
  50. package/out/replicache/src/dag/key-type-enum.d.ts.map +1 -1
  51. package/out/replicache/src/dag/lazy-store.d.ts.map +1 -1
  52. package/out/replicache/src/db/index-operation-enum.d.ts.map +1 -1
  53. package/out/replicache/src/db/meta-type-enum.d.ts.map +1 -1
  54. package/out/replicache/src/deleted-clients.d.ts +17 -10
  55. package/out/replicache/src/deleted-clients.d.ts.map +1 -1
  56. package/out/replicache/src/expo-sqlite.d.ts +2 -0
  57. package/out/replicache/src/expo-sqlite.d.ts.map +1 -0
  58. package/out/replicache/src/format-version-enum.d.ts.map +1 -1
  59. package/out/replicache/src/get-default-puller.d.ts.map +1 -1
  60. package/out/replicache/src/invoke-kind-enum.d.ts.map +1 -1
  61. package/out/replicache/src/kv/expo-sqlite/store.d.ts +11 -0
  62. package/out/replicache/src/kv/expo-sqlite/store.d.ts.map +1 -0
  63. package/out/replicache/src/kv/idb-store.d.ts.map +1 -1
  64. package/out/replicache/src/kv/mem-store.d.ts.map +1 -1
  65. package/out/replicache/src/kv/op-sqlite/store.d.ts +14 -0
  66. package/out/replicache/src/kv/op-sqlite/store.d.ts.map +1 -0
  67. package/out/replicache/src/kv/op-sqlite/types.d.ts +13 -0
  68. package/out/replicache/src/kv/op-sqlite/types.d.ts.map +1 -0
  69. package/out/replicache/src/kv/read-impl.d.ts.map +1 -1
  70. package/out/replicache/src/kv/sqlite-store.d.ts +37 -63
  71. package/out/replicache/src/kv/sqlite-store.d.ts.map +1 -1
  72. package/out/replicache/src/kv/throw-if-closed.d.ts +12 -0
  73. package/out/replicache/src/kv/throw-if-closed.d.ts.map +1 -0
  74. package/out/replicache/src/kv/write-impl-base.d.ts.map +1 -1
  75. package/out/replicache/src/kv/write-impl.d.ts.map +1 -1
  76. package/out/replicache/src/op-sqlite.d.ts +2 -0
  77. package/out/replicache/src/op-sqlite.d.ts.map +1 -0
  78. package/out/replicache/src/persist/client-gc.d.ts.map +1 -1
  79. package/out/replicache/src/persist/client-group-gc.d.ts +2 -3
  80. package/out/replicache/src/persist/client-group-gc.d.ts.map +1 -1
  81. package/out/replicache/src/persist/clients.d.ts +2 -1
  82. package/out/replicache/src/persist/clients.d.ts.map +1 -1
  83. package/out/replicache/src/persist/collect-idb-databases.d.ts.map +1 -1
  84. package/out/replicache/src/persist/gather-not-cached-visitor.d.ts.map +1 -1
  85. package/out/replicache/src/process-scheduler.d.ts.map +1 -1
  86. package/out/replicache/src/replicache-impl.d.ts.map +1 -1
  87. package/out/replicache/src/sqlite.d.ts +3 -0
  88. package/out/replicache/src/sqlite.d.ts.map +1 -0
  89. package/out/replicache/src/sync/handle-pull-response-result-type-enum.d.ts.map +1 -1
  90. package/out/replicache/src/sync/pull.d.ts.map +1 -1
  91. package/out/replicache/src/transactions.d.ts +1 -1
  92. package/out/replicache/src/transactions.d.ts.map +1 -1
  93. package/out/shared/src/bigint-json.d.ts.map +1 -1
  94. package/out/shared/src/bigint-json.js +1 -2
  95. package/out/shared/src/bigint-json.js.map +1 -1
  96. package/out/shared/src/btree-set.js +3 -5
  97. package/out/shared/src/btree-set.js.map +1 -1
  98. package/out/shared/src/config.d.ts.map +1 -1
  99. package/out/shared/src/config.js.map +1 -1
  100. package/out/shared/src/custom-key-map.js +1 -1
  101. package/out/shared/src/custom-key-set.js +1 -1
  102. package/out/shared/src/deep-merge.d.ts +1 -1
  103. package/out/shared/src/deep-merge.d.ts.map +1 -1
  104. package/out/shared/src/json.js +1 -1
  105. package/out/shared/src/logging.d.ts +1 -1
  106. package/out/shared/src/logging.d.ts.map +1 -1
  107. package/out/shared/src/logging.js +2 -2
  108. package/out/shared/src/logging.js.map +1 -1
  109. package/out/shared/src/must.js +1 -1
  110. package/out/shared/src/options.js +1 -1
  111. package/out/shared/src/sentinels.d.ts +2 -0
  112. package/out/shared/src/sentinels.d.ts.map +1 -1
  113. package/out/shared/src/sentinels.js +7 -0
  114. package/out/shared/src/sentinels.js.map +1 -0
  115. package/out/shared/src/size-of-value.d.ts.map +1 -0
  116. package/out/shared/src/valita.d.ts.map +1 -1
  117. package/out/shared/src/valita.js +2 -3
  118. package/out/shared/src/valita.js.map +1 -1
  119. package/out/solid.js +69 -24
  120. package/out/solid.js.map +3 -3
  121. package/out/sqlite.js +15 -0
  122. package/out/sqlite.js.map +7 -0
  123. package/out/z2s/src/compiler.d.ts +1 -1
  124. package/out/z2s/src/compiler.d.ts.map +1 -1
  125. package/out/z2s/src/compiler.js +2 -2
  126. package/out/z2s/src/compiler.js.map +1 -1
  127. package/out/zero/package.json +63 -36
  128. package/out/zero/src/adapters/drizzle.d.ts +2 -0
  129. package/out/zero/src/adapters/drizzle.d.ts.map +1 -0
  130. package/out/zero/src/adapters/drizzle.js +2 -0
  131. package/out/zero/src/adapters/drizzle.js.map +1 -0
  132. package/out/zero/src/adapters/pg.d.ts +2 -0
  133. package/out/zero/src/adapters/pg.d.ts.map +1 -0
  134. package/out/zero/src/adapters/pg.js +2 -0
  135. package/out/zero/src/adapters/pg.js.map +1 -0
  136. package/out/zero/src/build-schema.js +1 -1
  137. package/out/zero/src/change-protocol/v0.js +1 -1
  138. package/out/zero/src/expo-sqlite.d.ts +2 -0
  139. package/out/zero/src/expo-sqlite.d.ts.map +1 -0
  140. package/out/zero/src/op-sqlite.d.ts +2 -0
  141. package/out/zero/src/op-sqlite.d.ts.map +1 -0
  142. package/out/zero/src/pg.js +1 -1
  143. package/out/zero/src/react-native.d.ts +30 -1
  144. package/out/zero/src/react-native.d.ts.map +1 -1
  145. package/out/zero/src/server.js +1 -1
  146. package/out/zero/src/sqlite.d.ts +2 -0
  147. package/out/zero/src/sqlite.d.ts.map +1 -0
  148. package/out/zero/src/zero-cache-dev.d.ts.map +1 -1
  149. package/out/zero/src/zero-cache-dev.js +14 -6
  150. package/out/zero/src/zero-cache-dev.js.map +1 -1
  151. package/out/zero/src/zqlite.js +1 -1
  152. package/out/zero-cache/src/auth/write-authorizer.d.ts.map +1 -1
  153. package/out/zero-cache/src/auth/write-authorizer.js +3 -3
  154. package/out/zero-cache/src/auth/write-authorizer.js.map +1 -1
  155. package/out/zero-cache/src/config/network.d.ts.map +1 -1
  156. package/out/zero-cache/src/config/network.js +1 -2
  157. package/out/zero-cache/src/config/network.js.map +1 -1
  158. package/out/zero-cache/src/config/normalize.d.ts +1 -0
  159. package/out/zero-cache/src/config/normalize.d.ts.map +1 -1
  160. package/out/zero-cache/src/config/normalize.js +6 -0
  161. package/out/zero-cache/src/config/normalize.js.map +1 -1
  162. package/out/zero-cache/src/config/zero-config.d.ts +11 -0
  163. package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
  164. package/out/zero-cache/src/config/zero-config.js +91 -5
  165. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  166. package/out/zero-cache/src/custom/fetch.d.ts +24 -11
  167. package/out/zero-cache/src/custom/fetch.d.ts.map +1 -1
  168. package/out/zero-cache/src/custom/fetch.js +39 -51
  169. package/out/zero-cache/src/custom/fetch.js.map +1 -1
  170. package/out/zero-cache/src/custom-queries/transform-query.d.ts +3 -2
  171. package/out/zero-cache/src/custom-queries/transform-query.d.ts.map +1 -1
  172. package/out/zero-cache/src/custom-queries/transform-query.js +9 -4
  173. package/out/zero-cache/src/custom-queries/transform-query.js.map +1 -1
  174. package/out/zero-cache/src/db/create.d.ts +4 -4
  175. package/out/zero-cache/src/db/create.d.ts.map +1 -1
  176. package/out/zero-cache/src/db/create.js +14 -11
  177. package/out/zero-cache/src/db/create.js.map +1 -1
  178. package/out/zero-cache/src/db/migration.d.ts +1 -1
  179. package/out/zero-cache/src/db/migration.d.ts.map +1 -1
  180. package/out/zero-cache/src/db/migration.js +2 -0
  181. package/out/zero-cache/src/db/migration.js.map +1 -1
  182. package/out/zero-cache/src/db/pg-copy.d.ts.map +1 -1
  183. package/out/zero-cache/src/db/pg-copy.js +0 -1
  184. package/out/zero-cache/src/db/pg-copy.js.map +1 -1
  185. package/out/zero-cache/src/db/pg-to-lite.d.ts.map +1 -1
  186. package/out/zero-cache/src/db/pg-to-lite.js +5 -2
  187. package/out/zero-cache/src/db/pg-to-lite.js.map +1 -1
  188. package/out/zero-cache/src/db/postgres-replica-identity-enum.d.ts.map +1 -1
  189. package/out/zero-cache/src/db/postgres-replica-identity-enum.js +0 -1
  190. package/out/zero-cache/src/db/postgres-replica-identity-enum.js.map +1 -1
  191. package/out/zero-cache/src/db/postgres-type-class-enum.d.ts.map +1 -1
  192. package/out/zero-cache/src/db/postgres-type-class-enum.js +0 -1
  193. package/out/zero-cache/src/db/postgres-type-class-enum.js.map +1 -1
  194. package/out/zero-cache/src/db/statements.js +2 -2
  195. package/out/zero-cache/src/db/transaction-pool.d.ts +1 -1
  196. package/out/zero-cache/src/db/transaction-pool.d.ts.map +1 -1
  197. package/out/zero-cache/src/db/transaction-pool.js +3 -1
  198. package/out/zero-cache/src/db/transaction-pool.js.map +1 -1
  199. package/out/zero-cache/src/scripts/deploy-permissions.d.ts.map +1 -1
  200. package/out/zero-cache/src/scripts/deploy-permissions.js +2 -2
  201. package/out/zero-cache/src/scripts/deploy-permissions.js.map +1 -1
  202. package/out/zero-cache/src/server/anonymous-otel-start.d.ts +2 -0
  203. package/out/zero-cache/src/server/anonymous-otel-start.d.ts.map +1 -1
  204. package/out/zero-cache/src/server/anonymous-otel-start.js +59 -2
  205. package/out/zero-cache/src/server/anonymous-otel-start.js.map +1 -1
  206. package/out/zero-cache/src/server/inspector-delegate.d.ts +19 -0
  207. package/out/zero-cache/src/server/inspector-delegate.d.ts.map +1 -1
  208. package/out/zero-cache/src/server/inspector-delegate.js +52 -0
  209. package/out/zero-cache/src/server/inspector-delegate.js.map +1 -1
  210. package/out/zero-cache/src/server/otel-diag-logger.d.ts +16 -0
  211. package/out/zero-cache/src/server/otel-diag-logger.d.ts.map +1 -0
  212. package/out/zero-cache/src/server/otel-diag-logger.js +76 -0
  213. package/out/zero-cache/src/server/otel-diag-logger.js.map +1 -0
  214. package/out/zero-cache/src/server/otel-start.d.ts.map +1 -1
  215. package/out/zero-cache/src/server/otel-start.js +13 -13
  216. package/out/zero-cache/src/server/otel-start.js.map +1 -1
  217. package/out/zero-cache/src/server/reaper.d.ts.map +1 -1
  218. package/out/zero-cache/src/server/reaper.js +13 -1
  219. package/out/zero-cache/src/server/reaper.js.map +1 -1
  220. package/out/zero-cache/src/server/runner/main.d.ts.map +1 -1
  221. package/out/zero-cache/src/server/runner/main.js.map +1 -1
  222. package/out/zero-cache/src/server/runner/run-worker.d.ts.map +1 -1
  223. package/out/zero-cache/src/server/runner/run-worker.js +1 -1
  224. package/out/zero-cache/src/server/runner/run-worker.js.map +1 -1
  225. package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
  226. package/out/zero-cache/src/server/syncer.js +8 -3
  227. package/out/zero-cache/src/server/syncer.js.map +1 -1
  228. package/out/zero-cache/src/services/analyze.d.ts +9 -1
  229. package/out/zero-cache/src/services/analyze.d.ts.map +1 -1
  230. package/out/zero-cache/src/services/analyze.js +110 -40
  231. package/out/zero-cache/src/services/analyze.js.map +1 -1
  232. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts.map +1 -1
  233. package/out/zero-cache/src/services/change-source/pg/change-source.js +2 -2
  234. package/out/zero-cache/src/services/change-source/pg/change-source.js.map +1 -1
  235. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts.map +1 -1
  236. package/out/zero-cache/src/services/change-source/pg/initial-sync.js +6 -5
  237. package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -1
  238. package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.d.ts.map +1 -1
  239. package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.js +0 -1
  240. package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.js.map +1 -1
  241. package/out/zero-cache/src/services/change-source/pg/logical-replication/pgoutput-parser.js +1 -1
  242. package/out/zero-cache/src/services/change-source/pg/logical-replication/pgoutput.types.js +1 -1
  243. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.d.ts.map +1 -1
  244. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js +25 -17
  245. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js.map +1 -1
  246. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts +1 -1
  247. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts.map +1 -1
  248. package/out/zero-cache/src/services/change-source/pg/schema/shard.js +5 -1
  249. package/out/zero-cache/src/services/change-source/pg/schema/shard.js.map +1 -1
  250. package/out/zero-cache/src/services/change-source/pg/schema/validation.js +1 -1
  251. package/out/zero-cache/src/services/change-source/pg/schema/validation.js.map +1 -1
  252. package/out/zero-cache/src/services/change-source/protocol/current/data.d.ts +1 -1
  253. package/out/zero-cache/src/services/change-source/protocol/current/data.d.ts.map +1 -1
  254. package/out/zero-cache/src/services/change-source/protocol/current/data.js +1 -1
  255. package/out/zero-cache/src/services/change-source/protocol/current/data.js.map +1 -1
  256. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js +6 -5
  257. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js.map +1 -1
  258. package/out/zero-cache/src/services/change-streamer/error-type-enum.d.ts.map +1 -1
  259. package/out/zero-cache/src/services/change-streamer/error-type-enum.js +0 -1
  260. package/out/zero-cache/src/services/change-streamer/error-type-enum.js.map +1 -1
  261. package/out/zero-cache/src/services/change-streamer/schema/init.d.ts.map +1 -1
  262. package/out/zero-cache/src/services/change-streamer/schema/init.js +1 -0
  263. package/out/zero-cache/src/services/change-streamer/schema/init.js.map +1 -1
  264. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts +1 -1
  265. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts.map +1 -1
  266. package/out/zero-cache/src/services/change-streamer/schema/tables.js +2 -0
  267. package/out/zero-cache/src/services/change-streamer/schema/tables.js.map +1 -1
  268. package/out/zero-cache/src/services/change-streamer/storer.d.ts +2 -2
  269. package/out/zero-cache/src/services/change-streamer/storer.d.ts.map +1 -1
  270. package/out/zero-cache/src/services/change-streamer/storer.js +28 -22
  271. package/out/zero-cache/src/services/change-streamer/storer.js.map +1 -1
  272. package/out/zero-cache/src/services/heapz.d.ts +1 -1
  273. package/out/zero-cache/src/services/heapz.d.ts.map +1 -1
  274. package/out/zero-cache/src/services/heapz.js +2 -2
  275. package/out/zero-cache/src/services/heapz.js.map +1 -1
  276. package/out/zero-cache/src/services/life-cycle.js +2 -2
  277. package/out/zero-cache/src/services/mutagen/error.d.ts +4 -0
  278. package/out/zero-cache/src/services/mutagen/error.d.ts.map +1 -0
  279. package/out/zero-cache/src/services/mutagen/error.js +8 -0
  280. package/out/zero-cache/src/services/mutagen/error.js.map +1 -0
  281. package/out/zero-cache/src/services/mutagen/mutagen.d.ts +0 -3
  282. package/out/zero-cache/src/services/mutagen/mutagen.d.ts.map +1 -1
  283. package/out/zero-cache/src/services/mutagen/mutagen.js +1 -6
  284. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  285. package/out/zero-cache/src/services/mutagen/pusher.d.ts +90 -39
  286. package/out/zero-cache/src/services/mutagen/pusher.d.ts.map +1 -1
  287. package/out/zero-cache/src/services/mutagen/pusher.js +29 -8
  288. package/out/zero-cache/src/services/mutagen/pusher.js.map +1 -1
  289. package/out/zero-cache/src/services/replicator/change-processor.js +7 -7
  290. package/out/zero-cache/src/services/replicator/change-processor.js.map +1 -1
  291. package/out/zero-cache/src/services/replicator/incremental-sync.js +2 -2
  292. package/out/zero-cache/src/services/replicator/incremental-sync.js.map +1 -1
  293. package/out/zero-cache/src/services/replicator/replication-status.d.ts.map +1 -1
  294. package/out/zero-cache/src/services/replicator/replication-status.js +10 -8
  295. package/out/zero-cache/src/services/replicator/replication-status.js.map +1 -1
  296. package/out/zero-cache/src/services/replicator/schema/constants.d.ts +7 -0
  297. package/out/zero-cache/src/services/replicator/schema/constants.d.ts.map +1 -0
  298. package/out/zero-cache/src/services/replicator/schema/constants.js +7 -0
  299. package/out/zero-cache/src/services/replicator/schema/constants.js.map +1 -0
  300. package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts +2 -2
  301. package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts.map +1 -1
  302. package/out/zero-cache/src/services/replicator/schema/replication-state.js +2 -1
  303. package/out/zero-cache/src/services/replicator/schema/replication-state.js.map +1 -1
  304. package/out/zero-cache/src/services/run-ast.d.ts +21 -0
  305. package/out/zero-cache/src/services/run-ast.d.ts.map +1 -0
  306. package/out/zero-cache/src/services/run-ast.js +93 -0
  307. package/out/zero-cache/src/services/run-ast.js.map +1 -0
  308. package/out/zero-cache/src/services/statz.d.ts +1 -1
  309. package/out/zero-cache/src/services/statz.d.ts.map +1 -1
  310. package/out/zero-cache/src/services/statz.js +3 -3
  311. package/out/zero-cache/src/services/statz.js.map +1 -1
  312. package/out/zero-cache/src/services/view-syncer/active-users-gauge.d.ts +16 -0
  313. package/out/zero-cache/src/services/view-syncer/active-users-gauge.d.ts.map +1 -0
  314. package/out/zero-cache/src/services/view-syncer/active-users-gauge.js +50 -0
  315. package/out/zero-cache/src/services/view-syncer/active-users-gauge.js.map +1 -0
  316. package/out/zero-cache/src/services/view-syncer/client-schema.js +2 -2
  317. package/out/zero-cache/src/services/view-syncer/client-schema.js.map +1 -1
  318. package/out/zero-cache/src/services/view-syncer/cvr-purger.d.ts +8 -2
  319. package/out/zero-cache/src/services/view-syncer/cvr-purger.d.ts.map +1 -1
  320. package/out/zero-cache/src/services/view-syncer/cvr-purger.js +40 -13
  321. package/out/zero-cache/src/services/view-syncer/cvr-purger.js.map +1 -1
  322. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts +0 -1
  323. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts.map +1 -1
  324. package/out/zero-cache/src/services/view-syncer/cvr-store.js +6 -19
  325. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -1
  326. package/out/zero-cache/src/services/view-syncer/cvr.d.ts +0 -1
  327. package/out/zero-cache/src/services/view-syncer/cvr.d.ts.map +1 -1
  328. package/out/zero-cache/src/services/view-syncer/cvr.js +19 -8
  329. package/out/zero-cache/src/services/view-syncer/cvr.js.map +1 -1
  330. package/out/zero-cache/src/services/view-syncer/inspect-handler.d.ts +10 -0
  331. package/out/zero-cache/src/services/view-syncer/inspect-handler.d.ts.map +1 -0
  332. package/out/zero-cache/src/services/view-syncer/inspect-handler.js +95 -0
  333. package/out/zero-cache/src/services/view-syncer/inspect-handler.js.map +1 -0
  334. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts +1 -1
  335. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts.map +1 -1
  336. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +1 -0
  337. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
  338. package/out/zero-cache/src/services/view-syncer/row-record-cache.d.ts +1 -1
  339. package/out/zero-cache/src/services/view-syncer/row-record-cache.d.ts.map +1 -1
  340. package/out/zero-cache/src/services/view-syncer/row-record-cache.js +3 -1
  341. package/out/zero-cache/src/services/view-syncer/row-record-cache.js.map +1 -1
  342. package/out/zero-cache/src/services/view-syncer/snapshotter.d.ts +1 -1
  343. package/out/zero-cache/src/services/view-syncer/snapshotter.d.ts.map +1 -1
  344. package/out/zero-cache/src/services/view-syncer/snapshotter.js +4 -4
  345. package/out/zero-cache/src/services/view-syncer/snapshotter.js.map +1 -1
  346. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts +4 -3
  347. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  348. package/out/zero-cache/src/services/view-syncer/view-syncer.js +36 -64
  349. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  350. package/out/zero-cache/src/types/lite.d.ts +11 -5
  351. package/out/zero-cache/src/types/lite.d.ts.map +1 -1
  352. package/out/zero-cache/src/types/lite.js +2 -5
  353. package/out/zero-cache/src/types/lite.js.map +1 -1
  354. package/out/zero-cache/src/types/pg.d.ts +12 -0
  355. package/out/zero-cache/src/types/pg.d.ts.map +1 -1
  356. package/out/zero-cache/src/types/pg.js +15 -13
  357. package/out/zero-cache/src/types/pg.js.map +1 -1
  358. package/out/zero-cache/src/workers/replicator.d.ts.map +1 -1
  359. package/out/zero-cache/src/workers/replicator.js +0 -2
  360. package/out/zero-cache/src/workers/replicator.js.map +1 -1
  361. package/out/zero-cache/src/workers/syncer-ws-message-handler.js +1 -1
  362. package/out/zero-cache/src/workers/syncer-ws-message-handler.js.map +1 -1
  363. package/out/zero-client/src/client/active-clients-manager.d.ts +2 -1
  364. package/out/zero-client/src/client/active-clients-manager.d.ts.map +1 -1
  365. package/out/zero-client/src/client/connection-state-enum.d.ts.map +1 -1
  366. package/out/zero-client/src/client/crud.d.ts +1 -1
  367. package/out/zero-client/src/client/crud.d.ts.map +1 -1
  368. package/out/zero-client/src/client/custom.d.ts.map +1 -1
  369. package/out/zero-client/src/client/delete-clients-manager.d.ts +3 -3
  370. package/out/zero-client/src/client/delete-clients-manager.d.ts.map +1 -1
  371. package/out/zero-client/src/client/inspector/client-group.d.ts +12 -0
  372. package/out/zero-client/src/client/inspector/client-group.d.ts.map +1 -0
  373. package/out/zero-client/src/client/inspector/client.d.ts +15 -0
  374. package/out/zero-client/src/client/inspector/client.d.ts.map +1 -0
  375. package/out/zero-client/src/client/inspector/html-dialog-prompt.d.ts +5 -0
  376. package/out/zero-client/src/client/inspector/html-dialog-prompt.d.ts.map +1 -0
  377. package/out/zero-client/src/client/inspector/inspector.d.ts +18 -18
  378. package/out/zero-client/src/client/inspector/inspector.d.ts.map +1 -1
  379. package/out/zero-client/src/client/inspector/lazy-inspector.d.ts +52 -0
  380. package/out/zero-client/src/client/inspector/lazy-inspector.d.ts.map +1 -0
  381. package/out/zero-client/src/client/inspector/query.d.ts +31 -0
  382. package/out/zero-client/src/client/inspector/query.d.ts.map +1 -0
  383. package/out/zero-client/src/client/metric-name-enum.d.ts.map +1 -1
  384. package/out/zero-client/src/client/options.d.ts +16 -16
  385. package/out/zero-client/src/client/options.d.ts.map +1 -1
  386. package/out/zero-client/src/client/ping-result-enum.d.ts.map +1 -1
  387. package/out/zero-client/src/client/query-manager.d.ts +2 -0
  388. package/out/zero-client/src/client/query-manager.d.ts.map +1 -1
  389. package/out/zero-client/src/client/update-needed-reason-type-enum.d.ts.map +1 -1
  390. package/out/zero-client/src/client/zero-log-context.d.ts.map +1 -1
  391. package/out/zero-client/src/client/zero.d.ts +10 -11
  392. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  393. package/out/zero-client/src/mod.d.ts +5 -2
  394. package/out/zero-client/src/mod.d.ts.map +1 -1
  395. package/out/zero-events/src/index.d.ts +4 -6
  396. package/out/zero-events/src/index.d.ts.map +1 -1
  397. package/out/zero-events/src/index.js +1 -27
  398. package/out/zero-events/src/index.js.map +1 -1
  399. package/out/zero-events/src/json.d.ts +20 -0
  400. package/out/zero-events/src/json.d.ts.map +1 -0
  401. package/out/zero-events/src/json.js +2 -0
  402. package/out/zero-events/src/json.js.map +1 -0
  403. package/out/zero-events/src/status.d.ts +45 -87
  404. package/out/zero-events/src/status.d.ts.map +1 -1
  405. package/out/zero-events/src/status.js +2 -68
  406. package/out/zero-events/src/status.js.map +1 -1
  407. package/out/zero-pg/src/mod.d.ts.map +1 -1
  408. package/out/zero-pg/src/mod.js +1 -1
  409. package/out/zero-pg/src/mod.js.map +1 -1
  410. package/out/zero-protocol/src/analyze-query-result.d.ts +29 -0
  411. package/out/zero-protocol/src/analyze-query-result.d.ts.map +1 -0
  412. package/out/zero-protocol/src/analyze-query-result.js +25 -0
  413. package/out/zero-protocol/src/analyze-query-result.js.map +1 -0
  414. package/out/zero-protocol/src/ast.d.ts +3 -1
  415. package/out/zero-protocol/src/ast.d.ts.map +1 -1
  416. package/out/zero-protocol/src/ast.js +2 -0
  417. package/out/zero-protocol/src/ast.js.map +1 -1
  418. package/out/zero-protocol/src/connect.d.ts +4 -32
  419. package/out/zero-protocol/src/connect.d.ts.map +1 -1
  420. package/out/zero-protocol/src/connect.js +2 -17
  421. package/out/zero-protocol/src/connect.js.map +1 -1
  422. package/out/zero-protocol/src/down.d.ts +29 -0
  423. package/out/zero-protocol/src/down.d.ts.map +1 -1
  424. package/out/zero-protocol/src/error-kind-enum.d.ts.map +1 -1
  425. package/out/zero-protocol/src/error-kind-enum.js +0 -1
  426. package/out/zero-protocol/src/error-kind-enum.js.map +1 -1
  427. package/out/zero-protocol/src/inspect-down.d.ts +93 -0
  428. package/out/zero-protocol/src/inspect-down.d.ts.map +1 -1
  429. package/out/zero-protocol/src/inspect-down.js +14 -1
  430. package/out/zero-protocol/src/inspect-down.js.map +1 -1
  431. package/out/zero-protocol/src/inspect-up.d.ts +85 -10
  432. package/out/zero-protocol/src/inspect-up.d.ts.map +1 -1
  433. package/out/zero-protocol/src/inspect-up.js +25 -3
  434. package/out/zero-protocol/src/inspect-up.js.map +1 -1
  435. package/out/zero-protocol/src/mutation-type-enum.d.ts.map +1 -1
  436. package/out/zero-protocol/src/mutation-type-enum.js +0 -1
  437. package/out/zero-protocol/src/mutation-type-enum.js.map +1 -1
  438. package/out/zero-protocol/src/protocol-version.d.ts +1 -1
  439. package/out/zero-protocol/src/protocol-version.d.ts.map +1 -1
  440. package/out/zero-protocol/src/protocol-version.js +8 -1
  441. package/out/zero-protocol/src/protocol-version.js.map +1 -1
  442. package/out/zero-protocol/src/push.d.ts +1 -1
  443. package/out/zero-protocol/src/push.d.ts.map +1 -1
  444. package/out/zero-protocol/src/up.d.ts +24 -9
  445. package/out/zero-protocol/src/up.d.ts.map +1 -1
  446. package/out/zero-react/src/components/mark-icon.d.ts.map +1 -1
  447. package/out/zero-react/src/components/zero-inspector.d.ts.map +1 -1
  448. package/out/zero-react/src/use-query.d.ts +20 -3
  449. package/out/zero-react/src/use-query.d.ts.map +1 -1
  450. package/out/zero-react/src/zero-provider.d.ts +2 -2
  451. package/out/zero-react/src/zero-provider.d.ts.map +1 -1
  452. package/out/zero-schema/src/builder/schema-builder.d.ts +3 -25
  453. package/out/zero-schema/src/builder/schema-builder.d.ts.map +1 -1
  454. package/out/zero-schema/src/builder/schema-builder.js +1 -1
  455. package/out/zero-schema/src/builder/schema-builder.js.map +1 -1
  456. package/out/zero-schema/src/builder/table-builder.js +1 -1
  457. package/out/zero-schema/src/name-mapper.d.ts +2 -19
  458. package/out/zero-schema/src/name-mapper.d.ts.map +1 -1
  459. package/out/zero-schema/src/name-mapper.js +2 -44
  460. package/out/zero-schema/src/name-mapper.js.map +1 -1
  461. package/out/zero-schema/src/permissions.d.ts +1 -0
  462. package/out/zero-schema/src/permissions.d.ts.map +1 -1
  463. package/out/zero-schema/src/schema-config.d.ts +1 -1
  464. package/out/zero-schema/src/schema-config.js +2 -2
  465. package/out/zero-schema/src/table-schema.d.ts +3 -55
  466. package/out/zero-schema/src/table-schema.d.ts.map +1 -1
  467. package/out/zero-schema/src/table-schema.js +0 -6
  468. package/out/zero-schema/src/table-schema.js.map +1 -1
  469. package/out/zero-server/src/adapters/drizzle.d.ts +60 -0
  470. package/out/zero-server/src/adapters/drizzle.d.ts.map +1 -0
  471. package/out/zero-server/src/adapters/drizzle.js +111 -0
  472. package/out/zero-server/src/adapters/drizzle.js.map +1 -0
  473. package/out/zero-server/src/adapters/pg.d.ts +53 -0
  474. package/out/zero-server/src/adapters/pg.d.ts.map +1 -0
  475. package/out/zero-server/src/adapters/pg.js +79 -0
  476. package/out/zero-server/src/adapters/pg.js.map +1 -0
  477. package/out/zero-server/src/adapters/postgresjs.d.ts +41 -12
  478. package/out/zero-server/src/adapters/postgresjs.d.ts.map +1 -1
  479. package/out/zero-server/src/adapters/postgresjs.js +27 -10
  480. package/out/zero-server/src/adapters/postgresjs.js.map +1 -1
  481. package/out/zero-server/src/custom.d.ts +1 -1
  482. package/out/zero-server/src/custom.d.ts.map +1 -1
  483. package/out/zero-server/src/custom.js +1 -1
  484. package/out/zero-server/src/custom.js.map +1 -1
  485. package/out/zero-server/src/process-mutations.d.ts +3 -3
  486. package/out/zero-server/src/process-mutations.d.ts.map +1 -1
  487. package/out/zero-server/src/process-mutations.js +5 -5
  488. package/out/zero-server/src/process-mutations.js.map +1 -1
  489. package/out/zero-server/src/query.d.ts +2 -2
  490. package/out/zero-server/src/query.d.ts.map +1 -1
  491. package/out/zero-server/src/query.js +2 -1
  492. package/out/zero-server/src/query.js.map +1 -1
  493. package/out/zero-server/src/zql-database.d.ts +1 -1
  494. package/out/zero-server/src/zql-database.d.ts.map +1 -1
  495. package/out/zero-server/src/zql-database.js +10 -0
  496. package/out/zero-server/src/zql-database.js.map +1 -1
  497. package/out/zero-solid/src/solid-view.d.ts +24 -5
  498. package/out/zero-solid/src/solid-view.d.ts.map +1 -1
  499. package/out/zero-solid/src/use-query.d.ts +3 -1
  500. package/out/zero-solid/src/use-query.d.ts.map +1 -1
  501. package/out/zero-solid/src/use-zero.d.ts +4 -1
  502. package/out/zero-solid/src/use-zero.d.ts.map +1 -1
  503. package/out/zero-types/src/format.d.ts +11 -0
  504. package/out/zero-types/src/format.d.ts.map +1 -0
  505. package/out/zero-types/src/format.js +5 -0
  506. package/out/zero-types/src/format.js.map +1 -0
  507. package/out/zero-types/src/name-mapper.d.ts +19 -0
  508. package/out/zero-types/src/name-mapper.d.ts.map +1 -0
  509. package/out/zero-types/src/name-mapper.js +45 -0
  510. package/out/zero-types/src/name-mapper.js.map +1 -0
  511. package/out/zero-types/src/schema-value.d.ts +36 -0
  512. package/out/zero-types/src/schema-value.d.ts.map +1 -0
  513. package/out/zero-types/src/schema-value.js +2 -0
  514. package/out/zero-types/src/schema-value.js.map +1 -0
  515. package/out/zero-types/src/schema.d.ts +54 -0
  516. package/out/zero-types/src/schema.d.ts.map +1 -0
  517. package/out/zero-types/src/schema.js +2 -0
  518. package/out/zero-types/src/schema.js.map +1 -0
  519. package/out/zero.js +6 -7
  520. package/out/zql/src/builder/builder.d.ts +14 -0
  521. package/out/zql/src/builder/builder.d.ts.map +1 -1
  522. package/out/zql/src/builder/builder.js +143 -23
  523. package/out/zql/src/builder/builder.js.map +1 -1
  524. package/out/zql/src/builder/debug-delegate.d.ts +2 -5
  525. package/out/zql/src/builder/debug-delegate.d.ts.map +1 -1
  526. package/out/zql/src/builder/debug-delegate.js +1 -0
  527. package/out/zql/src/builder/debug-delegate.js.map +1 -1
  528. package/out/zql/src/ivm/array-view.d.ts +2 -1
  529. package/out/zql/src/ivm/array-view.d.ts.map +1 -1
  530. package/out/zql/src/ivm/array-view.js +16 -5
  531. package/out/zql/src/ivm/array-view.js.map +1 -1
  532. package/out/zql/src/ivm/constraint.d.ts +7 -0
  533. package/out/zql/src/ivm/constraint.d.ts.map +1 -1
  534. package/out/zql/src/ivm/constraint.js +18 -2
  535. package/out/zql/src/ivm/constraint.js.map +1 -1
  536. package/out/zql/src/ivm/data.js +1 -1
  537. package/out/zql/src/ivm/default-format.d.ts +2 -0
  538. package/out/zql/src/ivm/default-format.d.ts.map +1 -0
  539. package/out/zql/src/ivm/default-format.js +2 -0
  540. package/out/zql/src/ivm/default-format.js.map +1 -0
  541. package/out/zql/src/ivm/exists.d.ts.map +1 -1
  542. package/out/zql/src/ivm/exists.js +5 -5
  543. package/out/zql/src/ivm/exists.js.map +1 -1
  544. package/out/zql/src/ivm/fan-in.d.ts.map +1 -1
  545. package/out/zql/src/ivm/fan-in.js +3 -92
  546. package/out/zql/src/ivm/fan-in.js.map +1 -1
  547. package/out/zql/src/ivm/fan-out.js +3 -3
  548. package/out/zql/src/ivm/fan-out.js.map +1 -1
  549. package/out/zql/src/ivm/filter-operators.js +2 -2
  550. package/out/zql/src/ivm/filter-operators.js.map +1 -1
  551. package/out/zql/src/ivm/filter-push.d.ts +2 -2
  552. package/out/zql/src/ivm/filter-push.d.ts.map +1 -1
  553. package/out/zql/src/ivm/filter-push.js +5 -5
  554. package/out/zql/src/ivm/filter-push.js.map +1 -1
  555. package/out/zql/src/ivm/filter.js +1 -1
  556. package/out/zql/src/ivm/filter.js.map +1 -1
  557. package/out/zql/src/ivm/flipped-join.d.ts +33 -0
  558. package/out/zql/src/ivm/flipped-join.d.ts.map +1 -0
  559. package/out/zql/src/ivm/flipped-join.js +349 -0
  560. package/out/zql/src/ivm/flipped-join.js.map +1 -0
  561. package/out/zql/src/ivm/join-utils.d.ts +14 -0
  562. package/out/zql/src/ivm/join-utils.d.ts.map +1 -0
  563. package/out/zql/src/ivm/join-utils.js +94 -0
  564. package/out/zql/src/ivm/join-utils.js.map +1 -0
  565. package/out/zql/src/ivm/join.d.ts +1 -1
  566. package/out/zql/src/ivm/join.d.ts.map +1 -1
  567. package/out/zql/src/ivm/join.js +8 -106
  568. package/out/zql/src/ivm/join.js.map +1 -1
  569. package/out/zql/src/ivm/maybe-split-and-push-edit-change.d.ts +2 -2
  570. package/out/zql/src/ivm/maybe-split-and-push-edit-change.d.ts.map +1 -1
  571. package/out/zql/src/ivm/maybe-split-and-push-edit-change.js +4 -4
  572. package/out/zql/src/ivm/maybe-split-and-push-edit-change.js.map +1 -1
  573. package/out/zql/src/ivm/memory-source.d.ts +4 -4
  574. package/out/zql/src/ivm/memory-source.d.ts.map +1 -1
  575. package/out/zql/src/ivm/memory-source.js +71 -71
  576. package/out/zql/src/ivm/memory-source.js.map +1 -1
  577. package/out/zql/src/ivm/operator.d.ts +1 -1
  578. package/out/zql/src/ivm/operator.d.ts.map +1 -1
  579. package/out/zql/src/ivm/push-accumulated.d.ts +88 -0
  580. package/out/zql/src/ivm/push-accumulated.d.ts.map +1 -0
  581. package/out/zql/src/ivm/push-accumulated.js +326 -0
  582. package/out/zql/src/ivm/push-accumulated.js.map +1 -0
  583. package/out/zql/src/ivm/schema.d.ts +1 -1
  584. package/out/zql/src/ivm/schema.d.ts.map +1 -1
  585. package/out/zql/src/ivm/skip.js +2 -2
  586. package/out/zql/src/ivm/skip.js.map +1 -1
  587. package/out/zql/src/ivm/take.d.ts.map +1 -1
  588. package/out/zql/src/ivm/take.js +27 -27
  589. package/out/zql/src/ivm/take.js.map +1 -1
  590. package/out/zql/src/ivm/union-fan-in.d.ts +19 -0
  591. package/out/zql/src/ivm/union-fan-in.d.ts.map +1 -0
  592. package/out/zql/src/ivm/union-fan-in.js +146 -0
  593. package/out/zql/src/ivm/union-fan-in.js.map +1 -0
  594. package/out/zql/src/ivm/union-fan-out.d.ts +18 -0
  595. package/out/zql/src/ivm/union-fan-out.d.ts.map +1 -0
  596. package/out/zql/src/ivm/union-fan-out.js +48 -0
  597. package/out/zql/src/ivm/union-fan-out.js.map +1 -0
  598. package/out/zql/src/ivm/view.d.ts +5 -6
  599. package/out/zql/src/ivm/view.d.ts.map +1 -1
  600. package/out/zql/src/mutate/custom.d.ts +2 -2
  601. package/out/zql/src/mutate/custom.d.ts.map +1 -1
  602. package/out/zql/src/mutate/custom.js.map +1 -1
  603. package/out/zql/src/query/expression.d.ts +4 -4
  604. package/out/zql/src/query/expression.d.ts.map +1 -1
  605. package/out/zql/src/query/expression.js +2 -2
  606. package/out/zql/src/query/expression.js.map +1 -1
  607. package/out/zql/src/query/measure-push-operator.js +1 -1
  608. package/out/zql/src/query/measure-push-operator.js.map +1 -1
  609. package/out/zql/src/query/named.d.ts +1 -1
  610. package/out/zql/src/query/named.d.ts.map +1 -1
  611. package/out/zql/src/query/query-delegate.d.ts +3 -2
  612. package/out/zql/src/query/query-delegate.d.ts.map +1 -1
  613. package/out/zql/src/query/query-impl.d.ts +6 -13
  614. package/out/zql/src/query/query-impl.d.ts.map +1 -1
  615. package/out/zql/src/query/query-impl.js +43 -38
  616. package/out/zql/src/query/query-impl.js.map +1 -1
  617. package/out/zql/src/query/query.d.ts +14 -9
  618. package/out/zql/src/query/query.d.ts.map +1 -1
  619. package/out/zql/src/query/query.js.map +1 -1
  620. package/out/zql/src/query/static-query.d.ts +1 -1
  621. package/out/zql/src/query/static-query.d.ts.map +1 -1
  622. package/out/zql/src/query/static-query.js +2 -1
  623. package/out/zql/src/query/static-query.js.map +1 -1
  624. package/out/zql/src/query/typed-view.d.ts +3 -2
  625. package/out/zql/src/query/typed-view.d.ts.map +1 -1
  626. package/out/{zero-cache/src/services/view-syncer → zqlite/src}/database-storage.d.ts +2 -2
  627. package/out/zqlite/src/database-storage.d.ts.map +1 -0
  628. package/out/{zero-cache/src/services/view-syncer → zqlite/src}/database-storage.js +1 -1
  629. package/out/zqlite/src/database-storage.js.map +1 -0
  630. package/out/zqlite/src/db.d.ts +2 -1
  631. package/out/zqlite/src/db.d.ts.map +1 -1
  632. package/out/zqlite/src/db.js +12 -20
  633. package/out/zqlite/src/db.js.map +1 -1
  634. package/out/zqlite/src/explain-queries.d.ts +4 -0
  635. package/out/zqlite/src/explain-queries.d.ts.map +1 -0
  636. package/out/zqlite/src/explain-queries.js +18 -0
  637. package/out/zqlite/src/explain-queries.js.map +1 -0
  638. package/out/zqlite/src/mod.d.ts +2 -1
  639. package/out/zqlite/src/mod.d.ts.map +1 -1
  640. package/out/zqlite/src/mod.js +2 -1
  641. package/out/zqlite/src/mod.js.map +1 -1
  642. package/out/zqlite/src/query-builder.d.ts +22 -0
  643. package/out/zqlite/src/query-builder.d.ts.map +1 -0
  644. package/out/zqlite/src/query-builder.js +162 -0
  645. package/out/zqlite/src/query-builder.js.map +1 -0
  646. package/out/zqlite/src/table-source.d.ts +2 -16
  647. package/out/zqlite/src/table-source.d.ts.map +1 -1
  648. package/out/zqlite/src/table-source.js +26 -177
  649. package/out/zqlite/src/table-source.js.map +1 -1
  650. package/package.json +63 -36
  651. package/out/chunk-6N4NUSIN.js.map +0 -7
  652. package/out/chunk-G442PJSB.js.map +0 -7
  653. package/out/chunk-MKB4RXL3.js +0 -15
  654. package/out/chunk-MKB4RXL3.js.map +0 -7
  655. package/out/chunk-O7W55FT4.js.map +0 -7
  656. package/out/chunk-WFFZJYGV.js.map +0 -7
  657. package/out/inspector-4ALIZXAU.js +0 -488
  658. package/out/inspector-4ALIZXAU.js.map +0 -7
  659. package/out/replicache/src/expo/store.d.ts +0 -4
  660. package/out/replicache/src/expo/store.d.ts.map +0 -1
  661. package/out/replicache/src/size-of-value.d.ts.map +0 -1
  662. package/out/zero/src/adapters/drizzle-pg.d.ts +0 -2
  663. package/out/zero/src/adapters/drizzle-pg.d.ts.map +0 -1
  664. package/out/zero/src/adapters/drizzle-pg.js +0 -2
  665. package/out/zero/src/adapters/drizzle-pg.js.map +0 -1
  666. package/out/zero-cache/src/services/view-syncer/database-storage.d.ts.map +0 -1
  667. package/out/zero-cache/src/services/view-syncer/database-storage.js.map +0 -1
  668. package/out/zero-client/src/client/inspector/types.d.ts +0 -50
  669. package/out/zero-client/src/client/inspector/types.d.ts.map +0 -1
  670. package/out/zero-react-native/src/mod.d.ts +0 -3
  671. package/out/zero-react-native/src/mod.d.ts.map +0 -1
  672. package/out/zero-server/src/adapters/drizzle-pg.d.ts +0 -22
  673. package/out/zero-server/src/adapters/drizzle-pg.d.ts.map +0 -1
  674. package/out/zero-server/src/adapters/drizzle-pg.js +0 -39
  675. package/out/zero-server/src/adapters/drizzle-pg.js.map +0 -1
  676. package/out/zql/src/query/assert-no-not-exists.d.ts +0 -17
  677. package/out/zql/src/query/assert-no-not-exists.d.ts.map +0 -1
  678. package/out/zql/src/query/assert-no-not-exists.js +0 -40
  679. package/out/zql/src/query/assert-no-not-exists.js.map +0 -1
  680. /package/out/{inspector-YIRP3TTL.js.map → inspector-IU2HG74I.js.map} +0 -0
  681. /package/out/{replicache → shared}/src/size-of-value.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"normalize.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/config/normalize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAKjD,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAEjD,qEAAqE;AACrE,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE;QACd,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,MAAM,EAAE;QACN,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;IACF,GAAG,EAAE;QACH,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;IACF,UAAU,EAAE;QACV,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,MAAM,IAAI,oBAAoB,CAQxC;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,UAAU,EACd,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,aAAa,CAAC,EAAE,MAAM,GACrB,oBAAoB,CAyEtB"}
1
+ {"version":3,"file":"normalize.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/config/normalize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAKjD,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAEjD,qEAAqE;AACrE,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE;QACd,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,MAAM,EAAE;QACN,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;IACF,GAAG,EAAE;QACH,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;IACF,UAAU,EAAE;QACV,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,MAAM,IAAI,oBAAoB,CAexC;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,UAAU,EACd,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,aAAa,CAAC,EAAE,MAAM,GACrB,oBAAoB,CAyEtB"}
@@ -2,6 +2,9 @@ import { nanoid } from 'nanoid';
2
2
  import { availableParallelism } from 'node:os';
3
3
  import { assert, assertNotUndefined } from "../../../shared/src/asserts.js";
4
4
  import { getHostIp } from "./network.js";
5
+ export function isDevelopmentMode() {
6
+ return process.env.NODE_ENV === 'development';
7
+ }
5
8
  export function assertNormalized(config) {
6
9
  assert(config.taskID, 'missing --task-id');
7
10
  assert(config.changeStreamer.port, 'missing --change-streamer-port');
@@ -10,6 +13,9 @@ export function assertNormalized(config) {
10
13
  assert(config.change.db, 'missing --change-db');
11
14
  assert(config.cvr.db, 'missing --cvr-db');
12
15
  assertNotUndefined(config.numSyncWorkers, 'missing --num-sync-workers');
16
+ if (!isDevelopmentMode()) {
17
+ assert(config.adminPassword, 'missing --admin-password: required in production mode');
18
+ }
13
19
  }
14
20
  /**
15
21
  * Normalizes the parsed `config` by setting defaults from the environment
@@ -1 +1 @@
1
- {"version":3,"file":"normalize.js","sourceRoot":"","sources":["../../../../../zero-cache/src/config/normalize.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"normalize.js","sourceRoot":"","sources":["../../../../../zero-cache/src/config/normalize.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * These types represent the _compiled_ config whereas `define-config` types represent the _source_ config.
3
3
  */
4
+ import type { LogContext } from '@rocicorp/logger';
4
5
  import { type Config, type ParseOptions } from '../../../shared/src/options.ts';
5
6
  import * as v from '../../../shared/src/valita.ts';
6
7
  import { type NormalizedZeroConfig } from './normalize.ts';
@@ -142,6 +143,14 @@ export declare const zeroOptions: {
142
143
  type: v.Type<number>;
143
144
  desc: string[];
144
145
  };
146
+ garbageCollectionInitialIntervalSeconds: {
147
+ type: v.Type<number>;
148
+ desc: string[];
149
+ };
150
+ garbageCollectionInitialBatchSize: {
151
+ type: v.Type<number>;
152
+ desc: string[];
153
+ };
145
154
  };
146
155
  queryHydrationStats: {
147
156
  type: v.Optional<boolean>;
@@ -381,4 +390,6 @@ export declare function getNormalizedZeroConfig(opts?: Omit<ParseOptions, 'envNa
381
390
  * from the Zero package.json.
382
391
  */
383
392
  export declare function getServerVersion(config: Pick<ZeroConfig, 'serverVersion'> | undefined): string;
393
+ export declare function isAdminPasswordValid(lc: LogContext, config: Pick<NormalizedZeroConfig, 'adminPassword'>, password: string | undefined): boolean;
394
+ export declare function resetWarnOnceState(): void;
384
395
  //# sourceMappingURL=zero-config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"zero-config.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/config/zero-config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAEL,KAAK,MAAM,EACX,KAAK,YAAY,EAClB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,CAAC,MAAM,+BAA+B,CAAC;AAQnD,OAAO,EAAmB,KAAK,oBAAoB,EAAC,MAAM,gBAAgB,CAAC;AAC3E,YAAY,EAAC,SAAS,EAAC,MAAM,kCAAkC,CAAC;AAEhE,eAAO,MAAM,UAAU;;;;;;;;;CA+CtB,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;CAwBxB,CAAC;AAEF,QAAA,MAAM,cAAc;;;;;;;;;CAmBnB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,cAAc,CAAC,CAAC;AAE3D,QAAA,MAAM,oBAAoB;;;;;;;;;CAczB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAE5D,QAAA,MAAM,WAAW;;;;;;;;;;;;;CAmBhB,CAAC;AAsCF,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,WAAW,CAAC,CAAC;AAKpD,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmbvB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,WAAW,CAAC,CAAC;AAEpD,eAAO,MAAM,mBAAmB,UAAU,CAAC;AAI3C,wBAAgB,aAAa,CAC3B,IAAI,GAAE,IAAI,CAAC,YAAY,EAAE,eAAe,CAAM,GAC7C,UAAU,CAaZ;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,GAAE,IAAI,CAAC,YAAY,EAAE,eAAe,CAAM,GAC7C,oBAAoB,CAItB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,GAAG,SAAS,GACpD,MAAM,CAER"}
1
+ {"version":3,"file":"zero-config.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/config/zero-config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAEL,KAAK,MAAM,EACX,KAAK,YAAY,EAClB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,CAAC,MAAM,+BAA+B,CAAC;AASnD,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAC,SAAS,EAAC,MAAM,kCAAkC,CAAC;AAEhE,eAAO,MAAM,UAAU;;;;;;;;;CA+CtB,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;CAwBxB,CAAC;AAEF,QAAA,MAAM,cAAc;;;;;;;;;CAmBnB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,cAAc,CAAC,CAAC;AAE3D,QAAA,MAAM,oBAAoB;;;;;;;;;CAczB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAE5D,QAAA,MAAM,WAAW;;;;;;;;;;;;;CAmBhB,CAAC;AAuEF,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,WAAW,CAAC,CAAC;AAKpD,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAycvB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,WAAW,CAAC,CAAC;AAEpD,eAAO,MAAM,mBAAmB,UAAU,CAAC;AAI3C,wBAAgB,aAAa,CAC3B,IAAI,GAAE,IAAI,CAAC,YAAY,EAAE,eAAe,CAAM,GAC7C,UAAU,CAaZ;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,GAAE,IAAI,CAAC,YAAY,EAAE,eAAe,CAAM,GAC7C,oBAAoB,CAItB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,GAAG,SAAS,GACpD,MAAM,CAER;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,UAAU,EACd,MAAM,EAAE,IAAI,CAAC,oBAAoB,EAAE,eAAe,CAAC,EACnD,QAAQ,EAAE,MAAM,GAAG,SAAS,WA4B7B;AAYD,wBAAgB,kBAAkB,SAEjC"}
@@ -4,11 +4,12 @@
4
4
  import { logOptions } from "../../../otel/src/log-options.js";
5
5
  import { parseOptions, } from "../../../shared/src/options.js";
6
6
  import * as v from "../../../shared/src/valita.js";
7
+ // @circular-dep-ignore - importing package.json for version info only
7
8
  import packageJson from '../../../zero/package.json' with { type: 'json' };
8
9
  import { runtimeDebugFlags } from "../../../zql/src/builder/debug-delegate.js";
9
10
  import { singleProcessMode } from "../types/processes.js";
10
11
  import { ALLOWED_APP_ID_CHARACTERS, INVALID_APP_ID_MESSAGE, } from "../types/shards.js";
11
- import { assertNormalized } from "./normalize.js";
12
+ import { assertNormalized, isDevelopmentMode, } from "./normalize.js";
12
13
  export const appOptions = {
13
14
  id: {
14
15
  type: v
@@ -138,10 +139,43 @@ const makeMutatorQueryOptions = (replacement, suffix) => ({
138
139
  replacement ? `DEPRECATED. Use ${replacement} instead.` : ``,
139
140
  `The URL of the API server to which zero-cache will ${suffix}.`,
140
141
  ``,
141
- `* is allowed if you would like to allow the client to specify a subdomain to use.`,
142
- `e.g., *.example.com/api/mutate`,
143
- `You can specify multiple URLs as well which the client can choose from.`,
144
- `e.g., ["https://api1.example.com/mutate", "https://api2.example.com/mutate"]`,
142
+ `{bold IMPORTANT:} URLs are matched using {bold URLPattern}, a standard Web API.`,
143
+ ``,
144
+ `{bold Pattern Syntax:}`,
145
+ ` URLPattern uses a simple and intuitive syntax similar to Express routes.`,
146
+ ` Wildcards and named parameters make it easy to match multiple URLs.`,
147
+ ``,
148
+ `{bold Basic Examples:}`,
149
+ ` Exact URL match:`,
150
+ ` "https://api.example.com/mutate"`,
151
+ ` `,
152
+ ` Any subdomain using wildcard:`,
153
+ ` "https://*.example.com/mutate"`,
154
+ ` `,
155
+ ` Multiple subdomain levels:`,
156
+ ` "https://*.*.example.com/mutate"`,
157
+ ` `,
158
+ ` Any path under a domain:`,
159
+ ` "https://api.example.com/*"`,
160
+ ` `,
161
+ ` Named path parameters:`,
162
+ ` "https://api.example.com/:version/mutate"`,
163
+ ` ↳ Matches "https://api.example.com/v1/mutate", "https://api.example.com/v2/mutate", etc.`,
164
+ ``,
165
+ `{bold Advanced Patterns:}`,
166
+ ` Optional path segments:`,
167
+ ` "https://api.example.com/:path?"`,
168
+ ` `,
169
+ ` Regex in segments (for specific patterns):`,
170
+ ` "https://api.example.com/:version(v\\\\d+)/mutate"`,
171
+ ` ↳ Matches only "v" followed by digits`,
172
+ ``,
173
+ `{bold Multiple patterns:}`,
174
+ ` ["https://api1.example.com/mutate", "https://api2.example.com/mutate"]`,
175
+ ``,
176
+ `{bold Note:} Query parameters and URL fragments (#) are automatically ignored during matching.`,
177
+ ``,
178
+ `For full URLPattern syntax, see: https://developer.mozilla.org/en-US/docs/Web/API/URLPattern`,
145
179
  ],
146
180
  },
147
181
  apiKey: {
@@ -235,6 +269,24 @@ export const zeroOptions = {
235
269
  `necessarily purge all eligible CVRs immediately.`,
236
270
  ],
237
271
  },
272
+ garbageCollectionInitialIntervalSeconds: {
273
+ type: v.number().default(60),
274
+ desc: [
275
+ `The initial interval at which to check and garbage collect inactive CVRs.`,
276
+ `This interval is increased exponentially (up to 16 minutes) when there is`,
277
+ `nothing to purge.`,
278
+ ],
279
+ },
280
+ garbageCollectionInitialBatchSize: {
281
+ type: v.number().default(25),
282
+ desc: [
283
+ `The initial number of CVRs to purge per garbage collection interval.`,
284
+ `This number is increased linearly if the rate of new CVRs exceeds the rate of`,
285
+ `purged CVRs, in order to reach a steady state.`,
286
+ ``,
287
+ `Setting this to 0 effectively disables CVR garbage collection.`,
288
+ ],
289
+ },
238
290
  },
239
291
  queryHydrationStats: {
240
292
  type: v.boolean().optional(),
@@ -377,6 +429,8 @@ export const zeroOptions = {
377
429
  desc: [
378
430
  `A password used to administer zero-cache server, for example to access the`,
379
431
  `/statz endpoint.`,
432
+ '',
433
+ 'A password is optional in development mode but {bold required in production} mode.',
380
434
  ],
381
435
  },
382
436
  litestream: {
@@ -584,4 +638,36 @@ export function getNormalizedZeroConfig(opts = {}) {
584
638
  export function getServerVersion(config) {
585
639
  return config?.serverVersion ?? packageJson.version;
586
640
  }
641
+ export function isAdminPasswordValid(lc, config, password) {
642
+ // If development mode, password is optional
643
+ // We use process.env.NODE_ENV === 'development' as a sign that we're in
644
+ // development mode, rather than a custom env var like ZERO_DEVELOPMENT_MODE,
645
+ // because NODE_ENV is more standard and is already used by many tools.
646
+ // Note that if NODE_ENV is not set, we assume production mode.
647
+ if (!password && !config.adminPassword && isDevelopmentMode()) {
648
+ warnOnce(lc, 'No admin password set; allowing access in development mode only');
649
+ return true;
650
+ }
651
+ if (!config.adminPassword) {
652
+ lc.warn?.('No admin password set; denying access');
653
+ return false;
654
+ }
655
+ if (password !== config.adminPassword) {
656
+ lc.warn?.('Invalid admin password');
657
+ return false;
658
+ }
659
+ lc.debug?.('Admin password accepted');
660
+ return true;
661
+ }
662
+ let hasWarned = false;
663
+ function warnOnce(lc, msg) {
664
+ if (!hasWarned) {
665
+ lc.warn?.(msg);
666
+ hasWarned = true;
667
+ }
668
+ }
669
+ // For testing purposes - reset the warning state
670
+ export function resetWarnOnceState() {
671
+ hasWarned = false;
672
+ }
587
673
  //# sourceMappingURL=zero-config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"zero-config.js","sourceRoot":"","sources":["../../../../../zero-cache/src/config/zero-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zero-config.js","sourceRoot":"","sources":["../../../../../zero-cache/src/config/zero-config.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,35 @@
1
+ import 'urlpattern-polyfill';
2
+ import type { LogContext } from '@rocicorp/logger';
1
3
  import { type ShardID } from '../types/shards.ts';
2
4
  import type { ReadonlyJSONValue } from '../../../shared/src/json.ts';
5
+ /**
6
+ * Compiles and validates a URLPattern from configuration.
7
+ *
8
+ * Patterns must be full URLs (e.g., "https://api.example.com/endpoint").
9
+ * URLPattern automatically sets search and hash to wildcard ('*'),
10
+ * which means query parameters and fragments are ignored during matching.
11
+ *
12
+ * @throws Error if the pattern is an invalid URLPattern
13
+ */
14
+ export declare function compileUrlPattern(pattern: string): URLPattern;
3
15
  export type HeaderOptions = {
4
16
  apiKey?: string | undefined;
5
17
  token?: string | undefined;
6
18
  cookie?: string | undefined;
7
19
  };
8
- export declare function fetchFromAPIServer(url: string, allowedUrls: string[], shard: ShardID, headerOptions: HeaderOptions, queryParams: Record<string, string> | undefined, body: ReadonlyJSONValue): Promise<Response>;
20
+ export declare function fetchFromAPIServer(lc: LogContext, url: string, allowedUrlPatterns: URLPattern[], shard: ShardID, headerOptions: HeaderOptions, body: ReadonlyJSONValue): Promise<Response>;
9
21
  /**
10
- * Returns true if:
11
- * 1. the url is an exact match with one of the allowedUrls
12
- * 2. an "allowedUrl" has a wildcard for a subdomain, e.g. "https://*.example.com" and the url matches that pattern
22
+ * Returns true if the url matches one of the allowedUrlPatterns.
23
+ *
24
+ * URLPattern automatically ignores query parameters and hash fragments during matching
25
+ * because it sets search and hash to wildcard ('*') by default.
13
26
  *
14
- * Valid wildcard patterns:
15
- * - "https://*.example.com" matches "https://api.example.com" and "https://www.example.com"
16
- * - "https://*.example.com" does not match "https://example.com" (no subdomain)
17
- * - "https://*.example.com" does not match "https://api.example.com/path" (no trailing path)
18
- * - "https://*.*.example.com" matches "https://api.v1.example.com" and "https://www.v2.example.com"
19
- * - "https://*.*.example.com" does not match "https://api.example.com" (only one subdomain)
27
+ * Example URLPattern patterns:
28
+ * - "https://api.example.com/endpoint" - Exact match for a specific URL
29
+ * - "https://*.example.com/endpoint" - Matches any single subdomain (e.g., "https://api.example.com/endpoint")
30
+ * - "https://*.*.example.com/endpoint" - Matches two subdomains (e.g., "https://api.v1.example.com/endpoint")
31
+ * - "https://api.example.com/*" - Matches any path under /
32
+ * - "https://api.example.com/:version/endpoint" - Matches with named parameter (e.g., "https://api.example.com/v1/endpoint")
20
33
  */
21
- export declare function urlMatch(url: string, allowedUrls: string[]): boolean;
34
+ export declare function urlMatch(url: string, allowedUrlPatterns: URLPattern[]): boolean;
22
35
  //# sourceMappingURL=fetch.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/custom/fetch.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,OAAO,EAAC,MAAM,oBAAoB,CAAC;AAChE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,6BAA6B,CAAC;AAKnE,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,CAAC;AAEF,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EAAE,EACrB,KAAK,EAAE,OAAO,EACd,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAC/C,IAAI,EAAE,iBAAiB,qBAgExB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CA+CpE"}
1
+ {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/custom/fetch.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAiB,KAAK,OAAO,EAAC,MAAM,oBAAoB,CAAC;AAChE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,6BAA6B,CAAC;AAMnE;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAQ7D;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,CAAC;AAEF,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,UAAU,EACd,GAAG,EAAE,MAAM,EACX,kBAAkB,EAAE,UAAU,EAAE,EAChC,KAAK,EAAE,OAAO,EACd,aAAa,EAAE,aAAa,EAC5B,IAAI,EAAE,iBAAiB,qBAmExB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,QAAQ,CACtB,GAAG,EAAE,MAAM,EACX,kBAAkB,EAAE,UAAU,EAAE,GAC/B,OAAO,CAOT"}
@@ -1,10 +1,31 @@
1
+ import 'urlpattern-polyfill';
1
2
  import { assert } from "../../../shared/src/asserts.js";
2
3
  import { upstreamSchema } from "../types/shards.js";
3
4
  import { ErrorForClient } from "../types/error-for-client.js";
4
5
  import { ErrorKind } from "../../../zero-protocol/src/error-kind.js";
5
6
  const reservedParams = ['schema', 'appID'];
6
- export async function fetchFromAPIServer(url, allowedUrls, shard, headerOptions, queryParams, body) {
7
- if (!urlMatch(url, allowedUrls)) {
7
+ /**
8
+ * Compiles and validates a URLPattern from configuration.
9
+ *
10
+ * Patterns must be full URLs (e.g., "https://api.example.com/endpoint").
11
+ * URLPattern automatically sets search and hash to wildcard ('*'),
12
+ * which means query parameters and fragments are ignored during matching.
13
+ *
14
+ * @throws Error if the pattern is an invalid URLPattern
15
+ */
16
+ export function compileUrlPattern(pattern) {
17
+ try {
18
+ return new URLPattern(pattern);
19
+ }
20
+ catch (e) {
21
+ throw new Error(`Invalid URLPattern in URL configuration: "${pattern}". Error: ${e instanceof Error ? e.message : String(e)}`);
22
+ }
23
+ }
24
+ export async function fetchFromAPIServer(lc, url, allowedUrlPatterns, shard, headerOptions, body) {
25
+ lc.info?.('fetchFromAPIServer called', {
26
+ url,
27
+ });
28
+ if (!urlMatch(url, allowedUrlPatterns)) {
8
29
  throw new Error(`URL "${url}" is not allowed by the ZERO_MUTATE/GET_QUERIES_URL configuration`);
9
30
  }
10
31
  const headers = {
@@ -21,16 +42,14 @@ export async function fetchFromAPIServer(url, allowedUrls, shard, headerOptions,
21
42
  }
22
43
  const urlObj = new URL(url);
23
44
  const params = new URLSearchParams(urlObj.search);
24
- for (const [key, value] of Object.entries(queryParams ?? {})) {
25
- params.append(key, value);
26
- }
27
45
  for (const reserved of reservedParams) {
28
46
  assert(!params.has(reserved), `The push URL cannot contain the reserved query param "${reserved}"`);
29
47
  }
30
48
  params.append('schema', upstreamSchema(shard));
31
49
  params.append('appID', shard.appID);
32
50
  urlObj.search = params.toString();
33
- const response = await fetch(urlObj.toString(), {
51
+ const finalUrl = urlObj.toString();
52
+ const response = await fetch(finalUrl, {
34
53
  method: 'POST',
35
54
  headers,
36
55
  body: JSON.stringify(body),
@@ -56,53 +75,22 @@ export async function fetchFromAPIServer(url, allowedUrls, shard, headerOptions,
56
75
  return response;
57
76
  }
58
77
  /**
59
- * Returns true if:
60
- * 1. the url is an exact match with one of the allowedUrls
61
- * 2. an "allowedUrl" has a wildcard for a subdomain, e.g. "https://*.example.com" and the url matches that pattern
78
+ * Returns true if the url matches one of the allowedUrlPatterns.
62
79
  *
63
- * Valid wildcard patterns:
64
- * - "https://*.example.com" matches "https://api.example.com" and "https://www.example.com"
65
- * - "https://*.example.com" does not match "https://example.com" (no subdomain)
66
- * - "https://*.example.com" does not match "https://api.example.com/path" (no trailing path)
67
- * - "https://*.*.example.com" matches "https://api.v1.example.com" and "https://www.v2.example.com"
68
- * - "https://*.*.example.com" does not match "https://api.example.com" (only one subdomain)
80
+ * URLPattern automatically ignores query parameters and hash fragments during matching
81
+ * because it sets search and hash to wildcard ('*') by default.
82
+ *
83
+ * Example URLPattern patterns:
84
+ * - "https://api.example.com/endpoint" - Exact match for a specific URL
85
+ * - "https://*.example.com/endpoint" - Matches any single subdomain (e.g., "https://api.example.com/endpoint")
86
+ * - "https://*.*.example.com/endpoint" - Matches two subdomains (e.g., "https://api.v1.example.com/endpoint")
87
+ * - "https://api.example.com/*" - Matches any path under /
88
+ * - "https://api.example.com/:version/endpoint" - Matches with named parameter (e.g., "https://api.example.com/v1/endpoint")
69
89
  */
70
- export function urlMatch(url, allowedUrls) {
71
- assert(url.includes('*') === false, 'Client provided URLs may not include `*`');
72
- // ignore query parameters in the URL
73
- url = url.split('?')[0];
74
- for (let allowedUrl of allowedUrls) {
75
- // ignore query parameters in the allowed URL
76
- allowedUrl = allowedUrl.split('?')[0];
77
- if (url === allowedUrl) {
78
- return true; // exact match
79
- }
80
- const parts = allowedUrl.split('*');
81
- if (parts.length === 1) {
82
- continue; // no wildcard, already checked above
83
- }
84
- let currentStr = url;
85
- for (let i = 0; i < parts.length; i++) {
86
- const part = parts[i];
87
- if (!currentStr.startsWith(part)) {
88
- break;
89
- }
90
- currentStr = currentStr.slice(part.length);
91
- if (currentStr === '' && i < parts.length - 1) {
92
- // if we reach the end of the string but still have more parts to match, it's not a match
93
- break;
94
- }
95
- else if (currentStr === '' && i === parts.length - 1) {
96
- // if we reach the end of the string and this is the last part, it's a match
97
- return true;
98
- }
99
- // consume the rest of the string up to a .
100
- const nextDotIndex = currentStr.indexOf('.');
101
- if (nextDotIndex === -1) {
102
- // no dot? then the wildcard rules don't apply, so we can stop checking
103
- break;
104
- }
105
- currentStr = currentStr.slice(nextDotIndex);
90
+ export function urlMatch(url, allowedUrlPatterns) {
91
+ for (const pattern of allowedUrlPatterns) {
92
+ if (pattern.test(url)) {
93
+ return true;
106
94
  }
107
95
  }
108
96
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../../../zero-cache/src/custom/fetch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../../../zero-cache/src/custom/fetch.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAE7B,OAAO,EAAC,MAAM,EAAC,MAAM,gCAAgC,CAAC;AACtD,OAAO,EAAC,cAAc,EAAe,MAAM,oBAAoB,CAAC;AAEhE,OAAO,EAAC,cAAc,EAAC,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAC,SAAS,EAAC,MAAM,0CAA0C,CAAC;AAEnE,MAAM,cAAc,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAE3C;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,IAAI,CAAC;QACH,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,6CAA6C,OAAO,aAAa,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAC9G,CAAC;IACJ,CAAC;AACH,CAAC;AAQD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,EAAc,EACd,GAAW,EACX,kBAAgC,EAChC,KAAc,EACd,aAA4B,EAC5B,IAAuB;IAEvB,EAAE,CAAC,IAAI,EAAE,CAAC,2BAA2B,EAAE;QACrC,GAAG;KACJ,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,kBAAkB,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CACb,QAAQ,GAAG,mEAAmE,CAC/E,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAA2B;QACtC,cAAc,EAAE,kBAAkB;KACnC,CAAC;IAEF,IAAI,aAAa,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACvC,OAAO,CAAC,WAAW,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC;IAC9C,CAAC;IACD,IAAI,aAAa,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QACtC,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,aAAa,CAAC,KAAK,EAAE,CAAC;IAC7D,CAAC;IACD,IAAI,aAAa,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACvC,OAAO,CAAC,QAAQ,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC;IAC3C,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAElD,KAAK,MAAM,QAAQ,IAAI,cAAc,EAAE,CAAC;QACtC,MAAM,CACJ,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EACrB,yDAAyD,QAAQ,GAAG,CACrE,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/C,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAEpC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAElC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE;QACrC,MAAM,EAAE,MAAM;QACd,OAAO;QACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;KAC3B,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,2EAA2E;QAC3E,kGAAkG;QAClG,QAAQ;QACR,6EAA6E;QAC7E,2EAA2E;QAC3E,EAAE;QACF,0EAA0E;QAC1E,sDAAsD;QACtD,sEAAsE;QACtE,yEAAyE;QACzE,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,IAAI,cAAc,CAAC;gBACvB,IAAI,EAAE,SAAS,CAAC,eAAe;gBAC/B,OAAO,EAAE,MAAM,QAAQ,CAAC,IAAI,EAAE;aAC/B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,QAAQ,CACtB,GAAW,EACX,kBAAgC;IAEhC,KAAK,MAAM,OAAO,IAAI,kBAAkB,EAAE,CAAC;QACzC,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1,3 +1,4 @@
1
+ import type { LogContext } from '@rocicorp/logger';
1
2
  import type { TransformedAndHashed } from '../auth/read-authorizer.ts';
2
3
  import type { CustomQueryRecord } from '../services/view-syncer/schema/types.ts';
3
4
  import { type ErroredQuery } from '../../../zero-protocol/src/custom-queries.ts';
@@ -24,10 +25,10 @@ export type HttpError = {
24
25
  */
25
26
  export declare class CustomQueryTransformer {
26
27
  #private;
27
- constructor(config: {
28
+ constructor(lc: LogContext, config: {
28
29
  url: string[];
29
30
  forwardCookies: boolean;
30
31
  }, shard: ShardID);
31
- transform(headerOptions: HeaderOptions, queries: Iterable<CustomQueryRecord>): Promise<(TransformedAndHashed | ErroredQuery)[]>;
32
+ transform(headerOptions: HeaderOptions, queries: Iterable<CustomQueryRecord>, userQueryURL: string | undefined): Promise<(TransformedAndHashed | ErroredQuery)[]>;
32
33
  }
33
34
  //# sourceMappingURL=transform-query.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transform-query.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/custom-queries/transform-query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAEL,KAAK,YAAY,EAGlB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAqB,KAAK,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAC1E,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,oBAAoB,CAAC;AAOhD,MAAM,MAAM,SAAS,GAAG;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,qBAAa,sBAAsB;;gBAS/B,MAAM,EAAE;QACN,GAAG,EAAE,MAAM,EAAE,CAAC;QACd,cAAc,EAAE,OAAO,CAAC;KACzB,EACD,KAAK,EAAE,OAAO;IAOV,SAAS,CACb,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,QAAQ,CAAC,iBAAiB,CAAC,GACnC,OAAO,CAAC,CAAC,oBAAoB,GAAG,YAAY,CAAC,EAAE,CAAC;CA2FpD"}
1
+ {"version":3,"file":"transform-query.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/custom-queries/transform-query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAEL,KAAK,YAAY,EAGlB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,oBAAoB,CAAC;AAOhD,MAAM,MAAM,SAAS,GAAG;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,qBAAa,sBAAsB;;gBAW/B,EAAE,EAAE,UAAU,EACd,MAAM,EAAE;QACN,GAAG,EAAE,MAAM,EAAE,CAAC;QACd,cAAc,EAAE,OAAO,CAAC;KACzB,EACD,KAAK,EAAE,OAAO;IASV,SAAS,CACb,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EACpC,YAAY,EAAE,MAAM,GAAG,SAAS,GAC/B,OAAO,CAAC,CAAC,oBAAoB,GAAG,YAAY,CAAC,EAAE,CAAC;CA4FpD"}
@@ -1,5 +1,5 @@
1
1
  import { transformResponseMessageSchema, } from "../../../zero-protocol/src/custom-queries.js";
2
- import { fetchFromAPIServer } from "../custom/fetch.js";
2
+ import { fetchFromAPIServer, compileUrlPattern, } from "../custom/fetch.js";
3
3
  import * as v from "../../../shared/src/valita.js";
4
4
  import { hashOfAST } from "../../../zero-protocol/src/query-hash.js";
5
5
  import { TimedCache } from "../../../shared/src/cache.js";
@@ -23,12 +23,16 @@ export class CustomQueryTransformer {
23
23
  #shard;
24
24
  #cache;
25
25
  #config;
26
- constructor(config, shard) {
26
+ #urlPatterns;
27
+ #lc;
28
+ constructor(lc, config, shard) {
27
29
  this.#config = config;
28
30
  this.#shard = shard;
31
+ this.#lc = lc;
32
+ this.#urlPatterns = config.url.map(compileUrlPattern);
29
33
  this.#cache = new TimedCache(5000); // 5 seconds cache TTL
30
34
  }
31
- async transform(headerOptions, queries) {
35
+ async transform(headerOptions, queries, userQueryURL) {
32
36
  const request = [];
33
37
  const cachedResponses = [];
34
38
  if (!this.#config.forwardCookies && headerOptions.cookie) {
@@ -57,7 +61,8 @@ export class CustomQueryTransformer {
57
61
  }
58
62
  let response;
59
63
  try {
60
- response = await fetchFromAPIServer(must(this.#config.url[0], 'A ZERO_GET_QUERIES_URL must be configured for custom queries'), this.#config.url, this.#shard, headerOptions, undefined, ['transform', request]);
64
+ response = await fetchFromAPIServer(this.#lc, userQueryURL ??
65
+ must(this.#config.url[0], 'A ZERO_GET_QUERIES_URL must be configured for custom queries'), this.#urlPatterns, this.#shard, headerOptions, ['transform', request]);
61
66
  }
62
67
  catch (e) {
63
68
  if (e instanceof ErrorForClient) {
@@ -1 +1 @@
1
- {"version":3,"file":"transform-query.js","sourceRoot":"","sources":["../../../../../zero-cache/src/custom-queries/transform-query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transform-query.js","sourceRoot":"","sources":["../../../../../zero-cache/src/custom-queries/transform-query.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- import type { ColumnSpec, LiteIndexSpec, LiteTableSpec, TableSpec } from './specs.ts';
2
- export declare function columnDef(spec: ColumnSpec): string;
1
+ import type { ColumnSpec, LiteIndexSpec, LiteTableSpec } from './specs.ts';
2
+ export declare function liteColumnDef(spec: ColumnSpec): string;
3
3
  /**
4
4
  * Constructs a `CREATE TABLE` statement for a {@link TableSpec}.
5
5
  */
6
- export declare function createTableStatement(spec: TableSpec | LiteTableSpec): string;
7
- export declare function createIndexStatement(index: LiteIndexSpec): string;
6
+ export declare function createLiteTableStatement(spec: LiteTableSpec): string;
7
+ export declare function createLiteIndexStatement(index: LiteIndexSpec): string;
8
8
  //# sourceMappingURL=create.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/db/create.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EACV,aAAa,EACb,aAAa,EACb,SAAS,EACV,MAAM,YAAY,CAAC;AAEpB,wBAAgB,SAAS,CAAC,IAAI,EAAE,UAAU,UAezC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,SAAS,GAAG,aAAa,GAAG,MAAM,CAa5E;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAQjE"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/db/create.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,UAAU,EAAE,aAAa,EAAE,aAAa,EAAC,MAAM,YAAY,CAAC;AAEzE,wBAAgB,aAAa,CAAC,IAAI,EAAE,UAAU,UAuB7C;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,CAUpE;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAQrE"}
@@ -1,12 +1,17 @@
1
1
  import { id, idList } from "../types/sql.js";
2
- export function columnDef(spec) {
3
- let def = id(spec.dataType);
2
+ export function liteColumnDef(spec) {
3
+ // Remove legacy |TEXT_ARRAY attribute for backwards compatibility
4
+ // Legacy formats: "text|TEXT_ARRAY", "text[]|TEXT_ARRAY", "text|TEXT_ARRAY[]", "text[]|TEXT_ARRAY[]"
5
+ const hadTextArray = spec.dataType.includes('|TEXT_ARRAY');
6
+ const typeWithAttrs = spec.dataType.replace(/\|TEXT_ARRAY(\[\])?/, '');
7
+ // Only add brackets if we had |TEXT_ARRAY and there are no brackets after removing it
8
+ // This handles the legacy "text|TEXT_ARRAY" -> "text" -> "text[]" case
9
+ const needsBrackets = hadTextArray && !typeWithAttrs.includes('[]');
10
+ const finalType = needsBrackets ? typeWithAttrs + '[]' : typeWithAttrs;
11
+ let def = id(finalType);
4
12
  if (spec.characterMaximumLength) {
5
13
  def += `(${spec.characterMaximumLength})`;
6
14
  }
7
- if (spec.elemPgTypeClass !== null) {
8
- def += '[]';
9
- }
10
15
  if (spec.notNull) {
11
16
  def += ' NOT NULL';
12
17
  }
@@ -18,19 +23,17 @@ export function columnDef(spec) {
18
23
  /**
19
24
  * Constructs a `CREATE TABLE` statement for a {@link TableSpec}.
20
25
  */
21
- export function createTableStatement(spec) {
26
+ export function createLiteTableStatement(spec) {
22
27
  const defs = Object.entries(spec.columns)
23
28
  .sort(([_a, { pos: a }], [_b, { pos: b }]) => a - b)
24
- .map(([name, columnSpec]) => `${id(name)} ${columnDef(columnSpec)}`);
29
+ .map(([name, columnSpec]) => `${id(name)} ${liteColumnDef(columnSpec)}`);
25
30
  if (spec.primaryKey) {
26
31
  defs.push(`PRIMARY KEY (${idList(spec.primaryKey)})`);
27
32
  }
28
- const createStmt = 'schema' in spec
29
- ? `CREATE TABLE ${id(spec.schema)}.${id(spec.name)} (`
30
- : `CREATE TABLE ${id(spec.name)} (`;
33
+ const createStmt = `CREATE TABLE ${id(spec.name)} (`;
31
34
  return [createStmt, defs.join(',\n'), ');'].join('\n');
32
35
  }
33
- export function createIndexStatement(index) {
36
+ export function createLiteIndexStatement(index) {
34
37
  const columns = Object.entries(index.columns)
35
38
  .map(([name, dir]) => `${id(name)} ${dir}`)
36
39
  .join(',');