Copy static files to docs/site directory

This commit is contained in:
Diego Marcos Segura
2025-05-31 00:32:17 -07:00
parent 8cba08aabb
commit 25aeb499b0
7 changed files with 58 additions and 36 deletions
-32
View File
@@ -1,32 +0,0 @@
import fs from "node:fs";
import { copyFile, mkdir, rename, rmSync } from "node:fs/promises";
import path from "node:path";
function copyDir(src, dest) {
if (!fs.existsSync(dest)) {
fs.mkdirSync(dest, { recursive: true });
}
for (const entry of fs.readdirSync(src, { withFileTypes: true })) {
const srcPath = path.join(src, entry.name);
const destPath = path.join(dest, entry.name);
if (entry.isDirectory()) {
copyDir(srcPath, destPath);
} else {
fs.copyFileSync(srcPath, destPath);
}
}
}
// Example usage:
const sourceDir = "examples";
const destinationDir = "site/examples";
copyDir("examples", "site/examples");
await copyFile("index.html", "site/examples/index.html");
await rename("site/examples/viewer", "site/viewer");
await mkdir("site/examples/vendor", { recursive: true });
copyDir("node_modules/three", "site/examples/js/vendor/three");
copyDir("dist", "site/dist");
console.log("Site generated in site directory.");
+21
View File
@@ -0,0 +1,21 @@
import fs from "node:fs";
import { copyFile, mkdir, rename, rm } from "node:fs/promises";
import path from "node:path";
const examplesDirectory = "docs/examples";
if (fs.existsSync(examplesDirectory)) {
await rm(examplesDirectory, { recursive: true, force: true });
console.log(`Directory ${examplesDirectory} deleted`);
}
const distDirectory = "docs/dist";
if (fs.existsSync(distDirectory)) {
await rm(distDirectory, { recursive: true, force: true });
console.log(`Directory ${distDirectory} deleted`);
}
const viewerDirectory = "docs/viewer";
if (fs.existsSync(viewerDirectory)) {
await rm(viewerDirectory, { recursive: true, force: true });
console.log(`Directory ${viewerDirectory} deleted`);
}
+29
View File
@@ -0,0 +1,29 @@
import fs from "node:fs";
import { copyFile, mkdir, rename } from "node:fs/promises";
import path from "node:path";
function copyDir(src, dest) {
if (!fs.existsSync(dest)) {
fs.mkdirSync(dest, { recursive: true });
}
for (const entry of fs.readdirSync(src, { withFileTypes: true })) {
const srcPath = path.join(src, entry.name);
const destPath = path.join(dest, entry.name);
if (entry.isDirectory()) {
copyDir(srcPath, destPath);
} else {
fs.copyFileSync(srcPath, destPath);
}
}
}
// Copy static files to docs directory.
copyDir("examples", "docs/examples");
await copyFile("examples.html", "docs/examples/index.html");
await rename("docs/examples/viewer", "docs/viewer");
await mkdir("docs/examples/vendor", { recursive: true });
copyDir("node_modules/three", "docs/examples/js/vendor/three");
copyDir("dist", "docs/dist");
console.log("Site generated in docs directory.");