effect-genserver 0.1.5 → 0.1.7
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/AtomGenServer.d.ts
CHANGED
|
@@ -8,14 +8,13 @@ import * as GenServer from "./GenServer.ts";
|
|
|
8
8
|
import * as Atom from "effect/unstable/reactivity/Atom";
|
|
9
9
|
import * as AsyncResult from "effect/unstable/reactivity/AsyncResult";
|
|
10
10
|
import * as Duration from "effect/Duration";
|
|
11
|
-
import type { unassigned } from "effect/Types";
|
|
12
11
|
/**
|
|
13
12
|
* @since 1.0.0
|
|
14
13
|
* @category Atom
|
|
15
14
|
*/
|
|
16
15
|
export interface GenServerAtom<State extends Schema.Top, Rpcs extends Rpc.Any, E, InitialState extends boolean> extends Atom.Writable<[
|
|
17
|
-
|
|
18
|
-
] extends [
|
|
16
|
+
true
|
|
17
|
+
] extends [InitialState] ? State["Type"] : AsyncResult.AsyncResult<State["Type"], E>, Rpcs extends Rpc.Rpc<infer _Tag, infer _Payload, infer _Success, infer _Error, infer _Middleware, infer _Requires> ? {
|
|
19
18
|
readonly _tag: _Tag;
|
|
20
19
|
readonly payload: _Payload["~type.make.in"];
|
|
21
20
|
} : never> {
|
|
@@ -34,9 +33,9 @@ export interface GenServerAtom<State extends Schema.Top, Rpcs extends Rpc.Any, E
|
|
|
34
33
|
* @since 1.0.0
|
|
35
34
|
* @category Atom
|
|
36
35
|
*/
|
|
37
|
-
export declare const make: <State extends Schema.Top, Rpcs extends Rpc.Any, E, InitialState extends State["Type"] =
|
|
36
|
+
export declare const make: <State extends Schema.Top, Rpcs extends Rpc.Any, E, InitialState extends State["Type"] | undefined = undefined>(server: GenServer.GenServer<State, Rpcs>, layer: Layer.Layer<GenServer.ToHandler<Rpcs> | GenServer.InitialState, E, GenServer.SendDiscard> | ((get: Atom.AtomContext) => Layer.Layer<GenServer.ToHandler<Rpcs> | GenServer.InitialState, E, GenServer.SendDiscard>), options?: {
|
|
38
37
|
readonly memoMap?: Layer.MemoMap | undefined;
|
|
39
38
|
readonly actorIdleTTL?: Duration.Input | undefined;
|
|
40
|
-
readonly initialState?: InitialState
|
|
41
|
-
}) => GenServerAtom<State, Rpcs, E, [InitialState] extends [
|
|
39
|
+
readonly initialState?: InitialState;
|
|
40
|
+
}) => GenServerAtom<State, Rpcs, E, [InitialState] extends [undefined] ? never : true>;
|
|
42
41
|
//# sourceMappingURL=AtomGenServer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AtomGenServer.d.ts","sourceRoot":"","sources":["../src/AtomGenServer.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,GAAG,MAAM,yBAAyB,CAAA;AAGnD,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,IAAI,MAAM,iCAAiC,CAAA;AAGvD,OAAO,KAAK,WAAW,MAAM,wCAAwC,CAAA;AACrE,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"AtomGenServer.d.ts","sourceRoot":"","sources":["../src/AtomGenServer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AtomGenServer.js","sourceRoot":"","sources":["../src/AtomGenServer.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAA;AAC1D,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,IAAI,MAAM,iCAAiC,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,WAAW,MAAM,wCAAwC,CAAA;AACrE,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"AtomGenServer.js","sourceRoot":"","sources":["../src/AtomGenServer.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/AtomGenServer.ts
CHANGED
|
@@ -12,7 +12,6 @@ import { identity, pipe } from "effect/Function"
|
|
|
12
12
|
import * as Stream from "effect/Stream"
|
|
13
13
|
import * as AsyncResult from "effect/unstable/reactivity/AsyncResult"
|
|
14
14
|
import * as Duration from "effect/Duration"
|
|
15
|
-
import type { unassigned } from "effect/Types"
|
|
16
15
|
|
|
17
16
|
/**
|
|
18
17
|
* @since 1.0.0
|
|
@@ -25,7 +24,7 @@ export interface GenServerAtom<
|
|
|
25
24
|
InitialState extends boolean,
|
|
26
25
|
// oxlint-disable-next-line import/namespace
|
|
27
26
|
> extends Atom.Writable<
|
|
28
|
-
[
|
|
27
|
+
[true] extends [InitialState]
|
|
29
28
|
? State["Type"]
|
|
30
29
|
: AsyncResult.AsyncResult<State["Type"], E>,
|
|
31
30
|
Rpcs extends Rpc.Rpc<
|
|
@@ -72,7 +71,7 @@ export const make = <
|
|
|
72
71
|
State extends Schema.Top,
|
|
73
72
|
Rpcs extends Rpc.Any,
|
|
74
73
|
E,
|
|
75
|
-
InitialState extends State["Type"] =
|
|
74
|
+
InitialState extends State["Type"] | undefined = undefined,
|
|
76
75
|
>(
|
|
77
76
|
server: GenServer.GenServer<State, Rpcs>,
|
|
78
77
|
layer:
|
|
@@ -91,13 +90,13 @@ export const make = <
|
|
|
91
90
|
options?: {
|
|
92
91
|
readonly memoMap?: Layer.MemoMap | undefined
|
|
93
92
|
readonly actorIdleTTL?: Duration.Input | undefined
|
|
94
|
-
readonly initialState?: InitialState
|
|
93
|
+
readonly initialState?: InitialState
|
|
95
94
|
},
|
|
96
95
|
): GenServerAtom<
|
|
97
96
|
State,
|
|
98
97
|
Rpcs,
|
|
99
98
|
E,
|
|
100
|
-
[InitialState] extends [
|
|
99
|
+
[InitialState] extends [undefined] ? never : true
|
|
101
100
|
> => {
|
|
102
101
|
const memoMap = options?.memoMap ?? Atom.runtime.memoMap
|
|
103
102
|
|