This commit is contained in:
Benjamin Toby
2025-01-14 11:53:57 +01:00
parent 03d4fdc270
commit 0731e8cb6c
14 changed files with 131 additions and 136 deletions
+2 -1
View File
@@ -21,6 +21,7 @@ type Param = {
user_id?: string | number;
skipPassword?: boolean;
useLocal?: boolean;
debug?: boolean;
skipWriteAuthFile?: boolean;
apiUserID?: string | number;
dbUserId?: string | number;
@@ -28,5 +29,5 @@ type Param = {
/**
* # Login A user
*/
export default function loginUser({ key, payload, database, additionalFields, response, encryptionKey, encryptionSalt, email_login, email_login_code, temp_code_field, token, user_id, skipPassword, useLocal, apiUserID, skipWriteAuthFile, dbUserId, }: Param): Promise<APILoginFunctionReturn>;
export default function loginUser({ key, payload, database, additionalFields, response, encryptionKey, encryptionSalt, email_login, email_login_code, temp_code_field, token, user_id, skipPassword, useLocal, apiUserID, skipWriteAuthFile, dbUserId, debug, }: Param): Promise<APILoginFunctionReturn>;
export {};
+13 -6
View File
@@ -24,7 +24,7 @@ const write_auth_files_1 = require("../package-shared/functions/backend/auth/wri
* # Login A user
*/
function loginUser(_a) {
return __awaiter(this, arguments, void 0, function* ({ key, payload, database, additionalFields, response, encryptionKey, encryptionSalt, email_login, email_login_code, temp_code_field, token, user_id, skipPassword, useLocal, apiUserID, skipWriteAuthFile, dbUserId, }) {
return __awaiter(this, arguments, void 0, function* ({ key, payload, database, additionalFields, response, encryptionKey, encryptionSalt, email_login, email_login_code, temp_code_field, token, user_id, skipPassword, useLocal, apiUserID, skipWriteAuthFile, dbUserId, debug, }) {
var _b;
const grabedHostNames = (0, grab_host_names_1.default)();
const { host, port, scheme } = grabedHostNames;
@@ -102,6 +102,7 @@ function loginUser(_a) {
token,
useLocal,
dbUserId,
debug,
});
}
else {
@@ -147,11 +148,9 @@ function loginUser(_a) {
httpsRequest.end();
});
}
/**
* Make https request
*
* @description make a request to datasquirel.com
*/
if (debug) {
console.log(`loginUser:httpResponse:`, httpResponse);
}
if (httpResponse === null || httpResponse === void 0 ? void 0 : httpResponse.success) {
let encryptedPayload = (0, encrypt_1.default)({
data: JSON.stringify(httpResponse.payload),
@@ -174,10 +173,18 @@ function loginUser(_a) {
httpResponse["key"] = String(encryptedPayload);
const authKeyName = cookieNames.keyCookieName;
const csrfName = cookieNames.csrfCookieName;
if (debug) {
console.log(`loginUser:authKeyName:`, authKeyName);
console.log(`loginUser:csrfName:`, csrfName);
console.log(`loginUser:encryptedPayload:`, encryptedPayload);
}
response === null || response === void 0 ? void 0 : response.setHeader("Set-Cookie", [
`${authKeyName}=${encryptedPayload};samesite=strict;path=/;HttpOnly=true;Secure=true`,
`${csrfName}=${(_b = httpResponse.payload) === null || _b === void 0 ? void 0 : _b.csrf_k};samesite=strict;path=/;HttpOnly=true`,
]);
if (debug) {
console.log(`loginUser:Response Sent!`);
}
}
return httpResponse;
});