mirror of
https://github.com/badgen/badgen.net.git
synced 2025-04-19 05:42:17 +03:00
chore: deprecate gitter badge (#669)
This commit is contained in:
parent
cf6798eca4
commit
50577c9792
@ -1,39 +0,0 @@
|
||||
import got from '../libs/got'
|
||||
import { millify } from '../libs/utils'
|
||||
import { createBadgenHandler, PathArgs } from '../libs/create-badgen-handler'
|
||||
|
||||
const BRAND_COLOR = 'ED1965'
|
||||
|
||||
export default createBadgenHandler({
|
||||
title: 'Gitter',
|
||||
examples: {
|
||||
'/gitter/members/redom/lobby': 'members',
|
||||
'/gitter/members/redom/redom': 'members'
|
||||
},
|
||||
handlers: {
|
||||
'/gitter/members/:org/:room': handler
|
||||
}
|
||||
})
|
||||
|
||||
async function handler ({ org, room }: PathArgs) {
|
||||
const membersCount = await fetchMembersCount(org, room)
|
||||
if (Number.isNaN(membersCount)) {
|
||||
return {
|
||||
subject: 'gitter',
|
||||
status: 'unknown',
|
||||
color: 'grey'
|
||||
}
|
||||
}
|
||||
|
||||
const suffix = membersCount === 1 ? 'member' : 'members'
|
||||
return {
|
||||
subject: 'gitter',
|
||||
status: `${millify(membersCount)} ${suffix}`,
|
||||
color: BRAND_COLOR
|
||||
}
|
||||
}
|
||||
|
||||
export async function fetchMembersCount(org: string, room: string) {
|
||||
const html = await got(`https://gitter.im/${org}/${room}`).text()
|
||||
return Number(html.match(/"userCount"\s*:\s*(\d+)/)?.[1])
|
||||
}
|
@ -41,8 +41,6 @@ export const liveBadgeList = [
|
||||
// social
|
||||
'devrant',
|
||||
'reddit',
|
||||
// chat
|
||||
'gitter',
|
||||
// utilities
|
||||
'opencollective',
|
||||
'keybase',
|
||||
@ -55,7 +53,7 @@ export const liveBadgeList = [
|
||||
|
||||
export async function loadBadgeMeta() {
|
||||
const liveBadgeExamples = await Promise.all(liveBadgeList.map(async id => {
|
||||
const mod = await import(rel('../api-', id))
|
||||
const mod = await import(rel('../api-legacy', id))
|
||||
const { title, examples, handlers } = mod.default.meta
|
||||
|
||||
return {
|
||||
|
@ -2,7 +2,7 @@ import got from 'got'
|
||||
|
||||
export default got.extend({
|
||||
timeout: {
|
||||
request: 4600,
|
||||
request: 6400,
|
||||
},
|
||||
retry: {
|
||||
limit: 0,
|
||||
|
@ -54,6 +54,7 @@ const nextConfig = {
|
||||
'/xo',
|
||||
// social network
|
||||
'/discord',
|
||||
'/gitter',
|
||||
'/matrix',
|
||||
'/runkit',
|
||||
'/peertube',
|
||||
|
@ -1,7 +1,6 @@
|
||||
import { Got } from 'got'
|
||||
import got from '../../libs/got'
|
||||
import { millify } from '../../libs/utils'
|
||||
import { fetchMembersCount as fetchGitterMembersCount } from '../../api-/gitter'
|
||||
import { createBadgenHandler, PathArgs } from '../../libs/create-badgen-handler-next'
|
||||
|
||||
const BRAND_COLOR = 'black'
|
||||
@ -12,7 +11,6 @@ export default createBadgenHandler({
|
||||
'/matrix/members/rust/matrix.org': 'members',
|
||||
'/matrix/members/thisweekinmatrix': 'members',
|
||||
'/matrix/members/archlinux/archlinux.org': 'members',
|
||||
'/matrix/members/redom_redom/gitter.im': 'members'
|
||||
},
|
||||
handlers: {
|
||||
'/matrix/members/:room/:server?': handler
|
||||
@ -44,10 +42,6 @@ async function handler ({ room, server = 'matrix.org' }: PathArgs) {
|
||||
}
|
||||
|
||||
async function fetchMembersCount(roomName: string, server: string) {
|
||||
if (server === 'gitter.im') {
|
||||
const [gitterOrg, gitterRoom] = roomName.split('_')
|
||||
return fetchGitterMembersCount(gitterOrg, gitterRoom)
|
||||
}
|
||||
const homeserver = await getHomeserver(server)
|
||||
const client = got.extend({ prefixUrl: `${homeserver}/_matrix/client/r0` })
|
||||
const roomAlias = `#${roomName}:${server}`
|
||||
|
@ -29,7 +29,7 @@
|
||||
]
|
||||
},
|
||||
"include": [
|
||||
"api-",
|
||||
"api-legacy",
|
||||
"libs",
|
||||
"index.ts",
|
||||
"components",
|
||||
|
Loading…
x
Reference in New Issue
Block a user