Update data option for components using Mixin data
- Removed all the data options from all the mixins.
- Updated component data property relying on data property defined in
mixin.
- Export data property from mixin file itself.
Signed-off-by: Suren Neware <sneware9@in.ibm.com>
Change-Id: I4aeffcb333bbaf5b78bcadd711b3169b0b4cb10e
diff --git a/src/components/Mixins/BVPaginationMixin.js b/src/components/Mixins/BVPaginationMixin.js
index 8b52f8b..4ccf6f2 100644
--- a/src/components/Mixins/BVPaginationMixin.js
+++ b/src/components/Mixins/BVPaginationMixin.js
@@ -1,32 +1,29 @@
-const BVPaginationMixin = {
- data() {
- return {
- currentPage: 1,
- perPage: 20,
- itemsPerPageOptions: [
- {
- value: 10,
- text: '10',
- },
- {
- value: 20,
- text: '20',
- },
- {
- value: 30,
- text: '30',
- },
- {
- value: 40,
- text: '40',
- },
- {
- value: 0,
- text: this.$t('global.table.viewAll'),
- },
- ],
- };
+import i18n from '@/i18n';
+export const currentPage = 1;
+export const perPage = 20;
+export const itemsPerPageOptions = [
+ {
+ value: 10,
+ text: '10',
},
+ {
+ value: 20,
+ text: '20',
+ },
+ {
+ value: 30,
+ text: '30',
+ },
+ {
+ value: 40,
+ text: '40',
+ },
+ {
+ value: 0,
+ text: i18n.t('global.table.viewAll'),
+ },
+];
+const BVPaginationMixin = {
methods: {
getTotalRowCount(count) {
return this.perPage === 0 ? 0 : count;
diff --git a/src/components/Mixins/BVTableSelectableMixin.js b/src/components/Mixins/BVTableSelectableMixin.js
index cee7d0c..d41ed22 100644
--- a/src/components/Mixins/BVTableSelectableMixin.js
+++ b/src/components/Mixins/BVTableSelectableMixin.js
@@ -1,11 +1,8 @@
+export const selectedRows = [];
+export const tableHeaderCheckboxModel = false;
+export const tableHeaderCheckboxIndeterminate = false;
+
const BVTableSelectableMixin = {
- data() {
- return {
- tableHeaderCheckboxModel: false,
- tableHeaderCheckboxIndeterminate: false,
- selectedRows: [],
- };
- },
methods: {
clearSelectedRows(tableRef) {
if (tableRef) tableRef.clearSelected();
diff --git a/src/components/Mixins/LoadingBarMixin.js b/src/components/Mixins/LoadingBarMixin.js
index bb3e796..d115270 100644
--- a/src/components/Mixins/LoadingBarMixin.js
+++ b/src/components/Mixins/LoadingBarMixin.js
@@ -1,9 +1,6 @@
+export const loading = true;
+
const LoadingBarMixin = {
- data() {
- return {
- loading: true,
- };
- },
methods: {
startLoader() {
this.$root.$emit('loader-start');
diff --git a/src/components/Mixins/SearchFilterMixin.js b/src/components/Mixins/SearchFilterMixin.js
index 41f93b1..a4819e2 100644
--- a/src/components/Mixins/SearchFilterMixin.js
+++ b/src/components/Mixins/SearchFilterMixin.js
@@ -1,9 +1,6 @@
+export const searchFilter = null;
+
const SearchFilterMixin = {
- data() {
- return {
- searchFilter: null,
- };
- },
methods: {
onChangeSearchInput(searchValue) {
this.searchFilter = searchValue;
diff --git a/src/components/Mixins/TableRowExpandMixin.js b/src/components/Mixins/TableRowExpandMixin.js
index d5246cd..7f815a4 100644
--- a/src/components/Mixins/TableRowExpandMixin.js
+++ b/src/components/Mixins/TableRowExpandMixin.js
@@ -1,9 +1,7 @@
+import i18n from '@/i18n';
+export const expandRowLabel = i18n.t('global.table.expandTableRow');
+
const TableRowExpandMixin = {
- data() {
- return {
- expandRowLabel: this.$t('global.table.expandTableRow'),
- };
- },
methods: {
toggleRowDetails(row) {
row.toggleDetails();
diff --git a/src/views/AccessControl/Ldap/TableRoleGroups.vue b/src/views/AccessControl/Ldap/TableRoleGroups.vue
index 41ab3b1..b14c97a 100644
--- a/src/views/AccessControl/Ldap/TableRoleGroups.vue
+++ b/src/views/AccessControl/Ldap/TableRoleGroups.vue
@@ -99,7 +99,11 @@
import Alert from '@/components/Global/Alert';
import TableToolbar from '@/components/Global/TableToolbar';
import TableRowAction from '@/components/Global/TableRowAction';
-import BVTableSelectableMixin from '@/components/Mixins/BVTableSelectableMixin';
+import BVTableSelectableMixin, {
+ selectedRows,
+ tableHeaderCheckboxModel,
+ tableHeaderCheckboxIndeterminate,
+} from '@/components/Mixins/BVTableSelectableMixin';
import BVToastMixin from '@/components/Mixins/BVToastMixin';
import ModalAddRoleGroup from './ModalAddRoleGroup';
import LoadingBarMixin from '@/components/Mixins/LoadingBarMixin';
@@ -146,6 +150,9 @@
label: this.$t('global.action.delete'),
},
],
+ selectedRows: selectedRows,
+ tableHeaderCheckboxModel: tableHeaderCheckboxModel,
+ tableHeaderCheckboxIndeterminate: tableHeaderCheckboxIndeterminate,
};
},
computed: {
diff --git a/src/views/AccessControl/LocalUserManagement/LocalUserManagement.vue b/src/views/AccessControl/LocalUserManagement/LocalUserManagement.vue
index b341001..4cf72c4 100644
--- a/src/views/AccessControl/LocalUserManagement/LocalUserManagement.vue
+++ b/src/views/AccessControl/LocalUserManagement/LocalUserManagement.vue
@@ -125,7 +125,11 @@
import TableToolbar from '@/components/Global/TableToolbar';
import TableRowAction from '@/components/Global/TableRowAction';
-import BVTableSelectableMixin from '@/components/Mixins/BVTableSelectableMixin';
+import BVTableSelectableMixin, {
+ selectedRows,
+ tableHeaderCheckboxModel,
+ tableHeaderCheckboxIndeterminate,
+} from '@/components/Mixins/BVTableSelectableMixin';
import BVToastMixin from '@/components/Mixins/BVToastMixin';
import LoadingBarMixin from '@/components/Mixins/LoadingBarMixin';
@@ -188,6 +192,9 @@
label: this.$t('global.action.disable'),
},
],
+ selectedRows: selectedRows,
+ tableHeaderCheckboxModel: tableHeaderCheckboxModel,
+ tableHeaderCheckboxIndeterminate: tableHeaderCheckboxIndeterminate,
};
},
computed: {
diff --git a/src/views/Configuration/Firmware/Firmware.vue b/src/views/Configuration/Firmware/Firmware.vue
index d78b43f..d4aef19 100644
--- a/src/views/Configuration/Firmware/Firmware.vue
+++ b/src/views/Configuration/Firmware/Firmware.vue
@@ -200,7 +200,7 @@
import FormFile from '@/components/Global/FormFile';
import VuelidateMixin from '@/components/Mixins/VuelidateMixin.js';
-import LoadingBarMixin from '@/components/Mixins/LoadingBarMixin';
+import LoadingBarMixin, { loading } from '@/components/Mixins/LoadingBarMixin';
import BVToastMixin from '@/components/Mixins/BVToastMixin';
export default {
@@ -228,6 +228,7 @@
tftpFileName: null,
timeoutId: null,
isPageDisabled: null,
+ loading: loading,
};
},
computed: {
diff --git a/src/views/Health/EventLogs/EventLogs.vue b/src/views/Health/EventLogs/EventLogs.vue
index c620c2b..e182708 100644
--- a/src/views/Health/EventLogs/EventLogs.vue
+++ b/src/views/Health/EventLogs/EventLogs.vue
@@ -164,12 +164,22 @@
import LoadingBarMixin from '@/components/Mixins/LoadingBarMixin';
import TableFilterMixin from '@/components/Mixins/TableFilterMixin';
-import BVPaginationMixin from '@/components/Mixins/BVPaginationMixin';
-import BVTableSelectableMixin from '@/components/Mixins/BVTableSelectableMixin';
+import BVPaginationMixin, {
+ currentPage,
+ perPage,
+ itemsPerPageOptions,
+} from '@/components/Mixins/BVPaginationMixin';
+import BVTableSelectableMixin, {
+ selectedRows,
+ tableHeaderCheckboxModel,
+ tableHeaderCheckboxIndeterminate,
+} from '@/components/Mixins/BVTableSelectableMixin';
import BVToastMixin from '@/components/Mixins/BVToastMixin';
import TableDataFormatterMixin from '@/components/Mixins/TableDataFormatterMixin';
import TableSortMixin from '@/components/Mixins/TableSortMixin';
-import SearchFilterMixin from '@/components/Mixins/SearchFilterMixin';
+import SearchFilterMixin, {
+ searchFilter,
+} from '@/components/Mixins/SearchFilterMixin';
export default {
components: {
@@ -254,9 +264,16 @@
label: this.$t('global.action.delete'),
},
],
+ currentPage: currentPage,
filterStartDate: null,
filterEndDate: null,
+ itemsPerPageOptions: itemsPerPageOptions,
+ perPage: perPage,
+ searchFilter: searchFilter,
searchTotalFilteredRows: 0,
+ selectedRows: selectedRows,
+ tableHeaderCheckboxModel: tableHeaderCheckboxModel,
+ tableHeaderCheckboxIndeterminate: tableHeaderCheckboxIndeterminate,
};
},
computed: {
diff --git a/src/views/Health/HardwareStatus/HardwareStatusTableBmcManager.vue b/src/views/Health/HardwareStatus/HardwareStatusTableBmcManager.vue
index a634208..29a6679 100644
--- a/src/views/Health/HardwareStatus/HardwareStatusTableBmcManager.vue
+++ b/src/views/Health/HardwareStatus/HardwareStatusTableBmcManager.vue
@@ -143,7 +143,9 @@
import StatusIcon from '@/components/Global/StatusIcon';
-import TableRowExpandMixin from '@/components/Mixins/TableRowExpandMixin';
+import TableRowExpandMixin, {
+ expandRowLabel,
+} from '@/components/Mixins/TableRowExpandMixin';
import TableDataFormatterMixin from '@/components/Mixins/TableDataFormatterMixin';
export default {
@@ -179,6 +181,7 @@
formatter: this.tableFormatter,
},
],
+ expandRowLabel: expandRowLabel,
};
},
computed: {
diff --git a/src/views/Health/HardwareStatus/HardwareStatusTableChassis.vue b/src/views/Health/HardwareStatus/HardwareStatusTableChassis.vue
index 4fdda50..231f7c6 100644
--- a/src/views/Health/HardwareStatus/HardwareStatusTableChassis.vue
+++ b/src/views/Health/HardwareStatus/HardwareStatusTableChassis.vue
@@ -72,7 +72,9 @@
import StatusIcon from '@/components/Global/StatusIcon';
-import TableRowExpandMixin from '@/components/Mixins/TableRowExpandMixin';
+import TableRowExpandMixin, {
+ expandRowLabel,
+} from '@/components/Mixins/TableRowExpandMixin';
import TableDataFormatterMixin from '@/components/Mixins/TableDataFormatterMixin';
export default {
@@ -108,6 +110,7 @@
formatter: this.tableFormatter,
},
],
+ expandRowLabel: expandRowLabel,
};
},
computed: {
diff --git a/src/views/Health/HardwareStatus/HardwareStatusTableDimmSlot.vue b/src/views/Health/HardwareStatus/HardwareStatusTableDimmSlot.vue
index a595305..ce80530 100644
--- a/src/views/Health/HardwareStatus/HardwareStatusTableDimmSlot.vue
+++ b/src/views/Health/HardwareStatus/HardwareStatusTableDimmSlot.vue
@@ -77,8 +77,12 @@
import TableDataFormatterMixin from '@/components/Mixins/TableDataFormatterMixin';
import TableSortMixin from '@/components/Mixins/TableSortMixin';
import Search from '@/components/Global/Search';
-import SearchFilterMixin from '@/components/Mixins/SearchFilterMixin';
-import TableRowExpandMixin from '@/components/Mixins/TableRowExpandMixin';
+import SearchFilterMixin, {
+ searchFilter,
+} from '@/components/Mixins/SearchFilterMixin';
+import TableRowExpandMixin, {
+ expandRowLabel,
+} from '@/components/Mixins/TableRowExpandMixin';
export default {
components: { IconChevron, PageSection, StatusIcon, Search, TableCellCount },
@@ -123,7 +127,9 @@
sortable: true,
},
],
+ searchFilter: searchFilter,
searchTotalFilteredRows: 0,
+ expandRowLabel: expandRowLabel,
};
},
computed: {
diff --git a/src/views/Health/HardwareStatus/HardwareStatusTableFans.vue b/src/views/Health/HardwareStatus/HardwareStatusTableFans.vue
index 58b092d..ba2e2ce 100644
--- a/src/views/Health/HardwareStatus/HardwareStatusTableFans.vue
+++ b/src/views/Health/HardwareStatus/HardwareStatusTableFans.vue
@@ -76,8 +76,12 @@
import TableDataFormatterMixin from '@/components/Mixins/TableDataFormatterMixin';
import TableSortMixin from '@/components/Mixins/TableSortMixin';
import Search from '@/components/Global/Search';
-import SearchFilterMixin from '@/components/Mixins/SearchFilterMixin';
-import TableRowExpandMixin from '@/components/Mixins/TableRowExpandMixin';
+import SearchFilterMixin, {
+ searchFilter,
+} from '@/components/Mixins/SearchFilterMixin';
+import TableRowExpandMixin, {
+ expandRowLabel,
+} from '@/components/Mixins/TableRowExpandMixin';
export default {
components: { IconChevron, PageSection, StatusIcon, Search, TableCellCount },
@@ -122,7 +126,9 @@
sortable: true,
},
],
+ searchFilter: searchFilter,
searchTotalFilteredRows: 0,
+ expandRowLabel: expandRowLabel,
};
},
computed: {
diff --git a/src/views/Health/HardwareStatus/HardwareStatusTablePowerSupplies.vue b/src/views/Health/HardwareStatus/HardwareStatusTablePowerSupplies.vue
index 94f5774..366f559 100644
--- a/src/views/Health/HardwareStatus/HardwareStatusTablePowerSupplies.vue
+++ b/src/views/Health/HardwareStatus/HardwareStatusTablePowerSupplies.vue
@@ -99,8 +99,12 @@
import TableDataFormatterMixin from '@/components/Mixins/TableDataFormatterMixin';
import TableSortMixin from '@/components/Mixins/TableSortMixin';
import Search from '@/components/Global/Search';
-import SearchFilterMixin from '@/components/Mixins/SearchFilterMixin';
-import TableRowExpandMixin from '@/components/Mixins/TableRowExpandMixin';
+import SearchFilterMixin, {
+ searchFilter,
+} from '@/components/Mixins/SearchFilterMixin';
+import TableRowExpandMixin, {
+ expandRowLabel,
+} from '@/components/Mixins/TableRowExpandMixin';
export default {
components: { IconChevron, PageSection, StatusIcon, Search, TableCellCount },
@@ -145,7 +149,9 @@
sortable: true,
},
],
+ searchFilter: searchFilter,
searchTotalFilteredRows: 0,
+ expandRowLabel: expandRowLabel,
};
},
computed: {
diff --git a/src/views/Health/HardwareStatus/HardwareStatusTableProcessors.vue b/src/views/Health/HardwareStatus/HardwareStatusTableProcessors.vue
index fcb8ef3..d6a1287 100644
--- a/src/views/Health/HardwareStatus/HardwareStatusTableProcessors.vue
+++ b/src/views/Health/HardwareStatus/HardwareStatusTableProcessors.vue
@@ -106,8 +106,12 @@
import TableSortMixin from '@/components/Mixins/TableSortMixin';
import TableDataFormatterMixin from '@/components/Mixins/TableDataFormatterMixin';
import Search from '@/components/Global/Search';
-import SearchFilterMixin from '@/components/Mixins/SearchFilterMixin';
-import TableRowExpandMixin from '@/components/Mixins/TableRowExpandMixin';
+import SearchFilterMixin, {
+ searchFilter,
+} from '@/components/Mixins/SearchFilterMixin';
+import TableRowExpandMixin, {
+ expandRowLabel,
+} from '@/components/Mixins/TableRowExpandMixin';
export default {
components: { IconChevron, PageSection, StatusIcon, Search, TableCellCount },
@@ -152,7 +156,9 @@
sortable: true,
},
],
+ searchFilter: searchFilter,
searchTotalFilteredRows: 0,
+ expandRowLabel: expandRowLabel,
};
},
computed: {
diff --git a/src/views/Health/HardwareStatus/HardwareStatusTableStystem.vue b/src/views/Health/HardwareStatus/HardwareStatusTableStystem.vue
index 9cb1c6a..a89dacf 100644
--- a/src/views/Health/HardwareStatus/HardwareStatusTableStystem.vue
+++ b/src/views/Health/HardwareStatus/HardwareStatusTableStystem.vue
@@ -84,7 +84,9 @@
import StatusIcon from '@/components/Global/StatusIcon';
-import TableRowExpandMixin from '@/components/Mixins/TableRowExpandMixin';
+import TableRowExpandMixin, {
+ expandRowLabel,
+} from '@/components/Mixins/TableRowExpandMixin';
import TableDataFormatterMixin from '@/components/Mixins/TableDataFormatterMixin';
export default {
@@ -120,6 +122,7 @@
formatter: this.tableFormatter,
},
],
+ expandRowLabel: expandRowLabel,
};
},
computed: {
diff --git a/src/views/Health/Sensors/Sensors.vue b/src/views/Health/Sensors/Sensors.vue
index c9da6ab..96e6ba6 100644
--- a/src/views/Health/Sensors/Sensors.vue
+++ b/src/views/Health/Sensors/Sensors.vue
@@ -107,12 +107,18 @@
import TableToolbarExport from '@/components/Global/TableToolbarExport';
import TableCellCount from '@/components/Global/TableCellCount';
-import BVTableSelectableMixin from '@/components/Mixins/BVTableSelectableMixin';
+import BVTableSelectableMixin, {
+ selectedRows,
+ tableHeaderCheckboxModel,
+ tableHeaderCheckboxIndeterminate,
+} from '@/components/Mixins/BVTableSelectableMixin';
import LoadingBarMixin from '@/components/Mixins/LoadingBarMixin';
import TableFilterMixin from '@/components/Mixins/TableFilterMixin';
import TableDataFormatterMixin from '@/components/Mixins/TableDataFormatterMixin';
import TableSortMixin from '@/components/Mixins/TableSortMixin';
-import SearchFilterMixin from '@/components/Mixins/SearchFilterMixin';
+import SearchFilterMixin, {
+ searchFilter,
+} from '@/components/Mixins/SearchFilterMixin';
export default {
name: 'Sensors',
@@ -191,7 +197,11 @@
},
],
activeFilters: [],
+ searchFilter: searchFilter,
searchTotalFilteredRows: 0,
+ selectedRows: selectedRows,
+ tableHeaderCheckboxModel: tableHeaderCheckboxModel,
+ tableHeaderCheckboxIndeterminate: tableHeaderCheckboxIndeterminate,
};
},
computed: {