ENH - add VaultX navigation icons

Give portfolio, markets, and activity distinct Lucide icons while retaining localized labels and accessible button names.
This commit is contained in:
smx.pusha
2026-08-18 08:54:19 +02:00
parent 6d13b59479
commit d7a140c996
2 changed files with 15 additions and 3 deletions
@@ -32,6 +32,12 @@ describe('VaultX crypto app contracts', () => {
}
})
it('shows distinct icons in every primary navigation item', () => {
expect(source).toContain('<WalletCards')
expect(source).toContain('<ChartNoAxesCombined')
expect(source).toContain('<History')
})
it('keeps all consequential calculations and state transitions on the server', () => {
expect(server).toContain(
'Bridge.Callbacks.Register("sky_phone:crypto:quote"',
+9 -3
View File
@@ -4,13 +4,16 @@ import {
ArrowLeftRight,
ArrowUpFromLine,
ChartCandlestick,
ChartNoAxesCombined,
ChevronRight,
Eye,
EyeOff,
History,
LockKeyhole,
LogOut,
RefreshCw,
ShieldCheck,
WalletCards,
} from 'lucide-vue-next'
import { computed, onMounted, ref } from 'vue'
@@ -431,17 +434,20 @@ onMounted(() => void crypto.load())
<SkySegmentedButton
:active="activeTab === 'portfolio'"
@click="activeTab = 'portfolio'"
>{{ t('tabs.portfolio') }}</SkySegmentedButton
><WalletCards :size="19" :stroke-width="2.2" />
<span>{{ t('tabs.portfolio') }}</span></SkySegmentedButton
>
<SkySegmentedButton
:active="activeTab === 'markets'"
@click="activeTab = 'markets'"
>{{ t('tabs.markets') }}</SkySegmentedButton
><ChartNoAxesCombined :size="19" :stroke-width="2.2" />
<span>{{ t('tabs.markets') }}</span></SkySegmentedButton
>
<SkySegmentedButton
:active="activeTab === 'activity'"
@click="activeTab = 'activity'"
>{{ t('tabs.activity') }}</SkySegmentedButton
><History :size="19" :stroke-width="2.2" />
<span>{{ t('tabs.activity') }}</span></SkySegmentedButton
>
</SkySegmented>
</SkyPillNavigation>