useOrder = (element) => {
const [order, setOrder] = React.useState(undefined);
React.useEffect(() => {
const cellOutput = element.parentElement;
const cellOutputs = cellOutput.parentElement;
const observer = new MutationObserver(function(mutations) {
updateOrder();
}).observe(cellOutputs, {
childList: true,
});
function updateOrder() {
const order = Array.from(cellOutputs.children).indexOf(cellOutput);
setOrder(order);
}
updateOrder();
return () => observer.disconnect();
}, [element]);
return order;
}