summaryrefslogtreecommitdiff
path: root/src/components/Mixins/TableFilterMixin.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/Mixins/TableFilterMixin.js')
-rw-r--r--src/components/Mixins/TableFilterMixin.js23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/components/Mixins/TableFilterMixin.js b/src/components/Mixins/TableFilterMixin.js
new file mode 100644
index 00000000..25c7497a
--- /dev/null
+++ b/src/components/Mixins/TableFilterMixin.js
@@ -0,0 +1,23 @@
+import { includes } from 'lodash';
+
+const TableFilterMixin = {
+ methods: {
+ getFilteredTableData(tableData = [], filters = []) {
+ if (filters.length === 0) return tableData;
+ // will return all items that match
+ // any of the filter tags (not all)
+ return tableData.filter(row => {
+ let returnRow = false;
+ for (const filter of filters) {
+ if (includes(row, filter)) {
+ returnRow = true;
+ break;
+ }
+ }
+ return returnRow;
+ });
+ }
+ }
+};
+
+export default TableFilterMixin;