ggez-banking-sdk
Version:
A Node.js package to handle GGEZ Banking API endpoints, Simplify the process of managing CRUD operations with this efficient and easy-to-use package.
73 lines (72 loc) • 2.43 kB
JavaScript
import { AuthorizationOperationRequestType, DeviceType, EntityStatus, } from "../../../constant";
import { ClientHelper } from "../../../helper";
import { createDefaultUserData } from "./user";
const fillCreateDeviceData = (data) => {
const clientHelper = new ClientHelper();
const device = {
type: DeviceType.Browser,
brand: `${clientHelper.getBrowser()}-${clientHelper.getBrowserVersion()}`,
os: clientHelper.getOS(),
status: EntityStatus.Active,
verification_status: data.deviceVerificationStatus,
installation_id: data.installationID,
extended_info: {
cpu: clientHelper.getCPU(),
system_language: clientHelper.getSystemLanguage(),
user_agent: clientHelper.getUserAgent(),
},
};
return createDefaultUserData({ device: [device] });
};
const fillUpdateDeviceData = (data) => {
const device = {
id: data.id,
type: DeviceType.Browser,
status: data?.deviceStatus,
verification_status: data?.deviceVerificationStatus,
is_online: data?.deviceIsOnline,
};
return createDefaultUserData({ device: [device] });
};
const fillLogoutDeviceData = (data) => {
const device = {
id: data.id,
};
return createDefaultUserData({ device: [device] });
};
const fillVerifyDeviceData = (data) => {
const securityData = {
info: {
type: data.authenticationType,
authorization_request_type: AuthorizationOperationRequestType.Update_Device_Verification_Status,
},
verify_data: {
device: {
id: data.id,
},
},
};
return securityData;
};
const fillConfirmDeviceData = (data) => {
const securityData = {
info: {
type: data.authenticationType,
authorization_request_type: AuthorizationOperationRequestType.Update_Device_Verification_Status,
},
verify_data: {
device: { id: data.id },
},
confirm_data: {
verification_code: data.code,
},
};
return securityData;
};
const fillDeleteDeviceData = (data) => {
const device = {
id: data.id,
};
return createDefaultUserData({ device: [device] });
};
export { fillCreateDeviceData, fillUpdateDeviceData, fillLogoutDeviceData, fillVerifyDeviceData, fillConfirmDeviceData, fillDeleteDeviceData, };