type-challenges-solutions
type-challenges-solutions copied to clipboard
type-challenges-solutions/en/medium-camelcase
CamelCase
This project is aimed at helping you better understand how the type system works, writing your own utilities, or just having fun with the challenges.
https://ghaiklor.github.io/type-challenges-solutions/en/medium-camelcase.html
Two notes here:
- The "capitalize" challenge should go before this one.
- The tests are a bit dumb IMO. This is my solution before I realized this fact:
type CamelCase<S> = S extends `${infer H}-${infer T}`
? `${H}${Capitalize<CamelCase<T>>}`
: S;
This will handle all cases better. However, as you note in your solution, the tests won't allow this lol.
Edit: I just realized that this is literally the same as one of your intermediate steps. My bad heh.