This is an automated email from the ASF dual-hosted git repository.

domgarguilo pushed a commit to branch 2.1
in repository https://gitbox.apache.org/repos/asf/accumulo.git


The following commit(s) were added to refs/heads/2.1 by this push:
     new 00a0d21564 Bump monitor resources - DataTables and Bootstrap (#6147)
00a0d21564 is described below

commit 00a0d215643cb4677ed192343f834747aae9075f
Author: Dom G. <[email protected]>
AuthorDate: Tue Mar 3 12:02:07 2026 -0500

    Bump monitor resources - DataTables and Bootstrap (#6147)
    
    * Bump DataTables from 1.3.6 -> 1.3.11
    
    * Bump bootstrap 5.3.2->5.3.8 and boostrap icons 1.11.1->1.13.1
---
 LICENSE                                            |  14 +-
 assemble/src/main/resources/LICENSE                |  14 +-
 .../src/main/appended-resources/META-INF/LICENSE   |  14 +-
 .../external/bootstrap/css/bootstrap-icons.css     |  36 ++-
 .../resources/external/bootstrap/css/bootstrap.css | 262 ++++++++++-----------
 .../bootstrap/css/fonts/bootstrap-icons.woff       | Bin 0 -> 180288 bytes
 .../bootstrap/css/fonts/bootstrap-icons.woff2      | Bin 0 -> 134044 bytes
 .../external/bootstrap/fonts/bootstrap-icons.woff  | Bin 176200 -> 0 bytes
 .../external/bootstrap/fonts/bootstrap-icons.woff2 | Bin 130608 -> 0 bytes
 .../external/bootstrap/js/bootstrap.bundle.js      |  46 ++--
 .../datatables/css/dataTables.bootstrap5.css       |  16 +-
 .../datatables/js/dataTables.bootstrap5.js         |   2 +-
 .../external/datatables/js/jquery.dataTables.js    |  84 ++++---
 13 files changed, 261 insertions(+), 227 deletions(-)

diff --git a/LICENSE b/LICENSE
index ea8480af62..a50a4ff7e5 100644
--- a/LICENSE
+++ b/LICENSE
@@ -315,29 +315,29 @@ Files (in server/monitor/src/main/resources/):
 
     distributed under the MIT license (see above)
 
-## Bootstrap v5.3.2 (https://getbootstrap.com/)
+## Bootstrap v5.3.8 (https://getbootstrap.com/)
 
 Files (in server/monitor/src/main/resources/):
 * org/apache/accumulo/monitor/resources/external/bootstrap/**/*
 
-    Copyright 2011-2023 The Bootstrap Authors 
(https://github.com/twbs/bootstrap/graphs/contributors)
+    Copyright 2011-2025 The Bootstrap Authors 
(https://github.com/twbs/bootstrap/graphs/contributors)
     Licensed under the MIT license (see above and 
https://github.com/twbs/bootstrap/blob/main/LICENSE)
 
-## Bootstrap Icons v1.11.1 (https://icons.getbootstrap.com/)
+## Bootstrap Icons v1.13.1 (https://icons.getbootstrap.com/)
 
 Files (in server/monitor/src/main/resources/):
 * 
org/apache/accumulo/monitor/resources/external/bootstrap/css/bootstrap-icons.css
-* org/apache/accumulo/monitor/resources/external/bootstrap/fonts/*
+* org/apache/accumulo/monitor/resources/external/bootstrap/css/fonts/*
 
-    Copyright 2019-2023 The Bootstrap Authors
+    Copyright 2019-2024 The Bootstrap Authors
     Licensed under MIT (https://github.com/twbs/icons/blob/main/LICENSE)
 
-## DataTables 1.13.6 (https://datatables.net)
+## DataTables 1.13.11 (https://datatables.net)
 
 Files (in server/monitor/src/main/resources/):
 * org/apache/accumulo/monitor/resources/external/datatables/**/*
 
-    Copyright (c) 2008-2023 SpryMedia Ltd
+    Copyright (c) 2008-2024 SpryMedia Ltd
     Licensed under the MIT license (see above)
 
 **********
diff --git a/assemble/src/main/resources/LICENSE 
b/assemble/src/main/resources/LICENSE
index 71d4958aec..fbfb16beed 100644
--- a/assemble/src/main/resources/LICENSE
+++ b/assemble/src/main/resources/LICENSE
@@ -315,29 +315,29 @@ Files (in lib/accumulo-monitor-*.jar):
 
     distributed under the MIT license (see above)
 
-## Bootstrap v5.3.2 (https://getbootstrap.com/)
+## Bootstrap v5.3.8 (https://getbootstrap.com/)
 
 Files (in lib/accumulo-monitor-*.jar):
 * org/apache/accumulo/monitor/resources/external/bootstrap/**/*
 
-    Copyright 2011-2023 The Bootstrap Authors 
(https://github.com/twbs/bootstrap/graphs/contributors)
+    Copyright 2011-2025 The Bootstrap Authors 
(https://github.com/twbs/bootstrap/graphs/contributors)
     Licensed under the MIT license (see above and 
https://github.com/twbs/bootstrap/blob/main/LICENSE)
 
-## Bootstrap Icons v1.11.1 (https://icons.getbootstrap.com/)
+## Bootstrap Icons v1.13.1 (https://icons.getbootstrap.com/)
 
 Files (in lib/accumulo-monitor-*.jar):
 * 
org/apache/accumulo/monitor/resources/external/bootstrap/css/bootstrap-icons.css
-* org/apache/accumulo/monitor/resources/external/bootstrap/fonts/*
+* org/apache/accumulo/monitor/resources/external/bootstrap/css/fonts/*
 
-    Copyright 2019-2023 The Bootstrap Authors
+    Copyright 2019-2024 The Bootstrap Authors
     Licensed under MIT (https://github.com/twbs/icons/blob/main/LICENSE)
 
-## DataTables 1.13.6 (https://datatables.net)
+## DataTables 1.13.11 (https://datatables.net)
 
 Files (in lib/accumulo-monitor-*.jar):
 * org/apache/accumulo/monitor/resources/external/datatables/**/*
 
-    Copyright (c) 2008-2023 SpryMedia Ltd
+    Copyright (c) 2008-2024 SpryMedia Ltd
     Licensed under the MIT license (see above)
 
 **********
diff --git a/server/monitor/src/main/appended-resources/META-INF/LICENSE 
b/server/monitor/src/main/appended-resources/META-INF/LICENSE
index 7b5cfa4c72..8800fec7b7 100644
--- a/server/monitor/src/main/appended-resources/META-INF/LICENSE
+++ b/server/monitor/src/main/appended-resources/META-INF/LICENSE
@@ -77,29 +77,29 @@ Files (in lib/accumulo-monitor-*.jar):
 
     distributed under the MIT license (see above)
 
-## Bootstrap v5.3.2 (https://getbootstrap.com/)
+## Bootstrap v5.3.8 (https://getbootstrap.com/)
 
 Files (in lib/accumulo-monitor-*.jar):
 * org/apache/accumulo/monitor/resources/external/bootstrap/**/*
 
-    Copyright 2011-2023 The Bootstrap Authors 
(https://github.com/twbs/bootstrap/graphs/contributors)
+    Copyright 2011-2025 The Bootstrap Authors 
(https://github.com/twbs/bootstrap/graphs/contributors)
     Licensed under the MIT license (see above and 
https://github.com/twbs/bootstrap/blob/main/LICENSE)
 
-## Bootstrap Icons v1.11.1 (https://icons.getbootstrap.com/)
+## Bootstrap Icons v1.13.1 (https://icons.getbootstrap.com/)
 
 Files (in lib/accumulo-monitor-*.jar):
 * 
org/apache/accumulo/monitor/resources/external/bootstrap/css/bootstrap-icons.css
-* org/apache/accumulo/monitor/resources/external/bootstrap/fonts/*
+* org/apache/accumulo/monitor/resources/external/bootstrap/css/fonts/*
 
-    Copyright 2019-2023 The Bootstrap Authors
+    Copyright 2019-2024 The Bootstrap Authors
     Licensed under MIT (https://github.com/twbs/icons/blob/main/LICENSE)
 
-## DataTables 1.13.6 (https://datatables.net)
+## DataTables 1.13.11 (https://datatables.net)
 
 Files (in lib/accumulo-monitor-*.jar):
 * org/apache/accumulo/monitor/resources/external/datatables/**/*
 
-    Copyright (c) 2008-2023 SpryMedia Ltd
+    Copyright (c) 2008-2024 SpryMedia Ltd
     Licensed under the MIT license (see above)
 
 **********
diff --git 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/css/bootstrap-icons.css
 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/css/bootstrap-icons.css
index 8b494ac8a5..5f7ae28eaa 100644
--- 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/css/bootstrap-icons.css
+++ 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/css/bootstrap-icons.css
@@ -1,14 +1,14 @@
 /*!
- * Bootstrap Icons v1.11.1 (https://icons.getbootstrap.com/)
- * Copyright 2019-2023 The Bootstrap Authors
+ * Bootstrap Icons v1.13.1 (https://icons.getbootstrap.com/)
+ * Copyright 2019-2024 The Bootstrap Authors
  * Licensed under MIT (https://github.com/twbs/icons/blob/main/LICENSE)
  */
 
 @font-face {
   font-display: block;
   font-family: "bootstrap-icons";
-  src: url("../fonts/bootstrap-icons.woff2") format("woff2"),
-url("../fonts/bootstrap-icons.woff") format("woff");
+  src: url("./fonts/bootstrap-icons.woff2?e34853135f9e39acf64315236852cd5a") 
format("woff2"),
+url("./fonts/bootstrap-icons.woff?e34853135f9e39acf64315236852cd5a") 
format("woff");
 }
 
 .bi::before,
@@ -2076,3 +2076,31 @@ url("../fonts/bootstrap-icons.woff") format("woff");
 .bi-suitcase2-fill::before { content: "\f901"; }
 .bi-suitcase2::before { content: "\f902"; }
 .bi-vignette::before { content: "\f903"; }
+.bi-bluesky::before { content: "\f7f9"; }
+.bi-tux::before { content: "\f904"; }
+.bi-beaker-fill::before { content: "\f905"; }
+.bi-beaker::before { content: "\f906"; }
+.bi-flask-fill::before { content: "\f907"; }
+.bi-flask-florence-fill::before { content: "\f908"; }
+.bi-flask-florence::before { content: "\f909"; }
+.bi-flask::before { content: "\f90a"; }
+.bi-leaf-fill::before { content: "\f90b"; }
+.bi-leaf::before { content: "\f90c"; }
+.bi-measuring-cup-fill::before { content: "\f90d"; }
+.bi-measuring-cup::before { content: "\f90e"; }
+.bi-unlock2-fill::before { content: "\f90f"; }
+.bi-unlock2::before { content: "\f910"; }
+.bi-battery-low::before { content: "\f911"; }
+.bi-anthropic::before { content: "\f912"; }
+.bi-apple-music::before { content: "\f913"; }
+.bi-claude::before { content: "\f914"; }
+.bi-openai::before { content: "\f915"; }
+.bi-perplexity::before { content: "\f916"; }
+.bi-css::before { content: "\f917"; }
+.bi-javascript::before { content: "\f918"; }
+.bi-typescript::before { content: "\f919"; }
+.bi-fork-knife::before { content: "\f91a"; }
+.bi-globe-americas-fill::before { content: "\f91b"; }
+.bi-globe-asia-australia-fill::before { content: "\f91c"; }
+.bi-globe-central-south-asia-fill::before { content: "\f91d"; }
+.bi-globe-europe-africa-fill::before { content: "\f91e"; }
diff --git 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/css/bootstrap.css
 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/css/bootstrap.css
index 30aae55e18..b83f5079f2 100644
--- 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/css/bootstrap.css
+++ 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/css/bootstrap.css
@@ -1,7 +1,7 @@
 @charset "UTF-8";
 /*!
- * Bootstrap  v5.3.2 (https://getbootstrap.com/)
- * Copyright 2011-2023 The Bootstrap Authors
+ * Bootstrap  v5.3.8 (https://getbootstrap.com/)
+ * Copyright 2011-2025 The Bootstrap Authors
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  */
 :root,
@@ -517,8 +517,8 @@ legend {
   width: 100%;
   padding: 0;
   margin-bottom: 0.5rem;
-  font-size: calc(1.275rem + 0.3vw);
   line-height: inherit;
+  font-size: calc(1.275rem + 0.3vw);
 }
 @media (min-width: 1200px) {
   legend {
@@ -547,6 +547,10 @@ legend + * {
   -webkit-appearance: textfield;
   outline-offset: -2px;
 }
+[type=search]::-webkit-search-cancel-button {
+  cursor: pointer;
+  filter: grayscale(1);
+}
 
 /* rtl:raw:
 [type="tel"],
@@ -601,9 +605,9 @@ progress {
 }
 
 .display-1 {
-  font-size: calc(1.625rem + 4.5vw);
   font-weight: 300;
   line-height: 1.2;
+  font-size: calc(1.625rem + 4.5vw);
 }
 @media (min-width: 1200px) {
   .display-1 {
@@ -612,9 +616,9 @@ progress {
 }
 
 .display-2 {
-  font-size: calc(1.575rem + 3.9vw);
   font-weight: 300;
   line-height: 1.2;
+  font-size: calc(1.575rem + 3.9vw);
 }
 @media (min-width: 1200px) {
   .display-2 {
@@ -623,9 +627,9 @@ progress {
 }
 
 .display-3 {
-  font-size: calc(1.525rem + 3.3vw);
   font-weight: 300;
   line-height: 1.2;
+  font-size: calc(1.525rem + 3.3vw);
 }
 @media (min-width: 1200px) {
   .display-3 {
@@ -634,9 +638,9 @@ progress {
 }
 
 .display-4 {
-  font-size: calc(1.475rem + 2.7vw);
   font-weight: 300;
   line-height: 1.2;
+  font-size: calc(1.475rem + 2.7vw);
 }
 @media (min-width: 1200px) {
   .display-4 {
@@ -645,9 +649,9 @@ progress {
 }
 
 .display-5 {
-  font-size: calc(1.425rem + 2.1vw);
   font-weight: 300;
   line-height: 1.2;
+  font-size: calc(1.425rem + 2.1vw);
 }
 @media (min-width: 1200px) {
   .display-5 {
@@ -656,9 +660,9 @@ progress {
 }
 
 .display-6 {
-  font-size: calc(1.375rem + 1.5vw);
   font-weight: 300;
   line-height: 1.2;
+  font-size: calc(1.375rem + 1.5vw);
 }
 @media (min-width: 1200px) {
   .display-6 {
@@ -803,7 +807,7 @@ progress {
 }
 
 .col {
-  flex: 1 0 0%;
+  flex: 1 0 0;
 }
 
 .row-cols-auto > * {
@@ -1012,7 +1016,7 @@ progress {
 
 @media (min-width: 576px) {
   .col-sm {
-    flex: 1 0 0%;
+    flex: 1 0 0;
   }
   .row-cols-sm-auto > * {
     flex: 0 0 auto;
@@ -1181,7 +1185,7 @@ progress {
 }
 @media (min-width: 768px) {
   .col-md {
-    flex: 1 0 0%;
+    flex: 1 0 0;
   }
   .row-cols-md-auto > * {
     flex: 0 0 auto;
@@ -1350,7 +1354,7 @@ progress {
 }
 @media (min-width: 992px) {
   .col-lg {
-    flex: 1 0 0%;
+    flex: 1 0 0;
   }
   .row-cols-lg-auto > * {
     flex: 0 0 auto;
@@ -1519,7 +1523,7 @@ progress {
 }
 @media (min-width: 1200px) {
   .col-xl {
-    flex: 1 0 0%;
+    flex: 1 0 0;
   }
   .row-cols-xl-auto > * {
     flex: 0 0 auto;
@@ -1688,7 +1692,7 @@ progress {
 }
 @media (min-width: 1400px) {
   .col-xxl {
-    flex: 1 0 0%;
+    flex: 1 0 0;
   }
   .row-cols-xxl-auto > * {
     flex: 0 0 auto;
@@ -2156,10 +2160,6 @@ progress {
   display: block;
   padding: 0;
 }
-.form-control::-moz-placeholder {
-  color: var(--bs-secondary-color);
-  opacity: 1;
-}
 .form-control::placeholder {
   color: var(--bs-secondary-color);
   opacity: 1;
@@ -2607,9 +2607,11 @@ textarea.form-control-lg {
   top: 0;
   left: 0;
   z-index: 2;
+  max-width: 100%;
   height: 100%;
   padding: 1rem 0.75rem;
   overflow: hidden;
+  color: rgba(var(--bs-body-color-rgb), 0.65);
   text-align: start;
   text-overflow: ellipsis;
   white-space: nowrap;
@@ -2627,17 +2629,10 @@ textarea.form-control-lg {
 .form-floating > .form-control-plaintext {
   padding: 1rem 0.75rem;
 }
-.form-floating > .form-control::-moz-placeholder, .form-floating > 
.form-control-plaintext::-moz-placeholder {
-  color: transparent;
-}
 .form-floating > .form-control::placeholder,
 .form-floating > .form-control-plaintext::placeholder {
   color: transparent;
 }
-.form-floating > .form-control:not(:-moz-placeholder-shown), .form-floating > 
.form-control-plaintext:not(:-moz-placeholder-shown) {
-  padding-top: 1.625rem;
-  padding-bottom: 0.625rem;
-}
 .form-floating > .form-control:focus, .form-floating > 
.form-control:not(:placeholder-shown),
 .form-floating > .form-control-plaintext:focus,
 .form-floating > .form-control-plaintext:not(:placeholder-shown) {
@@ -2652,31 +2647,19 @@ textarea.form-control-lg {
 .form-floating > .form-select {
   padding-top: 1.625rem;
   padding-bottom: 0.625rem;
-}
-.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label {
-  color: rgba(var(--bs-body-color-rgb), 0.65);
-  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
+  padding-left: 0.75rem;
 }
 .form-floating > .form-control:focus ~ label,
 .form-floating > .form-control:not(:placeholder-shown) ~ label,
 .form-floating > .form-control-plaintext ~ label,
 .form-floating > .form-select ~ label {
-  color: rgba(var(--bs-body-color-rgb), 0.65);
   transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
 }
-.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label::after {
-  position: absolute;
-  inset: 1rem 0.375rem;
-  z-index: -1;
-  height: 1.5em;
-  content: "";
-  background-color: var(--bs-body-bg);
-  border-radius: var(--bs-border-radius);
+.form-floating > .form-control:-webkit-autofill ~ label {
+  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
 }
-.form-floating > .form-control:focus ~ label::after,
-.form-floating > .form-control:not(:placeholder-shown) ~ label::after,
-.form-floating > .form-control-plaintext ~ label::after,
-.form-floating > .form-select ~ label::after {
+.form-floating > textarea:focus ~ label::after,
+.form-floating > textarea:not(:placeholder-shown) ~ label::after {
   position: absolute;
   inset: 1rem 0.375rem;
   z-index: -1;
@@ -2685,9 +2668,8 @@ textarea.form-control-lg {
   background-color: var(--bs-body-bg);
   border-radius: var(--bs-border-radius);
 }
-.form-floating > .form-control:-webkit-autofill ~ label {
-  color: rgba(var(--bs-body-color-rgb), 0.65);
-  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
+.form-floating > textarea:disabled ~ label::after {
+  background-color: var(--bs-secondary-bg);
 }
 .form-floating > .form-control-plaintext ~ label {
   border-width: var(--bs-border-width) 0;
@@ -2696,10 +2678,6 @@ textarea.form-control-lg {
 .form-floating > .form-control:disabled ~ label {
   color: #6c757d;
 }
-.form-floating > :disabled ~ label::after,
-.form-floating > .form-control:disabled ~ label::after {
-  background-color: var(--bs-secondary-bg);
-}
 
 .input-group {
   position: relative;
@@ -2782,7 +2760,7 @@ textarea.form-control-lg {
   border-bottom-right-radius: 0;
 }
 .input-group > 
:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback)
 {
-  margin-left: calc(var(--bs-border-width) * -1);
+  margin-left: calc(-1 * var(--bs-border-width));
   border-top-left-radius: 0;
   border-bottom-left-radius: 0;
 }
@@ -2824,7 +2802,7 @@ textarea.form-control-lg {
 .was-validated .form-control:valid, .form-control.is-valid {
   border-color: var(--bs-form-valid-border-color);
   padding-right: calc(1.5em + 0.75rem);
-  background-image: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' 
d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 
1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
+  background-image: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' 
d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 
1.2.7l-4 4.6c-.43.5-.8.4-1.1.1'/%3e%3c/svg%3e");
   background-repeat: no-repeat;
   background-position: right calc(0.375em + 0.1875rem) center;
   background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
@@ -2843,7 +2821,7 @@ textarea.form-control-lg {
   border-color: var(--bs-form-valid-border-color);
 }
 .was-validated .form-select:valid:not([multiple]):not([size]), .was-validated 
.form-select:valid:not([multiple])[size="1"], 
.form-select.is-valid:not([multiple]):not([size]), 
.form-select.is-valid:not([multiple])[size="1"] {
-  --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' 
d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 
1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
+  --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' 
d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 
1.2.7l-4 4.6c-.43.5-.8.4-1.1.1'/%3e%3c/svg%3e");
   padding-right: 4.125rem;
   background-position: right 0.75rem center, center right 2.25rem;
   background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
@@ -3042,6 +3020,9 @@ textarea.form-control-lg {
 .btn-check:checked + .btn:focus-visible, :not(.btn-check) + 
.btn:active:focus-visible, .btn:first-child:active:focus-visible, 
.btn.active:focus-visible, .btn.show:focus-visible {
   box-shadow: var(--bs-btn-focus-box-shadow);
 }
+.btn-check:checked:focus-visible + .btn {
+  box-shadow: var(--bs-btn-focus-box-shadow);
+}
 .btn:disabled, .btn.disabled, fieldset:disabled .btn {
   color: var(--bs-btn-disabled-color);
   pointer-events: none;
@@ -3752,7 +3733,7 @@ textarea.form-control-lg {
 }
 .btn-group > :not(.btn-check:first-child) + .btn,
 .btn-group > .btn-group:not(:first-child) {
-  margin-left: calc(var(--bs-border-width) * -1);
+  margin-left: calc(-1 * var(--bs-border-width));
 }
 .btn-group > .btn:not(:last-child):not(.dropdown-toggle),
 .btn-group > .btn.dropdown-toggle-split:first-child,
@@ -3799,14 +3780,15 @@ textarea.form-control-lg {
 }
 .btn-group-vertical > .btn:not(:first-child),
 .btn-group-vertical > .btn-group:not(:first-child) {
-  margin-top: calc(var(--bs-border-width) * -1);
+  margin-top: calc(-1 * var(--bs-border-width));
 }
 .btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
 .btn-group-vertical > .btn-group:not(:last-child) > .btn {
   border-bottom-right-radius: 0;
   border-bottom-left-radius: 0;
 }
-.btn-group-vertical > .btn ~ .btn,
+.btn-group-vertical > .btn:nth-child(n+3),
+.btn-group-vertical > :not(.btn-check) + .btn,
 .btn-group-vertical > .btn-group:not(:first-child) > .btn {
   border-top-left-radius: 0;
   border-top-right-radius: 0;
@@ -3930,8 +3912,8 @@ textarea.form-control-lg {
 
 .nav-justified > .nav-link,
 .nav-justified .nav-item {
-  flex-basis: 0;
   flex-grow: 1;
+  flex-basis: 0;
   text-align: center;
 }
 
@@ -4032,8 +4014,8 @@ textarea.form-control-lg {
 }
 
 .navbar-collapse {
-  flex-basis: 100%;
   flex-grow: 1;
+  flex-basis: 100%;
   align-items: center;
 }
 
@@ -4528,7 +4510,7 @@ textarea.form-control-lg {
     flex-flow: row wrap;
   }
   .card-group > .card {
-    flex: 1 0 0%;
+    flex: 1 0 0;
     margin-bottom: 0;
   }
   .card-group > .card + .card {
@@ -4539,24 +4521,24 @@ textarea.form-control-lg {
     border-top-right-radius: 0;
     border-bottom-right-radius: 0;
   }
-  .card-group > .card:not(:last-child) .card-img-top,
-  .card-group > .card:not(:last-child) .card-header {
+  .card-group > .card:not(:last-child) > .card-img-top,
+  .card-group > .card:not(:last-child) > .card-header {
     border-top-right-radius: 0;
   }
-  .card-group > .card:not(:last-child) .card-img-bottom,
-  .card-group > .card:not(:last-child) .card-footer {
+  .card-group > .card:not(:last-child) > .card-img-bottom,
+  .card-group > .card:not(:last-child) > .card-footer {
     border-bottom-right-radius: 0;
   }
   .card-group > .card:not(:first-child) {
     border-top-left-radius: 0;
     border-bottom-left-radius: 0;
   }
-  .card-group > .card:not(:first-child) .card-img-top,
-  .card-group > .card:not(:first-child) .card-header {
+  .card-group > .card:not(:first-child) > .card-img-top,
+  .card-group > .card:not(:first-child) > .card-header {
     border-top-left-radius: 0;
   }
-  .card-group > .card:not(:first-child) .card-img-bottom,
-  .card-group > .card:not(:first-child) .card-footer {
+  .card-group > .card:not(:first-child) > .card-img-bottom,
+  .card-group > .card:not(:first-child) > .card-footer {
     border-bottom-left-radius: 0;
   }
 }
@@ -4573,12 +4555,11 @@ textarea.form-control-lg {
   --bs-accordion-btn-padding-y: 1rem;
   --bs-accordion-btn-color: var(--bs-body-color);
   --bs-accordion-btn-bg: var(--bs-accordion-bg);
-  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' 
fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 
0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 
1 0-.708z'/%3e%3c/svg%3e");
+  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' 
stroke='%23212529' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath 
d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
   --bs-accordion-btn-icon-width: 1.25rem;
   --bs-accordion-btn-icon-transform: rotate(-180deg);
   --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
-  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' 
fill='%23052c65'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 
0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 
1 0-.708z'/%3e%3c/svg%3e");
-  --bs-accordion-btn-focus-border-color: #86b7fe;
+  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' 
stroke='%23052c65' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath 
d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
   --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
   --bs-accordion-body-padding-x: 1.25rem;
   --bs-accordion-body-padding-y: 1rem;
@@ -4636,7 +4617,6 @@ textarea.form-control-lg {
 }
 .accordion-button:focus {
   z-index: 3;
-  border-color: var(--bs-accordion-btn-focus-border-color);
   outline: 0;
   box-shadow: var(--bs-accordion-btn-focus-box-shadow);
 }
@@ -4654,7 +4634,7 @@ textarea.form-control-lg {
   border-top-left-radius: var(--bs-accordion-border-radius);
   border-top-right-radius: var(--bs-accordion-border-radius);
 }
-.accordion-item:first-of-type .accordion-button {
+.accordion-item:first-of-type > .accordion-header .accordion-button {
   border-top-left-radius: var(--bs-accordion-inner-border-radius);
   border-top-right-radius: var(--bs-accordion-inner-border-radius);
 }
@@ -4665,11 +4645,11 @@ textarea.form-control-lg {
   border-bottom-right-radius: var(--bs-accordion-border-radius);
   border-bottom-left-radius: var(--bs-accordion-border-radius);
 }
-.accordion-item:last-of-type .accordion-button.collapsed {
+.accordion-item:last-of-type > .accordion-header .accordion-button.collapsed {
   border-bottom-right-radius: var(--bs-accordion-inner-border-radius);
   border-bottom-left-radius: var(--bs-accordion-inner-border-radius);
 }
-.accordion-item:last-of-type .accordion-collapse {
+.accordion-item:last-of-type > .accordion-collapse {
   border-bottom-right-radius: var(--bs-accordion-border-radius);
   border-bottom-left-radius: var(--bs-accordion-border-radius);
 }
@@ -4678,27 +4658,26 @@ textarea.form-control-lg {
   padding: var(--bs-accordion-body-padding-y) 
var(--bs-accordion-body-padding-x);
 }
 
-.accordion-flush .accordion-collapse {
-  border-width: 0;
-}
-.accordion-flush .accordion-item {
+.accordion-flush > .accordion-item {
   border-right: 0;
   border-left: 0;
   border-radius: 0;
 }
-.accordion-flush .accordion-item:first-child {
+.accordion-flush > .accordion-item:first-child {
   border-top: 0;
 }
-.accordion-flush .accordion-item:last-child {
+.accordion-flush > .accordion-item:last-child {
   border-bottom: 0;
 }
-.accordion-flush .accordion-item .accordion-button, .accordion-flush 
.accordion-item .accordion-button.collapsed {
+.accordion-flush > .accordion-item > .accordion-collapse,
+.accordion-flush > .accordion-item > .accordion-header .accordion-button,
+.accordion-flush > .accordion-item > .accordion-header 
.accordion-button.collapsed {
   border-radius: 0;
 }
 
 [data-bs-theme=dark] .accordion-button::after {
-  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' 
fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 
0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 
1 0-.708z'/%3e%3c/svg%3e");
-  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' 
fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 
0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 
1 0-.708z'/%3e%3c/svg%3e");
+  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' 
fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 
0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 
1 0-.708'/%3e%3c/svg%3e");
+  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' 
fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 
0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 
1 0-.708'/%3e%3c/svg%3e");
 }
 
 .breadcrumb {
@@ -4802,7 +4781,7 @@ textarea.form-control-lg {
 }
 
 .page-item:not(:first-child) .page-link {
-  margin-left: calc(var(--bs-border-width) * -1);
+  margin-left: calc(-1 * var(--bs-border-width));
 }
 .page-item:first-child .page-link {
   border-top-left-radius: var(--bs-pagination-border-radius);
@@ -4951,7 +4930,7 @@ textarea.form-control-lg {
 
 @keyframes progress-bar-stripes {
   0% {
-    background-position-x: 1rem;
+    background-position-x: var(--bs-progress-height);
   }
 }
 .progress,
@@ -5045,22 +5024,6 @@ textarea.form-control-lg {
   counter-increment: section;
 }
 
-.list-group-item-action {
-  width: 100%;
-  color: var(--bs-list-group-action-color);
-  text-align: inherit;
-}
-.list-group-item-action:hover, .list-group-item-action:focus {
-  z-index: 1;
-  color: var(--bs-list-group-action-hover-color);
-  text-decoration: none;
-  background-color: var(--bs-list-group-action-hover-bg);
-}
-.list-group-item-action:active {
-  color: var(--bs-list-group-action-active-color);
-  background-color: var(--bs-list-group-action-active-bg);
-}
-
 .list-group-item {
   position: relative;
   display: block;
@@ -5097,6 +5060,22 @@ textarea.form-control-lg {
   border-top-width: var(--bs-list-group-border-width);
 }
 
+.list-group-item-action {
+  width: 100%;
+  color: var(--bs-list-group-action-color);
+  text-align: inherit;
+}
+.list-group-item-action:not(.active):hover, 
.list-group-item-action:not(.active):focus {
+  z-index: 1;
+  color: var(--bs-list-group-action-hover-color);
+  text-decoration: none;
+  background-color: var(--bs-list-group-action-hover-bg);
+}
+.list-group-item-action:not(.active):active {
+  color: var(--bs-list-group-action-active-color);
+  background-color: var(--bs-list-group-action-active-bg);
+}
+
 .list-group-horizontal {
   flex-direction: row;
 }
@@ -5356,19 +5335,19 @@ textarea.form-control-lg {
 
 .btn-close {
   --bs-btn-close-color: #000;
-  --bs-btn-close-bg: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath 
d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 
8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 
1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");
+  --bs-btn-close-bg: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath 
d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 
8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 
1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414'/%3e%3c/svg%3e");
   --bs-btn-close-opacity: 0.5;
   --bs-btn-close-hover-opacity: 0.75;
   --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
   --bs-btn-close-focus-opacity: 1;
   --bs-btn-close-disabled-opacity: 0.25;
-  --bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);
   box-sizing: content-box;
   width: 1em;
   height: 1em;
   padding: 0.25em 0.25em;
   color: var(--bs-btn-close-color);
   background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;
+  filter: var(--bs-btn-close-filter);
   border: 0;
   border-radius: 0.375rem;
   opacity: var(--bs-btn-close-opacity);
@@ -5392,11 +5371,16 @@ textarea.form-control-lg {
 }
 
 .btn-close-white {
-  filter: var(--bs-btn-close-white-filter);
+  --bs-btn-close-filter: invert(1) grayscale(100%) brightness(200%);
 }
 
-[data-bs-theme=dark] .btn-close {
-  filter: var(--bs-btn-close-white-filter);
+:root,
+[data-bs-theme=light] {
+  --bs-btn-close-filter: ;
+}
+
+[data-bs-theme=dark] {
+  --bs-btn-close-filter: invert(1) grayscale(100%) brightness(200%);
 }
 
 .toast {
@@ -5473,7 +5457,7 @@ textarea.form-control-lg {
   --bs-modal-width: 500px;
   --bs-modal-padding: 1rem;
   --bs-modal-margin: 0.5rem;
-  --bs-modal-color: ;
+  --bs-modal-color: var(--bs-body-color);
   --bs-modal-bg: var(--bs-body-bg);
   --bs-modal-border-color: var(--bs-border-color-translucent);
   --bs-modal-border-width: var(--bs-border-width);
@@ -5509,8 +5493,8 @@ textarea.form-control-lg {
   pointer-events: none;
 }
 .modal.fade .modal-dialog {
-  transition: transform 0.3s ease-out;
   transform: translate(0, -50px);
+  transition: transform 0.3s ease-out;
 }
 @media (prefers-reduced-motion: reduce) {
   .modal.fade .modal-dialog {
@@ -5578,7 +5562,6 @@ textarea.form-control-lg {
   display: flex;
   flex-shrink: 0;
   align-items: center;
-  justify-content: space-between;
   padding: var(--bs-modal-header-padding);
   border-bottom: var(--bs-modal-header-border-width) solid 
var(--bs-modal-header-border-color);
   border-top-left-radius: var(--bs-modal-inner-border-radius);
@@ -5586,7 +5569,10 @@ textarea.form-control-lg {
 }
 .modal-header .btn-close {
   padding: calc(var(--bs-modal-header-padding-y) * 0.5) 
calc(var(--bs-modal-header-padding-x) * 0.5);
-  margin: calc(-0.5 * var(--bs-modal-header-padding-y)) calc(-0.5 * 
var(--bs-modal-header-padding-x)) calc(-0.5 * var(--bs-modal-header-padding-y)) 
auto;
+  margin-top: calc(-0.5 * var(--bs-modal-header-padding-y));
+  margin-right: calc(-0.5 * var(--bs-modal-header-padding-x));
+  margin-bottom: calc(-0.5 * var(--bs-modal-header-padding-y));
+  margin-left: auto;
 }
 
 .modal-title {
@@ -6107,6 +6093,7 @@ textarea.form-control-lg {
   color: #fff;
   text-align: center;
   background: none;
+  filter: var(--bs-carousel-control-icon-filter);
   border: 0;
   opacity: 0.5;
   transition: opacity 0.15s ease;
@@ -6144,20 +6131,12 @@ textarea.form-control-lg {
   background-size: 100% 100%;
 }
 
-/* rtl:options: {
-  "autoRename": true,
-  "stringMap":[ {
-    "name"    : "prev-next",
-    "search"  : "prev",
-    "replace" : "next"
-  } ]
-} */
 .carousel-control-prev-icon {
-  background-image: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath 
d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 
1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e");
+  background-image: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath 
d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 
1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0'/%3e%3c/svg%3e") 
/*rtl:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' 
viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 
6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 [...]
 }
 
 .carousel-control-next-icon {
-  background-image: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath 
d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 
1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
+  background-image: url("data:image/svg+xml,%3csvg 
xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath 
d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 
1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e") 
/*rtl:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' 
viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 
.708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 
[...]
 }
 
 .carousel-indicators {
@@ -6183,7 +6162,7 @@ textarea.form-control-lg {
   margin-left: 3px;
   text-indent: -999px;
   cursor: pointer;
-  background-color: #fff;
+  background-color: var(--bs-carousel-indicator-active-bg);
   background-clip: padding-box;
   border: 0;
   border-top: 10px solid transparent;
@@ -6207,36 +6186,33 @@ textarea.form-control-lg {
   left: 15%;
   padding-top: 1.25rem;
   padding-bottom: 1.25rem;
-  color: #fff;
+  color: var(--bs-carousel-caption-color);
   text-align: center;
 }
 
-.carousel-dark .carousel-control-prev-icon,
-.carousel-dark .carousel-control-next-icon {
-  filter: invert(1) grayscale(100);
-}
-.carousel-dark .carousel-indicators [data-bs-target] {
-  background-color: #000;
-}
-.carousel-dark .carousel-caption {
-  color: #000;
+.carousel-dark {
+  --bs-carousel-indicator-active-bg: #000;
+  --bs-carousel-caption-color: #000;
+  --bs-carousel-control-icon-filter: invert(1) grayscale(100);
 }
 
-[data-bs-theme=dark] .carousel .carousel-control-prev-icon,
-[data-bs-theme=dark] .carousel .carousel-control-next-icon, 
[data-bs-theme=dark].carousel .carousel-control-prev-icon,
-[data-bs-theme=dark].carousel .carousel-control-next-icon {
-  filter: invert(1) grayscale(100);
-}
-[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target], 
[data-bs-theme=dark].carousel .carousel-indicators [data-bs-target] {
-  background-color: #000;
+:root,
+[data-bs-theme=light] {
+  --bs-carousel-indicator-active-bg: #fff;
+  --bs-carousel-caption-color: #fff;
+  --bs-carousel-control-icon-filter: ;
 }
-[data-bs-theme=dark] .carousel .carousel-caption, 
[data-bs-theme=dark].carousel .carousel-caption {
-  color: #000;
+
+[data-bs-theme=dark] {
+  --bs-carousel-indicator-active-bg: #000;
+  --bs-carousel-caption-color: #000;
+  --bs-carousel-control-icon-filter: invert(1) grayscale(100);
 }
 
 .spinner-grow,
 .spinner-border {
   display: inline-block;
+  flex-shrink: 0;
   width: var(--bs-spinner-width);
   height: var(--bs-spinner-height);
   vertical-align: var(--bs-spinner-vertical-align);
@@ -6777,7 +6753,6 @@ textarea.form-control-lg {
 .offcanvas-header {
   display: flex;
   align-items: center;
-  justify-content: space-between;
   padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
 }
 .offcanvas-header .btn-close {
@@ -6785,6 +6760,7 @@ textarea.form-control-lg {
   margin-top: calc(-0.5 * var(--bs-offcanvas-padding-y));
   margin-right: calc(-0.5 * var(--bs-offcanvas-padding-x));
   margin-bottom: calc(-0.5 * var(--bs-offcanvas-padding-y));
+  margin-left: auto;
 }
 
 .offcanvas-title {
@@ -7185,6 +7161,10 @@ textarea.form-control-lg {
 .visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {
   position: absolute !important;
 }
+.visually-hidden *,
+.visually-hidden-focusable:not(:focus):not(:focus-within) * {
+  overflow: hidden !important;
+}
 
 .stretched-link::after {
   position: absolute;
diff --git 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/css/fonts/bootstrap-icons.woff
 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/css/fonts/bootstrap-icons.woff
new file mode 100644
index 0000000000..a4fa4f024c
Binary files /dev/null and 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/css/fonts/bootstrap-icons.woff
 differ
diff --git 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/css/fonts/bootstrap-icons.woff2
 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/css/fonts/bootstrap-icons.woff2
new file mode 100644
index 0000000000..4d8c490e1e
Binary files /dev/null and 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/css/fonts/bootstrap-icons.woff2
 differ
diff --git 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/fonts/bootstrap-icons.woff
 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/fonts/bootstrap-icons.woff
deleted file mode 100644
index dbeeb05567..0000000000
Binary files 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/fonts/bootstrap-icons.woff
 and /dev/null differ
diff --git 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/fonts/bootstrap-icons.woff2
 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/fonts/bootstrap-icons.woff2
deleted file mode 100644
index 87032d17e7..0000000000
Binary files 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/fonts/bootstrap-icons.woff2
 and /dev/null differ
diff --git 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/js/bootstrap.bundle.js
 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/js/bootstrap.bundle.js
index 37e6f95dc9..93cbd3feed 100644
--- 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/js/bootstrap.bundle.js
+++ 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/bootstrap/js/bootstrap.bundle.js
@@ -1,6 +1,6 @@
 /*!
-  * Bootstrap v5.3.2 (https://getbootstrap.com/)
-  * Copyright 2011-2023 The Bootstrap Authors 
(https://github.com/twbs/bootstrap/graphs/contributors)
+  * Bootstrap v5.3.8 (https://getbootstrap.com/)
+  * Copyright 2011-2025 The Bootstrap Authors 
(https://github.com/twbs/bootstrap/graphs/contributors)
   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
   */
 (function (global, factory) {
@@ -205,12 +205,11 @@
    * @param {HTMLElement} element
    * @return void
    *
-   * @see 
https://www.charistheo.io/blog/2021/02/restart-a-css-animation-with-javascript/#restarting-a-css-animation
+   * @see 
https://www.harrytheo.com/blog/2021/02/restart-a-css-animation-with-javascript/#restarting-a-css-animation
    */
   const reflow = element => {
     element.offsetHeight; // eslint-disable-line no-unused-expressions
   };
-
   const getjQuery = () => {
     if (window.jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {
       return window.jQuery;
@@ -251,7 +250,7 @@
     });
   };
   const execute = (possibleCallback, args = [], defaultValue = 
possibleCallback) => {
-    return typeof possibleCallback === 'function' ? possibleCallback(...args) 
: defaultValue;
+    return typeof possibleCallback === 'function' ? 
possibleCallback.call(...args) : defaultValue;
   };
   const executeAfterTransition = (callback, transitionElement, 
waitForTransition = true) => {
     if (!waitForTransition) {
@@ -573,7 +572,7 @@
       const bsKeys = Object.keys(element.dataset).filter(key => 
key.startsWith('bs') && !key.startsWith('bsConfig'));
       for (const key of bsKeys) {
         let pureKey = key.replace(/^bs/, '');
-        pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, 
pureKey.length);
+        pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1);
         attributes[pureKey] = normalizeData(element.dataset[key]);
       }
       return attributes;
@@ -648,7 +647,7 @@
    * Constants
    */
 
-  const VERSION = '5.3.2';
+  const VERSION = '5.3.8';
 
   /**
    * Class definition
@@ -674,6 +673,8 @@
         this[propertyName] = null;
       }
     }
+
+    // Private
     _queueCallback(callback, element, isAnimated = true) {
       executeAfterTransition(callback, element, isAnimated);
     }
@@ -729,9 +730,9 @@
       if (hrefAttribute.includes('#') && !hrefAttribute.startsWith('#')) {
         hrefAttribute = `#${hrefAttribute.split('#')[1]}`;
       }
-      selector = hrefAttribute && hrefAttribute !== '#' ? 
parseSelector(hrefAttribute.trim()) : null;
+      selector = hrefAttribute && hrefAttribute !== '#' ? hrefAttribute.trim() 
: null;
     }
-    return selector;
+    return selector ? selector.split(',').map(sel => 
parseSelector(sel)).join(',') : null;
   };
   const SelectorEngine = {
     find(selector, element = document.documentElement) {
@@ -1605,11 +1606,11 @@
       this._element.style[dimension] = '';
       this._queueCallback(complete, this._element, true);
     }
+
+    // Private
     _isShown(element = this._element) {
       return element.classList.contains(CLASS_NAME_SHOW$7);
     }
-
-    // Private
     _configAfterMerge(config) {
       config.toggle = Boolean(config.toggle); // Coerce string values
       config.parent = getElement(config.parent);
@@ -2667,7 +2668,6 @@
     var popperOffsets = computeOffsets({
       reference: referenceClientRect,
       element: popperRect,
-      strategy: 'absolute',
       placement: placement
     });
     var popperClientRect = rectToClientRect(Object.assign({}, popperRect, 
popperOffsets));
@@ -2995,7 +2995,6 @@
     state.modifiersData[name] = computeOffsets({
       reference: state.rects.reference,
       element: state.rects.popper,
-      strategy: 'absolute',
       placement: state.placement
     });
   } // eslint-disable-next-line import/no-unused-modules
@@ -3702,7 +3701,7 @@
     }
     _createPopper() {
       if (typeof Popper === 'undefined') {
-        throw new TypeError('Bootstrap\'s dropdowns require Popper 
(https://popper.js.org)');
+        throw new TypeError('Bootstrap\'s dropdowns require Popper 
(https://popper.js.org/docs/v2/)');
       }
       let referenceElement = this._element;
       if (this._config.reference === 'parent') {
@@ -3781,7 +3780,7 @@
       }
       return {
         ...defaultBsPopperConfig,
-        ...execute(this._config.popperConfig, [defaultBsPopperConfig])
+        ...execute(this._config.popperConfig, [undefined, 
defaultBsPopperConfig])
       };
     }
     _selectMenuItem({
@@ -3916,7 +3915,6 @@
     // if false, we use the backdrop helper without adding any element to the 
dom
     rootElement: 'body' // give the choice to place backdrop under different 
elements
   };
-
   const DefaultType$8 = {
     className: 'string',
     clickCallback: '(function|null)',
@@ -4041,7 +4039,6 @@
     autofocus: true,
     trapElement: null // The element to trap focus inside of
   };
-
   const DefaultType$7 = {
     autofocus: 'boolean',
     trapElement: 'element'
@@ -4768,7 +4765,10 @@
     br: [],
     col: [],
     code: [],
+    dd: [],
     div: [],
+    dl: [],
+    dt: [],
     em: [],
     hr: [],
     h1: [],
@@ -4802,7 +4802,6 @@
    *
    * Shout-out to Angular 
https://github.com/angular/angular/blob/15.2.8/packages/core/src/sanitization/url_sanitizer.ts#L38
    */
-  // eslint-disable-next-line unicorn/better-regex
   const SAFE_URL_PATTERN = 
/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i;
   const allowedAttribute = (attribute, allowedAttributeList) => {
     const attributeName = attribute.nodeName.toLowerCase();
@@ -4967,7 +4966,7 @@
       return this._config.sanitize ? sanitizeHtml(arg, this._config.allowList, 
this._config.sanitizeFn) : arg;
     }
     _resolvePossibleFunction(arg) {
-      return execute(arg, [this]);
+      return execute(arg, [undefined, this]);
     }
     _putElementInTemplate(element, templateElement) {
       if (this._config.html) {
@@ -5066,7 +5065,7 @@
   class Tooltip extends BaseComponent {
     constructor(element, config) {
       if (typeof Popper === 'undefined') {
-        throw new TypeError('Bootstrap\'s tooltips require Popper 
(https://popper.js.org)');
+        throw new TypeError('Bootstrap\'s tooltips require Popper 
(https://popper.js.org/docs/v2/)');
       }
       super(element, config);
 
@@ -5112,7 +5111,6 @@
       if (!this._isEnabled) {
         return;
       }
-      this._activeTrigger.click = !this._activeTrigger.click;
       if (this._isShown()) {
         this._leave();
         return;
@@ -5300,7 +5298,7 @@
       return offset;
     }
     _resolvePossibleFunction(arg) {
-      return execute(arg, [this._element]);
+      return execute(arg, [this._element, this._element]);
     }
     _getPopperConfig(attachment) {
       const defaultBsPopperConfig = {
@@ -5338,7 +5336,7 @@
       };
       return {
         ...defaultBsPopperConfig,
-        ...execute(this._config.popperConfig, [defaultBsPopperConfig])
+        ...execute(this._config.popperConfig, [undefined, 
defaultBsPopperConfig])
       };
     }
     _setListeners() {
@@ -5347,6 +5345,7 @@
         if (trigger === 'click') {
           EventHandler.on(this._element, 
this.constructor.eventName(EVENT_CLICK$1), this._config.selector, event => {
             const context = this._initializeOnDelegatedTarget(event);
+            context._activeTrigger[TRIGGER_CLICK] = !(context._isShown() && 
context._activeTrigger[TRIGGER_CLICK]);
             context.toggle();
           });
         } else if (trigger !== TRIGGER_MANUAL) {
@@ -6212,7 +6211,6 @@
     }
 
     // Private
-
     _maybeScheduleHide() {
       if (!this._config.autohide) {
         return;
diff --git 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/datatables/css/dataTables.bootstrap5.css
 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/datatables/css/dataTables.bootstrap5.css
index 1ceee6e8ae..45201559a4 100644
--- 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/datatables/css/dataTables.bootstrap5.css
+++ 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/datatables/css/dataTables.bootstrap5.css
@@ -19,16 +19,18 @@ table.dataTable td.dt-control {
 table.dataTable td.dt-control:before {
   display: inline-block;
   color: rgba(0, 0, 0, 0.5);
-  content: "►";
+  content: "▶";
 }
 table.dataTable tr.dt-hasChild td.dt-control:before {
   content: "▼";
 }
 
-html.dark table.dataTable td.dt-control:before {
+html.dark table.dataTable td.dt-control:before,
+:root[data-bs-theme=dark] table.dataTable td.dt-control:before {
   color: rgba(255, 255, 255, 0.5);
 }
-html.dark table.dataTable tr.dt-hasChild td.dt-control:before {
+html.dark table.dataTable tr.dt-hasChild td.dt-control:before,
+:root[data-bs-theme=dark] table.dataTable tr.dt-hasChild td.dt-control:before {
   color: rgba(255, 255, 255, 0.5);
 }
 
@@ -110,6 +112,7 @@ div.dataTables_processing {
   margin-top: -26px;
   text-align: center;
   padding: 2px;
+  z-index: 10;
 }
 div.dataTables_processing > div:last-child {
   position: relative;
@@ -291,10 +294,10 @@ table.dataTable > tbody > tr.selected a {
   color: rgb(9, 10, 11);
   color: rgb(var(--dt-row-selected-link));
 }
-table.dataTable.table-striped > tbody > tr.odd > * {
+table.dataTable.table-striped > tbody > tr:nth-of-type(2n+1) > * {
   box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-stripe), 0.05);
 }
-table.dataTable.table-striped > tbody > tr.odd.selected > * {
+table.dataTable.table-striped > tbody > tr:nth-of-type(2n+1).selected > * {
   box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.95);
   box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.95);
 }
@@ -389,6 +392,9 @@ div.dataTables_scrollFoot > .dataTables_scrollFootInner > 
table {
 table.dataTable.table-sm > thead > tr > th:not(.sorting_disabled) {
   padding-right: 20px;
 }
+table.dataTable.table-sm > thead > tr > th:not(.sorting_disabled):before, 
table.dataTable.table-sm > thead > tr > th:not(.sorting_disabled):after {
+  right: 5px;
+}
 
 table.table-bordered.dataTable {
   border-right-width: 0;
diff --git 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/datatables/js/dataTables.bootstrap5.js
 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/datatables/js/dataTables.bootstrap5.js
index 088e1a2c68..cc375f0fb8 100644
--- 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/datatables/js/dataTables.bootstrap5.js
+++ 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/datatables/js/dataTables.bootstrap5.js
@@ -54,7 +54,7 @@ var DataTable = $.fn.dataTable;
  * DataTables 1.10 or newer.
  *
  * This file sets the defaults and adds options to DataTables to style its
- * controls using Bootstrap. See http://datatables.net/manual/styling/bootstrap
+ * controls using Bootstrap. See 
https://datatables.net/manual/styling/bootstrap
  * for further information.
  */
 
diff --git 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/datatables/js/jquery.dataTables.js
 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/datatables/js/jquery.dataTables.js
index e6d018a198..3361ce6f7c 100644
--- 
a/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/datatables/js/jquery.dataTables.js
+++ 
b/server/monitor/src/main/resources/org/apache/accumulo/monitor/resources/external/datatables/js/jquery.dataTables.js
@@ -1,23 +1,23 @@
-/*! DataTables 1.13.6
- * ©2008-2023 SpryMedia Ltd - datatables.net/license
+/*! DataTables 1.13.11
+ * ©2008-2024 SpryMedia Ltd - datatables.net/license
  */
 
 /**
  * @summary     DataTables
  * @description Paginate, search and order HTML tables
- * @version     1.13.6
+ * @version     1.13.11
  * @author      SpryMedia Ltd
  * @contact     www.datatables.net
  * @copyright   SpryMedia Ltd.
  *
  * This source file is free software, available under the following license:
- *   MIT license - http://datatables.net/license
+ *   MIT license - https://datatables.net/license
  *
  * This source file is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
  * or FITNESS FOR A PARTICULAR PURPOSE. See the license files for details.
  *
- * For details please refer to: http://www.datatables.net
+ * For details please refer to: https://www.datatables.net
  */
 
 /*jslint evil: true, undef: true, browser: true */
@@ -54,7 +54,7 @@
                        };
                }
                else {
-                       return factory( jq, window, window.document );
+                       module.exports = factory( jq, window, window.document );
                }
        }
        else {
@@ -1345,7 +1345,7 @@
        // Escape regular expression special characters
        var _re_escape_regex = new RegExp( '(\\' + [ '/', '.', '*', '+', '?', 
'|', '(', ')', '[', ']', '{', '}', '\\', '$', '^', '-' ].join('|\\') + ')', 'g' 
);
        
-       // http://en.wikipedia.org/wiki/Foreign_exchange_market
+       // https://en.wikipedia.org/wiki/Foreign_exchange_market
        // - \u20BD - Russian ruble.
        // - \u20a9 - South Korean Won
        // - \u20BA - Turkish Lira
@@ -4313,7 +4313,7 @@
                        /* Update all other filter input elements for the new 
display */
                        var n = features.f;
                        var val = !this.value ? "" : this.value; // mental IE8 
fix :-(
-                       if(previousSearch.return && event.key !== "Enter") {
+                       if(previousSearch['return'] && event.key !== "Enter") {
                                return;
                        }
                        /* Now do the filter */
@@ -4323,7 +4323,7 @@
                                        "bRegex": previousSearch.bRegex,
                                        "bSmart": previousSearch.bSmart ,
                                        "bCaseInsensitive": 
previousSearch.bCaseInsensitive,
-                                       "return": previousSearch.return
+                                       "return": previousSearch['return']
                                } );
        
                                // Need to redraw, without resorting
@@ -4398,7 +4398,7 @@
                        oPrevSearch.bRegex = oFilter.bRegex;
                        oPrevSearch.bSmart = oFilter.bSmart;
                        oPrevSearch.bCaseInsensitive = oFilter.bCaseInsensitive;
-                       oPrevSearch.return = oFilter.return;
+                       oPrevSearch['return'] = oFilter['return'];
                };
                var fnRegex = function ( o ) {
                        // Backwards compatibility with the bEscapeRegex option
@@ -4650,7 +4650,7 @@
                                        // If it looks like there is an HTML 
entity in the string,
                                        // attempt to decode it so sorting 
works as expected. Note that
                                        // we could use a single line of jQuery 
to do this, but the DOM
-                                       // method used here is much faster 
http://jsperf.com/html-decode
+                                       // method used here is much faster 
https://jsperf.com/html-decode
                                        if ( cellData.indexOf && 
cellData.indexOf('&') !== -1 ) {
                                                __filter_div.innerHTML = 
cellData;
                                                cellData = 
__filter_div_textContent ?
@@ -5675,11 +5675,13 @@
                }
        
                /* Convert any user input sizes into pixel sizes */
+               var sizes = _fnConvertToWidth(_pluck(columns, 'sWidthOrig'), 
tableContainer);
+       
                for ( i=0 ; i<visibleColumns.length ; i++ ) {
                        column = columns[ visibleColumns[i] ];
        
                        if ( column.sWidth !== null ) {
-                               column.sWidth = _fnConvertToWidth( 
column.sWidthOrig, tableContainer );
+                               column.sWidth = sizes[i];
        
                                userInputs = true;
                        }
@@ -5882,26 +5884,40 @@
        
        
        /**
-        * Convert a CSS unit width to pixels (e.g. 2em)
-        *  @param {string} width width to be converted
+        * Convert a set of CSS units width to pixels (e.g. 2em)
+        *  @param {string[]} widths widths to be converted
         *  @param {node} parent parent to get the with for (required for 
relative widths) - optional
-        *  @returns {int} width in pixels
+        *  @returns {int[]} widths in pixels
         *  @memberof DataTable#oApi
         */
-       function _fnConvertToWidth ( width, parent )
+       function _fnConvertToWidth ( widths, parent )
        {
-               if ( ! width ) {
-                       return 0;
+               var els = [];
+               var results = [];
+       
+               // Add the elements in a single loop so we only need to reflow 
once
+               for (var i=0 ; i<widths.length ; i++) {
+                       if (widths[i]) {
+                               els.push(
+                                       $('<div/>')
+                                               .css( 'width', _fnStringToCss( 
widths[i] ) )
+                                               .appendTo( parent || 
document.body )
+                               )
+                       }
+                       else {
+                               els.push(null);
+                       }
                }
        
-               var n = $('<div/>')
-                       .css( 'width', _fnStringToCss( width ) )
-                       .appendTo( parent || document.body );
+               // Get the sizes (will reflow once)
+               for (var i=0 ; i<widths.length ; i++) {
+                       results.push(els[i] ? els[i][0].offsetWidth : null);
+               }
        
-               var val = n[0].offsetWidth;
-               n.remove();
+               // Tidy
+               $(els).remove();
        
-               return val;
+               return results;
        }
        
        
@@ -6636,7 +6652,7 @@
        
                if ( tn ) {
                        msg += '. For more information about this error, please 
see '+
-                       'http://datatables.net/tn/'+tn;
+                       'https://datatables.net/tn/'+tn;
                }
        
                if ( ! level  ) {
@@ -8567,7 +8583,13 @@
                                        row = data[i];
        
                                        if ( row._details ) {
-                                               
row._details.children('td[colspan]').attr('colspan', visible );
+                                               row._details.each(function () {
+                                                       var el = 
$(this).children('td');
+       
+                                                       if (el.length == 1) {
+                                                               
el.attr('colspan', visible);
+                                                       }
+                                               });
                                        }
                                }
                        } );
@@ -9774,12 +9796,12 @@
        /**
         * Version string for plug-ins to check compatibility. Allowed format is
         * `a.b.c-d` where: a:int, b:int, c:int, d:string(dev|beta|alpha). `d` 
is used
-        * only for non-release builds. See http://semver.org/ for more 
information.
+        * only for non-release builds. See https://semver.org/ for more 
information.
         *  @member
         *  @type string
         *  @default Version number
         */
-       DataTable.version = "1.13.6";
+       DataTable.version = "1.13.11";
        
        /**
         * Private data store, containing all of the settings objects that are
@@ -10355,7 +10377,7 @@
                 * --------
                 *
                 * As an object, the parameters in the object are passed to
-                * [jQuery.ajax](http://api.jquery.com/jQuery.ajax/) allowing 
fine control
+                * [jQuery.ajax](https://api.jquery.com/jQuery.ajax/) allowing 
fine control
                 * of the Ajax request. DataTables has a number of default 
parameters which
                 * you can override using this option. Please refer to the 
jQuery
                 * documentation for a full description of the options 
available, although
@@ -12063,7 +12085,7 @@
                         *    $(document).ready( function() {
                         *      $('#example').dataTable( {
                         *        "language": {
-                        *          "url": 
"http://www.sprymedia.co.uk/dataTables/lang.txt";
+                        *          "url": 
"https://www.sprymedia.co.uk/dataTables/lang.txt";
                         *        }
                         *      } );
                         *    } );
@@ -15140,7 +15162,7 @@
                // string
                "string-pre": function ( a ) {
                        // This is a little complex, but faster than always 
calling toString,
-                       // http://jsperf.com/tostring-v-check
+                       // https://jsperf.com/tostring-v-check
                        return _empty(a) ?
                                '' :
                                typeof a === 'string' ?

Reply via email to