mirror of
https://github.com/skoelle/focusapp.git
synced 2026-09-17 20:10:25 +00:00
ui refactor
This commit is contained in:
@@ -23,7 +23,7 @@
|
||||
padding: 20px;
|
||||
}
|
||||
</style>
|
||||
<script type="module" crossorigin src="/assets/index-rPG5vfP0.js"></script>
|
||||
<script type="module" crossorigin src="/assets/index-DVYXBxB1.js"></script>
|
||||
<link rel="stylesheet" crossorigin href="/assets/index-CXNz5rXF.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
@@ -12,6 +12,13 @@ const App: React.FC = () => {
|
||||
const [loading, setLoading] = useState(true);
|
||||
const [error, setError] = useState<string | null>(null);
|
||||
|
||||
useEffect(() => {
|
||||
if (error) {
|
||||
const timer = setTimeout(() => setError(null), 5000);
|
||||
return () => clearTimeout(timer);
|
||||
}
|
||||
}, [error]);
|
||||
|
||||
useEffect(() => {
|
||||
loadTasks();
|
||||
}, []);
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import React, { useState } from 'react';
|
||||
import React, { useState, useEffect } from 'react';
|
||||
import { FocusTask } from '../types';
|
||||
import './TaskCard.css';
|
||||
|
||||
@@ -13,6 +13,11 @@ const TaskCard: React.FC<TaskCardProps> = ({ task, onUpdate, onDelete }) => {
|
||||
const [editTitle, setEditTitle] = useState(task.title);
|
||||
const [editDescription, setEditDescription] = useState(task.description || '');
|
||||
|
||||
useEffect(() => {
|
||||
setEditTitle(task.title);
|
||||
setEditDescription(task.description || '');
|
||||
}, [task.id, task.title, task.description]);
|
||||
|
||||
const handleSave = () => {
|
||||
if (editTitle.trim()) {
|
||||
onUpdate(editTitle, editDescription);
|
||||
|
||||
Vendored
+1
@@ -0,0 +1 @@
|
||||
/// <reference types="vite/client" />
|
||||
Reference in New Issue
Block a user