Modrinth/error.vue
Mysterious_Dev 871a17a108
Convert error page to Composition API and fix condition for 404 Logo (#1405)
* Convert error to Composition API

* Fixed 404 logo not being displayed every time
2023-10-24 12:46:09 -07:00

65 lines
1.2 KiB
Vue

<template>
<NuxtLayout>
<div class="main">
<div class="error">
<Logo404 v-if="error.statusCode === 404" />
<h1 v-else>An error occurred!</h1>
<p>{{ error.message }}</p>
<div class="button-group">
<nuxt-link to="/" class="iconified-button raised-button brand-button">
Go home
</nuxt-link>
<a
href="https://discord.modrinth.com"
class="iconified-button raised-button"
rel="noopener"
>
Get help on Discord
</a>
</div>
</div>
</div>
</NuxtLayout>
</template>
<script setup>
import Logo404 from '~/assets/images/404.svg'
defineProps({
error: {
type: Object,
default() {
return {
statusCode: 1000,
message: 'Unknown error',
}
},
},
})
</script>
<style lang="scss" scoped>
.main {
margin: var(--spacing-card-lg) auto;
width: calc(100% - 4rem);
@media screen and (min-width: 800px) {
width: 600px;
}
}
.error {
h1 {
margin-bottom: 0.25rem;
}
svg {
fill: var(--color-text);
color: var(--color-text);
width: 100%;
height: auto;
}
}
</style>