fix(falukant): map house types to matching models
All checks were successful
Deploy to production / deploy (push) Successful in 1m50s
All checks were successful
Deploy to production / deploy (push) Successful in 1m50s
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
const HOUSE_MODELS = Object.freeze({
|
||||
const LEGACY_HOUSE_MODELS = Object.freeze({
|
||||
'Unter der Brücke': 'under_bridge',
|
||||
'Strohhütte': 'straw_hut',
|
||||
Holzhaus: 'wooden_house',
|
||||
@@ -10,6 +10,11 @@ const HOUSE_MODELS = Object.freeze({
|
||||
Schloss: 'castle',
|
||||
});
|
||||
|
||||
const MODEL_NAMES = new Set(Object.values(LEGACY_HOUSE_MODELS));
|
||||
|
||||
export function getFalukantHouseModel(houseType) {
|
||||
return HOUSE_MODELS[houseType?.labelTr] || 'under_bridge';
|
||||
// HouseType.labelTr is the stable database key (e.g. "wooden_house"),
|
||||
// while older data may still contain the German display label.
|
||||
const key = houseType?.abbr || houseType?.labelTr;
|
||||
return MODEL_NAMES.has(key) ? key : (LEGACY_HOUSE_MODELS[key] || 'under_bridge');
|
||||
}
|
||||
|
||||
@@ -133,7 +133,12 @@
|
||||
<h3>{{ $t('falukant.house.buyablehouses') }}</h3>
|
||||
<div class="houses-list">
|
||||
<div v-for="house in buyableHouses" :key="house.id" class="house-item">
|
||||
<div class="house-preview house-preview--static" aria-hidden="true">⌂</div>
|
||||
<House3D
|
||||
v-if="house.houseType?.labelTr"
|
||||
class="house-preview"
|
||||
:model="houseModel(house.houseType)"
|
||||
:label="$t(`falukant.house.type.${house.houseType.labelTr}`)"
|
||||
/>
|
||||
<div class="house-info">
|
||||
<h4>{{ $t(`falukant.house.type.${house.houseType.labelTr}`) }}</h4>
|
||||
<div class="buyable-house-stats">
|
||||
@@ -594,16 +599,6 @@ h2 {
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.house-preview--static {
|
||||
display: grid;
|
||||
place-items: center;
|
||||
color: #75553d;
|
||||
background: linear-gradient(145deg, #f6ecd9, #dbc19a);
|
||||
border: 1px solid rgba(117, 85, 61, 0.25);
|
||||
font-size: 4rem;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.house-info {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
|
||||
Reference in New Issue
Block a user