simplify some things
This commit is contained in:
parent
fa70d2f3f4
commit
9ef160aeb7
8 changed files with 105 additions and 30 deletions
|
|
@ -1,4 +1,4 @@
|
|||
import type { EditorState } from "./Editor";
|
||||
import { Editor, type EditorState } from "./Editor";
|
||||
import type { Dynamic, State2Props } from "./util/extra";
|
||||
|
||||
|
||||
|
|
@ -16,6 +16,36 @@ interface LetInBlockProps extends State2Props<LetInBlockState> {
|
|||
}
|
||||
|
||||
|
||||
export function LetInBlock({env, name, value, inner, resolved, onResolve}) {
|
||||
|
||||
}
|
||||
export function LetInBlock({state, setState, onResolve}: LetInBlockProps) {
|
||||
const {env, name, value, inner, resolved} = state;
|
||||
const onChangeName = (e: React.ChangeEvent<HTMLInputElement>) => {
|
||||
setState({...state, name: e.target.value});
|
||||
}
|
||||
return <span className="letIn">
|
||||
<div className="decl">
|
||||
let <input
|
||||
className='editable'
|
||||
value={name}
|
||||
placeholder="<variable name>"
|
||||
onChange={onChangeName}
|
||||
/> =
|
||||
<Editor
|
||||
state={value}
|
||||
filter={() => true}
|
||||
onResolve={(state: EditorState) => {} }
|
||||
onCancel={() => {} }
|
||||
setState={(state: EditorState) => {} }
|
||||
/>
|
||||
in
|
||||
</div>
|
||||
<div className="inner">
|
||||
<Editor
|
||||
state={inner}
|
||||
filter={() => true}
|
||||
onResolve={(state: EditorState) => {} }
|
||||
onCancel={() => {} }
|
||||
setState={(state: EditorState) => {} }
|
||||
/>
|
||||
</div>
|
||||
</span>
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue