osu-api-extended
Version:
Advanced osu! api wrapper for v1 and v2, with extra stuff
61 lines • 1.88 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("../../../request");
const fs_1 = __importDefault(require("fs"));
exports.description = {
auth: 4,
title: __filename,
method: 'GET',
description: 'Download \`\`\`.osu\`\`\` file',
params: [
{
type: 'number',
name: 'diff_id',
optional: false,
description: 'id of the beatmap',
},
{
type: 'number',
name: 'path',
optional: false,
description: 'Folder path',
},
{
type: 'string',
name: 'name',
optional: false,
description: 'File name (without extension)',
},
{
type: 'boolean',
name: 'overwrite',
optional: true,
description: 'Overwrite file',
},
],
};
;
const name = async (diff_id, path, name, overwrite) => {
if (!fs_1.default.existsSync(path))
fs_1.default.mkdirSync(path, { recursive: true });
let file = '';
if (name === undefined)
name = diff_id;
if (path !== undefined)
file = `${path}/${name}.osu`;
else
file = `${name}.osu`;
if (fs_1.default.existsSync(file) && overwrite != true)
return file;
const data = await (0, request_1.request)(`https://osu.ppy.sh/osu/${diff_id}`, { method: "GET" });
if (!data.includes('osu file format v'))
return null;
fs_1.default.writeFileSync(file, data, 'utf-8');
return file;
};
exports.default = name;
//# sourceMappingURL=difficulty.js.map
;