@typed/fx 1.24.0 → 1.25.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/cjs/FormEntry.js +1 -0
- package/dist/cjs/FormEntry.js.map +1 -1
- package/dist/cjs/RefSubject.js +80 -25
- package/dist/cjs/RefSubject.js.map +1 -1
- package/dist/cjs/Subject.js +8 -2
- package/dist/cjs/Subject.js.map +1 -1
- package/dist/cjs/Versioned.js +7 -3
- package/dist/cjs/Versioned.js.map +1 -1
- package/dist/cjs/internal/core.js +3 -2
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/dts/FormEntry.d.ts.map +1 -1
- package/dist/dts/RefSubject.d.ts +39 -1
- package/dist/dts/RefSubject.d.ts.map +1 -1
- package/dist/dts/Subject.d.ts.map +1 -1
- package/dist/dts/Versioned.d.ts.map +1 -1
- package/dist/dts/internal/core.d.ts.map +1 -1
- package/dist/esm/FormEntry.js +1 -0
- package/dist/esm/FormEntry.js.map +1 -1
- package/dist/esm/RefSubject.js +71 -20
- package/dist/esm/RefSubject.js.map +1 -1
- package/dist/esm/Subject.js +8 -2
- package/dist/esm/Subject.js.map +1 -1
- package/dist/esm/Versioned.js +7 -3
- package/dist/esm/Versioned.js.map +1 -1
- package/dist/esm/internal/core.js +3 -2
- package/dist/esm/internal/core.js.map +1 -1
- package/package.json +1 -1
- package/src/FormEntry.ts +3 -0
- package/src/RefSubject.ts +145 -27
- package/src/Subject.ts +11 -3
- package/src/Versioned.ts +16 -8
- package/src/internal/core.ts +6 -5
package/dist/cjs/FormEntry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormEntry.js","names":["_schema","require","Effect","_interopRequireWildcard","Fx","_protos","RefSubject","_TypeId","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","derive","options","encode","Schema","schema","decode","makeFormEntry","input","initial","mapEffect","isEffect","fromEffect","o","parseOptions","map","make","eq","Equivalence","from","inputRef","isRefSubject","persist","flatMap","DerivedFormEntryImpl","name","isDerived","tap","FromEntryImpl","deriveInput","errors","onExcessProperty","FxEffectBase","ref","ComputedTypeId","RefSubjectTypeId","decoded","version","subscriberCount","interrupt","constructor","run","sink","toEffect","runUpdates","f","onFailure","cause","onSuccess","value"],"sources":["../../src/FormEntry.ts"],"sourcesContent":[null],"mappings":";;;;;;;AAGA,IAAAA,OAAA,gBAAAC,OAAA;AAIA,IAAAC,MAAA,gBAAAC,uBAAA,eAAAF,OAAA;
|
|
1
|
+
{"version":3,"file":"FormEntry.js","names":["_schema","require","Effect","_interopRequireWildcard","Fx","_protos","RefSubject","_TypeId","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","derive","options","encode","Schema","schema","decode","makeFormEntry","input","initial","mapEffect","isEffect","fromEffect","o","parseOptions","map","make","eq","Equivalence","from","inputRef","isRefSubject","persist","flatMap","DerivedFormEntryImpl","name","isDerived","tap","FromEntryImpl","deriveInput","errors","onExcessProperty","FxEffectBase","ref","ComputedTypeId","RefSubjectTypeId","decoded","version","subscriberCount","interrupt","constructor","run","sink","toEffect","runUpdates","f","unsafeGet","onFailure","cause","onSuccess","value"],"sources":["../../src/FormEntry.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/dist/cjs/RefSubject.js
CHANGED
|
@@ -11,7 +11,7 @@ exports.fromEffect = fromEffect;
|
|
|
11
11
|
exports.fromFx = fromFx;
|
|
12
12
|
exports.fromRefSubject = fromRefSubject;
|
|
13
13
|
exports.fromTag = fromTag;
|
|
14
|
-
exports.increment = void 0;
|
|
14
|
+
exports.increment = exports.get = void 0;
|
|
15
15
|
exports.isComputed = isComputed;
|
|
16
16
|
exports.isDerived = isDerived;
|
|
17
17
|
exports.isFiltered = isFiltered;
|
|
@@ -29,6 +29,7 @@ exports.toggle = exports.take = void 0;
|
|
|
29
29
|
exports.transform = transform;
|
|
30
30
|
exports.transformOrFail = transformOrFail;
|
|
31
31
|
exports.tuple = tuple;
|
|
32
|
+
exports.unsafeGetExit = exports.unsafeGet = void 0;
|
|
32
33
|
exports.unsafeMake = unsafeMake;
|
|
33
34
|
exports.updateEffect = exports.update = void 0;
|
|
34
35
|
var C = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@typed/context"));
|
|
@@ -99,7 +100,7 @@ function fromRefSubject(ref, options) {
|
|
|
99
100
|
}
|
|
100
101
|
function persistCore(ref, core) {
|
|
101
102
|
// Log any errors that fail to persist, but don't fail the consumer
|
|
102
|
-
return Effect.ignoreLogged(Effect.provide(Effect.flatMap(core.deferredRef, value => set(ref, value)), core.
|
|
103
|
+
return Effect.ignoreLogged(Effect.provide(Effect.flatMap(core.deferredRef, value => set(ref, value)), core.runtime));
|
|
103
104
|
}
|
|
104
105
|
/**
|
|
105
106
|
* @since 1.20.0
|
|
@@ -120,7 +121,6 @@ function of(a, options) {
|
|
|
120
121
|
}), options?.executionStrategy ?? ExecutionStrategy.sequential), ref => ref.interrupt);
|
|
121
122
|
}
|
|
122
123
|
const withScopeAndFiberId = (f, strategy) => Effect.fiberIdWith(id => (0, _helpers.withScope)(scope => f(scope, id), strategy));
|
|
123
|
-
const emptyContext = /*#__PURE__*/C.empty();
|
|
124
124
|
/**
|
|
125
125
|
* @since 1.20.0
|
|
126
126
|
*/
|
|
@@ -131,8 +131,8 @@ function unsafeMake(params) {
|
|
|
131
131
|
options,
|
|
132
132
|
scope
|
|
133
133
|
} = params;
|
|
134
|
-
return Effect.
|
|
135
|
-
const core = unsafeMakeCore(initial, id,
|
|
134
|
+
return Effect.flatMap(Effect.runtime(), runtime => {
|
|
135
|
+
const core = unsafeMakeCore(initial, id, runtime, scope, options);
|
|
136
136
|
// Sometimes we might be instantiating directly from a known value
|
|
137
137
|
// Here we seed the value and ensure the subject has it as well for re-broadcasting
|
|
138
138
|
if ("initialValue" in params) {
|
|
@@ -154,8 +154,8 @@ class RefSubjectImpl extends _protos.FxEffectBase {
|
|
|
154
154
|
super();
|
|
155
155
|
this.core = core;
|
|
156
156
|
this.version = Effect.sync(() => core.deferredRef.version);
|
|
157
|
-
this.interrupt = Effect.provide(interruptCore(core), core.
|
|
158
|
-
this.subscriberCount = Effect.provide(core.subject.subscriberCount, core.
|
|
157
|
+
this.interrupt = Effect.provide(interruptCore(core), core.runtime);
|
|
158
|
+
this.subscriberCount = Effect.provide(core.subject.subscriberCount, core.runtime);
|
|
159
159
|
this.getSetDelete = getSetDelete(core);
|
|
160
160
|
this.runUpdates = this.runUpdates.bind(this);
|
|
161
161
|
this.onSuccess = this.onSuccess.bind(this);
|
|
@@ -164,12 +164,13 @@ class RefSubjectImpl extends _protos.FxEffectBase {
|
|
|
164
164
|
run(sink) {
|
|
165
165
|
return Effect.matchCauseEffect(getOrInitializeCore(this.core, true), {
|
|
166
166
|
onFailure: cause => sink.onFailure(cause),
|
|
167
|
-
onSuccess: () => Effect.provide(this.core.subject.run(sink), this.core.
|
|
167
|
+
onSuccess: () => Effect.provide(this.core.subject.run(sink), this.core.runtime)
|
|
168
168
|
});
|
|
169
169
|
}
|
|
170
170
|
runUpdates(run) {
|
|
171
171
|
return this.core.semaphore.withPermits(1)(run(this.getSetDelete));
|
|
172
172
|
}
|
|
173
|
+
unsafeGet = () => Option.getOrThrowWith(this.core.deferredRef.current, () => new Cause.NoSuchElementException());
|
|
173
174
|
onSuccess(value) {
|
|
174
175
|
return setCore(this.core, value);
|
|
175
176
|
}
|
|
@@ -250,14 +251,14 @@ const runUpdates = exports.runUpdates = /*#__PURE__*/(0, _Function.dual)(isRefSu
|
|
|
250
251
|
class RefSubjectCore {
|
|
251
252
|
initial;
|
|
252
253
|
subject;
|
|
253
|
-
|
|
254
|
+
runtime;
|
|
254
255
|
scope;
|
|
255
256
|
deferredRef;
|
|
256
257
|
semaphore;
|
|
257
|
-
constructor(initial, subject,
|
|
258
|
+
constructor(initial, subject, runtime, scope, deferredRef, semaphore) {
|
|
258
259
|
this.initial = initial;
|
|
259
260
|
this.subject = subject;
|
|
260
|
-
this.
|
|
261
|
+
this.runtime = runtime;
|
|
261
262
|
this.scope = scope;
|
|
262
263
|
this.deferredRef = deferredRef;
|
|
263
264
|
this.semaphore = semaphore;
|
|
@@ -265,21 +266,21 @@ class RefSubjectCore {
|
|
|
265
266
|
_fiber = undefined;
|
|
266
267
|
}
|
|
267
268
|
function makeCore(initial, options) {
|
|
268
|
-
return Effect.
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
}) => Scope.fork(C.get(
|
|
269
|
+
return Effect.runtime().pipe(Effect.bindTo("runtime"), Effect.let("executionStrategy", () => options?.executionStrategy ?? ExecutionStrategy.parallel), Effect.bind("scope", ({
|
|
270
|
+
executionStrategy,
|
|
271
|
+
runtime
|
|
272
|
+
}) => Scope.fork(C.get(runtime.context, Scope.Scope), executionStrategy)), Effect.bind("deferredRef", () => DeferredRef.make((0, _helpers.getExitEquivalence)(options?.eq ?? Equal.equals))), Effect.let("subject", () => Subject.unsafeMake(Math.max(1, options?.replay ?? 1))), Effect.tap(({
|
|
272
273
|
scope,
|
|
273
274
|
subject
|
|
274
275
|
}) => Scope.addFinalizer(scope, subject.interrupt)), Effect.map(({
|
|
275
|
-
ctx,
|
|
276
276
|
deferredRef,
|
|
277
|
+
runtime,
|
|
277
278
|
scope,
|
|
278
279
|
subject
|
|
279
|
-
}) => new RefSubjectCore(initial, subject,
|
|
280
|
+
}) => new RefSubjectCore(initial, subject, runtime, scope, deferredRef, Effect.unsafeMakeSemaphore(1))));
|
|
280
281
|
}
|
|
281
|
-
function unsafeMakeCore(initial, id,
|
|
282
|
-
return new RefSubjectCore(initial, Subject.unsafeMake(Math.max(1, options?.replay ?? 1)),
|
|
282
|
+
function unsafeMakeCore(initial, id, runtime, scope, options) {
|
|
283
|
+
return new RefSubjectCore(initial, Subject.unsafeMake(Math.max(1, options?.replay ?? 1)), runtime, scope, DeferredRef.unsafeMake(id, (0, _helpers.getExitEquivalence)(options?.eq ?? Equal.equals)), Effect.unsafeMakeSemaphore(1));
|
|
283
284
|
}
|
|
284
285
|
function getOrInitializeCore(core, lockInitialize) {
|
|
285
286
|
return Effect.suspend(() => {
|
|
@@ -291,7 +292,7 @@ function getOrInitializeCore(core, lockInitialize) {
|
|
|
291
292
|
});
|
|
292
293
|
}
|
|
293
294
|
function initializeCoreEffect(core, lock) {
|
|
294
|
-
const initialize = Effect.onExit(Effect.provide(core.initial, core.
|
|
295
|
+
const initialize = Effect.onExit(Effect.provide(core.initial, core.runtime), exit => Effect.sync(() => {
|
|
295
296
|
core._fiber = undefined;
|
|
296
297
|
core.deferredRef.done(exit);
|
|
297
298
|
}));
|
|
@@ -361,7 +362,7 @@ function deleteCore(core) {
|
|
|
361
362
|
if (Option.isNone(current)) {
|
|
362
363
|
return Effect.succeed(Option.none());
|
|
363
364
|
}
|
|
364
|
-
return core.subject.subscriberCount.pipe(Effect.provide(core.
|
|
365
|
+
return core.subject.subscriberCount.pipe(Effect.provide(core.runtime), Effect.flatMap(count => count > 0 && !core._fiber ? initializeCore(core, false) : Effect.unit), Effect.zipRight(Effect.asSome(current.value)));
|
|
365
366
|
});
|
|
366
367
|
}
|
|
367
368
|
function tapEventCore(core, effect) {
|
|
@@ -369,9 +370,9 @@ function tapEventCore(core, effect) {
|
|
|
369
370
|
}
|
|
370
371
|
function sendEvent(core, exit) {
|
|
371
372
|
if (Exit.isSuccess(exit)) {
|
|
372
|
-
return Effect.provide(core.subject.onSuccess(exit.value), core.
|
|
373
|
+
return Effect.provide(core.subject.onSuccess(exit.value), core.runtime);
|
|
373
374
|
} else {
|
|
374
|
-
return Effect.provide(core.subject.onFailure(exit.cause), core.
|
|
375
|
+
return Effect.provide(core.subject.onFailure(exit.cause), core.runtime);
|
|
375
376
|
}
|
|
376
377
|
}
|
|
377
378
|
/**
|
|
@@ -425,6 +426,7 @@ class ComputedImpl extends Versioned.VersionedTransform {
|
|
|
425
426
|
this.input = input;
|
|
426
427
|
this.f = f;
|
|
427
428
|
}
|
|
429
|
+
unsafeGet = () => Option.getOrThrowWith(this._currentValue, () => new Cause.NoSuchElementException());
|
|
428
430
|
static make(input, f) {
|
|
429
431
|
return new ComputedImpl(input, f);
|
|
430
432
|
}
|
|
@@ -444,6 +446,7 @@ class FilteredImpl extends Versioned.VersionedTransform {
|
|
|
444
446
|
asComputed() {
|
|
445
447
|
return ComputedImpl.make(this.input, this.f);
|
|
446
448
|
}
|
|
449
|
+
unsafeGet = () => Option.getOrThrowWith(this._currentValue, () => new Cause.NoSuchElementException());
|
|
447
450
|
}
|
|
448
451
|
/**
|
|
449
452
|
* @since 1.20.0
|
|
@@ -499,6 +502,10 @@ class RefSubjectTransform extends _protos.FxEffectBase {
|
|
|
499
502
|
delete: Effect.map(ref.delete, Option.map(this.from))
|
|
500
503
|
}));
|
|
501
504
|
}
|
|
505
|
+
unsafeGet = () => {
|
|
506
|
+
const exit = this.ref.unsafeGet();
|
|
507
|
+
return Exit.map(exit, this.from);
|
|
508
|
+
};
|
|
502
509
|
onFailure(cause) {
|
|
503
510
|
return this.ref.onFailure(cause);
|
|
504
511
|
}
|
|
@@ -527,10 +534,10 @@ class RefSubjectTransformEffect extends _protos.FxEffectBase {
|
|
|
527
534
|
this.version = ref.version;
|
|
528
535
|
this.interrupt = ref.interrupt;
|
|
529
536
|
this.subscriberCount = ref.subscriberCount;
|
|
530
|
-
this.subject = Subject.
|
|
537
|
+
this.subject = new Subject.HoldSubjectImpl();
|
|
531
538
|
}
|
|
532
539
|
run(sink) {
|
|
533
|
-
return core.merge(core.mapEffect(this.ref, this.from), this.subject).run(sink);
|
|
540
|
+
return core.skipRepeats(core.merge(core.tapEffect(core.mapEffect(this.ref, this.from), this.subject.onSuccess), this.subject)).run(sink);
|
|
534
541
|
}
|
|
535
542
|
runUpdates(run) {
|
|
536
543
|
return this.ref.runUpdates(ref => run({
|
|
@@ -545,6 +552,9 @@ class RefSubjectTransformEffect extends _protos.FxEffectBase {
|
|
|
545
552
|
}))
|
|
546
553
|
}));
|
|
547
554
|
}
|
|
555
|
+
unsafeGet = () => {
|
|
556
|
+
return Option.getOrThrowWith(_effect.MutableRef.get(this.subject.lastValue), () => new Cause.NoSuchElementException());
|
|
557
|
+
};
|
|
548
558
|
onFailure(cause) {
|
|
549
559
|
return this.subject.onFailure(cause);
|
|
550
560
|
}
|
|
@@ -628,6 +638,9 @@ class RefSubjectTuple extends _protos.FxEffectBase {
|
|
|
628
638
|
runUpdates(run) {
|
|
629
639
|
return run(this.getSetDelete);
|
|
630
640
|
}
|
|
641
|
+
unsafeGet = () => {
|
|
642
|
+
return Option.getOrThrowWith(Exit.all(this.refs.map(r => r.unsafeGet())), () => new Cause.NoSuchElementException());
|
|
643
|
+
};
|
|
631
644
|
onFailure(cause) {
|
|
632
645
|
return Effect.all(this.refs.map(ref => ref.onFailure(cause)));
|
|
633
646
|
}
|
|
@@ -692,6 +705,11 @@ class RefSubjectStruct extends _protos.FxEffectBase {
|
|
|
692
705
|
runUpdates(run) {
|
|
693
706
|
return run(this.getSetDelete);
|
|
694
707
|
}
|
|
708
|
+
unsafeGet = () => {
|
|
709
|
+
const entries = Object.entries(this.refs).map(([k, r]) => Exit.map(r.unsafeGet(), a => [k, a]));
|
|
710
|
+
const exit = Option.getOrThrowWith(Exit.all(entries), () => new Cause.NoSuchElementException());
|
|
711
|
+
return Exit.map(exit, entries => Object.fromEntries(entries));
|
|
712
|
+
};
|
|
695
713
|
onFailure(cause) {
|
|
696
714
|
return Effect.all(Object.values(this.refs).map(ref => ref.onFailure(cause)));
|
|
697
715
|
}
|
|
@@ -739,6 +757,9 @@ class RefSubjectTagged extends _protos.FxEffectBase {
|
|
|
739
757
|
runUpdates(run) {
|
|
740
758
|
return this.tag.withEffect(ref => ref.runUpdates(run));
|
|
741
759
|
}
|
|
760
|
+
unsafeGet = () => {
|
|
761
|
+
throw new Error(`Unable to unsafely get a tagged RefSubject because it requires the Effect context by defnition.`);
|
|
762
|
+
};
|
|
742
763
|
onFailure(cause) {
|
|
743
764
|
return this.tag.withEffect(ref => ref.onFailure(cause));
|
|
744
765
|
}
|
|
@@ -782,6 +803,9 @@ class RefSubjectFromTag extends _protos.FxEffectBase {
|
|
|
782
803
|
runUpdates(run) {
|
|
783
804
|
return Effect.flatMap(this._get, ref => ref.runUpdates(run));
|
|
784
805
|
}
|
|
806
|
+
unsafeGet = () => {
|
|
807
|
+
throw new Error(`Unable to unsafely get a tagged RefSubject because it requires the Effect context by defnition.`);
|
|
808
|
+
};
|
|
785
809
|
onFailure(cause) {
|
|
786
810
|
return Effect.flatMap(this._get, ref => ref.onFailure(cause));
|
|
787
811
|
}
|
|
@@ -831,6 +855,9 @@ class ComputedFromTag extends _protos.FxEffectBase {
|
|
|
831
855
|
toEffect() {
|
|
832
856
|
return Effect.flatten(this._get);
|
|
833
857
|
}
|
|
858
|
+
unsafeGet = () => {
|
|
859
|
+
throw new Error(`Unable to unsafely get a tagged Computed because it requires the Effect context by defnition.`);
|
|
860
|
+
};
|
|
834
861
|
}
|
|
835
862
|
/**
|
|
836
863
|
* @since 1.20.0
|
|
@@ -860,6 +887,9 @@ class FilteredFromTag extends _protos.FxEffectBase {
|
|
|
860
887
|
asComputed() {
|
|
861
888
|
return new ComputedFromTag(this.tag, s => this.f(s).asComputed());
|
|
862
889
|
}
|
|
890
|
+
unsafeGet = () => {
|
|
891
|
+
throw new Error(`Unable to unsafely get a tagged Filtered because it requires the Effect context by defnition.`);
|
|
892
|
+
};
|
|
863
893
|
}
|
|
864
894
|
/**
|
|
865
895
|
* @since 1.20.0
|
|
@@ -975,6 +1005,7 @@ class RefSubjectSlice extends _protos.FxEffectBase {
|
|
|
975
1005
|
runUpdates(run) {
|
|
976
1006
|
return this.ref.runUpdates(run);
|
|
977
1007
|
}
|
|
1008
|
+
unsafeGet = () => this.ref.unsafeGet();
|
|
978
1009
|
onFailure(cause) {
|
|
979
1010
|
return this.ref.onFailure(cause);
|
|
980
1011
|
}
|
|
@@ -982,4 +1013,28 @@ class RefSubjectSlice extends _protos.FxEffectBase {
|
|
|
982
1013
|
return this.ref.onSuccess(value);
|
|
983
1014
|
}
|
|
984
1015
|
}
|
|
1016
|
+
/**
|
|
1017
|
+
* Get the current value of the RefSubject. If it has not been set yet, a Fiber will be used to wait for the value to be set.
|
|
1018
|
+
*
|
|
1019
|
+
* @since 1.25.0
|
|
1020
|
+
*/
|
|
1021
|
+
const get = ref => ref;
|
|
1022
|
+
/**
|
|
1023
|
+
* Synchronously get the current Exit value of the RefSubject. If it has not been set yet, a Cause.NoSuchElementException will be thrown.
|
|
1024
|
+
*
|
|
1025
|
+
* Note: This is unimplemented for RefSubject.tagged and RefSubject.fromTag because they require the Effect context by definition.
|
|
1026
|
+
* It will throw immediately.
|
|
1027
|
+
*
|
|
1028
|
+
* @since 1.25.0
|
|
1029
|
+
*/
|
|
1030
|
+
exports.get = get;
|
|
1031
|
+
const unsafeGetExit = ref => ref.unsafeGet();
|
|
1032
|
+
/**
|
|
1033
|
+
* Synchronously get the current value of the RefSubject.
|
|
1034
|
+
*
|
|
1035
|
+
* @since 1.25.0
|
|
1036
|
+
*/
|
|
1037
|
+
exports.unsafeGetExit = unsafeGetExit;
|
|
1038
|
+
const unsafeGet = ref => Effect.runSync(unsafeGetExit(ref));
|
|
1039
|
+
exports.unsafeGet = unsafeGet;
|
|
985
1040
|
//# sourceMappingURL=RefSubject.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RefSubject.js","names":["C","_interopRequireWildcard","require","_effect","Boolean","Cause","Effect","Equal","ExecutionStrategy","Exit","_Function","Layer","_Number","Option","ReadonlyArray","Scope","core","DeferredRef","_helpers","_protos","_provide","share","Sink","Subject","_TypeId","Versioned","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","UNBOUNDED","concurrency","fromEffect","effect","options","map","makeCore","RefSubjectImpl","fromFx","fx","make","getExitEquivalence","eq","equals","pipe","bindTo","bind","deferredRef","tap","forkIn","run","cause","flatMap","sync","done","failCause","subject","onFailure","value","succeed","setCore","scope","fromRefSubject","ref","DerivedImpl","persistCore","ignoreLogged","provide","context","exports","fxOrEffect","RefSubjectTypeId","TypeId","of","acquireRelease","withScopeAndFiberId","id","unsafeMake","initial","initialValue","executionStrategy","sequential","interrupt","f","strategy","fiberIdWith","withScope","emptyContext","empty","params","suspend","unsafeMakeCore","onSuccess","FxEffectBase","ComputedTypeId","version","subscriberCount","getSetDelete","constructor","interruptCore","runUpdates","sink","matchCauseEffect","getOrInitializeCore","semaphore","withPermits","onFailureCore","toEffect","persist","dual","reset","delete","deleteCore","updateEffect","update","modifyEffect","b","modify","isRefSubjectDataFirst","args","isRefSubject","uninterruptibleMask","restore","tapErrorCause","unifiedFn","isInterruptedOnly","onInterrupt","unit","RefSubjectCore","_fiber","undefined","let","parallel","ctx","fork","Math","max","replay","addFinalizer","unsafeMakeSemaphore","lockInitialize","isNone","current","initializeCoreAndTap","initializeCoreEffect","lock","initialize","onExit","exit","fiber","initializeCore","Fiber","onCause","onError","fail","matchEffectPrimitive","Success","Failure","Some","None","Left","Right","Sync","Otherwise","zipRight","tapEventCore","as","sendEvent","closeScope","close","interruptFiber","interruptSubject","all","discard","none","count","asSome","flatten","isSuccess","mapEffect","versioned","FilteredTypeId","FilteredImpl","ComputedImpl","filterMapEffect","filterMap","compact","filterEffect","some","filter","VersionedTransform","input","hold","asComputed","skipRepeatsWith","transform","identity","succeedSome","skipRepeats","from","to","RefSubjectTransform","transformOrFail","RefSubjectTransformEffect","merge","match","onNone","succeedNone","onSome","tuple","refs","kind","getRefKind","makeTupleRef","makeTupleComputed","makeTupleFiltered","join","RefSubjectTuple","reduce","sum","catchAllCause","c","struct","values","makeStructRef","makeStructComputed","makeStructFiltered","RefSubjectStruct","keys","k","tagged","identifier","RefSubjectTagged","Tagged","tag","withEffect","scoped","fromTag","RefSubjectFromTag","_get","_fx","fromFxEffect","isObjectLike","isComputed","isFiltered","isDerived","type","Array","isArray","computedFromTag","ComputedFromTag","filteredFromTag","FilteredFromTag","s","providing","layer","isLayer","isContext","succeedContext","runtimeToLayer","RefSubjectProvide","asTrue","asFalse","toggle","not","add","x","increment","sub","decrement","slice","drop","take","RefSubjectSlice","Infinity"],"sources":["../../src/RefSubject.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RefSubject.js","names":["C","_interopRequireWildcard","require","_effect","Boolean","Cause","Effect","Equal","ExecutionStrategy","Exit","_Function","Layer","_Number","Option","ReadonlyArray","Scope","core","DeferredRef","_helpers","_protos","_provide","share","Sink","Subject","_TypeId","Versioned","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","UNBOUNDED","concurrency","fromEffect","effect","options","map","makeCore","RefSubjectImpl","fromFx","fx","make","getExitEquivalence","eq","equals","pipe","bindTo","bind","deferredRef","tap","forkIn","run","cause","flatMap","sync","done","failCause","subject","onFailure","value","succeed","setCore","scope","fromRefSubject","ref","DerivedImpl","persistCore","ignoreLogged","provide","runtime","exports","fxOrEffect","RefSubjectTypeId","TypeId","of","acquireRelease","withScopeAndFiberId","id","unsafeMake","initial","initialValue","executionStrategy","sequential","interrupt","f","strategy","fiberIdWith","withScope","params","unsafeMakeCore","onSuccess","FxEffectBase","ComputedTypeId","version","subscriberCount","getSetDelete","constructor","interruptCore","runUpdates","sink","matchCauseEffect","getOrInitializeCore","semaphore","withPermits","unsafeGet","getOrThrowWith","current","NoSuchElementException","onFailureCore","toEffect","persist","dual","reset","delete","deleteCore","updateEffect","update","modifyEffect","b","modify","isRefSubjectDataFirst","args","isRefSubject","uninterruptibleMask","restore","tapErrorCause","unifiedFn","isInterruptedOnly","onInterrupt","unit","RefSubjectCore","_fiber","undefined","let","parallel","fork","context","Math","max","replay","addFinalizer","unsafeMakeSemaphore","lockInitialize","suspend","isNone","initializeCoreAndTap","initializeCoreEffect","lock","initialize","onExit","exit","fiber","initializeCore","Fiber","onCause","onError","fail","matchEffectPrimitive","Success","Failure","Some","None","Left","Right","Sync","Otherwise","zipRight","tapEventCore","as","sendEvent","closeScope","close","interruptFiber","interruptSubject","all","discard","none","count","asSome","flatten","isSuccess","mapEffect","versioned","FilteredTypeId","FilteredImpl","ComputedImpl","filterMapEffect","filterMap","compact","filterEffect","some","filter","VersionedTransform","input","hold","_currentValue","asComputed","skipRepeatsWith","transform","identity","succeedSome","skipRepeats","from","to","RefSubjectTransform","transformOrFail","RefSubjectTransformEffect","HoldSubjectImpl","merge","tapEffect","match","onNone","succeedNone","onSome","MutableRef","lastValue","tuple","refs","kind","getRefKind","makeTupleRef","makeTupleComputed","makeTupleFiltered","join","RefSubjectTuple","reduce","sum","catchAllCause","c","struct","values","makeStructRef","makeStructComputed","makeStructFiltered","RefSubjectStruct","keys","k","entries","fromEntries","tagged","identifier","RefSubjectTagged","Tagged","tag","withEffect","Error","scoped","fromTag","RefSubjectFromTag","_get","_fx","fromFxEffect","isObjectLike","isComputed","isFiltered","isDerived","type","Array","isArray","computedFromTag","ComputedFromTag","filteredFromTag","FilteredFromTag","s","providing","layer","isLayer","isContext","succeedContext","runtimeToLayer","RefSubjectProvide","asTrue","asFalse","toggle","not","add","x","increment","sub","decrement","slice","drop","take","RefSubjectSlice","Infinity","unsafeGetExit","runSync"],"sources":["../../src/RefSubject.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/dist/cjs/Subject.js
CHANGED
|
@@ -89,13 +89,19 @@ class HoldSubjectImpl extends SubjectImpl {
|
|
|
89
89
|
lastValue = MutableRef.make(Option.none());
|
|
90
90
|
// Emit an event to all sinks
|
|
91
91
|
onSuccess = a => Effect.suspend(() => {
|
|
92
|
-
MutableRef.set(this.lastValue, Option.some(a));
|
|
92
|
+
MutableRef.set(this.lastValue, Option.some(Exit.succeed(a)));
|
|
93
93
|
return this.onEvent(a);
|
|
94
94
|
});
|
|
95
|
+
onFailure = cause => {
|
|
96
|
+
return Effect.suspend(() => {
|
|
97
|
+
MutableRef.set(this.lastValue, Option.some(Exit.failCause(cause)));
|
|
98
|
+
return this.onCause(cause);
|
|
99
|
+
});
|
|
100
|
+
};
|
|
95
101
|
run(sink) {
|
|
96
102
|
return this.addSink(sink, scope => Option.match(MutableRef.get(this.lastValue), {
|
|
97
103
|
onNone: () => (0, _helpers.awaitScopeClose)(scope),
|
|
98
|
-
onSome:
|
|
104
|
+
onSome: exit => Effect.zipRight(Exit.match(exit, sink), (0, _helpers.awaitScopeClose)(scope))
|
|
99
105
|
}));
|
|
100
106
|
}
|
|
101
107
|
interrupt = Effect.fiberIdWith(id => Effect.tap(Effect.forEach(this.scopes, scope => Scope.close(scope, Exit.interrupt(id)), DISCARD), () => MutableRef.set(this.lastValue, Option.none())));
|
package/dist/cjs/Subject.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Subject.js","names":["C","_interopRequireWildcard","require","Effect","ExecutionStrategy","Exit","_Function","MutableRef","Option","_Predicate","Scope","_core","_helpers","_protos","_TypeId","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","DISCARD","discard","SubjectImpl","FxBase","sinks","Set","scopes","constructor","onFailure","bind","onSuccess","run","sink","addSink","awaitScopeClose","cause","onCause","onEvent","interrupt","fiberIdWith","id","tap","forEach","scope","close","clear","f","withScope","innerScope","contextWithEffect","ctx","entry","add","sync","remove","delete","zipRight","addFinalizer","sequential","subscriberCount","size","unit","provide","exports","HoldSubjectImpl","lastValue","make","none","suspend","some","match","onNone","onSome","ReplaySubjectImpl","buffer","push","unsafeMake","replay","Math","max","RingBuffer","acquireRelease","subject","fromTag","tag","FromTag","map","flatMap","value","tagged","identifier","TaggedImpl","Tagged","isDataFirst","args","length","isEffect","hasProperty","TypeId","identity","dual","fxOrEffect","scoped"],"sources":["../../src/Subject.ts"],"sourcesContent":[null],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Subject.js","names":["C","_interopRequireWildcard","require","Effect","ExecutionStrategy","Exit","_Function","MutableRef","Option","_Predicate","Scope","_core","_helpers","_protos","_TypeId","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","DISCARD","discard","SubjectImpl","FxBase","sinks","Set","scopes","constructor","onFailure","bind","onSuccess","run","sink","addSink","awaitScopeClose","cause","onCause","onEvent","interrupt","fiberIdWith","id","tap","forEach","scope","close","clear","f","withScope","innerScope","contextWithEffect","ctx","entry","add","sync","remove","delete","zipRight","addFinalizer","sequential","subscriberCount","size","unit","provide","exports","HoldSubjectImpl","lastValue","make","none","suspend","some","succeed","failCause","match","onNone","onSome","exit","ReplaySubjectImpl","buffer","push","unsafeMake","replay","Math","max","RingBuffer","acquireRelease","subject","fromTag","tag","FromTag","map","flatMap","value","tagged","identifier","TaggedImpl","Tagged","isDataFirst","args","length","isEffect","hasProperty","TypeId","identity","dual","fxOrEffect","scoped"],"sources":["../../src/Subject.ts"],"sourcesContent":[null],"mappings":"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"}
|