Skip to content

Commit d1090e3

Browse files
committed
fix (tasks): ui changes
1 parent c3f9235 commit d1090e3

File tree

6 files changed

+675
-318
lines changed

6 files changed

+675
-318
lines changed

src/client/app/tasks/page.js

Lines changed: 44 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ const StorylaneDemoModal = ({ onClose }) => {
4646
<div className="absolute inset-0 backdrop-blur-3xl bg-black/20 rounded-3xl border border-white/10 shadow-inner" />
4747
<div className="absolute -top-4 -right-4 w-24 h-24 bg-gradient-to-br from-blue-400/20 to-purple-400/20 rounded-full blur-2xl animate-pulse" />
4848
<div className="absolute -bottom-4 -left-4 w-32 h-32 bg-gradient-to-br from-purple-400/20 to-pink-400/20 rounded-full blur-2xl animate-pulse" />
49-
49+
5050
<div className="relative flex justify-between items-center pb-6 flex-shrink-0 z-10">
5151
<div>
5252
<h2 className="text-3xl font-bold bg-gradient-to-r from-white via-blue-100 to-purple-100 bg-clip-text text-transparent drop-shadow-2xl">
@@ -58,7 +58,10 @@ const StorylaneDemoModal = ({ onClose }) => {
5858
onClick={onClose}
5959
className="relative p-3 rounded-2xl bg-white/10 hover:bg-white/20 backdrop-blur-lg border border-white/20 hover:border-white/30 transition-all duration-300 transform hover:scale-110 shadow-lg group"
6060
>
61-
<IconX size={20} className="text-white/70 group-hover:text-white transition-colors" />
61+
<IconX
62+
size={20}
63+
className="text-white/70 group-hover:text-white transition-colors"
64+
/>
6265
</button>
6366
</div>
6467
<div className="relative flex-1 w-full h-full z-10">
@@ -73,7 +76,8 @@ const StorylaneDemoModal = ({ onClose }) => {
7376
width: "100%",
7477
height: "100%",
7578
border: "1px solid rgba(255,255,255,0.2)",
76-
boxShadow: "0px 0px 30px rgba(59, 130, 246, 0.15)",
79+
boxShadow:
80+
"0px 0px 30px rgba(59, 130, 246, 0.15)",
7781
borderRadius: "20px",
7882
boxSizing: "border-box"
7983
}}
@@ -99,6 +103,11 @@ function TasksPageContent() {
99103
const [editingTask, setEditingTask] = useState(null) // For editing
100104
const [isDemoModalOpen, setIsDemoModalOpen] = useState(false)
101105

106+
// View control states
107+
const [activeTab, setActiveTab] = useState("oneTime")
108+
const [groupBy, setGroupBy] = useState("status")
109+
const [isAddingNewTask, setIsAddingNewTask] = useState(false)
110+
102111
// Check for query param to auto-open demo on first visit from onboarding
103112
useEffect(() => {
104113
const showDemo = searchParams.get("show_demo")
@@ -161,6 +170,23 @@ function TasksPageContent() {
161170
// eslint-disable-next-line react-hooks/exhaustive-deps
162171
}, [])
163172

173+
const handleAddTask = useCallback(() => {
174+
if (groupBy !== "status") {
175+
toast.error("Please group by status to add a new task.", {
176+
position: "bottom-center"
177+
})
178+
return
179+
}
180+
setIsAddingNewTask(true)
181+
}, [groupBy])
182+
183+
const handleTaskAdded = useCallback((isSuccess) => {
184+
setIsAddingNewTask(false)
185+
if (isSuccess) {
186+
fetchTasks()
187+
}
188+
}, [fetchTasks])
189+
164190
const handleAction = useCallback(
165191
async (actionFn, successMessage, ...args) => {
166192
const toastId = toast.loading("Processing...")
@@ -315,7 +341,13 @@ function TasksPageContent() {
315341
/>
316342

317343
<main className="flex-1 flex flex-col overflow-hidden">
318-
<TasksHeader onOpenDemo={() => setIsDemoModalOpen(true)} />
344+
<TasksHeader
345+
onOpenDemo={() => setIsDemoModalOpen(true)}
346+
activeTab={activeTab}
347+
onTabChange={setActiveTab}
348+
groupBy={groupBy}
349+
onGroupChange={setGroupBy}
350+
/>
319351
{isLoading ? (
320352
<div className="flex justify-center items-center flex-1">
321353
<IconLoader className="w-8 h-8 animate-spin text-[var(--color-accent-blue)]" />
@@ -330,7 +362,13 @@ function TasksPageContent() {
330362
onRerunTask={handleRerunTask}
331363
onMarkComplete={handleMarkComplete}
332364
onAssigneeChange={handleAssigneeChange}
333-
onTaskAdded={fetchTasks}
365+
activeTab={activeTab}
366+
groupBy={groupBy}
367+
onTabChange={setActiveTab}
368+
onGroupChange={setGroupBy}
369+
isAddingNewTask={isAddingNewTask}
370+
onAddTask={handleAddTask}
371+
onTaskAdded={handleTaskAdded}
334372
/>
335373
</div>
336374
)}
@@ -389,3 +427,4 @@ export default function TasksPage() {
389427
</Suspense>
390428
)
391429
}
430+

0 commit comments

Comments
 (0)