Merges the full git history of Inventory_frontend into the monorepo under frontend/. Removes the submodule in favor of a unified repo. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
52 lines
1.3 KiB
Vue
52 lines
1.3 KiB
Vue
<template>
|
|
<div class="flex flex-col gap-4 md:flex-row md:items-start md:justify-between">
|
|
<div class="flex flex-col gap-2">
|
|
<h1 class="text-3xl font-bold">{{ title }}</h1>
|
|
<p v-if="subtitle" class="text-sm text-base-content/70">{{ subtitle }}</p>
|
|
</div>
|
|
<div class="flex items-center gap-2">
|
|
<button
|
|
v-if="canEdit"
|
|
class="btn btn-primary"
|
|
:class="{ 'btn-outline': isEditMode }"
|
|
@click="$emit('toggle-edit')"
|
|
>
|
|
<IconLucideSquarePen v-if="!isEditMode" class="w-5 h-5 mr-2" aria-hidden="true" />
|
|
<IconLucideEye v-else class="w-5 h-5 mr-2" aria-hidden="true" />
|
|
{{ isEditMode ? 'Voir détails' : 'Modifier' }}
|
|
</button>
|
|
<button type="button" class="btn btn-ghost btn-sm md:btn-md" @click="goBack">
|
|
Retour au catalogue
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
|
|
<script setup lang="ts">
|
|
import IconLucideSquarePen from '~icons/lucide/square-pen'
|
|
import IconLucideEye from '~icons/lucide/eye'
|
|
|
|
const router = useRouter()
|
|
|
|
const props = defineProps<{
|
|
title: string
|
|
subtitle?: string
|
|
isEditMode: boolean
|
|
canEdit: boolean
|
|
backLink: string
|
|
}>()
|
|
|
|
defineEmits<{
|
|
'toggle-edit': []
|
|
}>()
|
|
|
|
function goBack() {
|
|
if (window.history.length > 1) {
|
|
router.back()
|
|
}
|
|
else {
|
|
navigateTo(props.backLink)
|
|
}
|
|
}
|
|
</script>
|