Files
self/app/utils/utils.ts
2023-11-25 11:12:21 +01:00

42 lines
1.3 KiB
TypeScript

export function getFirstName(mrz: string): string {
const names = mrz.split("<<");
const firstName = names[1].split("<")[0].trim();
const capitalized = firstName.charAt(0) + firstName.slice(1).toLowerCase();
return capitalized || "Unknown";
}
export function formatDuration(durationInMs: number) {
const durationInSeconds = durationInMs / 1000;
const minutes = Math.floor((durationInSeconds % 3600) / 60);
const seconds = Math.floor(durationInSeconds % 60);
return minutes > 0 ? `${minutes}m ${seconds}s` : `${seconds}s`;
}
export function formatProof(proof: any) {
const formattedProof: { [key: string]: any } = {};
for (const key in proof) {
if (Object.hasOwnProperty.call(proof, key)) {
const element = proof[key];
if (key === 'b') {
// Special formatting for 'b'
formattedProof[key] = element.map((complex: string) => {
const matches = complex.match(/QuadExtField\(([^)]+)\)/);
if (matches && matches[1]) {
return matches[1].split(' + ').map(num => {
return num.replace(' * u', '').trim();
});
}
return [];
});
} else {
// Direct copy for 'a' and 'c'
formattedProof[key] = [...element];
}
}
}
return formattedProof;
}