diff --git a/.claude/settings.local.json b/.claude/settings.local.json index 7de2054..b269d00 100644 --- a/.claude/settings.local.json +++ b/.claude/settings.local.json @@ -29,7 +29,32 @@ "Bash(git commit:*)", "Bash(git push:*)", "Bash(cargo check:*)", - "Bash(bun run:*)" + "Bash(bun run:*)", + "Bash(icacls \"D:\\Projetos IA\\sistema-de-chamados\\codex_ed25519\")", + "Bash(copy \"D:\\Projetos IA\\sistema-de-chamados\\codex_ed25519\" \"%TEMP%\\codex_key\")", + "Bash(icacls \"%TEMP%\\codex_key\" /inheritance:r /grant:r \"%USERNAME%:R\")", + "Bash(cmd /c \"echo %TEMP%\")", + "Bash(cmd /c \"dir \"\"%TEMP%\\codex_key\"\"\")", + "Bash(where:*)", + "Bash(ssh-keygen:*)", + "Bash(/c/Program\\ Files/Git/usr/bin/ssh:*)", + "Bash(npx convex deploy:*)", + "Bash(dir \"%LOCALAPPDATA%\\Raven\")", + "Bash(dir \"%APPDATA%\\Raven\")", + "Bash(dir \"%LOCALAPPDATA%\\com.raven.app\")", + "Bash(dir \"%APPDATA%\\com.raven.app\")", + "Bash(tasklist:*)", + "Bash(dir /s /b %LOCALAPPDATA%*raven*)", + "Bash(cmd /c \"tasklist | findstr /i raven\")", + "Bash(cmd /c \"dir /s /b %LOCALAPPDATA%\\*raven* 2>nul\")", + "Bash(powershell -Command \"Get-Process | Where-Object {$_ProcessName -like ''*raven*'' -or $_ProcessName -like ''*appsdesktop*''} | Select-Object ProcessName, Id\")", + "Bash(node:*)", + "Bash(bun scripts/test-all-emails.tsx:*)", + "Bash(bun scripts/send-test-react-email.tsx:*)", + "Bash(dir:*)", + "Bash(git reset:*)", + "Bash(npx convex:*)", + "Bash(bun tsc:*)" ] } } diff --git a/.gitignore b/.gitignore index 80e6de6..30d6e0c 100644 --- a/.gitignore +++ b/.gitignore @@ -70,3 +70,4 @@ rustdesk/ # Prisma generated files src/generated/ +apps/desktop/service/target/ diff --git a/apps/desktop/src-tauri/src/chat.rs b/apps/desktop/src-tauri/src/chat.rs index 500896b..9528b74 100644 --- a/apps/desktop/src-tauri/src/chat.rs +++ b/apps/desktop/src-tauri/src/chat.rs @@ -1235,7 +1235,7 @@ fn open_hub_window_with_state(app: &tauri::AppHandle, start_minimized: bool) -> let (width, height) = if start_minimized { (200.0, 52.0) // Tamanho minimizado (chip) } else { - (340.0, 400.0) // Tamanho expandido (lista) + (400.0, 520.0) // Tamanho expandido (igual ao web) }; // Posicionar no canto inferior direito @@ -1284,7 +1284,7 @@ pub fn set_hub_minimized(app: &tauri::AppHandle, minimized: bool) -> Result<(), let (width, height) = if minimized { (200.0, 52.0) // Chip minimizado } else { - (340.0, 400.0) // Lista expandida (ajustado para caber melhor) + (400.0, 520.0) // Lista expandida (igual ao web) }; // Primeiro reposiciona, depois redimensiona para evitar corte diff --git a/convex/checklistTemplates.ts b/convex/checklistTemplates.ts index af3cf81..09301b8 100644 --- a/convex/checklistTemplates.ts +++ b/convex/checklistTemplates.ts @@ -58,7 +58,7 @@ function normalizeTemplateItems( throw new ConvexError("Todos os itens do checklist precisam ter um texto.") } if (text.length > 240) { - throw new ConvexError("Item do checklist muito longo (max. 240 caracteres).") + throw new ConvexError("Item do checklist muito longo (máx. 240 caracteres).") } const description = entry.description?.trim() || undefined @@ -68,7 +68,7 @@ function normalizeTemplateItems( : undefined if (itemType === "question" && (!itemOptions || itemOptions.length < 2)) { - throw new ConvexError(`A pergunta "${text}" precisa ter pelo menos 2 opcoes.`) + throw new ConvexError(`A pergunta "${text}" precisa ter pelo menos 2 opções.`) } const required = typeof entry.required === "boolean" ? entry.required : true diff --git a/src/components/settings/checklist-templates-manager.tsx b/src/components/settings/checklist-templates-manager.tsx index 99f6b40..84018f0 100644 --- a/src/components/settings/checklist-templates-manager.tsx +++ b/src/components/settings/checklist-templates-manager.tsx @@ -67,11 +67,11 @@ function normalizeTemplateItems(items: DraftItem[]) { } const invalid = normalized.find((item) => item.text.length > 240) if (invalid) { - throw new Error("Item do checklist muito longo (max. 240 caracteres).") + throw new Error("Item do checklist muito longo (máx. 240 caracteres).") } const invalidQuestion = normalized.find((item) => item.type === "question" && item.options.length < 2) if (invalidQuestion) { - throw new Error(`A pergunta "${invalidQuestion.text}" precisa ter pelo menos 2 opcoes.`) + throw new Error(`A pergunta "${invalidQuestion.text}" precisa ter pelo menos 2 opções.`) } return normalized } @@ -228,7 +228,7 @@ function TemplateEditorDialog({
Itens
-Defina o que precisa ser feito. Itens obrigatorios bloqueiam o encerramento.
+Defina o que precisa ser feito. Itens obrigatórios bloqueiam o encerramento.