@powersync/common 0.0.0-dev-20240723112746 → 0.0.0-dev-20240726145924

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 (75) hide show
  1. package/lib/client/AbstractPowerSyncDatabase.d.ts +8 -3
  2. package/lib/client/AbstractPowerSyncDatabase.js +11 -5
  3. package/lib/client/AbstractPowerSyncOpenFactory.js +0 -1
  4. package/lib/client/SQLOpenFactory.d.ts +10 -0
  5. package/lib/client/SQLOpenFactory.js +0 -1
  6. package/lib/client/connection/PowerSyncBackendConnector.js +0 -1
  7. package/lib/client/connection/PowerSyncCredentials.js +0 -1
  8. package/lib/client/sync/bucket/BucketStorageAdapter.js +0 -1
  9. package/lib/client/sync/bucket/CrudBatch.js +0 -1
  10. package/lib/client/sync/bucket/CrudEntry.js +0 -1
  11. package/lib/client/sync/bucket/CrudTransaction.js +0 -1
  12. package/lib/client/sync/bucket/OpType.js +0 -1
  13. package/lib/client/sync/bucket/OplogEntry.js +0 -1
  14. package/lib/client/sync/bucket/SqliteBucketStorage.js +0 -1
  15. package/lib/client/sync/bucket/SyncDataBatch.js +0 -1
  16. package/lib/client/sync/bucket/SyncDataBucket.js +0 -1
  17. package/lib/client/sync/stream/AbstractRemote.d.ts +1 -1
  18. package/lib/client/sync/stream/AbstractRemote.js +15 -9
  19. package/lib/client/sync/stream/AbstractStreamingSyncImplementation.js +0 -1
  20. package/lib/client/sync/stream/streaming-sync-types.js +0 -1
  21. package/lib/db/Column.js +0 -1
  22. package/lib/db/DBAdapter.js +0 -1
  23. package/lib/db/crud/SyncStatus.js +0 -1
  24. package/lib/db/crud/UploadQueueStatus.js +0 -1
  25. package/lib/db/schema/Index.js +0 -1
  26. package/lib/db/schema/IndexedColumn.js +0 -1
  27. package/lib/db/schema/Schema.js +0 -1
  28. package/lib/db/schema/Table.js +0 -1
  29. package/lib/db/schema/TableV2.js +0 -1
  30. package/lib/index.js +0 -1
  31. package/lib/types/types.js +0 -1
  32. package/lib/utils/AbortOperation.js +0 -1
  33. package/lib/utils/BaseObserver.js +0 -1
  34. package/lib/utils/ControlledExecutor.js +0 -1
  35. package/lib/utils/DataStream.js +0 -1
  36. package/lib/utils/mutex.js +0 -1
  37. package/lib/utils/parseQuery.js +0 -1
  38. package/lib/utils/strings.js +0 -1
  39. package/package.json +13 -22
  40. package/dist/index.js +0 -16
  41. package/lib/client/AbstractPowerSyncDatabase.js.map +0 -1
  42. package/lib/client/AbstractPowerSyncOpenFactory.js.map +0 -1
  43. package/lib/client/SQLOpenFactory.js.map +0 -1
  44. package/lib/client/connection/PowerSyncBackendConnector.js.map +0 -1
  45. package/lib/client/connection/PowerSyncCredentials.js.map +0 -1
  46. package/lib/client/sync/bucket/BucketStorageAdapter.js.map +0 -1
  47. package/lib/client/sync/bucket/CrudBatch.js.map +0 -1
  48. package/lib/client/sync/bucket/CrudEntry.js.map +0 -1
  49. package/lib/client/sync/bucket/CrudTransaction.js.map +0 -1
  50. package/lib/client/sync/bucket/OpType.js.map +0 -1
  51. package/lib/client/sync/bucket/OplogEntry.js.map +0 -1
  52. package/lib/client/sync/bucket/SqliteBucketStorage.js.map +0 -1
  53. package/lib/client/sync/bucket/SyncDataBatch.js.map +0 -1
  54. package/lib/client/sync/bucket/SyncDataBucket.js.map +0 -1
  55. package/lib/client/sync/stream/AbstractRemote.js.map +0 -1
  56. package/lib/client/sync/stream/AbstractStreamingSyncImplementation.js.map +0 -1
  57. package/lib/client/sync/stream/streaming-sync-types.js.map +0 -1
  58. package/lib/db/Column.js.map +0 -1
  59. package/lib/db/DBAdapter.js.map +0 -1
  60. package/lib/db/crud/SyncStatus.js.map +0 -1
  61. package/lib/db/crud/UploadQueueStatus.js.map +0 -1
  62. package/lib/db/schema/Index.js.map +0 -1
  63. package/lib/db/schema/IndexedColumn.js.map +0 -1
  64. package/lib/db/schema/Schema.js.map +0 -1
  65. package/lib/db/schema/Table.js.map +0 -1
  66. package/lib/db/schema/TableV2.js.map +0 -1
  67. package/lib/index.js.map +0 -1
  68. package/lib/types/types.js.map +0 -1
  69. package/lib/utils/AbortOperation.js.map +0 -1
  70. package/lib/utils/BaseObserver.js.map +0 -1
  71. package/lib/utils/ControlledExecutor.js.map +0 -1
  72. package/lib/utils/DataStream.js.map +0 -1
  73. package/lib/utils/mutex.js.map +0 -1
  74. package/lib/utils/parseQuery.js.map +0 -1
  75. package/lib/utils/strings.js.map +0 -1
@@ -5,12 +5,12 @@ import { SyncStatus } from '../db/crud/SyncStatus';
5
5
  import { UploadQueueStats } from '../db/crud/UploadQueueStatus';
6
6
  import { Schema } from '../db/schema/Schema';
7
7
  import { BaseObserver } from '../utils/BaseObserver';
8
+ import { SQLOpenFactory, SQLOpenOptions } from './SQLOpenFactory';
8
9
  import { PowerSyncBackendConnector } from './connection/PowerSyncBackendConnector';
9
10
  import { BucketStorageAdapter } from './sync/bucket/BucketStorageAdapter';
10
11
  import { CrudBatch } from './sync/bucket/CrudBatch';
11
12
  import { CrudTransaction } from './sync/bucket/CrudTransaction';
12
- import { AbstractStreamingSyncImplementation, StreamingSyncImplementationListener, StreamingSyncImplementation, PowerSyncConnectionOptions } from './sync/stream/AbstractStreamingSyncImplementation';
13
- import { SQLOpenFactory, SQLOpenOptions } from './SQLOpenFactory';
13
+ import { AbstractStreamingSyncImplementation, PowerSyncConnectionOptions, StreamingSyncImplementation, StreamingSyncImplementationListener } from './sync/stream/AbstractStreamingSyncImplementation';
14
14
  export interface DisconnectAndClearOptions {
15
15
  /** When set to false, data in local-only tables is preserved. */
16
16
  clearLocal?: boolean;
@@ -96,6 +96,11 @@ export declare const DEFAULT_POWERSYNC_DB_OPTIONS: {
96
96
  * be obtained.
97
97
  */
98
98
  export declare const DEFAULT_LOCK_TIMEOUT_MS = 120000;
99
+ /**
100
+ * Tests if the input is a {@link PowerSyncDatabaseOptionsWithSettings}
101
+ * @internal
102
+ */
103
+ export declare const isPowerSyncDatabaseOptionsWithSettings: (test: any) => test is PowerSyncDatabaseOptionsWithSettings;
99
104
  export declare abstract class AbstractPowerSyncDatabase extends BaseObserver<PowerSyncDBListener> {
100
105
  protected options: PowerSyncDatabaseOptions;
101
106
  /**
@@ -143,7 +148,7 @@ export declare abstract class AbstractPowerSyncDatabase extends BaseObserver<Pow
143
148
  /**
144
149
  * Opens the DBAdapter given open options using a default open factory
145
150
  */
146
- protected abstract openDBAdapter(options: SQLOpenOptions): DBAdapter;
151
+ protected abstract openDBAdapter(options: PowerSyncDatabaseOptionsWithSettings): DBAdapter;
147
152
  protected abstract generateSyncStreamImplementation(connector: PowerSyncBackendConnector): AbstractStreamingSyncImplementation;
148
153
  protected abstract generateBucketStorageAdapter(): BucketStorageAdapter;
149
154
  /**
@@ -6,15 +6,15 @@ import { isBatchedUpdateNotification } from '../db/DBAdapter';
6
6
  import { SyncStatus } from '../db/crud/SyncStatus';
7
7
  import { UploadQueueStats } from '../db/crud/UploadQueueStatus';
8
8
  import { BaseObserver } from '../utils/BaseObserver';
9
+ import { ControlledExecutor } from '../utils/ControlledExecutor';
9
10
  import { mutexRunExclusive } from '../utils/mutex';
10
11
  import { quoteIdentifier } from '../utils/strings';
12
+ import { isDBAdapter, isSQLOpenFactory, isSQLOpenOptions } from './SQLOpenFactory';
11
13
  import { PSInternalTable } from './sync/bucket/BucketStorageAdapter';
12
14
  import { CrudBatch } from './sync/bucket/CrudBatch';
13
15
  import { CrudEntry } from './sync/bucket/CrudEntry';
14
16
  import { CrudTransaction } from './sync/bucket/CrudTransaction';
15
17
  import { DEFAULT_CRUD_UPLOAD_THROTTLE_MS } from './sync/stream/AbstractStreamingSyncImplementation';
16
- import { ControlledExecutor } from '../utils/ControlledExecutor';
17
- import { isDBAdapter, isSQLOpenFactory, isSQLOpenOptions } from './SQLOpenFactory';
18
18
  const POWERSYNC_TABLE_MATCH = /(^ps_data__|^ps_data_local__)/;
19
19
  const DEFAULT_DISCONNECT_CLEAR_OPTIONS = {
20
20
  clearLocal: true
@@ -34,6 +34,13 @@ export const DEFAULT_POWERSYNC_DB_OPTIONS = {
34
34
  * be obtained.
35
35
  */
36
36
  export const DEFAULT_LOCK_TIMEOUT_MS = 120_000; // 2 mins
37
+ /**
38
+ * Tests if the input is a {@link PowerSyncDatabaseOptionsWithSettings}
39
+ * @internal
40
+ */
41
+ export const isPowerSyncDatabaseOptionsWithSettings = (test) => {
42
+ return typeof test == 'object' && isSQLOpenOptions(test.database);
43
+ };
37
44
  export class AbstractPowerSyncDatabase extends BaseObserver {
38
45
  options;
39
46
  /**
@@ -68,8 +75,8 @@ export class AbstractPowerSyncDatabase extends BaseObserver {
68
75
  else if (isSQLOpenFactory(database)) {
69
76
  this._database = database.openDB();
70
77
  }
71
- else if (isSQLOpenOptions(database)) {
72
- this._database = this.openDBAdapter(database);
78
+ else if (isPowerSyncDatabaseOptionsWithSettings(options)) {
79
+ this._database = this.openDBAdapter(options);
73
80
  }
74
81
  this.bucketStorageAdapter = this.generateBucketStorageAdapter();
75
82
  this.closed = false;
@@ -663,4 +670,3 @@ export class AbstractPowerSyncDatabase extends BaseObserver {
663
670
  return this.database.readLock((tx) => tx.execute(sql, params));
664
671
  }
665
672
  }
666
- //# sourceMappingURL=AbstractPowerSyncDatabase.js.map
@@ -22,4 +22,3 @@ export class AbstractPowerSyncDatabaseOpenFactory {
22
22
  return this.generateInstance(options);
23
23
  }
24
24
  }
25
- //# sourceMappingURL=AbstractPowerSyncOpenFactory.js.map
@@ -8,6 +8,16 @@ export interface SQLOpenOptions {
8
8
  * Directory where the database file is located.
9
9
  */
10
10
  dbLocation?: string;
11
+ /**
12
+ * Enable debugMode to log queries to the performance timeline.
13
+ *
14
+ * Defaults to false.
15
+ *
16
+ * To enable in development builds, use:
17
+ *
18
+ * debugMode: process.env.NODE_ENV !== 'production'
19
+ */
20
+ debugMode?: boolean;
11
21
  }
12
22
  export interface SQLOpenFactory {
13
23
  /**
@@ -16,4 +16,3 @@ export const isSQLOpenFactory = (test) => {
16
16
  export const isDBAdapter = (test) => {
17
17
  return typeof test?.writeTransaction == 'function';
18
18
  };
19
- //# sourceMappingURL=SQLOpenFactory.js.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=PowerSyncBackendConnector.js.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=PowerSyncCredentials.js.map
@@ -6,4 +6,3 @@ export var PSInternalTable;
6
6
  PSInternalTable["OPLOG"] = "ps_oplog";
7
7
  PSInternalTable["UNTYPED"] = "ps_untyped";
8
8
  })(PSInternalTable || (PSInternalTable = {}));
9
- //# sourceMappingURL=BucketStorageAdapter.js.map
@@ -23,4 +23,3 @@ export class CrudBatch {
23
23
  this.complete = complete;
24
24
  }
25
25
  }
26
- //# sourceMappingURL=CrudBatch.js.map
@@ -82,4 +82,3 @@ export class CrudEntry {
82
82
  return [this.transactionId, this.clientId, this.op, this.table, this.id, this.opData];
83
83
  }
84
84
  }
85
- //# sourceMappingURL=CrudEntry.js.map
@@ -22,4 +22,3 @@ export class CrudTransaction extends CrudBatch {
22
22
  this.transactionId = transactionId;
23
23
  }
24
24
  }
25
- //# sourceMappingURL=CrudTransaction.js.map
@@ -20,4 +20,3 @@ export class OpType {
20
20
  return Object.entries(OpTypeEnum).find(([, value]) => value === this.value)[0];
21
21
  }
22
22
  }
23
- //# sourceMappingURL=OpType.js.map
@@ -31,4 +31,3 @@ export class OplogEntry {
31
31
  };
32
32
  }
33
33
  }
34
- //# sourceMappingURL=OplogEntry.js.map
@@ -295,4 +295,3 @@ export class SqliteBucketStorage extends BaseObserver {
295
295
  // No-op for now
296
296
  }
297
297
  }
298
- //# sourceMappingURL=SqliteBucketStorage.js.map
@@ -9,4 +9,3 @@ export class SyncDataBatch {
9
9
  this.buckets = buckets;
10
10
  }
11
11
  }
12
- //# sourceMappingURL=SyncDataBatch.js.map
@@ -38,4 +38,3 @@ export class SyncDataBucket {
38
38
  };
39
39
  }
40
40
  }
41
- //# sourceMappingURL=SyncDataBucket.js.map
@@ -1,5 +1,5 @@
1
1
  import { ILogger } from 'js-logger';
2
- import { type fetch } from 'cross-fetch';
2
+ import { fetch } from 'cross-fetch';
3
3
  import { PowerSyncCredentials } from '../../connection/PowerSyncCredentials';
4
4
  import { StreamingSyncLine, StreamingSyncRequest } from './streaming-sync-types';
5
5
  import { DataStream } from '../../../utils/DataStream';
@@ -1,4 +1,5 @@
1
1
  import Logger from 'js-logger';
2
+ import { fetch } from 'cross-fetch';
2
3
  import { DataStream } from '../../../utils/DataStream';
3
4
  import ndjsonStream from 'can-ndjson-stream';
4
5
  import { RSocketConnector } from 'rsocket-core';
@@ -22,7 +23,7 @@ export const DEFAULT_REMOTE_LOGGER = Logger.get('PowerSyncRemote');
22
23
  */
23
24
  export class FetchImplementationProvider {
24
25
  getFetch() {
25
- throw new Error('Unspecified fetch implementation');
26
+ return fetch.bind(globalThis);
26
27
  }
27
28
  }
28
29
  export const DEFAULT_REMOTE_OPTIONS = {
@@ -82,7 +83,7 @@ export class AbstractRemote {
82
83
  }
83
84
  async post(path, data, headers = {}) {
84
85
  const request = await this.buildRequest(path);
85
- const res = await this.fetch(request.url, {
86
+ const res = await fetch(request.url, {
86
87
  method: 'POST',
87
88
  headers: {
88
89
  ...headers,
@@ -179,8 +180,16 @@ export class AbstractRemote {
179
180
  socketIsClosed = true;
180
181
  rsocket.close();
181
182
  };
183
+ // Helps to prevent double close scenarios
184
+ rsocket.onClose(() => (socketIsClosed = true));
182
185
  // We initially request this amount and expect these to arrive eventually
183
186
  let pendingEventsCount = SYNC_QUEUE_REQUEST_N;
187
+ const disposeClosedListener = stream.registerListener({
188
+ closed: () => {
189
+ closeSocket();
190
+ disposeClosedListener();
191
+ }
192
+ });
184
193
  const socket = await new Promise((resolve, reject) => {
185
194
  let connectionEstablished = false;
186
195
  const res = rsocket.requestStream({
@@ -195,9 +204,8 @@ export class AbstractRemote {
195
204
  if (e.message !== 'Closed. ') {
196
205
  this.logger.error(e);
197
206
  }
198
- // RSocket will close this automatically
199
- // Attempting to close multiple times causes a console warning
200
- socketIsClosed = true;
207
+ // RSocket will close the RSocket stream automatically
208
+ // Close the downstream stream as well - this will close the RSocket connection and WebSocket
201
209
  stream.close();
202
210
  // Handles cases where the connection failed e.g. auth error or connection error
203
211
  if (!connectionEstablished) {
@@ -235,8 +243,7 @@ export class AbstractRemote {
235
243
  }
236
244
  },
237
245
  closed: () => {
238
- closeSocket();
239
- l?.();
246
+ l();
240
247
  }
241
248
  });
242
249
  /**
@@ -347,7 +354,7 @@ export class AbstractRemote {
347
354
  processStream();
348
355
  }
349
356
  });
350
- const jsonS = ndjsonStream(outputStream);
357
+ const jsonS = ndjsonStream(new Response(outputStream).body);
351
358
  const stream = new DataStream({
352
359
  logger: this.logger
353
360
  });
@@ -377,4 +384,3 @@ export class AbstractRemote {
377
384
  return stream;
378
385
  }
379
386
  }
380
- //# sourceMappingURL=AbstractRemote.js.map
@@ -493,4 +493,3 @@ export class AbstractStreamingSyncImplementation extends BaseObserver {
493
493
  return new Promise((resolve) => setTimeout(resolve, this.options.retryDelayMs));
494
494
  }
495
495
  }
496
- //# sourceMappingURL=AbstractStreamingSyncImplementation.js.map
@@ -20,4 +20,3 @@ export function isContinueCheckpointRequest(request) {
20
20
  export function isSyncNewCheckpointRequest(request) {
21
21
  return typeof request.request_checkpoint == 'object';
22
22
  }
23
- //# sourceMappingURL=streaming-sync-types.js.map
package/lib/db/Column.js CHANGED
@@ -23,4 +23,3 @@ export class Column {
23
23
  };
24
24
  }
25
25
  }
26
- //# sourceMappingURL=Column.js.map
@@ -17,4 +17,3 @@ export function isBatchedUpdateNotification(update) {
17
17
  export function extractTableUpdates(update) {
18
18
  return isBatchedUpdateNotification(update) ? update.tables : [update.table];
19
19
  }
20
- //# sourceMappingURL=DBAdapter.js.map
@@ -55,4 +55,3 @@ export class SyncStatus {
55
55
  };
56
56
  }
57
57
  }
58
- //# sourceMappingURL=SyncStatus.js.map
@@ -22,4 +22,3 @@ export class UploadQueueStats {
22
22
  }
23
23
  }
24
24
  }
25
- //# sourceMappingURL=UploadQueueStatus.js.map
@@ -27,4 +27,3 @@ export class Index {
27
27
  };
28
28
  }
29
29
  }
30
- //# sourceMappingURL=Index.js.map
@@ -27,4 +27,3 @@ export class IndexedColumn {
27
27
  };
28
28
  }
29
29
  }
30
- //# sourceMappingURL=IndexedColumn.js.map
@@ -34,4 +34,3 @@ export class Schema {
34
34
  });
35
35
  }
36
36
  }
37
- //# sourceMappingURL=Schema.js.map
@@ -111,4 +111,3 @@ export class Table {
111
111
  };
112
112
  }
113
113
  }
114
- //# sourceMappingURL=Table.js.map
@@ -41,4 +41,3 @@ export class TableV2 {
41
41
  }
42
42
  }
43
43
  }
44
- //# sourceMappingURL=TableV2.js.map
package/lib/index.js CHANGED
@@ -32,4 +32,3 @@ export * from './utils/strings';
32
32
  export * from './utils/DataStream';
33
33
  export * from './utils/parseQuery';
34
34
  export * from './types/types';
35
- //# sourceMappingURL=index.js.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=types.js.map
@@ -16,4 +16,3 @@ export class AbortOperation extends Error {
16
16
  }
17
17
  }
18
18
  }
19
- //# sourceMappingURL=AbortOperation.js.map
@@ -21,4 +21,3 @@ export class BaseObserver {
21
21
  }
22
22
  }
23
23
  }
24
- //# sourceMappingURL=BaseObserver.js.map
@@ -48,4 +48,3 @@ export class ControlledExecutor {
48
48
  }
49
49
  }
50
50
  }
51
- //# sourceMappingURL=ControlledExecutor.js.map
@@ -160,4 +160,3 @@ export class DataStream extends BaseObserver {
160
160
  }
161
161
  }
162
162
  }
163
- //# sourceMappingURL=DataStream.js.map
@@ -26,4 +26,3 @@ export async function mutexRunExclusive(mutex, callback, options) {
26
26
  });
27
27
  });
28
28
  }
29
- //# sourceMappingURL=mutex.js.map
@@ -14,4 +14,3 @@ export const parseQuery = (query, parameters) => {
14
14
  }
15
15
  return { sqlStatement, parameters: parameters };
16
16
  };
17
- //# sourceMappingURL=parseQuery.js.map
@@ -7,4 +7,3 @@ export function quoteJsonPath(path) {
7
7
  export function quoteIdentifier(s) {
8
8
  return `"${s.replaceAll('"', '""')}"`;
9
9
  }
10
- //# sourceMappingURL=strings.js.map
package/package.json CHANGED
@@ -1,18 +1,17 @@
1
1
  {
2
2
  "name": "@powersync/common",
3
- "version": "0.0.0-dev-20240723112746",
3
+ "version": "0.0.0-dev-20240726145924",
4
4
  "publishConfig": {
5
5
  "registry": "https://registry.npmjs.org/",
6
6
  "access": "public"
7
7
  },
8
8
  "description": "API definitions for JourneyApps PowerSync",
9
- "main": "dist/index.js",
9
+ "main": "lib/index.js",
10
10
  "types": "lib/index.d.ts",
11
11
  "author": "JOURNEYAPPS",
12
12
  "license": "Apache-2.0",
13
13
  "files": [
14
- "lib",
15
- "dist"
14
+ "lib"
16
15
  ],
17
16
  "repository": {
18
17
  "type": "git",
@@ -23,35 +22,27 @@
23
22
  },
24
23
  "homepage": "https://docs.powersync.com",
25
24
  "dependencies": {
26
- "js-logger": "^1.6.1"
27
- },
28
- "devDependencies": {
29
- "@rollup/plugin-commonjs": "^25.0.7",
30
- "@rollup/plugin-inject": "^5.0.5",
31
- "@rollup/plugin-json": "^6.1.0",
32
- "@rollup/plugin-node-resolve": "15.2.3",
33
- "@rollup/plugin-terser": "^0.4.4",
34
- "@types/lodash": "^4.14.197",
35
- "@types/node": "^20.5.9",
36
- "@types/uuid": "^9.0.1",
37
25
  "async-mutex": "^0.4.0",
38
- "bson": "^6.6.0",
39
26
  "buffer": "^6.0.3",
40
27
  "can-ndjson-stream": "^1.0.2",
41
28
  "cross-fetch": "^4.0.0",
42
29
  "event-iterator": "^2.0.0",
30
+ "js-logger": "^1.6.1",
43
31
  "lodash": "^4.17.21",
44
- "rollup": "4.14.3",
45
32
  "rsocket-core": "1.0.0-alpha.3",
46
- "rsocket-websocket-client": "1.0.0-alpha.3",
47
- "text-encoding": "^0.7.0",
33
+ "rsocket-websocket-client": "1.0.0-alpha.3"
34
+ },
35
+ "devDependencies": {
36
+ "@types/lodash": "^4.14.197",
37
+ "@types/node": "^20.5.9",
38
+ "@types/uuid": "^9.0.1",
48
39
  "typescript": "^5.5.3",
49
40
  "vitest": "^1.5.2",
50
- "web-streams-polyfill": "3.2.1"
41
+ "bson": "^6.6.0"
51
42
  },
52
43
  "scripts": {
53
- "build": "tsc -b && rollup -c rollup.config.mjs",
54
- "clean": "rm -rf lib tsconfig.tsbuildinfo dist",
44
+ "build": "tsc -b",
45
+ "clean": "rm -rf lib tsconfig.tsbuildinfo",
55
46
  "test": "vitest"
56
47
  }
57
48
  }