Add confirmed-in component, show ETA for proposed reimbursements #210

Merged
raucao merged 11 commits from feature/confirmation-eta into master 2023-01-15 04:36:43 +00:00
4 changed files with 36 additions and 18 deletions
Showing only changes of commit 662e76979b - Show all commits
+1 -9
View File
@@ -1,20 +1,12 @@
import Component from '@glimmer/component';
import { tracked } from '@glimmer/tracking';
import { inject as service } from '@ember/service';
import moment from 'moment';
export default class ConfirmedInComponent extends Component {
@service kredits;
@tracked confirmedAtBlock = null;
constructor(confirmedAtBlock) {
super(...arguments);
this.confirmedAtBlock = confirmedAtBlock;
}
get confirmedInBlocks () {
return this.confirmedAtBlock - this.kredits.currentBlock;
return this.args.confirmedAtBlock - this.kredits.currentBlock;
}
get confirmedInSeconds () {
+1
View File
@@ -0,0 +1 @@
Confirming in <strong>{{this.confirmedInBlocks}}</strong> blocks (~ {{this.confirmedInHumanTime}})
+14 -9
View File
@@ -3,12 +3,12 @@
<li data-reimbursement-id={{reimbursement.id}}
class="{{item-status reimbursement}}">
<p class="meta">
<span class="title">
Expenses covered by {{reimbursement.contributor.name}}
</span>
<span class="recipient">
<UserAvatar @contributor={{reimbursement.contributor}} />
</span>
<span class="title">
Expenses covered by {{reimbursement.contributor.name}}
</span>
</p>
<p class="token-amount">
<span class="amount">
@@ -30,17 +30,22 @@
</li>
{{/each}}
</ul>
{{#if this.kredits.currentUserIsCore}}
<p>
<div class="meta">
<p class="confirmation-eta">
<ConfirmedIn @confirmedAtBlock={{reimbursement.confirmedAt}} />
</p>
<p class="actions">
<a href="{{this.ipfsGatewayUrl}}/{{reimbursement.ipfsHash}}"
class="button small" target="_blank" rel="noopener noreferrer">
Inspect IPFS data
</a>
<button {{on "click" (fn this.veto reimbursement.id)}}
disabled={{reimbursement.vetoed}}
class="button small danger" type="button">veto</button>
{{#if this.kredits.currentUserIsCore}}
<button {{on "click" (fn this.veto reimbursement.id)}}
disabled={{reimbursement.vetoed}}
class="button small danger" type="button">veto</button>
{{/if}}
</p>
{{/if}}
</div>
</li>
{{/each}}
</ul>
@@ -31,4 +31,24 @@ ul.reimbursement-list {
}
}
}
div.meta {
grid-column-start: 1;
grid-column-end: 3;
margin-top: 0.6rem;
border-top: 1px solid $item-border-color;
display: flex;
p {
flex: 1;
padding: 1.6rem 0 1rem 0;
&.confirmation-eta {
}
&.actions {
text-align: right;
}
}
}
}