@livestore/adapter-expo 0.0.0-snapshot-ee8e0fc3b894cf3159269c9c8969a8fc4b398dca → 0.0.0-snapshot-fec375f0f61a7bc75278adc60d1a55f96a9c292a
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/index.d.ts.map +1 -1
- package/dist/index.js +18 -14
- package/dist/index.js.map +1 -1
- package/package.json +5 -5
- package/src/index.ts +22 -17
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EAKP,WAAW,EACZ,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EAKP,WAAW,EACZ,MAAM,mBAAmB,CAAA;AAgB1B,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,CAAC,EAAE,WAAW,CAAA;IAClB,OAAO,CAAC,EAAE;QACR;;;;;WAKG;QACH,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,CAAA;IAED,sBAAsB;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,sBAAsB;IACtB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAGD,eAAO,MAAM,WAAW,GACrB,UAAS,aAAkB,KAAG,OAgF5B,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Devtools, liveStoreStorageFormatVersion, UnexpectedError } from '@livestore/common';
|
|
2
2
|
import { getClientHeadFromDb, LeaderThreadCtx, makeLeaderThreadLayer } from '@livestore/common/leader-thread';
|
|
3
3
|
import { MutationEvent } from '@livestore/common/schema';
|
|
4
|
-
import
|
|
4
|
+
import * as DevtoolsExpo from '@livestore/devtools-expo-common/web-channel';
|
|
5
5
|
import { Cause, Effect, FetchHttpClient, Fiber, Layer, Queue, Stream, SubscriptionRef } from '@livestore/utils/effect';
|
|
6
6
|
import * as SQLite from 'expo-sqlite';
|
|
7
7
|
import { makeSqliteDb } from './make-sqlite-db.js';
|
|
@@ -14,7 +14,7 @@ export const makeAdapter = (options = {}) => ({ schema, connectDevtoolsToStore,
|
|
|
14
14
|
const shutdownChannel = yield* makeShutdownChannel(storeId);
|
|
15
15
|
yield* shutdownChannel.listen.pipe(Stream.flatten(), Stream.tap((error) => Effect.sync(() => shutdown(Cause.fail(error)))), Stream.runDrain, Effect.interruptible, Effect.tapCauseLogPretty, Effect.forkScoped);
|
|
16
16
|
const devtoolsWebmeshNode = devtoolsEnabled
|
|
17
|
-
? yield* makeExpoDevtoolsConnectedMeshNode({
|
|
17
|
+
? yield* DevtoolsExpo.makeExpoDevtoolsConnectedMeshNode({
|
|
18
18
|
nodeName: `expo-${storeId}-${clientId}-${sessionId}`,
|
|
19
19
|
target: `devtools-${storeId}-${clientId}-${sessionId}`,
|
|
20
20
|
})
|
|
@@ -44,7 +44,15 @@ export const makeAdapter = (options = {}) => ({ schema, connectDevtoolsToStore,
|
|
|
44
44
|
};
|
|
45
45
|
if (devtoolsEnabled) {
|
|
46
46
|
yield* Effect.gen(function* () {
|
|
47
|
-
const
|
|
47
|
+
const sessionInfoChannel = yield* DevtoolsExpo.makeExpoDevtoolsBroadcastChannel({
|
|
48
|
+
channelName: 'devtools-expo-session-info',
|
|
49
|
+
schema: Devtools.SessionInfo.Message,
|
|
50
|
+
});
|
|
51
|
+
yield* Devtools.SessionInfo.provideSessionInfo({
|
|
52
|
+
webChannel: sessionInfoChannel,
|
|
53
|
+
sessionInfo: Devtools.SessionInfo.SessionInfo.make({ clientId, sessionId, storeId }),
|
|
54
|
+
}).pipe(Effect.tapCauseLogPretty, Effect.forkScoped);
|
|
55
|
+
const storeDevtoolsChannel = yield* DevtoolsExpo.makeChannelForConnectedMeshNode({
|
|
48
56
|
target: `devtools-${storeId}-${clientId}-${sessionId}`,
|
|
49
57
|
node: devtoolsWebmeshNode,
|
|
50
58
|
schema: { listen: Devtools.ClientSession.MessageToApp, send: Devtools.ClientSession.MessageFromApp },
|
|
@@ -118,18 +126,14 @@ const makeDevtoolsOptions = ({ devtoolsEnabled, dbReadModel, dbMutationLog, stor
|
|
|
118
126
|
return {
|
|
119
127
|
enabled: true,
|
|
120
128
|
makeBootContext: Effect.gen(function* () {
|
|
129
|
+
const devtoolsWebChannel = yield* DevtoolsExpo.makeChannelForConnectedMeshNode({
|
|
130
|
+
node: devtoolsWebmeshNode,
|
|
131
|
+
target: `devtools-${storeId}-${clientId}-${sessionId}`,
|
|
132
|
+
schema: { listen: Devtools.Leader.MessageToApp, send: Devtools.Leader.MessageFromApp },
|
|
133
|
+
channelType: 'leader',
|
|
134
|
+
});
|
|
121
135
|
return {
|
|
122
|
-
|
|
123
|
-
// nodeName: `leader-${storeId}-${clientId}`,
|
|
124
|
-
devtoolsWebChannel: yield* makeChannelForConnectedMeshNode({
|
|
125
|
-
node: devtoolsWebmeshNode,
|
|
126
|
-
target: `devtools-${storeId}-${clientId}-${sessionId}`,
|
|
127
|
-
schema: {
|
|
128
|
-
listen: Devtools.Leader.MessageToApp,
|
|
129
|
-
send: Devtools.Leader.MessageFromApp,
|
|
130
|
-
},
|
|
131
|
-
channelType: 'leader',
|
|
132
|
-
}),
|
|
136
|
+
devtoolsWebChannel,
|
|
133
137
|
persistenceInfo: {
|
|
134
138
|
readModel: dbReadModel.metadata.persistenceInfo,
|
|
135
139
|
mutationLog: dbMutationLog.metadata.persistenceInfo,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,6BAA6B,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAE5F,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAA;AAE7G,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AACxD,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@livestore/adapter-expo",
|
|
3
|
-
"version": "0.0.0-snapshot-
|
|
3
|
+
"version": "0.0.0-snapshot-fec375f0f61a7bc75278adc60d1a55f96a9c292a",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"exports": {
|
|
@@ -12,10 +12,10 @@
|
|
|
12
12
|
"types": "./dist/index.d.ts",
|
|
13
13
|
"dependencies": {
|
|
14
14
|
"@opentelemetry/api": "1.9.0",
|
|
15
|
-
"@livestore/common": "0.0.0-snapshot-
|
|
16
|
-
"@livestore/devtools-expo-common": "0.0.0-snapshot-
|
|
17
|
-
"@livestore/utils": "0.0.0-snapshot-
|
|
18
|
-
"@livestore/webmesh": "0.0.0-snapshot-
|
|
15
|
+
"@livestore/common": "0.0.0-snapshot-fec375f0f61a7bc75278adc60d1a55f96a9c292a",
|
|
16
|
+
"@livestore/devtools-expo-common": "0.0.0-snapshot-fec375f0f61a7bc75278adc60d1a55f96a9c292a",
|
|
17
|
+
"@livestore/utils": "0.0.0-snapshot-fec375f0f61a7bc75278adc60d1a55f96a9c292a",
|
|
18
|
+
"@livestore/webmesh": "0.0.0-snapshot-fec375f0f61a7bc75278adc60d1a55f96a9c292a"
|
|
19
19
|
},
|
|
20
20
|
"devDependencies": {
|
|
21
21
|
"expo-file-system": "*",
|
package/src/index.ts
CHANGED
|
@@ -11,10 +11,7 @@ import type { DevtoolsOptions, LeaderSqliteDb } from '@livestore/common/leader-t
|
|
|
11
11
|
import { getClientHeadFromDb, LeaderThreadCtx, makeLeaderThreadLayer } from '@livestore/common/leader-thread'
|
|
12
12
|
import type { LiveStoreSchema } from '@livestore/common/schema'
|
|
13
13
|
import { MutationEvent } from '@livestore/common/schema'
|
|
14
|
-
import
|
|
15
|
-
makeChannelForConnectedMeshNode,
|
|
16
|
-
makeExpoDevtoolsConnectedMeshNode,
|
|
17
|
-
} from '@livestore/devtools-expo-common/web-channel'
|
|
14
|
+
import * as DevtoolsExpo from '@livestore/devtools-expo-common/web-channel'
|
|
18
15
|
import type { Scope } from '@livestore/utils/effect'
|
|
19
16
|
import { Cause, Effect, FetchHttpClient, Fiber, Layer, Queue, Stream, SubscriptionRef } from '@livestore/utils/effect'
|
|
20
17
|
import type { MeshNode } from '@livestore/webmesh'
|
|
@@ -65,7 +62,7 @@ export const makeAdapter =
|
|
|
65
62
|
)
|
|
66
63
|
|
|
67
64
|
const devtoolsWebmeshNode = devtoolsEnabled
|
|
68
|
-
? yield* makeExpoDevtoolsConnectedMeshNode({
|
|
65
|
+
? yield* DevtoolsExpo.makeExpoDevtoolsConnectedMeshNode({
|
|
69
66
|
nodeName: `expo-${storeId}-${clientId}-${sessionId}`,
|
|
70
67
|
target: `devtools-${storeId}-${clientId}-${sessionId}`,
|
|
71
68
|
})
|
|
@@ -99,12 +96,23 @@ export const makeAdapter =
|
|
|
99
96
|
|
|
100
97
|
if (devtoolsEnabled) {
|
|
101
98
|
yield* Effect.gen(function* () {
|
|
102
|
-
const
|
|
99
|
+
const sessionInfoChannel = yield* DevtoolsExpo.makeExpoDevtoolsBroadcastChannel({
|
|
100
|
+
channelName: 'devtools-expo-session-info',
|
|
101
|
+
schema: Devtools.SessionInfo.Message,
|
|
102
|
+
})
|
|
103
|
+
|
|
104
|
+
yield* Devtools.SessionInfo.provideSessionInfo({
|
|
105
|
+
webChannel: sessionInfoChannel,
|
|
106
|
+
sessionInfo: Devtools.SessionInfo.SessionInfo.make({ clientId, sessionId, storeId }),
|
|
107
|
+
}).pipe(Effect.tapCauseLogPretty, Effect.forkScoped)
|
|
108
|
+
|
|
109
|
+
const storeDevtoolsChannel = yield* DevtoolsExpo.makeChannelForConnectedMeshNode({
|
|
103
110
|
target: `devtools-${storeId}-${clientId}-${sessionId}`,
|
|
104
111
|
node: devtoolsWebmeshNode!,
|
|
105
112
|
schema: { listen: Devtools.ClientSession.MessageToApp, send: Devtools.ClientSession.MessageFromApp },
|
|
106
113
|
channelType: 'clientSession',
|
|
107
114
|
})
|
|
115
|
+
|
|
108
116
|
yield* connectDevtoolsToStore(storeDevtoolsChannel)
|
|
109
117
|
}).pipe(Effect.tapCauseLogPretty, Effect.forkScoped)
|
|
110
118
|
}
|
|
@@ -258,18 +266,15 @@ const makeDevtoolsOptions = ({
|
|
|
258
266
|
return {
|
|
259
267
|
enabled: true,
|
|
260
268
|
makeBootContext: Effect.gen(function* () {
|
|
269
|
+
const devtoolsWebChannel = yield* DevtoolsExpo.makeChannelForConnectedMeshNode({
|
|
270
|
+
node: devtoolsWebmeshNode!,
|
|
271
|
+
target: `devtools-${storeId}-${clientId}-${sessionId}`,
|
|
272
|
+
schema: { listen: Devtools.Leader.MessageToApp, send: Devtools.Leader.MessageFromApp },
|
|
273
|
+
channelType: 'leader',
|
|
274
|
+
})
|
|
275
|
+
|
|
261
276
|
return {
|
|
262
|
-
|
|
263
|
-
// nodeName: `leader-${storeId}-${clientId}`,
|
|
264
|
-
devtoolsWebChannel: yield* makeChannelForConnectedMeshNode({
|
|
265
|
-
node: devtoolsWebmeshNode!,
|
|
266
|
-
target: `devtools-${storeId}-${clientId}-${sessionId}`,
|
|
267
|
-
schema: {
|
|
268
|
-
listen: Devtools.Leader.MessageToApp,
|
|
269
|
-
send: Devtools.Leader.MessageFromApp,
|
|
270
|
-
},
|
|
271
|
-
channelType: 'leader',
|
|
272
|
-
}),
|
|
277
|
+
devtoolsWebChannel,
|
|
273
278
|
persistenceInfo: {
|
|
274
279
|
readModel: dbReadModel.metadata.persistenceInfo,
|
|
275
280
|
mutationLog: dbMutationLog.metadata.persistenceInfo,
|