cartodb-4.42/lib/assets/javascripts/new-dashboard/components/Catalog/NotAvailable.vue

82 lines
1.8 KiB
Vue
Raw Normal View History

2024-04-06 13:25:13 +08:00
<template>
<div class="empty-container grid u-flex__justify--center u-mt--24">
<div class="grid-cell--col5 grid-cell--col8--tablet">
<h4 class="title is-body is-txtMidGrey">{{ title }}</h4>
<p class="text is-caption is-txtMidGrey u-mt--8">
<span>{{ description }}</span>
</p>
<div>
<Button
v-if="mode === 'contact' && contactUrl"
class="u-mt--24"
:url="contactUrl"
:isOutline="true"
:blank="true"
>
Contact us for a demo
</Button>
<template v-else-if="mode === 'login'">
<Button
class="u-mt--24"
url="https://carto.com/login"
:isOutline="false"
:reverseColors="true"
>
Login
</Button>
<span class="u-ml--12 u-mr--12 text is-small">or</span>
<Button
class="u-mt--24"
url="https://carto.com/signup"
:isOutline="true"
>
Try for free
</Button>
</template>
</div>
</div>
</div>
</template>
<script>
import Button from '../Button.vue';
export default {
name: 'NotAvailable',
components: {
Button
},
props: {
title: {
type: String,
required: true
},
description: {
type: String,
required: true
},
contactUrl: {
type: String,
required: false
},
mode: {
type: String,
required: true,
validator: value => {
return ['contact', 'login'].indexOf(value) !== -1;
}
}
}
};
</script>
<style lang="scss" scoped>
@import 'new-dashboard/styles/variables';
.empty-container {
padding: 36px 0 48px;
border-radius: 6px;
background-color: $blue--100;
text-align: center;
}
</style>