added disable-filtering option

This commit is contained in:
2024-07-23 16:50:25 +02:00
parent 398b908729
commit 4456c3e8fb

View File

@@ -149,21 +149,21 @@ Vue.component('tt-table', {
(column.filter === 'dateRange' ? 'min-width: 260px;' : '') +
(originalColumnWidths[column.key] ? 'width: ' + originalColumnWidths[column.key] + 'px;' : '')"
>
<div style="text-align:center; white-space: nowrap;word-break: keep-all;user-select: none;"
<div
style="text-align:center; white-space: nowrap;word-break: keep-all;user-select: none;"
:style="{ 'cursor': column.sortable ? 'pointer' : 'default' }"
@click="column.sortable ? setOrder(column.key) : undefined">
@click="column.sortable && !disableFiltering ? setOrder(column.key) : undefined">
{{ column.text }}
<i
v-if="column.sortable"
<i v-if="column.sortable && !disableFiltering"
:class="getSortIconClass(column.key)"></i>
</div>
<!-- @formatter:off -->
<tt-input v-if="column.filter === 'search'" v-model="filters[column.key]" sm/>
<tt-icon-select v-else-if="column.filter === 'iconSelect'" :options="column.filterOptions" v-model="filters[column.key]" sm/>
<tt-number-range v-else-if="column.filter === 'numberRange'" :returnText="!ssr" v-model="filters[column.key]" sm/>
<tt-select v-else-if="column.filter === 'select'" :options="[{text: 'Alle', value: undefined}, ...column.filterOptions]" v-model="filters[column.key]" sm/>
<tt-autocomplete v-else-if="column.filter === 'autocomplete'" :items="[{text: 'Alle', value: undefined}, ...column.filterOptions]" v-model="filters[column.key]" sm/>
<tt-date-picker v-else-if="column.filter === 'date'" v-model="filters[column.key]"/>
<tt-input v-if="column.filter === 'search' && !disableFiltering" v-model="filters[column.key]" sm/>
<tt-icon-select v-else-if="column.filter === 'iconSelect' && !disableFiltering" :options="column.filterOptions" v-model="filters[column.key]" sm/>
<tt-number-range v-else-if="column.filter === 'numberRange' && !disableFiltering" :returnText="!ssr" v-model="filters[column.key]" sm/>
<tt-select v-else-if="column.filter === 'select' && !disableFiltering" :options="[{text: 'Alle', value: undefined}, ...column.filterOptions]" v-model="filters[column.key]" sm/>
<tt-autocomplete v-else-if="column.filter === 'autocomplete' && !disableFiltering" :items="[{text: 'Alle', value: undefined}, ...column.filterOptions]" v-model="filters[column.key]" sm/>
<tt-date-picker v-else-if="column.filter === 'date' && !disableFiltering" v-model="filters[column.key]"/>
<!-- @formatter:on -->
</th>
</tr>
@@ -264,7 +264,8 @@ Vue.component('tt-table', {
excelExport: {type: Boolean, default: false},
config: {type: Object, default: () => ({}), required: true},
ssr: {type: Boolean, default: false},
disableInitialFetch: {type: Boolean, default: false}
disableInitialFetch: {type: Boolean, default: false},
disableFiltering: {type: Boolean, default: false}
}, data() {
return {
window: window,