forked from MakcRe/KuGouMusicApi
-
Notifications
You must be signed in to change notification settings - Fork 0
/
main.js
29 lines (24 loc) · 852 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
28
29
const fs = require('node:fs');
const path = require('path');
const tmpPath = require('os').tmpdir();
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 request = require('./util/request');
return request(...args);
});
});
/**
* @type {Record<string, any> & import("./server")}
*/
module.exports = { ...require('./server'), ...obj };