d38bafe237
移除 chrome.i18n 后,将各功能页面、布局与工具模块的 UI 文案改为内联中文; 删除冗余注释与过度抽象(如 ToolCard、StatCard),精简 props 与状态管理; 同步优化 JsonTools、StorageCleaner、Timestamp、TestDataGenerator、Dashboard、 Base64Converter、RightClickRestorer、TextStatistics、TopBar、RouterProvider、 ThemeModeProvider 及生成器库与 utils 工具文件。
24 lines
667 B
TypeScript
24 lines
667 B
TypeScript
import { useCallback, useState } from 'react';
|
|
import { getTextStats, type TextStats } from '@/utils/textStatistics';
|
|
import { useContextMenuData } from '@/utils/useContextMenuData';
|
|
|
|
export interface UseTextStatisticsReturn {
|
|
text: string;
|
|
stats: TextStats;
|
|
setText: (text: string) => void;
|
|
}
|
|
|
|
export function useTextStatistics(): UseTextStatisticsReturn {
|
|
const [text, setText] = useState('');
|
|
|
|
const handleContextMenuData = useCallback((payload: string) => {
|
|
setText(payload);
|
|
}, []);
|
|
|
|
useContextMenuData({ featureKey: 'textStatistics', onData: handleContextMenuData });
|
|
|
|
const stats = getTextStats(text);
|
|
|
|
return { text, stats, setText };
|
|
}
|