diff --git a/source/plugins/sponsors/index.mjs b/source/plugins/sponsors/index.mjs index b6b43c19..5a5e771e 100644 --- a/source/plugins/sponsors/index.mjs +++ b/source/plugins/sponsors/index.mjs @@ -7,7 +7,7 @@ export default async function({login, q, imports, data, graphql, queries, accoun return null //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 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 do { 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 fetched.push(...nodes) pushed = nodes.length @@ -48,7 +48,7 @@ export default async function({login, q, imports, data, graphql, queries, accoun let pushed = 0 do { 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 fetched.push(...nodes) pushed = nodes.length @@ -73,7 +73,7 @@ export default async function({login, q, imports, data, graphql, queries, accoun //Results 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 catch (error) { diff --git a/source/plugins/sponsors/metadata.yml b/source/plugins/sponsors/metadata.yml index a6176dee..1f9412f4 100644 --- a/source/plugins/sponsors/metadata.yml +++ b/source/plugins/sponsors/metadata.yml @@ -39,4 +39,11 @@ inputs: This feature requires a token from target account, as past sponsorships are gathered from sponsors activity and is private data. type: boolean - default: no \ No newline at end of file + default: no + + plugin_sponsors_size: + description: Profile picture display size + type: number + default: 24 + min: 8 + max: 64 \ No newline at end of file diff --git a/source/plugins/sponsors/queries/active.graphql b/source/plugins/sponsors/queries/active.graphql index 1ee4a171..b7fa022b 100644 --- a/source/plugins/sponsors/queries/active.graphql +++ b/source/plugins/sponsors/queries/active.graphql @@ -8,11 +8,11 @@ query SponsorsActive { sponsorEntity { ... on User { login - avatarUrl(size: 36) + avatarUrl(size: $size) } ... on Organization { login - avatarUrl(size: 36) + avatarUrl(size: $size) url } } diff --git a/source/plugins/sponsors/queries/all.graphql b/source/plugins/sponsors/queries/all.graphql index 5fc6c756..18f7199c 100644 --- a/source/plugins/sponsors/queries/all.graphql +++ b/source/plugins/sponsors/queries/all.graphql @@ -7,12 +7,12 @@ query SponsorsAll { nodes { sponsor { ... on User { - avatarUrl + avatarUrl(size: $size) login } ... on Organization { login - avatarUrl(size: 36) + avatarUrl(size: $size) url } } diff --git a/source/templates/classic/partials/sponsors.ejs b/source/templates/classic/partials/sponsors.ejs index 92dcd021..6bb5668d 100644 --- a/source/templates/classic/partials/sponsors.ejs +++ b/source/templates/classic/partials/sponsors.ejs @@ -46,7 +46,7 @@ <% if ((section === "list")||(plugins.sponsors.sections.includes("list"))) { %>