@signalapp/mock-server
Version:
Mock Signal Server for writing tests
32 lines (31 loc) • 1.19 kB
JavaScript
;
// Copyright 2026 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.parsePassword = parsePassword;
exports.auth = auth;
const debug_1 = __importDefault(require("debug"));
const micro_1 = require("micro");
const util_1 = require("../util");
const debug = (0, debug_1.default)('mock:server:base');
function parsePassword(req) {
return (0, util_1.parseAuthHeader)(req.headers.authorization);
}
async function auth(server, req, res) {
const { username, password, error } = parsePassword(req);
if (error) {
debug('%s %s auth failed, error %j', req.method, req.url, error);
void (0, micro_1.send)(res, 401, { error });
return;
}
const device = await server.auth(username ?? '', password ?? '');
if (!device) {
debug('%s %s auth failed, need re-provisioning', req.method, req.url);
void (0, micro_1.send)(res, 401, { error: 'Need re-provisioning' });
return;
}
return device;
}