import { IconSearch } from '@douyinfe/semi-icons';
import { TextArea } from '@douyinfe/semi-ui';
import { useMemo, useState } from 'react';
import { MAX_MONITOR_SEARCH_TERMS, parseMonitorSearchTerms } from '../hooks/useMonitorData';
import { WorkspaceSideSheet } from '../shared/WorkspaceSideSheet';
export default function BatchVehicleSearchDialog({ initialValue, mobile, onApply, onClose }: {
initialValue: string;
mobile: boolean;
onApply: (value: string) => void;
onClose: () => void;
}) {
const [draft, setDraft] = useState(initialValue);
const terms = useMemo(() => parseMonitorSearchTerms(draft), [draft]);
return }
badge={`${terms.length} 辆`}
badgeColor={terms.length ? 'blue' : 'grey'}
summaryItems={[
{ label: '已识别', value: terms.length.toLocaleString('zh-CN'), detail: '可直接应用到监控筛选', tone: terms.length ? 'primary' : 'neutral' },
{ label: '重复处理', value: '自动去重', detail: '相同车牌只保留一次', tone: 'success' },
{ label: '单次上限', value: `${MAX_MONITOR_SEARCH_TERMS} 辆`, detail: '超出部分不会进入查询' }
]}
footerNote="支持换行、空格、逗号或分号分隔。"
secondaryActions={[{ label: '取消', onClick: onClose }]}
primaryAction={{ label: `应用搜索(${terms.length})`, ariaLabel: `应用搜索(${terms.length})`, disabled: !terms.length, icon: , onClick: () => onApply(terms.join(',')) }}
onCancel={onClose}
>
已识别 {terms.length} 辆,重复项已自动去除最多 {MAX_MONITOR_SEARCH_TERMS} 辆
;
}