12 lines
574 B
JavaScript
12 lines
574 B
JavaScript
import { readFile, writeFile } from "node:fs/promises";
|
|
import { parseIndex } from "./src/catalog.ts";
|
|
const books = parseIndex(await readFile(process.argv[2], "utf8"));
|
|
if (
|
|
books.length < 70000 ||
|
|
!books.some((b) => b.ebook === 1342 && b.title.includes("Pride")) ||
|
|
!books.some((b) => b.ebook === 11 && b.title.includes("Alice"))
|
|
)
|
|
throw Error("Gutenberg CSV format/coverage changed; review parser before updating pin");
|
|
await writeFile(process.argv[3], "export default " + JSON.stringify(books) + ";\n");
|
|
console.log("Indexed", books.length, "Gutenberg titles");
|