@hellobetterdigitalnz/selwynui 0.0.1
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/.storybook/main.ts +19 -0
- package/.storybook/preview.tsx +55 -0
- package/.storybook/vitest.setup.ts +7 -0
- package/README.md +73 -0
- package/eslint.config.js +29 -0
- package/index.html +13 -0
- package/package.json +63 -0
- package/public/img/card-one.png +0 -0
- package/public/img/card-three.png +0 -0
- package/public/img/card-two.png +0 -0
- package/public/img/footer-bg-design.svg +14 -0
- package/public/img/footer-logo.svg +9 -0
- package/public/img/promo-banner-image.svg +9 -0
- package/public/img/visit-brand-piller.svg +6 -0
- package/public/img/waikirikiri-full-logo.svg +23 -0
- package/public/vite.svg +1 -0
- package/src/App.tsx +8 -0
- package/src/Components/DataDisplay/DetailsCard/DetailsCard.stories.tsx +39 -0
- package/src/Components/DataDisplay/DetailsCard/DetailsCard.tsx +87 -0
- package/src/Components/DataDisplay/DetailsCard/DetailsCardProps.tsx +12 -0
- package/src/Components/DataDisplay/DetailsCard/detailsCard.module.scss +123 -0
- package/src/Components/DataDisplay/ImageContent/ImageContent.stories.tsx +150 -0
- package/src/Components/DataDisplay/ImageContent/ImageContent.tsx +118 -0
- package/src/Components/DataDisplay/ImageContent/ImageContentMaskingImages.tsx +334 -0
- package/src/Components/DataDisplay/ImageContent/ImageContentProps.tsx +42 -0
- package/src/Components/DataDisplay/ImageContent/imageContent.module.scss +278 -0
- package/src/Components/DataDisplay/IntroBlock/IntroBlock.stories.tsx +37 -0
- package/src/Components/DataDisplay/IntroBlock/IntroBlock.tsx +37 -0
- package/src/Components/DataDisplay/IntroBlock/IntroBlockProps.tsx +10 -0
- package/src/Components/DataDisplay/IntroBlock/introBlock.module.scss +33 -0
- package/src/Components/DataDisplay/KPIBlock/KPIBlock.stories.tsx +114 -0
- package/src/Components/DataDisplay/KPIBlock/KPIBlock.tsx +35 -0
- package/src/Components/DataDisplay/KPIBlock/KPIBlockProps.tsx +13 -0
- package/src/Components/DataDisplay/KPIBlock/kpiBlock.module.scss +73 -0
- package/src/Components/DataDisplay/Pathway/Pathway.stories.tsx +27 -0
- package/src/Components/DataDisplay/Pathway/Pathway.tsx +83 -0
- package/src/Components/DataDisplay/Pathway/PathwayProps.tsx +17 -0
- package/src/Components/DataDisplay/Pathway/pathway.module.scss +124 -0
- package/src/Components/DataDisplay/PromoBannerBlock/PromoBanner.stories.tsx +45 -0
- package/src/Components/DataDisplay/PromoBannerBlock/PromoBannerBlock.tsx +74 -0
- package/src/Components/DataDisplay/PromoBannerBlock/PromoBannerBlockProps.tsx +16 -0
- package/src/Components/DataDisplay/PromoBannerBlock/promo-banner-bg-design.tsx +14 -0
- package/src/Components/DataDisplay/PromoBannerBlock/promoBanner.module.scss +172 -0
- package/src/Components/DataDisplay/index.ts +19 -0
- package/src/Components/Form/Button/Button.stories.tsx +42 -0
- package/src/Components/Form/Button/Button.tsx +69 -0
- package/src/Components/Form/Button/ButtonProps.tsx +16 -0
- package/src/Components/Form/Button/button.module.scss +132 -0
- package/src/Components/Form/index.ts +2 -0
- package/src/Components/Icons/Arrows/ArrowLeft/ArrowLeft.tsx +49 -0
- package/src/Components/Icons/Arrows/ArrowRight/ArrowRight.tsx +47 -0
- package/src/Components/Icons/Arrows/ArrowSquareOut/ArrowSquareOut.tsx +48 -0
- package/src/Components/Icons/Arrows/ArrowsDownUp/ArrowsDownUp.tsx +49 -0
- package/src/Components/Icons/Arrows/ArrowsOutCardinal/ArrowsOutCardinal.tsx +50 -0
- package/src/Components/Icons/Arrows/CaretCircleRight/CaretCircleRight.tsx +37 -0
- package/src/Components/Icons/Arrows/CaretDown/CaretDown.tsx +49 -0
- package/src/Components/Icons/Arrows/CaretLeft/CaretLeft.tsx +102 -0
- package/src/Components/Icons/Arrows/CaretRight/CaretRight.tsx +102 -0
- package/src/Components/Icons/Arrows/CaretUp/CaretUp.tsx +49 -0
- package/src/Components/Icons/Arrows/CaretUpDown/CaretUpDown.tsx +49 -0
- package/src/Components/Icons/Brands/FacebookLogo/FacebookLogo.tsx +35 -0
- package/src/Components/Icons/Brands/InstagramLogo/InstagramLogo.tsx +35 -0
- package/src/Components/Icons/Brands/LinkedinLogo/LinkedinLogo.tsx +35 -0
- package/src/Components/Icons/Brands/WindowsLogo/WindowsLogo.tsx +105 -0
- package/src/Components/Icons/Commerce/Backpack/Backpack.tsx +54 -0
- package/src/Components/Icons/Commerce/BowlSteam/BowlSteam.tsx +34 -0
- package/src/Components/Icons/Commerce/Bread/Bread.tsx +34 -0
- package/src/Components/Icons/Commerce/Cheers/Cheers.tsx +34 -0
- package/src/Components/Icons/Commerce/ChefHat/ChefHat.tsx +34 -0
- package/src/Components/Icons/Commerce/Coffee/Coffee.tsx +54 -0
- package/src/Components/Icons/Commerce/CreditCard/CreditCard.tsx +54 -0
- package/src/Components/Icons/Commerce/CurrencyDollarSimple/CurrencyDollarSimple.tsx +105 -0
- package/src/Components/Icons/Commerce/Grains/Grains.tsx +54 -0
- package/src/Components/Icons/Commerce/Scale/Scale.tsx +61 -0
- package/src/Components/Icons/Commerce/StoreFront/StoreFront.tsx +54 -0
- package/src/Components/Icons/Communication/AddressBook/AddressBook.stories.ts +28 -0
- package/src/Components/Icons/Communication/AddressBook/AddressBook.tsx +50 -0
- package/src/Components/Icons/Communication/AsterickSimple/AsteriskSimple.stories.ts +28 -0
- package/src/Components/Icons/Communication/AsterickSimple/AsteriskSimple.tsx +49 -0
- package/src/Components/Icons/Communication/Asterisk/Asterisk.stories.ts +28 -0
- package/src/Components/Icons/Communication/Asterisk/Asterisk.tsx +50 -0
- package/src/Components/Icons/Communication/At/At.stories.ts +28 -0
- package/src/Components/Icons/Communication/At/At.tsx +49 -0
- package/src/Components/Icons/Communication/Broadcast/Broadcast.stories.ts +27 -0
- package/src/Components/Icons/Communication/Broadcast/Broadcast.tsx +49 -0
- package/src/Components/Icons/Communication/Chat/Chat.stories.ts +28 -0
- package/src/Components/Icons/Communication/Chat/Chat.tsx +49 -0
- package/src/Components/Icons/Communication/ChatCircleText/ChatCircleText.tsx +87 -0
- package/src/Components/Icons/Communication/EnvelopeSimple/EnvelopeSimple.tsx +52 -0
- package/src/Components/Icons/Communication/Export/Export.tsx +52 -0
- package/src/Components/Icons/Communication/Phone/Phone.tsx +54 -0
- package/src/Components/Icons/Communication/ThumbsUp/ThumbsUp.tsx +47 -0
- package/src/Components/Icons/Communication/Translate/Translate.tsx +51 -0
- package/src/Components/Icons/Design/DropHalfBottom/DropHalfBottom.tsx +37 -0
- package/src/Components/Icons/Design/Eye/Eye.tsx +105 -0
- package/src/Components/Icons/Design/EyeSlash/EyeSlash.tsx +105 -0
- package/src/Components/Icons/Design/GearFine/GearFine.tsx +105 -0
- package/src/Components/Icons/Design/PencilLine/PencilLine.tsx +63 -0
- package/src/Components/Icons/Design/PencilSimple/PencilSimple.tsx +63 -0
- package/src/Components/Icons/Design/Ruler/Ruler.tsx +63 -0
- package/src/Components/Icons/Design/SquaresFour/SquaresFour.tsx +54 -0
- package/src/Components/Icons/Education/BookOpenText/BookOpenText.tsx +63 -0
- package/src/Components/Icons/Education/BookmarkSimple/BookmarkSimple.tsx +44 -0
- package/src/Components/Icons/Education/Certificate/Certificate.tsx +56 -0
- package/src/Components/Icons/Education/GraduationCap/GraduationCap.tsx +105 -0
- package/src/Components/Icons/Games/Cricket/Cricket.tsx +23 -0
- package/src/Components/Icons/Games/Football/Football.tsx +47 -0
- package/src/Components/Icons/Games/Golf/Golf.tsx +34 -0
- package/src/Components/Icons/HealthAndWellness/Barbell/Barbell.tsx +36 -0
- package/src/Components/Icons/IconProps.tsx +5 -0
- package/src/Components/Icons/MapAndTravel/Barn/Barn.tsx +34 -0
- package/src/Components/Icons/MapAndTravel/Bicycle/Bicycle.tsx +54 -0
- package/src/Components/Icons/MapAndTravel/Bus/Bus.tsx +54 -0
- package/src/Components/Icons/MapAndTravel/Car/Car.tsx +54 -0
- package/src/Components/Icons/MapAndTravel/ChargingStation/ChargingStation.tsx +54 -0
- package/src/Components/Icons/MapAndTravel/Farm/Farm.tsx +34 -0
- package/src/Components/Icons/MapAndTravel/Globe/Globe.tsx +61 -0
- package/src/Components/Icons/MapAndTravel/Goggles/Goggles.tsx +47 -0
- package/src/Components/Icons/MapAndTravel/House/House.tsx +61 -0
- package/src/Components/Icons/MapAndTravel/HouseSimple/HouseSimple.tsx +61 -0
- package/src/Components/Icons/MapAndTravel/MapPin/MapPin.tsx +53 -0
- package/src/Components/Icons/MapAndTravel/MapTriFold/MapTriFold.tsx +59 -0
- package/src/Components/Icons/MapAndTravel/Path/Path.tsx +35 -0
- package/src/Components/Icons/MapAndTravel/RoadHorizon/RoadHorizon.tsx +35 -0
- package/src/Components/Icons/MapAndTravel/SteeringWheel/SteeringWheel.tsx +61 -0
- package/src/Components/Icons/MapAndTravel/SwimmingPool/SwimmingPool.tsx +36 -0
- package/src/Components/Icons/MapAndTravel/Tram/Tram.tsx +35 -0
- package/src/Components/Icons/MapAndTravel/Van/Van.tsx +60 -0
- package/src/Components/Icons/MathsAndFinance/Calculator/Calculator.tsx +59 -0
- package/src/Components/Icons/MathsAndFinance/ChartBar/ChartBar.tsx +59 -0
- package/src/Components/Icons/MathsAndFinance/ChartBarHorizontal/ChartBarHorizontal.tsx +52 -0
- package/src/Components/Icons/MathsAndFinance/ChartLine/ChartLine.tsx +53 -0
- package/src/Components/Icons/MathsAndFinance/ChartLineUp/ChartLineUp.tsx +47 -0
- package/src/Components/Icons/MathsAndFinance/ChartPie/ChartPie.tsx +54 -0
- package/src/Components/Icons/MathsAndFinance/Minus/Minus.tsx +49 -0
- package/src/Components/Icons/MathsAndFinance/MinusCircle/MinusCircle.tsx +44 -0
- package/src/Components/Icons/MathsAndFinance/NumberSquareThree/NumberSquareThree.tsx +63 -0
- package/src/Components/Icons/MathsAndFinance/Plus/Plus.tsx +63 -0
- package/src/Components/Icons/MathsAndFinance/PlusCircle/PlusCircle.tsx +51 -0
- package/src/Components/Icons/MathsAndFinance/XIcon/XIcon.tsx +107 -0
- package/src/Components/Icons/Media/Camera/Camera.tsx +49 -0
- package/src/Components/Icons/Media/DiscoBall/DiscoBall.tsx +22 -0
- package/src/Components/Icons/Media/FilmStrip/FilmStrip.tsx +45 -0
- package/src/Components/Icons/Media/Microphone/Microphone.tsx +94 -0
- package/src/Components/Icons/Media/MusicNotes/MusicNotes.tsx +42 -0
- package/src/Components/Icons/Media/PlayCircle/PlayCircle.tsx +49 -0
- package/src/Components/Icons/Media/SlidersHorizontal/SlidersHorizontal.tsx +49 -0
- package/src/Components/Icons/Media/StopCircle/StopCircle.tsx +50 -0
- package/src/Components/Icons/Media/VideoCamera/VideoCamera.tsx +105 -0
- package/src/Components/Icons/OfficeAndEditing/BuildinfOffice/BuildingOffice.tsx +22 -0
- package/src/Components/Icons/OfficeAndEditing/Copy/Copy.tsx +47 -0
- package/src/Components/Icons/OfficeAndEditing/FileText/FileText.tsx +35 -0
- package/src/Components/Icons/OfficeAndEditing/Files/Files.tsx +49 -0
- package/src/Components/Icons/OfficeAndEditing/FloppyDisk/FloppyDisk.tsx +49 -0
- package/src/Components/Icons/OfficeAndEditing/Folder/Folder.tsx +61 -0
- package/src/Components/Icons/OfficeAndEditing/FolderSimplePlus/FolderSimplePlus.tsx +35 -0
- package/src/Components/Icons/OfficeAndEditing/Folders/Folders.tsx +47 -0
- package/src/Components/Icons/OfficeAndEditing/List/List.tsx +46 -0
- package/src/Components/Icons/OfficeAndEditing/ListBullets/ListBullets.tsx +59 -0
- package/src/Components/Icons/OfficeAndEditing/ListDashes/ListDashes.tsx +59 -0
- package/src/Components/Icons/OfficeAndEditing/Printer/Printer.tsx +48 -0
- package/src/Components/Icons/OfficeAndEditing/TextAa/TextAa.tsx +63 -0
- package/src/Components/Icons/OfficeAndEditing/TextColumns/TextColumns.tsx +61 -0
- package/src/Components/Icons/OfficeAndEditing/Trash/Trash.tsx +49 -0
- package/src/Components/Icons/OfficeAndEditing/TrashSimple/TrashSimple.tsx +49 -0
- package/src/Components/Icons/People/Person/Person.tsx +35 -0
- package/src/Components/Icons/People/PersonArmsSpread/PersonArmsSpread.tsx +35 -0
- package/src/Components/Icons/People/PersonSimpleBike/PersonSimpleBike.tsx +35 -0
- package/src/Components/Icons/People/PersonSimpleSki/PersonSimpleSki.tsx +34 -0
- package/src/Components/Icons/People/PersonSimpleWalk/PersonSimpleWalk.tsx +35 -0
- package/src/Components/Icons/People/User/User.tsx +61 -0
- package/src/Components/Icons/People/UserCircle/UserCircle.tsx +61 -0
- package/src/Components/Icons/People/UserSwitch/UserSwitch.tsx +61 -0
- package/src/Components/Icons/People/Users/Users.tsx +107 -0
- package/src/Components/Icons/SecurityAndWarnings/Info/Info.tsx +54 -0
- package/src/Components/Icons/SecurityAndWarnings/Key/Key.tsx +54 -0
- package/src/Components/Icons/SecurityAndWarnings/LockKeyOpen/LockKeyOpen.tsx +54 -0
- package/src/Components/Icons/SecurityAndWarnings/LockSimple/LockSimple.tsx +61 -0
- package/src/Components/Icons/SecurityAndWarnings/Question/Question.tsx +53 -0
- package/src/Components/Icons/SecurityAndWarnings/ShieldCheck/ShieldCheck.tsx +89 -0
- package/src/Components/Icons/SecurityAndWarnings/WarningCircle/WarningCircle.tsx +105 -0
- package/src/Components/Icons/SystemAndDevice/Bell/Bell.tsx +49 -0
- package/src/Components/Icons/SystemAndDevice/Check/Check.tsx +49 -0
- package/src/Components/Icons/SystemAndDevice/CheckSquare/CheckSquare.tsx +63 -0
- package/src/Components/Icons/SystemAndDevice/CloudCheck/CloudCheck.tsx +74 -0
- package/src/Components/Icons/SystemAndDevice/Desktop/Desktop.tsx +107 -0
- package/src/Components/Icons/SystemAndDevice/DeviceMobile/DeviceMobile.tsx +78 -0
- package/src/Components/Icons/SystemAndDevice/DotSixVertical/DotSixVertical.tsx +49 -0
- package/src/Components/Icons/SystemAndDevice/DotsSix/DotsSix.tsx +107 -0
- package/src/Components/Icons/SystemAndDevice/DotsThree/DotsThree.tsx +63 -0
- package/src/Components/Icons/SystemAndDevice/DotsThreeVertical/DotsThreeVertical.tsx +63 -0
- package/src/Components/Icons/SystemAndDevice/DownloadSimple/DownloadSimple.tsx +52 -0
- package/src/Components/Icons/SystemAndDevice/Gear/Gear.tsx +61 -0
- package/src/Components/Icons/SystemAndDevice/Link/Link.tsx +54 -0
- package/src/Components/Icons/SystemAndDevice/MagnifyingGlass/MagnifyingGlass.tsx +105 -0
- package/src/Components/Icons/SystemAndDevice/RadioButtonIcon/RadioButtonIcon.tsx +63 -0
- package/src/Components/Icons/SystemAndDevice/SignIn/SignIn.tsx +51 -0
- package/src/Components/Icons/SystemAndDevice/SignOut/SignOut.tsx +49 -0
- package/src/Components/Icons/SystemAndDevice/ToggleLeft/ToggleLeft.tsx +51 -0
- package/src/Components/Icons/SystemAndDevice/ToggleRight/ToggleRight.tsx +51 -0
- package/src/Components/Icons/Time/Calendar/Calendar.tsx +61 -0
- package/src/Components/Icons/Time/CalendarBank/CalendarBank.tsx +105 -0
- package/src/Components/Icons/Time/CalendarCheck/CalendarCheck.tsx +61 -0
- package/src/Components/Icons/Time/CalendarDots/CalendarDots.tsx +28 -0
- package/src/Components/Icons/Time/Clock/Clock.tsx +105 -0
- package/src/Components/Icons/Time/ClockCounterClockwise/ClockCounterClockwise.tsx +74 -0
- package/src/Components/Icons/WeatherAndNature/Bird/Bird.tsx +54 -0
- package/src/Components/Icons/WeatherAndNature/Campfire/Campfire.tsx +35 -0
- package/src/Components/Icons/WeatherAndNature/CloudSun/CloudSun.tsx +49 -0
- package/src/Components/Icons/WeatherAndNature/Cow/Cow.tsx +34 -0
- package/src/Components/Icons/WeatherAndNature/Dog/Dog.tsx +54 -0
- package/src/Components/Icons/WeatherAndNature/FishSimple/FishSimple.tsx +54 -0
- package/src/Components/Icons/WeatherAndNature/Flower/Flower.tsx +47 -0
- package/src/Components/Icons/WeatherAndNature/Moon/Moon.tsx +35 -0
- package/src/Components/Icons/WeatherAndNature/Mountains/Mountains.tsx +49 -0
- package/src/Components/Icons/WeatherAndNature/Plant/Plant.tsx +105 -0
- package/src/Components/Icons/WeatherAndNature/Snowflake/Snowflake.tsx +46 -0
- package/src/Components/Icons/WeatherAndNature/Sparkle/Sparkle.tsx +35 -0
- package/src/Components/Icons/WeatherAndNature/Sun/Sun.tsx +47 -0
- package/src/Components/Icons/WeatherAndNature/Tree/Tree.tsx +84 -0
- package/src/Components/Icons/index.ts +165 -0
- package/src/Components/Layout/Footer/Footer.stories.tsx +178 -0
- package/src/Components/Layout/Footer/Footer.tsx +32 -0
- package/src/Components/Layout/Footer/FooterBottom.tsx +21 -0
- package/src/Components/Layout/Footer/FooterBottomLeft.tsx +31 -0
- package/src/Components/Layout/Footer/FooterBottomLeftProps.tsx +13 -0
- package/src/Components/Layout/Footer/FooterBottomProps.tsx +7 -0
- package/src/Components/Layout/Footer/FooterBottomRight.tsx +47 -0
- package/src/Components/Layout/Footer/FooterBottomRightProps.tsx +7 -0
- package/src/Components/Layout/Footer/FooterItem.tsx +17 -0
- package/src/Components/Layout/Footer/FooterItemProps.tsx +8 -0
- package/src/Components/Layout/Footer/FooterMiddle.tsx +14 -0
- package/src/Components/Layout/Footer/FooterMiddleProps.tsx +8 -0
- package/src/Components/Layout/Footer/FooterProps.tsx +11 -0
- package/src/Components/Layout/Footer/FooterTop.tsx +30 -0
- package/src/Components/Layout/Footer/FooterTopProps.tsx +9 -0
- package/src/Components/Layout/Footer/footer-bg-design.tsx +21 -0
- package/src/Components/Layout/Footer/footer.module.scss +295 -0
- package/src/Components/Layout/Header/Header.stories.tsx +66 -0
- package/src/Components/Layout/Header/Header.tsx +27 -0
- package/src/Components/Layout/Header/HeaderProps.tsx +9 -0
- package/src/Components/Layout/Header/HeaderRight.tsx +12 -0
- package/src/Components/Layout/Header/HeaderRightItem.tsx +21 -0
- package/src/Components/Layout/Header/HeaderRightItemProps.tsx +13 -0
- package/src/Components/Layout/Header/HeaderRightProps.tsx +7 -0
- package/src/Components/Layout/Header/MagnifyingGlass/MagnifyingGlass.tsx +10 -0
- package/src/Components/Layout/Header/MegaMenu/MegaMenu.tsx +5 -0
- package/src/Components/Layout/Header/MegaMenu/MegaMenuProps.tsx +5 -0
- package/src/Components/Layout/Header/header.module.scss +90 -0
- package/src/Components/Layout/HeroBanner/HeroBanner.stories.tsx +77 -0
- package/src/Components/Layout/HeroBanner/HeroBanner.tsx +77 -0
- package/src/Components/Layout/HeroBanner/HeroBannerProps.tsx +10 -0
- package/src/Components/Layout/HeroBanner/LargeHeroIcon.tsx +18 -0
- package/src/Components/Layout/HeroBanner/heroBanner.module.scss +179 -0
- package/src/Components/Layout/index.ts +27 -0
- package/src/Components/Shared/Container/Container.tsx +19 -0
- package/src/Components/Shared/Container/ContainerProps.tsx +8 -0
- package/src/Components/Shared/Container/container.module.scss +13 -0
- package/src/Components/Shared/ElementHolder/ElementHolder.tsx +40 -0
- package/src/Components/Shared/ElementHolder/ElementHolderProps.tsx +18 -0
- package/src/Components/Shared/ElementHolder/elementHolder.module.scss +189 -0
- package/src/Components/Shared/index.ts +5 -0
- package/src/assets/react.svg +1 -0
- package/src/global.scss +337 -0
- package/src/globals.d.ts +1 -0
- package/src/index.ts +5 -0
- package/src/main.tsx +10 -0
- package/src/scss.d.ts +1 -0
- package/src/variable.scss +3 -0
- package/tsconfig.app.json +45 -0
- package/tsconfig.json +7 -0
- package/tsconfig.node.json +10 -0
- package/tsconfig.node.tsbuildinfo +1 -0
- package/vite.config.d.ts +2 -0
- package/vite.config.js +40 -0
- package/vite.config.ts +31 -0
- package/vitest.shims.d.ts +1 -0
|
@@ -0,0 +1,334 @@
|
|
|
1
|
+
import { useId } from "react";
|
|
2
|
+
|
|
3
|
+
const ImageContentClip = ({ pillar = 'visit', single, setOfFour, width = 568, height = 565 }: any) => {
|
|
4
|
+
const id = useId();
|
|
5
|
+
const clipId = `clip-${id}`;
|
|
6
|
+
const clipIds = [`clip-1-${id}`, `clip-2-${id}`, `clip-3-${id}`, `clip-4-${id}`];
|
|
7
|
+
|
|
8
|
+
const positions = [
|
|
9
|
+
{ x: 0, y: 0, width: 275.811, height: 274.703 },
|
|
10
|
+
{ x: 0, y: 290.208, width: 275.811, height: 274.702 },
|
|
11
|
+
{ x: 292.189, y: 0, width: 275.811, height: 274.703 },
|
|
12
|
+
{ x: 292.189, y: 290.297, width: 275.811, height: 274.703 }
|
|
13
|
+
];
|
|
14
|
+
|
|
15
|
+
if(pillar === 'participate'){
|
|
16
|
+
return (
|
|
17
|
+
<svg width={width} height={height} viewBox={`0 0 ${width} ${height}`} xmlns="http://www.w3.org/2000/svg">
|
|
18
|
+
{single && (
|
|
19
|
+
<defs>
|
|
20
|
+
<clipPath id={clipId} clipPathUnits="userSpaceOnUse">
|
|
21
|
+
<path d="M0 274.705C152.008 274.705 275.285 151.688 275.285 0H0V274.705Z" />
|
|
22
|
+
<path d="M0 290C152.008 290 275.285 413.017 275.285 564.705H0V290Z" />
|
|
23
|
+
<path d="M567.285 274.705C415.277 274.705 292.001 151.688 292.001 0H567.285V274.705Z" />
|
|
24
|
+
<path d="M567.285 290C415.277 290 292.001 413.017 292.001 564.705H567.285V290Z" />
|
|
25
|
+
</clipPath>
|
|
26
|
+
</defs>
|
|
27
|
+
)}
|
|
28
|
+
|
|
29
|
+
{setOfFour && (
|
|
30
|
+
<defs>
|
|
31
|
+
<clipPath id={clipIds[0]}>
|
|
32
|
+
<path d="M0 274.705C152.008 274.705 275.285 151.688 275.285 0H0V274.705Z" />
|
|
33
|
+
</clipPath>
|
|
34
|
+
<clipPath id={clipIds[1]}>
|
|
35
|
+
<path d="M0 290C152.008 290 275.285 413.017 275.285 564.705H0V290Z" />
|
|
36
|
+
</clipPath>
|
|
37
|
+
<clipPath id={clipIds[2]}>
|
|
38
|
+
<path d="M567.285 274.705C415.277 274.705 292.001 151.688 292.001 0H567.285V274.705Z" />
|
|
39
|
+
</clipPath>
|
|
40
|
+
<clipPath id={clipIds[3]}>
|
|
41
|
+
<path d="M567.285 290C415.277 290 292.001 413.017 292.001 564.705H567.285V290Z" />
|
|
42
|
+
</clipPath>
|
|
43
|
+
</defs>
|
|
44
|
+
)}
|
|
45
|
+
|
|
46
|
+
{single && (
|
|
47
|
+
<image
|
|
48
|
+
href={single}
|
|
49
|
+
x="0"
|
|
50
|
+
y="0"
|
|
51
|
+
width={width}
|
|
52
|
+
height={height}
|
|
53
|
+
preserveAspectRatio="xMidYMid slice"
|
|
54
|
+
clipPath={`url(#${clipId})`}
|
|
55
|
+
/>
|
|
56
|
+
)}
|
|
57
|
+
|
|
58
|
+
{setOfFour &&
|
|
59
|
+
setOfFour.map((s: string, i: number) => {
|
|
60
|
+
const area = positions[i];
|
|
61
|
+
return (
|
|
62
|
+
<image
|
|
63
|
+
key={i}
|
|
64
|
+
href={s}
|
|
65
|
+
x={area.x}
|
|
66
|
+
y={area.y}
|
|
67
|
+
width={area.width}
|
|
68
|
+
height={area.height}
|
|
69
|
+
preserveAspectRatio="xMidYMid slice"
|
|
70
|
+
clipPath={`url(#${clipIds[i]})`}
|
|
71
|
+
/>
|
|
72
|
+
);
|
|
73
|
+
})}
|
|
74
|
+
</svg>
|
|
75
|
+
);
|
|
76
|
+
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
if(pillar === 'live'){
|
|
80
|
+
return (
|
|
81
|
+
<svg width={width} height={height} viewBox={`0 0 ${width} ${height}`} xmlns="http://www.w3.org/2000/svg">
|
|
82
|
+
{single && (
|
|
83
|
+
<defs>
|
|
84
|
+
<clipPath id={clipId} clipPathUnits="userSpaceOnUse">
|
|
85
|
+
<path d="M0.0906646 0C151.563 0 274.404 123.017 274.404 274.705H0.0906646V0Z" />
|
|
86
|
+
<path d="M274.314 564.91C122.842 564.91 0 441.893 0 290.205H274.314V564.91Z" />
|
|
87
|
+
<path d="M565 274.795C565 123.107 442.158 0.0895993 290.686 0.0895993V274.795H565Z" />
|
|
88
|
+
<path d="M290.686 290.295C290.686 441.983 413.528 565 565 565V290.295H290.686Z" />
|
|
89
|
+
</clipPath>
|
|
90
|
+
</defs>
|
|
91
|
+
)}
|
|
92
|
+
|
|
93
|
+
{setOfFour && (
|
|
94
|
+
<defs>
|
|
95
|
+
<clipPath id={clipIds[0]}>
|
|
96
|
+
<path d="M0.0906646 0C151.563 0 274.404 123.017 274.404 274.705H0.0906646V0Z" />
|
|
97
|
+
</clipPath>
|
|
98
|
+
<clipPath id={clipIds[1]}>
|
|
99
|
+
<path d="M274.314 564.91C122.842 564.91 0 441.893 0 290.205H274.314V564.91Z" />
|
|
100
|
+
</clipPath>
|
|
101
|
+
<clipPath id={clipIds[2]}>
|
|
102
|
+
<path d="M565 274.795C565 123.107 442.158 0.0895993 290.686 0.0895993V274.795H565Z" />
|
|
103
|
+
</clipPath>
|
|
104
|
+
<clipPath id={clipIds[3]}>
|
|
105
|
+
<path d="M290.686 290.295C290.686 441.983 413.528 565 565 565V290.295H290.686Z" />
|
|
106
|
+
</clipPath>
|
|
107
|
+
</defs>
|
|
108
|
+
)}
|
|
109
|
+
|
|
110
|
+
{single && (
|
|
111
|
+
<image
|
|
112
|
+
href={single}
|
|
113
|
+
x="0"
|
|
114
|
+
y="0"
|
|
115
|
+
width={width}
|
|
116
|
+
height={height}
|
|
117
|
+
preserveAspectRatio="xMidYMid slice"
|
|
118
|
+
clipPath={`url(#${clipId})`}
|
|
119
|
+
/>
|
|
120
|
+
)}
|
|
121
|
+
|
|
122
|
+
{setOfFour &&
|
|
123
|
+
setOfFour.map((s: string, i: number) => {
|
|
124
|
+
const area = positions[i];
|
|
125
|
+
return (
|
|
126
|
+
<image
|
|
127
|
+
key={i}
|
|
128
|
+
href={s}
|
|
129
|
+
x={area.x}
|
|
130
|
+
y={area.y}
|
|
131
|
+
width={area.width}
|
|
132
|
+
height={area.height}
|
|
133
|
+
preserveAspectRatio="xMidYMid slice"
|
|
134
|
+
clipPath={`url(#${clipIds[i]})`}
|
|
135
|
+
/>
|
|
136
|
+
);
|
|
137
|
+
})}
|
|
138
|
+
</svg>
|
|
139
|
+
);
|
|
140
|
+
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
if(pillar === 'business'){
|
|
144
|
+
return (
|
|
145
|
+
<svg width={width} height={height} viewBox={`0 0 ${width} ${height}`} xmlns="http://www.w3.org/2000/svg">
|
|
146
|
+
{single && (
|
|
147
|
+
<defs>
|
|
148
|
+
<clipPath id={clipId} clipPathUnits="userSpaceOnUse">
|
|
149
|
+
<path d="M0 275.143C0 123.204 123.502 0 275.808 0V275.143H0Z" />
|
|
150
|
+
<path d="M0 565.82C0 413.881 123.502 290.678 275.808 290.678V565.82H0Z" />
|
|
151
|
+
<path d="M568 0.179636C415.693 0.179636 292.192 123.383 292.192 275.322H568V0.179636Z" />
|
|
152
|
+
<path d="M568 290.857C415.693 290.857 292.192 414.061 292.192 566H568V290.857Z" />
|
|
153
|
+
</clipPath>
|
|
154
|
+
</defs>
|
|
155
|
+
)}
|
|
156
|
+
|
|
157
|
+
{setOfFour && (
|
|
158
|
+
<defs>
|
|
159
|
+
<clipPath id={clipIds[0]}>
|
|
160
|
+
<path d="M0 275.143C0 123.204 123.502 0 275.808 0V275.143H0Z" />
|
|
161
|
+
</clipPath>
|
|
162
|
+
<clipPath id={clipIds[1]}>
|
|
163
|
+
<path d="M0 565.82C0 413.881 123.502 290.678 275.808 290.678V565.82H0Z" />
|
|
164
|
+
</clipPath>
|
|
165
|
+
<clipPath id={clipIds[2]}>
|
|
166
|
+
<path d="M568 0.179636C415.693 0.179636 292.192 123.383 292.192 275.322H568V0.179636Z" />
|
|
167
|
+
</clipPath>
|
|
168
|
+
<clipPath id={clipIds[3]}>
|
|
169
|
+
<path d="M568 290.857C415.693 290.857 292.192 414.061 292.192 566H568V290.857Z" />
|
|
170
|
+
</clipPath>
|
|
171
|
+
</defs>
|
|
172
|
+
)}
|
|
173
|
+
|
|
174
|
+
{single && (
|
|
175
|
+
<image
|
|
176
|
+
href={single}
|
|
177
|
+
x="0"
|
|
178
|
+
y="0"
|
|
179
|
+
width={width}
|
|
180
|
+
height={height}
|
|
181
|
+
preserveAspectRatio="xMidYMid slice"
|
|
182
|
+
clipPath={`url(#${clipId})`}
|
|
183
|
+
/>
|
|
184
|
+
)}
|
|
185
|
+
|
|
186
|
+
{setOfFour &&
|
|
187
|
+
setOfFour.map((s: string, i: number) => {
|
|
188
|
+
const area = positions[i];
|
|
189
|
+
return (
|
|
190
|
+
<image
|
|
191
|
+
key={i}
|
|
192
|
+
href={s}
|
|
193
|
+
x={area.x}
|
|
194
|
+
y={area.y}
|
|
195
|
+
width={area.width}
|
|
196
|
+
height={area.height}
|
|
197
|
+
preserveAspectRatio="xMidYMid slice"
|
|
198
|
+
clipPath={`url(#${clipIds[i]})`}
|
|
199
|
+
/>
|
|
200
|
+
);
|
|
201
|
+
})}
|
|
202
|
+
</svg>
|
|
203
|
+
);
|
|
204
|
+
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
if (pillar === "taste") {
|
|
208
|
+
const tastePositions = [
|
|
209
|
+
{ x: 292.189, y: 290.297, width: 275.811, height: 274.703 }, // RB
|
|
210
|
+
{ x: 292.189, y: 0, width: 275.811, height: 274.792 }, // RT
|
|
211
|
+
{ x: 0, y: 290.208, width: 275.811, height: 274.702 }, // LB
|
|
212
|
+
{ x: 0, y: 0, width: 275.811, height: 274.703 }, // LT
|
|
213
|
+
];
|
|
214
|
+
|
|
215
|
+
return (
|
|
216
|
+
<svg
|
|
217
|
+
width={width}
|
|
218
|
+
height={height}
|
|
219
|
+
viewBox="0 0 568 565"
|
|
220
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
221
|
+
>
|
|
222
|
+
{single && (
|
|
223
|
+
<defs>
|
|
224
|
+
<clipPath id={clipId} clipPathUnits="userSpaceOnUse">
|
|
225
|
+
<path d="M292.189 565C444.537 565 568 442.034 568 290.297L292.189 290.297L292.189 565Z" />
|
|
226
|
+
<path d="M292.189 274.792C444.537 274.792 568 151.826 568 0.0897827L292.189 0.0897825L292.189 274.792Z" />
|
|
227
|
+
<path d="M275.811 564.91C123.463 564.91 0 441.944 0 290.208L275.811 290.208L275.811 564.91Z" />
|
|
228
|
+
<path d="M275.811 274.703C123.463 274.703 0 151.736 0 0L275.811 0L275.811 274.703Z" />
|
|
229
|
+
</clipPath>
|
|
230
|
+
</defs>
|
|
231
|
+
)}
|
|
232
|
+
|
|
233
|
+
{setOfFour && (
|
|
234
|
+
<defs>
|
|
235
|
+
<clipPath id={clipIds[0]}>
|
|
236
|
+
<path d="M292.189 565C444.537 565 568 442.034 568 290.297L292.189 290.297L292.189 565Z" />
|
|
237
|
+
</clipPath>
|
|
238
|
+
<clipPath id={clipIds[1]}>
|
|
239
|
+
<path d="M292.189 274.792C444.537 274.792 568 151.826 568 0.0897827L292.189 0.0897825L292.189 274.792Z" />
|
|
240
|
+
</clipPath>
|
|
241
|
+
<clipPath id={clipIds[2]}>
|
|
242
|
+
<path d="M275.811 564.91C123.463 564.91 0 441.944 0 290.208L275.811 290.208L275.811 564.91Z" />
|
|
243
|
+
</clipPath>
|
|
244
|
+
<clipPath id={clipIds[3]}>
|
|
245
|
+
<path d="M275.811 274.703C123.463 274.703 0 151.736 0 0L275.811 0L275.811 274.703Z" />
|
|
246
|
+
</clipPath>
|
|
247
|
+
</defs>
|
|
248
|
+
)}
|
|
249
|
+
|
|
250
|
+
{single && (
|
|
251
|
+
<image
|
|
252
|
+
href={single}
|
|
253
|
+
x={0}
|
|
254
|
+
y={0}
|
|
255
|
+
width={568}
|
|
256
|
+
height={565}
|
|
257
|
+
preserveAspectRatio="xMidYMid slice"
|
|
258
|
+
clipPath={`url(#${clipId})`}
|
|
259
|
+
/>
|
|
260
|
+
)}
|
|
261
|
+
|
|
262
|
+
{setOfFour &&
|
|
263
|
+
setOfFour.map((s: string, i: number) => {
|
|
264
|
+
const area = tastePositions[i];
|
|
265
|
+
return (
|
|
266
|
+
<image
|
|
267
|
+
key={i}
|
|
268
|
+
href={s}
|
|
269
|
+
x={area.x}
|
|
270
|
+
y={area.y}
|
|
271
|
+
width={area.width}
|
|
272
|
+
height={area.height}
|
|
273
|
+
preserveAspectRatio="xMidYMid slice"
|
|
274
|
+
clipPath={`url(#${clipIds[i]})`}
|
|
275
|
+
/>
|
|
276
|
+
);
|
|
277
|
+
})}
|
|
278
|
+
</svg>
|
|
279
|
+
);
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
|
|
283
|
+
return (
|
|
284
|
+
<svg width={width} height={height} viewBox={`0 0 ${width} ${height}`} xmlns="http://www.w3.org/2000/svg">
|
|
285
|
+
{single && (
|
|
286
|
+
<defs>
|
|
287
|
+
<clipPath id={clipId} clipPathUnits="userSpaceOnUse">
|
|
288
|
+
<path d="M275.811 0C123.463 0 0 122.966 0 274.703H275.811V0Z" />
|
|
289
|
+
<path d="M275.811 290.208C123.463 290.208 0 413.174 0 564.91H275.811V290.208Z" />
|
|
290
|
+
<path d="M292.189 0.0897284C444.537 0.0897286 568 123.056 568 274.792H292.189V0.0897284Z" />
|
|
291
|
+
<path d="M292.189 290.297C444.537 290.297 568 413.264 568 565H292.189V290.297Z" />
|
|
292
|
+
</clipPath>
|
|
293
|
+
</defs>
|
|
294
|
+
)}
|
|
295
|
+
|
|
296
|
+
{setOfFour && (
|
|
297
|
+
<defs>
|
|
298
|
+
<clipPath id={clipIds[0]} >
|
|
299
|
+
<path d="M275.811 0C123.463 0 0 122.966 0 274.703H275.811V0Z" />
|
|
300
|
+
</clipPath>
|
|
301
|
+
<clipPath id={clipIds[1]} >
|
|
302
|
+
<path d="M275.811 290.208C123.463 290.208 0 413.174 0 564.91H275.811V290.208Z" />
|
|
303
|
+
</clipPath>
|
|
304
|
+
<clipPath id={clipIds[2]} >
|
|
305
|
+
<path d="M292.189 0.0897284C444.537 0.0897286 568 123.056 568 274.792H292.189V0.0897284Z" />
|
|
306
|
+
</clipPath>
|
|
307
|
+
<clipPath id={clipIds[3]}>
|
|
308
|
+
<path d="M292.189 290.297C444.537 290.297 568 413.264 568 565H292.189V290.297Z" />
|
|
309
|
+
</clipPath>
|
|
310
|
+
</defs>
|
|
311
|
+
)}
|
|
312
|
+
|
|
313
|
+
{single && <image href={single} x="0" y="0" width={width} height={height} preserveAspectRatio="xMidYMid slice" clipPath={`url(#${clipId})`} />}
|
|
314
|
+
|
|
315
|
+
{setOfFour && setOfFour.map((s: string, i: number) => {
|
|
316
|
+
const area = positions[i];
|
|
317
|
+
return (
|
|
318
|
+
<image
|
|
319
|
+
key={i}
|
|
320
|
+
href={s}
|
|
321
|
+
x={area.x}
|
|
322
|
+
y={area.y}
|
|
323
|
+
width={area.width}
|
|
324
|
+
height={area.height}
|
|
325
|
+
preserveAspectRatio="xMidYMid slice"
|
|
326
|
+
clipPath={`url(#${clipIds[i]})`}
|
|
327
|
+
/>
|
|
328
|
+
);
|
|
329
|
+
})}
|
|
330
|
+
</svg>
|
|
331
|
+
);
|
|
332
|
+
};
|
|
333
|
+
|
|
334
|
+
export default ImageContentClip;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { ReactNode } from "react";
|
|
2
|
+
|
|
3
|
+
export type PillarType =
|
|
4
|
+
| "main"
|
|
5
|
+
| "live"
|
|
6
|
+
| "visit"
|
|
7
|
+
| "taste"
|
|
8
|
+
| "business"
|
|
9
|
+
| "participate";
|
|
10
|
+
|
|
11
|
+
export type RenditionType =
|
|
12
|
+
| "full"
|
|
13
|
+
| "contained"
|
|
14
|
+
| "masked";
|
|
15
|
+
|
|
16
|
+
export interface ImageSet {
|
|
17
|
+
single?: string;
|
|
18
|
+
setOfFour?: [string, string, string, string];
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export interface Item {
|
|
22
|
+
id?: number;
|
|
23
|
+
label?: string;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export interface ImageContentProps {
|
|
27
|
+
level?: "primary" | "secondary" | "light";
|
|
28
|
+
pillar?: PillarType;
|
|
29
|
+
displayFullLogo?: boolean;
|
|
30
|
+
displayIconWithTitle?: boolean;
|
|
31
|
+
pillarTitle?: string;
|
|
32
|
+
title?: string;
|
|
33
|
+
content?: ReactNode;
|
|
34
|
+
action?: ReactNode;
|
|
35
|
+
images?: ImageSet;
|
|
36
|
+
alignment?: 'left' | 'right';
|
|
37
|
+
imageBorder?: 'top' | 'bottom'
|
|
38
|
+
rendition?: RenditionType;
|
|
39
|
+
list?: Item[];
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export default ImageContentProps;
|
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
.imageContent{
|
|
2
|
+
color: var(--color-block-text);
|
|
3
|
+
|
|
4
|
+
//alignment
|
|
5
|
+
|
|
6
|
+
&.left{
|
|
7
|
+
.imageContentWrapper {
|
|
8
|
+
flex-direction: column-reverse;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
&.right{
|
|
13
|
+
.imageContentWrapper {
|
|
14
|
+
flex-direction: column-reverse;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
&Wrapper{
|
|
19
|
+
display: flex;
|
|
20
|
+
flex-wrap: wrap;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.imageWrapper{
|
|
24
|
+
width: 100%;
|
|
25
|
+
margin-top: 32px;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.imageHolder {
|
|
29
|
+
position: relative;
|
|
30
|
+
border-radius: 2px 2px 96px 2px;
|
|
31
|
+
background: lightgray 50%;
|
|
32
|
+
overflow: hidden;
|
|
33
|
+
height: 100%;
|
|
34
|
+
|
|
35
|
+
&::before {
|
|
36
|
+
content: "";
|
|
37
|
+
display: block;
|
|
38
|
+
padding-top: 72%;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
img {
|
|
42
|
+
width: 100%;
|
|
43
|
+
height: 100%;
|
|
44
|
+
position: absolute;
|
|
45
|
+
top: 0;
|
|
46
|
+
left: 0;
|
|
47
|
+
object-fit: cover;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.content{
|
|
52
|
+
width: 100%;
|
|
53
|
+
display: flex;
|
|
54
|
+
align-items: center;
|
|
55
|
+
|
|
56
|
+
&Wrappper{
|
|
57
|
+
padding: 32px 0;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.title{
|
|
61
|
+
font-size: var(--font-size-h3);
|
|
62
|
+
line-height: var(--line-height-h3);
|
|
63
|
+
|
|
64
|
+
h3{
|
|
65
|
+
font-weight: 400;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
span{
|
|
69
|
+
font-weight: 700;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.desc{
|
|
75
|
+
margin-top: 72px;
|
|
76
|
+
font-size: var(--font-size-body-regular);
|
|
77
|
+
line-height: var(--line-height-body-regular);
|
|
78
|
+
font-weight: 400;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
.action{
|
|
82
|
+
padding-top: 48px;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
// masked images
|
|
88
|
+
&.maskedImageContent{
|
|
89
|
+
|
|
90
|
+
.content{
|
|
91
|
+
.title h4{
|
|
92
|
+
font-size: var(--font-size-h4);
|
|
93
|
+
line-height: var(--line-height-h4);
|
|
94
|
+
font-weight: var(--font-weight-h4);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
.imageContentWrapper{
|
|
99
|
+
margin: 0 ;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
.imageWrapper{
|
|
103
|
+
svg{
|
|
104
|
+
width: 100%;
|
|
105
|
+
min-height: 570px;
|
|
106
|
+
height: 100%;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
.imageWrapper, .content{
|
|
111
|
+
padding: 0;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
// full image
|
|
117
|
+
&.imageContentFull{
|
|
118
|
+
|
|
119
|
+
&.top{
|
|
120
|
+
&.left{
|
|
121
|
+
.imageHolder {
|
|
122
|
+
border-radius: 0px 500px 0px 0px;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
&.right{
|
|
127
|
+
.imageHolder {
|
|
128
|
+
border-radius: 500px 0px 0px;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
&.bottom{
|
|
134
|
+
&.left{
|
|
135
|
+
.imageHolder {
|
|
136
|
+
border-radius: 0px 0px 500px 0px;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
&.right{
|
|
141
|
+
.imageHolder {
|
|
142
|
+
border-radius: 0px 0px 0px 500px;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
&.left{
|
|
148
|
+
.imageContentWrapper {
|
|
149
|
+
flex-direction: row;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
.imageHolder {
|
|
153
|
+
height: 100%;
|
|
154
|
+
position: absolute;
|
|
155
|
+
width: calc(50vw + 10px);
|
|
156
|
+
right: 0;
|
|
157
|
+
left: unset;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
.content{
|
|
161
|
+
padding-left: 198px;
|
|
162
|
+
padding-right: 0;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
.imageContentWrapper{
|
|
168
|
+
margin: 0px;
|
|
169
|
+
min-height: 935px;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
.imageWrapper{
|
|
173
|
+
position: relative;
|
|
174
|
+
padding: 0px;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
.imageHolder {
|
|
178
|
+
padding: 0;
|
|
179
|
+
height: 100%;
|
|
180
|
+
position: absolute;
|
|
181
|
+
width: calc(50vw - 10px);
|
|
182
|
+
left: 0;
|
|
183
|
+
overflow: hidden;
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
&::before {
|
|
187
|
+
content: none;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
img {
|
|
191
|
+
width: 100%;
|
|
192
|
+
height: 100%;
|
|
193
|
+
object-fit: cover;
|
|
194
|
+
object-position: center;
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
.content{
|
|
199
|
+
padding: 0;
|
|
200
|
+
padding-right: 198px;
|
|
201
|
+
|
|
202
|
+
.desc{
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
.list{
|
|
206
|
+
margin-top: 48px;
|
|
207
|
+
list-style: none;
|
|
208
|
+
|
|
209
|
+
li{
|
|
210
|
+
margin-bottom: 12px;
|
|
211
|
+
|
|
212
|
+
.listWrapper{
|
|
213
|
+
display: flex;
|
|
214
|
+
align-items: center;
|
|
215
|
+
|
|
216
|
+
svg{
|
|
217
|
+
flex-shrink: 0;
|
|
218
|
+
margin-right: 8px;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
&:last-child{
|
|
224
|
+
margin-bottom: 0px;
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
@media screen and (min-width: 992px){
|
|
236
|
+
|
|
237
|
+
&Wrapper{
|
|
238
|
+
margin: 0 -52px;
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
.imageWrapper{
|
|
242
|
+
width: 50%;
|
|
243
|
+
padding: 0 52px;
|
|
244
|
+
margin-top: 0px;
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
|
|
248
|
+
.content{
|
|
249
|
+
width: 50%;
|
|
250
|
+
padding: 0 52px;
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
&.left{
|
|
254
|
+
.imageContentWrapper {
|
|
255
|
+
flex-direction: row;
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
&.right{
|
|
260
|
+
.imageContentWrapper {
|
|
261
|
+
flex-direction: row-reverse;
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
&.maskedImageContent{
|
|
267
|
+
.imageContentWrapper{
|
|
268
|
+
margin: 0 -44px;
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
.imageWrapper, .content{
|
|
272
|
+
padding: 0 44px;
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { Meta, StoryObj } from "@storybook/react-vite";
|
|
3
|
+
import IntroBlock from "./IntroBlock";
|
|
4
|
+
import ElementHolder from "../../Shared/ElementHolder/ElementHolder";
|
|
5
|
+
|
|
6
|
+
const meta: Meta = {
|
|
7
|
+
title: "DataDisplay / IntroBlock",
|
|
8
|
+
component: IntroBlock,
|
|
9
|
+
parameters: {
|
|
10
|
+
layout: 'fullscreen',
|
|
11
|
+
},
|
|
12
|
+
tags: ["autodocs"],
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export default meta;
|
|
16
|
+
|
|
17
|
+
type Story = StoryObj<typeof meta>;
|
|
18
|
+
|
|
19
|
+
const IntroBlockTemplate: Story = {
|
|
20
|
+
render: () => {
|
|
21
|
+
return (
|
|
22
|
+
<ElementHolder paddingTop="sm" paddingBottom="sm" piller="visit" level="light">
|
|
23
|
+
<IntroBlock
|
|
24
|
+
introHeading={'A district that’s growing, grounded, and full of opportunity.'}
|
|
25
|
+
introText={'From the Southern Alps to the sea, Waikirikiri Selwyn’s diverse towns arespread across the Canterbury Plains between two mighty braided rivers. This is where ideas take root, families and businesses grow, and communities come together. We don’t just dream of a better future, we make it happen.'}
|
|
26
|
+
/>
|
|
27
|
+
</ElementHolder>
|
|
28
|
+
)
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export const IntroBlockComponent = {
|
|
33
|
+
...IntroBlockTemplate
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|