kopia lustrzana https://github.com/badgen/badgen.net
badge(melpa): Add MELPA service (#461)
rodzic
03f0acf1b4
commit
aa5c80702e
|
@ -0,0 +1,29 @@
|
||||||
|
import got from '../libs/got'
|
||||||
|
import { version, versionColor } from '../libs/utils'
|
||||||
|
import { createBadgenHandler, PathArgs } from '../libs/create-badgen-handler'
|
||||||
|
|
||||||
|
export default createBadgenHandler({
|
||||||
|
title: 'MELPA',
|
||||||
|
examples: {
|
||||||
|
'/melpa/v/magit': 'version'
|
||||||
|
},
|
||||||
|
handlers: {
|
||||||
|
'/melpa/:topic<v>/:pkg': handler
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
async function handler ({ topic, pkg }: PathArgs) {
|
||||||
|
const badgeUrl = `https://melpa.org/packages/${pkg}-badge.svg`
|
||||||
|
const svg = await got(badgeUrl).text()
|
||||||
|
const title = svg.match(/<title>([^<]+)<\//i)?.[1].trim()
|
||||||
|
const ver = title?.split(':')?.[1]
|
||||||
|
|
||||||
|
switch (topic) {
|
||||||
|
case 'v':
|
||||||
|
return {
|
||||||
|
subject: 'melpa',
|
||||||
|
status: version(ver),
|
||||||
|
color: versionColor(ver)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -25,6 +25,7 @@ export const liveBadgeList = [
|
||||||
'apm',
|
'apm',
|
||||||
'hackage',
|
'hackage',
|
||||||
'vs-marketplace',
|
'vs-marketplace',
|
||||||
|
'melpa',
|
||||||
'maven',
|
'maven',
|
||||||
'cocoapods',
|
'cocoapods',
|
||||||
'haxelib',
|
'haxelib',
|
||||||
|
|
Ładowanie…
Reference in New Issue