mirror of https://github.com/nocodb/nocodb
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
93 lines
2.6 KiB
93 lines
2.6 KiB
<script setup lang="ts"> |
|
import MdiFlashOutlineIcon from '~icons/mdi/flash-outline' |
|
import MdiDownloadOutlineIcon from '~icons/mdi/download-outline' |
|
import MdiUploadOutlineIcon from '~icons/mdi/upload-outline' |
|
import MdiViewListOutlineIcon from '~icons/mdi/view-list-outline' |
|
import MdiHookIcon from '~icons/mdi/hook' |
|
|
|
const { isUIAllowed } = useUIPermission() |
|
// TODO:: identify based on meta |
|
const isView = ref(false) |
|
const showWebhookDrawer = ref(false) |
|
|
|
function exportCsv() { |
|
// TODO |
|
} |
|
|
|
function importCsv() { |
|
// TODO |
|
} |
|
|
|
function openSharedViewModal() { |
|
// TODO: |
|
} |
|
|
|
function openWebhookModal() { |
|
showWebhookDrawer.value = true |
|
} |
|
</script> |
|
|
|
<template> |
|
<a-menu offset-y transition="slide-y-transition" mode="horizontal"> |
|
<a-sub-menu key="sub1"> |
|
<template #icon> |
|
<setting-outlined /> |
|
</template> |
|
<template #title> |
|
<span class="flex items-center gap-2"> |
|
<MdiFlashOutlineIcon /> |
|
{{ $t('general.more') }} |
|
</span> |
|
</template> |
|
<a-menu-item key="action:downloadCSV" v-t="['c:actions']" @click="exportCsv"> |
|
<span class="flex items-center gap-2"> |
|
<MdiDownloadOutlineIcon class="text-primary" /> |
|
<!-- Download as CSV --> |
|
{{ $t('activity.downloadCSV') }} |
|
</span> |
|
</a-menu-item> |
|
|
|
<a-menu-item |
|
v-if="isUIAllowed('csvImport') && !isView" |
|
key="action:uploadCSV" |
|
v-t="['a:actions:upload-csv']" |
|
@click="importCsv" |
|
> |
|
<span class="flex items-center gap-2"> |
|
<MdiUploadOutlineIcon class="text-primary" /> |
|
<!-- Upload CSV --> |
|
{{ $t('activity.uploadCSV') }} |
|
</span> |
|
</a-menu-item> |
|
|
|
<a-menu-item |
|
v-if="isUIAllowed('SharedViewList') && !isView" |
|
key="action:listSharedView" |
|
v-t="['a:actions:shared-view-list']" |
|
@click="openSharedViewModal" |
|
> |
|
<span class="flex items-center gap-2"> |
|
<MdiViewListOutlineIcon class="text-primary" /> |
|
<!-- Shared View List --> |
|
{{ $t('activity.listSharedView') }} |
|
</span> |
|
</a-menu-item> |
|
|
|
<a-menu-item |
|
v-if="isUIAllowed('webhook') && !isView" |
|
key="action:webhooks" |
|
v-t="['c:actions:webhook']" |
|
@click="openWebhookModal" |
|
> |
|
<span class="flex items-center gap-2"> |
|
<MdiHookIcon class="text-primary" /> |
|
<!-- TODO: i18n --> |
|
Webhooks |
|
</span> |
|
</a-menu-item> |
|
</a-sub-menu> |
|
</a-menu> |
|
<WebhookDrawer v-if="showWebhookDrawer" v-model="showWebhookDrawer" /> |
|
</template> |
|
|
|
<style scoped></style>
|
|
|