Allow filter and find for contributors by account data
This commit is contained in:
parent
2e8d00bc2c
commit
fe1fa2e881
@ -35,10 +35,18 @@ class Contributor extends Base {
|
|||||||
}
|
}
|
||||||
|
|
||||||
filterByAccount(search) {
|
filterByAccount(search) {
|
||||||
|
return this._byAccount(search, 'filter');
|
||||||
|
}
|
||||||
|
|
||||||
|
findByAccount(search) {
|
||||||
|
return this._byAccount(search, 'find');
|
||||||
|
}
|
||||||
|
|
||||||
|
_byAccount(search, method = 'filter') {
|
||||||
return this.all().then((contributors) => {
|
return this.all().then((contributors) => {
|
||||||
const searchEntries = Object.entries(search);
|
const searchEntries = Object.entries(search);
|
||||||
|
|
||||||
return contributors.filter((contributor) => {
|
return contributors[method]((contributor) => {
|
||||||
if (!contributor.accounts) { return false; }
|
if (!contributor.accounts) { return false; }
|
||||||
return contributor.accounts.find((account) => {
|
return contributor.accounts.find((account) => {
|
||||||
return searchEntries.reduce((accumulator, searchValue) => {
|
return searchEntries.reduce((accumulator, searchValue) => {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user