feat(plugins/sponsors): add plugin_sponsors_size (#1012) [skip ci]
This commit is contained in:
@@ -7,7 +7,7 @@ export default async function({login, q, imports, data, graphql, queries, accoun
|
|||||||
return null
|
return null
|
||||||
|
|
||||||
//Load inputs
|
//Load inputs
|
||||||
const {sections, past} = await imports.metadata.plugins.sponsors.inputs({data, account, q})
|
const {size, sections, past} = await imports.metadata.plugins.sponsors.inputs({data, account, q})
|
||||||
|
|
||||||
//Query description and goal
|
//Query description and goal
|
||||||
console.debug(`metrics/compute/${login}/plugins > sponsors > querying sponsors and goal`)
|
console.debug(`metrics/compute/${login}/plugins > sponsors > querying sponsors and goal`)
|
||||||
@@ -24,7 +24,7 @@ export default async function({login, q, imports, data, graphql, queries, accoun
|
|||||||
let pushed = 0
|
let pushed = 0
|
||||||
do {
|
do {
|
||||||
console.debug(`metrics/compute/${login}/sponsors > retrieving sponsors after ${cursor}`)
|
console.debug(`metrics/compute/${login}/sponsors > retrieving sponsors after ${cursor}`)
|
||||||
const {[account]:{sponsorshipsAsMaintainer:{edges, nodes}}} = await graphql(queries.sponsors.active({login, account, after:cursor ? `after: "${cursor}"` : ""}))
|
const {[account]:{sponsorshipsAsMaintainer:{edges, nodes}}} = await graphql(queries.sponsors.active({login, account, after:cursor ? `after: "${cursor}"` : "", size:Math.round(size*1.5)}))
|
||||||
cursor = edges?.[edges?.length - 1]?.cursor
|
cursor = edges?.[edges?.length - 1]?.cursor
|
||||||
fetched.push(...nodes)
|
fetched.push(...nodes)
|
||||||
pushed = nodes.length
|
pushed = nodes.length
|
||||||
@@ -48,7 +48,7 @@ export default async function({login, q, imports, data, graphql, queries, accoun
|
|||||||
let pushed = 0
|
let pushed = 0
|
||||||
do {
|
do {
|
||||||
console.debug(`metrics/compute/${login}/sponsors > retrieving sponsors events after ${cursor}`)
|
console.debug(`metrics/compute/${login}/sponsors > retrieving sponsors events after ${cursor}`)
|
||||||
const {[account]:{sponsorsActivities:{edges, nodes}}} = await graphql(queries.sponsors.all({login, account, after:cursor ? `after: "${cursor}"` : ""}))
|
const {[account]:{sponsorsActivities:{edges, nodes}}} = await graphql(queries.sponsors.all({login, account, after:cursor ? `after: "${cursor}"` : "", size:Math.round(size*1.5)}))
|
||||||
cursor = edges?.[edges?.length - 1]?.cursor
|
cursor = edges?.[edges?.length - 1]?.cursor
|
||||||
fetched.push(...nodes)
|
fetched.push(...nodes)
|
||||||
pushed = nodes.length
|
pushed = nodes.length
|
||||||
@@ -73,7 +73,7 @@ export default async function({login, q, imports, data, graphql, queries, accoun
|
|||||||
|
|
||||||
//Results
|
//Results
|
||||||
list = list.sort((a, b) => a.past === b.past ? b.amount - a.amount : a.past - b.past)
|
list = list.sort((a, b) => a.past === b.past ? b.amount - a.amount : a.past - b.past)
|
||||||
return {sections, about, list, count, goal}
|
return {sections, about, list, count, goal, size}
|
||||||
}
|
}
|
||||||
//Handle errors
|
//Handle errors
|
||||||
catch (error) {
|
catch (error) {
|
||||||
|
|||||||
@@ -40,3 +40,10 @@ inputs:
|
|||||||
This feature requires a token from target account, as past sponsorships are gathered from sponsors activity and is private data.
|
This feature requires a token from target account, as past sponsorships are gathered from sponsors activity and is private data.
|
||||||
type: boolean
|
type: boolean
|
||||||
default: no
|
default: no
|
||||||
|
|
||||||
|
plugin_sponsors_size:
|
||||||
|
description: Profile picture display size
|
||||||
|
type: number
|
||||||
|
default: 24
|
||||||
|
min: 8
|
||||||
|
max: 64
|
||||||
@@ -8,11 +8,11 @@ query SponsorsActive {
|
|||||||
sponsorEntity {
|
sponsorEntity {
|
||||||
... on User {
|
... on User {
|
||||||
login
|
login
|
||||||
avatarUrl(size: 36)
|
avatarUrl(size: $size)
|
||||||
}
|
}
|
||||||
... on Organization {
|
... on Organization {
|
||||||
login
|
login
|
||||||
avatarUrl(size: 36)
|
avatarUrl(size: $size)
|
||||||
url
|
url
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,12 +7,12 @@ query SponsorsAll {
|
|||||||
nodes {
|
nodes {
|
||||||
sponsor {
|
sponsor {
|
||||||
... on User {
|
... on User {
|
||||||
avatarUrl
|
avatarUrl(size: $size)
|
||||||
login
|
login
|
||||||
}
|
}
|
||||||
... on Organization {
|
... on Organization {
|
||||||
login
|
login
|
||||||
avatarUrl(size: 36)
|
avatarUrl(size: $size)
|
||||||
url
|
url
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -46,7 +46,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<% if ((section === "list")||(plugins.sponsors.sections.includes("list"))) { %>
|
<% if ((section === "list")||(plugins.sponsors.sections.includes("list"))) { %>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<% for (const user of plugins.sponsors.list) { %><img class="avatar <%= user.type === "organization" ? "organization" : "" %> <%= user.past ? "past" : "" %>" src="<%= user.avatar %>" width="24" height="24" alt="" /><% } %>
|
<% for (const user of plugins.sponsors.list) { %><img class="avatar <%= user.type === "organization" ? "organization" : "" %> <%= user.past ? "past" : "" %>" src="<%= user.avatar %>" width="<%= plugins.sponsors.size %>" height="<%= plugins.sponsors.size %>" alt="" /><% } %>
|
||||||
</div>
|
</div>
|
||||||
<% } %>
|
<% } %>
|
||||||
</section>
|
</section>
|
||||||
|
|||||||
Reference in New Issue
Block a user