forked from MakcRe/KuGouMusicApi
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.js
27 lines (23 loc) · 865 Bytes
/
main.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
const fs = require('node:fs');
const path = require('path');
const { cookieToJson } = require('./util');
/** @type {Record<string, any>} */
let obj = {};
fs.readdirSync(path.join(__dirname, 'module'))
.reverse()
.forEach((file) => {
if (!file.endsWith('.js')) return;
let fileModule = require(path.join(__dirname, 'module', file));
let fn = file.split('.').shift() || '';
obj[fn] = (data = {}) => {
if (typeof data.cookie === 'string') data.cookie = cookieToJson(data.cookie);
return fileModule({ ...data, cookie: data.cookie ? data.cookie : {} }, (...args) => {
const { createRequest } = require('./util/request');
return createRequest(...args);
});
};
});
/**
* @type {Record<string, any> & import("./server")}
*/
module.exports = { ...require('./server'), ...require('./util/request'), ...obj };