@lix-js/sdk 0.12.3 → 0.14.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 (50) hide show
  1. package/README.md +40 -10
  2. package/dist/binding-types.d.ts +37 -9
  3. package/dist/binding.browser.d.ts +2 -2
  4. package/dist/binding.browser.js +25 -10
  5. package/dist/binding.node-wasm.d.ts +2 -2
  6. package/dist/binding.node-wasm.js +8 -4
  7. package/dist/binding.node.d.ts +3 -3
  8. package/dist/binding.node.js +70 -13
  9. package/dist/browser-wasm-init.d.ts +14 -0
  10. package/dist/browser-wasm-init.js +16 -0
  11. package/dist/bundled-plugins/plugin_csv.lixplugin +0 -0
  12. package/dist/bundled-plugins/plugin_markdown.lixplugin +0 -0
  13. package/dist/index.d.ts +4 -4
  14. package/dist/index.js +2 -2
  15. package/dist/lix.d.ts +27 -5
  16. package/dist/lix.js +132 -6
  17. package/dist/open-lix.d.ts +4 -5
  18. package/dist/open-lix.js +173 -33
  19. package/dist/remote/client.d.ts +1 -2
  20. package/dist/remote/client.js +58 -1151
  21. package/dist/remote/server-protocol.d.ts +5 -6
  22. package/dist/remote/server-protocol.js +40 -6
  23. package/dist/result.d.ts +6 -13
  24. package/dist/result.js +9 -35
  25. package/dist/snapshot-restore.d.ts +6 -0
  26. package/dist/snapshot-restore.js +101 -0
  27. package/dist/storage-adapter.d.ts +175 -19
  28. package/dist/storage-adapter.js +21 -0
  29. package/dist/types.d.ts +101 -31
  30. package/dist/value.d.ts +1 -0
  31. package/dist/value.js +8 -0
  32. package/dist/wasm/lix_js_sdk.d.ts +119 -24
  33. package/dist/wasm/lix_js_sdk.js +599 -78
  34. package/dist/wasm/lix_js_sdk_bg.wasm +0 -0
  35. package/dist/wasm/lix_js_sdk_bg.wasm.d.ts +47 -6
  36. package/dist/worker/client.d.ts +27 -5
  37. package/dist/worker/client.js +458 -45
  38. package/dist/worker/factory.browser.d.ts +2 -2
  39. package/dist/worker/factory.node.d.ts +2 -2
  40. package/dist/worker/factory.node.js +3 -10
  41. package/dist/worker/host.d.ts +2 -1
  42. package/dist/worker/host.js +283 -37
  43. package/dist/worker/protocol.d.ts +80 -3
  44. package/package.json +6 -10
  45. package/dist/indexeddb-backend.d.ts +0 -19
  46. package/dist/indexeddb-backend.js +0 -121
  47. package/dist/remote/sse.d.ts +0 -12
  48. package/dist/remote/sse.js +0 -87
  49. package/dist/workerd.d.ts +0 -25
  50. package/dist/workerd.js +0 -35
Binary file
@@ -4,32 +4,73 @@ export const memory: WebAssembly.Memory;
4
4
  export const __wbg_wasmlix_free: (a: number, b: number) => void;
5
5
  export const __wbg_wasmlixtransaction_free: (a: number, b: number) => void;
6
6
  export const __wbg_wasmobserveevents_free: (a: number, b: number) => void;
7
- export const openIndexedDb: (a: number, b: number) => number;
8
- export const openMemory: (a: number) => number;
7
+ export const __wbg_wasmremotelix_free: (a: number, b: number) => void;
8
+ export const __wbg_wasmremotelixtransaction_free: (a: number, b: number) => void;
9
+ export const __wbg_wasmremoteobserveevents_free: (a: number, b: number) => void;
10
+ export const __wbg_wasmsnapshotexport_free: (a: number, b: number) => void;
11
+ export const __wbg_wasmsnapshotrestore_free: (a: number, b: number) => void;
12
+ export const openJsStorage: (a: number, b: number, c: number, d: number, e: number) => number;
13
+ export const openJsStorageFromSnapshot: (a: number, b: number, c: number, d: number) => number;
14
+ export const openMemory: (a: number, b: number, c: number, d: number) => number;
9
15
  export const openMemoryFromSnapshot: (a: number, b: number, c: number) => number;
10
- export const parseSqlScript: (a: number, b: number, c: number, d: number) => void;
16
+ export const openRemote: (a: number, b: number, c: number, d: number, e: number, f: number) => number;
11
17
  export const wasmlix_activeAccountId: (a: number) => number;
12
18
  export const wasmlix_activeBranchId: (a: number) => number;
13
19
  export const wasmlix_beginTransaction: (a: number) => number;
14
20
  export const wasmlix_close: (a: number) => number;
15
21
  export const wasmlix_createBranch: (a: number, b: number) => number;
16
- export const wasmlix_createCheckpoint: (a: number) => number;
17
22
  export const wasmlix_execute: (a: number, b: number, c: number, d: number, e: number) => number;
18
23
  export const wasmlix_executeBatch: (a: number, b: number, c: number) => number;
19
24
  export const wasmlix_exportSnapshot: (a: number) => number;
25
+ export const wasmlix_importFilesystemPaths: (a: number, b: number) => number;
20
26
  export const wasmlix_mergeBranch: (a: number, b: number) => number;
21
27
  export const wasmlix_mergeBranchPreview: (a: number, b: number) => number;
22
28
  export const wasmlix_observe: (a: number, b: number, c: number, d: number) => number;
29
+ export const wasmlix_openAnotherSession: (a: number, b: number) => number;
30
+ export const wasmlix_openReport: (a: number, b: number) => void;
23
31
  export const wasmlix_redo: (a: number) => number;
32
+ export const wasmlix_setTelemetryParent: (a: number, b: number, c: number) => void;
24
33
  export const wasmlix_switchBranch: (a: number, b: number) => number;
34
+ export const wasmlix_syncDiskToLix: (a: number) => number;
25
35
  export const wasmlix_undo: (a: number) => number;
26
36
  export const wasmlixtransaction_commit: (a: number) => number;
27
37
  export const wasmlixtransaction_execute: (a: number, b: number, c: number, d: number, e: number) => number;
28
38
  export const wasmlixtransaction_rollback: (a: number) => number;
29
39
  export const wasmobserveevents_close: (a: number) => void;
30
40
  export const wasmobserveevents_next: (a: number) => number;
31
- export const __wasm_bindgen_func_elem_119238: (a: number, b: number, c: number, d: number) => void;
32
- export const __wasm_bindgen_func_elem_119240: (a: number, b: number, c: number, d: number) => void;
41
+ export const wasmobserveevents_setTelemetryParent: (a: number, b: number, c: number) => void;
42
+ export const wasmremotelix_activeAccountId: (a: number) => number;
43
+ export const wasmremotelix_activeBranchId: (a: number) => number;
44
+ export const wasmremotelix_beginTransaction: (a: number) => number;
45
+ export const wasmremotelix_close: (a: number) => number;
46
+ export const wasmremotelix_createBranch: (a: number, b: number) => number;
47
+ export const wasmremotelix_execute: (a: number, b: number, c: number, d: number, e: number) => number;
48
+ export const wasmremotelix_executeBatch: (a: number, b: number, c: number) => number;
49
+ export const wasmremotelix_importFilesystemPaths: (a: number, b: number) => number;
50
+ export const wasmremotelix_mergeBranch: (a: number, b: number) => number;
51
+ export const wasmremotelix_mergeBranchPreview: (a: number, b: number) => number;
52
+ export const wasmremotelix_observe: (a: number, b: number, c: number, d: number) => number;
53
+ export const wasmremotelix_openAnotherSession: (a: number, b: number) => number;
54
+ export const wasmremotelix_redo: (a: number) => number;
55
+ export const wasmremotelix_setTelemetryParent: (a: number, b: number) => void;
56
+ export const wasmremotelix_switchBranch: (a: number, b: number) => number;
57
+ export const wasmremotelix_syncDiskToLix: (a: number) => number;
58
+ export const wasmremotelix_undo: (a: number) => number;
59
+ export const wasmremotelixtransaction_commit: (a: number) => number;
60
+ export const wasmremotelixtransaction_execute: (a: number, b: number, c: number, d: number, e: number) => number;
61
+ export const wasmremotelixtransaction_rollback: (a: number) => number;
62
+ export const wasmremoteobserveevents_close: (a: number) => void;
63
+ export const wasmremoteobserveevents_next: (a: number) => number;
64
+ export const wasmremoteobserveevents_setTelemetryParent: (a: number, b: number) => void;
65
+ export const wasmsnapshotexport_cancel: (a: number) => number;
66
+ export const wasmsnapshotexport_next: (a: number) => number;
67
+ export const wasmsnapshotrestore_cancel: (a: number) => number;
68
+ export const wasmsnapshotrestore_finish: (a: number) => number;
69
+ export const wasmsnapshotrestore_isComplete: (a: number) => number;
70
+ export const wasmsnapshotrestore_write: (a: number, b: number, c: number) => number;
71
+ export const __wasm_bindgen_func_elem_92059: (a: number, b: number, c: number, d: number) => void;
72
+ export const __wasm_bindgen_func_elem_92061: (a: number, b: number, c: number, d: number) => void;
73
+ export const __wasm_bindgen_func_elem_16459: (a: number, b: number) => void;
33
74
  export const __wbindgen_export: (a: number, b: number) => number;
34
75
  export const __wbindgen_export2: (a: number, b: number, c: number, d: number) => number;
35
76
  export const __wbindgen_export3: (a: number) => void;
@@ -1,25 +1,47 @@
1
1
  import type { LixBinding, LixStorageConfig } from "../binding-types.js";
2
- import type { LixTelemetryOptions } from "../types.js";
2
+ import type { LixTelemetryOptions, LixOpenProgress, LixOpenReport, SyncLixServerOptions } from "../types.js";
3
3
  import { type WorkerConnection, type WorkerNotification, type WorkerOperation } from "./protocol.js";
4
- export declare function openLixWorker(storage: LixStorageConfig, onDisposed?: () => void, telemetry?: LixTelemetryOptions): Promise<LixWorkerClient>;
4
+ type SyncServerRuntimeOptions = Omit<SyncLixServerOptions, "mode">;
5
+ export declare function openLixWorker(storage: LixStorageConfig, onDisposed?: () => void, telemetry?: LixTelemetryOptions, server?: SyncServerRuntimeOptions, onProgress?: (progress: LixOpenProgress) => void, snapshot?: ReadableStream<Uint8Array>): Promise<LixWorkerClient>;
6
+ export declare function pumpSnapshotToWorker(client: LixWorkerClient, reader: ReadableStreamDefaultReader<Uint8Array>, snapshotId: number, open: Promise<unknown>): Promise<void>;
5
7
  /** Opens the local worker transport behind the semantic Lix binding. */
6
- export declare function openLixWorkerBinding(storage: LixStorageConfig, onDisposed?: () => void, telemetry?: LixTelemetryOptions): Promise<LixBinding>;
8
+ export declare function openLixWorkerBinding(storage: LixStorageConfig, onDisposed?: () => void, telemetry?: LixTelemetryOptions, server?: SyncServerRuntimeOptions, onProgress?: (progress: LixOpenProgress) => void, snapshot?: ReadableStream<Uint8Array>): Promise<LixBinding>;
9
+ /** @internal Exported only for worker lifecycle tests. */
10
+ export declare class BindingLease {
11
+ private readonly releaseLast;
12
+ private references;
13
+ constructor(releaseLast: () => void | Promise<void>);
14
+ retain(): void;
15
+ release(): Promise<void>;
16
+ }
17
+ /** @internal Exported only for worker lifecycle tests. */
18
+ export declare function workerBinding(client: LixWorkerClient, lease: BindingLease, sessionId: number): LixBinding;
7
19
  export declare class LixWorkerClient {
8
20
  private readonly connection;
9
21
  private nextRequestId;
22
+ private nextSnapshotInputId;
10
23
  private readonly pending;
11
24
  private disposed;
12
25
  private leased;
13
26
  private onDisposed?;
14
27
  private telemetry?;
28
+ private syncServer?;
29
+ private onProgress?;
30
+ openReport: LixOpenReport | undefined;
31
+ private readonly syncFetchControllers;
15
32
  constructor(connection?: WorkerConnection);
16
33
  get isDisposed(): boolean;
17
- beginLease(onDisposed?: () => void, telemetry?: LixTelemetryOptions): void;
34
+ allocateSnapshotInputId(): number;
35
+ beginLease(onDisposed?: () => void, telemetry?: LixTelemetryOptions, syncServer?: SyncServerRuntimeOptions, onProgress?: (progress: LixOpenProgress) => void): void;
18
36
  endLease(): void;
19
- request<T>(operation: WorkerOperation): Promise<T>;
37
+ request<T>(operation: WorkerOperation, sessionId?: number): Promise<T>;
20
38
  notify(notification: WorkerNotification): void;
21
39
  terminate(): Promise<void>;
22
40
  private handleMessage;
41
+ private handleWorkerEvent;
42
+ private resolveSyncHeaders;
43
+ private resolveSyncFetch;
23
44
  private handleFatal;
24
45
  private rejectPending;
25
46
  }
47
+ export {};