Files
AeroStart/src/i18n/locales/en.ts
ZyphrZero 2993f9b859 ♻️ refactor: reorganize project structure and centralize search engine config
- Move all source files from root to src/ directory for better organization
- Create src/config/searchEngines.ts to centralize search engine configurations
  - Define unified SearchEngineConfig interface
  - Support both JSONP and Fetch request methods
  - Implement response parsers for Google, Baidu, Bing, DuckDuckGo, and Bilibili
- Refactor src/utils/suggestions.ts to use centralized config
  - Simplify code from 126 lines to 81 lines
  - Support hybrid JSONP/Fetch mode (Bilibili uses Fetch via Vite proxy)
  - Remove duplicate URL construction and parsing logic
- Update path alias configuration
  - Change @/* from ./* to ./src/* in tsconfig.json
  - Update vite.config.ts alias to point to ./src
- Add Bilibili proxy configuration in vite.config.ts for development
- Remove Bilibili rewrites from vercel.json (use Vite proxy instead)
- Add @vercel/node to devDependencies
- Remove unused files: README.md, i18n/README.md, metadata.json, vite-env.d.ts

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 10:41:17 +08:00

96 lines
2.9 KiB
TypeScript

import { Translation } from '../types';
export const en: Translation = {
// Common
settings: 'Settings',
appearance: 'Appearance',
searchEngines: 'Search Engines',
// Theme Settings
themeColor: 'Theme Color',
showSeconds: 'Show Seconds',
use24HourFormat: '24-Hour Format',
maskBlurEffect: 'Mask Blur Effect',
searchHistory: 'Search History',
backgroundBlur: 'Background Blur',
searchBoxOpacity: 'Search Box Opacity',
// Wallpaper Settings
wallpaperSettings: 'Wallpaper Settings',
uploadImageVideo: 'Upload Image/Video',
enterImageVideoUrl: 'Enter image or video URL...',
apply: 'Apply',
cover: 'Cover',
contain: 'Contain',
fill: 'Fill',
repeat: 'Repeat',
center: 'Center',
deleteWallpaper: 'Delete wallpaper',
// Search Engine Manager
addCustomEngine: 'Add Custom Engine',
editSearchEngine: 'Edit Search Engine',
name: 'Name',
searchUrl: 'Search URL (use %s or append directly)',
svgIconCode: 'SVG Icon Code',
optional: 'optional',
preview: 'Preview',
cancel: 'Cancel',
save: 'Save',
add: 'Add',
current: 'Current',
setDefault: 'Set Default',
edit: 'Edit',
delete: 'Delete',
// Search Box
search: 'Search',
searchOn: 'Search on',
recentSearches: 'Recent Searches',
clearHistory: 'Clear History',
// Context Menu
copy: 'Copy',
cut: 'Cut',
paste: 'Paste',
// Error Boundary
somethingWentWrong: 'Something went wrong',
errorMessage: 'The application encountered an unexpected error. Please try refreshing the page or resetting the app.',
retry: 'Retry',
refreshPage: 'Refresh Page',
// Toast Messages
searchEngineDeleted: 'Search engine deleted',
searchEngineUpdated: 'Search engine updated successfully',
newSearchEngineAdded: 'New search engine added',
duplicateEngineName: 'This search engine name already exists, please use a different name',
customWallpaperApplied: 'Custom wallpaper applied',
wallpaperUploaded: 'Wallpaper uploaded and applied successfully',
wallpaperDeleted: 'Custom wallpaper deleted',
fileSizeExceeded: 'File size cannot exceed 3.5MB. Consider using URL method instead.',
unsupportedFileType: 'Unsupported file type. Only supports: JPEG, PNG, GIF, WebP, SVG, MP4, WebM, OGG',
fileContentMismatch: 'File content does not match type',
storageFull: 'Insufficient storage space! File too large to save. Consider using URL method.',
invalidUrlFormat: 'Invalid URL format',
unsupportedProtocol: 'Only HTTP or HTTPS protocol links are supported',
invalidSearchUrl: 'Generated search URL is invalid',
copyFailed: 'Copy failed',
cutFailed: 'Cut failed',
cannotReadClipboard: 'Cannot read clipboard',
// Clock
monday: 'Monday',
tuesday: 'Tuesday',
wednesday: 'Wednesday',
thursday: 'Thursday',
friday: 'Friday',
saturday: 'Saturday',
sunday: 'Sunday',
// Language
language: 'Language',
english: 'English',
chinese: '简体中文',
};