{#if message.content}
-
- {@html renderMarkdown(message.content)}
-
+ {#if isEditing}
+
+ {:else}
+
+
+ {@html renderMarkdown(message.content)}
+
+ {#if isUser}
+
+ {/if}
+
+ {/if}
{:else if message.steps && message.steps.length > 0}
@@ -543,4 +611,113 @@
font-weight: 700;
color: inherit; /* inherit ensures it looks good in user bubbles too */
}
+
+ /* Edit functionality styling */
+ .message-content {
+ position: relative;
+ }
+
+ .edit-trigger {
+ position: absolute;
+ bottom: 0.5rem;
+ right: 0.5rem;
+ background: transparent;
+ border: none;
+ cursor: pointer;
+ font-size: 1rem;
+ opacity: 0;
+ pointer-events: none;
+ transition: opacity 0.2s;
+ padding: 0.25rem;
+ border-radius: 0.25rem;
+ color: var(--text-secondary);
+ }
+
+ .message-content:hover .edit-trigger {
+ opacity: 1;
+ pointer-events: auto;
+ background: var(--bg-tertiary);
+ color: var(--text-primary);
+ }
+
+ .edit-container {
+ display: flex;
+ flex-direction: column;
+ gap: 0.75rem;
+ }
+
+ .edit-textarea {
+ width: 100%;
+ padding: 0.75rem;
+ border: 1px solid var(--border);
+ border-radius: 0.5rem;
+ background: var(--bg-primary);
+ color: var(--text-primary);
+ font-family: inherit;
+ font-size: 0.95rem;
+ resize: vertical;
+ min-height: 3rem;
+ outline: none;
+ transition: border-color 0.2s;
+ }
+
+ .edit-textarea:focus {
+ border-color: var(--accent);
+ }
+
+ .user .edit-textarea {
+ background: rgba(255, 255, 255, 0.1);
+ color: white;
+ }
+
+ .agent .edit-textarea {
+ background: var(--bg-primary);
+ color: var(--text-primary);
+ }
+
+ .edit-actions {
+ display: flex;
+ gap: 0.5rem;
+ justify-content: flex-end;
+ }
+
+ .edit-btn {
+ padding: 0.5rem 1rem;
+ border-radius: 0.375rem;
+ font-size: 0.875rem;
+ font-weight: 600;
+ cursor: pointer;
+ transition: all 0.2s;
+ border: none;
+ }
+
+ .save-btn {
+ background: var(--accent);
+ color: white;
+ }
+
+ .save-btn:hover {
+ background: var(--accent-hover);
+ }
+
+ .cancel-btn {
+ background: transparent;
+ color: var(--text-secondary);
+ border: 1px solid var(--border);
+ }
+
+ .cancel-btn:hover {
+ background: var(--bg-tertiary);
+ color: var(--text-primary);
+ }
+
+ .user .cancel-btn {
+ color: rgba(255, 255, 255, 0.8);
+ border-color: rgba(255, 255, 255, 0.3);
+ }
+
+ .user .cancel-btn:hover {
+ background: rgba(255, 255, 255, 0.1);
+ color: white;
+ }