Monorepo with centralized build props, npm workspaces, LlamaSharp AI, SQLite/SQLCipher storage, Svelte frontend, and unified smoke tests. Co-Authored-By: Oz <oz-agent@warp.dev>
39 lines
747 B
C#
39 lines
747 B
C#
using System.ComponentModel.DataAnnotations;
|
|
|
|
namespace Journal.Core.Dtos;
|
|
|
|
public record TodoListDto(
|
|
Guid Id,
|
|
string Label,
|
|
DateTimeOffset CreatedAt,
|
|
List<TodoItemDto> Items
|
|
);
|
|
|
|
public record TodoItemDto(
|
|
Guid Id,
|
|
Guid ListId,
|
|
string Text,
|
|
bool Done,
|
|
int SortOrder
|
|
);
|
|
|
|
public record CreateTodoListDto(
|
|
[property: Required(AllowEmptyStrings = false)] string Label
|
|
);
|
|
|
|
public record UpdateTodoListDto(
|
|
string? Label = null
|
|
);
|
|
|
|
public record CreateTodoItemDto(
|
|
[property: Required] Guid ListId,
|
|
[property: Required(AllowEmptyStrings = false)] string Text,
|
|
int? SortOrder = null
|
|
);
|
|
|
|
public record UpdateTodoItemDto(
|
|
string? Text = null,
|
|
bool? Done = null,
|
|
int? SortOrder = null
|
|
);
|