diff --git a/package-lock.json b/package-lock.json index b7192cb..1110de5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1271,6 +1271,11 @@ } } }, + "@googlemaps/js-api-loader": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@googlemaps/js-api-loader/-/js-api-loader-1.6.0.tgz", + "integrity": "sha512-amuilneCf7q5A/jDUE3ml83c9NjW/3DzIqiBDFIKZcraD0JSKbetkEQa5s57Z6QY7jxcequXgoL9CKJUY1xZ5A==" + }, "@hapi/address": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/@hapi/address/-/address-2.1.4.tgz", @@ -1916,6 +1921,156 @@ "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.9.1.tgz", "integrity": "sha512-DvJbbn3dUgMxDnJLH+RZQPnXak1h4ZVYQ7CWiFWjQwBFkVajT4rfw2PdpHLTSTwxrYfnoEXkuBiwkDm6tPMQeA==" }, + "@reach/auto-id": { + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/@reach/auto-id/-/auto-id-0.10.5.tgz", + "integrity": "sha512-we4/bwjFxJ3F+2eaddQ1HltbKvJ7AB8clkN719El7Zugpn/vOjfPMOVUiBqTmPGLUvkYrq4tpuFwLvk2HyOVHg==", + "requires": { + "@reach/utils": "0.10.5", + "tslib": "^2.0.0" + }, + "dependencies": { + "tslib": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz", + "integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==" + } + } + }, + "@reach/combobox": { + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/@reach/combobox/-/combobox-0.10.5.tgz", + "integrity": "sha512-UrvdELLk+rnxK0o2e+jWmw6b7dteBWAylX4CEHE9KJuBbdwZ1PJY3YIAwJuvWM13Lcll2Pk7OlFJqRT90r2mRg==", + "requires": { + "@reach/auto-id": "0.10.5", + "@reach/descendants": "0.10.5", + "@reach/popover": "0.10.5", + "@reach/portal": "0.10.5", + "@reach/utils": "0.10.5", + "highlight-words-core": "1.2.2", + "prop-types": "^15.7.2", + "tslib": "^2.0.0" + }, + "dependencies": { + "tslib": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz", + "integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==" + } + } + }, + "@reach/descendants": { + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/@reach/descendants/-/descendants-0.10.5.tgz", + "integrity": "sha512-8HhN4DwS/HsPQ+Ym/Ft/XJ1spXBYdE8hqpnbYR9UcU7Nx3oDbTIdhjA6JXXt23t5avYIx2jRa8YHCtVKSHuiwA==", + "requires": { + "@reach/utils": "0.10.5", + "tslib": "^2.0.0" + }, + "dependencies": { + "tslib": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz", + "integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==" + } + } + }, + "@reach/observe-rect": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@reach/observe-rect/-/observe-rect-1.2.0.tgz", + "integrity": "sha512-Ba7HmkFgfQxZqqaeIWWkNK0rEhpxVQHIoVyW1YDSkGsGIXzcaW4deC8B0pZrNSSyLTdIk7y+5olKt5+g0GmFIQ==" + }, + "@reach/popover": { + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/@reach/popover/-/popover-0.10.5.tgz", + "integrity": "sha512-S+qWIsjrN1yMpHjgELhjpdGc4Q3q1plJtXBGGQRxUAjmCUA/5OY7t5w5C8iqMNAEBwCvYXKvK/pLcXFxxLykSw==", + "requires": { + "@reach/portal": "0.10.5", + "@reach/rect": "0.10.5", + "@reach/utils": "0.10.5", + "tabbable": "^4.0.0", + "tslib": "^2.0.0" + }, + "dependencies": { + "tslib": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz", + "integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==" + } + } + }, + "@reach/portal": { + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/@reach/portal/-/portal-0.10.5.tgz", + "integrity": "sha512-K5K8gW99yqDPDCWQjEfSNZAbGOQWSx5AN2lpuR1gDVoz4xyWpTJ0k0LbetYJTDVvLP/InEcR7AU42JaDYDCXQw==", + "requires": { + "@reach/utils": "0.10.5", + "tslib": "^2.0.0" + }, + "dependencies": { + "tslib": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz", + "integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==" + } + } + }, + "@reach/rect": { + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/@reach/rect/-/rect-0.10.5.tgz", + "integrity": "sha512-JBKs2HniYecq5zLO6UFReX28SUBPM3n0aizdNgHuvwZmDcTfNV4jsuJYQLqJ+FbCQsrSHkBxKZqWpfGXY9bUEg==", + "requires": { + "@reach/observe-rect": "1.2.0", + "@reach/utils": "0.10.5", + "prop-types": "^15.7.2", + "tslib": "^2.0.0" + }, + "dependencies": { + "tslib": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz", + "integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==" + } + } + }, + "@reach/utils": { + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/@reach/utils/-/utils-0.10.5.tgz", + "integrity": "sha512-5E/xxQnUbmpI/LrufBAOXjunl96DnqX6B4zC2MO2KH/dRzLug5gM5VuOwV26egsp0jvsSPxojwciOhS43px3qw==", + "requires": { + "@types/warning": "^3.0.0", + "tslib": "^2.0.0", + "warning": "^4.0.3" + }, + "dependencies": { + "tslib": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz", + "integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==" + } + } + }, + "@react-google-maps/api": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/@react-google-maps/api/-/api-1.13.0.tgz", + "integrity": "sha512-mKwXziG5MbOvvcWG53FyZVZ8zjAuPNYkcS/+nYX9STMFNrI96AFq5l/zUn2QifRJnPzE8iO4V1vyMM+Ie9LpGg==", + "requires": { + "@googlemaps/js-api-loader": "1.6.0", + "@react-google-maps/infobox": "1.12.1", + "@react-google-maps/marker-clusterer": "1.12.1", + "invariant": "2.2.4" + } + }, + "@react-google-maps/infobox": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@react-google-maps/infobox/-/infobox-1.12.1.tgz", + "integrity": "sha512-tD/xijqRtKK/LNRzuerzuyvybnRaD8SLgCA064len4/enTo1abhQN215ZYqwbTOn7RgYt9qMgNnwoX//u3xoWw==" + }, + "@react-google-maps/marker-clusterer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@react-google-maps/marker-clusterer/-/marker-clusterer-1.12.1.tgz", + "integrity": "sha512-JBSO5VJuouP/boBnSdRDCWq0UKO7jr3HvZVhis3ew+VGJ/BoCPu3lpU0HDsjjulfng+xwqLfVOIzP3QnvBPdCA==" + }, "@restart/context": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/@restart/context/-/context-2.1.4.tgz", @@ -5108,6 +5263,11 @@ "whatwg-url": "^8.0.0" } }, + "date-fns": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.19.0.tgz", + "integrity": "sha512-X3bf2iTPgCAQp9wvjOQytnf5vO5rESYRXlPIVcgSbtT5OTScPcsf9eZU+B/YIkKAtYr5WeCii58BgATrNitlWg==" + }, "debug": { "version": "4.3.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", @@ -7570,6 +7730,11 @@ "resolved": "https://registry.npmjs.org/hex-color-regex/-/hex-color-regex-1.1.0.tgz", "integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==" }, + "highlight-words-core": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/highlight-words-core/-/highlight-words-core-1.2.2.tgz", + "integrity": "sha512-BXUKIkUuh6cmmxzi5OIbUJxrG8OAk2MqoL1DtO3Wo9D2faJg2ph5ntyuQeLqaHJmzER6H5tllCDA9ZnNe9BVGg==" + }, "history": { "version": "4.10.1", "resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz", @@ -15242,6 +15407,11 @@ "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==" }, + "tabbable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-4.0.0.tgz", + "integrity": "sha512-H1XoH1URcBOa/rZZWxLxHCtOdVUEev+9vo5YdYhC9tCY4wnybX+VQrCYuy9ubkg69fCBxCONJOSLGfw0DWMffQ==" + }, "table": { "version": "6.0.7", "resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz", @@ -15952,6 +16122,11 @@ "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" }, + "use-places-autocomplete": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/use-places-autocomplete/-/use-places-autocomplete-1.9.1.tgz", + "integrity": "sha512-ZIkCob6qFBT5kP5wvtiDHV2Dw+DjlVSOj8RoM0XRkDB95PPQzICTjWHOhe4ClY0gO2Nq1bFG5K2WfIYYlIYtfg==" + }, "util": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", diff --git a/package.json b/package.json index 2879447..0a896a8 100644 --- a/package.json +++ b/package.json @@ -34,9 +34,13 @@ "react-router-dom": "^5.2.0", "react-scripts": "4.0.3", "react-select": "^4.3.0", - "reactstrap": "^8.9.0", "spectre.css": "^0.5.9", "web-vitals": "^1.1.1", + "@reach/combobox": "^0.10.2", + "@react-google-maps/api": "^1.9.0", + "date-fns": "^2.13.0", + "use-places-autocomplete": "^1.3.5", + "reactstrap": "^8.9.0", "yup": "^0.32.9" }, "scripts": { diff --git a/public/assets/locales/en/translations.json b/public/assets/locales/en/translations.json index 8f6e961..54441dd 100644 --- a/public/assets/locales/en/translations.json +++ b/public/assets/locales/en/translations.json @@ -23,11 +23,43 @@ "Nav_Contact_Us": "Contact Us", "Nav_listing_page": "listing-page", "Nav_Login": "Login", +<<<<<<< HEAD "View_Button": "View", "MeetTeam": "Meet the Team", "Sales_Ass":"sales assistant" +======= + "Slogan_1": "YOU ARE NOT BUYING A HOUSE, ", + "Slogan_2": "YOU ARE BUYING A LIFESTYLE. ", + "Info": "Click for Details", + "Home1": "Welcome to Kene's Cribs. Kene's Cribs is a real estator company which provides the clients with the houses.", + "Home2": "The houses limited to the clients are only limited to the clients' dreams. In order to further navigate the", + "Home3": "website, use the navigation bar to switch between pages. Listings page is for browsing houses, Agents page", + "Home4": "is for browsing the estators, the Contact Us page is for the contacting us and the login page is for our", + "Home5": "members who want to benefit from our deals. Above are some houses which can interest you. Feel free to", + "Home6": "click the buttons above to explore the houses you want.", + "Desc": "Description", + "Rooms": "1 Bedroom, 2 Bathroom", + "Danger1": "Message could not send.", + "Danger2": "There are some errors in your contact form.", + "Success1": "The message is successfully sent.", + "Success2": "You contact form will be delivered to our support team.", + "Contact-Title": "Contact to Us", + "Contact-House": "Select an Agent", + "Contact-Agent": "Select a House", + "No-Pref": "No preference", + "Contact-First": "First Name", + "Contact-Last": "Last Name", + "Contact-Mail": "Email Address", + "Contact-Message": "Message", + "Contact-Submit": "Submit", + "Contact-Error1": "Please select an item in the list.", + "Contact-Error2": "Please fill out this field.", + "Contact-Error3": "Invalid email address." + + +>>>>>>> 540f8f4cac411d798ced6e126b65de938da68ad1 } \ No newline at end of file diff --git a/public/assets/locales/fr/translations.json b/public/assets/locales/fr/translations.json index 30d89db..97f8b00 100644 --- a/public/assets/locales/fr/translations.json +++ b/public/assets/locales/fr/translations.json @@ -23,7 +23,37 @@ "Nav_Contact_Us": "Nous contacter", "Nav_listing_page": "page de liste", "Nav_Login": "Connexion", +<<<<<<< HEAD "View_Button": "vue", "MeetTeam": "Rencontrer l'équipe", "Sales_Ass":"assistant des ventes" +======= + "Slogan_1": "VOUS N'ACHETEZ PAS UNE MAISON, ", + "Slogan_2": "VOUS ACHETEZ UN STYLE DE VIE. ", + "Info": "Cliquer pour les détails", + "Home1": "Bienvenue chez Kene's Cribs. Kene's Cribs est une véritable société d'estateur qui fournit les maisons aux clients.", + "Home2": "Les maisons limitées aux clients ne se limitent qu'aux rêves des clients. Afin de mieux naviguer dans site Web, utilisez", + "Home3": "la barre de navigation pour basculer entre les pages. La page des listes sert à parcourir les maisons, la page Agents", + "Home4": "est pour parcourir les estators, la page Contactez-nous est pour nous contacter et la page de connexion est pour notre", + "Home5": "membres qui souhaitent bénéficier de nos offres. Ci-dessus, quelques maisons qui peuvent vous intéresser. N'hésitez", + "Home6": "pas à cliquez sur les boutons ci-dessus pour explorer les maisons que vous souhaitez.", + "Desc": "La Description", + "Rooms": "1 chambre, 2 salles de bains", + "Danger1": "Le message n'a pas pu être envoyé.", + "Danger2": "Il y a des erreurs dans votre formulaire de contact.", + "Success1": "Le message a été envoyé avec succès.", + "Success2": "Votre formulaire de contact sera envoyé à notre équipe d'assistance.", + "Contact-Title": "Contactez-Nous", + "Contact-House": "Sélectionnez un Agent", + "Contact-Agent": "Sélectionnez une Maison", + "No-Pref": "Aucune préférence", + "Contact-First": "Prénom", + "Contact-Last": "Nom de Famille", + "Contact-Mail": "Adresse E-mail", + "Contact-Message": "Le Message", + "Contact-Submit": "Soumettre", + "Contact-Error1": "Veuillez sélectionner un élément dans la liste.", + "Contact-Error2": "Veuillez remplir ce champ.", + "Contact-Error3": "Adresse e-mail invalide." +>>>>>>> 540f8f4cac411d798ced6e126b65de938da68ad1 } \ No newline at end of file diff --git a/src/App.js b/src/App.js index 4050129..75af360 100644 --- a/src/App.js +++ b/src/App.js @@ -3,7 +3,6 @@ import Footer from "./shared-components/footer-component/Footer"; import Navbar from "./shared-components/navbar-component/Navbar"; import { BrowserRouter, Route, Switch } from "react-router-dom"; import i18next from "i18next"; -import { useTranslation } from "react-i18next"; import Cookies from "js-cookie"; import HomePage from "./homePage/Homepage"; import ListingsPage from "./listings-page/ListingsPage"; @@ -31,7 +30,6 @@ function App() { const currentLanguage = langauges.find( (lang) => lang.code === currentLanguageCode ); - const { t } = useTranslation(); useEffect(() => { document.body.dir = currentLanguage.dir || "ltr"; @@ -69,9 +67,6 @@ function App() { -
Welcome to Kene's Cribs. Kene's Cribs is a real estator company which provides the clients with the houses.
- The houses limited to the clients are only limited to the clients' dreams. In order to further navigate the
- website, use the navigation bar to switch between pages. Listings page is for browsing houses, Agents page
- is for browsing the estators, the Contact Us page is for the contacting us and the login page is for our
- members who want to benefit from our deals. Above are some houses which can interest you. Feel free to
- click the buttons above to explore the houses you want.
{t("Home1")}
+ {t("Home2")}
+ {t("Home3")}
+ {t("Home4")}
+ {t("Home5")}
+ {t("Home6")}
{selectedProperty.DESC}
-{selected.DESC}
+- There are some errors in your contact form. -
+ {t("Danger2")} +- You contact form will be delivered to our support team. -
+ {t("Success2")} +