Binato/server/Util.ts

39 lines
813 B
TypeScript
Raw Normal View History

2022-11-17 00:29:07 +00:00
import { randomBytes } from "crypto";
export function generateSession() : Promise<string> {
return new Promise<string>((resolve, reject) => {
randomBytes(12, (err, buf) => {
if (err) {
return reject(err);
}
resolve(buf.toString("hex"));
});
});
}
2022-11-19 15:06:03 +00:00
export function hexlify(data:Buffer) : string {
let out:string = "";
for (let i = 0; i < data.length; i++) {
const hex = data[i].toString(16);
if (hex.length === 1) {
out += `0${hex.toUpperCase()},`;
} else {
out += `${hex.toUpperCase()},`;
}
}
return out.slice(0, out.length - 1);
2022-11-20 23:37:39 +00:00
}
export function isNullOrEmpty(str:string | undefined | null) {
if (typeof(str) === "string") {
return str !== "";
}
return false;
}
export function enumHasFlag(value:number, flag:number) : boolean {
return (value & flag) === flag;
2022-11-16 15:25:46 +00:00
}