<script lang="ts" setup name="showPhoto">
// import { getPhotoUrl } from '@/api/system/tool'
const props = defineProps({
  minioFileName: {
    type: String,
    required: true,
  },
  height: {
    type: String,
    default: '100px',
  },
  width: {
    type: String,
    default: '100px',
  },
})
const isPhoto = computed(() => {
  return props.minioFileName.split('.')[1] === 'png' || props.minioFileName.split('.')[1] === 'jpg' || props.minioFileName.split('.')[1] === 'jpeg'
})
const url = ref('')
const getPhoto = () => {
  if (props.minioFileName) {
    // getPhotoUrl(props.minioFileName).then((res) => {
    //   url.value = res.data
    // })
    // http://xx.com/static/
    url.value = `http://111.198.10.15:11411/static/${props.minioFileName}`
  }
}
onMounted(() => {
  getPhoto()
})
onUpdated(() => {
  getPhoto()
})
</script>

<template>
  <div class="container">
    <el-image
      v-if="props.minioFileName && isPhoto"
      :style="{ width: props.width, height: props.height }"
      :src="url"
      :preview-src-list="[url]"
      fit="fill"
    />
    <el-link
      v-else :href="url" type="primary"
      style="margin-right: 10px;"
      target="_blank"
    >
      {{ props.minioFileName }}
    </el-link>
  </div>
</template>

<style lang="scss" scoped>
.container {
  ::v-deep {
    .el-link::after {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      height: 0;
      bottom: 0;
      border-bottom: 1px solid var(--el-link-hover-text-color);
    }
  }
}
</style>
