converted [nodeping npm nexus node] from static classes to props (#5662)
* converted [nexus node] from static classes to props * fixing node module route field * converted [nodeping npm] from static classes to props * Removed Commented code Co-authored-by: Jabbar Memon <jabbar@zoop.one>
This commit is contained in:
@@ -39,8 +39,9 @@ const queryParamSchema = Joi.object({
|
||||
// Abstract class for NPM badges which display data about the latest version
|
||||
// of a package.
|
||||
module.exports = class NpmBase extends BaseJsonService {
|
||||
static get auth() {
|
||||
return { passKey: 'npm_token', serviceKey: 'npm' }
|
||||
static auth = {
|
||||
passKey: 'npm_token',
|
||||
serviceKey: 'npm',
|
||||
}
|
||||
|
||||
static buildRoute(base, { withTag } = {}) {
|
||||
|
||||
@@ -6,38 +6,30 @@ const NpmBase = require('./npm-base')
|
||||
const keywords = ['node']
|
||||
|
||||
module.exports = class NpmCollaborators extends NpmBase {
|
||||
static get category() {
|
||||
return 'activity'
|
||||
}
|
||||
static category = 'activity'
|
||||
|
||||
static get route() {
|
||||
return this.buildRoute('npm/collaborators', { withTag: false })
|
||||
}
|
||||
static route = this.buildRoute('npm/collaborators', { withTag: false })
|
||||
|
||||
static get examples() {
|
||||
return [
|
||||
{
|
||||
title: 'npm collaborators',
|
||||
pattern: ':packageName',
|
||||
namedParams: { packageName: 'prettier' },
|
||||
staticPreview: this.render({ collaborators: 6 }),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm collaborators',
|
||||
pattern: ':packageName',
|
||||
namedParams: { packageName: 'prettier' },
|
||||
queryParams: { registry_uri: 'https://registry.npmjs.com' },
|
||||
staticPreview: this.render({ collaborators: 6 }),
|
||||
keywords,
|
||||
},
|
||||
]
|
||||
}
|
||||
static examples = [
|
||||
{
|
||||
title: 'npm collaborators',
|
||||
pattern: ':packageName',
|
||||
namedParams: { packageName: 'prettier' },
|
||||
staticPreview: this.render({ collaborators: 6 }),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm collaborators',
|
||||
pattern: ':packageName',
|
||||
namedParams: { packageName: 'prettier' },
|
||||
queryParams: { registry_uri: 'https://registry.npmjs.com' },
|
||||
staticPreview: this.render({ collaborators: 6 }),
|
||||
keywords,
|
||||
},
|
||||
]
|
||||
|
||||
static get defaultBadgeData() {
|
||||
return {
|
||||
label: 'npm collaborators',
|
||||
}
|
||||
static defaultBadgeData = {
|
||||
label: 'npm collaborators',
|
||||
}
|
||||
|
||||
static render({ collaborators }) {
|
||||
|
||||
@@ -7,109 +7,101 @@ const { queryParamSchema } = NpmBase
|
||||
const keywords = ['node']
|
||||
|
||||
module.exports = class NpmDependencyVersion extends NpmBase {
|
||||
static get category() {
|
||||
return 'platform-support'
|
||||
static category = 'platform-support'
|
||||
|
||||
static route = {
|
||||
base: 'npm/dependency-version',
|
||||
pattern:
|
||||
':scope(@[^/]+)?/:packageName/:kind(dev|peer)?/:dependencyScope(@[^/]+)?/:dependency',
|
||||
queryParamSchema,
|
||||
}
|
||||
|
||||
static get route() {
|
||||
return {
|
||||
base: 'npm/dependency-version',
|
||||
pattern:
|
||||
':scope(@[^/]+)?/:packageName/:kind(dev|peer)?/:dependencyScope(@[^/]+)?/:dependency',
|
||||
queryParamSchema,
|
||||
}
|
||||
}
|
||||
static examples = [
|
||||
{
|
||||
title: 'npm peer dependency version',
|
||||
pattern: ':packageName/peer/:dependency',
|
||||
namedParams: {
|
||||
packageName: 'react-boxplot',
|
||||
dependency: 'prop-types',
|
||||
},
|
||||
staticPreview: this.render({
|
||||
dependency: 'prop-types',
|
||||
range: '^15.5.4',
|
||||
}),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm peer dependency version (scoped)',
|
||||
pattern: ':scope?/:packageName/dev/:dependencyScope?/:dependency',
|
||||
namedParams: {
|
||||
scope: '@swellaby',
|
||||
packageName: 'eslint-config',
|
||||
dependency: 'eslint',
|
||||
},
|
||||
staticPreview: this.render({
|
||||
dependency: 'eslint',
|
||||
range: '^3.0.0',
|
||||
}),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm dev dependency version',
|
||||
pattern: ':packageName/dev/:dependency',
|
||||
namedParams: {
|
||||
packageName: 'react-boxplot',
|
||||
dependency: 'eslint-config-standard',
|
||||
},
|
||||
staticPreview: this.render({
|
||||
dependency: 'eslint-config-standard',
|
||||
range: '^12.0.0',
|
||||
}),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm dev dependency version (scoped)',
|
||||
pattern: ':scope?/:packageName/dev/:dependencyScope?/:dependency',
|
||||
namedParams: {
|
||||
packageName: 'mocha',
|
||||
dependencyScope: '@mocha',
|
||||
dependency: 'contributors',
|
||||
},
|
||||
staticPreview: this.render({
|
||||
dependency: '@mocha/contributors',
|
||||
range: '^1.0.3',
|
||||
}),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm (prod) dependency version',
|
||||
pattern: ':packageName/:dependency',
|
||||
namedParams: {
|
||||
packageName: 'react-boxplot',
|
||||
dependency: 'simple-statistics',
|
||||
},
|
||||
staticPreview: this.render({
|
||||
dependency: 'simple-statistics',
|
||||
range: '^6.1.1',
|
||||
}),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm (prod) dependency version (scoped)',
|
||||
pattern: ':scope?/:packageName/:dependencyScope?/:dependency',
|
||||
namedParams: {
|
||||
packageName: 'got',
|
||||
dependencyScope: '@sindresorhus',
|
||||
dependency: 'is',
|
||||
},
|
||||
staticPreview: this.render({
|
||||
dependency: '@sindresorhus/is',
|
||||
range: '^0.15.0',
|
||||
}),
|
||||
keywords,
|
||||
},
|
||||
]
|
||||
|
||||
static get examples() {
|
||||
return [
|
||||
{
|
||||
title: 'npm peer dependency version',
|
||||
pattern: ':packageName/peer/:dependency',
|
||||
namedParams: {
|
||||
packageName: 'react-boxplot',
|
||||
dependency: 'prop-types',
|
||||
},
|
||||
staticPreview: this.render({
|
||||
dependency: 'prop-types',
|
||||
range: '^15.5.4',
|
||||
}),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm peer dependency version (scoped)',
|
||||
pattern: ':scope?/:packageName/dev/:dependencyScope?/:dependency',
|
||||
namedParams: {
|
||||
scope: '@swellaby',
|
||||
packageName: 'eslint-config',
|
||||
dependency: 'eslint',
|
||||
},
|
||||
staticPreview: this.render({
|
||||
dependency: 'eslint',
|
||||
range: '^3.0.0',
|
||||
}),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm dev dependency version',
|
||||
pattern: ':packageName/dev/:dependency',
|
||||
namedParams: {
|
||||
packageName: 'react-boxplot',
|
||||
dependency: 'eslint-config-standard',
|
||||
},
|
||||
staticPreview: this.render({
|
||||
dependency: 'eslint-config-standard',
|
||||
range: '^12.0.0',
|
||||
}),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm dev dependency version (scoped)',
|
||||
pattern: ':scope?/:packageName/dev/:dependencyScope?/:dependency',
|
||||
namedParams: {
|
||||
packageName: 'mocha',
|
||||
dependencyScope: '@mocha',
|
||||
dependency: 'contributors',
|
||||
},
|
||||
staticPreview: this.render({
|
||||
dependency: '@mocha/contributors',
|
||||
range: '^1.0.3',
|
||||
}),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm (prod) dependency version',
|
||||
pattern: ':packageName/:dependency',
|
||||
namedParams: {
|
||||
packageName: 'react-boxplot',
|
||||
dependency: 'simple-statistics',
|
||||
},
|
||||
staticPreview: this.render({
|
||||
dependency: 'simple-statistics',
|
||||
range: '^6.1.1',
|
||||
}),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm (prod) dependency version (scoped)',
|
||||
pattern: ':scope?/:packageName/:dependencyScope?/:dependency',
|
||||
namedParams: {
|
||||
packageName: 'got',
|
||||
dependencyScope: '@sindresorhus',
|
||||
dependency: 'is',
|
||||
},
|
||||
staticPreview: this.render({
|
||||
dependency: '@sindresorhus/is',
|
||||
range: '^0.15.0',
|
||||
}),
|
||||
keywords,
|
||||
},
|
||||
]
|
||||
}
|
||||
|
||||
static get defaultBadgeData() {
|
||||
return {
|
||||
label: 'dependency',
|
||||
}
|
||||
static defaultBadgeData = {
|
||||
label: 'dependency',
|
||||
}
|
||||
|
||||
static render({ dependency, range }) {
|
||||
|
||||
@@ -46,32 +46,24 @@ const intervalMap = {
|
||||
// This hits an entirely different API from the rest of the NPM services, so
|
||||
// it does not use NpmBase.
|
||||
module.exports = class NpmDownloads extends BaseJsonService {
|
||||
static get category() {
|
||||
return 'downloads'
|
||||
static category = 'downloads'
|
||||
|
||||
static route = {
|
||||
base: 'npm',
|
||||
pattern: ':interval(dw|dm|dy|dt)/:scope(@.+)?/:packageName',
|
||||
}
|
||||
|
||||
static get route() {
|
||||
return {
|
||||
base: 'npm',
|
||||
pattern: ':interval(dw|dm|dy|dt)/:scope(@.+)?/:packageName',
|
||||
}
|
||||
}
|
||||
|
||||
static get examples() {
|
||||
return [
|
||||
{
|
||||
title: 'npm',
|
||||
namedParams: { interval: 'dw', packageName: 'localeval' },
|
||||
staticPreview: this.render({ interval: 'dw', downloadCount: 30000 }),
|
||||
keywords: ['node'],
|
||||
},
|
||||
]
|
||||
}
|
||||
static examples = [
|
||||
{
|
||||
title: 'npm',
|
||||
namedParams: { interval: 'dw', packageName: 'localeval' },
|
||||
staticPreview: this.render({ interval: 'dw', downloadCount: 30000 }),
|
||||
keywords: ['node'],
|
||||
},
|
||||
]
|
||||
|
||||
// For testing.
|
||||
static get _intervalMap() {
|
||||
return intervalMap
|
||||
}
|
||||
static _intervalMap = intervalMap
|
||||
|
||||
static render({ interval, downloadCount }) {
|
||||
const { messageSuffix } = intervalMap[interval]
|
||||
|
||||
@@ -5,33 +5,27 @@ const toArray = require('../../core/base-service/to-array')
|
||||
const NpmBase = require('./npm-base')
|
||||
|
||||
module.exports = class NpmLicense extends NpmBase {
|
||||
static get category() {
|
||||
return 'license'
|
||||
}
|
||||
static category = 'license'
|
||||
|
||||
static get route() {
|
||||
return this.buildRoute('npm/l', { withTag: false })
|
||||
}
|
||||
static route = this.buildRoute('npm/l', { withTag: false })
|
||||
|
||||
static get examples() {
|
||||
return [
|
||||
{
|
||||
title: 'NPM',
|
||||
pattern: ':packageName',
|
||||
namedParams: { packageName: 'express' },
|
||||
staticPreview: this.render({ licenses: ['MIT'] }),
|
||||
keywords: ['node'],
|
||||
},
|
||||
{
|
||||
title: 'NPM',
|
||||
pattern: ':packageName',
|
||||
namedParams: { packageName: 'express' },
|
||||
queryParams: { registry_uri: 'https://registry.npmjs.com' },
|
||||
staticPreview: this.render({ licenses: ['MIT'] }),
|
||||
keywords: ['node'],
|
||||
},
|
||||
]
|
||||
}
|
||||
static examples = [
|
||||
{
|
||||
title: 'NPM',
|
||||
pattern: ':packageName',
|
||||
namedParams: { packageName: 'express' },
|
||||
staticPreview: this.render({ licenses: ['MIT'] }),
|
||||
keywords: ['node'],
|
||||
},
|
||||
{
|
||||
title: 'NPM',
|
||||
pattern: ':packageName',
|
||||
namedParams: { packageName: 'express' },
|
||||
queryParams: { registry_uri: 'https://registry.npmjs.com' },
|
||||
staticPreview: this.render({ licenses: ['MIT'] }),
|
||||
keywords: ['node'],
|
||||
},
|
||||
]
|
||||
|
||||
static render({ licenses }) {
|
||||
return renderLicenseBadge({ licenses })
|
||||
|
||||
@@ -6,30 +6,24 @@ const NpmBase = require('./npm-base')
|
||||
// dependencies must be declared, or the `types` key must be set in
|
||||
// package.json.
|
||||
module.exports = class NpmTypeDefinitions extends NpmBase {
|
||||
static get category() {
|
||||
return 'platform-support'
|
||||
}
|
||||
static category = 'platform-support'
|
||||
|
||||
static get route() {
|
||||
return this.buildRoute('npm/types', { withTag: false })
|
||||
}
|
||||
static route = this.buildRoute('npm/types', { withTag: false })
|
||||
|
||||
static get examples() {
|
||||
return [
|
||||
{
|
||||
title: 'npm type definitions',
|
||||
pattern: ':packageName',
|
||||
namedParams: { packageName: 'chalk' },
|
||||
staticPreview: this.render({
|
||||
supportedLanguages: ['TypeScript', 'Flow'],
|
||||
}),
|
||||
keywords: ['node', 'typescript', 'flow'],
|
||||
},
|
||||
]
|
||||
}
|
||||
static examples = [
|
||||
{
|
||||
title: 'npm type definitions',
|
||||
pattern: ':packageName',
|
||||
namedParams: { packageName: 'chalk' },
|
||||
staticPreview: this.render({
|
||||
supportedLanguages: ['TypeScript', 'Flow'],
|
||||
}),
|
||||
keywords: ['node', 'typescript', 'flow'],
|
||||
},
|
||||
]
|
||||
|
||||
static get defaultBadgeData() {
|
||||
return { label: 'types' }
|
||||
static defaultBadgeData = {
|
||||
label: 'types',
|
||||
}
|
||||
|
||||
static render({ supportedLanguages }) {
|
||||
|
||||
@@ -14,57 +14,51 @@ const schema = Joi.object()
|
||||
.required()
|
||||
|
||||
module.exports = class NpmVersion extends NpmBase {
|
||||
static get category() {
|
||||
return 'version'
|
||||
}
|
||||
static category = 'version'
|
||||
|
||||
static get route() {
|
||||
return this.buildRoute('npm/v', { withTag: true })
|
||||
}
|
||||
static route = this.buildRoute('npm/v', { withTag: true })
|
||||
|
||||
static get examples() {
|
||||
return [
|
||||
{
|
||||
title: 'npm',
|
||||
pattern: ':packageName',
|
||||
namedParams: { packageName: 'npm' },
|
||||
staticPreview: this.render({ version: '6.3.0' }),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm (scoped)',
|
||||
pattern: ':scope/:packageName',
|
||||
namedParams: { scope: '@cycle', packageName: 'core' },
|
||||
staticPreview: this.render({ version: '7.0.0' }),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm (tag)',
|
||||
pattern: ':packageName/:tag',
|
||||
namedParams: { packageName: 'npm', tag: 'next' },
|
||||
staticPreview: this.render({ tag: 'latest', version: '6.3.0' }),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm (custom registry)',
|
||||
pattern: ':packageName/:tag',
|
||||
namedParams: { packageName: 'npm', tag: 'next' },
|
||||
queryParams: { registry_uri: 'https://registry.npmjs.com' },
|
||||
staticPreview: this.render({ tag: 'latest', version: '7.0.0' }),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm (scoped with tag)',
|
||||
pattern: ':scope/:packageName/:tag',
|
||||
namedParams: { scope: '@cycle', packageName: 'core', tag: 'canary' },
|
||||
staticPreview: this.render({ tag: 'latest', version: '6.3.0' }),
|
||||
keywords,
|
||||
},
|
||||
]
|
||||
}
|
||||
static examples = [
|
||||
{
|
||||
title: 'npm',
|
||||
pattern: ':packageName',
|
||||
namedParams: { packageName: 'npm' },
|
||||
staticPreview: this.render({ version: '6.3.0' }),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm (scoped)',
|
||||
pattern: ':scope/:packageName',
|
||||
namedParams: { scope: '@cycle', packageName: 'core' },
|
||||
staticPreview: this.render({ version: '7.0.0' }),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm (tag)',
|
||||
pattern: ':packageName/:tag',
|
||||
namedParams: { packageName: 'npm', tag: 'next' },
|
||||
staticPreview: this.render({ tag: 'latest', version: '6.3.0' }),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm (custom registry)',
|
||||
pattern: ':packageName/:tag',
|
||||
namedParams: { packageName: 'npm', tag: 'next' },
|
||||
queryParams: { registry_uri: 'https://registry.npmjs.com' },
|
||||
staticPreview: this.render({ tag: 'latest', version: '7.0.0' }),
|
||||
keywords,
|
||||
},
|
||||
{
|
||||
title: 'npm (scoped with tag)',
|
||||
pattern: ':scope/:packageName/:tag',
|
||||
namedParams: { scope: '@cycle', packageName: 'core', tag: 'canary' },
|
||||
staticPreview: this.render({ tag: 'latest', version: '6.3.0' }),
|
||||
keywords,
|
||||
},
|
||||
]
|
||||
|
||||
static get defaultBadgeData() {
|
||||
return { label: 'npm' }
|
||||
static defaultBadgeData = {
|
||||
label: 'npm',
|
||||
}
|
||||
|
||||
static render({ tag, version }) {
|
||||
|
||||
Reference in New Issue
Block a user