From a5107a2862d2b46b35b2ba3b8c78be7eebaea640 Mon Sep 17 00:00:00 2001
From: lois <lois@procolix.eu>
Date: Tue, 18 Mar 2025 15:42:07 +0100
Subject: [PATCH] Add infinite spinner

---
 panel/src/panel/static/style.sass             | 21 +++++++++++++++++++
 .../panel/templates/configuration_form.html   |  4 ++++
 2 files changed, 25 insertions(+)

diff --git a/panel/src/panel/static/style.sass b/panel/src/panel/static/style.sass
index 53e52a36..edeedf17 100644
--- a/panel/src/panel/static/style.sass
+++ b/panel/src/panel/static/style.sass
@@ -3,3 +3,24 @@ body
   margin: 0
   font-family: sans-serif
   box-sizing: border-box
+
+.loader
+  width: 48px
+  height: 48px
+  border: 5px solid #000
+  border-bottom-color: #FF3D00
+  border-radius: 50%
+  display: inline-block
+  box-sizing: border-box
+  animation: rotation 1s linear infinite
+
+@keyframes rotation
+  0% { transform: rotate(0deg) }
+  100% { transform: rotate(360deg) }
+
+#spinner-container
+  position: absolute
+  top: 50%
+  left: 50%
+  transform: translate(-50%, -50%)
+  display: block
diff --git a/panel/src/panel/templates/configuration_form.html b/panel/src/panel/templates/configuration_form.html
index 474aa4f6..e8665309 100644
--- a/panel/src/panel/templates/configuration_form.html
+++ b/panel/src/panel/templates/configuration_form.html
@@ -7,5 +7,9 @@
 
   <button class="button" type="submit" name="deploy">Deploy</button>
   <button class="button" type="submit" name="save">Save</button>
+
+  <div id="spinner-container">
+    <span class="loader"></span>
+  </div>
 </form>
 {% endblock %}