├── .env ├── .gitignore ├── .vscode └── settings.json ├── README.md ├── app ├── components │ ├── AuthModal.tsx │ ├── AuthModalInputs.tsx │ ├── Header.tsx │ ├── NavBar.tsx │ ├── Price.tsx │ ├── RestaurantCard.tsx │ ├── SearchBar.tsx │ └── Stars.tsx ├── context │ └── AuthContext.tsx ├── globals.css ├── head.tsx ├── layout.tsx ├── loading.tsx ├── page.module.css ├── page.tsx ├── reserve │ └── [slug] │ │ ├── components │ │ ├── Form.tsx │ │ └── Header.tsx │ │ ├── head.tsx │ │ └── page.tsx ├── restaurant │ ├── [slug] │ │ ├── components │ │ │ ├── Description.tsx │ │ │ ├── Header.tsx │ │ │ ├── Images.tsx │ │ │ ├── Menu.tsx │ │ │ ├── MenuCard.tsx │ │ │ ├── Rating.tsx │ │ │ ├── ReservationCard.tsx │ │ │ ├── RestaurantNavBar.tsx │ │ │ ├── ReviewCard.tsx │ │ │ ├── Reviews.tsx │ │ │ └── Title.tsx │ │ ├── head.tsx │ │ ├── layout.tsx │ │ ├── menu │ │ │ ├── head.tsx │ │ │ └── page.tsx │ │ └── page.tsx │ ├── error.tsx │ ├── loading.tsx │ └── not-found.tsx └── search │ ├── components │ ├── Header.tsx │ ├── RestaurantCard.tsx │ └── SearchSideBar.tsx │ ├── head.tsx │ └── page.tsx ├── data ├── index.ts ├── partySize.ts └── times.ts ├── hooks ├── useAuth.ts ├── useAvailabilities.ts └── useReservation.ts ├── html ├── homepage.html ├── reservationPage.html ├── restaurantDetailsPage.html ├── restaurantMenuPage.html └── searchPage.html ├── middleware.ts ├── next.config.js ├── package.json ├── pages └── api │ ├── auth │ ├── me.ts │ ├── signin.ts │ └── signup.ts │ ├── hello.ts │ ├── restaurant │ └── [slug] │ │ ├── availability.ts │ │ └── reserve.ts │ └── seed.ts ├── postcss.config.js ├── prisma └── schema.prisma ├── public ├── favicon.ico ├── icons │ ├── empty-star.png │ ├── error.png │ ├── full-star.png │ └── half-star.png ├── icons8-restaurant-on-site-16.png ├── next.svg ├── thirteen.svg └── vercel.svg ├── services └── restaurant │ └── findAvailableTables.ts ├── tailwind.config.js ├── tsconfig.json └── utils ├── calculateReviewRatingAverage.ts └── convertToDisplayTime.ts /.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/.env -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/.gitignore -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/README.md -------------------------------------------------------------------------------- /app/components/AuthModal.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/components/AuthModal.tsx -------------------------------------------------------------------------------- /app/components/AuthModalInputs.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/components/AuthModalInputs.tsx -------------------------------------------------------------------------------- /app/components/Header.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/components/Header.tsx -------------------------------------------------------------------------------- /app/components/NavBar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/components/NavBar.tsx -------------------------------------------------------------------------------- /app/components/Price.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/components/Price.tsx -------------------------------------------------------------------------------- /app/components/RestaurantCard.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/components/RestaurantCard.tsx -------------------------------------------------------------------------------- /app/components/SearchBar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/components/SearchBar.tsx -------------------------------------------------------------------------------- /app/components/Stars.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/components/Stars.tsx -------------------------------------------------------------------------------- /app/context/AuthContext.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/context/AuthContext.tsx -------------------------------------------------------------------------------- /app/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/globals.css -------------------------------------------------------------------------------- /app/head.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/head.tsx -------------------------------------------------------------------------------- /app/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/layout.tsx -------------------------------------------------------------------------------- /app/loading.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/loading.tsx -------------------------------------------------------------------------------- /app/page.module.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/page.module.css -------------------------------------------------------------------------------- /app/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/page.tsx -------------------------------------------------------------------------------- /app/reserve/[slug]/components/Form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/reserve/[slug]/components/Form.tsx -------------------------------------------------------------------------------- /app/reserve/[slug]/components/Header.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/reserve/[slug]/components/Header.tsx -------------------------------------------------------------------------------- /app/reserve/[slug]/head.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/reserve/[slug]/head.tsx -------------------------------------------------------------------------------- /app/reserve/[slug]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/reserve/[slug]/page.tsx -------------------------------------------------------------------------------- /app/restaurant/[slug]/components/Description.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/[slug]/components/Description.tsx -------------------------------------------------------------------------------- /app/restaurant/[slug]/components/Header.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/[slug]/components/Header.tsx -------------------------------------------------------------------------------- /app/restaurant/[slug]/components/Images.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/[slug]/components/Images.tsx -------------------------------------------------------------------------------- /app/restaurant/[slug]/components/Menu.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/[slug]/components/Menu.tsx -------------------------------------------------------------------------------- /app/restaurant/[slug]/components/MenuCard.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/[slug]/components/MenuCard.tsx -------------------------------------------------------------------------------- /app/restaurant/[slug]/components/Rating.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/[slug]/components/Rating.tsx -------------------------------------------------------------------------------- /app/restaurant/[slug]/components/ReservationCard.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/[slug]/components/ReservationCard.tsx -------------------------------------------------------------------------------- /app/restaurant/[slug]/components/RestaurantNavBar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/[slug]/components/RestaurantNavBar.tsx -------------------------------------------------------------------------------- /app/restaurant/[slug]/components/ReviewCard.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/[slug]/components/ReviewCard.tsx -------------------------------------------------------------------------------- /app/restaurant/[slug]/components/Reviews.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/[slug]/components/Reviews.tsx -------------------------------------------------------------------------------- /app/restaurant/[slug]/components/Title.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/[slug]/components/Title.tsx -------------------------------------------------------------------------------- /app/restaurant/[slug]/head.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/[slug]/head.tsx -------------------------------------------------------------------------------- /app/restaurant/[slug]/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/[slug]/layout.tsx -------------------------------------------------------------------------------- /app/restaurant/[slug]/menu/head.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/[slug]/menu/head.tsx -------------------------------------------------------------------------------- /app/restaurant/[slug]/menu/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/[slug]/menu/page.tsx -------------------------------------------------------------------------------- /app/restaurant/[slug]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/[slug]/page.tsx -------------------------------------------------------------------------------- /app/restaurant/error.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/error.tsx -------------------------------------------------------------------------------- /app/restaurant/loading.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/loading.tsx -------------------------------------------------------------------------------- /app/restaurant/not-found.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/restaurant/not-found.tsx -------------------------------------------------------------------------------- /app/search/components/Header.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/search/components/Header.tsx -------------------------------------------------------------------------------- /app/search/components/RestaurantCard.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/search/components/RestaurantCard.tsx -------------------------------------------------------------------------------- /app/search/components/SearchSideBar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/search/components/SearchSideBar.tsx -------------------------------------------------------------------------------- /app/search/head.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/search/head.tsx -------------------------------------------------------------------------------- /app/search/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/app/search/page.tsx -------------------------------------------------------------------------------- /data/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/data/index.ts -------------------------------------------------------------------------------- /data/partySize.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/data/partySize.ts -------------------------------------------------------------------------------- /data/times.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/data/times.ts -------------------------------------------------------------------------------- /hooks/useAuth.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/hooks/useAuth.ts -------------------------------------------------------------------------------- /hooks/useAvailabilities.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/hooks/useAvailabilities.ts -------------------------------------------------------------------------------- /hooks/useReservation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/hooks/useReservation.ts -------------------------------------------------------------------------------- /html/homepage.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/html/homepage.html -------------------------------------------------------------------------------- /html/reservationPage.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/html/reservationPage.html -------------------------------------------------------------------------------- /html/restaurantDetailsPage.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/html/restaurantDetailsPage.html -------------------------------------------------------------------------------- /html/restaurantMenuPage.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/html/restaurantMenuPage.html -------------------------------------------------------------------------------- /html/searchPage.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/html/searchPage.html -------------------------------------------------------------------------------- /middleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/middleware.ts -------------------------------------------------------------------------------- /next.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/next.config.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/package.json -------------------------------------------------------------------------------- /pages/api/auth/me.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/pages/api/auth/me.ts -------------------------------------------------------------------------------- /pages/api/auth/signin.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/pages/api/auth/signin.ts -------------------------------------------------------------------------------- /pages/api/auth/signup.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/pages/api/auth/signup.ts -------------------------------------------------------------------------------- /pages/api/hello.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/pages/api/hello.ts -------------------------------------------------------------------------------- /pages/api/restaurant/[slug]/availability.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/pages/api/restaurant/[slug]/availability.ts -------------------------------------------------------------------------------- /pages/api/restaurant/[slug]/reserve.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/pages/api/restaurant/[slug]/reserve.ts -------------------------------------------------------------------------------- /pages/api/seed.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/pages/api/seed.ts -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/postcss.config.js -------------------------------------------------------------------------------- /prisma/schema.prisma: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/prisma/schema.prisma -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/public/favicon.ico -------------------------------------------------------------------------------- /public/icons/empty-star.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/public/icons/empty-star.png -------------------------------------------------------------------------------- /public/icons/error.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/public/icons/error.png -------------------------------------------------------------------------------- /public/icons/full-star.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/public/icons/full-star.png -------------------------------------------------------------------------------- /public/icons/half-star.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/public/icons/half-star.png -------------------------------------------------------------------------------- /public/icons8-restaurant-on-site-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/public/icons8-restaurant-on-site-16.png -------------------------------------------------------------------------------- /public/next.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/public/next.svg -------------------------------------------------------------------------------- /public/thirteen.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/public/thirteen.svg -------------------------------------------------------------------------------- /public/vercel.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/public/vercel.svg -------------------------------------------------------------------------------- /services/restaurant/findAvailableTables.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/services/restaurant/findAvailableTables.ts -------------------------------------------------------------------------------- /tailwind.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/tailwind.config.js -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/tsconfig.json -------------------------------------------------------------------------------- /utils/calculateReviewRatingAverage.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/utils/calculateReviewRatingAverage.ts -------------------------------------------------------------------------------- /utils/convertToDisplayTime.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/harblaith7/Next13-Udemy-Course/HEAD/utils/convertToDisplayTime.ts --------------------------------------------------------------------------------