This commit is contained in:
Asaki Yuki 2026-01-28 11:37:43 +07:00
parent 7a43d233e3
commit 3158c3cec8
5 changed files with 35 additions and 21 deletions

View file

@ -2,14 +2,23 @@ import fs from "fs/promises"
import { BuildCache } from "./buildcache.js"
import { RandomString } from "../../components/Utils.js"
const HEX: string[] = Array.from({ length: 256 }, (_, i) => i.toString(16).toUpperCase().padStart(2, "0"))
function genUUID() {
const HEX: string[] = Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, "0"))
function genUUID(): string {
const b = Array.from({ length: 16 }, () => Math.floor(Math.random() * 256))
return `${HEX[b[0]]}${HEX[b[1]]}${HEX[b[2]]}${HEX[b[3]]}-${HEX[b[4]]}${HEX[b[5]]}-${
HEX[b[6]]
}${HEX[b[7]]}-${HEX[b[8]]}${HEX[b[9]]}-${HEX[b[10]]}${HEX[b[11]]}${HEX[b[12]]}${
HEX[b[13]]
}${HEX[b[14]]}${HEX[b[15]]}`
// version 4
b[6] = (b[6] & 0x0f) | 0x40
// variant 10xx
b[8] = (b[8] & 0x3f) | 0x80
return (
`${HEX[b[0]]}${HEX[b[1]]}${HEX[b[2]]}${HEX[b[3]]}-` +
`${HEX[b[4]]}${HEX[b[5]]}-` +
`${HEX[b[6]]}${HEX[b[7]]}-` +
`${HEX[b[8]]}${HEX[b[9]]}-` +
`${HEX[b[10]]}${HEX[b[11]]}${HEX[b[12]]}${HEX[b[13]]}${HEX[b[14]]}${HEX[b[15]]}`
)
}
export async function clearBuild() {