Split desktop and mobile layouts with shared page data so APIs fetch once per context.

Add layout shells, desktop views, module-level page caches, and UI fixes for auth, home, wallet, transactions, address, and related pages.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-06-14 10:08:46 +03:30
co-authored by Cursor
parent 4404b4cb92
commit a5e458ed25
234 changed files with 18425 additions and 5503 deletions
@@ -0,0 +1,32 @@
<script setup lang="ts">
import { toValue } from 'vue'
import BasicIcon from '@/components/BasicPacks/BasicIcon.vue'
import DesktopHomeSection from './DesktopHomeSection.vue'
import { useHomePageContext } from '../../composables/useHomePage'
import type { HomeActionItem } from '../../layouts/types'
const ctx = useHomePageContext()
function runAction(action: HomeActionItem) {
action.handler()
}
</script>
<template>
<DesktopHomeSection title="عملیات">
<div class="dhome-default-actions">
<button
v-for="action in toValue(ctx.mainActions)"
:key="action.name"
type="button"
class="dhome-default-action"
@click="runAction(action)"
>
<span class="dhome-default-action__icon">
<BasicIcon :icon="action.icon" size="20" />
</span>
<span class="dhome-default-action__label">{{ action.label }}</span>
</button>
</div>
</DesktopHomeSection>
</template>