From c4143b9c235388816cd9481e8e6827f9f3595c64 Mon Sep 17 00:00:00 2001 From: Paul Melnikow Date: Sat, 5 Jan 2019 14:54:34 -0500 Subject: [PATCH] Convert a bunch of `exampleUrl`s and formats (#2633) --- services/ansible/ansible.service.js | 13 ++++----- services/bitrise/bitrise.service.js | 11 ++++++-- services/cdnjs/cdnjs.service.js | 7 ++--- services/circleci/circleci.service.js | 22 ++++++++++++--- services/clojars/clojars-downloads.service.js | 6 ++-- services/clojars/clojars-version.service.js | 6 ++-- services/codacy/codacy-coverage.service.js | 7 +++-- services/codacy/codacy-grade.service.js | 7 +++-- services/codeclimate/codeclimate.service.js | 12 ++++---- services/codecov/codecov.service.js | 28 +++++++++++++++---- services/ctan/ctan.service.js | 12 +++----- services/depfu/depfu.service.js | 14 ++++------ services/discord/discord.service.js | 6 ++-- 13 files changed, 88 insertions(+), 63 deletions(-) diff --git a/services/ansible/ansible.service.js b/services/ansible/ansible.service.js index 30a8b6aa07..eda8170d7e 100644 --- a/services/ansible/ansible.service.js +++ b/services/ansible/ansible.service.js @@ -57,9 +57,8 @@ class AnsibleGalaxyRoleDownloads extends AnsibleGalaxyRole { static get examples() { return [ { - title: `Ansible Role`, - pattern: ':roleId', - exampleUrl: '3078', + title: 'Ansible Role', + namedParams: { roleId: '3078' }, staticExample: this.render({ downloads: 76 }), }, ] @@ -88,17 +87,15 @@ class AnsibleGalaxyRoleName extends AnsibleGalaxyRole { static get route() { return { base: 'ansible/role', - format: '(.+)', - capture: ['roleId'], + pattern: ':roleId', } } static get examples() { return [ { - title: `Ansible Role`, - pattern: ':roleId', - exampleUrl: '3078', + title: 'Ansible Role', + namedParams: { roleId: '3078' }, staticExample: this.render({ name: 'ansible-roles.sublimetext3_packagecontrol', }), diff --git a/services/bitrise/bitrise.service.js b/services/bitrise/bitrise.service.js index 0c6a1242ed..6cf4cd8645 100644 --- a/services/bitrise/bitrise.service.js +++ b/services/bitrise/bitrise.service.js @@ -24,9 +24,14 @@ module.exports = class Bitrise extends LegacyService { return [ { title: 'Bitrise', - previewUrl: 'cde737473028420d/master?token=GCIdEzacE4GW32jLVrZb7A', - pattern: ':app-id/:branch?token=:app-status-badge-token', - exampleUrl: 'cde737473028420d/master?token=GCIdEzacE4GW32jLVrZb7A', + pattern: ':appId/:branch', + namedParams: { appId: 'cde737473028420d', branch: 'master' }, + queryParams: { token: 'GCIdEzacE4GW32jLVrZb7A' }, + staticExample: { + label: 'bitrise', + message: 'success', + color: 'brightgreen', + }, }, ] } diff --git a/services/cdnjs/cdnjs.service.js b/services/cdnjs/cdnjs.service.js index 0b13067d8f..4a284ba6d7 100644 --- a/services/cdnjs/cdnjs.service.js +++ b/services/cdnjs/cdnjs.service.js @@ -47,18 +47,15 @@ module.exports = class Cdnjs extends BaseJsonService { static get route() { return { base: 'cdnjs/v', - format: '(.+)', - capture: ['library'], + pattern: ':library', } } static get examples() { return [ { - pattern: ':library', - exampleUrl: 'jquery', + namedParams: { library: 'jquery' }, staticExample: this.render({ version: '1.5.2' }), - keywords: ['cdn', 'cdnjs'], }, ] } diff --git a/services/circleci/circleci.service.js b/services/circleci/circleci.service.js index 27d12c7441..41e7f06b29 100644 --- a/services/circleci/circleci.service.js +++ b/services/circleci/circleci.service.js @@ -81,21 +81,35 @@ module.exports = class CircleCi extends BaseJsonService { return [ { title: 'CircleCI (all branches)', - exampleUrl: 'project/github/RedSparr0w/node-csgo-parser', pattern: 'project/:vcsType/:owner/:repo', + namedParams: { + vcsType: 'github', + owner: 'RedSparr0w', + repo: 'node-csgo-parser', + }, staticExample: this.render({ status: 'success' }), }, { title: 'CircleCI branch', - exampleUrl: 'project/github/RedSparr0w/node-csgo-parser/master', pattern: 'project/:vcsType/:owner/:repo/:branch', + namedParams: { + vcsType: 'github', + owner: 'RedSparr0w', + repo: 'node-csgo-parser', + branch: 'master', + }, staticExample: this.render({ status: 'success' }), }, { title: 'CircleCI token', pattern: 'token/:token/project/:vcsType/:owner/:repo/:branch', - exampleUrl: - 'token/b90b5c49e59a4c67ba3a92f7992587ac7a0408c2/project/github/RedSparr0w/node-csgo-parser/master', + namedParams: { + token: 'b90b5c49e59a4c67ba3a92f7992587ac7a0408c2', + vcsType: 'github', + owner: 'RedSparr0w', + repo: 'node-csgo-parser', + branch: 'master', + }, staticExample: this.render({ status: 'success' }), documentation, }, diff --git a/services/clojars/clojars-downloads.service.js b/services/clojars/clojars-downloads.service.js index 9b1ebaee38..b38118367e 100644 --- a/services/clojars/clojars-downloads.service.js +++ b/services/clojars/clojars-downloads.service.js @@ -44,16 +44,14 @@ module.exports = class Clojars extends BaseJsonService { static get route() { return { base: 'clojars/dt', - format: '(.+)', - capture: ['clojar'], + pattern: ':clojar+', } } static get examples() { return [ { - exampleUrl: 'prismic', - pattern: ':package', + namedParams: { clojar: 'prismic' }, staticExample: this.render({ downloads: 117 }), }, ] diff --git a/services/clojars/clojars-version.service.js b/services/clojars/clojars-version.service.js index 7a2c8f8d6d..234a8bdf68 100644 --- a/services/clojars/clojars-version.service.js +++ b/services/clojars/clojars-version.service.js @@ -50,16 +50,14 @@ module.exports = class Clojars extends BaseJsonService { static get route() { return { base: 'clojars/v', - format: '(.+)', - capture: ['clojar'], + pattern: ':clojar+', } } static get examples() { return [ { - exampleUrl: 'prismic', - pattern: ':package', + namedParams: { clojar: 'prismic' }, staticExample: this.render({ clojar: 'clojar', version: '1.2' }), }, ] diff --git a/services/codacy/codacy-coverage.service.js b/services/codacy/codacy-coverage.service.js index 3bd4407288..178f095e5d 100644 --- a/services/codacy/codacy-coverage.service.js +++ b/services/codacy/codacy-coverage.service.js @@ -31,14 +31,17 @@ module.exports = class CodacyCoverage extends BaseSvgScrapingService { { title: 'Codacy coverage', pattern: ':projectId', + namedParams: { projectId: '59d607d0e311408885e418004068ea58' }, staticExample: this.render({ percentage: 90 }), - exampleUrl: '59d607d0e311408885e418004068ea58', }, { title: 'Codacy branch coverage', pattern: ':projectId/:branch', + namedParams: { + projectId: '59d607d0e311408885e418004068ea58', + branch: 'master', + }, staticExample: this.render({ percentage: 90 }), - exampleUrl: '59d607d0e311408885e418004068ea58/master', }, ] } diff --git a/services/codacy/codacy-grade.service.js b/services/codacy/codacy-grade.service.js index df33b4cb5c..cbd2ba2c1b 100644 --- a/services/codacy/codacy-grade.service.js +++ b/services/codacy/codacy-grade.service.js @@ -24,14 +24,17 @@ module.exports = class CodacyGrade extends BaseSvgScrapingService { { title: 'Codacy grade', pattern: ':projectId', + namedParams: { projectId: 'e27821fb6289410b8f58338c7e0bc686' }, staticExample: this.render({ grade: 'A' }), - exampleUrl: 'e27821fb6289410b8f58338c7e0bc686', }, { title: 'Codacy branch grade', pattern: ':projectId/:branch', + namedParams: { + projectId: 'e27821fb6289410b8f58338c7e0bc686', + branch: 'master', + }, staticExample: this.render({ grade: 'A' }), - exampleUrl: 'e27821fb6289410b8f58338c7e0bc686/master', }, ] } diff --git a/services/codeclimate/codeclimate.service.js b/services/codeclimate/codeclimate.service.js index 27d05ea262..1a2ed2a17a 100644 --- a/services/codeclimate/codeclimate.service.js +++ b/services/codeclimate/codeclimate.service.js @@ -155,20 +155,20 @@ module.exports = class Codeclimate extends LegacyService { return [ { title: 'Code Climate issues', - exampleUrl: 'issues/twbs/bootstrap', pattern: 'issues/:userRepo', + namedParams: { userRepo: 'twbs/bootstrap' }, staticExample: { label: 'issues', message: '89', color: 'red' }, }, { title: 'Code Climate maintainability', - exampleUrl: 'maintainability/angular/angular.js', pattern: 'maintainability/:userRepo', + namedParams: { userRepo: 'angular/angular.js' }, staticExample: { label: 'maintainability', message: 'F', color: 'red' }, }, { title: 'Code Climate maintainability (percentage)', - exampleUrl: 'maintainability-percentage/angular/angular.js', pattern: 'maintainability-percentage/:userRepo', + namedParams: { userRepo: 'angular/angular.js' }, staticExample: { label: 'maintainability', message: '4.6%', @@ -177,8 +177,8 @@ module.exports = class Codeclimate extends LegacyService { }, { title: 'Code Climate coverage', - exampleUrl: 'coverage/jekyll/jekyll', pattern: 'coverage/:userRepo', + namedParams: { userRepo: 'jekyll/jekyll' }, staticExample: { label: 'coverage', message: '95%', @@ -187,8 +187,8 @@ module.exports = class Codeclimate extends LegacyService { }, { title: 'Code Climate coverage (letter)', - exampleUrl: 'coverage-letter/jekyll/jekyll', pattern: 'coverage-letter/:userRepo', + namedParams: { userRepo: 'jekyll/jekyll' }, staticExample: { label: 'coverage', message: 'A', @@ -197,8 +197,8 @@ module.exports = class Codeclimate extends LegacyService { }, { title: 'Code Climate technical debt', - exampleUrl: 'tech-debt/jekyll/jekyll', pattern: 'tech-debt/:userRepo', + namedParams: { userRepo: 'jekyll/jekyll' }, staticExample: { label: 'technical debt', message: '3%', diff --git a/services/codecov/codecov.service.js b/services/codecov/codecov.service.js index 50b7cdc1b6..65ecafccda 100644 --- a/services/codecov/codecov.service.js +++ b/services/codecov/codecov.service.js @@ -28,17 +28,35 @@ module.exports = class Codecov extends LegacyService { return [ { title: 'Codecov', - previewUrl: 'github/codecov/example-python', + pattern: ':vcsName/:user/:repo', + namedParams: { + vcsName: 'github', + user: 'codecov', + repo: 'example-python', + }, + staticPreview: { label: 'coverage', message: '90%', color: 'green' }, }, { title: 'Codecov branch', - previewUrl: 'github/codecov/example-python/master', + pattern: ':vcsName/:user/:repo/:branch', + namedParams: { + vcsName: 'github', + user: 'codecov', + repo: 'example-python', + branch: 'master', + }, + staticPreview: { label: 'coverage', message: '90%', color: 'green' }, }, { title: 'Codecov private', - previewUrl: 'github/codecov/example-python', - pattern: 'token/:token/github/codecov/example-python', - exampleUrl: 'token/My0A8VL917/github/codecov/example-python', + pattern: 'token/:token/:vcsName/:user/:repo', + namedParams: { + token: 'My0A8VL917', + vcsName: 'github', + user: 'codecov', + repo: 'example-python', + }, + staticPreview: { label: 'coverage', message: '90%', color: 'green' }, }, ] } diff --git a/services/ctan/ctan.service.js b/services/ctan/ctan.service.js index 77dc887763..37f4ca11de 100644 --- a/services/ctan/ctan.service.js +++ b/services/ctan/ctan.service.js @@ -50,8 +50,7 @@ class CtanLicense extends BaseCtanService { static get route() { return { base: 'ctan/l', - format: '(.+)', - capture: ['library'], + pattern: ':library', } } @@ -59,8 +58,7 @@ class CtanLicense extends BaseCtanService { return [ { title: 'CTAN', - exampleUrl: 'novel', - pattern: ':library', + namedParams: { library: 'novel' }, staticExample: this.render({ licenses: ['ppl1.3c', 'ofl'] }), keywords: ['tex'], }, @@ -85,8 +83,7 @@ class CtanVersion extends BaseCtanService { static get route() { return { base: 'ctan/v', - format: '(.+)', - capture: ['library'], + pattern: ':library', } } @@ -94,8 +91,7 @@ class CtanVersion extends BaseCtanService { return [ { title: 'CTAN', - exampleUrl: 'tex', - pattern: ':library', + namedParams: { library: 'tex' }, staticExample: this.render({ version: '3.14159265' }), keywords: ['tex'], }, diff --git a/services/depfu/depfu.service.js b/services/depfu/depfu.service.js index fc32b9012b..535127c378 100644 --- a/services/depfu/depfu.service.js +++ b/services/depfu/depfu.service.js @@ -9,8 +9,8 @@ const depfuSchema = Joi.object({ }).required() module.exports = class Depfu extends BaseJsonService { - async fetch({ userRepo }) { - const url = `https://depfu.com/github/shields/${userRepo}` + async fetch({ user, repo }) { + const url = `https://depfu.com/github/shields/${user}/${repo}` return this._requestJson({ url, schema: depfuSchema }) } @@ -21,8 +21,8 @@ module.exports = class Depfu extends BaseJsonService { } } - async handle({ userRepo }) { - const { text, colorscheme } = await this.fetch({ userRepo }) + async handle({ user, repo }) { + const { text, colorscheme } = await this.fetch({ user, repo }) return this.constructor.render({ text, colorscheme }) } @@ -37,8 +37,7 @@ module.exports = class Depfu extends BaseJsonService { static get route() { return { base: 'depfu', - format: '(.+)', - capture: ['userRepo'], + pattern: ':user/:repo', } } @@ -46,8 +45,7 @@ module.exports = class Depfu extends BaseJsonService { return [ { title: 'Depfu', - exampleUrl: 'depfu/example-ruby', - pattern: ':user/:repo', + namedParams: { user: 'depfu', repo: 'example-ruby' }, staticExample: this.render({ text: 'recent', colorscheme: 'brightgreen', diff --git a/services/discord/discord.service.js b/services/discord/discord.service.js index 359ab0da28..db5b81598a 100644 --- a/services/discord/discord.service.js +++ b/services/discord/discord.service.js @@ -51,8 +51,7 @@ module.exports = class Discord extends BaseJsonService { static get route() { return { base: 'discord', - format: '([^/]+)', - capture: ['serverId'], + pattern: ':serverId', } } @@ -60,8 +59,7 @@ module.exports = class Discord extends BaseJsonService { return [ { title: 'Discord', - exampleUrl: '102860784329052160', - pattern: ':serverId', + namedParams: { serverId: '102860784329052160' }, staticExample: this.render({ members: 23 }), }, ]