18 lines
914 B
JavaScript
18 lines
914 B
JavaScript
import crypto from "node:crypto";
|
|
import fs from "node:fs";
|
|
import path from "node:path";
|
|
|
|
const root = path.resolve(new URL("../..", import.meta.url).pathname);
|
|
const assets = {
|
|
"web/app/src/vendor/three/three.module.js": "bbf5ed13fe4373f5bd38b14ea8e62e9f157327da5638edc6d3863e08b167c9c7",
|
|
"web/app/src/vendor/three/three.core.js": "3718df126d69c125362a03340913204470d8c50238605150e57f808840fb7759",
|
|
"web/app/src/vendor/three/addons/controls/OrbitControls.js": "1e08bf297c9062aa5055a9d649d8a8458c3871aa31c7d600f535a06f567e7cad",
|
|
};
|
|
|
|
for (const [relativePath, expected] of Object.entries(assets)) {
|
|
const filePath = path.join(root, relativePath);
|
|
const actual = crypto.createHash("sha256").update(fs.readFileSync(filePath)).digest("hex");
|
|
if (actual !== expected) throw new Error(`Three.js vendor hash mismatch: ${relativePath}`);
|
|
}
|
|
console.log(`three-vendor-ok assets=${Object.keys(assets).length}`);
|