diff --git a/.changeset/tough-impalas-confess.md b/.changeset/tough-impalas-confess.md new file mode 100644 index 000000000..1bb00c74e --- /dev/null +++ b/.changeset/tough-impalas-confess.md @@ -0,0 +1,5 @@ +--- +'@powersync/common': minor +--- + +Correctly identify @powersync/common as an ES module diff --git a/.gitignore b/.gitignore index 001e54b54..f972b2a5d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,7 @@ node_modules lib dist -tsconfig.tsbuildinfo +*.tsbuildinfo .vscode .DS_STORE .idea diff --git a/packages/common/package.json b/packages/common/package.json index 4a28119e4..8647d4ecd 100644 --- a/packages/common/package.json +++ b/packages/common/package.json @@ -6,8 +6,17 @@ "access": "public" }, "description": "API definitions for JourneyApps PowerSync", - "main": "dist/index.js", + "type": "module", + "main": "dist/bundle.mjs", + "module": "dist/bundle.mjs", "types": "lib/index.d.ts", + "exports": { + ".": { + "import": "./dist/bundle.mjs", + "default": "./dist/bundle.mjs", + "types": "./lib/index.d.ts" + } + }, "author": "JOURNEYAPPS", "license": "Apache-2.0", "files": [ @@ -24,7 +33,7 @@ "homepage": "https://docs.powersync.com", "scripts": { "build": "tsc -b && rollup -c rollup.config.mjs", - "clean": "rm -rf lib tsconfig.tsbuildinfo dist", + "clean": "rm -rf lib dist tsconfig.tsbuildinfo", "test": "vitest" }, "dependencies": { diff --git a/packages/common/rollup.config.mjs b/packages/common/rollup.config.mjs index 48cc2eafd..e3c948079 100644 --- a/packages/common/rollup.config.mjs +++ b/packages/common/rollup.config.mjs @@ -13,7 +13,7 @@ export default (commandLineArgs) => { return { input: 'lib/index.js', output: { - file: 'dist/index.js', + file: 'dist/bundle.mjs', format: 'esm', sourcemap: sourcemap }, diff --git a/packages/common/src/client/AbstractPowerSyncDatabase.ts b/packages/common/src/client/AbstractPowerSyncDatabase.ts index d6cffe539..ba03c03c2 100644 --- a/packages/common/src/client/AbstractPowerSyncDatabase.ts +++ b/packages/common/src/client/AbstractPowerSyncDatabase.ts @@ -8,26 +8,26 @@ import { Transaction, UpdateNotification, isBatchedUpdateNotification -} from '../db/DBAdapter'; -import { SyncStatus } from '../db/crud/SyncStatus'; -import { UploadQueueStats } from '../db/crud/UploadQueueStatus'; -import { Schema } from '../db/schema/Schema'; -import { BaseObserver } from '../utils/BaseObserver'; -import { ControlledExecutor } from '../utils/ControlledExecutor'; -import { mutexRunExclusive } from '../utils/mutex'; +} from '../db/DBAdapter.js'; +import { SyncStatus } from '../db/crud/SyncStatus.js'; +import { UploadQueueStats } from '../db/crud/UploadQueueStatus.js'; +import { Schema } from '../db/schema/Schema.js'; +import { BaseObserver } from '../utils/BaseObserver.js'; +import { ControlledExecutor } from '../utils/ControlledExecutor.js'; +import { mutexRunExclusive } from '../utils/mutex.js'; import { throttleTrailing } from '../utils/throttle.js'; -import { SQLOpenFactory, SQLOpenOptions, isDBAdapter, isSQLOpenFactory, isSQLOpenOptions } from './SQLOpenFactory'; -import { PowerSyncBackendConnector } from './connection/PowerSyncBackendConnector'; -import { BucketStorageAdapter, PSInternalTable } from './sync/bucket/BucketStorageAdapter'; -import { CrudBatch } from './sync/bucket/CrudBatch'; -import { CrudEntry, CrudEntryJSON } from './sync/bucket/CrudEntry'; -import { CrudTransaction } from './sync/bucket/CrudTransaction'; +import { SQLOpenFactory, SQLOpenOptions, isDBAdapter, isSQLOpenFactory, isSQLOpenOptions } from './SQLOpenFactory.js'; +import { PowerSyncBackendConnector } from './connection/PowerSyncBackendConnector.js'; +import { BucketStorageAdapter, PSInternalTable } from './sync/bucket/BucketStorageAdapter.js'; +import { CrudBatch } from './sync/bucket/CrudBatch.js'; +import { CrudEntry, CrudEntryJSON } from './sync/bucket/CrudEntry.js'; +import { CrudTransaction } from './sync/bucket/CrudTransaction.js'; import { DEFAULT_CRUD_UPLOAD_THROTTLE_MS, PowerSyncConnectionOptions, StreamingSyncImplementation, StreamingSyncImplementationListener -} from './sync/stream/AbstractStreamingSyncImplementation'; +} from './sync/stream/AbstractStreamingSyncImplementation.js'; export interface DisconnectAndClearOptions { /** When set to false, data in local-only tables is preserved. */ diff --git a/packages/common/src/client/AbstractPowerSyncOpenFactory.ts b/packages/common/src/client/AbstractPowerSyncOpenFactory.ts index 1ef1f3a12..68f6dced5 100644 --- a/packages/common/src/client/AbstractPowerSyncOpenFactory.ts +++ b/packages/common/src/client/AbstractPowerSyncOpenFactory.ts @@ -1,8 +1,8 @@ import Logger from 'js-logger'; -import { DBAdapter } from '../db/DBAdapter'; -import { Schema } from '../db/schema/Schema'; -import { AbstractPowerSyncDatabase, PowerSyncDatabaseOptions } from './AbstractPowerSyncDatabase'; -import { SQLOpenOptions } from './SQLOpenFactory'; +import { DBAdapter } from '../db/DBAdapter.js'; +import { Schema } from '../db/schema/Schema.js'; +import { AbstractPowerSyncDatabase, PowerSyncDatabaseOptions } from './AbstractPowerSyncDatabase.js'; +import { SQLOpenOptions } from './SQLOpenFactory.js'; export interface PowerSyncOpenFactoryOptions extends Partial, SQLOpenOptions { /** Schema used for the local database. */ diff --git a/packages/common/src/client/SQLOpenFactory.ts b/packages/common/src/client/SQLOpenFactory.ts index 6fa7bd6ee..04515a0c5 100644 --- a/packages/common/src/client/SQLOpenFactory.ts +++ b/packages/common/src/client/SQLOpenFactory.ts @@ -1,4 +1,4 @@ -import { DBAdapter } from '../db/DBAdapter'; +import { DBAdapter } from '../db/DBAdapter.js'; export interface SQLOpenOptions { /** diff --git a/packages/common/src/client/connection/PowerSyncBackendConnector.ts b/packages/common/src/client/connection/PowerSyncBackendConnector.ts index 5cb174a2f..640a85396 100644 --- a/packages/common/src/client/connection/PowerSyncBackendConnector.ts +++ b/packages/common/src/client/connection/PowerSyncBackendConnector.ts @@ -1,5 +1,5 @@ -import { PowerSyncCredentials } from './PowerSyncCredentials'; -import type { AbstractPowerSyncDatabase } from '../AbstractPowerSyncDatabase'; +import { PowerSyncCredentials } from './PowerSyncCredentials.js'; +import type { AbstractPowerSyncDatabase } from '../AbstractPowerSyncDatabase.js'; export interface PowerSyncBackendConnector { /** Allows the PowerSync client to retrieve an authentication token from your backend diff --git a/packages/common/src/client/sync/bucket/BucketStorageAdapter.ts b/packages/common/src/client/sync/bucket/BucketStorageAdapter.ts index 028eb60fa..a7e52ab3c 100644 --- a/packages/common/src/client/sync/bucket/BucketStorageAdapter.ts +++ b/packages/common/src/client/sync/bucket/BucketStorageAdapter.ts @@ -1,7 +1,7 @@ -import { BaseListener, BaseObserver, Disposable } from '../../../utils/BaseObserver'; -import { CrudBatch } from './CrudBatch'; -import { CrudEntry, OpId } from './CrudEntry'; -import { SyncDataBatch } from './SyncDataBatch'; +import { BaseListener, BaseObserver, Disposable } from '../../../utils/BaseObserver.js'; +import { CrudBatch } from './CrudBatch.js'; +import { CrudEntry, OpId } from './CrudEntry.js'; +import { SyncDataBatch } from './SyncDataBatch.js'; export interface Checkpoint { last_op_id: OpId; diff --git a/packages/common/src/client/sync/bucket/CrudBatch.ts b/packages/common/src/client/sync/bucket/CrudBatch.ts index 6891f24ef..7f2e93674 100644 --- a/packages/common/src/client/sync/bucket/CrudBatch.ts +++ b/packages/common/src/client/sync/bucket/CrudBatch.ts @@ -1,4 +1,4 @@ -import { CrudEntry } from './CrudEntry'; +import { CrudEntry } from './CrudEntry.js'; /** * A batch of client-side changes. diff --git a/packages/common/src/client/sync/bucket/CrudTransaction.ts b/packages/common/src/client/sync/bucket/CrudTransaction.ts index 8b2955f82..e31629c3a 100644 --- a/packages/common/src/client/sync/bucket/CrudTransaction.ts +++ b/packages/common/src/client/sync/bucket/CrudTransaction.ts @@ -1,5 +1,5 @@ -import { CrudBatch } from './CrudBatch'; -import { CrudEntry } from './CrudEntry'; +import { CrudBatch } from './CrudBatch.js'; +import { CrudEntry } from './CrudEntry.js'; export class CrudTransaction extends CrudBatch { constructor( diff --git a/packages/common/src/client/sync/bucket/OplogEntry.ts b/packages/common/src/client/sync/bucket/OplogEntry.ts index 0a114f39a..cc8344522 100644 --- a/packages/common/src/client/sync/bucket/OplogEntry.ts +++ b/packages/common/src/client/sync/bucket/OplogEntry.ts @@ -1,5 +1,5 @@ -import { OpId } from './CrudEntry'; -import { OpType, OpTypeJSON } from './OpType'; +import { OpId } from './CrudEntry.js'; +import { OpType, OpTypeJSON } from './OpType.js'; export interface OplogEntryJSON { checksum: number; diff --git a/packages/common/src/client/sync/bucket/SqliteBucketStorage.ts b/packages/common/src/client/sync/bucket/SqliteBucketStorage.ts index 3b5023581..6c48ac21f 100644 --- a/packages/common/src/client/sync/bucket/SqliteBucketStorage.ts +++ b/packages/common/src/client/sync/bucket/SqliteBucketStorage.ts @@ -1,7 +1,8 @@ import { Mutex } from 'async-mutex'; import Logger, { ILogger } from 'js-logger'; -import { DBAdapter, Transaction, extractTableUpdates } from '../../../db/DBAdapter'; -import { BaseObserver } from '../../../utils/BaseObserver'; +import { DBAdapter, Transaction, extractTableUpdates } from '../../../db/DBAdapter.js'; +import { BaseObserver } from '../../../utils/BaseObserver.js'; +import { MAX_OP_ID } from '../../constants.js'; import { BucketState, BucketStorageAdapter, @@ -9,12 +10,10 @@ import { Checkpoint, PSInternalTable, SyncLocalDatabaseResult -} from './BucketStorageAdapter'; -import { CrudBatch } from './CrudBatch'; -import { MAX_OP_ID } from '../../constants'; -import { CrudEntry, CrudEntryJSON } from './CrudEntry'; -import { OpTypeEnum } from './OpType'; -import { SyncDataBatch } from './SyncDataBatch'; +} from './BucketStorageAdapter.js'; +import { CrudBatch } from './CrudBatch.js'; +import { CrudEntry, CrudEntryJSON } from './CrudEntry.js'; +import { SyncDataBatch } from './SyncDataBatch.js'; const COMPACT_OPERATION_INTERVAL = 1_000; diff --git a/packages/common/src/client/sync/bucket/SyncDataBatch.ts b/packages/common/src/client/sync/bucket/SyncDataBatch.ts index c20b9913d..3432f58ee 100644 --- a/packages/common/src/client/sync/bucket/SyncDataBatch.ts +++ b/packages/common/src/client/sync/bucket/SyncDataBatch.ts @@ -1,4 +1,4 @@ -import { SyncDataBucket } from './SyncDataBucket'; +import { SyncDataBucket } from './SyncDataBucket.js'; // TODO JSON diff --git a/packages/common/src/client/sync/bucket/SyncDataBucket.ts b/packages/common/src/client/sync/bucket/SyncDataBucket.ts index 38aaca473..4f9c6edb9 100644 --- a/packages/common/src/client/sync/bucket/SyncDataBucket.ts +++ b/packages/common/src/client/sync/bucket/SyncDataBucket.ts @@ -1,5 +1,5 @@ -import { OpId } from './CrudEntry'; -import { OplogEntry, OplogEntryJSON } from './OplogEntry'; +import { OpId } from './CrudEntry.js'; +import { OplogEntry, OplogEntryJSON } from './OplogEntry.js'; export type SyncDataBucketJSON = { bucket: string; diff --git a/packages/common/src/client/sync/stream/AbstractRemote.ts b/packages/common/src/client/sync/stream/AbstractRemote.ts index 730d438c9..73cd0a281 100644 --- a/packages/common/src/client/sync/stream/AbstractRemote.ts +++ b/packages/common/src/client/sync/stream/AbstractRemote.ts @@ -1,14 +1,14 @@ -import Logger, { ILogger } from 'js-logger'; -import { type fetch } from 'cross-fetch'; -import { PowerSyncCredentials } from '../../connection/PowerSyncCredentials'; -import { StreamingSyncLine, StreamingSyncRequest } from './streaming-sync-types'; -import { DataStream } from '../../../utils/DataStream'; +import type { BSON } from 'bson'; +import { Buffer } from 'buffer'; import ndjsonStream from 'can-ndjson-stream'; +import { type fetch } from 'cross-fetch'; +import Logger, { ILogger } from 'js-logger'; import { RSocket, RSocketConnector, Requestable } from 'rsocket-core'; import { WebsocketClientTransport } from 'rsocket-websocket-client'; -import type { BSON } from 'bson'; -import { AbortOperation } from '../../../utils/AbortOperation'; -import { Buffer } from 'buffer'; +import { AbortOperation } from '../../../utils/AbortOperation.js'; +import { DataStream } from '../../../utils/DataStream.js'; +import { PowerSyncCredentials } from '../../connection/PowerSyncCredentials.js'; +import { StreamingSyncLine, StreamingSyncRequest } from './streaming-sync-types.js'; import { version as POWERSYNC_JS_VERSION } from '../../../../package.json'; diff --git a/packages/common/src/client/sync/stream/AbstractStreamingSyncImplementation.ts b/packages/common/src/client/sync/stream/AbstractStreamingSyncImplementation.ts index 4baa5a47e..658fc61da 100644 --- a/packages/common/src/client/sync/stream/AbstractStreamingSyncImplementation.ts +++ b/packages/common/src/client/sync/stream/AbstractStreamingSyncImplementation.ts @@ -1,12 +1,12 @@ import Logger, { ILogger } from 'js-logger'; -import { SyncStatus, SyncStatusOptions } from '../../../db/crud/SyncStatus'; -import { AbortOperation } from '../../../utils/AbortOperation'; -import { BaseListener, BaseObserver, Disposable } from '../../../utils/BaseObserver'; -import { BucketChecksum, BucketStorageAdapter, Checkpoint } from '../bucket/BucketStorageAdapter'; -import { CrudEntry } from '../bucket/CrudEntry'; -import { SyncDataBucket } from '../bucket/SyncDataBucket'; -import { AbstractRemote, SyncStreamOptions } from './AbstractRemote'; +import { SyncStatus, SyncStatusOptions } from '../../../db/crud/SyncStatus.js'; +import { AbortOperation } from '../../../utils/AbortOperation.js'; +import { BaseListener, BaseObserver, Disposable } from '../../../utils/BaseObserver.js'; +import { BucketChecksum, BucketStorageAdapter, Checkpoint } from '../bucket/BucketStorageAdapter.js'; +import { CrudEntry } from '../bucket/CrudEntry.js'; +import { SyncDataBucket } from '../bucket/SyncDataBucket.js'; +import { AbstractRemote, SyncStreamOptions } from './AbstractRemote.js'; import { BucketRequest, StreamingSyncRequestParameterType, @@ -15,8 +15,8 @@ import { isStreamingSyncCheckpointComplete, isStreamingSyncCheckpointDiff, isStreamingSyncData -} from './streaming-sync-types'; -import { throttleLeadingTrailing } from '../../../utils/throttle'; +} from './streaming-sync-types.js'; +import { throttleLeadingTrailing } from '../../../utils/throttle.js'; export enum LockType { CRUD = 'crud', diff --git a/packages/common/src/client/sync/stream/streaming-sync-types.ts b/packages/common/src/client/sync/stream/streaming-sync-types.ts index d314d9126..2ad8f21e7 100644 --- a/packages/common/src/client/sync/stream/streaming-sync-types.ts +++ b/packages/common/src/client/sync/stream/streaming-sync-types.ts @@ -1,6 +1,6 @@ -import { BucketChecksum, Checkpoint } from '../bucket/BucketStorageAdapter'; -import { CrudEntry, OpId } from '../bucket/CrudEntry'; -import { SyncDataBucketJSON } from '../bucket/SyncDataBucket'; +import { BucketChecksum, Checkpoint } from '../bucket/BucketStorageAdapter.js'; +import { CrudEntry, OpId } from '../bucket/CrudEntry.js'; +import { SyncDataBucketJSON } from '../bucket/SyncDataBucket.js'; /** * For sync2.json diff --git a/packages/common/src/db/DBAdapter.ts b/packages/common/src/db/DBAdapter.ts index 8cc91062e..052ccf20d 100644 --- a/packages/common/src/db/DBAdapter.ts +++ b/packages/common/src/db/DBAdapter.ts @@ -3,7 +3,7 @@ * different SQLite DB implementations. */ -import { BaseListener, BaseObserverInterface } from '../utils/BaseObserver'; +import { BaseListener, BaseObserverInterface } from '../utils/BaseObserver.js'; /** * TODO most of these types could be exported to a common `types` package diff --git a/packages/common/src/db/schema/Index.ts b/packages/common/src/db/schema/Index.ts index c7b1f0d47..2fb070115 100644 --- a/packages/common/src/db/schema/Index.ts +++ b/packages/common/src/db/schema/Index.ts @@ -1,5 +1,5 @@ -import { IndexedColumn } from './IndexedColumn'; -import { Table } from './Table'; +import { IndexedColumn } from './IndexedColumn.js'; +import { Table } from './Table.js'; export interface IndexOptions { name: string; diff --git a/packages/common/src/db/schema/IndexedColumn.ts b/packages/common/src/db/schema/IndexedColumn.ts index 8b92ee43d..8e385d30f 100644 --- a/packages/common/src/db/schema/IndexedColumn.ts +++ b/packages/common/src/db/schema/IndexedColumn.ts @@ -1,5 +1,5 @@ -import { ColumnType } from './Column'; -import { Table } from './Table'; +import { ColumnType } from './Column.js'; +import { Table } from './Table.js'; export interface IndexColumnOptions { name: string; diff --git a/packages/common/src/db/schema/Schema.ts b/packages/common/src/db/schema/Schema.ts index 42fc4f930..82141e0e5 100644 --- a/packages/common/src/db/schema/Schema.ts +++ b/packages/common/src/db/schema/Schema.ts @@ -1,4 +1,4 @@ -import { RowType, Table } from './Table'; +import { RowType, Table } from './Table.js'; type SchemaType = Record>; diff --git a/packages/common/src/db/schema/Table.ts b/packages/common/src/db/schema/Table.ts index c0b4a3695..5f91afaf2 100644 --- a/packages/common/src/db/schema/Table.ts +++ b/packages/common/src/db/schema/Table.ts @@ -5,10 +5,10 @@ import { ColumnType, ExtractColumnValueType, MAX_AMOUNT_OF_COLUMNS -} from './Column'; -import { Index } from './Index'; -import { IndexedColumn } from './IndexedColumn'; -import { TableV2 } from './TableV2'; +} from './Column.js'; +import { Index } from './Index.js'; +import { IndexedColumn } from './IndexedColumn.js'; +import { TableV2 } from './TableV2.js'; export interface TableOptions { /** @@ -114,20 +114,20 @@ export class Table { */ constructor(columns: Columns, options?: TableV2Options); /** - * @deprecated This constructor will be removed in the next major release. - * Use the new constructor shown below instead as this does not show types. - * @example - * Use this instead - * ```javascript - * const table = new Table( - * { + * @deprecated This constructor will be removed in the next major release. + * Use the new constructor shown below instead as this does not show types. + * @example + * Use this instead + * ```javascript + * const table = new Table( + * { * name: column.text, * age: column.integer - * }, - * { indexes: { nameIndex: ['name'] } } - * ); - *``` - */ + * }, + * { indexes: { nameIndex: ['name'] } } + * ); + *``` + */ constructor(options: TableOptions); constructor(optionsOrColumns: Columns | TableOptions, v2Options?: TableV2Options) { if (this.isTableV1(optionsOrColumns)) { @@ -247,9 +247,7 @@ export class Table { } if (this.columns.length > MAX_AMOUNT_OF_COLUMNS) { - throw new Error( - `Table has too many columns. The maximum number of columns is ${MAX_AMOUNT_OF_COLUMNS}.` - ); + throw new Error(`Table has too many columns. The maximum number of columns is ${MAX_AMOUNT_OF_COLUMNS}.`); } const columnNames = new Set(); diff --git a/packages/common/src/db/schema/TableV2.ts b/packages/common/src/db/schema/TableV2.ts index 47e81c0f1..a863888e6 100644 --- a/packages/common/src/db/schema/TableV2.ts +++ b/packages/common/src/db/schema/TableV2.ts @@ -1,5 +1,5 @@ -import { ColumnsType } from './Column'; -import { Table } from './Table'; +import { ColumnsType } from './Column.js'; +import { Table } from './Table.js'; /** Generate a new table from the columns and indexes diff --git a/packages/common/src/index.ts b/packages/common/src/index.ts index b2bdb8ee5..44e5c947c 100644 --- a/packages/common/src/index.ts +++ b/packages/common/src/index.ts @@ -1,37 +1,37 @@ -export * from './client/AbstractPowerSyncDatabase'; -export * from './client/AbstractPowerSyncOpenFactory'; -export * from './client/SQLOpenFactory'; -export * from './client/connection/PowerSyncBackendConnector'; -export * from './client/connection/PowerSyncCredentials'; -export * from './client/sync/bucket/BucketStorageAdapter'; -export { UpdateType, CrudEntry, OpId } from './client/sync/bucket/CrudEntry'; -export * from './client/sync/bucket/SqliteBucketStorage'; -export * from './client/sync/bucket/CrudBatch'; -export * from './client/sync/bucket/CrudTransaction'; -export * from './client/sync/bucket/SyncDataBatch'; -export * from './client/sync/bucket/SyncDataBucket'; -export * from './client/sync/bucket/OpType'; -export * from './client/sync/bucket/OplogEntry'; -export * from './client/sync/stream/AbstractRemote'; -export * from './client/sync/stream/AbstractStreamingSyncImplementation'; -export * from './client/sync/stream/streaming-sync-types'; -export { MAX_OP_ID } from './client/constants'; +export * from './client/AbstractPowerSyncDatabase.js'; +export * from './client/AbstractPowerSyncOpenFactory.js'; +export * from './client/SQLOpenFactory.js'; +export * from './client/connection/PowerSyncBackendConnector.js'; +export * from './client/connection/PowerSyncCredentials.js'; +export * from './client/sync/bucket/BucketStorageAdapter.js'; +export { UpdateType, CrudEntry, OpId } from './client/sync/bucket/CrudEntry.js'; +export * from './client/sync/bucket/SqliteBucketStorage.js'; +export * from './client/sync/bucket/CrudBatch.js'; +export * from './client/sync/bucket/CrudTransaction.js'; +export * from './client/sync/bucket/SyncDataBatch.js'; +export * from './client/sync/bucket/SyncDataBucket.js'; +export * from './client/sync/bucket/OpType.js'; +export * from './client/sync/bucket/OplogEntry.js'; +export * from './client/sync/stream/AbstractRemote.js'; +export * from './client/sync/stream/AbstractStreamingSyncImplementation.js'; +export * from './client/sync/stream/streaming-sync-types.js'; +export { MAX_OP_ID } from './client/constants.js'; -export * from './db/crud/SyncStatus'; -export * from './db/crud/UploadQueueStatus'; -export * from './db/schema/Schema'; -export * from './db/schema/Table'; -export * from './db/schema/Index'; -export * from './db/schema/IndexedColumn'; -export * from './db/schema/Column'; -export * from './db/schema/TableV2'; -export * from './db/crud/SyncStatus'; -export * from './db/crud/UploadQueueStatus'; -export * from './db/DBAdapter'; +export * from './db/crud/SyncStatus.js'; +export * from './db/crud/UploadQueueStatus.js'; +export * from './db/schema/Schema.js'; +export * from './db/schema/Table.js'; +export * from './db/schema/Index.js'; +export * from './db/schema/IndexedColumn.js'; +export * from './db/schema/Column.js'; +export * from './db/schema/TableV2.js'; +export * from './db/crud/SyncStatus.js'; +export * from './db/crud/UploadQueueStatus.js'; +export * from './db/DBAdapter.js'; -export * from './utils/AbortOperation'; -export * from './utils/BaseObserver'; -export * from './utils/DataStream'; -export * from './utils/parseQuery'; +export * from './utils/AbortOperation.js'; +export * from './utils/BaseObserver.js'; +export * from './utils/DataStream.js'; +export * from './utils/parseQuery.js'; -export * from './types/types'; +export * from './types/types.js'; diff --git a/packages/common/src/utils/DataStream.ts b/packages/common/src/utils/DataStream.ts index b63ca36e6..14a6d1b44 100644 --- a/packages/common/src/utils/DataStream.ts +++ b/packages/common/src/utils/DataStream.ts @@ -1,5 +1,5 @@ import Logger, { ILogger } from 'js-logger'; -import { BaseListener, BaseObserver } from './BaseObserver'; +import { BaseListener, BaseObserver } from './BaseObserver.js'; export type DataStreamOptions = { /** diff --git a/packages/common/src/utils/parseQuery.ts b/packages/common/src/utils/parseQuery.ts index 8981cae15..fee2996cc 100644 --- a/packages/common/src/utils/parseQuery.ts +++ b/packages/common/src/utils/parseQuery.ts @@ -1,4 +1,4 @@ -import type { CompilableQuery } from '../types/types'; +import type { CompilableQuery } from '../types/types.js'; export interface ParsedQuery { sqlStatement: string; diff --git a/packages/common/tsconfig.json b/packages/common/tsconfig.json index e718a5891..9e406df13 100644 --- a/packages/common/tsconfig.json +++ b/packages/common/tsconfig.json @@ -8,7 +8,11 @@ "outDir": "./lib", "lib": ["esnext"], "declaration": true, + "module": "node16", + "moduleResolution": "node16", "preserveConstEnums": true, + "esModuleInterop": false, + "skipLibCheck": false, "strictNullChecks": true }, "include": ["src/**/*"]