추세검색 설정 추가

This commit is contained in:
Macbook
2026-05-27 01:36:06 +09:00
parent c1bcf88c6c
commit 2e08c6b16f
42 changed files with 1507 additions and 226 deletions
@@ -9,6 +9,7 @@ import VirtualTargetQuote from '../virtual/VirtualTargetQuote';
import VirtualLiveBadge from '../virtual/VirtualLiveBadge';
import TrendSearchCardSignalPanel from './TrendSearchCardSignalPanel';
import TrendSearchCardChart from './TrendSearchCardChart';
import TrendSearchTargetActions from './TrendSearchTargetActions';
export type TrendSearchDisplayMode = 'summary' | 'chart';
@@ -24,6 +25,11 @@ interface Props {
ticker?: TickerData;
updatedAt?: number;
flash?: boolean;
inTargets?: boolean;
targetPinned?: boolean;
targetBusy?: boolean;
onAddTarget?: () => void;
onRemoveTarget?: () => void;
}
function resultToTicker(result: TrendSearchResultDto): TickerData {
@@ -55,6 +61,11 @@ const TrendSearchResultCard: React.FC<Props> = ({
ticker,
updatedAt,
flash = false,
inTargets = false,
targetPinned = false,
targetBusy = false,
onAddTarget,
onRemoveTarget,
}) => {
const en = result.market.replace(/^KRW-/, '');
const quoteTicker = ticker ?? resultToTicker(result);
@@ -97,6 +108,18 @@ const TrendSearchResultCard: React.FC<Props> = ({
<span className="tsd-card-score">{result.matchRate}</span>
{result.highMatch && <span className="tsd-card-high-badge">HIGH MATCH</span>}
</div>
{(onAddTarget || onRemoveTarget) && (
<div className="vtd-card-head-actions">
<TrendSearchTargetActions
market={result.market}
inTargets={inTargets}
targetPinned={targetPinned}
busy={targetBusy}
onAdd={() => onAddTarget?.()}
onRemove={() => onRemoveTarget?.()}
/>
</div>
)}
</div>
<div className="vtd-card-meta">