[Bug Report][3.6.14] Maximum call stack size exceeded when using elements in default options #20278
Closed
Description
Environment
Vuetify Version: 3.6.14
Vue Version: 3.5.0-alpha.5
Browsers: Chrome 127.0.0.0
OS: Windows 10, Linux
Steps to reproduce
- Create Vuetify with defaults configuration, setting the attach property of VMenu to a custom element instance.
- Add a VMenu and open it.
Expected Behavior
The menu opens normally.
Actual Behavior
Maximum call stack size exceeded is thrown and the menu does not open.
Reproduction Link
https://play.vuetifyjs.com/#...
Other comments
It might be that mergeDeep utility used by the defaults composable is not able to merge objects with circular references.
While a string selector can be used for the attach property of VMenu, it does not work within the Shadow DOM. Document selectors cannot reach shadow elements, so it is necessary to pass an element instance in these cases.