Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
props.state.illustrating.set(e.target.value === 'illustrating')
}
const textFocused = useScopedSelector(
hasFocusedDescendant(props.state.explanation.id)
)
const multimediaFocused = useScopedSelector(
isFocused(props.state.multimedia.id)
)
const hasFocus = props.focused || multimediaFocused || textFocused
const multimedia: {
plugin: string
state?: unknown
} | null = useScopedSelector(serializeDocument(props.state.multimedia.id))
const [
replacedMultimediaCache,
setReplacedMultimediaCache
] = React.useState>({})
function handleMultimediaChange(selected: string) {
setReplacedMultimediaCache(current => {
if (!multimedia) return current
return {
...current,
[multimedia.plugin]: multimedia.state
}
})
props.state.multimedia.replace(
selected,
replacedMultimediaCache[selected]