@livestore/common-cf 0.4.0-dev.8 → 0.4.0-dev.9
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/helper.d.ts +25 -0
- package/dist/helper.d.ts.map +1 -0
- package/dist/helper.js +2 -0
- package/dist/helper.js.map +1 -0
- package/dist/mod.d.ts +1 -0
- package/dist/mod.d.ts.map +1 -1
- package/dist/mod.js +1 -0
- package/dist/mod.js.map +1 -1
- package/dist/ws-rpc/test-fixtures/worker.d.ts +1 -3
- package/dist/ws-rpc/test-fixtures/worker.d.ts.map +1 -1
- package/dist/ws-rpc/test-fixtures/worker.js +1 -4
- package/dist/ws-rpc/test-fixtures/worker.js.map +1 -1
- package/package.json +6 -6
- package/src/do-rpc/test-fixtures/.wrangler/state/v3/do/test-durable-object-rpc-TestRpcDurableObject/9ad3dfcb5436dfc3f2e14f5b554a0fd6d8b68206ad64fdde7320232d04e16dfe.sqlite +0 -0
- package/src/do-rpc/test-fixtures/.wrangler/state/v3/do/test-durable-object-rpc-TestRpcDurableObject/9ad3dfcb5436dfc3f2e14f5b554a0fd6d8b68206ad64fdde7320232d04e16dfe.sqlite-shm +0 -0
- package/src/do-rpc/test-fixtures/.wrangler/state/v3/do/test-durable-object-rpc-TestRpcDurableObject/9ad3dfcb5436dfc3f2e14f5b554a0fd6d8b68206ad64fdde7320232d04e16dfe.sqlite-wal +0 -0
- package/src/helper.ts +26 -0
- package/src/mod.ts +1 -0
- package/src/ws-rpc/test-fixtures/.wrangler/state/v3/do/test-durable-object-rpc-TestRpcDurableObject/9ad3dfcb5436dfc3f2e14f5b554a0fd6d8b68206ad64fdde7320232d04e16dfe.sqlite +0 -0
- package/src/ws-rpc/test-fixtures/.wrangler/state/v3/do/test-durable-object-rpc-TestRpcDurableObject/9ad3dfcb5436dfc3f2e14f5b554a0fd6d8b68206ad64fdde7320232d04e16dfe.sqlite-shm +0 -0
- package/src/ws-rpc/test-fixtures/.wrangler/state/v3/do/test-durable-object-rpc-TestRpcDurableObject/9ad3dfcb5436dfc3f2e14f5b554a0fd6d8b68206ad64fdde7320232d04e16dfe.sqlite-wal +0 -0
- package/src/ws-rpc/test-fixtures/worker.ts +3 -5
package/dist/helper.d.ts
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type * as CfTypes from './cf-types.ts';
|
|
2
|
+
export declare namespace HelperTypes {
|
|
3
|
+
type AnyDON = CfTypes.DurableObjectNamespace<any>;
|
|
4
|
+
type DOKeys<T> = {
|
|
5
|
+
[K in keyof T]-?: T[K] extends AnyDON ? K : never;
|
|
6
|
+
}[keyof T];
|
|
7
|
+
/**
|
|
8
|
+
* Helper type to extract DurableObject keys from Env to give consumer type safety.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```ts
|
|
12
|
+
* type PlatformEnv = {
|
|
13
|
+
* DB: D1Database
|
|
14
|
+
* ADMIN_TOKEN: string
|
|
15
|
+
* SYNC_BACKEND_DO: DurableObjectNamespace<SyncBackendDO>
|
|
16
|
+
* }
|
|
17
|
+
* export default makeWorker<PlatformEnv>({
|
|
18
|
+
* syncBackendBinding: 'SYNC_BACKEND_DO',
|
|
19
|
+
* // ^ (property) syncBackendBinding: "SYNC_BACKEND_DO"
|
|
20
|
+
* });
|
|
21
|
+
*/
|
|
22
|
+
export type ExtractDurableObjectKeys<TEnv> = DOKeys<TEnv> extends never ? string : DOKeys<TEnv> & string;
|
|
23
|
+
export {};
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=helper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,OAAO,MAAM,eAAe,CAAA;AAE7C,yBAAiB,WAAW,CAAC;IAC3B,KAAK,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAA;IAEjD,KAAK,MAAM,CAAC,CAAC,IAAI;SACd,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,CAAC,GAAG,KAAK;KAClD,CAAC,MAAM,CAAC,CAAC,CAAA;IAEV;;;;;;;;;;;;;;OAcG;IACH,MAAM,MAAM,wBAAwB,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAA;;CACzG"}
|
package/dist/helper.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helper.js","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":""}
|
package/dist/mod.d.ts
CHANGED
package/dist/mod.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"AAAA,YAAY,KAAK,OAAO,MAAM,eAAe,CAAA;AAC7C,cAAc,iBAAiB,CAAA;AAC/B,cAAc,2BAA2B,CAAA"}
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"AAAA,YAAY,KAAK,OAAO,MAAM,eAAe,CAAA;AAC7C,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,2BAA2B,CAAA"}
|
package/dist/mod.js
CHANGED
package/dist/mod.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.js","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,2BAA2B,CAAA"}
|
|
1
|
+
{"version":3,"file":"mod.js","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,2BAA2B,CAAA"}
|
|
@@ -2,10 +2,8 @@ import { DurableObject } from 'cloudflare:workers';
|
|
|
2
2
|
export interface Env {
|
|
3
3
|
TEST_RPC_DO: DurableObjectNamespace<TestRpcDurableObject>;
|
|
4
4
|
}
|
|
5
|
-
export declare class TestRpcDurableObject extends DurableObject {
|
|
5
|
+
export declare class TestRpcDurableObject extends DurableObject<Env, unknown> {
|
|
6
6
|
__DURABLE_OBJECT_BRAND: never;
|
|
7
|
-
env: Env;
|
|
8
|
-
ctx: DurableObjectState;
|
|
9
7
|
constructor(state: DurableObjectState, env: Env);
|
|
10
8
|
fetch(request: Request): Promise<Response>;
|
|
11
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../../src/ws-rpc/test-fixtures/worker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAMlD,MAAM,WAAW,GAAG;IAClB,WAAW,EAAE,sBAAsB,CAAC,oBAAoB,CAAC,CAAA;CAC1D;AAED,qBAAa,oBAAqB,SAAQ,aAAa
|
|
1
|
+
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../../src/ws-rpc/test-fixtures/worker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAMlD,MAAM,WAAW,GAAG;IAClB,WAAW,EAAE,sBAAsB,CAAC,oBAAoB,CAAC,CAAA;CAC1D;AAED,qBAAa,oBAAqB,SAAQ,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC;IACnE,sBAAsB,EAA6B,KAAK,CAAA;gBAE5C,KAAK,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG;IA8CzC,KAAK,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;CAgBjD;;mBAGsB,OAAO,OAAO,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC;;AAD5D,wBAeC"}
|
|
@@ -5,11 +5,8 @@ import { setupDurableObjectWebSocketRpc } from "../ws-rpc-server.js";
|
|
|
5
5
|
import { TestRpcs } from "./rpc-schema.js";
|
|
6
6
|
export class TestRpcDurableObject extends DurableObject {
|
|
7
7
|
__DURABLE_OBJECT_BRAND = 'TestRpcDurableObject';
|
|
8
|
-
env;
|
|
9
|
-
ctx;
|
|
10
8
|
constructor(state, env) {
|
|
11
9
|
super(state, env);
|
|
12
|
-
this.env = env;
|
|
13
10
|
this.ctx = state;
|
|
14
11
|
const handlersLayer = TestRpcs.toLayer({
|
|
15
12
|
Ping: ({ message }) => Effect.succeed({ response: `Pong: ${message}` }),
|
|
@@ -36,7 +33,7 @@ export class TestRpcDurableObject extends DurableObject {
|
|
|
36
33
|
return new Response('Durable Object expected Upgrade: websocket', { status: 426 });
|
|
37
34
|
}
|
|
38
35
|
const { 0: client, 1: server } = new WebSocketPair();
|
|
39
|
-
// Hibernate the server
|
|
36
|
+
// Hibernate the server; DurableObjectState is stored on ctx
|
|
40
37
|
this.ctx.acceptWebSocket(server);
|
|
41
38
|
return new Response(null, {
|
|
42
39
|
status: 101,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../../../src/ws-rpc/test-fixtures/worker.ts"],"names":[],"mappings":"AAAA,mDAAmD;AAEnD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAE5F,OAAO,EAAE,8BAA8B,EAAE,MAAM,qBAAqB,CAAA;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAM1C,MAAM,OAAO,oBAAqB,SAAQ,
|
|
1
|
+
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../../../src/ws-rpc/test-fixtures/worker.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@livestore/common-cf",
|
|
3
|
-
"version": "0.4.0-dev.
|
|
3
|
+
"version": "0.4.0-dev.9",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"exports": {
|
|
@@ -8,14 +8,14 @@
|
|
|
8
8
|
"./declare": "./dist/declare/mod.js"
|
|
9
9
|
},
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"@cloudflare/workers-types": "4.
|
|
12
|
-
"@livestore/
|
|
13
|
-
"@livestore/
|
|
11
|
+
"@cloudflare/workers-types": "4.20250923.0",
|
|
12
|
+
"@livestore/common": "0.4.0-dev.9",
|
|
13
|
+
"@livestore/utils": "0.4.0-dev.9"
|
|
14
14
|
},
|
|
15
15
|
"devDependencies": {
|
|
16
16
|
"vitest": "3.2.4",
|
|
17
|
-
"wrangler": "4.
|
|
18
|
-
"@livestore/utils-dev": "0.4.0-dev.
|
|
17
|
+
"wrangler": "4.38.0",
|
|
18
|
+
"@livestore/utils-dev": "0.4.0-dev.9"
|
|
19
19
|
},
|
|
20
20
|
"files": [
|
|
21
21
|
"dist",
|
|
File without changes
|
package/src/helper.ts
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type * as CfTypes from './cf-types.ts'
|
|
2
|
+
|
|
3
|
+
export namespace HelperTypes {
|
|
4
|
+
type AnyDON = CfTypes.DurableObjectNamespace<any>
|
|
5
|
+
|
|
6
|
+
type DOKeys<T> = {
|
|
7
|
+
[K in keyof T]-?: T[K] extends AnyDON ? K : never
|
|
8
|
+
}[keyof T]
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Helper type to extract DurableObject keys from Env to give consumer type safety.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* type PlatformEnv = {
|
|
16
|
+
* DB: D1Database
|
|
17
|
+
* ADMIN_TOKEN: string
|
|
18
|
+
* SYNC_BACKEND_DO: DurableObjectNamespace<SyncBackendDO>
|
|
19
|
+
* }
|
|
20
|
+
* export default makeWorker<PlatformEnv>({
|
|
21
|
+
* syncBackendBinding: 'SYNC_BACKEND_DO',
|
|
22
|
+
* // ^ (property) syncBackendBinding: "SYNC_BACKEND_DO"
|
|
23
|
+
* });
|
|
24
|
+
*/
|
|
25
|
+
export type ExtractDurableObjectKeys<TEnv> = DOKeys<TEnv> extends never ? string : DOKeys<TEnv> & string
|
|
26
|
+
}
|
package/src/mod.ts
CHANGED
|
File without changes
|
|
@@ -10,14 +10,12 @@ export interface Env {
|
|
|
10
10
|
TEST_RPC_DO: DurableObjectNamespace<TestRpcDurableObject>
|
|
11
11
|
}
|
|
12
12
|
|
|
13
|
-
export class TestRpcDurableObject extends DurableObject {
|
|
13
|
+
export class TestRpcDurableObject extends DurableObject<Env, unknown> {
|
|
14
14
|
__DURABLE_OBJECT_BRAND = 'TestRpcDurableObject' as never
|
|
15
|
-
env: Env
|
|
16
|
-
ctx: DurableObjectState
|
|
17
15
|
|
|
18
16
|
constructor(state: DurableObjectState, env: Env) {
|
|
19
17
|
super(state, env)
|
|
20
|
-
|
|
18
|
+
|
|
21
19
|
this.ctx = state
|
|
22
20
|
|
|
23
21
|
const handlersLayer = TestRpcs.toLayer({
|
|
@@ -69,7 +67,7 @@ export class TestRpcDurableObject extends DurableObject {
|
|
|
69
67
|
|
|
70
68
|
const { 0: client, 1: server } = new WebSocketPair()
|
|
71
69
|
|
|
72
|
-
// Hibernate the server
|
|
70
|
+
// Hibernate the server; DurableObjectState is stored on ctx
|
|
73
71
|
this.ctx.acceptWebSocket(server)
|
|
74
72
|
|
|
75
73
|
return new Response(null, {
|