diff --git a/frontend/src/views/Layout/DashboardLayout_gdd.vue b/frontend/src/views/Layout/DashboardLayout_gdd.vue index aac4f3743..6f2d48cb1 100755 --- a/frontend/src/views/Layout/DashboardLayout_gdd.vue +++ b/frontend/src/views/Layout/DashboardLayout_gdd.vue @@ -32,6 +32,7 @@ :balance="balance" :gdt-balance="GdtBalance" :transactions="transactions" + :transactionCount="transactionCount" @update-balance="updateBalance" @update-transactions="updateTransactions" > @@ -80,6 +81,7 @@ export default { GdtBalance: 0, transactions: [], bookedBalance: 0, + transactionCount: 0, } }, methods: { @@ -102,6 +104,7 @@ export default { this.transactions = result.result.data.transactions this.balance = Number(result.result.data.decay) this.bookedBalance = Number(result.result.data.balance) + this.transactionCount = result.result.data.count } else { // what to do when loading balance fails? } diff --git a/frontend/src/views/Pages/AccountOverview.vue b/frontend/src/views/Pages/AccountOverview.vue index 37045cd6e..a38837c0c 100644 --- a/frontend/src/views/Pages/AccountOverview.vue +++ b/frontend/src/views/Pages/AccountOverview.vue @@ -15,6 +15,8 @@ v-if="showTransactionList" :transactions="transactions" :max="5" + :timestamp="timestamp" + :transactionCount="transactionCount" @update-transactions="updateTransactions" /> @@ -38,6 +40,7 @@ export default { data() { return { showTransactionList: true, + timestamp: Date.now(), } }, props: { @@ -46,6 +49,7 @@ export default { transactions: { default: () => [], }, + transactionCount: { type: Number, default: 0 }, }, methods: { toggleShowList(bool) { diff --git a/frontend/src/views/Pages/AccountOverview/GddTable.vue b/frontend/src/views/Pages/AccountOverview/GddTable.vue index ca8b9fcab..a1242654d 100644 --- a/frontend/src/views/Pages/AccountOverview/GddTable.vue +++ b/frontend/src/views/Pages/AccountOverview/GddTable.vue @@ -103,37 +103,25 @@ export default { props: { transactions: { default: [] }, max: { type: Number, default: 25 }, + timestamp: { type: Number, default: 0 }, + transactionCount: { type: Number, default: 0 }, }, data() { return { form: [], fields: ['balance', 'date', 'memo', 'name', 'transaction_id', 'type', 'details'], items: [], - count: 0, } }, - created() { - this.$emit('change-transactions') - }, - computed: { - filteredItems() { - return this.ojectToArray(this.items).reverse() + watch: { + timestamp: { + immediate: true, + handler: 'updateTransactions', }, }, methods: { - ojectToArray(obj) { - let result = new Array(Object.keys(obj).length) - Object.entries(obj).forEach((entry) => { - const [key, value] = entry - result[key] = value - }) - return result - }, - rowClass(item, type) { - if (!item || type !== 'row') return - if (item.type === 'receive') return 'table-success' - if (item.type === 'send') return 'table-warning' - if (item.type === 'creation') return 'table-primary' + updateTransactions() { + this.$emit('update-transactions') }, }, } diff --git a/frontend/src/views/Pages/UserProfileTransactionList.vue b/frontend/src/views/Pages/UserProfileTransactionList.vue index 3610ea76b..21668fd06 100644 --- a/frontend/src/views/Pages/UserProfileTransactionList.vue +++ b/frontend/src/views/Pages/UserProfileTransactionList.vue @@ -7,7 +7,12 @@ - + @@ -27,6 +32,12 @@ export default { transactions: { default: [], }, + transactionCount: { type: Number, default: 0 }, + }, + data() { + return { + timestamp: Date.now(), + } }, methods: { updateTransactions() {