<template>
  <div class="min-h-screen bg-gray-50 py-8">
    <div class="container max-w-4xl">
      <div class="mb-8">
        <div class="flex items-center gap-4 mb-2">
          <NuxtLink 
            :to="`/objects/${$route.params.id}`"
            class="btn btn-outline btn-sm"
          >
            ← Назад
          </NuxtLink>
          <h1 class="text-3xl font-bold">Редактировать объект</h1>
        </div>
        <p class="text-gray-600">Обновите информацию о вашем объекте</p>
      </div>

      <div v-if="loading" class="text-center py-12">
        <div class="animate-spin rounded-full h-12 w-12 border-b-2 border-primary-500 mx-auto"></div>
        <p class="mt-4 text-gray-600">Загрузка данных объекта...</p>
      </div>

      <ObjectForm 
        v-else-if="object"
        :object="object"
        :loading="updating"
        @submit="handleSubmit"
        @cancel="handleCancel"
      />

      <div v-else class="text-center py-12">
        <div class="text-gray-400 text-6xl mb-4">❌</div>
        <h3 class="text-xl font-semibold mb-2">Объект не найден</h3>
        <p class="text-gray-600 mb-6">Возможно, объект был удален или у вас нет к нему доступа</p>
        <NuxtLink to="/objects/my-objects" class="btn btn-primary">
          Вернуться к моим объектам
        </NuxtLink>
      </div>
    </div>
  </div>
</template>

<script setup lang="ts">
// definePageMeta({
//   middleware: 'auth'
// })

// const route = useRoute()
// const { fetchObjectById, updateObject } = useObjects()
// const object = ref(null)
// const loading = ref(true)
// const updating = ref(false)

// onMounted(async () => {
//   const objectId = parseInt(route.params.id as string)
//   if (objectId) {
//     const result = await fetchObjectById(objectId)
//     object.value = result
//   }
//   loading.value = false
// })

// const handleSubmit = async (formData: any) => {
//   updating.value = true
  
//   try {
//     const objectId = parseInt(route.params.id as string)
//     await updateObject(objectId, formData)
    
//     alert('Объект успешно обновлен!')
//     await navigateTo(`/objects/${objectId}`)
//   } catch (error) {
//     console.error('Error updating object:', error)
//     alert('Ошибка при обновлении объекта')
//   } finally {
//     updating.value = false
//   }
// }

// const handleCancel = () => {
//   const objectId = route.params.id
//   navigateTo(`/objects/${objectId}`)
// }
</script>