nestiq-component-library 1.0.36 → 1.0.38

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.
Files changed (72) hide show
  1. package/dist/assets/images/close.b5ce9141e80c688b.png +0 -0
  2. package/dist/assets/images/icon_close_2.png +0 -0
  3. package/dist/components/Button/Button.js +6 -0
  4. package/dist/components/ImageListPopup/ImageListPopup.d.ts +0 -1
  5. package/dist/components/ImageListPopup/ImageListPopup.js +26 -0
  6. package/dist/components/Popup/Popup.d.ts +0 -1
  7. package/dist/components/Popup/Popup.js +12 -0
  8. package/dist/components/PropertyCard/PropertyCard.d.ts +5 -1
  9. package/dist/components/SharePopup/PopUp.d.ts +7 -0
  10. package/dist/index.d.ts +0 -3
  11. package/dist/index.es.js +30 -37
  12. package/dist/index.es.js.map +1 -1
  13. package/dist/index.js +29 -39
  14. package/dist/index.js.map +1 -1
  15. package/package.json +1 -4
  16. package/rollup.config.mjs +35 -35
  17. package/src/assets/images/close.png +0 -0
  18. package/src/assets/images/close_white.png +0 -0
  19. package/src/assets/images/icon_close 2.png +0 -0
  20. package/src/assets/images/icon_share 1.svg +3 -0
  21. package/src/components/ImageListPopup/ImageListPopup.css +107 -83
  22. package/src/components/ImageListPopup/ImageListPopup.tsx +140 -142
  23. package/src/components/Popup/Popup.css +13 -0
  24. package/src/components/Popup/Popup.tsx +28 -29
  25. package/src/components/PropertyCard/PropertyCard.tsx +19 -14
  26. package/src/components/PropertyDetailsHeader/PropertyDetailsHeader.tsx +84 -80
  27. package/src/components/SharePopup/{SharePopup.css → PopUp.css} +14 -0
  28. package/src/components/SharePopup/{SharePopup.tsx → PopUp.tsx} +140 -139
  29. package/src/index.tsx +7 -13
  30. package/dist/components/SharePopup/SharePopup.d.ts +0 -4
  31. package/dist/components/ToastWrapper/ToastWrapper.d.ts +0 -4
  32. package/src/assets/images/Images/envelope-fill.svg +0 -3
  33. package/src/assets/images/Images/facebook.svg +0 -3
  34. package/src/assets/images/Images/linkedin.svg +0 -3
  35. package/src/assets/images/Images/twitter-x.svg +0 -3
  36. package/src/assets/images/Images/whatsapp.svg +0 -3
  37. package/src/components/ToastWrapper/ToastWrapper.tsx +0 -25
  38. package/src/styles/common.css +0 -12
  39. /package/{src/assets/images/Images → dist/assets/images}/Icon_rightArrow.svg +0 -0
  40. /package/{src/assets/images/Images → dist/assets/images}/LayersIcon.svg +0 -0
  41. /package/{src/assets/images/Images → dist/assets/images}/blackarrow-Right.svg +0 -0
  42. /package/{src/assets/images/Images → dist/assets/images}/blckarrow-Left.svg +0 -0
  43. /package/{src/assets/images/Images → dist/assets/images}/chevron-left.svg +0 -0
  44. /package/{src/assets/images/Images → dist/assets/images}/default-property.jpg +0 -0
  45. /package/{src/assets/images/Images → dist/assets/images}/heartIcon.svg +0 -0
  46. /package/{src/assets/images/Images → dist/assets/images}/icon-close-white.webp +0 -0
  47. /package/{src/assets/images/Images/icon_close 2.png → dist/assets/images/icon_close 2.e41bb9a4db48e048.png} +0 -0
  48. /package/{src/assets/images/Images → dist/assets/images}/icon_gallery.svg +0 -0
  49. /package/{src/assets/images/Images → dist/assets/images}/icon_map.svg +0 -0
  50. /package/{src/assets/images/Images/icon_share 1.svg → dist/assets/images/icon_share_1.svg} +0 -0
  51. /package/{src/assets/images/Images → dist/assets/images}/layer_icon.svg +0 -0
  52. /package/{src/assets/images/Images → dist/assets/images}/locationIcon.svg +0 -0
  53. /package/{src/assets/images/Images → dist/assets/images}/locationIconBlack.svg +0 -0
  54. /package/{src/assets/images/Images → dist/assets/images}/no-image-icon.png +0 -0
  55. /package/src/assets/images/{Images/Logo-Nestiq_black.svg → Logo-Nestiq_black.svg} +0 -0
  56. /package/src/assets/images/{Images/arrow-right-short.svg → arrow-right-short.svg} +0 -0
  57. /package/src/assets/images/{Images/arrow-right.svg → arrow-right.svg} +0 -0
  58. /package/src/assets/images/{Images/dropdownIcon.svg → dropdownIcon.svg} +0 -0
  59. /package/src/assets/images/{Images/facebook_icon.svg → facebook_icon.svg} +0 -0
  60. /package/src/assets/images/{Images/google_icon.svg → google_icon.svg} +0 -0
  61. /package/src/assets/images/{Images/heart.svg → heart.svg} +0 -0
  62. /package/src/assets/images/{Images/house.jpg → house.jpg} +0 -0
  63. /package/src/assets/images/{Images/icon_checkmark.svg → icon_checkmark.svg} +0 -0
  64. /package/src/assets/images/{Images/icon_home.svg → icon_home.svg} +0 -0
  65. /package/src/assets/images/{Images/icon_user.png → icon_user.png} +0 -0
  66. /package/src/assets/images/{Images/left arrow.svg → left arrow.svg} +0 -0
  67. /package/src/assets/images/{Images/left-arrow.svg → left-arrow.svg} +0 -0
  68. /package/src/assets/images/{Images/mail-icon.png → mail-icon.png} +0 -0
  69. /package/src/assets/images/{Images/right arrow.svg → right arrow.svg} +0 -0
  70. /package/src/assets/images/{Images/right-arrow.svg → right-arrow.svg} +0 -0
  71. /package/src/assets/images/{Images/warning.svg → warning.svg} +0 -0
  72. /package/src/assets/images/{Images/x.svg → x.svg} +0 -0
@@ -8,7 +8,7 @@ import noImageIcon from "../../assets/Images/default-property.jpg";
8
8
  // import { formatPrice } from "../../functions/util";
9
9
 
10
10
  interface PopupProps {
11
- property: {
11
+ properties: {
12
12
  city: string;
13
13
  historicalProtection: boolean;
14
14
  basement: boolean;
@@ -20,9 +20,11 @@ interface PopupProps {
20
20
  id: string;
21
21
  rooms: string;
22
22
  askingPrice: string;
23
+ pictures: { contentUrl: string }[];
23
24
  };
24
25
  onClick: any;
25
26
  pictureUrl: any[];
27
+ baseUrl: string;
26
28
  }
27
29
 
28
30
  export default function PropertyCard(props: PopupProps) {
@@ -31,10 +33,13 @@ export default function PropertyCard(props: PopupProps) {
31
33
  const handleLike = () => {
32
34
  setLiked(!liked);
33
35
  };
34
-
36
+ const pictureUrl =
37
+ props.properties.pictures && props.properties.pictures.length > 0
38
+ ? `${props.baseUrl}${props.properties.pictures[0].contentUrl}`
39
+ : noImageIcon;
35
40
  return (
36
41
  <div
37
- key={props.property.id}
42
+ key={props.properties.id}
38
43
  className="card-body me-4 mb-4 position-relative cardStyle"
39
44
  style={{
40
45
  backgroundImage: `url(${props.pictureUrl}) ?? ${noImageIcon}`,
@@ -50,31 +55,31 @@ export default function PropertyCard(props: PopupProps) {
50
55
  <img src={layerIcon} alt="Location Icon" className="layersVector" />
51
56
  <span className="layersText">{"Grundriss"}</span>
52
57
  </label>
53
- {props.property.historicalProtection && (
58
+ {props.properties.historicalProtection && (
54
59
  <label className="thirdLabel d-flex flex-row justify-content-center align-items-center">
55
60
  <span className="layersText">{"Denkmalschutz"}</span>
56
61
  </label>
57
62
  )}
58
63
 
59
- {props.property.basement && (
64
+ {props.properties.basement && (
60
65
  <label className="secondLabel d-flex flex-row justify-content-center align-items-center">
61
66
  <span className="layersText ">{"Keller"}</span>
62
67
  </label>
63
68
  )}
64
- {props.property.balcony && (
69
+ {props.properties.balcony && (
65
70
  <label className="secondLabel d-flex flex-row justify-content-center align-items-center">
66
71
  <span className="layersText ">{"Balkon"}</span>
67
72
  </label>
68
73
  )}
69
74
  </div>
70
75
  <div className="d-flex align-items-center ms-2 start-0 gap-2">
71
- {props.property.terrace && (
76
+ {props.properties.terrace && (
72
77
  <label className="thirdLabel d-flex flex-row justify-content-center align-items-center ">
73
78
  <span className="layersText">{"Terrace"}</span>
74
79
  </label>
75
80
  )}
76
81
 
77
- {props.property.guestBathroom && (
82
+ {props.properties.guestBathroom && (
78
83
  <label className="fourthLabel d-flex flex-row justify-content-center align-items-center ">
79
84
  <span className="layersText">{"Gäste-WC"}</span>
80
85
  </label>
@@ -91,33 +96,33 @@ export default function PropertyCard(props: PopupProps) {
91
96
  </div>
92
97
  <div className="d-flex align-items-center mb-3 position-absolute bottom-0 start-0 p-2">
93
98
  <span className="Price col-lg-12 col-md-12 col-sm-12 text-truncate">
94
- {props.property?.askingPrice ?? 0} €
99
+ {props.properties?.askingPrice ?? 0} €
95
100
  </span>
96
101
  </div>
97
102
  <div className="d-flex align-items-center position-absolute bottom-0 start-0 p-2">
98
103
  <img src={locationIcon} alt="Location Icon" className="Vector" />
99
- <span className="locationText ">{props.property.city || "N/A"}</span>
104
+ <span className="locationText ">{props.properties.city || "N/A"}</span>
100
105
  </div>
101
106
  <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">
102
107
  <span className="detail col-lg-4 col-md-4 col-sm-6 text-truncate border-end ">
103
- {+props.property.rooms}
108
+ {+props.properties.rooms}
104
109
  <br />
105
110
  {/* <FormattedMessage id="ROOMS" /> */}
106
111
  <span>Zimmer</span>
107
112
  </span>
108
113
  <span className="detail col-lg-3 col-md-3 col-sm-4 text-truncate ">
109
- {+props.property.bathrooms}
114
+ {+props.properties.bathrooms}
110
115
  <br />
111
116
  {/* <FormattedMessage
112
117
  id="BATHROOM"
113
118
  values={{ itemCount: +props.property.bathrooms }}
114
119
  /> */}
115
- {+props.property.bathrooms}
120
+ {+props.properties.bathrooms}
116
121
  <br></br>
117
122
  <span>Bäd</span>
118
123
  </span>
119
124
  <span className="detail col-lg-5 col-md-5 col-sm-7 text-truncate border-start me-3">
120
- {props.property.usableArea} m²
125
+ {props.properties.usableArea} m²
121
126
  <br />
122
127
  {/* <FormattedMessage id="LIVING_SPACE" /> */}
123
128
  <span>Wohnfläche</span>
@@ -1,80 +1,84 @@
1
- import React, { useState } from "react";
2
- // import { FormattedMessage } from "react-intl";
3
- import ShareIcon from "../../assets/images/icon_share_1.svg";
4
- import locationIcon from "../../assets/images/locationIconBlack.svg";
5
- import "./PropertyDetailsHeader.css";
6
- import SharePopup from "../SharePopup/SharePopup";
7
-
8
- export interface PopupProps {
9
- property: {
10
- city: string;
11
- constructedArea: string;
12
- rooms: string;
13
- propertyArea: string;
14
- askingPrice: string;
15
- };
16
- title: string;
17
- }
18
-
19
- export default function PropertyDetailsHeader(props: PopupProps) {
20
- const [showPopUp, setShowPopUp] = useState(false);
21
-
22
- const handlePopUp = () => {
23
- setShowPopUp(!showPopUp);
24
- };
25
-
26
- return (
27
- <div className="Pheader compact d-flex col-12 col-lg-12 position-relative mt-5 ">
28
- <div className="header_Text d-flex col-lg-7 col-md-9 mt-4 ms-4 ">
29
- <strong>{props.title ?? "-"}</strong>
30
- </div>
31
- <div className="header_Text text-truncate col-lg-6 col-md-7 d-flex flex-row position-absolute ms-4">
32
- <img src={locationIcon} className="vector me-2" alt="location Icon" />
33
-
34
- <div className="propText text-truncate col-lg-6 col-md-6 d-flex align-items-center">
35
- {props.property.city}
36
- </div>
37
- </div>
38
- <div className="d-flex col-lg-5 col-md-6 col-sm-5 justify-content-end position-absolute end-0 mt-4">
39
- {/* <img src={Hearticon} alt="Location Icon" className="v_share me-3" /> */}
40
- <img
41
- src={ShareIcon}
42
- alt="share icon"
43
- className="v_share me-3"
44
- onClick={handlePopUp}
45
- />
46
- </div>
47
- <div className="fetch_section d-flex align-items-center flex-row col-lg-5 col-md-6 col-sm-5 justify-content-end position-absolute end-0">
48
- {props && (
49
- <div className=" propText col-lg-3 col-md-3 h-100 d-flex align-items-center justify-content-center ">
50
- {props.property.askingPrice} <br />
51
- Kaufpreis
52
- </div>
53
- )}
54
- {props && (
55
- <div className="propText col-lg-3 col-md-3 d-flex h-100 align-items-center justify-content-center">
56
- {props.property.constructedArea} m² <br />
57
- Wohnfläche
58
- {/* <FormattedMessage id="LIVING_SPACE" /> */}
59
- </div>
60
- )}
61
- {props && (
62
- <div className="propText col-lg-3 col-md-3 d-flex h-100 align-items-center justify-content-center">
63
- {props.property.rooms} <br />
64
- Zimmer
65
- {/* <FormattedMessage id="ROOMS" /> */}
66
- </div>
67
- )}
68
- {props && (
69
- <div className="propText col-lg-3 col-md-3 d-flex h-100 align-items-center justify-content-center">
70
- {props.property.propertyArea} m²
71
- <br />
72
- Grundstück
73
- {/* <FormattedMessage id="Grundstück" /> */}
74
- </div>
75
- )}
76
- </div>
77
- {showPopUp && <SharePopup />}
78
- </div>
79
- );
80
- }
1
+ import React, { useState } from "react";
2
+ // import { FormattedMessage } from "react-intl";
3
+ import ShareIcon from "../../assets/images/icon_share_1.svg";
4
+ import locationIcon from "../../assets/images/locationIconBlack.svg";
5
+ import "./PropertyDetailsHeader.css";
6
+ import PopUp from "../SharePopup/PopUp";
7
+
8
+ export interface PopupProps {
9
+ property: {
10
+ city: string;
11
+ constructedArea: string;
12
+ rooms: string;
13
+ propertyArea: string;
14
+ askingPrice: string;
15
+ };
16
+ title: string;
17
+ }
18
+
19
+ export default function PropertyDetailsHeader(props: PopupProps) {
20
+ const [showPopUp, setShowPopUp] = useState(false);
21
+
22
+ const handlePopUp = () => {
23
+ setShowPopUp(!showPopUp);
24
+ };
25
+
26
+ return (
27
+ <div className="Pheader compact d-flex col-12 col-lg-12 position-relative mt-5 ">
28
+ <div className="header_Text d-flex col-lg-7 col-md-9 mt-4 ms-4 ">
29
+ <strong>{props.title ?? "-"}</strong>
30
+ </div>
31
+ <div className="header_Text text-truncate col-lg-6 col-md-7 d-flex flex-row position-absolute ms-4">
32
+ <img src={locationIcon} className="vector me-2" alt="location Icon" />
33
+
34
+ <div className="propText text-truncate col-lg-6 col-md-6 d-flex align-items-center">
35
+ {props.property.city}
36
+ </div>
37
+ </div>
38
+ <div className="d-flex col-lg-5 col-md-6 col-sm-5 justify-content-end position-absolute end-0 mt-4">
39
+ {/* <img src={Hearticon} alt="Location Icon" className="v_share me-3" /> */}
40
+ <img
41
+ src={ShareIcon}
42
+ alt="share icon"
43
+ className="v_share me-3"
44
+ onClick={handlePopUp}
45
+ />
46
+ </div>
47
+ <div className="fetch_section d-flex align-items-center flex-row col-lg-5 col-md-6 col-sm-5 justify-content-end position-absolute end-0">
48
+ {props && (
49
+ <div className=" propText col-lg-3 col-md-3 h-100 d-flex align-items-center justify-content-center ">
50
+ {props.property.askingPrice} <br />
51
+ Kaufpreis
52
+ </div>
53
+ )}
54
+ {props && (
55
+ <div className="propText col-lg-3 col-md-3 d-flex h-100 align-items-center justify-content-center">
56
+ {props.property.constructedArea} m² <br />
57
+ Wohnfläche
58
+ {/* <FormattedMessage id="LIVING_SPACE" /> */}
59
+ </div>
60
+ )}
61
+ {props && (
62
+ <div className="propText col-lg-3 col-md-3 d-flex h-100 align-items-center justify-content-center">
63
+ {props.property.rooms} <br />
64
+ Zimmer
65
+ {/* <FormattedMessage id="ROOMS" /> */}
66
+ </div>
67
+ )}
68
+ {props && (
69
+ <div className="propText col-lg-3 col-md-3 d-flex h-100 align-items-center justify-content-center">
70
+ {props.property.propertyArea} m²
71
+ <br />
72
+ Grundstück
73
+ {/* <FormattedMessage id="Grundstück" /> */}
74
+ </div>
75
+ )}
76
+ </div>
77
+ {showPopUp && (
78
+ <PopUp
79
+ onClick={handlePopUp}
80
+ />
81
+ )}
82
+ </div>
83
+ );
84
+ }
@@ -1,3 +1,17 @@
1
+ .popup-overlay {
2
+ position: fixed; /* Fixed position to cover the whole screen */
3
+ top: 0;
4
+ left: 0;
5
+ right: 0;
6
+ bottom: 0;
7
+ background-color: rgba(0, 0, 0, 0.5); /* Semi-transparent background */
8
+ display: flex; /* Flexbox to center the popup */
9
+ justify-content: center; /* Center horizontally */
10
+ align-items: center; /* Center vertically */
11
+ z-index: 2000; /* Ensure it's above other content */
12
+
13
+ }
14
+
1
15
  .shareSection {
2
16
  height: 340px;
3
17
  padding: 40px;
@@ -1,139 +1,140 @@
1
- import React, { useRef, useState } from "react";
2
- import email from "../../assets/Images/envelope-fill.svg";
3
- import facebook from "../../assets/Images/facebook.svg";
4
- import x from "../../assets/Images/icon_close_2.png";
5
- import linkedln from "../../assets/Images/linkedin.svg";
6
- import Xtwitter from "../../assets/Images/twitter-x.svg";
7
- import whatsapp from "../../assets/Images/whatsapp.svg";
8
- import "./SharePopup.css";
9
- import { toast } from "react-toastify";
10
- import "../../styles/common.css";
11
-
12
- export default function SharePopup() {
13
- const [showPopUp, setShowPopUp] = useState(true);
14
-
15
- const handleClose = () => {
16
- setShowPopUp(false);
17
- };
18
- const urlInputRef = useRef<HTMLInputElement | null>(null);
19
-
20
- const copyToClipboard = () => {
21
- urlInputRef.current!.select();
22
- document.execCommand("copy");
23
- toast.success("URL copied to clipboard!");
24
- };
25
-
26
- return (
27
- <div>
28
- {showPopUp && (
29
- <div className="popup-overlay">
30
- <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">
31
- <div className="end-0 top-0 position-absolute ">
32
- <img
33
- src={x}
34
- alt="close"
35
- className="closeIcon me-2"
36
- onClick={handleClose}
37
- />
38
- </div>
39
- <div className="popUpHeader col-lg-12 d-flex justify-content-center mb-2">
40
- Jetzt teilen und weitersagen!
41
- </div>
42
- <div className="h-25 col-lg-12 socialMediaIconsSection d-flex flex-row align-items-center justify-content-center mx-auto">
43
- <a
44
- href="https://twitter.com/intent/tweet?url=https://www.nestiq.de&text=Nestiq"
45
- className="text-decoration-none"
46
- target="blank"
47
- >
48
- <div className=" flex-column d-flex align-items-center">
49
- <img
50
- src={Xtwitter}
51
- alt="twitter"
52
- className="socialMediaIcons"
53
- />
54
- <span className="socialMediaIconText">Xtwitter</span>
55
- </div>
56
- </a>
57
-
58
- <a
59
- href="https://www.facebook.com/sharer/sharer.php?u=https://www.nestiq.de"
60
- className="text-decoration-none"
61
- target="blank"
62
- >
63
- <div className=" flex-column d-flex align-items-center">
64
- <img
65
- src={facebook}
66
- alt="facebook"
67
- className="socialMediaIcons "
68
- />
69
- <span className="socialMediaIconText">Facebook</span>
70
- </div>
71
- </a>
72
-
73
- <a
74
- href="https://api.whatsapp.com/send?text=https://www.nestiq.de"
75
- target="blank"
76
- className="text-decoration-none"
77
- >
78
- <div className=" flex-column d-flex align-items-center">
79
- <img
80
- src={whatsapp}
81
- alt="whatsapp"
82
- className=" socialMediaIcons"
83
- />
84
- <span className="socialMediaIconText">WhatsApp</span>
85
- </div>
86
- </a>
87
-
88
- <a
89
- href="https://www.linkedin.com/shareArticle?mini=true&url=https://www.nestiq.de"
90
- target="blank"
91
- className="text-decoration-none"
92
- >
93
- <div className=" flex-column d-flex align-items-center">
94
- <img
95
- src={linkedln}
96
- alt="linkedin"
97
- className=" socialMediaIcons"
98
- />
99
- <span className="socialMediaIconText">LinkedIn</span>
100
- </div>
101
- </a>
102
-
103
- <a
104
- href="https://www.nestiq.de"
105
- target="blank"
106
- className="text-decoration-none"
107
- >
108
- <div className=" flex-column d-flex align-items-center">
109
- <img src={email} alt="email" className=" socialMediaIcons" />
110
- <span className="socialMediaIconText">E-mail</span>
111
- </div>
112
- </a>
113
- </div>
114
- <div className="col-10 mx-auto">
115
- <div className=" row align-items-center position-relative">
116
- <input
117
- ref={urlInputRef}
118
- type="text"
119
- className="popup_search-input rounded-4 border border-0 "
120
- placeholder="Enter link here"
121
- value={window.location.href}
122
- readOnly
123
- />
124
- <button
125
- onClick={copyToClipboard}
126
- className="popupcustom-button border border-0 position-absolute me-2 col-lg-3 col-md-3 col-sm-3 rounded-4 fs-6"
127
- type="button"
128
- id="button"
129
- >
130
- <strong>Kopieren</strong>
131
- </button>
132
- </div>
133
- </div>
134
- </div>
135
- </div>
136
- )}
137
- </div>
138
- );
139
- }
1
+ import React, { useRef, useState } from "react";
2
+ import email from "../../assets/Images/envelope-fill.svg";
3
+ import facebook from "../../assets/Images/facebook.svg";
4
+ import x from "../../assets/Images/icon_close_2.png";
5
+ import linkedln from "../../assets/Images/linkedin.svg";
6
+ import Xtwitter from "../../assets/Images/twitter-x.svg";
7
+ import whatsapp from "../../assets/Images/whatsapp.svg";
8
+ import "./PopUp.css";
9
+
10
+ interface Popupprops {
11
+ onClick: () => void;
12
+ }
13
+ export default function PopUp(props: Popupprops) {
14
+ const [showPopUp, setShowPopUp] = useState(true);
15
+
16
+ const handleClose = () => {
17
+ setShowPopUp(false);
18
+ };
19
+ const urlInputRef = useRef<HTMLInputElement | null>(null);
20
+
21
+ const copyToClipboard = () => {
22
+ urlInputRef.current!.select();
23
+ document.execCommand("copy");
24
+ // toast.success("URL copied to clipboard!");
25
+ };
26
+
27
+ return (
28
+ <div>
29
+ {showPopUp && (
30
+ <div className="popup-overlay">
31
+ <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">
32
+ <div className="end-0 top-0 position-absolute ">
33
+ <img
34
+ src={x}
35
+ alt="close"
36
+ className="closeIcon me-2"
37
+ onClick={handleClose}
38
+ />
39
+ </div>
40
+ <div className="popUpHeader col-lg-12 d-flex justify-content-center mb-2">
41
+ Jetzt teilen und weitersagen!
42
+ </div>
43
+ <div className="h-25 col-lg-12 socialMediaIconsSection d-flex flex-row align-items-center justify-content-center mx-auto">
44
+ <a
45
+ href="https://twitter.com/intent/tweet?url=https://www.nestiq.de&text=Nestiq"
46
+ className="text-decoration-none"
47
+ target="blank"
48
+ >
49
+ <div className=" flex-column d-flex align-items-center">
50
+ <img
51
+ src={Xtwitter}
52
+ alt="twitter"
53
+ className="socialMediaIcons"
54
+ />
55
+ <span className="socialMediaIconText">Xtwitter</span>
56
+ </div>
57
+ </a>
58
+
59
+ <a
60
+ href="https://www.facebook.com/sharer/sharer.php?u=https://www.nestiq.de"
61
+ className="text-decoration-none"
62
+ target="blank"
63
+ >
64
+ <div className=" flex-column d-flex align-items-center">
65
+ <img
66
+ src={facebook}
67
+ alt="facebook"
68
+ className="socialMediaIcons "
69
+ />
70
+ <span className="socialMediaIconText">Facebook</span>
71
+ </div>
72
+ </a>
73
+
74
+ <a
75
+ href="https://api.whatsapp.com/send?text=https://www.nestiq.de"
76
+ target="blank"
77
+ className="text-decoration-none"
78
+ >
79
+ <div className=" flex-column d-flex align-items-center">
80
+ <img
81
+ src={whatsapp}
82
+ alt="whatsapp"
83
+ className=" socialMediaIcons"
84
+ />
85
+ <span className="socialMediaIconText">WhatsApp</span>
86
+ </div>
87
+ </a>
88
+
89
+ <a
90
+ href="https://www.linkedin.com/shareArticle?mini=true&url=https://www.nestiq.de"
91
+ target="blank"
92
+ className="text-decoration-none"
93
+ >
94
+ <div className=" flex-column d-flex align-items-center">
95
+ <img
96
+ src={linkedln}
97
+ alt="linkedin"
98
+ className=" socialMediaIcons"
99
+ />
100
+ <span className="socialMediaIconText">LinkedIn</span>
101
+ </div>
102
+ </a>
103
+
104
+ <a
105
+ href="https://www.nestiq.de"
106
+ target="blank"
107
+ className="text-decoration-none"
108
+ >
109
+ <div className=" flex-column d-flex align-items-center">
110
+ <img src={email} alt="email" className=" socialMediaIcons" />
111
+ <span className="socialMediaIconText">E-mail</span>
112
+ </div>
113
+ </a>
114
+ </div>
115
+ <div className="col-10 mx-auto">
116
+ <div className=" row align-items-center position-relative">
117
+ <input
118
+ ref={urlInputRef}
119
+ type="text"
120
+ className="popup_search-input rounded-4 border border-0 "
121
+ placeholder="Enter link here"
122
+ value={window.location.href}
123
+ readOnly
124
+ />
125
+ <button
126
+ onClick={copyToClipboard}
127
+ className="popupcustom-button border border-0 position-absolute me-2 col-lg-3 col-md-3 col-sm-3 rounded-4 fs-6"
128
+ type="button"
129
+ id="button"
130
+ >
131
+ <strong>Kopieren</strong>
132
+ </button>
133
+ </div>
134
+ </div>
135
+ </div>
136
+ </div>
137
+ )}
138
+ </div>
139
+ );
140
+ }
package/src/index.tsx CHANGED
@@ -1,13 +1,7 @@
1
- import "react-toastify/dist/ReactToastify.css";
2
-
3
- export { default as Button } from "./components/Button/Button";
4
- export { default as Popup } from "./components/Popup/Popup";
5
- // export { default as ImageListPopup } from "./components/ImageListPopup/ImageListPopup";
6
- export { default as PropertyDetailsHeader } from "./components/PropertyDetailsHeader/PropertyDetailsHeader";
7
- export { default as PropertyImageList } from "./components/PropertyImageList//PropertyImageList";
8
- export { default as PropertyCard } from "./components/PropertyCard//PropertyCard";
9
- export { default as SharePopup } from "./components/SharePopup/SharePopup";
10
- export {
11
- default as ToastWrapper,
12
- showToast,
13
- } from "./components/ToastWrapper/ToastWrapper";
1
+ export { default as Button } from "./components/Button/Button";
2
+ export { default as Popup } from "./components/Popup/Popup";
3
+ // export { default as ImageListPopup } from "./components/ImageListPopup/ImageListPopup";
4
+ export { default as PropertyDetailsHeader } from "./components/PropertyDetailsHeader/PropertyDetailsHeader";
5
+ export { default as PropertyImageList } from "./components/PropertyImageList//PropertyImageList";
6
+ export { default as PropertyCard } from "./components/PropertyCard//PropertyCard";
7
+
@@ -1,4 +0,0 @@
1
- import React from "react";
2
- import "./SharePopup.css";
3
- import "../../styles/common.css";
4
- export default function SharePopup(): React.JSX.Element;
@@ -1,4 +0,0 @@
1
- import React from "react";
2
- export declare const showToast: (message: string, type?: "info" | "success" | "warning" | "error") => void;
3
- declare const ToastWrapper: React.FC;
4
- export default ToastWrapper;
@@ -1,3 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-envelope-fill" viewBox="0 0 16 16">
2
- <path d="M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zM6.761 8.83l-6.57 4.027A2 2 0 0 0 2 14h12a2 2 0 0 0 1.808-1.144l-6.57-4.027L8 9.586zm3.436-.586L16 11.801V4.697z"/>
3
- </svg>
@@ -1,3 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-facebook" viewBox="0 0 16 16">
2
- <path d="M16 8.049c0-4.446-3.582-8.05-8-8.05C3.58 0-.002 3.603-.002 8.05c0 4.017 2.926 7.347 6.75 7.951v-5.625h-2.03V8.05H6.75V6.275c0-2.017 1.195-3.131 3.022-3.131.876 0 1.791.157 1.791.157v1.98h-1.009c-.993 0-1.303.621-1.303 1.258v1.51h2.218l-.354 2.326H9.25V16c3.824-.604 6.75-3.934 6.75-7.951"/>
3
- </svg>
@@ -1,3 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-linkedin" viewBox="0 0 16 16">
2
- <path d="M0 1.146C0 .513.526 0 1.175 0h13.65C15.474 0 16 .513 16 1.146v13.708c0 .633-.526 1.146-1.175 1.146H1.175C.526 16 0 15.487 0 14.854zm4.943 12.248V6.169H2.542v7.225zm-1.2-8.212c.837 0 1.358-.554 1.358-1.248-.015-.709-.52-1.248-1.342-1.248S2.4 3.226 2.4 3.934c0 .694.521 1.248 1.327 1.248zm4.908 8.212V9.359c0-.216.016-.432.08-.586.173-.431.568-.878 1.232-.878.869 0 1.216.662 1.216 1.634v3.865h2.401V9.25c0-2.22-1.184-3.252-2.764-3.252-1.274 0-1.845.7-2.165 1.193v.025h-.016l.016-.025V6.169h-2.4c.03.678 0 7.225 0 7.225z"/>
3
- </svg>
@@ -1,3 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-twitter-x" viewBox="0 0 16 16">
2
- <path d="M12.6.75h2.454l-5.36 6.142L16 15.25h-4.937l-3.867-5.07-4.425 5.07H.316l5.733-6.57L0 .75h5.063l3.495 4.633L12.601.75Zm-.86 13.028h1.36L4.323 2.145H2.865z"/>
3
- </svg>