Skip to content

Commit

Permalink
lazy loading RouteActivity - added spinner
Browse files Browse the repository at this point in the history
  • Loading branch information
california authored and california committed Feb 13, 2025
1 parent 4c9dad2 commit 13aecc2
Showing 1 changed file with 13 additions and 2 deletions.
15 changes: 13 additions & 2 deletions src/pages/dashboard/Dashboard.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { createResource, lazy, Match, Show, SuspenseList, Switch } from 'solid-js'
import { Suspense } from 'solid-js'
import type { Component, JSXElement, VoidComponent } from 'solid-js'
import { Navigate, type RouteSectionProps, useLocation } from '@solidjs/router'
import clsx from 'clsx'
Expand All @@ -16,10 +17,10 @@ import TopAppBar from '~/components/material/TopAppBar'

import DeviceList from './components/DeviceList'
import DeviceActivity from './activities/DeviceActivity'
import RouteActivity from './activities/RouteActivity'
import SettingsActivity from './activities/SettingsActivity'

const PairActivity = lazy(() => import('./activities/PairActivity'))
const RouteActivityLazy = lazy(() => import('./activities/RouteActivity'))

interface DashboardDrawerProps {
devices?: Device[]
Expand Down Expand Up @@ -119,7 +120,17 @@ const Dashboard: Component<RouteSectionProps> = () => {
<SettingsActivity dongleId={id} />
</Match>
<Match when={dateStr()} keyed>
{(date) => <RouteActivity dongleId={id} dateStr={date} />}
{(date) => (
<Suspense
fallback={
<div class="flex h-full items-center justify-center">
<div class="aspect-square w-12 animate-spin rounded-full border-8 border-surface-variant border-t-primary" />
</div>
}
>
<RouteActivityLazy dongleId={id} dateStr={date} />
</Suspense>
)}
</Match>
</Switch>}
paneTwoContent={!!dateStr()}
Expand Down

0 comments on commit 13aecc2

Please sign in to comment.