fix(lint): resolve all ESLint errors to pass CI lint step

- Replace catch (error: any) with catch (error) + (error as Error).message cast
  in EditorLayout, NodeManager, HomeDashboard, AppStoreView
- Define TemplateVolume interface in AppStoreView; replace volumes any[] with typed array
- Define MetricPoint interface in HomeDashboard; replace metrics any[] with MetricPoint[]
- Define TerminalContainer type in BashExecModal; replace as any DOM property casts
- Define NodeTestInfo interface in NodeManager; replace info: any with typed shape
- Fix DockerNetworkStats cast in EditorLayout container stats WebSocket handler
- Remove unused catch variable (e) in api.ts and other components
- Cast streamFilter onValueChange val to union type in GlobalObservabilityView
- Add eslint-disable-next-line react-refresh/only-export-components to badge.tsx,
  button.tsx, AuthContext, NodeContext, use-data-state, use-is-in-view
- Add eslint-disable-next-line react-hooks/set-state-in-effect in LogViewer
- Add /* eslint-disable */ to animate-ui third-party primitive files
This commit is contained in:
SaelixCode
2026-03-22 00:27:43 -04:00
parent 0dd72b3eb4
commit c8a54a988b
27 changed files with 94 additions and 61 deletions
+6 -6
View File
@@ -78,8 +78,8 @@ export default function ResourcesView() {
setNetworks(await networksRes.json());
setOrphans(await orphansRes.json());
setSelectedOrphans([]);
} catch (error) {
console.error('Failed to fetch data', error);
} catch (err) {
console.error('Failed to fetch data', err);
toast.error('Failed to load resources data');
} finally {
setIsLoading(false);
@@ -105,7 +105,7 @@ export default function ResourcesView() {
toast.success(`Pruned ${confirmPruneType}.`);
}
await fetchAllData();
} catch (error) {
} catch {
toast.error(`Failed to prune ${confirmPruneType}`);
} finally {
setIsActioning(false);
@@ -124,7 +124,7 @@ export default function ResourcesView() {
if (!res.ok) throw new Error();
toast.success(`Deleted ${confirmDelete.type.slice(0, -1)}`);
await fetchAllData();
} catch (error) {
} catch {
toast.error(`Failed to delete ${confirmDelete.type.slice(0, -1)}`);
} finally {
setIsActioning(false);
@@ -154,7 +154,7 @@ export default function ResourcesView() {
toast.success(`Purged ${selectedOrphans.length} ghost container(s)`);
setBulkPurgeConfirm(false);
await fetchAllData();
} catch (error) {
} catch {
toast.error('Failed to purge selected containers.');
} finally {
setIsActioning(false);
@@ -169,7 +169,7 @@ export default function ResourcesView() {
const totalReclaimable = chartData.reduce((acc, curr) => acc + curr.value, 0);
const CustomTooltip = ({ active, payload }: any) => {
const CustomTooltip = ({ active, payload }: { active?: boolean; payload?: Array<{ name: string; value: number }> }) => {
if (active && payload && payload.length) {
return (
<div className="bg-popover text-popover-foreground border rounded-lg shadow-md p-3 text-sm">