From bca14e0fe024a7df93ee5ebeca3cbac46dcf29a0 Mon Sep 17 00:00:00 2001 From: fuomag9 <1580624+fuomag9@users.noreply.github.com> Date: Sun, 22 Mar 2026 13:40:47 +0100 Subject: [PATCH] feat: rewrite proxy-host feature components with shadcn Replace all MUI imports (Stack, Box, Typography, TextField, Switch, Checkbox, Collapse, Accordion, Chip, etc.) with shadcn/ui + Tailwind equivalents across all 13 proxy host component files. Lucide icons replace MUI icons throughout. Co-Authored-By: Claude Sonnet 4.6 --- .../proxy-hosts/AuthentikFields.tsx | 203 ++--- .../proxy-hosts/DnsResolverFields.tsx | 126 +-- src/components/proxy-hosts/GeoBlockFields.tsx | 853 ++++++++---------- src/components/proxy-hosts/HostDialogs.tsx | 319 ++++--- .../proxy-hosts/LoadBalancerFields.tsx | 508 +++++------ src/components/proxy-hosts/MtlsConfig.tsx | 142 ++- .../proxy-hosts/RedirectsFields.tsx | 115 ++- src/components/proxy-hosts/RewriteFields.tsx | 23 +- .../proxy-hosts/SettingsToggles.tsx | 109 +-- .../UpstreamDnsResolutionFields.tsx | 145 +-- src/components/proxy-hosts/UpstreamInput.tsx | 98 +- src/components/proxy-hosts/WafFields.tsx | 375 ++++---- .../proxy-hosts/WafRuleExclusions.tsx | 66 +- 13 files changed, 1394 insertions(+), 1688 deletions(-) diff --git a/src/components/proxy-hosts/AuthentikFields.tsx b/src/components/proxy-hosts/AuthentikFields.tsx index 5a3c0b90..ed1c5abe 100644 --- a/src/components/proxy-hosts/AuthentikFields.tsx +++ b/src/components/proxy-hosts/AuthentikFields.tsx @@ -1,8 +1,11 @@ - -import { Box, Checkbox, Collapse, FormControlLabel, Stack, Switch, TextField, Typography } from "@mui/material"; +import { Checkbox } from "@/components/ui/checkbox"; +import { Input } from "@/components/ui/input"; +import { Switch } from "@/components/ui/switch"; +import { Textarea } from "@/components/ui/textarea"; +import { cn } from "@/lib/utils"; import { useState } from "react"; -import { AuthentikSettings } from "@/src/lib/settings"; -import { ProxyHost } from "@/src/lib/models/proxy-hosts"; +import { AuthentikSettings } from "@/lib/settings"; +import { ProxyHost } from "@/lib/models/proxy-hosts"; const AUTHENTIK_DEFAULT_HEADERS = [ "X-Authentik-Username", @@ -35,26 +38,28 @@ function HiddenCheckboxField({ helperText?: string; }) { return ( - +
- - } - label={{label}} - disabled={disabled} - /> +
+ + +
{helperText && ( - +

{helperText} - +

)} - +
); } @@ -77,90 +82,86 @@ export function AuthentikFields({ const setHostHeaderDefault = initial?.setOutpostHostHeader ?? true; return ( - +
- - - - - Authentik Forward Auth - - - Proxy authentication via Authentik outpost - - +
+
+
+

Authentik Forward Auth

+

Proxy authentication via Authentik outpost

+
setEnabled(checked)} + onCheckedChange={setEnabled} /> - +
- - - - - {/* ... other fields ... */} - - - - +
+
+
+ + +
+
+ + +
+
+ + +
+
+ +