Completed [twitch twitter ubuntu uptimerobot vaadindirectory] from static classes to props (#5660)

Co-authored-by: Jabbar Memon <jabbar@zoop.one>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
This commit is contained in:
Jabbar Memon
2020-10-04 02:56:33 +05:30
committed by GitHub
parent c18bc82347
commit 4d712e8386
12 changed files with 174 additions and 245 deletions

View File

@@ -17,14 +17,12 @@ function sleep(ms) {
// Abstract class for Twitch badges
module.exports = class TwitchBase extends BaseJsonService {
static get auth() {
return {
static auth = {
userKey: 'twitch_client_id',
passKey: 'twitch_client_secret',
authorizedOrigins: ['https://id.twitch.tv'],
isRequired: true,
}
}
constructor(...args) {
super(...args)

View File

@@ -8,40 +8,29 @@ const helixSchema = Joi.object({
})
module.exports = class TwitchStatus extends TwitchBase {
static get category() {
return 'activity'
}
static category = 'activity'
static get route() {
return {
static route = {
base: 'twitch/status',
pattern: ':user',
}
}
static get examples() {
const preview = this.render({
user: 'andyonthewings',
isLive: true,
})
// link[] is not allowed in examples
delete preview.link
return [
static examples = [
{
title: 'Twitch Status',
namedParams: {
user: 'andyonthewings',
},
staticPreview: preview,
staticPreview: {
message: 'live',
color: 'red',
},
},
]
}
static get defaultBadgeData() {
return {
static defaultBadgeData = {
label: 'twitch',
}
}
static render({ user, isLive }) {
return {

View File

@@ -10,20 +10,15 @@ const queryParamSchema = Joi.object({
}).required()
class TwitterUrl extends BaseService {
static get category() {
return 'social'
}
static category = 'social'
static get route() {
return {
static route = {
base: 'twitter',
pattern: 'url',
queryParamSchema,
}
}
static get examples() {
return [
static examples = [
{
title: 'Twitter URL',
namedParams: {},
@@ -39,13 +34,10 @@ class TwitterUrl extends BaseService {
},
},
]
}
static get defaultBadgeData() {
return {
static defaultBadgeData = {
namedLogo: 'twitter',
}
}
async handle(_routeParams, { url }) {
const page = encodeURIComponent(`${url}`)

View File

@@ -15,29 +15,23 @@ const schema = Joi.object({
}).required()
module.exports = class Ubuntu extends BaseJsonService {
static get category() {
return 'version'
}
static category = 'version'
static get route() {
return {
static route = {
base: 'ubuntu/v',
pattern: ':packageName/:series?',
}
}
static get examples() {
return [
static examples = [
{
title: 'Ubuntu package',
namedParams: { series: 'bionic', packageName: 'ubuntu-wallpapers' },
staticPreview: renderVersionBadge({ version: '18.04.1-0ubuntu1' }),
},
]
}
static get defaultBadgeData() {
return { label: 'ubuntu' }
static defaultBadgeData = {
label: 'ubuntu',
}
async fetch({ packageName, series }) {

View File

@@ -39,9 +39,7 @@ const singleMonitorResponseWithUptime = Joi.alternatives(
)
module.exports = class UptimeRobotBase extends BaseJsonService {
static get category() {
return 'monitoring'
}
static category = 'monitoring'
static ensureIsMonitorApiKey(value) {
// A monitor API key must start with "m".

View File

@@ -6,15 +6,12 @@ const UptimeRobotBase = require('./uptimerobot-base')
const ratioColor = colorScale([10, 30, 50, 70])
module.exports = class UptimeRobotRatio extends UptimeRobotBase {
static get route() {
return {
static route = {
base: 'uptimerobot/ratio',
pattern: ':numberOfDays(\\d+)?/:monitorSpecificKey',
}
}
static get examples() {
return [
static examples = [
{
title: 'Uptime Robot ratio (30 days)',
pattern: ':monitorSpecificKey',
@@ -32,13 +29,10 @@ module.exports = class UptimeRobotRatio extends UptimeRobotBase {
staticPreview: this.render({ ratio: 100 }),
},
]
}
static get defaultBadgeData() {
return {
static defaultBadgeData = {
label: 'uptime',
}
}
static render({ ratio }) {
return {

View File

@@ -3,15 +3,12 @@
const UptimeRobotBase = require('./uptimerobot-base')
module.exports = class UptimeRobotStatus extends UptimeRobotBase {
static get route() {
return {
static route = {
base: 'uptimerobot/status',
pattern: ':monitorSpecificKey',
}
}
static get examples() {
return [
static examples = [
{
title: 'Uptime Robot status',
namedParams: {
@@ -20,13 +17,10 @@ module.exports = class UptimeRobotStatus extends UptimeRobotBase {
staticPreview: this.render({ status: 2 }),
},
]
}
static get defaultBadgeData() {
return {
static defaultBadgeData = {
label: 'status',
}
}
static render({ status }) {
switch (status) {

View File

@@ -5,19 +5,14 @@ const { floorCount: floorCountColor } = require('../color-formatters')
const { BaseVaadinDirectoryService } = require('./vaadin-directory-base')
module.exports = class VaadinDirectoryRatingCount extends BaseVaadinDirectoryService {
static get category() {
return 'rating'
}
static category = 'rating'
static get route() {
return {
static route = {
base: 'vaadin-directory',
pattern: ':alias(rc|rating-count)/:packageName',
}
}
static get examples() {
return [
static examples = [
{
title: 'Vaadin Directory',
pattern: 'rating-count/:packageName',
@@ -26,10 +21,9 @@ module.exports = class VaadinDirectoryRatingCount extends BaseVaadinDirectorySer
keywords: ['vaadin-directory', 'rating-count'],
},
]
}
static get defaultBadgeData() {
return { label: 'rating count' }
static defaultBadgeData = {
label: 'rating count',
}
static render({ ratingCount }) {

View File

@@ -5,19 +5,14 @@ const { floorCount: floorCountColor } = require('../color-formatters')
const { BaseVaadinDirectoryService } = require('./vaadin-directory-base')
module.exports = class VaadinDirectoryRating extends BaseVaadinDirectoryService {
static get category() {
return 'rating'
}
static category = 'rating'
static get route() {
return {
static route = {
base: 'vaadin-directory',
pattern: ':format(star|stars|rating)/:packageName',
}
}
static get examples() {
return [
static examples = [
{
title: 'Vaadin Directory',
pattern: ':format(stars|rating)/:packageName',
@@ -26,10 +21,9 @@ module.exports = class VaadinDirectoryRating extends BaseVaadinDirectoryService
keywords: ['vaadin-directory'],
},
]
}
static get defaultBadgeData() {
return { label: 'rating' }
static defaultBadgeData = {
label: 'rating',
}
static render({ format, score }) {

View File

@@ -5,19 +5,14 @@ const { age: ageColor } = require('../color-formatters')
const { BaseVaadinDirectoryService } = require('./vaadin-directory-base')
module.exports = class VaadinDirectoryReleaseDate extends BaseVaadinDirectoryService {
static get category() {
return 'activity'
}
static category = 'activity'
static get route() {
return {
static route = {
base: 'vaadin-directory',
pattern: ':alias(rd|release-date)/:packageName',
}
}
static get examples() {
return [
static examples = [
{
title: 'Vaadin Directory',
pattern: 'release-date/:packageName',
@@ -26,10 +21,9 @@ module.exports = class VaadinDirectoryReleaseDate extends BaseVaadinDirectorySer
keywords: ['vaadin-directory', 'date', 'latest release date'],
},
]
}
static get defaultBadgeData() {
return { label: 'latest release date' }
static defaultBadgeData = {
label: 'latest release date',
}
static render({ date }) {

View File

@@ -3,19 +3,14 @@
const { BaseVaadinDirectoryService } = require('./vaadin-directory-base')
module.exports = class VaadinDirectoryStatus extends BaseVaadinDirectoryService {
static get category() {
return 'other'
}
static category = 'other'
static get route() {
return {
static route = {
base: 'vaadin-directory/status',
pattern: ':packageName',
}
}
static get examples() {
return [
static examples = [
{
title: 'Vaadin Directory',
namedParams: { packageName: 'vaadinvaadin-grid' },
@@ -23,10 +18,9 @@ module.exports = class VaadinDirectoryStatus extends BaseVaadinDirectoryService
keywords: ['vaadin-directory', 'status'],
},
]
}
static get defaultBadgeData() {
return { label: 'vaadin directory' }
static defaultBadgeData = {
label: 'vaadin directory',
}
static render({ status }) {

View File

@@ -4,19 +4,14 @@ const { renderVersionBadge } = require('../version')
const { BaseVaadinDirectoryService } = require('./vaadin-directory-base')
module.exports = class VaadinDirectoryVersion extends BaseVaadinDirectoryService {
static get category() {
return 'version'
}
static category = 'version'
static get route() {
return {
static route = {
base: 'vaadin-directory',
pattern: ':alias(v|version)/:packageName',
}
}
static get examples() {
return [
static examples = [
{
title: 'Vaadin Directory',
pattern: 'v/:packageName',
@@ -25,10 +20,9 @@ module.exports = class VaadinDirectoryVersion extends BaseVaadinDirectoryService
keywords: ['vaadin-directory', 'latest'],
},
]
}
static get defaultBadgeData() {
return { label: 'vaadin directory' }
static defaultBadgeData = {
label: 'vaadin directory',
}
async handle({ alias, packageName }) {