@rocicorp/zero 0.22.2025071100 → 0.22.2025071900

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 (148) hide show
  1. package/out/{chunk-ZVMEFHVU.js → chunk-A6LHZQIK.js} +26 -7
  2. package/out/{chunk-ZVMEFHVU.js.map → chunk-A6LHZQIK.js.map} +2 -2
  3. package/out/{chunk-ZRSXCDPE.js → chunk-IQCMHXK7.js} +167 -37
  4. package/out/chunk-IQCMHXK7.js.map +7 -0
  5. package/out/{chunk-INLOZBST.js → chunk-P5M53J4D.js} +2 -3
  6. package/out/{chunk-INLOZBST.js.map → chunk-P5M53J4D.js.map} +2 -2
  7. package/out/{inspector-HDOYOVMS.js → inspector-TFZBDN6K.js} +2 -2
  8. package/out/react.js +2 -2
  9. package/out/replicache/src/kv/idb-store.d.ts.map +1 -1
  10. package/out/shared/src/options.d.ts +4 -1
  11. package/out/shared/src/options.d.ts.map +1 -1
  12. package/out/shared/src/options.js +1 -1
  13. package/out/shared/src/options.js.map +1 -1
  14. package/out/solid.js +7 -3
  15. package/out/solid.js.map +1 -1
  16. package/out/zero/package.json +161 -0
  17. package/out/zero-cache/src/config/normalize.d.ts +1 -0
  18. package/out/zero-cache/src/config/normalize.d.ts.map +1 -1
  19. package/out/zero-cache/src/config/normalize.js +10 -1
  20. package/out/zero-cache/src/config/normalize.js.map +1 -1
  21. package/out/zero-cache/src/config/zero-config.d.ts +44 -6
  22. package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
  23. package/out/zero-cache/src/config/zero-config.js +48 -54
  24. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  25. package/out/zero-cache/src/custom/fetch.d.ts +14 -1
  26. package/out/zero-cache/src/custom/fetch.d.ts.map +1 -1
  27. package/out/zero-cache/src/custom/fetch.js +56 -1
  28. package/out/zero-cache/src/custom/fetch.js.map +1 -1
  29. package/out/zero-cache/src/custom-queries/transform-query.d.ts +1 -1
  30. package/out/zero-cache/src/custom-queries/transform-query.d.ts.map +1 -1
  31. package/out/zero-cache/src/custom-queries/transform-query.js +2 -1
  32. package/out/zero-cache/src/custom-queries/transform-query.js.map +1 -1
  33. package/out/zero-cache/src/observability/histograms.d.ts.map +1 -1
  34. package/out/zero-cache/src/observability/histograms.js +8 -14
  35. package/out/zero-cache/src/observability/histograms.js.map +1 -1
  36. package/out/zero-cache/src/server/anonymous-otel-start.d.ts +9 -0
  37. package/out/zero-cache/src/server/anonymous-otel-start.d.ts.map +1 -0
  38. package/out/zero-cache/src/server/anonymous-otel-start.js +289 -0
  39. package/out/zero-cache/src/server/anonymous-otel-start.js.map +1 -0
  40. package/out/zero-cache/src/server/main.d.ts.map +1 -1
  41. package/out/zero-cache/src/server/main.js +1 -5
  42. package/out/zero-cache/src/server/main.js.map +1 -1
  43. package/out/zero-cache/src/server/otel-start.js +1 -1
  44. package/out/zero-cache/src/server/otel-start.js.map +1 -1
  45. package/out/zero-cache/src/server/runner/zero-dispatcher.d.ts.map +1 -1
  46. package/out/zero-cache/src/server/runner/zero-dispatcher.js +2 -2
  47. package/out/zero-cache/src/server/runner/zero-dispatcher.js.map +1 -1
  48. package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
  49. package/out/zero-cache/src/server/syncer.js +6 -3
  50. package/out/zero-cache/src/server/syncer.js.map +1 -1
  51. package/out/zero-cache/src/server/worker-dispatcher.js +3 -3
  52. package/out/zero-cache/src/server/worker-dispatcher.js.map +1 -1
  53. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts +0 -7
  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 +43 -32
  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/initial-sync.d.ts.map +1 -1
  58. package/out/zero-cache/src/services/change-source/pg/initial-sync.js +24 -12
  59. package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -1
  60. package/out/zero-cache/src/services/mutagen/mutagen.d.ts.map +1 -1
  61. package/out/zero-cache/src/services/mutagen/mutagen.js +4 -0
  62. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  63. package/out/zero-cache/src/services/mutagen/pusher.d.ts +4 -4
  64. package/out/zero-cache/src/services/mutagen/pusher.d.ts.map +1 -1
  65. package/out/zero-cache/src/services/mutagen/pusher.js +8 -5
  66. package/out/zero-cache/src/services/mutagen/pusher.js.map +1 -1
  67. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts +11 -8
  68. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts.map +1 -1
  69. package/out/zero-cache/src/services/view-syncer/cvr-store.js +14 -13
  70. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -1
  71. package/out/zero-cache/src/services/view-syncer/cvr.d.ts +9 -16
  72. package/out/zero-cache/src/services/view-syncer/cvr.d.ts.map +1 -1
  73. package/out/zero-cache/src/services/view-syncer/cvr.js +25 -28
  74. package/out/zero-cache/src/services/view-syncer/cvr.js.map +1 -1
  75. package/out/zero-cache/src/services/view-syncer/row-record-cache.d.ts.map +1 -1
  76. package/out/zero-cache/src/services/view-syncer/row-record-cache.js +3 -0
  77. package/out/zero-cache/src/services/view-syncer/row-record-cache.js.map +1 -1
  78. package/out/zero-cache/src/services/view-syncer/schema/cvr.d.ts +3 -2
  79. package/out/zero-cache/src/services/view-syncer/schema/cvr.d.ts.map +1 -1
  80. package/out/zero-cache/src/services/view-syncer/schema/cvr.js.map +1 -1
  81. package/out/zero-cache/src/services/view-syncer/schema/types.d.ts +11 -11
  82. package/out/zero-cache/src/services/view-syncer/schema/types.d.ts.map +1 -1
  83. package/out/zero-cache/src/services/view-syncer/schema/types.js +3 -2
  84. package/out/zero-cache/src/services/view-syncer/schema/types.js.map +1 -1
  85. package/out/zero-cache/src/services/view-syncer/ttl-clock.d.ts +10 -0
  86. package/out/zero-cache/src/services/view-syncer/ttl-clock.d.ts.map +1 -0
  87. package/out/zero-cache/src/services/view-syncer/ttl-clock.js +9 -0
  88. package/out/zero-cache/src/services/view-syncer/ttl-clock.js.map +1 -0
  89. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts +14 -13
  90. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  91. package/out/zero-cache/src/services/view-syncer/view-syncer.js +92 -124
  92. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  93. package/out/zero-cache/src/types/processes.d.ts +6 -6
  94. package/out/zero-cache/src/types/processes.d.ts.map +1 -1
  95. package/out/zero-cache/src/types/processes.js +2 -2
  96. package/out/zero-cache/src/types/processes.js.map +1 -1
  97. package/out/zero-cache/src/types/websocket-handoff.d.ts +2 -2
  98. package/out/zero-cache/src/types/websocket-handoff.d.ts.map +1 -1
  99. package/out/zero-cache/src/types/websocket-handoff.js +4 -4
  100. package/out/zero-cache/src/types/websocket-handoff.js.map +1 -1
  101. package/out/zero-cache/src/workers/connection.d.ts +1 -1
  102. package/out/zero-cache/src/workers/connection.d.ts.map +1 -1
  103. package/out/zero-cache/src/workers/connection.js +2 -0
  104. package/out/zero-cache/src/workers/connection.js.map +1 -1
  105. package/out/zero-cache/src/workers/syncer-ws-message-handler.js +1 -1
  106. package/out/zero-cache/src/workers/syncer-ws-message-handler.js.map +1 -1
  107. package/out/zero-cache/src/workers/syncer.d.ts.map +1 -1
  108. package/out/zero-cache/src/workers/syncer.js +3 -1
  109. package/out/zero-cache/src/workers/syncer.js.map +1 -1
  110. package/out/zero-client/src/client/active-clients-manager.d.ts.map +1 -1
  111. package/out/zero-client/src/client/mutation-tracker.d.ts +38 -5
  112. package/out/zero-client/src/client/mutation-tracker.d.ts.map +1 -1
  113. package/out/zero-client/src/client/options.d.ts +9 -4
  114. package/out/zero-client/src/client/options.d.ts.map +1 -1
  115. package/out/zero-client/src/client/query-manager.d.ts.map +1 -1
  116. package/out/zero-client/src/client/zero.d.ts +2 -2
  117. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  118. package/out/zero-client/src/mod.d.ts +1 -1
  119. package/out/zero-client/src/mod.d.ts.map +1 -1
  120. package/out/zero-protocol/src/connect.d.ts +24 -2
  121. package/out/zero-protocol/src/connect.d.ts.map +1 -1
  122. package/out/zero-protocol/src/connect.js +26 -5
  123. package/out/zero-protocol/src/connect.js.map +1 -1
  124. package/out/zero-protocol/src/protocol-version.d.ts +1 -1
  125. package/out/zero-protocol/src/protocol-version.d.ts.map +1 -1
  126. package/out/zero-protocol/src/protocol-version.js +2 -1
  127. package/out/zero-protocol/src/protocol-version.js.map +1 -1
  128. package/out/zero-protocol/src/up.d.ts +5 -0
  129. package/out/zero-protocol/src/up.d.ts.map +1 -1
  130. package/out/zero-server/src/queries/process-queries.d.ts +1 -1
  131. package/out/zero-server/src/queries/process-queries.d.ts.map +1 -1
  132. package/out/zero-server/src/queries/process-queries.js +1 -1
  133. package/out/zero-server/src/queries/process-queries.js.map +1 -1
  134. package/out/zero-solid/src/mod.d.ts +2 -2
  135. package/out/zero-solid/src/mod.d.ts.map +1 -1
  136. package/out/zero.js +9 -7
  137. package/out/zql/src/query/named.d.ts +11 -11
  138. package/out/zql/src/query/named.d.ts.map +1 -1
  139. package/out/zql/src/query/named.js +20 -2
  140. package/out/zql/src/query/named.js.map +1 -1
  141. package/out/zql/src/query/query-impl.js +1 -1
  142. package/out/zql/src/query/query-impl.js.map +1 -1
  143. package/out/zql/src/query/query.d.ts +12 -3
  144. package/out/zql/src/query/query.d.ts.map +1 -1
  145. package/out/zql/src/query/query.js.map +1 -1
  146. package/package.json +2 -2
  147. package/out/chunk-ZRSXCDPE.js.map +0 -7
  148. /package/out/{inspector-HDOYOVMS.js.map → inspector-TFZBDN6K.js.map} +0 -0
@@ -129,6 +129,37 @@ const authOptions = {
129
129
  ],
130
130
  },
131
131
  };
132
+ const makeMutatorQueryOptions = (replacement, suffix) => ({
133
+ url: {
134
+ type: v.array(v.string()).optional(), // optional until we remove CRUD mutations
135
+ desc: [
136
+ replacement ? `DEPRECATED. Use ${replacement} instead.` : ``,
137
+ `The URL of the API server to which zero-cache will ${suffix}.`,
138
+ ``,
139
+ `* is allowed if you would like to allow the client to specify a subdomain to use.`,
140
+ `e.g., *.example.com/api/mutate`,
141
+ `You can specify multiple URLs as well which the client can choose from.`,
142
+ `e.g., ["https://api1.example.com/mutate", "https://api2.example.com/mutate"]`,
143
+ ],
144
+ },
145
+ apiKey: {
146
+ type: v.string().optional(),
147
+ desc: [
148
+ `An optional secret used to authorize zero-cache to call the API server handling writes.`,
149
+ ],
150
+ },
151
+ forwardCookies: {
152
+ type: v.boolean().default(false),
153
+ desc: [
154
+ `If true, zero-cache will forward cookies from the request.`,
155
+ `This is useful for passing authentication cookies to the API server.`,
156
+ `If false, cookies are not forwarded.`,
157
+ ],
158
+ },
159
+ });
160
+ const mutateOptions = makeMutatorQueryOptions(undefined, 'push mutations');
161
+ const pushOptions = makeMutatorQueryOptions('mutate-url', 'push mutations');
162
+ const queryOptions = makeMutatorQueryOptions(undefined, 'send named queries');
132
163
  // Note: --help will list flags in the order in which they are defined here,
133
164
  // so order the fields such that the important (e.g. required) ones are first.
134
165
  // (Exported for testing)
@@ -168,54 +199,9 @@ export const zeroOptions = {
168
199
  hidden: true, // Passed from main thread to sync workers
169
200
  },
170
201
  },
171
- push: {
172
- url: {
173
- type: v.string().optional(), // optional until we remove CRUD mutations
174
- desc: [
175
- `The URL of the API server to which zero-cache will push mutations.`,
176
- ],
177
- },
178
- apiKey: {
179
- type: v.string().optional(),
180
- desc: [
181
- `An optional secret used to authorize zero-cache to call the API server handling writes.`,
182
- ],
183
- },
184
- forwardCookies: {
185
- type: v.boolean().default(false),
186
- desc: [
187
- `If true, zero-cache will forward cookies from the request to the push URL.`,
188
- `This is useful for passing authentication cookies to the API server.`,
189
- `If false, cookies are not forwarded.`,
190
- ``,
191
- `Note that this option is only relevant if the {bold push-url} is set.`,
192
- ],
193
- },
194
- },
195
- pull: {
196
- url: {
197
- type: v.string().optional(),
198
- desc: [
199
- `The URL of the API server to which zero-cache will send named queries.`,
200
- ],
201
- },
202
- apiKey: {
203
- type: v.string().optional(),
204
- desc: [
205
- `An optional secret used to authorize zero-cache to call the API server handling reads.`,
206
- ],
207
- },
208
- forwardCookies: {
209
- type: v.boolean().default(false),
210
- desc: [
211
- `If true, zero-cache will forward cookies from the request to the pull URL.`,
212
- `This is useful for passing authentication cookies to the API server.`,
213
- `If false, cookies are not forwarded.`,
214
- ``,
215
- `Note that this option is only relevant if the {bold pull-url} is set.`,
216
- ],
217
- },
218
- },
202
+ push: pushOptions,
203
+ mutate: mutateOptions,
204
+ query: queryOptions,
219
205
  cvr: {
220
206
  db: {
221
207
  type: v.string().optional(),
@@ -505,13 +491,12 @@ export const zeroOptions = {
505
491
  },
506
492
  targetClientRowCount: {
507
493
  type: v.number().default(20_000),
508
- desc: [
509
- 'The target number of rows to keep per client in the client side cache.',
510
- 'This limit is a soft limit. When the number of rows in the cache exceeds',
511
- 'this limit, zero-cache will evict inactive queries in order of ttl-based expiration.',
512
- 'Active queries, on the other hand, are never evicted and are allowed to use more',
513
- 'rows than the limit.',
494
+ deprecated: [
495
+ 'This option is no longer used and will be removed in a future version.',
496
+ 'The client-side cache no longer enforces a row limit. Instead, TTL-based expiration',
497
+ 'automatically manages cache size to prevent unbounded growth.',
514
498
  ],
499
+ hidden: true,
515
500
  },
516
501
  lazyStartup: {
517
502
  type: v.boolean().default(false),
@@ -528,6 +513,15 @@ export const zeroOptions = {
528
513
  type: v.string().optional(),
529
514
  desc: [`The version string outputted to logs when the server starts up.`],
530
515
  },
516
+ enableUsageAnalytics: {
517
+ type: v.boolean().default(true),
518
+ desc: [
519
+ `Set to false to opt out of telemetry collection. `,
520
+ `This helps us improve Zero Cache by collecting`,
521
+ `anonymous usage statistics. Setting the DO_NOT_TRACK environment variable`,
522
+ `will also disable telemetry collection.`,
523
+ ],
524
+ },
531
525
  };
532
526
  export const ZERO_ENV_VAR_PREFIX = 'ZERO_';
533
527
  let loadedConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"zero-config.js","sourceRoot":"","sources":["../../../../../zero-cache/src/config/zero-config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAC,UAAU,EAAC,MAAM,kCAAkC,CAAC;AAC5D,OAAO,EACL,YAAY,GAGb,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,CAAC,MAAM,+BAA+B,CAAC;AACnD,OAAO,EAAC,iBAAiB,EAAC,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AACxD,OAAO,EACL,yBAAyB,EACzB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAG5B,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,EAAE,EAAE;QACF,IAAI,EAAE,CAAC;aACJ,MAAM,EAAE;aACR,OAAO,CAAC,MAAM,CAAC;aACf,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,sBAAsB,CAAC;QAC3E,IAAI,EAAE;YACJ,gCAAgC;YAChC,EAAE;YACF,+EAA+E;YAC/E,mFAAmF;YACnF,2BAA2B;YAC3B,EAAE;YACF,4EAA4E;YAC5E,4EAA4E;YAC5E,wFAAwF;YACxF,iDAAiD;YACjD,EAAE;YACF,yFAAyF;YACzF,yFAAyF;YACzF,gGAAgG;YAChG,EAAE;YACF,6EAA6E;YAC7E,4DAA4D;YAC5D,EAAE;YACF,6FAA6F;SAC9F;KACF;IAED,YAAY,EAAE;QACZ,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;QAC5C,IAAI,EAAE;YACJ,oEAAoE;YACpE,gEAAgE;YAChE,gDAAgD;YAChD,EAAE;YACF,6EAA6E;YAC7E,yDAAyD;YACzD,EAAE;YACF,wEAAwE;YACxE,EAAE;YACF,kFAAkF;YAClF,qFAAqF;YACrF,iFAAiF;YACjF,oBAAoB;SACrB;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,EAAE,EAAE;QACF,IAAI,EAAE,CAAC;aACJ,MAAM,EAAE;aACR,MAAM,CAAC,GAAG,EAAE;YACX,MAAM,IAAI,KAAK,CACb,uEAAuE,CAExE,CAAC;QACJ,CAAC,CAAC;aACD,QAAQ,EAAE;QACb,MAAM,EAAE,IAAI;KACb;IAED,GAAG,EAAE;QACH,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;QAC3B,IAAI,EAAE;YACJ,0EAA0E;YAC1E,yEAAyE;YACzE,8EAA8E;YAC9E,qEAAqE;SACtE;QACD,MAAM,EAAE,IAAI;KACb;CACF,CAAC;AAEF,MAAM,cAAc,GAAG;IACrB,IAAI,EAAE;QACJ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,IAAI,EAAE;YACJ,4DAA4D;YAC5D,2EAA2E;YAC3E,oBAAoB;SACrB;KACF;IAED,mBAAmB,EAAE;QACnB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,IAAI,EAAE;YACJ,kFAAkF;YAClF,8EAA8E;YAC9E,8EAA8E;YAC9E,+BAA+B;SAChC;KACF;CACF,CAAC;AAIF,MAAM,oBAAoB,GAAG;IAC3B,GAAG,EAAE;QACH,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,IAAI,EAAE;YACJ,sEAAsE;YACtE,yCAAyC;SAC1C;KACF;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;QAChC,IAAI,EAAE;YACJ,+EAA+E;SAChF;KACF;CACF,CAAC;AAIF,MAAM,WAAW,GAAG;IAClB,GAAG,EAAE;QACH,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,IAAI,EAAE;YACJ,sHAAsH;SACvH;KACF;IACD,OAAO,EAAE;QACP,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,IAAI,EAAE;YACJ,wHAAwH;SACzH;KACF;IACD,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,IAAI,EAAE;YACJ,2GAA2G;SAC5G;KACF;CACF,CAAC;AAIF,4EAA4E;AAC5E,8EAA8E;AAC9E,yBAAyB;AACzB,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,QAAQ,EAAE;QACR,EAAE,EAAE;YACF,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;YAChB,IAAI,EAAE;gBACJ,iDAAiD;gBACjD,mEAAmE;aACpE;SACF;QAED,IAAI,EAAE;YACJ,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;YAClD,IAAI,EAAE;gBACJ,qEAAqE;gBACrE,oEAAoE;gBACpE,oEAAoE;gBACpE,uEAAuE;aACxE;YACD,MAAM,EAAE,IAAI,EAAE,iDAAiD;SAChE;QAED,QAAQ,EAAE;YACR,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,IAAI,EAAE;gBACJ,oEAAoE;gBACpE,wEAAwE;gBACxE,oEAAoE;gBACpE,qBAAqB;gBACrB,EAAE;gBACF,kEAAkE;gBAClE,4EAA4E;aAC7E;SACF;QAED,iBAAiB,EAAE;YACjB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC3B,MAAM,EAAE,IAAI,EAAE,0CAA0C;SACzD;KACF;IAED,IAAI,EAAE;QACJ,GAAG,EAAE;YACH,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,0CAA0C;YACvE,IAAI,EAAE;gBACJ,oEAAoE;aACrE;SACF;QACD,MAAM,EAAE;YACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC3B,IAAI,EAAE;gBACJ,yFAAyF;aAC1F;SACF;QACD,cAAc,EAAE;YACd,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;YAChC,IAAI,EAAE;gBACJ,4EAA4E;gBAC5E,sEAAsE;gBACtE,sCAAsC;gBACtC,EAAE;gBACF,uEAAuE;aACxE;SACF;KACF;IAED,IAAI,EAAE;QACJ,GAAG,EAAE;YACH,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC3B,IAAI,EAAE;gBACJ,wEAAwE;aACzE;SACF;QACD,MAAM,EAAE;YACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC3B,IAAI,EAAE;gBACJ,wFAAwF;aACzF;SACF;QACD,cAAc,EAAE;YACd,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;YAChC,IAAI,EAAE;gBACJ,4EAA4E;gBAC5E,sEAAsE;gBACtE,sCAAsC;gBACtC,EAAE;gBACF,uEAAuE;aACxE;SACF;KACF;IAED,GAAG,EAAE;QACH,EAAE,EAAE;YACF,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC3B,IAAI,EAAE;gBACJ,iFAAiF;gBACjF,oFAAoF;gBACpF,sDAAsD;aACvD;SACF;QAED,QAAQ,EAAE;YACR,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,IAAI,EAAE;gBACJ,gEAAgE;gBAChE,8CAA8C;gBAC9C,EAAE;gBACF,kEAAkE;gBAClE,4EAA4E;aAC7E;SACF;QAED,iBAAiB,EAAE;YACjB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC3B,MAAM,EAAE,IAAI,EAAE,0CAA0C;SACzD;KACF;IAED,mBAAmB,EAAE;QACnB,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;QAC5B,IAAI,EAAE;YACJ,uEAAuE;YACvE,kEAAkE;YAClE,sDAAsD;SACvD;KACF;IAED,MAAM,EAAE;QACN,EAAE,EAAE;YACF,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC3B,IAAI,EAAE;gBACJ,8EAA8E;gBAC9E,+EAA+E;gBAC/E,6EAA6E;aAC9E;SACF;QAED,QAAQ,EAAE;YACR,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;YAC3B,IAAI,EAAE;gBACJ,mEAAmE;gBACnE,4DAA4D;gBAC5D,8CAA8C;aAC/C;SACF;KACF;IAED,OAAO,EAAE,cAAc;IAEvB,GAAG,EAAE,UAAU;IAEf,GAAG,EAAE,UAAU;IAEf,KAAK,EAAE,YAAY;IAEnB,IAAI,EAAE,WAAW;IAEjB,IAAI,EAAE;QACJ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QAC9B,IAAI,EAAE,CAAC,gCAAgC,CAAC;KACzC;IAED,cAAc,EAAE;QACd,GAAG,EAAE;YACH,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC3B,IAAI,EAAE;gBACJ,oEAAoE;gBACpE,gFAAgF;gBAChF,qFAAqF;gBACrF,eAAe;aAChB;SACF;QAED,IAAI,EAAE;YACJ,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;YAClE,IAAI,EAAE;gBACJ,4FAA4F;gBAC5F,uFAAuF;gBACvF,uEAAuE;gBACvE,EAAE;gBACF,2EAA2E;gBAC3E,yFAAyF;gBACzF,4DAA4D;gBAC5D,EAAE;gBACF,6EAA6E;aAC9E;SACF;QAED,IAAI,EAAE;YACJ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC3B,IAAI,EAAE;gBACJ,wEAAwE;gBACxE,gFAAgF;gBAChF,oFAAoF;gBACpF,EAAE;gBACF,gDAAgD;aACjD;SACF;QAED,OAAO,EAAE;YACP,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC3B,UAAU,EAAE;gBACV,kEAAkE;aACnE;YACD,MAAM,EAAE,IAAI;SACb;QAED,QAAQ,EAAE;YACR,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;YAC/C,UAAU,EAAE;gBACV,kEAAkE;aACnE;YACD,MAAM,EAAE,IAAI;SACb;QAED,6BAA6B,EAAE;YAC7B,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC;gBAChC,KAAK,EAAE,QAAQ;gBACf,IAAI,EAAE,WAAW;aAClB,CAAC;YACF,IAAI,EAAE;gBACJ,oFAAoF;gBACpF,kFAAkF;gBAClF,uFAAuF;gBACvF,4CAA4C;aAC7C;YACD,+EAA+E;YAC/E,2EAA2E;YAC3E,8EAA8E;YAC9E,MAAM,EAAE,IAAI;SACb;KACF;IAED,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,IAAI,EAAE;YACJ,yDAAyD;YACzD,EAAE;YACF,kFAAkF;YAClF,mFAAmF;YACnF,0DAA0D;SAC3D;KACF;IAED,oBAAoB;IAEpB,cAAc,EAAE;QACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,IAAI,EAAE;YACJ,kDAAkD;YAClD,4DAA4D;YAC5D,iEAAiE;YACjE,2DAA2D;SAC5D;KACF;IAED,SAAS,EAAE;QACT,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,IAAI,EAAE;YACJ,uEAAuE;YACvE,4EAA4E;YAC5E,2EAA2E;YAC3E,4EAA4E;YAC5E,8EAA8E;YAC9E,sDAAsD;YACtD,EAAE;YACF,+EAA+E;YAC/E,6EAA6E;YAC7E,0EAA0E;YAC1E,uDAAuD;SACxD;KACF;IAED,aAAa,EAAE;QACb,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,IAAI,EAAE;YACJ,4EAA4E;YAC5E,kBAAkB;SACnB;KACF;IAED,UAAU,EAAE;QACV,UAAU,EAAE;YACV,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC3B,IAAI,EAAE,CAAC,2CAA2C,CAAC;SACpD;QAED,UAAU,EAAE;YACV,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,sCAAsC,CAAC;YAChE,IAAI,EAAE;gBACJ,4EAA4E;gBAC5E,2EAA2E;gBAC3E,4BAA4B;gBAC5B,4CAA4C;gBAC5C,iEAAiE;gBACjE,sDAAsD;gBACtD,2CAA2C;aAC5C;SACF;QAED,QAAQ,EAAE;YACR,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;SACvE;QAED,SAAS,EAAE;YACT,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC3B,IAAI,EAAE;gBACJ,qEAAqE;gBACrE,2DAA2D;gBAC3D,mFAAmF;aACpF;SACF;QAED,IAAI,EAAE;YACJ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC3B,IAAI,EAAE;gBACJ,6EAA6E;gBAC7E,+DAA+D;gBAC/D,EAAE;gBACF,gDAAgD;aACjD;SACF;QAED,qBAAqB,EAAE;YACrB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,IAAI,EAAE;gBACJ,4EAA4E;gBAC5E,0EAA0E;gBAC1E,iFAAiF;gBACjF,iFAAiF;gBACjF,6CAA6C;aAC9C;SACF;QAED,gCAAgC,EAAE;YAChC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,IAAI,EAAE;gBACJ,4EAA4E;gBAC5E,6EAA6E;gBAC7E,+EAA+E;gBAC/E,iDAAiD;aAClD;SACF;QAED,2BAA2B,EAAE;YAC3B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,IAAI,EAAE;gBACJ,wEAAwE;gBACxE,uEAAuE;gBACvE,wEAAwE;gBACxE,wEAAwE;gBACxE,8DAA8D;aAC/D;SACF;QAED,kBAAkB,EAAE;YAClB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,IAAI,EAAE;gBACJ,qEAAqE;gBACrE,iDAAiD;aAClD;SACF;QAED,oBAAoB,EAAE;YACpB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,IAAI,EAAE;gBACJ,wEAAwE;gBACxE,8EAA8E;aAC/E;SACF;QAED,aAAa,EAAE;YACb,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;YAC1C,IAAI,EAAE;gBACJ,uEAAuE;gBACvE,2EAA2E;gBAC3E,qEAAqE;aACtE;SACF;KACF;IAED,eAAe,EAAE;QACf,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,IAAI,EAAE;YACJ,wEAAwE;SACzE;KACF;IAED,WAAW,EAAE;QACX,gBAAgB,EAAE;YAChB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;YAC3B,IAAI,EAAE;gBACJ,yEAAyE;gBACzE,8EAA8E;gBAC9E,6EAA6E;gBAC7E,kFAAkF;gBAClF,2EAA2E;aAC5E;SACF;QAED,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YAC5B,MAAM,EAAE,IAAI;YACZ,IAAI,EAAE;gBACJ,mFAAmF;gBACnF,+CAA+C;aAChD;SACF;KACF;IAED,QAAQ,EAAE;QACR,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,IAAI,EAAE,CAAC,+DAA+D,CAAC;QACvE,MAAM,EAAE,IAAI;KACb;IAED,oBAAoB,EAAE;QACpB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;QAChC,IAAI,EAAE;YACJ,wEAAwE;YACxE,0EAA0E;YAC1E,sFAAsF;YACtF,kFAAkF;YAClF,sBAAsB;SACvB;KACF;IAED,WAAW,EAAE;QACX,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;QAChC,IAAI,EAAE;YACJ,gEAAgE;YAChE,EAAE;YACF,4EAA4E;YAC5E,uFAAuF;YACvF,EAAE;YACF,+CAA+C;SAChD;KACF;IAED,aAAa,EAAE;QACb,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,IAAI,EAAE,CAAC,iEAAiE,CAAC;KAC1E;CACF,CAAC;AAIF,MAAM,CAAC,MAAM,mBAAmB,GAAG,OAAO,CAAC;AAE3C,IAAI,YAAoD,CAAC;AAEzD,MAAM,UAAU,aAAa,CAAC,OAA4C,EAAE;IAC1E,IAAI,CAAC,YAAY,IAAI,iBAAiB,EAAE,EAAE,CAAC;QACzC,YAAY,GAAG,YAAY,CAAC,WAAW,EAAE;YACvC,aAAa,EAAE,mBAAmB;YAClC,uBAAuB,EAAE,KAAK,EAAE,oCAAoC;YACpE,GAAG,IAAI;SACR,CAAC,CAAC;QAEH,IAAI,YAAY,CAAC,mBAAmB,EAAE,CAAC;YACrC,iBAAiB,CAAC,oBAAoB,GAAG,IAAI,CAAC;QAChD,CAAC;IACH,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC"}
1
+ {"version":3,"file":"zero-config.js","sourceRoot":"","sources":["../../../../../zero-cache/src/config/zero-config.ts"],"names":[],"mappings":"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"}
@@ -5,5 +5,18 @@ export type HeaderOptions = {
5
5
  token?: string | undefined;
6
6
  cookie?: string | undefined;
7
7
  };
8
- export declare function fetchFromAPIServer(url: string, shard: ShardID, headerOptions: HeaderOptions, queryParams: Record<string, string> | undefined, body: ReadonlyJSONValue): Promise<Response>;
8
+ export declare function fetchFromAPIServer(url: string, allowedUrls: string[], shard: ShardID, headerOptions: HeaderOptions, queryParams: Record<string, string> | undefined, body: ReadonlyJSONValue): Promise<Response>;
9
+ /**
10
+ * Returns true if:
11
+ * 1. the url is an exact match with one of the allowedUrls
12
+ * 2. an "allowedUrl" has a wildcard for a subdomain, e.g. "https://*.example.com" and the url matches that pattern
13
+ *
14
+ * Valid wildcard patterns:
15
+ * - "https://*.example.com" matches "https://api.example.com" and "https://www.example.com"
16
+ * - "https://*.example.com" does not match "https://example.com" (no subdomain)
17
+ * - "https://*.example.com" does not match "https://api.example.com/path" (no trailing path)
18
+ * - "https://*.*.example.com" matches "https://api.v1.example.com" and "https://www.v2.example.com"
19
+ * - "https://*.*.example.com" does not match "https://api.example.com" (only one subdomain)
20
+ */
21
+ export declare function urlMatch(url: string, allowedUrls: string[]): boolean;
9
22
  //# sourceMappingURL=fetch.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/custom/fetch.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,OAAO,EAAC,MAAM,oBAAoB,CAAC;AAChE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,6BAA6B,CAAC;AAKnE,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,CAAC;AAEF,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,OAAO,EACd,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAC/C,IAAI,EAAE,iBAAiB,qBA2DxB"}
1
+ {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/custom/fetch.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,OAAO,EAAC,MAAM,oBAAoB,CAAC;AAChE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,6BAA6B,CAAC;AAKnE,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,CAAC;AAEF,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EAAE,EACrB,KAAK,EAAE,OAAO,EACd,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAC/C,IAAI,EAAE,iBAAiB,qBAgExB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CA+CpE"}
@@ -3,7 +3,10 @@ import { upstreamSchema } from "../types/shards.js";
3
3
  import { ErrorForClient } from "../types/error-for-client.js";
4
4
  import { ErrorKind } from "../../../zero-protocol/src/error-kind.js";
5
5
  const reservedParams = ['schema', 'appID'];
6
- export async function fetchFromAPIServer(url, shard, headerOptions, queryParams, body) {
6
+ export async function fetchFromAPIServer(url, allowedUrls, shard, headerOptions, queryParams, body) {
7
+ if (!urlMatch(url, allowedUrls)) {
8
+ throw new Error(`URL "${url}" is not allowed by the ZERO_MUTATE/QUERY_URL configuration`);
9
+ }
7
10
  const headers = {
8
11
  'Content-Type': 'application/json',
9
12
  };
@@ -52,4 +55,56 @@ export async function fetchFromAPIServer(url, shard, headerOptions, queryParams,
52
55
  }
53
56
  return response;
54
57
  }
58
+ /**
59
+ * Returns true if:
60
+ * 1. the url is an exact match with one of the allowedUrls
61
+ * 2. an "allowedUrl" has a wildcard for a subdomain, e.g. "https://*.example.com" and the url matches that pattern
62
+ *
63
+ * Valid wildcard patterns:
64
+ * - "https://*.example.com" matches "https://api.example.com" and "https://www.example.com"
65
+ * - "https://*.example.com" does not match "https://example.com" (no subdomain)
66
+ * - "https://*.example.com" does not match "https://api.example.com/path" (no trailing path)
67
+ * - "https://*.*.example.com" matches "https://api.v1.example.com" and "https://www.v2.example.com"
68
+ * - "https://*.*.example.com" does not match "https://api.example.com" (only one subdomain)
69
+ */
70
+ export function urlMatch(url, allowedUrls) {
71
+ assert(url.includes('*') === false, 'Client provided URLs may not include `*`');
72
+ // ignore query parameters in the URL
73
+ url = url.split('?')[0];
74
+ for (let allowedUrl of allowedUrls) {
75
+ // ignore query parameters in the allowed URL
76
+ allowedUrl = allowedUrl.split('?')[0];
77
+ if (url === allowedUrl) {
78
+ return true; // exact match
79
+ }
80
+ const parts = allowedUrl.split('*');
81
+ if (parts.length === 1) {
82
+ continue; // no wildcard, already checked above
83
+ }
84
+ let currentStr = url;
85
+ for (let i = 0; i < parts.length; i++) {
86
+ const part = parts[i];
87
+ if (!currentStr.startsWith(part)) {
88
+ break;
89
+ }
90
+ currentStr = currentStr.slice(part.length);
91
+ if (currentStr === '' && i < parts.length - 1) {
92
+ // if we reach the end of the string but still have more parts to match, it's not a match
93
+ break;
94
+ }
95
+ else if (currentStr === '' && i === parts.length - 1) {
96
+ // if we reach the end of the string and this is the last part, it's a match
97
+ return true;
98
+ }
99
+ // consume the rest of the string up to a .
100
+ const nextDotIndex = currentStr.indexOf('.');
101
+ if (nextDotIndex === -1) {
102
+ // no dot? then the wildcard rules don't apply, so we can stop checking
103
+ break;
104
+ }
105
+ currentStr = currentStr.slice(nextDotIndex);
106
+ }
107
+ }
108
+ return false;
109
+ }
55
110
  //# sourceMappingURL=fetch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../../../zero-cache/src/custom/fetch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,gCAAgC,CAAC;AACtD,OAAO,EAAC,cAAc,EAAe,MAAM,oBAAoB,CAAC;AAEhE,OAAO,EAAC,cAAc,EAAC,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAC,SAAS,EAAC,MAAM,0CAA0C,CAAC;AAEnE,MAAM,cAAc,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAO3C,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,GAAW,EACX,KAAc,EACd,aAA4B,EAC5B,WAA+C,EAC/C,IAAuB;IAEvB,MAAM,OAAO,GAA2B;QACtC,cAAc,EAAE,kBAAkB;KACnC,CAAC;IAEF,IAAI,aAAa,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACvC,OAAO,CAAC,WAAW,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC;IAC9C,CAAC;IACD,IAAI,aAAa,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QACtC,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,aAAa,CAAC,KAAK,EAAE,CAAC;IAC7D,CAAC;IACD,IAAI,aAAa,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACvC,OAAO,CAAC,QAAQ,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC;IAC3C,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAClD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,EAAE,CAAC;QAC7D,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,cAAc,EAAE,CAAC;QACtC,MAAM,CACJ,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EACrB,yDAAyD,QAAQ,GAAG,CACrE,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/C,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAEpC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAClC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE;QAC9C,MAAM,EAAE,MAAM;QACd,OAAO;QACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;KAC3B,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,2EAA2E;QAC3E,kGAAkG;QAClG,QAAQ;QACR,6EAA6E;QAC7E,2EAA2E;QAC3E,EAAE;QACF,0EAA0E;QAC1E,sDAAsD;QACtD,sEAAsE;QACtE,yEAAyE;QACzE,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,IAAI,cAAc,CAAC;gBACvB,IAAI,EAAE,SAAS,CAAC,eAAe;gBAC/B,OAAO,EAAE,MAAM,QAAQ,CAAC,IAAI,EAAE;aAC/B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../../../zero-cache/src/custom/fetch.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ type HttpError = {
25
25
  export declare class CustomQueryTransformer {
26
26
  #private;
27
27
  constructor(config: {
28
- url: string;
28
+ url: string[];
29
29
  forwardCookies: boolean;
30
30
  }, shard: ShardID);
31
31
  transform(headerOptions: HeaderOptions, queries: Iterable<CustomQueryRecord>): Promise<(TransformedAndHashed | ErroredQuery)[] | HttpError>;
@@ -1 +1 @@
1
- {"version":3,"file":"transform-query.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/custom-queries/transform-query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAEL,KAAK,YAAY,EAGlB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAqB,KAAK,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAC1E,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,oBAAoB,CAAC;AAKhD,KAAK,SAAS,GAAG;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,qBAAa,sBAAsB;;gBAS/B,MAAM,EAAE;QACN,GAAG,EAAE,MAAM,CAAC;QACZ,cAAc,EAAE,OAAO,CAAC;KACzB,EACD,KAAK,EAAE,OAAO;IAOV,SAAS,CACb,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,QAAQ,CAAC,iBAAiB,CAAC,GACnC,OAAO,CAAC,CAAC,oBAAoB,GAAG,YAAY,CAAC,EAAE,GAAG,SAAS,CAAC;CAuEhE"}
1
+ {"version":3,"file":"transform-query.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/custom-queries/transform-query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAEL,KAAK,YAAY,EAGlB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAqB,KAAK,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAC1E,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,oBAAoB,CAAC;AAMhD,KAAK,SAAS,GAAG;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,qBAAa,sBAAsB;;gBAS/B,MAAM,EAAE;QACN,GAAG,EAAE,MAAM,EAAE,CAAC;QACd,cAAc,EAAE,OAAO,CAAC;KACzB,EACD,KAAK,EAAE,OAAO;IAOV,SAAS,CACb,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,QAAQ,CAAC,iBAAiB,CAAC,GACnC,OAAO,CAAC,CAAC,oBAAoB,GAAG,YAAY,CAAC,EAAE,GAAG,SAAS,CAAC;CA2EhE"}
@@ -3,6 +3,7 @@ import { fetchFromAPIServer } from "../custom/fetch.js";
3
3
  import * as v from "../../../shared/src/valita.js";
4
4
  import { hashOfAST } from "../../../zero-protocol/src/query-hash.js";
5
5
  import { TimedCache } from "../../../shared/src/cache.js";
6
+ import { must } from "../../../shared/src/must.js";
6
7
  /**
7
8
  * Transforms a custom query by calling the user's API server.
8
9
  * Caches the transformed queries for 5 seconds to avoid unnecessary API calls.
@@ -53,7 +54,7 @@ export class CustomQueryTransformer {
53
54
  if (request.length === 0) {
54
55
  return cachedResponses;
55
56
  }
56
- const response = await fetchFromAPIServer(this.#config.url, this.#shard, headerOptions, undefined, ['transform', request]);
57
+ const response = await fetchFromAPIServer(must(this.#config.url[0], 'A ZERO_QUERY_URL must be configured for custom queries'), this.#config.url, this.#shard, headerOptions, undefined, ['transform', request]);
57
58
  if (!response.ok) {
58
59
  return {
59
60
  error: 'http',
@@ -1 +1 @@
1
- {"version":3,"file":"transform-query.js","sourceRoot":"","sources":["../../../../../zero-cache/src/custom-queries/transform-query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transform-query.js","sourceRoot":"","sources":["../../../../../zero-cache/src/custom-queries/transform-query.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"histograms.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/observability/histograms.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,oBAAoB,CAAC;AA6BlD,wBAAgB,uBAAuB,uDAMtC;AAED,wBAAgB,8BAA8B,uDAM7C;AAED,wBAAgB,sBAAsB,uDAMrC;AAED,wBAAgB,iBAAiB,uDAMhC;AAED,wBAAgB,YAAY,uDAM3B;AAED,wBAAgB,QAAQ,uDAMvB;AAED,wBAAgB,aAAa,uDAM5B"}
1
+ {"version":3,"file":"histograms.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/observability/histograms.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,oBAAoB,CAAC;AAiBlD,wBAAgB,uBAAuB,uDAKtC;AAED,wBAAgB,8BAA8B,uDAK7C;AAED,wBAAgB,sBAAsB,uDAKrC;AAED,wBAAgB,iBAAiB,uDAKhC;AAED,wBAAgB,YAAY,uDAK3B;AAED,wBAAgB,QAAQ,uDAKvB;AAED,wBAAgB,aAAa,uDAE5B"}
@@ -1,39 +1,33 @@
1
1
  import { cache, getMeter } from "./view-syncer-instruments.js";
2
2
  const getOrCreate = cache();
3
- // Custom bucket boundaries optimized for millisecond timing
4
- const TIMING_BUCKETS = [0, 1, 5, 10, 25, 50, 100, 250, 500, 1000, 2500, 5000];
5
- function getOrCreateHistogram(name, description, buckets) {
3
+ function getOrCreateHistogram(name, description) {
6
4
  return getOrCreate(name, name => {
7
5
  const options = {
8
6
  description,
9
7
  unit: 'milliseconds',
10
8
  };
11
- // Use custom buckets if provided
12
- if (buckets) {
13
- options.boundaries = buckets;
14
- }
15
9
  return getMeter().createHistogram(name, options);
16
10
  });
17
11
  }
18
12
  export function wsMessageProcessingTime() {
19
- return getOrCreateHistogram('ws-message-processing-time', 'Time to process a websocket message. The `message.type` attribute is set in order to filter by message type.', TIMING_BUCKETS);
13
+ return getOrCreateHistogram('ws-message-processing-time', 'Time to process a websocket message. The `message.type` attribute is set in order to filter by message type.');
20
14
  }
21
15
  export function replicationEventProcessingTime() {
22
- return getOrCreateHistogram('replication-event-processing-time', 'Time to process a replication event.', TIMING_BUCKETS);
16
+ return getOrCreateHistogram('replication-event-processing-time', 'Time to process a replication event.');
23
17
  }
24
18
  export function transactionAdvanceTime() {
25
- return getOrCreateHistogram('cg-advance-time', 'Time to advance all queries for a given client group after applying a new transaction to the replica.', TIMING_BUCKETS);
19
+ return getOrCreateHistogram('cg-advance-time', 'Time to advance all queries for a given client group after applying a new transaction to the replica.');
26
20
  }
27
21
  export function changeAdvanceTime() {
28
- return getOrCreateHistogram('change-advance-time', 'Time to advance all queries for a given client group for in response to a single change.', TIMING_BUCKETS);
22
+ return getOrCreateHistogram('change-advance-time', 'Time to advance all queries for a given client group for in response to a single change.');
29
23
  }
30
24
  export function cvrFlushTime() {
31
- return getOrCreateHistogram('cvr-flush-time', 'Time to flush a CVR transaction.', TIMING_BUCKETS);
25
+ return getOrCreateHistogram('cvr-flush-time', 'Time to flush a CVR transaction.');
32
26
  }
33
27
  export function pokeTime() {
34
- return getOrCreateHistogram('poke-flush-time', 'Time to poke to all clients.', TIMING_BUCKETS);
28
+ return getOrCreateHistogram('poke-flush-time', 'Time to poke to all clients.');
35
29
  }
36
30
  export function hydrationTime() {
37
- return getOrCreateHistogram('hydration-time', 'Time to hydrate a query.', TIMING_BUCKETS);
31
+ return getOrCreateHistogram('hydration-time', 'Time to hydrate a query.');
38
32
  }
39
33
  //# sourceMappingURL=histograms.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"histograms.js","sourceRoot":"","sources":["../../../../../zero-cache/src/observability/histograms.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,EAAE,QAAQ,EAAC,MAAM,8BAA8B,CAAC;AAE7D,MAAM,WAAW,GAAG,KAAK,EAAa,CAAC;AAEvC,4DAA4D;AAC5D,MAAM,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAE9E,SAAS,oBAAoB,CAC3B,IAAY,EACZ,WAAmB,EACnB,OAAkB;IAElB,OAAO,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;QAC9B,MAAM,OAAO,GACX;YACE,WAAW;YACX,IAAI,EAAE,cAAc;SACrB,CAAC;QAEJ,iCAAiC;QACjC,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC;QAC/B,CAAC;QAED,OAAO,QAAQ,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,oBAAoB,CACzB,4BAA4B,EAC5B,8GAA8G,EAC9G,cAAc,CACf,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,8BAA8B;IAC5C,OAAO,oBAAoB,CACzB,mCAAmC,EACnC,sCAAsC,EACtC,cAAc,CACf,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,OAAO,oBAAoB,CACzB,iBAAiB,EACjB,uGAAuG,EACvG,cAAc,CACf,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO,oBAAoB,CACzB,qBAAqB,EACrB,0FAA0F,EAC1F,cAAc,CACf,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,OAAO,oBAAoB,CACzB,gBAAgB,EAChB,kCAAkC,EAClC,cAAc,CACf,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,QAAQ;IACtB,OAAO,oBAAoB,CACzB,iBAAiB,EACjB,8BAA8B,EAC9B,cAAc,CACf,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,oBAAoB,CACzB,gBAAgB,EAChB,0BAA0B,EAC1B,cAAc,CACf,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"histograms.js","sourceRoot":"","sources":["../../../../../zero-cache/src/observability/histograms.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,EAAE,QAAQ,EAAC,MAAM,8BAA8B,CAAC;AAE7D,MAAM,WAAW,GAAG,KAAK,EAAa,CAAC;AAEvC,SAAS,oBAAoB,CAAC,IAAY,EAAE,WAAmB;IAC7D,OAAO,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;QAC9B,MAAM,OAAO,GACX;YACE,WAAW;YACX,IAAI,EAAE,cAAc;SACrB,CAAC;QAEJ,OAAO,QAAQ,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,oBAAoB,CACzB,4BAA4B,EAC5B,8GAA8G,CAC/G,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,8BAA8B;IAC5C,OAAO,oBAAoB,CACzB,mCAAmC,EACnC,sCAAsC,CACvC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,OAAO,oBAAoB,CACzB,iBAAiB,EACjB,uGAAuG,CACxG,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO,oBAAoB,CACzB,qBAAqB,EACrB,0FAA0F,CAC3F,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,OAAO,oBAAoB,CACzB,gBAAgB,EAChB,kCAAkC,CACnC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,QAAQ;IACtB,OAAO,oBAAoB,CACzB,iBAAiB,EACjB,8BAA8B,CAC/B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,oBAAoB,CAAC,gBAAgB,EAAE,0BAA0B,CAAC,CAAC;AAC5E,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { LogContext } from '@rocicorp/logger';
2
+ import { type ZeroConfig } from '../config/zero-config.js';
3
+ export declare const startAnonymousTelemetry: (lc?: LogContext, config?: ZeroConfig) => void;
4
+ export declare const recordMutation: (count?: number) => void;
5
+ export declare const recordRowsSynced: (count: number) => void;
6
+ export declare const recordConnectionSuccess: () => void;
7
+ export declare const recordConnectionAttempted: () => void;
8
+ export declare const shutdownAnonymousTelemetry: () => void;
9
+ //# sourceMappingURL=anonymous-otel-start.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anonymous-otel-start.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/server/anonymous-otel-start.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAgB,KAAK,UAAU,EAAC,MAAM,0BAA0B,CAAC;AA2VxE,eAAO,MAAM,uBAAuB,GAAI,KAAK,UAAU,EAAE,SAAS,UAAU,SAC/C,CAAC;AAC9B,eAAO,MAAM,cAAc,GAAI,cAAS,SAAoC,CAAC;AAC7E,eAAO,MAAM,gBAAgB,GAAI,OAAO,MAAM,SACX,CAAC;AACpC,eAAO,MAAM,uBAAuB,YACC,CAAC;AACtC,eAAO,MAAM,yBAAyB,YACC,CAAC;AACxC,eAAO,MAAM,0BAA0B,YAA6B,CAAC"}