blob: c67855527347e2d6a6bdd6f82d6dc24aefacfd4c [file] [log] [blame]
<template>
<b-button
class="d-flex align-items-center"
variant="primary"
:download="download"
:href="href"
>
{{ $t('global.action.export') }}
</b-button>
</template>
<script>
import { useI18n } from 'vue-i18n';
export default {
props: {
data: {
type: Array,
default: () => [],
},
fileName: {
type: String,
default: 'data',
},
},
data() {
return {
$t: useI18n().t,
};
},
computed: {
dataForExport() {
return JSON.stringify(this.data);
},
download() {
return `${this.fileName}.json`;
},
href() {
return `data:text/json;charset=utf-8,${this.dataForExport}`;
},
},
};
</script>