Files
boursecu_user/src/views/base/home/components/HomeQuickActionBox.vue
T
safavimohadeseh78andCursor a5e458ed25 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>
2026-06-14 10:08:46 +03:30

42 lines
1.0 KiB
Vue

<script setup lang="ts">
import Icon from '@/components/BasicPacks/BasicIcon.vue'
import { isBoursecuProject } from '@/utils/config'
import type { HomeQuickActionItem } from '../layouts/types'
defineProps<{
action: HomeQuickActionItem
}>()
defineEmits<{
click: []
}>()
const isBoursecu = isBoursecuProject()
</script>
<template>
<button
type="button"
class="home-quick-action-box flex flex-col items-center justify-center gap-2 rounded-xl border-2 p-3 min-h-[96px] w-full"
:class="{ 'home-quick-action-box--boursecu': isBoursecu }"
@click="$emit('click')"
>
<div class="flex h-11 w-11 shrink-0 items-center justify-center">
<Icon class="text-primary" :icon="action.icon" size="28" />
</div>
<span class="text-primary text-xs font-bold text-center leading-5">{{ action.label }}</span>
</button>
</template>
<style scoped>
.home-quick-action-box {
appearance: none;
cursor: pointer;
}
.home-quick-action-box--boursecu {
background-color: #eff5f3;
border-color: #d4e3de;
}
</style>