<!--
  浮动气泡组件
  提供一个可拖拽的浮动按钮,支持自定义点击事件和自动销毁功能
-->
<script setup>
import { watch, onUnmounted } from 'vue'
import { hideMinWindow1 } from './floating'

// 从 nuxt/app 导入 useNuxtApp
const { $i18n } = useNuxtApp()

// 替换原来的 useI18n
const t = (key) => $i18n.t(key)

const props = defineProps({
  /** 点击气泡时的回调函数 */
  onClick: {
    type: Function,
    default: () => {}
  },
  /** 气泡文本内容(可选,默认使用国际化文本) */
  text: {
    type: String,
    default: null
  }
})

const route = useRoute()

// 路由变化监听器:当用户返回首页时自动销毁气泡

// 组件卸载时自动清理资源
onUnmounted(() => {
  hideMinWindow1()
})
</script>

<template>
  <van-floating-bubble
    axis="xy"
    magnetic="x"
    :offset="{ x: 300, y: 50 }"
    @click="onClick"
  >
    {{ text || t('floatingBubble.backToLive') }}
  </van-floating-bubble>
</template>

<style>
.van-floating-bubble {
  width: 70px;
  height: 70px;
  border-radius: 5px!important;
}
</style>