summaryrefslogtreecommitdiff
path: root/src/components/_sila/Global/TableToolbarExport.vue
diff options
context:
space:
mode:
authorAndrey V.Kosteltsev <AKosteltsev@IBS.RU>2022-07-04 23:59:32 +0300
committerAndrey V.Kosteltsev <AKosteltsev@IBS.RU>2022-07-04 23:59:32 +0300
commit8047ae3d83ba0718fb7a42907036157e5c680b85 (patch)
tree600b017fe3a75ab4d1577eb9367afe8548401f9f /src/components/_sila/Global/TableToolbarExport.vue
parent3f4094d08b873e17464a51c817ea7d41177f848d (diff)
downloadwebui-vue-8047ae3d83ba0718fb7a42907036157e5c680b85.tar.xz
IBS: _sila UI theme
Diffstat (limited to 'src/components/_sila/Global/TableToolbarExport.vue')
-rw-r--r--src/components/_sila/Global/TableToolbarExport.vue36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/components/_sila/Global/TableToolbarExport.vue b/src/components/_sila/Global/TableToolbarExport.vue
new file mode 100644
index 00000000..69646ea6
--- /dev/null
+++ b/src/components/_sila/Global/TableToolbarExport.vue
@@ -0,0 +1,36 @@
+<template>
+ <b-button
+ class="d-flex align-items-center"
+ variant="primary"
+ :download="download"
+ :href="href"
+ >
+ {{ $t('global.action.export') }}
+ </b-button>
+</template>
+
+<script>
+export default {
+ props: {
+ data: {
+ type: Array,
+ default: () => [],
+ },
+ fileName: {
+ type: String,
+ default: 'data',
+ },
+ },
+ computed: {
+ dataForExport() {
+ return JSON.stringify(this.data);
+ },
+ download() {
+ return `${this.fileName}.json`;
+ },
+ href() {
+ return `data:text/json;charset=utf-8,${this.dataForExport}`;
+ },
+ },
+};
+</script>