diff --git a/ui/litellm-dashboard/src/components/lens/setup/GatewayFlow.tsx b/ui/litellm-dashboard/src/components/lens/setup/GatewayFlow.tsx index ed99cead661..bc61078a18d 100644 --- a/ui/litellm-dashboard/src/components/lens/setup/GatewayFlow.tsx +++ b/ui/litellm-dashboard/src/components/lens/setup/GatewayFlow.tsx @@ -3,26 +3,26 @@ import styles from "./LensIntroduction.module.css"; const dotColors = [ "fill-sky-400 dark:fill-sky-300", + "fill-indigo-400 dark:fill-indigo-300", "fill-violet-400 dark:fill-violet-300", - "fill-amber-400 dark:fill-amber-300", - "fill-cyan-400 dark:fill-cyan-300", - "fill-rose-400 dark:fill-rose-300", ]; -const gridDots = Array.from({ length: 583 }, (_, index) => { - const column = index % 53; - const row = Math.floor(index / 53); - const variation = (index * 73 + index * index * 19) % 101; - return { - x: 5 + column * 10, - y: 4 + row * 10, - color: dotColors[variation % dotColors.length], - duration: `${5.5 + (row % 3) * 0.7}s`, - delay: `${-((53 - column) * 0.1 + row * 0.43 + variation * 0.016)}s`, - }; -}); +const swarmRows = Array.from({ length: 11 }, (_, row) => ({ + y: 4 + row * 10, + duration: `${[4.8, 5.2, 5.6, 5][row % 4]}s`, + delay: `${-row * 0.17}s`, + dots: Array.from({ length: 80 }, (_, column) => { + const seed = (column % 24) + row * 31; + const variation = (seed * 73 + seed * seed * 19) % 101; + return { + x: column * 10 - 235, + color: dotColors[variation % dotColors.length], + opacity: variation < 15 ? 0 : 0.5 + variation * 0.005, + }; + }), +})); -const organizedColumns = Array.from({ length: 50 }, (_, column) => column).filter((column) => column % 8 < 6); +const organizedColumns = Array.from({ length: 58 }, (_, column) => column - 8); export function GatewayFlow() { const id = useId(); @@ -49,9 +49,15 @@ export function GatewayFlow() { focusable="false" > - + + + + + + + @@ -60,9 +66,19 @@ export function GatewayFlow() { + + + + + + + @@ -75,7 +91,7 @@ export function GatewayFlow() { - + @@ -86,36 +102,39 @@ export function GatewayFlow() { - - {organizedColumns.map((column) => ( - - {[34, 44, 54, 64, 74].map((y) => ( - - ))} + + + + + {organizedColumns.map((column) => ( + + {[34, 44, 54, 64, 74].map((y) => ( + + ))} + + ))} + - ))} + - {gridDots.map((dot, index) => ( - ( + + className={styles.swarmRow} + style={{ animationDuration: row.duration, animationDelay: row.delay }} + > + {row.dots.map((dot, column) => ( + + ))} + ))} - +