summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVitalii Lysak <v.lysak@dunice.net>2022-09-15 13:45:10 +0300
committerVitalii Lysak <v.lysak@dunice.net>2022-09-15 13:45:10 +0300
commit8919552feaa01066d3df455f0420a5b62ad15b35 (patch)
tree33cdd4caeeee1a0fd9c74298071399c9c62f0c4a
parent45491dec095f466e257dfd531649d4fe987e1f31 (diff)
downloadwebui-vue-8919552feaa01066d3df455f0420a5b62ad15b35.tar.xz
upd getFilteredTableData
-rw-r--r--src/components/_sila/Mixins/TableFilterMixin.js26
1 files changed, 12 insertions, 14 deletions
diff --git a/src/components/_sila/Mixins/TableFilterMixin.js b/src/components/_sila/Mixins/TableFilterMixin.js
index 7a2cc540..295ca7e5 100644
--- a/src/components/_sila/Mixins/TableFilterMixin.js
+++ b/src/components/_sila/Mixins/TableFilterMixin.js
@@ -1,5 +1,3 @@
-import { includes } from 'lodash';
-
const TableFilterMixin = {
methods: {
getFilteredTableData(tableData = [], filters = []) {
@@ -9,19 +7,19 @@ const TableFilterMixin = {
// If no filters are active, then return all table data
if (filterItems.length === 0) return tableData;
- // Check if row property value is included in list of
- // active filters
- return tableData.filter((row) => {
- let returnRow = false;
- for (const { key, values } of filters) {
- const rowProperty = row[key];
- if (rowProperty && includes(values, rowProperty)) {
- returnRow = true;
- break;
- }
- }
- return returnRow;
+ // remove empty filters
+ filters = filters.filter((filter) => {
+ return filter.values && filter.values.length > 0;
});
+
+ let result = tableData;
+ filters.forEach((filter) => {
+ result = result.filter((row) =>
+ filter.values.includes(row[filter.key])
+ );
+ });
+
+ return result;
},
getFilteredTableDataByDate(
tableData = [],