diff --git a/.editorconfig b/.editorconfig
index dcd467ab5..6e308d9f1 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -19,3 +19,6 @@ ij_java_doc_align_param_comments = false
[*.yml]
indent_size = 2
+
+[*.tsx]
+indent_size = 2
diff --git a/webapp/src/components/cluster.tsx b/webapp/src/components/cluster.tsx
index 9b53f9483..5f72825c9 100644
--- a/webapp/src/components/cluster.tsx
+++ b/webapp/src/components/cluster.tsx
@@ -92,8 +92,16 @@ export function Cluster() {
<>
-
+ {
+ if (!a || !b) return 0;
+ return a.name.localeCompare(b.name)
+ }} />
{
+ if (!a || !b) return 0;
+ return a.routingGroup.localeCompare(b.routingGroup)
+ }}
filters={
[...new Set(backendData?.map(b => b.routingGroup))]
.map(routingGroup => {
@@ -108,8 +116,8 @@ export function Cluster() {
}} />
-
-
+ (!a || !b) ? 0 : a.queued - b.queued} />
+ (!a || !b) ? 0 : a.running - b.running} />
{access.hasRole(Role.ADMIN) && (
diff --git a/webapp/src/components/history.tsx b/webapp/src/components/history.tsx
index f0ef93dc8..fb89da100 100644
--- a/webapp/src/components/history.tsx
+++ b/webapp/src/components/history.tsx
@@ -133,13 +133,33 @@ export function History() {
onPageChange: list,
}}>
-
+ {
+ if (!a || !b) return 0;
+ return a.routingGroup.localeCompare(b.routingGroup);
+ }}
+ filters={
+ [...new Set(backendData?.map(b => b.routingGroup))]
+ .map(routingGroup => {
+ return {
+ text: routingGroup,
+ value: routingGroup
+ }
+ })}
+ onFilter={(value, record) => {
+ if (!record) return false;
+ return value === record.routingGroup
+ }}
+ render={routingGroupRender} />
{backendMapping[text]}} />
-
+ {
+ if (!a || !b) return 0;
+ return a.captureTime - b.captureTime;
+ }} />