convert some service classes to static props, run [gem gerrit] (#5553)

* refactor(gem): convert to static props

* refactor(gerrit): convert to static props

Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
This commit is contained in:
Caleb Cartwright
2020-09-18 17:28:24 -05:00
committed by GitHub
parent 6682b87efe
commit 737254f4a5
5 changed files with 111 additions and 177 deletions

View File

@@ -27,73 +27,60 @@ const versionSchema = Joi.array()
.required()
module.exports = class GemDownloads extends BaseJsonService {
static get category() {
return 'downloads'
}
static category = 'downloads'
static route = { base: 'gem', pattern: ':variant(dt|dtv|dv)/:gem/:version?' }
static examples = [
{
title: 'Gem',
pattern: 'dv/:gem/:version',
namedParams: {
gem: 'rails',
version: 'stable',
},
staticPreview: this.render({
variant: 'dv',
version: 'stable',
downloads: 70000,
}),
keywords,
},
{
title: 'Gem',
pattern: 'dv/:gem/:version',
namedParams: {
gem: 'rails',
version: '4.1.0',
},
staticPreview: this.render({
variant: 'dv',
version: '4.1.0',
downloads: 50000,
}),
keywords,
},
{
title: 'Gem',
pattern: 'dtv/:gem',
namedParams: { gem: 'rails' },
staticPreview: this.render({
variant: 'dtv',
downloads: 70000,
}),
keywords,
},
{
title: 'Gem',
pattern: 'dt/:gem',
namedParams: { gem: 'rails' },
staticPreview: this.render({
variant: 'dt',
downloads: 900000,
}),
keywords,
},
]
static get route() {
return {
base: 'gem',
pattern: ':variant(dt|dtv|dv)/:gem/:version?',
}
}
static get examples() {
return [
{
title: 'Gem',
pattern: 'dv/:gem/:version',
namedParams: {
gem: 'rails',
version: 'stable',
},
staticPreview: this.render({
variant: 'dv',
version: 'stable',
downloads: 70000,
}),
keywords,
},
{
title: 'Gem',
pattern: 'dv/:gem/:version',
namedParams: {
gem: 'rails',
version: '4.1.0',
},
staticPreview: this.render({
variant: 'dv',
version: '4.1.0',
downloads: 50000,
}),
keywords,
},
{
title: 'Gem',
pattern: 'dtv/:gem',
namedParams: { gem: 'rails' },
staticPreview: this.render({
variant: 'dtv',
downloads: 70000,
}),
keywords,
},
{
title: 'Gem',
pattern: 'dt/:gem',
namedParams: { gem: 'rails' },
staticPreview: this.render({
variant: 'dt',
downloads: 900000,
}),
keywords,
},
]
}
static get defaultBadgeData() {
return { label: 'downloads' }
}
static defaultBadgeData = { label: 'downloads' }
static render({ variant, version, downloads }) {
let label

View File

@@ -7,31 +7,18 @@ const { BaseJsonService } = require('..')
const ownerSchema = Joi.array().required()
module.exports = class GemOwner extends BaseJsonService {
static get category() {
return 'other'
}
static category = 'other'
static route = { base: 'gem/u', pattern: ':user' }
static examples = [
{
title: 'Gems',
namedParams: { user: 'raphink' },
staticPreview: this.render({ count: 34 }),
keywords: ['ruby'],
},
]
static get route() {
return {
base: 'gem/u',
pattern: ':user',
}
}
static get examples() {
return [
{
title: 'Gems',
namedParams: { user: 'raphink' },
staticPreview: this.render({ count: 34 }),
keywords: ['ruby'],
},
]
}
static get defaultBadgeData() {
return { label: 'gems' }
}
static defaultBadgeData = { label: 'gems' }
static render({ count }) {
return {

View File

@@ -25,43 +25,30 @@ const dailySchema = Joi.array()
.required()
module.exports = class GemRank extends BaseJsonService {
static get category() {
return 'downloads'
}
static get route() {
return {
base: 'gem',
pattern: ':period(rt|rd)/:gem',
}
}
static get examples() {
return [
{
title: 'Gem download rank',
pattern: 'rt/:gem',
namedParams: {
gem: 'puppet',
},
staticPreview: this.render({ period: 'rt', rank: 332 }),
keywords,
static category = 'downloads'
static route = { base: 'gem', pattern: ':period(rt|rd)/:gem' }
static examples = [
{
title: 'Gem download rank',
pattern: 'rt/:gem',
namedParams: {
gem: 'puppet',
},
{
title: 'Gem download rank (daily)',
pattern: 'rd/:gem',
namedParams: {
gem: 'facter',
},
staticPreview: this.render({ period: 'rd', rank: 656 }),
keywords,
staticPreview: this.render({ period: 'rt', rank: 332 }),
keywords,
},
{
title: 'Gem download rank (daily)',
pattern: 'rd/:gem',
namedParams: {
gem: 'facter',
},
]
}
staticPreview: this.render({ period: 'rd', rank: 656 }),
keywords,
},
]
static get defaultBadgeData() {
return { label: 'rank' }
}
static defaultBadgeData = { label: 'rank' }
static render({ period, rank }) {
const count = Math.floor(100000 / rank)

View File

@@ -11,31 +11,18 @@ const schema = Joi.object({
}).required()
module.exports = class GemVersion extends BaseJsonService {
static get category() {
return 'version'
}
static category = 'version'
static route = { base: 'gem/v', pattern: ':gem' }
static examples = [
{
title: 'Gem',
namedParams: { gem: 'formatador' },
staticPreview: this.render({ version: '2.1.0' }),
keywords: ['ruby'],
},
]
static get route() {
return {
base: 'gem/v',
pattern: ':gem',
}
}
static get examples() {
return [
{
title: 'Gem',
namedParams: { gem: 'formatador' },
staticPreview: this.render({ version: '2.1.0' }),
keywords: ['ruby'],
},
]
}
static get defaultBadgeData() {
return { label: 'gem' }
}
static defaultBadgeData = { label: 'gem' }
static render({ version }) {
return renderVersionBadge({ version })

View File

@@ -13,37 +13,23 @@ const schema = Joi.object({
}).required()
module.exports = class Gerrit extends BaseJsonService {
static get category() {
return 'issue-tracking'
}
static get route() {
return {
base: 'gerrit',
pattern: ':changeId',
queryParamSchema,
}
}
static get examples() {
return [
{
title: 'Gerrit change status',
namedParams: {
changeId: '1011478',
},
queryParams: { baseUrl: 'https://android-review.googlesource.com' },
staticPreview: this.render({
changeId: 1011478,
status: 'MERGED',
}),
static category = 'issue-tracking'
static route = { base: 'gerrit', pattern: ':changeId', queryParamSchema }
static examples = [
{
title: 'Gerrit change status',
namedParams: {
changeId: '1011478',
},
]
}
queryParams: { baseUrl: 'https://android-review.googlesource.com' },
staticPreview: this.render({
changeId: 1011478,
status: 'MERGED',
}),
},
]
static get defaultBadgeData() {
return { label: 'gerrit' }
}
static defaultBadgeData = { label: 'gerrit' }
static getColor({ displayStatus }) {
if (displayStatus === 'new') {