From b7390a2bedd133e414e1b99b4038f9bfff172883 Mon Sep 17 00:00:00 2001 From: Ben Dixon Date: Tue, 22 Sep 2026 15:12:01 +0100 Subject: [PATCH 1/3] feat: add placeholder module exports to `@cloudflare/codemods` --- packages/codemods/package.json | 6 ++++++ packages/codemods/src/index.ts | 1 + packages/codemods/tsup.config.ts | 19 +++++++++++++++++++ 3 files changed, 26 insertions(+) create mode 100644 packages/codemods/src/index.ts diff --git a/packages/codemods/package.json b/packages/codemods/package.json index 38a391ab525..2ae643ed5fb 100644 --- a/packages/codemods/package.json +++ b/packages/codemods/package.json @@ -25,6 +25,12 @@ "dist" ], "type": "module", + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": "./dist/index.mjs" + } + }, "publishConfig": { "access": "public" }, diff --git a/packages/codemods/src/index.ts b/packages/codemods/src/index.ts new file mode 100644 index 00000000000..cb0ff5c3b54 --- /dev/null +++ b/packages/codemods/src/index.ts @@ -0,0 +1 @@ +export {}; diff --git a/packages/codemods/tsup.config.ts b/packages/codemods/tsup.config.ts index 38549d4eb44..24f1ee6ab10 100644 --- a/packages/codemods/tsup.config.ts +++ b/packages/codemods/tsup.config.ts @@ -18,4 +18,23 @@ export default defineConfig(() => [ }, noExternal: [/.*/], }, + { + banner: { + js: 'import { createRequire as __createRequire } from "node:module"; const require = __createRequire(import.meta.url);', + }, + dts: true, + entry: { + index: "src/index.ts", + }, + format: "esm", + keepNames: true, + metafile: true, + noExternal: [/.*/], + outDir: "dist", + outExtension: () => ({ js: ".mjs" }), + platform: "node", + sourcemap: process.env.SOURCEMAPS !== "false", + treeshake: true, + tsconfig: "tsconfig.json", + }, ]); From eb6e6bf6b11530116d4326abbd440c909eb0c8e1 Mon Sep 17 00:00:00 2001 From: Ben Dixon Date: Tue, 22 Sep 2026 18:48:06 +0100 Subject: [PATCH 2/3] chore: update worker SDK --- .changeset/public-codemods-entrypoint.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 .changeset/public-codemods-entrypoint.md diff --git a/.changeset/public-codemods-entrypoint.md b/.changeset/public-codemods-entrypoint.md new file mode 100644 index 00000000000..6d0ab3a8904 --- /dev/null +++ b/.changeset/public-codemods-entrypoint.md @@ -0,0 +1,7 @@ +--- +"@cloudflare/codemods": minor +--- + +Add a public module entrypoint for programmatic codemod APIs + +The package now publishes ESM and TypeScript declaration entrypoints so codemod functions can be exposed for programmatic use. From b70b15bdce32109c9744272e7a25d1feb3547b85 Mon Sep 17 00:00:00 2001 From: Ben Dixon Date: Tue, 22 Sep 2026 18:49:41 +0100 Subject: [PATCH 3/3] feat(codemods): export runCodemod API --- .changeset/public-codemods-entrypoint.md | 2 +- packages/codemods/src/index.ts | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.changeset/public-codemods-entrypoint.md b/.changeset/public-codemods-entrypoint.md index 6d0ab3a8904..521c6191f32 100644 --- a/.changeset/public-codemods-entrypoint.md +++ b/.changeset/public-codemods-entrypoint.md @@ -4,4 +4,4 @@ Add a public module entrypoint for programmatic codemod APIs -The package now publishes ESM and TypeScript declaration entrypoints so codemod functions can be exposed for programmatic use. +The package now exports `runCodemod` with its context and result types for programmatic use. diff --git a/packages/codemods/src/index.ts b/packages/codemods/src/index.ts index cb0ff5c3b54..25cce5b2b11 100644 --- a/packages/codemods/src/index.ts +++ b/packages/codemods/src/index.ts @@ -1 +1,2 @@ -export {}; +export { runCodemod } from "./runner"; +export type { CodemodContext, CodemodResult } from "./types";