refactor(timestamp): migrate pageTheme constants to Timestamp feature
Remove config/pageTheme.ts and move DATE_FORMAT, ZONES, UnitType, ZoneType to pages/Timestamp/constants.ts for better feature cohesion.
This commit is contained in:
@@ -1,56 +0,0 @@
|
|||||||
export const DATE_FORMAT = 'YYYY/MM/DD HH:mm:ss';
|
|
||||||
|
|
||||||
export const ZONES = ['Asia/Shanghai', 'America/New_York', 'Europe/London'] as const;
|
|
||||||
|
|
||||||
export type UnitType = 'ms' | 's';
|
|
||||||
export type ZoneType = (typeof ZONES)[number];
|
|
||||||
|
|
||||||
export const THEME_COLORS = {
|
|
||||||
primary: '#1976d2',
|
|
||||||
primaryDark: '#1565c0',
|
|
||||||
primaryLight: '#42a5f5',
|
|
||||||
success: '#2e7d32',
|
|
||||||
successDark: '#1b5e20',
|
|
||||||
successLight: '#4caf50',
|
|
||||||
warning: '#e65100',
|
|
||||||
warningDark: '#bf360c',
|
|
||||||
warningLight: '#ff9800',
|
|
||||||
error: '#c62828',
|
|
||||||
errorDark: '#b71c1c',
|
|
||||||
errorLight: '#f44336',
|
|
||||||
purple: '#6a1b9a',
|
|
||||||
purpleDark: '#4a148c',
|
|
||||||
purpleLight: '#9c27b0',
|
|
||||||
indigo: '#303f9f',
|
|
||||||
indigoDark: '#1a237e',
|
|
||||||
indigoLight: '#7986cb',
|
|
||||||
white: '#FFFFFF',
|
|
||||||
black: '#000000',
|
|
||||||
} as const;
|
|
||||||
|
|
||||||
export const STATUS_COLORS = {
|
|
||||||
success: THEME_COLORS.success,
|
|
||||||
warning: THEME_COLORS.warning,
|
|
||||||
error: THEME_COLORS.error,
|
|
||||||
info: THEME_COLORS.primary,
|
|
||||||
} as const;
|
|
||||||
|
|
||||||
export const timestampPageStyles = {
|
|
||||||
primaryColor: THEME_COLORS.primary,
|
|
||||||
};
|
|
||||||
|
|
||||||
export const storageCleanerPageStyles = {
|
|
||||||
warningColor: THEME_COLORS.warning,
|
|
||||||
};
|
|
||||||
|
|
||||||
export const qrCodePageStyles = {
|
|
||||||
primaryColor: THEME_COLORS.success,
|
|
||||||
};
|
|
||||||
|
|
||||||
export const textStatisticsPageStyles = {
|
|
||||||
primaryColor: THEME_COLORS.purple,
|
|
||||||
};
|
|
||||||
|
|
||||||
export const base64ConverterPageStyles = {
|
|
||||||
primaryColor: THEME_COLORS.indigo,
|
|
||||||
};
|
|
||||||
@@ -2,7 +2,7 @@ import React, { useCallback, useEffect, useRef, useState } from 'react';
|
|||||||
import { Clock } from 'lucide-react';
|
import { Clock } from 'lucide-react';
|
||||||
import CopyButton from '@/components/CopyButton';
|
import CopyButton from '@/components/CopyButton';
|
||||||
import { useSnackbar } from '@/components/GlobalSnackbar';
|
import { useSnackbar } from '@/components/GlobalSnackbar';
|
||||||
import type { UnitType } from '@/config/pageTheme';
|
import type { UnitType } from './constants';
|
||||||
import { useLazyTranslation } from '@/utils/useLazyTranslation';
|
import { useLazyTranslation } from '@/utils/useLazyTranslation';
|
||||||
import { cn } from '@/lib/utils'; // 引入标准的 shadcn 工具函数
|
import { cn } from '@/lib/utils'; // 引入标准的 shadcn 工具函数
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import React, { useMemo } from 'react';
|
import React, { useMemo } from 'react';
|
||||||
import dayjs from '@/utils/dayjs';
|
import dayjs from '@/utils/dayjs';
|
||||||
import CopyButton from '@/components/CopyButton';
|
import CopyButton from '@/components/CopyButton';
|
||||||
import type { UnitType } from '@/config/pageTheme';
|
import type { UnitType } from './constants';
|
||||||
import { DATE_FORMAT } from '@/config/pageTheme'; // 彻底移除了非语义的 timestampPageStyles 依赖
|
import { DATE_FORMAT } from './constants';
|
||||||
import { useLazyTranslation } from '@/utils/useLazyTranslation';
|
import { useLazyTranslation } from '@/utils/useLazyTranslation';
|
||||||
import { cn } from '@/lib/utils'; // shadcn 核心类名合并工具
|
import { cn } from '@/lib/utils'; // shadcn 核心类名合并工具
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,6 @@
|
|||||||
|
export const DATE_FORMAT = 'YYYY/MM/DD HH:mm:ss';
|
||||||
|
|
||||||
|
export const ZONES = ['Asia/Shanghai', 'America/New_York', 'Europe/London'] as const;
|
||||||
|
|
||||||
|
export type UnitType = 'ms' | 's';
|
||||||
|
export type ZoneType = (typeof ZONES)[number];
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
import { Clock } from 'lucide-react';
|
import { Clock } from 'lucide-react';
|
||||||
import PageHeader from '@/components/PageHeader';
|
import PageHeader from '@/components/PageHeader';
|
||||||
import SwitchButtonGroup from '@/components/SwitchButtonGroup';
|
import SwitchButtonGroup from '@/components/SwitchButtonGroup';
|
||||||
import { ZONES } from '@/config/pageTheme';
|
import { ZONES } from './constants';
|
||||||
import LiveClock from './LiveClock';
|
import LiveClock from './LiveClock';
|
||||||
import ResultView from './ResultView';
|
import ResultView from './ResultView';
|
||||||
import { useTimestampConverter } from './useTimestampConverter';
|
import { useTimestampConverter } from './useTimestampConverter';
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { useCallback, useMemo, useState } from 'react';
|
import { useCallback, useMemo, useState } from 'react';
|
||||||
import dayjs from '@/utils/dayjs';
|
import dayjs from '@/utils/dayjs';
|
||||||
import type { UnitType, ZoneType } from '@/config/pageTheme';
|
import type { UnitType, ZoneType } from './constants';
|
||||||
import { DATE_FORMAT } from '@/config/pageTheme';
|
import { DATE_FORMAT } from './constants';
|
||||||
import { useLazyTranslation } from '@/utils/useLazyTranslation';
|
import { useLazyTranslation } from '@/utils/useLazyTranslation';
|
||||||
import { useContextMenuData } from '@/utils/useContextMenuData';
|
import { useContextMenuData } from '@/utils/useContextMenuData';
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user