ce12406ec2
We had an issue where an open Dialog got hidden by css didn't properly unmount because the Transition never "finished". We fixed this by checking if the node was hidden by using `getBoundingClientRect`. Today I learned that just *reading* those values (aka call `node.getBoundingClientRect()`) it for whatever reason completely stops the transition. This causes the enter transitions to completely stop working. Instead, we move this code so that we only check the existence of the Node when we try to transition out because this means that the Node is definitely there, just have to check its bounding rect.