Repository navigation
fix(github-callouts): bundle only the theme from comark-zoom, so callouts don't install zoom or ship its styles - #29
Conversation
…outs don't install zoom or ship its styles
Latest result Pull request merged. Final answersSession Pull request merged. Session Waiting for GitHub merge request 78d8ae60-ec7f-42c1-999d-85c7918e5123. Session Waiting for running checks before the next pass. Session Waiting for running checks before the next pass. Session Waiting for running checks before the next pass. Session Waiting for running checks before the next pass. Session Waiting for running checks before the next pass. Session Waiting for running checks before the next pass. Session Waiting for running checks before the next pass. Session Waiting for running checks before the next pass. Session Waiting for running checks before the next pass. |
commit: |
🚀 Deploying Preview to Cloudflare 🚀Preview Deployments by commit
|
There was a problem hiding this comment.
✅ No new issues found.
Reviewed changes
- Standalone theme entry — reviewed the new
comark-zoom/themeexport and tsdown entry, including preservation of the existing zoom entrypoints. - Callouts dependency boundary — reviewed the import and dependency move so
comark-github-calloutscan inline the shared theme without retaining a runtimecomark-zoomdependency. - Package metadata — reviewed the lockfile, package exports, and repository guidance updates.
gpt-5.6-sol | 𝕏

comark-github-calloutslistedcomark-zoomas a runtime dependency only to calltheme(), which resolves the shared--comark-*tokens. That had two costs:themecame fromcomark-zoom/client, whose chunk also holds zoom's whole stylesheet. That string is built at module load, so bundlers can't drop it. A page with callouts and no zoom still shipped about 4 kB of.cz-*CSS.Changes:
comark-zoomgets acomark-zoom/themeentry that exports onlytheme().comark-zoom/clientstill re-exports it, so carousel and annotate don't change.comark-github-calloutsimportsthemefromcomark-zoom/themeand movescomark-zoomtodevDependencies. tsdown inlines the 1.2 kB helper intodist, and the published package has no zoom import left.Verified:
dist/style.cssfor callouts is byte-identical to the one built onmain.grep cz-dialog packages/github-callouts/distfinds nothing; before this change it was in the styles chunk.pnpm readypasses: build with publint, lint, typecheck, 83/83 tests, and Vite Doctor with 0 warnings for all four packages.Callouts hasn't been published yet, so this lands before its first release in v0.3.0 (#22).
🤖 Generated with Claude Code