export const en = { app: { // title and manager are no longer used for branding title: 'PlexSync', manager: 'Manager', footer: '© {year} PMS Playlist Sync. Connected to Docker backend.', }, common: { save: 'Save', cancel: 'Cancel', revert: 'Revert', delete: 'Delete', done: 'Done', loading: 'Loading...', refresh: 'Refresh', close: 'Close', none: 'None', disabled: 'Disabled', add: 'Add', }, server: { local: 'Local Server', cloud: 'Cloud Server', playlists: '{count} Playlists', notConnected: 'Not Connected', connectionFailed: 'Connection failed', connecting: 'Connecting...', waiting: 'Waiting...', syncing: 'Syncing...', noPlaylists: 'No playlists found.', cancelRefresh: 'Cancel Refresh', refreshPlaylists: 'Refresh Playlists', }, playlist: { trackCount: 'Track Count', lastUpdated: 'Last Updated', }, dashboard: { mapping: 'Mapping', backup: 'Backup', autoSync: 'Auto-Sync', watch: 'Watch', watchModeActive: 'Watch Mode: Active', watchModeDisabled: 'Watch Mode: Disabled', notSet: 'Not Set', retain: 'Retain: {count}', keep: 'Keep {count}', connected: 'Connected to Plex', disconnected: 'Disconnected', synchronizing: 'SYNCHRONIZING', syncComplete: 'SYNC COMPLETE', }, strategies: { title: 'Sync Strategy', localOverwrite: { label: 'Local Overwrite', desc: 'Local playlist completely overwrites Cloud. (No Diff)', }, cloudOverwrite: { label: 'Cloud Overwrite', desc: 'Cloud playlist completely overwrites Local. (No Diff)', }, mergeLocal: { label: 'Two-way Merge (Local Priority)', desc: 'Merge both. Conflicts resolve to Local version.', }, mergeCloud: { label: 'Two-way Merge (Cloud Priority)', desc: 'Merge both. Conflicts resolve to Cloud version.', }, syncNow: 'Sync Now', syncing: 'Sync in Progress...', saveWarning: 'Please save pending changes (Backups/Path Mapping) before syncing.', }, mapping: { title: 'Path Mapping', simple: 'Simple Mapping', regex: 'Regex Rules', simpleTitle: 'Path Mapping', simpleSubtitle: 'Map Local paths to Cloud paths using simple string matching', regexPre: 'Pre-Processing (Before Sync)', regexPost: 'Post-Processing (After Sync / Result)', localPath: 'Local Path', cloudPath: 'Cloud Path', pattern: 'Pattern', replace: 'Replace', saveRules: 'Save Rules', noRules: 'No rules defined.', }, backup: { title: 'Backup Retention', enable: 'Enable Backups', enableDesc: 'Create a copy before changes', maxVersions: 'Max versions to keep:', autoDelete: 'Oldest deleted automatically', }, schedule: { title: 'Scheduled Tasks', cron: 'Cron', daily: 'Daily', weekly: 'Weekly', enableCron: 'Enable Cron Schedule', enableDaily: 'Enable Daily Run', enableWeekly: 'Enable Weekly Run', watchLocal: 'Watch Local Changes', watchDesc: 'Auto-sync when local playlist updates', schedule: 'Schedule', notConfigured: 'Not configured', today: 'Today', tomorrow: 'Tomorrow', }, connection: { titleConnected: 'Server Connected', titleConnect: 'Connect Plex Server', serverDetails: 'Server Details', authentication: 'Authentication', protocol: 'Protocol', address: 'IP Address or Domain', port: 'Port', token: 'X-Plex-Token (Optional)', username: 'Username / Email', password: 'Password', advanced: 'Advanced Options', timeout: 'Connection Timeout (Seconds)', connectBtn: 'Connect Server', connecting: 'Connecting...', connectedSuccess: 'Connected Successfully', selectLibrary: 'Select Library to Sync', }, toasts: { localRefreshCancelled: 'Local refresh cancelled.', cloudRefreshCancelled: 'Cloud refresh cancelled.', strategySaved: 'Selected strategy "{strategy}" has been saved.', mappingSaved: 'Path mapping rules have been saved.', backupSaved: 'Backup settings have been saved.', backupFailed: 'Failed to save backup settings.', scheduleDisabled: 'Scheduled tasks disabled.', scheduleEmpty: 'Scheduled tasks disabled (Empty Cron).', scheduleStarted: 'Scheduled task started successfully.', scheduleFailed: 'Failed to update schedule.', syncFailed: 'Sync failed. Please check connection.', librarySwitched: 'Library switched to {library}', connectedTo: 'Successfully connected to {name}', connectionCancelled: 'Connection cancelled by user.', } };