├── .vercel ├── project.json └── README.txt ├── src ├── media │ ├── tth.png │ ├── loader.gif │ ├── tth3.png │ └── Flights_Locations.jpg ├── components │ ├── AdminNavbar.jsx │ ├── PrivateRoute.jsx │ ├── homePageComponent2.jsx │ ├── homePageComponent.jsx │ ├── HomeSliders.jsx │ ├── Offers.jsx │ ├── Navbar.jsx │ └── Footer.jsx ├── Redux │ ├── Offers │ │ ├── offer.actiointyp.js │ │ ├── offer.reducer.js │ │ └── offer.action.js │ ├── HotelRedux │ │ ├── actionTypeHotel.js │ │ ├── actionHotel.js │ │ └── reducerHotel.js │ ├── AdminFlights │ │ ├── actionType.js │ │ ├── reducer.js │ │ └── action.js │ ├── AdminHotel │ │ ├── actionType.js │ │ ├── reducer.js │ │ └── action.js │ ├── Authantication │ │ ├── auth.actionType.js │ │ ├── auth.reducer.js │ │ └── auth.action.js │ └── store.js ├── Pages │ ├── Hotel │ │ ├── Hotel.jsx │ │ ├── HotelLayout.css │ │ ├── HotelStyles │ │ │ ├── HotelLayout.css │ │ │ └── HotelFooter.css │ │ ├── HotelFooter.jsx │ │ ├── HotelLayout.jsx │ │ ├── HotelDetails.jsx │ │ └── HotelSubNavbar.jsx │ ├── booking │ │ ├── Booking.jsx │ │ ├── bookingDetails.jsx │ │ ├── Booking.Module.css │ │ └── Cart.jsx │ ├── Flights │ │ ├── FlightList.jsx │ │ ├── FlightCard.jsx │ │ └── Flight.jsx │ ├── AllRoutes.jsx │ ├── Admin │ │ ├── AdminProducts.jsx │ │ ├── adminLandingPage.jsx │ │ ├── AllHotels.jsx │ │ ├── Admin.Module.css │ │ ├── AdminHotel.jsx │ │ └── AdminFlight.jsx │ ├── HomePage.jsx │ ├── Login.jsx │ └── Register.jsx ├── index.css ├── App.js ├── index.js ├── App.css ├── 01_firebase │ └── config_firebase.js └── styles │ ├── homeSliders.css │ ├── adminLanding.css │ ├── login.css │ ├── adminProduct.css │ ├── footer.css │ ├── navbar.css │ ├── homeOffers.css │ └── homePage.css ├── public └── index.html ├── .gitignore ├── package.json └── README.md /.vercel/project.json: -------------------------------------------------------------------------------- 1 | {"orgId":"rd0CGc36Jk4YbRwv44Qdiz2F","projectId":"prj_9ZO6Ozoeb534yYxelkxJeRRcKcWY"} -------------------------------------------------------------------------------- /src/media/tth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shivammchaudhary1/trip-to-heaven/HEAD/src/media/tth.png -------------------------------------------------------------------------------- /src/media/loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shivammchaudhary1/trip-to-heaven/HEAD/src/media/loader.gif -------------------------------------------------------------------------------- /src/media/tth3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shivammchaudhary1/trip-to-heaven/HEAD/src/media/tth3.png -------------------------------------------------------------------------------- /src/components/AdminNavbar.jsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | 3 | export const AdminNavbar = () => { 4 | return <>; 5 | }; 6 | -------------------------------------------------------------------------------- /src/media/Flights_Locations.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shivammchaudhary1/trip-to-heaven/HEAD/src/media/Flights_Locations.jpg -------------------------------------------------------------------------------- /src/Redux/Offers/offer.actiointyp.js: -------------------------------------------------------------------------------- 1 | export const GET_OFFER_REQUEST = "GET_OFFER_REQUEST" 2 | export const GET_OFFER_SUCCESS = "GET_OFFER_SUCCESS" 3 | export const GET_OFFER_ERROR = "GET_OFFER_ERROR" -------------------------------------------------------------------------------- /src/Redux/HotelRedux/actionTypeHotel.js: -------------------------------------------------------------------------------- 1 | //GET REQUEST 2 | 3 | export const GET_HOTEL_REQUEST = "GET_HOTEL_REQUEST"; 4 | export const GET_HOTEL_SUCCESS = "GET_HOTEL_SUCCESS"; 5 | export const GET_HOTEL_FAILURE = "GET_HOTEL_FAILURE"; 6 | -------------------------------------------------------------------------------- /src/Pages/Hotel/Hotel.jsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import HotelSubNavbar from "./HotelSubNavbar"; 3 | 4 | const Hotel = () => { 5 | return ( 6 |
7 | 8 |
9 | ); 10 | }; 11 | 12 | export default Hotel; 13 | -------------------------------------------------------------------------------- /public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Document 8 | 9 | 10 |
11 | 12 | 13 | -------------------------------------------------------------------------------- /src/Redux/AdminFlights/actionType.js: -------------------------------------------------------------------------------- 1 | export const FLIGHT_REQUEST = "FLIGHT_REQUEST"; 2 | export const FLIGHT_FAILURE = "FLIGHT_FAILURE"; 3 | 4 | export const GET_FLIGHT_SUCCESS = "GET_FLIGHT_SUCCESS"; 5 | export const POST_FLIGHT_SUCCESS = "POST_FLIGHT_SUCCESS"; 6 | 7 | export const FETCH_FLIGHTS = "FETCH_FLIGHTS"; 8 | export const DELETE_FLIGHTS = "DELETE_FLIGHTS"; 9 | -------------------------------------------------------------------------------- /src/Redux/AdminHotel/actionType.js: -------------------------------------------------------------------------------- 1 | export const HOTEL_REQUEST = "HOTEL_REQUEST"; 2 | export const HOTEL_FAILURE = "HOTEL_FAILURE"; 3 | 4 | export const GET_HOTEL_SUCCESS = "GET_HOTEL_SUCCESS"; 5 | export const POST_HOTEL_SUCCESS = "POST_HOTEL_SUCCESS"; 6 | 7 | export const NEW_GET_HOTELS_SUCCESS = "NEW_GET_HOTELS_SUCCESS"; 8 | export const DELETE_HOTEL = "DELETE_HOTEL"; 9 | -------------------------------------------------------------------------------- /src/Pages/Hotel/HotelLayout.css: -------------------------------------------------------------------------------- 1 | .HotelLayoutParent { 2 | width: 90%; 3 | margin: auto; 4 | margin-top: 100px; 5 | display: flex; 6 | } 7 | 8 | .HotelLayoutLeft { 9 | /* border: 1px solid black; */ 10 | width: 25%; 11 | height: auto; 12 | padding-left: 5%; 13 | } 14 | .HotelLayoutRight { 15 | /* border: 1px solid red; */ 16 | width: 70%; 17 | } 18 | 19 | .HotelCard { 20 | margin-bottom: 20px; 21 | } 22 | -------------------------------------------------------------------------------- /src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 4 | 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', 5 | sans-serif; 6 | -webkit-font-smoothing: antialiased; 7 | -moz-osx-font-smoothing: grayscale; 8 | } 9 | 10 | code { 11 | font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', 12 | monospace; 13 | } 14 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # production 12 | /build 13 | 14 | # misc 15 | .DS_Store 16 | .env.local 17 | .env.development.local 18 | .env.test.local 19 | .env.production.local 20 | 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | 25 | package-lock.json 26 | .vercel 27 | -------------------------------------------------------------------------------- /src/Redux/Authantication/auth.actionType.js: -------------------------------------------------------------------------------- 1 | export const LOGIN_REQUEST = "LOGIN_REQUEST"; 2 | export const LOGIN_SUCCESSFUL = "LOGIN_SUCCESSFUL"; 3 | export const LOGIN_ERROR = "LOGIN_ERROR"; 4 | 5 | 6 | export const REGISTER_REQUEST = "REGISTER_REQUEST"; 7 | export const REGISTER_SUCCESSFUL = "REGISTER_SUCCESSFUL"; 8 | export const REGISTER_ERROR = "REGISTER_ERROR"; 9 | 10 | 11 | export const GET_USERS = 'GET_USERS' 12 | export const LOGOUT_USER = 'LOGOUT_USER' 13 | 14 | -------------------------------------------------------------------------------- /src/Redux/HotelRedux/actionHotel.js: -------------------------------------------------------------------------------- 1 | import { 2 | GET_HOTEL_FAILURE, 3 | GET_HOTEL_REQUEST, 4 | GET_HOTEL_SUCCESS, 5 | } from "./actionTypeHotel"; 6 | 7 | export const hotelRequestAction = () => { 8 | return { type: GET_HOTEL_REQUEST }; 9 | }; 10 | 11 | export const hotelSuccessAction = (payload) => { 12 | return { type: GET_HOTEL_SUCCESS, payload }; 13 | }; 14 | 15 | export const hotelFailureAction = () => { 16 | return { type: GET_HOTEL_FAILURE }; 17 | }; 18 | -------------------------------------------------------------------------------- /src/App.js: -------------------------------------------------------------------------------- 1 | import "./App.css"; 2 | import { Admin } from "./Pages/Admin/AdminFlight"; 3 | import { AdminHotel } from "./Pages/Admin/AdminHotel"; 4 | import { AllRoutes } from "./Pages/AllRoutes"; 5 | import { Booking } from "./Pages/booking/Booking"; 6 | 7 | function App() { 8 | return ( 9 | <> 10 | 11 | {/* */} 12 | {/* */} 13 | 14 | {/* */} 15 | 16 | ); 17 | } 18 | 19 | export default App; 20 | -------------------------------------------------------------------------------- /src/components/PrivateRoute.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react' 2 | import { useSelector } from 'react-redux' 3 | import { Navigate, useLocation } from 'react-router-dom' 4 | 5 | export const PrivateRoute = ({ children }) => { 6 | const location = useLocation() 7 | const isAuth = useSelector((store) => { 8 | return store.LoginReducer.isAuth 9 | }) 10 | 11 | if(!isAuth){ 12 | return 13 | } 14 | 15 | return children 16 | } 17 | -------------------------------------------------------------------------------- /.vercel/README.txt: -------------------------------------------------------------------------------- 1 | > Why do I have a folder named ".vercel" in my project? 2 | The ".vercel" folder is created when you link a directory to a Vercel project. 3 | 4 | > What does the "project.json" file contain? 5 | The "project.json" file contains: 6 | - The ID of the Vercel project that you linked ("projectId") 7 | - The ID of the user or team your Vercel project is owned by ("orgId") 8 | 9 | > Should I commit the ".vercel" folder? 10 | No, you should not share the ".vercel" folder with anyone. 11 | Upon creation, it will be automatically added to your ".gitignore" file. 12 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactDOM from "react-dom/client"; 3 | import "./index.css"; 4 | import App from "./App"; 5 | import { ChakraProvider } from "@chakra-ui/react"; 6 | import { BrowserRouter } from "react-router-dom"; 7 | import { Provider } from "react-redux"; 8 | import { store } from "./Redux/store"; 9 | 10 | const root = ReactDOM.createRoot(document.getElementById("root")); 11 | root.render( 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | ); 20 | -------------------------------------------------------------------------------- /src/Pages/booking/Booking.jsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import { Footer } from "../../components/Footer"; 3 | import { Navbar } from "../../components/Navbar"; 4 | import "./Booking.Module.css"; 5 | import { BookingDetails } from "./bookingDetails"; 6 | import { Cart } from "./Cart"; 7 | 8 | export const Booking = () => { 9 | return ( 10 | <> 11 | 12 |
13 |

Complete your Booking Process ...

14 | 15 |
16 | 17 | 18 |
19 |
20 |