Commit Graph

  • 3095fa3313 fix(frontend): deduplicate setup status API calls using shared hook Lukas 2026-04-26 13:28:09 +02:00
  • 5b24a9c142 TASK-011: Remove session token prefix from log output Lukas 2026-04-26 13:19:26 +02:00
  • 8698b89f6a TASK-010: Replace .split() with shlex.split() for fail2ban_start_command Lukas 2026-04-26 13:04:14 +02:00
  • 4ab767e3d4 TASK-009: Mitigate SSRF vulnerability in blocklist URL validation Lukas 2026-04-26 12:57:23 +02:00
  • a5b55d1248 Add session cleanup task and update documentation Lukas 2026-04-26 12:49:13 +02:00
  • ea4c7c2f85 Implement login endpoint rate limiting (TASK-007) Lukas 2026-04-26 12:40:52 +02:00
  • 9725714aa2 docs: document nginx routing rules to prevent SPA fallback hiding API 404s Lukas 2026-04-26 12:10:21 +02:00
  • f55c317f87 Backend refactoring updates Lukas 2026-04-26 12:05:01 +02:00
  • 29daaa9906 TASK-004: Bootstrap frontend auth state from backend session check Lukas 2026-04-26 12:00:21 +02:00
  • d982fe3efc TASK-003: Document process-local constraint for RuntimeState and SessionCache Lukas 2026-04-26 11:43:34 +02:00
  • 825a67f13a Add multi-worker detection for APScheduler safety Lukas 2026-04-26 11:39:51 +02:00
  • def412797a Remove completed task T-20 from documentation Lukas 2026-04-25 19:50:48 +02:00
  • 045c8048fe Refactor: Replace inline style objects with makeStyles classes Lukas 2026-04-25 19:48:25 +02:00
  • c1135150c3 Refactor: Move DashboardFilterProvider to pages directory Lukas 2026-04-25 19:45:10 +02:00
  • 69a0296c47 T-18: Merge useDashboardCountryData and useMapData into shared base hook Lukas 2026-04-25 19:39:51 +02:00
  • 3b527244aa Update task documentation and test fixes Lukas 2026-04-25 19:34:16 +02:00
  • 6490e9d3df T-16: Centralize PAGE_SIZE frontend constants Lukas 2026-04-25 19:27:24 +02:00
  • f84aeef249 Refactor authentication logic and API client Lukas 2026-04-25 19:23:12 +02:00
  • 6a062a72a7 refactor: move jail detail sub-sections from pages/jail to components/jail Lukas 2026-04-25 19:17:03 +02:00
  • 8bd5713d38 Refactor jail detail hooks: split into useJailData and useJailCommands Lukas 2026-04-25 19:14:16 +02:00
  • 8d30a81346 feat(hooks): consolidate data-fetching patterns with useListData and usePolledData Lukas 2026-04-25 19:08:26 +02:00
  • b44b72053a T-11: Validate repository Protocol structural compatibility — minimal approach (Option B) Lukas 2026-04-25 18:59:49 +02:00
  • 4b8af1d43a Fix import formatting and sorting Lukas 2026-04-25 18:54:57 +02:00
  • 1a3401f418 T-10: Fix get_geo_batch_lookup for proper injection with GeoCache instance Lukas 2026-04-25 18:53:47 +02:00
  • ac2028e1c2 Fix: Consolidate divergent _since_unix implementations (T-09) Lukas 2026-04-25 18:44:59 +02:00
  • 420ea18fd9 Refactor backend services and utilities Lukas 2026-04-25 18:39:30 +02:00
  • 83452ffc23 Refactor backend services and jail configuration Lukas 2026-04-25 18:34:03 +02:00
  • c3410bd554 Update Tasks documentation Lukas 2026-04-25 18:26:40 +02:00
  • 24f9fdd358 T-06: Remove AppState Protocol, use ApplicationState directly Lukas 2026-04-25 18:25:56 +02:00
  • e57d19fd76 T-05: Remove app.state mutation from _build_app_context Lukas 2026-04-25 18:23:08 +02:00
  • d467190eb1 Refactor geo caching and service layer tests Lukas 2026-04-25 18:15:31 +02:00
  • 654dbdb000 T-04: Encapsulate geo_service module-level mutable state in GeoCache class Lukas 2026-04-23 16:18:09 +02:00
  • fdfd24508f Refactor backend services and routers Lukas 2026-04-23 16:06:10 +02:00
  • fd685e8211 refactor: Remove unused HTTPException imports from routers Lukas 2026-04-23 16:01:44 +02:00
  • 5480dce221 refactor: Remove duplicate router-level exception helpers Lukas 2026-04-23 16:00:37 +02:00
  • b634ce876a refactor: Extract fail2ban response utilities into shared module Lukas 2026-04-23 15:11:21 +02:00
  • 6d21a53620 Update tasks and history page tests Lukas 2026-04-23 09:59:21 +02:00
  • eaff272aae feat: Add dismissible warning UI for threshold loading errors Lukas 2026-04-23 09:58:27 +02:00
  • ac44bab8e6 Update documentation and refactor useAutoSave hook Lukas 2026-04-23 09:52:22 +02:00
  • 9c5757eeb0 Refactor useHistory hook: replace HistoryQuery with explicit parameters and add documentation Lukas 2026-04-23 09:51:16 +02:00
  • 8904e180d1 Fix: Prevent session-expiry errors from briefly showing in useConfigItem.save() Lukas 2026-04-23 09:45:11 +02:00
  • 6d5be523ab fix: KVEditor effect dependency uses stable JSON serialization Lukas 2026-04-23 09:41:49 +02:00
  • 9375430e02 Refactor schedule functionality in frontend Lukas 2026-04-23 09:40:19 +02:00
  • a87d892584 Update Tasks documentation Lukas 2026-04-23 09:34:02 +02:00
  • f3d6574160 Fix misleading auth token storage in sessionStorage Lukas 2026-04-23 09:30:29 +02:00
  • 941502b710 Fix BanTable to use props exclusively (complete dual state source refactoring) Lukas 2026-04-23 09:26:45 +02:00
  • 814000fe68 Refactor DashboardFilterBar to use props exclusively, eliminate dual state source Lukas 2026-04-23 09:24:16 +02:00
  • 10c534d090 Stabilize function references in useJails with useCallback Lukas 2026-04-23 09:18:31 +02:00
  • 1bcc336c9b Add tests and documentation updates for log preview and regex tester hooks Lukas 2026-04-23 09:14:58 +02:00
  • 3fba69970c Remove completed task TASK-ABORT-03 Lukas 2026-04-23 08:52:37 +02:00
  • 584588e363 fix: add AbortController and unmount guard to useIpLookup hook Lukas 2026-04-23 08:43:11 +02:00
  • 4e3f2005f9 fix: capture AbortController in local variable to avoid race condition in three hooks Lukas 2026-04-23 08:40:03 +02:00
  • 57ee5a2892 Remove completed task TASK-ABORT-01 from docs Lukas 2026-04-23 08:37:16 +02:00
  • 0223cb12a4 fix(hooks): Forward abort signal to fetchBansByCountry in useDashboardCountryData Lukas 2026-04-23 08:36:27 +02:00
  • 5a6cb640d8 Add AbortSignal support to API functions for request cancellation Lukas 2026-04-23 08:33:28 +02:00
  • 1c5b2d36d9 docs: Remove completed TASK-BUG-08 from Tasks.md Lukas 2026-04-23 08:25:32 +02:00
  • f0caa24d91 fix(ServerHealthSection): add debounce to linesCount input to prevent rapid API calls Lukas 2026-04-23 08:24:58 +02:00
  • 1510dfc851 fix(config): gate useJails() calls behind dialog open prop Lukas 2026-04-23 08:18:19 +02:00
  • 97d47fae81 fix(jails): consolidate useJails() calls to eliminate double HTTP request Lukas 2026-04-23 08:12:31 +02:00
  • 3024a4ef07 fix(config): re-sync JailConfigDetail form when jail prop updates from server refresh Lukas 2026-04-23 08:08:33 +02:00
  • 1d50bc1a73 fix: add validation error handling to InactiveJailDetail Lukas 2026-04-23 08:02:24 +02:00
  • 3c310e1d79 Update Tasks documentation Lukas 2026-04-22 21:31:24 +02:00
  • 649ebf2dc7 fix: preserve zero values in autoSavePayload Lukas 2026-04-22 21:30:31 +02:00
  • dfd1b9006b Remove completed task from Tasks.md Lukas 2026-04-22 21:25:07 +02:00
  • d1674add90 fix: Stop MapPage pagination resetting on every data refresh Lukas 2026-04-22 21:24:05 +02:00
  • 0bfa975222 Fix: Keep ConfigPage tabs mounted to preserve form state Lukas 2026-04-22 21:21:36 +02:00
  • 0f261e31c2 Fix infinite re-fetch loop in useJailConfigs Lukas 2026-04-22 21:15:23 +02:00
  • 3e3578f4d8 Update task list and add runner script Lukas 2026-04-22 21:05:41 +02:00
  • 0481810226 Fix open redirect vulnerability in LoginPage Lukas 2026-04-22 21:04:17 +02:00
  • a286ede49c Refactor frontend components and dependencies Lukas 2026-04-22 20:26:43 +02:00
  • 1bf0645c04 Configure Vite dev proxy via VITE_BACKEND_URL Lukas 2026-04-22 20:21:20 +02:00
  • 1d41822a36 Add SEO/security meta tags and favicon to frontend index.html Lukas 2026-04-22 20:06:49 +02:00
  • b7fbad0328 Add dashboard filter context to remove prop drilling Lukas 2026-04-21 20:08:54 +02:00
  • b6d9c649ca Delete hook barrel files and switch to direct hook imports Lukas 2026-04-21 20:02:50 +02:00
  • 1ba82d56e7 Refactor ServerTab and ConfFilesTab to use reducers Lukas 2026-04-21 19:52:05 +02:00
  • 260ce7e875 Fix frontend config tests for strict type narrowing Lukas 2026-04-21 19:40:51 +02:00
  • 4c313af1c5 Narrow jail config types with explicit union values Lukas 2026-04-21 19:39:36 +02:00
  • fef8f60ee2 Add dark mode support with persisted OS-aware theme selection Lukas 2026-04-21 19:30:29 +02:00
  • 4f91e8fdd3 Persist sidebar collapsed preference to localStorage Lukas 2026-04-21 19:17:00 +02:00
  • b3eb5dc6ec Standardise loading state naming across dashboard hooks Lukas 2026-04-21 19:12:43 +02:00
  • 094fb4fece Replace index keys with stable keys in editable list components Lukas 2026-04-21 19:04:18 +02:00
  • 4da2703966 Move constant inline styles into makeStyles Lukas 2026-04-21 18:47:18 +02:00
  • 86a7336ac0 Refactor shared data source selection for dashboard and map Lukas 2026-04-21 17:56:59 +02:00
  • e244a85291 Extract generic useListData hook for shared list fetching Lukas 2026-04-21 17:53:58 +02:00
  • e683108965 Standardise AbortController cancellation in setup and server health hooks Lukas 2026-04-21 17:38:35 +02:00
  • cf5a000bf5 Add AbortSignal support to dashboard/blocklist APIs and hooks Lukas 2026-04-21 17:29:05 +02:00
  • 51e340fa33 backup Lukas 2026-04-20 20:19:43 +02:00
  • 69d5cffabd Remove duplicate api/file_config.ts and consolidate raw file APIs into api/config.ts Lukas 2026-04-20 20:19:20 +02:00
  • 8b4a2f0b71 Fix useMapData debounce loading state Lukas 2026-04-20 20:10:48 +02:00
  • 1694ac17f8 Add React.memo to heavy dashboard components Lukas 2026-04-20 20:00:59 +02:00
  • 1d6564aa32 Add route code splitting and Vite vendor chunk splitting Lukas 2026-04-20 19:53:56 +02:00
  • 27369b43d6 Memoize Fluent chart token resolution Lukas 2026-04-20 19:47:10 +02:00
  • 20412dd94b Memoize dashboard and history table columns Lukas 2026-04-20 19:28:29 +02:00
  • e593498de5 Strengthen setup password validation Lukas 2026-04-20 19:23:12 +02:00
  • cc8c71906f Add auth expiry interceptor and session-expired redirect Lukas 2026-04-19 20:31:49 +02:00
  • d0991e0d40 Fix SetupGuard error handling and add retry UI Lukas 2026-04-19 20:20:31 +02:00
  • c58eb240b1 Fix KVEditor duplicate key rename validation Lukas 2026-04-19 19:59:13 +02:00
  • 082dcc7ee1 Fix BanUnbanForm floating promises and add submit guards Lukas 2026-04-19 19:42:39 +02:00
  • 76c9f388a8 Fix HistoryPage stale appliedQuery effect and add mount query regression test Lukas 2026-04-19 19:36:44 +02:00
  • 5446f6c3e1 Fix jail banned IP loading race with AbortController Lukas 2026-04-19 19:31:03 +02:00