Process contributor data
Add util function for processing contributor data, and remove bignums, etc.
This commit is contained in:
@@ -1,14 +1,12 @@
|
||||
import EmberObject from '@ember/object';
|
||||
import bignumber from 'kredits-web/utils/cps/bignumber';
|
||||
import kreditsValue from 'kredits-web/utils/cps/kredits';
|
||||
|
||||
export default EmberObject.extend({
|
||||
// Contract
|
||||
id: bignumber('idRaw', 'toString'),
|
||||
id: null,
|
||||
account: null,
|
||||
balance: kreditsValue('balanceRaw'),
|
||||
totalKreditsEarned: bignumber('totalKreditsEarnedRaw', 'toNumber'),
|
||||
contributionsCount: bignumber('contributionsCountRaw', 'toNumber'),
|
||||
balance: 0,
|
||||
totalKreditsEarned: 0,
|
||||
contributionsCount: 0,
|
||||
isCore: false,
|
||||
ipfsHash: null,
|
||||
|
||||
@@ -20,6 +18,5 @@ export default EmberObject.extend({
|
||||
github_uid: null,
|
||||
wiki_username: null,
|
||||
zoom_display_name: null,
|
||||
ipfsData: ''
|
||||
|
||||
});
|
||||
|
||||
@@ -9,6 +9,7 @@ import { alias, notEmpty } from '@ember/object/computed';
|
||||
import { isEmpty, isPresent } from '@ember/utils';
|
||||
|
||||
import groupBy from 'kredits-web/utils/group-by';
|
||||
import processContributorData from 'kredits-web/utils/process-contributor-data';
|
||||
import formatKredits from 'kredits-web/utils/format-kredits';
|
||||
|
||||
import config from 'kredits-web/config/environment';
|
||||
@@ -208,8 +209,8 @@ export default Service.extend({
|
||||
getContributors () {
|
||||
return this.kredits.Contributor.all()
|
||||
.then(contributors => {
|
||||
return contributors.map(contributor => {
|
||||
return Contributor.create(contributor);
|
||||
return contributors.map(data => {
|
||||
return Contributor.create(processContributorData(data));
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
export default function processContributorData(data) {
|
||||
const processed = {
|
||||
id: data.id.toString(),
|
||||
balance: data.balanceInt,
|
||||
totalKreditsEarned: data.totalKreditsEarned,
|
||||
contributionsCount: data.contributionsCount.toNumber()
|
||||
}
|
||||
|
||||
const otherProperties = [
|
||||
'account', 'accounts', 'ipfsHash', 'isCore', 'kind', 'name', 'url',
|
||||
'github_username', 'github_uid', 'wiki_username', 'zoom_display_name'
|
||||
];
|
||||
|
||||
otherProperties.forEach(prop => {
|
||||
processed[prop] = data[prop];
|
||||
});
|
||||
|
||||
return processed;
|
||||
}
|
||||
Reference in New Issue
Block a user