Merged in feat/SW-2851-the-doc-logo (pull request #2293)

Feat/SW-2851: Add The Dock Signature hotel logo and marker

* feat(SW-2851): Add The Doc as signature hotel

* chore(SW-2851): add logo

* chore(SW-2851): add marker


Approved-by: Erik Tiekstra
This commit is contained in:
Matilda Landström
2025-06-05 07:20:17 +00:00
parent d63e13aff5
commit f45782f423
6 changed files with 290 additions and 0 deletions

View File

@@ -0,0 +1,127 @@
export default function TheDockMarker({
className,
...props
}: React.SVGAttributes<HTMLOrSVGElement>) {
return (
<svg
className={className}
width="84"
height="104"
viewBox="0 0 84 104"
fill="none"
xmlns="http://www.w3.org/2000/svg"
{...props}
>
<g filter="url(#filter0_d_11590_36116)">
<path
d="M42 11C59.1208 11 73 24.8792 73 42C73 55.9434 63.794 67.7357 51.1289 71.6328L44.0322 83.3408C43.2623 84.6105 41.4259 84.6279 40.6318 83.373L33.2793 71.7539C20.4044 67.9866 11 56.0927 11 42C11 24.8792 24.8792 11 42 11Z"
fill="white"
/>
<path
d="M15 42C15 27.0883 27.0883 15 42 15C56.9117 15 69 27.0883 69 42C69 56.9117 56.9117 69 42 69C27.0883 69 15 56.9117 15 42Z"
fill="#3A0E0E"
/>
<path
d="M60.2448 41.9991C60.2447 40.1601 59.9724 38.3853 59.4667 36.7122L59.235 36.0016C59.2173 35.9507 59.197 35.9006 59.1789 35.8499L43.0427 41.9991L59.1799 48.1494C59.8678 46.2278 60.2448 44.1573 60.2448 41.9991ZM42.3716 60.2401C49.8672 60.09 56.2516 55.4202 58.915 48.8444L42.3716 42.5394V60.2401ZM42.3716 41.4589L54.7553 36.7392C52.7324 31.8374 47.9672 28.3582 42.3716 28.2099V41.4589ZM23.7546 41.9991C23.7546 51.9518 31.7217 60.0418 41.6267 60.2401V56.5364C33.7677 56.3388 27.4572 49.9058 27.4572 41.9991C27.4575 33.9681 33.9687 27.4587 41.9997 27.4587C48.074 27.4589 53.277 31.1841 55.4513 36.4732L58.9129 35.1538C56.2043 28.4698 49.6526 23.7551 41.9986 23.7551C31.9231 23.7553 23.7549 31.9225 23.7546 41.9991ZM28.2021 41.9991C28.2021 49.4945 34.179 55.5941 41.6267 55.7915V28.2078C34.1791 28.4052 28.2023 34.504 28.2021 41.9991ZM60.9886 41.9991C60.9886 52.4864 52.487 60.9891 41.9986 60.9891C31.5105 60.9889 23.0107 52.4873 23.0107 41.9991C23.011 31.5112 31.5118 23.0115 41.9986 23.0112C50.2995 23.0112 57.3557 28.3369 59.9383 35.7574L60.063 36.1252C60.6642 37.9754 60.9886 39.9496 60.9886 41.9991Z"
fill="#F7F1E8"
/>
<path
d="M59.5531 36.1491C60.1406 36.1491 60.6169 35.6729 60.6169 35.0853C60.6169 34.4978 60.1406 34.0215 59.5531 34.0215C58.9655 34.0215 58.4893 34.4978 58.4893 35.0853C58.4893 35.6729 58.9655 36.1491 59.5531 36.1491Z"
fill="#FC2826"
/>
<path
d="M41.9993 26.3762L42.5316 27.6383L41.9993 24.4468L41.4678 27.6383L41.9993 26.3762Z"
fill="#FC2826"
/>
</g>
<g filter="url(#filter1_d_11590_36116)">
<rect x="36" y="89" width="12" height="12" rx="6" fill="white" />
<circle cx="42" cy="95" r="4" fill="#3A0E0E" />
</g>
<defs>
<filter
id="filter0_d_11590_36116"
x="0"
y="0"
width="84"
height="95.3037"
filterUnits="userSpaceOnUse"
colorInterpolationFilters="sRGB"
>
<feFlood floodOpacity="0" result="BackgroundImageFix" />
<feColorMatrix
in="SourceAlpha"
type="matrix"
values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"
result="hardAlpha"
/>
<feMorphology
radius="3"
operator="dilate"
in="SourceAlpha"
result="effect1_dropShadow_11590_36116"
/>
<feOffset />
<feGaussianBlur stdDeviation="4" />
<feComposite in2="hardAlpha" operator="out" />
<feColorMatrix
type="matrix"
values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.2 0"
/>
<feBlend
mode="normal"
in2="BackgroundImageFix"
result="effect1_dropShadow_11590_36116"
/>
<feBlend
mode="normal"
in="SourceGraphic"
in2="effect1_dropShadow_11590_36116"
result="shape"
/>
</filter>
<filter
id="filter1_d_11590_36116"
x="33"
y="86"
width="18"
height="18"
filterUnits="userSpaceOnUse"
colorInterpolationFilters="sRGB"
>
<feFlood floodOpacity="0" result="BackgroundImageFix" />
<feColorMatrix
in="SourceAlpha"
type="matrix"
values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"
result="hardAlpha"
/>
<feMorphology
radius="1"
operator="dilate"
in="SourceAlpha"
result="effect1_dropShadow_11590_36116"
/>
<feOffset />
<feGaussianBlur stdDeviation="1" />
<feComposite in2="hardAlpha" operator="out" />
<feColorMatrix
type="matrix"
values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0"
/>
<feBlend
mode="normal"
in2="BackgroundImageFix"
result="effect1_dropShadow_11590_36116"
/>
<feBlend
mode="normal"
in="SourceGraphic"
in2="effect1_dropShadow_11590_36116"
result="shape"
/>
</filter>
</defs>
</svg>
)
}

View File

@@ -0,0 +1,82 @@
export default function TheDockSmallMarker({
className,
...props
}: React.SVGAttributes<HTMLOrSVGElement>) {
return (
<svg
className={className}
width="74"
height="84"
viewBox="0 0 74 84"
fill="none"
xmlns="http://www.w3.org/2000/svg"
{...props}
>
<g filter="url(#filter0_d_11604_36545)">
<path
d="M37 11C51.3594 11 63 22.6406 63 37C63 48.6942 55.2791 58.5837 44.6572 61.8525L38.9746 71.2285C38.2048 72.4983 36.3683 72.5155 35.5742 71.2607L29.6855 61.9551C18.8874 58.7953 11 48.8196 11 37C11 22.6406 22.6406 11 37 11Z"
fill="white"
/>
<path
d="M15 37C15 24.8497 24.8497 15 37 15C49.1503 15 59 24.8497 59 37C59 49.1503 49.1503 59 37 59C24.8497 59 15 49.1503 15 37Z"
fill="#3A0E0E"
/>
<path
d="M50.8662 36.9992C50.8662 35.6015 50.6592 34.2527 50.2748 32.9811L50.0988 32.441C50.0853 32.4023 50.0699 32.3643 50.0561 32.3258L37.7927 36.9992L50.0569 41.6734C50.5798 40.2129 50.8662 38.6393 50.8662 36.9992ZM37.2826 50.8623C42.9792 50.7482 47.8314 47.1992 49.8556 42.2016L37.2826 37.4097V50.8623ZM37.2826 36.5886L46.6942 33.0016C45.1568 29.2762 41.5352 26.632 37.2826 26.5193V36.5886ZM23.1337 36.9992C23.1337 44.5632 29.1887 50.7116 36.7165 50.8623V48.0475C30.7436 47.8973 25.9477 43.0082 25.9477 36.9992C25.9479 30.8956 30.8964 25.9485 37 25.9485C41.6164 25.9486 45.5707 28.7798 47.2232 32.7995L49.854 31.7968C47.7955 26.7169 42.8162 23.1337 36.9992 23.1337C29.3417 23.1339 23.1339 29.3409 23.1337 36.9992ZM26.5138 36.9992C26.5138 42.6957 31.0562 47.3313 36.7165 47.4814V26.5177C31.0563 26.6677 26.514 31.3029 26.5138 36.9992ZM51.4316 36.9992C51.4316 44.9695 44.9703 51.4316 36.9992 51.4316C29.0282 51.4314 22.5684 44.9702 22.5684 36.9992C22.5686 29.0283 29.0292 22.5686 36.9992 22.5684C43.3078 22.5684 48.6706 26.6159 50.6333 32.2555L50.7281 32.535C51.185 33.9411 51.4315 35.4415 51.4316 36.9992Z"
fill="#F7F1E8"
/>
<path
d="M50.3404 32.5531C50.7869 32.5531 51.1489 32.1912 51.1489 31.7446C51.1489 31.2981 50.7869 30.9361 50.3404 30.9361C49.8939 30.9361 49.5319 31.2981 49.5319 31.7446C49.5319 32.1912 49.8939 32.5531 50.3404 32.5531Z"
fill="#FC2826"
/>
<path
d="M37.0399 24.8026L37.6468 25.7617L37.0399 23.3362L36.434 25.7617L37.0399 24.8026Z"
fill="#FC2826"
/>
</g>
<defs>
<filter
id="filter0_d_11604_36545"
x="0"
y="0"
width="74"
height="83.1914"
filterUnits="userSpaceOnUse"
colorInterpolationFilters="sRGB"
>
<feFlood floodOpacity="0" result="BackgroundImageFix" />
<feColorMatrix
in="SourceAlpha"
type="matrix"
values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"
result="hardAlpha"
/>
<feMorphology
radius="3"
operator="dilate"
in="SourceAlpha"
result="effect1_dropShadow_11604_36545"
/>
<feOffset />
<feGaussianBlur stdDeviation="4" />
<feComposite in2="hardAlpha" operator="out" />
<feColorMatrix
type="matrix"
values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.2 0"
/>
<feBlend
mode="normal"
in2="BackgroundImageFix"
result="effect1_dropShadow_11604_36545"
/>
<feBlend
mode="normal"
in="SourceGraphic"
in2="effect1_dropShadow_11604_36545"
result="shape"
/>
</filter>
</defs>
</svg>
)
}

View File

@@ -12,6 +12,8 @@ import ScandicMarker from "./Scandic"
import ScandicGoMarker from "./ScandicGo"
import ScandicGoSmallMarker from "./ScandicGoSmall"
import ScandicSmallMarker from "./ScandicSmall"
import TheDockMarker from "./TheDock"
import TheDockSmallMarker from "./TheDockSmall"
import type { MarkerInfo } from "@/types/components/maps/marker"
import { HotelTypeEnum } from "@/types/enums/hotelType"
@@ -68,6 +70,13 @@ export default function HotelMarkerByType({
) : (
<MarskiMarker {...props} />
)
case SignatureHotelEnum.TheDock:
return size === "small" ? (
<TheDockSmallMarker {...props} />
) : (
<TheDockMarker {...props} />
)
default:
return size === "small" ? (
<ScandicSmallMarker {...props} />

View File

@@ -4,4 +4,5 @@ export enum SignatureHotelEnum {
Haymarket = "890",
HotelNorge = "785",
Marski = "605",
TheDock = "796",
}

View File

@@ -0,0 +1,67 @@
import type { LogoProps } from '../icon'
import { iconVariants } from '../variants'
export default function TheDockIcon({ className, color, ...props }: LogoProps) {
const classNames = iconVariants({ className, color })
return (
<svg
className={classNames}
width="128"
height="30"
viewBox="0 0 128 30"
fill="none"
xmlns="http://www.w3.org/2000/svg"
{...props}
>
<path
d="M1.77497 20.0678L3.55259 19.8572V10.1428L1.42104 10.1597L0.678584 12.344H0V9.27808L4.5585 9.32581L9.05579 9.27808V12.344H8.36124L7.63475 10.1597L5.50319 10.1428V19.8572L7.21962 20.0678L7.14244 20.7192L4.53189 20.6715L1.86012 20.7192L1.78295 20.0678H1.77497Z"
fill="#3A0E0E"
/>
<path
d="M9.88599 20.0677L11.1979 19.8571V10.1427L9.88599 9.93213L9.96316 9.28076L12.1719 9.32849L14.2742 9.28076L14.3513 9.93213L13.1459 10.1427V14.3485H17.7656V10.1427L16.4989 9.93213L16.576 9.28076L18.7395 9.32849L20.8871 9.28076L20.9642 9.93213L19.7135 10.1427V19.8571L20.9642 20.0677L20.8871 20.7191L18.7395 20.6713L16.576 20.7191L16.4989 20.0677L17.7656 19.8571V15.2442H13.1459V19.8571L14.3513 20.0677L14.2742 20.7191L12.1719 20.6713L9.96316 20.7191L9.88599 20.0677Z"
fill="#3A0E0E"
/>
<path
d="M22.0317 20.0677L23.3463 19.8571V10.1427L22.0317 9.93213L22.1089 9.28076L24.2405 9.32849L30.5447 9.28076L30.699 12.2962H30.0657L29.1689 10.1764L25.2916 10.1287V14.3345L27.2848 14.2699L27.9022 12.5432H28.5515L28.3971 14.663L28.5515 16.9119H27.9022L27.2848 15.1852L25.2916 15.1206V19.8796L29.3392 19.8319L30.3743 17.6307H31.0689L30.5447 20.7275L24.2405 20.6798L22.1089 20.7275L22.0317 20.0761V20.0677Z"
fill="#3A0E0E"
/>
<path
d="M35.8428 20.0676L37.1547 19.857V10.1426L35.8428 9.932L35.9199 9.28063L37.9451 9.32836L41.189 9.28063C44.4036 9.26378 46.3648 11.187 46.3648 14.6937C46.3648 18.2005 44.6644 20.3174 41.0666 20.7245L37.9291 20.6768L35.9199 20.7245L35.8428 20.0732V20.0676ZM44.2626 14.9015C44.2626 12.1304 42.948 9.99377 40.4784 10.0443L39.1026 10.1257V19.7924L40.8962 19.9384C42.9347 19.9721 44.2652 17.8355 44.2652 14.9015H44.2626Z"
fill="#3A0E0E"
/>
<path
d="M47.6636 15.2609C47.6636 11.6587 49.3933 9.73548 53.3797 9.00269C56.6076 9.00269 58.7418 11.4481 58.7418 14.7415C58.7418 18.3437 57.0281 20.2669 53.0417 20.9997C49.8138 20.9997 47.6636 18.5543 47.6636 15.2609ZM56.6236 15.2749C56.6236 12.88 55.6336 9.97694 53.0071 9.97694C50.7664 9.97694 49.7925 12.0321 49.7925 14.705C49.7925 17.1673 50.8117 20.0198 53.4222 20.0198C55.6629 20.0198 56.6209 17.9506 56.6209 15.2749H56.6236Z"
fill="#3A0E0E"
/>
<path
d="M60.0376 15.1936C60.0376 11.3781 62.4326 9.5531 66.0624 9C67.6218 9 68.9816 9.68506 69.7081 10.2073V12.6527H68.7501L68.2551 11.1029C67.8533 10.5807 67.0337 9.94617 65.767 9.94617C63.6514 9.94617 62.1665 11.6588 62.1665 14.7557C62.1665 17.4622 63.6035 20.02 66.0757 20.02C67.0337 20.02 67.699 19.4809 68.178 19.0261L68.9816 17.1674H69.9077L69.5538 19.7757C68.6729 20.1997 67.1588 20.7696 65.6765 20.997C62.7573 20.997 60.0376 18.9755 60.0376 15.1936Z"
fill="#3A0E0E"
/>
<path
d="M70.9773 20.0677L72.2892 19.8571V10.1427L70.9773 9.93213L71.0545 9.28076L73.2632 9.32849L75.2723 9.28076L75.3495 9.93213L74.2372 10.1427V14.5928L74.6709 14.3485L78.8569 10.1427L77.7286 9.93213L77.8057 9.28076L79.4742 9.32849L81.1587 9.28076L81.2359 9.93213L80.0464 10.1764L75.7354 14.5114L76.2596 14.7725L80.7569 19.8908L81.5765 20.0705L81.4994 20.7219L80.1874 20.6741L78.7345 20.7219L74.4846 15.4884L74.2372 14.9494V19.8571L75.3495 20.0677L75.2723 20.7191L73.2632 20.6713L71.0545 20.7191L70.9773 20.0677Z"
fill="#3A0E0E"
/>
<path
d="M90.4597 20.9465C88.2909 20.9465 86.5452 19.3181 86.5452 15.7804C86.5452 10.8109 88.3228 9 90.6619 9C92.5034 9 93.9378 10.0051 94.1879 11.8806H92.8148C92.6125 10.8278 91.8328 10.2017 90.6619 10.2017C89.1344 10.2017 88.0274 11.5521 87.9316 15.1066C88.384 14.0874 89.4298 13.3462 90.7231 13.3462C92.6258 13.3462 94.3103 14.6967 94.3103 17.0495C94.3103 19.4023 92.6737 20.9493 90.457 20.9493L90.4597 20.9465ZM90.4756 19.728C91.9259 19.728 92.8919 18.6077 92.8919 17.0944C92.8919 15.4969 91.7849 14.5451 90.4756 14.5451C89.2435 14.5451 88.1046 15.5334 88.1046 17.0944C88.1046 18.4926 89.0706 19.728 90.4756 19.728Z"
fill="#3A0E0E"
/>
<path
d="M99.5207 20.9465C97.6499 20.9465 96.1677 19.975 95.9175 18.049H97.2906C97.4769 19.1356 98.3365 19.728 99.5207 19.728C101.112 19.728 102.187 18.5431 102.235 14.7248C101.831 15.7945 100.769 16.6003 99.4275 16.6003C97.5088 16.6003 95.8403 15.2189 95.8403 12.8661C95.8403 10.5133 97.4769 9 99.6936 9C101.91 9 103.608 10.5807 103.608 14.298C103.608 19.3321 101.862 20.9465 99.5207 20.9465ZM102.017 12.8156C102.017 11.4342 101.064 10.1989 99.6777 10.1989C98.2912 10.1989 97.2614 11.3191 97.2614 12.8156C97.2614 14.4131 98.3684 15.3818 99.6777 15.3818C100.987 15.3818 102.017 14.3626 102.017 12.8156Z"
fill="#3A0E0E"
/>
<path
d="M105.042 11.3192C105.042 10.0193 106.072 9.03101 107.241 9.03101C108.409 9.03101 109.455 10.0193 109.455 11.3192C109.455 12.6192 108.425 13.6243 107.241 13.6243C106.056 13.6243 105.042 12.636 105.042 11.3192ZM108.505 11.3192C108.505 10.578 107.943 9.96876 107.241 9.96876C106.538 9.96876 105.993 10.5612 105.993 11.3192C105.993 12.0773 106.554 12.6697 107.241 12.6697C107.927 12.6697 108.505 12.0773 108.505 11.3192Z"
fill="#3A0E0E"
/>
<path
d="M110.798 17.4902H112.187C112.328 18.7087 113.185 19.7278 114.713 19.7278C116.24 19.7278 117.225 18.8378 117.225 17.5407C117.225 16.1257 116.163 15.3676 114.62 15.3676C114.276 15.3676 113.901 15.3844 113.497 15.4013V14.1519C113.824 14.1687 114.276 14.1856 114.62 14.1856C115.929 14.1856 117.1 13.4949 117.1 12.1613C117.1 10.9933 116.147 10.2044 114.777 10.2044C113.406 10.2044 112.499 11.1421 112.36 12.2455H111.003C111.221 10.3026 112.688 9.00269 114.777 9.00269C116.866 9.00269 118.489 10.1229 118.489 12.1304C118.489 13.6269 117.475 14.4832 116.304 14.7303V14.7639C117.613 14.9605 118.643 15.9488 118.643 17.5772C118.643 19.6829 116.866 20.9492 114.713 20.9492C112.56 20.9492 111.001 19.5847 110.798 17.493V17.4902Z"
fill="#3A0E0E"
/>
<path
d="M123.913 20.9465C122.042 20.9465 120.56 19.975 120.309 18.049H121.682C121.869 19.1356 122.728 19.728 123.913 19.728C125.504 19.728 126.579 18.5431 126.627 14.7248C126.222 15.7945 125.161 16.6003 123.819 16.6003C121.901 16.6003 120.232 15.2189 120.232 12.8661C120.232 10.5133 121.869 9 124.085 9C126.302 9 128 10.5807 128 14.298C128 19.3321 126.254 20.9465 123.913 20.9465ZM126.409 12.8156C126.409 11.4342 125.456 10.1989 124.07 10.1989C122.683 10.1989 121.653 11.3191 121.653 12.8156C121.653 14.4131 122.76 15.3818 124.07 15.3818C125.379 15.3818 126.409 14.3626 126.409 12.8156Z"
fill="#3A0E0E"
/>
</svg>
)
}

View File

@@ -5,6 +5,7 @@ import HotelNorgeIcon from './HotelNorge'
import MarskiLogoIcon from './Marski'
import ScandicGoLogoIcon from './ScandicGoLogo'
import ScandicLogoIcon from './ScandicLogo'
import TheDockIcon from './TheDock'
type HotelLogoProps = {
hotelId: string
@@ -23,6 +24,7 @@ enum SignatureHotelEnum {
Haymarket = '890',
HotelNorge = '785',
Marski = '605',
TheDock = '796',
}
export default function HotelLogoIcon({ hotelId, hotelType }: HotelLogoProps) {
@@ -41,6 +43,8 @@ export default function HotelLogoIcon({ hotelId, hotelType }: HotelLogoProps) {
return <GrandHotelOsloLogoIcon />
case SignatureHotelEnum.Marski:
return <MarskiLogoIcon />
case SignatureHotelEnum.TheDock:
return <TheDockIcon />
default:
return <ScandicLogoIcon color="Icon/Interactive/Accent" />
}