feat: add typeIconMap for facility types and update icon rendering in modals

This commit is contained in:
zhangyuheng
2026-03-18 16:51:57 +08:00
parent 3097e47d80
commit a578971cf3

View File

@@ -84,6 +84,7 @@ const dimensionTextMap = { overworld: '主世界', nether: '下界', end: '末
const statusTextMap = { online: '运行中', maintenance: '维护中', offline: '已停用' }; const statusTextMap = { online: '运行中', maintenance: '维护中', offline: '已停用' };
const statusToneMap = { online: 'success', maintenance: 'warning', offline: 'danger' }; const statusToneMap = { online: 'success', maintenance: 'warning', offline: 'danger' };
const statusIconMap = { online: 'fa-check-circle', maintenance: 'fa-wrench', offline: 'fa-times-circle' }; const statusIconMap = { online: 'fa-check-circle', maintenance: 'fa-wrench', offline: 'fa-times-circle' };
const typeIconMap = { resource: 'fa-cube', xp: 'fa-star', infrastructure: 'fa-road' };
const filtered = computed(() => { const filtered = computed(() => {
return facilities.value.filter(item => { return facilities.value.filter(item => {
@@ -334,7 +335,7 @@ function generateJson() {
{{ statusTextMap[selectedFacility.status] }} {{ statusTextMap[selectedFacility.status] }}
</span> </span>
<span class="badge large-badge badge-type"> <span class="badge large-badge badge-type">
<i class="fas fa-cube"></i> <i class="fas" :class="typeIconMap[selectedFacility.type]"></i>
{{ typeTextMap[selectedFacility.type] }} {{ typeTextMap[selectedFacility.type] }}
</span> </span>
</div> </div>
@@ -426,7 +427,7 @@ function generateJson() {
<div class="preview-title">{{ edTitle || '未命名设施' }}</div> <div class="preview-title">{{ edTitle || '未命名设施' }}</div>
<div class="modal-badges"> <div class="modal-badges">
<span :class="['badge', 'large-badge', 'badge-status-' + edStatus]"><i class="fas" :class="statusIconMap[edStatus]"></i> {{ statusTextMap[edStatus] }}</span> <span :class="['badge', 'large-badge', 'badge-status-' + edStatus]"><i class="fas" :class="statusIconMap[edStatus]"></i> {{ statusTextMap[edStatus] }}</span>
<span class="badge large-badge badge-type"><i class="fas fa-cube"></i> {{ typeTextMap[edType] }}</span> <span class="badge large-badge badge-type"><i class="fas" :class="typeIconMap[edType]"></i> {{ typeTextMap[edType] }}</span>
</div> </div>
</div> </div>
<div class="preview-body"> <div class="preview-body">