14 lines
770 B
TypeScript
14 lines
770 B
TypeScript
/** Qualification artifact emitted after tests, never a production fixture dependency. */
|
|||
|
|
import { mkdir, writeFile } from "node:fs/promises";
|
||
|
|
import { loadReaderWorkspace } from "./reader-fixture.js";
|
||
|
|
import { compileExecutionPlan } from "../src/execution-world/plan.js";
|
||
|
|
import { generatePortableTypeScriptBindings } from "../src/bindings/portable.js";
|
||
|
|
const plan = compileExecutionPlan(await loadReaderWorkspace());
|
||
|
|
await mkdir("dist/portable-reader", { recursive: true });
|
||
|
|
for (const target of ["browser", "server"])
|
||
|
|
await writeFile(
|
||
|
|
`dist/portable-reader/${target}.ts`,
|
||
|
|
generatePortableTypeScriptBindings(plan.definition.bindingSchema, "package:reader-runtime@1", { target }),
|
||
|
|
);
|
||
|
|
await writeFile("dist/portable-reader/plan.json", JSON.stringify(plan));
|