chat worked
This commit is contained in:
@@ -246,7 +246,7 @@
|
||||
<aside class="fixed right-0 top-0 z-[71] h-full w-full max-w-md border-l border-slate-200 bg-white shadow-2xl">
|
||||
<div class="flex h-14 items-center justify-between border-b border-slate-200 px-4">
|
||||
<div class="flex items-center gap-2 text-slate-800">
|
||||
<Icon name="activity" size={18} />
|
||||
<Icon name="clipboard" size={18} />
|
||||
<h2 class="text-sm font-semibold">{$t.assistant?.title || 'AI Assistant'}</h2>
|
||||
</div>
|
||||
<button
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
* @TIER: CRITICAL
|
||||
* @PURPOSE: Global task drawer for monitoring background operations
|
||||
* @LAYER: UI
|
||||
* @RELATION: BINDS_TO -> taskDrawerStore, WebSocket
|
||||
* @RELATION: BINDS_TO -> taskDrawerStore, assistantChatStore, WebSocket
|
||||
* @SEMANTICS: TaskLogViewer
|
||||
* @INVARIANT: Drawer shows logs for active task or remains closed
|
||||
*
|
||||
@@ -20,6 +20,7 @@
|
||||
|
||||
import { onMount, onDestroy } from "svelte";
|
||||
import { taskDrawerStore, closeDrawer } from "$lib/stores/taskDrawer.js";
|
||||
import { assistantChatStore } from "$lib/stores/assistantChat.js";
|
||||
import TaskLogViewer from "../../../components/TaskLogViewer.svelte";
|
||||
import PasswordPrompt from "../../../components/PasswordPrompt.svelte";
|
||||
import { t } from "$lib/i18n";
|
||||
@@ -33,12 +34,15 @@
|
||||
let taskStatus = null;
|
||||
let recentTasks = [];
|
||||
let loadingTasks = false;
|
||||
let isAssistantOpen = false;
|
||||
|
||||
// Subscribe to task drawer store
|
||||
$: if ($taskDrawerStore) {
|
||||
isOpen = $taskDrawerStore.isOpen;
|
||||
activeTaskId = $taskDrawerStore.activeTaskId;
|
||||
}
|
||||
$: isAssistantOpen = Boolean($assistantChatStore?.isOpen);
|
||||
$: assistantOffset = isAssistantOpen ? "min(100vw, 28rem)" : "0px";
|
||||
|
||||
// Derive short task ID for display
|
||||
$: shortTaskId = activeTaskId
|
||||
@@ -191,7 +195,8 @@
|
||||
<!-- Drawer Overlay -->
|
||||
{#if isOpen}
|
||||
<div
|
||||
class="fixed inset-0 z-50 bg-black/35 backdrop-blur-sm"
|
||||
class="fixed inset-0 z-[69] bg-black/35 backdrop-blur-sm"
|
||||
style={`right: ${assistantOffset};`}
|
||||
on:click={handleOverlayClick}
|
||||
on:keydown={(e) => e.key === 'Escape' && handleClose()}
|
||||
role="button"
|
||||
@@ -200,7 +205,8 @@
|
||||
>
|
||||
<!-- Drawer Panel -->
|
||||
<div
|
||||
class="fixed right-0 top-0 z-50 flex h-full w-full max-w-[560px] flex-col border-l border-slate-200 bg-white shadow-[-8px_0_30px_rgba(15,23,42,0.15)] transition-transform duration-300 ease-out"
|
||||
class="fixed top-0 z-[72] flex h-full w-full max-w-[560px] flex-col border-l border-slate-200 bg-white shadow-[-8px_0_30px_rgba(15,23,42,0.15)] transition-[right] duration-300 ease-out"
|
||||
style={`right: ${assistantOffset};`}
|
||||
role="dialog"
|
||||
aria-modal="true"
|
||||
aria-label="Task drawer"
|
||||
|
||||
@@ -143,7 +143,7 @@
|
||||
aria-label={$t.assistant?.open || "Open assistant"}
|
||||
title={$t.assistant?.title || "AI Assistant"}
|
||||
>
|
||||
<Icon name="activity" size={22} />
|
||||
<Icon name="clipboard" size={22} />
|
||||
</button>
|
||||
|
||||
<!-- Activity Indicator -->
|
||||
|
||||
@@ -93,6 +93,12 @@
|
||||
"env_actions": "Actions",
|
||||
"connections_description": "Configure database connections for data mapping.",
|
||||
"llm_description": "Configure LLM providers for dataset documentation.",
|
||||
"llm_prompts_title": "LLM Prompt Templates",
|
||||
"llm_prompts_description": "Edit reusable prompts used for documentation, dashboard validation, and git commit generation.",
|
||||
"llm_prompt_documentation": "Documentation Prompt",
|
||||
"llm_prompt_dashboard_validation": "Dashboard Validation Prompt",
|
||||
"llm_prompt_git_commit": "Git Commit Prompt",
|
||||
"save_llm_prompts": "Save LLM Prompts",
|
||||
"logging": "Logging Configuration",
|
||||
"logging_description": "Configure logging and task log levels.",
|
||||
"storage_description": "Configure file storage paths and patterns.",
|
||||
|
||||
@@ -93,6 +93,12 @@
|
||||
"env_actions": "Действия",
|
||||
"connections_description": "Настройка подключений к базам данных для маппинга.",
|
||||
"llm_description": "Настройка LLM провайдеров для документирования датасетов.",
|
||||
"llm_prompts_title": "Шаблоны промптов LLM",
|
||||
"llm_prompts_description": "Редактируйте промпты для документации, проверки дашбордов и генерации git-коммитов.",
|
||||
"llm_prompt_documentation": "Промпт документации",
|
||||
"llm_prompt_dashboard_validation": "Промпт проверки дашборда",
|
||||
"llm_prompt_git_commit": "Промпт git-коммита",
|
||||
"save_llm_prompts": "Сохранить промпты LLM",
|
||||
"logging": "Настройка логирования",
|
||||
"logging_description": "Настройка уровней логирования задач.",
|
||||
"storage_description": "Настройка путей и шаблонов файлового хранилища.",
|
||||
|
||||
Reference in New Issue
Block a user