Fork Horse repository, listed by its owner. Publisher snapshot.

packages/forkhorse-dashboard/test/jsx-runtime.ts

Snapshot at 34e3175

Containing directory

618 bytes · typescriptView raw
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