fix/cli-typegen-outdir-imports #10501
Open
+13
−4
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When using chakra typegen --outdir ./custom-path, the generated TypeScript files contain broken relative imports that don't work outside the default location:
// Generated files have these broken imports:
import type { CssProperties } from "../css.types" // ❌ File doesn't exist
import type { ConditionalValue } from "../css.types" // ❌ File doesn't exist
import type { RecipeDefinition } from "../recipe.types" // ❌ File doesn't exist
Copy
typescript
This makes the --outdir flag essentially unusable for custom type generation.
Solution
Changed the CLI to generate absolute imports from @chakra-ui/react instead of relative paths:
// Now generates working imports:
import type { CssProperties, ConditionalValue, RecipeDefinition } from "@chakra-ui/react" // ✅ Works everywhere
Copy
typescript
Changes
Updated type generation functions to use absolute imports
Exported missing CssProperties type from @chakra-ui/react
Maintains backward compatibility - default behavior unchanged
Testing
This now works without TypeScript errors:
chakra typegen ./my-theme.ts --outdir ./anywhere