Add description
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing

This commit is contained in:
2021-11-18 16:53:21 +01:00
parent afb3bfd681
commit c281d5a6a7
39 changed files with 639 additions and 416 deletions

View File

@@ -4,7 +4,7 @@ import { PrimaryButton } from "@src/components/common/buttons/primaryButton";
import { TodoShortForm } from "@src/components/todos/collapsed/todoShortForm";
export const AddTodoForm: FC<{
onAdd: (todoName: string, project: string) => void;
onAdd: (todoName: string, project: string, description: string) => void;
onClose: () => void;
project: string;
}> = ({ onAdd, onClose, ...props }) => {
@@ -16,7 +16,7 @@ export const AddTodoForm: FC<{
<form
onSubmit={(e) => {
e.preventDefault();
onAdd(todoName, project);
onAdd(todoName, project, todoDescription);
setTodoName("");
setTodoDescription("");
}}

View File

@@ -22,8 +22,8 @@ export function AddTodo(props: { project: string }) {
return (
<AddTodoForm
project={props.project}
onAdd={(todoName, project) => {
createTodo(todoName, project);
onAdd={(todoName, project, description) => {
createTodo(todoName, project, description);
}}
onClose={() => setCollapsed(CollapsedState.collapsed)}
/>

View File

@@ -29,7 +29,12 @@ export const TodoItem: FC<TodoItemProps> = (props) => {
{props.todo.title}
</a>
</Link>
<div>
<div className="flex flex-row justify-between items-end">
<div>
{props.todo.description && (
<div className="h-3 w-3 bg-gray-200 dark:bg-gray-900"/>
)}
</div>
{props.displayProject && props.todo.project && (
<div className="text-gray-500 text-xs text-right whitespace-nowrap place-self-end">
{props.todo.project}

View File

@@ -9,6 +9,7 @@ export const StatusState: { done: Done; notDone: NotDone } = {
export interface Todo {
id: string;
title: string;
description?: string;
status: StatusState;
project?: string;
}

View File

@@ -12,7 +12,7 @@ interface SocketContextProps {
inboxTodos: Todo[];
getTodos: () => void;
getInboxTodos: () => void;
createTodo: (todoName: string, project: string) => void;
createTodo: (todoName: string, project: string, description: string) => void;
updateTodo: (todoId: string, todoStatus: StatusState) => void;
getTodoById(todoId: string): void;
replaceTodo(todo: Todo): void;
@@ -24,7 +24,7 @@ export const SocketContext = createContext<SocketContextProps>({
inboxTodos: [],
getTodos: () => {},
getInboxTodos: () => {},
createTodo: (todoName, project) => {},
createTodo: (todoName, project, description) => {},
updateTodo: (todoId, todoStatus) => {},
getTodoById(todoId: string) {},
replaceTodo(todo: Todo) {},
@@ -89,8 +89,8 @@ export const SocketProvider: FC = (props) => {
getInboxTodos: () => {
conn.invoke("GetInboxTodos").catch(console.error);
},
createTodo: (todoName, project) => {
conn.invoke("CreateTodo", todoName, project).catch(console.error);
createTodo: (todoName, project, description) => {
conn.invoke("CreateTodo", todoName, project, description).catch(console.error);
},
updateTodo: (todoId, todoStatus) => {
conn.invoke("UpdateTodo", todoId, todoStatus).catch(console.error);

View File

@@ -19,8 +19,8 @@ export const useCreateTodo = () => {
const socketContext = useContext(SocketContext);
return {
createTodo: (todoName: string, project: string) => {
socketContext.createTodo(todoName, project);
createTodo: (todoName: string, project: string, description: string) => {
socketContext.createTodo(todoName, project, description);
},
};
};