Replace entire repo content with correct code from /root/shahikitchen-website/

This commit is contained in:
root
2026-06-29 16:22:09 +00:00
parent 57cc67d2d3
commit 50e3a34895
723 changed files with 20055 additions and 26101 deletions
+24
View File
@@ -0,0 +1,24 @@
import type { MenuRepository } from '@/domain/menu/repository';
import type { CartRepository } from '@/domain/cart/repository';
import type { WishlistRepository } from '@/domain/wishlist/repository';
import type { LanguageRepository } from '@/domain/language/repository';
import type { MessagingGateway } from '@/application/messaging/ports';
import { StaticMenuRepository } from '@/infrastructure/menu/static-menu-repository';
import { LocalStorageCartRepository } from '@/infrastructure/persistence/local-storage-cart-repository';
import { LocalStorageWishlistRepository } from '@/infrastructure/persistence/local-storage-wishlist-repository';
import { LocalStorageLanguageRepository } from '@/infrastructure/persistence/local-storage-language-repository';
import { BrowserWhatsAppGateway } from '@/infrastructure/messaging/browser-whatsapp-gateway';
/**
* Composition root — wires domain ports to infrastructure adapters.
* Presentation layer imports from here instead of concrete implementations.
*/
class AppContainer {
readonly menuRepository: MenuRepository = new StaticMenuRepository();
readonly cartRepository: CartRepository = new LocalStorageCartRepository();
readonly wishlistRepository: WishlistRepository = new LocalStorageWishlistRepository();
readonly languageRepository: LanguageRepository = new LocalStorageLanguageRepository();
readonly messagingGateway: MessagingGateway = new BrowserWhatsAppGateway();
}
export const container = new AppContainer();