EngraftComponent = ({ key, inputs, hide, __element }) => {
const [outputState, setOutputState] = React.useState(null);
const [outputP, setOutputP] = React.useState(null);
const valueP = React.useMemo(() => {
if (!outputP) {
return undefined;
}
return outputP
.then(output => output.value)
.catch(() => {
return undefined;
});
}, [outputP]);
useObservableValue(__element, valueP);
const localStorageKey = `observable-embed-${key}`;
return jsx`
<${engraftHostObservable.ObservableEmbed}
reportOutputState=${setOutputState}
reportOutputP=${setOutputP}
inputs=${inputs}
localStorageKey=${localStorageKey}
hide=${hide}
/>
<div style=${{height: 10}}/>
`;
}