@effect-atom/atom 0.1.0 → 0.1.2
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/cjs/Atom.js +26 -9
- package/dist/cjs/Atom.js.map +1 -1
- package/dist/dts/Atom.d.ts +40 -21
- package/dist/dts/Atom.d.ts.map +1 -1
- package/dist/esm/Atom.js +25 -8
- package/dist/esm/Atom.js.map +1 -1
- package/package.json +2 -1
- package/src/Atom.ts +130 -44
package/dist/cjs/Atom.js
CHANGED
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.writable = exports.withServerValueInitial = exports.withServerValue = exports.withLabel = exports.withFallback = exports.windowFocusSignal = exports.update = exports.transform = exports.toStreamResult = exports.toStream = exports.subscriptionRef = exports.subscribable = exports.setLazy = exports.setIdleTTL = exports.set = exports.serializable = exports.searchParam = exports.runtime = exports.refreshOnWindowFocus = exports.refresh = exports.readable = exports.pull = exports.optimisticFn = exports.optimistic = exports.modify = exports.mapResult = exports.map = exports.makeRefreshOnSignal = exports.make = exports.kvs = exports.keepAlive = exports.isWritable = exports.isSerializable = exports.initialValue = exports.getServerValue = exports.getResult = exports.get = exports.fnSync = exports.fn = exports.family = exports.defaultMemoMap = exports.debounce = exports.context = exports.batch = exports.autoDispose = exports.WritableTypeId = exports.TypeId = exports.ServerValueTypeId = exports.SerializableTypeId = exports.Reset = void 0;
|
|
6
|
+
exports.writable = exports.withServerValueInitial = exports.withServerValue = exports.withReactivity = exports.withLabel = exports.withFallback = exports.windowFocusSignal = exports.update = exports.transform = exports.toStreamResult = exports.toStream = exports.subscriptionRef = exports.subscribable = exports.setLazy = exports.setIdleTTL = exports.set = exports.serializable = exports.searchParam = exports.runtime = exports.refreshOnWindowFocus = exports.refresh = exports.readable = exports.pull = exports.optimisticFn = exports.optimistic = exports.modify = exports.mapResult = exports.map = exports.makeRefreshOnSignal = exports.make = exports.kvs = exports.keepAlive = exports.isWritable = exports.isSerializable = exports.initialValue = exports.getServerValue = exports.getResult = exports.get = exports.fnSync = exports.fn = exports.family = exports.defaultMemoMap = exports.debounce = exports.context = exports.batch = exports.autoDispose = exports.WritableTypeId = exports.TypeId = exports.ServerValueTypeId = exports.SerializableTypeId = exports.Reset = void 0;
|
|
7
|
+
var Reactivity = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@effect/experimental/Reactivity"));
|
|
7
8
|
var KeyValueStore = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@effect/platform/KeyValueStore"));
|
|
8
9
|
var Arr = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Array"));
|
|
9
10
|
var _Cause = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Cause"));
|
|
@@ -151,7 +152,10 @@ const RuntimeProto = {
|
|
|
151
152
|
}
|
|
152
153
|
};
|
|
153
154
|
const makeFnRuntime = (self, arg, options) => {
|
|
154
|
-
const [read, write, argAtom] = makeResultFn(
|
|
155
|
+
const [read, write, argAtom] = makeResultFn(options?.reactivityKeys ? (a, get) => {
|
|
156
|
+
const effect = arg(a, get);
|
|
157
|
+
return Effect.isEffect(effect) ? Reactivity.mutation(effect, options.reactivityKeys) : Stream.ensuring(effect, Reactivity.invalidate(options.reactivityKeys));
|
|
158
|
+
} : arg, options);
|
|
155
159
|
return writable(get => {
|
|
156
160
|
get.get(argAtom);
|
|
157
161
|
const previous = get.self();
|
|
@@ -295,13 +299,13 @@ function makeEffect(ctx, effect, initialValue, runtime = Runtime.defaultRuntime,
|
|
|
295
299
|
* @category constructors
|
|
296
300
|
*/
|
|
297
301
|
const context = options => {
|
|
298
|
-
let globalLayer;
|
|
302
|
+
let globalLayer = Reactivity.layer;
|
|
299
303
|
function factory(create) {
|
|
300
304
|
const self = Object.create(RuntimeProto);
|
|
301
305
|
self.keepAlive = false;
|
|
302
306
|
self.lazy = true;
|
|
303
307
|
self.refresh = undefined;
|
|
304
|
-
const layerAtom = keepAlive(typeof create === "function" ? readable(get =>
|
|
308
|
+
const layerAtom = keepAlive(typeof create === "function" ? readable(get => Layer.provideMerge(create(get), globalLayer)) : readable(() => Layer.provideMerge(create, globalLayer)));
|
|
305
309
|
self.layer = layerAtom;
|
|
306
310
|
self.read = function read(get) {
|
|
307
311
|
const layer = get(layerAtom);
|
|
@@ -314,12 +318,17 @@ const context = options => {
|
|
|
314
318
|
}
|
|
315
319
|
factory.memoMap = options.memoMap;
|
|
316
320
|
factory.addGlobalLayer = layer => {
|
|
317
|
-
|
|
318
|
-
globalLayer = layer;
|
|
319
|
-
} else {
|
|
320
|
-
globalLayer = Layer.provideMerge(globalLayer, layer);
|
|
321
|
-
}
|
|
321
|
+
globalLayer = Layer.provideMerge(globalLayer, Layer.provide(layer, Reactivity.layer));
|
|
322
322
|
};
|
|
323
|
+
const reactivityAtom = make(Effect.scopeWith(scope => Layer.buildWithMemoMap(Reactivity.layer, options.memoMap, scope)).pipe(Effect.map(EffectContext.get(Reactivity.Reactivity))));
|
|
324
|
+
factory.withReactivity = keys => atom => transform(atom, get => {
|
|
325
|
+
const reactivity = Result.getOrThrow(get(reactivityAtom));
|
|
326
|
+
get.addFinalizer(reactivity.unsafeRegister(keys, () => {
|
|
327
|
+
get.refresh(atom);
|
|
328
|
+
}));
|
|
329
|
+
get.subscribe(atom, value => get.setSelf(value));
|
|
330
|
+
return get.once(atom);
|
|
331
|
+
});
|
|
323
332
|
return factory;
|
|
324
333
|
};
|
|
325
334
|
/**
|
|
@@ -335,6 +344,14 @@ const defaultMemoMap = exports.defaultMemoMap = /*#__PURE__*/(0, _GlobalValue.gl
|
|
|
335
344
|
const runtime = exports.runtime = /*#__PURE__*/(0, _GlobalValue.globalValue)("@effect-atom/atom/Atom/defaultContext", () => context({
|
|
336
345
|
memoMap: defaultMemoMap
|
|
337
346
|
}));
|
|
347
|
+
/**
|
|
348
|
+
* An alias to `Rx.runtime.withReactivity`, for refreshing an atom whenever the
|
|
349
|
+
* keys change in the `Reactivity` service.
|
|
350
|
+
*
|
|
351
|
+
* @since 1.0.0
|
|
352
|
+
* @category Reactivity
|
|
353
|
+
*/
|
|
354
|
+
const withReactivity = exports.withReactivity = runtime.withReactivity;
|
|
338
355
|
// -----------------------------------------------------------------------------
|
|
339
356
|
// constructors - stream
|
|
340
357
|
// -----------------------------------------------------------------------------
|
package/dist/cjs/Atom.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Atom.js","names":["KeyValueStore","_interopRequireWildcard","require","Arr","_Cause","Cause","Channel","Chunk","EffectContext","Duration","Effect","Either","Exit","Fiber","FiberRef","_Function","_GlobalValue","Inspectable","Layer","MutableHashMap","Option","_Pipeable","Runtime","Schema","Scope","Stream","Subscribable","SubscriptionRef","internalRegistry","_runtime","_Registry","Registry","Result","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TypeId","exports","WritableTypeId","AtomProto","pipe","pipeArguments","arguments","toJSON","_id","keepAlive","lazy","label","toString","format","NodeInspectSymbol","RuntimeProto","atom","arg","options","read","makeRead","readable","previous","self","runtimeResult","_tag","replacePrevious","value","fn","length","makeFnRuntime","pull","pullSignal","state","pullAtom","makeEffect","makeStreamPullEffect","initial","makeStreamPull","subscriptionRef","ref","makeSubRef","SubscriptionRefTypeId","runtime","getOrThrow","readSubscribable","subscribable","makeSubscribable","isSubscribable","write","argAtom","makeResultFn","writable","WritableProto","isWritable","refresh","create","constSetSelf","ctx","setSelf","make","readOrAtom","isDataType","u","providedRuntime","EffectTypeId","effect","StreamTypeId","stream","initialValue","_get","undefined","success","uninterruptible","defaultRuntime","scope","runSync","addFinalizer","runFork","close","void","contextMap","Map","context","unsafeMap","key","AtomRegistry","registry","scopedRuntime","unsafeMake","fiberRefs","runtimeFlags","syncResult","isAsync","cancel","runCallbackSync","exit","fromExitWithPrevious","waitingFrom","waiting","globalLayer","factory","layerAtom","provideMerge","layer","build","flatMap","buildWithMemoMap","memoMap","provide","addGlobalLayer","defaultMemoMap","globalValue","makeMemoMap","makeStream","writer","readWithCause","onInput","input","suspend","last","onFailure","cause","sync","failureWithPrevious","onDone","_done","match","onNone","failWithPrevious","NoSuchElementException","onSome","a","registryRuntime","add","runDrain","pipeTo","toChannel","constVoid","sub","changes","runForEach","runCallback","refAtom","isSuccess","subAtom","fnSync","args","makeFnSync","hasInitialValue","isFn","counter","none","some","batch","refreshSelf","Reset","Symbol","for","makeFn","toPull","pullChunk","semaphore","unsafeMakeSemaphore","fiber","getCurrentFiber","currentContext","acc","empty","locally","onLeft","items","toReadonlyArray","isNonEmptyArray","fail","succeed","done","onRight","chunk","disableAccumulation","appendAll","arr","pullWithSemaphore","withPermits","getFiberRefs","cancels","Set","once","subscribe","delete","result","pending","size","_","family","WeakRef","FinalizationRegistry","atoms","atomEntry","newAtom","remove","flatMapNullable","deref","register","withFallback","dual","fallback","assign","getPrototypeOf","autoDispose","setLazy","withLabel","name","Error","stack","split","setIdleTTL","duration","idleTTL","toMillis","transform","map","mapResult","debounce","millis","timeout","update","clearTimeout","val","setTimeout","optimistic","writeAtom","lastValue","isResult","current","getOrUndefined","timestamp","transitions","isFailure","immediate","clear","optimisticFn","transition","reducer","onExit","suspendOnWaiting","fromExit","as","windowFocusSignal","count","document","visibilityState","window","addEventListener","removeEventListener","makeRefreshOnSignal","signal","refreshOnWindowFocus","kvs","setAtom","fnUntraced","store","forSchema","schema","resultAtom","flatten","mount","getOrElse","defaultValue","searchParam","decode","decodeEither","encode","encodeEither","handleUpdate","searchParamState","updating","searchParams","URLSearchParams","location","search","newValue","getRight","encoded","v","updates","zipRight","updateSearchParams","entries","newUrl","pathname","history","pushState","toStream","unwrap","toStreamResult","modify","getResult","SerializableTypeId","isSerializable","serializable","encodeSync","decodeSync","ServerValueTypeId","withServerValue","withServerValueInitial","constant","getServerValue"],"sources":["../../src/Atom.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Atom.js","names":["Reactivity","_interopRequireWildcard","require","KeyValueStore","Arr","_Cause","Cause","Channel","Chunk","EffectContext","Duration","Effect","Either","Exit","Fiber","FiberRef","_Function","_GlobalValue","Inspectable","Layer","MutableHashMap","Option","_Pipeable","Runtime","Schema","Scope","Stream","Subscribable","SubscriptionRef","internalRegistry","_runtime","_Registry","Registry","Result","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TypeId","exports","WritableTypeId","AtomProto","pipe","pipeArguments","arguments","toJSON","_id","keepAlive","lazy","label","toString","format","NodeInspectSymbol","RuntimeProto","atom","arg","options","read","makeRead","readable","previous","self","runtimeResult","_tag","replacePrevious","value","fn","length","makeFnRuntime","pull","pullSignal","state","pullAtom","makeEffect","makeStreamPullEffect","initial","makeStreamPull","subscriptionRef","ref","makeSubRef","SubscriptionRefTypeId","runtime","getOrThrow","readSubscribable","subscribable","makeSubscribable","isSubscribable","write","argAtom","makeResultFn","reactivityKeys","a","effect","isEffect","mutation","ensuring","invalidate","writable","WritableProto","isWritable","refresh","create","constSetSelf","ctx","setSelf","make","readOrAtom","isDataType","u","providedRuntime","EffectTypeId","StreamTypeId","stream","initialValue","_get","undefined","success","uninterruptible","defaultRuntime","scope","runSync","addFinalizer","runFork","close","void","contextMap","Map","context","unsafeMap","key","AtomRegistry","registry","scopedRuntime","unsafeMake","fiberRefs","runtimeFlags","syncResult","isAsync","cancel","runCallbackSync","exit","fromExitWithPrevious","waitingFrom","waiting","globalLayer","layer","factory","layerAtom","provideMerge","build","flatMap","buildWithMemoMap","memoMap","provide","addGlobalLayer","reactivityAtom","scopeWith","map","withReactivity","keys","transform","reactivity","unsafeRegister","subscribe","once","defaultMemoMap","globalValue","makeMemoMap","makeStream","writer","readWithCause","onInput","input","suspend","last","onFailure","cause","sync","failureWithPrevious","onDone","_done","match","onNone","failWithPrevious","NoSuchElementException","onSome","registryRuntime","add","runDrain","pipeTo","toChannel","constVoid","sub","changes","runForEach","runCallback","refAtom","isSuccess","subAtom","fnSync","args","makeFnSync","hasInitialValue","isFn","counter","none","some","batch","refreshSelf","Reset","Symbol","for","makeFn","toPull","pullChunk","semaphore","unsafeMakeSemaphore","fiber","getCurrentFiber","currentContext","acc","empty","locally","onLeft","items","toReadonlyArray","isNonEmptyArray","fail","succeed","done","onRight","chunk","disableAccumulation","appendAll","arr","pullWithSemaphore","withPermits","getFiberRefs","cancels","Set","delete","result","pending","size","_","family","WeakRef","FinalizationRegistry","atoms","atomEntry","newAtom","remove","flatMapNullable","deref","register","withFallback","dual","fallback","assign","getPrototypeOf","autoDispose","setLazy","withLabel","name","Error","stack","split","setIdleTTL","duration","idleTTL","toMillis","mapResult","debounce","millis","timeout","update","clearTimeout","val","setTimeout","optimistic","writeAtom","lastValue","isResult","current","getOrUndefined","timestamp","transitions","isFailure","immediate","clear","optimisticFn","transition","reducer","onExit","suspendOnWaiting","fromExit","as","windowFocusSignal","count","document","visibilityState","window","addEventListener","removeEventListener","makeRefreshOnSignal","signal","refreshOnWindowFocus","kvs","setAtom","fnUntraced","store","forSchema","schema","resultAtom","flatten","mount","getOrElse","defaultValue","searchParam","decode","decodeEither","encode","encodeEither","handleUpdate","searchParamState","updating","searchParams","URLSearchParams","location","search","newValue","getRight","encoded","v","updates","zipRight","updateSearchParams","entries","newUrl","pathname","history","pushState","toStream","unwrap","toStreamResult","modify","getResult","SerializableTypeId","isSerializable","serializable","encodeSync","decodeSync","ServerValueTypeId","withServerValue","withServerValueInitial","constant","getServerValue"],"sources":["../../src/Atom.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/dts/Atom.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
|
+
import * as Reactivity from "@effect/experimental/Reactivity";
|
|
4
5
|
import * as KeyValueStore from "@effect/platform/KeyValueStore";
|
|
5
6
|
import * as Arr from "effect/Array";
|
|
6
7
|
import { NoSuchElementException } from "effect/Cause";
|
|
@@ -12,6 +13,7 @@ import * as Inspectable from "effect/Inspectable";
|
|
|
12
13
|
import * as Layer from "effect/Layer";
|
|
13
14
|
import * as Option from "effect/Option";
|
|
14
15
|
import { type Pipeable } from "effect/Pipeable";
|
|
16
|
+
import type { ReadonlyRecord } from "effect/Record";
|
|
15
17
|
import * as Runtime from "effect/Runtime";
|
|
16
18
|
import * as Schema from "effect/Schema";
|
|
17
19
|
import * as Scope from "effect/Scope";
|
|
@@ -171,50 +173,59 @@ export declare const make: {
|
|
|
171
173
|
export interface AtomRuntime<R, ER> extends Atom<Result.Result<Runtime.Runtime<R>, ER>> {
|
|
172
174
|
readonly layer: Atom<Layer.Layer<R, ER>>;
|
|
173
175
|
readonly atom: {
|
|
174
|
-
<A, E>(create: (get: Context) => Effect.Effect<A, E, Scope.Scope | R | AtomRegistry>, options?: {
|
|
176
|
+
<A, E>(create: (get: Context) => Effect.Effect<A, E, Scope.Scope | R | AtomRegistry | Reactivity.Reactivity>, options?: {
|
|
175
177
|
readonly initialValue?: A;
|
|
176
178
|
}): Atom<Result.Result<A, E | ER>>;
|
|
177
|
-
<A, E>(effect: Effect.Effect<A, E, Scope.Scope | R>, options?: {
|
|
179
|
+
<A, E>(effect: Effect.Effect<A, E, Scope.Scope | R | AtomRegistry | Reactivity.Reactivity>, options?: {
|
|
178
180
|
readonly initialValue?: A;
|
|
179
181
|
}): Atom<Result.Result<A, E | ER>>;
|
|
180
|
-
<A, E>(create: (get: Context) => Stream.Stream<A, E, AtomRegistry | R>, options?: {
|
|
182
|
+
<A, E>(create: (get: Context) => Stream.Stream<A, E, AtomRegistry | Reactivity.Reactivity | R>, options?: {
|
|
181
183
|
readonly initialValue?: A;
|
|
182
184
|
}): Atom<Result.Result<A, E | ER>>;
|
|
183
|
-
<A, E>(stream: Stream.Stream<A, E, AtomRegistry | R>, options?: {
|
|
185
|
+
<A, E>(stream: Stream.Stream<A, E, AtomRegistry | Reactivity.Reactivity | R>, options?: {
|
|
184
186
|
readonly initialValue?: A;
|
|
185
187
|
}): Atom<Result.Result<A, E | ER>>;
|
|
186
188
|
};
|
|
187
189
|
readonly fn: {
|
|
188
190
|
<Arg>(): {
|
|
189
|
-
<E, A>(fn: (arg: Arg, get: FnContext) => Effect.Effect<A, E, Scope.Scope | AtomRegistry | R>, options?: {
|
|
190
|
-
readonly initialValue?: A;
|
|
191
|
+
<E, A>(fn: (arg: Arg, get: FnContext) => Effect.Effect<A, E, Scope.Scope | AtomRegistry | Reactivity.Reactivity | R>, options?: {
|
|
192
|
+
readonly initialValue?: A | undefined;
|
|
193
|
+
readonly reactivityKeys?: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>> | undefined;
|
|
191
194
|
}): AtomResultFn<Arg, A, E | ER>;
|
|
192
|
-
<E, A>(fn: (arg: Arg, get: FnContext) => Stream.Stream<A, E, AtomRegistry | R>, options?: {
|
|
193
|
-
readonly initialValue?: A;
|
|
195
|
+
<E, A>(fn: (arg: Arg, get: FnContext) => Stream.Stream<A, E, AtomRegistry | Reactivity.Reactivity | R>, options?: {
|
|
196
|
+
readonly initialValue?: A | undefined;
|
|
197
|
+
readonly reactivityKeys?: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>> | undefined;
|
|
194
198
|
}): AtomResultFn<Arg, A, E | ER | NoSuchElementException>;
|
|
195
199
|
};
|
|
196
|
-
<E, A, Arg = void>(fn: (arg: Arg, get: FnContext) => Effect.Effect<A, E, Scope.Scope | AtomRegistry | R>, options?: {
|
|
197
|
-
readonly initialValue?: A;
|
|
200
|
+
<E, A, Arg = void>(fn: (arg: Arg, get: FnContext) => Effect.Effect<A, E, Scope.Scope | AtomRegistry | Reactivity.Reactivity | R>, options?: {
|
|
201
|
+
readonly initialValue?: A | undefined;
|
|
202
|
+
readonly reactivityKeys?: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>> | undefined;
|
|
198
203
|
}): AtomResultFn<Arg, A, E | ER>;
|
|
199
|
-
<E, A, Arg = void>(fn: (arg: Arg, get: FnContext) => Stream.Stream<A, E, AtomRegistry | R>, options?: {
|
|
200
|
-
readonly initialValue?: A;
|
|
204
|
+
<E, A, Arg = void>(fn: (arg: Arg, get: FnContext) => Stream.Stream<A, E, AtomRegistry | Reactivity.Reactivity | R>, options?: {
|
|
205
|
+
readonly initialValue?: A | undefined;
|
|
206
|
+
readonly reactivityKeys?: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>> | undefined;
|
|
201
207
|
}): AtomResultFn<Arg, A, E | ER | NoSuchElementException>;
|
|
202
208
|
};
|
|
203
|
-
readonly pull: <A, E>(create: ((get: Context) => Stream.Stream<A, E, R | AtomRegistry>) | Stream.Stream<A, E, R | AtomRegistry>, options?: {
|
|
209
|
+
readonly pull: <A, E>(create: ((get: Context) => Stream.Stream<A, E, R | AtomRegistry | Reactivity.Reactivity>) | Stream.Stream<A, E, R | AtomRegistry | Reactivity.Reactivity>, options?: {
|
|
204
210
|
readonly disableAccumulation?: boolean;
|
|
205
211
|
readonly initialValue?: ReadonlyArray<A>;
|
|
206
212
|
}) => Writable<PullResult<A, E | ER>, void>;
|
|
207
|
-
readonly subscriptionRef: <A, E>(create: Effect.Effect<SubscriptionRef.SubscriptionRef<A>, E, R | AtomRegistry> | ((get: Context) => Effect.Effect<SubscriptionRef.SubscriptionRef<A>, E, R | AtomRegistry>)) => Writable<Result.Result<A, E>, A>;
|
|
208
|
-
readonly subscribable: <A, E, E1 = never>(create: Effect.Effect<Subscribable.Subscribable<A, E, R>, E1, R | AtomRegistry> | ((get: Context) => Effect.Effect<Subscribable.Subscribable<A, E, R>, E1, R | AtomRegistry>)) => Atom<Result.Result<A, E | E1>>;
|
|
213
|
+
readonly subscriptionRef: <A, E>(create: Effect.Effect<SubscriptionRef.SubscriptionRef<A>, E, R | AtomRegistry | Reactivity.Reactivity> | ((get: Context) => Effect.Effect<SubscriptionRef.SubscriptionRef<A>, E, R | AtomRegistry | Reactivity.Reactivity>)) => Writable<Result.Result<A, E>, A>;
|
|
214
|
+
readonly subscribable: <A, E, E1 = never>(create: Effect.Effect<Subscribable.Subscribable<A, E, R>, E1, R | AtomRegistry | Reactivity.Reactivity> | ((get: Context) => Effect.Effect<Subscribable.Subscribable<A, E, R>, E1, R | AtomRegistry | Reactivity.Reactivity>)) => Atom<Result.Result<A, E | E1>>;
|
|
209
215
|
}
|
|
210
216
|
/**
|
|
211
217
|
* @since 1.0.0
|
|
212
218
|
* @category models
|
|
213
219
|
*/
|
|
214
220
|
export interface RuntimeFactory {
|
|
215
|
-
<R, E>(create: Layer.Layer<R, E, AtomRegistry> | ((get: Context) => Layer.Layer<R, E, AtomRegistry>)): AtomRuntime<R, E>;
|
|
221
|
+
<R, E>(create: Layer.Layer<R, E, AtomRegistry | Reactivity.Reactivity> | ((get: Context) => Layer.Layer<R, E, AtomRegistry | Reactivity.Reactivity>)): AtomRuntime<R, E>;
|
|
216
222
|
readonly memoMap: Layer.MemoMap;
|
|
217
|
-
readonly addGlobalLayer: <A, E>(layer: Layer.Layer<A, E, AtomRegistry>) => void;
|
|
223
|
+
readonly addGlobalLayer: <A, E>(layer: Layer.Layer<A, E, AtomRegistry | Reactivity.Reactivity>) => void;
|
|
224
|
+
/**
|
|
225
|
+
* Uses the `Reactivity` service from the runtime to refresh the atom whenever
|
|
226
|
+
* the keys change.
|
|
227
|
+
*/
|
|
228
|
+
readonly withReactivity: (keys: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>>) => <A extends Atom<any>>(atom: A) => A;
|
|
218
229
|
}
|
|
219
230
|
/**
|
|
220
231
|
* @since 1.0.0
|
|
@@ -233,6 +244,14 @@ export declare const defaultMemoMap: Layer.MemoMap;
|
|
|
233
244
|
* @category context
|
|
234
245
|
*/
|
|
235
246
|
export declare const runtime: RuntimeFactory;
|
|
247
|
+
/**
|
|
248
|
+
* An alias to `Rx.runtime.withReactivity`, for refreshing an atom whenever the
|
|
249
|
+
* keys change in the `Reactivity` service.
|
|
250
|
+
*
|
|
251
|
+
* @since 1.0.0
|
|
252
|
+
* @category Reactivity
|
|
253
|
+
*/
|
|
254
|
+
export declare const withReactivity: (keys: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>>) => <A extends Atom<any>>(atom: A) => A;
|
|
236
255
|
/**
|
|
237
256
|
* @since 1.0.0
|
|
238
257
|
* @category constructors
|
|
@@ -294,16 +313,16 @@ export type Reset = typeof Reset;
|
|
|
294
313
|
*/
|
|
295
314
|
export declare const fn: {
|
|
296
315
|
<Arg>(): <E, A>(fn: (arg: Arg, get: FnContext) => Effect.Effect<A, E, Scope.Scope | AtomRegistry>, options?: {
|
|
297
|
-
readonly initialValue?: A;
|
|
316
|
+
readonly initialValue?: A | undefined;
|
|
298
317
|
}) => AtomResultFn<Arg, A, E>;
|
|
299
318
|
<E, A, Arg = void>(fn: (arg: Arg, get: FnContext) => Effect.Effect<A, E, Scope.Scope | AtomRegistry>, options?: {
|
|
300
|
-
readonly initialValue?: A;
|
|
319
|
+
readonly initialValue?: A | undefined;
|
|
301
320
|
}): AtomResultFn<Arg, A, E>;
|
|
302
321
|
<Arg>(): <E, A>(fn: (arg: Arg, get: FnContext) => Stream.Stream<A, E, AtomRegistry>, options?: {
|
|
303
|
-
readonly initialValue?: A;
|
|
322
|
+
readonly initialValue?: A | undefined;
|
|
304
323
|
}) => AtomResultFn<Arg, A, E | NoSuchElementException>;
|
|
305
324
|
<E, A, Arg = void>(fn: (arg: Arg, get: FnContext) => Stream.Stream<A, E, AtomRegistry>, options?: {
|
|
306
|
-
readonly initialValue?: A;
|
|
325
|
+
readonly initialValue?: A | undefined;
|
|
307
326
|
}): AtomResultFn<Arg, A, E | NoSuchElementException>;
|
|
308
327
|
};
|
|
309
328
|
/**
|
package/dist/dts/Atom.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Atom.d.ts","sourceRoot":"","sources":["../../src/Atom.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Atom.d.ts","sourceRoot":"","sources":["../../src/Atom.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/Atom.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
4
|
/* eslint-disable @typescript-eslint/no-empty-object-type */
|
|
5
|
+
import * as Reactivity from "@effect/experimental/Reactivity";
|
|
5
6
|
import * as KeyValueStore from "@effect/platform/KeyValueStore";
|
|
6
7
|
import * as Arr from "effect/Array";
|
|
7
8
|
import { NoSuchElementException } from "effect/Cause";
|
|
@@ -124,7 +125,10 @@ const RuntimeProto = {
|
|
|
124
125
|
}
|
|
125
126
|
};
|
|
126
127
|
const makeFnRuntime = (self, arg, options) => {
|
|
127
|
-
const [read, write, argAtom] = makeResultFn(
|
|
128
|
+
const [read, write, argAtom] = makeResultFn(options?.reactivityKeys ? (a, get) => {
|
|
129
|
+
const effect = arg(a, get);
|
|
130
|
+
return Effect.isEffect(effect) ? Reactivity.mutation(effect, options.reactivityKeys) : Stream.ensuring(effect, Reactivity.invalidate(options.reactivityKeys));
|
|
131
|
+
} : arg, options);
|
|
128
132
|
return writable(get => {
|
|
129
133
|
get.get(argAtom);
|
|
130
134
|
const previous = get.self();
|
|
@@ -264,13 +268,13 @@ function makeEffect(ctx, effect, initialValue, runtime = Runtime.defaultRuntime,
|
|
|
264
268
|
* @category constructors
|
|
265
269
|
*/
|
|
266
270
|
export const context = options => {
|
|
267
|
-
let globalLayer;
|
|
271
|
+
let globalLayer = Reactivity.layer;
|
|
268
272
|
function factory(create) {
|
|
269
273
|
const self = Object.create(RuntimeProto);
|
|
270
274
|
self.keepAlive = false;
|
|
271
275
|
self.lazy = true;
|
|
272
276
|
self.refresh = undefined;
|
|
273
|
-
const layerAtom = keepAlive(typeof create === "function" ? readable(get =>
|
|
277
|
+
const layerAtom = keepAlive(typeof create === "function" ? readable(get => Layer.provideMerge(create(get), globalLayer)) : readable(() => Layer.provideMerge(create, globalLayer)));
|
|
274
278
|
self.layer = layerAtom;
|
|
275
279
|
self.read = function read(get) {
|
|
276
280
|
const layer = get(layerAtom);
|
|
@@ -283,12 +287,17 @@ export const context = options => {
|
|
|
283
287
|
}
|
|
284
288
|
factory.memoMap = options.memoMap;
|
|
285
289
|
factory.addGlobalLayer = layer => {
|
|
286
|
-
|
|
287
|
-
globalLayer = layer;
|
|
288
|
-
} else {
|
|
289
|
-
globalLayer = Layer.provideMerge(globalLayer, layer);
|
|
290
|
-
}
|
|
290
|
+
globalLayer = Layer.provideMerge(globalLayer, Layer.provide(layer, Reactivity.layer));
|
|
291
291
|
};
|
|
292
|
+
const reactivityAtom = make(Effect.scopeWith(scope => Layer.buildWithMemoMap(Reactivity.layer, options.memoMap, scope)).pipe(Effect.map(EffectContext.get(Reactivity.Reactivity))));
|
|
293
|
+
factory.withReactivity = keys => atom => transform(atom, get => {
|
|
294
|
+
const reactivity = Result.getOrThrow(get(reactivityAtom));
|
|
295
|
+
get.addFinalizer(reactivity.unsafeRegister(keys, () => {
|
|
296
|
+
get.refresh(atom);
|
|
297
|
+
}));
|
|
298
|
+
get.subscribe(atom, value => get.setSelf(value));
|
|
299
|
+
return get.once(atom);
|
|
300
|
+
});
|
|
292
301
|
return factory;
|
|
293
302
|
};
|
|
294
303
|
/**
|
|
@@ -303,6 +312,14 @@ export const defaultMemoMap = /*#__PURE__*/globalValue("@effect-atom/atom/Atom/d
|
|
|
303
312
|
export const runtime = /*#__PURE__*/globalValue("@effect-atom/atom/Atom/defaultContext", () => context({
|
|
304
313
|
memoMap: defaultMemoMap
|
|
305
314
|
}));
|
|
315
|
+
/**
|
|
316
|
+
* An alias to `Rx.runtime.withReactivity`, for refreshing an atom whenever the
|
|
317
|
+
* keys change in the `Reactivity` service.
|
|
318
|
+
*
|
|
319
|
+
* @since 1.0.0
|
|
320
|
+
* @category Reactivity
|
|
321
|
+
*/
|
|
322
|
+
export const withReactivity = runtime.withReactivity;
|
|
306
323
|
// -----------------------------------------------------------------------------
|
|
307
324
|
// constructors - stream
|
|
308
325
|
// -----------------------------------------------------------------------------
|
package/dist/esm/Atom.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Atom.js","names":["KeyValueStore","Arr","NoSuchElementException","Cause","Channel","Chunk","EffectContext","Duration","Effect","Either","Exit","Fiber","FiberRef","constant","constVoid","dual","pipe","globalValue","Inspectable","Layer","MutableHashMap","Option","pipeArguments","Runtime","Schema","Scope","Stream","Subscribable","SubscriptionRef","internalRegistry","runCallbackSync","Registry","AtomRegistry","Result","TypeId","WritableTypeId","AtomProto","arguments","toJSON","_id","keepAlive","lazy","label","toString","format","NodeInspectSymbol","RuntimeProto","atom","arg","options","read","makeRead","readable","get","previous","self","runtimeResult","_tag","replacePrevious","value","fn","length","makeFnRuntime","pull","pullSignal","state","pullAtom","makeEffect","makeStreamPullEffect","initial","makeStreamPull","subscriptionRef","ref","makeSubRef","SubscriptionRefTypeId","runtime","getOrThrow","readSubscribable","subscribable","makeSubscribable","isSubscribable","write","argAtom","makeResultFn","writable","WritableProto","isWritable","refresh","Object","create","constSetSelf","ctx","setSelf","make","readOrAtom","isDataType","u","providedRuntime","EffectTypeId","effect","StreamTypeId","stream","initialValue","_get","undefined","success","uninterruptible","defaultRuntime","scope","runSync","addFinalizer","runFork","close","void","contextMap","Map","context","unsafeMap","set","key","registry","scopedRuntime","unsafeMake","fiberRefs","runtimeFlags","syncResult","isAsync","cancel","exit","fromExitWithPrevious","waitingFrom","waiting","globalLayer","factory","layerAtom","provideMerge","layer","build","flatMap","buildWithMemoMap","memoMap","provide","addGlobalLayer","defaultMemoMap","makeMemoMap","makeStream","writer","readWithCause","onInput","input","suspend","last","onFailure","cause","sync","failureWithPrevious","onDone","_done","match","onNone","failWithPrevious","onSome","a","registryRuntime","add","runDrain","pipeTo","toChannel","sub","changes","runForEach","runCallback","refAtom","isSuccess","subAtom","fnSync","args","makeFnSync","f","hasInitialValue","isFn","counter","none","some","batch","refreshSelf","Reset","Symbol","for","makeFn","toPull","pullChunk","semaphore","unsafeMakeSemaphore","fiber","getCurrentFiber","currentContext","acc","empty","locally","onLeft","items","toReadonlyArray","isNonEmptyArray","fail","succeed","done","onRight","chunk","disableAccumulation","appendAll","arr","pullWithSemaphore","withPermits","getFiberRefs","cancels","Set","once","subscribe","delete","result","pending","size","_","family","WeakRef","FinalizationRegistry","atoms","atomEntry","newAtom","remove","flatMapNullable","deref","register","withFallback","fallback","assign","getPrototypeOf","autoDispose","setLazy","withLabel","name","Error","stack","split","setIdleTTL","duration","idleTTL","toMillis","transform","map","mapResult","debounce","millis","timeout","update","clearTimeout","val","setTimeout","optimistic","writeAtom","lastValue","isResult","current","getOrUndefined","timestamp","transitions","has","isFailure","immediate","clear","optimisticFn","transition","reducer","onExit","suspendOnWaiting","fromExit","as","windowFocusSignal","count","document","visibilityState","window","addEventListener","removeEventListener","makeRefreshOnSignal","signal","refreshOnWindowFocus","kvs","setAtom","fnUntraced","store","forSchema","schema","resultAtom","flatten","mount","getOrElse","defaultValue","searchParam","decode","decodeEither","encode","encodeEither","handleUpdate","searchParamState","updating","searchParams","URLSearchParams","location","search","newValue","getRight","encoded","v","updates","zipRight","updateSearchParams","entries","newUrl","pathname","history","pushState","toStream","unwrap","toStreamResult","modify","getResult","SerializableTypeId","isSerializable","serializable","encodeSync","decodeSync","ServerValueTypeId","withServerValue","withServerValueInitial","getServerValue"],"sources":["../../src/Atom.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Atom.js","names":["Reactivity","KeyValueStore","Arr","NoSuchElementException","Cause","Channel","Chunk","EffectContext","Duration","Effect","Either","Exit","Fiber","FiberRef","constant","constVoid","dual","pipe","globalValue","Inspectable","Layer","MutableHashMap","Option","pipeArguments","Runtime","Schema","Scope","Stream","Subscribable","SubscriptionRef","internalRegistry","runCallbackSync","Registry","AtomRegistry","Result","TypeId","WritableTypeId","AtomProto","arguments","toJSON","_id","keepAlive","lazy","label","toString","format","NodeInspectSymbol","RuntimeProto","atom","arg","options","read","makeRead","readable","get","previous","self","runtimeResult","_tag","replacePrevious","value","fn","length","makeFnRuntime","pull","pullSignal","state","pullAtom","makeEffect","makeStreamPullEffect","initial","makeStreamPull","subscriptionRef","ref","makeSubRef","SubscriptionRefTypeId","runtime","getOrThrow","readSubscribable","subscribable","makeSubscribable","isSubscribable","write","argAtom","makeResultFn","reactivityKeys","a","effect","isEffect","mutation","ensuring","invalidate","writable","WritableProto","isWritable","refresh","Object","create","constSetSelf","ctx","setSelf","make","readOrAtom","isDataType","u","providedRuntime","EffectTypeId","StreamTypeId","stream","initialValue","_get","undefined","success","uninterruptible","defaultRuntime","scope","runSync","addFinalizer","runFork","close","void","contextMap","Map","context","unsafeMap","set","key","registry","scopedRuntime","unsafeMake","fiberRefs","runtimeFlags","syncResult","isAsync","cancel","exit","fromExitWithPrevious","waitingFrom","waiting","globalLayer","layer","factory","layerAtom","provideMerge","build","flatMap","buildWithMemoMap","memoMap","provide","addGlobalLayer","reactivityAtom","scopeWith","map","withReactivity","keys","transform","reactivity","unsafeRegister","subscribe","once","defaultMemoMap","makeMemoMap","makeStream","writer","readWithCause","onInput","input","suspend","last","onFailure","cause","sync","failureWithPrevious","onDone","_done","match","onNone","failWithPrevious","onSome","registryRuntime","add","runDrain","pipeTo","toChannel","sub","changes","runForEach","runCallback","refAtom","isSuccess","subAtom","fnSync","args","makeFnSync","f","hasInitialValue","isFn","counter","none","some","batch","refreshSelf","Reset","Symbol","for","makeFn","toPull","pullChunk","semaphore","unsafeMakeSemaphore","fiber","getCurrentFiber","currentContext","acc","empty","locally","onLeft","items","toReadonlyArray","isNonEmptyArray","fail","succeed","done","onRight","chunk","disableAccumulation","appendAll","arr","pullWithSemaphore","withPermits","getFiberRefs","cancels","Set","delete","result","pending","size","_","family","WeakRef","FinalizationRegistry","atoms","atomEntry","newAtom","remove","flatMapNullable","deref","register","withFallback","fallback","assign","getPrototypeOf","autoDispose","setLazy","withLabel","name","Error","stack","split","setIdleTTL","duration","idleTTL","toMillis","mapResult","debounce","millis","timeout","update","clearTimeout","val","setTimeout","optimistic","writeAtom","lastValue","isResult","current","getOrUndefined","timestamp","transitions","has","isFailure","immediate","clear","optimisticFn","transition","reducer","onExit","suspendOnWaiting","fromExit","as","windowFocusSignal","count","document","visibilityState","window","addEventListener","removeEventListener","makeRefreshOnSignal","signal","refreshOnWindowFocus","kvs","setAtom","fnUntraced","store","forSchema","schema","resultAtom","flatten","mount","getOrElse","defaultValue","searchParam","decode","decodeEither","encode","encodeEither","handleUpdate","searchParamState","updating","searchParams","URLSearchParams","location","search","newValue","getRight","encoded","v","updates","zipRight","updateSearchParams","entries","newUrl","pathname","history","pushState","toStream","unwrap","toStreamResult","modify","getResult","SerializableTypeId","isSerializable","serializable","encodeSync","decodeSync","ServerValueTypeId","withServerValue","withServerValueInitial","getServerValue"],"sources":["../../src/Atom.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect-atom/atom",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "Reactive toolkit for Effect",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
"author": "Effect contributors",
|
|
12
12
|
"homepage": "https://github.com/tim-smart/effect-atom",
|
|
13
13
|
"peerDependencies": {
|
|
14
|
+
"@effect/experimental": "^0.54.3",
|
|
14
15
|
"@effect/platform": "^0.90.0",
|
|
15
16
|
"effect": "^3.17.0"
|
|
16
17
|
},
|
package/src/Atom.ts
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
4
|
/* eslint-disable @typescript-eslint/no-empty-object-type */
|
|
5
|
+
import * as Reactivity from "@effect/experimental/Reactivity"
|
|
5
6
|
import * as KeyValueStore from "@effect/platform/KeyValueStore"
|
|
6
7
|
import * as Arr from "effect/Array"
|
|
7
8
|
import { NoSuchElementException } from "effect/Cause"
|
|
@@ -23,6 +24,7 @@ import * as Layer from "effect/Layer"
|
|
|
23
24
|
import * as MutableHashMap from "effect/MutableHashMap"
|
|
24
25
|
import * as Option from "effect/Option"
|
|
25
26
|
import { type Pipeable, pipeArguments } from "effect/Pipeable"
|
|
27
|
+
import type { ReadonlyRecord } from "effect/Record"
|
|
26
28
|
import * as Runtime from "effect/Runtime"
|
|
27
29
|
import * as Schema from "effect/Schema"
|
|
28
30
|
import * as Scope from "effect/Scope"
|
|
@@ -192,9 +194,12 @@ const RuntimeProto = {
|
|
|
192
194
|
})
|
|
193
195
|
},
|
|
194
196
|
|
|
195
|
-
fn(this: AtomRuntime<any, any>, arg: any, options?: {
|
|
197
|
+
fn(this: AtomRuntime<any, any>, arg: any, options?: {
|
|
198
|
+
readonly initialValue?: unknown
|
|
199
|
+
readonly reactivityKeys?: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>> | undefined
|
|
200
|
+
}) {
|
|
196
201
|
if (arguments.length === 0) {
|
|
197
|
-
return (arg: any, options?: {
|
|
202
|
+
return (arg: any, options?: {}) => makeFnRuntime(this, arg, options)
|
|
198
203
|
}
|
|
199
204
|
return makeFnRuntime(this, arg, options)
|
|
200
205
|
},
|
|
@@ -261,8 +266,30 @@ const RuntimeProto = {
|
|
|
261
266
|
}
|
|
262
267
|
}
|
|
263
268
|
|
|
264
|
-
const makeFnRuntime = (
|
|
265
|
-
|
|
269
|
+
const makeFnRuntime = (
|
|
270
|
+
self: AtomRuntime<any, any>,
|
|
271
|
+
arg: (
|
|
272
|
+
arg: any,
|
|
273
|
+
get: FnContext
|
|
274
|
+
) =>
|
|
275
|
+
| Effect.Effect<any, any, Scope.Scope | AtomRegistry>
|
|
276
|
+
| Stream.Stream<any, any, AtomRegistry>,
|
|
277
|
+
options?: {
|
|
278
|
+
readonly initialValue?: unknown
|
|
279
|
+
readonly reactivityKeys?: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>> | undefined
|
|
280
|
+
}
|
|
281
|
+
) => {
|
|
282
|
+
const [read, write, argAtom] = makeResultFn(
|
|
283
|
+
options?.reactivityKeys ?
|
|
284
|
+
((a: any, get: FnContext) => {
|
|
285
|
+
const effect = arg(a, get)
|
|
286
|
+
return Effect.isEffect(effect)
|
|
287
|
+
? Reactivity.mutation(effect, options.reactivityKeys!)
|
|
288
|
+
: Stream.ensuring(effect, Reactivity.invalidate(options.reactivityKeys!))
|
|
289
|
+
}) as any :
|
|
290
|
+
arg,
|
|
291
|
+
options
|
|
292
|
+
)
|
|
266
293
|
return writable((get) => {
|
|
267
294
|
get.get(argAtom)
|
|
268
295
|
const previous = get.self<Result.Result<any, any>>()
|
|
@@ -493,42 +520,60 @@ export interface AtomRuntime<R, ER> extends Atom<Result.Result<Runtime.Runtime<R
|
|
|
493
520
|
readonly layer: Atom<Layer.Layer<R, ER>>
|
|
494
521
|
|
|
495
522
|
readonly atom: {
|
|
496
|
-
<A, E>(
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
523
|
+
<A, E>(
|
|
524
|
+
create: (get: Context) => Effect.Effect<A, E, Scope.Scope | R | AtomRegistry | Reactivity.Reactivity>,
|
|
525
|
+
options?: {
|
|
526
|
+
readonly initialValue?: A
|
|
527
|
+
}
|
|
528
|
+
): Atom<Result.Result<A, E | ER>>
|
|
529
|
+
<A, E>(effect: Effect.Effect<A, E, Scope.Scope | R | AtomRegistry | Reactivity.Reactivity>, options?: {
|
|
500
530
|
readonly initialValue?: A
|
|
501
531
|
}): Atom<Result.Result<A, E | ER>>
|
|
502
|
-
<A, E>(create: (get: Context) => Stream.Stream<A, E, AtomRegistry | R>, options?: {
|
|
532
|
+
<A, E>(create: (get: Context) => Stream.Stream<A, E, AtomRegistry | Reactivity.Reactivity | R>, options?: {
|
|
503
533
|
readonly initialValue?: A
|
|
504
534
|
}): Atom<Result.Result<A, E | ER>>
|
|
505
|
-
<A, E>(stream: Stream.Stream<A, E, AtomRegistry | R>, options?: {
|
|
535
|
+
<A, E>(stream: Stream.Stream<A, E, AtomRegistry | Reactivity.Reactivity | R>, options?: {
|
|
506
536
|
readonly initialValue?: A
|
|
507
537
|
}): Atom<Result.Result<A, E | ER>>
|
|
508
538
|
}
|
|
509
539
|
|
|
510
540
|
readonly fn: {
|
|
511
541
|
<Arg>(): {
|
|
512
|
-
<E, A>(
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
542
|
+
<E, A>(
|
|
543
|
+
fn: (arg: Arg, get: FnContext) => Effect.Effect<A, E, Scope.Scope | AtomRegistry | Reactivity.Reactivity | R>,
|
|
544
|
+
options?: {
|
|
545
|
+
readonly initialValue?: A | undefined
|
|
546
|
+
readonly reactivityKeys?: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>> | undefined
|
|
547
|
+
}
|
|
548
|
+
): AtomResultFn<Arg, A, E | ER>
|
|
549
|
+
<E, A>(
|
|
550
|
+
fn: (arg: Arg, get: FnContext) => Stream.Stream<A, E, AtomRegistry | Reactivity.Reactivity | R>,
|
|
551
|
+
options?: {
|
|
552
|
+
readonly initialValue?: A | undefined
|
|
553
|
+
readonly reactivityKeys?: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>> | undefined
|
|
554
|
+
}
|
|
555
|
+
): AtomResultFn<Arg, A, E | ER | NoSuchElementException>
|
|
518
556
|
}
|
|
519
557
|
<E, A, Arg = void>(
|
|
520
|
-
fn: (arg: Arg, get: FnContext) => Effect.Effect<A, E, Scope.Scope | AtomRegistry | R>,
|
|
558
|
+
fn: (arg: Arg, get: FnContext) => Effect.Effect<A, E, Scope.Scope | AtomRegistry | Reactivity.Reactivity | R>,
|
|
521
559
|
options?: {
|
|
522
|
-
readonly initialValue?: A
|
|
560
|
+
readonly initialValue?: A | undefined
|
|
561
|
+
readonly reactivityKeys?: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>> | undefined
|
|
523
562
|
}
|
|
524
563
|
): AtomResultFn<Arg, A, E | ER>
|
|
525
|
-
<E, A, Arg = void>(
|
|
526
|
-
|
|
527
|
-
|
|
564
|
+
<E, A, Arg = void>(
|
|
565
|
+
fn: (arg: Arg, get: FnContext) => Stream.Stream<A, E, AtomRegistry | Reactivity.Reactivity | R>,
|
|
566
|
+
options?: {
|
|
567
|
+
readonly initialValue?: A | undefined
|
|
568
|
+
readonly reactivityKeys?: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>> | undefined
|
|
569
|
+
}
|
|
570
|
+
): AtomResultFn<Arg, A, E | ER | NoSuchElementException>
|
|
528
571
|
}
|
|
529
572
|
|
|
530
573
|
readonly pull: <A, E>(
|
|
531
|
-
create:
|
|
574
|
+
create:
|
|
575
|
+
| ((get: Context) => Stream.Stream<A, E, R | AtomRegistry | Reactivity.Reactivity>)
|
|
576
|
+
| Stream.Stream<A, E, R | AtomRegistry | Reactivity.Reactivity>,
|
|
532
577
|
options?: {
|
|
533
578
|
readonly disableAccumulation?: boolean
|
|
534
579
|
readonly initialValue?: ReadonlyArray<A>
|
|
@@ -537,14 +582,18 @@ export interface AtomRuntime<R, ER> extends Atom<Result.Result<Runtime.Runtime<R
|
|
|
537
582
|
|
|
538
583
|
readonly subscriptionRef: <A, E>(
|
|
539
584
|
create:
|
|
540
|
-
| Effect.Effect<SubscriptionRef.SubscriptionRef<A>, E, R | AtomRegistry>
|
|
541
|
-
| ((
|
|
585
|
+
| Effect.Effect<SubscriptionRef.SubscriptionRef<A>, E, R | AtomRegistry | Reactivity.Reactivity>
|
|
586
|
+
| ((
|
|
587
|
+
get: Context
|
|
588
|
+
) => Effect.Effect<SubscriptionRef.SubscriptionRef<A>, E, R | AtomRegistry | Reactivity.Reactivity>)
|
|
542
589
|
) => Writable<Result.Result<A, E>, A>
|
|
543
590
|
|
|
544
591
|
readonly subscribable: <A, E, E1 = never>(
|
|
545
592
|
create:
|
|
546
|
-
| Effect.Effect<Subscribable.Subscribable<A, E, R>, E1, R | AtomRegistry>
|
|
547
|
-
| ((
|
|
593
|
+
| Effect.Effect<Subscribable.Subscribable<A, E, R>, E1, R | AtomRegistry | Reactivity.Reactivity>
|
|
594
|
+
| ((
|
|
595
|
+
get: Context
|
|
596
|
+
) => Effect.Effect<Subscribable.Subscribable<A, E, R>, E1, R | AtomRegistry | Reactivity.Reactivity>)
|
|
548
597
|
) => Atom<Result.Result<A, E | E1>>
|
|
549
598
|
}
|
|
550
599
|
|
|
@@ -554,10 +603,20 @@ export interface AtomRuntime<R, ER> extends Atom<Result.Result<Runtime.Runtime<R
|
|
|
554
603
|
*/
|
|
555
604
|
export interface RuntimeFactory {
|
|
556
605
|
<R, E>(
|
|
557
|
-
create:
|
|
606
|
+
create:
|
|
607
|
+
| Layer.Layer<R, E, AtomRegistry | Reactivity.Reactivity>
|
|
608
|
+
| ((get: Context) => Layer.Layer<R, E, AtomRegistry | Reactivity.Reactivity>)
|
|
558
609
|
): AtomRuntime<R, E>
|
|
559
610
|
readonly memoMap: Layer.MemoMap
|
|
560
|
-
readonly addGlobalLayer: <A, E>(layer: Layer.Layer<A, E, AtomRegistry>) => void
|
|
611
|
+
readonly addGlobalLayer: <A, E>(layer: Layer.Layer<A, E, AtomRegistry | Reactivity.Reactivity>) => void
|
|
612
|
+
|
|
613
|
+
/**
|
|
614
|
+
* Uses the `Reactivity` service from the runtime to refresh the atom whenever
|
|
615
|
+
* the keys change.
|
|
616
|
+
*/
|
|
617
|
+
readonly withReactivity: (
|
|
618
|
+
keys: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>>
|
|
619
|
+
) => <A extends Atom<any>>(atom: A) => A
|
|
561
620
|
}
|
|
562
621
|
|
|
563
622
|
/**
|
|
@@ -567,9 +626,11 @@ export interface RuntimeFactory {
|
|
|
567
626
|
export const context: (options: {
|
|
568
627
|
readonly memoMap: Layer.MemoMap
|
|
569
628
|
}) => RuntimeFactory = (options) => {
|
|
570
|
-
let globalLayer: Layer.Layer<any, any, AtomRegistry>
|
|
629
|
+
let globalLayer: Layer.Layer<any, any, AtomRegistry> = Reactivity.layer
|
|
571
630
|
function factory<E, R>(
|
|
572
|
-
create:
|
|
631
|
+
create:
|
|
632
|
+
| Layer.Layer<R, E, AtomRegistry | Reactivity.Reactivity>
|
|
633
|
+
| ((get: Context) => Layer.Layer<R, E, AtomRegistry | Reactivity.Reactivity>)
|
|
573
634
|
): AtomRuntime<R, E> {
|
|
574
635
|
const self = Object.create(RuntimeProto)
|
|
575
636
|
self.keepAlive = false
|
|
@@ -578,8 +639,8 @@ export const context: (options: {
|
|
|
578
639
|
|
|
579
640
|
const layerAtom = keepAlive(
|
|
580
641
|
typeof create === "function"
|
|
581
|
-
? readable((get) =>
|
|
582
|
-
: readable(() =>
|
|
642
|
+
? readable((get) => Layer.provideMerge(create(get), globalLayer))
|
|
643
|
+
: readable(() => Layer.provideMerge(create, globalLayer))
|
|
583
644
|
)
|
|
584
645
|
self.layer = layerAtom
|
|
585
646
|
|
|
@@ -595,13 +656,25 @@ export const context: (options: {
|
|
|
595
656
|
return self
|
|
596
657
|
}
|
|
597
658
|
factory.memoMap = options.memoMap
|
|
598
|
-
factory.addGlobalLayer = (layer: Layer.Layer<any, any, AtomRegistry>) => {
|
|
599
|
-
|
|
600
|
-
globalLayer = layer
|
|
601
|
-
} else {
|
|
602
|
-
globalLayer = Layer.provideMerge(globalLayer, layer)
|
|
603
|
-
}
|
|
659
|
+
factory.addGlobalLayer = (layer: Layer.Layer<any, any, AtomRegistry | Reactivity.Reactivity>) => {
|
|
660
|
+
globalLayer = Layer.provideMerge(globalLayer, Layer.provide(layer, Reactivity.layer))
|
|
604
661
|
}
|
|
662
|
+
const reactivityAtom = make(
|
|
663
|
+
Effect.scopeWith((scope) => Layer.buildWithMemoMap(Reactivity.layer, options.memoMap, scope)).pipe(
|
|
664
|
+
Effect.map(EffectContext.get(Reactivity.Reactivity))
|
|
665
|
+
)
|
|
666
|
+
)
|
|
667
|
+
factory.withReactivity =
|
|
668
|
+
(keys: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>>) =>
|
|
669
|
+
<A extends Atom<any>>(atom: A): A =>
|
|
670
|
+
transform(atom, (get) => {
|
|
671
|
+
const reactivity = Result.getOrThrow(get(reactivityAtom))
|
|
672
|
+
get.addFinalizer(reactivity.unsafeRegister(keys, () => {
|
|
673
|
+
get.refresh(atom)
|
|
674
|
+
}))
|
|
675
|
+
get.subscribe(atom, (value) => get.setSelf(value))
|
|
676
|
+
return get.once(atom)
|
|
677
|
+
}) as any as A
|
|
605
678
|
return factory
|
|
606
679
|
}
|
|
607
680
|
|
|
@@ -623,6 +696,17 @@ export const runtime: RuntimeFactory = globalValue(
|
|
|
623
696
|
() => context({ memoMap: defaultMemoMap })
|
|
624
697
|
)
|
|
625
698
|
|
|
699
|
+
/**
|
|
700
|
+
* An alias to `Rx.runtime.withReactivity`, for refreshing an atom whenever the
|
|
701
|
+
* keys change in the `Reactivity` service.
|
|
702
|
+
*
|
|
703
|
+
* @since 1.0.0
|
|
704
|
+
* @category Reactivity
|
|
705
|
+
*/
|
|
706
|
+
export const withReactivity: (
|
|
707
|
+
keys: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>>
|
|
708
|
+
) => <A extends Atom<any>>(atom: A) => A = runtime.withReactivity
|
|
709
|
+
|
|
626
710
|
// -----------------------------------------------------------------------------
|
|
627
711
|
// constructors - stream
|
|
628
712
|
// -----------------------------------------------------------------------------
|
|
@@ -916,16 +1000,16 @@ export type Reset = typeof Reset
|
|
|
916
1000
|
*/
|
|
917
1001
|
export const fn: {
|
|
918
1002
|
<Arg>(): <E, A>(fn: (arg: Arg, get: FnContext) => Effect.Effect<A, E, Scope.Scope | AtomRegistry>, options?: {
|
|
919
|
-
readonly initialValue?: A
|
|
1003
|
+
readonly initialValue?: A | undefined
|
|
920
1004
|
}) => AtomResultFn<Arg, A, E>
|
|
921
1005
|
<E, A, Arg = void>(fn: (arg: Arg, get: FnContext) => Effect.Effect<A, E, Scope.Scope | AtomRegistry>, options?: {
|
|
922
|
-
readonly initialValue?: A
|
|
1006
|
+
readonly initialValue?: A | undefined
|
|
923
1007
|
}): AtomResultFn<Arg, A, E>
|
|
924
1008
|
<Arg>(): <E, A>(fn: (arg: Arg, get: FnContext) => Stream.Stream<A, E, AtomRegistry>, options?: {
|
|
925
|
-
readonly initialValue?: A
|
|
1009
|
+
readonly initialValue?: A | undefined
|
|
926
1010
|
}) => AtomResultFn<Arg, A, E | NoSuchElementException>
|
|
927
1011
|
<E, A, Arg = void>(fn: (arg: Arg, get: FnContext) => Stream.Stream<A, E, AtomRegistry>, options?: {
|
|
928
|
-
readonly initialValue?: A
|
|
1012
|
+
readonly initialValue?: A | undefined
|
|
929
1013
|
}): AtomResultFn<Arg, A, E | NoSuchElementException>
|
|
930
1014
|
} = function(...args: ReadonlyArray<any>) {
|
|
931
1015
|
if (args.length === 0) {
|
|
@@ -937,7 +1021,7 @@ export const fn: {
|
|
|
937
1021
|
const makeFn = <Arg, E, A>(
|
|
938
1022
|
f: (arg: Arg, get: FnContext) => Stream.Stream<A, E, AtomRegistry> | Effect.Effect<A, E, Scope.Scope | AtomRegistry>,
|
|
939
1023
|
options?: {
|
|
940
|
-
readonly initialValue?: A
|
|
1024
|
+
readonly initialValue?: A | undefined
|
|
941
1025
|
}
|
|
942
1026
|
): AtomResultFn<Arg, A, E | NoSuchElementException> => {
|
|
943
1027
|
const [read, write] = makeResultFn(f, options)
|
|
@@ -946,7 +1030,9 @@ const makeFn = <Arg, E, A>(
|
|
|
946
1030
|
|
|
947
1031
|
function makeResultFn<Arg, E, A>(
|
|
948
1032
|
f: (arg: Arg, get: FnContext) => Effect.Effect<A, E, Scope.Scope | AtomRegistry> | Stream.Stream<A, E, AtomRegistry>,
|
|
949
|
-
options?: {
|
|
1033
|
+
options?: {
|
|
1034
|
+
readonly initialValue?: A
|
|
1035
|
+
}
|
|
950
1036
|
) {
|
|
951
1037
|
const argAtom = state<[number, Arg]>([0, undefined as any])
|
|
952
1038
|
const initialValue = options?.initialValue !== undefined
|