I can see this is Xamarin WPF. I don't believe that the PushModalAsync actually blocks until the modal has completed, instead it simply means that the modal will be pushed into the navigation stack asynchronously. It will still return immediately once the view has been updated.
According
to the documentation[
^] the PushAsync will complete once the new page has been displayed. If you're intending on doing these in sequence you might need to store the JSON content somewhere and register events for when the modals are opened/closed.