export function createArrayStore<T extends object>(initValue?: T[]): ArrayStore<T> {
const [currentValue, setStore] = createStore<T[]>(initValue ?? []);
return {
get: () => currentValue,
set: setStore,
add: (value: T) => {
setStore(prev => [...prev, value]);
return () => { //Returns a function for removing the element again
setStore(prev => prev.filter((v) => v !== value));
};
},
...
}
}
export function createArrayStore<T extends object>(initValue?: T[]): ArrayStore<T> {
const [currentValue, setStore] = createStore<T[]>(initValue ?? []);
return {
get: () => currentValue,
set: setStore,
add: (value: T) => {
setStore(prev => [...prev, value]);
return () => { //Returns a function for removing the element again
setStore(prev => prev.filter((v) => v !== value));
};
},
...
}
}