@rocicorp/zero 0.18.2025032400 → 0.18.2025032800

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 (234) hide show
  1. package/out/advanced.js +0 -1
  2. package/out/{chunk-YAABAEJV.js → chunk-3S3SDA44.js} +205 -148
  3. package/out/chunk-3S3SDA44.js.map +7 -0
  4. package/out/{chunk-2B2QE5AT.js → chunk-MB3DEFRC.js} +25 -2
  5. package/out/{chunk-2B2QE5AT.js.map → chunk-MB3DEFRC.js.map} +2 -2
  6. package/out/{chunk-DSUPSGE4.js → chunk-NBZURO2P.js} +81 -26
  7. package/out/{chunk-DSUPSGE4.js.map → chunk-NBZURO2P.js.map} +4 -4
  8. package/out/{inspector-ROITQB3J.js → inspector-SH2ZK7O3.js} +253 -102
  9. package/out/inspector-SH2ZK7O3.js.map +7 -0
  10. package/out/react.js +2 -3
  11. package/out/react.js.map +2 -2
  12. package/out/shared/src/sentinels.d.ts +3 -0
  13. package/out/shared/src/sentinels.d.ts.map +1 -0
  14. package/out/solid.js +3 -4
  15. package/out/solid.js.map +2 -2
  16. package/out/z2s/src/compiler.d.ts +5 -3
  17. package/out/z2s/src/compiler.d.ts.map +1 -1
  18. package/out/z2s/src/compiler.js +116 -16
  19. package/out/z2s/src/compiler.js.map +1 -1
  20. package/out/z2s/src/sql.d.ts +8 -0
  21. package/out/z2s/src/sql.d.ts.map +1 -1
  22. package/out/z2s/src/sql.js +205 -11
  23. package/out/z2s/src/sql.js.map +1 -1
  24. package/out/zero/src/zero-cache-dev.d.ts +1 -1
  25. package/out/zero/src/zero-cache-dev.d.ts.map +1 -1
  26. package/out/zero/src/zero-cache-dev.js +1 -1
  27. package/out/zero/src/zero-cache-dev.js.map +1 -1
  28. package/out/zero-cache/src/auth/load-permissions.d.ts.map +1 -1
  29. package/out/zero-cache/src/auth/load-permissions.js +2 -1
  30. package/out/zero-cache/src/auth/load-permissions.js.map +1 -1
  31. package/out/zero-cache/src/config/zero-config.d.ts +1 -1
  32. package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
  33. package/out/zero-cache/src/config/zero-config.js +6 -3
  34. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  35. package/out/zero-cache/src/db/migration-lite.d.ts.map +1 -1
  36. package/out/zero-cache/src/db/migration-lite.js +9 -9
  37. package/out/zero-cache/src/db/migration-lite.js.map +1 -1
  38. package/out/zero-cache/src/scripts/deploy-permissions.d.ts +1 -1
  39. package/out/zero-cache/src/scripts/deploy-permissions.d.ts.map +1 -1
  40. package/out/zero-cache/src/scripts/deploy-permissions.js +1 -1
  41. package/out/zero-cache/src/scripts/deploy-permissions.js.map +1 -1
  42. package/out/zero-cache/src/server/multi/config.d.ts +1 -1
  43. package/out/zero-cache/src/server/multi/main.d.ts +1 -1
  44. package/out/zero-cache/src/server/multi/main.d.ts.map +1 -1
  45. package/out/zero-cache/src/server/multi/main.js +1 -1
  46. package/out/zero-cache/src/server/multi/main.js.map +1 -1
  47. package/out/zero-cache/src/server/multi/run-worker.d.ts +1 -1
  48. package/out/zero-cache/src/server/multi/run-worker.d.ts.map +1 -1
  49. package/out/zero-cache/src/server/multi/run-worker.js +1 -1
  50. package/out/zero-cache/src/server/multi/run-worker.js.map +1 -1
  51. package/out/zero-cache/src/server/syncer.js +1 -1
  52. package/out/zero-cache/src/server/syncer.js.map +1 -1
  53. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts +1 -1
  54. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts.map +1 -1
  55. package/out/zero-cache/src/services/change-source/pg/change-source.js +96 -42
  56. package/out/zero-cache/src/services/change-source/pg/change-source.js.map +1 -1
  57. package/out/zero-cache/src/services/change-source/pg/decommission.d.ts.map +1 -1
  58. package/out/zero-cache/src/services/change-source/pg/decommission.js +16 -5
  59. package/out/zero-cache/src/services/change-source/pg/decommission.js.map +1 -1
  60. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts +1 -2
  61. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts.map +1 -1
  62. package/out/zero-cache/src/services/change-source/pg/initial-sync.js +18 -31
  63. package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -1
  64. package/out/zero-cache/src/services/change-source/pg/schema/ddl.d.ts +7 -35
  65. package/out/zero-cache/src/services/change-source/pg/schema/ddl.d.ts.map +1 -1
  66. package/out/zero-cache/src/services/change-source/pg/schema/ddl.js +42 -74
  67. package/out/zero-cache/src/services/change-source/pg/schema/ddl.js.map +1 -1
  68. package/out/zero-cache/src/services/change-source/pg/schema/init.d.ts +1 -1
  69. package/out/zero-cache/src/services/change-source/pg/schema/init.d.ts.map +1 -1
  70. package/out/zero-cache/src/services/change-source/pg/schema/init.js +69 -21
  71. package/out/zero-cache/src/services/change-source/pg/schema/init.js.map +1 -1
  72. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts +54 -27
  73. package/out/zero-cache/src/services/change-source/pg/schema/shard.d.ts.map +1 -1
  74. package/out/zero-cache/src/services/change-source/pg/schema/shard.js +53 -16
  75. package/out/zero-cache/src/services/change-source/pg/schema/shard.js.map +1 -1
  76. package/out/zero-cache/src/services/mutagen/mutagen.d.ts +7 -5
  77. package/out/zero-cache/src/services/mutagen/mutagen.d.ts.map +1 -1
  78. package/out/zero-cache/src/services/mutagen/mutagen.js +20 -5
  79. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  80. package/out/zero-cache/src/services/mutagen/pusher.d.ts +1 -1
  81. package/out/zero-cache/src/services/mutagen/pusher.d.ts.map +1 -1
  82. package/out/zero-cache/src/services/mutagen/pusher.js +61 -9
  83. package/out/zero-cache/src/services/mutagen/pusher.js.map +1 -1
  84. package/out/zero-cache/src/services/replicator/change-processor.d.ts.map +1 -1
  85. package/out/zero-cache/src/services/replicator/change-processor.js +25 -14
  86. package/out/zero-cache/src/services/replicator/change-processor.js.map +1 -1
  87. package/out/zero-cache/src/services/view-syncer/client-handler.d.ts +8 -4
  88. package/out/zero-cache/src/services/view-syncer/client-handler.d.ts.map +1 -1
  89. package/out/zero-cache/src/services/view-syncer/client-handler.js +47 -23
  90. package/out/zero-cache/src/services/view-syncer/client-handler.js.map +1 -1
  91. package/out/zero-cache/src/services/view-syncer/client-schema.d.ts.map +1 -1
  92. package/out/zero-cache/src/services/view-syncer/client-schema.js +8 -2
  93. package/out/zero-cache/src/services/view-syncer/client-schema.js.map +1 -1
  94. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts +2 -0
  95. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts.map +1 -1
  96. package/out/zero-cache/src/services/view-syncer/cvr-store.js +35 -0
  97. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -1
  98. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts +3 -0
  99. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  100. package/out/zero-cache/src/services/view-syncer/view-syncer.js +32 -20
  101. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  102. package/out/zero-cache/src/types/bigint-json.d.ts +1 -1
  103. package/out/zero-cache/src/types/bigint-json.d.ts.map +1 -1
  104. package/out/zero-cache/src/types/bigint-json.js.map +1 -1
  105. package/out/zero-cache/src/types/lite.d.ts.map +1 -1
  106. package/out/zero-cache/src/types/lite.js +4 -3
  107. package/out/zero-cache/src/types/lite.js.map +1 -1
  108. package/out/zero-cache/src/types/shards.d.ts +4 -0
  109. package/out/zero-cache/src/types/shards.d.ts.map +1 -1
  110. package/out/zero-cache/src/types/shards.js +1 -1
  111. package/out/zero-cache/src/types/shards.js.map +1 -1
  112. package/out/zero-cache/src/workers/connection.d.ts +1 -2
  113. package/out/zero-cache/src/workers/connection.d.ts.map +1 -1
  114. package/out/zero-cache/src/workers/connection.js +64 -21
  115. package/out/zero-cache/src/workers/connection.js.map +1 -1
  116. package/out/zero-cache/src/workers/replicator.d.ts.map +1 -1
  117. package/out/zero-cache/src/workers/replicator.js +4 -8
  118. package/out/zero-cache/src/workers/replicator.js.map +1 -1
  119. package/out/zero-cache/src/workers/syncer-ws-message-handler.d.ts.map +1 -1
  120. package/out/zero-cache/src/workers/syncer-ws-message-handler.js +16 -7
  121. package/out/zero-cache/src/workers/syncer-ws-message-handler.js.map +1 -1
  122. package/out/zero-client/src/client/custom.d.ts +9 -11
  123. package/out/zero-client/src/client/custom.d.ts.map +1 -1
  124. package/out/zero-client/src/client/inspector/inspector.d.ts +2 -1
  125. package/out/zero-client/src/client/inspector/inspector.d.ts.map +1 -1
  126. package/out/zero-client/src/client/inspector/types.d.ts +7 -2
  127. package/out/zero-client/src/client/inspector/types.d.ts.map +1 -1
  128. package/out/zero-client/src/client/mutation-tracker.d.ts +23 -8
  129. package/out/zero-client/src/client/mutation-tracker.d.ts.map +1 -1
  130. package/out/zero-client/src/client/options.d.ts +7 -2
  131. package/out/zero-client/src/client/options.d.ts.map +1 -1
  132. package/out/zero-client/src/client/query-manager.d.ts +2 -1
  133. package/out/zero-client/src/client/query-manager.d.ts.map +1 -1
  134. package/out/zero-client/src/client/zero.d.ts +1 -1
  135. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  136. package/out/zero-client/src/mod.d.ts +7 -1
  137. package/out/zero-client/src/mod.d.ts.map +1 -1
  138. package/out/zero-pg/src/custom.d.ts +2 -13
  139. package/out/zero-pg/src/custom.d.ts.map +1 -1
  140. package/out/zero-pg/src/custom.js +11 -14
  141. package/out/zero-pg/src/custom.js.map +1 -1
  142. package/out/zero-pg/src/mod.d.ts +1 -2
  143. package/out/zero-pg/src/mod.d.ts.map +1 -1
  144. package/out/zero-pg/src/mod.js +1 -1
  145. package/out/zero-pg/src/mod.js.map +1 -1
  146. package/out/zero-pg/src/query.d.ts +2 -2
  147. package/out/zero-pg/src/query.d.ts.map +1 -1
  148. package/out/zero-pg/src/query.js +8 -15
  149. package/out/zero-pg/src/query.js.map +1 -1
  150. package/out/zero-pg/src/web.d.ts +3 -7
  151. package/out/zero-pg/src/web.d.ts.map +1 -1
  152. package/out/zero-pg/src/web.js +9 -15
  153. package/out/zero-pg/src/web.js.map +1 -1
  154. package/out/zero-protocol/src/client-schema.d.ts +1 -1
  155. package/out/zero-protocol/src/client-schema.d.ts.map +1 -1
  156. package/out/zero-protocol/src/client-schema.js +1 -1
  157. package/out/zero-protocol/src/client-schema.js.map +1 -1
  158. package/out/zero-protocol/src/down.d.ts +19 -6
  159. package/out/zero-protocol/src/down.d.ts.map +1 -1
  160. package/out/zero-protocol/src/down.js +2 -2
  161. package/out/zero-protocol/src/down.js.map +1 -1
  162. package/out/zero-protocol/src/inspect-down.d.ts +59 -0
  163. package/out/zero-protocol/src/inspect-down.d.ts.map +1 -0
  164. package/out/zero-protocol/src/inspect-down.js +23 -0
  165. package/out/zero-protocol/src/inspect-down.js.map +1 -0
  166. package/out/zero-protocol/src/inspect-up.d.ts +21 -0
  167. package/out/zero-protocol/src/inspect-up.d.ts.map +1 -0
  168. package/out/zero-protocol/src/inspect-up.js +12 -0
  169. package/out/zero-protocol/src/inspect-up.js.map +1 -0
  170. package/out/zero-protocol/src/mutation-type-enum.d.ts +1 -0
  171. package/out/zero-protocol/src/mutation-type-enum.d.ts.map +1 -1
  172. package/out/zero-protocol/src/protocol-version.d.ts +1 -1
  173. package/out/zero-protocol/src/protocol-version.d.ts.map +1 -1
  174. package/out/zero-protocol/src/protocol-version.js +3 -1
  175. package/out/zero-protocol/src/protocol-version.js.map +1 -1
  176. package/out/zero-protocol/src/push.d.ts +31 -18
  177. package/out/zero-protocol/src/push.d.ts.map +1 -1
  178. package/out/zero-protocol/src/push.js +7 -6
  179. package/out/zero-protocol/src/push.js.map +1 -1
  180. package/out/zero-protocol/src/up.d.ts +5 -1
  181. package/out/zero-protocol/src/up.d.ts.map +1 -1
  182. package/out/zero-protocol/src/up.js +2 -1
  183. package/out/zero-protocol/src/up.js.map +1 -1
  184. package/out/zero-react/src/use-query.d.ts +1 -2
  185. package/out/zero-react/src/use-query.d.ts.map +1 -1
  186. package/out/zero-schema/src/builder/table-builder.d.ts +13 -0
  187. package/out/zero-schema/src/builder/table-builder.d.ts.map +1 -1
  188. package/out/zero-schema/src/builder/table-builder.js +17 -0
  189. package/out/zero-schema/src/builder/table-builder.js.map +1 -1
  190. package/out/zero-schema/src/permissions.d.ts.map +1 -1
  191. package/out/zero-schema/src/table-schema.d.ts +3 -1
  192. package/out/zero-schema/src/table-schema.d.ts.map +1 -1
  193. package/out/zero-schema/src/table-schema.js.map +1 -1
  194. package/out/zero-solid/src/create-zero.d.ts.map +1 -1
  195. package/out/zero-solid/src/solid-view.d.ts +1 -2
  196. package/out/zero-solid/src/solid-view.d.ts.map +1 -1
  197. package/out/zero-solid/src/use-query.d.ts +1 -2
  198. package/out/zero-solid/src/use-query.d.ts.map +1 -1
  199. package/out/zero.js +7 -4
  200. package/out/zql/src/mutate/custom.d.ts +0 -1
  201. package/out/zql/src/mutate/custom.d.ts.map +1 -1
  202. package/out/zql/src/mutate/custom.js.map +1 -1
  203. package/out/zql/src/query/query-impl.d.ts +9 -6
  204. package/out/zql/src/query/query-impl.d.ts.map +1 -1
  205. package/out/zql/src/query/query-impl.js +16 -18
  206. package/out/zql/src/query/query-impl.js.map +1 -1
  207. package/out/zql/src/query/query-internal.d.ts +2 -9
  208. package/out/zql/src/query/query-internal.d.ts.map +1 -1
  209. package/out/zql/src/query/query.d.ts +5 -0
  210. package/out/zql/src/query/query.d.ts.map +1 -1
  211. package/out/zql/src/query/static-query.d.ts +1 -1
  212. package/out/zql/src/query/static-query.d.ts.map +1 -1
  213. package/out/zql/src/query/static-query.js +2 -2
  214. package/out/zql/src/query/static-query.js.map +1 -1
  215. package/out/zql/src/query/ttl.d.ts +1 -1
  216. package/out/zql/src/query/ttl.d.ts.map +1 -1
  217. package/out/zql/src/query/ttl.js +1 -1
  218. package/out/zql/src/query/ttl.js.map +1 -1
  219. package/out/zqlite/src/table-source.d.ts.map +1 -1
  220. package/out/zqlite/src/table-source.js +8 -0
  221. package/out/zqlite/src/table-source.js.map +1 -1
  222. package/package.json +4 -5
  223. package/out/chunk-ULOTOBTC.js +0 -1
  224. package/out/chunk-ULOTOBTC.js.map +0 -7
  225. package/out/chunk-YAABAEJV.js.map +0 -7
  226. package/out/inspector-ROITQB3J.js.map +0 -7
  227. package/out/zero-protocol/src/warm.d.ts +0 -10
  228. package/out/zero-protocol/src/warm.d.ts.map +0 -1
  229. package/out/zero-protocol/src/warm.js +0 -6
  230. package/out/zero-protocol/src/warm.js.map +0 -1
  231. package/out/zero-schema/src/mod.d.ts +0 -5
  232. package/out/zero-schema/src/mod.d.ts.map +0 -1
  233. package/out/zql/src/query/query-internal.js +0 -2
  234. package/out/zql/src/query/query-internal.js.map +0 -1
@@ -1,9 +1,62 @@
1
1
  import { zip } from "../../shared/src/arrays.js";
2
- import { assert } from "../../shared/src/asserts.js";
2
+ import { assert, unreachable } from "../../shared/src/asserts.js";
3
+ import {} from "../../shared/src/json.js";
3
4
  import { must } from "../../shared/src/must.js";
4
5
  import {} from "../../zero-protocol/src/ast.js";
5
6
  import { clientToServer, NameMapper } from "../../zero-schema/src/name-mapper.js";
6
- import { sql } from "./sql.js";
7
+ import { sql, sqlConvertArg, sqlConvertArgUnsafe } from "./sql.js";
8
+ import { parse as parseBigIntJson, } from "../../zero-cache/src/types/bigint-json.js";
9
+ import { hasOwn } from "../../shared/src/has-own.js";
10
+ const ZQL_RESULT_KEY = 'zql_result';
11
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
12
+ export function extractZqlResult(pgResult) {
13
+ const bigIntJson = parseBigIntJson(pgResult[0][ZQL_RESULT_KEY]);
14
+ assertJSONValue(bigIntJson);
15
+ return bigIntJson;
16
+ }
17
+ function assertJSONValue(v) {
18
+ const path = findPathToBigInt(v);
19
+ if (path) {
20
+ throw new Error(`Value exceeds safe Number range. ${path}`);
21
+ }
22
+ }
23
+ function findPathToBigInt(v) {
24
+ const typeOfV = typeof v;
25
+ switch (typeOfV) {
26
+ case 'bigint':
27
+ return ` = ${v}`;
28
+ case 'object': {
29
+ if (v === null) {
30
+ return;
31
+ }
32
+ if (Array.isArray(v)) {
33
+ for (let i = 0; i < v.length; i++) {
34
+ const path = findPathToBigInt(v[i]);
35
+ if (path) {
36
+ return `[${i}]${path}`;
37
+ }
38
+ }
39
+ return undefined;
40
+ }
41
+ const o = v;
42
+ for (const k in o) {
43
+ if (hasOwn(o, k)) {
44
+ const path = findPathToBigInt(o[k]);
45
+ if (path) {
46
+ return `['${k}']${path}`;
47
+ }
48
+ }
49
+ }
50
+ return undefined;
51
+ }
52
+ case 'number':
53
+ return undefined;
54
+ case 'boolean':
55
+ return undefined;
56
+ default:
57
+ return undefined;
58
+ }
59
+ }
7
60
  /**
8
61
  * Compiles to the Postgres dialect of SQL
9
62
  * - IS, IS NOT can only compare against `NULL`, `TRUE`, `FALSE` so use
@@ -23,7 +76,7 @@ export class Compiler {
23
76
  this.#nameMapper = clientToServer(tables);
24
77
  }
25
78
  compile(ast, format) {
26
- return this.select(ast, format, undefined);
79
+ return sql `SELECT ${this.#toJSON(`root`, format?.singular)}::TEXT as ${sql.ident(ZQL_RESULT_KEY)} FROM (${this.select(ast, format, undefined)})${sql.ident(`root`)}`;
27
80
  }
28
81
  select(ast,
29
82
  // Is this a singular or plural query?
@@ -31,9 +84,9 @@ export class Compiler {
31
84
  // If a select is being used as a subquery, this is the correlation to the parent query
32
85
  correlation) {
33
86
  const selectionSet = this.related(ast.related ?? [], format, ast.table);
34
- const table = this.#tables[ast.table];
35
- for (const column of Object.keys(table.columns)) {
36
- selectionSet.push(sql `${sql.ident(ast.table)}.${this.#mapColumn(ast.table, column)}`);
87
+ const tableSchema = this.#tables[ast.table];
88
+ for (const [column, columnSchema] of Object.entries(tableSchema.columns)) {
89
+ selectionSet.push(this.#selectCol(ast.table, column, columnSchema.type));
37
90
  }
38
91
  return sql `SELECT ${sql.join(selectionSet, ',')} FROM ${this.#mapTable(ast.table)} ${ast.where ? sql `WHERE ${this.where(ast.where, ast.table)}` : sql ``} ${correlation
39
92
  ? sql `${ast.where ? sql `AND` : sql `WHERE`} (${correlation})`
@@ -53,7 +106,7 @@ export class Compiler {
53
106
  if (!limit) {
54
107
  return sql ``;
55
108
  }
56
- return sql `LIMIT ${sql.value(limit)}`;
109
+ return sql `LIMIT ${sqlConvertArg('number', limit)}`;
57
110
  }
58
111
  related(relationships, format, parentTable) {
59
112
  return relationships.map(relationship => this.relationshipSubquery(relationship, format?.relationships[must(relationship.subquery.alias)], parentTable));
@@ -66,17 +119,17 @@ export class Compiler {
66
119
  * This aggregates the relationship subquery into an array of objects.
67
120
  * This looks roughly like:
68
121
  *
69
- * SELECT COALESCE(array_agg(row_to_json("inner_table")) , ARRAY[]::json[]) FROM
70
- * (SELECT inner.col as client_col, inner.col2 as client_col2 FROM table) inner_table;
122
+ * SELECT COALESCE(json_agg(row_to_json("inner_owner")) , '[]'::json) FROM
123
+ * (SELECT mytable.col as client_col, mytable.col2 as client_col2 FROM mytable) inner_mytable
71
124
  */
72
125
  return sql `(
73
- SELECT ${format?.singular ? sql `` : sql `COALESCE(array_agg`}(row_to_json(${sql.ident(`inner_${relationship.subquery.alias}`)})) ${format?.singular ? sql `` : sql `, ARRAY[]::json[])`} FROM (SELECT ${sql.join(lastClientColumns.map(c => sql `${sql.ident(lastAlias)}.${this.#mapColumn(lastTable, c)}`), ',')} FROM ${join} WHERE (${this.correlate(parentTable, parentTable, relationship.correlation.parentField, relationship.subquery.table, relationship.subquery.table, relationship.correlation.childField)}) ${relationship.subquery.where
126
+ SELECT ${this.#toJSON(`inner_${relationship.subquery.alias}`, format?.singular)} FROM (SELECT ${sql.join(lastClientColumns.map(c => sql `${sql.ident(lastAlias)}.${this.#mapColumn(lastTable, c)}`), ',')} FROM ${join} WHERE (${this.correlate(parentTable, parentTable, relationship.correlation.parentField, relationship.subquery.table, relationship.subquery.table, relationship.correlation.childField)}) ${relationship.subquery.where
74
127
  ? sql `AND ${this.where(relationship.subquery.where, relationship.subquery.table)}`
75
128
  : sql ``} ${this.orderBy(relationship.subquery.orderBy, relationship.subquery.table)} ${format?.singular ? this.limit(1) : this.limit(lastLimit)} ) ${sql.ident(`inner_${relationship.subquery.alias}`)}
76
129
  ) as ${sql.ident(relationship.subquery.alias)}`;
77
130
  }
78
131
  return sql `(
79
- SELECT ${format?.singular ? sql `` : sql `COALESCE(array_agg`}(row_to_json(${sql.ident(`inner_${relationship.subquery.alias}`)})) ${format?.singular ? sql `` : sql `, ARRAY[]::json[])`} FROM (${this.select(relationship.subquery, format, this.correlate(parentTable, parentTable, relationship.correlation.parentField, relationship.subquery.table, relationship.subquery.table, relationship.correlation.childField))}) ${sql.ident(`inner_${relationship.subquery.alias}`)}
132
+ SELECT ${format?.singular ? sql `` : sql `COALESCE(json_agg`}(row_to_json(${sql.ident(`inner_${relationship.subquery.alias}`)})) ${format?.singular ? sql `` : sql `, '[]'::json)`} FROM (${this.select(relationship.subquery, format, this.correlate(parentTable, parentTable, relationship.correlation.parentField, relationship.subquery.table, relationship.subquery.table, relationship.correlation.childField))}) ${sql.ident(`inner_${relationship.subquery.alias}`)}
80
133
  ) as ${sql.ident(relationship.subquery.alias)}`;
81
134
  }
82
135
  pullTablesForJunction(relationship, tables = []) {
@@ -141,7 +194,7 @@ export class Compiler {
141
194
  case 'LIKE':
142
195
  case 'NOT ILIKE':
143
196
  case 'NOT LIKE':
144
- return sql `${this.valuePosition(condition.left, table)} ${sql.__dangerous__rawValue(condition.op)} ${this.valuePosition(condition.right, table)}`;
197
+ return sql `${this.valuePosition(condition.left, table, this.#extractType(table, condition.left, condition.right), false)} ${sql.__dangerous__rawValue(condition.op)} ${this.valuePosition(condition.right, table, this.#extractType(table, condition.right, condition.left), false)}`;
145
198
  case 'NOT IN':
146
199
  case 'IN':
147
200
  return this.any(condition, table);
@@ -151,17 +204,17 @@ export class Compiler {
151
204
  }
152
205
  }
153
206
  distinctFrom(condition, table) {
154
- return sql `${this.valuePosition(condition.left, table)} ${condition.op === 'IS' ? sql `IS NOT DISTINCT FROM` : sql `IS DISTINCT FROM`} ${this.valuePosition(condition.right, table)}`;
207
+ return sql `${this.valuePosition(condition.left, table, this.#extractType(table, condition.left, condition.right), false)} ${condition.op === 'IS' ? sql `IS NOT DISTINCT FROM` : sql `IS DISTINCT FROM`} ${this.valuePosition(condition.right, table, this.#extractType(table, condition.right, condition.left), false)}`;
155
208
  }
156
209
  any(condition, table) {
157
- return sql `${this.valuePosition(condition.left, table)} ${condition.op === 'IN' ? sql `= ANY` : sql `!= ANY`} (${this.valuePosition(condition.right, table)})`;
210
+ return sql `${this.valuePosition(condition.left, table, this.#extractType(table, condition.left, condition.right), false)} ${condition.op === 'IN' ? sql `= ANY` : sql `!= ANY`} (${this.valuePosition(condition.right, table, this.#extractType(table, condition.right, condition.left), true)})`;
158
211
  }
159
- valuePosition(value, table) {
212
+ valuePosition(value, table, valueType, plural) {
160
213
  switch (value.type) {
161
214
  case 'column':
162
215
  return this.#mapColumnNoAlias(table, value.name);
163
216
  case 'literal':
164
- return sql.value(value.value);
217
+ return sqlConvertArgUnsafe(valueType, value.value, plural);
165
218
  case 'static':
166
219
  throw new Error('Static parameters must be bound to a value before compiling to SQL');
167
220
  }
@@ -204,5 +257,52 @@ export class Compiler {
204
257
  const mapped = this.#nameMapper.tableName(table);
205
258
  return sql.ident(mapped);
206
259
  }
260
+ #selectCol(table, column, type) {
261
+ if (type === 'date' || type === 'timestamp') {
262
+ return sql `EXTRACT(EPOCH FROM ${sql.ident(table)}.${this.#mapColumnNoAlias(table, column)}::timestamp AT TIME ZONE 'UTC') * 1000 as ${sql.ident(column)}`;
263
+ }
264
+ return sql `${sql.ident(table)}.${this.#mapColumn(table, column)}`;
265
+ }
266
+ #toJSON(table, singular = false) {
267
+ return sql `${singular ? sql `` : sql `COALESCE(json_agg`}(row_to_json(${sql.ident(table)})) ${singular ? sql `` : sql `, '[]'::json)`}`;
268
+ }
269
+ #extractType(table,
270
+ // first takes precedence over second in terms of type discovery
271
+ first, second) {
272
+ // Derive the type from the table schema first if able
273
+ const column = first.type === 'column'
274
+ ? first.name
275
+ : second.type === 'column'
276
+ ? second.name
277
+ : undefined;
278
+ if (column) {
279
+ return this.#tables[table].columns[column].type;
280
+ }
281
+ // We're comparing two literals? Derive the type from the JS type itself.
282
+ const literalValue = first.type === 'literal'
283
+ ? first.value
284
+ : second.type === 'literal'
285
+ ? second.value
286
+ : undefined;
287
+ assert(literalValue, 'Literal value not found');
288
+ if (literalValue === null) {
289
+ return 'null';
290
+ }
291
+ const jsType = typeof literalValue;
292
+ switch (jsType) {
293
+ case 'boolean':
294
+ case 'number':
295
+ case 'string':
296
+ return jsType;
297
+ case 'object':
298
+ case 'bigint':
299
+ case 'function':
300
+ case 'symbol':
301
+ case 'undefined':
302
+ throw new Error('Unsupported type: ' + jsType);
303
+ default:
304
+ unreachable(jsType);
305
+ }
306
+ }
207
307
  }
208
308
  //# sourceMappingURL=compiler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../../../z2s/src/compiler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../../../z2s/src/compiler.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,20 @@
1
1
  import type { SQLQuery } from '@databases/sql';
2
2
  import baseSql from '@databases/sql';
3
+ import type { ValueType } from '../../zero-protocol/src/client-schema.ts';
4
+ import type { TypeNameToTypeMap } from '../../zero-schema/src/table-schema.ts';
3
5
  export declare function formatPg(sql: SQLQuery): {
4
6
  text: string;
5
7
  values: unknown[];
6
8
  };
9
+ export declare function formatPgInternalConvert(sql: SQLQuery): {
10
+ text: string;
11
+ values: unknown[];
12
+ };
7
13
  export declare function formatSqlite(sql: SQLQuery): {
8
14
  text: string;
9
15
  values: unknown[];
10
16
  };
17
+ export declare function sqlConvertArg<T extends ValueType, P extends boolean = false>(type: T, value: true extends P ? TypeNameToTypeMap[T][] : TypeNameToTypeMap[T], plural?: P): SQLQuery;
18
+ export declare function sqlConvertArgUnsafe(type: ValueType, value: unknown, plural?: boolean): SQLQuery;
11
19
  export declare const sql: baseSql.SQL;
12
20
  //# sourceMappingURL=sql.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sql.d.ts","sourceRoot":"","sources":["../../../../z2s/src/sql.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,QAAQ,EAAe,MAAM,gBAAgB,CAAC;AAC3D,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAgBrC,wBAAgB,QAAQ,CAAC,GAAG,EAAE,QAAQ;;;EAErC;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,QAAQ;;;EAEzC;AAED,eAAO,MAAM,GAAG,aAAkB,CAAC"}
1
+ {"version":3,"file":"sql.d.ts","sourceRoot":"","sources":["../../../../z2s/src/sql.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,QAAQ,EAAwB,MAAM,gBAAgB,CAAC;AACpE,OAAO,OAAsB,MAAM,gBAAgB,CAAC;AAKpD,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,0CAA0C,CAAC;AAExE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,uCAAuC,CAAC;AAE7E,wBAAgB,QAAQ,CAAC,GAAG,EAAE,QAAQ;UAmM9B,MAAM;YACJ,OAAO,EAAE;EAjMlB;AAED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,QAAQ;UA8L7C,MAAM;YACJ,OAAO,EAAE;EA5LlB;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,QAAQ;UAyLlC,MAAM;YACJ,OAAO,EAAE;EAvLlB;AAaD,wBAAgB,aAAa,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC,SAAS,OAAO,GAAG,KAAK,EAC1E,IAAI,EAAE,CAAC,EACP,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC,EAGrE,MAAM,CAAC,EAAE,CAAC,GACT,QAAQ,CAEV;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,OAAO,EACd,MAAM,CAAC,EAAE,OAAO,GACf,QAAQ,CAEV;AAkJD,eAAO,MAAM,GAAG,aAAkB,CAAC"}
@@ -1,18 +1,212 @@
1
- import baseSql from '@databases/sql';
1
+ import baseSql, { SQLItemType } from '@databases/sql';
2
2
  import { escapePostgresIdentifier, escapeSQLiteIdentifier, } from '@databases/escape-identifier';
3
- const pgFormat = {
4
- escapeIdentifier: str => escapePostgresIdentifier(str),
5
- formatValue: (value, index) => ({ placeholder: `$${index + 1}`, value }),
6
- };
7
- const sqliteFormat = {
8
- escapeIdentifier: str => escapeSQLiteIdentifier(str),
9
- formatValue: value => ({ placeholder: '?', value }),
10
- };
3
+ import { assert, unreachable } from "../../shared/src/asserts.js";
11
4
  export function formatPg(sql) {
12
- return sql.format(pgFormat);
5
+ const format = new ReusingFormat(escapePostgresIdentifier);
6
+ return sql.format((items) => formatFn(items, format));
7
+ }
8
+ export function formatPgInternalConvert(sql) {
9
+ const format = new SQLConvertFormat(escapePostgresIdentifier);
10
+ return sql.format((items) => formatFn(items, format));
13
11
  }
14
12
  export function formatSqlite(sql) {
15
- return sql.format(sqliteFormat);
13
+ const format = new ReusingFormat(escapeSQLiteIdentifier);
14
+ return sql.format((items) => formatFn(items, format));
15
+ }
16
+ const sqlConvert = Symbol('fromJson');
17
+ function isSqlConvert(value) {
18
+ return value !== null && typeof value === 'object' && sqlConvert in value;
19
+ }
20
+ export function sqlConvertArg(type, value,
21
+ // plural is an explicit argument so we do not get confused by a singular JSON array vs
22
+ // an array of JSON.
23
+ plural) {
24
+ return sql.value({ [sqlConvert]: true, type, value, plural });
25
+ }
26
+ export function sqlConvertArgUnsafe(type, value, plural) {
27
+ return sqlConvertArg(type, value, plural);
28
+ }
29
+ class ReusingFormat {
30
+ #seen = new Map();
31
+ escapeIdentifier;
32
+ constructor(escapeIdentifier) {
33
+ this.escapeIdentifier = escapeIdentifier;
34
+ }
35
+ formatValue = (value) => {
36
+ if (this.#seen.has(value)) {
37
+ return {
38
+ placeholder: `$${this.#seen.get(value)}`,
39
+ value: PREVIOUSLY_SEEN_VALUE,
40
+ };
41
+ }
42
+ this.#seen.set(value, this.#seen.size + 1);
43
+ return { placeholder: `$${this.#seen.size}`, value };
44
+ };
45
+ }
46
+ function stringify(arg) {
47
+ if (arg.plural) {
48
+ return JSON.stringify(arg.value);
49
+ }
50
+ switch (arg.type) {
51
+ case 'json':
52
+ return JSON.stringify(arg.value);
53
+ case 'boolean':
54
+ return arg.value ? 'true' : 'false';
55
+ case 'number':
56
+ case 'date':
57
+ case 'timestamp':
58
+ return arg.value.toString();
59
+ case 'string':
60
+ return arg.value;
61
+ case 'null':
62
+ return 'null';
63
+ default:
64
+ unreachable(arg.type);
65
+ }
66
+ }
67
+ class SQLConvertFormat {
68
+ #seen = new Map();
69
+ escapeIdentifier;
70
+ constructor(escapeIdentifier) {
71
+ this.escapeIdentifier = escapeIdentifier;
72
+ }
73
+ formatValue = (value) => {
74
+ assert(isSqlConvert(value), 'JsonPackedFormat can only take JsonPackArgs.');
75
+ const key = value.value;
76
+ if (this.#seen.has(key)) {
77
+ return {
78
+ placeholder: this.#createPlaceholder(this.#seen.get(key), value),
79
+ value: PREVIOUSLY_SEEN_VALUE,
80
+ };
81
+ }
82
+ this.#seen.set(key, this.#seen.size + 1);
83
+ return {
84
+ placeholder: this.#createPlaceholder(this.#seen.size, value),
85
+ value: stringify(value),
86
+ };
87
+ };
88
+ #createPlaceholder(index, value) {
89
+ // Ok, so what is with all the `::text` casts
90
+ // before the final cast?
91
+ // This is to force the statement to describe its arguments
92
+ // as being text. Without the text cast the args are described as
93
+ // being bool/json/numeric/whatever and the bindings try to coerce
94
+ // the inputs to those types.
95
+ const sqlType = pgType(value.type);
96
+ if (!value.plural) {
97
+ switch (value.type) {
98
+ case 'json':
99
+ // We use JSONB since that can be used as a primary key type
100
+ // whereas JSON cannot. So JSONB covers more cases.
101
+ return `$${index}::text::${sqlType}`;
102
+ case 'boolean':
103
+ return `$${index}::text::${sqlType}`;
104
+ case 'number':
105
+ return `$${index}::text::${sqlType}`;
106
+ case 'string':
107
+ return `$${index}::text`;
108
+ case 'date':
109
+ case 'timestamp':
110
+ return `to_timestamp($${index}::text::${sqlType} / 1000.0) AT TIME ZONE 'UTC'`;
111
+ case 'null':
112
+ return 'NULL';
113
+ default:
114
+ unreachable(value.type);
115
+ }
116
+ }
117
+ switch (value.type) {
118
+ case 'json':
119
+ case 'boolean':
120
+ case 'number':
121
+ return `ARRAY(
122
+ SELECT value::${sqlType} FROM jsonb_array_elements_text($${index}::text::jsonb)
123
+ )`;
124
+ case 'string':
125
+ return `ARRAY(
126
+ SELECT value FROM jsonb_array_elements_text($${index}::text::jsonb)
127
+ )`;
128
+ case 'date':
129
+ case 'timestamp':
130
+ return `ARRAY(
131
+ SELECT to_timestamp(value::bigint / 1000.0)
132
+ FROM jsonb_array_elements_text($${index}::text::jsonb)
133
+ )::timestamp[]`;
134
+ case 'null':
135
+ throw new Error('unsupported null');
136
+ default:
137
+ unreachable(value.type);
138
+ }
139
+ }
140
+ }
141
+ function pgType(type) {
142
+ switch (type) {
143
+ case 'json':
144
+ return 'jsonb';
145
+ case 'boolean':
146
+ return 'boolean';
147
+ case 'number':
148
+ return 'numeric';
149
+ case 'string':
150
+ return 'text';
151
+ case 'date':
152
+ case 'timestamp':
153
+ return 'bigint';
154
+ case 'null':
155
+ return 'null';
156
+ default:
157
+ unreachable(type);
158
+ }
16
159
  }
17
160
  export const sql = baseSql.default;
161
+ const PREVIOUSLY_SEEN_VALUE = Symbol('PREVIOUSLY_SEEN_VALUE');
162
+ function formatFn(items, { escapeIdentifier, formatValue }) {
163
+ // Create an empty query object.
164
+ let text = '';
165
+ const values = [];
166
+ const localIdentifiers = new Map();
167
+ for (const item of items) {
168
+ switch (item.type) {
169
+ // If this is just raw text, we add it directly to the query text.
170
+ case SQLItemType.RAW: {
171
+ text += item.text;
172
+ break;
173
+ }
174
+ // If we got a value SQL item, add a placeholder and add the value to our
175
+ // placeholder values array.
176
+ case SQLItemType.VALUE: {
177
+ const { placeholder, value } = formatValue(item.value, values.length);
178
+ text += placeholder;
179
+ if (value !== PREVIOUSLY_SEEN_VALUE) {
180
+ values.push(value);
181
+ }
182
+ break;
183
+ }
184
+ // If we got an identifier type, escape the strings and get a local
185
+ // identifier for non-string identifiers.
186
+ case SQLItemType.IDENTIFIER: {
187
+ text += item.names
188
+ .map((name) => {
189
+ if (typeof name === 'string')
190
+ return escapeIdentifier(name);
191
+ if (!localIdentifiers.has(name))
192
+ localIdentifiers.set(name, `__local_${localIdentifiers.size}__`);
193
+ return escapeIdentifier(localIdentifiers.get(name));
194
+ })
195
+ .join('.');
196
+ break;
197
+ }
198
+ }
199
+ }
200
+ if (text.trim()) {
201
+ const lines = text.split('\n');
202
+ const min = Math.min(...lines.filter(l => l.trim() !== '').map(l => /^\s*/.exec(l)[0].length));
203
+ if (min) {
204
+ text = lines.map(line => line.substr(min)).join('\n');
205
+ }
206
+ }
207
+ return {
208
+ text: text.trim(),
209
+ values,
210
+ };
211
+ }
18
212
  //# sourceMappingURL=sql.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sql.js","sourceRoot":"","sources":["../../../../z2s/src/sql.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,gBAAgB,CAAC;AACrC,OAAO,EACL,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,8BAA8B,CAAC;AAEtC,MAAM,QAAQ,GAAiB;IAC7B,gBAAgB,EAAE,GAAG,CAAC,EAAE,CAAC,wBAAwB,CAAC,GAAG,CAAC;IACtD,WAAW,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAC,WAAW,EAAE,IAAI,KAAK,GAAG,CAAC,EAAE,EAAE,KAAK,EAAC,CAAC;CACvE,CAAC;AAEF,MAAM,YAAY,GAAiB;IACjC,gBAAgB,EAAE,GAAG,CAAC,EAAE,CAAC,sBAAsB,CAAC,GAAG,CAAC;IACpD,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,EAAC,WAAW,EAAE,GAAG,EAAE,KAAK,EAAC,CAAC;CAClD,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,GAAa;IACpC,OAAO,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,GAAa;IACxC,OAAO,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,CAAC,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC"}
1
+ {"version":3,"file":"sql.js","sourceRoot":"","sources":["../../../../z2s/src/sql.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- import 'dotenv/config';
2
+ import '@dotenvx/dotenvx/config';
3
3
  //# sourceMappingURL=zero-cache-dev.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"zero-cache-dev.d.ts","sourceRoot":"","sources":["../../../src/zero-cache-dev.ts"],"names":[],"mappings":";AAMA,OAAO,eAAe,CAAC"}
1
+ {"version":3,"file":"zero-cache-dev.d.ts","sourceRoot":"","sources":["../../../src/zero-cache-dev.ts"],"names":[],"mappings":";AAMA,OAAO,yBAAyB,CAAC"}
@@ -3,7 +3,7 @@
3
3
  import { resolver } from '@rocicorp/resolver';
4
4
  import chalk from 'chalk';
5
5
  import { watch } from 'chokidar';
6
- import 'dotenv/config';
6
+ import '@dotenvx/dotenvx/config';
7
7
  import { spawn } from 'node:child_process';
8
8
  import { parseOptionsAdvanced } from "../../shared/src/options.js";
9
9
  import { ZERO_ENV_VAR_PREFIX, zeroOptions, } from "../../zero-cache/src/config/zero-config.js";
@@ -1 +1 @@
1
- {"version":3,"file":"zero-cache-dev.js","sourceRoot":"","sources":["../../../src/zero-cache-dev.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zero-cache-dev.js","sourceRoot":"","sources":["../../../src/zero-cache-dev.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"load-permissions.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/auth/load-permissions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAEjD,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,oDAAoD,CAAC;AAC/E,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,kDAAkD,CAAC;AAE1D,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,2BAA2B,CAAC;AAExD,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,qBAAqB,CAAC;AAGzD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,WAAW,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACtC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB,CAAC;AAEF,wBAAgB,eAAe,CAC7B,EAAE,EAAE,UAAU,EACd,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,MAAM,GACZ,iBAAiB,CA6BnB;AAED,wBAAgB,0BAA0B,CACxC,EAAE,EAAE,UAAU,EACd,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,iBAAiB,GAAG,IAAI,GAChC;IAAC,WAAW,EAAE,iBAAiB,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAC,CAQpD;AAED,wBAAgB,SAAS,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM,CAenE"}
1
+ {"version":3,"file":"load-permissions.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/auth/load-permissions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAEjD,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,oDAAoD,CAAC;AAC/E,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,kDAAkD,CAAC;AAE1D,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,2BAA2B,CAAC;AAExD,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,qBAAqB,CAAC;AAGzD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,WAAW,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACtC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB,CAAC;AAEF,wBAAgB,eAAe,CAC7B,EAAE,EAAE,UAAU,EACd,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,MAAM,GACZ,iBAAiB,CA8BnB;AAED,wBAAgB,0BAA0B,CACxC,EAAE,EAAE,UAAU,EACd,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,iBAAiB,GAAG,IAAI,GAChC;IAAC,WAAW,EAAE,iBAAiB,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAC,CAQpD;AAED,wBAAgB,SAAS,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM,CAenE"}
@@ -5,9 +5,10 @@ import { elide } from "../types/strings.js";
5
5
  export function loadPermissions(lc, replica, appID) {
6
6
  const { permissions, hash } = replica.get(`SELECT permissions, hash FROM "${appID}.permissions"`);
7
7
  if (permissions === null) {
8
+ const appIDFlag = appID === 'zero' ? '' : ` --app-id=${appID}`;
8
9
  lc.warn?.(`\n\n\n` +
9
10
  `No upstream permissions deployed.\n` +
10
- `Run 'npx zero-deploy-permissions' to enforce permissions.` +
11
+ `Run 'npx zero-deploy-permissions${appIDFlag}' to enforce permissions.` +
11
12
  `\n\n\n`);
12
13
  return { permissions, hash: null };
13
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"load-permissions.js","sourceRoot":"","sources":["../../../../../zero-cache/src/auth/load-permissions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,+BAA+B,CAAC;AAEnD,OAAO,EACL,uBAAuB,GAExB,MAAM,kDAAkD,CAAC;AAG1D,OAAO,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAC,KAAK,EAAC,MAAM,qBAAqB,CAAC;AAO1C,MAAM,UAAU,eAAe,CAC7B,EAAc,EACd,OAAwB,EACxB,KAAa;IAEb,MAAM,EAAC,WAAW,EAAE,IAAI,EAAC,GAAG,OAAO,CAAC,GAAG,CACrC,kCAAkC,KAAK,eAAe,CACvD,CAAC;IACF,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACzB,EAAE,CAAC,IAAI,EAAE,CACP,QAAQ;YACN,qCAAqC;YACrC,2DAA2D;YAC3D,QAAQ,CACX,CAAC;QACF,OAAO,EAAC,WAAW,EAAE,IAAI,EAAE,IAAI,EAAC,CAAC;IACnC,CAAC;IACD,IAAI,GAAG,CAAC;IACR,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC9B,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,iEAAiE;QACjE,MAAM,IAAI,KAAK,CACb,wCAAwC;YACtC,IAAI,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM;YACzC,gEAAgE;YAChE,kEAAkE,EACpE,EAAC,KAAK,EAAE,CAAC,EAAC,CACX,CAAC;IACJ,CAAC;IACD,OAAO,EAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAC,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,EAAc,EACd,OAAwB,EACxB,KAAa,EACb,OAAiC;IAEjC,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,EAAC,WAAW,EAAE,eAAe,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;IAC3E,CAAC;IACD,MAAM,EAAC,IAAI,EAAC,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,KAAK,eAAe,CAAC,CAAC;IACtE,OAAO,IAAI,KAAK,OAAO,CAAC,IAAI;QAC1B,CAAC,CAAC,EAAC,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAC;QACxC,CAAC,CAAC,EAAC,WAAW,EAAE,eAAe,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,EAAc,EAAE,OAAiB;IACzD,MAAM,KAAK,GAAG,eAAe,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAC/B,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QAC9B,MAAM,EACJ,SAAS,EAAE,EAAC,IAAI,EAAE,UAAU,EAAC,EAC7B,OAAO,EAAE,OAAO,GACjB,GAAG,KAAK,CAAC;QACV,OAAO,CAAC,IAAI,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAuB,CAAC,CAAC;IACnE,CAAC,CAAC,CACH,CAAC;IACF,OAAO;QACL,MAAM;QACN,aAAa,EAAE,EAAE,EAAE,iDAAiD;KACrE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"load-permissions.js","sourceRoot":"","sources":["../../../../../zero-cache/src/auth/load-permissions.ts"],"names":[],"mappings":"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"}
@@ -274,7 +274,7 @@ export declare const zeroOptions: {
274
274
  desc: string[];
275
275
  hidden: boolean;
276
276
  };
277
- maxRowCount: {
277
+ targetClientRowCount: {
278
278
  type: v.Optional<number>;
279
279
  desc: string[];
280
280
  default: number;
@@ -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,EAAe,KAAK,MAAM,EAAC,MAAM,gCAAgC,CAAC;AACzE,OAAO,KAAK,CAAC,MAAM,+BAA+B,CAAC;AAOnD,YAAY,EAAC,SAAS,EAAC,MAAM,kCAAkC,CAAC;AAEhE,eAAO,MAAM,UAAU;;;;;;;;;CAgDtB,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;AAEF,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,WAAW,CAAC,CAAC;AAKpD,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsTvB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,WAAW,CAAC,CAAC;AAEpD,eAAO,MAAM,mBAAmB,UAAU,CAAC;AAI3C,wBAAgB,aAAa,CAC3B,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,IAAI,WAAwB,GAC3B,UAAU,CAUZ"}
1
+ {"version":3,"file":"zero-config.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/config/zero-config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAe,KAAK,MAAM,EAAC,MAAM,gCAAgC,CAAC;AACzE,OAAO,KAAK,CAAC,MAAM,+BAA+B,CAAC;AAOnD,YAAY,EAAC,SAAS,EAAC,MAAM,kCAAkC,CAAC;AAEhE,eAAO,MAAM,UAAU;;;;;;;;;CAgDtB,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;AAEF,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,WAAW,CAAC,CAAC;AAKpD,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyTvB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,WAAW,CAAC,CAAC;AAEpD,eAAO,MAAM,mBAAmB,UAAU,CAAC;AAI3C,wBAAgB,aAAa,CAC3B,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,IAAI,WAAwB,GAC3B,UAAU,CAUZ"}