diff --git a/app/(app)/dashboard/loading.tsx b/app/(app)/dashboard/loading.tsx
index 656e323..40800ab 100644
--- a/app/(app)/dashboard/loading.tsx
+++ b/app/(app)/dashboard/loading.tsx
@@ -1,10 +1,12 @@
+import { Skeleton } from '@/components/ui/skeleton'
+
export default function Loading() {
return (
-
-
+
+
- {[1, 2, 3].map(i => (
-
+ {[1, 2, 3].map((i) => (
+
))}
diff --git a/app/(app)/products/[id]/loading.tsx b/app/(app)/products/[id]/loading.tsx
index 795b2c5..8dcb9c1 100644
--- a/app/(app)/products/[id]/loading.tsx
+++ b/app/(app)/products/[id]/loading.tsx
@@ -1,34 +1 @@
-export default function Loading() {
- return (
-
- {/* Header skeleton */}
-
-
- {/* Split pane skeleton */}
-
- {/* Left */}
-
-
- {[1, 2, 3, 4, 5].map(i => (
-
- ))}
-
- {/* Right */}
-
-
-
- {[1, 2, 3].map(i => (
-
- ))}
-
-
-
-
- )
-}
+export { default } from '@/components/loading/backlog-page-skeleton'
diff --git a/app/(app)/products/[id]/sprint/[sprintId]/loading.tsx b/app/(app)/products/[id]/sprint/[sprintId]/loading.tsx
index 795b2c5..8dcb9c1 100644
--- a/app/(app)/products/[id]/sprint/[sprintId]/loading.tsx
+++ b/app/(app)/products/[id]/sprint/[sprintId]/loading.tsx
@@ -1,34 +1 @@
-export default function Loading() {
- return (
-
- {/* Header skeleton */}
-
-
- {/* Split pane skeleton */}
-
- {/* Left */}
-
-
- {[1, 2, 3, 4, 5].map(i => (
-
- ))}
-
- {/* Right */}
-
-
-
- {[1, 2, 3].map(i => (
-
- ))}
-
-
-
-
- )
-}
+export { default } from '@/components/loading/backlog-page-skeleton'
diff --git a/app/(app)/products/[id]/sprint/[sprintId]/planning/loading.tsx b/app/(app)/products/[id]/sprint/[sprintId]/planning/loading.tsx
index 795b2c5..8dcb9c1 100644
--- a/app/(app)/products/[id]/sprint/[sprintId]/planning/loading.tsx
+++ b/app/(app)/products/[id]/sprint/[sprintId]/planning/loading.tsx
@@ -1,34 +1 @@
-export default function Loading() {
- return (
-
- {/* Header skeleton */}
-
-
- {/* Split pane skeleton */}
-
- {/* Left */}
-
-
- {[1, 2, 3, 4, 5].map(i => (
-
- ))}
-
- {/* Right */}
-
-
-
- {[1, 2, 3].map(i => (
-
- ))}
-
-
-
-
- )
-}
+export { default } from '@/components/loading/backlog-page-skeleton'
diff --git a/app/(app)/settings/loading.tsx b/app/(app)/settings/loading.tsx
index 07f3dd9..11488b0 100644
--- a/app/(app)/settings/loading.tsx
+++ b/app/(app)/settings/loading.tsx
@@ -1,9 +1,11 @@
+import { Skeleton } from '@/components/ui/skeleton'
+
export default function Loading() {
return (
-
-
- {[1, 2, 3, 4].map(i => (
-
+
+
+ {[1, 2, 3, 4].map((i) => (
+
))}
)
diff --git a/app/_components/tasks/task-dialog-skeleton.tsx b/app/_components/tasks/task-dialog-skeleton.tsx
index bb6a66b..823abb7 100644
--- a/app/_components/tasks/task-dialog-skeleton.tsx
+++ b/app/_components/tasks/task-dialog-skeleton.tsx
@@ -1,5 +1,11 @@
import { Skeleton } from '@/components/ui/skeleton'
import { Dialog, DialogContent, DialogTitle } from '@/components/ui/dialog'
+import {
+ entityDialogBodyClasses,
+ entityDialogContentClasses,
+ entityDialogFooterClasses,
+ entityDialogHeaderClasses,
+} from '@/components/shared/entity-dialog-layout'
import { cn } from '@/lib/utils'
export function TaskDialogSkeleton() {
@@ -8,32 +14,54 @@ export function TaskDialogSkeleton() {
Taak laden…
- {/* Header */}
-
-
+
- {/* Body — 3 bars mimicking title + description + plan */}
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
- {/* Footer */}
-
-
-
-
+
diff --git a/components/loading/backlog-page-skeleton.tsx b/components/loading/backlog-page-skeleton.tsx
new file mode 100644
index 0000000..79666b6
--- /dev/null
+++ b/components/loading/backlog-page-skeleton.tsx
@@ -0,0 +1,32 @@
+import { Skeleton } from '@/components/ui/skeleton'
+
+export default function BacklogPageSkeleton() {
+ return (
+
+
+
+
+
+
+ {[1, 2, 3, 4, 5].map((i) => (
+
+ ))}
+
+
+
+
+ {[1, 2, 3].map((i) => (
+
+ ))}
+
+
+
+
+ )
+}