feat: initial commit
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
import { useMemo } from "react";
|
||||
import {
|
||||
loadAllResidents,
|
||||
loadResidentsByAbodeId,
|
||||
loadResidentsByUserId,
|
||||
} from "../../store/loaders/residents.js";
|
||||
import { useSelector } from "../../store/react.js";
|
||||
import { getResidents } from "../../store/slices/residents.js";
|
||||
import { useLoad } from "../useLoad.js";
|
||||
|
||||
export function useDataAllResidents() {
|
||||
const residents = useSelector(getResidents);
|
||||
const status = useLoad(loadAllResidents);
|
||||
return { ...status, residents };
|
||||
}
|
||||
|
||||
export function useDataResidentsByAbodeId(aid: string) {
|
||||
const allResidents = useSelector(getResidents);
|
||||
const status = useLoad(loadResidentsByAbodeId, { aid });
|
||||
const residents = useMemo(
|
||||
() => Object.values(allResidents).filter((x) => x.aid === aid),
|
||||
[allResidents, aid]
|
||||
);
|
||||
return { ...status, residents };
|
||||
}
|
||||
|
||||
export function useDataResidentsByUserId(uid: string) {
|
||||
const allResidents = useSelector(getResidents);
|
||||
const status = useLoad(loadResidentsByUserId, { uid });
|
||||
const residents = useMemo(
|
||||
() => Object.values(allResidents).filter((x) => x.uid === uid),
|
||||
[allResidents, uid]
|
||||
);
|
||||
return { ...status, residents };
|
||||
}
|
||||
Reference in New Issue
Block a user