@rocicorp/zero 1.6.0-canary.1 → 1.6.0-canary.11

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 (728) hide show
  1. package/README.md +28 -3
  2. package/out/_virtual/{_@oxc-project_runtime@0.122.0 → _@oxc-project_runtime@0.130.0}/helpers/usingCtx.js +1 -1
  3. package/out/_virtual/__vite-optional-peer-dep_pg-native_pg.js +13 -0
  4. package/out/_virtual/__vite-optional-peer-dep_pg-native_pg.js.map +1 -0
  5. package/out/_virtual/_rolldown/runtime.js +12 -1
  6. package/out/analyze-query/src/analyze-cli.js.map +1 -1
  7. package/out/analyze-query/src/bin-analyze.js +6 -1
  8. package/out/analyze-query/src/bin-analyze.js.map +1 -1
  9. package/out/analyze-query/src/bin-transform.js.map +1 -1
  10. package/out/ast-to-zql/src/ast-to-zql.js.map +1 -1
  11. package/out/ast-to-zql/src/bin.js.map +1 -1
  12. package/out/ast-to-zql/src/format.js.map +1 -1
  13. package/out/datadog/src/datadog-log-sink.js.map +1 -1
  14. package/out/node_modules/.pnpm/@opentelemetry_semantic-conventions@1.41.1/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_attributes.js +12 -0
  15. package/out/node_modules/.pnpm/@opentelemetry_semantic-conventions@1.41.1/node_modules/@opentelemetry/semantic-conventions/build/esm/stable_attributes.js.map +1 -0
  16. package/out/node_modules/.pnpm/pg-cloudflare@1.3.0/node_modules/pg-cloudflare/dist/empty.js +11 -0
  17. package/out/node_modules/.pnpm/pg-cloudflare@1.3.0/node_modules/pg-cloudflare/dist/empty.js.map +1 -0
  18. package/out/node_modules/.pnpm/pg-connection-string@2.12.0/node_modules/pg-connection-string/index.js +130 -0
  19. package/out/node_modules/.pnpm/pg-connection-string@2.12.0/node_modules/pg-connection-string/index.js.map +1 -0
  20. package/out/node_modules/.pnpm/pg-int8@1.0.1/node_modules/pg-int8/index.js +62 -0
  21. package/out/node_modules/.pnpm/pg-int8@1.0.1/node_modules/pg-int8/index.js.map +1 -0
  22. package/out/node_modules/.pnpm/pg-pool@3.13.0_pg@8.20.0/node_modules/pg-pool/index.js +353 -0
  23. package/out/node_modules/.pnpm/pg-pool@3.13.0_pg@8.20.0/node_modules/pg-pool/index.js.map +1 -0
  24. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/buffer-reader.js +60 -0
  25. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/buffer-reader.js.map +1 -0
  26. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/buffer-writer.js +81 -0
  27. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/buffer-writer.js.map +1 -0
  28. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/index.js +35 -0
  29. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/index.js.map +1 -0
  30. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/messages.js +167 -0
  31. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/messages.js.map +1 -0
  32. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/parser.js +288 -0
  33. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/parser.js.map +1 -0
  34. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/serializer.js +177 -0
  35. package/out/node_modules/.pnpm/pg-protocol@1.13.0/node_modules/pg-protocol/dist/serializer.js.map +1 -0
  36. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/index.js +46 -0
  37. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/index.js.map +1 -0
  38. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/arrayParser.js +16 -0
  39. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/arrayParser.js.map +1 -0
  40. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/binaryParsers.js +165 -0
  41. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/binaryParsers.js.map +1 -0
  42. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/builtins.js +81 -0
  43. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/builtins.js.map +1 -0
  44. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/textParsers.js +167 -0
  45. package/out/node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/lib/textParsers.js.map +1 -0
  46. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/esm/index.js +19 -0
  47. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/esm/index.js.map +1 -0
  48. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/client.js +508 -0
  49. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/client.js.map +1 -0
  50. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/connection-parameters.js +104 -0
  51. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/connection-parameters.js.map +1 -0
  52. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/connection.js +160 -0
  53. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/connection.js.map +1 -0
  54. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/cert-signatures.js +97 -0
  55. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/cert-signatures.js.map +1 -0
  56. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/sasl.js +131 -0
  57. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/sasl.js.map +1 -0
  58. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils-legacy.js +39 -0
  59. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils-legacy.js.map +1 -0
  60. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils-webcrypto.js +89 -0
  61. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils-webcrypto.js.map +1 -0
  62. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils.js +13 -0
  63. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/crypto/utils.js.map +1 -0
  64. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/defaults.js +46 -0
  65. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/defaults.js.map +1 -0
  66. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/index.js +71 -0
  67. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/index.js.map +1 -0
  68. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/client.js +226 -0
  69. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/client.js.map +1 -0
  70. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/index.js +11 -0
  71. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/index.js.map +1 -0
  72. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/query.js +117 -0
  73. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/native/query.js.map +1 -0
  74. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/query.js +151 -0
  75. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/query.js.map +1 -0
  76. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/result.js +76 -0
  77. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/result.js.map +1 -0
  78. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/stream.js +73 -0
  79. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/stream.js.map +1 -0
  80. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/type-overrides.js +35 -0
  81. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/type-overrides.js.map +1 -0
  82. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/utils.js +118 -0
  83. package/out/node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/utils.js.map +1 -0
  84. package/out/node_modules/.pnpm/pgpass@1.0.5/node_modules/pgpass/lib/helper.js +147 -0
  85. package/out/node_modules/.pnpm/pgpass@1.0.5/node_modules/pgpass/lib/helper.js.map +1 -0
  86. package/out/node_modules/.pnpm/pgpass@1.0.5/node_modules/pgpass/lib/index.js +21 -0
  87. package/out/node_modules/.pnpm/pgpass@1.0.5/node_modules/pgpass/lib/index.js.map +1 -0
  88. package/out/node_modules/.pnpm/postgres-array@2.0.0/node_modules/postgres-array/index.js +84 -0
  89. package/out/node_modules/.pnpm/postgres-array@2.0.0/node_modules/postgres-array/index.js.map +1 -0
  90. package/out/node_modules/.pnpm/postgres-bytea@1.0.1/node_modules/postgres-bytea/index.js +28 -0
  91. package/out/node_modules/.pnpm/postgres-bytea@1.0.1/node_modules/postgres-bytea/index.js.map +1 -0
  92. package/out/node_modules/.pnpm/postgres-date@1.0.7/node_modules/postgres-date/index.js +65 -0
  93. package/out/node_modules/.pnpm/postgres-date@1.0.7/node_modules/postgres-date/index.js.map +1 -0
  94. package/out/node_modules/.pnpm/postgres-interval@1.2.0/node_modules/postgres-interval/index.js +107 -0
  95. package/out/node_modules/.pnpm/postgres-interval@1.2.0/node_modules/postgres-interval/index.js.map +1 -0
  96. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react-jsx-runtime.development.js +696 -0
  97. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react-jsx-runtime.development.js.map +1 -0
  98. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react-jsx-runtime.production.min.js +44 -0
  99. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react-jsx-runtime.production.min.js.map +1 -0
  100. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react.development.js +1585 -0
  101. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react.development.js.map +1 -0
  102. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react.production.min.js +329 -0
  103. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react.production.min.js.map +1 -0
  104. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/index.js +13 -0
  105. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/index.js.map +1 -0
  106. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js +13 -0
  107. package/out/node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js.map +1 -0
  108. package/out/node_modules/.pnpm/solid-js@1.9.13/node_modules/solid-js/dist/server.js +131 -0
  109. package/out/node_modules/.pnpm/solid-js@1.9.13/node_modules/solid-js/dist/server.js.map +1 -0
  110. package/out/node_modules/.pnpm/solid-js@1.9.13/node_modules/solid-js/store/dist/server.js +96 -0
  111. package/out/node_modules/.pnpm/solid-js@1.9.13/node_modules/solid-js/store/dist/server.js.map +1 -0
  112. package/out/node_modules/.pnpm/split2@4.2.0/node_modules/split2/index.js +95 -0
  113. package/out/node_modules/.pnpm/split2@4.2.0/node_modules/split2/index.js.map +1 -0
  114. package/out/node_modules/.pnpm/xtend@4.0.2/node_modules/xtend/mutable.js +18 -0
  115. package/out/node_modules/.pnpm/xtend@4.0.2/node_modules/xtend/mutable.js.map +1 -0
  116. package/out/otel/src/enabled.js.map +1 -1
  117. package/out/otel/src/log-options.js.map +1 -1
  118. package/out/otel/src/maybe-time.js.map +1 -1
  119. package/out/otel/src/span.js.map +1 -1
  120. package/out/replicache/src/async-iterable-to-array.js.map +1 -1
  121. package/out/replicache/src/bg-interval.js.map +1 -1
  122. package/out/replicache/src/btree/diff.js.map +1 -1
  123. package/out/replicache/src/btree/node.js.map +1 -1
  124. package/out/replicache/src/btree/read.js.map +1 -1
  125. package/out/replicache/src/btree/splice.js.map +1 -1
  126. package/out/replicache/src/btree/write.js +6 -3
  127. package/out/replicache/src/btree/write.js.map +1 -1
  128. package/out/replicache/src/call-default-fetch.js.map +1 -1
  129. package/out/replicache/src/connection-loop-delegates.js.map +1 -1
  130. package/out/replicache/src/connection-loop.js.map +1 -1
  131. package/out/replicache/src/cookies.js.map +1 -1
  132. package/out/replicache/src/dag/chunk.js.map +1 -1
  133. package/out/replicache/src/dag/gc.js.map +1 -1
  134. package/out/replicache/src/dag/key.js.map +1 -1
  135. package/out/replicache/src/dag/lazy-store.js.map +1 -1
  136. package/out/replicache/src/dag/store-impl.d.ts.map +1 -1
  137. package/out/replicache/src/dag/store-impl.js +8 -3
  138. package/out/replicache/src/dag/store-impl.js.map +1 -1
  139. package/out/replicache/src/dag/store.js.map +1 -1
  140. package/out/replicache/src/dag/visitor.js.map +1 -1
  141. package/out/replicache/src/db/commit.js.map +1 -1
  142. package/out/replicache/src/db/index.js.map +1 -1
  143. package/out/replicache/src/db/read.js.map +1 -1
  144. package/out/replicache/src/db/rebase.js.map +1 -1
  145. package/out/replicache/src/db/write.js.map +1 -1
  146. package/out/replicache/src/deleted-clients.js.map +1 -1
  147. package/out/replicache/src/error-responses.js.map +1 -1
  148. package/out/replicache/src/frozen-json.js.map +1 -1
  149. package/out/replicache/src/get-default-puller.js.map +1 -1
  150. package/out/replicache/src/get-default-pusher.js.map +1 -1
  151. package/out/replicache/src/get-kv-store-provider.js.map +1 -1
  152. package/out/replicache/src/hash.js.map +1 -1
  153. package/out/replicache/src/http-request-info.js.map +1 -1
  154. package/out/replicache/src/index-defs.js.map +1 -1
  155. package/out/replicache/src/kv/expo-sqlite/store.d.ts +1 -1
  156. package/out/replicache/src/kv/expo-sqlite/store.d.ts.map +1 -1
  157. package/out/replicache/src/kv/expo-sqlite/store.js +6 -7
  158. package/out/replicache/src/kv/expo-sqlite/store.js.map +1 -1
  159. package/out/replicache/src/kv/idb-store-with-mem-fallback.js.map +1 -1
  160. package/out/replicache/src/kv/idb-store.js.map +1 -1
  161. package/out/replicache/src/kv/mem-store.js.map +1 -1
  162. package/out/replicache/src/kv/op-sqlite/store.d.ts.map +1 -1
  163. package/out/replicache/src/kv/op-sqlite/store.js +6 -6
  164. package/out/replicache/src/kv/op-sqlite/store.js.map +1 -1
  165. package/out/replicache/src/kv/read-impl.js.map +1 -1
  166. package/out/replicache/src/kv/sqlite-store.d.ts +6 -6
  167. package/out/replicache/src/kv/sqlite-store.d.ts.map +1 -1
  168. package/out/replicache/src/kv/sqlite-store.js +107 -22
  169. package/out/replicache/src/kv/sqlite-store.js.map +1 -1
  170. package/out/replicache/src/kv/throw-if-closed.d.ts +1 -0
  171. package/out/replicache/src/kv/throw-if-closed.d.ts.map +1 -1
  172. package/out/replicache/src/kv/throw-if-closed.js +1 -4
  173. package/out/replicache/src/kv/throw-if-closed.js.map +1 -1
  174. package/out/replicache/src/kv/write-impl-base.js.map +1 -1
  175. package/out/replicache/src/kv/write-impl.js.map +1 -1
  176. package/out/replicache/src/lazy.js.map +1 -1
  177. package/out/replicache/src/log-options.js.map +1 -1
  178. package/out/replicache/src/make-idb-name.js.map +1 -1
  179. package/out/replicache/src/new-client-channel.js.map +1 -1
  180. package/out/replicache/src/on-persist-channel.js.map +1 -1
  181. package/out/replicache/src/patch-operation.js.map +1 -1
  182. package/out/replicache/src/pending-mutations.js.map +1 -1
  183. package/out/replicache/src/persist/client-gc.js.map +1 -1
  184. package/out/replicache/src/persist/client-group-gc.js.map +1 -1
  185. package/out/replicache/src/persist/client-groups.js +40 -0
  186. package/out/replicache/src/persist/client-groups.js.map +1 -1
  187. package/out/replicache/src/persist/clients.js +28 -0
  188. package/out/replicache/src/persist/clients.js.map +1 -1
  189. package/out/replicache/src/persist/collect-idb-databases.js.map +1 -1
  190. package/out/replicache/src/persist/gather-mem-only-visitor.js.map +1 -1
  191. package/out/replicache/src/persist/gather-not-cached-visitor.js.map +1 -1
  192. package/out/replicache/src/persist/heartbeat.js.map +1 -1
  193. package/out/replicache/src/persist/idb-databases-store-db-name.js.map +1 -1
  194. package/out/replicache/src/persist/idb-databases-store.js.map +1 -1
  195. package/out/replicache/src/persist/make-client-id.js.map +1 -1
  196. package/out/replicache/src/persist/persist.d.ts.map +1 -1
  197. package/out/replicache/src/persist/persist.js +4 -2
  198. package/out/replicache/src/persist/persist.js.map +1 -1
  199. package/out/replicache/src/persist/refresh.js.map +1 -1
  200. package/out/replicache/src/process-scheduler.js.map +1 -1
  201. package/out/replicache/src/pusher.js.map +1 -1
  202. package/out/replicache/src/replicache-impl.js.map +1 -1
  203. package/out/replicache/src/report-error.js.map +1 -1
  204. package/out/replicache/src/request-idle.js.map +1 -1
  205. package/out/replicache/src/scan-iterator.js.map +1 -1
  206. package/out/replicache/src/scan-options.js.map +1 -1
  207. package/out/replicache/src/set-interval-with-signal.js.map +1 -1
  208. package/out/replicache/src/subscriptions.js.map +1 -1
  209. package/out/replicache/src/sync/diff.js.map +1 -1
  210. package/out/replicache/src/sync/ids.js.map +1 -1
  211. package/out/replicache/src/sync/patch.js.map +1 -1
  212. package/out/replicache/src/sync/pull-error.js.map +1 -1
  213. package/out/replicache/src/sync/pull.d.ts.map +1 -1
  214. package/out/replicache/src/sync/pull.js +9 -6
  215. package/out/replicache/src/sync/pull.js.map +1 -1
  216. package/out/replicache/src/sync/push.js.map +1 -1
  217. package/out/replicache/src/sync/request-id.js.map +1 -1
  218. package/out/replicache/src/to-error.js.map +1 -1
  219. package/out/replicache/src/transaction-closed-error.js.map +1 -1
  220. package/out/replicache/src/transactions.js.map +1 -1
  221. package/out/replicache/src/with-transactions.js.map +1 -1
  222. package/out/shared/src/abort-error.js.map +1 -1
  223. package/out/shared/src/arrays.js.map +1 -1
  224. package/out/shared/src/asserts.js.map +1 -1
  225. package/out/shared/src/bigint-json.js.map +1 -1
  226. package/out/shared/src/binary-search.js.map +1 -1
  227. package/out/shared/src/broadcast-channel.js.map +1 -1
  228. package/out/shared/src/browser-env.js.map +1 -1
  229. package/out/shared/src/btree-set.js.map +1 -1
  230. package/out/shared/src/cache.js.map +1 -1
  231. package/out/shared/src/centroid.js.map +1 -1
  232. package/out/shared/src/custom-key-map.js.map +1 -1
  233. package/out/shared/src/custom-key-set.js.map +1 -1
  234. package/out/shared/src/deep-clone.js.map +1 -1
  235. package/out/shared/src/deep-merge.js.map +1 -1
  236. package/out/shared/src/document-visible.js.map +1 -1
  237. package/out/shared/src/dotenv.js.map +1 -1
  238. package/out/shared/src/error.js.map +1 -1
  239. package/out/shared/src/hash.js.map +1 -1
  240. package/out/shared/src/iterables.js.map +1 -1
  241. package/out/shared/src/json-schema.js.map +1 -1
  242. package/out/shared/src/json.js.map +1 -1
  243. package/out/shared/src/logging-test-utils.js.map +1 -1
  244. package/out/shared/src/logging.js.map +1 -1
  245. package/out/shared/src/map.d.ts +6 -0
  246. package/out/shared/src/map.d.ts.map +1 -0
  247. package/out/shared/src/map.js +39 -0
  248. package/out/shared/src/map.js.map +1 -0
  249. package/out/shared/src/must.js.map +1 -1
  250. package/out/shared/src/object-traversal.js.map +1 -1
  251. package/out/shared/src/objects.js.map +1 -1
  252. package/out/shared/src/options.js.map +1 -1
  253. package/out/shared/src/parse-big-int.js.map +1 -1
  254. package/out/shared/src/promise-race.js.map +1 -1
  255. package/out/shared/src/queue.d.ts.map +1 -1
  256. package/out/shared/src/queue.js +15 -21
  257. package/out/shared/src/queue.js.map +1 -1
  258. package/out/shared/src/rand.js.map +1 -1
  259. package/out/shared/src/random-uint64.js.map +1 -1
  260. package/out/shared/src/random-values.js.map +1 -1
  261. package/out/shared/src/record-proxy.js.map +1 -1
  262. package/out/shared/src/resolved-promises.js.map +1 -1
  263. package/out/shared/src/ring-buffer.d.ts +32 -0
  264. package/out/shared/src/ring-buffer.d.ts.map +1 -0
  265. package/out/shared/src/ring-buffer.js +109 -0
  266. package/out/shared/src/ring-buffer.js.map +1 -0
  267. package/out/shared/src/sentinels.js.map +1 -1
  268. package/out/shared/src/set-utils.js.map +1 -1
  269. package/out/shared/src/size-of-value.js.map +1 -1
  270. package/out/shared/src/sleep.js.map +1 -1
  271. package/out/shared/src/sorted-entries.js.map +1 -1
  272. package/out/shared/src/string-compare.js.map +1 -1
  273. package/out/shared/src/subscribable.js.map +1 -1
  274. package/out/shared/src/tdigest-schema.js.map +1 -1
  275. package/out/shared/src/tdigest.js.map +1 -1
  276. package/out/shared/src/valita.js.map +1 -1
  277. package/out/z2s/src/compiler.js.map +1 -1
  278. package/out/z2s/src/sql.js.map +1 -1
  279. package/out/zero/package.js +23 -23
  280. package/out/zero/package.js.map +1 -1
  281. package/out/zero/src/build-schema.js.map +1 -1
  282. package/out/zero/src/zero-cache-dev.js.map +1 -1
  283. package/out/zero/src/zero-out.js.map +1 -1
  284. package/out/zero-cache/src/auth/auth.js.map +1 -1
  285. package/out/zero-cache/src/auth/jwt.js.map +1 -1
  286. package/out/zero-cache/src/auth/load-permissions.js.map +1 -1
  287. package/out/zero-cache/src/auth/read-authorizer.js.map +1 -1
  288. package/out/zero-cache/src/auth/write-authorizer.js.map +1 -1
  289. package/out/zero-cache/src/config/network.js.map +1 -1
  290. package/out/zero-cache/src/config/normalize.js.map +1 -1
  291. package/out/zero-cache/src/config/server-context.js.map +1 -1
  292. package/out/zero-cache/src/config/zero-config.js +5 -0
  293. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  294. package/out/zero-cache/src/custom/fetch.js.map +1 -1
  295. package/out/zero-cache/src/custom-queries/transform-query.js.map +1 -1
  296. package/out/zero-cache/src/db/create.js.map +1 -1
  297. package/out/zero-cache/src/db/delete-lite-db.js.map +1 -1
  298. package/out/zero-cache/src/db/lite-tables.js.map +1 -1
  299. package/out/zero-cache/src/db/migration-lite.js +19 -0
  300. package/out/zero-cache/src/db/migration-lite.js.map +1 -1
  301. package/out/zero-cache/src/db/migration.js +19 -0
  302. package/out/zero-cache/src/db/migration.js.map +1 -1
  303. package/out/zero-cache/src/db/pg-copy-binary.js.map +1 -1
  304. package/out/zero-cache/src/db/pg-copy.js.map +1 -1
  305. package/out/zero-cache/src/db/pg-to-lite.js.map +1 -1
  306. package/out/zero-cache/src/db/pg-type-parser.js.map +1 -1
  307. package/out/zero-cache/src/db/run-transaction.js.map +1 -1
  308. package/out/zero-cache/src/db/specs.js.map +1 -1
  309. package/out/zero-cache/src/db/statements.js.map +1 -1
  310. package/out/zero-cache/src/db/transaction-pool.js.map +1 -1
  311. package/out/zero-cache/src/db/warmup.js.map +1 -1
  312. package/out/zero-cache/src/observability/events.js.map +1 -1
  313. package/out/zero-cache/src/observability/metrics.js.map +1 -1
  314. package/out/zero-cache/src/scripts/decommission.js.map +1 -1
  315. package/out/zero-cache/src/scripts/deploy-permissions.js.map +1 -1
  316. package/out/zero-cache/src/scripts/permissions.js.map +1 -1
  317. package/out/zero-cache/src/server/anonymous-otel-start.js +11 -10
  318. package/out/zero-cache/src/server/anonymous-otel-start.js.map +1 -1
  319. package/out/zero-cache/src/server/change-streamer.d.ts.map +1 -1
  320. package/out/zero-cache/src/server/change-streamer.js +13 -7
  321. package/out/zero-cache/src/server/change-streamer.js.map +1 -1
  322. package/out/zero-cache/src/server/inspector-delegate.js.map +1 -1
  323. package/out/zero-cache/src/server/logging.js.map +1 -1
  324. package/out/zero-cache/src/server/main.d.ts.map +1 -1
  325. package/out/zero-cache/src/server/main.js +4 -2
  326. package/out/zero-cache/src/server/main.js.map +1 -1
  327. package/out/zero-cache/src/server/mutator.js +4 -2
  328. package/out/zero-cache/src/server/mutator.js.map +1 -1
  329. package/out/zero-cache/src/server/otel-diag-logger.js.map +1 -1
  330. package/out/zero-cache/src/server/otel-log-sink.js.map +1 -1
  331. package/out/zero-cache/src/server/otel-start.js +1 -1
  332. package/out/zero-cache/src/server/otel-start.js.map +1 -1
  333. package/out/zero-cache/src/server/priority-op.js.map +1 -1
  334. package/out/zero-cache/src/server/reaper.d.ts.map +1 -1
  335. package/out/zero-cache/src/server/reaper.js +6 -4
  336. package/out/zero-cache/src/server/reaper.js.map +1 -1
  337. package/out/zero-cache/src/server/replicator.d.ts.map +1 -1
  338. package/out/zero-cache/src/server/replicator.js +4 -2
  339. package/out/zero-cache/src/server/replicator.js.map +1 -1
  340. package/out/zero-cache/src/server/runner/main.d.ts.map +1 -1
  341. package/out/zero-cache/src/server/runner/main.js +2 -1
  342. package/out/zero-cache/src/server/runner/main.js.map +1 -1
  343. package/out/zero-cache/src/server/runner/run-worker.js.map +1 -1
  344. package/out/zero-cache/src/server/runner/runtime.js.map +1 -1
  345. package/out/zero-cache/src/server/runner/zero-dispatcher.js.map +1 -1
  346. package/out/zero-cache/src/server/shadow-syncer.js +6 -3
  347. package/out/zero-cache/src/server/shadow-syncer.js.map +1 -1
  348. package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
  349. package/out/zero-cache/src/server/syncer.js +8 -6
  350. package/out/zero-cache/src/server/syncer.js.map +1 -1
  351. package/out/zero-cache/src/server/worker-dispatcher.js.map +1 -1
  352. package/out/zero-cache/src/server/worker-urls.js.map +1 -1
  353. package/out/zero-cache/src/services/analyze.d.ts.map +1 -1
  354. package/out/zero-cache/src/services/analyze.js +5 -2
  355. package/out/zero-cache/src/services/analyze.js.map +1 -1
  356. package/out/zero-cache/src/services/change-source/common/backfill-manager.js.map +1 -1
  357. package/out/zero-cache/src/services/change-source/common/change-stream-multiplexer.js.map +1 -1
  358. package/out/zero-cache/src/services/change-source/common/replica-schema.js.map +1 -1
  359. package/out/zero-cache/src/services/change-source/custom/change-source.js.map +1 -1
  360. package/out/zero-cache/src/services/change-source/pg/backfill-metadata.js.map +1 -1
  361. package/out/zero-cache/src/services/change-source/pg/backfill-stream.js +2 -2
  362. package/out/zero-cache/src/services/change-source/pg/backfill-stream.js.map +1 -1
  363. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts.map +1 -1
  364. package/out/zero-cache/src/services/change-source/pg/change-source.js +2 -2
  365. package/out/zero-cache/src/services/change-source/pg/change-source.js.map +1 -1
  366. package/out/zero-cache/src/services/change-source/pg/decommission.js.map +1 -1
  367. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts +8 -2
  368. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts.map +1 -1
  369. package/out/zero-cache/src/services/change-source/pg/initial-sync.js +13 -12
  370. package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -1
  371. package/out/zero-cache/src/services/change-source/pg/logical-replication/binary-reader.js.map +1 -1
  372. package/out/zero-cache/src/services/change-source/pg/logical-replication/pgoutput-parser.js.map +1 -1
  373. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js.map +1 -1
  374. package/out/zero-cache/src/services/change-source/pg/lsn.js.map +1 -1
  375. package/out/zero-cache/src/services/change-source/pg/replication-slots.d.ts +1 -1
  376. package/out/zero-cache/src/services/change-source/pg/replication-slots.d.ts.map +1 -1
  377. package/out/zero-cache/src/services/change-source/pg/replication-slots.js +33 -33
  378. package/out/zero-cache/src/services/change-source/pg/replication-slots.js.map +1 -1
  379. package/out/zero-cache/src/services/change-source/pg/schema/ddl.js.map +1 -1
  380. package/out/zero-cache/src/services/change-source/pg/schema/init.js.map +1 -1
  381. package/out/zero-cache/src/services/change-source/pg/schema/published.js.map +1 -1
  382. package/out/zero-cache/src/services/change-source/pg/schema/shard.js +1 -1
  383. package/out/zero-cache/src/services/change-source/pg/schema/shard.js.map +1 -1
  384. package/out/zero-cache/src/services/change-source/pg/schema/validation.js.map +1 -1
  385. package/out/zero-cache/src/services/change-source/protocol/current/control.js.map +1 -1
  386. package/out/zero-cache/src/services/change-source/protocol/current/data.js +2 -0
  387. package/out/zero-cache/src/services/change-source/protocol/current/data.js.map +1 -1
  388. package/out/zero-cache/src/services/change-source/protocol/current/downstream.js.map +1 -1
  389. package/out/zero-cache/src/services/change-source/protocol/current/json.js.map +1 -1
  390. package/out/zero-cache/src/services/change-source/protocol/current/status.js.map +1 -1
  391. package/out/zero-cache/src/services/change-source/protocol/current/upstream.js.map +1 -1
  392. package/out/zero-cache/src/services/change-streamer/backup-monitor.js.map +1 -1
  393. package/out/zero-cache/src/services/change-streamer/broadcast.js.map +1 -1
  394. package/out/zero-cache/src/services/change-streamer/change-streamer-http.js.map +1 -1
  395. package/out/zero-cache/src/services/change-streamer/change-streamer-service.js.map +1 -1
  396. package/out/zero-cache/src/services/change-streamer/change-streamer.js.map +1 -1
  397. package/out/zero-cache/src/services/change-streamer/forwarder.js.map +1 -1
  398. package/out/zero-cache/src/services/change-streamer/replica-monitor.js.map +1 -1
  399. package/out/zero-cache/src/services/change-streamer/schema/init.js +21 -25
  400. package/out/zero-cache/src/services/change-streamer/schema/init.js.map +1 -1
  401. package/out/zero-cache/src/services/change-streamer/schema/tables.d.ts.map +1 -1
  402. package/out/zero-cache/src/services/change-streamer/schema/tables.js +1 -1
  403. package/out/zero-cache/src/services/change-streamer/schema/tables.js.map +1 -1
  404. package/out/zero-cache/src/services/change-streamer/snapshot.js +15 -0
  405. package/out/zero-cache/src/services/change-streamer/snapshot.js.map +1 -1
  406. package/out/zero-cache/src/services/change-streamer/storer.js.map +1 -1
  407. package/out/zero-cache/src/services/change-streamer/subscriber.js.map +1 -1
  408. package/out/zero-cache/src/services/heapz.js.map +1 -1
  409. package/out/zero-cache/src/services/http-service.js.map +1 -1
  410. package/out/zero-cache/src/services/life-cycle.d.ts +1 -1
  411. package/out/zero-cache/src/services/life-cycle.d.ts.map +1 -1
  412. package/out/zero-cache/src/services/life-cycle.js +8 -3
  413. package/out/zero-cache/src/services/life-cycle.js.map +1 -1
  414. package/out/zero-cache/src/services/limiter/sliding-window-limiter.js.map +1 -1
  415. package/out/zero-cache/src/services/litestream/commands.js.map +1 -1
  416. package/out/zero-cache/src/services/mutagen/error.js.map +1 -1
  417. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  418. package/out/zero-cache/src/services/mutagen/pusher.js.map +1 -1
  419. package/out/zero-cache/src/services/replicator/change-processor.js.map +1 -1
  420. package/out/zero-cache/src/services/replicator/incremental-sync.js.map +1 -1
  421. package/out/zero-cache/src/services/replicator/notifier.js.map +1 -1
  422. package/out/zero-cache/src/services/replicator/replication-status.js.map +1 -1
  423. package/out/zero-cache/src/services/replicator/replicator.js.map +1 -1
  424. package/out/zero-cache/src/services/replicator/reporter/recorder.js.map +1 -1
  425. package/out/zero-cache/src/services/replicator/reporter/report-schema.js.map +1 -1
  426. package/out/zero-cache/src/services/replicator/schema/change-log.js.map +1 -1
  427. package/out/zero-cache/src/services/replicator/schema/column-metadata.js.map +1 -1
  428. package/out/zero-cache/src/services/replicator/schema/replication-state.js.map +1 -1
  429. package/out/zero-cache/src/services/replicator/schema/table-metadata.js.map +1 -1
  430. package/out/zero-cache/src/services/replicator/write-worker-client.js.map +1 -1
  431. package/out/zero-cache/src/services/replicator/write-worker.js.map +1 -1
  432. package/out/zero-cache/src/services/run-ast.d.ts.map +1 -1
  433. package/out/zero-cache/src/services/run-ast.js +1 -0
  434. package/out/zero-cache/src/services/run-ast.js.map +1 -1
  435. package/out/zero-cache/src/services/runner.js.map +1 -1
  436. package/out/zero-cache/src/services/running-state.d.ts.map +1 -1
  437. package/out/zero-cache/src/services/running-state.js +3 -0
  438. package/out/zero-cache/src/services/running-state.js.map +1 -1
  439. package/out/zero-cache/src/services/shadow-sync/shadow-sync-service.js.map +1 -1
  440. package/out/zero-cache/src/services/statz.js.map +1 -1
  441. package/out/zero-cache/src/services/view-syncer/active-users-gauge.js.map +1 -1
  442. package/out/zero-cache/src/services/view-syncer/client-handler.js +1 -1
  443. package/out/zero-cache/src/services/view-syncer/client-handler.js.map +1 -1
  444. package/out/zero-cache/src/services/view-syncer/client-schema.js.map +1 -1
  445. package/out/zero-cache/src/services/view-syncer/connection-context-manager.js.map +1 -1
  446. package/out/zero-cache/src/services/view-syncer/cvr-purger.d.ts.map +1 -1
  447. package/out/zero-cache/src/services/view-syncer/cvr-purger.js +2 -1
  448. package/out/zero-cache/src/services/view-syncer/cvr-purger.js.map +1 -1
  449. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -1
  450. package/out/zero-cache/src/services/view-syncer/cvr.js.map +1 -1
  451. package/out/zero-cache/src/services/view-syncer/drain-coordinator.js.map +1 -1
  452. package/out/zero-cache/src/services/view-syncer/inspect-handler.js +1 -1
  453. package/out/zero-cache/src/services/view-syncer/inspect-handler.js.map +1 -1
  454. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +1 -1
  455. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
  456. package/out/zero-cache/src/services/view-syncer/row-record-cache.js.map +1 -1
  457. package/out/zero-cache/src/services/view-syncer/row-set-signature.js.map +1 -1
  458. package/out/zero-cache/src/services/view-syncer/schema/cvr.js.map +1 -1
  459. package/out/zero-cache/src/services/view-syncer/schema/init.js +97 -113
  460. package/out/zero-cache/src/services/view-syncer/schema/init.js.map +1 -1
  461. package/out/zero-cache/src/services/view-syncer/schema/types.js +103 -1
  462. package/out/zero-cache/src/services/view-syncer/schema/types.js.map +1 -1
  463. package/out/zero-cache/src/services/view-syncer/snapshotter.js.map +1 -1
  464. package/out/zero-cache/src/services/view-syncer/tracer.js.map +1 -1
  465. package/out/zero-cache/src/services/view-syncer/ttl-clock.js.map +1 -1
  466. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  467. package/out/zero-cache/src/services/view-syncer/view-syncer.js +15 -5
  468. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  469. package/out/zero-cache/src/types/configuration-error.d.ts +4 -0
  470. package/out/zero-cache/src/types/configuration-error.d.ts.map +1 -0
  471. package/out/zero-cache/src/types/configuration-error.js +11 -0
  472. package/out/zero-cache/src/types/configuration-error.js.map +1 -0
  473. package/out/zero-cache/src/types/error-with-level.js.map +1 -1
  474. package/out/zero-cache/src/types/http.js.map +1 -1
  475. package/out/zero-cache/src/types/lexi-version.js.map +1 -1
  476. package/out/zero-cache/src/types/lite.js.map +1 -1
  477. package/out/zero-cache/src/types/names.js.map +1 -1
  478. package/out/zero-cache/src/types/pg-data-type.js.map +1 -1
  479. package/out/zero-cache/src/types/pg.d.ts +2 -0
  480. package/out/zero-cache/src/types/pg.d.ts.map +1 -1
  481. package/out/zero-cache/src/types/pg.js +34 -1
  482. package/out/zero-cache/src/types/pg.js.map +1 -1
  483. package/out/zero-cache/src/types/processes.js.map +1 -1
  484. package/out/zero-cache/src/types/profiler.js.map +1 -1
  485. package/out/zero-cache/src/types/row-key.js.map +1 -1
  486. package/out/zero-cache/src/types/shards.js.map +1 -1
  487. package/out/zero-cache/src/types/sql.js.map +1 -1
  488. package/out/zero-cache/src/types/state-version.js.map +1 -1
  489. package/out/zero-cache/src/types/streams.js.map +1 -1
  490. package/out/zero-cache/src/types/strings.js.map +1 -1
  491. package/out/zero-cache/src/types/subscription.js.map +1 -1
  492. package/out/zero-cache/src/types/timeout.js.map +1 -1
  493. package/out/zero-cache/src/types/url-params.js.map +1 -1
  494. package/out/zero-cache/src/types/websocket-handoff.js.map +1 -1
  495. package/out/zero-cache/src/types/ws.js.map +1 -1
  496. package/out/zero-cache/src/workers/connect-params.js.map +1 -1
  497. package/out/zero-cache/src/workers/connection.js.map +1 -1
  498. package/out/zero-cache/src/workers/mutator.js.map +1 -1
  499. package/out/zero-cache/src/workers/replicator.js.map +1 -1
  500. package/out/zero-cache/src/workers/syncer-ws-message-handler.js.map +1 -1
  501. package/out/zero-cache/src/workers/syncer.js.map +1 -1
  502. package/out/zero-client/src/client/active-clients-manager.js.map +1 -1
  503. package/out/zero-client/src/client/connection-manager.js +2 -1
  504. package/out/zero-client/src/client/connection-manager.js.map +1 -1
  505. package/out/zero-client/src/client/connection.js.map +1 -1
  506. package/out/zero-client/src/client/context.js.map +1 -1
  507. package/out/zero-client/src/client/crud-impl.js.map +1 -1
  508. package/out/zero-client/src/client/crud.js.map +1 -1
  509. package/out/zero-client/src/client/custom.js +2 -1
  510. package/out/zero-client/src/client/custom.js.map +1 -1
  511. package/out/zero-client/src/client/delete-clients-manager.js.map +1 -1
  512. package/out/zero-client/src/client/enable-analytics.js.map +1 -1
  513. package/out/zero-client/src/client/error.js.map +1 -1
  514. package/out/zero-client/src/client/http-string.js.map +1 -1
  515. package/out/zero-client/src/client/inspector/client-group.js.map +1 -1
  516. package/out/zero-client/src/client/inspector/client.js.map +1 -1
  517. package/out/zero-client/src/client/inspector/html-dialog-prompt.js.map +1 -1
  518. package/out/zero-client/src/client/inspector/inspector.js.map +1 -1
  519. package/out/zero-client/src/client/inspector/lazy-inspector.js.map +1 -1
  520. package/out/zero-client/src/client/inspector/query.js.map +1 -1
  521. package/out/zero-client/src/client/ivm-branch.js.map +1 -1
  522. package/out/zero-client/src/client/keys.js.map +1 -1
  523. package/out/zero-client/src/client/log-options.js.map +1 -1
  524. package/out/zero-client/src/client/make-mutate-property.js.map +1 -1
  525. package/out/zero-client/src/client/make-replicache-mutators.js.map +1 -1
  526. package/out/zero-client/src/client/metrics.js.map +1 -1
  527. package/out/zero-client/src/client/mutation-tracker.js.map +1 -1
  528. package/out/zero-client/src/client/mutator-proxy.js.map +1 -1
  529. package/out/zero-client/src/client/options.js.map +1 -1
  530. package/out/zero-client/src/client/query-manager.js.map +1 -1
  531. package/out/zero-client/src/client/reload-error-handler.js.map +1 -1
  532. package/out/zero-client/src/client/server-option.js.map +1 -1
  533. package/out/zero-client/src/client/version.js +1 -1
  534. package/out/zero-client/src/client/zero-poke-handler.js.map +1 -1
  535. package/out/zero-client/src/client/zero-rep.js.map +1 -1
  536. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  537. package/out/zero-client/src/client/zero.js +58 -32
  538. package/out/zero-client/src/client/zero.js.map +1 -1
  539. package/out/zero-client/src/util/nanoid.js.map +1 -1
  540. package/out/zero-protocol/src/analyze-query-result.js +3 -0
  541. package/out/zero-protocol/src/analyze-query-result.js.map +1 -1
  542. package/out/zero-protocol/src/application-error.js.map +1 -1
  543. package/out/zero-protocol/src/ast.js.map +1 -1
  544. package/out/zero-protocol/src/change-desired-queries.js +1 -0
  545. package/out/zero-protocol/src/change-desired-queries.js.map +1 -1
  546. package/out/zero-protocol/src/client-schema.js.map +1 -1
  547. package/out/zero-protocol/src/close-connection.js.map +1 -1
  548. package/out/zero-protocol/src/connect.js +7 -0
  549. package/out/zero-protocol/src/connect.js.map +1 -1
  550. package/out/zero-protocol/src/custom-queries.js.map +1 -1
  551. package/out/zero-protocol/src/data.js.map +1 -1
  552. package/out/zero-protocol/src/delete-clients.js.map +1 -1
  553. package/out/zero-protocol/src/down.js.map +1 -1
  554. package/out/zero-protocol/src/error.js +7 -0
  555. package/out/zero-protocol/src/error.js.map +1 -1
  556. package/out/zero-protocol/src/inspect-down.js.map +1 -1
  557. package/out/zero-protocol/src/inspect-up.js +1 -0
  558. package/out/zero-protocol/src/inspect-up.js.map +1 -1
  559. package/out/zero-protocol/src/mutate-server.js.map +1 -1
  560. package/out/zero-protocol/src/mutation-id.js.map +1 -1
  561. package/out/zero-protocol/src/mutation.js.map +1 -1
  562. package/out/zero-protocol/src/mutations-patch.js.map +1 -1
  563. package/out/zero-protocol/src/ping.js.map +1 -1
  564. package/out/zero-protocol/src/poke.js +4 -0
  565. package/out/zero-protocol/src/poke.js.map +1 -1
  566. package/out/zero-protocol/src/pong.js.map +1 -1
  567. package/out/zero-protocol/src/primary-key.js.map +1 -1
  568. package/out/zero-protocol/src/protocol-version.js.map +1 -1
  569. package/out/zero-protocol/src/pull.js.map +1 -1
  570. package/out/zero-protocol/src/push.js +16 -0
  571. package/out/zero-protocol/src/push.js.map +1 -1
  572. package/out/zero-protocol/src/queries-patch.js.map +1 -1
  573. package/out/zero-protocol/src/query-hash.js.map +1 -1
  574. package/out/zero-protocol/src/query-server.js.map +1 -1
  575. package/out/zero-protocol/src/row-patch.js.map +1 -1
  576. package/out/zero-protocol/src/up.js.map +1 -1
  577. package/out/zero-protocol/src/update-auth.js.map +1 -1
  578. package/out/zero-protocol/src/version.js.map +1 -1
  579. package/out/zero-react/src/use-connection-state.js +4 -2
  580. package/out/zero-react/src/use-connection-state.js.map +1 -1
  581. package/out/zero-react/src/use-query.js +6 -4
  582. package/out/zero-react/src/use-query.js.map +1 -1
  583. package/out/zero-react/src/use-zero-online.js +4 -2
  584. package/out/zero-react/src/use-zero-online.js.map +1 -1
  585. package/out/zero-react/src/zero-provider.js +15 -12
  586. package/out/zero-react/src/zero-provider.js.map +1 -1
  587. package/out/zero-schema/src/builder/relationship-builder.js.map +1 -1
  588. package/out/zero-schema/src/builder/schema-builder.js.map +1 -1
  589. package/out/zero-schema/src/builder/table-builder.js.map +1 -1
  590. package/out/zero-schema/src/compiled-permissions.js.map +1 -1
  591. package/out/zero-schema/src/name-mapper.js.map +1 -1
  592. package/out/zero-schema/src/permissions.js.map +1 -1
  593. package/out/zero-schema/src/schema-config.js.map +1 -1
  594. package/out/zero-server/src/adapters/drizzle.js.map +1 -1
  595. package/out/zero-server/src/adapters/kysely.js.map +1 -1
  596. package/out/zero-server/src/adapters/pg.js +1 -1
  597. package/out/zero-server/src/adapters/pg.js.map +1 -1
  598. package/out/zero-server/src/adapters/postgresjs.js.map +1 -1
  599. package/out/zero-server/src/adapters/prisma.js.map +1 -1
  600. package/out/zero-server/src/custom.js +2 -1
  601. package/out/zero-server/src/custom.js.map +1 -1
  602. package/out/zero-server/src/logging.js.map +1 -1
  603. package/out/zero-server/src/pg-query-executor.js.map +1 -1
  604. package/out/zero-server/src/process-mutations.js.map +1 -1
  605. package/out/zero-server/src/push-processor.js.map +1 -1
  606. package/out/zero-server/src/queries/process-queries.js.map +1 -1
  607. package/out/zero-server/src/schema.js.map +1 -1
  608. package/out/zero-server/src/zql-database.js.map +1 -1
  609. package/out/zero-solid/src/solid-view.js +1 -1
  610. package/out/zero-solid/src/solid-view.js.map +1 -1
  611. package/out/zero-solid/src/use-connection-state.js +1 -1
  612. package/out/zero-solid/src/use-connection-state.js.map +1 -1
  613. package/out/zero-solid/src/use-query.js +2 -2
  614. package/out/zero-solid/src/use-query.js.map +1 -1
  615. package/out/zero-solid/src/use-zero-online.js +1 -1
  616. package/out/zero-solid/src/use-zero-online.js.map +1 -1
  617. package/out/zero-solid/src/use-zero.js +1 -1
  618. package/out/zero-solid/src/use-zero.js.map +1 -1
  619. package/out/zero-types/src/format.js.map +1 -1
  620. package/out/zero-types/src/name-mapper.js.map +1 -1
  621. package/out/zql/src/builder/builder.d.ts.map +1 -1
  622. package/out/zql/src/builder/builder.js +18 -7
  623. package/out/zql/src/builder/builder.js.map +1 -1
  624. package/out/zql/src/builder/debug-delegate.d.ts +5 -0
  625. package/out/zql/src/builder/debug-delegate.d.ts.map +1 -1
  626. package/out/zql/src/builder/debug-delegate.js +10 -1
  627. package/out/zql/src/builder/debug-delegate.js.map +1 -1
  628. package/out/zql/src/builder/filter.js.map +1 -1
  629. package/out/zql/src/builder/like.js.map +1 -1
  630. package/out/zql/src/error.js.map +1 -1
  631. package/out/zql/src/ivm/array-view.js.map +1 -1
  632. package/out/zql/src/ivm/cap.d.ts +32 -0
  633. package/out/zql/src/ivm/cap.d.ts.map +1 -0
  634. package/out/zql/src/ivm/cap.js +205 -0
  635. package/out/zql/src/ivm/cap.js.map +1 -0
  636. package/out/zql/src/ivm/change.js.map +1 -1
  637. package/out/zql/src/ivm/constraint.js +1 -1
  638. package/out/zql/src/ivm/constraint.js.map +1 -1
  639. package/out/zql/src/ivm/data.js.map +1 -1
  640. package/out/zql/src/ivm/exists.js.map +1 -1
  641. package/out/zql/src/ivm/fan-in.js.map +1 -1
  642. package/out/zql/src/ivm/fan-out.js.map +1 -1
  643. package/out/zql/src/ivm/filter-operators.js.map +1 -1
  644. package/out/zql/src/ivm/filter-push.js.map +1 -1
  645. package/out/zql/src/ivm/filter.js.map +1 -1
  646. package/out/zql/src/ivm/flipped-join.d.ts +4 -8
  647. package/out/zql/src/ivm/flipped-join.d.ts.map +1 -1
  648. package/out/zql/src/ivm/flipped-join.js +59 -63
  649. package/out/zql/src/ivm/flipped-join.js.map +1 -1
  650. package/out/zql/src/ivm/join-utils.js.map +1 -1
  651. package/out/zql/src/ivm/join.js.map +1 -1
  652. package/out/zql/src/ivm/maybe-split-and-push-edit-change.js.map +1 -1
  653. package/out/zql/src/ivm/memory-source.js +1 -1
  654. package/out/zql/src/ivm/memory-source.js.map +1 -1
  655. package/out/zql/src/ivm/memory-storage.js.map +1 -1
  656. package/out/zql/src/ivm/operator.d.ts +1 -1
  657. package/out/zql/src/ivm/operator.js.map +1 -1
  658. package/out/zql/src/ivm/push-accumulated.js.map +1 -1
  659. package/out/zql/src/ivm/schema.d.ts +0 -8
  660. package/out/zql/src/ivm/schema.d.ts.map +1 -1
  661. package/out/zql/src/ivm/skip-yields.js.map +1 -1
  662. package/out/zql/src/ivm/skip.js.map +1 -1
  663. package/out/zql/src/ivm/source.js.map +1 -1
  664. package/out/zql/src/ivm/stream.js.map +1 -1
  665. package/out/zql/src/ivm/take.js +2 -2
  666. package/out/zql/src/ivm/take.js.map +1 -1
  667. package/out/zql/src/ivm/union-fan-in.d.ts.map +1 -1
  668. package/out/zql/src/ivm/union-fan-in.js +3 -1
  669. package/out/zql/src/ivm/union-fan-in.js.map +1 -1
  670. package/out/zql/src/ivm/union-fan-out.js.map +1 -1
  671. package/out/zql/src/ivm/view-apply-change.js.map +1 -1
  672. package/out/zql/src/mutate/crud.js.map +1 -1
  673. package/out/zql/src/mutate/custom.js.map +1 -1
  674. package/out/zql/src/mutate/mutator-registry.js.map +1 -1
  675. package/out/zql/src/mutate/mutator.d.ts +12 -3
  676. package/out/zql/src/mutate/mutator.d.ts.map +1 -1
  677. package/out/zql/src/mutate/mutator.js.map +1 -1
  678. package/out/zql/src/planner/planner-builder.js.map +1 -1
  679. package/out/zql/src/planner/planner-connection.js.map +1 -1
  680. package/out/zql/src/planner/planner-constraint.js.map +1 -1
  681. package/out/zql/src/planner/planner-debug.js.map +1 -1
  682. package/out/zql/src/planner/planner-fan-in.js.map +1 -1
  683. package/out/zql/src/planner/planner-fan-out.js.map +1 -1
  684. package/out/zql/src/planner/planner-graph.js.map +1 -1
  685. package/out/zql/src/planner/planner-join.d.ts.map +1 -1
  686. package/out/zql/src/planner/planner-join.js +2 -1
  687. package/out/zql/src/planner/planner-join.js.map +1 -1
  688. package/out/zql/src/planner/planner-node.js.map +1 -1
  689. package/out/zql/src/planner/planner-source.js.map +1 -1
  690. package/out/zql/src/planner/planner-terminus.js.map +1 -1
  691. package/out/zql/src/query/complete-ordering.js.map +1 -1
  692. package/out/zql/src/query/create-builder.js.map +1 -1
  693. package/out/zql/src/query/error.js.map +1 -1
  694. package/out/zql/src/query/escape-like.js.map +1 -1
  695. package/out/zql/src/query/expression.js.map +1 -1
  696. package/out/zql/src/query/measure-push-operator.js.map +1 -1
  697. package/out/zql/src/query/metrics-delegate.js.map +1 -1
  698. package/out/zql/src/query/named.js.map +1 -1
  699. package/out/zql/src/query/query-delegate-base.js.map +1 -1
  700. package/out/zql/src/query/query-impl.js +1 -1
  701. package/out/zql/src/query/query-impl.js.map +1 -1
  702. package/out/zql/src/query/query-internals.js.map +1 -1
  703. package/out/zql/src/query/query-registry.d.ts +10 -3
  704. package/out/zql/src/query/query-registry.d.ts.map +1 -1
  705. package/out/zql/src/query/query-registry.js.map +1 -1
  706. package/out/zql/src/query/runnable-query-impl.js.map +1 -1
  707. package/out/zql/src/query/static-query.js.map +1 -1
  708. package/out/zql/src/query/ttl.js.map +1 -1
  709. package/out/zql/src/query/validate-input.js.map +1 -1
  710. package/out/zqlite/src/database-storage.js.map +1 -1
  711. package/out/zqlite/src/db.js.map +1 -1
  712. package/out/zqlite/src/explain-queries.js.map +1 -1
  713. package/out/zqlite/src/internal/sql-inline.js.map +1 -1
  714. package/out/zqlite/src/internal/sql.js.map +1 -1
  715. package/out/zqlite/src/internal/statement-cache.js.map +1 -1
  716. package/out/zqlite/src/query-builder.js.map +1 -1
  717. package/out/zqlite/src/query-delegate.js.map +1 -1
  718. package/out/zqlite/src/resolve-scalar-subqueries.js.map +1 -1
  719. package/out/zqlite/src/sqlite-cost-model.js.map +1 -1
  720. package/out/zqlite/src/sqlite-stat-fanout.js.map +1 -1
  721. package/out/zqlite/src/table-source.d.ts.map +1 -1
  722. package/out/zqlite/src/table-source.js +7 -7
  723. package/out/zqlite/src/table-source.js.map +1 -1
  724. package/package.json +23 -23
  725. package/out/zero-client/src/util/socket.d.ts +0 -3
  726. package/out/zero-client/src/util/socket.d.ts.map +0 -1
  727. package/out/zero-client/src/util/socket.js +0 -8
  728. package/out/zero-client/src/util/socket.js.map +0 -1
@@ -0,0 +1,508 @@
1
+ import { __commonJSMin, __require } from "../../../../../../_virtual/_rolldown/runtime.js";
2
+ import { require_defaults } from "./defaults.js";
3
+ import { require_utils } from "./utils.js";
4
+ import { require_utils as require_utils$1 } from "./crypto/utils.js";
5
+ import { require_sasl } from "./crypto/sasl.js";
6
+ import { require_type_overrides } from "./type-overrides.js";
7
+ import { require_connection_parameters } from "./connection-parameters.js";
8
+ import { require_query } from "./query.js";
9
+ import { require_connection } from "./connection.js";
10
+ import { require_lib } from "../../../../pgpass@1.0.5/node_modules/pgpass/lib/index.js";
11
+ //#region ../../node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/client.js
12
+ var require_client = /* @__PURE__ */ __commonJSMin(((exports, module) => {
13
+ var EventEmitter = __require("events").EventEmitter;
14
+ var utils = require_utils();
15
+ var nodeUtils = __require("util");
16
+ var sasl = require_sasl();
17
+ var TypeOverrides = require_type_overrides();
18
+ var ConnectionParameters = require_connection_parameters();
19
+ var Query = require_query();
20
+ var defaults = require_defaults();
21
+ var Connection = require_connection();
22
+ var crypto = require_utils$1();
23
+ var activeQueryDeprecationNotice = nodeUtils.deprecate(() => {}, "Client.activeQuery is deprecated and will be removed in pg@9.0");
24
+ var queryQueueDeprecationNotice = nodeUtils.deprecate(() => {}, "Client.queryQueue is deprecated and will be removed in pg@9.0.");
25
+ var pgPassDeprecationNotice = nodeUtils.deprecate(() => {}, "pgpass support is deprecated and will be removed in pg@9.0. You can provide an async function as the password property to the Client/Pool constructor that returns a password instead. Within this function you can call the pgpass module in your own code.");
26
+ var byoPromiseDeprecationNotice = nodeUtils.deprecate(() => {}, "Passing a custom Promise implementation to the Client/Pool constructor is deprecated and will be removed in pg@9.0.");
27
+ var queryQueueLengthDeprecationNotice = nodeUtils.deprecate(() => {}, "Calling client.query() when the client is already executing a query is deprecated and will be removed in pg@9.0. Use async/await or an external async flow control mechanism instead.");
28
+ var Client = class extends EventEmitter {
29
+ constructor(config) {
30
+ super();
31
+ this.connectionParameters = new ConnectionParameters(config);
32
+ this.user = this.connectionParameters.user;
33
+ this.database = this.connectionParameters.database;
34
+ this.port = this.connectionParameters.port;
35
+ this.host = this.connectionParameters.host;
36
+ Object.defineProperty(this, "password", {
37
+ configurable: true,
38
+ enumerable: false,
39
+ writable: true,
40
+ value: this.connectionParameters.password
41
+ });
42
+ this.replication = this.connectionParameters.replication;
43
+ const c = config || {};
44
+ if (c.Promise) byoPromiseDeprecationNotice();
45
+ this._Promise = c.Promise || global.Promise;
46
+ this._types = new TypeOverrides(c.types);
47
+ this._ending = false;
48
+ this._ended = false;
49
+ this._connecting = false;
50
+ this._connected = false;
51
+ this._connectionError = false;
52
+ this._queryable = true;
53
+ this._activeQuery = null;
54
+ this.enableChannelBinding = Boolean(c.enableChannelBinding);
55
+ this.connection = c.connection || new Connection({
56
+ stream: c.stream,
57
+ ssl: this.connectionParameters.ssl,
58
+ keepAlive: c.keepAlive || false,
59
+ keepAliveInitialDelayMillis: c.keepAliveInitialDelayMillis || 0,
60
+ encoding: this.connectionParameters.client_encoding || "utf8"
61
+ });
62
+ this._queryQueue = [];
63
+ this.binary = c.binary || defaults.binary;
64
+ this.processID = null;
65
+ this.secretKey = null;
66
+ this.ssl = this.connectionParameters.ssl || false;
67
+ if (this.ssl && this.ssl.key) Object.defineProperty(this.ssl, "key", { enumerable: false });
68
+ this._connectionTimeoutMillis = c.connectionTimeoutMillis || 0;
69
+ }
70
+ get activeQuery() {
71
+ activeQueryDeprecationNotice();
72
+ return this._activeQuery;
73
+ }
74
+ set activeQuery(val) {
75
+ activeQueryDeprecationNotice();
76
+ this._activeQuery = val;
77
+ }
78
+ _getActiveQuery() {
79
+ return this._activeQuery;
80
+ }
81
+ _errorAllQueries(err) {
82
+ const enqueueError = (query) => {
83
+ process.nextTick(() => {
84
+ query.handleError(err, this.connection);
85
+ });
86
+ };
87
+ const activeQuery = this._getActiveQuery();
88
+ if (activeQuery) {
89
+ enqueueError(activeQuery);
90
+ this._activeQuery = null;
91
+ }
92
+ this._queryQueue.forEach(enqueueError);
93
+ this._queryQueue.length = 0;
94
+ }
95
+ _connect(callback) {
96
+ const self = this;
97
+ const con = this.connection;
98
+ this._connectionCallback = callback;
99
+ if (this._connecting || this._connected) {
100
+ const err = /* @__PURE__ */ new Error("Client has already been connected. You cannot reuse a client.");
101
+ process.nextTick(() => {
102
+ callback(err);
103
+ });
104
+ return;
105
+ }
106
+ this._connecting = true;
107
+ if (this._connectionTimeoutMillis > 0) {
108
+ this.connectionTimeoutHandle = setTimeout(() => {
109
+ con._ending = true;
110
+ con.stream.destroy(/* @__PURE__ */ new Error("timeout expired"));
111
+ }, this._connectionTimeoutMillis);
112
+ if (this.connectionTimeoutHandle.unref) this.connectionTimeoutHandle.unref();
113
+ }
114
+ if (this.host && this.host.indexOf("/") === 0) con.connect(this.host + "/.s.PGSQL." + this.port);
115
+ else con.connect(this.port, this.host);
116
+ con.on("connect", function() {
117
+ if (self.ssl) con.requestSsl();
118
+ else con.startup(self.getStartupConf());
119
+ });
120
+ con.on("sslconnect", function() {
121
+ con.startup(self.getStartupConf());
122
+ });
123
+ this._attachListeners(con);
124
+ con.once("end", () => {
125
+ const error = this._ending ? /* @__PURE__ */ new Error("Connection terminated") : /* @__PURE__ */ new Error("Connection terminated unexpectedly");
126
+ clearTimeout(this.connectionTimeoutHandle);
127
+ this._errorAllQueries(error);
128
+ this._ended = true;
129
+ if (!this._ending) {
130
+ if (this._connecting && !this._connectionError) if (this._connectionCallback) this._connectionCallback(error);
131
+ else this._handleErrorEvent(error);
132
+ else if (!this._connectionError) this._handleErrorEvent(error);
133
+ }
134
+ process.nextTick(() => {
135
+ this.emit("end");
136
+ });
137
+ });
138
+ }
139
+ connect(callback) {
140
+ if (callback) {
141
+ this._connect(callback);
142
+ return;
143
+ }
144
+ return new this._Promise((resolve, reject) => {
145
+ this._connect((error) => {
146
+ if (error) reject(error);
147
+ else resolve(this);
148
+ });
149
+ });
150
+ }
151
+ _attachListeners(con) {
152
+ con.on("authenticationCleartextPassword", this._handleAuthCleartextPassword.bind(this));
153
+ con.on("authenticationMD5Password", this._handleAuthMD5Password.bind(this));
154
+ con.on("authenticationSASL", this._handleAuthSASL.bind(this));
155
+ con.on("authenticationSASLContinue", this._handleAuthSASLContinue.bind(this));
156
+ con.on("authenticationSASLFinal", this._handleAuthSASLFinal.bind(this));
157
+ con.on("backendKeyData", this._handleBackendKeyData.bind(this));
158
+ con.on("error", this._handleErrorEvent.bind(this));
159
+ con.on("errorMessage", this._handleErrorMessage.bind(this));
160
+ con.on("readyForQuery", this._handleReadyForQuery.bind(this));
161
+ con.on("notice", this._handleNotice.bind(this));
162
+ con.on("rowDescription", this._handleRowDescription.bind(this));
163
+ con.on("dataRow", this._handleDataRow.bind(this));
164
+ con.on("portalSuspended", this._handlePortalSuspended.bind(this));
165
+ con.on("emptyQuery", this._handleEmptyQuery.bind(this));
166
+ con.on("commandComplete", this._handleCommandComplete.bind(this));
167
+ con.on("parseComplete", this._handleParseComplete.bind(this));
168
+ con.on("copyInResponse", this._handleCopyInResponse.bind(this));
169
+ con.on("copyData", this._handleCopyData.bind(this));
170
+ con.on("notification", this._handleNotification.bind(this));
171
+ }
172
+ _getPassword(cb) {
173
+ const con = this.connection;
174
+ if (typeof this.password === "function") this._Promise.resolve().then(() => this.password(this.connectionParameters)).then((pass) => {
175
+ if (pass !== void 0) {
176
+ if (typeof pass !== "string") {
177
+ con.emit("error", /* @__PURE__ */ new TypeError("Password must be a string"));
178
+ return;
179
+ }
180
+ this.connectionParameters.password = this.password = pass;
181
+ } else this.connectionParameters.password = this.password = null;
182
+ cb();
183
+ }).catch((err) => {
184
+ con.emit("error", err);
185
+ });
186
+ else if (this.password !== null) cb();
187
+ else try {
188
+ require_lib()(this.connectionParameters, (pass) => {
189
+ if (void 0 !== pass) {
190
+ pgPassDeprecationNotice();
191
+ this.connectionParameters.password = this.password = pass;
192
+ }
193
+ cb();
194
+ });
195
+ } catch (e) {
196
+ this.emit("error", e);
197
+ }
198
+ }
199
+ _handleAuthCleartextPassword(msg) {
200
+ this._getPassword(() => {
201
+ this.connection.password(this.password);
202
+ });
203
+ }
204
+ _handleAuthMD5Password(msg) {
205
+ this._getPassword(async () => {
206
+ try {
207
+ const hashedPassword = await crypto.postgresMd5PasswordHash(this.user, this.password, msg.salt);
208
+ this.connection.password(hashedPassword);
209
+ } catch (e) {
210
+ this.emit("error", e);
211
+ }
212
+ });
213
+ }
214
+ _handleAuthSASL(msg) {
215
+ this._getPassword(() => {
216
+ try {
217
+ this.saslSession = sasl.startSession(msg.mechanisms, this.enableChannelBinding && this.connection.stream);
218
+ this.connection.sendSASLInitialResponseMessage(this.saslSession.mechanism, this.saslSession.response);
219
+ } catch (err) {
220
+ this.connection.emit("error", err);
221
+ }
222
+ });
223
+ }
224
+ async _handleAuthSASLContinue(msg) {
225
+ try {
226
+ await sasl.continueSession(this.saslSession, this.password, msg.data, this.enableChannelBinding && this.connection.stream);
227
+ this.connection.sendSCRAMClientFinalMessage(this.saslSession.response);
228
+ } catch (err) {
229
+ this.connection.emit("error", err);
230
+ }
231
+ }
232
+ _handleAuthSASLFinal(msg) {
233
+ try {
234
+ sasl.finalizeSession(this.saslSession, msg.data);
235
+ this.saslSession = null;
236
+ } catch (err) {
237
+ this.connection.emit("error", err);
238
+ }
239
+ }
240
+ _handleBackendKeyData(msg) {
241
+ this.processID = msg.processID;
242
+ this.secretKey = msg.secretKey;
243
+ }
244
+ _handleReadyForQuery(msg) {
245
+ if (this._connecting) {
246
+ this._connecting = false;
247
+ this._connected = true;
248
+ clearTimeout(this.connectionTimeoutHandle);
249
+ if (this._connectionCallback) {
250
+ this._connectionCallback(null, this);
251
+ this._connectionCallback = null;
252
+ }
253
+ this.emit("connect");
254
+ }
255
+ const activeQuery = this._getActiveQuery();
256
+ this._activeQuery = null;
257
+ this.readyForQuery = true;
258
+ if (activeQuery) activeQuery.handleReadyForQuery(this.connection);
259
+ this._pulseQueryQueue();
260
+ }
261
+ _handleErrorWhileConnecting(err) {
262
+ if (this._connectionError) return;
263
+ this._connectionError = true;
264
+ clearTimeout(this.connectionTimeoutHandle);
265
+ if (this._connectionCallback) return this._connectionCallback(err);
266
+ this.emit("error", err);
267
+ }
268
+ _handleErrorEvent(err) {
269
+ if (this._connecting) return this._handleErrorWhileConnecting(err);
270
+ this._queryable = false;
271
+ this._errorAllQueries(err);
272
+ this.emit("error", err);
273
+ }
274
+ _handleErrorMessage(msg) {
275
+ if (this._connecting) return this._handleErrorWhileConnecting(msg);
276
+ const activeQuery = this._getActiveQuery();
277
+ if (!activeQuery) {
278
+ this._handleErrorEvent(msg);
279
+ return;
280
+ }
281
+ this._activeQuery = null;
282
+ activeQuery.handleError(msg, this.connection);
283
+ }
284
+ _handleRowDescription(msg) {
285
+ const activeQuery = this._getActiveQuery();
286
+ if (activeQuery == null) {
287
+ const error = /* @__PURE__ */ new Error("Received unexpected rowDescription message from backend.");
288
+ this._handleErrorEvent(error);
289
+ return;
290
+ }
291
+ activeQuery.handleRowDescription(msg);
292
+ }
293
+ _handleDataRow(msg) {
294
+ const activeQuery = this._getActiveQuery();
295
+ if (activeQuery == null) {
296
+ const error = /* @__PURE__ */ new Error("Received unexpected dataRow message from backend.");
297
+ this._handleErrorEvent(error);
298
+ return;
299
+ }
300
+ activeQuery.handleDataRow(msg);
301
+ }
302
+ _handlePortalSuspended(msg) {
303
+ const activeQuery = this._getActiveQuery();
304
+ if (activeQuery == null) {
305
+ const error = /* @__PURE__ */ new Error("Received unexpected portalSuspended message from backend.");
306
+ this._handleErrorEvent(error);
307
+ return;
308
+ }
309
+ activeQuery.handlePortalSuspended(this.connection);
310
+ }
311
+ _handleEmptyQuery(msg) {
312
+ const activeQuery = this._getActiveQuery();
313
+ if (activeQuery == null) {
314
+ const error = /* @__PURE__ */ new Error("Received unexpected emptyQuery message from backend.");
315
+ this._handleErrorEvent(error);
316
+ return;
317
+ }
318
+ activeQuery.handleEmptyQuery(this.connection);
319
+ }
320
+ _handleCommandComplete(msg) {
321
+ const activeQuery = this._getActiveQuery();
322
+ if (activeQuery == null) {
323
+ const error = /* @__PURE__ */ new Error("Received unexpected commandComplete message from backend.");
324
+ this._handleErrorEvent(error);
325
+ return;
326
+ }
327
+ activeQuery.handleCommandComplete(msg, this.connection);
328
+ }
329
+ _handleParseComplete() {
330
+ const activeQuery = this._getActiveQuery();
331
+ if (activeQuery == null) {
332
+ const error = /* @__PURE__ */ new Error("Received unexpected parseComplete message from backend.");
333
+ this._handleErrorEvent(error);
334
+ return;
335
+ }
336
+ if (activeQuery.name) this.connection.parsedStatements[activeQuery.name] = activeQuery.text;
337
+ }
338
+ _handleCopyInResponse(msg) {
339
+ const activeQuery = this._getActiveQuery();
340
+ if (activeQuery == null) {
341
+ const error = /* @__PURE__ */ new Error("Received unexpected copyInResponse message from backend.");
342
+ this._handleErrorEvent(error);
343
+ return;
344
+ }
345
+ activeQuery.handleCopyInResponse(this.connection);
346
+ }
347
+ _handleCopyData(msg) {
348
+ const activeQuery = this._getActiveQuery();
349
+ if (activeQuery == null) {
350
+ const error = /* @__PURE__ */ new Error("Received unexpected copyData message from backend.");
351
+ this._handleErrorEvent(error);
352
+ return;
353
+ }
354
+ activeQuery.handleCopyData(msg, this.connection);
355
+ }
356
+ _handleNotification(msg) {
357
+ this.emit("notification", msg);
358
+ }
359
+ _handleNotice(msg) {
360
+ this.emit("notice", msg);
361
+ }
362
+ getStartupConf() {
363
+ const params = this.connectionParameters;
364
+ const data = {
365
+ user: params.user,
366
+ database: params.database
367
+ };
368
+ const appName = params.application_name || params.fallback_application_name;
369
+ if (appName) data.application_name = appName;
370
+ if (params.replication) data.replication = "" + params.replication;
371
+ if (params.statement_timeout) data.statement_timeout = String(parseInt(params.statement_timeout, 10));
372
+ if (params.lock_timeout) data.lock_timeout = String(parseInt(params.lock_timeout, 10));
373
+ if (params.idle_in_transaction_session_timeout) data.idle_in_transaction_session_timeout = String(parseInt(params.idle_in_transaction_session_timeout, 10));
374
+ if (params.options) data.options = params.options;
375
+ return data;
376
+ }
377
+ cancel(client, query) {
378
+ if (client.activeQuery === query) {
379
+ const con = this.connection;
380
+ if (this.host && this.host.indexOf("/") === 0) con.connect(this.host + "/.s.PGSQL." + this.port);
381
+ else con.connect(this.port, this.host);
382
+ con.on("connect", function() {
383
+ con.cancel(client.processID, client.secretKey);
384
+ });
385
+ } else if (client._queryQueue.indexOf(query) !== -1) client._queryQueue.splice(client._queryQueue.indexOf(query), 1);
386
+ }
387
+ setTypeParser(oid, format, parseFn) {
388
+ return this._types.setTypeParser(oid, format, parseFn);
389
+ }
390
+ getTypeParser(oid, format) {
391
+ return this._types.getTypeParser(oid, format);
392
+ }
393
+ escapeIdentifier(str) {
394
+ return utils.escapeIdentifier(str);
395
+ }
396
+ escapeLiteral(str) {
397
+ return utils.escapeLiteral(str);
398
+ }
399
+ _pulseQueryQueue() {
400
+ if (this.readyForQuery === true) {
401
+ this._activeQuery = this._queryQueue.shift();
402
+ const activeQuery = this._getActiveQuery();
403
+ if (activeQuery) {
404
+ this.readyForQuery = false;
405
+ this.hasExecuted = true;
406
+ const queryError = activeQuery.submit(this.connection);
407
+ if (queryError) process.nextTick(() => {
408
+ activeQuery.handleError(queryError, this.connection);
409
+ this.readyForQuery = true;
410
+ this._pulseQueryQueue();
411
+ });
412
+ } else if (this.hasExecuted) {
413
+ this._activeQuery = null;
414
+ this.emit("drain");
415
+ }
416
+ }
417
+ }
418
+ query(config, values, callback) {
419
+ let query;
420
+ let result;
421
+ let readTimeout;
422
+ let readTimeoutTimer;
423
+ let queryCallback;
424
+ if (config === null || config === void 0) throw new TypeError("Client was passed a null or undefined query");
425
+ else if (typeof config.submit === "function") {
426
+ readTimeout = config.query_timeout || this.connectionParameters.query_timeout;
427
+ result = query = config;
428
+ if (!query.callback) {
429
+ if (typeof values === "function") query.callback = values;
430
+ else if (callback) query.callback = callback;
431
+ }
432
+ } else {
433
+ readTimeout = config.query_timeout || this.connectionParameters.query_timeout;
434
+ query = new Query(config, values, callback);
435
+ if (!query.callback) result = new this._Promise((resolve, reject) => {
436
+ query.callback = (err, res) => err ? reject(err) : resolve(res);
437
+ }).catch((err) => {
438
+ Error.captureStackTrace(err);
439
+ throw err;
440
+ });
441
+ }
442
+ if (readTimeout) {
443
+ queryCallback = query.callback || (() => {});
444
+ readTimeoutTimer = setTimeout(() => {
445
+ const error = /* @__PURE__ */ new Error("Query read timeout");
446
+ process.nextTick(() => {
447
+ query.handleError(error, this.connection);
448
+ });
449
+ queryCallback(error);
450
+ query.callback = () => {};
451
+ const index = this._queryQueue.indexOf(query);
452
+ if (index > -1) this._queryQueue.splice(index, 1);
453
+ this._pulseQueryQueue();
454
+ }, readTimeout);
455
+ query.callback = (err, res) => {
456
+ clearTimeout(readTimeoutTimer);
457
+ queryCallback(err, res);
458
+ };
459
+ }
460
+ if (this.binary && !query.binary) query.binary = true;
461
+ if (query._result && !query._result._types) query._result._types = this._types;
462
+ if (!this._queryable) {
463
+ process.nextTick(() => {
464
+ query.handleError(/* @__PURE__ */ new Error("Client has encountered a connection error and is not queryable"), this.connection);
465
+ });
466
+ return result;
467
+ }
468
+ if (this._ending) {
469
+ process.nextTick(() => {
470
+ query.handleError(/* @__PURE__ */ new Error("Client was closed and is not queryable"), this.connection);
471
+ });
472
+ return result;
473
+ }
474
+ if (this._queryQueue.length > 0) queryQueueLengthDeprecationNotice();
475
+ this._queryQueue.push(query);
476
+ this._pulseQueryQueue();
477
+ return result;
478
+ }
479
+ ref() {
480
+ this.connection.ref();
481
+ }
482
+ unref() {
483
+ this.connection.unref();
484
+ }
485
+ end(cb) {
486
+ this._ending = true;
487
+ if (!this.connection._connecting || this._ended) if (cb) cb();
488
+ else return this._Promise.resolve();
489
+ if (this._getActiveQuery() || !this._queryable) this.connection.stream.destroy();
490
+ else this.connection.end();
491
+ if (cb) this.connection.once("end", cb);
492
+ else return new this._Promise((resolve) => {
493
+ this.connection.once("end", resolve);
494
+ });
495
+ }
496
+ get queryQueue() {
497
+ queryQueueDeprecationNotice();
498
+ return this._queryQueue;
499
+ }
500
+ };
501
+ Client.Query = Query;
502
+ module.exports = Client;
503
+ }));
504
+ //#endregion
505
+ export default require_client();
506
+ export { require_client };
507
+
508
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","names":[],"sources":["../../../../../../../../../node_modules/.pnpm/pg@8.20.0/node_modules/pg/lib/client.js"],"sourcesContent":["const EventEmitter = require('events').EventEmitter\nconst utils = require('./utils')\nconst nodeUtils = require('util')\nconst sasl = require('./crypto/sasl')\nconst TypeOverrides = require('./type-overrides')\n\nconst ConnectionParameters = require('./connection-parameters')\nconst Query = require('./query')\nconst defaults = require('./defaults')\nconst Connection = require('./connection')\nconst crypto = require('./crypto/utils')\n\nconst activeQueryDeprecationNotice = nodeUtils.deprecate(\n () => {},\n 'Client.activeQuery is deprecated and will be removed in pg@9.0'\n)\n\nconst queryQueueDeprecationNotice = nodeUtils.deprecate(\n () => {},\n 'Client.queryQueue is deprecated and will be removed in pg@9.0.'\n)\n\nconst pgPassDeprecationNotice = nodeUtils.deprecate(\n () => {},\n 'pgpass support is deprecated and will be removed in pg@9.0. ' +\n 'You can provide an async function as the password property to the Client/Pool constructor that returns a password instead. Within this function you can call the pgpass module in your own code.'\n)\n\nconst byoPromiseDeprecationNotice = nodeUtils.deprecate(\n () => {},\n 'Passing a custom Promise implementation to the Client/Pool constructor is deprecated and will be removed in pg@9.0.'\n)\n\nconst queryQueueLengthDeprecationNotice = nodeUtils.deprecate(\n () => {},\n 'Calling client.query() when the client is already executing a query is deprecated and will be removed in pg@9.0. Use async/await or an external async flow control mechanism instead.'\n)\n\nclass Client extends EventEmitter {\n constructor(config) {\n super()\n\n this.connectionParameters = new ConnectionParameters(config)\n this.user = this.connectionParameters.user\n this.database = this.connectionParameters.database\n this.port = this.connectionParameters.port\n this.host = this.connectionParameters.host\n\n // \"hiding\" the password so it doesn't show up in stack traces\n // or if the client is console.logged\n Object.defineProperty(this, 'password', {\n configurable: true,\n enumerable: false,\n writable: true,\n value: this.connectionParameters.password,\n })\n\n this.replication = this.connectionParameters.replication\n\n const c = config || {}\n\n if (c.Promise) {\n byoPromiseDeprecationNotice()\n }\n this._Promise = c.Promise || global.Promise\n this._types = new TypeOverrides(c.types)\n this._ending = false\n this._ended = false\n this._connecting = false\n this._connected = false\n this._connectionError = false\n this._queryable = true\n this._activeQuery = null\n\n this.enableChannelBinding = Boolean(c.enableChannelBinding) // set true to use SCRAM-SHA-256-PLUS when offered\n this.connection =\n c.connection ||\n new Connection({\n stream: c.stream,\n ssl: this.connectionParameters.ssl,\n keepAlive: c.keepAlive || false,\n keepAliveInitialDelayMillis: c.keepAliveInitialDelayMillis || 0,\n encoding: this.connectionParameters.client_encoding || 'utf8',\n })\n this._queryQueue = []\n this.binary = c.binary || defaults.binary\n this.processID = null\n this.secretKey = null\n this.ssl = this.connectionParameters.ssl || false\n // As with Password, make SSL->Key (the private key) non-enumerable.\n // It won't show up in stack traces\n // or if the client is console.logged\n if (this.ssl && this.ssl.key) {\n Object.defineProperty(this.ssl, 'key', {\n enumerable: false,\n })\n }\n\n this._connectionTimeoutMillis = c.connectionTimeoutMillis || 0\n }\n\n get activeQuery() {\n activeQueryDeprecationNotice()\n return this._activeQuery\n }\n\n set activeQuery(val) {\n activeQueryDeprecationNotice()\n this._activeQuery = val\n }\n\n _getActiveQuery() {\n return this._activeQuery\n }\n\n _errorAllQueries(err) {\n const enqueueError = (query) => {\n process.nextTick(() => {\n query.handleError(err, this.connection)\n })\n }\n\n const activeQuery = this._getActiveQuery()\n if (activeQuery) {\n enqueueError(activeQuery)\n this._activeQuery = null\n }\n\n this._queryQueue.forEach(enqueueError)\n this._queryQueue.length = 0\n }\n\n _connect(callback) {\n const self = this\n const con = this.connection\n this._connectionCallback = callback\n\n if (this._connecting || this._connected) {\n const err = new Error('Client has already been connected. You cannot reuse a client.')\n process.nextTick(() => {\n callback(err)\n })\n return\n }\n this._connecting = true\n\n if (this._connectionTimeoutMillis > 0) {\n this.connectionTimeoutHandle = setTimeout(() => {\n con._ending = true\n con.stream.destroy(new Error('timeout expired'))\n }, this._connectionTimeoutMillis)\n\n if (this.connectionTimeoutHandle.unref) {\n this.connectionTimeoutHandle.unref()\n }\n }\n\n if (this.host && this.host.indexOf('/') === 0) {\n con.connect(this.host + '/.s.PGSQL.' + this.port)\n } else {\n con.connect(this.port, this.host)\n }\n\n // once connection is established send startup message\n con.on('connect', function () {\n if (self.ssl) {\n con.requestSsl()\n } else {\n con.startup(self.getStartupConf())\n }\n })\n\n con.on('sslconnect', function () {\n con.startup(self.getStartupConf())\n })\n\n this._attachListeners(con)\n\n con.once('end', () => {\n const error = this._ending ? new Error('Connection terminated') : new Error('Connection terminated unexpectedly')\n\n clearTimeout(this.connectionTimeoutHandle)\n this._errorAllQueries(error)\n this._ended = true\n\n if (!this._ending) {\n // if the connection is ended without us calling .end()\n // on this client then we have an unexpected disconnection\n // treat this as an error unless we've already emitted an error\n // during connection.\n if (this._connecting && !this._connectionError) {\n if (this._connectionCallback) {\n this._connectionCallback(error)\n } else {\n this._handleErrorEvent(error)\n }\n } else if (!this._connectionError) {\n this._handleErrorEvent(error)\n }\n }\n\n process.nextTick(() => {\n this.emit('end')\n })\n })\n }\n\n connect(callback) {\n if (callback) {\n this._connect(callback)\n return\n }\n\n return new this._Promise((resolve, reject) => {\n this._connect((error) => {\n if (error) {\n reject(error)\n } else {\n resolve(this)\n }\n })\n })\n }\n\n _attachListeners(con) {\n // password request handling\n con.on('authenticationCleartextPassword', this._handleAuthCleartextPassword.bind(this))\n // password request handling\n con.on('authenticationMD5Password', this._handleAuthMD5Password.bind(this))\n // password request handling (SASL)\n con.on('authenticationSASL', this._handleAuthSASL.bind(this))\n con.on('authenticationSASLContinue', this._handleAuthSASLContinue.bind(this))\n con.on('authenticationSASLFinal', this._handleAuthSASLFinal.bind(this))\n con.on('backendKeyData', this._handleBackendKeyData.bind(this))\n con.on('error', this._handleErrorEvent.bind(this))\n con.on('errorMessage', this._handleErrorMessage.bind(this))\n con.on('readyForQuery', this._handleReadyForQuery.bind(this))\n con.on('notice', this._handleNotice.bind(this))\n con.on('rowDescription', this._handleRowDescription.bind(this))\n con.on('dataRow', this._handleDataRow.bind(this))\n con.on('portalSuspended', this._handlePortalSuspended.bind(this))\n con.on('emptyQuery', this._handleEmptyQuery.bind(this))\n con.on('commandComplete', this._handleCommandComplete.bind(this))\n con.on('parseComplete', this._handleParseComplete.bind(this))\n con.on('copyInResponse', this._handleCopyInResponse.bind(this))\n con.on('copyData', this._handleCopyData.bind(this))\n con.on('notification', this._handleNotification.bind(this))\n }\n\n _getPassword(cb) {\n const con = this.connection\n if (typeof this.password === 'function') {\n this._Promise\n .resolve()\n .then(() => this.password(this.connectionParameters))\n .then((pass) => {\n if (pass !== undefined) {\n if (typeof pass !== 'string') {\n con.emit('error', new TypeError('Password must be a string'))\n return\n }\n this.connectionParameters.password = this.password = pass\n } else {\n this.connectionParameters.password = this.password = null\n }\n cb()\n })\n .catch((err) => {\n con.emit('error', err)\n })\n } else if (this.password !== null) {\n cb()\n } else {\n try {\n const pgPass = require('pgpass')\n pgPass(this.connectionParameters, (pass) => {\n if (undefined !== pass) {\n pgPassDeprecationNotice()\n this.connectionParameters.password = this.password = pass\n }\n cb()\n })\n } catch (e) {\n this.emit('error', e)\n }\n }\n }\n\n _handleAuthCleartextPassword(msg) {\n this._getPassword(() => {\n this.connection.password(this.password)\n })\n }\n\n _handleAuthMD5Password(msg) {\n this._getPassword(async () => {\n try {\n const hashedPassword = await crypto.postgresMd5PasswordHash(this.user, this.password, msg.salt)\n this.connection.password(hashedPassword)\n } catch (e) {\n this.emit('error', e)\n }\n })\n }\n\n _handleAuthSASL(msg) {\n this._getPassword(() => {\n try {\n this.saslSession = sasl.startSession(msg.mechanisms, this.enableChannelBinding && this.connection.stream)\n this.connection.sendSASLInitialResponseMessage(this.saslSession.mechanism, this.saslSession.response)\n } catch (err) {\n this.connection.emit('error', err)\n }\n })\n }\n\n async _handleAuthSASLContinue(msg) {\n try {\n await sasl.continueSession(\n this.saslSession,\n this.password,\n msg.data,\n this.enableChannelBinding && this.connection.stream\n )\n this.connection.sendSCRAMClientFinalMessage(this.saslSession.response)\n } catch (err) {\n this.connection.emit('error', err)\n }\n }\n\n _handleAuthSASLFinal(msg) {\n try {\n sasl.finalizeSession(this.saslSession, msg.data)\n this.saslSession = null\n } catch (err) {\n this.connection.emit('error', err)\n }\n }\n\n _handleBackendKeyData(msg) {\n this.processID = msg.processID\n this.secretKey = msg.secretKey\n }\n\n _handleReadyForQuery(msg) {\n if (this._connecting) {\n this._connecting = false\n this._connected = true\n clearTimeout(this.connectionTimeoutHandle)\n\n // process possible callback argument to Client#connect\n if (this._connectionCallback) {\n this._connectionCallback(null, this)\n // remove callback for proper error handling\n // after the connect event\n this._connectionCallback = null\n }\n this.emit('connect')\n }\n const activeQuery = this._getActiveQuery()\n this._activeQuery = null\n this.readyForQuery = true\n if (activeQuery) {\n activeQuery.handleReadyForQuery(this.connection)\n }\n this._pulseQueryQueue()\n }\n\n // if we receive an error event or error message\n // during the connection process we handle it here\n _handleErrorWhileConnecting(err) {\n if (this._connectionError) {\n // TODO(bmc): this is swallowing errors - we shouldn't do this\n return\n }\n this._connectionError = true\n clearTimeout(this.connectionTimeoutHandle)\n if (this._connectionCallback) {\n return this._connectionCallback(err)\n }\n this.emit('error', err)\n }\n\n // if we're connected and we receive an error event from the connection\n // this means the socket is dead - do a hard abort of all queries and emit\n // the socket error on the client as well\n _handleErrorEvent(err) {\n if (this._connecting) {\n return this._handleErrorWhileConnecting(err)\n }\n this._queryable = false\n this._errorAllQueries(err)\n this.emit('error', err)\n }\n\n // handle error messages from the postgres backend\n _handleErrorMessage(msg) {\n if (this._connecting) {\n return this._handleErrorWhileConnecting(msg)\n }\n const activeQuery = this._getActiveQuery()\n\n if (!activeQuery) {\n this._handleErrorEvent(msg)\n return\n }\n\n this._activeQuery = null\n activeQuery.handleError(msg, this.connection)\n }\n\n _handleRowDescription(msg) {\n const activeQuery = this._getActiveQuery()\n if (activeQuery == null) {\n const error = new Error('Received unexpected rowDescription message from backend.')\n this._handleErrorEvent(error)\n return\n }\n // delegate rowDescription to active query\n activeQuery.handleRowDescription(msg)\n }\n\n _handleDataRow(msg) {\n const activeQuery = this._getActiveQuery()\n if (activeQuery == null) {\n const error = new Error('Received unexpected dataRow message from backend.')\n this._handleErrorEvent(error)\n return\n }\n // delegate dataRow to active query\n activeQuery.handleDataRow(msg)\n }\n\n _handlePortalSuspended(msg) {\n const activeQuery = this._getActiveQuery()\n if (activeQuery == null) {\n const error = new Error('Received unexpected portalSuspended message from backend.')\n this._handleErrorEvent(error)\n return\n }\n // delegate portalSuspended to active query\n activeQuery.handlePortalSuspended(this.connection)\n }\n\n _handleEmptyQuery(msg) {\n const activeQuery = this._getActiveQuery()\n if (activeQuery == null) {\n const error = new Error('Received unexpected emptyQuery message from backend.')\n this._handleErrorEvent(error)\n return\n }\n // delegate emptyQuery to active query\n activeQuery.handleEmptyQuery(this.connection)\n }\n\n _handleCommandComplete(msg) {\n const activeQuery = this._getActiveQuery()\n if (activeQuery == null) {\n const error = new Error('Received unexpected commandComplete message from backend.')\n this._handleErrorEvent(error)\n return\n }\n // delegate commandComplete to active query\n activeQuery.handleCommandComplete(msg, this.connection)\n }\n\n _handleParseComplete() {\n const activeQuery = this._getActiveQuery()\n if (activeQuery == null) {\n const error = new Error('Received unexpected parseComplete message from backend.')\n this._handleErrorEvent(error)\n return\n }\n // if a prepared statement has a name and properly parses\n // we track that its already been executed so we don't parse\n // it again on the same client\n if (activeQuery.name) {\n this.connection.parsedStatements[activeQuery.name] = activeQuery.text\n }\n }\n\n _handleCopyInResponse(msg) {\n const activeQuery = this._getActiveQuery()\n if (activeQuery == null) {\n const error = new Error('Received unexpected copyInResponse message from backend.')\n this._handleErrorEvent(error)\n return\n }\n activeQuery.handleCopyInResponse(this.connection)\n }\n\n _handleCopyData(msg) {\n const activeQuery = this._getActiveQuery()\n if (activeQuery == null) {\n const error = new Error('Received unexpected copyData message from backend.')\n this._handleErrorEvent(error)\n return\n }\n activeQuery.handleCopyData(msg, this.connection)\n }\n\n _handleNotification(msg) {\n this.emit('notification', msg)\n }\n\n _handleNotice(msg) {\n this.emit('notice', msg)\n }\n\n getStartupConf() {\n const params = this.connectionParameters\n\n const data = {\n user: params.user,\n database: params.database,\n }\n\n const appName = params.application_name || params.fallback_application_name\n if (appName) {\n data.application_name = appName\n }\n if (params.replication) {\n data.replication = '' + params.replication\n }\n if (params.statement_timeout) {\n data.statement_timeout = String(parseInt(params.statement_timeout, 10))\n }\n if (params.lock_timeout) {\n data.lock_timeout = String(parseInt(params.lock_timeout, 10))\n }\n if (params.idle_in_transaction_session_timeout) {\n data.idle_in_transaction_session_timeout = String(parseInt(params.idle_in_transaction_session_timeout, 10))\n }\n if (params.options) {\n data.options = params.options\n }\n\n return data\n }\n\n cancel(client, query) {\n if (client.activeQuery === query) {\n const con = this.connection\n\n if (this.host && this.host.indexOf('/') === 0) {\n con.connect(this.host + '/.s.PGSQL.' + this.port)\n } else {\n con.connect(this.port, this.host)\n }\n\n // once connection is established send cancel message\n con.on('connect', function () {\n con.cancel(client.processID, client.secretKey)\n })\n } else if (client._queryQueue.indexOf(query) !== -1) {\n client._queryQueue.splice(client._queryQueue.indexOf(query), 1)\n }\n }\n\n setTypeParser(oid, format, parseFn) {\n return this._types.setTypeParser(oid, format, parseFn)\n }\n\n getTypeParser(oid, format) {\n return this._types.getTypeParser(oid, format)\n }\n\n // escapeIdentifier and escapeLiteral moved to utility functions & exported\n // on PG\n // re-exported here for backwards compatibility\n escapeIdentifier(str) {\n return utils.escapeIdentifier(str)\n }\n\n escapeLiteral(str) {\n return utils.escapeLiteral(str)\n }\n\n _pulseQueryQueue() {\n if (this.readyForQuery === true) {\n this._activeQuery = this._queryQueue.shift()\n const activeQuery = this._getActiveQuery()\n if (activeQuery) {\n this.readyForQuery = false\n this.hasExecuted = true\n\n const queryError = activeQuery.submit(this.connection)\n if (queryError) {\n process.nextTick(() => {\n activeQuery.handleError(queryError, this.connection)\n this.readyForQuery = true\n this._pulseQueryQueue()\n })\n }\n } else if (this.hasExecuted) {\n this._activeQuery = null\n this.emit('drain')\n }\n }\n }\n\n query(config, values, callback) {\n // can take in strings, config object or query object\n let query\n let result\n let readTimeout\n let readTimeoutTimer\n let queryCallback\n\n if (config === null || config === undefined) {\n throw new TypeError('Client was passed a null or undefined query')\n } else if (typeof config.submit === 'function') {\n readTimeout = config.query_timeout || this.connectionParameters.query_timeout\n result = query = config\n if (!query.callback) {\n if (typeof values === 'function') {\n query.callback = values\n } else if (callback) {\n query.callback = callback\n }\n }\n } else {\n readTimeout = config.query_timeout || this.connectionParameters.query_timeout\n query = new Query(config, values, callback)\n if (!query.callback) {\n result = new this._Promise((resolve, reject) => {\n query.callback = (err, res) => (err ? reject(err) : resolve(res))\n }).catch((err) => {\n // replace the stack trace that leads to `TCP.onStreamRead` with one that leads back to the\n // application that created the query\n Error.captureStackTrace(err)\n throw err\n })\n }\n }\n\n if (readTimeout) {\n queryCallback = query.callback || (() => {})\n\n readTimeoutTimer = setTimeout(() => {\n const error = new Error('Query read timeout')\n\n process.nextTick(() => {\n query.handleError(error, this.connection)\n })\n\n queryCallback(error)\n\n // we already returned an error,\n // just do nothing if query completes\n query.callback = () => {}\n\n // Remove from queue\n const index = this._queryQueue.indexOf(query)\n if (index > -1) {\n this._queryQueue.splice(index, 1)\n }\n\n this._pulseQueryQueue()\n }, readTimeout)\n\n query.callback = (err, res) => {\n clearTimeout(readTimeoutTimer)\n queryCallback(err, res)\n }\n }\n\n if (this.binary && !query.binary) {\n query.binary = true\n }\n\n if (query._result && !query._result._types) {\n query._result._types = this._types\n }\n\n if (!this._queryable) {\n process.nextTick(() => {\n query.handleError(new Error('Client has encountered a connection error and is not queryable'), this.connection)\n })\n return result\n }\n\n if (this._ending) {\n process.nextTick(() => {\n query.handleError(new Error('Client was closed and is not queryable'), this.connection)\n })\n return result\n }\n\n if (this._queryQueue.length > 0) {\n queryQueueLengthDeprecationNotice()\n }\n this._queryQueue.push(query)\n this._pulseQueryQueue()\n return result\n }\n\n ref() {\n this.connection.ref()\n }\n\n unref() {\n this.connection.unref()\n }\n\n end(cb) {\n this._ending = true\n\n // if we have never connected, then end is a noop, callback immediately\n if (!this.connection._connecting || this._ended) {\n if (cb) {\n cb()\n } else {\n return this._Promise.resolve()\n }\n }\n\n if (this._getActiveQuery() || !this._queryable) {\n // if we have an active query we need to force a disconnect\n // on the socket - otherwise a hung query could block end forever\n this.connection.stream.destroy()\n } else {\n this.connection.end()\n }\n\n if (cb) {\n this.connection.once('end', cb)\n } else {\n return new this._Promise((resolve) => {\n this.connection.once('end', resolve)\n })\n }\n }\n get queryQueue() {\n queryQueueDeprecationNotice()\n return this._queryQueue\n }\n}\n\n// expose a Query constructor\nClient.Query = Query\n\nmodule.exports = Client\n"],"x_google_ignoreList":[0],"mappings":"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"}