Component - TextInput with controlled state
This component shows a text input box where the user can type. The typed text is saved in the component's state, so the app always knows what the user wrote. This is called a controlled input because the app controls the text value.