blob: 23fbd5429944fbaa95034abc3e163aa08bd558b3 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 | export const te = new TextEncoder();
export const td = new TextDecoder();
export function concat(parts: Uint8Array[]): Uint8Array {
let len = 0;
for (const p of parts) len += p.length;
const out = new Uint8Array(len);
let off = 0;
for (const p of parts) {
out.set(p, off);
off += p.length;
}
return out;
}
export function toHex(b: Uint8Array): string {
let s = "";
for (let i = 0; i < b.length; i++) s += b[i].toString(16).padStart(2, "0");
return s;
}
export function fromHex(s: string): Uint8Array {
const out = new Uint8Array(s.length / 2);
for (let i = 0; i < out.length; i++) out[i] = parseInt(s.slice(i * 2, i * 2 + 2), 16);
return out;
}
export const ZERO_OID = "0".repeat(40);
export function isOid(s: string): boolean {
return /^[0-9a-f]{40}$/.test(s);
}
export function sha1hex(data: Uint8Array): string {
return toHex(sha1(data));
}
import { sha1 } from "./sha1";
export { sha1, Sha1 } from "./sha1";
|