<template>
  <view class="upload">
    <u-icon name="plus" size="24px" class="flex justify-center w-12 h-12 bg-blue-100 rounded-full shadow-md" @click="handleUpload"></u-icon>
  </view>
</template>

<script setup>
import { computed } from 'vue';
import { useStore } from 'vuex';

const emit = defineEmits(['success', 'error']);

const store = useStore();
const userId = computed(() => store.getters['user/userId']);

// 导入wbs
const handleUpload = async cur => {
  try {
    const res = await uni.$u.api.import();
    // 导入WBS成功后
    // 直接打开导入的项目
    emit('success');
    res.url && (uni.$t.domain = res.url);
    setTimeout(() => {
      uni.navigateTo({ url: `/pages/project-webview/project-webview?u=${userId.value}&p=${res.id}&pname=${res.pname}&url=${res.url}` });
    }, 2000);
  } catch (error) {
    console.error('error: ', error);
    emit('error', error);
  }
};

</script>

<style lang="scss" scoped>
.upload {
  position: absolute;
  right: 10px;
  bottom: 0;
  transform: translate3d(0, 50%, 0);
  color: $uni-color-primary !important;
}
</style>
