Merged in feat/fix-translations (pull request #1244)
Feat: Fix translations for localize * fix: POI translations * fix: update translations Approved-by: Michael Zetterberg Approved-by: Erik Tiekstra
This commit is contained in:
@@ -7,11 +7,12 @@ import FacilitiesCardGrid from "./CardGrid"
|
||||
|
||||
import styles from "./facilities.module.css"
|
||||
|
||||
import type {
|
||||
Facilities,
|
||||
FacilitiesProps,
|
||||
FacilityCardType,
|
||||
FacilityGrid,
|
||||
import {
|
||||
type Facilities,
|
||||
type FacilitiesProps,
|
||||
FacilityCardButtonText,
|
||||
type FacilityCardType,
|
||||
type FacilityGrid,
|
||||
} from "@/types/components/hotelPage/facilities"
|
||||
|
||||
export default async function Facilities({
|
||||
@@ -34,12 +35,9 @@ export default async function Facilities({
|
||||
if (isFacilityCard(card)) {
|
||||
return {
|
||||
...card,
|
||||
heading: intl.formatMessage({ id: card.heading }),
|
||||
secondaryButton: {
|
||||
...card.secondaryButton,
|
||||
title: intl.formatMessage({
|
||||
id: card.secondaryButton.title,
|
||||
}),
|
||||
title: translateButtonText(card.secondaryButton.title),
|
||||
},
|
||||
}
|
||||
}
|
||||
@@ -48,6 +46,20 @@ export default async function Facilities({
|
||||
}
|
||||
)
|
||||
|
||||
function translateButtonText(text: string) {
|
||||
switch (text) {
|
||||
case FacilityCardButtonText.MEETINGS:
|
||||
return intl.formatMessage({ id: "About meetings & conferences" })
|
||||
case FacilityCardButtonText.RESTAURANT:
|
||||
return intl.formatMessage({ id: "Read more & book a table" })
|
||||
case FacilityCardButtonText.WELLNESS:
|
||||
return intl.formatMessage({ id: "Read more about wellness & exercise" })
|
||||
default:
|
||||
console.warn(`Unsupported option given: ${text}`)
|
||||
return intl.formatMessage({ id: "Read more" })
|
||||
}
|
||||
}
|
||||
|
||||
return (
|
||||
<SectionContainer className={styles.grid}>
|
||||
{translatedFacilityGrids.map((cardGrid: FacilityGrid) => (
|
||||
|
||||
@@ -13,6 +13,7 @@ import styles from "./sidebar.module.css"
|
||||
|
||||
import type { SidebarProps } from "@/types/components/hotelPage/map/sidebar"
|
||||
import type { Coordinates } from "@/types/components/maps/coordinates"
|
||||
import { PointOfInterestGroupEnum } from "@/types/enums/pointOfInterest"
|
||||
|
||||
export default function Sidebar({
|
||||
activePoi,
|
||||
@@ -86,6 +87,28 @@ export default function Sidebar({
|
||||
const viewAsMapMsg = intl.formatMessage({ id: "View as map" })
|
||||
const viewAsListMsg = intl.formatMessage({ id: "View as list" })
|
||||
|
||||
function translatePOIGroup(group: PointOfInterestGroupEnum) {
|
||||
switch (group) {
|
||||
case PointOfInterestGroupEnum.PUBLIC_TRANSPORT:
|
||||
return intl.formatMessage({ id: "Public transport" })
|
||||
case PointOfInterestGroupEnum.ATTRACTIONS:
|
||||
return intl.formatMessage({ id: "Attractions" })
|
||||
case PointOfInterestGroupEnum.BUSINESS:
|
||||
return intl.formatMessage({ id: "Business" })
|
||||
case PointOfInterestGroupEnum.LOCATION:
|
||||
return intl.formatMessage({ id: "Location" })
|
||||
case PointOfInterestGroupEnum.PARKING:
|
||||
return intl.formatMessage({ id: "Parking" })
|
||||
case PointOfInterestGroupEnum.SHOPPING_DINING:
|
||||
return intl.formatMessage({ id: "Shopping & Dining" })
|
||||
default:
|
||||
const option: never = group
|
||||
console.warn(`Unsupported group given: ${option}`)
|
||||
|
||||
return intl.formatMessage({ id: "N/A" })
|
||||
}
|
||||
}
|
||||
|
||||
return (
|
||||
<>
|
||||
<aside
|
||||
@@ -124,7 +147,7 @@ export default function Sidebar({
|
||||
>
|
||||
<h3>
|
||||
<PoiMarker group={group} />
|
||||
{intl.formatMessage({ id: group })}
|
||||
{translatePOIGroup(group)}
|
||||
</h3>
|
||||
</Body>
|
||||
<ul className={styles.poiList}>
|
||||
|
||||
@@ -6,6 +6,7 @@ import { getIntl } from "@/i18n"
|
||||
|
||||
import styles from "./facility.module.css"
|
||||
|
||||
import { HealthFacilitiesEnum } from "@/types/components/hotelPage/facilities"
|
||||
import type { FacilityProps } from "@/types/components/hotelPage/sidepeek/facility"
|
||||
|
||||
export default async function Facility({ data }: FacilityProps) {
|
||||
@@ -14,6 +15,26 @@ export default async function Facility({ data }: FacilityProps) {
|
||||
const ordinaryOpeningTimes = data.openingDetails.openingHours.ordinary
|
||||
const weekendOpeningTimes = data.openingDetails.openingHours.weekends
|
||||
|
||||
function translateWellnessType(type: string) {
|
||||
switch (type) {
|
||||
case HealthFacilitiesEnum.Gym:
|
||||
return intl.formatMessage({ id: "Gym" })
|
||||
case HealthFacilitiesEnum.IndoorPool:
|
||||
return intl.formatMessage({ id: "Indoor pool" })
|
||||
case HealthFacilitiesEnum.Jacuzzi:
|
||||
return intl.formatMessage({ id: "Jacuzzi" })
|
||||
case HealthFacilitiesEnum.OutdoorPool:
|
||||
return intl.formatMessage({ id: "Outdoor pool" })
|
||||
case HealthFacilitiesEnum.Relax:
|
||||
return intl.formatMessage({ id: "Relax" })
|
||||
case HealthFacilitiesEnum.Sauna:
|
||||
return intl.formatMessage({ id: "Sauna" })
|
||||
default:
|
||||
console.warn(`Unsupported group given: ${type}`)
|
||||
return intl.formatMessage({ id: "Wellness" })
|
||||
}
|
||||
}
|
||||
|
||||
return (
|
||||
<div className={styles.content}>
|
||||
{image?.imageSizes.medium && (
|
||||
@@ -27,7 +48,7 @@ export default async function Facility({ data }: FacilityProps) {
|
||||
)}
|
||||
<div className={styles.information}>
|
||||
<Subtitle color="burgundy" asChild type="one">
|
||||
<Title level="h3">{intl.formatMessage({ id: data.type })}</Title>
|
||||
<Title level="h3">{translateWellnessType(data.type)}</Title>
|
||||
</Subtitle>
|
||||
<div>
|
||||
<Subtitle type="two" color="uiTextHighContrast">
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
"ACCE": "Tilgængelighed",
|
||||
"ALLG": "Allergi",
|
||||
"About accessibility": "Om tilgængelighed",
|
||||
"About meetings & conferences": "About meetings & conferences",
|
||||
"About meetings & conferences": "Om møder og konferencer",
|
||||
"About parking": "Om parkering",
|
||||
"About the hotel": "Om hotellet",
|
||||
"Accept new price": "Accepter ny pris",
|
||||
@@ -70,13 +70,13 @@
|
||||
"Breakfast": "Morgenmad",
|
||||
"Breakfast ({totalAdults, plural, one {# adult} other {# adults}}) x {totalBreakfasts}": "Morgenmad ({totalAdults, plural, one {# voksen} other {# voksne}}) x {totalBreakfasts}",
|
||||
"Breakfast ({totalChildren, plural, one {# child} other {# children}}) x {totalBreakfasts}": "Morgenmad ({totalChildren, plural, one {# barn} other {# børn}}) x {totalBreakfasts}",
|
||||
"Breakfast Restaurant": "Breakfast Restaurant",
|
||||
"Breakfast buffet": "Morgenbuffet",
|
||||
"Breakfast charge": "Morgenmadsgebyr",
|
||||
"Breakfast deal can be purchased at the hotel.": "Morgenmad kan købes på hotellet.",
|
||||
"Breakfast excluded": "Morgenmad ikke inkluderet",
|
||||
"Breakfast included": "Morgenmad inkluderet",
|
||||
"Breakfast is included.": "Morgenmad er inkluderet.",
|
||||
"Breakfast restaurant": "Breakfast restaurant",
|
||||
"Breakfast selection in next step.": "Valg af morgenmad i næste trin.",
|
||||
"Bus terminal": "Busstation",
|
||||
"Business": "Forretning",
|
||||
@@ -229,8 +229,8 @@
|
||||
"In extra bed": "i ekstra seng",
|
||||
"In order to verify your account linking we will ask you to sign in to your SAS EuroBonus account.": "In order to verify your account linking we will ask you to sign in to your SAS EuroBonus account.",
|
||||
"Included": "Inkluderet",
|
||||
"IndoorPool": "Indendørs pool",
|
||||
"Invalid booking code": "Ugyldig reservationskode",
|
||||
"Indoor pool": "Indendørs pool",
|
||||
"Is there anything else you would like us to know before your arrival?": "Er der andet, du gerne vil have os til at vide, før din ankomst?",
|
||||
"It is not posible to manage your communication preferences right now, please try again later or contact support if the problem persists.": "Det er ikke muligt at administrere dine kommunikationspræferencer lige nu, prøv venligst igen senere eller kontakt support, hvis problemet fortsætter.",
|
||||
"It looks like no hotels match your filters. Try adjusting your search to find the perfect stay.": "Det ser ud til, at ingen hoteller matcher dine filtre. Prøv at justere din søgning for at finde det perfekte ophold.",
|
||||
@@ -342,7 +342,7 @@
|
||||
"Open {amount, plural, one {gift} other {gifts}}": "Åbne {amount, plural, one {gave} other {gaver}}",
|
||||
"Opening hours": "Åbningstider",
|
||||
"Outdoor": "Udendørs",
|
||||
"OutdoorPool": "Udendørs pool",
|
||||
"Outdoor pool": "Udendørs pool",
|
||||
"Overview": "Oversigt",
|
||||
"PETR": "Kæledyr",
|
||||
"Parking": "Parkering",
|
||||
@@ -388,11 +388,11 @@
|
||||
"Queen bed": "Queensize-seng",
|
||||
"Rate details": "Oplysninger om værelsespris",
|
||||
"Read more": "Læs mere",
|
||||
"Read more & book a table": "Read more & book a table",
|
||||
"Read more & book a table": "Læs mere og bestil bord",
|
||||
"Read more about the hotel": "Læs mere om hotellet",
|
||||
"Read more about wellness & exercise": "Read more about wellness & exercise",
|
||||
"Redirecting you to SAS": "Redirecting you to SAS",
|
||||
"Redirecting you to my pages.": "Redirecting you to my pages.",
|
||||
"Read more about wellness & exercise": "Læs mere om wellness & motion",
|
||||
"Reference #{bookingNr}": "Reference #{bookingNr}",
|
||||
"Relax": "Slap af",
|
||||
"Remember code": "Husk kode",
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
"ACCE": "Zugänglichkeit",
|
||||
"ALLG": "Allergie",
|
||||
"About accessibility": "Über Barrierefreiheit",
|
||||
"About meetings & conferences": "About meetings & conferences",
|
||||
"About meetings & conferences": "Über Meetings & Konferenzen",
|
||||
"About parking": "Über das Parken",
|
||||
"About the hotel": "Über das Hotel",
|
||||
"Accept new price": "Neuen Preis akzeptieren",
|
||||
@@ -70,13 +70,13 @@
|
||||
"Breakfast": "Frühstück",
|
||||
"Breakfast ({totalAdults, plural, one {# adult} other {# adults}}) x {totalBreakfasts}": "Frühstück ({totalAdults, plural, one {# erwachsene} other {# erwachsene}}) x {totalBreakfasts}",
|
||||
"Breakfast ({totalChildren, plural, one {# child} other {# children}}) x {totalBreakfasts}": "Frühstück ({totalChildren, plural, one {# kind} other {# kinder}}) x {totalBreakfasts}",
|
||||
"Breakfast Restaurant": "Breakfast Restaurant",
|
||||
"Breakfast buffet": "Frühstücksbuffet",
|
||||
"Breakfast charge": "Frühstücksgebühr",
|
||||
"Breakfast deal can be purchased at the hotel.": "Frühstücksangebot kann im Hotel gekauft werden.",
|
||||
"Breakfast excluded": "Frühstück nicht inbegriffen",
|
||||
"Breakfast included": "Frühstück inbegriffen",
|
||||
"Breakfast is included.": "Frühstück ist inbegriffen.",
|
||||
"Breakfast restaurant": "Breakfast restaurant",
|
||||
"Breakfast selection in next step.": "Frühstücksauswahl in nächsten Schritt.",
|
||||
"Business": "Geschäft",
|
||||
"By accepting the <termsAndConditionsLink>Terms and Conditions for Scandic Friends</termsAndConditionsLink> I understand that my personal data will be processed in accordance with <privacyPolicy>Scandic's Privacy Policy</privacyPolicy>.": "Mit der Annahme der <termsAndConditionsLink>Allgemeinen Geschäftsbedingungen für Scandic Friends</termsAndConditionsLink> erkläre ich mich damit einverstanden, dass meine persönlichen Daten in Übereinstimmung mit der <privacyPolicy>Datenschutzrichtlinie von Scandic verarbeitet werden</privacyPolicy>.",
|
||||
@@ -228,8 +228,8 @@
|
||||
"In extra bed": "im zusätzlichen Bett",
|
||||
"In order to verify your account linking we will ask you to sign in to your SAS EuroBonus account.": "In order to verify your account linking we will ask you to sign in to your SAS EuroBonus account.",
|
||||
"Included": "Iinklusive",
|
||||
"IndoorPool": "Innenpool",
|
||||
"Invalid booking code": "Ungültiger Buchungscode",
|
||||
"Indoor pool": "Innenpool",
|
||||
"Is there anything else you would like us to know before your arrival?": "Gibt es noch etwas, das Sie uns vor Ihrer Ankunft mitteilen möchten?",
|
||||
"It is not posible to manage your communication preferences right now, please try again later or contact support if the problem persists.": "Es ist derzeit nicht möglich, Ihre Kommunikationseinstellungen zu verwalten. Bitte versuchen Sie es später erneut oder wenden Sie sich an den Support, wenn das Problem weiterhin besteht.",
|
||||
"It looks like no hotels match your filters. Try adjusting your search to find the perfect stay.": "Es scheint, dass keine Hotels Ihren Filtern entsprechen. Versuchen Sie, Ihre Suche anzupassen, um den perfekten Aufenthalt zu finden.",
|
||||
@@ -340,7 +340,7 @@
|
||||
"Open {amount, plural, one {gift} other {gifts}}": "{amount, plural, one {Geschenk} other {Geschenke}} öffnen",
|
||||
"Opening hours": "Öffnungszeiten",
|
||||
"Outdoor": "Im Freien",
|
||||
"OutdoorPool": "Außenpool",
|
||||
"Outdoor pool": "Außenpool",
|
||||
"Overview": "Übersicht",
|
||||
"PETR": "Haustier",
|
||||
"Parking": "Parken",
|
||||
@@ -386,11 +386,11 @@
|
||||
"Queen bed": "Queensize-Bett",
|
||||
"Rate details": "Preisdetails",
|
||||
"Read more": "Mehr lesen",
|
||||
"Read more & book a table": "Read more & book a table",
|
||||
"Read more & book a table": "Lesen Sie mehr und reservieren Sie einen Tisch",
|
||||
"Read more about the hotel": "Lesen Sie mehr über das Hotel",
|
||||
"Read more about wellness & exercise": "Read more about wellness & exercise",
|
||||
"Redirecting you to SAS": "Redirecting you to SAS",
|
||||
"Redirecting you to my pages.": "Redirecting you to my pages.",
|
||||
"Read more about wellness & exercise": "Lesen Sie mehr über Wellness & Bewegung",
|
||||
"Reference #{bookingNr}": "Referenz #{bookingNr}",
|
||||
"Relax": "Entspannen",
|
||||
"Remember code": "Code merken",
|
||||
|
||||
@@ -76,13 +76,13 @@
|
||||
"Breakfast": "Breakfast",
|
||||
"Breakfast ({totalAdults, plural, one {# adult} other {# adults}}) x {totalBreakfasts}": "Breakfast ({totalAdults, plural, one {# adult} other {# adults}}) x {totalBreakfasts}",
|
||||
"Breakfast ({totalChildren, plural, one {# child} other {# children}}) x {totalBreakfasts}": "Breakfast ({totalChildren, plural, one {# child} other {# children}}) x {totalBreakfasts}",
|
||||
"Breakfast Restaurant": "Breakfast Restaurant",
|
||||
"Breakfast buffet": "Breakfast buffet",
|
||||
"Breakfast charge": "Breakfast charge",
|
||||
"Breakfast deal can be purchased at the hotel.": "Breakfast deal can be purchased at the hotel.",
|
||||
"Breakfast excluded": "Breakfast excluded",
|
||||
"Breakfast included": "Breakfast included",
|
||||
"Breakfast is included.": "Breakfast is included.",
|
||||
"Breakfast restaurant": "Breakfast restaurant",
|
||||
"Breakfast selection in next step.": "Breakfast selection in next step.",
|
||||
"Bus terminal": "Bus terminal",
|
||||
"Business": "Business",
|
||||
@@ -250,8 +250,8 @@
|
||||
"In extra bed": "In extra bed",
|
||||
"In order to verify your account linking we will ask you to sign in to your SAS EuroBonus account.": "In order to verify your account linking we will ask you to sign in to your SAS EuroBonus account.",
|
||||
"Included": "Included",
|
||||
"IndoorPool": "Indoor pool",
|
||||
"Invalid booking code": "Invalid booking code",
|
||||
"Indoor pool": "Indoor pool",
|
||||
"Is there anything else you would like us to know before your arrival?": "Is there anything else you would like us to know before your arrival?",
|
||||
"It is not posible to manage your communication preferences right now, please try again later or contact support if the problem persists.": "It is not posible to manage your communication preferences right now, please try again later or contact support if the problem persists.",
|
||||
"It looks like no hotels match your filters. Try adjusting your search to find the perfect stay.": "It looks like no hotels match your filters. Try adjusting your search to find the perfect stay.",
|
||||
@@ -371,7 +371,7 @@
|
||||
"Open {amount, plural, one {gift} other {gifts}}": "Open {amount, plural, one {gift} other {gifts}}",
|
||||
"Opening hours": "Opening hours",
|
||||
"Outdoor": "Outdoor",
|
||||
"OutdoorPool": "Outdoor pool",
|
||||
"Outdoor pool": "Outdoor pool",
|
||||
"Overview": "Overview",
|
||||
"PETR": "Pet",
|
||||
"Parking": "Parking",
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
"ACCE": "Saavutettavuus",
|
||||
"ALLG": "Allergia",
|
||||
"About accessibility": "Tietoja saavutettavuudesta",
|
||||
"About meetings & conferences": "About meetings & conferences",
|
||||
"About meetings & conferences": "Tietoja kokouksista ja konferensseista",
|
||||
"About parking": "Tietoja pysäköinnistä",
|
||||
"About the hotel": "Tietoja hotellista",
|
||||
"Accept new price": "Hyväksy uusi hinta",
|
||||
@@ -70,13 +70,13 @@
|
||||
"Breakfast": "Aamiainen",
|
||||
"Breakfast ({totalAdults, plural, one {# adult} other {# adults}}) x {totalBreakfasts}": "Aamiainen ({totalAdults, plural, one {# aikuinen} other {# aikuiset}}) x {totalBreakfasts}",
|
||||
"Breakfast ({totalChildren, plural, one {# child} other {# children}}) x {totalBreakfasts}": "Aamiainen ({totalChildren, plural, one {# lapsi} other {# lasta}}) x {totalBreakfasts}",
|
||||
"Breakfast Restaurant": "Breakfast Restaurant",
|
||||
"Breakfast buffet": "Aamiaisbuffet",
|
||||
"Breakfast charge": "Aamiaismaksu",
|
||||
"Breakfast deal can be purchased at the hotel.": "Aamiaisdeali voidaan ostaa hotellissa.",
|
||||
"Breakfast excluded": "Aamiainen ei sisälly",
|
||||
"Breakfast included": "Aamiainen sisältyy",
|
||||
"Breakfast is included.": "Aamiainen sisältyy.",
|
||||
"Breakfast restaurant": "Breakfast restaurant",
|
||||
"Breakfast selection in next step.": "Aamiaisvalinta seuraavassa vaiheessa.",
|
||||
"Bus terminal": "Bussiasema",
|
||||
"Business": "Business",
|
||||
@@ -229,8 +229,8 @@
|
||||
"In extra bed": "Oma vuodepaikka",
|
||||
"In order to verify your account linking we will ask you to sign in to your SAS EuroBonus account.": "In order to verify your account linking we will ask you to sign in to your SAS EuroBonus account.",
|
||||
"Included": "Sisälly hintaan",
|
||||
"IndoorPool": "Sisäuima-allas",
|
||||
"Invalid booking code": "Virheellinen varauskoodi",
|
||||
"Indoor pool": "Sisäuima-allas",
|
||||
"Is there anything else you would like us to know before your arrival?": "Onko jotain muuta, mitä haluaisit meidän tietävän ennen saapumistasi?",
|
||||
"It is not posible to manage your communication preferences right now, please try again later or contact support if the problem persists.": "Viestintäasetuksiasi ei voi hallita juuri nyt. Yritä myöhemmin uudelleen tai ota yhteyttä tukeen, jos ongelma jatkuu.",
|
||||
"It looks like no hotels match your filters. Try adjusting your search to find the perfect stay.": "Näyttää siltä, että mikään hotelli ei vastaa suodattimiasi. Yritä muokata hakuasi löytääksesi täydellisen oleskelun.",
|
||||
@@ -342,7 +342,7 @@
|
||||
"Open {amount, plural, one {gift} other {gifts}}": "{amount, plural, one {Avoin lahja} other {Avoimet lahjat}}",
|
||||
"Opening hours": "Aukioloajat",
|
||||
"Outdoor": "Ulkona",
|
||||
"OutdoorPool": "Ulkouima-allas",
|
||||
"Outdoor pool": "Ulkouima-allas",
|
||||
"Overview": "Yleiskatsaus",
|
||||
"PETR": "Lemmikki",
|
||||
"Parking": "Pysäköinti",
|
||||
@@ -388,11 +388,11 @@
|
||||
"Queen bed": "Queen-vuode",
|
||||
"Rate details": "Hintatiedot",
|
||||
"Read more": "Lue lisää",
|
||||
"Read more & book a table": "Read more & book a table",
|
||||
"Read more & book a table": "Lue lisää ja varaa pöytä",
|
||||
"Read more about the hotel": "Lue lisää hotellista",
|
||||
"Read more about wellness & exercise": "Read more about wellness & exercise",
|
||||
"Redirecting you to SAS": "Redirecting you to SAS",
|
||||
"Redirecting you to my pages.": "Redirecting you to my pages.",
|
||||
"Read more about wellness & exercise": "Lue lisää hyvinvoinnista ja liikunnasta",
|
||||
"Reference #{bookingNr}": "Referenssi #{bookingNr}",
|
||||
"Relax": "Rentoutua",
|
||||
"Remember code": "Muista koodi",
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
"ACCE": "Tilgjengelighet",
|
||||
"ALLG": "Allergi",
|
||||
"About accessibility": "Om tilgjengelighet",
|
||||
"About meetings & conferences": "About meetings & conferences",
|
||||
"About meetings & conferences": "Om møter og konferanser",
|
||||
"About parking": "Om parkering",
|
||||
"About the hotel": "Om hotellet",
|
||||
"Accept new price": "Aksepterer ny pris",
|
||||
@@ -70,13 +70,13 @@
|
||||
"Breakfast": "Frokost",
|
||||
"Breakfast ({totalAdults, plural, one {# adult} other {# adults}}) x {totalBreakfasts}": "Frokost ({totalAdults, plural, one {# voksen} other {# voksne}}) x {totalBreakfasts}",
|
||||
"Breakfast ({totalChildren, plural, one {# child} other {# children}}) x {totalBreakfasts}": "Frokost ({totalChildren, plural, one {# barn} other {# barn}}) x {totalBreakfasts}",
|
||||
"Breakfast Restaurant": "Breakfast Restaurant",
|
||||
"Breakfast buffet": "Breakfast buffet",
|
||||
"Breakfast charge": "Pris for frokost",
|
||||
"Breakfast deal can be purchased at the hotel.": "Frokostdeal kan kjøpes på hotellet.",
|
||||
"Breakfast excluded": "Frokost ekskludert",
|
||||
"Breakfast included": "Frokost inkludert",
|
||||
"Breakfast is included.": "Frokost er inkludert.",
|
||||
"Breakfast restaurant": "Breakfast restaurant",
|
||||
"Breakfast selection in next step.": "Frokostvalg i neste steg.",
|
||||
"Bus terminal": "Bussterminal",
|
||||
"Business": "Forretnings",
|
||||
@@ -228,8 +228,8 @@
|
||||
"In extra bed": "i ekstraseng",
|
||||
"In order to verify your account linking we will ask you to sign in to your SAS EuroBonus account.": "In order to verify your account linking we will ask you to sign in to your SAS EuroBonus account.",
|
||||
"Included": "Inkludert",
|
||||
"IndoorPool": "Innendørs basseng",
|
||||
"Invalid booking code": "Ugyldig bookingkode",
|
||||
"Indoor pool": "Innendørs basseng",
|
||||
"Is there anything else you would like us to know before your arrival?": "Er det noe annet du vil at vi skal vite før ankomsten din?",
|
||||
"It is not posible to manage your communication preferences right now, please try again later or contact support if the problem persists.": "Det er ikke mulig å administrere kommunikasjonspreferansene dine akkurat nå, prøv igjen senere eller kontakt support hvis problemet vedvarer.",
|
||||
"It looks like no hotels match your filters. Try adjusting your search to find the perfect stay.": "Det ser ut til at ingen hoteller samsvarer med filtrene dine. Prøv å justere søket for å finne det perfekte oppholdet.",
|
||||
@@ -341,7 +341,7 @@
|
||||
"Open {amount, plural, one {gift} other {gifts}}": "{amount, plural, one {Åpen gave} other {Åpnen gaver}}",
|
||||
"Opening hours": "Åpningstider",
|
||||
"Outdoor": "Utendørs",
|
||||
"OutdoorPool": "Utendørs basseng",
|
||||
"Outdoor pool": "Utendørs basseng",
|
||||
"Overview": "Oversikt",
|
||||
"PETR": "Kjæledyr",
|
||||
"Parking": "Parkering",
|
||||
@@ -387,11 +387,11 @@
|
||||
"Queen bed": "Queen-size-seng",
|
||||
"Rate details": "Prisdetaljer",
|
||||
"Read more": "Les mer",
|
||||
"Read more & book a table": "Read more & book a table",
|
||||
"Read more & book a table": "Les mer og bestill bord",
|
||||
"Read more about the hotel": "Les mer om hotellet",
|
||||
"Read more about wellness & exercise": "Read more about wellness & exercise",
|
||||
"Redirecting you to SAS": "Redirecting you to SAS",
|
||||
"Redirecting you to my pages.": "Redirecting you to my pages.",
|
||||
"Read more about wellness & exercise": "Les mer om velvære og trening",
|
||||
"Reference #{bookingNr}": "Referanse #{bookingNr}",
|
||||
"Relax": "Slappe av",
|
||||
"Remember code": "Husk kode",
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
"ACCE": "Tillgänglighet",
|
||||
"ALLG": "Allergi",
|
||||
"About accessibility": "Om tillgänglighet",
|
||||
"About meetings & conferences": "About meetings & conferences",
|
||||
"About meetings & conferences": "Om möten & konferenser",
|
||||
"About parking": "Om parkering",
|
||||
"About the hotel": "Om hotellet",
|
||||
"Accept new price": "Accepter ny pris",
|
||||
@@ -70,13 +70,13 @@
|
||||
"Breakfast": "Frukost",
|
||||
"Breakfast ({totalAdults, plural, one {# adult} other {# adults}}) x {totalBreakfasts}": "Frukost ({totalAdults, plural, one {# vuxen} other {# vuxna}}) x {totalBreakfasts}",
|
||||
"Breakfast ({totalChildren, plural, one {# child} other {# children}}) x {totalBreakfasts}": "Frukost ({totalChildren, plural, one {# barn} other {# barn}}) x {totalBreakfasts}",
|
||||
"Breakfast Restaurant": "Breakfast Restaurant",
|
||||
"Breakfast buffet": "Frukostbuffé",
|
||||
"Breakfast charge": "Frukostpris",
|
||||
"Breakfast deal can be purchased at the hotel.": "Frukostdeal kan köpas på hotellet.",
|
||||
"Breakfast excluded": "Frukost ingår ej",
|
||||
"Breakfast included": "Frukost ingår",
|
||||
"Breakfast is included.": "Frukost ingår.",
|
||||
"Breakfast restaurant": "Breakfast restaurant",
|
||||
"Breakfast selection in next step.": "Frukostval i nästa steg.",
|
||||
"Bus terminal": "Bussterminal",
|
||||
"Business": "Business",
|
||||
@@ -228,8 +228,8 @@
|
||||
"In extra bed": "Egen sängplats",
|
||||
"In order to verify your account linking we will ask you to sign in to your SAS EuroBonus account.": "In order to verify your account linking we will ask you to sign in to your SAS EuroBonus account.",
|
||||
"Included": "Inkluderad",
|
||||
"IndoorPool": "Inomhuspool",
|
||||
"Invalid booking code": "Ogiltig bokningskod",
|
||||
"Indoor pool": "Inomhuspool",
|
||||
"Is there anything else you would like us to know before your arrival?": "Är det något mer du vill att vi ska veta innan din ankomst?",
|
||||
"It is not posible to manage your communication preferences right now, please try again later or contact support if the problem persists.": "Det gick inte att hantera dina kommunikationsinställningar just nu, försök igen senare eller kontakta supporten om problemet kvarstår.",
|
||||
"It looks like no hotels match your filters. Try adjusting your search to find the perfect stay.": "Det verkar som att inga hotell matchar dina filter. Prova att justera din sökning för att hitta den perfekta vistelsen.",
|
||||
@@ -341,7 +341,7 @@
|
||||
"Open {amount, plural, one {gift} other {gifts}}": "Öppna {amount, plural, one {gåva} other {gåvor}}",
|
||||
"Opening hours": "Öppettider",
|
||||
"Outdoor": "Utomhus",
|
||||
"OutdoorPool": "Utomhuspool",
|
||||
"Outdoor pool": "Utomhuspool",
|
||||
"Overview": "Översikt",
|
||||
"PETR": "Husdjur",
|
||||
"Parking": "Parkering",
|
||||
@@ -387,11 +387,11 @@
|
||||
"Queen bed": "Queen size-säng",
|
||||
"Rate details": "Detaljer om rumspriset",
|
||||
"Read more": "Läs mer",
|
||||
"Read more & book a table": "Read more & book a table",
|
||||
"Read more & book a table": "Läs mer och boka bord",
|
||||
"Read more about the hotel": "Läs mer om hotellet",
|
||||
"Read more about wellness & exercise": "Read more about wellness & exercise",
|
||||
"Redirecting you to SAS": "Redirecting you to SAS",
|
||||
"Redirecting you to my pages.": "Redirecting you to my pages.",
|
||||
"Read more about wellness & exercise": "Läs mer om friskvård & träning",
|
||||
"Reference #{bookingNr}": "Referens #{bookingNr}",
|
||||
"Relax": "Koppla av",
|
||||
"Remember code": "Kom ihåg kod",
|
||||
|
||||
@@ -47,7 +47,7 @@ export enum RestaurantHeadings {
|
||||
restaurantAndBar = "Restaurant & Bar",
|
||||
bar = "Bar",
|
||||
restaurant = "Restaurant",
|
||||
breakfastRestaurant = "Breakfast restaurant",
|
||||
breakfastRestaurant = "Breakfast Restaurant",
|
||||
}
|
||||
|
||||
export enum WellnessHeadings {
|
||||
@@ -57,11 +57,26 @@ export enum WellnessHeadings {
|
||||
GymJacuzziSaunaRelax = "Gym, Jacuzzi, Sauna & Relax",
|
||||
}
|
||||
|
||||
export enum MeetingsHeading {
|
||||
Default = "Events that make an impression",
|
||||
}
|
||||
|
||||
export type HeadingEnum =
|
||||
| RestaurantHeadings
|
||||
| WellnessHeadings
|
||||
| MeetingsHeading
|
||||
|
||||
export enum HealthFacilitiesEnum {
|
||||
Jacuzzi = "Jacuzzi",
|
||||
Gym = "Gym",
|
||||
Sauna = "Sauna",
|
||||
Relax = "Relax",
|
||||
IndoorPool = "IndoorPool",
|
||||
OutdoorPool = "OutdoorPool",
|
||||
IndoorPool = "Indoor pool",
|
||||
OutdoorPool = "Outdoor pool",
|
||||
}
|
||||
|
||||
export const FacilityCardButtonText = {
|
||||
RESTAURANT: "Read more & book a table",
|
||||
MEETINGS: "About meetings & conferences",
|
||||
WELLNESS: "Read more about wellness & exercise",
|
||||
} as const
|
||||
|
||||
@@ -9,6 +9,7 @@ import { getLang } from "@/i18n/serverContext"
|
||||
import {
|
||||
type Facilities,
|
||||
type FacilityCard,
|
||||
FacilityCardButtonText,
|
||||
type FacilityCardType,
|
||||
FacilityCardTypeEnum,
|
||||
type FacilityGrid,
|
||||
@@ -31,7 +32,7 @@ export function isFacilityImage(card: FacilityCardType): card is FacilityImage {
|
||||
|
||||
function setCardProps(
|
||||
theme: CardProps["theme"],
|
||||
buttonText: string,
|
||||
buttonText: (typeof FacilityCardButtonText)[keyof typeof FacilityCardButtonText],
|
||||
href: string,
|
||||
heading: string,
|
||||
scriptedTopTitle?: string
|
||||
@@ -87,7 +88,7 @@ export function setFacilityCardGrids(
|
||||
const wellnessTitle = getWellnessHeading(healthFacilities)
|
||||
card = setCardProps(
|
||||
"one",
|
||||
"Read more about wellness & exercise",
|
||||
FacilityCardButtonText.WELLNESS,
|
||||
wellnessAndExercise[lang],
|
||||
facility.headingText,
|
||||
wellnessTitle
|
||||
@@ -98,7 +99,7 @@ export function setFacilityCardGrids(
|
||||
case FacilityCardTypeEnum.conference:
|
||||
card = setCardProps(
|
||||
"primaryDim",
|
||||
"About meetings & conferences",
|
||||
FacilityCardButtonText.MEETINGS,
|
||||
meetingsAndConferences[lang],
|
||||
facility.headingText,
|
||||
"Events that make an impression"
|
||||
@@ -110,7 +111,7 @@ export function setFacilityCardGrids(
|
||||
const restaurantTitle = getRestaurantHeading(amenities)
|
||||
card = setCardProps(
|
||||
"primaryDark",
|
||||
"Read more & book a table",
|
||||
FacilityCardButtonText.RESTAURANT,
|
||||
restaurantAndBar[lang],
|
||||
facility.headingText,
|
||||
restaurantTitle
|
||||
|
||||
Reference in New Issue
Block a user