osu-api-extended
Version:
Advanced osu! api wrapper for v1 and v2, with extra stuff
87 lines • 2.57 kB
JavaScript
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.description = void 0;
const request_1 = require("../../../../utility/request");
const mods_1 = require("../../../../utility/mods");
const scores_1 = __importDefault(require("../../form/beatmap/scores"));
const request = (0, request_1.namespace)('https://osu.ppy.sh/api/');
const _mode = [
'osu',
'taiko',
'fruits',
'mania',
];
exports.description = {
auth: 2,
title: __filename,
method: 'GET',
description: 'Return scores from beatmap',
params: [
{
type: 'number',
name: 'id',
optional: false,
description: 'id of the beatmap',
},
{
type: 'string',
name: 'mode',
optional: true,
description: '\`\`\`osu\`\`\` or \`\`\`fruits\`\`\` or \`\`\`mania\`\`\` or \`\`\`taiko\`\`\`',
},
{
type: 'string',
name: 'converted',
optional: true,
description: '\`\`\`0\`\`\` or \`\`\`1\`\`\`',
},
{
type: 'string',
name: 'hash',
optional: true,
description: 'beatmap file hash',
},
{
type: 'string',
name: 'limit',
optional: true,
description: 'Maximum number of results',
},
{
type: 'string/number',
name: 'mods',
optional: true,
description: 'Name of the mods \`\`\`HDDT\`\`\` or mods number \`\`\`72\`\`\`',
},
{
type: 'string',
name: 'since',
optional: true,
description: 'Return all beatmaps ranked or loved since this date. Must be a MySQL date. In UTC',
},
],
};
;
const name = async (id, obj = {}) => {
const params = {
b: id,
u: obj.user,
m: _mode.indexOf(obj.mode),
mods: (0, mods_1.id)(obj.mods),
type: obj.type,
limit: obj.limit,
};
const data = await request(`get_scores`, {
method: 'GET',
params: params,
});
if (data.length == 0)
return null;
const format = (0, scores_1.default)(data, obj.mode);
return format;
};
exports.default = name;
//# sourceMappingURL=scores.js.map
;