feat: async task pipeline for media and llm workflows

这个提交包含在:
cryptocommuniums-afk
2026-03-15 00:12:26 +08:00
父节点 1cc863e60e
当前提交 20e183d2da
修改 36 个文件,包含 1961 行新增339 行删除

查看文件

@@ -28,6 +28,7 @@ import {
import { CSSProperties, useEffect, useRef, useState } from "react";
import { useLocation, Redirect } from "wouter";
import { DashboardLayoutSkeleton } from './DashboardLayoutSkeleton';
import { TaskCenter } from "./TaskCenter";
const menuItems = [
{ icon: LayoutDashboard, label: "仪表盘", path: "/dashboard", group: "main" },
@@ -262,6 +263,9 @@ function DashboardLayoutContent({
</SidebarContent>
<SidebarFooter className="p-3">
<div className="mb-3">
<TaskCenter />
</div>
<DropdownMenu>
<DropdownMenuTrigger asChild>
<button className="flex items-center gap-3 rounded-lg px-1 py-1 hover:bg-accent/50 transition-colors w-full text-left group-data-[collapsible=icon]:justify-center focus:outline-none focus-visible:ring-2 focus-visible:ring-ring">
@@ -315,6 +319,7 @@ function DashboardLayoutContent({
</div>
</div>
</div>
<TaskCenter compact />
</div>
)}
<main className={`flex-1 p-4 md:p-6 ${isMobile ? "pb-28" : ""}`}>{children}</main>