Replace entire repo content with kottgard-production-v1.1.zip (for shahikitchen-prod repo)
This commit is contained in:
@@ -1,48 +0,0 @@
|
||||
import type { WishlistAction, WishlistItem, WishlistState } from './entities';
|
||||
|
||||
export function wishlistReducer(state: WishlistState, action: WishlistAction): WishlistState {
|
||||
switch (action.type) {
|
||||
case 'TOGGLE_ITEM': {
|
||||
const exists = state.items.some((item) => item.id === action.payload.id);
|
||||
if (exists) {
|
||||
return {
|
||||
...state,
|
||||
items: state.items.filter((item) => item.id !== action.payload.id),
|
||||
};
|
||||
}
|
||||
return { ...state, items: [...state.items, action.payload] };
|
||||
}
|
||||
|
||||
case 'REMOVE_ITEM':
|
||||
return {
|
||||
...state,
|
||||
items: state.items.filter((item) => item.id !== action.payload),
|
||||
};
|
||||
|
||||
case 'CLEAR_WISHLIST':
|
||||
return { ...state, items: [] };
|
||||
|
||||
case 'RESTORE_ITEMS':
|
||||
return { ...state, items: action.payload };
|
||||
|
||||
case 'TOGGLE_DRAWER':
|
||||
return { ...state, isOpen: !state.isOpen };
|
||||
|
||||
case 'OPEN_DRAWER':
|
||||
return { ...state, isOpen: true };
|
||||
|
||||
case 'CLOSE_DRAWER':
|
||||
return { ...state, isOpen: false };
|
||||
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
}
|
||||
|
||||
export function isInWishlist(items: WishlistItem[], id: string): boolean {
|
||||
return items.some((item) => item.id === id);
|
||||
}
|
||||
|
||||
export function getWishlistCount(items: WishlistItem[]): number {
|
||||
return items.length;
|
||||
}
|
||||
Reference in New Issue
Block a user