jazz-react-native 0.14.22 → 0.14.24
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/.turbo/turbo-build.log +1 -1
- package/CHANGELOG.md +23 -0
- package/dist/provider.d.ts.map +1 -1
- package/dist/provider.js +8 -3
- package/dist/provider.js.map +1 -1
- package/dist/storage/op-sqlite-adapter.d.ts +1 -0
- package/dist/storage/op-sqlite-adapter.d.ts.map +1 -1
- package/dist/storage/op-sqlite-adapter.js +6 -0
- package/dist/storage/op-sqlite-adapter.js.map +1 -1
- package/package.json +5 -5
- package/src/provider.tsx +9 -9
- package/src/storage/op-sqlite-adapter.ts +8 -0
package/.turbo/turbo-build.log
CHANGED
package/CHANGELOG.md
CHANGED
@@ -1,5 +1,28 @@
|
|
1
1
|
# jazz-browser
|
2
2
|
|
3
|
+
## 0.14.24
|
4
|
+
|
5
|
+
### Patch Changes
|
6
|
+
|
7
|
+
- 678f326: Reuse the same db connection when switching users instead of closing/opening a new one
|
8
|
+
- cojson@0.14.24
|
9
|
+
- cojson-storage@0.14.24
|
10
|
+
- jazz-react-native-core@0.14.24
|
11
|
+
- jazz-tools@0.14.24
|
12
|
+
|
13
|
+
## 0.14.23
|
14
|
+
|
15
|
+
### Patch Changes
|
16
|
+
|
17
|
+
- 5f42c97: Close the DB connection when the node/context is closed
|
18
|
+
- Updated dependencies [1ca9299]
|
19
|
+
- Updated dependencies [9177579]
|
20
|
+
- Updated dependencies [5f42c97]
|
21
|
+
- cojson@0.14.23
|
22
|
+
- jazz-tools@0.14.23
|
23
|
+
- cojson-storage@0.14.23
|
24
|
+
- jazz-react-native-core@0.14.23
|
25
|
+
|
3
26
|
## 0.14.22
|
4
27
|
|
5
28
|
### Patch Changes
|
package/dist/provider.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAoB,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EACL,OAAO,EACP,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACf,MAAM,YAAY,CAAC;AACpB,OAAO,
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAoB,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EACL,OAAO,EACP,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACf,MAAM,YAAY,CAAC;AACpB,OAAO,KAAkB,MAAM,OAAO,CAAC;AAIvC,wBAAgB,YAAY,CAC1B,CAAC,SACG,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,GACjD,gBAAgB,EACpB,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,qBAW5B"}
|
package/dist/provider.js
CHANGED
@@ -1,10 +1,15 @@
|
|
1
1
|
import { JazzProviderCore } from "jazz-react-native-core";
|
2
|
-
import React from "react";
|
2
|
+
import React, { useMemo } from "react";
|
3
3
|
import { MMKVStore } from "./storage/mmkv-store-adapter.js";
|
4
4
|
import { OPSQLiteAdapter } from "./storage/op-sqlite-adapter.js";
|
5
5
|
export function JazzProvider(props) {
|
6
6
|
// Destructure kvStore and pass everything else via rest
|
7
|
-
const
|
8
|
-
|
7
|
+
const storage = useMemo(() => {
|
8
|
+
return props.storage ?? new OPSQLiteAdapter();
|
9
|
+
}, [props.storage]);
|
10
|
+
const kvStore = useMemo(() => {
|
11
|
+
return props.kvStore ?? new MMKVStore();
|
12
|
+
}, [props.kvStore]);
|
13
|
+
return <JazzProviderCore {...props} storage={storage} kvStore={kvStore}/>;
|
9
14
|
}
|
10
15
|
//# sourceMappingURL=provider.js.map
|
package/dist/provider.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAqB,MAAM,wBAAwB,CAAC;AAO7E,OAAO,KAAK,MAAM,OAAO,CAAC;
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAqB,MAAM,wBAAwB,CAAC;AAO7E,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,MAAM,UAAU,YAAY,CAI1B,KAA2B;IAC3B,wDAAwD;IACxD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE;QAC3B,OAAO,KAAK,CAAC,OAAO,IAAI,IAAI,eAAe,EAAE,CAAC;IAChD,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAEpB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE;QAC3B,OAAO,KAAK,CAAC,OAAO,IAAI,IAAI,SAAS,EAAE,CAAC;IAC1C,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAEpB,OAAO,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,EAAG,CAAC;AAC7E,CAAC"}
|
@@ -8,5 +8,6 @@ export declare class OPSQLiteAdapter implements SQLiteDatabaseDriverAsync {
|
|
8
8
|
get<T>(sql: string, params?: unknown[]): Promise<T | undefined>;
|
9
9
|
run(sql: string, params?: unknown[]): Promise<void>;
|
10
10
|
transaction(callback: () => unknown): Promise<void>;
|
11
|
+
closeDb(): Promise<void>;
|
11
12
|
}
|
12
13
|
//# sourceMappingURL=op-sqlite-adapter.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"op-sqlite-adapter.d.ts","sourceRoot":"","sources":["../../src/storage/op-sqlite-adapter.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAExE,qBAAa,eAAgB,YAAW,yBAAyB;IAC/D,OAAO,CAAC,EAAE,CAA2B;IACrC,OAAO,CAAC,MAAM,CAAS;gBAEJ,MAAM,GAAE,MAAuB;IAIrC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;
|
1
|
+
{"version":3,"file":"op-sqlite-adapter.d.ts","sourceRoot":"","sources":["../../src/storage/op-sqlite-adapter.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAExE,qBAAa,eAAgB,YAAW,yBAAyB;IAC/D,OAAO,CAAC,EAAE,CAA2B;IACrC,OAAO,CAAC,MAAM,CAAS;gBAEJ,MAAM,GAAE,MAAuB;IAIrC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB3B,KAAK,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAUvD,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAU/D,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE;IAQnC,WAAW,CAAC,QAAQ,EAAE,MAAM,OAAO;IAYnC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAGtC"}
|
@@ -8,6 +8,9 @@ export class OPSQLiteAdapter {
|
|
8
8
|
this.dbName = dbName;
|
9
9
|
}
|
10
10
|
async initialize() {
|
11
|
+
if (this.db) {
|
12
|
+
return;
|
13
|
+
}
|
11
14
|
const dbPath = Platform.OS === "ios" ? IOS_LIBRARY_PATH : ANDROID_DATABASE_PATH;
|
12
15
|
const db = (this.db = opSQLite.open({
|
13
16
|
name: this.dbName,
|
@@ -46,5 +49,8 @@ export class OPSQLiteAdapter {
|
|
46
49
|
throw error;
|
47
50
|
}
|
48
51
|
}
|
52
|
+
async closeDb() {
|
53
|
+
// Keeping the database open and reusing the same connection over multiple ctx instances.
|
54
|
+
}
|
49
55
|
}
|
50
56
|
//# sourceMappingURL=op-sqlite-adapter.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"op-sqlite-adapter.js","sourceRoot":"","sources":["../../src/storage/op-sqlite-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,2BAA2B,CAAC;AACtD,OAAO,EACL,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAMxC,MAAM,OAAO,eAAe;IAClB,EAAE,GAAsB,IAAI,CAAC;IAC7B,MAAM,CAAS;IAEvB,YAAmB,SAAiB,cAAc;QAChD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAEM,KAAK,CAAC,UAAU;QACrB,MAAM,MAAM,GACV,QAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,qBAAqB,CAAC;QAEnE,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC;YAClC,IAAI,EAAE,IAAI,CAAC,MAAM;YACjB,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAC,CAAC;QAEJ,MAAM,EAAE,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAC9C,CAAC;IAEM,KAAK,CAAC,KAAK,CAAI,GAAW,EAAE,MAAkB;QACnD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,MAAe,CAAC,CAAC;QAE3D,OAAO,MAAM,CAAC,IAAW,CAAC;IAC5B,CAAC;IAEM,KAAK,CAAC,GAAG,CAAI,GAAW,EAAE,MAAkB;QACjD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,MAAe,CAAC,CAAC;QAE3D,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAkB,CAAC;IACzC,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,GAAW,EAAE,MAAkB;QAC9C,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,MAAe,CAAC,CAAC;IACjD,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,QAAuB;QAC9C,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QAEpC,IAAI,CAAC;YACH,MAAM,QAAQ,EAAE,CAAC;YACjB,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC3B,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
|
1
|
+
{"version":3,"file":"op-sqlite-adapter.js","sourceRoot":"","sources":["../../src/storage/op-sqlite-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,2BAA2B,CAAC;AACtD,OAAO,EACL,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAMxC,MAAM,OAAO,eAAe;IAClB,EAAE,GAAsB,IAAI,CAAC;IAC7B,MAAM,CAAS;IAEvB,YAAmB,SAAiB,cAAc;QAChD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAEM,KAAK,CAAC,UAAU;QACrB,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACZ,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GACV,QAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,qBAAqB,CAAC;QAEnE,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC;YAClC,IAAI,EAAE,IAAI,CAAC,MAAM;YACjB,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAC,CAAC;QAEJ,MAAM,EAAE,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAC9C,CAAC;IAEM,KAAK,CAAC,KAAK,CAAI,GAAW,EAAE,MAAkB;QACnD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,MAAe,CAAC,CAAC;QAE3D,OAAO,MAAM,CAAC,IAAW,CAAC;IAC5B,CAAC;IAEM,KAAK,CAAC,GAAG,CAAI,GAAW,EAAE,MAAkB;QACjD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,MAAe,CAAC,CAAC;QAE3D,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAkB,CAAC;IACzC,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,GAAW,EAAE,MAAkB;QAC9C,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,MAAe,CAAC,CAAC;IACjD,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,QAAuB;QAC9C,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QAEpC,IAAI,CAAC;YACH,MAAM,QAAQ,EAAE,CAAC;YACjB,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC3B,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,yFAAyF;IAC3F,CAAC;CACF"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "jazz-react-native",
|
3
|
-
"version": "0.14.
|
3
|
+
"version": "0.14.24",
|
4
4
|
"type": "module",
|
5
5
|
"main": "./dist/index.js",
|
6
6
|
"module": "./dist/index.js",
|
@@ -28,10 +28,10 @@
|
|
28
28
|
"@op-engineering/op-sqlite": "^11.4.8",
|
29
29
|
"@scure/base": "1.2.1",
|
30
30
|
"react-native-mmkv": "^3.2.0",
|
31
|
-
"cojson": "0.14.
|
32
|
-
"cojson-storage": "0.14.
|
33
|
-
"jazz-react-native-core": "0.14.
|
34
|
-
"jazz-tools": "0.14.
|
31
|
+
"cojson": "0.14.24",
|
32
|
+
"cojson-storage": "0.14.24",
|
33
|
+
"jazz-react-native-core": "0.14.24",
|
34
|
+
"jazz-tools": "0.14.24"
|
35
35
|
},
|
36
36
|
"peerDependencies": {
|
37
37
|
"@react-native-community/netinfo": "*",
|
package/src/provider.tsx
CHANGED
@@ -5,7 +5,7 @@ import {
|
|
5
5
|
AnyAccountSchema,
|
6
6
|
CoValueFromRaw,
|
7
7
|
} from "jazz-tools";
|
8
|
-
import React from "react";
|
8
|
+
import React, { useMemo } from "react";
|
9
9
|
import { MMKVStore } from "./storage/mmkv-store-adapter.js";
|
10
10
|
import { OPSQLiteAdapter } from "./storage/op-sqlite-adapter.js";
|
11
11
|
|
@@ -15,13 +15,13 @@ export function JazzProvider<
|
|
15
15
|
| AnyAccountSchema,
|
16
16
|
>(props: JazzProviderProps<S>) {
|
17
17
|
// Destructure kvStore and pass everything else via rest
|
18
|
-
const
|
18
|
+
const storage = useMemo(() => {
|
19
|
+
return props.storage ?? new OPSQLiteAdapter();
|
20
|
+
}, [props.storage]);
|
19
21
|
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
/>
|
26
|
-
);
|
22
|
+
const kvStore = useMemo(() => {
|
23
|
+
return props.kvStore ?? new MMKVStore();
|
24
|
+
}, [props.kvStore]);
|
25
|
+
|
26
|
+
return <JazzProviderCore {...props} storage={storage} kvStore={kvStore} />;
|
27
27
|
}
|
@@ -18,6 +18,10 @@ export class OPSQLiteAdapter implements SQLiteDatabaseDriverAsync {
|
|
18
18
|
}
|
19
19
|
|
20
20
|
public async initialize(): Promise<void> {
|
21
|
+
if (this.db) {
|
22
|
+
return;
|
23
|
+
}
|
24
|
+
|
21
25
|
const dbPath =
|
22
26
|
Platform.OS === "ios" ? IOS_LIBRARY_PATH : ANDROID_DATABASE_PATH;
|
23
27
|
|
@@ -68,4 +72,8 @@ export class OPSQLiteAdapter implements SQLiteDatabaseDriverAsync {
|
|
68
72
|
throw error;
|
69
73
|
}
|
70
74
|
}
|
75
|
+
|
76
|
+
public async closeDb(): Promise<void> {
|
77
|
+
// Keeping the database open and reusing the same connection over multiple ctx instances.
|
78
|
+
}
|
71
79
|
}
|