@run-trace/duckdb-wasm 0.1.3 → 0.3.0

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 (93) hide show
  1. package/README.md +24 -20
  2. package/dist/duckdb-browser-blocking.cjs +14 -0
  3. package/dist/duckdb-browser-blocking.cjs.map +7 -0
  4. package/dist/duckdb-browser-blocking.d.ts +1 -0
  5. package/dist/duckdb-browser-blocking.mjs +14 -0
  6. package/dist/duckdb-browser-blocking.mjs.map +7 -0
  7. package/dist/duckdb-browser-coi.pthread.worker.js +1 -18
  8. package/dist/duckdb-browser-coi.pthread.worker.js.map +4 -4
  9. package/dist/duckdb-browser-coi.worker.js +1 -18
  10. package/dist/duckdb-browser-coi.worker.js.map +4 -4
  11. package/dist/duckdb-browser-eh.worker.js +1 -14
  12. package/dist/duckdb-browser-eh.worker.js.map +4 -4
  13. package/dist/duckdb-browser-mvp.worker.js +1 -14
  14. package/dist/duckdb-browser.cjs +2 -0
  15. package/dist/duckdb-browser.cjs.map +7 -0
  16. package/dist/duckdb-browser.d.ts +1 -1
  17. package/dist/duckdb-browser.mjs +2 -0
  18. package/dist/duckdb-browser.mjs.map +7 -0
  19. package/dist/duckdb-coi.wasm +0 -0
  20. package/dist/duckdb-eh.wasm +0 -0
  21. package/dist/duckdb-mvp.wasm +0 -0
  22. package/dist/duckdb-node-blocking.cjs +53 -0
  23. package/dist/duckdb-node-blocking.cjs.map +7 -0
  24. package/dist/duckdb-node-blocking.d.ts +1 -0
  25. package/dist/duckdb-node-eh.worker.cjs +4 -2
  26. package/dist/duckdb-node-eh.worker.cjs.map +4 -4
  27. package/dist/duckdb-node-mvp.worker.cjs +3 -2
  28. package/dist/duckdb-node-mvp.worker.cjs.map +4 -4
  29. package/dist/duckdb-node.cjs +2 -0
  30. package/dist/duckdb-node.cjs.map +7 -0
  31. package/dist/duckdb-node.d.ts +1 -1
  32. package/dist/types/{bindings → src/bindings}/bindings_base.d.ts +3 -2
  33. package/dist/types/{bindings → src/bindings}/bindings_browser_base.d.ts +2 -1
  34. package/dist/types/{bindings → src/bindings}/bindings_interface.d.ts +2 -0
  35. package/dist/types/{bindings → src/bindings}/bindings_node_base.d.ts +2 -1
  36. package/dist/types/{bindings → src/bindings}/connection.d.ts +18 -6
  37. package/dist/types/{bindings → src/bindings}/duckdb_module.d.ts +1 -3
  38. package/dist/types/src/bindings/index.d.ts +11 -0
  39. package/dist/types/{bindings → src/bindings}/insert_options.d.ts +10 -3
  40. package/dist/types/{bindings → src/bindings}/runtime.d.ts +1 -7
  41. package/dist/types/{bindings → src/bindings}/udf_function.d.ts +3 -2
  42. package/dist/types/src/index.d.ts +7 -0
  43. package/dist/types/{sql_field.d.ts → src/json_typedef.d.ts} +6 -3
  44. package/dist/types/{parallel → src/parallel}/async_bindings_interface.d.ts +2 -2
  45. package/dist/types/{parallel → src/parallel}/async_connection.d.ts +17 -6
  46. package/dist/types/src/parallel/index.d.ts +5 -0
  47. package/dist/types/{platform.d.ts → src/platform.d.ts} +1 -0
  48. package/dist/types/src/targets/duckdb-browser-blocking.d.ts +12 -0
  49. package/dist/types/src/targets/duckdb-browser-coi.pthread.worker.d.ts +1 -0
  50. package/dist/types/src/targets/duckdb-node-blocking.d.ts +13 -0
  51. package/dist/types/src/targets/duckdb.d.ts +9 -0
  52. package/dist/types/src/version.d.ts +5 -0
  53. package/package.json +97 -42
  54. package/dist/duckdb-browser-mvp.worker.js.map +0 -7
  55. package/dist/duckdb-node.mjs +0 -8
  56. package/dist/duckdb-node.mjs.map +0 -7
  57. package/dist/duckdb-wasm.mjs +0 -1160
  58. package/dist/duckdb-wasm.umd.js +0 -1
  59. package/dist/types/bindings/index.d.ts +0 -11
  60. package/dist/types/duckdb.d.ts +0 -8
  61. package/dist/types/index.d.ts +0 -11
  62. package/dist/types/parallel/index.d.ts +0 -5
  63. package/dist/types/targets/duckdb.d.ts +0 -10
  64. package/dist/types/worker_node.d.ts +0 -6
  65. /package/dist/types/{bindings → src/bindings}/bindings_browser_coi.d.ts +0 -0
  66. /package/dist/types/{bindings → src/bindings}/bindings_browser_eh.d.ts +0 -0
  67. /package/dist/types/{bindings → src/bindings}/bindings_browser_mvp.d.ts +0 -0
  68. /package/dist/types/{bindings → src/bindings}/bindings_node_eh.d.ts +0 -0
  69. /package/dist/types/{bindings → src/bindings}/bindings_node_mvp.d.ts +0 -0
  70. /package/dist/types/{bindings → src/bindings}/config.d.ts +0 -0
  71. /package/dist/types/{bindings → src/bindings}/file_stats.d.ts +0 -0
  72. /package/dist/types/{bindings → src/bindings}/progress.d.ts +0 -0
  73. /package/dist/types/{bindings → src/bindings}/runtime_browser.d.ts +0 -0
  74. /package/dist/types/{bindings → src/bindings}/runtime_node.d.ts +0 -0
  75. /package/dist/types/{bindings → src/bindings}/tokens.d.ts +0 -0
  76. /package/dist/types/{bindings → src/bindings}/udf_runtime.d.ts +0 -0
  77. /package/dist/types/{bindings → src/bindings}/web_file.d.ts +0 -0
  78. /package/dist/types/{targets/duckdb-browser-coi.pthread.worker.d.ts → src/index_docs.d.ts} +0 -0
  79. /package/dist/types/{log.d.ts → src/log.d.ts} +0 -0
  80. /package/dist/types/{parallel → src/parallel}/async_bindings.d.ts +0 -0
  81. /package/dist/types/{parallel → src/parallel}/worker_dispatcher.d.ts +0 -0
  82. /package/dist/types/{parallel → src/parallel}/worker_request.d.ts +0 -0
  83. /package/dist/types/{status.d.ts → src/status.d.ts} +0 -0
  84. /package/dist/types/{targets → src/targets}/duckdb-browser-coi.worker.d.ts +0 -0
  85. /package/dist/types/{targets → src/targets}/duckdb-browser-eh.worker.d.ts +0 -0
  86. /package/dist/types/{targets → src/targets}/duckdb-browser-mvp.worker.d.ts +0 -0
  87. /package/dist/types/{targets → src/targets}/duckdb-node-eh.worker.d.ts +0 -0
  88. /package/dist/types/{targets → src/targets}/duckdb-node-mvp.worker.d.ts +0 -0
  89. /package/dist/types/{utils → src/utils}/binary_dump.d.ts +0 -0
  90. /package/dist/types/{utils → src/utils}/index.d.ts +0 -0
  91. /package/dist/types/{utils → src/utils}/opfs_util.d.ts +0 -0
  92. /package/dist/types/{utils → src/utils}/s3_helper.d.ts +0 -0
  93. /package/dist/types/{worker.d.ts → src/worker.d.ts} +0 -0
@@ -1,3 +1,4 @@
1
+ /// <reference types="emscripten" />
1
2
  export interface PThread {
2
3
  unusedWorkers: Worker[];
3
4
  runningWorkers: Worker[];
@@ -10,7 +11,4 @@ export interface DuckDBModule extends EmscriptenModule {
10
11
  stringToUTF8: typeof stringToUTF8;
11
12
  ccall: typeof ccall;
12
13
  PThread: PThread;
13
- /** WebAssembly.Memory object — exposed on Module for COI builds so TS code
14
- * can detect memory growth from other threads (mirrors GROWABLE_HEAP pattern). */
15
- wasmMemory?: WebAssembly.Memory;
16
14
  }
@@ -0,0 +1,11 @@
1
+ export * from './bindings_interface';
2
+ export * from './bindings_base';
3
+ export * from './config';
4
+ export * from './connection';
5
+ export * from './duckdb_module';
6
+ export * from './file_stats';
7
+ export * from './runtime';
8
+ export * from './insert_options';
9
+ export * from './progress';
10
+ export * from './tokens';
11
+ export * from './web_file';
@@ -1,4 +1,5 @@
1
- import { SQLField } from '../sql_field';
1
+ import * as arrow from 'apache-arrow';
2
+ import { SQLField } from '../json_typedef';
2
3
  export declare enum JSONTableShape {
3
4
  ROW_ARRAY = "row-array",
4
5
  COLUMN_OBJECT = "column-object"
@@ -8,7 +9,10 @@ export interface JSONInsertOptions {
8
9
  schema?: string;
9
10
  create?: boolean;
10
11
  shape?: JSONTableShape;
11
- columns?: SQLField[];
12
+ columns?: {
13
+ [key: string]: arrow.DataType;
14
+ };
15
+ columnsFlat?: SQLField[];
12
16
  }
13
17
  export interface CSVInsertOptions {
14
18
  name: string;
@@ -22,7 +26,10 @@ export interface CSVInsertOptions {
22
26
  detect?: boolean;
23
27
  dateFormat?: string;
24
28
  timestampFormat?: string;
25
- columns?: SQLField[];
29
+ columns?: {
30
+ [key: string]: arrow.DataType;
31
+ };
32
+ columnsFlat?: SQLField[];
26
33
  }
27
34
  export interface ArrowInsertOptions {
28
35
  name: string;
@@ -1,16 +1,10 @@
1
+ /// <reference types="emscripten" />
1
2
  import { DuckDBModule } from './duckdb_module';
2
3
  import { UDFFunction } from './udf_function';
3
4
  /** Helper to decode text */
4
5
  export declare const decodeText: (input?: BufferSource) => string;
5
6
  /** Copy a buffer */
6
7
  export declare function failWith(mod: DuckDBModule, msg: string): void;
7
- /** In COI mode, another pthread can grow WASM memory at any time. When that
8
- * happens, wasmMemory.buffer changes but Module.HEAPU8/HEAPF64 still point
9
- * to views over the old (smaller) buffer. Emscripten's own GROWABLE_HEAP_*
10
- * wrappers handle this for generated glue code, but our TS bypasses them.
11
- * This mirrors that check: compare wasmMemory.buffer to HEAPU8.buffer and
12
- * refresh the views if they diverge. No-op for EH/MVP (wasmMemory unset). */
13
- export declare function ensureFreshMemoryViews(mod: DuckDBModule): void;
14
8
  /** Copy a buffer */
15
9
  export declare function copyBuffer(mod: DuckDBModule, begin: number, length: number): Uint8Array;
16
10
  /** Decode a string */
@@ -1,4 +1,5 @@
1
- import { SQLType } from '../sql_field';
1
+ import { SQLType } from '../json_typedef';
2
+ import * as arrow from 'apache-arrow';
2
3
  export interface UDFFunctionDeclaration {
3
4
  functionId: number;
4
5
  name: string;
@@ -8,6 +9,6 @@ export interface UDFFunction {
8
9
  functionId: number;
9
10
  connectionId: number;
10
11
  name: string;
11
- returnType: SQLType;
12
+ returnType: arrow.DataType;
12
13
  func: (...args: any[]) => any;
13
14
  }
@@ -0,0 +1,7 @@
1
+ export * from './bindings';
2
+ export * from './log';
3
+ export * from './parallel';
4
+ export * from './status';
5
+ export * from './platform';
6
+ export * from './version';
7
+ export * from './worker';
@@ -1,6 +1,4 @@
1
- export type SQLField = SQLType & {
2
- name: string;
3
- };
1
+ import * as arrow from 'apache-arrow';
4
2
  export interface SQLType {
5
3
  sqlType: string;
6
4
  nullable?: boolean;
@@ -12,3 +10,8 @@ export interface SQLType {
12
10
  valueType?: SQLType;
13
11
  fields?: SQLField[];
14
12
  }
13
+ export declare function arrowToSQLType(type: arrow.DataType): SQLType;
14
+ export type SQLField = SQLType & {
15
+ name: string;
16
+ };
17
+ export declare function arrowToSQLField(name: string, type: arrow.DataType): SQLField;
@@ -1,5 +1,5 @@
1
1
  import { Logger } from '../log';
2
- import { ArrowInsertOptions, CSVInsertOptions, JSONInsertOptions } from '../bindings/insert_options';
2
+ import { CSVInsertOptions, JSONInsertOptions } from '../bindings/insert_options';
3
3
  import { DuckDBDataProtocol } from '../bindings';
4
4
  /** An interface for the async DuckDB bindings */
5
5
  export interface AsyncDuckDBBindings {
@@ -19,7 +19,7 @@ export interface AsyncDuckDBBindings {
19
19
  closePrepared(conn: number, statement: number): Promise<void>;
20
20
  runPrepared(conn: number, statement: number, params: any[]): Promise<Uint8Array>;
21
21
  sendPrepared(conn: number, statement: number, params: any[]): Promise<Uint8Array>;
22
- insertArrowFromIPCStream(conn: number, buffer: Uint8Array, options?: ArrowInsertOptions): Promise<void>;
22
+ insertArrowFromIPCStream(conn: number, buffer: Uint8Array, options?: CSVInsertOptions): Promise<void>;
23
23
  insertCSVFromPath(conn: number, path: string, options: CSVInsertOptions): Promise<void>;
24
24
  insertJSONFromPath(conn: number, path: string, options: JSONInsertOptions): Promise<void>;
25
25
  dropFile(name: string): Promise<null>;
@@ -1,3 +1,4 @@
1
+ import * as arrow from 'apache-arrow';
1
2
  import { AsyncDuckDB } from './async_bindings';
2
3
  import { ArrowInsertOptions, CSVInsertOptions, JSONInsertOptions } from '../bindings/insert_options';
3
4
  /** A thin helper to memoize the connection id */
@@ -14,15 +15,23 @@ export declare class AsyncDuckDBConnection {
14
15
  /** Brave souls may use this function to consume the underlying connection id */
15
16
  useUnsafe<R>(callback: (bindings: AsyncDuckDB, conn: number) => R): R;
16
17
  /** Run a query */
17
- query(text: string): Promise<Uint8Array>;
18
+ query<T extends {
19
+ [key: string]: arrow.DataType;
20
+ } = any>(text: string): Promise<arrow.Table<T>>;
18
21
  /** Send a query */
19
- send(text: string, allowStreamResult?: boolean): Promise<AsyncIterable<Uint8Array>>;
22
+ send<T extends {
23
+ [key: string]: arrow.DataType;
24
+ } = any>(text: string, allowStreamResult?: boolean): Promise<arrow.AsyncRecordBatchStreamReader<T>>;
20
25
  /** Cancel a query that was sent earlier */
21
26
  cancelSent(): Promise<boolean>;
22
27
  /** Get table names */
23
28
  getTableNames(query: string): Promise<string[]>;
24
29
  /** Create a prepared statement */
25
- prepare(text: string): Promise<AsyncPreparedStatement>;
30
+ prepare<T extends {
31
+ [key: string]: arrow.DataType;
32
+ } = any>(text: string): Promise<AsyncPreparedStatement<T>>;
33
+ /** Insert an arrow table */
34
+ insertArrowTable(table: arrow.Table, options: ArrowInsertOptions): Promise<void>;
26
35
  /** Insert an arrow table from an ipc stream */
27
36
  insertArrowFromIPCStream(buffer: Uint8Array, options: ArrowInsertOptions): Promise<void>;
28
37
  /** Insert csv file from path */
@@ -46,7 +55,9 @@ export declare class AsyncResultStreamIterator implements AsyncIterable<Uint8Arr
46
55
  [Symbol.asyncIterator](): this;
47
56
  }
48
57
  /** A thin helper to bind the prepared statement id */
49
- export declare class AsyncPreparedStatement {
58
+ export declare class AsyncPreparedStatement<T extends {
59
+ [key: string]: arrow.DataType;
60
+ } = any> {
50
61
  /** The bindings */
51
62
  protected readonly bindings: AsyncDuckDB;
52
63
  /** The connection id */
@@ -58,7 +69,7 @@ export declare class AsyncPreparedStatement {
58
69
  /** Close a prepared statement */
59
70
  close(): Promise<void>;
60
71
  /** Run a prepared statement */
61
- query(...params: any[]): Promise<Uint8Array>;
72
+ query(...params: any[]): Promise<arrow.Table<T>>;
62
73
  /** Send a prepared statement */
63
- send(...params: any[]): Promise<AsyncIterable<Uint8Array>>;
74
+ send(...params: any[]): Promise<arrow.AsyncRecordBatchStreamReader<T>>;
64
75
  }
@@ -0,0 +1,5 @@
1
+ export * from './async_connection';
2
+ export * from './async_bindings_interface';
3
+ export * from './async_bindings';
4
+ export * from './worker_dispatcher';
5
+ export * from './worker_request';
@@ -21,6 +21,7 @@ export interface DuckDBBundles {
21
21
  pthreadWorker: string;
22
22
  };
23
23
  }
24
+ export declare function getJsDelivrBundles(): DuckDBBundles;
24
25
  export interface DuckDBBundle {
25
26
  mainModule: string;
26
27
  mainWorker: string | null;
@@ -0,0 +1,12 @@
1
+ export * from '../bindings';
2
+ export * from '../log';
3
+ export * from '../platform';
4
+ export * from '../status';
5
+ export * from '../version';
6
+ export { DuckDBDataProtocol } from '../bindings/runtime';
7
+ export { DEFAULT_RUNTIME } from '../bindings/runtime';
8
+ export { BROWSER_RUNTIME } from '../bindings/runtime_browser';
9
+ import { Logger } from '../log';
10
+ import { DuckDBRuntime, DuckDBBindings } from '../bindings';
11
+ import { DuckDBBundles } from '../platform';
12
+ export declare function createDuckDB(bundles: DuckDBBundles, logger: Logger, runtime: DuckDBRuntime): Promise<DuckDBBindings>;
@@ -0,0 +1,13 @@
1
+ export * from '../bindings';
2
+ export * from '../log';
3
+ export * from '../platform';
4
+ export * from '../status';
5
+ export * from '../version';
6
+ export { DuckDBDataProtocol } from '../bindings/runtime';
7
+ export { DEFAULT_RUNTIME } from '../bindings/runtime';
8
+ export { NODE_RUNTIME } from '../bindings/runtime_node';
9
+ import { Logger } from '../log';
10
+ import { DuckDBRuntime } from '../bindings';
11
+ import { DuckDBNodeBindings } from '../bindings/bindings_node_base';
12
+ import { DuckDBBundles } from '../platform';
13
+ export declare function createDuckDB(bundles: DuckDBBundles, logger: Logger, runtime: DuckDBRuntime): Promise<DuckDBNodeBindings>;
@@ -0,0 +1,9 @@
1
+ export * from '../bindings/config';
2
+ export * from '../bindings/tokens';
3
+ export * from '../log';
4
+ export * from '../status';
5
+ export * from '../parallel';
6
+ export * from '../platform';
7
+ export * from '../version';
8
+ export * from '../worker';
9
+ export { InstantiationProgress, InstantiationProgressHandler, DuckDBDataProtocol, WebFile } from '../bindings';
@@ -0,0 +1,5 @@
1
+ export declare const PACKAGE_NAME: string;
2
+ export declare const PACKAGE_VERSION: string;
3
+ export declare const PACKAGE_VERSION_MAJOR: string;
4
+ export declare const PACKAGE_VERSION_MINOR: string;
5
+ export declare const PACKAGE_VERSION_PATCH: string;
package/package.json CHANGED
@@ -1,53 +1,94 @@
1
1
  {
2
2
  "name": "@run-trace/duckdb-wasm",
3
- "version": "0.1.3",
4
- "description": "A custom build of DuckDB-WASM with linked extensions, wasmfs, and example rust functions.",
3
+ "version": "0.3.0",
4
+ "description": "DuckDB powered by WebAssembly Trace fork with bundled extensions",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",
8
8
  "url": "https://github.com/trace-github/duckdb-wasm.git"
9
9
  },
10
- "publishConfig": {
11
- "access": "public"
12
- },
13
10
  "keywords": [
11
+ "sql",
12
+ "duckdb",
13
+ "relational",
14
+ "database",
15
+ "data",
16
+ "query",
14
17
  "wasm",
15
- "duckdb"
18
+ "analytics",
19
+ "olap",
20
+ "arrow",
21
+ "parquet",
22
+ "json",
23
+ "csv"
16
24
  ],
25
+ "dependencies": {
26
+ "apache-arrow": "^17.0.0",
27
+ "qs": "^6.14.1"
28
+ },
17
29
  "devDependencies": {
18
- "@types/emscripten": "^1.40.1",
19
- "@types/node": "^24.0.3",
20
- "apache-arrow": "^18.0.0",
21
- "eslint": "^9.29.0",
30
+ "@types/emscripten": "^1.39.10",
31
+ "@types/jasmine": "^5.1.13",
32
+ "@typescript-eslint/eslint-plugin": "^6.21.0",
33
+ "@typescript-eslint/parser": "^6.21.0",
34
+ "esbuild": "^0.20.2",
35
+ "eslint": "^8.57.0",
36
+ "eslint-plugin-jasmine": "^4.1.3",
37
+ "eslint-plugin-react": "^7.37.5",
38
+ "fast-glob": "^3.3.2",
39
+ "jasmine": "^5.13.0",
40
+ "jasmine-core": "^5.1.2",
41
+ "jasmine-spec-reporter": "^7.0.0",
22
42
  "js-sha256": "^0.11.1",
23
- "rimraf": "^6.0.1",
24
- "typescript": "^5.8.3",
25
- "typescript-eslint": "^8.34.1",
26
- "vite": "^6.3.5",
27
- "vitest": "^3.2.4",
28
- "wasm-feature-detect": "^1.8.0",
29
- "web-worker": "^1.5.0"
43
+ "karma": "^6.4.2",
44
+ "karma-chrome-launcher": "^3.2.0",
45
+ "karma-coverage": "^2.2.1",
46
+ "karma-firefox-launcher": "^2.1.3",
47
+ "karma-jasmine": "^5.1.0",
48
+ "karma-jasmine-html-reporter": "^2.1.0",
49
+ "karma-sourcemap-loader": "^0.4.0",
50
+ "karma-spec-reporter": "^0.0.36",
51
+ "make-dir": "^4.0.0",
52
+ "nyc": "^15.1.0",
53
+ "prettier": "^3.2.5",
54
+ "puppeteer": "^22.8.0",
55
+ "rimraf": "^5.0.5",
56
+ "s3rver": "^3.7.1",
57
+ "typedoc": "^0.28.15",
58
+ "typescript": "^5.3.3",
59
+ "wasm-feature-detect": "^1.6.1",
60
+ "web-worker": "^1.2.0"
30
61
  },
31
62
  "scripts": {
32
- "prebuild": "rimraf dist && mkdir dist",
33
- "build": "vite build && npm run bundle && tsc",
34
- "lint": "eslint src test",
35
- "test": "vitest run",
36
- "dev": "npm run bundle && vite",
37
- "bundle:debug": "node bin/bundle.mjs debug",
38
- "bundle": "node bin/bundle.mjs release",
39
- "format": "prettier --write \"**/*.+(js|ts)\""
63
+ "build:debug": "node bundle.mjs debug && tsc --emitDeclarationOnly",
64
+ "build:release": "node bundle.mjs release && tsc --emitDeclarationOnly",
65
+ "docs": "typedoc",
66
+ "format": "prettier --write \"**/*.+(js|ts)\"",
67
+ "report": "node ./coverage.mjs",
68
+ "test:node": "node --enable-source-maps ../../node_modules/jasmine/bin/jasmine ./dist/tests-node.cjs",
69
+ "test:node:debug": "node --inspect-brk --enable-source-maps ../../node_modules/jasmine/bin/jasmine ./dist/tests-node.cjs",
70
+ "test:node:coverage": "nyc -r json --report-dir ./coverage/node node ../../node_modules/jasmine/bin/jasmine ./dist/tests-node.cjs",
71
+ "test:firefox": "karma start ./karma/tests-firefox.cjs",
72
+ "test:chrome": "karma start ./karma/tests-chrome.cjs",
73
+ "test:chrome:eh": "karma start ./karma/tests-chrome-eh.cjs",
74
+ "test:chrome:coverage": "karma start ./karma/tests-chrome-coverage.cjs",
75
+ "test:browser": "karma start ./karma/tests-all.cjs",
76
+ "test:browser:debug": "karma start ./karma/tests-debug.cjs",
77
+ "test": "npm run test:chrome && npm run test:node",
78
+ "test:coverage": "npm run test:chrome:coverage && npm run test:node:coverage && npm run report",
79
+ "lint": "eslint src test"
40
80
  },
41
81
  "files": [
42
82
  "dist",
43
83
  "!dist/tests-*",
84
+ "!dist/duckdb-browser-mvp.worker.js.map",
44
85
  "!dist/types/test"
45
86
  ],
46
- "main": "dist/duckdb-wasm.mjs",
47
- "module": "dist/duckdb-wasm.mjs",
87
+ "main": "dist/duckdb-browser.cjs",
88
+ "module": "dist/duckdb-browser.mjs",
48
89
  "types": "dist/duckdb-browser.d.ts",
49
- "jsdelivr": "dist/duckdb-wasm.mjs",
50
- "unpkg": "dist/duckdb-wasm.mjs",
90
+ "jsdelivr": "dist/duckdb-browser.cjs",
91
+ "unpkg": "dist/duckdb-browser.mjs",
51
92
  "sideEffects": false,
52
93
  "browser": {
53
94
  "fs": false,
@@ -60,29 +101,43 @@
60
101
  "./dist/duckdb-mvp.wasm": "./dist/duckdb-mvp.wasm",
61
102
  "./dist/duckdb-eh.wasm": "./dist/duckdb-eh.wasm",
62
103
  "./dist/duckdb-coi.wasm": "./dist/duckdb-coi.wasm",
63
- "./dist/duckdb-browser": "./dist/duckdb-wasm.mjs",
64
- "./dist/duckdb-wasm.mjs": "./dist/duckdb-wasm.mjs",
65
- "./dist/duckdb-wasm.umd.js": "./dist/duckdb-wasm.umd.js",
104
+ "./dist/duckdb-browser": "./dist/duckdb-browser.mjs",
105
+ "./dist/duckdb-browser.cjs": "./dist/duckdb-browser.cjs",
106
+ "./dist/duckdb-browser.mjs": "./dist/duckdb-browser.mjs",
66
107
  "./dist/duckdb-browser-coi.pthread.worker.js": "./dist/duckdb-browser-coi.pthread.worker.js",
67
108
  "./dist/duckdb-browser-coi.worker.js": "./dist/duckdb-browser-coi.worker.js",
68
109
  "./dist/duckdb-browser-eh.worker.js": "./dist/duckdb-browser-eh.worker.js",
69
110
  "./dist/duckdb-browser-mvp.worker.js": "./dist/duckdb-browser-mvp.worker.js",
70
- "./dist/duckdb-node-mvp.worker.cjs": "./dist/duckdb-node-mvp.worker.cjs",
111
+ "./dist/duckdb-node": "./dist/duckdb-node.cjs",
112
+ "./dist/duckdb-node.cjs": "./dist/duckdb-node.cjs",
113
+ "./dist/duckdb-node-blocking": "./dist/duckdb-node-blocking.cjs",
114
+ "./dist/duckdb-node-blocking.cjs": "./dist/duckdb-node-blocking.cjs",
71
115
  "./dist/duckdb-node-eh.worker.cjs": "./dist/duckdb-node-eh.worker.cjs",
72
- "./dist/duckdb-node.mjs": "./dist/duckdb-node.mjs",
116
+ "./dist/duckdb-node-mvp.worker.cjs": "./dist/duckdb-node-mvp.worker.cjs",
117
+ "./blocking": {
118
+ "node": {
119
+ "types": "./dist/duckdb-node-blocking.d.ts",
120
+ "require": "./dist/duckdb-node-blocking.cjs",
121
+ "import": "./dist/duckdb-node-blocking.cjs"
122
+ },
123
+ "types": "./dist/duckdb-node-blocking.d.ts",
124
+ "import": "./dist/duckdb-node-blocking.mjs",
125
+ "require": "./dist/duckdb-node-blocking.cjs"
126
+ },
73
127
  ".": {
74
128
  "browser": {
75
129
  "types": "./dist/duckdb-browser.d.ts",
76
- "import": "./dist/duckdb-wasm.mjs",
77
- "require": "./dist/duckdb-wasm.umd.js"
130
+ "import": "./dist/duckdb-browser.mjs",
131
+ "require": "./dist/duckdb-browser.cjs"
132
+ },
133
+ "node": {
134
+ "types": "./dist/duckdb-node.d.ts",
135
+ "import": "./dist/duckdb-node.cjs",
136
+ "require": "./dist/duckdb-node.cjs"
78
137
  },
79
138
  "types": "./dist/duckdb-browser.d.ts",
80
- "import": "./dist/duckdb-wasm.mjs",
81
- "require": "./dist/duckdb-wasm.umd.js"
82
- },
83
- "./node": {
84
- "types": "./dist/duckdb-node.d.ts",
85
- "import": "./dist/duckdb-node.mjs"
139
+ "import": "./dist/duckdb-browser.mjs",
140
+ "require": "./dist/duckdb-browser.cjs"
86
141
  }
87
142
  }
88
143
  }