{
const useState = React.useState;
const InputForm = ({defaultValue, onValueUpdate}) => {
const [value, setValue] = useState(defaultValue);
const handleSubmit = (event) => {
event.preventDefault();
onValueUpdate(value);
};
const handleChange = (event) => setValue(event.target.value);
return htm`
<form onSubmit=${handleSubmit}>
<label>Name:<input type="text" value=${value} onChange=${handleChange}/></label>
<input type="submit" value="Update"/>
</form>
`};
const Application = ({defaultName}) => {
const [name, setName] = useState(defaultName);
const onValueUpdate = (value) => { setName(value); }
return htm`
<${InputForm} defaultValue='${defaultName}' onValueUpdate=${onValueUpdate}/>
<div>Hello, ${name}!</div>
`
};
return React.render(htm`<${StyledApplication}><${Application} defaultName="world" /></>`)
}