多维表格

78 lines
2.2 KiB

<template>
<v-menu bottom offset-y>
<template #activator="{ on }">
<transition name="release">
<v-btn v-show="releaseAlert" text small class="mb-0 mr-2 py-0" v-on="on">
<!--Upgrade available-->
{{ $t('activity.upgrade.available') }}
<v-icon small> mdi-menu-down </v-icon>
</v-btn>
</transition>
</template>
<v-list dense>
<v-list-item dense href="https://github.com/nocodb/nocodb/releases" target="_blank">
<v-icon small class="mr-2"> mdi-script-text-outline </v-icon>
<span class="caption">{{ releaseVersion }} {{ $t('activity.upgrade.releaseNote') }}</span>
</v-list-item>
<v-list-item dense href="https://docs.nocodb.com/getting-started/upgrading" target="_blank">
<v-icon small class="mr-2"> mdi-rocket-launch-outline </v-icon>
<!--How to upgrade?-->
<span class="caption">{{ $t('activity.upgrade.howTo') }}</span>
</v-list-item>
<v-list-item @click="releaseAlert = false">
<v-icon small class="mr-2"> mdi-close </v-icon>
<span class="caption">
<!--Hide menu-->
{{ $t('general.hideMenu') }}
</span>
</v-list-item>
</v-list>
</v-menu>
</template>
<script>
export default {
name: 'ReleaseInfo',
data: () => ({
loading: true,
}),
computed: {
releaseAlert: {
get() {
return (
!this.loading &&
this.$store.state.app.currentVersion &&
this.$store.state.app.latestRelease &&
this.$store.state.app.currentVersion !== this.$store.state.app.latestRelease &&
this.$store.state.app.latestRelease !== this.$store.state.app.hiddenRelease
);
},
set(val) {
return this.$store.commit('app/MutHiddenRelease', val ? null : this.$store.state.app.latestRelease);
},
},
releaseVersion() {
return this.$store.state.app.latestRelease;
},
},
mounted() {
setTimeout(() => {
this.loading = false;
}, 1000);
},
};
</script>
<style scoped>
.release-enter-active,
.release-leave-active {
transition: opacity 0.5s;
}
.release-enter,
.release-leave-to {
opacity: 0;
}
</style>