I think the core issue was that if you went directly to an image URL, the shadow DOM lightbox positioning stuff would be all messed up and the parent component wasn't rendering at all. This fixes that (a relatively small fix) and does a significant refactor to make dealing with this code easier, although I did not rewrite the markup for the actual display (lightbox).
I sort of hope this addresses both https://github.com/AmericanWhitewater/wh2o/issues/2361 and https://github.com/AmericanWhitewater/wh2o/issues/2328.
I think the core issue was that if you went directly to an image URL, the shadow DOM lightbox positioning stuff would be all messed up and the parent component wasn't rendering at all. This fixes that (a relatively small fix) and does a significant refactor to make dealing with this code easier, although I did not rewrite the markup for the actual display (lightbox).