layout.tsx 746 B

1234567891011121314151617181920212223242526
  1. import { UseAsyncReturnType } from '../../../../../shared/hooks/use-async'
  2. import { getUserFacingMessage } from '../../../../../infrastructure/fetch-json'
  3. import OLRow from '@/shared/components/ol/ol-row'
  4. import OLNotification from '@/shared/components/ol/ol-notification'
  5. type LayoutProps = {
  6. children: React.ReactNode
  7. isError: UseAsyncReturnType['isError']
  8. error: UseAsyncReturnType['error']
  9. }
  10. function Layout({ isError, error, children }: LayoutProps) {
  11. return (
  12. <div className="affiliations-table-row-highlighted">
  13. <OLRow>{children}</OLRow>
  14. {isError && (
  15. <OLNotification
  16. type="error"
  17. content={getUserFacingMessage(error) ?? ''}
  18. />
  19. )}
  20. </div>
  21. )
  22. }
  23. export default Layout