diff --git a/assets/js/hooks/Mapper/components/map/components/SolarSystemNode/SolarSystemKillsCounter.tsx b/assets/js/hooks/Mapper/components/map/components/SolarSystemNode/SolarSystemKillsCounter.tsx index af77cc56..7f319a38 100644 --- a/assets/js/hooks/Mapper/components/map/components/SolarSystemNode/SolarSystemKillsCounter.tsx +++ b/assets/js/hooks/Mapper/components/map/components/SolarSystemNode/SolarSystemKillsCounter.tsx @@ -1,7 +1,7 @@ import { SystemKillsContent } from '../../../mapInterface/widgets/SystemKills/SystemKillsContent/SystemKillsContent'; import { useKillsCounter } from '../../hooks/useKillsCounter'; import { WdTooltipWrapper } from '@/hooks/Mapper/components/ui-kit/WdTooltipWrapper'; -import { WithChildren, WithClassName } from '@/hooks/Mapper/types/common'; +import { WithChildren, WithClassName } from '@/hooks/Mapper/types/common.ts'; type TooltipSize = 'xs' | 'sm' | 'md' | 'lg'; @@ -11,32 +11,16 @@ type KillsBookmarkTooltipProps = { systemId: string; className?: string; size?: TooltipSize; - timeRange?: number; } & WithChildren & WithClassName; -export const KillsCounter = ({ - killsCount, - systemId, - className, - children, - size = 'xs', - timeRange = 1, -}: KillsBookmarkTooltipProps) => { +export const KillsCounter = ({ killsCount, systemId, className, children, size = 'xs' }: KillsBookmarkTooltipProps) => { const { isLoading, kills: detailedKills, systemNameMap } = useKillsCounter({ realSystemId: systemId }); if (!killsCount || detailedKills.length === 0 || !systemId || isLoading) return null; const tooltipContent = ( - + ); return ( diff --git a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/SystemKills.tsx b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/SystemKills.tsx index 9e2e4ce0..a4e7c9f8 100644 --- a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/SystemKills.tsx +++ b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/SystemKills.tsx @@ -7,9 +7,8 @@ import { useKillsWidgetSettings } from './hooks/useKillsWidgetSettings'; import { useSystemKills } from './hooks/useSystemKills'; import { KillsSettingsDialog } from './components/SystemKillsSettingsDialog'; import { isWormholeSpace } from '@/hooks/Mapper/components/map/helpers/isWormholeSpace'; -import { SolarSystemRawType } from '@/hooks/Mapper/types'; -export const SystemKills: React.FC = React.memo(() => { +export const SystemKills: React.FC = () => { const { data: { selectedSystems, systems, isSubscriptionActive }, outCommand, @@ -26,16 +25,6 @@ export const SystemKills: React.FC = React.memo(() => { return map; }, [systems]); - const systemBySolarSystemId = useMemo(() => { - const map: Record = {}; - systems.forEach(sys => { - if (sys.system_static_info?.solar_system_id != null) { - map[sys.system_static_info.solar_system_id] = sys; - } - }); - return map; - }, [systems]); - const [settings] = useKillsWidgetSettings(); const visible = settings.showAll; @@ -51,61 +40,78 @@ export const SystemKills: React.FC = React.memo(() => { const filteredKills = useMemo(() => { if (!settings.whOnly || !visible) return kills; return kills.filter(kill => { - const system = systemBySolarSystemId[kill.solar_system_id]; + const system = systems.find( + sys => sys.system_static_info.solar_system_id === kill.solar_system_id + ); if (!system) { console.warn(`System with id ${kill.solar_system_id} not found.`); return false; } return isWormholeSpace(system.system_static_info.system_class); }); - }, [kills, settings.whOnly, systemBySolarSystemId, visible]); + }, [kills, settings.whOnly, systems]); return (
- setSettingsDialogVisible(true)} />}> - {!isSubscriptionActive ? ( -
- - Kills available with 'Active' map subscription only (contact map administrators) - -
- ) : isNothingSelected ? ( -
- - No system selected (or toggle “Show all systems”) - -
- ) : showLoading ? ( -
- Loading Kills... -
- ) : error ? ( -
- {error} -
- ) : !filteredKills || filteredKills.length === 0 ? ( -
- No kills found -
- ) : ( -
- -
- )} + setSettingsDialogVisible(true)} + /> + } + > +
+ {!isSubscriptionActive ? ( +
+ + Kills available with 'Active' map subscription only (contact map administrators) + +
+ ) : isNothingSelected ? ( +
+ + No system selected (or toggle “Show all systems”) + +
+ ) : showLoading ? ( +
+ + Loading Kills... + +
+ ) : error ? ( +
+ + {error} + +
+ ) : !filteredKills || filteredKills.length === 0 ? ( +
+ + No kills found + +
+ ) : ( +
+ +
+ )} +
- {settingsDialogVisible && } +
); -}); - -SystemKills.displayName = 'SystemKills'; +}; diff --git a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/SystemKillsContent/SystemKillsContent.module.scss b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/SystemKillsContent/SystemKillsContent.module.scss index 0b6d72c3..8f882e96 100644 --- a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/SystemKillsContent/SystemKillsContent.module.scss +++ b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/SystemKillsContent/SystemKillsContent.module.scss @@ -14,7 +14,3 @@ white-space: pre-line; line-height: 1.2rem; } - -.VirtualScroller { - height: 100% !important; -} diff --git a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/SystemKillsContent/SystemKillsContent.tsx b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/SystemKillsContent/SystemKillsContent.tsx index 5b3a8d19..8dc1d7db 100644 --- a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/SystemKillsContent/SystemKillsContent.tsx +++ b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/SystemKillsContent/SystemKillsContent.tsx @@ -1,17 +1,13 @@ -import React, { useMemo, useRef, useEffect, useState } from 'react'; +import React, { useMemo } from 'react'; import clsx from 'clsx'; import { DetailedKill } from '@/hooks/Mapper/types/kills'; -import { VirtualScroller } from 'primereact/virtualscroller'; -import { useSystemKillsItemTemplate } from '../hooks/useSystemKillsTemplate'; +import { KillRow } from '../components/SystemKillsRow'; -export interface SystemKillsContentProps { +interface SystemKillsContentProps { kills: DetailedKill[]; systemNameMap: Record; compact?: boolean; onlyOneSystem?: boolean; - autoSize?: boolean; - timeRange: number; - limit?: number; } export const SystemKillsContent: React.FC = ({ @@ -19,73 +15,36 @@ export const SystemKillsContent: React.FC = ({ systemNameMap, compact = false, onlyOneSystem = false, - autoSize = false, - timeRange = 1, - limit, }) => { - const processedKills = useMemo(() => { - const validKills = kills.filter(kill => kill.kill_time); - - const sortedKills = validKills.sort((a, b) => { + const sortedKills = useMemo(() => { + return [...kills].sort((a, b) => { const timeA = a.kill_time ? new Date(a.kill_time).getTime() : 0; const timeB = b.kill_time ? new Date(b.kill_time).getTime() : 0; return timeB - timeA; }); - - if (limit != null) { - return sortedKills.slice(0, limit); - } else { - const now = Date.now(); - const cutoff = now - timeRange * 60 * 60 * 1000; - return sortedKills.filter(kill => { - if (!kill.kill_time) return false; - const killTime = new Date(kill.kill_time).getTime(); - return killTime >= cutoff; - }); - } - }, [kills, timeRange, limit]); - - const itemSize = compact ? 35 : 50; - const computedHeight = autoSize ? Math.max(processedKills.length, 1) * itemSize + 5 : undefined; - - const containerRef = useRef(null); - // eslint-disable-next-line @typescript-eslint/no-explicit-any - const scrollerRef = useRef(null); - const [containerHeight, setContainerHeight] = useState(0); - - useEffect(() => { - if (!autoSize && containerRef.current) { - const measure = () => { - const newHeight = containerRef.current?.clientHeight ?? 0; - setContainerHeight(newHeight); - scrollerRef.current?.refresh?.(); - }; - - measure(); - const observer = new ResizeObserver(measure); - observer.observe(containerRef.current); - window.addEventListener('resize', measure); - - return () => { - observer.disconnect(); - window.removeEventListener('resize', measure); - }; - } - }, [autoSize]); - - const itemTemplate = useSystemKillsItemTemplate(systemNameMap, compact, onlyOneSystem); + }, [kills]); return ( -
- +
+ {sortedKills.map(kill => { + const systemIdStr = String(kill.solar_system_id); + const systemName = systemNameMap[systemIdStr] || `System ${systemIdStr}`; + + return ( + + ); + })}
); }; diff --git a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/CompactKillRow.tsx b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/CompactKillRow.tsx index 6e94c64c..d6e75554 100644 --- a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/CompactKillRow.tsx +++ b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/CompactKillRow.tsx @@ -21,9 +21,14 @@ export interface CompactKillRowProps { onlyOneSystem: boolean; } -export const CompactKillRow: React.FC = ({ killDetails, systemName, onlyOneSystem }) => { +export const CompactKillRow: React.FC = ({ + killDetails, + systemName, + onlyOneSystem, +}) => { const { killmail_id = 0, + // Victim victim_char_name = 'Unknown Pilot', victim_alliance_ticker = '', @@ -35,6 +40,7 @@ export const CompactKillRow: React.FC = ({ killDetails, sys victim_corp_id = 0, victim_alliance_id = 0, victim_ship_type_id = 0, + // Attacker final_blow_char_id = 0, final_blow_char_name = '', @@ -45,54 +51,70 @@ export const CompactKillRow: React.FC = ({ killDetails, sys final_blow_corp_id = 0, final_blow_corp_name = '', final_blow_ship_type_id = 0, + kill_time = '', total_value = 0, } = killDetails || {}; const attackerIsNpc = final_blow_char_id === 0; - const victimAffiliationTicker = victim_alliance_ticker || victim_corp_ticker || 'No Ticker'; - const killValueFormatted = total_value != null && total_value > 0 ? `${formatISK(total_value)} ISK` : null; + // Tickers & strings + const victimAffiliationTicker = + victim_alliance_ticker || victim_corp_ticker || 'No Ticker'; + const killValueFormatted = + total_value != null && total_value > 0 ? `${formatISK(total_value)} ISK` : null; const attackerName = attackerIsNpc ? '' : final_blow_char_name; - const attackerTicker = attackerIsNpc ? '' : final_blow_alliance_ticker || final_blow_corp_ticker || ''; + const attackerTicker = attackerIsNpc + ? '' + : final_blow_alliance_ticker || final_blow_corp_ticker || ''; const killTimeAgo = kill_time ? formatTimeMixed(kill_time) : '0h ago'; const attackerSubscript = getAttackerSubscript(killDetails); - const { victimCorpLogoUrl, victimAllianceLogoUrl, victimShipUrl } = buildVictimImageUrls({ + // Victim images, including the ship + const { + victimCorpLogoUrl, + victimAllianceLogoUrl, + victimShipUrl, + } = buildVictimImageUrls({ victim_char_id, victim_ship_type_id, victim_corp_id, victim_alliance_id, }); + // Attacker corp/alliance const { attackerCorpLogoUrl, attackerAllianceLogoUrl } = buildAttackerImageUrls({ final_blow_char_id, final_blow_corp_id, final_blow_alliance_id, }); - const { url: victimPrimaryLogoUrl, tooltip: victimPrimaryTooltip } = getPrimaryLogoAndTooltip( - victimAllianceLogoUrl, - victimCorpLogoUrl, - victim_alliance_name, - victim_corp_name, - 'Victim', - ); + // Victim corp/alliance logo + const { url: victimPrimaryLogoUrl, tooltip: victimPrimaryTooltip } = + getPrimaryLogoAndTooltip( + victimAllianceLogoUrl, + victimCorpLogoUrl, + victim_alliance_name, + victim_corp_name, + 'Victim' + ); - const { url: attackerPrimaryImageUrl, tooltip: attackerPrimaryTooltip } = getAttackerPrimaryImageAndTooltip( - attackerIsNpc, - attackerAllianceLogoUrl, - attackerCorpLogoUrl, - final_blow_alliance_name, - final_blow_corp_name, - final_blow_ship_type_id, - ); + // Attacker corp/alliance or NPC ship + const { url: attackerPrimaryImageUrl, tooltip: attackerPrimaryTooltip } = + getAttackerPrimaryImageAndTooltip( + attackerIsNpc, + attackerAllianceLogoUrl, + attackerCorpLogoUrl, + final_blow_alliance_name, + final_blow_corp_name, + final_blow_ship_type_id + ); return (
@@ -107,13 +129,19 @@ export const CompactKillRow: React.FC = ({ killDetails, sys VictimShip
)} {victimPrimaryLogoUrl && ( - + = ({ killDetails, sys VictimPrimaryLogo )}
-
+
{victim_char_name} / {victimAffiliationTicker} @@ -145,17 +176,20 @@ export const CompactKillRow: React.FC = ({ killDetails, sys
-
+
{!attackerIsNpc && (attackerName || attackerTicker) && (
{attackerName} - {attackerTicker && / {attackerTicker}} + {attackerTicker && ( + / {attackerTicker} + )}
)}
{!onlyOneSystem && systemName ? ( <> - {systemName} / {killTimeAgo} + {systemName} /{' '} + {killTimeAgo} ) : ( {killTimeAgo} @@ -163,7 +197,10 @@ export const CompactKillRow: React.FC = ({ killDetails, sys
{attackerPrimaryImageUrl && ( - + = ({ killDetails, sys {attackerIsNpc {attackerSubscript && ( {attackerSubscript.label} diff --git a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/FullKillRow.tsx b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/FullKillRow.tsx index 060acba7..40ee237b 100644 --- a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/FullKillRow.tsx +++ b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/FullKillRow.tsx @@ -22,7 +22,11 @@ export interface FullKillRowProps { onlyOneSystem: boolean; } -export const FullKillRow: React.FC = ({ killDetails, systemName, onlyOneSystem }) => { +export const FullKillRow: React.FC = ({ + killDetails, + systemName, + onlyOneSystem, +}) => { const { killmail_id = 0, // Victim data @@ -53,13 +57,21 @@ export const FullKillRow: React.FC = ({ killDetails, systemNam const attackerIsNpc = final_blow_char_id === 0; const victimAffiliation = victim_alliance_ticker || victim_corp_ticker || null; - const attackerAffiliation = attackerIsNpc ? '' : final_blow_alliance_ticker || final_blow_corp_ticker || ''; + const attackerAffiliation = attackerIsNpc + ? '' + : final_blow_alliance_ticker || final_blow_corp_ticker || ''; - const killValueFormatted = total_value != null && total_value > 0 ? `${formatISK(total_value)} ISK` : null; + const killValueFormatted = + total_value != null && total_value > 0 ? `${formatISK(total_value)} ISK` : null; const killTimeAgo = kill_time ? formatTimeMixed(kill_time) : '0h ago'; // Build victim images - const { victimPortraitUrl, victimCorpLogoUrl, victimAllianceLogoUrl, victimShipUrl } = buildVictimImageUrls({ + const { + victimPortraitUrl, + victimCorpLogoUrl, + victimAllianceLogoUrl, + victimShipUrl, + } = buildVictimImageUrls({ victim_char_id, victim_ship_type_id, victim_corp_id, @@ -67,35 +79,47 @@ export const FullKillRow: React.FC = ({ killDetails, systemNam }); // Build attacker images - const { attackerPortraitUrl, attackerCorpLogoUrl, attackerAllianceLogoUrl } = buildAttackerImageUrls({ + const { + attackerPortraitUrl, + attackerCorpLogoUrl, + attackerAllianceLogoUrl, + } = buildAttackerImageUrls({ final_blow_char_id, final_blow_corp_id, final_blow_alliance_id, }); // Primary image for victim - const { url: victimPrimaryImageUrl, tooltip: victimPrimaryTooltip } = getPrimaryLogoAndTooltip( - victimAllianceLogoUrl, - victimCorpLogoUrl, - victim_alliance_name, - victim_corp_name, - 'Victim', - ); + const { url: victimPrimaryImageUrl, tooltip: victimPrimaryTooltip } = + getPrimaryLogoAndTooltip( + victimAllianceLogoUrl, + victimCorpLogoUrl, + victim_alliance_name, + victim_corp_name, + 'Victim' + ); // Primary image for attacker - const { url: attackerPrimaryImageUrl, tooltip: attackerPrimaryTooltip } = getAttackerPrimaryImageAndTooltip( - attackerIsNpc, - attackerAllianceLogoUrl, - attackerCorpLogoUrl, - final_blow_alliance_name, - final_blow_corp_name, - final_blow_ship_type_id, - ); + const { url: attackerPrimaryImageUrl, tooltip: attackerPrimaryTooltip } = + getAttackerPrimaryImageAndTooltip( + attackerIsNpc, + attackerAllianceLogoUrl, + attackerCorpLogoUrl, + final_blow_alliance_name, + final_blow_corp_name, + final_blow_ship_type_id + ); const attackerSubscript = getAttackerSubscript(killDetails); return ( -
+
{/* Victim Section */} )} {victimPrimaryImageUrl && ( - + @@ -138,10 +171,12 @@ export const FullKillRow: React.FC = ({ killDetails, systemNam victimCharacterId={victim_char_id} victimPortraitUrl={victimPortraitUrl} /> -
+
{victim_char_name} - {victimAffiliation && / {victimAffiliation}} + {victimAffiliation && ( + / {victimAffiliation} + )}
{victim_ship_name} @@ -152,15 +187,20 @@ export const FullKillRow: React.FC = ({ killDetails, systemNam )}
-
{!onlyOneSystem && systemName && {systemName}}
+
+ {!onlyOneSystem && systemName && {systemName}} +
+ {/* Attacker Section */}
-
+
{!attackerIsNpc && (
{final_blow_char_name} - {attackerAffiliation && / {attackerAffiliation}} + {attackerAffiliation && ( + / {attackerAffiliation} + )}
)} {!attackerIsNpc && final_blow_ship_name && ( @@ -168,7 +208,7 @@ export const FullKillRow: React.FC = ({ killDetails, systemNam )}
{killTimeAgo}
- {!attackerIsNpc && attackerPortraitUrl && final_blow_char_id &&final_blow_char_id > 0 && ( + {(!attackerIsNpc && attackerPortraitUrl && final_blow_char_id > 0) && ( )} {attackerPrimaryImageUrl && ( - +
= ({ killDetails, systemNam {attackerIsNpc {attackerSubscript && ( - + {attackerSubscript.label} )} diff --git a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/KillItemTemplate.tsx b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/KillItemTemplate.tsx deleted file mode 100644 index e495c066..00000000 --- a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/KillItemTemplate.tsx +++ /dev/null @@ -1,21 +0,0 @@ -import { DetailedKill } from '@/hooks/Mapper/types/kills'; -import { VirtualScrollerTemplateOptions } from 'primereact/virtualscroller'; -import { KillRow } from './SystemKillsRow'; -import clsx from 'clsx'; - -export function KillItemTemplate( - systemNameMap: Record, - compact: boolean, - onlyOneSystem: boolean, - kill: DetailedKill, - options: VirtualScrollerTemplateOptions, -) { - const systemIdStr = String(kill.solar_system_id); - const systemName = systemNameMap[systemIdStr] || `System ${systemIdStr}`; - - return ( -
- -
- ); -} diff --git a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/SystemKillsRow.tsx b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/SystemKillsRow.tsx index 704b96ec..8217adbd 100644 --- a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/SystemKillsRow.tsx +++ b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/SystemKillsRow.tsx @@ -10,7 +10,7 @@ export interface KillRowProps { onlyOneSystem?: boolean; } -const KillRowComponent: React.FC = ({ +export const KillRow: React.FC = ({ killDetails, systemName, isCompact = false, @@ -19,7 +19,6 @@ const KillRowComponent: React.FC = ({ if (isCompact) { return ; } + return ; }; - -export const KillRow = React.memo(KillRowComponent); diff --git a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/SystemKillsSettingsDialog.tsx b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/SystemKillsSettingsDialog.tsx index 6cee23cb..a2a384af 100644 --- a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/SystemKillsSettingsDialog.tsx +++ b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/components/SystemKillsSettingsDialog.tsx @@ -1,7 +1,6 @@ import React, { useCallback, useEffect, useRef, useState } from 'react'; import { Dialog } from 'primereact/dialog'; import { Button } from 'primereact/button'; -import { InputSwitch } from 'primereact/inputswitch'; import { WdImgButton, SystemView, TooltipPosition } from '@/hooks/Mapper/components/ui-kit'; import { PrimeIcons } from 'primereact/api'; import { useKillsWidgetSettings } from '../hooks/useKillsWidgetSettings'; @@ -22,10 +21,10 @@ export const KillsSettingsDialog: React.FC = ({ visibl showAll: globalSettings.showAll, whOnly: globalSettings.whOnly, excludedSystems: globalSettings.excludedSystems || [], - timeRange: globalSettings.timeRange, }); const [, forceRender] = useState(0); + const [addSystemDialogVisible, setAddSystemDialogVisible] = useState(false); useEffect(() => { @@ -35,7 +34,6 @@ export const KillsSettingsDialog: React.FC = ({ visibl showAll: globalSettings.showAll, whOnly: globalSettings.whOnly, excludedSystems: globalSettings.excludedSystems || [], - timeRange: globalSettings.timeRange, }; forceRender(n => n + 1); } @@ -57,15 +55,6 @@ export const KillsSettingsDialog: React.FC = ({ visibl forceRender(n => n + 1); }, []); - // Updated handler to set time range as a number: 1 or 24 - const handleTimeRangeChange = useCallback((newTimeRange: 1 | 24) => { - localRef.current = { - ...localRef.current, - timeRange: newTimeRange, - }; - forceRender(n => n + 1); - }, []); - const handleRemoveSystem = useCallback((sysId: number) => { localRef.current = { ...localRef.current, @@ -122,18 +111,11 @@ export const KillsSettingsDialog: React.FC = ({ visibl checked={localData.whOnly} onChange={e => handleWHChange(e.target.checked)} /> -
- {/* Time Range Toggle using InputSwitch */} -
- Time Range: - handleTimeRangeChange(e.value ? 24 : 1)} /> - {localData.timeRange === 24 ? '24 Hours' : '1 Hour'} -
-
@@ -146,7 +128,7 @@ export const KillsSettingsDialog: React.FC = ({ visibl {excluded.length === 0 &&
No systems excluded.
} {excluded.map(sysId => (
- + ): KillsWidgetSettings { diff --git a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/hooks/useSystemKillsTemplate.tsx b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/hooks/useSystemKillsTemplate.tsx deleted file mode 100644 index a9637d48..00000000 --- a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemKills/hooks/useSystemKillsTemplate.tsx +++ /dev/null @@ -1,17 +0,0 @@ -// useSystemKillsItemTemplate.tsx -import { useCallback } from 'react'; -import { VirtualScrollerTemplateOptions } from 'primereact/virtualscroller'; -import { DetailedKill } from '@/hooks/Mapper/types/kills'; -import { KillItemTemplate } from '../components/KillItemTemplate'; - -export function useSystemKillsItemTemplate( - systemNameMap: Record, - compact: boolean, - onlyOneSystem: boolean, -) { - return useCallback( - (kill: DetailedKill, options: VirtualScrollerTemplateOptions) => - KillItemTemplate(systemNameMap, compact, onlyOneSystem, kill, options), - [systemNameMap, compact, onlyOneSystem], - ); -}