@livestore/sqlite-wasm 0.3.0-dev.10 → 0.3.0-dev.11
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/.tsbuildinfo +1 -1
- package/dist/browser/mod.d.ts +7 -7
- package/dist/browser/mod.d.ts.map +1 -1
- package/dist/browser/mod.js +4 -4
- package/dist/browser/mod.js.map +1 -1
- package/dist/index_.d.ts +1 -1
- package/dist/index_.d.ts.map +1 -1
- package/dist/index_.js +1 -1
- package/dist/index_.js.map +1 -1
- package/dist/make-sqlite-db.d.ts +11 -0
- package/dist/make-sqlite-db.d.ts.map +1 -0
- package/dist/make-sqlite-db.js +181 -0
- package/dist/make-sqlite-db.js.map +1 -0
- package/dist/node/mod.d.ts +7 -7
- package/dist/node/mod.d.ts.map +1 -1
- package/dist/node/mod.js +5 -5
- package/dist/node/mod.js.map +1 -1
- package/package.json +3 -3
- package/src/browser/mod.ts +10 -14
- package/src/index_.ts +1 -1
- package/src/{make-sync-db.ts → make-sqlite-db.ts} +16 -16
- package/src/node/mod.ts +10 -19
package/src/node/mod.ts
CHANGED
|
@@ -1,17 +1,12 @@
|
|
|
1
1
|
import path from 'node:path'
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
type MakeSynchronousDatabase,
|
|
5
|
-
type PersistenceInfo,
|
|
6
|
-
type SynchronousDatabase,
|
|
7
|
-
UnexpectedError,
|
|
8
|
-
} from '@livestore/common'
|
|
3
|
+
import { type MakeSqliteDb, type PersistenceInfo, type SqliteDb, UnexpectedError } from '@livestore/common'
|
|
9
4
|
import { Effect, FileSystem } from '@livestore/utils/effect'
|
|
10
5
|
import type * as WaSqlite from '@livestore/wa-sqlite'
|
|
11
6
|
import type { MemoryVFS } from '@livestore/wa-sqlite/src/examples/MemoryVFS.js'
|
|
12
7
|
|
|
13
8
|
import { makeInMemoryDb } from '../in-memory-vfs.js'
|
|
14
|
-
import {
|
|
9
|
+
import { makeSqliteDb } from '../make-sqlite-db.js'
|
|
15
10
|
import { NodeFS } from './NodeFS.js'
|
|
16
11
|
|
|
17
12
|
export type NodeDatabaseMetadataInMemory = {
|
|
@@ -20,7 +15,7 @@ export type NodeDatabaseMetadataInMemory = {
|
|
|
20
15
|
dbPointer: number
|
|
21
16
|
persistenceInfo: PersistenceInfo
|
|
22
17
|
deleteDb: () => void
|
|
23
|
-
configureDb: (db:
|
|
18
|
+
configureDb: (db: SqliteDb) => void
|
|
24
19
|
}
|
|
25
20
|
|
|
26
21
|
export type NodeDatabaseMetadataFs = {
|
|
@@ -29,35 +24,31 @@ export type NodeDatabaseMetadataFs = {
|
|
|
29
24
|
dbPointer: number
|
|
30
25
|
persistenceInfo: PersistenceInfo<{ directory: string }>
|
|
31
26
|
deleteDb: () => void
|
|
32
|
-
configureDb: (db:
|
|
27
|
+
configureDb: (db: SqliteDb) => void
|
|
33
28
|
}
|
|
34
29
|
|
|
35
30
|
export type NodeDatabaseMetadata = NodeDatabaseMetadataInMemory | NodeDatabaseMetadataFs
|
|
36
31
|
|
|
37
32
|
export type NodeDatabaseInputInMemory = {
|
|
38
33
|
_tag: 'in-memory'
|
|
39
|
-
configureDb?: (db:
|
|
34
|
+
configureDb?: (db: SqliteDb) => void
|
|
40
35
|
}
|
|
41
36
|
|
|
42
37
|
export type NodeDatabaseInputFs = {
|
|
43
38
|
_tag: 'fs'
|
|
44
39
|
directory: string
|
|
45
40
|
fileName: string
|
|
46
|
-
configureDb?: (db:
|
|
41
|
+
configureDb?: (db: SqliteDb) => void
|
|
47
42
|
}
|
|
48
43
|
|
|
49
44
|
export type NodeDatabaseInput = NodeDatabaseInputInMemory | NodeDatabaseInputFs
|
|
50
45
|
|
|
51
|
-
export const
|
|
46
|
+
export const sqliteDbFactory = ({
|
|
52
47
|
sqlite3,
|
|
53
48
|
}: {
|
|
54
49
|
sqlite3: SQLiteAPI
|
|
55
50
|
}): Effect.Effect<
|
|
56
|
-
|
|
57
|
-
{ dbPointer: number; persistenceInfo: PersistenceInfo },
|
|
58
|
-
NodeDatabaseInput,
|
|
59
|
-
NodeDatabaseMetadata
|
|
60
|
-
>,
|
|
51
|
+
MakeSqliteDb<{ dbPointer: number; persistenceInfo: PersistenceInfo }, NodeDatabaseInput, NodeDatabaseMetadata>,
|
|
61
52
|
never,
|
|
62
53
|
FileSystem.FileSystem
|
|
63
54
|
> =>
|
|
@@ -67,7 +58,7 @@ export const syncDbFactory = ({
|
|
|
67
58
|
Effect.gen(function* () {
|
|
68
59
|
if (input._tag === 'in-memory') {
|
|
69
60
|
const { dbPointer, vfs } = makeInMemoryDb(sqlite3)
|
|
70
|
-
return
|
|
61
|
+
return makeSqliteDb<NodeDatabaseMetadataInMemory>({
|
|
71
62
|
sqlite3,
|
|
72
63
|
metadata: {
|
|
73
64
|
_tag: 'in-memory',
|
|
@@ -89,7 +80,7 @@ export const syncDbFactory = ({
|
|
|
89
80
|
|
|
90
81
|
const filePath = path.join(input.directory, input.fileName)
|
|
91
82
|
|
|
92
|
-
return
|
|
83
|
+
return makeSqliteDb<NodeDatabaseMetadataFs>({
|
|
93
84
|
sqlite3,
|
|
94
85
|
metadata: {
|
|
95
86
|
_tag: 'fs',
|