Files
zopu-code/repos/effect/scripts/codemod.mjs

23 lines
770 B
JavaScript

// @ts-check
// Runs the JSDoc placement codemod used before snapshot and release builds.
// The transformer keeps exported API docs attached to nested signature/type
// nodes that can otherwise lose their leading comments during doc generation.
import * as Glob from "glob"
import * as Jscodeshift from "jscodeshift/src/Runner.js"
import * as Path from "node:path"
// Look up files in all workspace packages including those nested in
// sub-packages (e.g. `packages/ai/openapi`).
const pattern = "packages/{*,*/*}/src/**/*.ts"
const paths = Glob.globSync(pattern, {
ignore: ["**/internal/**"]
}).map((path) => Path.resolve(path))
const transformer = Path.resolve("scripts/codemods/jsdoc.ts")
Jscodeshift.run(transformer, paths, {
babel: true,
parser: "ts"
})