primevue-mirror/components/lib/treetable/BaseTreeTable.vue

183 lines
4.0 KiB
Vue
Raw Normal View History

2023-06-05 07:34:19 +00:00
<script>
import BaseComponent from 'primevue/basecomponent';
import TreeTableStyle from 'primevue/treetable/style';
2023-06-05 07:34:19 +00:00
export default {
name: 'BaseTreeTable',
extends: BaseComponent,
props: {
value: {
type: null,
default: null
},
dataKey: {
type: [String, Function],
default: 'key'
},
2023-06-05 07:34:19 +00:00
expandedKeys: {
type: null,
default: null
},
selectionKeys: {
type: null,
default: null
},
selectionMode: {
type: String,
default: null
},
metaKeySelection: {
type: Boolean,
default: false
2023-06-05 07:34:19 +00:00
},
rows: {
type: Number,
default: 0
},
first: {
type: Number,
default: 0
},
totalRecords: {
type: Number,
default: 0
},
paginator: {
type: Boolean,
default: false
},
paginatorPosition: {
type: String,
default: 'bottom'
},
alwaysShowPaginator: {
type: Boolean,
default: true
},
paginatorTemplate: {
type: String,
default: 'FirstPageLink PrevPageLink PageLinks NextPageLink LastPageLink RowsPerPageDropdown'
},
pageLinkSize: {
type: Number,
default: 5
},
rowsPerPageOptions: {
type: Array,
default: null
},
currentPageReportTemplate: {
type: String,
default: '({currentPage} of {totalPages})'
},
lazy: {
type: Boolean,
default: false
},
loading: {
type: Boolean,
default: false
},
loadingIcon: {
type: String,
default: undefined
},
loadingMode: {
type: String,
default: 'mask'
},
2023-06-05 07:34:19 +00:00
rowHover: {
type: Boolean,
default: false
},
autoLayout: {
type: Boolean,
default: false
},
sortField: {
type: [String, Function],
default: null
},
sortOrder: {
type: Number,
default: null
},
defaultSortOrder: {
type: Number,
default: 1
},
multiSortMeta: {
type: Array,
default: null
},
sortMode: {
type: String,
default: 'single'
},
removableSort: {
type: Boolean,
default: false
},
filters: {
type: Object,
default: null
},
filterMode: {
type: String,
default: 'lenient'
},
filterLocale: {
type: String,
default: undefined
},
resizableColumns: {
type: Boolean,
default: false
},
columnResizeMode: {
type: String,
default: 'fit'
},
indentation: {
type: Number,
default: 1
},
showGridlines: {
type: Boolean,
default: false
},
scrollable: {
type: Boolean,
default: false
},
scrollDirection: {
type: String,
default: 'vertical'
},
scrollHeight: {
type: String,
default: null
},
responsiveLayout: {
type: String,
default: null
},
size: {
type: String,
default: null
},
2023-06-05 07:34:19 +00:00
tableProps: {
type: Object,
default: null
}
},
style: TreeTableStyle,
2023-06-05 07:34:19 +00:00
provide() {
return {
$pcTreeTable: this,
2023-06-05 07:34:19 +00:00
$parentInstance: this
};
}
};
</script>