nestiq-component-library 1.1.33 → 1.1.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.es.js
CHANGED
|
@@ -134,9 +134,8 @@ function PropertyDetailsHeader(props) {
|
|
|
134
134
|
var _a, _b, _c, _d, _e;
|
|
135
135
|
var _f = useState(false), showPopUp = _f[0], setShowPopUp = _f[1];
|
|
136
136
|
var area = (_a = props.property) === null || _a === void 0 ? void 0 : _a.propertyArea;
|
|
137
|
-
var
|
|
138
|
-
|
|
139
|
-
};
|
|
137
|
+
var handleOpenPopup = function () { return setShowPopUp(true); };
|
|
138
|
+
var handleClosePopup = function () { return setShowPopUp(false); };
|
|
140
139
|
return (React.createElement("div", { className: "Pheader compact d-flex flex-column flex-md-row d-flex col-12 col-lg-12 mt-5 " },
|
|
141
140
|
React.createElement("div", { className: "header_Text d-flex col-5 col-lg-7 col-md-9 mt-4 ms-4 " },
|
|
142
141
|
React.createElement("strong", null, (_b = props.title) !== null && _b !== void 0 ? _b : "-")),
|
|
@@ -144,7 +143,7 @@ function PropertyDetailsHeader(props) {
|
|
|
144
143
|
React.createElement("img", { src: locationIcon$1, className: "vector me-2", alt: "location Icon" }),
|
|
145
144
|
React.createElement("div", { className: "propText text-truncate col-lg-6 col-md-6 d-flex align-items-center" }, props.property.city)),
|
|
146
145
|
React.createElement("div", { className: "compact2 d-flex col-lg-5 col-md-6 col-sm-5 justify-content-end position-absolute end-0 me-2 mt-4" },
|
|
147
|
-
React.createElement("img", { src: ShareIcon, alt: "share icon", className: "v_share me-3", onClick:
|
|
146
|
+
React.createElement("img", { src: ShareIcon, alt: "share icon", className: "v_share me-3", onClick: handleOpenPopup })),
|
|
148
147
|
React.createElement("div", { className: "compact2 gap-3 gap-md-0 fetch_section d-flex align-items-center flex-column flex-md-row col-lg-5 col-md-6 col-sm-5 justify-content-end position-absolute end-0" },
|
|
149
148
|
props && (React.createElement("div", { className: "propText col-lg-3 col-md-3 h-100 d-flex flex-column align-items-md-center justify-content-center mt-4 mt-md-0" },
|
|
150
149
|
React.createElement("span", { className: "propText2" },
|
|
@@ -162,7 +161,7 @@ function PropertyDetailsHeader(props) {
|
|
|
162
161
|
formatPropertyArea(area !== null && area !== void 0 ? area : 0),
|
|
163
162
|
" m\u00B2"),
|
|
164
163
|
"Grundst\u00FCck"))),
|
|
165
|
-
showPopUp && React.createElement(SharePopup,
|
|
164
|
+
showPopUp && React.createElement(SharePopup, { onClick: function () { return handleClosePopup(); } })));
|
|
166
165
|
}
|
|
167
166
|
|
|
168
167
|
var iconArrowRight = "/static/media/Icon_rightArrow.bced4a705c07148d.svg";
|
package/dist/index.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es.js","sources":["../src/components/Button/Button.tsx","../src/assets/images/icon_close_2.png","../node_modules/style-inject/dist/style-inject.es.js","../src/components/Popup/Popup.tsx","../src/assets/images/icon_share_1.svg","../src/assets/images/locationIconBlack.svg","../src/assets/images/envelope-fill.svg","../src/assets/images/facebook.svg","../src/assets/images/linkedin.svg","../src/assets/images/twitter-x.svg","../src/assets/images/whatsapp.svg","../src/components/SharePopup/SharePopup.tsx","../src/functions/util.ts","../src/components/PropertyDetailsHeader/PropertyDetailsHeader.tsx","../src/assets/images/Icon_rightArrow.svg","../src/assets/images/blackarrow-Right.svg","../src/assets/images/blckarrow-Left.svg","../src/assets/images/chevron-left.svg","../src/assets/images/icon_gallery.svg","../src/assets/images/icon_map.svg","../src/assets/images/layer_icon.svg","../src/assets/images/close.png","../src/components/ImageListPopup/ImageListPopup.tsx","../src/components/FloorPlanPopup/FloorPlanPopup.tsx","../src/components/PropertyImageList/PropertyImageList.tsx","../src/assets/images/LayersIcon.svg","../src/assets/images/locationIcon.svg","../src/assets/images/default-property.jpg","../src/components/PropertyCard/PropertyCard.tsx","../src/components/ToastWrapper/ToastWrapper.tsx"],"sourcesContent":["import React from 'react';\r\n\r\ninterface ButtonProps {\r\n label: string;\r\n}\r\n\r\nconst Button: React.FC<ButtonProps> = ({ label }) => {\r\n return <button>{label}</button>;\r\n};\r\n\r\nexport default Button;\r\n","export default \"/static/media/icon_close_2.e41bb9a4db48e048.png\"","function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import React from \"react\";\r\nimport closeIcon from \"../../assets/images/icon_close_2.png\";\r\nimport \"./Popup.css\";\r\nimport \"../../styles/common.css\";\r\n\r\ninterface PopupProps {\r\n children: React.ReactNode;\r\n onCloseClick: () => void;\r\n}\r\n\r\nconst Popup: React.FC<PopupProps> = ({ onCloseClick, children }) => {\r\n return (\r\n <div className=\"popup-overlay\">\r\n <div className=\"shareSection col-12 d-flex position-relative flex-column mx-auto justify-content-center col-5 col-lg-6 d-flex gap-4\">\r\n <div className=\"end-0 top-0 position-absolute \">\r\n <img\r\n src={closeIcon}\r\n alt=\"close\"\r\n className=\"closeIcon me-2\"\r\n onClick={onCloseClick}\r\n />\r\n </div>\r\n {children}\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Popup;\r\n","export default \"/static/media/icon_share_1.b9ec05630dc1087e.svg\"","export default \"/static/media/locationIconBlack.eb8e9e9226b43573.svg\"","export default \"/static/media/envelope-fill.6669c9d64183941c.svg\"","export default \"/static/media/facebook.ce73eacbfffe8a27.svg\"","export default \"/static/media/linkedin.7539333145b03678.svg\"","export default \"/static/media/twitter-x.48a4ac3f560f0a62.svg\"","export default \"/static/media/whatsapp.28e6b0b24adc9289.svg\"","import React, { useRef, useState } from \"react\";\r\nimport email from \"../../assets/images/envelope-fill.svg\";\r\nimport facebook from \"../../assets/images/facebook.svg\";\r\nimport x from \"../../assets/images/icon_close_2.png\";\r\nimport linkedln from \"../../assets/images/linkedin.svg\";\r\nimport Xtwitter from \"../../assets/images/twitter-x.svg\";\r\nimport whatsapp from \"../../assets/images/whatsapp.svg\";\r\nimport \"./SharePopup.css\";\r\nimport { toast } from \"react-toastify\";\r\nimport \"../../styles/common.css\";\r\n\r\ninterface PopupProps {\r\n onClick:String | any;\r\n}\r\nexport default function SharePopup(props: PopupProps) {\r\n const [showPopUp, setShowPopUp] = useState(true);\r\n\r\n const handleClose = () => {\r\n props.onClick();\r\n };\r\n const urlInputRef = useRef<HTMLInputElement | null>(null);\r\n\r\n const copyToClipboard = () => {\r\n urlInputRef.current!.select();\r\n document.execCommand(\"copy\");\r\n toast.success(\"URL copied to clipboard!\");\r\n };\r\n\r\n return (\r\n <div>\r\n {showPopUp && (\r\n <div className=\"popup-overlay\">\r\n <div className=\"shareSection col-12 d-flex position-relative flex-column mx-auto justify-content-center col-5 col-lg-6 d-flex gap-4\">\r\n <div className=\"end-0 top-0 position-absolute \">\r\n <img\r\n src={x}\r\n alt=\"close\"\r\n className=\"closeIcon me-2\"\r\n onClick={handleClose}\r\n />\r\n </div>\r\n <div className=\"popUpHeader col-lg-12 d-flex justify-content-center mb-2\">\r\n Jetzt teilen und weitersagen!\r\n </div>\r\n <div className=\"h-25 col-lg-12 socialMediaIconsSection d-flex flex-row align-items-center justify-content-center mx-auto\">\r\n <a\r\n href=\"https://twitter.com/intent/tweet?url=https://www.nestiq.de&text=Nestiq\"\r\n className=\"text-decoration-none\"\r\n target=\"blank\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img\r\n src={Xtwitter}\r\n alt=\"twitter\"\r\n className=\"socialMediaIcons\"\r\n />\r\n <span className=\"socialMediaIconText\">X (Twitter)</span>\r\n </div>\r\n </a>\r\n\r\n <a\r\n href=\"https://www.facebook.com/sharer/sharer.php?u=https://www.nestiq.de\"\r\n className=\"text-decoration-none\"\r\n target=\"blank\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img\r\n src={facebook}\r\n alt=\"facebook\"\r\n className=\"socialMediaIcons \"\r\n />\r\n <span className=\"socialMediaIconText\">Facebook</span>\r\n </div>\r\n </a>\r\n\r\n <a\r\n href=\"https://api.whatsapp.com/send?text=https://www.nestiq.de\"\r\n target=\"blank\"\r\n className=\"text-decoration-none\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img\r\n src={whatsapp}\r\n alt=\"whatsapp\"\r\n className=\" socialMediaIcons\"\r\n />\r\n <span className=\"socialMediaIconText\">WhatsApp</span>\r\n </div>\r\n </a>\r\n\r\n <a\r\n href=\"https://www.linkedin.com/shareArticle?mini=true&url=https://www.nestiq.de\"\r\n target=\"blank\"\r\n className=\"text-decoration-none\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img\r\n src={linkedln}\r\n alt=\"linkedin\"\r\n className=\" socialMediaIcons\"\r\n />\r\n <span className=\"socialMediaIconText\">LinkedIn</span>\r\n </div>\r\n </a>\r\n\r\n <a\r\n href=\"https://www.nestiq.de\"\r\n target=\"blank\"\r\n className=\"text-decoration-none\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img src={email} alt=\"email\" className=\" socialMediaIcons\" />\r\n <span className=\"socialMediaIconText\">E-Mail</span>\r\n </div>\r\n </a>\r\n </div>\r\n <div className=\"col-10 mx-auto\">\r\n <div className=\" row align-items-center position-relative\">\r\n <input\r\n ref={urlInputRef}\r\n type=\"text\"\r\n className=\"popup_search-input rounded-4 border border-0 \"\r\n placeholder=\"Enter link here\"\r\n value={window.location.href}\r\n readOnly\r\n />\r\n <button\r\n onClick={copyToClipboard}\r\n className=\"popupcustom-button border border-0 position-absolute me-2 col-lg-3 col-md-3 col-sm-3 rounded-4 fs-6\"\r\n type=\"button\"\r\n id=\"button\"\r\n >\r\n <strong>Kopieren</strong>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n}\r\n","export function formatPrice(number: number): string {\r\n return number.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \".\");\r\n}\r\nexport function formatPropertyArea(area: number | string): string {\r\n if (typeof area === \"number\" || typeof area === \"string\") {\r\n return area\r\n .toString()\r\n .replace(\".\", \",\")\r\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \".\");\r\n } else {\r\n return area;\r\n console.log(\"Area is not a number or string\");\r\n }\r\n}","import React, { useState } from \"react\";\r\n// import { FormattedMessage } from \"react-intl\";\r\nimport ShareIcon from \"../../assets/images/icon_share_1.svg\";\r\nimport locationIcon from \"../../assets/images/locationIconBlack.svg\";\r\nimport \"./PropertyDetailsHeader.css\";\r\nimport SharePopup from \"../SharePopup/SharePopup\";\r\nimport { formatPrice, formatPropertyArea } from \"../../functions/util\";\r\n\r\nexport interface PopupProps {\r\n property: {\r\n city: string;\r\n constructedArea: string;\r\n rooms: string;\r\n propertyArea: number;\r\n askingPrice: number;\r\n };\r\n title: string;\r\n}\r\n\r\nexport default function PropertyDetailsHeader(props: PopupProps) {\r\n const [showPopUp, setShowPopUp] = useState(false);\r\n const area = props.property?.propertyArea;\r\n \r\n const handlePopUp = () => {\r\n setShowPopUp(!showPopUp);\r\n };\r\n\r\n return (\r\n <div className=\"Pheader compact d-flex flex-column flex-md-row d-flex col-12 col-lg-12 mt-5 \">\r\n <div className=\"header_Text d-flex col-5 col-lg-7 col-md-9 mt-4 ms-4 \">\r\n <strong>\r\n {props.title ?? \"-\"}\r\n </strong>\r\n </div>\r\n <div className=\"compact3 position-absolute header_Text text-truncate col-5 col-lg-5 col-md-5 d-flex flex-row ms-4\">\r\n <img src={locationIcon} className=\"vector me-2\" alt=\"location Icon\" />\r\n <div className=\"propText text-truncate col-lg-6 col-md-6 d-flex align-items-center\">\r\n {props.property.city}\r\n </div>\r\n </div>\r\n <div className=\"compact2 d-flex col-lg-5 col-md-6 col-sm-5 justify-content-end position-absolute end-0 me-2 mt-4\">\r\n {/* <img src={Hearticon} alt=\"Location Icon\" className=\"v_share me-3\" /> */}\r\n <img\r\n src={ShareIcon}\r\n alt=\"share icon\"\r\n className=\"v_share me-3\"\r\n onClick={handlePopUp}\r\n />\r\n </div>\r\n <div className=\"compact2 gap-3 gap-md-0 fetch_section d-flex align-items-center flex-column flex-md-row col-lg-5 col-md-6 col-sm-5 justify-content-end position-absolute end-0\">\r\n {props && (\r\n <div className=\"propText col-lg-3 col-md-3 h-100 d-flex flex-column align-items-md-center justify-content-center mt-4 mt-md-0\">\r\n <span className=\"propText2\">\r\n {formatPrice(props.property?.askingPrice ?? 0)}€\r\n </span>\r\n <span>Kaufpreis</span>\r\n </div>\r\n )}\r\n\r\n {props && (\r\n <div className=\"propText col-lg-3 col-md-3 d-flex h-100 align-items-md-center justify-content-center flex-column\">\r\n <span className=\"propText2\">\r\n {formatPropertyArea(props.property.constructedArea) ?? 0} \r\n </span>\r\n <span>Wohnfläche</span>\r\n {/* <FormattedMessage id=\"LIVING_SPACE\" /> */}\r\n </div>\r\n )}\r\n {props && (\r\n <div className=\"propText col-lg-3 col-md-3 d-flex h-100 align-items-center justify-content-center flex-column\">\r\n <span className=\"propText2\">\r\n {props.property.rooms} \r\n </span>\r\n <span>Zimmer</span>\r\n {/* <FormattedMessage id=\"ROOMS\" /> */}\r\n </div>\r\n )}\r\n {props && (\r\n <div className=\"propText col-lg-3 col-md-3 d-flex h-100 align-items-center justify-content-center flex-column\">\r\n <span className=\"propText2\">\r\n {formatPropertyArea(area ?? 0)} m²\r\n </span>\r\n Grundstück\r\n {/* <FormattedMessage id=\"Grundstück\" /> */}\r\n </div>\r\n )}\r\n </div>\r\n {showPopUp && <SharePopup />}\r\n </div>\r\n );\r\n}\r\n","export default \"/static/media/Icon_rightArrow.bced4a705c07148d.svg\"","export default \"/static/media/blackarrow-Right.e585ae62dd55abae.svg\"","export default \"/static/media/blckarrow-Left.e2134741aa368d30.svg\"","export default \"/static/media/chevron-left.04f0a7f16b745c1a.svg\"","export default \"/static/media/icon_gallery.269b721daf2ca907.svg\"","export default \"/static/media/icon_map.2318ec664c3e615e.svg\"","export default \"/static/media/layer_icon.9b56c187199c44b5.svg\"","export default \"/static/media/close.b5ce9141e80c688b.png\"","import \"./ImageListPopup.css\";\r\nimport React, { useRef, useState } from \"react\";\r\nimport blcIconArrowRight from \"../../assets/images/blackarrow-Right.svg\";\r\nimport blcIconArrowLeft from \"../../assets/images/blckarrow-Left.svg\";\r\nimport iconClose from \"../../assets/images/close.png\";\r\nimport \"../../styles/common.css\";\r\n\r\ninterface PopupProps {\r\n pictureUrls: { title: string; url: string }[];\r\n}\r\n\r\nexport default function ImageListPopup(props: PopupProps) {\r\n const [showPopUp, setShowPopUp] = useState(true);\r\n const [currentImageIndex, setCurrentImageIndex] = useState(0);\r\n const imageListRef = useRef<HTMLDivElement | null>(null);\r\n\r\n const handleArrowClickInMainImage = (direction: any) => {\r\n if (props.pictureUrls.length === 0) return;\r\n\r\n let newIndex = currentImageIndex;\r\n if (direction === \"left\") {\r\n newIndex =\r\n (currentImageIndex - 1 + props.pictureUrls.length) %\r\n props.pictureUrls.length;\r\n } else if (direction === \"right\") {\r\n newIndex = (currentImageIndex + 1) % props.pictureUrls.length;\r\n }\r\n\r\n setCurrentImageIndex(newIndex);\r\n\r\n imageListRef.current!.scrollTo({\r\n left: newIndex * 150,\r\n behavior: \"smooth\",\r\n });\r\n };\r\n\r\n const handleClose = () => {\r\n setShowPopUp(false);\r\n };\r\n\r\n return (\r\n <div>\r\n {showPopUp && (\r\n <div className=\"popup-overlay\">\r\n <div className=\" d-flex w-50 flex-column col-6 \">\r\n <div className=\"d-flex align-self-end me-5 mt-5\">\r\n <img\r\n src={iconClose}\r\n alt=\"close\"\r\n className=\"closeIcon mt-5\"\r\n onClick={handleClose}\r\n />\r\n </div>\r\n <span className=\"text-white align-self-center\">\r\n {props.pictureUrls[currentImageIndex].title}\r\n </span>\r\n <div className=\"d-flex justify-content-center\">\r\n <div className=\"p-2 bd-highlight align-self-center align-items-center me-5\">\r\n <div\r\n className=\"rounded-circle border onImageArrow start-0 d-flex \"\r\n role=\"button\"\r\n onClick={() => handleArrowClickInMainImage(\"left\")}\r\n >\r\n <img\r\n src={blcIconArrowLeft}\r\n className=\"blackArrow align-self-center\"\r\n alt=\"Left Arrow\"\r\n />\r\n </div>\r\n </div>\r\n <div className=\"p-2 bd-highlight\">\r\n <div\r\n className=\" rounded-5 mainImage \"\r\n style={{\r\n backgroundImage: `url(${props.pictureUrls[currentImageIndex].url})`,\r\n height: \"350px\",\r\n width: \"600px\",\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n }}\r\n ></div>\r\n </div>\r\n <div className=\"p-2 bd-highlight align-self-center ms-5\">\r\n {\" \"}\r\n <div\r\n role=\"button\"\r\n className=\"rounded-circle border onImageArrow d-flex justify-content-center\"\r\n onClick={() => handleArrowClickInMainImage(\"right\")}\r\n >\r\n <img\r\n src={blcIconArrowRight}\r\n className=\"blackArrow align-self-center\"\r\n alt=\"Right Arrow\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n <div className=\"d-flex flex-row\">\r\n {/* Arrows on the main image */}\r\n </div>\r\n <div className=\"d-flex flex-row gap-4 w-100 secondList \">\r\n <div className=\"col-lg-12 d-flex flex-row p-1 align-self-center mt-5\">\r\n <div className=\"col-12 position-relative d-flex justify-content-center\">\r\n <div\r\n className=\"col-lg-10 rounded-3 h-100 w-100 d-flex flex-row gap-2 overflow-auto \"\r\n ref={imageListRef}\r\n >\r\n {props.pictureUrls.length > 0 && (\r\n <div className=\"col-lg-5 h-100 w-25 d-flex gap-4 flex-row rounded-3\">\r\n {props.pictureUrls.map((picture, index) => (\r\n <div\r\n key={index}\r\n className=\"col-lg-12 h-100 d-flex\"\r\n onClick={() => {\r\n setCurrentImageIndex(index);\r\n imageListRef.current!.scrollTo({\r\n left: index * 150,\r\n behavior: \"smooth\",\r\n });\r\n }}\r\n role=\"button\"\r\n >\r\n <img\r\n src={picture.url}\r\n alt={`Image ${index + 1}`}\r\n className=\"col-12 h-100 rounded-3 object-fit-cover\"\r\n />\r\n </div>\r\n ))}\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n}\r\n","import React, { useEffect, useState } from \"react\";\r\nimport iconClose from \"../../assets/images/close.png\";\r\n\r\ninterface PopupProps {\r\n contentUrl: string;\r\n onCloseClick: () => void;\r\n}\r\n\r\nconst FloorPlanPopup: React.FC<PopupProps> = ({ contentUrl, onCloseClick }) => {\r\n const [isContentImage, setIsContentImage] = useState(false);\r\n\r\n useEffect(() => {\r\n if (contentUrl) {\r\n const fileFormat = contentUrl.split(\".\").pop();\r\n if (\r\n fileFormat === \"png\" ||\r\n fileFormat === \"jpg\" ||\r\n fileFormat === \"jpeg\" ||\r\n fileFormat === \"svg\"\r\n ) {\r\n setIsContentImage(true);\r\n }\r\n }\r\n }, [contentUrl]);\r\n\r\n const downloadButtonClickHandler = (): void => {\r\n // Create a temporary anchor element\r\n const link = document.createElement(\"a\");\r\n link.href = contentUrl;\r\n link.setAttribute(\"download\", \"\"); // This attribute hints the browser to download the file\r\n\r\n // Append the anchor to the body and click it to trigger the download\r\n document.body.appendChild(link);\r\n link.click();\r\n\r\n // Clean up: remove the anchor element\r\n document.body.removeChild(link);\r\n };\r\n return (\r\n <div className=\"popup-overlay\">\r\n <div className=\" d-flex w-50 flex-column col-6 \">\r\n <div className=\"d-flex align-self-end me-5 mt-5\">\r\n <img\r\n src={iconClose}\r\n alt=\"close\"\r\n className=\"closeIcon mt-5\"\r\n onClick={onCloseClick}\r\n />\r\n </div>\r\n <div className=\"d-flex justify-content-center\">\r\n <div className=\"p-2 bd-highlight\">\r\n {isContentImage && (\r\n <div\r\n className=\"rounded-5 mainImage\"\r\n style={{\r\n backgroundImage: `url(${contentUrl})`,\r\n height: \"350px\",\r\n width: \"600px\",\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n }}\r\n ></div>\r\n )}\r\n {!isContentImage && (\r\n <div className=\"text-white text-center\">\r\n No Preview Available\r\n <button\r\n className=\"btn btn-info\"\r\n onClick={downloadButtonClickHandler}\r\n >\r\n {\" \"}\r\n Download{\" \"}\r\n </button>\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default FloorPlanPopup;\r\n","import React, { useRef, useState } from \"react\";\r\nimport iconArrowRight from \"../../assets/images/Icon_rightArrow.svg\";\r\nimport blcIconArrowRight from \"../../assets/images/blackarrow-Right.svg\";\r\nimport blcIconArrowLeft from \"../../assets/images/blckarrow-Left.svg\";\r\nimport iconArrowLeft from \"../../assets/images/chevron-left.svg\";\r\nimport iconGallery from \"../../assets/images/icon_gallery.svg\";\r\nimport iconMap from \"../../assets/images/icon_map.svg\";\r\nimport iconLayers from \"../../assets/images/layer_icon.svg\";\r\nimport \"./PropertyImageList.css\";\r\nimport ImageListPopup from \"../ImageListPopup/ImageListPopup\";\r\nimport PopupProps from \"../ImageListPopup/ImageListPopup\";\r\nimport FloorPlanPopup from \"../FloorPlanPopup/FloorPlanPopup\";\r\n\r\ninterface PopupProps {\r\n pictureUrls: { title: string; url: string }[];\r\n floorPlanUrl: string;\r\n}\r\nexport default function PropertyImageList(prop: PopupProps) {\r\n const [currentImageIndex, setCurrentImageIndex] = useState(0);\r\n const [isImagePopupOpen, setIsImagePopupOpen] = useState(false);\r\n const [isFloorPlanPopupOpen, setIsFloorPlanPopupOpen] = useState(false);\r\n const imageListRef = useRef<HTMLDivElement | null>(null);\r\n\r\n const handleArrowClickInMainImage = (direction: any) => {\r\n if (prop.pictureUrls.length === 0) return;\r\n\r\n let newIndex = currentImageIndex;\r\n if (direction === \"left\") {\r\n newIndex =\r\n (currentImageIndex - 1 + prop.pictureUrls.length) %\r\n prop.pictureUrls.length;\r\n } else if (direction === \"right\") {\r\n newIndex = (currentImageIndex + 1) % prop.pictureUrls.length;\r\n }\r\n\r\n setCurrentImageIndex(newIndex);\r\n\r\n imageListRef.current!.scrollTo({\r\n left: newIndex * 150,\r\n behavior: \"smooth\",\r\n });\r\n };\r\n\r\n const toggleAllPhotos = () => {\r\n setIsImagePopupOpen(!isImagePopupOpen);\r\n };\r\n\r\n const floorPlanClickHandler = () => {\r\n if (prop.floorPlanUrl) {\r\n setIsFloorPlanPopupOpen(true);\r\n }\r\n };\r\n\r\n const floorPlanPopupCloseHandler = () => {\r\n setIsFloorPlanPopupOpen(false);\r\n };\r\n\r\n return (\r\n <div className=\"col-8 Pimagelist \">\r\n <div\r\n className=\"col-12 rounded-5 mainImage d-flex position-relative align-items-center\"\r\n style={{\r\n backgroundImage: `url(${prop.pictureUrls[currentImageIndex]?.url})`,\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n }}\r\n >\r\n {/* Arrows on the main image */}\r\n <div\r\n className=\"rounded-circle border onImageArrow d-flex position-absolute start-0 ms-2 align-items-center justify-content-center\"\r\n role=\"button\"\r\n onClick={() => handleArrowClickInMainImage(\"left\")}\r\n >\r\n <img src={blcIconArrowLeft} className=\"blackArrow\" alt=\"Left Arrow\" />\r\n </div>\r\n <div\r\n role=\"button\"\r\n className=\"rounded-circle border onImageArrow d-flex position-absolute end-0 me-2 align-items-center justify-content-center\"\r\n onClick={() => handleArrowClickInMainImage(\"right\")}\r\n >\r\n <img\r\n src={blcIconArrowRight}\r\n className=\"blackArrow\"\r\n alt=\"Right Arrow\"\r\n />\r\n </div>\r\n </div>\r\n\r\n {/* Image Thumbnails */}\r\n <div className=\"d-none d-md-block\">\r\n <div className=\"mt-5 d-flex flex-row gap-1 col-12 secondList\">\r\n <div className=\"\tcol-lg-6 col-6 d-flex flex-row p-1\">\r\n <div className=\"\t col-12 position-relative d-flex justify-content-center\">\r\n <div\r\n className=\"col-1 h-100 d-flex position-absolute start-0\"\r\n onClick={() => handleArrowClickInMainImage(\"left\")}\r\n role=\"button\"\r\n >\r\n <div className=\"col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3\">\r\n <img\r\n src={iconArrowLeft}\r\n className=\"arroIconColour\"\r\n alt=\"Left Arrow\"\r\n />\r\n </div>\r\n </div>\r\n <div\r\n className=\"col-lg-10 rounded-3 h-100 d-flex flex-row gap-2 overflow-auto ms-1\"\r\n ref={imageListRef}\r\n >\r\n {prop.pictureUrls.length > 0 && (\r\n <div className=\"col-lg-5 h-100 d-flex gap-2 flex-row rounded-3\">\r\n {prop.pictureUrls.map((picture, index) => (\r\n <div\r\n key={index}\r\n className=\"col-lg-12 h-100 d-flex\"\r\n onClick={() => {\r\n setCurrentImageIndex(index);\r\n imageListRef.current!.scrollTo({\r\n left: index * 150,\r\n behavior: \"smooth\",\r\n });\r\n }}\r\n role=\"button\"\r\n >\r\n <img\r\n src={picture.url}\r\n alt={`Image ${index + 1}`}\r\n className=\"col-12 h-100 rounded-3 object-fit-cover\"\r\n />\r\n </div>\r\n ))}\r\n </div>\r\n )}\r\n </div>\r\n <div\r\n className=\"col-1 h-100 d-flex position-absolute end-0 top-0\"\r\n onClick={() => handleArrowClickInMainImage(\"right\")}\r\n role=\"button\"\r\n >\r\n <div className=\"col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3 ms-1\">\r\n <img\r\n src={iconArrowRight}\r\n className=\"arroIconColour\"\r\n alt=\"Right Arrow\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n {/* Buttons for \"Alle Fotos\", \"Grundriss\", \"Karte\" */}\r\n <div className=\"col-7 col-lg-6 d-flex flex-row\">\r\n <div\r\n className=\"col-lg-4 col-4 p-1\"\r\n role=\"button\"\r\n onClick={toggleAllPhotos}\r\n >\r\n <div className=\"border col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3\">\r\n <img src={iconGallery} alt=\"Gallery Icon\" />\r\n <span className=\"listImgText\">Alle Fotos</span>\r\n </div>\r\n </div>\r\n <div\r\n className=\"col-lg-4 col-3 p-1\"\r\n role=\"button\"\r\n onClick={floorPlanClickHandler}\r\n >\r\n <div className=\"border col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3\">\r\n <img src={iconLayers} alt=\"Layers Icon\" />\r\n <span className=\"listImgText\">Grundriss</span>\r\n </div>\r\n </div>\r\n <div\r\n className=\"col-lg-4 col-3 p-1\"\r\n role=\"button\"\r\n onClick={() =>\r\n window.scrollTo({\r\n top: document.documentElement.scrollHeight,\r\n })\r\n }\r\n >\r\n <div className=\"border col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3\">\r\n <img src={iconMap} alt=\"Map Icon\" />\r\n <span className=\"listImgText\">Karte</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n {/* Popup for all photos */}\r\n {isImagePopupOpen && <ImageListPopup pictureUrls={prop.pictureUrls} />}\r\n\r\n {/* Popup for floor plan */}\r\n {isFloorPlanPopupOpen && (\r\n <FloorPlanPopup\r\n contentUrl={prop.floorPlanUrl}\r\n onCloseClick={floorPlanPopupCloseHandler}\r\n />\r\n )}\r\n </div>\r\n );\r\n}\r\n","export default \"/static/media/LayersIcon.34c085c352a2c9c8.svg\"","export default \"/static/media/locationIcon.0af399c78e0cdc20.svg\"","export default \"/static/media/default-property.9987f19670be82b6.jpg\"","import React, { useState } from \"react\";\r\n// import { FormattedMessage } from \"react-intl\";\r\nimport layerIcon from \"../../assets/images/LayersIcon.svg\";\r\nimport heart from \"../../assets/images/heart.svg\";\r\nimport locationIcon from \"../../assets/images/locationIcon.svg\";\r\nimport \"../PropertyCard/PropertyCard.css\";\r\nimport noImageIcon from \"../../assets/images/default-property.jpg\";\r\nimport { formatPrice, formatPropertyArea } from \"../../functions/util\";\r\n\r\ninterface PopupProps {\r\n property: {\r\n city: string;\r\n historicalProtection: boolean;\r\n basement: boolean;\r\n balcony: boolean;\r\n terrace: boolean;\r\n guestBathroom: boolean;\r\n bathrooms: string;\r\n usableArea: string;\r\n id: string;\r\n rooms: string;\r\n constructedArea: string;\r\n evaluation?: {\r\n askingPrice: number;\r\n };\r\n pictures: { contentUrl: string }[];\r\n };\r\n onClick: any;\r\n baseUrl: string;\r\n}\r\n\r\nexport default function PropertyCard(props: PopupProps) {\r\n const [liked, setLiked] = useState(false);\r\n\r\n const handleLike = () => {\r\n setLiked(!liked);\r\n };\r\n const pictureUrl =\r\n props.property.pictures && props.property.pictures.length > 0\r\n ? `${props.baseUrl}${props.property.pictures[0].contentUrl}`\r\n : noImageIcon;\r\n return (\r\n <div\r\n key={props.property.id}\r\n className=\"card-body me-4 mb-4 position-relative cardStyle\"\r\n style={{\r\n backgroundImage: `url(${pictureUrl})`,\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n }}\r\n onClick={props.onClick}\r\n role=\"button\"\r\n >\r\n <div className=\"labelTopClass position-absolute top-0 start-0 col-sm-5 col-lg-8\">\r\n <div className=\"d-flex align-items-center ms-2 mb-1 mt-2 gap-2\">\r\n <label className=\"p-1 firstLabel d-flex flex-row justify-content-center align-items-center\">\r\n <img src={layerIcon} alt=\"Location Icon\" className=\"layersVector\" />\r\n <span className=\"layersText\">{\"Grundriss\"}</span>\r\n </label>\r\n {props.property.historicalProtection && (\r\n <label className=\"thirdLabels d-flex flex-row justify-content-center align-items-center\">\r\n <span className=\"layersText p-1\">{\"Denkmalschutz\"}</span>\r\n </label>\r\n )}\r\n\r\n {props.property.basement && (\r\n <label className=\"secondLabel d-flex flex-row justify-content-center align-items-center\">\r\n <span className=\"layersText p-1\">{\"Keller\"}</span>\r\n </label>\r\n )}\r\n </div>\r\n <div className=\"d-flex align-items-center ms-2 start-0 gap-2\">\r\n {props.property.terrace && (\r\n <label className=\"p-1 thirdLabels d-flex flex-row justify-content-center align-items-center \">\r\n <span className=\"layersText\">{\"Terrace\"}</span>\r\n </label>\r\n )}\r\n {props.property.balcony && (\r\n <label className=\"secondLabel d-flex flex-row justify-content-center align-items-center\">\r\n <span className=\"layersText p-1\">{\"Balkon\"}</span>\r\n </label>\r\n )}\r\n\r\n {props.property.guestBathroom && (\r\n <label className=\"col-1 fourthLabels d-flex flex-row justify-content-center align-items-center \">\r\n <span className=\"layersText p-1\">{\"Gäste-WC\"}</span>\r\n </label>\r\n )}\r\n </div>\r\n </div>\r\n <div className=\"d-flex align-items-center position-absolute top-0 end-0 p-3\">\r\n {/*<img*/}\r\n {/* src={heart}*/}\r\n {/* alt=\" Heart Icon\"*/}\r\n {/* className={`heartVector ${liked ? \"liked\" : \"\"}`}*/}\r\n {/* onClick={handleLike}*/}\r\n {/*/>*/}\r\n </div>\r\n <div className=\"d-flex align-items-center mb-3 position-absolute bottom-0 start-0 p-2\">\r\n <span className=\"Price col-lg-12 col-md-12 col-sm-12 text-truncate p-1\">\r\n {formatPrice(props.property?.evaluation?.askingPrice ?? 0)} €\r\n </span>\r\n </div>\r\n <div className=\"d-flex w-50 align-items-center position-absolute bottom-0 start-0 p-2\">\r\n <img src={locationIcon} alt=\"Location Icon\" className=\"Vector\" />\r\n <span className=\"locationText text-truncate\">\r\n {props.property.city || \"N/A\"}\r\n </span>\r\n </div>\r\n <div className=\"d-flex col-lg-6 col-md-6 col-sm-5 me-lg-0 me-md-0 me-sm-3 justify-content-center mb-2 position-absolute bottom-0 end-0\">\r\n <span className=\"detail col-lg-4 col-md-4 col-sm-6 text-truncate border-end \">\r\n {+props.property.rooms}\r\n <br />\r\n {/* <FormattedMessage id=\"ROOMS\" /> */}\r\n <span>Zimmer</span>\r\n </span>\r\n <span className=\"detail col-lg-3 col-md-3 col-sm-4 text-truncate \">\r\n {+props.property.bathrooms}\r\n <br />\r\n {/* <FormattedMessage\r\n id=\"BATHROOM\"\r\n values={{ itemCount: +props.property.bathrooms }}\r\n /> */}\r\n {/* {+props.property.bathrooms} */}\r\n\r\n <span>Bad</span>\r\n </span>\r\n <span className=\"detail col-lg-5 col-md-5 col-sm-7 text-truncate border-start me-3\">\r\n {formatPropertyArea(props.property?.constructedArea)} m²\r\n <br />\r\n {/* <FormattedMessage id=\"LIVING_SPACE\" /> */}\r\n <span>Wohnfläche</span>\r\n </span>\r\n </div>\r\n </div>\r\n );\r\n}\r\n","import React from \"react\";\r\nimport { ToastContainer, toast } from \"react-toastify\";\r\n\r\n// Utility function to show a toast\r\nexport const showToast = (\r\n message: string,\r\n type: \"info\" | \"success\" | \"warning\" | \"error\" = \"info\",\r\n) => {\r\n toast(message, { type });\r\n};\r\n\r\nconst ToastWrapper: React.FC = () => (\r\n <ToastContainer\r\n position=\"top-right\"\r\n autoClose={5000}\r\n hideProgressBar={false}\r\n closeOnClick\r\n rtl={false}\r\n pauseOnFocusLoss\r\n draggable\r\n pauseOnHover\r\n />\r\n);\r\n\r\nexport default ToastWrapper;\r\n"],"names":["closeIcon","locationIcon"],"mappings":"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","x_google_ignoreList":[2]}
|
|
1
|
+
{"version":3,"file":"index.es.js","sources":["../src/components/Button/Button.tsx","../src/assets/images/icon_close_2.png","../node_modules/style-inject/dist/style-inject.es.js","../src/components/Popup/Popup.tsx","../src/assets/images/icon_share_1.svg","../src/assets/images/locationIconBlack.svg","../src/assets/images/envelope-fill.svg","../src/assets/images/facebook.svg","../src/assets/images/linkedin.svg","../src/assets/images/twitter-x.svg","../src/assets/images/whatsapp.svg","../src/components/SharePopup/SharePopup.tsx","../src/functions/util.ts","../src/components/PropertyDetailsHeader/PropertyDetailsHeader.tsx","../src/assets/images/Icon_rightArrow.svg","../src/assets/images/blackarrow-Right.svg","../src/assets/images/blckarrow-Left.svg","../src/assets/images/chevron-left.svg","../src/assets/images/icon_gallery.svg","../src/assets/images/icon_map.svg","../src/assets/images/layer_icon.svg","../src/assets/images/close.png","../src/components/ImageListPopup/ImageListPopup.tsx","../src/components/FloorPlanPopup/FloorPlanPopup.tsx","../src/components/PropertyImageList/PropertyImageList.tsx","../src/assets/images/LayersIcon.svg","../src/assets/images/locationIcon.svg","../src/assets/images/default-property.jpg","../src/components/PropertyCard/PropertyCard.tsx","../src/components/ToastWrapper/ToastWrapper.tsx"],"sourcesContent":["import React from 'react';\r\n\r\ninterface ButtonProps {\r\n label: string;\r\n}\r\n\r\nconst Button: React.FC<ButtonProps> = ({ label }) => {\r\n return <button>{label}</button>;\r\n};\r\n\r\nexport default Button;\r\n","export default \"/static/media/icon_close_2.e41bb9a4db48e048.png\"","function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import React from \"react\";\r\nimport closeIcon from \"../../assets/images/icon_close_2.png\";\r\nimport \"./Popup.css\";\r\nimport \"../../styles/common.css\";\r\n\r\ninterface PopupProps {\r\n children: React.ReactNode;\r\n onCloseClick: () => void;\r\n}\r\n\r\nconst Popup: React.FC<PopupProps> = ({ onCloseClick, children }) => {\r\n return (\r\n <div className=\"popup-overlay\">\r\n <div className=\"shareSection col-12 d-flex position-relative flex-column mx-auto justify-content-center col-5 col-lg-6 d-flex gap-4\">\r\n <div className=\"end-0 top-0 position-absolute \">\r\n <img\r\n src={closeIcon}\r\n alt=\"close\"\r\n className=\"closeIcon me-2\"\r\n onClick={onCloseClick}\r\n />\r\n </div>\r\n {children}\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Popup;\r\n","export default \"/static/media/icon_share_1.b9ec05630dc1087e.svg\"","export default \"/static/media/locationIconBlack.eb8e9e9226b43573.svg\"","export default \"/static/media/envelope-fill.6669c9d64183941c.svg\"","export default \"/static/media/facebook.ce73eacbfffe8a27.svg\"","export default \"/static/media/linkedin.7539333145b03678.svg\"","export default \"/static/media/twitter-x.48a4ac3f560f0a62.svg\"","export default \"/static/media/whatsapp.28e6b0b24adc9289.svg\"","import React, { useRef, useState } from \"react\";\r\nimport email from \"../../assets/images/envelope-fill.svg\";\r\nimport facebook from \"../../assets/images/facebook.svg\";\r\nimport x from \"../../assets/images/icon_close_2.png\";\r\nimport linkedln from \"../../assets/images/linkedin.svg\";\r\nimport Xtwitter from \"../../assets/images/twitter-x.svg\";\r\nimport whatsapp from \"../../assets/images/whatsapp.svg\";\r\nimport \"./SharePopup.css\";\r\nimport { toast } from \"react-toastify\";\r\nimport \"../../styles/common.css\";\r\n\r\ninterface PopupProps {\r\n onClick: String | any;\r\n}\r\nexport default function SharePopup(props: PopupProps) {\r\n const [showPopUp, setShowPopUp] = useState(true);\r\n\r\n const handleClose = () => {\r\n props.onClick();\r\n };\r\n \r\n const urlInputRef = useRef<HTMLInputElement | null>(null);\r\n\r\n const copyToClipboard = () => {\r\n urlInputRef.current!.select();\r\n document.execCommand(\"copy\");\r\n toast.success(\"URL copied to clipboard!\");\r\n };\r\n\r\n return (\r\n <div>\r\n {showPopUp && (\r\n <div className=\"popup-overlay\">\r\n <div className=\"shareSection col-12 d-flex position-relative flex-column mx-auto justify-content-center col-5 col-lg-6 d-flex gap-4\">\r\n <div className=\"end-0 top-0 position-absolute \">\r\n <img\r\n src={x}\r\n alt=\"close\"\r\n className=\"closeIcon me-2\"\r\n onClick={handleClose}\r\n />\r\n </div>\r\n <div className=\"popUpHeader col-lg-12 d-flex justify-content-center mb-2\">\r\n Jetzt teilen und weitersagen!\r\n </div>\r\n <div className=\"h-25 col-lg-12 socialMediaIconsSection d-flex flex-row align-items-center justify-content-center mx-auto\">\r\n <a\r\n href=\"https://twitter.com/intent/tweet?url=https://www.nestiq.de&text=Nestiq\"\r\n className=\"text-decoration-none\"\r\n target=\"blank\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img\r\n src={Xtwitter}\r\n alt=\"twitter\"\r\n className=\"socialMediaIcons\"\r\n />\r\n <span className=\"socialMediaIconText\">X (Twitter)</span>\r\n </div>\r\n </a>\r\n\r\n <a\r\n href=\"https://www.facebook.com/sharer/sharer.php?u=https://www.nestiq.de\"\r\n className=\"text-decoration-none\"\r\n target=\"blank\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img\r\n src={facebook}\r\n alt=\"facebook\"\r\n className=\"socialMediaIcons \"\r\n />\r\n <span className=\"socialMediaIconText\">Facebook</span>\r\n </div>\r\n </a>\r\n\r\n <a\r\n href=\"https://api.whatsapp.com/send?text=https://www.nestiq.de\"\r\n target=\"blank\"\r\n className=\"text-decoration-none\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img\r\n src={whatsapp}\r\n alt=\"whatsapp\"\r\n className=\" socialMediaIcons\"\r\n />\r\n <span className=\"socialMediaIconText\">WhatsApp</span>\r\n </div>\r\n </a>\r\n\r\n <a\r\n href=\"https://www.linkedin.com/shareArticle?mini=true&url=https://www.nestiq.de\"\r\n target=\"blank\"\r\n className=\"text-decoration-none\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img\r\n src={linkedln}\r\n alt=\"linkedin\"\r\n className=\" socialMediaIcons\"\r\n />\r\n <span className=\"socialMediaIconText\">LinkedIn</span>\r\n </div>\r\n </a>\r\n\r\n <a\r\n href=\"https://www.nestiq.de\"\r\n target=\"blank\"\r\n className=\"text-decoration-none\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img src={email} alt=\"email\" className=\" socialMediaIcons\" />\r\n <span className=\"socialMediaIconText\">E-Mail</span>\r\n </div>\r\n </a>\r\n </div>\r\n <div className=\"col-10 mx-auto\">\r\n <div className=\" row align-items-center position-relative\">\r\n <input\r\n ref={urlInputRef}\r\n type=\"text\"\r\n className=\"popup_search-input rounded-4 border border-0 \"\r\n placeholder=\"Enter link here\"\r\n value={window.location.href}\r\n readOnly\r\n />\r\n <button\r\n onClick={copyToClipboard}\r\n className=\"popupcustom-button border border-0 position-absolute me-2 col-lg-3 col-md-3 col-sm-3 rounded-4 fs-6\"\r\n type=\"button\"\r\n id=\"button\"\r\n >\r\n <strong>Kopieren</strong>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n}\r\n","export function formatPrice(number: number): string {\r\n return number.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \".\");\r\n}\r\nexport function formatPropertyArea(area: number | string): string {\r\n if (typeof area === \"number\" || typeof area === \"string\") {\r\n return area\r\n .toString()\r\n .replace(\".\", \",\")\r\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \".\");\r\n } else {\r\n return area;\r\n console.log(\"Area is not a number or string\");\r\n }\r\n}","import React, { useState } from \"react\";\r\n// import { FormattedMessage } from \"react-intl\";\r\nimport ShareIcon from \"../../assets/images/icon_share_1.svg\";\r\nimport locationIcon from \"../../assets/images/locationIconBlack.svg\";\r\nimport \"./PropertyDetailsHeader.css\";\r\nimport SharePopup from \"../SharePopup/SharePopup\";\r\nimport { formatPrice, formatPropertyArea } from \"../../functions/util\";\r\n\r\nexport interface PopupProps {\r\n property: {\r\n city: string;\r\n constructedArea: string;\r\n rooms: string;\r\n propertyArea: number;\r\n askingPrice: number;\r\n };\r\n title: string;\r\n}\r\n\r\nexport default function PropertyDetailsHeader(props: PopupProps) {\r\n const [showPopUp, setShowPopUp] = useState(false);\r\n const area = props.property?.propertyArea;\r\n \r\n const handleOpenPopup = () => setShowPopUp(true);\r\n\r\n const handleClosePopup = () => setShowPopUp(false);\r\n\r\n return (\r\n <div className=\"Pheader compact d-flex flex-column flex-md-row d-flex col-12 col-lg-12 mt-5 \">\r\n <div className=\"header_Text d-flex col-5 col-lg-7 col-md-9 mt-4 ms-4 \">\r\n <strong>{props.title ?? \"-\"}</strong>\r\n </div>\r\n <div className=\"compact3 position-absolute header_Text text-truncate col-5 col-lg-5 col-md-5 d-flex flex-row ms-4\">\r\n <img src={locationIcon} className=\"vector me-2\" alt=\"location Icon\" />\r\n <div className=\"propText text-truncate col-lg-6 col-md-6 d-flex align-items-center\">\r\n {props.property.city}\r\n </div>\r\n </div>\r\n <div className=\"compact2 d-flex col-lg-5 col-md-6 col-sm-5 justify-content-end position-absolute end-0 me-2 mt-4\">\r\n {/* <img src={Hearticon} alt=\"Location Icon\" className=\"v_share me-3\" /> */}\r\n <img\r\n src={ShareIcon}\r\n alt=\"share icon\"\r\n className=\"v_share me-3\"\r\n onClick={handleOpenPopup}\r\n />\r\n </div>\r\n <div className=\"compact2 gap-3 gap-md-0 fetch_section d-flex align-items-center flex-column flex-md-row col-lg-5 col-md-6 col-sm-5 justify-content-end position-absolute end-0\">\r\n {props && (\r\n <div className=\"propText col-lg-3 col-md-3 h-100 d-flex flex-column align-items-md-center justify-content-center mt-4 mt-md-0\">\r\n <span className=\"propText2\">\r\n {formatPrice(props.property?.askingPrice ?? 0)}€\r\n </span>\r\n <span>Kaufpreis</span>\r\n </div>\r\n )}\r\n\r\n {props && (\r\n <div className=\"propText col-lg-3 col-md-3 d-flex h-100 align-items-md-center justify-content-center flex-column\">\r\n <span className=\"propText2\">\r\n {formatPropertyArea(props.property.constructedArea) ?? 0}\r\n </span>\r\n <span>Wohnfläche</span>\r\n {/* <FormattedMessage id=\"LIVING_SPACE\" /> */}\r\n </div>\r\n )}\r\n {props && (\r\n <div className=\"propText col-lg-3 col-md-3 d-flex h-100 align-items-center justify-content-center flex-column\">\r\n <span className=\"propText2\">{props.property.rooms}</span>\r\n <span>Zimmer</span>\r\n {/* <FormattedMessage id=\"ROOMS\" /> */}\r\n </div>\r\n )}\r\n {props && (\r\n <div className=\"propText col-lg-3 col-md-3 d-flex h-100 align-items-center justify-content-center flex-column\">\r\n <span className=\"propText2\">\r\n {formatPropertyArea(area ?? 0)} m²\r\n </span>\r\n Grundstück\r\n {/* <FormattedMessage id=\"Grundstück\" /> */}\r\n </div>\r\n )}\r\n </div>\r\n {showPopUp && <SharePopup onClick={() => handleClosePopup()} /> }\r\n </div>\r\n );\r\n}\r\n","export default \"/static/media/Icon_rightArrow.bced4a705c07148d.svg\"","export default \"/static/media/blackarrow-Right.e585ae62dd55abae.svg\"","export default \"/static/media/blckarrow-Left.e2134741aa368d30.svg\"","export default \"/static/media/chevron-left.04f0a7f16b745c1a.svg\"","export default \"/static/media/icon_gallery.269b721daf2ca907.svg\"","export default \"/static/media/icon_map.2318ec664c3e615e.svg\"","export default \"/static/media/layer_icon.9b56c187199c44b5.svg\"","export default \"/static/media/close.b5ce9141e80c688b.png\"","import \"./ImageListPopup.css\";\r\nimport React, { useRef, useState } from \"react\";\r\nimport blcIconArrowRight from \"../../assets/images/blackarrow-Right.svg\";\r\nimport blcIconArrowLeft from \"../../assets/images/blckarrow-Left.svg\";\r\nimport iconClose from \"../../assets/images/close.png\";\r\nimport \"../../styles/common.css\";\r\n\r\ninterface PopupProps {\r\n pictureUrls: { title: string; url: string }[];\r\n}\r\n\r\nexport default function ImageListPopup(props: PopupProps) {\r\n const [showPopUp, setShowPopUp] = useState(true);\r\n const [currentImageIndex, setCurrentImageIndex] = useState(0);\r\n const imageListRef = useRef<HTMLDivElement | null>(null);\r\n\r\n const handleArrowClickInMainImage = (direction: any) => {\r\n if (props.pictureUrls.length === 0) return;\r\n\r\n let newIndex = currentImageIndex;\r\n if (direction === \"left\") {\r\n newIndex =\r\n (currentImageIndex - 1 + props.pictureUrls.length) %\r\n props.pictureUrls.length;\r\n } else if (direction === \"right\") {\r\n newIndex = (currentImageIndex + 1) % props.pictureUrls.length;\r\n }\r\n\r\n setCurrentImageIndex(newIndex);\r\n\r\n imageListRef.current!.scrollTo({\r\n left: newIndex * 150,\r\n behavior: \"smooth\",\r\n });\r\n };\r\n\r\n const handleClose = () => {\r\n setShowPopUp(false);\r\n };\r\n\r\n return (\r\n <div>\r\n {showPopUp && (\r\n <div className=\"popup-overlay\">\r\n <div className=\" d-flex w-50 flex-column col-6 \">\r\n <div className=\"d-flex align-self-end me-5 mt-5\">\r\n <img\r\n src={iconClose}\r\n alt=\"close\"\r\n className=\"closeIcon mt-5\"\r\n onClick={handleClose}\r\n />\r\n </div>\r\n <span className=\"text-white align-self-center\">\r\n {props.pictureUrls[currentImageIndex].title}\r\n </span>\r\n <div className=\"d-flex justify-content-center\">\r\n <div className=\"p-2 bd-highlight align-self-center align-items-center me-5\">\r\n <div\r\n className=\"rounded-circle border onImageArrow start-0 d-flex \"\r\n role=\"button\"\r\n onClick={() => handleArrowClickInMainImage(\"left\")}\r\n >\r\n <img\r\n src={blcIconArrowLeft}\r\n className=\"blackArrow align-self-center\"\r\n alt=\"Left Arrow\"\r\n />\r\n </div>\r\n </div>\r\n <div className=\"p-2 bd-highlight\">\r\n <div\r\n className=\" rounded-5 mainImage \"\r\n style={{\r\n backgroundImage: `url(${props.pictureUrls[currentImageIndex].url})`,\r\n height: \"350px\",\r\n width: \"600px\",\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n }}\r\n ></div>\r\n </div>\r\n <div className=\"p-2 bd-highlight align-self-center ms-5\">\r\n {\" \"}\r\n <div\r\n role=\"button\"\r\n className=\"rounded-circle border onImageArrow d-flex justify-content-center\"\r\n onClick={() => handleArrowClickInMainImage(\"right\")}\r\n >\r\n <img\r\n src={blcIconArrowRight}\r\n className=\"blackArrow align-self-center\"\r\n alt=\"Right Arrow\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n <div className=\"d-flex flex-row\">\r\n {/* Arrows on the main image */}\r\n </div>\r\n <div className=\"d-flex flex-row gap-4 w-100 secondList \">\r\n <div className=\"col-lg-12 d-flex flex-row p-1 align-self-center mt-5\">\r\n <div className=\"col-12 position-relative d-flex justify-content-center\">\r\n <div\r\n className=\"col-lg-10 rounded-3 h-100 w-100 d-flex flex-row gap-2 overflow-auto \"\r\n ref={imageListRef}\r\n >\r\n {props.pictureUrls.length > 0 && (\r\n <div className=\"col-lg-5 h-100 w-25 d-flex gap-4 flex-row rounded-3\">\r\n {props.pictureUrls.map((picture, index) => (\r\n <div\r\n key={index}\r\n className=\"col-lg-12 h-100 d-flex\"\r\n onClick={() => {\r\n setCurrentImageIndex(index);\r\n imageListRef.current!.scrollTo({\r\n left: index * 150,\r\n behavior: \"smooth\",\r\n });\r\n }}\r\n role=\"button\"\r\n >\r\n <img\r\n src={picture.url}\r\n alt={`Image ${index + 1}`}\r\n className=\"col-12 h-100 rounded-3 object-fit-cover\"\r\n />\r\n </div>\r\n ))}\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n}\r\n","import React, { useEffect, useState } from \"react\";\r\nimport iconClose from \"../../assets/images/close.png\";\r\n\r\ninterface PopupProps {\r\n contentUrl: string;\r\n onCloseClick: () => void;\r\n}\r\n\r\nconst FloorPlanPopup: React.FC<PopupProps> = ({ contentUrl, onCloseClick }) => {\r\n const [isContentImage, setIsContentImage] = useState(false);\r\n\r\n useEffect(() => {\r\n if (contentUrl) {\r\n const fileFormat = contentUrl.split(\".\").pop();\r\n if (\r\n fileFormat === \"png\" ||\r\n fileFormat === \"jpg\" ||\r\n fileFormat === \"jpeg\" ||\r\n fileFormat === \"svg\"\r\n ) {\r\n setIsContentImage(true);\r\n }\r\n }\r\n }, [contentUrl]);\r\n\r\n const downloadButtonClickHandler = (): void => {\r\n // Create a temporary anchor element\r\n const link = document.createElement(\"a\");\r\n link.href = contentUrl;\r\n link.setAttribute(\"download\", \"\"); // This attribute hints the browser to download the file\r\n\r\n // Append the anchor to the body and click it to trigger the download\r\n document.body.appendChild(link);\r\n link.click();\r\n\r\n // Clean up: remove the anchor element\r\n document.body.removeChild(link);\r\n };\r\n return (\r\n <div className=\"popup-overlay\">\r\n <div className=\" d-flex w-50 flex-column col-6 \">\r\n <div className=\"d-flex align-self-end me-5 mt-5\">\r\n <img\r\n src={iconClose}\r\n alt=\"close\"\r\n className=\"closeIcon mt-5\"\r\n onClick={onCloseClick}\r\n />\r\n </div>\r\n <div className=\"d-flex justify-content-center\">\r\n <div className=\"p-2 bd-highlight\">\r\n {isContentImage && (\r\n <div\r\n className=\"rounded-5 mainImage\"\r\n style={{\r\n backgroundImage: `url(${contentUrl})`,\r\n height: \"350px\",\r\n width: \"600px\",\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n }}\r\n ></div>\r\n )}\r\n {!isContentImage && (\r\n <div className=\"text-white text-center\">\r\n No Preview Available\r\n <button\r\n className=\"btn btn-info\"\r\n onClick={downloadButtonClickHandler}\r\n >\r\n {\" \"}\r\n Download{\" \"}\r\n </button>\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default FloorPlanPopup;\r\n","import React, { useRef, useState } from \"react\";\r\nimport iconArrowRight from \"../../assets/images/Icon_rightArrow.svg\";\r\nimport blcIconArrowRight from \"../../assets/images/blackarrow-Right.svg\";\r\nimport blcIconArrowLeft from \"../../assets/images/blckarrow-Left.svg\";\r\nimport iconArrowLeft from \"../../assets/images/chevron-left.svg\";\r\nimport iconGallery from \"../../assets/images/icon_gallery.svg\";\r\nimport iconMap from \"../../assets/images/icon_map.svg\";\r\nimport iconLayers from \"../../assets/images/layer_icon.svg\";\r\nimport \"./PropertyImageList.css\";\r\nimport ImageListPopup from \"../ImageListPopup/ImageListPopup\";\r\nimport PopupProps from \"../ImageListPopup/ImageListPopup\";\r\nimport FloorPlanPopup from \"../FloorPlanPopup/FloorPlanPopup\";\r\n\r\ninterface PopupProps {\r\n pictureUrls: { title: string; url: string }[];\r\n floorPlanUrl: string;\r\n}\r\nexport default function PropertyImageList(prop: PopupProps) {\r\n const [currentImageIndex, setCurrentImageIndex] = useState(0);\r\n const [isImagePopupOpen, setIsImagePopupOpen] = useState(false);\r\n const [isFloorPlanPopupOpen, setIsFloorPlanPopupOpen] = useState(false);\r\n const imageListRef = useRef<HTMLDivElement | null>(null);\r\n\r\n const handleArrowClickInMainImage = (direction: any) => {\r\n if (prop.pictureUrls.length === 0) return;\r\n\r\n let newIndex = currentImageIndex;\r\n if (direction === \"left\") {\r\n newIndex =\r\n (currentImageIndex - 1 + prop.pictureUrls.length) %\r\n prop.pictureUrls.length;\r\n } else if (direction === \"right\") {\r\n newIndex = (currentImageIndex + 1) % prop.pictureUrls.length;\r\n }\r\n\r\n setCurrentImageIndex(newIndex);\r\n\r\n imageListRef.current!.scrollTo({\r\n left: newIndex * 150,\r\n behavior: \"smooth\",\r\n });\r\n };\r\n\r\n const toggleAllPhotos = () => {\r\n setIsImagePopupOpen(!isImagePopupOpen);\r\n };\r\n\r\n const floorPlanClickHandler = () => {\r\n if (prop.floorPlanUrl) {\r\n setIsFloorPlanPopupOpen(true);\r\n }\r\n };\r\n\r\n const floorPlanPopupCloseHandler = () => {\r\n setIsFloorPlanPopupOpen(false);\r\n };\r\n\r\n return (\r\n <div className=\"col-8 Pimagelist \">\r\n <div\r\n className=\"col-12 rounded-5 mainImage d-flex position-relative align-items-center\"\r\n style={{\r\n backgroundImage: `url(${prop.pictureUrls[currentImageIndex]?.url})`,\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n }}\r\n >\r\n {/* Arrows on the main image */}\r\n <div\r\n className=\"rounded-circle border onImageArrow d-flex position-absolute start-0 ms-2 align-items-center justify-content-center\"\r\n role=\"button\"\r\n onClick={() => handleArrowClickInMainImage(\"left\")}\r\n >\r\n <img src={blcIconArrowLeft} className=\"blackArrow\" alt=\"Left Arrow\" />\r\n </div>\r\n <div\r\n role=\"button\"\r\n className=\"rounded-circle border onImageArrow d-flex position-absolute end-0 me-2 align-items-center justify-content-center\"\r\n onClick={() => handleArrowClickInMainImage(\"right\")}\r\n >\r\n <img\r\n src={blcIconArrowRight}\r\n className=\"blackArrow\"\r\n alt=\"Right Arrow\"\r\n />\r\n </div>\r\n </div>\r\n\r\n {/* Image Thumbnails */}\r\n <div className=\"d-none d-md-block\">\r\n <div className=\"mt-5 d-flex flex-row gap-1 col-12 secondList\">\r\n <div className=\"\tcol-lg-6 col-6 d-flex flex-row p-1\">\r\n <div className=\"\t col-12 position-relative d-flex justify-content-center\">\r\n <div\r\n className=\"col-1 h-100 d-flex position-absolute start-0\"\r\n onClick={() => handleArrowClickInMainImage(\"left\")}\r\n role=\"button\"\r\n >\r\n <div className=\"col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3\">\r\n <img\r\n src={iconArrowLeft}\r\n className=\"arroIconColour\"\r\n alt=\"Left Arrow\"\r\n />\r\n </div>\r\n </div>\r\n <div\r\n className=\"col-lg-10 rounded-3 h-100 d-flex flex-row gap-2 overflow-auto ms-1\"\r\n ref={imageListRef}\r\n >\r\n {prop.pictureUrls.length > 0 && (\r\n <div className=\"col-lg-5 h-100 d-flex gap-2 flex-row rounded-3\">\r\n {prop.pictureUrls.map((picture, index) => (\r\n <div\r\n key={index}\r\n className=\"col-lg-12 h-100 d-flex\"\r\n onClick={() => {\r\n setCurrentImageIndex(index);\r\n imageListRef.current!.scrollTo({\r\n left: index * 150,\r\n behavior: \"smooth\",\r\n });\r\n }}\r\n role=\"button\"\r\n >\r\n <img\r\n src={picture.url}\r\n alt={`Image ${index + 1}`}\r\n className=\"col-12 h-100 rounded-3 object-fit-cover\"\r\n />\r\n </div>\r\n ))}\r\n </div>\r\n )}\r\n </div>\r\n <div\r\n className=\"col-1 h-100 d-flex position-absolute end-0 top-0\"\r\n onClick={() => handleArrowClickInMainImage(\"right\")}\r\n role=\"button\"\r\n >\r\n <div className=\"col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3 ms-1\">\r\n <img\r\n src={iconArrowRight}\r\n className=\"arroIconColour\"\r\n alt=\"Right Arrow\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n {/* Buttons for \"Alle Fotos\", \"Grundriss\", \"Karte\" */}\r\n <div className=\"col-7 col-lg-6 d-flex flex-row\">\r\n <div\r\n className=\"col-lg-4 col-4 p-1\"\r\n role=\"button\"\r\n onClick={toggleAllPhotos}\r\n >\r\n <div className=\"border col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3\">\r\n <img src={iconGallery} alt=\"Gallery Icon\" />\r\n <span className=\"listImgText\">Alle Fotos</span>\r\n </div>\r\n </div>\r\n <div\r\n className=\"col-lg-4 col-3 p-1\"\r\n role=\"button\"\r\n onClick={floorPlanClickHandler}\r\n >\r\n <div className=\"border col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3\">\r\n <img src={iconLayers} alt=\"Layers Icon\" />\r\n <span className=\"listImgText\">Grundriss</span>\r\n </div>\r\n </div>\r\n <div\r\n className=\"col-lg-4 col-3 p-1\"\r\n role=\"button\"\r\n onClick={() =>\r\n window.scrollTo({\r\n top: document.documentElement.scrollHeight,\r\n })\r\n }\r\n >\r\n <div className=\"border col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3\">\r\n <img src={iconMap} alt=\"Map Icon\" />\r\n <span className=\"listImgText\">Karte</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n {/* Popup for all photos */}\r\n {isImagePopupOpen && <ImageListPopup pictureUrls={prop.pictureUrls} />}\r\n\r\n {/* Popup for floor plan */}\r\n {isFloorPlanPopupOpen && (\r\n <FloorPlanPopup\r\n contentUrl={prop.floorPlanUrl}\r\n onCloseClick={floorPlanPopupCloseHandler}\r\n />\r\n )}\r\n </div>\r\n );\r\n}\r\n","export default \"/static/media/LayersIcon.34c085c352a2c9c8.svg\"","export default \"/static/media/locationIcon.0af399c78e0cdc20.svg\"","export default \"/static/media/default-property.9987f19670be82b6.jpg\"","import React, { useState } from \"react\";\r\n// import { FormattedMessage } from \"react-intl\";\r\nimport layerIcon from \"../../assets/images/LayersIcon.svg\";\r\nimport heart from \"../../assets/images/heart.svg\";\r\nimport locationIcon from \"../../assets/images/locationIcon.svg\";\r\nimport \"../PropertyCard/PropertyCard.css\";\r\nimport noImageIcon from \"../../assets/images/default-property.jpg\";\r\nimport { formatPrice, formatPropertyArea } from \"../../functions/util\";\r\n\r\ninterface PopupProps {\r\n property: {\r\n city: string;\r\n historicalProtection: boolean;\r\n basement: boolean;\r\n balcony: boolean;\r\n terrace: boolean;\r\n guestBathroom: boolean;\r\n bathrooms: string;\r\n usableArea: string;\r\n id: string;\r\n rooms: string;\r\n constructedArea: string;\r\n evaluation?: {\r\n askingPrice: number;\r\n };\r\n pictures: { contentUrl: string }[];\r\n };\r\n onClick: any;\r\n baseUrl: string;\r\n}\r\n\r\nexport default function PropertyCard(props: PopupProps) {\r\n const [liked, setLiked] = useState(false);\r\n\r\n const handleLike = () => {\r\n setLiked(!liked);\r\n };\r\n const pictureUrl =\r\n props.property.pictures && props.property.pictures.length > 0\r\n ? `${props.baseUrl}${props.property.pictures[0].contentUrl}`\r\n : noImageIcon;\r\n return (\r\n <div\r\n key={props.property.id}\r\n className=\"card-body me-4 mb-4 position-relative cardStyle\"\r\n style={{\r\n backgroundImage: `url(${pictureUrl})`,\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n }}\r\n onClick={props.onClick}\r\n role=\"button\"\r\n >\r\n <div className=\"labelTopClass position-absolute top-0 start-0 col-sm-5 col-lg-8\">\r\n <div className=\"d-flex align-items-center ms-2 mb-1 mt-2 gap-2\">\r\n <label className=\"p-1 firstLabel d-flex flex-row justify-content-center align-items-center\">\r\n <img src={layerIcon} alt=\"Location Icon\" className=\"layersVector\" />\r\n <span className=\"layersText\">{\"Grundriss\"}</span>\r\n </label>\r\n {props.property.historicalProtection && (\r\n <label className=\"thirdLabels d-flex flex-row justify-content-center align-items-center\">\r\n <span className=\"layersText p-1\">{\"Denkmalschutz\"}</span>\r\n </label>\r\n )}\r\n\r\n {props.property.basement && (\r\n <label className=\"secondLabel d-flex flex-row justify-content-center align-items-center\">\r\n <span className=\"layersText p-1\">{\"Keller\"}</span>\r\n </label>\r\n )}\r\n </div>\r\n <div className=\"d-flex align-items-center ms-2 start-0 gap-2\">\r\n {props.property.terrace && (\r\n <label className=\"p-1 thirdLabels d-flex flex-row justify-content-center align-items-center \">\r\n <span className=\"layersText\">{\"Terrace\"}</span>\r\n </label>\r\n )}\r\n {props.property.balcony && (\r\n <label className=\"secondLabel d-flex flex-row justify-content-center align-items-center\">\r\n <span className=\"layersText p-1\">{\"Balkon\"}</span>\r\n </label>\r\n )}\r\n\r\n {props.property.guestBathroom && (\r\n <label className=\"col-1 fourthLabels d-flex flex-row justify-content-center align-items-center \">\r\n <span className=\"layersText p-1\">{\"Gäste-WC\"}</span>\r\n </label>\r\n )}\r\n </div>\r\n </div>\r\n <div className=\"d-flex align-items-center position-absolute top-0 end-0 p-3\">\r\n {/*<img*/}\r\n {/* src={heart}*/}\r\n {/* alt=\" Heart Icon\"*/}\r\n {/* className={`heartVector ${liked ? \"liked\" : \"\"}`}*/}\r\n {/* onClick={handleLike}*/}\r\n {/*/>*/}\r\n </div>\r\n <div className=\"d-flex align-items-center mb-3 position-absolute bottom-0 start-0 p-2\">\r\n <span className=\"Price col-lg-12 col-md-12 col-sm-12 text-truncate p-1\">\r\n {formatPrice(props.property?.evaluation?.askingPrice ?? 0)} €\r\n </span>\r\n </div>\r\n <div className=\"d-flex w-50 align-items-center position-absolute bottom-0 start-0 p-2\">\r\n <img src={locationIcon} alt=\"Location Icon\" className=\"Vector\" />\r\n <span className=\"locationText text-truncate\">\r\n {props.property.city || \"N/A\"}\r\n </span>\r\n </div>\r\n <div className=\"d-flex col-lg-6 col-md-6 col-sm-5 me-lg-0 me-md-0 me-sm-3 justify-content-center mb-2 position-absolute bottom-0 end-0\">\r\n <span className=\"detail col-lg-4 col-md-4 col-sm-6 text-truncate border-end \">\r\n {+props.property.rooms}\r\n <br />\r\n {/* <FormattedMessage id=\"ROOMS\" /> */}\r\n <span>Zimmer</span>\r\n </span>\r\n <span className=\"detail col-lg-3 col-md-3 col-sm-4 text-truncate \">\r\n {+props.property.bathrooms}\r\n <br />\r\n {/* <FormattedMessage\r\n id=\"BATHROOM\"\r\n values={{ itemCount: +props.property.bathrooms }}\r\n /> */}\r\n {/* {+props.property.bathrooms} */}\r\n\r\n <span>Bad</span>\r\n </span>\r\n <span className=\"detail col-lg-5 col-md-5 col-sm-7 text-truncate border-start me-3\">\r\n {formatPropertyArea(props.property?.constructedArea)} m²\r\n <br />\r\n {/* <FormattedMessage id=\"LIVING_SPACE\" /> */}\r\n <span>Wohnfläche</span>\r\n </span>\r\n </div>\r\n </div>\r\n );\r\n}\r\n","import React from \"react\";\r\nimport { ToastContainer, toast } from \"react-toastify\";\r\n\r\n// Utility function to show a toast\r\nexport const showToast = (\r\n message: string,\r\n type: \"info\" | \"success\" | \"warning\" | \"error\" = \"info\",\r\n) => {\r\n toast(message, { type });\r\n};\r\n\r\nconst ToastWrapper: React.FC = () => (\r\n <ToastContainer\r\n position=\"top-right\"\r\n autoClose={5000}\r\n hideProgressBar={false}\r\n closeOnClick\r\n rtl={false}\r\n pauseOnFocusLoss\r\n draggable\r\n pauseOnHover\r\n />\r\n);\r\n\r\nexport default ToastWrapper;\r\n"],"names":["closeIcon","locationIcon"],"mappings":"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","x_google_ignoreList":[2]}
|
package/dist/index.js
CHANGED
|
@@ -136,9 +136,8 @@ function PropertyDetailsHeader(props) {
|
|
|
136
136
|
var _a, _b, _c, _d, _e;
|
|
137
137
|
var _f = React.useState(false), showPopUp = _f[0], setShowPopUp = _f[1];
|
|
138
138
|
var area = (_a = props.property) === null || _a === void 0 ? void 0 : _a.propertyArea;
|
|
139
|
-
var
|
|
140
|
-
|
|
141
|
-
};
|
|
139
|
+
var handleOpenPopup = function () { return setShowPopUp(true); };
|
|
140
|
+
var handleClosePopup = function () { return setShowPopUp(false); };
|
|
142
141
|
return (React.createElement("div", { className: "Pheader compact d-flex flex-column flex-md-row d-flex col-12 col-lg-12 mt-5 " },
|
|
143
142
|
React.createElement("div", { className: "header_Text d-flex col-5 col-lg-7 col-md-9 mt-4 ms-4 " },
|
|
144
143
|
React.createElement("strong", null, (_b = props.title) !== null && _b !== void 0 ? _b : "-")),
|
|
@@ -146,7 +145,7 @@ function PropertyDetailsHeader(props) {
|
|
|
146
145
|
React.createElement("img", { src: locationIcon$1, className: "vector me-2", alt: "location Icon" }),
|
|
147
146
|
React.createElement("div", { className: "propText text-truncate col-lg-6 col-md-6 d-flex align-items-center" }, props.property.city)),
|
|
148
147
|
React.createElement("div", { className: "compact2 d-flex col-lg-5 col-md-6 col-sm-5 justify-content-end position-absolute end-0 me-2 mt-4" },
|
|
149
|
-
React.createElement("img", { src: ShareIcon, alt: "share icon", className: "v_share me-3", onClick:
|
|
148
|
+
React.createElement("img", { src: ShareIcon, alt: "share icon", className: "v_share me-3", onClick: handleOpenPopup })),
|
|
150
149
|
React.createElement("div", { className: "compact2 gap-3 gap-md-0 fetch_section d-flex align-items-center flex-column flex-md-row col-lg-5 col-md-6 col-sm-5 justify-content-end position-absolute end-0" },
|
|
151
150
|
props && (React.createElement("div", { className: "propText col-lg-3 col-md-3 h-100 d-flex flex-column align-items-md-center justify-content-center mt-4 mt-md-0" },
|
|
152
151
|
React.createElement("span", { className: "propText2" },
|
|
@@ -164,7 +163,7 @@ function PropertyDetailsHeader(props) {
|
|
|
164
163
|
formatPropertyArea(area !== null && area !== void 0 ? area : 0),
|
|
165
164
|
" m\u00B2"),
|
|
166
165
|
"Grundst\u00FCck"))),
|
|
167
|
-
showPopUp && React.createElement(SharePopup,
|
|
166
|
+
showPopUp && React.createElement(SharePopup, { onClick: function () { return handleClosePopup(); } })));
|
|
168
167
|
}
|
|
169
168
|
|
|
170
169
|
var iconArrowRight = "/static/media/Icon_rightArrow.bced4a705c07148d.svg";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/components/Button/Button.tsx","../src/assets/images/icon_close_2.png","../node_modules/style-inject/dist/style-inject.es.js","../src/components/Popup/Popup.tsx","../src/assets/images/icon_share_1.svg","../src/assets/images/locationIconBlack.svg","../src/assets/images/envelope-fill.svg","../src/assets/images/facebook.svg","../src/assets/images/linkedin.svg","../src/assets/images/twitter-x.svg","../src/assets/images/whatsapp.svg","../src/components/SharePopup/SharePopup.tsx","../src/functions/util.ts","../src/components/PropertyDetailsHeader/PropertyDetailsHeader.tsx","../src/assets/images/Icon_rightArrow.svg","../src/assets/images/blackarrow-Right.svg","../src/assets/images/blckarrow-Left.svg","../src/assets/images/chevron-left.svg","../src/assets/images/icon_gallery.svg","../src/assets/images/icon_map.svg","../src/assets/images/layer_icon.svg","../src/assets/images/close.png","../src/components/ImageListPopup/ImageListPopup.tsx","../src/components/FloorPlanPopup/FloorPlanPopup.tsx","../src/components/PropertyImageList/PropertyImageList.tsx","../src/assets/images/LayersIcon.svg","../src/assets/images/locationIcon.svg","../src/assets/images/default-property.jpg","../src/components/PropertyCard/PropertyCard.tsx","../src/components/ToastWrapper/ToastWrapper.tsx"],"sourcesContent":["import React from 'react';\r\n\r\ninterface ButtonProps {\r\n label: string;\r\n}\r\n\r\nconst Button: React.FC<ButtonProps> = ({ label }) => {\r\n return <button>{label}</button>;\r\n};\r\n\r\nexport default Button;\r\n","export default \"/static/media/icon_close_2.e41bb9a4db48e048.png\"","function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import React from \"react\";\r\nimport closeIcon from \"../../assets/images/icon_close_2.png\";\r\nimport \"./Popup.css\";\r\nimport \"../../styles/common.css\";\r\n\r\ninterface PopupProps {\r\n children: React.ReactNode;\r\n onCloseClick: () => void;\r\n}\r\n\r\nconst Popup: React.FC<PopupProps> = ({ onCloseClick, children }) => {\r\n return (\r\n <div className=\"popup-overlay\">\r\n <div className=\"shareSection col-12 d-flex position-relative flex-column mx-auto justify-content-center col-5 col-lg-6 d-flex gap-4\">\r\n <div className=\"end-0 top-0 position-absolute \">\r\n <img\r\n src={closeIcon}\r\n alt=\"close\"\r\n className=\"closeIcon me-2\"\r\n onClick={onCloseClick}\r\n />\r\n </div>\r\n {children}\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Popup;\r\n","export default \"/static/media/icon_share_1.b9ec05630dc1087e.svg\"","export default \"/static/media/locationIconBlack.eb8e9e9226b43573.svg\"","export default \"/static/media/envelope-fill.6669c9d64183941c.svg\"","export default \"/static/media/facebook.ce73eacbfffe8a27.svg\"","export default \"/static/media/linkedin.7539333145b03678.svg\"","export default \"/static/media/twitter-x.48a4ac3f560f0a62.svg\"","export default \"/static/media/whatsapp.28e6b0b24adc9289.svg\"","import React, { useRef, useState } from \"react\";\r\nimport email from \"../../assets/images/envelope-fill.svg\";\r\nimport facebook from \"../../assets/images/facebook.svg\";\r\nimport x from \"../../assets/images/icon_close_2.png\";\r\nimport linkedln from \"../../assets/images/linkedin.svg\";\r\nimport Xtwitter from \"../../assets/images/twitter-x.svg\";\r\nimport whatsapp from \"../../assets/images/whatsapp.svg\";\r\nimport \"./SharePopup.css\";\r\nimport { toast } from \"react-toastify\";\r\nimport \"../../styles/common.css\";\r\n\r\ninterface PopupProps {\r\n onClick:String | any;\r\n}\r\nexport default function SharePopup(props: PopupProps) {\r\n const [showPopUp, setShowPopUp] = useState(true);\r\n\r\n const handleClose = () => {\r\n props.onClick();\r\n };\r\n const urlInputRef = useRef<HTMLInputElement | null>(null);\r\n\r\n const copyToClipboard = () => {\r\n urlInputRef.current!.select();\r\n document.execCommand(\"copy\");\r\n toast.success(\"URL copied to clipboard!\");\r\n };\r\n\r\n return (\r\n <div>\r\n {showPopUp && (\r\n <div className=\"popup-overlay\">\r\n <div className=\"shareSection col-12 d-flex position-relative flex-column mx-auto justify-content-center col-5 col-lg-6 d-flex gap-4\">\r\n <div className=\"end-0 top-0 position-absolute \">\r\n <img\r\n src={x}\r\n alt=\"close\"\r\n className=\"closeIcon me-2\"\r\n onClick={handleClose}\r\n />\r\n </div>\r\n <div className=\"popUpHeader col-lg-12 d-flex justify-content-center mb-2\">\r\n Jetzt teilen und weitersagen!\r\n </div>\r\n <div className=\"h-25 col-lg-12 socialMediaIconsSection d-flex flex-row align-items-center justify-content-center mx-auto\">\r\n <a\r\n href=\"https://twitter.com/intent/tweet?url=https://www.nestiq.de&text=Nestiq\"\r\n className=\"text-decoration-none\"\r\n target=\"blank\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img\r\n src={Xtwitter}\r\n alt=\"twitter\"\r\n className=\"socialMediaIcons\"\r\n />\r\n <span className=\"socialMediaIconText\">X (Twitter)</span>\r\n </div>\r\n </a>\r\n\r\n <a\r\n href=\"https://www.facebook.com/sharer/sharer.php?u=https://www.nestiq.de\"\r\n className=\"text-decoration-none\"\r\n target=\"blank\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img\r\n src={facebook}\r\n alt=\"facebook\"\r\n className=\"socialMediaIcons \"\r\n />\r\n <span className=\"socialMediaIconText\">Facebook</span>\r\n </div>\r\n </a>\r\n\r\n <a\r\n href=\"https://api.whatsapp.com/send?text=https://www.nestiq.de\"\r\n target=\"blank\"\r\n className=\"text-decoration-none\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img\r\n src={whatsapp}\r\n alt=\"whatsapp\"\r\n className=\" socialMediaIcons\"\r\n />\r\n <span className=\"socialMediaIconText\">WhatsApp</span>\r\n </div>\r\n </a>\r\n\r\n <a\r\n href=\"https://www.linkedin.com/shareArticle?mini=true&url=https://www.nestiq.de\"\r\n target=\"blank\"\r\n className=\"text-decoration-none\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img\r\n src={linkedln}\r\n alt=\"linkedin\"\r\n className=\" socialMediaIcons\"\r\n />\r\n <span className=\"socialMediaIconText\">LinkedIn</span>\r\n </div>\r\n </a>\r\n\r\n <a\r\n href=\"https://www.nestiq.de\"\r\n target=\"blank\"\r\n className=\"text-decoration-none\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img src={email} alt=\"email\" className=\" socialMediaIcons\" />\r\n <span className=\"socialMediaIconText\">E-Mail</span>\r\n </div>\r\n </a>\r\n </div>\r\n <div className=\"col-10 mx-auto\">\r\n <div className=\" row align-items-center position-relative\">\r\n <input\r\n ref={urlInputRef}\r\n type=\"text\"\r\n className=\"popup_search-input rounded-4 border border-0 \"\r\n placeholder=\"Enter link here\"\r\n value={window.location.href}\r\n readOnly\r\n />\r\n <button\r\n onClick={copyToClipboard}\r\n className=\"popupcustom-button border border-0 position-absolute me-2 col-lg-3 col-md-3 col-sm-3 rounded-4 fs-6\"\r\n type=\"button\"\r\n id=\"button\"\r\n >\r\n <strong>Kopieren</strong>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n}\r\n","export function formatPrice(number: number): string {\r\n return number.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \".\");\r\n}\r\nexport function formatPropertyArea(area: number | string): string {\r\n if (typeof area === \"number\" || typeof area === \"string\") {\r\n return area\r\n .toString()\r\n .replace(\".\", \",\")\r\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \".\");\r\n } else {\r\n return area;\r\n console.log(\"Area is not a number or string\");\r\n }\r\n}","import React, { useState } from \"react\";\r\n// import { FormattedMessage } from \"react-intl\";\r\nimport ShareIcon from \"../../assets/images/icon_share_1.svg\";\r\nimport locationIcon from \"../../assets/images/locationIconBlack.svg\";\r\nimport \"./PropertyDetailsHeader.css\";\r\nimport SharePopup from \"../SharePopup/SharePopup\";\r\nimport { formatPrice, formatPropertyArea } from \"../../functions/util\";\r\n\r\nexport interface PopupProps {\r\n property: {\r\n city: string;\r\n constructedArea: string;\r\n rooms: string;\r\n propertyArea: number;\r\n askingPrice: number;\r\n };\r\n title: string;\r\n}\r\n\r\nexport default function PropertyDetailsHeader(props: PopupProps) {\r\n const [showPopUp, setShowPopUp] = useState(false);\r\n const area = props.property?.propertyArea;\r\n \r\n const handlePopUp = () => {\r\n setShowPopUp(!showPopUp);\r\n };\r\n\r\n return (\r\n <div className=\"Pheader compact d-flex flex-column flex-md-row d-flex col-12 col-lg-12 mt-5 \">\r\n <div className=\"header_Text d-flex col-5 col-lg-7 col-md-9 mt-4 ms-4 \">\r\n <strong>\r\n {props.title ?? \"-\"}\r\n </strong>\r\n </div>\r\n <div className=\"compact3 position-absolute header_Text text-truncate col-5 col-lg-5 col-md-5 d-flex flex-row ms-4\">\r\n <img src={locationIcon} className=\"vector me-2\" alt=\"location Icon\" />\r\n <div className=\"propText text-truncate col-lg-6 col-md-6 d-flex align-items-center\">\r\n {props.property.city}\r\n </div>\r\n </div>\r\n <div className=\"compact2 d-flex col-lg-5 col-md-6 col-sm-5 justify-content-end position-absolute end-0 me-2 mt-4\">\r\n {/* <img src={Hearticon} alt=\"Location Icon\" className=\"v_share me-3\" /> */}\r\n <img\r\n src={ShareIcon}\r\n alt=\"share icon\"\r\n className=\"v_share me-3\"\r\n onClick={handlePopUp}\r\n />\r\n </div>\r\n <div className=\"compact2 gap-3 gap-md-0 fetch_section d-flex align-items-center flex-column flex-md-row col-lg-5 col-md-6 col-sm-5 justify-content-end position-absolute end-0\">\r\n {props && (\r\n <div className=\"propText col-lg-3 col-md-3 h-100 d-flex flex-column align-items-md-center justify-content-center mt-4 mt-md-0\">\r\n <span className=\"propText2\">\r\n {formatPrice(props.property?.askingPrice ?? 0)}€\r\n </span>\r\n <span>Kaufpreis</span>\r\n </div>\r\n )}\r\n\r\n {props && (\r\n <div className=\"propText col-lg-3 col-md-3 d-flex h-100 align-items-md-center justify-content-center flex-column\">\r\n <span className=\"propText2\">\r\n {formatPropertyArea(props.property.constructedArea) ?? 0} \r\n </span>\r\n <span>Wohnfläche</span>\r\n {/* <FormattedMessage id=\"LIVING_SPACE\" /> */}\r\n </div>\r\n )}\r\n {props && (\r\n <div className=\"propText col-lg-3 col-md-3 d-flex h-100 align-items-center justify-content-center flex-column\">\r\n <span className=\"propText2\">\r\n {props.property.rooms} \r\n </span>\r\n <span>Zimmer</span>\r\n {/* <FormattedMessage id=\"ROOMS\" /> */}\r\n </div>\r\n )}\r\n {props && (\r\n <div className=\"propText col-lg-3 col-md-3 d-flex h-100 align-items-center justify-content-center flex-column\">\r\n <span className=\"propText2\">\r\n {formatPropertyArea(area ?? 0)} m²\r\n </span>\r\n Grundstück\r\n {/* <FormattedMessage id=\"Grundstück\" /> */}\r\n </div>\r\n )}\r\n </div>\r\n {showPopUp && <SharePopup />}\r\n </div>\r\n );\r\n}\r\n","export default \"/static/media/Icon_rightArrow.bced4a705c07148d.svg\"","export default \"/static/media/blackarrow-Right.e585ae62dd55abae.svg\"","export default \"/static/media/blckarrow-Left.e2134741aa368d30.svg\"","export default \"/static/media/chevron-left.04f0a7f16b745c1a.svg\"","export default \"/static/media/icon_gallery.269b721daf2ca907.svg\"","export default \"/static/media/icon_map.2318ec664c3e615e.svg\"","export default \"/static/media/layer_icon.9b56c187199c44b5.svg\"","export default \"/static/media/close.b5ce9141e80c688b.png\"","import \"./ImageListPopup.css\";\r\nimport React, { useRef, useState } from \"react\";\r\nimport blcIconArrowRight from \"../../assets/images/blackarrow-Right.svg\";\r\nimport blcIconArrowLeft from \"../../assets/images/blckarrow-Left.svg\";\r\nimport iconClose from \"../../assets/images/close.png\";\r\nimport \"../../styles/common.css\";\r\n\r\ninterface PopupProps {\r\n pictureUrls: { title: string; url: string }[];\r\n}\r\n\r\nexport default function ImageListPopup(props: PopupProps) {\r\n const [showPopUp, setShowPopUp] = useState(true);\r\n const [currentImageIndex, setCurrentImageIndex] = useState(0);\r\n const imageListRef = useRef<HTMLDivElement | null>(null);\r\n\r\n const handleArrowClickInMainImage = (direction: any) => {\r\n if (props.pictureUrls.length === 0) return;\r\n\r\n let newIndex = currentImageIndex;\r\n if (direction === \"left\") {\r\n newIndex =\r\n (currentImageIndex - 1 + props.pictureUrls.length) %\r\n props.pictureUrls.length;\r\n } else if (direction === \"right\") {\r\n newIndex = (currentImageIndex + 1) % props.pictureUrls.length;\r\n }\r\n\r\n setCurrentImageIndex(newIndex);\r\n\r\n imageListRef.current!.scrollTo({\r\n left: newIndex * 150,\r\n behavior: \"smooth\",\r\n });\r\n };\r\n\r\n const handleClose = () => {\r\n setShowPopUp(false);\r\n };\r\n\r\n return (\r\n <div>\r\n {showPopUp && (\r\n <div className=\"popup-overlay\">\r\n <div className=\" d-flex w-50 flex-column col-6 \">\r\n <div className=\"d-flex align-self-end me-5 mt-5\">\r\n <img\r\n src={iconClose}\r\n alt=\"close\"\r\n className=\"closeIcon mt-5\"\r\n onClick={handleClose}\r\n />\r\n </div>\r\n <span className=\"text-white align-self-center\">\r\n {props.pictureUrls[currentImageIndex].title}\r\n </span>\r\n <div className=\"d-flex justify-content-center\">\r\n <div className=\"p-2 bd-highlight align-self-center align-items-center me-5\">\r\n <div\r\n className=\"rounded-circle border onImageArrow start-0 d-flex \"\r\n role=\"button\"\r\n onClick={() => handleArrowClickInMainImage(\"left\")}\r\n >\r\n <img\r\n src={blcIconArrowLeft}\r\n className=\"blackArrow align-self-center\"\r\n alt=\"Left Arrow\"\r\n />\r\n </div>\r\n </div>\r\n <div className=\"p-2 bd-highlight\">\r\n <div\r\n className=\" rounded-5 mainImage \"\r\n style={{\r\n backgroundImage: `url(${props.pictureUrls[currentImageIndex].url})`,\r\n height: \"350px\",\r\n width: \"600px\",\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n }}\r\n ></div>\r\n </div>\r\n <div className=\"p-2 bd-highlight align-self-center ms-5\">\r\n {\" \"}\r\n <div\r\n role=\"button\"\r\n className=\"rounded-circle border onImageArrow d-flex justify-content-center\"\r\n onClick={() => handleArrowClickInMainImage(\"right\")}\r\n >\r\n <img\r\n src={blcIconArrowRight}\r\n className=\"blackArrow align-self-center\"\r\n alt=\"Right Arrow\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n <div className=\"d-flex flex-row\">\r\n {/* Arrows on the main image */}\r\n </div>\r\n <div className=\"d-flex flex-row gap-4 w-100 secondList \">\r\n <div className=\"col-lg-12 d-flex flex-row p-1 align-self-center mt-5\">\r\n <div className=\"col-12 position-relative d-flex justify-content-center\">\r\n <div\r\n className=\"col-lg-10 rounded-3 h-100 w-100 d-flex flex-row gap-2 overflow-auto \"\r\n ref={imageListRef}\r\n >\r\n {props.pictureUrls.length > 0 && (\r\n <div className=\"col-lg-5 h-100 w-25 d-flex gap-4 flex-row rounded-3\">\r\n {props.pictureUrls.map((picture, index) => (\r\n <div\r\n key={index}\r\n className=\"col-lg-12 h-100 d-flex\"\r\n onClick={() => {\r\n setCurrentImageIndex(index);\r\n imageListRef.current!.scrollTo({\r\n left: index * 150,\r\n behavior: \"smooth\",\r\n });\r\n }}\r\n role=\"button\"\r\n >\r\n <img\r\n src={picture.url}\r\n alt={`Image ${index + 1}`}\r\n className=\"col-12 h-100 rounded-3 object-fit-cover\"\r\n />\r\n </div>\r\n ))}\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n}\r\n","import React, { useEffect, useState } from \"react\";\r\nimport iconClose from \"../../assets/images/close.png\";\r\n\r\ninterface PopupProps {\r\n contentUrl: string;\r\n onCloseClick: () => void;\r\n}\r\n\r\nconst FloorPlanPopup: React.FC<PopupProps> = ({ contentUrl, onCloseClick }) => {\r\n const [isContentImage, setIsContentImage] = useState(false);\r\n\r\n useEffect(() => {\r\n if (contentUrl) {\r\n const fileFormat = contentUrl.split(\".\").pop();\r\n if (\r\n fileFormat === \"png\" ||\r\n fileFormat === \"jpg\" ||\r\n fileFormat === \"jpeg\" ||\r\n fileFormat === \"svg\"\r\n ) {\r\n setIsContentImage(true);\r\n }\r\n }\r\n }, [contentUrl]);\r\n\r\n const downloadButtonClickHandler = (): void => {\r\n // Create a temporary anchor element\r\n const link = document.createElement(\"a\");\r\n link.href = contentUrl;\r\n link.setAttribute(\"download\", \"\"); // This attribute hints the browser to download the file\r\n\r\n // Append the anchor to the body and click it to trigger the download\r\n document.body.appendChild(link);\r\n link.click();\r\n\r\n // Clean up: remove the anchor element\r\n document.body.removeChild(link);\r\n };\r\n return (\r\n <div className=\"popup-overlay\">\r\n <div className=\" d-flex w-50 flex-column col-6 \">\r\n <div className=\"d-flex align-self-end me-5 mt-5\">\r\n <img\r\n src={iconClose}\r\n alt=\"close\"\r\n className=\"closeIcon mt-5\"\r\n onClick={onCloseClick}\r\n />\r\n </div>\r\n <div className=\"d-flex justify-content-center\">\r\n <div className=\"p-2 bd-highlight\">\r\n {isContentImage && (\r\n <div\r\n className=\"rounded-5 mainImage\"\r\n style={{\r\n backgroundImage: `url(${contentUrl})`,\r\n height: \"350px\",\r\n width: \"600px\",\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n }}\r\n ></div>\r\n )}\r\n {!isContentImage && (\r\n <div className=\"text-white text-center\">\r\n No Preview Available\r\n <button\r\n className=\"btn btn-info\"\r\n onClick={downloadButtonClickHandler}\r\n >\r\n {\" \"}\r\n Download{\" \"}\r\n </button>\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default FloorPlanPopup;\r\n","import React, { useRef, useState } from \"react\";\r\nimport iconArrowRight from \"../../assets/images/Icon_rightArrow.svg\";\r\nimport blcIconArrowRight from \"../../assets/images/blackarrow-Right.svg\";\r\nimport blcIconArrowLeft from \"../../assets/images/blckarrow-Left.svg\";\r\nimport iconArrowLeft from \"../../assets/images/chevron-left.svg\";\r\nimport iconGallery from \"../../assets/images/icon_gallery.svg\";\r\nimport iconMap from \"../../assets/images/icon_map.svg\";\r\nimport iconLayers from \"../../assets/images/layer_icon.svg\";\r\nimport \"./PropertyImageList.css\";\r\nimport ImageListPopup from \"../ImageListPopup/ImageListPopup\";\r\nimport PopupProps from \"../ImageListPopup/ImageListPopup\";\r\nimport FloorPlanPopup from \"../FloorPlanPopup/FloorPlanPopup\";\r\n\r\ninterface PopupProps {\r\n pictureUrls: { title: string; url: string }[];\r\n floorPlanUrl: string;\r\n}\r\nexport default function PropertyImageList(prop: PopupProps) {\r\n const [currentImageIndex, setCurrentImageIndex] = useState(0);\r\n const [isImagePopupOpen, setIsImagePopupOpen] = useState(false);\r\n const [isFloorPlanPopupOpen, setIsFloorPlanPopupOpen] = useState(false);\r\n const imageListRef = useRef<HTMLDivElement | null>(null);\r\n\r\n const handleArrowClickInMainImage = (direction: any) => {\r\n if (prop.pictureUrls.length === 0) return;\r\n\r\n let newIndex = currentImageIndex;\r\n if (direction === \"left\") {\r\n newIndex =\r\n (currentImageIndex - 1 + prop.pictureUrls.length) %\r\n prop.pictureUrls.length;\r\n } else if (direction === \"right\") {\r\n newIndex = (currentImageIndex + 1) % prop.pictureUrls.length;\r\n }\r\n\r\n setCurrentImageIndex(newIndex);\r\n\r\n imageListRef.current!.scrollTo({\r\n left: newIndex * 150,\r\n behavior: \"smooth\",\r\n });\r\n };\r\n\r\n const toggleAllPhotos = () => {\r\n setIsImagePopupOpen(!isImagePopupOpen);\r\n };\r\n\r\n const floorPlanClickHandler = () => {\r\n if (prop.floorPlanUrl) {\r\n setIsFloorPlanPopupOpen(true);\r\n }\r\n };\r\n\r\n const floorPlanPopupCloseHandler = () => {\r\n setIsFloorPlanPopupOpen(false);\r\n };\r\n\r\n return (\r\n <div className=\"col-8 Pimagelist \">\r\n <div\r\n className=\"col-12 rounded-5 mainImage d-flex position-relative align-items-center\"\r\n style={{\r\n backgroundImage: `url(${prop.pictureUrls[currentImageIndex]?.url})`,\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n }}\r\n >\r\n {/* Arrows on the main image */}\r\n <div\r\n className=\"rounded-circle border onImageArrow d-flex position-absolute start-0 ms-2 align-items-center justify-content-center\"\r\n role=\"button\"\r\n onClick={() => handleArrowClickInMainImage(\"left\")}\r\n >\r\n <img src={blcIconArrowLeft} className=\"blackArrow\" alt=\"Left Arrow\" />\r\n </div>\r\n <div\r\n role=\"button\"\r\n className=\"rounded-circle border onImageArrow d-flex position-absolute end-0 me-2 align-items-center justify-content-center\"\r\n onClick={() => handleArrowClickInMainImage(\"right\")}\r\n >\r\n <img\r\n src={blcIconArrowRight}\r\n className=\"blackArrow\"\r\n alt=\"Right Arrow\"\r\n />\r\n </div>\r\n </div>\r\n\r\n {/* Image Thumbnails */}\r\n <div className=\"d-none d-md-block\">\r\n <div className=\"mt-5 d-flex flex-row gap-1 col-12 secondList\">\r\n <div className=\"\tcol-lg-6 col-6 d-flex flex-row p-1\">\r\n <div className=\"\t col-12 position-relative d-flex justify-content-center\">\r\n <div\r\n className=\"col-1 h-100 d-flex position-absolute start-0\"\r\n onClick={() => handleArrowClickInMainImage(\"left\")}\r\n role=\"button\"\r\n >\r\n <div className=\"col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3\">\r\n <img\r\n src={iconArrowLeft}\r\n className=\"arroIconColour\"\r\n alt=\"Left Arrow\"\r\n />\r\n </div>\r\n </div>\r\n <div\r\n className=\"col-lg-10 rounded-3 h-100 d-flex flex-row gap-2 overflow-auto ms-1\"\r\n ref={imageListRef}\r\n >\r\n {prop.pictureUrls.length > 0 && (\r\n <div className=\"col-lg-5 h-100 d-flex gap-2 flex-row rounded-3\">\r\n {prop.pictureUrls.map((picture, index) => (\r\n <div\r\n key={index}\r\n className=\"col-lg-12 h-100 d-flex\"\r\n onClick={() => {\r\n setCurrentImageIndex(index);\r\n imageListRef.current!.scrollTo({\r\n left: index * 150,\r\n behavior: \"smooth\",\r\n });\r\n }}\r\n role=\"button\"\r\n >\r\n <img\r\n src={picture.url}\r\n alt={`Image ${index + 1}`}\r\n className=\"col-12 h-100 rounded-3 object-fit-cover\"\r\n />\r\n </div>\r\n ))}\r\n </div>\r\n )}\r\n </div>\r\n <div\r\n className=\"col-1 h-100 d-flex position-absolute end-0 top-0\"\r\n onClick={() => handleArrowClickInMainImage(\"right\")}\r\n role=\"button\"\r\n >\r\n <div className=\"col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3 ms-1\">\r\n <img\r\n src={iconArrowRight}\r\n className=\"arroIconColour\"\r\n alt=\"Right Arrow\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n {/* Buttons for \"Alle Fotos\", \"Grundriss\", \"Karte\" */}\r\n <div className=\"col-7 col-lg-6 d-flex flex-row\">\r\n <div\r\n className=\"col-lg-4 col-4 p-1\"\r\n role=\"button\"\r\n onClick={toggleAllPhotos}\r\n >\r\n <div className=\"border col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3\">\r\n <img src={iconGallery} alt=\"Gallery Icon\" />\r\n <span className=\"listImgText\">Alle Fotos</span>\r\n </div>\r\n </div>\r\n <div\r\n className=\"col-lg-4 col-3 p-1\"\r\n role=\"button\"\r\n onClick={floorPlanClickHandler}\r\n >\r\n <div className=\"border col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3\">\r\n <img src={iconLayers} alt=\"Layers Icon\" />\r\n <span className=\"listImgText\">Grundriss</span>\r\n </div>\r\n </div>\r\n <div\r\n className=\"col-lg-4 col-3 p-1\"\r\n role=\"button\"\r\n onClick={() =>\r\n window.scrollTo({\r\n top: document.documentElement.scrollHeight,\r\n })\r\n }\r\n >\r\n <div className=\"border col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3\">\r\n <img src={iconMap} alt=\"Map Icon\" />\r\n <span className=\"listImgText\">Karte</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n {/* Popup for all photos */}\r\n {isImagePopupOpen && <ImageListPopup pictureUrls={prop.pictureUrls} />}\r\n\r\n {/* Popup for floor plan */}\r\n {isFloorPlanPopupOpen && (\r\n <FloorPlanPopup\r\n contentUrl={prop.floorPlanUrl}\r\n onCloseClick={floorPlanPopupCloseHandler}\r\n />\r\n )}\r\n </div>\r\n );\r\n}\r\n","export default \"/static/media/LayersIcon.34c085c352a2c9c8.svg\"","export default \"/static/media/locationIcon.0af399c78e0cdc20.svg\"","export default \"/static/media/default-property.9987f19670be82b6.jpg\"","import React, { useState } from \"react\";\r\n// import { FormattedMessage } from \"react-intl\";\r\nimport layerIcon from \"../../assets/images/LayersIcon.svg\";\r\nimport heart from \"../../assets/images/heart.svg\";\r\nimport locationIcon from \"../../assets/images/locationIcon.svg\";\r\nimport \"../PropertyCard/PropertyCard.css\";\r\nimport noImageIcon from \"../../assets/images/default-property.jpg\";\r\nimport { formatPrice, formatPropertyArea } from \"../../functions/util\";\r\n\r\ninterface PopupProps {\r\n property: {\r\n city: string;\r\n historicalProtection: boolean;\r\n basement: boolean;\r\n balcony: boolean;\r\n terrace: boolean;\r\n guestBathroom: boolean;\r\n bathrooms: string;\r\n usableArea: string;\r\n id: string;\r\n rooms: string;\r\n constructedArea: string;\r\n evaluation?: {\r\n askingPrice: number;\r\n };\r\n pictures: { contentUrl: string }[];\r\n };\r\n onClick: any;\r\n baseUrl: string;\r\n}\r\n\r\nexport default function PropertyCard(props: PopupProps) {\r\n const [liked, setLiked] = useState(false);\r\n\r\n const handleLike = () => {\r\n setLiked(!liked);\r\n };\r\n const pictureUrl =\r\n props.property.pictures && props.property.pictures.length > 0\r\n ? `${props.baseUrl}${props.property.pictures[0].contentUrl}`\r\n : noImageIcon;\r\n return (\r\n <div\r\n key={props.property.id}\r\n className=\"card-body me-4 mb-4 position-relative cardStyle\"\r\n style={{\r\n backgroundImage: `url(${pictureUrl})`,\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n }}\r\n onClick={props.onClick}\r\n role=\"button\"\r\n >\r\n <div className=\"labelTopClass position-absolute top-0 start-0 col-sm-5 col-lg-8\">\r\n <div className=\"d-flex align-items-center ms-2 mb-1 mt-2 gap-2\">\r\n <label className=\"p-1 firstLabel d-flex flex-row justify-content-center align-items-center\">\r\n <img src={layerIcon} alt=\"Location Icon\" className=\"layersVector\" />\r\n <span className=\"layersText\">{\"Grundriss\"}</span>\r\n </label>\r\n {props.property.historicalProtection && (\r\n <label className=\"thirdLabels d-flex flex-row justify-content-center align-items-center\">\r\n <span className=\"layersText p-1\">{\"Denkmalschutz\"}</span>\r\n </label>\r\n )}\r\n\r\n {props.property.basement && (\r\n <label className=\"secondLabel d-flex flex-row justify-content-center align-items-center\">\r\n <span className=\"layersText p-1\">{\"Keller\"}</span>\r\n </label>\r\n )}\r\n </div>\r\n <div className=\"d-flex align-items-center ms-2 start-0 gap-2\">\r\n {props.property.terrace && (\r\n <label className=\"p-1 thirdLabels d-flex flex-row justify-content-center align-items-center \">\r\n <span className=\"layersText\">{\"Terrace\"}</span>\r\n </label>\r\n )}\r\n {props.property.balcony && (\r\n <label className=\"secondLabel d-flex flex-row justify-content-center align-items-center\">\r\n <span className=\"layersText p-1\">{\"Balkon\"}</span>\r\n </label>\r\n )}\r\n\r\n {props.property.guestBathroom && (\r\n <label className=\"col-1 fourthLabels d-flex flex-row justify-content-center align-items-center \">\r\n <span className=\"layersText p-1\">{\"Gäste-WC\"}</span>\r\n </label>\r\n )}\r\n </div>\r\n </div>\r\n <div className=\"d-flex align-items-center position-absolute top-0 end-0 p-3\">\r\n {/*<img*/}\r\n {/* src={heart}*/}\r\n {/* alt=\" Heart Icon\"*/}\r\n {/* className={`heartVector ${liked ? \"liked\" : \"\"}`}*/}\r\n {/* onClick={handleLike}*/}\r\n {/*/>*/}\r\n </div>\r\n <div className=\"d-flex align-items-center mb-3 position-absolute bottom-0 start-0 p-2\">\r\n <span className=\"Price col-lg-12 col-md-12 col-sm-12 text-truncate p-1\">\r\n {formatPrice(props.property?.evaluation?.askingPrice ?? 0)} €\r\n </span>\r\n </div>\r\n <div className=\"d-flex w-50 align-items-center position-absolute bottom-0 start-0 p-2\">\r\n <img src={locationIcon} alt=\"Location Icon\" className=\"Vector\" />\r\n <span className=\"locationText text-truncate\">\r\n {props.property.city || \"N/A\"}\r\n </span>\r\n </div>\r\n <div className=\"d-flex col-lg-6 col-md-6 col-sm-5 me-lg-0 me-md-0 me-sm-3 justify-content-center mb-2 position-absolute bottom-0 end-0\">\r\n <span className=\"detail col-lg-4 col-md-4 col-sm-6 text-truncate border-end \">\r\n {+props.property.rooms}\r\n <br />\r\n {/* <FormattedMessage id=\"ROOMS\" /> */}\r\n <span>Zimmer</span>\r\n </span>\r\n <span className=\"detail col-lg-3 col-md-3 col-sm-4 text-truncate \">\r\n {+props.property.bathrooms}\r\n <br />\r\n {/* <FormattedMessage\r\n id=\"BATHROOM\"\r\n values={{ itemCount: +props.property.bathrooms }}\r\n /> */}\r\n {/* {+props.property.bathrooms} */}\r\n\r\n <span>Bad</span>\r\n </span>\r\n <span className=\"detail col-lg-5 col-md-5 col-sm-7 text-truncate border-start me-3\">\r\n {formatPropertyArea(props.property?.constructedArea)} m²\r\n <br />\r\n {/* <FormattedMessage id=\"LIVING_SPACE\" /> */}\r\n <span>Wohnfläche</span>\r\n </span>\r\n </div>\r\n </div>\r\n );\r\n}\r\n","import React from \"react\";\r\nimport { ToastContainer, toast } from \"react-toastify\";\r\n\r\n// Utility function to show a toast\r\nexport const showToast = (\r\n message: string,\r\n type: \"info\" | \"success\" | \"warning\" | \"error\" = \"info\",\r\n) => {\r\n toast(message, { type });\r\n};\r\n\r\nconst ToastWrapper: React.FC = () => (\r\n <ToastContainer\r\n position=\"top-right\"\r\n autoClose={5000}\r\n hideProgressBar={false}\r\n closeOnClick\r\n rtl={false}\r\n pauseOnFocusLoss\r\n draggable\r\n pauseOnHover\r\n />\r\n);\r\n\r\nexport default ToastWrapper;\r\n"],"names":["closeIcon","useState","useRef","toast","locationIcon","useEffect","ToastContainer"],"mappings":"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","x_google_ignoreList":[2]}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/components/Button/Button.tsx","../src/assets/images/icon_close_2.png","../node_modules/style-inject/dist/style-inject.es.js","../src/components/Popup/Popup.tsx","../src/assets/images/icon_share_1.svg","../src/assets/images/locationIconBlack.svg","../src/assets/images/envelope-fill.svg","../src/assets/images/facebook.svg","../src/assets/images/linkedin.svg","../src/assets/images/twitter-x.svg","../src/assets/images/whatsapp.svg","../src/components/SharePopup/SharePopup.tsx","../src/functions/util.ts","../src/components/PropertyDetailsHeader/PropertyDetailsHeader.tsx","../src/assets/images/Icon_rightArrow.svg","../src/assets/images/blackarrow-Right.svg","../src/assets/images/blckarrow-Left.svg","../src/assets/images/chevron-left.svg","../src/assets/images/icon_gallery.svg","../src/assets/images/icon_map.svg","../src/assets/images/layer_icon.svg","../src/assets/images/close.png","../src/components/ImageListPopup/ImageListPopup.tsx","../src/components/FloorPlanPopup/FloorPlanPopup.tsx","../src/components/PropertyImageList/PropertyImageList.tsx","../src/assets/images/LayersIcon.svg","../src/assets/images/locationIcon.svg","../src/assets/images/default-property.jpg","../src/components/PropertyCard/PropertyCard.tsx","../src/components/ToastWrapper/ToastWrapper.tsx"],"sourcesContent":["import React from 'react';\r\n\r\ninterface ButtonProps {\r\n label: string;\r\n}\r\n\r\nconst Button: React.FC<ButtonProps> = ({ label }) => {\r\n return <button>{label}</button>;\r\n};\r\n\r\nexport default Button;\r\n","export default \"/static/media/icon_close_2.e41bb9a4db48e048.png\"","function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import React from \"react\";\r\nimport closeIcon from \"../../assets/images/icon_close_2.png\";\r\nimport \"./Popup.css\";\r\nimport \"../../styles/common.css\";\r\n\r\ninterface PopupProps {\r\n children: React.ReactNode;\r\n onCloseClick: () => void;\r\n}\r\n\r\nconst Popup: React.FC<PopupProps> = ({ onCloseClick, children }) => {\r\n return (\r\n <div className=\"popup-overlay\">\r\n <div className=\"shareSection col-12 d-flex position-relative flex-column mx-auto justify-content-center col-5 col-lg-6 d-flex gap-4\">\r\n <div className=\"end-0 top-0 position-absolute \">\r\n <img\r\n src={closeIcon}\r\n alt=\"close\"\r\n className=\"closeIcon me-2\"\r\n onClick={onCloseClick}\r\n />\r\n </div>\r\n {children}\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Popup;\r\n","export default \"/static/media/icon_share_1.b9ec05630dc1087e.svg\"","export default \"/static/media/locationIconBlack.eb8e9e9226b43573.svg\"","export default \"/static/media/envelope-fill.6669c9d64183941c.svg\"","export default \"/static/media/facebook.ce73eacbfffe8a27.svg\"","export default \"/static/media/linkedin.7539333145b03678.svg\"","export default \"/static/media/twitter-x.48a4ac3f560f0a62.svg\"","export default \"/static/media/whatsapp.28e6b0b24adc9289.svg\"","import React, { useRef, useState } from \"react\";\r\nimport email from \"../../assets/images/envelope-fill.svg\";\r\nimport facebook from \"../../assets/images/facebook.svg\";\r\nimport x from \"../../assets/images/icon_close_2.png\";\r\nimport linkedln from \"../../assets/images/linkedin.svg\";\r\nimport Xtwitter from \"../../assets/images/twitter-x.svg\";\r\nimport whatsapp from \"../../assets/images/whatsapp.svg\";\r\nimport \"./SharePopup.css\";\r\nimport { toast } from \"react-toastify\";\r\nimport \"../../styles/common.css\";\r\n\r\ninterface PopupProps {\r\n onClick: String | any;\r\n}\r\nexport default function SharePopup(props: PopupProps) {\r\n const [showPopUp, setShowPopUp] = useState(true);\r\n\r\n const handleClose = () => {\r\n props.onClick();\r\n };\r\n \r\n const urlInputRef = useRef<HTMLInputElement | null>(null);\r\n\r\n const copyToClipboard = () => {\r\n urlInputRef.current!.select();\r\n document.execCommand(\"copy\");\r\n toast.success(\"URL copied to clipboard!\");\r\n };\r\n\r\n return (\r\n <div>\r\n {showPopUp && (\r\n <div className=\"popup-overlay\">\r\n <div className=\"shareSection col-12 d-flex position-relative flex-column mx-auto justify-content-center col-5 col-lg-6 d-flex gap-4\">\r\n <div className=\"end-0 top-0 position-absolute \">\r\n <img\r\n src={x}\r\n alt=\"close\"\r\n className=\"closeIcon me-2\"\r\n onClick={handleClose}\r\n />\r\n </div>\r\n <div className=\"popUpHeader col-lg-12 d-flex justify-content-center mb-2\">\r\n Jetzt teilen und weitersagen!\r\n </div>\r\n <div className=\"h-25 col-lg-12 socialMediaIconsSection d-flex flex-row align-items-center justify-content-center mx-auto\">\r\n <a\r\n href=\"https://twitter.com/intent/tweet?url=https://www.nestiq.de&text=Nestiq\"\r\n className=\"text-decoration-none\"\r\n target=\"blank\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img\r\n src={Xtwitter}\r\n alt=\"twitter\"\r\n className=\"socialMediaIcons\"\r\n />\r\n <span className=\"socialMediaIconText\">X (Twitter)</span>\r\n </div>\r\n </a>\r\n\r\n <a\r\n href=\"https://www.facebook.com/sharer/sharer.php?u=https://www.nestiq.de\"\r\n className=\"text-decoration-none\"\r\n target=\"blank\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img\r\n src={facebook}\r\n alt=\"facebook\"\r\n className=\"socialMediaIcons \"\r\n />\r\n <span className=\"socialMediaIconText\">Facebook</span>\r\n </div>\r\n </a>\r\n\r\n <a\r\n href=\"https://api.whatsapp.com/send?text=https://www.nestiq.de\"\r\n target=\"blank\"\r\n className=\"text-decoration-none\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img\r\n src={whatsapp}\r\n alt=\"whatsapp\"\r\n className=\" socialMediaIcons\"\r\n />\r\n <span className=\"socialMediaIconText\">WhatsApp</span>\r\n </div>\r\n </a>\r\n\r\n <a\r\n href=\"https://www.linkedin.com/shareArticle?mini=true&url=https://www.nestiq.de\"\r\n target=\"blank\"\r\n className=\"text-decoration-none\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img\r\n src={linkedln}\r\n alt=\"linkedin\"\r\n className=\" socialMediaIcons\"\r\n />\r\n <span className=\"socialMediaIconText\">LinkedIn</span>\r\n </div>\r\n </a>\r\n\r\n <a\r\n href=\"https://www.nestiq.de\"\r\n target=\"blank\"\r\n className=\"text-decoration-none\"\r\n >\r\n <div className=\" flex-column d-flex align-items-center\">\r\n <img src={email} alt=\"email\" className=\" socialMediaIcons\" />\r\n <span className=\"socialMediaIconText\">E-Mail</span>\r\n </div>\r\n </a>\r\n </div>\r\n <div className=\"col-10 mx-auto\">\r\n <div className=\" row align-items-center position-relative\">\r\n <input\r\n ref={urlInputRef}\r\n type=\"text\"\r\n className=\"popup_search-input rounded-4 border border-0 \"\r\n placeholder=\"Enter link here\"\r\n value={window.location.href}\r\n readOnly\r\n />\r\n <button\r\n onClick={copyToClipboard}\r\n className=\"popupcustom-button border border-0 position-absolute me-2 col-lg-3 col-md-3 col-sm-3 rounded-4 fs-6\"\r\n type=\"button\"\r\n id=\"button\"\r\n >\r\n <strong>Kopieren</strong>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n}\r\n","export function formatPrice(number: number): string {\r\n return number.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \".\");\r\n}\r\nexport function formatPropertyArea(area: number | string): string {\r\n if (typeof area === \"number\" || typeof area === \"string\") {\r\n return area\r\n .toString()\r\n .replace(\".\", \",\")\r\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, \".\");\r\n } else {\r\n return area;\r\n console.log(\"Area is not a number or string\");\r\n }\r\n}","import React, { useState } from \"react\";\r\n// import { FormattedMessage } from \"react-intl\";\r\nimport ShareIcon from \"../../assets/images/icon_share_1.svg\";\r\nimport locationIcon from \"../../assets/images/locationIconBlack.svg\";\r\nimport \"./PropertyDetailsHeader.css\";\r\nimport SharePopup from \"../SharePopup/SharePopup\";\r\nimport { formatPrice, formatPropertyArea } from \"../../functions/util\";\r\n\r\nexport interface PopupProps {\r\n property: {\r\n city: string;\r\n constructedArea: string;\r\n rooms: string;\r\n propertyArea: number;\r\n askingPrice: number;\r\n };\r\n title: string;\r\n}\r\n\r\nexport default function PropertyDetailsHeader(props: PopupProps) {\r\n const [showPopUp, setShowPopUp] = useState(false);\r\n const area = props.property?.propertyArea;\r\n \r\n const handleOpenPopup = () => setShowPopUp(true);\r\n\r\n const handleClosePopup = () => setShowPopUp(false);\r\n\r\n return (\r\n <div className=\"Pheader compact d-flex flex-column flex-md-row d-flex col-12 col-lg-12 mt-5 \">\r\n <div className=\"header_Text d-flex col-5 col-lg-7 col-md-9 mt-4 ms-4 \">\r\n <strong>{props.title ?? \"-\"}</strong>\r\n </div>\r\n <div className=\"compact3 position-absolute header_Text text-truncate col-5 col-lg-5 col-md-5 d-flex flex-row ms-4\">\r\n <img src={locationIcon} className=\"vector me-2\" alt=\"location Icon\" />\r\n <div className=\"propText text-truncate col-lg-6 col-md-6 d-flex align-items-center\">\r\n {props.property.city}\r\n </div>\r\n </div>\r\n <div className=\"compact2 d-flex col-lg-5 col-md-6 col-sm-5 justify-content-end position-absolute end-0 me-2 mt-4\">\r\n {/* <img src={Hearticon} alt=\"Location Icon\" className=\"v_share me-3\" /> */}\r\n <img\r\n src={ShareIcon}\r\n alt=\"share icon\"\r\n className=\"v_share me-3\"\r\n onClick={handleOpenPopup}\r\n />\r\n </div>\r\n <div className=\"compact2 gap-3 gap-md-0 fetch_section d-flex align-items-center flex-column flex-md-row col-lg-5 col-md-6 col-sm-5 justify-content-end position-absolute end-0\">\r\n {props && (\r\n <div className=\"propText col-lg-3 col-md-3 h-100 d-flex flex-column align-items-md-center justify-content-center mt-4 mt-md-0\">\r\n <span className=\"propText2\">\r\n {formatPrice(props.property?.askingPrice ?? 0)}€\r\n </span>\r\n <span>Kaufpreis</span>\r\n </div>\r\n )}\r\n\r\n {props && (\r\n <div className=\"propText col-lg-3 col-md-3 d-flex h-100 align-items-md-center justify-content-center flex-column\">\r\n <span className=\"propText2\">\r\n {formatPropertyArea(props.property.constructedArea) ?? 0}\r\n </span>\r\n <span>Wohnfläche</span>\r\n {/* <FormattedMessage id=\"LIVING_SPACE\" /> */}\r\n </div>\r\n )}\r\n {props && (\r\n <div className=\"propText col-lg-3 col-md-3 d-flex h-100 align-items-center justify-content-center flex-column\">\r\n <span className=\"propText2\">{props.property.rooms}</span>\r\n <span>Zimmer</span>\r\n {/* <FormattedMessage id=\"ROOMS\" /> */}\r\n </div>\r\n )}\r\n {props && (\r\n <div className=\"propText col-lg-3 col-md-3 d-flex h-100 align-items-center justify-content-center flex-column\">\r\n <span className=\"propText2\">\r\n {formatPropertyArea(area ?? 0)} m²\r\n </span>\r\n Grundstück\r\n {/* <FormattedMessage id=\"Grundstück\" /> */}\r\n </div>\r\n )}\r\n </div>\r\n {showPopUp && <SharePopup onClick={() => handleClosePopup()} /> }\r\n </div>\r\n );\r\n}\r\n","export default \"/static/media/Icon_rightArrow.bced4a705c07148d.svg\"","export default \"/static/media/blackarrow-Right.e585ae62dd55abae.svg\"","export default \"/static/media/blckarrow-Left.e2134741aa368d30.svg\"","export default \"/static/media/chevron-left.04f0a7f16b745c1a.svg\"","export default \"/static/media/icon_gallery.269b721daf2ca907.svg\"","export default \"/static/media/icon_map.2318ec664c3e615e.svg\"","export default \"/static/media/layer_icon.9b56c187199c44b5.svg\"","export default \"/static/media/close.b5ce9141e80c688b.png\"","import \"./ImageListPopup.css\";\r\nimport React, { useRef, useState } from \"react\";\r\nimport blcIconArrowRight from \"../../assets/images/blackarrow-Right.svg\";\r\nimport blcIconArrowLeft from \"../../assets/images/blckarrow-Left.svg\";\r\nimport iconClose from \"../../assets/images/close.png\";\r\nimport \"../../styles/common.css\";\r\n\r\ninterface PopupProps {\r\n pictureUrls: { title: string; url: string }[];\r\n}\r\n\r\nexport default function ImageListPopup(props: PopupProps) {\r\n const [showPopUp, setShowPopUp] = useState(true);\r\n const [currentImageIndex, setCurrentImageIndex] = useState(0);\r\n const imageListRef = useRef<HTMLDivElement | null>(null);\r\n\r\n const handleArrowClickInMainImage = (direction: any) => {\r\n if (props.pictureUrls.length === 0) return;\r\n\r\n let newIndex = currentImageIndex;\r\n if (direction === \"left\") {\r\n newIndex =\r\n (currentImageIndex - 1 + props.pictureUrls.length) %\r\n props.pictureUrls.length;\r\n } else if (direction === \"right\") {\r\n newIndex = (currentImageIndex + 1) % props.pictureUrls.length;\r\n }\r\n\r\n setCurrentImageIndex(newIndex);\r\n\r\n imageListRef.current!.scrollTo({\r\n left: newIndex * 150,\r\n behavior: \"smooth\",\r\n });\r\n };\r\n\r\n const handleClose = () => {\r\n setShowPopUp(false);\r\n };\r\n\r\n return (\r\n <div>\r\n {showPopUp && (\r\n <div className=\"popup-overlay\">\r\n <div className=\" d-flex w-50 flex-column col-6 \">\r\n <div className=\"d-flex align-self-end me-5 mt-5\">\r\n <img\r\n src={iconClose}\r\n alt=\"close\"\r\n className=\"closeIcon mt-5\"\r\n onClick={handleClose}\r\n />\r\n </div>\r\n <span className=\"text-white align-self-center\">\r\n {props.pictureUrls[currentImageIndex].title}\r\n </span>\r\n <div className=\"d-flex justify-content-center\">\r\n <div className=\"p-2 bd-highlight align-self-center align-items-center me-5\">\r\n <div\r\n className=\"rounded-circle border onImageArrow start-0 d-flex \"\r\n role=\"button\"\r\n onClick={() => handleArrowClickInMainImage(\"left\")}\r\n >\r\n <img\r\n src={blcIconArrowLeft}\r\n className=\"blackArrow align-self-center\"\r\n alt=\"Left Arrow\"\r\n />\r\n </div>\r\n </div>\r\n <div className=\"p-2 bd-highlight\">\r\n <div\r\n className=\" rounded-5 mainImage \"\r\n style={{\r\n backgroundImage: `url(${props.pictureUrls[currentImageIndex].url})`,\r\n height: \"350px\",\r\n width: \"600px\",\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n }}\r\n ></div>\r\n </div>\r\n <div className=\"p-2 bd-highlight align-self-center ms-5\">\r\n {\" \"}\r\n <div\r\n role=\"button\"\r\n className=\"rounded-circle border onImageArrow d-flex justify-content-center\"\r\n onClick={() => handleArrowClickInMainImage(\"right\")}\r\n >\r\n <img\r\n src={blcIconArrowRight}\r\n className=\"blackArrow align-self-center\"\r\n alt=\"Right Arrow\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n <div className=\"d-flex flex-row\">\r\n {/* Arrows on the main image */}\r\n </div>\r\n <div className=\"d-flex flex-row gap-4 w-100 secondList \">\r\n <div className=\"col-lg-12 d-flex flex-row p-1 align-self-center mt-5\">\r\n <div className=\"col-12 position-relative d-flex justify-content-center\">\r\n <div\r\n className=\"col-lg-10 rounded-3 h-100 w-100 d-flex flex-row gap-2 overflow-auto \"\r\n ref={imageListRef}\r\n >\r\n {props.pictureUrls.length > 0 && (\r\n <div className=\"col-lg-5 h-100 w-25 d-flex gap-4 flex-row rounded-3\">\r\n {props.pictureUrls.map((picture, index) => (\r\n <div\r\n key={index}\r\n className=\"col-lg-12 h-100 d-flex\"\r\n onClick={() => {\r\n setCurrentImageIndex(index);\r\n imageListRef.current!.scrollTo({\r\n left: index * 150,\r\n behavior: \"smooth\",\r\n });\r\n }}\r\n role=\"button\"\r\n >\r\n <img\r\n src={picture.url}\r\n alt={`Image ${index + 1}`}\r\n className=\"col-12 h-100 rounded-3 object-fit-cover\"\r\n />\r\n </div>\r\n ))}\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n}\r\n","import React, { useEffect, useState } from \"react\";\r\nimport iconClose from \"../../assets/images/close.png\";\r\n\r\ninterface PopupProps {\r\n contentUrl: string;\r\n onCloseClick: () => void;\r\n}\r\n\r\nconst FloorPlanPopup: React.FC<PopupProps> = ({ contentUrl, onCloseClick }) => {\r\n const [isContentImage, setIsContentImage] = useState(false);\r\n\r\n useEffect(() => {\r\n if (contentUrl) {\r\n const fileFormat = contentUrl.split(\".\").pop();\r\n if (\r\n fileFormat === \"png\" ||\r\n fileFormat === \"jpg\" ||\r\n fileFormat === \"jpeg\" ||\r\n fileFormat === \"svg\"\r\n ) {\r\n setIsContentImage(true);\r\n }\r\n }\r\n }, [contentUrl]);\r\n\r\n const downloadButtonClickHandler = (): void => {\r\n // Create a temporary anchor element\r\n const link = document.createElement(\"a\");\r\n link.href = contentUrl;\r\n link.setAttribute(\"download\", \"\"); // This attribute hints the browser to download the file\r\n\r\n // Append the anchor to the body and click it to trigger the download\r\n document.body.appendChild(link);\r\n link.click();\r\n\r\n // Clean up: remove the anchor element\r\n document.body.removeChild(link);\r\n };\r\n return (\r\n <div className=\"popup-overlay\">\r\n <div className=\" d-flex w-50 flex-column col-6 \">\r\n <div className=\"d-flex align-self-end me-5 mt-5\">\r\n <img\r\n src={iconClose}\r\n alt=\"close\"\r\n className=\"closeIcon mt-5\"\r\n onClick={onCloseClick}\r\n />\r\n </div>\r\n <div className=\"d-flex justify-content-center\">\r\n <div className=\"p-2 bd-highlight\">\r\n {isContentImage && (\r\n <div\r\n className=\"rounded-5 mainImage\"\r\n style={{\r\n backgroundImage: `url(${contentUrl})`,\r\n height: \"350px\",\r\n width: \"600px\",\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n }}\r\n ></div>\r\n )}\r\n {!isContentImage && (\r\n <div className=\"text-white text-center\">\r\n No Preview Available\r\n <button\r\n className=\"btn btn-info\"\r\n onClick={downloadButtonClickHandler}\r\n >\r\n {\" \"}\r\n Download{\" \"}\r\n </button>\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default FloorPlanPopup;\r\n","import React, { useRef, useState } from \"react\";\r\nimport iconArrowRight from \"../../assets/images/Icon_rightArrow.svg\";\r\nimport blcIconArrowRight from \"../../assets/images/blackarrow-Right.svg\";\r\nimport blcIconArrowLeft from \"../../assets/images/blckarrow-Left.svg\";\r\nimport iconArrowLeft from \"../../assets/images/chevron-left.svg\";\r\nimport iconGallery from \"../../assets/images/icon_gallery.svg\";\r\nimport iconMap from \"../../assets/images/icon_map.svg\";\r\nimport iconLayers from \"../../assets/images/layer_icon.svg\";\r\nimport \"./PropertyImageList.css\";\r\nimport ImageListPopup from \"../ImageListPopup/ImageListPopup\";\r\nimport PopupProps from \"../ImageListPopup/ImageListPopup\";\r\nimport FloorPlanPopup from \"../FloorPlanPopup/FloorPlanPopup\";\r\n\r\ninterface PopupProps {\r\n pictureUrls: { title: string; url: string }[];\r\n floorPlanUrl: string;\r\n}\r\nexport default function PropertyImageList(prop: PopupProps) {\r\n const [currentImageIndex, setCurrentImageIndex] = useState(0);\r\n const [isImagePopupOpen, setIsImagePopupOpen] = useState(false);\r\n const [isFloorPlanPopupOpen, setIsFloorPlanPopupOpen] = useState(false);\r\n const imageListRef = useRef<HTMLDivElement | null>(null);\r\n\r\n const handleArrowClickInMainImage = (direction: any) => {\r\n if (prop.pictureUrls.length === 0) return;\r\n\r\n let newIndex = currentImageIndex;\r\n if (direction === \"left\") {\r\n newIndex =\r\n (currentImageIndex - 1 + prop.pictureUrls.length) %\r\n prop.pictureUrls.length;\r\n } else if (direction === \"right\") {\r\n newIndex = (currentImageIndex + 1) % prop.pictureUrls.length;\r\n }\r\n\r\n setCurrentImageIndex(newIndex);\r\n\r\n imageListRef.current!.scrollTo({\r\n left: newIndex * 150,\r\n behavior: \"smooth\",\r\n });\r\n };\r\n\r\n const toggleAllPhotos = () => {\r\n setIsImagePopupOpen(!isImagePopupOpen);\r\n };\r\n\r\n const floorPlanClickHandler = () => {\r\n if (prop.floorPlanUrl) {\r\n setIsFloorPlanPopupOpen(true);\r\n }\r\n };\r\n\r\n const floorPlanPopupCloseHandler = () => {\r\n setIsFloorPlanPopupOpen(false);\r\n };\r\n\r\n return (\r\n <div className=\"col-8 Pimagelist \">\r\n <div\r\n className=\"col-12 rounded-5 mainImage d-flex position-relative align-items-center\"\r\n style={{\r\n backgroundImage: `url(${prop.pictureUrls[currentImageIndex]?.url})`,\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n }}\r\n >\r\n {/* Arrows on the main image */}\r\n <div\r\n className=\"rounded-circle border onImageArrow d-flex position-absolute start-0 ms-2 align-items-center justify-content-center\"\r\n role=\"button\"\r\n onClick={() => handleArrowClickInMainImage(\"left\")}\r\n >\r\n <img src={blcIconArrowLeft} className=\"blackArrow\" alt=\"Left Arrow\" />\r\n </div>\r\n <div\r\n role=\"button\"\r\n className=\"rounded-circle border onImageArrow d-flex position-absolute end-0 me-2 align-items-center justify-content-center\"\r\n onClick={() => handleArrowClickInMainImage(\"right\")}\r\n >\r\n <img\r\n src={blcIconArrowRight}\r\n className=\"blackArrow\"\r\n alt=\"Right Arrow\"\r\n />\r\n </div>\r\n </div>\r\n\r\n {/* Image Thumbnails */}\r\n <div className=\"d-none d-md-block\">\r\n <div className=\"mt-5 d-flex flex-row gap-1 col-12 secondList\">\r\n <div className=\"\tcol-lg-6 col-6 d-flex flex-row p-1\">\r\n <div className=\"\t col-12 position-relative d-flex justify-content-center\">\r\n <div\r\n className=\"col-1 h-100 d-flex position-absolute start-0\"\r\n onClick={() => handleArrowClickInMainImage(\"left\")}\r\n role=\"button\"\r\n >\r\n <div className=\"col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3\">\r\n <img\r\n src={iconArrowLeft}\r\n className=\"arroIconColour\"\r\n alt=\"Left Arrow\"\r\n />\r\n </div>\r\n </div>\r\n <div\r\n className=\"col-lg-10 rounded-3 h-100 d-flex flex-row gap-2 overflow-auto ms-1\"\r\n ref={imageListRef}\r\n >\r\n {prop.pictureUrls.length > 0 && (\r\n <div className=\"col-lg-5 h-100 d-flex gap-2 flex-row rounded-3\">\r\n {prop.pictureUrls.map((picture, index) => (\r\n <div\r\n key={index}\r\n className=\"col-lg-12 h-100 d-flex\"\r\n onClick={() => {\r\n setCurrentImageIndex(index);\r\n imageListRef.current!.scrollTo({\r\n left: index * 150,\r\n behavior: \"smooth\",\r\n });\r\n }}\r\n role=\"button\"\r\n >\r\n <img\r\n src={picture.url}\r\n alt={`Image ${index + 1}`}\r\n className=\"col-12 h-100 rounded-3 object-fit-cover\"\r\n />\r\n </div>\r\n ))}\r\n </div>\r\n )}\r\n </div>\r\n <div\r\n className=\"col-1 h-100 d-flex position-absolute end-0 top-0\"\r\n onClick={() => handleArrowClickInMainImage(\"right\")}\r\n role=\"button\"\r\n >\r\n <div className=\"col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3 ms-1\">\r\n <img\r\n src={iconArrowRight}\r\n className=\"arroIconColour\"\r\n alt=\"Right Arrow\"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n {/* Buttons for \"Alle Fotos\", \"Grundriss\", \"Karte\" */}\r\n <div className=\"col-7 col-lg-6 d-flex flex-row\">\r\n <div\r\n className=\"col-lg-4 col-4 p-1\"\r\n role=\"button\"\r\n onClick={toggleAllPhotos}\r\n >\r\n <div className=\"border col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3\">\r\n <img src={iconGallery} alt=\"Gallery Icon\" />\r\n <span className=\"listImgText\">Alle Fotos</span>\r\n </div>\r\n </div>\r\n <div\r\n className=\"col-lg-4 col-3 p-1\"\r\n role=\"button\"\r\n onClick={floorPlanClickHandler}\r\n >\r\n <div className=\"border col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3\">\r\n <img src={iconLayers} alt=\"Layers Icon\" />\r\n <span className=\"listImgText\">Grundriss</span>\r\n </div>\r\n </div>\r\n <div\r\n className=\"col-lg-4 col-3 p-1\"\r\n role=\"button\"\r\n onClick={() =>\r\n window.scrollTo({\r\n top: document.documentElement.scrollHeight,\r\n })\r\n }\r\n >\r\n <div className=\"border col-lg-12 h-100 d-flex flex-column listImageButton border-0 rounded-3\">\r\n <img src={iconMap} alt=\"Map Icon\" />\r\n <span className=\"listImgText\">Karte</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n {/* Popup for all photos */}\r\n {isImagePopupOpen && <ImageListPopup pictureUrls={prop.pictureUrls} />}\r\n\r\n {/* Popup for floor plan */}\r\n {isFloorPlanPopupOpen && (\r\n <FloorPlanPopup\r\n contentUrl={prop.floorPlanUrl}\r\n onCloseClick={floorPlanPopupCloseHandler}\r\n />\r\n )}\r\n </div>\r\n );\r\n}\r\n","export default \"/static/media/LayersIcon.34c085c352a2c9c8.svg\"","export default \"/static/media/locationIcon.0af399c78e0cdc20.svg\"","export default \"/static/media/default-property.9987f19670be82b6.jpg\"","import React, { useState } from \"react\";\r\n// import { FormattedMessage } from \"react-intl\";\r\nimport layerIcon from \"../../assets/images/LayersIcon.svg\";\r\nimport heart from \"../../assets/images/heart.svg\";\r\nimport locationIcon from \"../../assets/images/locationIcon.svg\";\r\nimport \"../PropertyCard/PropertyCard.css\";\r\nimport noImageIcon from \"../../assets/images/default-property.jpg\";\r\nimport { formatPrice, formatPropertyArea } from \"../../functions/util\";\r\n\r\ninterface PopupProps {\r\n property: {\r\n city: string;\r\n historicalProtection: boolean;\r\n basement: boolean;\r\n balcony: boolean;\r\n terrace: boolean;\r\n guestBathroom: boolean;\r\n bathrooms: string;\r\n usableArea: string;\r\n id: string;\r\n rooms: string;\r\n constructedArea: string;\r\n evaluation?: {\r\n askingPrice: number;\r\n };\r\n pictures: { contentUrl: string }[];\r\n };\r\n onClick: any;\r\n baseUrl: string;\r\n}\r\n\r\nexport default function PropertyCard(props: PopupProps) {\r\n const [liked, setLiked] = useState(false);\r\n\r\n const handleLike = () => {\r\n setLiked(!liked);\r\n };\r\n const pictureUrl =\r\n props.property.pictures && props.property.pictures.length > 0\r\n ? `${props.baseUrl}${props.property.pictures[0].contentUrl}`\r\n : noImageIcon;\r\n return (\r\n <div\r\n key={props.property.id}\r\n className=\"card-body me-4 mb-4 position-relative cardStyle\"\r\n style={{\r\n backgroundImage: `url(${pictureUrl})`,\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n }}\r\n onClick={props.onClick}\r\n role=\"button\"\r\n >\r\n <div className=\"labelTopClass position-absolute top-0 start-0 col-sm-5 col-lg-8\">\r\n <div className=\"d-flex align-items-center ms-2 mb-1 mt-2 gap-2\">\r\n <label className=\"p-1 firstLabel d-flex flex-row justify-content-center align-items-center\">\r\n <img src={layerIcon} alt=\"Location Icon\" className=\"layersVector\" />\r\n <span className=\"layersText\">{\"Grundriss\"}</span>\r\n </label>\r\n {props.property.historicalProtection && (\r\n <label className=\"thirdLabels d-flex flex-row justify-content-center align-items-center\">\r\n <span className=\"layersText p-1\">{\"Denkmalschutz\"}</span>\r\n </label>\r\n )}\r\n\r\n {props.property.basement && (\r\n <label className=\"secondLabel d-flex flex-row justify-content-center align-items-center\">\r\n <span className=\"layersText p-1\">{\"Keller\"}</span>\r\n </label>\r\n )}\r\n </div>\r\n <div className=\"d-flex align-items-center ms-2 start-0 gap-2\">\r\n {props.property.terrace && (\r\n <label className=\"p-1 thirdLabels d-flex flex-row justify-content-center align-items-center \">\r\n <span className=\"layersText\">{\"Terrace\"}</span>\r\n </label>\r\n )}\r\n {props.property.balcony && (\r\n <label className=\"secondLabel d-flex flex-row justify-content-center align-items-center\">\r\n <span className=\"layersText p-1\">{\"Balkon\"}</span>\r\n </label>\r\n )}\r\n\r\n {props.property.guestBathroom && (\r\n <label className=\"col-1 fourthLabels d-flex flex-row justify-content-center align-items-center \">\r\n <span className=\"layersText p-1\">{\"Gäste-WC\"}</span>\r\n </label>\r\n )}\r\n </div>\r\n </div>\r\n <div className=\"d-flex align-items-center position-absolute top-0 end-0 p-3\">\r\n {/*<img*/}\r\n {/* src={heart}*/}\r\n {/* alt=\" Heart Icon\"*/}\r\n {/* className={`heartVector ${liked ? \"liked\" : \"\"}`}*/}\r\n {/* onClick={handleLike}*/}\r\n {/*/>*/}\r\n </div>\r\n <div className=\"d-flex align-items-center mb-3 position-absolute bottom-0 start-0 p-2\">\r\n <span className=\"Price col-lg-12 col-md-12 col-sm-12 text-truncate p-1\">\r\n {formatPrice(props.property?.evaluation?.askingPrice ?? 0)} €\r\n </span>\r\n </div>\r\n <div className=\"d-flex w-50 align-items-center position-absolute bottom-0 start-0 p-2\">\r\n <img src={locationIcon} alt=\"Location Icon\" className=\"Vector\" />\r\n <span className=\"locationText text-truncate\">\r\n {props.property.city || \"N/A\"}\r\n </span>\r\n </div>\r\n <div className=\"d-flex col-lg-6 col-md-6 col-sm-5 me-lg-0 me-md-0 me-sm-3 justify-content-center mb-2 position-absolute bottom-0 end-0\">\r\n <span className=\"detail col-lg-4 col-md-4 col-sm-6 text-truncate border-end \">\r\n {+props.property.rooms}\r\n <br />\r\n {/* <FormattedMessage id=\"ROOMS\" /> */}\r\n <span>Zimmer</span>\r\n </span>\r\n <span className=\"detail col-lg-3 col-md-3 col-sm-4 text-truncate \">\r\n {+props.property.bathrooms}\r\n <br />\r\n {/* <FormattedMessage\r\n id=\"BATHROOM\"\r\n values={{ itemCount: +props.property.bathrooms }}\r\n /> */}\r\n {/* {+props.property.bathrooms} */}\r\n\r\n <span>Bad</span>\r\n </span>\r\n <span className=\"detail col-lg-5 col-md-5 col-sm-7 text-truncate border-start me-3\">\r\n {formatPropertyArea(props.property?.constructedArea)} m²\r\n <br />\r\n {/* <FormattedMessage id=\"LIVING_SPACE\" /> */}\r\n <span>Wohnfläche</span>\r\n </span>\r\n </div>\r\n </div>\r\n );\r\n}\r\n","import React from \"react\";\r\nimport { ToastContainer, toast } from \"react-toastify\";\r\n\r\n// Utility function to show a toast\r\nexport const showToast = (\r\n message: string,\r\n type: \"info\" | \"success\" | \"warning\" | \"error\" = \"info\",\r\n) => {\r\n toast(message, { type });\r\n};\r\n\r\nconst ToastWrapper: React.FC = () => (\r\n <ToastContainer\r\n position=\"top-right\"\r\n autoClose={5000}\r\n hideProgressBar={false}\r\n closeOnClick\r\n rtl={false}\r\n pauseOnFocusLoss\r\n draggable\r\n pauseOnHover\r\n />\r\n);\r\n\r\nexport default ToastWrapper;\r\n"],"names":["closeIcon","useState","useRef","toast","locationIcon","useEffect","ToastContainer"],"mappings":"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","x_google_ignoreList":[2]}
|
package/package.json
CHANGED
|
@@ -21,16 +21,14 @@ export default function PropertyDetailsHeader(props: PopupProps) {
|
|
|
21
21
|
const [showPopUp, setShowPopUp] = useState(false);
|
|
22
22
|
const area = props.property?.propertyArea;
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
const handleOpenPopup = () => setShowPopUp(true);
|
|
25
|
+
|
|
26
|
+
const handleClosePopup = () => setShowPopUp(false);
|
|
27
27
|
|
|
28
28
|
return (
|
|
29
29
|
<div className="Pheader compact d-flex flex-column flex-md-row d-flex col-12 col-lg-12 mt-5 ">
|
|
30
30
|
<div className="header_Text d-flex col-5 col-lg-7 col-md-9 mt-4 ms-4 ">
|
|
31
|
-
<strong>
|
|
32
|
-
{props.title ?? "-"}
|
|
33
|
-
</strong>
|
|
31
|
+
<strong>{props.title ?? "-"}</strong>
|
|
34
32
|
</div>
|
|
35
33
|
<div className="compact3 position-absolute header_Text text-truncate col-5 col-lg-5 col-md-5 d-flex flex-row ms-4">
|
|
36
34
|
<img src={locationIcon} className="vector me-2" alt="location Icon" />
|
|
@@ -44,7 +42,7 @@ export default function PropertyDetailsHeader(props: PopupProps) {
|
|
|
44
42
|
src={ShareIcon}
|
|
45
43
|
alt="share icon"
|
|
46
44
|
className="v_share me-3"
|
|
47
|
-
onClick={
|
|
45
|
+
onClick={handleOpenPopup}
|
|
48
46
|
/>
|
|
49
47
|
</div>
|
|
50
48
|
<div className="compact2 gap-3 gap-md-0 fetch_section d-flex align-items-center flex-column flex-md-row col-lg-5 col-md-6 col-sm-5 justify-content-end position-absolute end-0">
|
|
@@ -60,7 +58,7 @@ export default function PropertyDetailsHeader(props: PopupProps) {
|
|
|
60
58
|
{props && (
|
|
61
59
|
<div className="propText col-lg-3 col-md-3 d-flex h-100 align-items-md-center justify-content-center flex-column">
|
|
62
60
|
<span className="propText2">
|
|
63
|
-
{formatPropertyArea(props.property.constructedArea) ?? 0}
|
|
61
|
+
{formatPropertyArea(props.property.constructedArea) ?? 0}
|
|
64
62
|
</span>
|
|
65
63
|
<span>Wohnfläche</span>
|
|
66
64
|
{/* <FormattedMessage id="LIVING_SPACE" /> */}
|
|
@@ -68,9 +66,7 @@ export default function PropertyDetailsHeader(props: PopupProps) {
|
|
|
68
66
|
)}
|
|
69
67
|
{props && (
|
|
70
68
|
<div className="propText col-lg-3 col-md-3 d-flex h-100 align-items-center justify-content-center flex-column">
|
|
71
|
-
<span className="propText2">
|
|
72
|
-
{props.property.rooms}
|
|
73
|
-
</span>
|
|
69
|
+
<span className="propText2">{props.property.rooms}</span>
|
|
74
70
|
<span>Zimmer</span>
|
|
75
71
|
{/* <FormattedMessage id="ROOMS" /> */}
|
|
76
72
|
</div>
|
|
@@ -85,7 +81,7 @@ export default function PropertyDetailsHeader(props: PopupProps) {
|
|
|
85
81
|
</div>
|
|
86
82
|
)}
|
|
87
83
|
</div>
|
|
88
|
-
{showPopUp && <SharePopup />}
|
|
84
|
+
{showPopUp && <SharePopup onClick={() => handleClosePopup()} /> }
|
|
89
85
|
</div>
|
|
90
86
|
);
|
|
91
87
|
}
|
|
@@ -10,7 +10,7 @@ import { toast } from "react-toastify";
|
|
|
10
10
|
import "../../styles/common.css";
|
|
11
11
|
|
|
12
12
|
interface PopupProps {
|
|
13
|
-
onClick:String | any;
|
|
13
|
+
onClick: String | any;
|
|
14
14
|
}
|
|
15
15
|
export default function SharePopup(props: PopupProps) {
|
|
16
16
|
const [showPopUp, setShowPopUp] = useState(true);
|
|
@@ -18,6 +18,7 @@ export default function SharePopup(props: PopupProps) {
|
|
|
18
18
|
const handleClose = () => {
|
|
19
19
|
props.onClick();
|
|
20
20
|
};
|
|
21
|
+
|
|
21
22
|
const urlInputRef = useRef<HTMLInputElement | null>(null);
|
|
22
23
|
|
|
23
24
|
const copyToClipboard = () => {
|