Issue #3499419 - Adds default Floating UI offset middleware
The version of Shepherd used by the tour module utilizes the Floating UI library to position tour tips instead of the legacy Popper library. The configuration built into the Tour attempts to pass tip step placement via settings via popperOptions
in TourViewBuilder
. Floating UI is does not recognize this config, and we need to pass a middleware method to handle it. This commonly results in tour tips overlaping or completely covering the the target element.
This quick-fix simply includes the @floating-ui/dom
library/js module and uses it’s offset method to specify a basic mainAxis offset to resolve the issue. This wasn’t configurable in the old Tour UI module, but a nice follow-up task would be to add an advanced configuration option to the tip configuration form so tips could individually specify offset in addition to the tip position strategy.
Closes #3499419