多维表格
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.

123 lines
3.0 KiB

<template>
<v-dialog
v-if="show"
v-model="show"
align="center"
absolute
opacity=".75"
z-index="9"
width="max(90%,600px)"
>
<!-- :color="$store.state.settings.darkTheme ? 'white' : 'black'"-->
<!-- :dark="$store.state.settings.darkTheme"-->
<!-- :light="!$store.state.settings.darkTheme"-->
<div class="feat-container backgroundColorDefault" style="position: relative; min-height: 500px">
<!-- <v-card max-height="100%" min-width="95%" max-width="100%" style="overflow: auto">-->
<!-- <v-card-text>-->
<table-acl
v-if="type === 'acl'"
:nodes="nodes"
/>
<columns
v-else-if="type === 'columns'"
:delete-table="deleteTable"
:nodes="nodes"
/>
<indexes
v-else-if="type === 'indexes'"
:delete-table="deleteTable"
:nodes="nodes"
/>
<triggers
v-else-if="type === 'triggers'"
:nodes="nodes"
/>
<webhooks
v-else-if="type === 'webhooks'"
class=""
:nodes="nodes"
@close="show=false"
/>
<validation
v-else-if="type === 'validators'"
:nodes="nodes"
/>
<table-acl
v-else-if="type === 'view-acl'"
:nodes="nodes"
/>
<view-columns
v-else-if="type === 'view-columns'"
:nodes="nodes"
/>
<template
v-else-if="type === 'shared-views'"
>
<shared-views-list
v-if="show"
:selected-view="selectedView"
:model-name="table"
:nodes="nodes"
:meta="meta"
/>
</template>
<!-- </v-card-text>-->
<!-- </v-card>-->
</div>
</v-dialog>
</template>
<script>
import TableAcl from '~/components/project/tableTabs/TableAcl'
import Columns from '~/components/project/tableTabs/Columns'
import Indexes from '~/components/project/tableTabs/Indexes'
import Triggers from '~/components/project/tableTabs/Triggers'
import Webhooks from '~/components/project/tableTabs/Webhooks'
import Validation from '~/components/project/tableTabs/Validation'
import ViewColumns from '~/components/project/viewTabs/ViewColumns'
import SharedViewsList from '~/components/project/spreadsheet/components/SharedViewsList'
export default {
name: 'AdditionalFeatures',
components: { SharedViewsList, ViewColumns, Validation, Webhooks, Triggers, Indexes, Columns, TableAcl },
props: ['value', 'nodes', 'type', 'deleteTable', 'table', 'selectedView', 'meta'],
computed: {
show: {
set(v) {
this.$emit('input', v)
},
get() {
return this.value
}
}
}
}
</script>
<style scoped>
/deep/ .v-overlay__content {
width: 100%;
/*align-self: flex-start;*/
/*position: relative;*/
height: 100%;
display: flex;
}
.close-icon {
position: absolute;
top: 10px;
right: 10px;
z-index: 99999;
}
.feat-container {
position: relative;
align-self: center;
margin:auto !important;
}
</style>