@rocicorp/zero 0.17.2025030300 → 0.17.2025030600

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 (151) hide show
  1. package/out/{chunk-BBNRRMOA.js → chunk-XXZWDMNW.js} +64 -44
  2. package/out/{chunk-BBNRRMOA.js.map → chunk-XXZWDMNW.js.map} +3 -3
  3. package/out/react.js +19 -11
  4. package/out/react.js.map +2 -2
  5. package/out/solid.js +8 -3
  6. package/out/solid.js.map +2 -2
  7. package/out/zero-cache/src/auth/read-authorizer.d.ts.map +1 -1
  8. package/out/zero-cache/src/auth/read-authorizer.js +0 -1
  9. package/out/zero-cache/src/auth/read-authorizer.js.map +1 -1
  10. package/out/zero-cache/src/config/zero-config.d.ts +22 -5
  11. package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
  12. package/out/zero-cache/src/config/zero-config.js +30 -15
  13. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  14. package/out/zero-cache/src/db/migration-lite.d.ts.map +1 -1
  15. package/out/zero-cache/src/db/migration-lite.js +12 -6
  16. package/out/zero-cache/src/db/migration-lite.js.map +1 -1
  17. package/out/zero-cache/src/db/pg-to-lite.d.ts +4 -0
  18. package/out/zero-cache/src/db/pg-to-lite.d.ts.map +1 -1
  19. package/out/zero-cache/src/db/pg-to-lite.js +14 -4
  20. package/out/zero-cache/src/db/pg-to-lite.js.map +1 -1
  21. package/out/zero-cache/src/server/change-streamer.js +7 -7
  22. package/out/zero-cache/src/server/change-streamer.js.map +1 -1
  23. package/out/zero-cache/src/server/main.d.ts.map +1 -1
  24. package/out/zero-cache/src/server/main.js +8 -2
  25. package/out/zero-cache/src/server/main.js.map +1 -1
  26. package/out/zero-cache/src/server/multi/config.d.ts +11 -7
  27. package/out/zero-cache/src/server/multi/config.d.ts.map +1 -1
  28. package/out/zero-cache/src/server/multi/config.js +1 -3
  29. package/out/zero-cache/src/server/multi/config.js.map +1 -1
  30. package/out/zero-cache/src/server/multi/run-worker.d.ts.map +1 -1
  31. package/out/zero-cache/src/server/multi/run-worker.js +1 -3
  32. package/out/zero-cache/src/server/multi/run-worker.js.map +1 -1
  33. package/out/zero-cache/src/server/replicator.js +1 -1
  34. package/out/zero-cache/src/server/replicator.js.map +1 -1
  35. package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
  36. package/out/zero-cache/src/server/syncer.js +10 -9
  37. package/out/zero-cache/src/server/syncer.js.map +1 -1
  38. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts +1 -1
  39. package/out/zero-cache/src/services/change-source/pg/change-source.d.ts.map +1 -1
  40. package/out/zero-cache/src/services/change-source/pg/change-source.js +12 -3
  41. package/out/zero-cache/src/services/change-source/pg/change-source.js.map +1 -1
  42. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts +1 -0
  43. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts.map +1 -1
  44. package/out/zero-cache/src/services/change-source/pg/initial-sync.js +33 -8
  45. package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -1
  46. package/out/zero-cache/src/services/change-source/pg/sync-schema.d.ts.map +1 -1
  47. package/out/zero-cache/src/services/change-source/pg/sync-schema.js +9 -0
  48. package/out/zero-cache/src/services/change-source/pg/sync-schema.js.map +1 -1
  49. package/out/zero-cache/src/services/litestream/commands.d.ts +1 -1
  50. package/out/zero-cache/src/services/litestream/commands.d.ts.map +1 -1
  51. package/out/zero-cache/src/services/litestream/commands.js +3 -3
  52. package/out/zero-cache/src/services/litestream/commands.js.map +1 -1
  53. package/out/zero-cache/src/services/mutagen/mutagen.js +1 -1
  54. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  55. package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts +7 -0
  56. package/out/zero-cache/src/services/replicator/schema/replication-state.d.ts.map +1 -1
  57. package/out/zero-cache/src/services/replicator/schema/replication-state.js +29 -1
  58. package/out/zero-cache/src/services/replicator/schema/replication-state.js.map +1 -1
  59. package/out/zero-cache/src/services/view-syncer/client-handler.d.ts +1 -1
  60. package/out/zero-cache/src/services/view-syncer/client-handler.d.ts.map +1 -1
  61. package/out/zero-cache/src/services/view-syncer/client-handler.js +2 -1
  62. package/out/zero-cache/src/services/view-syncer/client-handler.js.map +1 -1
  63. package/out/zero-cache/src/services/view-syncer/cvr-store.js +1 -1
  64. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -1
  65. package/out/zero-cache/src/services/view-syncer/cvr.d.ts +0 -1
  66. package/out/zero-cache/src/services/view-syncer/cvr.d.ts.map +1 -1
  67. package/out/zero-cache/src/services/view-syncer/cvr.js +7 -16
  68. package/out/zero-cache/src/services/view-syncer/cvr.js.map +1 -1
  69. package/out/zero-cache/src/services/view-syncer/database-storage.d.ts +2 -0
  70. package/out/zero-cache/src/services/view-syncer/database-storage.d.ts.map +1 -1
  71. package/out/zero-cache/src/services/view-syncer/database-storage.js +8 -3
  72. package/out/zero-cache/src/services/view-syncer/database-storage.js.map +1 -1
  73. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts +11 -3
  74. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  75. package/out/zero-cache/src/services/view-syncer/view-syncer.js +40 -17
  76. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  77. package/out/zero-cache/src/types/lite.d.ts +2 -2
  78. package/out/zero-cache/src/types/lite.d.ts.map +1 -1
  79. package/out/zero-cache/src/types/lite.js +9 -4
  80. package/out/zero-cache/src/types/lite.js.map +1 -1
  81. package/out/zero-cache/src/types/pg.d.ts +7 -3
  82. package/out/zero-cache/src/types/pg.d.ts.map +1 -1
  83. package/out/zero-cache/src/types/pg.js +11 -5
  84. package/out/zero-cache/src/types/pg.js.map +1 -1
  85. package/out/zero-cache/src/workers/connection.d.ts.map +1 -1
  86. package/out/zero-cache/src/workers/connection.js +39 -20
  87. package/out/zero-cache/src/workers/connection.js.map +1 -1
  88. package/out/zero-cache/src/workers/replicator.d.ts +2 -1
  89. package/out/zero-cache/src/workers/replicator.d.ts.map +1 -1
  90. package/out/zero-cache/src/workers/replicator.js +42 -17
  91. package/out/zero-cache/src/workers/replicator.js.map +1 -1
  92. package/out/zero-cache/src/workers/syncer-ws-message-handler.d.ts +4 -4
  93. package/out/zero-cache/src/workers/syncer-ws-message-handler.d.ts.map +1 -1
  94. package/out/zero-cache/src/workers/syncer-ws-message-handler.js +5 -2
  95. package/out/zero-cache/src/workers/syncer-ws-message-handler.js.map +1 -1
  96. package/out/zero-client/src/client/custom.d.ts +2 -11
  97. package/out/zero-client/src/client/custom.d.ts.map +1 -1
  98. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  99. package/out/zero-client/src/mod.d.ts +1 -0
  100. package/out/zero-client/src/mod.d.ts.map +1 -1
  101. package/out/zero-pg/src/custom.d.ts +1 -2
  102. package/out/zero-pg/src/custom.d.ts.map +1 -1
  103. package/out/zero-pg/src/custom.js.map +1 -1
  104. package/out/zero-pg/src/mod.d.ts +1 -2
  105. package/out/zero-pg/src/mod.d.ts.map +1 -1
  106. package/out/zero-pg/src/query.d.ts +3 -4
  107. package/out/zero-pg/src/query.d.ts.map +1 -1
  108. package/out/zero-pg/src/query.js +5 -7
  109. package/out/zero-pg/src/query.js.map +1 -1
  110. package/out/zero-pg/src/web.d.ts +1 -1
  111. package/out/zero-pg/src/web.d.ts.map +1 -1
  112. package/out/zero-pg/src/web.js.map +1 -1
  113. package/out/zero-protocol/src/close-connection.d.ts +16 -0
  114. package/out/zero-protocol/src/close-connection.d.ts.map +1 -0
  115. package/out/zero-protocol/src/close-connection.js +17 -0
  116. package/out/zero-protocol/src/close-connection.js.map +1 -0
  117. package/out/zero-protocol/src/up.d.ts +1 -1
  118. package/out/zero-protocol/src/up.d.ts.map +1 -1
  119. package/out/zero-protocol/src/up.js +2 -1
  120. package/out/zero-protocol/src/up.js.map +1 -1
  121. package/out/zero-react/src/use-query.d.ts +11 -2
  122. package/out/zero-react/src/use-query.d.ts.map +1 -1
  123. package/out/zero-solid/src/use-query.d.ts +4 -1
  124. package/out/zero-solid/src/use-query.d.ts.map +1 -1
  125. package/out/zero.js +1 -1
  126. package/out/zql/src/mutate/custom.d.ts +36 -1
  127. package/out/zql/src/mutate/custom.d.ts.map +1 -1
  128. package/out/zql/src/mutate/custom.js.map +1 -1
  129. package/out/zql/src/query/query-impl.d.ts +8 -8
  130. package/out/zql/src/query/query-impl.d.ts.map +1 -1
  131. package/out/zql/src/query/query-impl.js +29 -25
  132. package/out/zql/src/query/query-impl.js.map +1 -1
  133. package/out/zql/src/query/query-internal.d.ts +2 -2
  134. package/out/zql/src/query/query-internal.d.ts.map +1 -1
  135. package/out/zql/src/query/query.d.ts +10 -2
  136. package/out/zql/src/query/query.d.ts.map +1 -1
  137. package/out/zql/src/query/query.js +1 -1
  138. package/out/zql/src/query/query.js.map +1 -1
  139. package/out/zql/src/query/static-query.d.ts +1 -1
  140. package/out/zql/src/query/static-query.d.ts.map +1 -1
  141. package/out/zql/src/query/static-query.js +2 -2
  142. package/out/zql/src/query/static-query.js.map +1 -1
  143. package/out/zqlite/src/db.d.ts +3 -1
  144. package/out/zqlite/src/db.d.ts.map +1 -1
  145. package/out/zqlite/src/db.js +47 -0
  146. package/out/zqlite/src/db.js.map +1 -1
  147. package/package.json +2 -2
  148. package/out/zero-pg/src/db.d.ts +0 -27
  149. package/out/zero-pg/src/db.d.ts.map +0 -1
  150. package/out/zero-pg/src/db.js +0 -2
  151. package/out/zero-pg/src/db.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"lite.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/types/lite.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACV,MAAM,0CAA0C,CAAC;AAClD,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAElD,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,cAAc,CAAC;AAE3C,0DAA0D;AAC1D,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,UAAU,CAAC;AAEzE,MAAM,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;AAC9D,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC;AAQjC;;;GAGG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAoBpE;AAED,wBAAgB,UAAU,CACxB,GAAG,EAAE,QAAQ,EACb,KAAK,EAAE,aAAa,GACnB,aAAa,EAAE,CAIjB;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CACvB,GAAG,EAAE,iBAAiB,EACtB,MAAM,EAAE,MAAM,GACb,aAAa,CAUf;AAwBD,wBAAgB,+BAA+B,CAC7C,YAAY,EAAE,cAAc,GAC3B,WAAW,CAEb;AAcD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC;AAEpC;;GAEG;AACH,wBAAgB,cAAc,CAC5B,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,EACnC,QAAQ,EAAE,OAAO,GAChB,cAAc,CAShB;AAED,wBAAgB,gBAAgB,CAAC,cAAc,EAAE,cAAc,UAG9D;AAED,wBAAgB,gBAAgB,CAAC,cAAc,EAAE,cAAc,WAE9D;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,cAAc,EAAE,cAAc,GAC7B,SAAS,GAAG,SAAS,CAyDvB"}
1
+ {"version":3,"file":"lite.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/types/lite.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACV,MAAM,0CAA0C,CAAC;AAClD,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAElD,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,cAAc,CAAC;AAE3C,0DAA0D;AAC1D,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,UAAU,CAAC;AAEzE,MAAM,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;AAC9D,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC;AAQjC;;;GAGG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAoBpE;AAED,wBAAgB,UAAU,CACxB,GAAG,EAAE,QAAQ,EACb,KAAK,EAAE,aAAa,EACpB,YAAY,CAAC,EAAE,gBAAgB,GAC9B,aAAa,EAAE,CAIjB;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CACvB,GAAG,EAAE,iBAAiB,EACtB,MAAM,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,gBAAgB,GAC9B,aAAa,CAef;AAwBD,wBAAgB,+BAA+B,CAC7C,YAAY,EAAE,cAAc,GAC3B,WAAW,CAEb;AAcD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC;AAEpC;;GAEG;AACH,wBAAgB,cAAc,CAC5B,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,EACnC,QAAQ,EAAE,OAAO,GAChB,cAAc,CAShB;AAED,wBAAgB,gBAAgB,CAAC,cAAc,EAAE,cAAc,UAG9D;AAED,wBAAgB,gBAAgB,CAAC,cAAc,EAAE,cAAc,WAE9D;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,cAAc,EAAE,cAAc,GAC7B,SAAS,GAAG,SAAS,CAyDvB"}
@@ -28,8 +28,8 @@ export function liteRow(row, table) {
28
28
  liteValue(val, columnType(key, table)),
29
29
  ]));
30
30
  }
31
- export function liteValues(row, table) {
32
- return Object.entries(row).map(([col, val]) => liteValue(val, columnType(col, table)));
31
+ export function liteValues(row, table, jsonAsString) {
32
+ return Object.entries(row).map(([col, val]) => liteValue(val, columnType(col, table), jsonAsString));
33
33
  }
34
34
  /**
35
35
  * Postgres values types that are supported by SQLite are stored as-is.
@@ -41,13 +41,18 @@ export function liteValues(row, table) {
41
41
  * Note that this currently does not handle the `bytea[]` type, but that's
42
42
  * already a pretty questionable type.
43
43
  */
44
- export function liteValue(val, pgType) {
44
+ export function liteValue(val, pgType, jsonAsString) {
45
45
  if (val instanceof Uint8Array || val === null) {
46
46
  return val;
47
47
  }
48
48
  const valueType = dataTypeToZqlValueType(pgType);
49
49
  if (valueType === 'json') {
50
- return stringify(val); // JSON values are stored as stringified strings.
50
+ if (jsonAsString && typeof val === 'string') {
51
+ // JSON and JSONB values are already strings if the JSON was not parsed.
52
+ return val;
53
+ }
54
+ // Non-JSON/JSONB values will always appear as objects / arrays.
55
+ return stringify(val);
51
56
  }
52
57
  const obj = toLiteValue(val);
53
58
  return obj && typeof obj === 'object' ? stringify(obj) : obj;
@@ -1 +1 @@
1
- {"version":3,"file":"lite.js","sourceRoot":"","sources":["../../../../../zero-cache/src/types/lite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lite.js","sourceRoot":"","sources":["../../../../../zero-cache/src/types/lite.ts"],"names":[],"mappings":"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"}
@@ -17,8 +17,12 @@ declare function dateToUTCMidnight(date: string): number;
17
17
  * https://github.com/brianc/node-pg-types/blob/master/lib/textParsers.js
18
18
  */
19
19
  export type PostgresValueType = JSONValue | Uint8Array;
20
- /** Configures types for the Postgres.js client library (`postgres`). */
21
- export declare const postgresTypeConfig: () => {
20
+ /**
21
+ * Configures types for the Postgres.js client library (`postgres`).
22
+ *
23
+ * @param jsonAsString Keep JSON / JSONB values as strings instead of parsing.
24
+ */
25
+ export declare const postgresTypeConfig: (jsonAsString?: "json-as-string" | undefined) => {
22
26
  types: {
23
27
  bigint: postgres.PostgresType<bigint>;
24
28
  json: {
@@ -58,7 +62,7 @@ export type PostgresTransaction = postgres.TransactionSql<{
58
62
  export declare function pgClient(lc: LogContext, connectionURI: string, options?: postgres.Options<{
59
63
  bigint: PostgresType<bigint>;
60
64
  json: PostgresType<JSONValue>;
61
- }>): PostgresDB;
65
+ }>, jsonAsString?: 'json-as-string'): PostgresDB;
62
66
  export declare const typeNameByOID: Record<number, string>;
63
67
  export {};
64
68
  //# sourceMappingURL=pg.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pg.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/types/pg.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAE5C,OAAO,QAAQ,EAAE,EAAc,KAAK,YAAY,EAAC,MAAM,UAAU,CAAC;AAGlE,OAAO,EAAa,KAAK,SAAS,EAAC,MAAM,kBAAkB,CAAC;AAc5D,6EAA6E;AAC7E,wBAAgB,2BAA2B,SAqB1C;AAMD,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAyB7D;AAED,iBAAS,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAuBhD;AAED,iBAAS,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAG/C;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,UAAU,CAAC;AAEvD,wEAAwE;AACxE,eAAO,MAAM,kBAAkB;;;;gBAMJ,MAAM;kBACc,MAAM,EAAE;;;;;gBAMvB,MAAM;kBACP,MAAM,EAAE;;;;;gBAMZ,MAAM;kBACF,MAAM,EAAE;2BAClB,MAAM,GAAG,IAAI;;;;;;2BAUb,MAAM;uBACV,MAAM,GAAG,MAAM;;;CAG9B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,SAAS,CAAC;CACjB,CAAC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC,cAAc,CAAC;IACxD,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,SAAS,CAAC;CACjB,CAAC,CAAC;AAEH,wBAAgB,QAAQ,CACtB,EAAE,EAAE,UAAU,EACd,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC;IACzB,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IAC7B,IAAI,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;CAC/B,CAAC,GACD,UAAU,CAiCZ;AAED,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAKhD,CAAC"}
1
+ {"version":3,"file":"pg.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/types/pg.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAE5C,OAAO,QAAQ,EAAE,EAAc,KAAK,YAAY,EAAC,MAAM,UAAU,CAAC;AAGlE,OAAO,EAAa,KAAK,SAAS,EAAC,MAAM,kBAAkB,CAAC;AAc5D,6EAA6E;AAC7E,wBAAgB,2BAA2B,SAwB1C;AAMD,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAyB7D;AAED,iBAAS,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAuBhD;AAED,iBAAS,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAG/C;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,UAAU,CAAC;AAEvD;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,kBACd,gBAAgB,GAAG,SAAS;;;;gBAOlB,MAAM;kBACc,MAAM,EAAE;;;;;gBAMvB,MAAM;kBACP,MAAM,EAAE;;;;;gBAMZ,MAAM;kBACF,MAAM,EAAE;2BAClB,MAAM,GAAG,IAAI;;;;;;2BAUb,MAAM;uBACV,MAAM,GAAG,MAAM;;;CAG9B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,SAAS,CAAC;CACjB,CAAC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC,cAAc,CAAC;IACxD,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,SAAS,CAAC;CACjB,CAAC,CAAC;AAEH,wBAAgB,QAAQ,CACtB,EAAE,EAAE,UAAU,EACd,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC;IACzB,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IAC7B,IAAI,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;CAC/B,CAAC,EACF,YAAY,CAAC,EAAE,gBAAgB,GAC9B,UAAU,CAiCZ;AAED,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAKhD,CAAC"}
@@ -31,6 +31,8 @@ export function registerPostgresTypeParsers() {
31
31
  // Store dates as the epoch milliseconds at UTC midnight of the date.
32
32
  setTypeParser(builtins.DATE, dateToUTCMidnight);
33
33
  setTypeParser(builtinsDATEARRAY, val => array.parse(val, dateToUTCMidnight));
34
+ // TODO: Override JSON parsing and replicate as strings to eliminate the
35
+ // parse/serialize overhead.
34
36
  }
35
37
  const WITH_HH_MM_TIMEZONE = /[+-]\d\d:\d\d$/;
36
38
  const WITH_HH_TIMEZONE = /[+-]\d\d$/;
@@ -92,8 +94,12 @@ function dateToUTCMidnight(date) {
92
94
  const d = new Date(date);
93
95
  return Date.UTC(d.getUTCFullYear(), d.getUTCMonth(), d.getUTCDate());
94
96
  }
95
- /** Configures types for the Postgres.js client library (`postgres`). */
96
- export const postgresTypeConfig = () => ({
97
+ /**
98
+ * Configures types for the Postgres.js client library (`postgres`).
99
+ *
100
+ * @param jsonAsString Keep JSON / JSONB values as strings instead of parsing.
101
+ */
102
+ export const postgresTypeConfig = (jsonAsString) => ({
97
103
  // Type the type IDs as `number` so that Typescript doesn't complain about
98
104
  // referencing external types during type inference.
99
105
  types: {
@@ -102,7 +108,7 @@ export const postgresTypeConfig = () => ({
102
108
  to: builtins.JSON,
103
109
  from: [builtins.JSON, builtins.JSONB],
104
110
  serialize: BigIntJSON.stringify,
105
- parse: BigIntJSON.parse,
111
+ parse: jsonAsString ? (x) => x : BigIntJSON.parse,
106
112
  },
107
113
  // Timestamps are converted to PreciseDate objects.
108
114
  timestamp: {
@@ -129,7 +135,7 @@ export const postgresTypeConfig = () => ({
129
135
  },
130
136
  },
131
137
  });
132
- export function pgClient(lc, connectionURI, options) {
138
+ export function pgClient(lc, connectionURI, options, jsonAsString) {
133
139
  const onnotice = (n) => {
134
140
  // https://www.postgresql.org/docs/current/plpgsql-errors-and-messages.html#PLPGSQL-STATEMENTS-RAISE
135
141
  switch (n.severity) {
@@ -153,7 +159,7 @@ export function pgClient(lc, connectionURI, options) {
153
159
  // Set connections to expire between 5 and 10 minutes to free up state on PG.
154
160
  const maxLifetimeSeconds = randInt(5 * 60, 10 * 60);
155
161
  return postgres(connectionURI, {
156
- ...postgresTypeConfig(),
162
+ ...postgresTypeConfig(jsonAsString),
157
163
  onnotice,
158
164
  ['max_lifetime']: maxLifetimeSeconds,
159
165
  ['connect_timeout']: 60, // scale-from-zero dbs need more than 30 seconds
@@ -1 +1 @@
1
- {"version":3,"file":"pg.js","sourceRoot":"","sources":["../../../../../zero-cache/src/types/pg.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pg.js","sourceRoot":"","sources":["../../../../../zero-cache/src/types/pg.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/workers/connection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAEjD,OAAO,SAAS,MAAM,IAAI,CAAC;AAG3B,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,oCAAoC,CAAC;AAEnE,OAAO,EAAC,KAAK,SAAS,EAAC,MAAM,qCAAqC,CAAC;AAMnE,OAAO,EAAiB,KAAK,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAC/E,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,0CAA0C,CAAC;AAE5E,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,qBAAqB,CAAC;AAGhD,MAAM,MAAM,aAAa,GACrB;IACE,IAAI,EAAE,IAAI,CAAC;CACZ,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;CAClB,GACD;IACE,IAAI,EAAE,WAAW,CAAC;IAClB,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB,GACD;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;CAC5B,CAAC;AAEN,MAAM,WAAW,cAAc;IAC7B,aAAa,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;CACtD;AAED;;;;;;;GAOG;AACH,qBAAa,UAAU;;gBAYnB,EAAE,EAAE,UAAU,EACd,aAAa,EAAE,aAAa,EAC5B,EAAE,EAAE,SAAS,EACb,cAAc,EAAE,cAAc,EAC9B,OAAO,EAAE,MAAM,IAAI;IAqBrB;;;;;;OAMG;IACH,IAAI;IAsBJ,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE;IAoBxC,oBAAoB,CAAC,iBAAiB,EAAE,MAAM;IA2F9C,IAAI,CAAC,IAAI,EAAE,UAAU;IAIrB,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,OAAO;CAGjD;AAED,wBAAgB,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,QAEnD;AAED,wBAAgB,SAAS,CACvB,EAAE,EAAE,UAAU,EACd,EAAE,EAAE,SAAS,EACb,SAAS,EAAE,SAAS,EACpB,MAAM,CAAC,EAAE,OAAO,QAMjB"}
1
+ {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/workers/connection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAEjD,OAAO,SAAS,MAAM,IAAI,CAAC;AAQ3B,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,oCAAoC,CAAC;AAEnE,OAAO,EAAC,KAAK,SAAS,EAAC,MAAM,qCAAqC,CAAC;AAMnE,OAAO,EAAiB,KAAK,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAC/E,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,0CAA0C,CAAC;AAE5E,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,qBAAqB,CAAC;AAEhD,MAAM,MAAM,aAAa,GACrB;IACE,IAAI,EAAE,IAAI,CAAC;CACZ,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;CAClB,GACD;IACE,IAAI,EAAE,WAAW,CAAC;IAClB,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB,GACD;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;CAC5B,CAAC;AAEN,MAAM,WAAW,cAAc;IAC7B,aAAa,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;CACtD;AAED;;;;;;;GAOG;AACH,qBAAa,UAAU;;gBAYnB,EAAE,EAAE,UAAU,EACd,aAAa,EAAE,aAAa,EAC5B,EAAE,EAAE,SAAS,EACb,cAAc,EAAE,cAAc,EAC9B,OAAO,EAAE,MAAM,IAAI;IAqBrB;;;;;;OAMG;IACH,IAAI;IAsBJ,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE;IAoBxC,oBAAoB,CAAC,iBAAiB,EAAE,MAAM;IAgH9C,IAAI,CAAC,IAAI,EAAE,UAAU;IAIrB,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,OAAO;CAGjD;AAED,wBAAgB,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,QAEnD;AAED,wBAAgB,SAAS,CACvB,EAAE,EAAE,UAAU,EACd,EAAE,EAAE,SAAS,EACb,SAAS,EAAE,SAAS,EACpB,MAAM,CAAC,EAAE,OAAO,QAMjB"}
@@ -1,11 +1,12 @@
1
1
  import WebSocket from 'ws';
2
+ import { assert } from "../../../shared/src/asserts.js";
2
3
  import * as valita from "../../../shared/src/valita.js";
4
+ import { closeConnectionMessageSchema, } from "../../../zero-protocol/src/close-connection.js";
3
5
  import * as ErrorKind from "../../../zero-protocol/src/error-kind-enum.js";
4
6
  import {} from "../../../zero-protocol/src/error.js";
5
7
  import { MIN_SERVER_SUPPORTED_SYNC_PROTOCOL, PROTOCOL_VERSION, } from "../../../zero-protocol/src/protocol-version.js";
6
8
  import { upstreamSchema } from "../../../zero-protocol/src/up.js";
7
9
  import { findErrorForClient, getLogLevel } from "../types/error-for-client.js";
8
- import { assert } from "../../../shared/src/asserts.js";
9
10
  /**
10
11
  * Represents a connection between the client and server.
11
12
  *
@@ -106,31 +107,49 @@ export class Connection {
106
107
  return;
107
108
  }
108
109
  const result = await this.#messageHandler.handleMessage(msg);
109
- switch (result.type) {
110
- case 'fatal':
111
- this.#closeWithError(result.error);
112
- break;
113
- case 'ok':
114
- break;
115
- case 'stream': {
116
- assert(this.#outboundStream === undefined, 'Outbound stream already set for this connection!');
117
- this.#outboundStream = result.stream;
118
- void this.#proxyOutbound(result.stream);
119
- break;
120
- }
121
- case 'transient': {
122
- for (const error of result.errors) {
123
- this.sendError(error);
124
- }
125
- }
126
- }
110
+ return this.#handleMessageResult(result);
127
111
  }
128
112
  catch (e) {
129
113
  this.#closeWithThrown(e);
130
114
  }
131
115
  };
132
- #handleClose = (e) => {
116
+ #handleMessageResult(result) {
117
+ switch (result.type) {
118
+ case 'fatal':
119
+ this.#closeWithError(result.error);
120
+ break;
121
+ case 'ok':
122
+ break;
123
+ case 'stream': {
124
+ assert(this.#outboundStream === undefined, 'Outbound stream already set for this connection!');
125
+ this.#outboundStream = result.stream;
126
+ void this.#proxyOutbound(result.stream);
127
+ break;
128
+ }
129
+ case 'transient': {
130
+ for (const error of result.errors) {
131
+ this.sendError(error);
132
+ }
133
+ }
134
+ }
135
+ }
136
+ #handleClose = async (e) => {
133
137
  const { code, reason, wasClean } = e;
138
+ // Normal closure
139
+ if (code === 1000) {
140
+ let msg;
141
+ try {
142
+ const data = JSON.parse(reason);
143
+ msg = valita.parse(data, closeConnectionMessageSchema);
144
+ }
145
+ catch {
146
+ // failed to to parse reason as JSON.
147
+ this.#lc.warn?.(`failed to parse message "${reason}": ${String(e)}`);
148
+ return;
149
+ }
150
+ const result = await this.#messageHandler.handleMessage(msg);
151
+ this.#handleMessageResult(result);
152
+ }
134
153
  this.close('WebSocket close event', { code, reason, wasClean });
135
154
  };
136
155
  #handleError = (e) => {
@@ -1 +1 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../../../zero-cache/src/workers/connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../../../zero-cache/src/workers/connection.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,14 @@
1
1
  import { LogContext } from '@rocicorp/logger';
2
2
  import * as v from '../../../shared/src/valita.ts';
3
3
  import { Database } from '../../../zqlite/src/db.ts';
4
+ import type { ReplicaOptions } from '../config/zero-config.ts';
4
5
  import { Notifier } from '../services/replicator/notifier.ts';
5
6
  import type { ReplicaStateNotifier, Replicator } from '../services/replicator/replicator.ts';
6
7
  import type { Worker } from '../types/processes.ts';
7
8
  export declare const replicaFileModeSchema: v.UnionType<[v.Type<"serving">, v.Type<"serving-copy">, v.Type<"backup">]>;
8
9
  export type ReplicaFileMode = v.Infer<typeof replicaFileModeSchema>;
9
10
  export declare function replicaFileName(replicaFile: string, mode: ReplicaFileMode): string;
10
- export declare function setupReplica(lc: LogContext, mode: ReplicaFileMode, replicaDbFile: string): Database;
11
+ export declare function setupReplica(lc: LogContext, mode: ReplicaFileMode, replicaOptions: ReplicaOptions): Database;
11
12
  export declare function setUpMessageHandlers(lc: LogContext, replicator: Replicator, parent: Worker): void;
12
13
  export declare function handleSubscriptionsFrom(lc: LogContext, subscriber: Worker, notifier: ReplicaStateNotifier): void;
13
14
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"replicator.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/workers/replicator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,CAAC,MAAM,+BAA+B,CAAC;AACnD,OAAO,EAAC,QAAQ,EAAC,MAAM,2BAA2B,CAAC;AAEnD,OAAO,EAAC,QAAQ,EAAC,MAAM,oCAAoC,CAAC;AAC5D,OAAO,KAAK,EAEV,oBAAoB,EACpB,UAAU,EACX,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,uBAAuB,CAAC;AAElD,eAAO,MAAM,qBAAqB,4EAIjC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,UAEzE;AAoCD,wBAAgB,YAAY,CAC1B,EAAE,EAAE,UAAU,EACd,IAAI,EAAE,eAAe,EACrB,aAAa,EAAE,MAAM,GACpB,QAAQ,CAiCV;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,UAAU,EACd,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,QAGf;AAID,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,UAAU,EACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,oBAAoB,QAc/B;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,CAM5E;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,QAE1D"}
1
+ {"version":3,"file":"replicator.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/workers/replicator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,CAAC,MAAM,+BAA+B,CAAC;AACnD,OAAO,EAAC,QAAQ,EAAC,MAAM,2BAA2B,CAAC;AACnD,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,0BAA0B,CAAC;AAE7D,OAAO,EAAC,QAAQ,EAAC,MAAM,oCAAoC,CAAC;AAC5D,OAAO,KAAK,EAEV,oBAAoB,EACpB,UAAU,EACX,MAAM,sCAAsC,CAAC;AAK9C,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,uBAAuB,CAAC;AAElD,eAAO,MAAM,qBAAqB,4EAIjC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,UAEzE;AAqED,wBAAgB,YAAY,CAC1B,EAAE,EAAE,UAAU,EACd,IAAI,EAAE,eAAe,EACrB,cAAc,EAAE,cAAc,GAC7B,QAAQ,CAkCV;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,UAAU,EACd,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,QAGf;AAID,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,UAAU,EACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,oBAAoB,QAc/B;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,CAM5E;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,QAE1D"}
@@ -3,18 +3,44 @@ import * as v from "../../../shared/src/valita.js";
3
3
  import { Database } from "../../../zqlite/src/db.js";
4
4
  import { deleteLiteDB } from "../db/delete-lite-db.js";
5
5
  import { Notifier } from "../services/replicator/notifier.js";
6
+ import { getAscendingEvents, recordEvent, } from "../services/replicator/schema/replication-state.js";
6
7
  export const replicaFileModeSchema = v.union(v.literal('serving'), v.literal('serving-copy'), v.literal('backup'));
7
8
  export function replicaFileName(replicaFile, mode) {
8
9
  return mode === 'serving-copy' ? `${replicaFile}-serving-copy` : replicaFile;
9
10
  }
10
- function connect(lc, replicaDbFile, walMode) {
11
- const replica = new Database(lc, replicaDbFile);
12
- const [{ journal_mode: mode }] = replica.pragma('journal_mode');
13
- if (mode !== walMode) {
14
- lc.info?.(`switching ${replicaDbFile} from ${mode} to ${walMode} mode`);
15
- replica.pragma('journal_mode = delete');
16
- replica.pragma(`journal_mode = ${walMode}`);
11
+ const MILLIS_PER_HOUR = 1000 * 60 * 60;
12
+ const MB = 1024 * 1024;
13
+ function connect(lc, { file, vacuumIntervalHours }, walMode) {
14
+ const replica = new Database(lc, file);
15
+ const start = Date.now();
16
+ // Start by folding any (e.g. restored) WAL(2) files into the main db.
17
+ replica.pragma('journal_mode = delete');
18
+ //eslint-disable-next-line @typescript-eslint/naming-convention
19
+ const [{ page_size: pageSize }] = replica.pragma('page_size');
20
+ //eslint-disable-next-line @typescript-eslint/naming-convention
21
+ const [{ page_count: pageCount }] = replica.pragma('page_count');
22
+ const [{ freelist_count: freelistCount }] = replica.pragma('freelist_count');
23
+ const dbSize = ((pageCount * pageSize) / MB).toFixed(2);
24
+ const freelistSize = ((freelistCount * pageSize) / MB).toFixed(2);
25
+ // TODO: Consider adding a freelist size or ratio based vacuum trigger.
26
+ lc.info?.(`Size of db ${file}: ${dbSize} MB (${freelistSize} MB freeable)`);
27
+ // Check for the VACUUM threshold.
28
+ const events = getAscendingEvents(replica);
29
+ lc.debug?.(`Runtime events for db ${file}`, { events });
30
+ if (vacuumIntervalHours !== undefined) {
31
+ const millisSinceLastEvent = Date.now() - (events.at(-1)?.timestamp.getTime() ?? 0);
32
+ if (millisSinceLastEvent / MILLIS_PER_HOUR > vacuumIntervalHours) {
33
+ lc.info?.(`Performing maintenance VACUUM on ${file}`);
34
+ replica.unsafeMode(true);
35
+ replica.pragma('journal_mode = OFF');
36
+ replica.exec('VACUUM');
37
+ recordEvent(replica, 'vacuum');
38
+ replica.unsafeMode(false);
39
+ lc.info?.(`VACUUM completed (${Date.now() - start} ms)`);
40
+ }
17
41
  }
42
+ lc.info?.(`setting ${file} to ${walMode} mode`);
43
+ replica.pragma(`journal_mode = ${walMode}`);
18
44
  // Set a busy timeout at litestream's recommended 5 seconds:
19
45
  // (https://litestream.io/tips/#busy-timeout).
20
46
  //
@@ -23,17 +49,15 @@ function connect(lc, replicaDbFile, walMode) {
23
49
  // call the sync workers, which results in occasional `ANALYZE` calls
24
50
  // that may contend with each other and with the replicator for the lock.
25
51
  replica.pragma('busy_timeout = 5000');
26
- replica.pragma('synchronous = NORMAL');
27
- replica.exec('VACUUM');
28
52
  replica.pragma('optimize = 0x10002');
29
- lc.info?.(`vacuumed and optimized ${replicaDbFile}`);
53
+ lc.info?.(`optimized ${file}`);
30
54
  return replica;
31
55
  }
32
- export function setupReplica(lc, mode, replicaDbFile) {
56
+ export function setupReplica(lc, mode, replicaOptions) {
33
57
  lc.info?.(`setting up ${mode} replica`);
34
58
  switch (mode) {
35
59
  case 'backup': {
36
- const replica = connect(lc, replicaDbFile, 'wal');
60
+ const replica = connect(lc, replicaOptions, 'wal');
37
61
  // https://litestream.io/tips/#disable-autocheckpoints-for-high-write-load-servers
38
62
  replica.pragma('wal_autocheckpoint = 0');
39
63
  return replica;
@@ -41,18 +65,19 @@ export function setupReplica(lc, mode, replicaDbFile) {
41
65
  case 'serving-copy': {
42
66
  // In 'serving-copy' mode, the original file is being used for 'backup'
43
67
  // mode, so we make a copy for servicing sync requests.
44
- const copyLocation = replicaFileName(replicaDbFile, mode);
68
+ const { file } = replicaOptions;
69
+ const copyLocation = replicaFileName(file, mode);
45
70
  deleteLiteDB(copyLocation);
46
71
  const start = Date.now();
47
- lc.info?.(`copying ${replicaDbFile} to ${copyLocation}`);
48
- const replica = connect(lc, replicaDbFile, 'wal');
72
+ lc.info?.(`copying ${file} to ${copyLocation}`);
73
+ const replica = new Database(lc, file);
49
74
  replica.prepare(`VACUUM INTO ?`).run(copyLocation);
50
75
  replica.close();
51
76
  lc.info?.(`finished copy (${Date.now() - start} ms)`);
52
- return connect(lc, copyLocation, 'wal2');
77
+ return connect(lc, { ...replicaOptions, file: copyLocation }, 'wal2');
53
78
  }
54
79
  case 'serving':
55
- return connect(lc, replicaDbFile, 'wal2');
80
+ return connect(lc, replicaOptions, 'wal2');
56
81
  default:
57
82
  throw new Error(`Invalid ReplicaMode ${mode}`);
58
83
  }
@@ -1 +1 @@
1
- {"version":3,"file":"replicator.js","sourceRoot":"","sources":["../../../../../zero-cache/src/workers/replicator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"replicator.js","sourceRoot":"","sources":["../../../../../zero-cache/src/workers/replicator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,CAAC,MAAM,+BAA+B,CAAC;AACnD,OAAO,EAAC,QAAQ,EAAC,MAAM,2BAA2B,CAAC;AAEnD,OAAO,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAC,QAAQ,EAAC,MAAM,oCAAoC,CAAC;AAM5D,OAAO,EACL,kBAAkB,EAClB,WAAW,GACZ,MAAM,oDAAoD,CAAC;AAG5D,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAC1C,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EACpB,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,EACzB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CACpB,CAAC;AAIF,MAAM,UAAU,eAAe,CAAC,WAAmB,EAAE,IAAqB;IACxE,OAAO,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,GAAG,WAAW,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC;AAC/E,CAAC;AAED,MAAM,eAAe,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC;AACvC,MAAM,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAEvB,SAAS,OAAO,CACd,EAAc,EACd,EAAC,IAAI,EAAE,mBAAmB,EAAiB,EAC3C,OAAuB;IAEvB,MAAM,OAAO,GAAG,IAAI,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACvC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAEzB,sEAAsE;IACtE,OAAO,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;IAExC,+DAA+D;IAC/D,MAAM,CAAC,EAAC,SAAS,EAAE,QAAQ,EAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAC5C,WAAW,CACZ,CAAC;IACF,+DAA+D;IAC/D,MAAM,CAAC,EAAC,UAAU,EAAE,SAAS,EAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAC9C,YAAY,CACb,CAAC;IACF,MAAM,CAAC,EAAC,cAAc,EAAE,aAAa,EAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAGrD,gBAAgB,CAAC,CAAC;IAErB,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACxD,MAAM,YAAY,GAAG,CAAC,CAAC,aAAa,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAElE,uEAAuE;IACvE,EAAE,CAAC,IAAI,EAAE,CAAC,cAAc,IAAI,KAAK,MAAM,QAAQ,YAAY,eAAe,CAAC,CAAC;IAE5E,kCAAkC;IAClC,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC3C,EAAE,CAAC,KAAK,EAAE,CAAC,yBAAyB,IAAI,EAAE,EAAE,EAAC,MAAM,EAAC,CAAC,CAAC;IACtD,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;QACtC,MAAM,oBAAoB,GACxB,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;QACzD,IAAI,oBAAoB,GAAG,eAAe,GAAG,mBAAmB,EAAE,CAAC;YACjE,EAAE,CAAC,IAAI,EAAE,CAAC,oCAAoC,IAAI,EAAE,CAAC,CAAC;YACtD,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACzB,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;YACrC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACvB,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC/B,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAC1B,EAAE,CAAC,IAAI,EAAE,CAAC,qBAAqB,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,IAAI,OAAO,OAAO,OAAO,CAAC,CAAC;IAChD,OAAO,CAAC,MAAM,CAAC,kBAAkB,OAAO,EAAE,CAAC,CAAC;IAE5C,4DAA4D;IAC5D,8CAA8C;IAC9C,EAAE;IACF,iEAAiE;IACjE,oEAAoE;IACpE,qEAAqE;IACrE,yEAAyE;IACzE,OAAO,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;IAEtC,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;IACrC,EAAE,CAAC,IAAI,EAAE,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;IAC/B,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,EAAc,EACd,IAAqB,EACrB,cAA8B;IAE9B,EAAE,CAAC,IAAI,EAAE,CAAC,cAAc,IAAI,UAAU,CAAC,CAAC;IAExC,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,OAAO,GAAG,OAAO,CAAC,EAAE,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;YACnD,kFAAkF;YAClF,OAAO,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;YACzC,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,KAAK,cAAc,CAAC,CAAC,CAAC;YACpB,uEAAuE;YACvE,uDAAuD;YACvD,MAAM,EAAC,IAAI,EAAC,GAAG,cAAc,CAAC;YAC9B,MAAM,YAAY,GAAG,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACjD,YAAY,CAAC,YAAY,CAAC,CAAC;YAE3B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACzB,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,IAAI,OAAO,YAAY,EAAE,CAAC,CAAC;YAChD,MAAM,OAAO,GAAG,IAAI,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YACvC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACnD,OAAO,CAAC,KAAK,EAAE,CAAC;YAChB,EAAE,CAAC,IAAI,EAAE,CAAC,kBAAkB,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC,CAAC;YAEtD,OAAO,OAAO,CAAC,EAAE,EAAE,EAAC,GAAG,cAAc,EAAE,IAAI,EAAE,YAAY,EAAC,EAAE,MAAM,CAAC,CAAC;QACtE,CAAC;QAED,KAAK,SAAS;YACZ,OAAO,OAAO,CAAC,EAAE,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;QAE7C;YACE,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;IACnD,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,EAAc,EACd,UAAsB,EACtB,MAAc;IAEd,uBAAuB,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;AAClD,CAAC;AAID,MAAM,UAAU,uBAAuB,CACrC,EAAc,EACd,UAAkB,EAClB,QAA8B;IAE9B,UAAU,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;QAC/C,MAAM,YAAY,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;QAE1C,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAC1B,EAAE,CAAC,KAAK,EAAE,CAAC,yCAAyC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC;YACtE,YAAY,CAAC,MAAM,EAAE,CAAC;QACxB,CAAC,CAAC,CAAC;QAEH,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;YACrC,UAAU,CAAC,IAAI,CAAe,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;QACjD,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAe,EAAE,MAAc;IAChE,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;IAChC,MAAM,CAAC,aAAa,CAAe,QAAQ,EAAE,GAAG,CAAC,EAAE,CACjD,QAAQ,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAChC,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,GAAe,EAAE,MAAc;IACzD,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC"}
@@ -1,10 +1,10 @@
1
- import type { Mutagen } from '../services/mutagen/mutagen.ts';
2
- import type { TokenData, ViewSyncer } from '../services/view-syncer/view-syncer.ts';
3
- import type { HandlerResult, MessageHandler } from './connection.ts';
4
- import type { Upstream } from '../../../zero-protocol/src/up.ts';
5
1
  import type { LogContext } from '@rocicorp/logger';
2
+ import type { Upstream } from '../../../zero-protocol/src/up.ts';
6
3
  import type { ConnectParams } from '../services/dispatcher/connect-params.ts';
4
+ import type { Mutagen } from '../services/mutagen/mutagen.ts';
7
5
  import type { Pusher } from '../services/mutagen/pusher.ts';
6
+ import type { TokenData, ViewSyncer } from '../services/view-syncer/view-syncer.ts';
7
+ import type { HandlerResult, MessageHandler } from './connection.ts';
8
8
  export declare class SyncerWsMessageHandler implements MessageHandler {
9
9
  #private;
10
10
  constructor(lc: LogContext, connectParams: ConnectParams, tokenData: TokenData | undefined, viewSyncer: ViewSyncer, mutagen: Mutagen, pusher: Pusher | undefined);
@@ -1 +1 @@
1
- {"version":3,"file":"syncer-ws-message-handler.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/workers/syncer-ws-message-handler.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,gCAAgC,CAAC;AAC5D,OAAO,KAAK,EAEV,SAAS,EACT,UAAU,EACX,MAAM,wCAAwC,CAAC;AAChD,OAAO,KAAK,EAAC,aAAa,EAAE,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAGnE,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAG/D,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAGjD,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,0CAA0C,CAAC;AAC5E,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,+BAA+B,CAAC;AAI1D,qBAAa,sBAAuB,YAAW,cAAc;;gBAYzD,EAAE,EAAE,UAAU,EACd,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,GAAG,SAAS,EAChC,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,GAAG,SAAS;IA+BtB,aAAa,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC;CAyF3D"}
1
+ {"version":3,"file":"syncer-ws-message-handler.d.ts","sourceRoot":"","sources":["../../../../../zero-cache/src/workers/syncer-ws-message-handler.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAOjD,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,kCAAkC,CAAC;AAC/D,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,0CAA0C,CAAC;AAC5E,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,gCAAgC,CAAC;AAC5D,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,+BAA+B,CAAC;AAC1D,OAAO,KAAK,EAEV,SAAS,EACT,UAAU,EACX,MAAM,wCAAwC,CAAC;AAChD,OAAO,KAAK,EAAC,aAAa,EAAE,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAInE,qBAAa,sBAAuB,YAAW,cAAc;;gBAYzD,EAAE,EAAE,UAAU,EACd,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,GAAG,SAAS,EAChC,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,GAAG,SAAS;IA+BtB,aAAa,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC;CA+F3D"}
@@ -1,9 +1,9 @@
1
1
  import { trace } from '@opentelemetry/api';
2
2
  import { Lock } from '@rocicorp/lock';
3
- import { version } from "../../../otel/src/version.js";
4
- import * as ErrorKind from "../../../zero-protocol/src/error-kind-enum.js";
5
3
  import { startAsyncSpan, startSpan } from "../../../otel/src/span.js";
4
+ import { version } from "../../../otel/src/version.js";
6
5
  import { unreachable } from "../../../shared/src/asserts.js";
6
+ import * as ErrorKind from "../../../zero-protocol/src/error-kind-enum.js";
7
7
  const tracer = trace.getTracer('syncer-ws-server', version);
8
8
  export class SyncerWsMessageHandler {
9
9
  #viewSyncer;
@@ -101,6 +101,9 @@ export class SyncerWsMessageHandler {
101
101
  stream,
102
102
  };
103
103
  }
104
+ case 'closeConnection':
105
+ await startAsyncSpan(tracer, 'connection.closeConnection', () => viewSyncer.closeConnection(this.#syncContext, msg));
106
+ break;
104
107
  default:
105
108
  unreachable(msgType);
106
109
  }
@@ -1 +1 @@
1
- {"version":3,"file":"syncer-ws-message-handler.js","sourceRoot":"","sources":["../../../../../zero-cache/src/workers/syncer-ws-message-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"syncer-ws-message-handler.js","sourceRoot":"","sources":["../../../../../zero-cache/src/workers/syncer-ws-message-handler.ts"],"names":[],"mappings":"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"}
@@ -3,16 +3,7 @@ import type { ReadonlyJSONValue } from '../../../shared/src/json.ts';
3
3
  import type { ClientID } from '../types/client-state.ts';
4
4
  import type { WriteTransaction } from './replicache-types.ts';
5
5
  import type { IVMSourceRepo } from './ivm-source-repo.ts';
6
- import type { SchemaCRUD, SchemaQuery, TransactionBase } from '../../../zql/src/mutate/custom.ts';
7
- /**
8
- * An instance of this is passed to custom mutator implementations and
9
- * allows reading and writing to the database and IVM at the head
10
- * at which the mutator is being applied.
11
- */
12
- export interface Transaction<S extends Schema> extends TransactionBase<S> {
13
- readonly location: 'client';
14
- readonly reason: 'optimistic' | 'rebase';
15
- }
6
+ import type { ClientTransaction, SchemaCRUD, SchemaQuery, Transaction } from '../../../zql/src/mutate/custom.ts';
16
7
  /**
17
8
  * The shape which a user's custom mutator definitions must conform to.
18
9
  */
@@ -39,7 +30,7 @@ export type MakeCustomMutatorInterfaces<S extends Schema, MD extends CustomMutat
39
30
  };
40
31
  };
41
32
  export type MakeCustomMutatorInterface<S extends Schema, F> = F extends (tx: Transaction<S>, ...args: infer Args) => Promise<void> ? (...args: Args) => Promise<void> : never;
42
- export declare class TransactionImpl implements Transaction<Schema> {
33
+ export declare class TransactionImpl implements ClientTransaction<Schema> {
43
34
  constructor(repTx: WriteTransaction, schema: Schema, ivmSourceRepo: IVMSourceRepo);
44
35
  readonly clientID: ClientID;
45
36
  readonly mutationID: number;
@@ -1 +1 @@
1
- {"version":3,"file":"custom.d.ts","sourceRoot":"","sources":["../../../../../zero-client/src/client/custom.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,oDAAoD,CAAC;AAE/E,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,0BAA0B,CAAC;AAEvD,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAkB,aAAa,EAAC,MAAM,sBAAsB,CAAC;AAIzE,OAAO,KAAK,EAGV,UAAU,EACV,WAAW,EAEX,eAAe,EAGhB,MAAM,mCAAmC,CAAC;AAE3C;;;;GAIG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,MAAM,CAAE,SAAQ,eAAe,CAAC,CAAC,CAAC;IACvE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,YAAY,GAAG,QAAQ,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,MAAM,IAAI;IAChD,QAAQ,EAAE,KAAK,IAAI,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;QACtC,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;KAC9C;CACF,GAAG;IAGF,CAAC,SAAS,EAAE,MAAM,GAAG;QACnB,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;KACrC,CAAC;CACH,CAAC;AAGF,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,GAAG,GAAG,IAAI,CAC7D,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC,EAGlB,IAAI,EAAE,KAAK,KACR,OAAO,CAAC,IAAI,CAAC,CAAC;AAEnB;;;;;;GAMG;AACH,MAAM,MAAM,2BAA2B,CACrC,CAAC,SAAS,MAAM,EAChB,EAAE,SAAS,iBAAiB,CAAC,CAAC,CAAC,IAC7B;IACF,QAAQ,EAAE,KAAK,IAAI,MAAM,EAAE,GAAG;QAC5B,QAAQ,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,0BAA0B,CACzD,CAAC,EACD,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CACb;KACF;CACF,CAAC;AAEF,MAAM,MAAM,0BAA0B,CACpC,CAAC,SAAS,MAAM,EAEhB,CAAC,IACC,CAAC,SAAS,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,GACpE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,GAChC,KAAK,CAAC;AAEV,qBAAa,eAAgB,YAAW,WAAW,CAAC,MAAM,CAAC;gBAEvD,KAAK,EAAE,gBAAgB,EACvB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,aAAa;IAsB9B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,YAAY,GAAG,QAAQ,CAAC;IACzC,QAAQ,CAAC,QAAQ,YAAY;IAC7B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACrC;AAED,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,iBAAiB,CAAC,MAAM,CAAC,EAClC,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,aAAa,WAEb,gBAAgB,QAAQ,iBAAiB,KAAG,OAAO,CAAC,IAAI,CAAC,CAIzE"}
1
+ {"version":3,"file":"custom.d.ts","sourceRoot":"","sources":["../../../../../zero-client/src/client/custom.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,oDAAoD,CAAC;AAE/E,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,0BAA0B,CAAC;AAEvD,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAkB,aAAa,EAAC,MAAM,sBAAsB,CAAC;AAIzE,OAAO,KAAK,EACV,iBAAiB,EAGjB,UAAU,EACV,WAAW,EAEX,WAAW,EAGZ,MAAM,mCAAmC,CAAC;AAE3C;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,MAAM,IAAI;IAChD,QAAQ,EAAE,KAAK,IAAI,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;QACtC,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;KAC9C;CACF,GAAG;IAGF,CAAC,SAAS,EAAE,MAAM,GAAG;QACnB,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;KACrC,CAAC;CACH,CAAC;AAGF,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,GAAG,GAAG,IAAI,CAC7D,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC,EAGlB,IAAI,EAAE,KAAK,KACR,OAAO,CAAC,IAAI,CAAC,CAAC;AAEnB;;;;;;GAMG;AACH,MAAM,MAAM,2BAA2B,CACrC,CAAC,SAAS,MAAM,EAChB,EAAE,SAAS,iBAAiB,CAAC,CAAC,CAAC,IAC7B;IACF,QAAQ,EAAE,KAAK,IAAI,MAAM,EAAE,GAAG;QAC5B,QAAQ,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,0BAA0B,CACzD,CAAC,EACD,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CACb;KACF;CACF,CAAC;AAEF,MAAM,MAAM,0BAA0B,CACpC,CAAC,SAAS,MAAM,EAEhB,CAAC,IACC,CAAC,SAAS,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,GACpE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,GAChC,KAAK,CAAC;AAEV,qBAAa,eAAgB,YAAW,iBAAiB,CAAC,MAAM,CAAC;gBAE7D,KAAK,EAAE,gBAAgB,EACvB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,aAAa;IAsB9B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,YAAY,GAAG,QAAQ,CAAC;IACzC,QAAQ,CAAC,QAAQ,YAAY;IAC7B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACrC;AAED,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,iBAAiB,CAAC,MAAM,CAAC,EAClC,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,aAAa,WAEb,gBAAgB,QAAQ,iBAAiB,KAAG,OAAO,CAAC,IAAI,CAAC,CAIzE"}
@@ -1 +1 @@
1
- {"version":3,"file":"zero.d.ts","sourceRoot":"","sources":["../../../../../zero-client/src/client/zero.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zero.d.ts","sourceRoot":"","sources":["../../../../../zero-client/src/client/zero.ts"],"names":[],"mappings":"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"}
@@ -28,4 +28,5 @@ export type { CustomMutatorDefs, CustomMutatorImpl } from './client/custom.ts';
28
28
  export type { DeleteID, InsertValue, UpdateValue, UpsertValue, } from '../../zql/src/mutate/custom.ts';
29
29
  export type { ZeroOptions } from './client/options.ts';
30
30
  export { Zero } from './client/zero.ts';
31
+ export type { ServerTransaction, Transaction, } from '../../zql/src/mutate/custom.ts';
31
32
  //# sourceMappingURL=mod.d.ts.map