spora 0.2.35 → 0.2.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/web-chat/chat.html +14 -12
- package/package.json +1 -1
package/dist/web-chat/chat.html
CHANGED
|
@@ -406,15 +406,14 @@
|
|
|
406
406
|
/* Intelligence bar */
|
|
407
407
|
.intelligence-bar {
|
|
408
408
|
flex: 1;
|
|
409
|
-
margin: 0
|
|
409
|
+
margin: 0 14px;
|
|
410
410
|
display: flex;
|
|
411
411
|
flex-direction: column;
|
|
412
412
|
gap: 3px;
|
|
413
|
-
max-width: 140px;
|
|
414
413
|
}
|
|
415
414
|
|
|
416
415
|
.intelligence-label {
|
|
417
|
-
font-size: 0.
|
|
416
|
+
font-size: 0.5625rem;
|
|
418
417
|
color: rgba(255, 255, 255, 0.2);
|
|
419
418
|
letter-spacing: 0.03em;
|
|
420
419
|
white-space: nowrap;
|
|
@@ -422,16 +421,16 @@
|
|
|
422
421
|
|
|
423
422
|
.intelligence-track {
|
|
424
423
|
width: 100%;
|
|
425
|
-
height:
|
|
424
|
+
height: 3px;
|
|
426
425
|
background: rgba(255, 255, 255, 0.06);
|
|
427
|
-
border-radius:
|
|
426
|
+
border-radius: 1.5px;
|
|
428
427
|
overflow: hidden;
|
|
429
428
|
}
|
|
430
429
|
|
|
431
430
|
.intelligence-fill {
|
|
432
431
|
height: 100%;
|
|
433
432
|
width: 0%;
|
|
434
|
-
border-radius:
|
|
433
|
+
border-radius: 1.5px;
|
|
435
434
|
background: linear-gradient(90deg, #389e77 0%, #4fc3a0 50%, #7ee8c7 100%);
|
|
436
435
|
transition: width 1.5s cubic-bezier(0.4, 0, 0.2, 1);
|
|
437
436
|
}
|
|
@@ -439,7 +438,7 @@
|
|
|
439
438
|
/* Heartbeat config button */
|
|
440
439
|
.heartbeat-config {
|
|
441
440
|
position: relative;
|
|
442
|
-
margin-left:
|
|
441
|
+
margin-left: auto;
|
|
443
442
|
}
|
|
444
443
|
|
|
445
444
|
.heartbeat-btn {
|
|
@@ -672,6 +671,7 @@
|
|
|
672
671
|
const chatContainer = document.getElementById('chatContainer');
|
|
673
672
|
const messageInput = document.getElementById('messageInput');
|
|
674
673
|
const sendButton = document.getElementById('sendButton');
|
|
674
|
+
const sleepIndicator = document.getElementById('sleepIndicator');
|
|
675
675
|
|
|
676
676
|
let isLoading = false;
|
|
677
677
|
let agentName = 'Your Spore';
|
|
@@ -746,8 +746,10 @@
|
|
|
746
746
|
const response = await fetch('/api/messages');
|
|
747
747
|
const data = await response.json();
|
|
748
748
|
if (data.messages && data.messages.length > 0) {
|
|
749
|
-
// Clear welcome message if there are existing messages
|
|
750
|
-
chatContainer.
|
|
749
|
+
// Clear welcome message if there are existing messages (keep sleep indicator)
|
|
750
|
+
Array.from(chatContainer.children).forEach(child => {
|
|
751
|
+
if (child !== sleepIndicator) child.remove();
|
|
752
|
+
});
|
|
751
753
|
data.messages.forEach(msg => {
|
|
752
754
|
addMessage(msg.role, msg.content, false);
|
|
753
755
|
});
|
|
@@ -913,7 +915,8 @@
|
|
|
913
915
|
|
|
914
916
|
messageDiv.appendChild(contentDiv);
|
|
915
917
|
|
|
916
|
-
|
|
918
|
+
// Insert before sleep indicator so it always stays at the bottom
|
|
919
|
+
chatContainer.insertBefore(messageDiv, sleepIndicator);
|
|
917
920
|
chatContainer.scrollTop = chatContainer.scrollHeight;
|
|
918
921
|
}
|
|
919
922
|
|
|
@@ -947,7 +950,7 @@
|
|
|
947
950
|
loadingDiv.appendChild(avatar);
|
|
948
951
|
loadingDiv.appendChild(loadingContent);
|
|
949
952
|
|
|
950
|
-
chatContainer.
|
|
953
|
+
chatContainer.insertBefore(loadingDiv, sleepIndicator);
|
|
951
954
|
chatContainer.scrollTop = chatContainer.scrollHeight;
|
|
952
955
|
}
|
|
953
956
|
|
|
@@ -1079,7 +1082,6 @@
|
|
|
1079
1082
|
});
|
|
1080
1083
|
|
|
1081
1084
|
// --- Sleep indicator with countdown ---
|
|
1082
|
-
const sleepIndicator = document.getElementById('sleepIndicator');
|
|
1083
1085
|
const sleepCountdown = document.getElementById('sleepCountdown');
|
|
1084
1086
|
const statusDot = document.querySelector('.status-dot');
|
|
1085
1087
|
const statusLabel = document.querySelector('.status-label');
|