refactor: move jail detail sub-sections from pages/jail to components/jail

Move reusable UI section components (JailInfoSection, PatternsSection,
BantimeEscalationSection, IgnoreListSection, CodeList) from pages/jail/
to components/jail/, aligning with the project convention that pages/
contains only route-level entry points while components/ contains reusable
UI building blocks.

Changes:
- Move 5 section components + jailDetailPageStyles.ts to components/jail/
- Update import paths in moved components (relative paths to commonStyles)
- Update JailDetailPage.tsx imports to reference components/jail/
- Delete empty pages/jail/ directory
- Document pages/ vs components/ distinction in Web-Development.md

All components use standard import structure and TypeScript passes type
checking. BannedIpsSection was already correctly placed in components/jail/.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
2026-04-25 19:17:03 +02:00
parent 8bd5713d38
commit 6a062a72a7
9 changed files with 25 additions and 33 deletions

View File

@@ -1,5 +1,5 @@
import { Badge, Text } from "@fluentui/react-components";
import { useCommonSectionStyles } from "../../components/commonStyles";
import { useCommonSectionStyles } from "../commonStyles";
import { useJailDetailPageStyles } from "./jailDetailPageStyles";
import type { Jail } from "../../types/jail";
import { formatSeconds } from "../../utils/formatDate";

View File

@@ -11,7 +11,7 @@ import {
Tooltip,
} from "@fluentui/react-components";
import { DismissRegular } from "@fluentui/react-icons";
import { useCommonSectionStyles } from "../../components/commonStyles";
import { useCommonSectionStyles } from "../commonStyles";
import { useJailDetailPageStyles } from "./jailDetailPageStyles";
interface IgnoreListSectionProps {

View File

@@ -14,7 +14,7 @@ import {
PlayRegular,
StopRegular,
} from "@fluentui/react-icons";
import { useCommonSectionStyles } from "../../components/commonStyles";
import { useCommonSectionStyles } from "../commonStyles";
import { useJailDetailPageStyles } from "./jailDetailPageStyles";
import type { Jail } from "../../types/jail";

View File

@@ -1,5 +1,5 @@
import { Text, makeStyles, tokens } from "@fluentui/react-components";
import { useCommonSectionStyles } from "../../components/commonStyles";
import { useCommonSectionStyles } from "../commonStyles";
import type { Jail } from "../../types/jail";
import { CodeList } from "./CodeList";

View File

@@ -12,11 +12,11 @@ import { useJailData } from "../hooks/useJailData";
import { useJailCommands } from "../hooks/useJailCommands";
import { useJailBannedIps } from "../hooks/useJailBannedIps";
import { BannedIpsSection } from "../components/jail/BannedIpsSection";
import { JailInfoSection } from "./jail/JailInfoSection";
import { PatternsSection } from "./jail/PatternsSection";
import { BantimeEscalationSection } from "./jail/BantimeEscalationSection";
import { IgnoreListSection } from "./jail/IgnoreListSection";
import { useJailDetailPageStyles } from "./jail/jailDetailPageStyles";
import { JailInfoSection } from "../components/jail/JailInfoSection";
import { PatternsSection } from "../components/jail/PatternsSection";
import { BantimeEscalationSection } from "../components/jail/BantimeEscalationSection";
import { IgnoreListSection } from "../components/jail/IgnoreListSection";
import { useJailDetailPageStyles } from "../components/jail/jailDetailPageStyles";
export function JailDetailPage(): React.JSX.Element {
const styles = useJailDetailPageStyles();