freerasp-react-native
Version:
React Native plugin for improving app security and threat monitoring on Android and iOS mobile devices.
25 lines (22 loc) • 748 B
text/typescript
import type { PackageInfo, SuspiciousAppInfo } from '../types/types';
import { Buffer } from 'buffer';
export const parseMalwareData = async (
data: string[]
): Promise<SuspiciousAppInfo[]> => {
return new Promise((resolve, reject) => {
try {
resolve(data.map((entry) => toSuspiciousAppInfo(entry)));
} catch (error: any) {
reject(`Error while parsing app data: ${error}`);
}
});
};
export const toSuspiciousAppInfo = (base64Value: string): SuspiciousAppInfo => {
const data = JSON.parse(Buffer.from(base64Value, 'base64').toString('utf8'));
const packageInfo = data.packageInfo as PackageInfo;
return {
packageInfo,
reason: data.reason,
permissions: data.permissions,
} as SuspiciousAppInfo;
};