Fork Horse repository, listed by its owner. Publisher snapshot.
packages/forkhorse-dashboard/test/jsx-runtime.ts
Snapshot at 34e3175
1import { registerHooks } from "node:module";
2import { readFileSync } from "node:fs";
3import { transformSync } from "esbuild";
4
5// Node strips TypeScript but cannot parse JSX. This hook is confined to DOM fixture tests;
6// Workers still use the actual workerd suite, with FH-008b's real asset build prerequisite.
7registerHooks({
8 load(url, context, nextLoad) {
9 if (!url.endsWith(".tsx")) return nextLoad(url, context);
10 return {
11 format: "module",
12 shortCircuit: true,
13 source: transformSync(readFileSync(new URL(url), "utf8"), { loader: "tsx", jsx: "automatic" })
14 .code,
15 };
16 },
17});
18