Some checks failed
Build and deploy updated apps / Build & deploy (push) Failing after 1m7s
127 lines
5.5 KiB
TypeScript
127 lines
5.5 KiB
TypeScript
class Text {
|
|
constructor(readonly $de: string, readonly $en: string) {
|
|
}
|
|
}
|
|
|
|
class Feature {
|
|
readonly label: Text | string
|
|
|
|
constructor(readonly icon: string, readonly de: string, readonly en?: string) {
|
|
this.label = en ? new Text(de, en) : de
|
|
}
|
|
}
|
|
|
|
const features = [
|
|
new Feature('shower-head', 'Badezimmer mit Dusche', 'Bathroom with shower'),
|
|
new Feature('toilet', 'Bad und WC getrennt', 'Bathroom and toilet in separate rooms'),
|
|
new Feature('wifi', 'Schnelles WLAN', 'High-speed WiFi'),
|
|
new Feature('tv', 'Fernseher', 'TV'),
|
|
new Feature('microwave', 'Mikrowelle', 'Microwave'),
|
|
new Feature('microwave', 'Backrohr', 'Oven'),
|
|
new Feature('bubbles', 'Geschirrspüler', 'Dishwasher'),
|
|
new Feature('coffee', 'Kaffeemaschine', 'Coffee maker'),
|
|
new Feature('coffee', 'Wasserkocher', 'Electric water boiler'),
|
|
new Feature('bed', 'Bettwäsche', 'Bed sheets'),
|
|
new Feature('layers', 'Handtücher', 'Towels'),
|
|
new Feature('wind', 'Haarföhn', 'Hairdryer')
|
|
]
|
|
|
|
class Apartment {
|
|
readonly title: string
|
|
readonly subtitle: Text
|
|
readonly features: Feature[]
|
|
|
|
constructor(index: number, readonly de: string, readonly en: string, specifics: Feature[], readonly images: string[]) {
|
|
this.title = '${apartments[' + index.toString() + '].title}'
|
|
this.subtitle = new Text(de, en)
|
|
|
|
this.features = [
|
|
new Feature('coins', '${apartments[' + index.toString() + '].price.text}'),
|
|
new Feature('users', '${apartments[' + index.toString() + '].capacity.text}'),
|
|
new Feature('scaling', '${apartments[' + index.toString() + '].size} m²'),
|
|
...specifics,
|
|
...features
|
|
]
|
|
}
|
|
}
|
|
|
|
export default {
|
|
list: [
|
|
new Apartment(
|
|
0,
|
|
'${apartments[0].size} m² Urlaubsvergnügen! Dieses gemütliche Appartement bietet Ihnen Platz für bis zu ${apartments[0].capacity.to} Personen. Freuen Sie sich auf 1 Schlafzimmer, eine Wohnküche mit ausziehbarer Couch, Badezimmer, eine kleine Terrasse und ein getrenntes WC.',
|
|
'${apartments[0].size} m² of holiday comfort! This cozy apartment comfortably accommodates up to ${apartments[0].capacity.to} guests. It features one bedroom, an open-plan kitchen and living area with a pull-out sofa, a bathroom, a small terrace, and a separate toilet.',
|
|
[
|
|
new Feature('mountain', 'Terrasse mit idyllischem Ausblick', 'Terrace with idyllic view'),
|
|
new Feature('bed-double', 'Schlafzimmer mit Doppelbett', 'Bedroom with double bed'),
|
|
new Feature('sofa', 'Wohnküche mit ausziehbarem Schlafsofa', 'Living/kitchen area with sofa bed'),
|
|
],
|
|
[
|
|
'/apartments/1/1.webp',
|
|
'/apartments/1/2.webp',
|
|
'/apartments/1/3.webp',
|
|
'/apartments/1/4.webp',
|
|
'/apartments/1/5.webp',
|
|
'/apartments/1/6.webp',
|
|
'/apartments/1/7.webp',
|
|
'/apartments/1/8.webp',
|
|
'/apartments/1/9.webp',
|
|
'/apartments/1/10.webp',
|
|
'/apartments/1/11.webp'
|
|
]
|
|
),
|
|
new Apartment(
|
|
1,
|
|
'Wohnkomfort auf ${apartments[1].size} m²! Dieses großzügige Appartement bietet Ihnen Platz für bis zu ${apartments[1].capacity.to} Personen und bietet 2 Schlafzimmer, eine Wohnküche, Badezimmer, einen Balkon und ein getrenntes WC.',
|
|
'Enjoy ${apartments[1].size} m² of comfortable living! This large apartment sleeps up to ${apartments[1].capacity.to} people and includes 2 bedrooms, a combined kitchen and living room, a bathroom, a balcony, and a separate toilet.',
|
|
[
|
|
new Feature('mountain', 'Balkon mit idyllischem Ausblick', 'Balcony with idyllic view'),
|
|
new Feature('bed-double', 'Schlafzimmer 1 mit Doppelbett', 'Bedroom 1 with double bed'),
|
|
new Feature('bed-double', 'Schlafzimmer 2 mit Doppelbett & Schlafsofa', 'Bedroom 2 with double bed & sofa bed'),
|
|
new Feature('sofa', 'Wohnküche', 'Living/kitchen area'),
|
|
],
|
|
[
|
|
'/apartments/2/1.webp',
|
|
'/apartments/2/2.webp',
|
|
'/apartments/2/3.webp',
|
|
'/apartments/2/4.webp',
|
|
'/apartments/2/5.webp',
|
|
'/apartments/2/6.webp',
|
|
'/apartments/2/7.webp',
|
|
'/apartments/2/8.webp',
|
|
'/apartments/2/9.webp',
|
|
'/apartments/2/10.webp',
|
|
'/apartments/2/11.webp',
|
|
'/apartments/2/12.webp',
|
|
'/apartments/2/13.webp'
|
|
]
|
|
),
|
|
new Apartment(
|
|
2,
|
|
'Wohlfühlen auf ${apartments[2].size} m²! Dieses geräumige Appartement bietet Ihnen Platz für bis zu ${apartments[2].capacity.to} Personen und bietet 2 Schlafzimmer, eine Wohnküche, Badezimmer, einen Balkon und ein getrenntes WC.',
|
|
'Spacious ${apartments[2].size} m² apartment for up to ${apartments[2].capacity.to} guests, with 2 bedrooms, a living kitchen, bathroom, balcony, and separate toilet.',
|
|
[
|
|
new Feature('mountain', 'Balkon mit idyllischem Ausblick', 'Balcony with idyllic view'),
|
|
new Feature('bed-double', 'Schlafzimmer 1 mit Doppelbett', 'Bedroom 1 with double bed'),
|
|
new Feature('bed-double', 'Schlafzimmer 2 mit Doppelbett & Schlafsofa', 'Bedroom 2 with double bed & sofa bed'),
|
|
new Feature('sofa', 'Wohnküche', 'Living/kitchen area'),
|
|
],
|
|
[
|
|
'/apartments/3/1.webp',
|
|
'/apartments/3/2.webp',
|
|
'/apartments/3/3.webp',
|
|
'/apartments/3/4.webp',
|
|
'/apartments/3/5.webp',
|
|
'/apartments/3/6.webp',
|
|
'/apartments/3/7.webp',
|
|
'/apartments/3/8.webp',
|
|
'/apartments/3/9.webp',
|
|
'/apartments/3/10.webp',
|
|
'/apartments/3/11.webp',
|
|
'/apartments/3/12.webp',
|
|
'/apartments/3/13.webp',
|
|
'/apartments/3/14.webp'
|
|
]
|
|
)
|
|
]
|
|
} |