Release v4.1.2
Fixed
- A second dialog opened while the first is still visible now stacks above it, instead of colliding on the same static z-index and relying on incidental DOM paint order.
- A dropdown, date picker, or tooltip opened inside a dialog now stacks above whichever dialog tier it is actually nested in - including a dialog that was itself opened while another dialog was still open, which the single static overlay token never accounted for.
Context
Components 3 kept overlay panels above their dialog with useOverlayZIndex, a raise-only floor over PrimeReact's own ZIndexUtils registry (#123, PR #117, 2.6.2). Components 4 moved Dialog/Dropdown/DatePicker off PrimeReact onto React Aria, and useOverlayZIndex was removed as redundant along with everything else PrimeReact-specific - but nothing replaced the registry it depended on. A single dialog was never affected (there was only ever one static tier to stack above), which is why this went unnoticed: it only shows up with two dialogs open at once, or an overlay opened from the second one.
Adds a small open-dialog registry (Source/Dialogs/dialogStack.ts) that assigns each currently visible dialog a strictly increasing tier regardless of where in the tree it was opened from, and a DialogStackContext dialogs provide their resolved z-index through so nested overlay-producing components can stack relative to their actual dialog tier instead of a single static token. Internal wiring only - no public API change, so this ships as a patch.