Skip to content

Commit 5ee6d9e

Browse files
authored
feat: add DList (#467)
* feat: add DList * [auto] docs: update docs
1 parent 7466275 commit 5ee6d9e

File tree

3 files changed

+70
-0
lines changed

3 files changed

+70
-0
lines changed

docs/general/services.md

+15
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,21 @@ Class: [DBots](/#/docs/main/$$$ref/class/DBots)
6868
Website: https://dbots.co/
6969
</div>
7070

71+
<div align=center>
72+
<p>
73+
<img src="https://avatars.githubusercontent.com/u/68995595" alt="dlistgg logo" width="100" align="left" />
74+
</p>
75+
<i id="dlistgg"></i>
76+
<i id="dlist.gg"></i>
77+
<i id="discordlistgg"></i>
78+
<i id="discordlist.gg"></i>
79+
<a href="https://discordlist.gg"><h1>dlist.gg</h1></a>
80+
81+
Keys: `dlistgg`, `dlist.gg`, `discordlistgg`, `discordlist.gg`
82+
Class: [DList](/#/docs/main/$$$ref/class/DList)
83+
Website: https://discordlist.gg
84+
</div>
85+
7186
<div align=center>
7287
<p>
7388
<img src="https://discord.boats/android-icon-192x192.png" alt="discordboats logo" width="100" align="left" />

src/Interface/ListIndex.ts

+5
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import Blist from './Lists/Blist'
77
import BotsOnDiscord from './Lists/BotsOnDiscord'
88
import Carbon from './Lists/Carbon'
99
import DBots from './Lists/DBots'
10+
import DList from './Lists/DList'
1011
import DiscordBoats from './Lists/DiscordBoats'
1112
import DiscordBotList from './Lists/DiscordBotList'
1213
import DiscordBotlistEU from './Lists/DiscordBotlistEU'
@@ -45,6 +46,10 @@ export const serviceList = {
4546
'carbon': Carbon,
4647
'dbots': DBots,
4748
'dbots.co': DBots,
49+
'dlistgg': DList,
50+
'dlist.gg': DList,
51+
'discordlistgg': DList,
52+
'discordlist.gg': DList,
4853
'discordboats': DiscordBoats,
4954
'discord.boats': DiscordBoats,
5055
'discordbotlist': DiscordBotList,

src/Interface/Lists/DList.ts

+50
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
import { Service, ServicePostOptions } from '../Service'
2+
import { Util } from '../../Utils/Util'
3+
4+
/**
5+
* Represents the dlist.gg service.
6+
* @see https://api.discordlist.gg/developers/
7+
*/
8+
export default class DList extends Service {
9+
/** The values that can be used to select the service. */
10+
static get aliases() {
11+
return ['dlistgg', 'dlist.gg', 'discordlistgg', 'discordlist.gg']
12+
}
13+
14+
/** The logo URL. */
15+
static get logoURL() {
16+
return 'https://avatars.githubusercontent.com/u/68995595'
17+
}
18+
19+
/** Service's name. */
20+
static get serviceName() {
21+
return 'dlist.gg'
22+
}
23+
24+
/** The website URL. */
25+
static get websiteURL() {
26+
return 'https://discordlist.gg'
27+
}
28+
29+
/** The base URL of the service's API. */
30+
static get baseURL() {
31+
return 'https://api.discordlist.gg/v0'
32+
}
33+
34+
/**
35+
* Posts statistics to this service.
36+
* <warn>Shard data posting is not supported for this service.</warn>
37+
* @param options The options of the request.
38+
*/
39+
static post(options: ServicePostOptions) {
40+
const { token, clientID, serverCount } = options
41+
return super._post({
42+
method: 'post',
43+
url: `/bots/${Util.resolveID(clientID)}/guilds`,
44+
headers: { Authorization: `Bearer ${token}` },
45+
params: {
46+
count: Util.resolveCount(serverCount)
47+
}
48+
})
49+
}
50+
}

0 commit comments

Comments
 (0)