@alepha/react 0.11.6 → 0.11.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +0 -4
- package/dist/index.browser.js +7 -9
- package/dist/index.browser.js.map +1 -1
- package/dist/index.d.ts +31 -29
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -11
- package/dist/index.js.map +1 -1
- package/package.json +14 -14
- package/src/hooks/useStore.ts +22 -10
- package/src/providers/ReactServerProvider.ts +1 -1
package/LICENSE
CHANGED
package/README.md
CHANGED
package/dist/index.browser.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $atom, $env, $hook, $inject, $module, $use, Alepha, AlephaError, Descriptor, KIND, createDescriptor, t } from "@alepha/core";
|
|
1
|
+
import { $atom, $env, $hook, $inject, $module, $use, Alepha, AlephaError, Atom, Descriptor, KIND, createDescriptor, t } from "@alepha/core";
|
|
2
2
|
import { AlephaDateTime, DateTimeProvider } from "@alepha/datetime";
|
|
3
3
|
import { AlephaServer, HttpClient } from "@alepha/server";
|
|
4
4
|
import { AlephaServerLinks, LinkProvider } from "@alepha/server-links";
|
|
@@ -417,25 +417,23 @@ const useEvents = (opts, deps) => {
|
|
|
417
417
|
|
|
418
418
|
//#endregion
|
|
419
419
|
//#region src/hooks/useStore.ts
|
|
420
|
-
|
|
421
|
-
* Hook to access and mutate the Alepha state.
|
|
422
|
-
*/
|
|
423
|
-
const useStore = (key, defaultValue) => {
|
|
420
|
+
function useStore(target, defaultValue) {
|
|
424
421
|
const alepha = useAlepha();
|
|
425
422
|
useMemo(() => {
|
|
426
|
-
if (defaultValue != null && alepha.state.get(
|
|
423
|
+
if (defaultValue != null && alepha.state.get(target) == null) alepha.state.set(target, defaultValue);
|
|
427
424
|
}, [defaultValue]);
|
|
428
|
-
const [state, setState] = useState(alepha.state.get(
|
|
425
|
+
const [state, setState] = useState(alepha.state.get(target));
|
|
429
426
|
useEffect(() => {
|
|
430
427
|
if (!alepha.isBrowser()) return;
|
|
428
|
+
const key = target instanceof Atom ? target.key : target;
|
|
431
429
|
return alepha.events.on("state:mutate", (ev) => {
|
|
432
430
|
if (ev.key === key) setState(ev.value);
|
|
433
431
|
});
|
|
434
432
|
}, []);
|
|
435
433
|
return [state, (value) => {
|
|
436
|
-
alepha.state.set(
|
|
434
|
+
alepha.state.set(target, value);
|
|
437
435
|
}];
|
|
438
|
-
}
|
|
436
|
+
}
|
|
439
437
|
|
|
440
438
|
//#endregion
|
|
441
439
|
//#region src/hooks/useRouterState.ts
|