diff --git a/frontend/src/App.jsx b/frontend/src/App.jsx index e29cbb6..4f015f6 100644 --- a/frontend/src/App.jsx +++ b/frontend/src/App.jsx @@ -1,4 +1,3 @@ -import React from "react"; import { Route, Routes } from "react-router-dom"; import FirstTimeAdminSetup from "./components/FirstTimeAdminSetup"; import Layout from "./components/Layout"; diff --git a/frontend/src/components/DashboardSettingsModal.jsx b/frontend/src/components/DashboardSettingsModal.jsx index c80122f..5b7b503 100644 --- a/frontend/src/components/DashboardSettingsModal.jsx +++ b/frontend/src/components/DashboardSettingsModal.jsx @@ -24,7 +24,7 @@ import { Settings as SettingsIcon, X, } from "lucide-react"; -import React, { useEffect, useState } from "react"; +import { useEffect, useState } from "react"; import { useTheme } from "../contexts/ThemeContext"; import { dashboardPreferencesAPI } from "../utils/api"; diff --git a/frontend/src/components/FirstTimeAdminSetup.jsx b/frontend/src/components/FirstTimeAdminSetup.jsx index c057e55..b075c58 100644 --- a/frontend/src/components/FirstTimeAdminSetup.jsx +++ b/frontend/src/components/FirstTimeAdminSetup.jsx @@ -1,5 +1,5 @@ import { AlertCircle, CheckCircle, Shield, UserPlus } from "lucide-react"; -import React, { useState } from "react"; +import { useState } from "react"; import { useAuth } from "../contexts/AuthContext"; const FirstTimeAdminSetup = () => { diff --git a/frontend/src/components/InlineEdit.jsx b/frontend/src/components/InlineEdit.jsx index c124af1..7487bd2 100644 --- a/frontend/src/components/InlineEdit.jsx +++ b/frontend/src/components/InlineEdit.jsx @@ -1,5 +1,5 @@ import { Check, Edit2, X } from "lucide-react"; -import React, { useEffect, useRef, useState } from "react"; +import { useEffect, useRef, useState } from "react"; import { Link } from "react-router-dom"; const InlineEdit = ({ diff --git a/frontend/src/components/InlineGroupEdit.jsx b/frontend/src/components/InlineGroupEdit.jsx index 3511c52..3c1e6ba 100644 --- a/frontend/src/components/InlineGroupEdit.jsx +++ b/frontend/src/components/InlineGroupEdit.jsx @@ -1,11 +1,5 @@ import { Check, ChevronDown, Edit2, X } from "lucide-react"; -import React, { - useCallback, - useEffect, - useMemo, - useRef, - useState, -} from "react"; +import { useCallback, useEffect, useMemo, useRef, useState } from "react"; const InlineGroupEdit = ({ value, diff --git a/frontend/src/components/Layout.jsx b/frontend/src/components/Layout.jsx index 3359ab2..a57a99a 100644 --- a/frontend/src/components/Layout.jsx +++ b/frontend/src/components/Layout.jsx @@ -5,10 +5,6 @@ import { ChevronLeft, ChevronRight, Clock, - Cog, - Container, - FileText, - GitBranch, Github, Globe, Home, @@ -23,17 +19,16 @@ import { Settings, Shield, Star, - User, UserCircle, Users, Wrench, X, } from "lucide-react"; -import React, { useCallback, useEffect, useRef, useState } from "react"; +import { useCallback, useEffect, useRef, useState } from "react"; import { Link, useLocation } from "react-router-dom"; import { useAuth } from "../contexts/AuthContext"; import { useUpdateNotification } from "../contexts/UpdateNotificationContext"; -import { dashboardAPI, formatRelativeTime, versionAPI } from "../utils/api"; +import { dashboardAPI, versionAPI } from "../utils/api"; import UpgradeNotificationIcon from "./UpgradeNotificationIcon"; const Layout = ({ children }) => { diff --git a/frontend/src/components/ProtectedRoute.jsx b/frontend/src/components/ProtectedRoute.jsx index 0257df6..623f45a 100644 --- a/frontend/src/components/ProtectedRoute.jsx +++ b/frontend/src/components/ProtectedRoute.jsx @@ -1,4 +1,3 @@ -import React from "react"; import { Navigate } from "react-router-dom"; import { useAuth } from "../contexts/AuthContext"; diff --git a/frontend/src/components/UpgradeNotificationIcon.jsx b/frontend/src/components/UpgradeNotificationIcon.jsx index 3add5e6..8d22f62 100644 --- a/frontend/src/components/UpgradeNotificationIcon.jsx +++ b/frontend/src/components/UpgradeNotificationIcon.jsx @@ -1,5 +1,4 @@ import { ArrowUpCircle } from "lucide-react"; -import React from "react"; const UpgradeNotificationIcon = ({ className = "h-4 w-4", show = true }) => { if (!show) return null; diff --git a/frontend/src/contexts/AuthContext.jsx b/frontend/src/contexts/AuthContext.jsx index 41cb9eb..cbbeb5f 100644 --- a/frontend/src/contexts/AuthContext.jsx +++ b/frontend/src/contexts/AuthContext.jsx @@ -1,4 +1,4 @@ -import React, { +import { createContext, useCallback, useContext, diff --git a/frontend/src/contexts/ThemeContext.jsx b/frontend/src/contexts/ThemeContext.jsx index d70a623..3056c6a 100644 --- a/frontend/src/contexts/ThemeContext.jsx +++ b/frontend/src/contexts/ThemeContext.jsx @@ -1,4 +1,4 @@ -import React, { createContext, useContext, useEffect, useState } from "react"; +import { createContext, useContext, useEffect, useState } from "react"; const ThemeContext = createContext(); diff --git a/frontend/src/contexts/UpdateNotificationContext.jsx b/frontend/src/contexts/UpdateNotificationContext.jsx index a8e9ac0..84d2fe0 100644 --- a/frontend/src/contexts/UpdateNotificationContext.jsx +++ b/frontend/src/contexts/UpdateNotificationContext.jsx @@ -1,5 +1,5 @@ import { useQuery } from "@tanstack/react-query"; -import React, { createContext, useContext, useState } from "react"; +import { createContext, useContext, useState } from "react"; import { settingsAPI, versionAPI } from "../utils/api"; import { useAuth } from "./AuthContext"; diff --git a/frontend/src/main.jsx b/frontend/src/main.jsx index 7666468..8ab4536 100644 --- a/frontend/src/main.jsx +++ b/frontend/src/main.jsx @@ -1,5 +1,4 @@ import { QueryClient, QueryClientProvider } from "@tanstack/react-query"; -import React from "react"; import ReactDOM from "react-dom/client"; import { BrowserRouter } from "react-router-dom"; import App from "./App.jsx"; diff --git a/frontend/src/pages/Dashboard.jsx b/frontend/src/pages/Dashboard.jsx index 2b58ebf..8a59fb9 100644 --- a/frontend/src/pages/Dashboard.jsx +++ b/frontend/src/pages/Dashboard.jsx @@ -11,7 +11,6 @@ import { } from "chart.js"; import { AlertTriangle, - Clock, Folder, GitBranch, Package, @@ -23,7 +22,7 @@ import { Users, WifiOff, } from "lucide-react"; -import React, { useEffect, useState } from "react"; +import { useEffect, useState } from "react"; import { Bar, Pie } from "react-chartjs-2"; import { useNavigate } from "react-router-dom"; import DashboardSettingsModal from "../components/DashboardSettingsModal"; diff --git a/frontend/src/pages/HostDetail.jsx b/frontend/src/pages/HostDetail.jsx index 6965591..53fddcd 100644 --- a/frontend/src/pages/HostDetail.jsx +++ b/frontend/src/pages/HostDetail.jsx @@ -4,18 +4,14 @@ import { AlertTriangle, ArrowLeft, Calendar, - Check, CheckCircle, ChevronDown, ChevronUp, Clock, - Code, Copy, Cpu, - Edit, Eye, EyeOff, - Globe, HardDrive, Key, MemoryStick, @@ -25,13 +21,11 @@ import { Server, Shield, Terminal, - ToggleLeft, - ToggleRight, Trash2, Wifi, X, } from "lucide-react"; -import React, { useId, useState } from "react"; +import { useId, useState } from "react"; import { Link, useNavigate, useParams } from "react-router-dom"; import InlineEdit from "../components/InlineEdit"; import { diff --git a/frontend/src/pages/HostGroups.jsx b/frontend/src/pages/HostGroups.jsx index 406e089..7be8bc7 100644 --- a/frontend/src/pages/HostGroups.jsx +++ b/frontend/src/pages/HostGroups.jsx @@ -1,14 +1,6 @@ import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query"; -import { - AlertTriangle, - CheckCircle, - Edit, - Plus, - Server, - Trash2, - Users, -} from "lucide-react"; -import React, { useId, useState } from "react"; +import { AlertTriangle, Edit, Plus, Server, Trash2 } from "lucide-react"; +import { useId, useState } from "react"; import { hostGroupsAPI } from "../utils/api"; const HostGroups = () => { diff --git a/frontend/src/pages/Hosts.jsx b/frontend/src/pages/Hosts.jsx index b6d32b1..3406ce1 100644 --- a/frontend/src/pages/Hosts.jsx +++ b/frontend/src/pages/Hosts.jsx @@ -17,18 +17,16 @@ import { EyeOff as EyeOffIcon, Filter, GripVertical, - Key, Plus, RefreshCw, Search, Server, - Settings, Square, Trash2, Users, X, } from "lucide-react"; -import React, { useEffect, useId, useState } from "react"; +import { useEffect, useId, useState } from "react"; import { Link, useNavigate, useSearchParams } from "react-router-dom"; import InlineEdit from "../components/InlineEdit"; import InlineGroupEdit from "../components/InlineGroupEdit"; diff --git a/frontend/src/pages/Login.jsx b/frontend/src/pages/Login.jsx index 7a5a308..76e3245 100644 --- a/frontend/src/pages/Login.jsx +++ b/frontend/src/pages/Login.jsx @@ -9,7 +9,7 @@ import { User, } from "lucide-react"; -import React, { useEffect, useState } from "react"; +import { useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; import { useAuth } from "../contexts/AuthContext"; diff --git a/frontend/src/pages/Options.jsx b/frontend/src/pages/Options.jsx index e1ff0ad..1c623f7 100644 --- a/frontend/src/pages/Options.jsx +++ b/frontend/src/pages/Options.jsx @@ -1,7 +1,6 @@ import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query"; import { AlertTriangle, - CheckCircle, Edit, Plus, Server, @@ -9,7 +8,7 @@ import { Trash2, Users, } from "lucide-react"; -import React, { useId, useState } from "react"; +import { useId, useState } from "react"; import { hostGroupsAPI } from "../utils/api"; const Options = () => { diff --git a/frontend/src/pages/PackageDetail.jsx b/frontend/src/pages/PackageDetail.jsx index e5cf916..a1183c7 100644 --- a/frontend/src/pages/PackageDetail.jsx +++ b/frontend/src/pages/PackageDetail.jsx @@ -1,5 +1,4 @@ import { Package } from "lucide-react"; -import React from "react"; import { useParams } from "react-router-dom"; const PackageDetail = () => { diff --git a/frontend/src/pages/Packages.jsx b/frontend/src/pages/Packages.jsx index 101e3a2..a50dea5 100644 --- a/frontend/src/pages/Packages.jsx +++ b/frontend/src/pages/Packages.jsx @@ -4,23 +4,19 @@ import { ArrowDown, ArrowUp, ArrowUpDown, - ChevronDown, Columns, - ExternalLink, Eye as EyeIcon, EyeOff as EyeOffIcon, - Filter, GripVertical, Package, RefreshCw, Search, Server, - Settings, Shield, X, } from "lucide-react"; -import React, { useEffect, useMemo, useState } from "react"; -import { Link, useNavigate, useSearchParams } from "react-router-dom"; +import { useEffect, useMemo, useState } from "react"; +import { useNavigate, useSearchParams } from "react-router-dom"; import { dashboardAPI } from "../utils/api"; const Packages = () => { diff --git a/frontend/src/pages/Permissions.jsx b/frontend/src/pages/Permissions.jsx index 9ddc6da..fa75f68 100644 --- a/frontend/src/pages/Permissions.jsx +++ b/frontend/src/pages/Permissions.jsx @@ -4,7 +4,6 @@ import { BarChart3, Download, Edit, - Eye, Package, Plus, RefreshCw, @@ -16,7 +15,7 @@ import { Users, X, } from "lucide-react"; -import React, { useEffect, useId, useState } from "react"; +import { useEffect, useId, useState } from "react"; import { useAuth } from "../contexts/AuthContext"; import { permissionsAPI } from "../utils/api"; diff --git a/frontend/src/pages/Profile.jsx b/frontend/src/pages/Profile.jsx index 1794e36..fcedce9 100644 --- a/frontend/src/pages/Profile.jsx +++ b/frontend/src/pages/Profile.jsx @@ -9,7 +9,6 @@ import { Key, Mail, Moon, - QrCode, RefreshCw, Save, Settings, @@ -20,7 +19,7 @@ import { User, } from "lucide-react"; -import React, { useState } from "react"; +import { useState } from "react"; import { useAuth } from "../contexts/AuthContext"; import { useTheme } from "../contexts/ThemeContext"; @@ -34,10 +33,8 @@ const Profile = () => { const currentPasswordId = useId(); const newPasswordId = useId(); const confirmPasswordId = useId(); - const verificationTokenId = useId(); - const disablePasswordId = useId(); const { user, updateProfile, changePassword } = useAuth(); - const { theme, toggleTheme, isDark } = useTheme(); + const { toggleTheme, isDark } = useTheme(); const [activeTab, setActiveTab] = useState("profile"); const [isLoading, setIsLoading] = useState(false); const [message, setMessage] = useState({ type: "", text: "" }); diff --git a/frontend/src/pages/Repositories.jsx b/frontend/src/pages/Repositories.jsx index d6e641b..ef91b80 100644 --- a/frontend/src/pages/Repositories.jsx +++ b/frontend/src/pages/Repositories.jsx @@ -8,7 +8,6 @@ import { Columns, Database, Eye, - Globe, GripVertical, Lock, RefreshCw, @@ -20,7 +19,7 @@ import { Users, X, } from "lucide-react"; -import React, { useMemo, useState } from "react"; +import { useMemo, useState } from "react"; import { Link } from "react-router-dom"; import { repositoryAPI } from "../utils/api"; diff --git a/frontend/src/pages/RepositoryDetail.jsx b/frontend/src/pages/RepositoryDetail.jsx index 400ccba..7395ea1 100644 --- a/frontend/src/pages/RepositoryDetail.jsx +++ b/frontend/src/pages/RepositoryDetail.jsx @@ -1,6 +1,5 @@ import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query"; import { - Activity, AlertTriangle, ArrowLeft, Calendar, @@ -14,7 +13,7 @@ import { Users, } from "lucide-react"; -import React, { useState } from "react"; +import { useState } from "react"; import { Link, useParams } from "react-router-dom"; import { repositoryAPI } from "../utils/api"; diff --git a/frontend/src/pages/Settings.jsx b/frontend/src/pages/Settings.jsx index 0024d97..cd8b397 100644 --- a/frontend/src/pages/Settings.jsx +++ b/frontend/src/pages/Settings.jsx @@ -15,7 +15,7 @@ import { X, } from "lucide-react"; -import React, { useEffect, useState } from "react"; +import { useEffect, useState } from "react"; import UpgradeNotificationIcon from "../components/UpgradeNotificationIcon"; import { useUpdateNotification } from "../contexts/UpdateNotificationContext"; import { diff --git a/frontend/src/pages/Users.jsx b/frontend/src/pages/Users.jsx index 52119b3..84dc9ff 100644 --- a/frontend/src/pages/Users.jsx +++ b/frontend/src/pages/Users.jsx @@ -11,7 +11,7 @@ import { User, XCircle, } from "lucide-react"; -import React, { useId, useState } from "react"; +import { useId, useState } from "react"; import { useAuth } from "../contexts/AuthContext"; import { adminUsersAPI, permissionsAPI } from "../utils/api";