From a633c42904205eb38da413cb04aae5a6357514ea Mon Sep 17 00:00:00 2001
From: Cooldude2606 <25043174+Cooldude2606@users.noreply.github.com>
Date: Sat, 25 Apr 2026 22:03:02 +0100
Subject: [PATCH 1/7] Fix default filter for online users table
---
packages/web_ui/src/components/UsersTable.tsx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/packages/web_ui/src/components/UsersTable.tsx b/packages/web_ui/src/components/UsersTable.tsx
index 6f35f22f..15cecc01 100644
--- a/packages/web_ui/src/components/UsersTable.tsx
+++ b/packages/web_ui/src/components/UsersTable.tsx
@@ -199,7 +199,7 @@ export default function UsersTable({ instanceId, onlyOnline = false, pagination,
title: "Last seen",
key: "lastSeen",
filterMultiple: false,
- defaultFilteredValue: onlyOnline ? ["online"] : undefined,
+ defaultFilteredValue: onlyOnline ? "online" : undefined,
filters: [
{ text: "Online", value: "online" },
{ text: "24h", value: "24h" },
From de51741835587878dc1cdcdb048189a68e033ba5 Mon Sep 17 00:00:00 2001
From: Cooldude2606 <25043174+Cooldude2606@users.noreply.github.com>
Date: Sat, 25 Apr 2026 22:06:36 +0100
Subject: [PATCH 2/7] Use `workspace:^` rather than `workspace:*`
---
package.json | 10 +++++-----
packages/controller/package.json | 4 ++--
packages/ctl/package.json | 2 +-
packages/host/package.json | 2 +-
packages/web_ui/package.json | 2 +-
plugins/global_chat/package.json | 16 ++++++++--------
plugins/inventory_sync/package.json | 16 ++++++++--------
plugins/player_auth/package.json | 16 ++++++++--------
plugins/research_sync/package.json | 16 ++++++++--------
plugins/statistics_exporter/package.json | 12 ++++++------
plugins/subspace_storage/package.json | 16 ++++++++--------
11 files changed, 56 insertions(+), 56 deletions(-)
diff --git a/package.json b/package.json
index f5b45dcc..051d0ab6 100644
--- a/package.json
+++ b/package.json
@@ -35,11 +35,11 @@
"external_plugins/*/*"
],
"devDependencies": {
- "@clusterio/controller": "workspace:*",
- "@clusterio/ctl": "workspace:*",
- "@clusterio/host": "workspace:*",
- "@clusterio/lib": "workspace:*",
- "@clusterio/web_ui": "workspace:*",
+ "@clusterio/controller": "workspace:^",
+ "@clusterio/ctl": "workspace:^",
+ "@clusterio/host": "workspace:^",
+ "@clusterio/lib": "workspace:^",
+ "@clusterio/web_ui": "workspace:^",
"@eslint/eslintrc": "^3.3.1",
"@eslint/js": "^9.32.0",
"@stylistic/eslint-plugin": "^5.2.2",
diff --git a/packages/controller/package.json b/packages/controller/package.json
index a2a2cde3..2bf103c7 100644
--- a/packages/controller/package.json
+++ b/packages/controller/package.json
@@ -20,7 +20,7 @@
"node": ">=20"
},
"dependencies": {
- "@clusterio/lib": "workspace:*",
+ "@clusterio/lib": "workspace:^",
"@sinclair/typebox": "catalog:",
"busboy": "^1.6.0",
"compression": "^1.8.0",
@@ -34,7 +34,7 @@
"yargs": "^17.7.2"
},
"devDependencies": {
- "@clusterio/web_ui": "workspace:*",
+ "@clusterio/web_ui": "workspace:^",
"@swc/core": "catalog:",
"@types/busboy": "^1.5.0",
"@types/compression": "^1.7.2",
diff --git a/packages/ctl/package.json b/packages/ctl/package.json
index 3a116f6a..74ff843b 100644
--- a/packages/ctl/package.json
+++ b/packages/ctl/package.json
@@ -20,7 +20,7 @@
"node": ">=20"
},
"dependencies": {
- "@clusterio/lib": "workspace:*",
+ "@clusterio/lib": "workspace:^",
"as-table": "^1.0.55",
"winston": "catalog:",
"yargs": "^17.7.2"
diff --git a/packages/host/package.json b/packages/host/package.json
index d13341bc..edce1aaf 100644
--- a/packages/host/package.json
+++ b/packages/host/package.json
@@ -21,7 +21,7 @@
"node": ">=20"
},
"dependencies": {
- "@clusterio/lib": "workspace:*",
+ "@clusterio/lib": "workspace:^",
"@sinclair/typebox": "catalog:",
"jimp": "^1.6.0",
"jszip": "catalog:",
diff --git a/packages/web_ui/package.json b/packages/web_ui/package.json
index 07e5943e..514da6d6 100644
--- a/packages/web_ui/package.json
+++ b/packages/web_ui/package.json
@@ -19,7 +19,7 @@
},
"dependencies": {
"@ant-design/icons": "^5.6.1",
- "@clusterio/lib": "workspace:*",
+ "@clusterio/lib": "workspace:^",
"@sinclair/typebox": "^0.30.4",
"@swc/core": "^1.13.3",
"antd": "^5.24.2",
diff --git a/plugins/global_chat/package.json b/plugins/global_chat/package.json
index fcc5dd61..8eb6babe 100644
--- a/plugins/global_chat/package.json
+++ b/plugins/global_chat/package.json
@@ -23,19 +23,19 @@
"node": ">=20"
},
"peerDependencies": {
- "@clusterio/web_ui": "workspace:*",
- "@clusterio/host": "workspace:*",
- "@clusterio/ctl": "workspace:*",
- "@clusterio/lib": "workspace:*"
+ "@clusterio/web_ui": "workspace:^",
+ "@clusterio/host": "workspace:^",
+ "@clusterio/ctl": "workspace:^",
+ "@clusterio/lib": "workspace:^"
},
"dependencies": {
"@sinclair/typebox": "catalog:"
},
"devDependencies": {
- "@clusterio/web_ui": "workspace:*",
- "@clusterio/host": "workspace:*",
- "@clusterio/ctl": "workspace:*",
- "@clusterio/lib": "workspace:*",
+ "@clusterio/web_ui": "workspace:^",
+ "@clusterio/host": "workspace:^",
+ "@clusterio/ctl": "workspace:^",
+ "@clusterio/lib": "workspace:^",
"@types/node": "catalog:",
"@types/react": "catalog:",
"typescript": "catalog:",
diff --git a/plugins/inventory_sync/package.json b/plugins/inventory_sync/package.json
index 6784d56c..143e8301 100644
--- a/plugins/inventory_sync/package.json
+++ b/plugins/inventory_sync/package.json
@@ -23,19 +23,19 @@
"node": ">=20"
},
"peerDependencies": {
- "@clusterio/controller": "workspace:*",
- "@clusterio/host": "workspace:*",
- "@clusterio/lib": "workspace:*",
- "@clusterio/web_ui": "workspace:*"
+ "@clusterio/controller": "workspace:^",
+ "@clusterio/host": "workspace:^",
+ "@clusterio/lib": "workspace:^",
+ "@clusterio/web_ui": "workspace:^"
},
"dependencies": {
"@sinclair/typebox": "catalog:"
},
"devDependencies": {
- "@clusterio/controller": "workspace:*",
- "@clusterio/host": "workspace:*",
- "@clusterio/lib": "workspace:*",
- "@clusterio/web_ui": "workspace:*",
+ "@clusterio/controller": "workspace:^",
+ "@clusterio/host": "workspace:^",
+ "@clusterio/lib": "workspace:^",
+ "@clusterio/web_ui": "workspace:^",
"@types/node": "catalog:",
"@types/react": "catalog:",
"antd": "catalog:",
diff --git a/plugins/player_auth/package.json b/plugins/player_auth/package.json
index 425b10c3..d9c387ae 100644
--- a/plugins/player_auth/package.json
+++ b/plugins/player_auth/package.json
@@ -23,10 +23,10 @@
"node": ">=20"
},
"peerDependencies": {
- "@clusterio/controller": "workspace:*",
- "@clusterio/web_ui": "workspace:*",
- "@clusterio/host": "workspace:*",
- "@clusterio/lib": "workspace:*"
+ "@clusterio/controller": "workspace:^",
+ "@clusterio/web_ui": "workspace:^",
+ "@clusterio/host": "workspace:^",
+ "@clusterio/lib": "workspace:^"
},
"dependencies": {
"@sinclair/typebox": "catalog:",
@@ -34,10 +34,10 @@
"express": "catalog:"
},
"devDependencies": {
- "@clusterio/controller": "workspace:*",
- "@clusterio/web_ui": "workspace:*",
- "@clusterio/host": "workspace:*",
- "@clusterio/lib": "workspace:*",
+ "@clusterio/controller": "workspace:^",
+ "@clusterio/web_ui": "workspace:^",
+ "@clusterio/host": "workspace:^",
+ "@clusterio/lib": "workspace:^",
"@types/express": "catalog:",
"@types/jsonwebtoken": "catalog:",
"@types/node": "catalog:",
diff --git a/plugins/research_sync/package.json b/plugins/research_sync/package.json
index 0be0222e..ee361afe 100644
--- a/plugins/research_sync/package.json
+++ b/plugins/research_sync/package.json
@@ -23,19 +23,19 @@
"node": ">=20"
},
"peerDependencies": {
- "@clusterio/controller": "workspace:*",
- "@clusterio/host": "workspace:*",
- "@clusterio/lib": "workspace:*",
- "@clusterio/web_ui": "workspace:*"
+ "@clusterio/controller": "workspace:^",
+ "@clusterio/host": "workspace:^",
+ "@clusterio/lib": "workspace:^",
+ "@clusterio/web_ui": "workspace:^"
},
"dependencies": {
"@sinclair/typebox": "catalog:"
},
"devDependencies": {
- "@clusterio/controller": "workspace:*",
- "@clusterio/host": "workspace:*",
- "@clusterio/lib": "workspace:*",
- "@clusterio/web_ui": "workspace:*",
+ "@clusterio/controller": "workspace:^",
+ "@clusterio/host": "workspace:^",
+ "@clusterio/lib": "workspace:^",
+ "@clusterio/web_ui": "workspace:^",
"@types/node": "catalog:",
"@types/react": "catalog:",
"typescript": "catalog:",
diff --git a/plugins/statistics_exporter/package.json b/plugins/statistics_exporter/package.json
index 5c6679e9..20020025 100644
--- a/plugins/statistics_exporter/package.json
+++ b/plugins/statistics_exporter/package.json
@@ -23,14 +23,14 @@
"node": ">=20"
},
"peerDependencies": {
- "@clusterio/web_ui": "workspace:*",
- "@clusterio/host": "workspace:*",
- "@clusterio/lib": "workspace:*"
+ "@clusterio/web_ui": "workspace:^",
+ "@clusterio/host": "workspace:^",
+ "@clusterio/lib": "workspace:^"
},
"devDependencies": {
- "@clusterio/web_ui": "workspace:*",
- "@clusterio/host": "workspace:*",
- "@clusterio/lib": "workspace:*",
+ "@clusterio/web_ui": "workspace:^",
+ "@clusterio/host": "workspace:^",
+ "@clusterio/lib": "workspace:^",
"@types/node": "catalog:",
"@types/react": "catalog:",
"typescript": "catalog:",
diff --git a/plugins/subspace_storage/package.json b/plugins/subspace_storage/package.json
index 5422ae96..148775c8 100644
--- a/plugins/subspace_storage/package.json
+++ b/plugins/subspace_storage/package.json
@@ -23,19 +23,19 @@
"node": ">=20"
},
"peerDependencies": {
- "@clusterio/controller": "workspace:*",
- "@clusterio/host": "workspace:*",
- "@clusterio/lib": "workspace:*",
- "@clusterio/web_ui": "workspace:*"
+ "@clusterio/controller": "workspace:^",
+ "@clusterio/host": "workspace:^",
+ "@clusterio/lib": "workspace:^",
+ "@clusterio/web_ui": "workspace:^"
},
"dependencies": {
"@sinclair/typebox": "catalog:"
},
"devDependencies": {
- "@clusterio/controller": "workspace:*",
- "@clusterio/host": "workspace:*",
- "@clusterio/lib": "workspace:*",
- "@clusterio/web_ui": "workspace:*",
+ "@clusterio/controller": "workspace:^",
+ "@clusterio/host": "workspace:^",
+ "@clusterio/lib": "workspace:^",
+ "@clusterio/web_ui": "workspace:^",
"@types/express": "catalog:",
"@types/node": "catalog:",
"@types/react": "catalog:",
From 746b11ff656b11613f6b784f38c27c8f98423ee5 Mon Sep 17 00:00:00 2001
From: Cooldude2606 <25043174+Cooldude2606@users.noreply.github.com>
Date: Sat, 25 Apr 2026 22:18:32 +0100
Subject: [PATCH 3/7] Add scrollable div to player auth server list
---
plugins/player_auth/web/index.tsx | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/plugins/player_auth/web/index.tsx b/plugins/player_auth/web/index.tsx
index 9dac7de1..12118708 100644
--- a/plugins/player_auth/web/index.tsx
+++ b/plugins/player_auth/web/index.tsx
@@ -89,9 +89,11 @@ function LoginForm(props: LoginFormProps) {
Start Factorio, join one of the following multiplayer servers
and type