Use the brand loading mark instead of lucide's spinner

Copies index/frontend's FluksioLoader component and its
`.fluksio-loader-line` rule into the app (the shadcn duplication model, so
the CSS travels with the component) and swaps every Loader2 pending state
over: the router's pending screen, the flow dock's Run and Publish, the
dashboard editor's Publish, the overview toolbar's Publish-all and
LoadingButton. One loading mark across both shells.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K1moruzue2kTJd3uVisgNk
This commit is contained in:
2026-08-28 15:36:54 +02:00
co-authored by Claude Opus 5
parent 565d6d2433
commit 498c2eb221
7 changed files with 90 additions and 19 deletions
+3 -3
View File
@@ -2,7 +2,6 @@ import { useReactFlow } from "@xyflow/react"
import {
AlertCircle,
Check,
Loader2,
Maximize2,
Pause,
Pencil,
@@ -18,6 +17,7 @@ import { useEffect, useState } from "react"
import type { ValidationIssue } from "@/client"
import { Button } from "@/components/ui/button"
import { FluksioLoader } from "@/components/ui/fluksio-loader"
import { Separator } from "@/components/ui/separator"
import {
Tooltip,
@@ -273,7 +273,7 @@ export function FlowDock({
data-testid="run-flow"
>
{running ? (
<Loader2 className="size-4 animate-spin" />
<FluksioLoader className="size-4" />
) : (
<Play className="size-4" />
)}
@@ -348,7 +348,7 @@ export function FlowDock({
{!connected ? (
<WifiOff className="size-3.5" />
) : saving || publishing ? (
<Loader2 className="size-3.5 animate-spin" />
<FluksioLoader className="size-3.5" />
) : (
<Check className="size-3.5" />
)}