@effect-rx/rx-react 0.31.14 → 0.31.16
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/index.js +43 -16
- package/dist/cjs/index.js.map +1 -1
- package/dist/dts/index.d.ts +11 -5
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/esm/index.js +44 -17
- package/dist/esm/index.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +68 -34
package/dist/cjs/index.js
CHANGED
@@ -18,14 +18,13 @@ exports.Result = Result;
|
|
18
18
|
var Rx = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@effect-rx/rx/Rx"));
|
19
19
|
var _Rx = Rx;
|
20
20
|
exports.Rx = Rx;
|
21
|
+
var _effect = /*#__PURE__*/require("effect");
|
21
22
|
var Cause = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Cause"));
|
22
23
|
var Context = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Context"));
|
23
24
|
var Effect = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Effect"));
|
24
|
-
var FiberSet = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/FiberSet"));
|
25
25
|
var _Function = /*#__PURE__*/require("effect/Function");
|
26
26
|
var _GlobalValue = /*#__PURE__*/require("effect/GlobalValue");
|
27
27
|
var Layer = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Layer"));
|
28
|
-
var Num = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Number"));
|
29
28
|
var React = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("react"));
|
30
29
|
var Scheduler = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("scheduler"));
|
31
30
|
var _RxRef = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@effect-rx/rx/RxRef"));
|
@@ -358,9 +357,9 @@ const depsAreEqual = (a, b) => {
|
|
358
357
|
};
|
359
358
|
const makeReactiveComponent = options => {
|
360
359
|
function ReactiveComponent(props) {
|
361
|
-
const [, setCount] = React.useState(0);
|
362
360
|
const ref = React.useRef(undefined);
|
363
361
|
const deps = options.deps(props);
|
362
|
+
const context = options.beforeBuild?.(props);
|
364
363
|
if (ref.current === undefined || !depsAreEqual(ref.current.previousDeps, deps)) {
|
365
364
|
if (ref.current) {
|
366
365
|
ref.current.cancel();
|
@@ -370,7 +369,7 @@ const makeReactiveComponent = options => {
|
|
370
369
|
}
|
371
370
|
}
|
372
371
|
const layer = props.context ? Layer.provideMerge(options.layer, Layer.succeedContext(props.context)) : options.layer;
|
373
|
-
const subscribable = Reactive.toSubscribable(layer)(options.build(props,
|
372
|
+
const subscribable = Reactive.toSubscribable(layer)(options.build(props, context));
|
374
373
|
ref.current = ref.current ? {
|
375
374
|
...ref.current,
|
376
375
|
subscribable,
|
@@ -380,15 +379,22 @@ const makeReactiveComponent = options => {
|
|
380
379
|
previousDeps: deps,
|
381
380
|
timeout: undefined,
|
382
381
|
result: Result.initial(true),
|
383
|
-
|
382
|
+
updateCount: 0,
|
383
|
+
rerender() {
|
384
|
+
ref.current.updateCount++;
|
385
|
+
}
|
384
386
|
};
|
385
387
|
ref.current.cancel = subscribable.subscribe(result => {
|
386
388
|
ref.current.result = result;
|
387
389
|
ref.current.rerender();
|
388
390
|
});
|
389
|
-
ref.current.rerender = () => setCount(Num.increment);
|
390
391
|
}
|
392
|
+
const [count, setCount] = React.useState(ref.current.updateCount);
|
391
393
|
React.useEffect(() => {
|
394
|
+
ref.current.rerender = () => setCount(++ref.current.updateCount);
|
395
|
+
if (ref.current.updateCount !== count) {
|
396
|
+
setCount(ref.current.updateCount);
|
397
|
+
}
|
392
398
|
if (ref.current.timeout !== undefined) {
|
393
399
|
clearTimeout(ref.current.timeout);
|
394
400
|
ref.current.timeout = undefined;
|
@@ -396,9 +402,9 @@ const makeReactiveComponent = options => {
|
|
396
402
|
return () => {
|
397
403
|
ref.current.timeout = setTimeout(ref.current.cancel, 100);
|
398
404
|
};
|
399
|
-
}, [
|
405
|
+
}, []);
|
400
406
|
if (ref.current.result._tag === "Initial") {
|
401
|
-
return options.
|
407
|
+
return options.fallback(props);
|
402
408
|
} else if (ref.current.result._tag === "Failure") {
|
403
409
|
throw Cause.squash(ref.current.result.cause);
|
404
410
|
}
|
@@ -437,18 +443,39 @@ const defaultDeps = props => Object.values(props);
|
|
437
443
|
* @since 1.0.0
|
438
444
|
* @category Reactive
|
439
445
|
*/
|
440
|
-
const component =
|
441
|
-
|
442
|
-
build
|
443
|
-
|
444
|
-
|
445
|
-
|
446
|
-
|
446
|
+
const component = name => function () {
|
447
|
+
let beforeBuild;
|
448
|
+
let build;
|
449
|
+
let options;
|
450
|
+
if (typeof arguments[1] === "function") {
|
451
|
+
beforeBuild = arguments[0];
|
452
|
+
build = arguments[1];
|
453
|
+
options = arguments[2];
|
454
|
+
} else {
|
455
|
+
build = arguments[0];
|
456
|
+
options = arguments[1];
|
457
|
+
}
|
458
|
+
return makeReactiveComponent({
|
459
|
+
name,
|
460
|
+
build,
|
461
|
+
layer: Layer.empty,
|
462
|
+
fallback: options?.fallback ?? _Function.constNull,
|
463
|
+
deps: options?.deps ?? defaultDeps,
|
464
|
+
beforeBuild
|
465
|
+
});
|
466
|
+
};
|
447
467
|
/**
|
448
468
|
* @since 1.0.0
|
449
469
|
* @category Reactive
|
450
470
|
*/
|
451
471
|
exports.component = component;
|
452
|
-
const action = f => Effect.
|
472
|
+
const action = f => Effect.withFiberRuntime(parent => Effect.succeed((...args) => {
|
473
|
+
const runtime = _effect.Runtime.make({
|
474
|
+
context: parent.currentContext,
|
475
|
+
fiberRefs: parent.getFiberRefs(),
|
476
|
+
runtimeFlags: _effect.Runtime.defaultRuntime.runtimeFlags
|
477
|
+
});
|
478
|
+
return _effect.Runtime.runPromise(runtime)(f(...args));
|
479
|
+
}));
|
453
480
|
exports.action = action;
|
454
481
|
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","names":["Reactive","_interopRequireWildcard","require","_Reactive","exports","Registry","_Registry","Result","_Result","Rx","_Rx","Cause","Context","Effect","FiberSet","_Function","_GlobalValue","Layer","Num","React","Scheduler","_RxRef","RxRef","_ReactiveRef","ReactiveRef","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","scheduleTask","f","unstable_scheduleCallback","unstable_LowPriority","RegistryContext","createContext","make","defaultIdleTTL","RegistryProvider","options","registry","useMemo","useEffect","dispose","createElement","Provider","value","children","storeRegistry","globalValue","makeStore","rx","stores","undefined","store","newStore","subscribe","snapshot","useStore","useSyncExternalStore","initialValuesSet","useRxInitialValues","initialValues","useContext","WeakSet","add","ensureNode","setValue","useRxValue","rxB","map","mountRx","mount","setRx","useCallback","useRxMount","useRxSet","useRxSetPromise","resolves","Set","result","waiting","_tag","fns","Array","from","clear","exit","toExit","forEach","resolve","immediate","Promise","useRxRefresh","refresh","useRx","rxPromiseMap","suspendOnWaiting","Map","rxToPromise","promise","setTimeout","delete","rxResultOrSuspend","useRxSuspense","useRxSuspenseSuccess","squash","cause","useRxSubscribe","useRxRef","ref","useState","useRxRefProp","prop","useRxRefPropValue","depsAreEqual","b","length","is","makeReactiveComponent","ReactiveComponent","props","setCount","useRef","deps","current","previousDeps","cancel","timeout","clearTimeout","layer","context","provideMerge","succeedContext","subscribable","toSubscribable","build","emit","initial","rerender","constVoid","increment","onInitial","displayName","name","provide","empty","renderCache","render","contextWith","reactive","unsafeGet","Wrapped","defaultDeps","values","component","constNull","action","makeRuntimePromise","runPromise","args"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"index.js","names":["Reactive","_interopRequireWildcard","require","_Reactive","exports","Registry","_Registry","Result","_Result","Rx","_Rx","_effect","Cause","Context","Effect","_Function","_GlobalValue","Layer","React","Scheduler","_RxRef","RxRef","_ReactiveRef","ReactiveRef","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","scheduleTask","f","unstable_scheduleCallback","unstable_LowPriority","RegistryContext","createContext","make","defaultIdleTTL","RegistryProvider","options","registry","useMemo","useEffect","dispose","createElement","Provider","value","children","storeRegistry","globalValue","makeStore","rx","stores","undefined","store","newStore","subscribe","snapshot","useStore","useSyncExternalStore","initialValuesSet","useRxInitialValues","initialValues","useContext","WeakSet","add","ensureNode","setValue","useRxValue","rxB","map","mountRx","mount","setRx","useCallback","useRxMount","useRxSet","useRxSetPromise","resolves","Set","result","waiting","_tag","fns","Array","from","clear","exit","toExit","forEach","resolve","immediate","Promise","useRxRefresh","refresh","useRx","rxPromiseMap","suspendOnWaiting","Map","rxToPromise","promise","setTimeout","delete","rxResultOrSuspend","useRxSuspense","useRxSuspenseSuccess","squash","cause","useRxSubscribe","useRxRef","ref","useState","useRxRefProp","prop","useRxRefPropValue","depsAreEqual","b","length","is","makeReactiveComponent","ReactiveComponent","props","useRef","deps","context","beforeBuild","current","previousDeps","cancel","timeout","clearTimeout","layer","provideMerge","succeedContext","subscribable","toSubscribable","build","initial","updateCount","rerender","count","setCount","fallback","displayName","name","provide","empty","renderCache","render","contextWith","reactive","unsafeGet","Wrapped","defaultDeps","values","component","arguments","constNull","action","withFiberRuntime","parent","succeed","args","runtime","Runtime","currentContext","fiberRefs","getFiberRefs","runtimeFlags","defaultRuntime","runPromise"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/dts/index.d.ts
CHANGED
@@ -154,13 +154,19 @@ export interface ReactiveComponent<Props extends Record<string, any>, R = never>
|
|
154
154
|
* @since 1.0.0
|
155
155
|
* @category Reactive
|
156
156
|
*/
|
157
|
-
export declare const component: <
|
158
|
-
|
159
|
-
|
160
|
-
|
157
|
+
export declare const component: <Props extends Record<string, any> = {}>(name: string) => {
|
158
|
+
<E, R>(build: (props: Props) => Effect.Effect<React.ReactNode, E, R>, options?: {
|
159
|
+
readonly fallback?: (props: Props) => React.ReactNode;
|
160
|
+
readonly deps?: (props: Props) => ReadonlyArray<any>;
|
161
|
+
}): ReactiveComponent<Props, Exclude<R, Reactive.Reactive | Scope>>;
|
162
|
+
<E, R_1, Context>(beforeBuild: (props: Props) => Context, build: (props: Props, context: Context) => Effect.Effect<React.ReactNode, E, R_1>, options?: {
|
163
|
+
readonly fallback?: (props: Props) => React.ReactNode;
|
164
|
+
readonly deps?: (props: Props) => ReadonlyArray<any>;
|
165
|
+
}): ReactiveComponent<Props, Exclude<R_1, Reactive.Reactive | Scope>>;
|
166
|
+
};
|
161
167
|
/**
|
162
168
|
* @since 1.0.0
|
163
169
|
* @category Reactive
|
164
170
|
*/
|
165
|
-
export declare const action: <Args extends ReadonlyArray<any>, A, E, R>(f: (...args: Args) => Effect.Effect<A, E, R>) => Effect.Effect<(...args: Args) => Promise<A>, never, R
|
171
|
+
export declare const action: <Args extends ReadonlyArray<any>, A, E, R>(f: (...args: Args) => Effect.Effect<A, E, R>) => Effect.Effect<(...args: Args) => Promise<A>, never, R>;
|
166
172
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/dts/index.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,QAAQ,MAAM,wBAAwB,CAAA;AAClD,OAAO,KAAK,QAAQ,MAAM,wBAAwB,CAAA;AAClD,OAAO,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAC9C,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACtC,OAAO,KAAK,KAAK,KAAK,MAAM,qBAAqB,CAAA;
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/index.js
CHANGED
@@ -6,14 +6,13 @@ import * as Reactive from "@effect-rx/rx/Reactive";
|
|
6
6
|
import * as Registry from "@effect-rx/rx/Registry";
|
7
7
|
import * as Result from "@effect-rx/rx/Result";
|
8
8
|
import * as Rx from "@effect-rx/rx/Rx";
|
9
|
+
import { Runtime } from "effect";
|
9
10
|
import * as Cause from "effect/Cause";
|
10
11
|
import * as Context from "effect/Context";
|
11
12
|
import * as Effect from "effect/Effect";
|
12
|
-
import
|
13
|
-
import { constNull, constVoid } from "effect/Function";
|
13
|
+
import { constNull } from "effect/Function";
|
14
14
|
import { globalValue } from "effect/GlobalValue";
|
15
15
|
import * as Layer from "effect/Layer";
|
16
|
-
import * as Num from "effect/Number";
|
17
16
|
import * as React from "react";
|
18
17
|
import * as Scheduler from "scheduler";
|
19
18
|
/**
|
@@ -298,9 +297,9 @@ const depsAreEqual = (a, b) => {
|
|
298
297
|
};
|
299
298
|
const makeReactiveComponent = options => {
|
300
299
|
function ReactiveComponent(props) {
|
301
|
-
const [, setCount] = React.useState(0);
|
302
300
|
const ref = React.useRef(undefined);
|
303
301
|
const deps = options.deps(props);
|
302
|
+
const context = options.beforeBuild?.(props);
|
304
303
|
if (ref.current === undefined || !depsAreEqual(ref.current.previousDeps, deps)) {
|
305
304
|
if (ref.current) {
|
306
305
|
ref.current.cancel();
|
@@ -310,7 +309,7 @@ const makeReactiveComponent = options => {
|
|
310
309
|
}
|
311
310
|
}
|
312
311
|
const layer = props.context ? Layer.provideMerge(options.layer, Layer.succeedContext(props.context)) : options.layer;
|
313
|
-
const subscribable = Reactive.toSubscribable(layer)(options.build(props,
|
312
|
+
const subscribable = Reactive.toSubscribable(layer)(options.build(props, context));
|
314
313
|
ref.current = ref.current ? {
|
315
314
|
...ref.current,
|
316
315
|
subscribable,
|
@@ -320,15 +319,22 @@ const makeReactiveComponent = options => {
|
|
320
319
|
previousDeps: deps,
|
321
320
|
timeout: undefined,
|
322
321
|
result: Result.initial(true),
|
323
|
-
|
322
|
+
updateCount: 0,
|
323
|
+
rerender() {
|
324
|
+
ref.current.updateCount++;
|
325
|
+
}
|
324
326
|
};
|
325
327
|
ref.current.cancel = subscribable.subscribe(result => {
|
326
328
|
ref.current.result = result;
|
327
329
|
ref.current.rerender();
|
328
330
|
});
|
329
|
-
ref.current.rerender = () => setCount(Num.increment);
|
330
331
|
}
|
332
|
+
const [count, setCount] = React.useState(ref.current.updateCount);
|
331
333
|
React.useEffect(() => {
|
334
|
+
ref.current.rerender = () => setCount(++ref.current.updateCount);
|
335
|
+
if (ref.current.updateCount !== count) {
|
336
|
+
setCount(ref.current.updateCount);
|
337
|
+
}
|
332
338
|
if (ref.current.timeout !== undefined) {
|
333
339
|
clearTimeout(ref.current.timeout);
|
334
340
|
ref.current.timeout = undefined;
|
@@ -336,9 +342,9 @@ const makeReactiveComponent = options => {
|
|
336
342
|
return () => {
|
337
343
|
ref.current.timeout = setTimeout(ref.current.cancel, 100);
|
338
344
|
};
|
339
|
-
}, [
|
345
|
+
}, []);
|
340
346
|
if (ref.current.result._tag === "Initial") {
|
341
|
-
return options.
|
347
|
+
return options.fallback(props);
|
342
348
|
} else if (ref.current.result._tag === "Failure") {
|
343
349
|
throw Cause.squash(ref.current.result.cause);
|
344
350
|
}
|
@@ -377,16 +383,37 @@ const defaultDeps = props => Object.values(props);
|
|
377
383
|
* @since 1.0.0
|
378
384
|
* @category Reactive
|
379
385
|
*/
|
380
|
-
export const component =
|
381
|
-
|
382
|
-
build
|
383
|
-
|
384
|
-
|
385
|
-
|
386
|
-
|
386
|
+
export const component = name => function () {
|
387
|
+
let beforeBuild;
|
388
|
+
let build;
|
389
|
+
let options;
|
390
|
+
if (typeof arguments[1] === "function") {
|
391
|
+
beforeBuild = arguments[0];
|
392
|
+
build = arguments[1];
|
393
|
+
options = arguments[2];
|
394
|
+
} else {
|
395
|
+
build = arguments[0];
|
396
|
+
options = arguments[1];
|
397
|
+
}
|
398
|
+
return makeReactiveComponent({
|
399
|
+
name,
|
400
|
+
build,
|
401
|
+
layer: Layer.empty,
|
402
|
+
fallback: options?.fallback ?? constNull,
|
403
|
+
deps: options?.deps ?? defaultDeps,
|
404
|
+
beforeBuild
|
405
|
+
});
|
406
|
+
};
|
387
407
|
/**
|
388
408
|
* @since 1.0.0
|
389
409
|
* @category Reactive
|
390
410
|
*/
|
391
|
-
export const action = f => Effect.
|
411
|
+
export const action = f => Effect.withFiberRuntime(parent => Effect.succeed((...args) => {
|
412
|
+
const runtime = Runtime.make({
|
413
|
+
context: parent.currentContext,
|
414
|
+
fiberRefs: parent.getFiberRefs(),
|
415
|
+
runtimeFlags: Runtime.defaultRuntime.runtimeFlags
|
416
|
+
});
|
417
|
+
return Runtime.runPromise(runtime)(f(...args));
|
418
|
+
}));
|
392
419
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","names":["Reactive","Registry","Result","Rx","Cause","Context","Effect","FiberSet","constNull","constVoid","globalValue","Layer","Num","React","Scheduler","RxRef","ReactiveRef","scheduleTask","f","unstable_scheduleCallback","unstable_LowPriority","RegistryContext","createContext","make","defaultIdleTTL","RegistryProvider","options","registry","useMemo","useEffect","dispose","createElement","Provider","value","children","storeRegistry","WeakMap","makeStore","rx","stores","get","undefined","set","store","newStore","subscribe","snapshot","useStore","useSyncExternalStore","initialValuesSet","useRxInitialValues","initialValues","useContext","WeakSet","has","add","ensureNode","setValue","useRxValue","rxB","map","mountRx","mount","setRx","useCallback","useRxMount","useRxSet","useRxSetPromise","resolves","Set","result","waiting","_tag","fns","Array","from","clear","exit","toExit","forEach","resolve","immediate","Promise","useRxRefresh","refresh","useRx","rxPromiseMap","suspendOnWaiting","Map","default","rxToPromise","promise","setTimeout","delete","rxResultOrSuspend","useRxSuspense","useRxSuspenseSuccess","squash","cause","useRxSubscribe","useRxRef","ref","useState","useRxRefProp","prop","useRxRefPropValue","depsAreEqual","a","b","length","i","Object","is","makeReactiveComponent","ReactiveComponent","props","setCount","useRef","deps","current","previousDeps","cancel","timeout","clearTimeout","layer","context","provideMerge","succeedContext","subscribable","toSubscribable","build","emit","initial","rerender","increment","onInitial","displayName","name","provide","empty","renderCache","render","contextWith","reactive","unsafeGet","Wrapped","defaultDeps","values","component","action","makeRuntimePromise","runPromise","args"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"index.js","names":["Reactive","Registry","Result","Rx","Runtime","Cause","Context","Effect","constNull","globalValue","Layer","React","Scheduler","RxRef","ReactiveRef","scheduleTask","f","unstable_scheduleCallback","unstable_LowPriority","RegistryContext","createContext","make","defaultIdleTTL","RegistryProvider","options","registry","useMemo","useEffect","dispose","createElement","Provider","value","children","storeRegistry","WeakMap","makeStore","rx","stores","get","undefined","set","store","newStore","subscribe","snapshot","useStore","useSyncExternalStore","initialValuesSet","useRxInitialValues","initialValues","useContext","WeakSet","has","add","ensureNode","setValue","useRxValue","rxB","map","mountRx","mount","setRx","useCallback","useRxMount","useRxSet","useRxSetPromise","resolves","Set","result","waiting","_tag","fns","Array","from","clear","exit","toExit","forEach","resolve","immediate","Promise","useRxRefresh","refresh","useRx","rxPromiseMap","suspendOnWaiting","Map","default","rxToPromise","promise","setTimeout","delete","rxResultOrSuspend","useRxSuspense","useRxSuspenseSuccess","squash","cause","useRxSubscribe","useRxRef","ref","useState","useRxRefProp","prop","useRxRefPropValue","depsAreEqual","a","b","length","i","Object","is","makeReactiveComponent","ReactiveComponent","props","useRef","deps","context","beforeBuild","current","previousDeps","cancel","timeout","clearTimeout","layer","provideMerge","succeedContext","subscribable","toSubscribable","build","initial","updateCount","rerender","count","setCount","fallback","displayName","name","provide","empty","renderCache","render","contextWith","reactive","unsafeGet","Wrapped","defaultDeps","values","component","arguments","action","withFiberRuntime","parent","succeed","args","runtime","currentContext","fiberRefs","getFiberRefs","runtimeFlags","defaultRuntime","runPromise"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
@@ -7,15 +7,14 @@ import * as Registry from "@effect-rx/rx/Registry"
|
|
7
7
|
import * as Result from "@effect-rx/rx/Result"
|
8
8
|
import * as Rx from "@effect-rx/rx/Rx"
|
9
9
|
import type * as RxRef from "@effect-rx/rx/RxRef"
|
10
|
+
import { Runtime } from "effect"
|
10
11
|
import * as Cause from "effect/Cause"
|
11
12
|
import * as Context from "effect/Context"
|
12
13
|
import * as Effect from "effect/Effect"
|
13
14
|
import type * as Exit from "effect/Exit"
|
14
|
-
import
|
15
|
-
import { constNull, constVoid } from "effect/Function"
|
15
|
+
import { constNull } from "effect/Function"
|
16
16
|
import { globalValue } from "effect/GlobalValue"
|
17
17
|
import * as Layer from "effect/Layer"
|
18
|
-
import * as Num from "effect/Number"
|
19
18
|
import type { Scope } from "effect/Scope"
|
20
19
|
import * as React from "react"
|
21
20
|
import * as Scheduler from "scheduler"
|
@@ -398,29 +397,30 @@ const depsAreEqual = (a: ReadonlyArray<any>, b: ReadonlyArray<any>) => {
|
|
398
397
|
return true
|
399
398
|
}
|
400
399
|
|
401
|
-
const makeReactiveComponent = <Props extends Record<string, any>, E, R>(options: {
|
400
|
+
const makeReactiveComponent = <Props extends Record<string, any>, E, R, Context = void>(options: {
|
402
401
|
readonly name: string
|
403
402
|
readonly build: (
|
404
403
|
props: Props,
|
405
|
-
|
404
|
+
context: Context
|
406
405
|
) => Effect.Effect<React.ReactNode, E, R>
|
407
406
|
readonly layer: Layer.Layer<never>
|
408
|
-
readonly
|
407
|
+
readonly fallback: (props: Props) => React.ReactNode
|
409
408
|
readonly deps: (props: Props) => ReadonlyArray<any>
|
409
|
+
readonly beforeBuild?: (props: Props) => Context
|
410
410
|
}): ReactiveComponent<Props, R> => {
|
411
411
|
function ReactiveComponent(props: Props & { readonly context?: Context.Context<R> }) {
|
412
|
-
const [, setCount] = React.useState<number>(0)
|
413
|
-
|
414
412
|
const ref = React.useRef<{
|
415
413
|
readonly subscribable: Reactive.Subscribable<React.ReactNode, E>
|
416
414
|
previousDeps: ReadonlyArray<any>
|
417
415
|
cancel: () => void
|
418
416
|
timeout: number | undefined
|
419
417
|
result: Result.Result<React.ReactNode, E>
|
418
|
+
updateCount: number
|
420
419
|
rerender: () => void
|
421
420
|
}>(undefined as any)
|
422
421
|
|
423
422
|
const deps = options.deps(props)
|
423
|
+
const context = options.beforeBuild?.(props) as Context
|
424
424
|
|
425
425
|
if (ref.current === undefined || !depsAreEqual(ref.current.previousDeps, deps)) {
|
426
426
|
if (ref.current) {
|
@@ -434,7 +434,7 @@ const makeReactiveComponent = <Props extends Record<string, any>, E, R>(options:
|
|
434
434
|
? Layer.provideMerge(options.layer, Layer.succeedContext(props.context))
|
435
435
|
: options.layer
|
436
436
|
const subscribable = Reactive.toSubscribable(layer)(
|
437
|
-
options.build(props,
|
437
|
+
options.build(props, context) as Effect.Effect<React.ReactNode, E, Reactive.Reactive>
|
438
438
|
)
|
439
439
|
ref.current = ref.current ?
|
440
440
|
{
|
@@ -447,16 +447,24 @@ const makeReactiveComponent = <Props extends Record<string, any>, E, R>(options:
|
|
447
447
|
previousDeps: deps,
|
448
448
|
timeout: undefined,
|
449
449
|
result: Result.initial(true),
|
450
|
-
|
450
|
+
updateCount: 0,
|
451
|
+
rerender() {
|
452
|
+
ref.current.updateCount++
|
453
|
+
}
|
451
454
|
} as any
|
452
455
|
ref.current.cancel = subscribable.subscribe((result) => {
|
453
456
|
ref.current.result = result
|
454
457
|
ref.current.rerender()
|
455
458
|
})
|
456
|
-
ref.current.rerender = () => setCount(Num.increment)
|
457
459
|
}
|
458
460
|
|
461
|
+
const [count, setCount] = React.useState<number>(ref.current.updateCount)
|
462
|
+
|
459
463
|
React.useEffect(() => {
|
464
|
+
ref.current.rerender = () => setCount(++ref.current.updateCount)
|
465
|
+
if (ref.current.updateCount !== count) {
|
466
|
+
setCount(ref.current.updateCount)
|
467
|
+
}
|
460
468
|
if (ref.current.timeout !== undefined) {
|
461
469
|
clearTimeout(ref.current.timeout)
|
462
470
|
ref.current.timeout = undefined
|
@@ -464,10 +472,10 @@ const makeReactiveComponent = <Props extends Record<string, any>, E, R>(options:
|
|
464
472
|
return () => {
|
465
473
|
ref.current.timeout = setTimeout(ref.current.cancel, 100)
|
466
474
|
}
|
467
|
-
}, [
|
475
|
+
}, [])
|
468
476
|
|
469
477
|
if (ref.current.result._tag === "Initial") {
|
470
|
-
return options.
|
478
|
+
return options.fallback(props)
|
471
479
|
} else if (ref.current.result._tag === "Failure") {
|
472
480
|
throw Cause.squash(ref.current.result.cause)
|
473
481
|
}
|
@@ -505,24 +513,44 @@ const defaultDeps = (props: Record<string, any>) => Object.values(props)
|
|
505
513
|
* @since 1.0.0
|
506
514
|
* @category Reactive
|
507
515
|
*/
|
508
|
-
export const component = <
|
509
|
-
|
510
|
-
|
511
|
-
|
512
|
-
|
513
|
-
|
514
|
-
|
515
|
-
|
516
|
-
|
516
|
+
export const component = <Props extends Record<string, any> = {}>(name: string): {
|
517
|
+
<E, R>(
|
518
|
+
build: (props: Props) => Effect.Effect<React.ReactNode, E, R>,
|
519
|
+
options?: {
|
520
|
+
readonly fallback?: (props: Props) => React.ReactNode
|
521
|
+
readonly deps?: (props: Props) => ReadonlyArray<any>
|
522
|
+
}
|
523
|
+
): ReactiveComponent<Props, Exclude<R, Reactive.Reactive | Scope>>
|
524
|
+
<E, R, Context>(
|
525
|
+
beforeBuild: (props: Props) => Context,
|
526
|
+
build: (props: Props, context: Context) => Effect.Effect<React.ReactNode, E, R>,
|
527
|
+
options?: {
|
528
|
+
readonly fallback?: (props: Props) => React.ReactNode
|
529
|
+
readonly deps?: (props: Props) => ReadonlyArray<any>
|
530
|
+
}
|
531
|
+
): ReactiveComponent<Props, Exclude<R, Reactive.Reactive | Scope>>
|
532
|
+
} =>
|
533
|
+
function() {
|
534
|
+
let beforeBuild: any
|
535
|
+
let build: any
|
536
|
+
let options: any
|
537
|
+
if (typeof arguments[1] === "function") {
|
538
|
+
beforeBuild = arguments[0]
|
539
|
+
build = arguments[1]
|
540
|
+
options = arguments[2]
|
541
|
+
} else {
|
542
|
+
build = arguments[0]
|
543
|
+
options = arguments[1]
|
544
|
+
}
|
545
|
+
return makeReactiveComponent({
|
546
|
+
name,
|
547
|
+
build,
|
548
|
+
layer: Layer.empty,
|
549
|
+
fallback: options?.fallback ?? constNull,
|
550
|
+
deps: options?.deps ?? defaultDeps,
|
551
|
+
beforeBuild
|
552
|
+
}) as any
|
517
553
|
}
|
518
|
-
): ReactiveComponent<Props, Exclude<R, Reactive.Reactive | Scope>> =>
|
519
|
-
makeReactiveComponent({
|
520
|
-
name,
|
521
|
-
build,
|
522
|
-
layer: Layer.empty,
|
523
|
-
onInitial: options?.onInitial ?? constNull,
|
524
|
-
deps: options?.deps ?? defaultDeps
|
525
|
-
}) as any
|
526
554
|
|
527
555
|
/**
|
528
556
|
* @since 1.0.0
|
@@ -530,8 +558,14 @@ export const component = <E, R, Props extends Record<string, any> = {}>(
|
|
530
558
|
*/
|
531
559
|
export const action = <Args extends ReadonlyArray<any>, A, E, R>(
|
532
560
|
f: (...args: Args) => Effect.Effect<A, E, R>
|
533
|
-
): Effect.Effect<(...args: Args) => Promise<A>, never, R
|
534
|
-
Effect.
|
535
|
-
|
536
|
-
|
561
|
+
): Effect.Effect<(...args: Args) => Promise<A>, never, R> =>
|
562
|
+
Effect.withFiberRuntime((parent) =>
|
563
|
+
Effect.succeed((...args: Args) => {
|
564
|
+
const runtime = Runtime.make({
|
565
|
+
context: parent.currentContext as Context.Context<R>,
|
566
|
+
fiberRefs: parent.getFiberRefs(),
|
567
|
+
runtimeFlags: Runtime.defaultRuntime.runtimeFlags
|
568
|
+
})
|
569
|
+
return Runtime.runPromise(runtime)(f(...args))
|
570
|
+
})
|
537
571
|
)
|