message: fix(app): while closing a protocol run, place loading spinner over whole app
  Instead of only blocking the page portion, and leaving the side panel interactive, while the
  protocol is loading or closing on the run detail page, place a spinner over the whole app.
diff: @@ -17,6 +17,7 @@ import {
  SPACING_3,
  useConditionalConfirm,
  NewAlertSecondaryBtn,
  + SpinnerModal,
  } from '@opentrons/components'
  import { Page } from '../../atoms/Page'
  import { Portal } from '../../App/portal'
  @@ -32,7 +33,6 @@ import { CommandList } from './CommandList'
  import { ConfirmCancelModal } from './ConfirmCancelModal'
  import styles from '../ProtocolUpload/styles.css'
  -import { ProtocolLoader } from '../ProtocolUpload'
  import { useIsProtocolRunLoaded } from '../ProtocolUpload/hooks'
  export function RunDetails(): JSX.Element | null {
  @@ -79,7 +79,11 @@ export function RunDetails(): JSX.Element | null {
  ) {
  text = t('closing_protocol')
  }
  - return <ProtocolLoader loadingText={text} />
  + return (
  + <Portal level="top">
  + <SpinnerModal message={text} />
  + </Portal>
  + )
  }
  const cancelRunButton = (
  