Capitalize
Implement Capitalize<T> which converts the first letter of a string to uppercase and leave the rest as-is.
For example:
tstypecapitalized =Capitalize <'hello world'> // expected to be 'Hello world'
tstypecapitalized =Capitalize <'hello world'> // expected to be 'Hello world'
Solution ✅
tstypeMyCapitalize <S > =S extends `${inferFirst }${inferRest }` ? `${Uppercase <First >}${Rest }` : ''typecase1 =MyCapitalize <'foobar'> // expected to be 'Foobar'typecase2 =MyCapitalize <'foo bar'> // expected to be 'Foo bar'typecase3 =MyCapitalize <'FOOBAR'> // expected to be 'FOOBAR'typecase4 =MyCapitalize <''> // expected to be ''typecase5 =MyCapitalize <'a'> // expected to be 'A'
tstypeMyCapitalize <S > =S extends `${inferFirst }${inferRest }` ? `${Uppercase <First >}${Rest }` : ''typecase1 =MyCapitalize <'foobar'> // expected to be 'Foobar'typecase2 =MyCapitalize <'foo bar'> // expected to be 'Foo bar'typecase3 =MyCapitalize <'FOOBAR'> // expected to be 'FOOBAR'typecase4 =MyCapitalize <''> // expected to be ''typecase5 =MyCapitalize <'a'> // expected to be 'A'