85 lines
2.2 KiB
Vue
Raw Normal View History

2025-10-21 15:11:46 +07:00
<script setup lang="ts">
import { ref } from 'vue'
import { Tabs, Row, Col } from 'ant-design-vue'
import WalletInfo from '@/components/WalletInfo.vue'
import { WalletTab, NetworkTab, UTXOTab } from './components'
2025-10-21 15:11:46 +07:00
const activeTab = ref('UTXOs')
2025-10-21 15:11:46 +07:00
const network = ref('kaspa-mainnet')
</script>
2025-10-21 01:14:13 +07:00
<template>
2025-10-21 15:11:46 +07:00
<div class="home-container">
<Row :gutter="[24, 24]">
<!-- Left Column --->
<Col :xs="24" :lg="10">
<WalletInfo />
</Col>
<!-- Right Column - Tabs Content -->
<Col :xs="24" :lg="12">
<Tabs v-model:activeKey="activeTab" size="large" class="main-tabs">
<!-- DEBUG TAB -->
<Tabs.TabPane key="UTXOs" tab="UTXOs">
<UTXOTab />
2025-10-21 15:11:46 +07:00
</Tabs.TabPane>
<!-- WALLET TAB -->
<Tabs.TabPane key="WALLET" tab="WALLET">
<WalletTab :network="network" />
</Tabs.TabPane>
<!-- NETWORK TAB -->
<Tabs.TabPane key="NETWORK" tab="NETWORK">
<NetworkTab />
</Tabs.TabPane>
</Tabs>
</Col>
</Row>
</div>
2025-10-21 01:14:13 +07:00
</template>
2025-10-21 15:11:46 +07:00
<style lang="scss" scoped>
.home-container {
min-height: 100vh;
background: linear-gradient(135deg, var(--bg-gradient-start) 0%, var(--bg-gradient-end) 100%);
padding: var(--spacing-lg);
font-family: var(--font-primary);
@media (min-width: 768px) {
padding: var(--spacing-2xl);
}
}
:deep(.main-tabs) {
.ant-tabs-nav {
margin-bottom: var(--spacing-lg);
}
.ant-tabs-tab {
font-size: 14px;
font-weight: var(--font-semibold);
letter-spacing: var(--tracking-wide);
padding: 10px 16px;
@media (max-width: 768px) {
font-size: 12px;
padding: 8px 12px;
}
}
.ant-tabs-ink-bar {
background: var(--primary-color);
height: var(--tabs-height);
}
.ant-tabs-tab-active .ant-tabs-tab-btn {
color: var(--primary-color);
}
.ant-tabs-content {
padding-top: var(--spacing-lg);
}
}
</style>