diff --git a/devtools/src/org/labkey/devtools/view/chat.jsp b/devtools/src/org/labkey/devtools/view/chat.jsp
index 82e001cca21..50772d33c8c 100644
--- a/devtools/src/org/labkey/devtools/view/chat.jsp
+++ b/devtools/src/org/labkey/devtools/view/chat.jsp
@@ -27,6 +27,14 @@
background-color: lightgray;
}
+ .loading-spinner {
+ margin: 8px 0;
+ }
+
+ .loading-spinner--hidden {
+ display: none;
+ }
+
function startChatting(chatEndpoint)
@@ -79,18 +87,23 @@ function startChatting(chatEndpoint)
{
appendTextResponse('Request failed: ' + req.status + ' ' + (req.statusText || ''));
}
+
+ const loadingSpinner = document.querySelector('.loading-spinner');
+ loadingSpinner.classList.add('loading-spinner--hidden');
}
}
function sendMessage(prompt)
{
- var url = new URL(chatEndpoint);
- url.searchParams.set('prompt', prompt);
- var req = new XMLHttpRequest();
- req.open('GET', url.toString(), true);
- req.onreadystatechange = handleChatResponse;
- req.send();
- }
+ var url = new URL(chatEndpoint);
+ url.searchParams.set('prompt', prompt);
+ var req = new XMLHttpRequest();
+ req.open('GET', url.toString(), true);
+ req.onreadystatechange = handleChatResponse;
+ req.send();
+ const loadingSpinner = document.querySelector('.loading-spinner');
+ loadingSpinner.classList.remove('loading-spinner--hidden');
+ }
let firstChat = true;
elPrompt.addEventListener('keydown', function (ev)
@@ -120,4 +133,9 @@ LABKEY.Utils.onReady(function()
+
+
+
+
+