This commit is contained in:
2025-12-31 10:37:42 +01:00
parent 05733b4ade
commit 515db80a79
7 changed files with 52 additions and 33 deletions
@@ -1,4 +1,4 @@
import { APIResponseObject } from "../../../types";
import { APIResponseObject, DsqlAdditionalLoginField } from "../../../types";
import loginUser from "../../../actions/users/login-user";
type Param = {
@@ -8,7 +8,7 @@ type Param = {
social_platform: string;
invitation?: any;
database?: string;
additionalFields?: string[];
additionalFields?: DsqlAdditionalLoginField[];
debug?: boolean;
};
@@ -189,14 +189,20 @@ export default async function apiLoginUser({
csrf: csrfKey,
};
if (
additionalFields &&
Array.isArray(additionalFields) &&
additionalFields.length > 0
) {
additionalFields.forEach((key) => {
userPayload[key] = foundUser[0][key];
});
if (Array.isArray(additionalFields)) {
for (let i = 0; i < additionalFields.length; i++) {
const additionalField = additionalFields[i];
if (typeof additionalField == "string") {
userPayload[additionalField] = foundUser[0][additionalField];
} else {
const keys = Object.keys(additionalField);
for (let i = 0; i < keys.length; i++) {
const key = keys[i];
userPayload[key] = additionalField[key];
}
}
}
}
return resposeObject;
+9 -7
View File
@@ -236,7 +236,7 @@ export interface DSQL_MYSQL_user_databases_Type {
export interface PackageUserLoginRequestBody {
encryptionKey: string;
payload: any;
additionalFields?: string[];
additionalFields?: DsqlAdditionalLoginField[];
email_login?: boolean;
email_login_code?: string;
email_login_field?: string;
@@ -249,7 +249,7 @@ export interface PackageUserLoginRequestBody {
export interface PackageUserLoginLocalBody {
payload: any;
additionalFields?: string[];
additionalFields?: DsqlAdditionalLoginField[];
email_login?: boolean;
email_login_code?: string;
email_login_field?: string;
@@ -1181,7 +1181,7 @@ export type APILoginFunctionParams = {
username?: string;
password?: string;
database: string;
additionalFields?: string[];
additionalFields?: DsqlAdditionalLoginField[];
email_login?: boolean;
email_login_code?: string;
email_login_field?: string;
@@ -1231,7 +1231,7 @@ export type APIGetUserFunctionParams = {
export type APIGoogleLoginFunctionParams = {
token: string;
database?: string;
additionalFields?: string[];
additionalFields?: DsqlAdditionalLoginField[];
additionalData?: { [key: string]: string | number };
debug?: boolean;
loginOnly?: boolean;
@@ -1251,7 +1251,7 @@ export type HandleSocialDbFunctionParams = {
payload: any;
invitation?: any;
supEmail?: string;
additionalFields?: string[];
additionalFields?: DsqlAdditionalLoginField[];
debug?: boolean;
loginOnly?: boolean;
social_id?: string | number;
@@ -2011,6 +2011,8 @@ export type DefaultEntryType = {
export const IndexTypes = ["regular", "full_text", "vector"] as const;
export type DsqlAdditionalLoginField = string | { [s: string]: any };
export type LoginUserParam = {
apiKey?: string;
database: string;
@@ -2019,7 +2021,7 @@ export type LoginUserParam = {
username?: string;
password?: string;
};
additionalFields?: string[];
additionalFields?: DsqlAdditionalLoginField[];
request?: IncomingMessage & { [s: string]: any };
response?: ServerResponse & { [s: string]: any };
encryptionKey?: string;
@@ -2583,7 +2585,7 @@ export type GoogleAuthParams = {
response?: ServerResponse;
encryptionKey?: string;
encryptionSalt?: string;
additionalFields?: string[];
additionalFields?: DsqlAdditionalLoginField[];
additionalData?: { [s: string]: string | number };
debug?: boolean;
secureCookie?: boolean;