diff --git a/apps/scandic-web/components/ContentType/HotelPage/SidePeeks/WellnessAndExercise/Facility/OpeningHours/index.tsx b/apps/scandic-web/components/ContentType/HotelPage/SidePeeks/WellnessAndExercise/Facility/OpeningHours/index.tsx
new file mode 100644
index 000000000..e7bfdd136
--- /dev/null
+++ b/apps/scandic-web/components/ContentType/HotelPage/SidePeeks/WellnessAndExercise/Facility/OpeningHours/index.tsx
@@ -0,0 +1,95 @@
+import { Typography } from "@scandic-hotels/design-system/Typography"
+
+import { getIntl } from "@/i18n"
+
+import styles from "./openingHours.module.css"
+
+import {
+ ExternalGymDetails,
+ HealthFacilitiesEnum,
+ OpeningHoursType,
+} from "@/types/components/hotelPage/facilities"
+import type { FacilityProps } from "@/types/components/hotelPage/sidepeek/facility"
+
+interface OpeningHoursType extends FacilityProps {
+ showTitle?: boolean
+}
+
+export default async function OpeningHours({
+ data,
+ showTitle = true,
+}: OpeningHoursType) {
+ const intl = await getIntl()
+
+ const ordinaryOpeningTimes = data.openingDetails.openingHours.ordinary
+ const weekendOpeningTimes = data.openingDetails.openingHours.weekends
+ const shortDescription = data.content.texts.descriptions?.short
+
+ const isExternalGym =
+ data.type === HealthFacilitiesEnum.Gym &&
+ data.details.find((d) => d.name === ExternalGymDetails.ExternalGym)
+ ?.value === "True"
+
+ const showOpeningHours =
+ data.openingDetails.openingHoursType !== OpeningHoursType.SetFreeText &&
+ !isExternalGym
+
+ return (
+ <>
+ {shortDescription ? (
+ {shortDescription}
+ {ordinaryOpeningTimes.alwaysOpen + ? intl.formatMessage({ + defaultMessage: "Monday–Friday: Always open", + }) + : intl.formatMessage( + { + defaultMessage: + "Monday–Friday: {openingTime}–{closingTime}", + }, + { + openingTime: ordinaryOpeningTimes.openingTime, + closingTime: ordinaryOpeningTimes.closingTime, + } + )} +
++ {weekendOpeningTimes.alwaysOpen + ? intl.formatMessage({ + defaultMessage: "Saturday–Sunday: Always open", + }) + : intl.formatMessage( + { + defaultMessage: + "Saturday–Sunday: {openingTime}–{closingTime}", + }, + { + openingTime: weekendOpeningTimes.openingTime, + closingTime: weekendOpeningTimes.closingTime, + } + )} +
+{shortDescription}
-- {ordinaryOpeningTimes.alwaysOpen - ? intl.formatMessage({ - defaultMessage: "Monday–Friday: Always open", - }) - : intl.formatMessage( - { - defaultMessage: - "Monday–Friday: {openingTime}–{closingTime}", - }, - { - openingTime: ordinaryOpeningTimes.openingTime, - closingTime: ordinaryOpeningTimes.closingTime, - } - )} -
-- {weekendOpeningTimes.alwaysOpen - ? intl.formatMessage({ - defaultMessage: "Saturday–Sunday: Always open", - }) - : intl.formatMessage( - { - defaultMessage: - "Saturday–Sunday: {openingTime}–{closingTime}", - }, - { - openingTime: weekendOpeningTimes.openingTime, - closingTime: weekendOpeningTimes.closingTime, - } - )} -
-- {facility.openingDetails.openingHours.ordinary.alwaysOpen - ? intl.formatMessage({ - defaultMessage: "Monday–Friday: Always open", - }) - : intl.formatMessage( - { - defaultMessage: - "Monday–Friday: {openingTime}–{closingTime}", - }, - { - openingTime: - facility.openingDetails.openingHours.ordinary - .openingTime, - closingTime: - facility.openingDetails.openingHours.ordinary - .closingTime, - } - )} -
-- {facility.openingDetails.openingHours.weekends.alwaysOpen - ? intl.formatMessage({ - defaultMessage: "Saturday–Sunday: Always open", - }) - : intl.formatMessage( - { - defaultMessage: - "Saturday–Sunday: {openingTime}–{closingTime}", - }, - { - openingTime: - facility.openingDetails.openingHours.weekends - .openingTime, - closingTime: - facility.openingDetails.openingHours.weekends - .closingTime, - } - )} -
-