@tursodatabase/sync-common 0.6.0-pre.22 → 0.6.0-pre.24

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.
package/dist/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
- import { run, memoryIO, runner, SyncEngineGuards, Runner } from "./run.js";
1
+ import { run, memoryIO, runner, retryFetch, SyncEngineGuards, Runner, RetryFetchOpts } from "./run.js";
2
2
  import { DatabaseOpts, ProtocolIo, RunOpts, DatabaseRowMutation, DatabaseRowStatement, DatabaseRowTransformResult, DatabaseStats, DatabaseChangeType, EncryptionOpts } from "./types.js";
3
3
  import { RemoteWriter, RemoteWriterConfig } from "./remote-writer.js";
4
4
  import { RemoteWriteStatement } from "./remote-write-statement.js";
5
- export { run, memoryIO, runner, SyncEngineGuards, Runner };
5
+ export { run, memoryIO, runner, retryFetch, SyncEngineGuards, Runner };
6
6
  export { RemoteWriter, RemoteWriteStatement };
7
- export type { DatabaseStats, DatabaseOpts, DatabaseChangeType, DatabaseRowMutation, DatabaseRowStatement, DatabaseRowTransformResult, EncryptionOpts, RemoteWriterConfig, ProtocolIo, RunOpts, };
7
+ export type { DatabaseStats, DatabaseOpts, DatabaseChangeType, DatabaseRowMutation, DatabaseRowStatement, DatabaseRowTransformResult, EncryptionOpts, RemoteWriterConfig, RetryFetchOpts, ProtocolIo, RunOpts, };
8
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAC1E,OAAO,EACH,YAAY,EACZ,UAAU,EACV,OAAO,EACP,mBAAmB,EACnB,oBAAoB,EACpB,0BAA0B,EAC1B,aAAa,EACb,kBAAkB,EAClB,cAAc,EACjB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAElE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,CAAA;AAC7C,YAAY,EACR,aAAa,EACb,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,0BAA0B,EAC1B,cAAc,EACd,kBAAkB,EAElB,UAAU,EACV,OAAO,GACV,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACtG,OAAO,EACH,YAAY,EACZ,UAAU,EACV,OAAO,EACP,mBAAmB,EACnB,oBAAoB,EACpB,0BAA0B,EAC1B,aAAa,EACb,kBAAkB,EAClB,cAAc,EACjB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAElE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAA;AACtE,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,CAAA;AAC7C,YAAY,EACR,aAAa,EACb,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,0BAA0B,EAC1B,cAAc,EACd,kBAAkB,EAClB,cAAc,EAEd,UAAU,EACV,OAAO,GACV,CAAA"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
- import { run, memoryIO, runner, SyncEngineGuards } from "./run.js";
1
+ import { run, memoryIO, runner, retryFetch, SyncEngineGuards } from "./run.js";
2
2
  import { RemoteWriter } from "./remote-writer.js";
3
3
  import { RemoteWriteStatement } from "./remote-write-statement.js";
4
- export { run, memoryIO, runner, SyncEngineGuards };
4
+ export { run, memoryIO, runner, retryFetch, SyncEngineGuards };
5
5
  export { RemoteWriter, RemoteWriteStatement };
package/dist/run.d.ts CHANGED
@@ -1,5 +1,47 @@
1
1
  import { ProtocolIo, RunOpts } from "./types.js";
2
2
  import { AsyncLock } from "@tursodatabase/database-common";
3
+ /**
4
+ * Configuration for {@link retryFetch}.
5
+ */
6
+ export interface RetryFetchOpts {
7
+ /** total number of attempts (including the first try). must be >= 1. default: 3 */
8
+ attempts?: number;
9
+ /** delay before the second attempt, in milliseconds. default: 500 */
10
+ delayMs?: number;
11
+ /** multiplier applied to {@link delayMs} after each failed attempt. default: 2 */
12
+ backoff?: number;
13
+ /** underlying fetch implementation to retry around. default: globalThis.fetch */
14
+ fetch?: typeof fetch;
15
+ }
16
+ /**
17
+ * Wraps a fetch implementation in a retry/backoff loop. Plug into
18
+ * {@link DatabaseOpts.fetch} to give the sync engine resilient HTTP transport.
19
+ *
20
+ * Retries on:
21
+ * - thrown network errors (DNS, connection reset, AbortError, etc.)
22
+ * - 5xx server responses
23
+ * - 429 rate-limit responses
24
+ *
25
+ * Does NOT retry on:
26
+ * - 2xx, 3xx, or other 4xx responses (auth/bad-request — won't fix itself)
27
+ *
28
+ * Defaults: 3 attempts (initial + 2 retries), 500ms initial delay, 2x backoff
29
+ * (so delays are 500ms, 1000ms between attempts).
30
+ *
31
+ * @example
32
+ * ```ts
33
+ * import { connect } from '@tursodatabase/sync';
34
+ * import { retryFetch } from '@tursodatabase/sync-common';
35
+ *
36
+ * const db = await connect({
37
+ * path: 'local.db',
38
+ * url: 'libsql://...',
39
+ * fetch: retryFetch(), // defaults
40
+ * // fetch: retryFetch({ attempts: 5, delayMs: 1000 }),
41
+ * });
42
+ * ```
43
+ */
44
+ export declare function retryFetch(opts?: RetryFetchOpts): typeof fetch;
3
45
  export declare function memoryIO(): ProtocolIo;
4
46
  export interface Runner {
5
47
  wait(): Promise<void>;
package/dist/run.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../run.ts"],"names":[],"mappings":"AAEA,OAAO,EAAqB,UAAU,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAuG3D,wBAAgB,QAAQ,IAAI,UAAU,CAUrC;AAED,MAAM,WAAW,MAAM;IACnB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB;AAED,wBAAgB,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,GAAG,MAAM,CAezE;AAED,wBAAsB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAetE;AAED,qBAAa,gBAAgB;IACzB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;IACpB,cAAc,EAAE,SAAS,CAAC;;IAOpB,IAAI,CAAC,CAAC,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAQzC,IAAI,CAAC,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;IAY3B,KAAK,CAAC,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;IAc5B,UAAU,CAAC,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;CAc1C"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../run.ts"],"names":[],"mappings":"AAEA,OAAO,EAAqB,UAAU,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AA2G3D;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,mFAAmF;IACnF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qEAAqE;IACrE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kFAAkF;IAClF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iFAAiF;IACjF,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,UAAU,CAAC,IAAI,GAAE,cAAmB,GAAG,OAAO,KAAK,CAkClE;AAED,wBAAgB,QAAQ,IAAI,UAAU,CAUrC;AAED,MAAM,WAAW,MAAM;IACnB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB;AAED,wBAAgB,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,GAAG,MAAM,CAezE;AAED,wBAAsB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAetE;AAED,qBAAa,gBAAgB;IACzB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;IACpB,cAAc,EAAE,SAAS,CAAC;;IAOpB,IAAI,CAAC,CAAC,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAQzC,IAAI,CAAC,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;IAY3B,KAAK,CAAC,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;IAc5B,UAAU,CAAC,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;CAc1C"}
package/dist/run.js CHANGED
@@ -35,13 +35,17 @@ async function process(opts, io, request) {
35
35
  headers[header[0]] = header[1];
36
36
  }
37
37
  }
38
- const response = await fetch(`${url}${requestType.path}`, {
38
+ const fetchImpl = opts.fetch ?? fetch;
39
+ const response = await fetchImpl(`${url}${requestType.path}`, {
39
40
  method: requestType.method,
40
41
  headers: headers,
41
42
  body: requestType.body != null ? new Uint8Array(requestType.body) : null,
42
43
  });
43
44
  completion.status(response.status);
44
- const reader = response.body.getReader();
45
+ const reader = response.body?.getReader();
46
+ if (reader == null) {
47
+ throw new Error("reader is null");
48
+ }
45
49
  while (true) {
46
50
  const { done, value } = await reader.read();
47
51
  if (done) {
@@ -102,6 +106,70 @@ async function process(opts, io, request) {
102
106
  completion.done();
103
107
  }
104
108
  }
109
+ /**
110
+ * Wraps a fetch implementation in a retry/backoff loop. Plug into
111
+ * {@link DatabaseOpts.fetch} to give the sync engine resilient HTTP transport.
112
+ *
113
+ * Retries on:
114
+ * - thrown network errors (DNS, connection reset, AbortError, etc.)
115
+ * - 5xx server responses
116
+ * - 429 rate-limit responses
117
+ *
118
+ * Does NOT retry on:
119
+ * - 2xx, 3xx, or other 4xx responses (auth/bad-request — won't fix itself)
120
+ *
121
+ * Defaults: 3 attempts (initial + 2 retries), 500ms initial delay, 2x backoff
122
+ * (so delays are 500ms, 1000ms between attempts).
123
+ *
124
+ * @example
125
+ * ```ts
126
+ * import { connect } from '@tursodatabase/sync';
127
+ * import { retryFetch } from '@tursodatabase/sync-common';
128
+ *
129
+ * const db = await connect({
130
+ * path: 'local.db',
131
+ * url: 'libsql://...',
132
+ * fetch: retryFetch(), // defaults
133
+ * // fetch: retryFetch({ attempts: 5, delayMs: 1000 }),
134
+ * });
135
+ * ```
136
+ */
137
+ export function retryFetch(opts = {}) {
138
+ const attempts = opts.attempts ?? 3;
139
+ const baseDelay = opts.delayMs ?? 500;
140
+ const backoff = opts.backoff ?? 2;
141
+ const underlying = opts.fetch ?? ((input, init) => fetch(input, init));
142
+ if (!Number.isFinite(attempts) || attempts < 1) {
143
+ throw new Error(`retryFetch: attempts must be a finite integer >= 1, got ${attempts}`);
144
+ }
145
+ return async (input, init) => {
146
+ let lastError = null;
147
+ let lastResponse = null;
148
+ let delay = baseDelay;
149
+ for (let i = 0; i < attempts; i++) {
150
+ try {
151
+ const response = await underlying(input, init);
152
+ if (response.status < 500 && response.status !== 429) {
153
+ return response;
154
+ }
155
+ lastResponse = response;
156
+ lastError = null;
157
+ }
158
+ catch (error) {
159
+ lastError = error;
160
+ lastResponse = null;
161
+ }
162
+ if (i + 1 < attempts) {
163
+ await timeoutMs(delay);
164
+ delay *= backoff;
165
+ }
166
+ }
167
+ if (lastResponse != null) {
168
+ return lastResponse;
169
+ }
170
+ throw lastError ?? new Error('retryFetch: exhausted with no response');
171
+ };
172
+ }
105
173
  export function memoryIO() {
106
174
  let values = new Map();
107
175
  return {
package/dist/types.d.ts CHANGED
@@ -111,6 +111,31 @@ export interface DatabaseOpts {
111
111
  * WARNING: This feature is EXPERIMENTAL
112
112
  */
113
113
  remoteWritesExperimental?: boolean;
114
+ /**
115
+ * optional cap on the number of CDC operations packed into a single push HTTP batch.
116
+ * when set, push splits on transaction boundaries once the current batch has
117
+ * accumulated at least this many operations. a single user transaction is never
118
+ * split across batches. unset (default) sends the entire change set in one batch.
119
+ */
120
+ pushOperationsThreshold?: number;
121
+ /**
122
+ * optional hint, in bytes, that splits the bootstrap download into multiple
123
+ * `/pull-updates` HTTP requests of >= this many bytes each (using the
124
+ * `server_pages_selector` bitmap). unset (default) bootstraps in a single
125
+ * round-trip. currently affects only the bootstrap phase — incremental
126
+ * pulls are unaffected. no-op when partial sync uses the `query` strategy.
127
+ */
128
+ pullBytesThreshold?: number;
129
+ /**
130
+ * optional fetch override used for every HTTP request made by the sync engine
131
+ * (push, pull, wait-for-changes). drop-in replacement for `globalThis.fetch`.
132
+ * use cases:
133
+ * - retries / backoff (see {@link retryFetch})
134
+ * - custom timeouts via AbortSignal
135
+ * - request logging / instrumentation
136
+ * - testing / mocking
137
+ */
138
+ fetch?: typeof fetch;
114
139
  /**
115
140
  * optional parameter to enable partial sync for the database
116
141
  * WARNING: This feature is EXPERIMENTAL
@@ -171,6 +196,7 @@ export interface RunOpts {
171
196
  [K: string]: string;
172
197
  }>);
173
198
  transform?: Transform;
199
+ fetch?: typeof fetch;
174
200
  }
175
201
  export interface ProtocolIo {
176
202
  read(path: string): Promise<Buffer | Uint8Array | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,CAAC,KAAK,MAAM,kBAAkB;IACxC,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,MAAM,WAAW;CACpB;AAED,MAAM,WAAW,oBAAoB;IACjC;;OAEG;IACH,GAAG,EAAE,MAAM,CAAA;IACX;;OAEG;IACH,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;CACrB;AAGD;;;;;GAKG;AACH,MAAM,MAAM,0BAA0B,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,SAAS,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,oBAAoB,CAAA;CAAE,GAAG,IAAI,CAAC;AAE7H,MAAM,WAAW,mBAAmB;IAChC;;OAEG;IACH,UAAU,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAA;IACjB;;OAEG;IACH,EAAE,EAAE,MAAM,CAAA;IACV;;OAEG;IACH,UAAU,EAAE,kBAAkB,CAAA;IAC9B;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC5B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC3B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAChC;AAED,MAAM,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,mBAAmB,KAAK,0BAA0B,CAAC;AAEjF,MAAM,WAAW,cAAc;IAE3B,GAAG,EAAE,MAAM,CAAC;IAKZ,MAAM,EAAE,WAAW,GAAG,WAAW,GAAG,kBAAkB,GAAG,WAAW,GAAG,YAAY,GAAG,YAAY,GAAG,UAAU,GAAG,YAAY,GAAG,YAAY,CAAA;CAChJ;AACD,MAAM,WAAW,YAAY;IACzB;;;;SAIK;IACL,IAAI,EAAE,MAAM,CAAC;IACb;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC;IACrC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAC7C;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,gBAAgB,CAAC,EAAE,cAAc,CAAC;IAClC;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;IACxD;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC;;;;;OAKG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;;;;OAQG;IACH,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB;;;OAGG;IACH,uBAAuB,CAAC,EAAE;QAKtB,iBAAiB,EAAE;YAAE,IAAI,EAAE,QAAQ,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,GAAG;YAAE,IAAI,EAAE,OAAO,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC;QAIzF,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACtB,CAAA;CACJ;AACD,MAAM,WAAW,aAAa;IAC1B;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC;;;OAGG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,oBAAoB,EAAE,MAAM,CAAC;CAChC;AAID,MAAM,WAAW,OAAO;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC;IACpC,OAAO,EAAE;QAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,CAAC,MAAM,OAAO,CAAC;QAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC,CAAC,CAAA;IAC3E,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACvB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC,CAAC;IACxD,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpE;AACD,MAAM,MAAM,iBAAiB,GAAG;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,CAAC;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE,GAAG,aAAa,CAAC,GAAG;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tursodatabase/sync-common",
3
- "version": "0.6.0-pre.22",
3
+ "version": "0.6.0-pre.24",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/tursodatabase/turso"
@@ -15,6 +15,7 @@
15
15
  "README.md"
16
16
  ],
17
17
  "devDependencies": {
18
+ "@types/node": "^24.12.2",
18
19
  "typescript": "^5.9.2"
19
20
  },
20
21
  "scripts": {
@@ -23,7 +24,7 @@
23
24
  "test": "echo 'no tests'"
24
25
  },
25
26
  "dependencies": {
26
- "@tursodatabase/database-common": "^0.6.0-pre.22",
27
+ "@tursodatabase/database-common": "^0.6.0-pre.24",
27
28
  "@tursodatabase/serverless": "^0.2.2"
28
29
  }
29
30
  }