@hellobetterdigitalnz/selwynui 0.0.1-70 → 0.0.1-72
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/package.json +1 -1
- package/src/Components/DataDisplay/ListingDetailBlock/ListingDetailBlock.stories.tsx +4 -4
- package/src/Components/DataDisplay/ListingDetailBlock/ListingDetailBlockProps.tsx +1 -1
- package/src/Components/DataDisplay/ListingDetailBlock/listingDetailBlock.module.scss +51 -34
- package/src/Components/DataDisplay/TestimonyCard/TestimonyCard.stories.tsx +1 -1
- package/src/Components/DataDisplay/TestimonyCard/TestimonyCard.tsx +1 -5
- package/src/Components/DataDisplay/TestimonyCard/testimonyCard.module.scss +2 -0
- package/src/Components/Layout/Header/Header.stories.tsx +20 -20
- package/src/Components/Layout/Header/MobileNavigation/MobileNavigationItem.tsx +7 -3
- package/src/Components/Layout/Header/MobileNavigation/MobileNavigationItemProps.tsx +3 -0
- package/src/Components/Layout/Header/MobileNavigation/MobileSubNavigation/MobileSubNavigationItem.tsx +7 -3
- package/src/Components/Layout/Header/MobileNavigation/mobileNavigation.module.scss +9 -1
package/package.json
CHANGED
|
@@ -49,22 +49,22 @@ export const Default: Story = {
|
|
|
49
49
|
{
|
|
50
50
|
icon: <Path type={'fill'}/>,
|
|
51
51
|
label: 'Distance from Christchurch Airport',
|
|
52
|
-
value:
|
|
52
|
+
value: <p>91 km, approximately 1.25 hours</p>,
|
|
53
53
|
},
|
|
54
54
|
{
|
|
55
55
|
icon: <Mountains type={'fill'}/>,
|
|
56
56
|
label: 'Elevations',
|
|
57
|
-
value:
|
|
57
|
+
value: <p>Top 1980m / Base 1302m</p>,
|
|
58
58
|
},
|
|
59
59
|
{
|
|
60
60
|
icon: <MapPin type={'fill'}/>,
|
|
61
61
|
label: 'Address',
|
|
62
|
-
value:
|
|
62
|
+
value: <p>State Highway 73,<br/> Selwyn, New Zealand</p>,
|
|
63
63
|
},
|
|
64
64
|
{
|
|
65
65
|
icon: <Clock type={'fill'}/>,
|
|
66
66
|
label: 'Hours',
|
|
67
|
-
value:
|
|
67
|
+
value: <p>9am–4pm, daily during winter</p>,
|
|
68
68
|
},
|
|
69
69
|
{
|
|
70
70
|
icon: <DeviceMobile type={'fill'}/>,
|
|
@@ -3,7 +3,7 @@ import { ReactNode } from 'react';
|
|
|
3
3
|
export interface CallToActionItem {
|
|
4
4
|
icon: ReactNode | string;
|
|
5
5
|
label: string;
|
|
6
|
-
value:
|
|
6
|
+
value: ReactNode;
|
|
7
7
|
url?: string;
|
|
8
8
|
target?: "_blank" | "_self" | "_parent" | "_top" | undefined;
|
|
9
9
|
valueClassName?: 'link' | 'default';
|
|
@@ -1,26 +1,27 @@
|
|
|
1
1
|
.listingDetail {
|
|
2
2
|
display: flex;
|
|
3
|
-
gap: 48px;
|
|
4
|
-
padding: 32px;
|
|
3
|
+
// gap: 48px;
|
|
4
|
+
// padding: 32px;
|
|
5
5
|
border-radius: 8px;
|
|
6
6
|
position: relative;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
}
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
// &::before {
|
|
10
|
+
// content: '';
|
|
11
|
+
// position: absolute;
|
|
12
|
+
// left: 51%;
|
|
13
|
+
// top: 32px;
|
|
14
|
+
// bottom: 32px;
|
|
15
|
+
// width: 1px;
|
|
16
|
+
// background: var(--color-bg);
|
|
17
|
+
// transform: translateX(-50%);
|
|
18
|
+
// z-index: 1;
|
|
19
|
+
// pointer-events: none;
|
|
20
|
+
|
|
21
|
+
// @media (max-width: 900px) {
|
|
22
|
+
// display: none;
|
|
23
|
+
// }
|
|
24
|
+
// }
|
|
24
25
|
|
|
25
26
|
@media (max-width: 900px) {
|
|
26
27
|
flex-direction: column-reverse;
|
|
@@ -31,11 +32,24 @@
|
|
|
31
32
|
|
|
32
33
|
.mainContent {
|
|
33
34
|
width: 50%;
|
|
34
|
-
padding-right:
|
|
35
|
+
padding-right: 72px;
|
|
36
|
+
border-right: 1px solid var(--color-bg);
|
|
37
|
+
|
|
38
|
+
p {
|
|
39
|
+
font-size: var(--font-size-h6);
|
|
40
|
+
letter-spacing: var(--letter-spacing-h6);
|
|
41
|
+
line-height: 1.3;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.sectioncontent {
|
|
45
|
+
margin-bottom: 32px;
|
|
46
|
+
font-size: var(--font-size-h6);
|
|
47
|
+
letter-spacing: var(--letter-spacing-h6);
|
|
48
|
+
}
|
|
35
49
|
|
|
36
50
|
@media (max-width: 1200px) {
|
|
37
|
-
padding-left: 80px;
|
|
38
|
-
padding-right: 40px;
|
|
51
|
+
// padding-left: 80px;
|
|
52
|
+
// padding-right: 40px;
|
|
39
53
|
}
|
|
40
54
|
|
|
41
55
|
@media (max-width: 900px) {
|
|
@@ -43,6 +57,7 @@
|
|
|
43
57
|
padding-left: 0;
|
|
44
58
|
padding-right: 0;
|
|
45
59
|
order: 2;
|
|
60
|
+
border-right: 0;
|
|
46
61
|
}
|
|
47
62
|
|
|
48
63
|
.title {
|
|
@@ -105,7 +120,6 @@
|
|
|
105
120
|
margin: 0;
|
|
106
121
|
display: grid;
|
|
107
122
|
grid-template-columns: repeat(2, 2fr);
|
|
108
|
-
gap: 9px;
|
|
109
123
|
|
|
110
124
|
@media (max-width: 600px) {
|
|
111
125
|
grid-template-columns: 1fr;
|
|
@@ -119,7 +133,7 @@
|
|
|
119
133
|
font-size: 18px;
|
|
120
134
|
font-weight: 400;
|
|
121
135
|
line-height: 1.4;
|
|
122
|
-
|
|
136
|
+
margin-bottom: 8px;
|
|
123
137
|
|
|
124
138
|
@media (max-width: 900px) {
|
|
125
139
|
font-size: 16px;
|
|
@@ -130,6 +144,7 @@
|
|
|
130
144
|
width: 32px;
|
|
131
145
|
color: var(--color-bg);
|
|
132
146
|
flex-shrink: 0;
|
|
147
|
+
margin-right: 12px;
|
|
133
148
|
|
|
134
149
|
@media (max-width: 900px) {
|
|
135
150
|
height: 24px;
|
|
@@ -142,33 +157,34 @@
|
|
|
142
157
|
width: 50%;
|
|
143
158
|
display: flex;
|
|
144
159
|
flex-direction: column;
|
|
145
|
-
gap: 60px;
|
|
146
|
-
padding-left:
|
|
160
|
+
// gap: 60px;
|
|
161
|
+
padding-left: 72px;
|
|
147
162
|
|
|
148
163
|
@media (max-width: 1200px) {
|
|
149
|
-
padding-left: 40px;
|
|
150
|
-
gap: 48px;
|
|
164
|
+
// padding-left: 40px;
|
|
165
|
+
// gap: 48px;
|
|
151
166
|
}
|
|
152
167
|
|
|
153
168
|
@media (max-width: 900px) {
|
|
154
169
|
width: 100%;
|
|
155
170
|
padding-left: 0;
|
|
156
|
-
gap: 40px;
|
|
171
|
+
// gap: 40px;
|
|
157
172
|
order: 1;
|
|
158
173
|
}
|
|
159
174
|
|
|
160
175
|
@media (max-width: 480px) {
|
|
161
|
-
gap: 32px;
|
|
176
|
+
// gap: 32px;
|
|
162
177
|
}
|
|
163
178
|
}
|
|
164
179
|
|
|
165
180
|
.infoItem {
|
|
166
181
|
display: flex;
|
|
167
|
-
gap: 16px;
|
|
182
|
+
// gap: 16px;
|
|
183
|
+
margin-bottom: 72px;
|
|
168
184
|
align-items: center;
|
|
169
185
|
|
|
170
186
|
@media (max-width: 900px) {
|
|
171
|
-
|
|
187
|
+
margin-bottom: 36px;
|
|
172
188
|
}
|
|
173
189
|
|
|
174
190
|
svg {
|
|
@@ -176,6 +192,7 @@
|
|
|
176
192
|
width: 48px;
|
|
177
193
|
height: 48px;
|
|
178
194
|
flex-shrink: 0;
|
|
195
|
+
margin-right: 16px;
|
|
179
196
|
|
|
180
197
|
@media (max-width: 900px) {
|
|
181
198
|
width: 40px;
|
|
@@ -196,8 +213,9 @@
|
|
|
196
213
|
.infoLabel {
|
|
197
214
|
font-size: 24px;
|
|
198
215
|
letter-spacing: -0.48px;
|
|
199
|
-
line-height: 1
|
|
216
|
+
line-height: 1;
|
|
200
217
|
font-weight: 700;
|
|
218
|
+
margin-bottom: 8px;
|
|
201
219
|
|
|
202
220
|
@media (max-width: 900px) {
|
|
203
221
|
font-size: 18px;
|
|
@@ -243,6 +261,5 @@
|
|
|
243
261
|
}
|
|
244
262
|
|
|
245
263
|
.button {
|
|
246
|
-
margin-top: 5px;
|
|
247
264
|
max-width: 177px !important;
|
|
248
265
|
}
|
|
@@ -25,7 +25,7 @@ const TestimonyCardTemplate: Story = {
|
|
|
25
25
|
<TestimonyCard
|
|
26
26
|
testimonies={[
|
|
27
27
|
{
|
|
28
|
-
image: '
|
|
28
|
+
image: '',
|
|
29
29
|
testimony: 'Living in Selwyn is like waking up in a dream every single day. The community is not only vibrant but also filled with friendly faces and engaging activities that bring everyone together.\n\nThe sunsets here are truly breathtaking, painting the sky in hues of orange, pink, and purple, creating a picturesque backdrop that makes every evening feel special!',
|
|
30
30
|
author: 'Liam & Emma'
|
|
31
31
|
},
|
|
@@ -38,12 +38,8 @@ const TestimonyCard = (props: TestimonyCardProps) => {
|
|
|
38
38
|
<div key={index}>
|
|
39
39
|
<div className={styles.testimonySlide}>
|
|
40
40
|
<div className={styles.testimonyCardLeft}>
|
|
41
|
-
|
|
42
|
-
src={testimony.image}
|
|
43
|
-
alt={`${testimony.author} testimonial`}
|
|
44
|
-
/>
|
|
41
|
+
{testimony.image && <img src={testimony.image} alt={`${testimony.author} testimonial`}/>}
|
|
45
42
|
</div>
|
|
46
|
-
|
|
47
43
|
<div className={styles.testimonyCardRight}>
|
|
48
44
|
<div className={styles.testimonyContent}>
|
|
49
45
|
<div className={styles.quoteIcon}>
|
|
@@ -65,26 +65,26 @@ const HeaderTemplate: Story = {
|
|
|
65
65
|
{/* <List/>*/}
|
|
66
66
|
{/*</HeaderRightItem>*/}
|
|
67
67
|
</HeaderRight>
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
68
|
+
<MobileNavigation>
|
|
69
|
+
<li>
|
|
70
|
+
<MobileNavigationItem label={'Attractions'}/>
|
|
71
|
+
</li>
|
|
72
|
+
<li>
|
|
73
|
+
<MobileNavigationItem label={'Eateries'}/>
|
|
74
|
+
</li>
|
|
75
|
+
<li>
|
|
76
|
+
<MobileNavigationItem label={'Accommodation'}/>
|
|
77
|
+
</li>
|
|
78
|
+
<li>
|
|
79
|
+
<MobileNavigationItem label={'Why visit Selwyn'}/>
|
|
80
|
+
</li>
|
|
81
|
+
<li>
|
|
82
|
+
<MobileNavigationItem label={'Events'}/>
|
|
83
|
+
</li>
|
|
84
|
+
<li>
|
|
85
|
+
<MobileNavigationItem label={'Venues'}/>
|
|
86
|
+
</li>
|
|
87
|
+
</MobileNavigation>
|
|
88
88
|
</Header>
|
|
89
89
|
},
|
|
90
90
|
};
|
|
@@ -4,12 +4,16 @@ import ArrowRight from "../../../Icons/Arrows/ArrowRight/ArrowRight.tsx";
|
|
|
4
4
|
|
|
5
5
|
const MobileNavigationItem = (props : MobileNavigationItemProps) => {
|
|
6
6
|
|
|
7
|
-
const {label} = props
|
|
7
|
+
const {label, href, target, onClick} = props
|
|
8
8
|
|
|
9
9
|
return <div className={styles.mobileNavItem}>
|
|
10
10
|
<div className={styles.mobileNavItemWrapper}>
|
|
11
|
-
<
|
|
12
|
-
|
|
11
|
+
<a href={href} target={target}>
|
|
12
|
+
{label}
|
|
13
|
+
</a>
|
|
14
|
+
<div onClick={onClick} className={styles.mobileNavItemSvg}>
|
|
15
|
+
<ArrowRight type={'light'}/>
|
|
16
|
+
</div>
|
|
13
17
|
</div>
|
|
14
18
|
</div>
|
|
15
19
|
}
|
|
@@ -4,12 +4,16 @@ import MobileNavigationItemProps from "../MobileNavigationItemProps.tsx";
|
|
|
4
4
|
|
|
5
5
|
const MobileNavigationItem = (props : MobileNavigationItemProps) => {
|
|
6
6
|
|
|
7
|
-
const {label} = props
|
|
7
|
+
const {label, href, target, onClick} = props
|
|
8
8
|
|
|
9
9
|
return <div className={styles.mobileNavItem}>
|
|
10
10
|
<div className={styles.mobileNavItemWrapper}>
|
|
11
|
-
<
|
|
12
|
-
|
|
11
|
+
<a href={href} target={target}>
|
|
12
|
+
{label}
|
|
13
|
+
</a>
|
|
14
|
+
<div onClick={onClick} className={styles.mobileNavItemSvg}>
|
|
15
|
+
<ArrowRight type={'light'}/>
|
|
16
|
+
</div>
|
|
13
17
|
</div>
|
|
14
18
|
</div>
|
|
15
19
|
}
|
|
@@ -21,21 +21,29 @@
|
|
|
21
21
|
color: var(--header-color);
|
|
22
22
|
transition: all 0.3s ease-in-out;
|
|
23
23
|
|
|
24
|
+
.mobileNavItemSvg{
|
|
25
|
+
display: flex;
|
|
26
|
+
}
|
|
27
|
+
|
|
24
28
|
svg {
|
|
25
29
|
margin-left: 16px;
|
|
26
30
|
transition: transform 0.3s ease-in-out;
|
|
27
31
|
}
|
|
28
32
|
|
|
29
33
|
&:hover {
|
|
34
|
+
color: var(--color-sand);
|
|
35
|
+
|
|
30
36
|
svg {
|
|
31
37
|
animation: wiggle 0.6s ease-in-out infinite;
|
|
32
38
|
}
|
|
33
39
|
}
|
|
34
40
|
|
|
35
|
-
|
|
41
|
+
a{
|
|
36
42
|
font-size: var(--font-size-h6);
|
|
37
43
|
line-height: var(--line-height-h6);
|
|
38
44
|
font-weight: var(--font-weight-h6);
|
|
45
|
+
color: inherit;
|
|
46
|
+
text-decoration: none;
|
|
39
47
|
}
|
|
40
48
|
|
|
41
49
|
}
|