@ohos-ports/rivetkit-effect 2.3.17-beta.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.
- package/dist/Action.d.ts +104 -0
- package/dist/Action.d.ts.map +1 -0
- package/dist/Action.js +50 -0
- package/dist/Action.js.map +1 -0
- package/dist/Actor.d.ts +132 -0
- package/dist/Actor.d.ts.map +1 -0
- package/dist/Actor.js +104 -0
- package/dist/Actor.js.map +1 -0
- package/dist/Client.d.ts +31 -0
- package/dist/Client.d.ts.map +1 -0
- package/dist/Client.js +100 -0
- package/dist/Client.js.map +1 -0
- package/dist/Registry.d.ts +134 -0
- package/dist/Registry.d.ts.map +1 -0
- package/dist/Registry.js +178 -0
- package/dist/Registry.js.map +1 -0
- package/dist/RivetError.d.ts +480 -0
- package/dist/RivetError.d.ts.map +1 -0
- package/dist/RivetError.js +985 -0
- package/dist/RivetError.js.map +1 -0
- package/dist/RivetLogger.d.ts +41 -0
- package/dist/RivetLogger.d.ts.map +1 -0
- package/dist/RivetLogger.js +41 -0
- package/dist/RivetLogger.js.map +1 -0
- package/dist/State.d.ts +159 -0
- package/dist/State.d.ts.map +1 -0
- package/dist/State.js +98 -0
- package/dist/State.js.map +1 -0
- package/dist/internal/ActionDispatcher.d.ts +14 -0
- package/dist/internal/ActionDispatcher.d.ts.map +1 -0
- package/dist/internal/ActionDispatcher.js +100 -0
- package/dist/internal/ActionDispatcher.js.map +1 -0
- package/dist/internal/ActionErrorEnvelope.d.ts +11 -0
- package/dist/internal/ActionErrorEnvelope.d.ts.map +1 -0
- package/dist/internal/ActionErrorEnvelope.js +14 -0
- package/dist/internal/ActionErrorEnvelope.js.map +1 -0
- package/dist/internal/ActorInstanceManager.d.ts +28 -0
- package/dist/internal/ActorInstanceManager.d.ts.map +1 -0
- package/dist/internal/ActorInstanceManager.js +51 -0
- package/dist/internal/ActorInstanceManager.js.map +1 -0
- package/dist/internal/ActorStateAdapter.d.ts +18 -0
- package/dist/internal/ActorStateAdapter.d.ts.map +1 -0
- package/dist/internal/ActorStateAdapter.js +24 -0
- package/dist/internal/ActorStateAdapter.js.map +1 -0
- package/dist/internal/StateOptions.d.ts +13 -0
- package/dist/internal/StateOptions.d.ts.map +1 -0
- package/dist/internal/StateOptions.js +2 -0
- package/dist/internal/StateOptions.js.map +1 -0
- package/dist/internal/logging.d.ts +22 -0
- package/dist/internal/logging.d.ts.map +1 -0
- package/dist/internal/logging.js +138 -0
- package/dist/internal/logging.js.map +1 -0
- package/dist/internal/tracing.d.ts +23 -0
- package/dist/internal/tracing.d.ts.map +1 -0
- package/dist/internal/tracing.js +30 -0
- package/dist/internal/tracing.js.map +1 -0
- package/dist/internal/utils.d.ts +7 -0
- package/dist/internal/utils.d.ts.map +1 -0
- package/dist/internal/utils.js +7 -0
- package/dist/internal/utils.js.map +1 -0
- package/dist/mod.d.ts +8 -0
- package/dist/mod.d.ts.map +1 -0
- package/dist/mod.js +8 -0
- package/dist/mod.js.map +1 -0
- package/package.json +56 -0
- package/src/Action.ts +231 -0
- package/src/Actor.test-d.ts +641 -0
- package/src/Actor.test.ts +209 -0
- package/src/Actor.ts +575 -0
- package/src/Client.test.ts +206 -0
- package/src/Client.ts +218 -0
- package/src/Registry.test-d.ts +126 -0
- package/src/Registry.test.ts +400 -0
- package/src/Registry.ts +304 -0
- package/src/RivetError.test.ts +199 -0
- package/src/RivetError.ts +1163 -0
- package/src/RivetLogger.ts +60 -0
- package/src/State.test.ts +340 -0
- package/src/State.ts +420 -0
- package/src/internal/ActionDispatcher.ts +189 -0
- package/src/internal/ActionErrorEnvelope.ts +19 -0
- package/src/internal/ActorInstanceManager.ts +137 -0
- package/src/internal/ActorStateAdapter.ts +82 -0
- package/src/internal/StateOptions.ts +21 -0
- package/src/internal/logging.test.ts +274 -0
- package/src/internal/logging.ts +197 -0
- package/src/internal/tracing.ts +42 -0
- package/src/internal/utils.ts +12 -0
- package/src/mod.ts +7 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RivetError.js","sourceRoot":"","sources":["../src/RivetError.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Logger, Layer } from "effect";
|
|
2
|
+
import * as RivetkitLog from "@ohos-ports/rivetkit/log";
|
|
3
|
+
import { BaseLogger } from "./internal/logging.ts";
|
|
4
|
+
/**
|
|
5
|
+
* Builds an Effect logger from a custom Pino-compatible logger.
|
|
6
|
+
*
|
|
7
|
+
* Use this with Effect's `Logger.layer` when you only need to customize Effect
|
|
8
|
+
* log output. Use {@link layerFromPino} when RivetKit's underlying TypeScript SDK
|
|
9
|
+
* logs should use the same logger too.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* import { Logger } from "effect"
|
|
14
|
+
* import { RivetLogger } from "@rivetkit/effect"
|
|
15
|
+
* import { pino } from "pino"
|
|
16
|
+
*
|
|
17
|
+
* const baseLogger = pino({ transport: { target: "pino-pretty" } })
|
|
18
|
+
* const LoggerLive = Logger.layer([RivetLogger.fromPino(baseLogger)])
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export declare const fromPino: (baseLogger: RivetkitLog.Logger) => Logger.Logger<unknown, void>;
|
|
22
|
+
/**
|
|
23
|
+
* Builds a logging layer from a custom Pino-compatible logger.
|
|
24
|
+
*
|
|
25
|
+
* The layer installs the matching Effect logger and configures the underlying
|
|
26
|
+
* RivetKit TypeScript SDK logs to go through the same logger. The Effect tracer
|
|
27
|
+
* logger is installed alongside the Pino adapter so log events remain attached
|
|
28
|
+
* to active traces.
|
|
29
|
+
*/
|
|
30
|
+
export declare const layerFromPino: (baseLogger: RivetkitLog.Logger, options?: {
|
|
31
|
+
readonly mergeWithExisting?: boolean | undefined;
|
|
32
|
+
}) => Layer.Layer<BaseLogger>;
|
|
33
|
+
/**
|
|
34
|
+
* Default RivetKit Effect logging layer.
|
|
35
|
+
*
|
|
36
|
+
* The layer creates a base logger from RivetKit log configuration and installs
|
|
37
|
+
* the Effect logger adapter. Applications that want custom formatting or
|
|
38
|
+
* transports should provide {@link layerFromPino} instead.
|
|
39
|
+
*/
|
|
40
|
+
export declare const defaultLayer: Layer.Layer<never>;
|
|
41
|
+
//# sourceMappingURL=RivetLogger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RivetLogger.d.ts","sourceRoot":"","sources":["../src/RivetLogger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/C,OAAO,KAAK,WAAW,MAAM,cAAc,CAAC;AAC5C,OAAO,EACN,UAAU,EAGV,MAAM,uBAAuB,CAAC;AAE/B;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,QAAQ,GACpB,YAAY,WAAW,CAAC,MAAM,KAC5B,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAA2B,CAAC;AAE1D;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa,GACzB,YAAY,WAAW,CAAC,MAAM,EAC9B,UAAU;IACT,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACjD,KACC,KAAK,CAAC,KAAK,CAAC,UAAU,CAMvB,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAE3C,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Effect, Logger, Layer } from "effect";
|
|
2
|
+
import * as RivetkitLog from "@ohos-ports/rivetkit/log";
|
|
3
|
+
import { BaseLogger, getOrCreateBaseLogger, makeLogger, } from "./internal/logging.js";
|
|
4
|
+
/**
|
|
5
|
+
* Builds an Effect logger from a custom Pino-compatible logger.
|
|
6
|
+
*
|
|
7
|
+
* Use this with Effect's `Logger.layer` when you only need to customize Effect
|
|
8
|
+
* log output. Use {@link layerFromPino} when RivetKit's underlying TypeScript SDK
|
|
9
|
+
* logs should use the same logger too.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* import { Logger } from "effect"
|
|
14
|
+
* import { RivetLogger } from "@rivetkit/effect"
|
|
15
|
+
* import { pino } from "pino"
|
|
16
|
+
*
|
|
17
|
+
* const baseLogger = pino({ transport: { target: "pino-pretty" } })
|
|
18
|
+
* const LoggerLive = Logger.layer([RivetLogger.fromPino(baseLogger)])
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export const fromPino = (baseLogger) => makeLogger(baseLogger);
|
|
22
|
+
/**
|
|
23
|
+
* Builds a logging layer from a custom Pino-compatible logger.
|
|
24
|
+
*
|
|
25
|
+
* The layer installs the matching Effect logger and configures the underlying
|
|
26
|
+
* RivetKit TypeScript SDK logs to go through the same logger. The Effect tracer
|
|
27
|
+
* logger is installed alongside the Pino adapter so log events remain attached
|
|
28
|
+
* to active traces.
|
|
29
|
+
*/
|
|
30
|
+
export const layerFromPino = (baseLogger, options) => Layer.mergeAll(Layer.succeed(BaseLogger, baseLogger), Logger.layer([Logger.tracerLogger, fromPino(baseLogger)], {
|
|
31
|
+
mergeWithExisting: options?.mergeWithExisting,
|
|
32
|
+
}));
|
|
33
|
+
/**
|
|
34
|
+
* Default RivetKit Effect logging layer.
|
|
35
|
+
*
|
|
36
|
+
* The layer creates a base logger from RivetKit log configuration and installs
|
|
37
|
+
* the Effect logger adapter. Applications that want custom formatting or
|
|
38
|
+
* transports should provide {@link layerFromPino} instead.
|
|
39
|
+
*/
|
|
40
|
+
export const defaultLayer = Layer.unwrap(Effect.map(getOrCreateBaseLogger, layerFromPino));
|
|
41
|
+
//# sourceMappingURL=RivetLogger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RivetLogger.js","sourceRoot":"","sources":["../src/RivetLogger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/C,OAAO,KAAK,WAAW,MAAM,cAAc,CAAC;AAC5C,OAAO,EACN,UAAU,EACV,qBAAqB,EACrB,UAAU,GACV,MAAM,uBAAuB,CAAC;AAE/B;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CACvB,UAA8B,EACC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAE1D;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAC5B,UAA8B,EAC9B,OAEC,EACyB,EAAE,CAC5B,KAAK,CAAC,QAAQ,CACb,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,EACrC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,EAAE;IACzD,iBAAiB,EAAE,OAAO,EAAE,iBAAiB;CAC7C,CAAC,CACF,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAAuB,KAAK,CAAC,MAAM,CAC3D,MAAM,CAAC,GAAG,CAAC,qBAAqB,EAAE,aAAa,CAAC,CAChD,CAAC"}
|
package/dist/State.d.ts
ADDED
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `State` is a typed view over an actor's persisted state, plus a
|
|
3
|
+
* subscribable stream of every change.
|
|
4
|
+
*
|
|
5
|
+
* Unlike a `Ref`, `State` has no in-memory cell — the persisted store
|
|
6
|
+
* is the source of truth. Reads decode the live store on demand;
|
|
7
|
+
* writes encode and overwrite it. A `PubSub<A>` backs {@link changes}
|
|
8
|
+
* and is fed externally — the runtime publishes to it from rivetkit's
|
|
9
|
+
* `onStateChange` callback so subscribers see every committed change,
|
|
10
|
+
* including ones initiated outside the SDK.
|
|
11
|
+
*
|
|
12
|
+
* Read and write are Effect-typed so schemas with asynchronous
|
|
13
|
+
* transforms (or service requirements) are supported. `update` and
|
|
14
|
+
* `modify` serialize through a per-`State` semaphore so read/apply/
|
|
15
|
+
* write triples are atomic across fibers; `set` shares the same lock
|
|
16
|
+
* so all writes are linearized.
|
|
17
|
+
*
|
|
18
|
+
* The PubSub uses replay = 1, matching `SubscriptionRef`: a new
|
|
19
|
+
* subscriber immediately sees the most recent value.
|
|
20
|
+
*/
|
|
21
|
+
import { Effect, Inspectable, Pipeable, Scope, Stream, type Types } from "effect";
|
|
22
|
+
declare const TypeId = "~@rivetkit/effect/State";
|
|
23
|
+
/**
|
|
24
|
+
* A view over a persisted state cell with a subscribable change stream.
|
|
25
|
+
*
|
|
26
|
+
* - `A` — the value type
|
|
27
|
+
* - `E` — the read/write closures' failure type (e.g. a schema's
|
|
28
|
+
* `SchemaError` when read/write decode/encode against a schema)
|
|
29
|
+
* - `R` — the read/write closures' service requirements
|
|
30
|
+
*/
|
|
31
|
+
export interface State<A, E = never, R = never> extends Variance<A, E, R>, Pipeable.Pipeable, Inspectable.Inspectable {
|
|
32
|
+
/**
|
|
33
|
+
* Retrieves the persisted value.
|
|
34
|
+
*/
|
|
35
|
+
readonly get: Effect.Effect<A, E, R>;
|
|
36
|
+
/**
|
|
37
|
+
* Retrieves the persisted value and sets a new value atomically.
|
|
38
|
+
*/
|
|
39
|
+
readonly getAndSet: (value: A) => Effect.Effect<A, E, R>;
|
|
40
|
+
/**
|
|
41
|
+
* Retrieves the current value and updates it atomically with the result of
|
|
42
|
+
* applying a function.
|
|
43
|
+
*/
|
|
44
|
+
readonly getAndUpdate: (f: (a: A) => A) => Effect.Effect<A, E, R>;
|
|
45
|
+
/**
|
|
46
|
+
* Retrieves the current value and updates it atomically with the result of
|
|
47
|
+
* applying an effectful function.
|
|
48
|
+
*/
|
|
49
|
+
readonly getAndUpdateEffect: <E2, R2>(f: (a: A) => Effect.Effect<A, E2, R2>) => Effect.Effect<A, E | E2, R | R2>;
|
|
50
|
+
/**
|
|
51
|
+
* Modifies atomically with a function that computes a return value and
|
|
52
|
+
* a new value.
|
|
53
|
+
*/
|
|
54
|
+
readonly modify: <B>(f: (a: A) => readonly [B, A]) => Effect.Effect<B, E, R>;
|
|
55
|
+
/**
|
|
56
|
+
* Modifies atomically with an effectful function that computes a return value
|
|
57
|
+
* and a new value.
|
|
58
|
+
*/
|
|
59
|
+
readonly modifyEffect: <B, E2, R2>(f: (a: A) => Effect.Effect<readonly [B, A], E2, R2>) => Effect.Effect<B, E | E2, R | R2>;
|
|
60
|
+
/**
|
|
61
|
+
* Writes the persisted value.
|
|
62
|
+
*/
|
|
63
|
+
readonly set: (value: A) => Effect.Effect<void, E, R>;
|
|
64
|
+
/**
|
|
65
|
+
* Sets the persisted value and returns the new value.
|
|
66
|
+
*/
|
|
67
|
+
readonly setAndGet: (value: A) => Effect.Effect<A, E, R>;
|
|
68
|
+
/**
|
|
69
|
+
* Updates the persisted value with the result of applying a function.
|
|
70
|
+
*/
|
|
71
|
+
readonly update: (f: (a: A) => A) => Effect.Effect<void, E, R>;
|
|
72
|
+
/**
|
|
73
|
+
* Updates the persisted value with the result of applying an effectful function.
|
|
74
|
+
*/
|
|
75
|
+
readonly updateEffect: <E2, R2>(f: (a: A) => Effect.Effect<A, E2, R2>) => Effect.Effect<void, E | E2, R | R2>;
|
|
76
|
+
/**
|
|
77
|
+
* Updates the persisted value with the result of applying an effectful function
|
|
78
|
+
* and returns the new value.
|
|
79
|
+
*/
|
|
80
|
+
readonly updateAndGet: (f: (a: A) => A) => Effect.Effect<A, E, R>;
|
|
81
|
+
/**
|
|
82
|
+
* Updates the persisted value with the result of applying an effectful function
|
|
83
|
+
* and returns the new value.
|
|
84
|
+
*/
|
|
85
|
+
readonly updateAndGetEffect: <E2, R2>(f: (a: A) => Effect.Effect<A, E2, R2>) => Effect.Effect<A, E | E2, R | R2>;
|
|
86
|
+
/**
|
|
87
|
+
* Creates a stream that emits the current persisted value and all subsequent
|
|
88
|
+
* changes.
|
|
89
|
+
*/
|
|
90
|
+
readonly changes: Stream.Stream<A>;
|
|
91
|
+
}
|
|
92
|
+
export declare const isState: (u: unknown) => u is State<unknown, unknown>;
|
|
93
|
+
export interface Variance<A, E, R> {
|
|
94
|
+
readonly [TypeId]: {
|
|
95
|
+
readonly _A: Types.Invariant<A>;
|
|
96
|
+
readonly _E: Types.Covariant<E>;
|
|
97
|
+
readonly _R: Types.Covariant<R>;
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Creates a `State` from `read` and `write` closures over the
|
|
102
|
+
* underlying store. The closures are responsible for any
|
|
103
|
+
* encoding/decoding; `State` itself is schema-agnostic.
|
|
104
|
+
*
|
|
105
|
+
* The current value (per `read()`) is published to the pubsub on
|
|
106
|
+
* construction so any subscription obtained later replays it.
|
|
107
|
+
*
|
|
108
|
+
* The backing PubSub is scoped and shuts down when the current
|
|
109
|
+
* `Scope` closes.
|
|
110
|
+
*/
|
|
111
|
+
export declare const make: <A, E, R>(read: () => Effect.Effect<A, E, R>, write: (value: A) => Effect.Effect<void, E, R>) => Effect.Effect<State<A, E, R>, E, Scope.Scope | R>;
|
|
112
|
+
export declare const get: <A, E, R>(self: State<A, E, R>) => Effect.Effect<A, E, R>;
|
|
113
|
+
export declare const getAndSet: {
|
|
114
|
+
<A>(value: A): <E, R>(self: State<A, E, R>) => Effect.Effect<A, E, R>;
|
|
115
|
+
<A, E, R>(self: State<A, E, R>, value: A): Effect.Effect<A, E, R>;
|
|
116
|
+
};
|
|
117
|
+
export declare const getAndUpdate: {
|
|
118
|
+
<A>(f: (a: A) => A): <E, R>(self: State<A, E, R>) => Effect.Effect<A, E, R>;
|
|
119
|
+
<A, E, R>(self: State<A, E, R>, f: (a: A) => A): Effect.Effect<A, E, R>;
|
|
120
|
+
};
|
|
121
|
+
export declare const getAndUpdateEffect: {
|
|
122
|
+
<A, E2, R2>(f: (a: A) => Effect.Effect<A, E2, R2>): <E, R>(self: State<A, E, R>) => Effect.Effect<A, E | E2, R | R2>;
|
|
123
|
+
<A, E, R, E2, R2>(self: State<A, E, R>, f: (a: A) => Effect.Effect<A, E2, R2>): Effect.Effect<A, E | E2, R | R2>;
|
|
124
|
+
};
|
|
125
|
+
export declare const modify: {
|
|
126
|
+
<A, B>(f: (a: A) => readonly [B, A]): <E, R>(self: State<A, E, R>) => Effect.Effect<B, E, R>;
|
|
127
|
+
<A, E, R, B>(self: State<A, E, R>, f: (a: A) => readonly [B, A]): Effect.Effect<B, E, R>;
|
|
128
|
+
};
|
|
129
|
+
export declare const modifyEffect: {
|
|
130
|
+
<A, B, E2, R2>(f: (a: A) => Effect.Effect<readonly [B, A], E2, R2>): <E, R>(self: State<A, E, R>) => Effect.Effect<B, E | E2, R | R2>;
|
|
131
|
+
<A, E, R, B, E2, R2>(self: State<A, E, R>, f: (a: A) => Effect.Effect<readonly [B, A], E2, R2>): Effect.Effect<B, E | E2, R | R2>;
|
|
132
|
+
};
|
|
133
|
+
export declare const set: {
|
|
134
|
+
<A>(value: A): <E, R>(self: State<A, E, R>) => Effect.Effect<void, E, R>;
|
|
135
|
+
<A, E, R>(self: State<A, E, R>, value: A): Effect.Effect<void, E, R>;
|
|
136
|
+
};
|
|
137
|
+
export declare const setAndGet: {
|
|
138
|
+
<A>(value: A): <E, R>(self: State<A, E, R>) => Effect.Effect<A, E, R>;
|
|
139
|
+
<A, E, R>(self: State<A, E, R>, value: A): Effect.Effect<A, E, R>;
|
|
140
|
+
};
|
|
141
|
+
export declare const update: {
|
|
142
|
+
<A>(f: (a: A) => A): <E, R>(self: State<A, E, R>) => Effect.Effect<void, E, R>;
|
|
143
|
+
<A, E, R>(self: State<A, E, R>, f: (a: A) => A): Effect.Effect<void, E, R>;
|
|
144
|
+
};
|
|
145
|
+
export declare const updateEffect: {
|
|
146
|
+
<A, E2, R2>(f: (a: A) => Effect.Effect<A, E2, R2>): <E, R>(self: State<A, E, R>) => Effect.Effect<void, E | E2, R | R2>;
|
|
147
|
+
<A, E, R, E2, R2>(self: State<A, E, R>, f: (a: A) => Effect.Effect<A, E2, R2>): Effect.Effect<void, E | E2, R | R2>;
|
|
148
|
+
};
|
|
149
|
+
export declare const updateAndGet: {
|
|
150
|
+
<A>(f: (a: A) => A): <E, R>(self: State<A, E, R>) => Effect.Effect<A, E, R>;
|
|
151
|
+
<A, E, R>(self: State<A, E, R>, f: (a: A) => A): Effect.Effect<A, E, R>;
|
|
152
|
+
};
|
|
153
|
+
export declare const updateAndGetEffect: {
|
|
154
|
+
<A, E2, R2>(f: (a: A) => Effect.Effect<A, E2, R2>): <E, R>(self: State<A, E, R>) => Effect.Effect<A, E | E2, R | R2>;
|
|
155
|
+
<A, E, R, E2, R2>(self: State<A, E, R>, f: (a: A) => Effect.Effect<A, E2, R2>): Effect.Effect<A, E | E2, R | R2>;
|
|
156
|
+
};
|
|
157
|
+
export declare const changes: <A, E, R>(self: State<A, E, R>) => Stream.Stream<A>;
|
|
158
|
+
export {};
|
|
159
|
+
//# sourceMappingURL=State.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"State.d.ts","sourceRoot":"","sources":["../src/State.ts"],"names":[],"mappings":"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"}
|
package/dist/State.js
ADDED
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `State` is a typed view over an actor's persisted state, plus a
|
|
3
|
+
* subscribable stream of every change.
|
|
4
|
+
*
|
|
5
|
+
* Unlike a `Ref`, `State` has no in-memory cell — the persisted store
|
|
6
|
+
* is the source of truth. Reads decode the live store on demand;
|
|
7
|
+
* writes encode and overwrite it. A `PubSub<A>` backs {@link changes}
|
|
8
|
+
* and is fed externally — the runtime publishes to it from rivetkit's
|
|
9
|
+
* `onStateChange` callback so subscribers see every committed change,
|
|
10
|
+
* including ones initiated outside the SDK.
|
|
11
|
+
*
|
|
12
|
+
* Read and write are Effect-typed so schemas with asynchronous
|
|
13
|
+
* transforms (or service requirements) are supported. `update` and
|
|
14
|
+
* `modify` serialize through a per-`State` semaphore so read/apply/
|
|
15
|
+
* write triples are atomic across fibers; `set` shares the same lock
|
|
16
|
+
* so all writes are linearized.
|
|
17
|
+
*
|
|
18
|
+
* The PubSub uses replay = 1, matching `SubscriptionRef`: a new
|
|
19
|
+
* subscriber immediately sees the most recent value.
|
|
20
|
+
*/
|
|
21
|
+
import { Effect, Inspectable, identity, Pipeable, Predicate, PubSub, Semaphore, Scope, Stream, } from "effect";
|
|
22
|
+
import { dual } from "effect/Function";
|
|
23
|
+
const TypeId = "~@rivetkit/effect/State";
|
|
24
|
+
/**
|
|
25
|
+
* Internal access to `State`'s backing store and publish machinery.
|
|
26
|
+
*
|
|
27
|
+
* @internal
|
|
28
|
+
*/
|
|
29
|
+
export const RuntimeTypeId = Symbol.for("~@rivetkit/effect/State/Runtime");
|
|
30
|
+
export const isState = (u) => Predicate.hasProperty(u, TypeId);
|
|
31
|
+
const Proto = {
|
|
32
|
+
...Pipeable.Prototype,
|
|
33
|
+
...Inspectable.BaseProto,
|
|
34
|
+
[TypeId]: { _A: identity, _E: identity, _R: identity },
|
|
35
|
+
toJSON() {
|
|
36
|
+
return { _id: "State" };
|
|
37
|
+
},
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Creates a `State` from `read` and `write` closures over the
|
|
41
|
+
* underlying store. The closures are responsible for any
|
|
42
|
+
* encoding/decoding; `State` itself is schema-agnostic.
|
|
43
|
+
*
|
|
44
|
+
* The current value (per `read()`) is published to the pubsub on
|
|
45
|
+
* construction so any subscription obtained later replays it.
|
|
46
|
+
*
|
|
47
|
+
* The backing PubSub is scoped and shuts down when the current
|
|
48
|
+
* `Scope` closes.
|
|
49
|
+
*/
|
|
50
|
+
export const make = Effect.fnUntraced(function* (read, write) {
|
|
51
|
+
const pubsub = yield* PubSub.unbounded({ replay: 1 });
|
|
52
|
+
yield* Effect.addFinalizer(() => PubSub.shutdown(pubsub));
|
|
53
|
+
const initial = yield* read();
|
|
54
|
+
yield* PubSub.publish(pubsub, initial);
|
|
55
|
+
const self = Object.create(Proto);
|
|
56
|
+
const semaphore = yield* Semaphore.make(1);
|
|
57
|
+
self[RuntimeTypeId] = {
|
|
58
|
+
read,
|
|
59
|
+
write,
|
|
60
|
+
pubsub,
|
|
61
|
+
publish: (value) => PubSub.publish(pubsub, value),
|
|
62
|
+
publishEffect: (effect) => Semaphore.withPermit(semaphore, Effect.flatMap(effect, (value) => PubSub.publish(pubsub, value))),
|
|
63
|
+
};
|
|
64
|
+
self.get = Effect.suspend(() => self[RuntimeTypeId].read());
|
|
65
|
+
self.set = (value) => Semaphore.withPermit(semaphore, write(value));
|
|
66
|
+
self.getAndSet = (value) => Semaphore.withPermit(semaphore, Effect.flatMap(read(), (previous) => Effect.as(write(value), previous)));
|
|
67
|
+
self.setAndGet = (value) => Semaphore.withPermit(semaphore, Effect.as(write(value), value));
|
|
68
|
+
self.update = (f) => Semaphore.withPermit(semaphore, Effect.flatMap(read(), (a) => write(f(a))));
|
|
69
|
+
self.updateEffect = (f) => Semaphore.withPermit(semaphore, Effect.flatMap(read(), (a) => Effect.flatMap(f(a), write)));
|
|
70
|
+
self.getAndUpdate = (f) => Semaphore.withPermit(semaphore, Effect.flatMap(read(), (previous) => Effect.as(write(f(previous)), previous)));
|
|
71
|
+
self.getAndUpdateEffect = (f) => Semaphore.withPermit(semaphore, Effect.flatMap(read(), (previous) => Effect.flatMap(f(previous), (next) => Effect.as(write(next), previous))));
|
|
72
|
+
self.updateAndGet = (f) => Semaphore.withPermit(semaphore, Effect.flatMap(read(), (a) => {
|
|
73
|
+
const next = f(a);
|
|
74
|
+
return Effect.as(write(next), next);
|
|
75
|
+
}));
|
|
76
|
+
self.updateAndGetEffect = (f) => Semaphore.withPermit(semaphore, Effect.flatMap(read(), (a) => Effect.flatMap(f(a), (next) => Effect.as(write(next), next))));
|
|
77
|
+
self.modify = (f) => Semaphore.withPermit(semaphore, Effect.flatMap(read(), (a) => {
|
|
78
|
+
const [b, next] = f(a);
|
|
79
|
+
return Effect.as(write(next), b);
|
|
80
|
+
}));
|
|
81
|
+
self.modifyEffect = (f) => Semaphore.withPermit(semaphore, Effect.flatMap(read(), (a) => Effect.flatMap(f(a), ([b, next]) => Effect.as(write(next), b))));
|
|
82
|
+
self.changes = Stream.fromPubSub(pubsub);
|
|
83
|
+
return self;
|
|
84
|
+
});
|
|
85
|
+
export const get = (self) => self.get;
|
|
86
|
+
export const getAndSet = dual(2, (self, value) => self.getAndSet(value));
|
|
87
|
+
export const getAndUpdate = dual(2, (self, f) => self.getAndUpdate(f));
|
|
88
|
+
export const getAndUpdateEffect = dual(2, (self, f) => self.getAndUpdateEffect(f));
|
|
89
|
+
export const modify = dual(2, (self, f) => self.modify(f));
|
|
90
|
+
export const modifyEffect = dual(2, (self, f) => self.modifyEffect(f));
|
|
91
|
+
export const set = dual(2, (self, value) => self.set(value));
|
|
92
|
+
export const setAndGet = dual(2, (self, value) => self.setAndGet(value));
|
|
93
|
+
export const update = dual(2, (self, f) => self.update(f));
|
|
94
|
+
export const updateEffect = dual(2, (self, f) => self.updateEffect(f));
|
|
95
|
+
export const updateAndGet = dual(2, (self, f) => self.updateAndGet(f));
|
|
96
|
+
export const updateAndGetEffect = dual(2, (self, f) => self.updateAndGetEffect(f));
|
|
97
|
+
export const changes = (self) => self.changes;
|
|
98
|
+
//# sourceMappingURL=State.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"State.js","sourceRoot":"","sources":["../src/State.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Effect, type Fiber } from "effect";
|
|
2
|
+
import * as Rivetkit from "@ohos-ports/rivetkit";
|
|
3
|
+
import type * as Action from "../Action.ts";
|
|
4
|
+
import type { ActionHandlersFrom, Actor } from "../Actor.ts";
|
|
5
|
+
import type * as Client from "../Client.ts";
|
|
6
|
+
export type Instance<ActionHandlers> = {
|
|
7
|
+
readonly actionHandlers: ActionHandlers;
|
|
8
|
+
readonly runFork: <A, E>(effect: Effect.Effect<A, E, any>, options?: Effect.RunOptions) => Fiber.Fiber<A, E>;
|
|
9
|
+
};
|
|
10
|
+
export declare const make: <Name extends string, Actions extends Action.AnyWithProps, ActionHandlers extends ActionHandlersFrom<Actions>, ActorDefinition extends Rivetkit.AnyActorDefinition>({ actor, getInstance, }: {
|
|
11
|
+
readonly actor: Actor<Name, Actions>;
|
|
12
|
+
readonly getInstance: (actorId: string) => Instance<ActionHandlers> | undefined;
|
|
13
|
+
}) => Record<string, (c: Rivetkit.ActionContextOf<ActorDefinition>, payload: Action.Payload<Actions>, meta?: Client.ActionMeta) => Promise<unknown>>;
|
|
14
|
+
//# sourceMappingURL=ActionDispatcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ActionDispatcher.d.ts","sourceRoot":"","sources":["../../src/internal/ActionDispatcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,MAAM,EAEN,KAAK,KAAK,EAKV,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,QAAQ,MAAM,UAAU,CAAC;AACrC,OAAO,KAAK,KAAK,MAAM,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAE,kBAAkB,EAAiB,KAAK,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,KAAK,KAAK,MAAM,MAAM,cAAc,CAAC;AAM5C,MAAM,MAAM,QAAQ,CAAC,cAAc,IAAI;IACtC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EACtB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAChC,OAAO,CAAC,EAAE,MAAM,CAAC,UAAU,KACvB,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,IAAI,GAChB,IAAI,SAAS,MAAM,EACnB,OAAO,SAAS,MAAM,CAAC,YAAY,EACnC,cAAc,SAAS,kBAAkB,CAAC,OAAO,CAAC,EAClD,eAAe,SAAS,QAAQ,CAAC,kBAAkB,EAClD,yBAGC;IACF,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACrC,QAAQ,CAAC,WAAW,EAAE,CACrB,OAAO,EAAE,MAAM,KACX,QAAQ,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC;CAC1C,wBAeM,QAAQ,CAAC,eAAe,CAAC,eAAe,CAAC,WACnC,MAAM,CAAC,OAAO,SAAe,SAC/B,MAAM,CAAC,UAAU,sBA8HzB,CAAC"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { Cause, Effect, Exit, Option, Record, Schema, Tracer, } from "effect";
|
|
2
|
+
import * as Rivetkit from "@ohos-ports/rivetkit";
|
|
3
|
+
import * as ActionErrorEnvelope from "./ActionErrorEnvelope.js";
|
|
4
|
+
import { makeActorLogAnnotations } from "./logging.js";
|
|
5
|
+
import { readTraceMeta, rpcSystem } from "./tracing.js";
|
|
6
|
+
import { hasStringProperty } from "./utils.js";
|
|
7
|
+
export const make = ({ actor, getInstance, }) => Record.fromIterableWith(actor.actions, (action) => {
|
|
8
|
+
const decodePayload = Schema.decodeUnknownEffect(Schema.toCodecJson(action.payloadSchema));
|
|
9
|
+
const encodeSuccess = Schema.encodeEffect(Schema.toCodecJson(action.successSchema));
|
|
10
|
+
const encodeError = Schema.encodeEffect(Schema.toCodecJson(action.errorSchema));
|
|
11
|
+
return [
|
|
12
|
+
action._tag,
|
|
13
|
+
async (c, payload, meta) => {
|
|
14
|
+
// Always wrap in a server-side span so the handler has a
|
|
15
|
+
// live `currentSpan` even when the caller didn't ship trace
|
|
16
|
+
// context (e.g., a non-Effect-SDK client). When trace context
|
|
17
|
+
// is present, reattach it as the parent so the server span
|
|
18
|
+
// joins the caller's trace.
|
|
19
|
+
const rpcMethod = `${actor.name}/${action._tag}`;
|
|
20
|
+
const traceMeta = readTraceMeta(meta);
|
|
21
|
+
const instance = getInstance(c.actorId);
|
|
22
|
+
if (!instance) {
|
|
23
|
+
if (c.abortSignal.aborted)
|
|
24
|
+
throw makeActorAbortedError();
|
|
25
|
+
throw new Error("actor instance missing");
|
|
26
|
+
}
|
|
27
|
+
const actionEffect = Effect.gen(function* () {
|
|
28
|
+
// The handler map is keyed by the same action
|
|
29
|
+
// definitions being registered here, but
|
|
30
|
+
// TypeScript loses that relationship once the
|
|
31
|
+
// actions are widened into the RivetKit actions
|
|
32
|
+
// record.
|
|
33
|
+
const actionHandler = instance.actionHandlers[action._tag];
|
|
34
|
+
// Raw RivetKit clients call no-argument actions with an
|
|
35
|
+
// absent first argument. The Effect JSON Void codec expects
|
|
36
|
+
// null, so adapt only actions that declared no payload.
|
|
37
|
+
const payloadForDecode = !action.hasPayload && payload === undefined
|
|
38
|
+
? null
|
|
39
|
+
: payload;
|
|
40
|
+
const decodedPayload = yield* decodePayload(payloadForDecode).pipe(Effect.mapError(() => new Rivetkit.RivetError("request", "invalid", `Invalid payload for action ${actor.name}/${action._tag}`)));
|
|
41
|
+
// The payload was decoded with this action's schema,
|
|
42
|
+
// so this is the runtime boundary that restores the
|
|
43
|
+
// typed envelope expected by the user handler.
|
|
44
|
+
const actionRequest = {
|
|
45
|
+
_tag: action._tag,
|
|
46
|
+
action,
|
|
47
|
+
payload: decodedPayload,
|
|
48
|
+
};
|
|
49
|
+
const resultExit = yield* Effect.exit(actionHandler(actionRequest));
|
|
50
|
+
if (Exit.isSuccess(resultExit)) {
|
|
51
|
+
return yield* encodeSuccess(resultExit.value).pipe(Effect.orDie);
|
|
52
|
+
}
|
|
53
|
+
const expectedError = Exit.findErrorOption(resultExit);
|
|
54
|
+
if (Option.isSome(expectedError)) {
|
|
55
|
+
const encodedError = yield* encodeError(expectedError.value).pipe(Effect.orDie);
|
|
56
|
+
return yield* Effect.fail(new Rivetkit.UserError(hasStringProperty("message")(encodedError)
|
|
57
|
+
? encodedError.message
|
|
58
|
+
: `${action._tag} failed`, {
|
|
59
|
+
code: hasStringProperty("_tag")(encodedError)
|
|
60
|
+
? encodedError._tag
|
|
61
|
+
: undefined,
|
|
62
|
+
metadata: ActionErrorEnvelope.make(encodedError),
|
|
63
|
+
}));
|
|
64
|
+
}
|
|
65
|
+
return yield* Effect.failCause(resultExit.cause);
|
|
66
|
+
}).pipe(Effect.withSpan(rpcMethod, {
|
|
67
|
+
parent: traceMeta
|
|
68
|
+
? Tracer.externalSpan(traceMeta)
|
|
69
|
+
: undefined,
|
|
70
|
+
kind: "server",
|
|
71
|
+
attributes: {
|
|
72
|
+
"rpc.system.name": rpcSystem,
|
|
73
|
+
"rpc.method": rpcMethod,
|
|
74
|
+
},
|
|
75
|
+
}), Effect.annotateLogs(makeActorLogAnnotations(c)));
|
|
76
|
+
const fiber = instance.runFork(actionEffect, {
|
|
77
|
+
signal: c.abortSignal,
|
|
78
|
+
});
|
|
79
|
+
const exit = await new Promise((resolve) => fiber.addObserver(resolve));
|
|
80
|
+
if (Exit.isSuccess(exit))
|
|
81
|
+
return exit.value;
|
|
82
|
+
// Action fibers can be interrupted by a caller abort signal
|
|
83
|
+
// or by the actor instance scope closing during sleep, destroy,
|
|
84
|
+
// or shutdown. Surface those lifecycle exits as RivetKit's
|
|
85
|
+
// structured action-aborted error instead of an internal error.
|
|
86
|
+
if (Cause.hasInterruptsOnly(exit.cause)) {
|
|
87
|
+
throw makeActorAbortedError();
|
|
88
|
+
}
|
|
89
|
+
const expectedError = Exit.findErrorOption(exit);
|
|
90
|
+
if (Option.isSome(expectedError)) {
|
|
91
|
+
throw expectedError.value;
|
|
92
|
+
}
|
|
93
|
+
throw Cause.squash(exit.cause);
|
|
94
|
+
},
|
|
95
|
+
];
|
|
96
|
+
});
|
|
97
|
+
const makeActorAbortedError = () => new Rivetkit.RivetError("actor", "aborted", "Actor aborted", {
|
|
98
|
+
public: true,
|
|
99
|
+
});
|
|
100
|
+
//# sourceMappingURL=ActionDispatcher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ActionDispatcher.js","sourceRoot":"","sources":["../../src/internal/ActionDispatcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
export declare const tag: "EffectActionError";
|
|
3
|
+
export declare const schemaVersion: 1;
|
|
4
|
+
export declare const ActionErrorEnvelope: Schema.Struct<{
|
|
5
|
+
readonly _tag: Schema.tag<"EffectActionError">;
|
|
6
|
+
readonly version: Schema.Literal<1>;
|
|
7
|
+
readonly error: Schema.Unknown;
|
|
8
|
+
}>;
|
|
9
|
+
export type ActionErrorEnvelope = typeof ActionErrorEnvelope.Type;
|
|
10
|
+
export declare const make: (error: unknown) => ActionErrorEnvelope;
|
|
11
|
+
//# sourceMappingURL=ActionErrorEnvelope.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ActionErrorEnvelope.d.ts","sourceRoot":"","sources":["../../src/internal/ActionErrorEnvelope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,eAAO,MAAM,GAAG,EAAG,mBAA4B,CAAC;AAEhD,eAAO,MAAM,aAAa,EAAG,CAAU,CAAC;AAExC,eAAO,MAAM,mBAAmB;;;;EAI9B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,OAAO,mBAAmB,CAAC,IAAI,CAAC;AAElE,eAAO,MAAM,IAAI,GAAI,OAAO,OAAO,KAAG,mBAIpC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
export const tag = "EffectActionError";
|
|
3
|
+
export const schemaVersion = 1;
|
|
4
|
+
export const ActionErrorEnvelope = Schema.Struct({
|
|
5
|
+
_tag: Schema.tag(tag),
|
|
6
|
+
version: Schema.Literal(schemaVersion),
|
|
7
|
+
error: Schema.Unknown,
|
|
8
|
+
});
|
|
9
|
+
export const make = (error) => ({
|
|
10
|
+
_tag: tag,
|
|
11
|
+
version: schemaVersion,
|
|
12
|
+
error,
|
|
13
|
+
});
|
|
14
|
+
//# sourceMappingURL=ActionErrorEnvelope.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ActionErrorEnvelope.js","sourceRoot":"","sources":["../../src/internal/ActionErrorEnvelope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,CAAC,MAAM,GAAG,GAAG,mBAA4B,CAAC;AAEhD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAU,CAAC;AAExC,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC;IAChD,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC;IACtC,KAAK,EAAE,MAAM,CAAC,OAAO;CACrB,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,KAAc,EAAuB,EAAE,CAAC,CAAC;IAC7D,IAAI,EAAE,GAAG;IACT,OAAO,EAAE,aAAa;IACtB,KAAK;CACL,CAAC,CAAC"}
|