Fixed tsc build errors

This commit is contained in:
RemixDev
2021-05-23 22:42:02 +02:00
parent 05a892565b
commit f33cbcb7d0
55 changed files with 1305 additions and 37 deletions

View File

@@ -0,0 +1,48 @@
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
// @ts-expect-error
const deezer_js_1 = require("deezer-js");
const main_1 = require("../../../main");
const path = '/addToQueue';
const handler = (req, res) => __awaiter(void 0, void 0, void 0, function* () {
if (!main_1.sessionDZ[req.session.id])
main_1.sessionDZ[req.session.id] = new deezer_js_1.Deezer();
const dz = main_1.sessionDZ[req.session.id];
const url = req.query.url.split(';');
let bitrate = req.query.bitrate;
if (bitrate === 'null')
bitrate = main_1.settings.maxBitrate;
let obj;
try {
obj = yield main_1.addToQueue(dz, url, bitrate);
}
catch (e) {
switch (e.name) {
case 'AlreadyInQueue':
res.send({ result: false, errid: e.name, data: { url, bitrate, obj: e.item } });
main_1.listener.send('alreadyInQueue', e.item);
break;
case 'NotLoggedIn':
res.send({ result: false, errid: e.name, data: { url, bitrate } });
main_1.listener.send('loginNeededToDownload');
break;
default:
console.error(e);
res.send({ result: false, errid: e.name, data: { url, bitrate } });
break;
}
return;
}
res.send({ result: true, data: { url, bitrate, obj } });
});
const apiHandler = { path, handler };
exports.default = apiHandler;

View File

@@ -0,0 +1 @@
"use strict";

View File

@@ -1,3 +1,9 @@
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = [];
const login_arl_1 = __importDefault(require("./login-arl"));
const addToQueue_1 = __importDefault(require("./addToQueue"));
const loginWithCredentials_1 = __importDefault(require("./loginWithCredentials"));
exports.default = [login_arl_1.default, addToQueue_1.default, loginWithCredentials_1.default];

View File

@@ -0,0 +1,62 @@
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
// @ts-expect-error
const deezer_js_1 = require("deezer-js");
const main_1 = require("../../../main");
const LoginStatus = {
NOT_AVAILABLE: -1,
FAILED: 0,
SUCCESS: 1,
ALREADY_LOGGED: 2,
FORCED_SUCCESS: 3
};
const path = '/login-arl/';
const handler = (req, res, next) => __awaiter(void 0, void 0, void 0, function* () {
if (!main_1.sessionDZ[req.session.id])
main_1.sessionDZ[req.session.id] = new deezer_js_1.Deezer();
const dz = main_1.sessionDZ[req.session.id];
if (!req.query) {
res.status(400).send();
return next();
}
if (!req.query.arl) {
res.status(400).send();
return next();
}
const loginParams = [req.query.arl];
// TODO Handle the child === 0 case, don't want to rely on the login_via_arl default param (it may change in the
// future)
if (req.query.child) {
loginParams.push(req.query.child);
}
let response;
if (process.env.NODE_ENV !== 'test') {
if (!dz.logged_in) {
response = yield dz.login_via_arl(...loginParams);
response = response ? 1 : 0;
}
else {
response = LoginStatus.ALREADY_LOGGED;
}
}
else {
const testDz = new deezer_js_1.Deezer();
response = yield testDz.login_via_arl(...loginParams);
}
console.log(response);
const returnValue = { status: response, arl: req.query.arl, user: dz.current_user };
res.status(200).send(returnValue);
main_1.startQueue(dz);
next();
});
const apiHandler = { path, handler };
exports.default = apiHandler;

View File

@@ -0,0 +1,41 @@
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
const utils_1 = require("../../../../tests/utils");
describe('login-arl requests', () => {
it('should respond 200 to calls with arl', () => __awaiter(void 0, void 0, void 0, function* () {
const responseStatusCollector = [];
const batchCalls = ['/api/login-arl/?arl=abcdef1234'];
for (const uri of batchCalls) {
responseStatusCollector.push((yield utils_1.appSendPost(uri)).status);
}
expect(responseStatusCollector).toMatchObject(new Array(batchCalls.length).fill(200));
expect(responseStatusCollector).toMatchObject(new Array(responseStatusCollector.length).fill(200));
}));
it('should respond 400 to calls without arl', () => __awaiter(void 0, void 0, void 0, function* () {
const responseStatusCollector = [];
const batchCalls = ['/api/login-arl/', '/api/login-arl/?dummy=test', '/api/login-arl/?email=aaa@aa.com'];
for (const uri of batchCalls) {
responseStatusCollector.push((yield utils_1.appSendPost(uri)).status);
}
expect(responseStatusCollector).toMatchObject(new Array(responseStatusCollector.length).fill(400));
}));
it('should login using ARL', () => __awaiter(void 0, void 0, void 0, function* () {
const response = yield utils_1.appSendPost(`/api/login-arl/?arl=${process.env.DEEZER_ARL}`);
expect(response.status).toBe(200);
expect(response.body).toBe(true);
}));
it('should not login using wrong ARL', () => __awaiter(void 0, void 0, void 0, function* () {
const response = yield utils_1.appSendPost(`/api/login-arl/?arl=abcdef1234`);
expect(response.status).toBe(200);
expect(response.body).toBe(false);
}));
});

View File

@@ -0,0 +1,27 @@
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
const main_1 = require("../../../main");
const path = '/loginWithCredentials';
const handler = (req, res) => __awaiter(void 0, void 0, void 0, function* () {
const { username, password } = req.body;
let accessToken = req.body.accessToken;
if (!accessToken) {
const accessToken = yield main_1.getAccessToken(username, password);
console.log({ accessToken });
}
let arl;
if (accessToken)
arl = main_1.getArlFromAccessToken(accessToken);
res.send({ accessToken, arl });
});
const apiHandler = { path, handler };
exports.default = apiHandler;

1
server/dist/routes/api/post/logout.js vendored Normal file
View File

@@ -0,0 +1 @@
"use strict";

View File

@@ -0,0 +1 @@
"use strict";

View File

@@ -0,0 +1 @@
"use strict";

View File

@@ -0,0 +1 @@
"use strict";