getChain
This commit is contained in:
parent
1ead32eca6
commit
0da961b7dd
|
|
@ -5,9 +5,10 @@ interface ChainState {
|
||||||
chains?: Chain[];
|
chains?: Chain[];
|
||||||
setChains: (chains: Chain[]) => void;
|
setChains: (chains: Chain[]) => void;
|
||||||
addChain: (chain: Chain) => void;
|
addChain: (chain: Chain) => void;
|
||||||
|
getChain: (id: string) => Chain | null;
|
||||||
}
|
}
|
||||||
|
|
||||||
export const useChainState = create<ChainState>((set) => ({
|
export const useChainState = create<ChainState>((set, get) => ({
|
||||||
setChains: (chains) => set({ chains }),
|
setChains: (chains) => set({ chains }),
|
||||||
|
|
||||||
addChain: (chain) =>
|
addChain: (chain) =>
|
||||||
|
|
@ -15,4 +16,14 @@ export const useChainState = create<ChainState>((set) => ({
|
||||||
if (!state.chains) return { chains: [chain] };
|
if (!state.chains) return { chains: [chain] };
|
||||||
return { chains: [...state.chains, chain] };
|
return { chains: [...state.chains, chain] };
|
||||||
}),
|
}),
|
||||||
|
|
||||||
|
getChain: (id) => {
|
||||||
|
const chains = get().chains;
|
||||||
|
if (!chains) return null;
|
||||||
|
|
||||||
|
const chain = chains.find((value) => value._id === id);
|
||||||
|
if (!chain) return null;
|
||||||
|
|
||||||
|
return chain;
|
||||||
|
},
|
||||||
}));
|
}));
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user