mirror of https://github.com/apache/cloudstack.git
ui: Allow font-awesome icon usage and optimise icon size inconsistency (#9744)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com> Co-authored-by: dahn <daan@onecht.net>
This commit is contained in:
parent
971a5b25ec
commit
4876761154
|
|
@ -58,6 +58,12 @@
|
|||
v-if="item.meta.icon && typeof (item.meta.icon) === 'string'"
|
||||
:icon="item.meta.icon"
|
||||
@click="() => { handleClickParentMenu(item) }" />
|
||||
<font-awesome-icon
|
||||
v-else-if="item.meta.icon && Array.isArray(item.meta.icon)"
|
||||
:icon="item.meta.icon"
|
||||
class="anticon"
|
||||
:style="[$store.getters.darkMode ? { color: 'rgba(255, 255, 255, 0.65)' } : { color: '#888' }]"
|
||||
@click="() => { handleClickParentMenu(item) }" />
|
||||
<span>{{ $t(item.meta.title) }}</span>
|
||||
</router-link>
|
||||
</a-menu-item>
|
||||
|
|
|
|||
|
|
@ -34,12 +34,12 @@
|
|||
<resource-icon :image="getImage(resource.icon && resource.icon.base64image || images.template || images.iso || resourceIcon)" size="4x" style="margin-right: 5px"/>
|
||||
</span>
|
||||
<span v-else>
|
||||
<os-logo v-if="resource.ostypeid || resource.ostypename" :osId="resource.ostypeid" :osName="resource.ostypename" size="4x" @update-osname="setResourceOsType"/>
|
||||
<os-logo v-if="resource.ostypeid || resource.ostypename" :osId="resource.ostypeid" :osName="resource.ostypename" size="3x" @update-osname="setResourceOsType"/>
|
||||
<render-icon v-else-if="typeof $route.meta.icon ==='string'" style="font-size: 36px" :icon="$route.meta.icon" />
|
||||
<font-awesome-icon
|
||||
v-else-if="$route.meta.icon && Array.isArray($route.meta.icon)"
|
||||
:icon="$route.meta.icon"
|
||||
size="4x"
|
||||
size="3x"
|
||||
class="anticon"
|
||||
:style="[$store.getters.darkMode ? { color: 'rgba(255, 255, 255, 0.65)' } : { color: '#888' }]" />
|
||||
<render-icon v-else style="font-size: 36px" :svgIcon="$route.meta.icon" />
|
||||
|
|
@ -179,7 +179,10 @@
|
|||
<div class="resource-detail-item" v-if="('cpunumber' in resource && 'cpuspeed' in resource) || resource.cputotal">
|
||||
<div class="resource-detail-item__label">{{ $t('label.cpu') }}</div>
|
||||
<div class="resource-detail-item__details">
|
||||
<appstore-outlined />
|
||||
<font-awesome-icon
|
||||
:icon="['fa-solid', 'fa-microchip']"
|
||||
class="anticon"
|
||||
:style="[$store.getters.darkMode ? { color: 'rgba(255, 255, 255, 0.65)' } : { color: '#888' }]" />
|
||||
<span v-if="'cpunumber' in resource && 'cpuspeed' in resource">{{ resource.cpunumber }} CPU x {{ (resource.cpuspeed / 1000.0).toFixed(2) }} GHz
|
||||
<a-tooltip placement="top">
|
||||
<template #title>
|
||||
|
|
@ -214,7 +217,11 @@
|
|||
<div class="resource-detail-item" v-if="'memory' in resource">
|
||||
<div class="resource-detail-item__label">{{ $t('label.memory') }}</div>
|
||||
<div class="resource-detail-item__details">
|
||||
<bulb-outlined />{{ resource.memory + ' ' + $t('label.mb.memory') }}
|
||||
<font-awesome-icon
|
||||
:icon="['fa-solid', 'fa-memory']"
|
||||
class="anticon"
|
||||
:style="[$store.getters.darkMode ? { color: 'rgba(255, 255, 255, 0.65)' } : { color: '#888' }]" />
|
||||
{{ resource.memory + ' ' + $t('label.mb.memory') }}
|
||||
</div>
|
||||
<div>
|
||||
<span v-if="resource.memorykbs && resource.memoryintfreekbs">
|
||||
|
|
@ -355,7 +362,10 @@
|
|||
v-for="(eth, index) in resource.nic"
|
||||
:key="eth.id"
|
||||
style="margin-left: -24px; margin-top: 5px;">
|
||||
<api-outlined />
|
||||
<font-awesome-icon
|
||||
:icon="['fa-solid', 'fa-ethernet']"
|
||||
class="anticon"
|
||||
:style="[$store.getters.darkMode ? { color: 'rgba(255, 255, 255, 0.65)' } : { color: '#888' }]" />
|
||||
<strong>eth{{ index }}</strong>
|
||||
<copy-label :label="eth.ip6address ? eth.ipaddress + ', ' + eth.ip6address : eth.ipaddress" />
|
||||
<a-tag v-if="eth.isdefault">
|
||||
|
|
@ -380,7 +390,11 @@
|
|||
v-for="network in resource.networks"
|
||||
:key="network.id"
|
||||
style="margin-top: 5px;">
|
||||
<api-outlined />{{ network.name }}
|
||||
<font-awesome-icon
|
||||
:icon="['fa-solid', 'fa-ethernet']"
|
||||
class="anticon"
|
||||
:style="[$store.getters.darkMode ? { color: 'rgba(255, 255, 255, 0.65)' } : { color: '#888' }]" />
|
||||
{{ network.name }}
|
||||
<span v-if="resource.defaultnetworkid === network.id">
|
||||
({{ $t('label.default') }})
|
||||
</span>
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@
|
|||
<span v-if="record.icon && record.icon.base64image">
|
||||
<resource-icon :image="record.icon.base64image" size="2x"/>
|
||||
</span>
|
||||
<os-logo v-else :osId="record.ostypeid" :osName="record.osdisplayname" size="2x" />
|
||||
<os-logo v-else :osId="record.ostypeid" :osName="record.osdisplayname" size="xl" />
|
||||
</span>
|
||||
<span style="min-width: 120px" >
|
||||
<QuickView
|
||||
|
|
@ -57,12 +57,12 @@
|
|||
</span>
|
||||
<span v-if="$showIcon() && !['vm', 'vnfapp'].includes($route.path.split('/')[1])" style="margin-right: 5px">
|
||||
<resource-icon v-if="$showIcon() && record.icon && record.icon.base64image" :image="record.icon.base64image" size="2x"/>
|
||||
<os-logo v-else-if="record.ostypename" :osName="record.ostypename" size="2x" />
|
||||
<os-logo v-else-if="record.ostypename" :osName="record.ostypename" size="xl" />
|
||||
<render-icon v-else-if="typeof $route.meta.icon ==='string'" style="font-size: 16px;" :icon="$route.meta.icon"/>
|
||||
<render-icon v-else style="font-size: 16px;" :svgIcon="$route.meta.icon" />
|
||||
</span>
|
||||
<span v-else :style="{ 'margin-right': record.ostypename ? '5px' : '0' }">
|
||||
<os-logo v-if="record.ostypename" :osName="record.ostypename" size="1x" />
|
||||
<os-logo v-if="record.ostypename" :osName="record.ostypename" size="xl" />
|
||||
</span>
|
||||
|
||||
<span v-if="record.hasannotations">
|
||||
|
|
|
|||
|
|
@ -18,15 +18,11 @@
|
|||
import { library } from '@fortawesome/fontawesome-svg-core'
|
||||
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome'
|
||||
|
||||
// import { fab } from '@fortawesome/free-brands-svg-icons'
|
||||
// import { fas } from '@fortawesome/free-solid-svg-icons'
|
||||
// import { far } from '@fortawesome/free-regular-svg-icons'
|
||||
|
||||
import { faCentos, faUbuntu, faDebian, faSuse, faRedhat, faFedora, faLinux, faFreebsd, faApple, faWindows, faJava } from '@fortawesome/free-brands-svg-icons'
|
||||
import { faCompactDisc, faCameraRetro, faDharmachakra } from '@fortawesome/free-solid-svg-icons'
|
||||
import { fas, faCompactDisc, faCameraRetro, faDharmachakra } from '@fortawesome/free-solid-svg-icons'
|
||||
|
||||
library.add(faCentos, faUbuntu, faDebian, faSuse, faRedhat, faFedora, faLinux, faFreebsd, faApple, faWindows, faJava)
|
||||
library.add(faCompactDisc, faCameraRetro, faDharmachakra)
|
||||
library.add(fas, faCompactDisc, faCameraRetro, faDharmachakra)
|
||||
|
||||
export default {
|
||||
install: (app) => {
|
||||
|
|
|
|||
Loading…
Reference in New Issue