Replace entire repo content with shahikitchen-v1-prodcution.zip (v1.1 production)

This commit is contained in:
root
2026-06-25 13:44:21 +00:00
parent 284dcfa120
commit 6cd5aaa048
850 changed files with 15616 additions and 26143 deletions
+48
View File
@@ -0,0 +1,48 @@
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;
}