@hellobetterdigitalnz/selwynui 0.0.1-2 → 0.0.1-20
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/Components/DataDisplay/Accordion/Accordion.d.ts +3 -0
- package/dist/Components/DataDisplay/Accordion/AccordionContext.d.ts +3 -0
- package/dist/Components/DataDisplay/Accordion/AccordionContextInterface.d.ts +7 -0
- package/dist/Components/DataDisplay/Accordion/AccordionItem.d.ts +3 -0
- package/dist/Components/DataDisplay/Accordion/AccordionItemProps.d.ts +18 -0
- package/dist/Components/DataDisplay/Accordion/AccordionProps.d.ts +11 -0
- package/dist/Components/DataDisplay/Accordion/AccordionProvider.d.ts +3 -0
- package/dist/Components/DataDisplay/Accordion/AccordionProviderInterface.d.ts +7 -0
- package/dist/Components/DataDisplay/Accordion/accordion-bg-design.d.ts +2 -0
- package/dist/Components/DataDisplay/DetailsCard/DetailsCardProps.d.ts +7 -1
- package/dist/Components/DataDisplay/ImageContent/ImageContentProps.d.ts +4 -4
- package/dist/Components/DataDisplay/Pathway/PathwayProps.d.ts +13 -4
- package/dist/Components/DataDisplay/PathwayBlock/PathwayBlock.d.ts +3 -0
- package/dist/Components/DataDisplay/PathwayBlock/PathwayBlockProps.d.ts +11 -0
- package/dist/Components/DataDisplay/PromoBannerBlock/PromoBannerBlockProps.d.ts +9 -9
- package/dist/Components/DataDisplay/PromoBannerBlock/brand-piller.d.ts +3 -0
- package/dist/Components/DataDisplay/TestimonyCard/TestimonyCard.d.ts +3 -0
- package/dist/Components/DataDisplay/TestimonyCard/TestimonyCardProps.d.ts +10 -0
- package/dist/Components/DataDisplay/index.d.ts +2 -0
- package/dist/Components/Form/Button/Button.d.ts +3 -0
- package/dist/Components/Form/Button/ButtonProps.d.ts +16 -5
- package/dist/Components/Layout/Header/HeaderProps.d.ts +1 -0
- package/dist/Components/Layout/Header/MegaMenu/MegaMenu.d.ts +2 -1
- package/dist/Components/Layout/Header/MegaMenu/MegaMenuProps.d.ts +28 -1
- package/dist/Components/Layout/Header/MobileNavigation/MobileNavigation.d.ts +3 -0
- package/dist/Components/Layout/Header/MobileNavigation/MobileNavigationItem.d.ts +3 -0
- package/dist/Components/Layout/Header/MobileNavigation/MobileNavigationItemProps.d.ts +4 -0
- package/dist/Components/Layout/Header/MobileNavigation/MobileNavigationProps.d.ts +7 -0
- package/dist/Components/Layout/Header/MobileNavigation/MobileSubNavigation/MobileSubNavigation.d.ts +3 -0
- package/dist/Components/Layout/Header/MobileNavigation/MobileSubNavigation/MobileSubNavigationItem.d.ts +3 -0
- package/dist/Components/Layout/Header/MobileNavigation/MobileSubNavigation/MobileSubNavigationItemProps.d.ts +4 -0
- package/dist/Components/Layout/Header/MobileNavigation/MobileSubNavigation/MobileSubNavigationProps.d.ts +7 -0
- package/dist/Components/Layout/Header/MobileNavigation/MobileWhatuOverlay.d.ts +2 -0
- package/dist/Components/Layout/HeroBanner/HeroBannerProps.d.ts +1 -1
- package/dist/Components/Layout/index.d.ts +3 -1
- package/dist/Components/Shared/Hook/useScrollFadeIn/useScrollFadeIn.d.ts +6 -0
- package/dist/Components/Shared/PillarIcon/PillarIcon.d.ts +3 -0
- package/dist/Components/Shared/PillarIcon/PillarIconsProps.d.ts +4 -0
- package/dist/Components/Shared/PillarLogo/PillarLogo.d.ts +6 -0
- package/dist/Components/Shared/ScrollFadeIn/ScrollFadeIn.d.ts +12 -0
- package/dist/Components/index.d.ts +5 -0
- package/dist/img/accordion-image.svg +9 -0
- package/dist/index.cjs.js +10 -10
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +1 -5
- package/dist/index.es.js +1406 -678
- package/dist/index.es.js.map +1 -1
- package/dist/selwynui.css +1 -1
- package/package.json +2 -1
- package/src/Components/DataDisplay/Accordion/Accordion.tsx +15 -17
- package/src/Components/DataDisplay/DetailsCard/DetailsCard.stories.tsx +7 -3
- package/src/Components/DataDisplay/DetailsCard/DetailsCard.tsx +11 -39
- package/src/Components/DataDisplay/DetailsCard/DetailsCardProps.tsx +7 -1
- package/src/Components/DataDisplay/DetailsCard/detailsCard.module.scss +10 -10
- package/src/Components/DataDisplay/ImageContent/ImageContent.stories.tsx +50 -12
- package/src/Components/DataDisplay/ImageContent/ImageContent.tsx +68 -21
- package/src/Components/DataDisplay/ImageContent/ImageContentProps.tsx +2 -1
- package/src/Components/DataDisplay/ImageContent/imageContent.module.scss +144 -46
- package/src/Components/DataDisplay/Pathway/Pathway.stories.tsx +50 -13
- package/src/Components/DataDisplay/Pathway/Pathway.tsx +15 -4
- package/src/Components/DataDisplay/Pathway/PathwayProps.tsx +13 -4
- package/src/Components/DataDisplay/PathwayBlock/PathwayBlock.tsx +0 -2
- package/src/Components/DataDisplay/PromoBannerBlock/PromoBanner.stories.tsx +1 -2
- package/src/Components/DataDisplay/PromoBannerBlock/PromoBannerBlock.tsx +1 -5
- package/src/Components/DataDisplay/PromoBannerBlock/promoBanner.module.scss +3 -2
- package/src/Components/DataDisplay/index.ts +5 -1
- package/src/Components/DataDisplay/slider.scss +2 -0
- package/src/Components/Form/Button/ButtonProps.tsx +1 -1
- package/src/Components/Form/Button/button.module.scss +0 -1
- package/src/Components/Layout/Footer/Footer.stories.tsx +1 -1
- package/src/Components/Layout/Header/Header.stories.tsx +34 -7
- package/src/Components/Layout/Header/Header.tsx +2 -2
- package/src/Components/Layout/Header/HeaderProps.tsx +1 -0
- package/src/Components/Layout/Header/HeaderRightItem.tsx +2 -2
- package/src/Components/Layout/Header/MegaMenu/MegaMenu.tsx +156 -83
- package/src/Components/Layout/Header/MegaMenu/MegaMenuProps.tsx +22 -9
- package/src/Components/Layout/Header/MegaMenu/megaMenu.module.scss +4 -2
- package/src/Components/Layout/Header/MobileNavigation/MobileNavigation.tsx +26 -0
- package/src/Components/Layout/Header/MobileNavigation/MobileNavigationItem.tsx +17 -0
- package/src/Components/Layout/Header/MobileNavigation/MobileNavigationItemProps.tsx +5 -0
- package/src/Components/Layout/Header/MobileNavigation/MobileNavigationProps.tsx +9 -0
- package/src/Components/Layout/Header/MobileNavigation/MobileSubNavigation/MobileSubNavigation.tsx +21 -0
- package/src/Components/Layout/Header/MobileNavigation/MobileSubNavigation/MobileSubNavigationItem.tsx +17 -0
- package/src/Components/Layout/Header/MobileNavigation/MobileSubNavigation/MobileSubNavigationItemProps.tsx +5 -0
- package/src/Components/Layout/Header/MobileNavigation/MobileSubNavigation/MobileSubNavigationProps.tsx +9 -0
- package/src/Components/Layout/Header/MobileNavigation/MobileWhatuOverlay.tsx +18 -0
- package/src/Components/Layout/Header/MobileNavigation/mobileNavigation.module.scss +62 -0
- package/src/Components/Layout/Header/header.module.scss +22 -3
- package/src/Components/Layout/Header/header.scss +15 -0
- package/src/Components/Layout/HeroBanner/HeroBanner.tsx +13 -3
- package/src/Components/Layout/HeroBanner/HeroBannerProps.tsx +1 -1
- package/src/Components/Layout/HeroBanner/heroBanner.module.scss +132 -24
- package/src/Components/Layout/index.ts +1 -2
- package/src/Components/Shared/Container/container.module.scss +3 -3
- package/src/Components/Shared/PillarIcon/PillarIcon.tsx +4 -4
- package/src/Components/index.ts +5 -0
- package/dist/index.es.d.ts +0 -2
- package/dist/tsconfig.app.tsbuildinfo +0 -1
|
@@ -100,8 +100,24 @@
|
|
|
100
100
|
&.maskedImageContent{
|
|
101
101
|
|
|
102
102
|
.pillarlogo{
|
|
103
|
+
display: flex;
|
|
103
104
|
margin-bottom: 48px;
|
|
105
|
+
align-items: center;
|
|
104
106
|
|
|
107
|
+
p{
|
|
108
|
+
margin-left: 16px;
|
|
109
|
+
font-size: 18px;
|
|
110
|
+
font-style: normal;
|
|
111
|
+
font-weight: 700;
|
|
112
|
+
line-height: 140%;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
&.pillarlogoFull{
|
|
116
|
+
svg{
|
|
117
|
+
width: 32px;
|
|
118
|
+
height: 32px;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
105
121
|
svg{
|
|
106
122
|
width: 160px;
|
|
107
123
|
height: 54px;
|
|
@@ -141,12 +157,14 @@
|
|
|
141
157
|
// full image
|
|
142
158
|
&.imageContentFull{
|
|
143
159
|
position: relative;
|
|
160
|
+
overflow: hidden;
|
|
144
161
|
|
|
145
162
|
.svgBackgroundPillar{
|
|
146
163
|
position: absolute;
|
|
147
164
|
width: 60%;
|
|
148
165
|
top: 0;
|
|
149
166
|
bottom: 0;
|
|
167
|
+
pointer-events: none;
|
|
150
168
|
}
|
|
151
169
|
|
|
152
170
|
.pillarlogo{
|
|
@@ -158,71 +176,51 @@
|
|
|
158
176
|
}
|
|
159
177
|
}
|
|
160
178
|
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
}
|
|
179
|
+
&.top-left{
|
|
180
|
+
.imageHolder{
|
|
181
|
+
border-radius: 200px 0 0 0;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
167
184
|
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
}
|
|
185
|
+
&.top-right{
|
|
186
|
+
.imageHolder{
|
|
187
|
+
border-radius: 0 200px 0 0;
|
|
172
188
|
}
|
|
173
189
|
}
|
|
174
190
|
|
|
175
|
-
&.bottom{
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
border-radius: 0px 0px 500px 0px;
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
&.right{
|
|
183
|
-
.imageHolder {
|
|
184
|
-
border-radius: 0px 0px 0px 500px;
|
|
185
|
-
}
|
|
191
|
+
&.bottom-right{
|
|
192
|
+
.imageHolder{
|
|
193
|
+
border-radius: 0 0 200px 0;
|
|
186
194
|
}
|
|
187
195
|
}
|
|
188
196
|
|
|
189
|
-
&.left{
|
|
190
|
-
.
|
|
191
|
-
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
.imageHolder {
|
|
195
|
-
height: 100%;
|
|
196
|
-
position: absolute;
|
|
197
|
-
width: calc(50vw + 10px);
|
|
198
|
-
right: 0;
|
|
199
|
-
left: unset;
|
|
197
|
+
&.bottom-left{
|
|
198
|
+
.imageHolder{
|
|
199
|
+
border-radius: 0 0 0 200px;
|
|
200
200
|
}
|
|
201
|
-
|
|
202
|
-
.content{
|
|
203
|
-
padding-left: 198px;
|
|
204
|
-
padding-right: 0;
|
|
205
|
-
}
|
|
206
|
-
|
|
207
201
|
}
|
|
208
202
|
|
|
209
203
|
.imageContentWrapper{
|
|
210
204
|
margin: 0px;
|
|
211
|
-
min-height: 935px;
|
|
212
205
|
}
|
|
213
206
|
|
|
214
207
|
.imageWrapper{
|
|
215
208
|
position: relative;
|
|
216
209
|
padding: 0px;
|
|
210
|
+
//width: 100%;
|
|
211
|
+
z-index: 1;
|
|
212
|
+
margin-top: 0;
|
|
213
|
+
width: calc(100% + 32px);
|
|
214
|
+
margin-left: -16px;
|
|
215
|
+
margin-right: -15px;
|
|
217
216
|
}
|
|
218
217
|
|
|
219
218
|
.imageHolder {
|
|
220
219
|
padding: 0;
|
|
221
220
|
height: 100%;
|
|
222
|
-
|
|
223
|
-
width:
|
|
224
|
-
|
|
225
|
-
overflow: hidden;
|
|
221
|
+
width: 100%;
|
|
222
|
+
min-width: 50vw;
|
|
223
|
+
min-height: 380px;
|
|
226
224
|
|
|
227
225
|
|
|
228
226
|
&::before {
|
|
@@ -238,8 +236,9 @@
|
|
|
238
236
|
}
|
|
239
237
|
|
|
240
238
|
.content{
|
|
241
|
-
padding:
|
|
242
|
-
padding-
|
|
239
|
+
padding-top: 32px;
|
|
240
|
+
padding-bottom: 32px;
|
|
241
|
+
padding-right: 0px;
|
|
243
242
|
|
|
244
243
|
.desc{
|
|
245
244
|
}
|
|
@@ -274,7 +273,65 @@
|
|
|
274
273
|
|
|
275
274
|
}
|
|
276
275
|
|
|
277
|
-
|
|
276
|
+
//Fluid
|
|
277
|
+
&.imageContentFluid{
|
|
278
|
+
overflow-x: hidden;
|
|
279
|
+
|
|
280
|
+
.pillarlogo{
|
|
281
|
+
display: flex;
|
|
282
|
+
margin-bottom: 48px;
|
|
283
|
+
align-items: center;
|
|
284
|
+
|
|
285
|
+
p{
|
|
286
|
+
margin-left: 16px;
|
|
287
|
+
font-size: 18px;
|
|
288
|
+
font-style: normal;
|
|
289
|
+
font-weight: 700;
|
|
290
|
+
line-height: 140%;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
&.pillarlogoFull{
|
|
294
|
+
svg{
|
|
295
|
+
width: 32px;
|
|
296
|
+
height: 32px;
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
svg{
|
|
300
|
+
width: 160px;
|
|
301
|
+
height: 54px;
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
.imageContentWrapper{
|
|
307
|
+
min-height: 725px;
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
.imageHolder{
|
|
311
|
+
min-width: 50vw;
|
|
312
|
+
border-radius: 0;
|
|
313
|
+
width: calc(100% + 32px);
|
|
314
|
+
margin-left: -16px;
|
|
315
|
+
margin-right: -16px;
|
|
316
|
+
position: relative;
|
|
317
|
+
|
|
318
|
+
.clipPath{
|
|
319
|
+
position: absolute;
|
|
320
|
+
top: 0;
|
|
321
|
+
bottom: 0;
|
|
322
|
+
color: var(--color-block-bg);
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
.content{
|
|
328
|
+
padding-top: 32px;
|
|
329
|
+
padding-bottom: 32px;
|
|
330
|
+
}
|
|
331
|
+
|
|
332
|
+
}
|
|
333
|
+
|
|
334
|
+
@media screen and (min-width: 1200px){
|
|
278
335
|
|
|
279
336
|
&Wrapper{
|
|
280
337
|
margin: 0 -52px;
|
|
@@ -336,6 +393,47 @@
|
|
|
336
393
|
.pillarlogo{
|
|
337
394
|
margin-bottom: 48px;
|
|
338
395
|
}
|
|
396
|
+
|
|
397
|
+
&.top-left{
|
|
398
|
+
.imageHolder{
|
|
399
|
+
border-radius: 500px 0 0 0;
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
&.top-right{
|
|
404
|
+
.imageHolder{
|
|
405
|
+
border-radius: 0 500px 0 0;
|
|
406
|
+
}
|
|
407
|
+
}
|
|
408
|
+
|
|
409
|
+
&.bottom-right{
|
|
410
|
+
.imageHolder{
|
|
411
|
+
border-radius: 0 0 500px 0;
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
|
|
415
|
+
&.bottom-left{
|
|
416
|
+
.imageHolder{
|
|
417
|
+
border-radius: 0 0 0 500px;
|
|
418
|
+
}
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
.imageContentWrapper{
|
|
422
|
+
margin: 0px;
|
|
423
|
+
min-height: 935px;
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
.imageWrapper{
|
|
427
|
+
width: 50%;
|
|
428
|
+
margin-left: 0px;
|
|
429
|
+
margin-right: 0px;
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
.content{
|
|
433
|
+
padding-right: 198px;
|
|
434
|
+
padding-left: 0px;
|
|
435
|
+
}
|
|
436
|
+
|
|
339
437
|
}
|
|
340
438
|
|
|
341
439
|
}
|
|
@@ -1,27 +1,64 @@
|
|
|
1
|
+
import React from 'react'
|
|
1
2
|
import type { Meta, StoryObj } from '@storybook/react-vite';
|
|
2
3
|
import Pathway from './Pathway';
|
|
3
|
-
import {
|
|
4
|
+
import {ElementHolder} from "../../Shared";
|
|
4
5
|
|
|
5
6
|
const meta : Meta<typeof Pathway> = {
|
|
6
7
|
title: "Form / Pathway",
|
|
7
8
|
component: Pathway,
|
|
8
|
-
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
export default meta;
|
|
12
12
|
type Story = StoryObj<typeof Pathway>
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
14
|
+
const GridTemplate: Story = {
|
|
15
|
+
render : () =>{
|
|
16
|
+
|
|
17
|
+
return <ElementHolder paddingTop={'md'} paddingBottom={"md"}>
|
|
18
|
+
<Pathway
|
|
19
|
+
title={'Food and drink'}
|
|
20
|
+
description={'Find the ideal event venues in Selwyn, where beautiful landscapes blend with top-notch facilities. '}
|
|
21
|
+
variation={'grid'}
|
|
22
|
+
filters={["all", "adventure", "ski", "nature", "city"]}
|
|
23
|
+
cards={
|
|
24
|
+
[
|
|
25
|
+
{ title: "Ballooning Canterbury", link: "#", image: "./img/card-one.png", category: "adventure", pillar: "live" },
|
|
26
|
+
{ title: "Ski Resort", link: "#", image: "./img/card-two.png", category: "ski" },
|
|
27
|
+
{ title: "Nature Walk", link: "#", image: "./img/card-three.png", category: "nature" },
|
|
28
|
+
{ title: "City Tour", link: "#", image: "./img/card-four.png" }
|
|
29
|
+
]
|
|
30
|
+
}
|
|
31
|
+
/>
|
|
32
|
+
</ElementHolder>
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
const CarouselTemplate: Story = {
|
|
37
|
+
render : () =>{
|
|
38
|
+
|
|
39
|
+
return <ElementHolder paddingTop={'md'} paddingBottom={"md"}>
|
|
40
|
+
<Pathway
|
|
41
|
+
title={'Food and drink'}
|
|
42
|
+
description={'Find the ideal event venues in Selwyn, where beautiful landscapes blend with top-notch facilities. '}
|
|
43
|
+
variation={'carousel'}
|
|
44
|
+
cards={
|
|
45
|
+
[
|
|
46
|
+
{ title: "Ballooning Canterbury", link: "#", image: "./img/card-one.png", category: "adventure", pillar: "live" },
|
|
21
47
|
{ title: "Ski Resort", link: "#", image: "./img/card-two.png", category: "ski" },
|
|
22
48
|
{ title: "Nature Walk", link: "#", image: "./img/card-three.png", category: "nature" },
|
|
23
|
-
{ title: "City Tour", link: "#", image: "./img/card-four.png" }
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
49
|
+
{ title: "City Tour", link: "#", image: "./img/card-four.png" }
|
|
50
|
+
]
|
|
51
|
+
}
|
|
52
|
+
/>
|
|
53
|
+
</ElementHolder>
|
|
54
|
+
}
|
|
27
55
|
};
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
export const GridView = {
|
|
59
|
+
...GridTemplate,
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export const CarouselView = {
|
|
63
|
+
...CarouselTemplate,
|
|
64
|
+
}
|
|
@@ -2,7 +2,6 @@ import cx from "classnames";
|
|
|
2
2
|
import PathwayProps from './PathwayProps';
|
|
3
3
|
import styles from "./pathway.module.scss";
|
|
4
4
|
import cslx from "clsx";
|
|
5
|
-
import ElementHolder from "../../Shared/ElementHolder/ElementHolder";
|
|
6
5
|
import Container from "../../Shared/Container/Container";
|
|
7
6
|
import DetailsCard from "../DetailsCard/DetailsCard";
|
|
8
7
|
import { CaretDown } from "../../Icons";
|
|
@@ -29,10 +28,22 @@ const Pathway = (props:PathwayProps) => {
|
|
|
29
28
|
const classes = [styles.pathway, "pathway", variation === "carousel" && styles.pathwayCarousel];
|
|
30
29
|
|
|
31
30
|
return (
|
|
32
|
-
<
|
|
31
|
+
<div>
|
|
33
32
|
<Container>
|
|
34
33
|
{variation === "carousel" ? (
|
|
35
|
-
<div className={cx(classes)}>
|
|
34
|
+
<div className={cx(classes)}>
|
|
35
|
+
<div className={styles.contentWrapper}>
|
|
36
|
+
<div className={styles.content}>
|
|
37
|
+
<div className={styles.pathwayTitle}><h3>{title}</h3></div>
|
|
38
|
+
<div className={styles.pathwayDescription}><p>{description}</p></div>
|
|
39
|
+
</div>
|
|
40
|
+
<div className={styles.silderNav}>
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
43
|
+
{/*<div className={styles.}>*/}
|
|
44
|
+
|
|
45
|
+
{/*</div>*/}
|
|
46
|
+
</div>
|
|
36
47
|
) : (
|
|
37
48
|
<div className={cslx(classes)}>
|
|
38
49
|
<div className={styles.pathwayTitle}><h3>{title}</h3></div>
|
|
@@ -76,7 +87,7 @@ const Pathway = (props:PathwayProps) => {
|
|
|
76
87
|
</div>
|
|
77
88
|
)}
|
|
78
89
|
</Container>
|
|
79
|
-
</
|
|
90
|
+
</div>
|
|
80
91
|
);
|
|
81
92
|
};
|
|
82
93
|
|
|
@@ -1,8 +1,17 @@
|
|
|
1
1
|
export interface Card {
|
|
2
|
-
title
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
title?:string,
|
|
3
|
+
description?:string,
|
|
4
|
+
date?: string,
|
|
5
|
+
link?: {
|
|
6
|
+
title?: string;
|
|
7
|
+
href?: string;
|
|
8
|
+
target?: "_blank" | "_self" | "_parent" | "_top";
|
|
9
|
+
rel?: string;
|
|
10
|
+
};
|
|
11
|
+
pillar?: 'visit' | 'live' | 'business' | 'participate' | 'taste'
|
|
12
|
+
image?:string,
|
|
13
|
+
variation?: "long" | "short";
|
|
14
|
+
category?: 'all' | 'adventure' | 'ski' | 'nature',
|
|
6
15
|
}
|
|
7
16
|
|
|
8
17
|
interface PathwayProps {
|
|
@@ -31,9 +31,8 @@ const PromoBannerBlockTemplate: Story = {
|
|
|
31
31
|
content={'Visit Selwyn is for those who like to take the back roads, breathe mountain air, and find their own pace. Stay a little longer, explore deeper, and refuel with great kai and local stories along the way.'}
|
|
32
32
|
image={'promo-banner-image.svg'}
|
|
33
33
|
button={
|
|
34
|
-
<Button label={'START EXPLORING'} piller={'visit'} level={'primary'}
|
|
34
|
+
<Button label={'START EXPLORING'} piller={'visit'} level={'primary'} secondaryIcon={<ArrowRight />} />
|
|
35
35
|
}
|
|
36
|
-
|
|
37
36
|
/>
|
|
38
37
|
</ElementHolder>
|
|
39
38
|
)
|
|
@@ -43,7 +43,6 @@ const PromoBannerBlock = (props: PromoBannerBlockProps) => {
|
|
|
43
43
|
<PromoBannerBgDesign />
|
|
44
44
|
</div>
|
|
45
45
|
</div>
|
|
46
|
-
|
|
47
46
|
<div className={styles.promoBannerBottom}>
|
|
48
47
|
<div className={styles.promoBannerBottomLeft}>
|
|
49
48
|
<div className={styles.promoBannerBrandPiller}>
|
|
@@ -52,19 +51,16 @@ const PromoBannerBlock = (props: PromoBannerBlockProps) => {
|
|
|
52
51
|
</div>
|
|
53
52
|
{pillerTitle}
|
|
54
53
|
</div>
|
|
55
|
-
|
|
56
54
|
<div className={styles.promoBannerTitleContainer}>
|
|
57
55
|
<h1>{title}</h1>
|
|
58
56
|
<h2>{boldTitle}</h2>
|
|
59
57
|
</div>
|
|
60
|
-
|
|
61
58
|
<p>{content}</p>
|
|
62
|
-
|
|
63
59
|
{button}
|
|
64
60
|
</div>
|
|
65
61
|
|
|
66
62
|
<div className={styles.promoBannerBottomRight}>
|
|
67
|
-
<img src={
|
|
63
|
+
<img src={image} alt={title} />
|
|
68
64
|
</div>
|
|
69
65
|
</div>
|
|
70
66
|
</div>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
.promoBannerBlock {
|
|
2
2
|
overflow-x: hidden;
|
|
3
|
-
padding: 48px
|
|
3
|
+
padding: 48px 0px;
|
|
4
4
|
|
|
5
5
|
.promoBannerBlockContainer {
|
|
6
6
|
.promoBannerTop {
|
|
@@ -81,6 +81,8 @@
|
|
|
81
81
|
}
|
|
82
82
|
|
|
83
83
|
.promoBannerBottomRight {
|
|
84
|
+
background: var(--color-sand);
|
|
85
|
+
|
|
84
86
|
img {
|
|
85
87
|
height: 100%;
|
|
86
88
|
width: 100%;
|
|
@@ -92,7 +94,6 @@
|
|
|
92
94
|
}
|
|
93
95
|
|
|
94
96
|
@media screen and (min-width: 992px) {
|
|
95
|
-
padding: 120px 0;
|
|
96
97
|
|
|
97
98
|
.promoBannerBlockContainer {
|
|
98
99
|
.promoBannerTop {
|
|
@@ -16,4 +16,8 @@ export type { default as PathwayProps } from './Pathway/PathwayProps';
|
|
|
16
16
|
|
|
17
17
|
// PromoBanner
|
|
18
18
|
export { default as PromoBannerBlock } from './PromoBannerBlock/PromoBannerBlock';
|
|
19
|
-
export type { default as PromoBannerBlockProps } from './PromoBannerBlock/PromoBannerBlockProps';
|
|
19
|
+
export type { default as PromoBannerBlockProps } from './PromoBannerBlock/PromoBannerBlockProps';
|
|
20
|
+
|
|
21
|
+
//ImageContent
|
|
22
|
+
export {default as ImageContent} from './ImageContent/ImageContent'
|
|
23
|
+
export type {default as ImageContentProps} from './ImageContent/ImageContentProps'
|
|
@@ -5,7 +5,7 @@ interface ButtonProps {
|
|
|
5
5
|
size?: "default" | "large" | "small";
|
|
6
6
|
style?: "solid" | "hollow" | "no-border";
|
|
7
7
|
level?: 'primary' | 'secondary' | 'light'
|
|
8
|
-
pillar?: 'main' | 'live' | 'visit' | 'taste' | 'business' | 'participate'
|
|
8
|
+
pillar?: 'main' | 'live' | 'visit' | 'taste' | 'business' | 'participate' | undefined;
|
|
9
9
|
linkable?: boolean;
|
|
10
10
|
extraClass?: string;
|
|
11
11
|
link?:{
|
|
@@ -5,6 +5,10 @@ import HeaderRight from "./HeaderRight";
|
|
|
5
5
|
import HeaderRightItem from "./HeaderRightItem";
|
|
6
6
|
import MagnifyingGlass from "./MagnifyingGlass/MagnifyingGlass";
|
|
7
7
|
import MegaMenu from "./MegaMenu/MegaMenu";
|
|
8
|
+
import {List} from "../../Icons";
|
|
9
|
+
import "./header.scss"
|
|
10
|
+
import MobileNavigation from "./MobileNavigation/MobileNavigation";
|
|
11
|
+
import MobileNavigationItem from "./MobileNavigation/MobileNavigationItem";
|
|
8
12
|
|
|
9
13
|
|
|
10
14
|
const meta: Meta = {
|
|
@@ -28,7 +32,7 @@ const logo = (
|
|
|
28
32
|
|
|
29
33
|
const logoSmall = (
|
|
30
34
|
<a href={"/"}>
|
|
31
|
-
<img src={'/img/waikirikiri-full-logo.svg'} width={110} height={
|
|
35
|
+
<img src={'/img/waikirikiri-full-logo.svg'} width={110} height={34} alt={'Hello Better'}/>
|
|
32
36
|
</a>
|
|
33
37
|
);
|
|
34
38
|
|
|
@@ -39,25 +43,48 @@ const HeaderTemplate: Story = {
|
|
|
39
43
|
// @ts-ignore
|
|
40
44
|
return <Header logo={logo} logoSmall={logoSmall}>
|
|
41
45
|
<HeaderRight>
|
|
42
|
-
<HeaderRightItem menuDropdown={<MegaMenu pillar={'live'}/>}>
|
|
46
|
+
<HeaderRightItem extraClass={'desktop-item'} menuDropdown={<MegaMenu pillar={'live'}/>}>
|
|
43
47
|
Participate
|
|
44
48
|
</HeaderRightItem>
|
|
45
|
-
<HeaderRightItem>
|
|
49
|
+
<HeaderRightItem extraClass={'desktop-item'}>
|
|
46
50
|
Business
|
|
47
51
|
</HeaderRightItem>
|
|
48
|
-
<HeaderRightItem>
|
|
52
|
+
<HeaderRightItem extraClass={'desktop-item'}>
|
|
49
53
|
Live
|
|
50
54
|
</HeaderRightItem>
|
|
51
|
-
<HeaderRightItem>
|
|
55
|
+
<HeaderRightItem extraClass={'desktop-item'}>
|
|
52
56
|
Visit
|
|
53
57
|
</HeaderRightItem>
|
|
54
|
-
<HeaderRightItem>
|
|
58
|
+
<HeaderRightItem extraClass={'desktop-item'}>
|
|
55
59
|
Taste
|
|
56
60
|
</HeaderRightItem>
|
|
57
|
-
<HeaderRightItem>
|
|
61
|
+
<HeaderRightItem extraClass={'desktop-item'}>
|
|
58
62
|
<MagnifyingGlass/>
|
|
59
63
|
</HeaderRightItem>
|
|
64
|
+
<HeaderRightItem extraClass={'mobile-item'}>
|
|
65
|
+
<List/>
|
|
66
|
+
</HeaderRightItem>
|
|
60
67
|
</HeaderRight>
|
|
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>*/}
|
|
61
88
|
</Header>
|
|
62
89
|
},
|
|
63
90
|
};
|
|
@@ -3,9 +3,9 @@ import HeaderProps from "./HeaderProps.tsx";
|
|
|
3
3
|
import Container from "../../Shared/Container/Container.tsx";
|
|
4
4
|
const Header = (props : HeaderProps) => {
|
|
5
5
|
|
|
6
|
-
const { children, logoSmall, logo } = props
|
|
6
|
+
const { children, logoSmall, logo, active } = props
|
|
7
7
|
|
|
8
|
-
return <header className={styles.header}>
|
|
8
|
+
return <header className={`${styles.header} ${active ? styles.active : ''}`}>
|
|
9
9
|
<Container>
|
|
10
10
|
<div className={styles.headerWrapper}>
|
|
11
11
|
<div className={styles.headerLogo}>
|
|
@@ -3,8 +3,8 @@ import HeaderRightItemProps from "./HeaderRightItemProps.tsx";
|
|
|
3
3
|
|
|
4
4
|
const HeaderRightItem = (props : HeaderRightItemProps) =>{
|
|
5
5
|
const { href , target, children, extraClass, icon, menuDropdown, active } = props
|
|
6
|
-
return <div className={`${styles.headerBottomItemHolder} ${active && styles.active}`}>
|
|
7
|
-
<a href={href} target={target} className={`${styles.headerBottomItem}
|
|
6
|
+
return <div className={`${styles.headerBottomItemHolder} ${extraClass} ${active && styles.active}`}>
|
|
7
|
+
<a href={href} target={target} className={`${styles.headerBottomItem} headerBottomItem`}>
|
|
8
8
|
{icon && <div className={styles.icon}>
|
|
9
9
|
{icon}
|
|
10
10
|
</div>}
|