Backend: - F141: GET /discover/playlists/editorial for editorial playlists - F143: GET /playlists/shared/:token (public, no auth) - F145: POST /playlists/import (JSON), GET /playlists/:id/export/m3u - F136: GET /playlists/favoris (creates Favoris playlist if needed) - Repo: GetFavorisByUserID, service GetOrCreateFavorisPlaylist Frontend: - SharedPlaylistPage at /playlists/shared/:token (public route) - Editorial playlists section in DiscoverPage - Export M3U in ExportPlaylistButton dropdown - Import JSON via ImportPlaylistButton (PlaylistListPage) - Favoris sidebar link, FavorisRedirectPage, AddToFavorisButton on tracks Roadmap: v0.10.4 marked DONE
532 lines
16 KiB
JSON
532 lines
16 KiB
JSON
{
|
|
"common": {
|
|
"loading": "Loading...",
|
|
"save": "Save",
|
|
"cancel": "Cancel",
|
|
"edit": "Edit",
|
|
"delete": "Delete",
|
|
"confirm": "Confirm",
|
|
"close": "Close",
|
|
"back": "Back",
|
|
"next": "Next",
|
|
"previous": "Previous",
|
|
"search": "Search",
|
|
"filter": "Filter",
|
|
"sort": "Sort",
|
|
"view": "View",
|
|
"download": "Download",
|
|
"upload": "Upload",
|
|
"share": "Share",
|
|
"copy": "Copy",
|
|
"refresh": "Refresh",
|
|
"settings": "Settings",
|
|
"profile": "Profile",
|
|
"logout": "Logout",
|
|
"login": "Login",
|
|
"register": "Register",
|
|
"email": "Email",
|
|
"password": "Password",
|
|
"username": "Username",
|
|
"firstName": "First Name",
|
|
"lastName": "Last Name",
|
|
"name": "Name",
|
|
"title": "Title",
|
|
"description": "Description",
|
|
"date": "Date",
|
|
"time": "Time",
|
|
"status": "Status",
|
|
"type": "Type",
|
|
"size": "Size",
|
|
"actions": "Actions",
|
|
"error": "Error",
|
|
"success": "Success",
|
|
"warning": "Warning",
|
|
"info": "Information",
|
|
"yes": "Yes",
|
|
"no": "No",
|
|
"never": "Never",
|
|
"changeTheme": "Change theme",
|
|
"userMenu": "User menu",
|
|
"notifications": "Notifications",
|
|
"retry": "Retry",
|
|
"retrying": "Retrying...",
|
|
"dismiss": "Dismiss"
|
|
},
|
|
"auth": {
|
|
"login": {
|
|
"title": "Login",
|
|
"subtitle": "Sign in to your Veza account",
|
|
"email": "Email",
|
|
"password": "Password",
|
|
"rememberMe": "Remember me",
|
|
"forgotPassword": "Forgot password?",
|
|
"loginButton": "Sign in",
|
|
"noAccount": "Don't have an account?",
|
|
"createAccount": "Create account",
|
|
"errors": {
|
|
"invalidCredentials": "Invalid email or password",
|
|
"accountLocked": "Account locked",
|
|
"emailNotVerified": "Email not verified"
|
|
}
|
|
},
|
|
"register": {
|
|
"title": "Create Account",
|
|
"subtitle": "Join the Veza community",
|
|
"firstName": "First Name",
|
|
"lastName": "Last Name",
|
|
"username": "Username",
|
|
"email": "Email",
|
|
"password": "Password",
|
|
"confirmPassword": "Confirm Password",
|
|
"registerButton": "Create Account",
|
|
"hasAccount": "Already have an account?",
|
|
"loginLink": "Sign in",
|
|
"errors": {
|
|
"passwordMismatch": "Passwords do not match",
|
|
"emailExists": "This email is already in use",
|
|
"usernameExists": "This username is already taken",
|
|
"weakPassword": "Password must contain at least 8 characters"
|
|
}
|
|
},
|
|
"forgotPassword": {
|
|
"title": "Forgot Password",
|
|
"subtitle": "Enter your email to receive a reset link",
|
|
"email": "Email",
|
|
"sendButton": "Send Reset Link",
|
|
"backToLogin": "Back to login",
|
|
"success": "Reset email sent"
|
|
}
|
|
},
|
|
"dashboard": {
|
|
"title": "Dashboard",
|
|
"welcome": "Welcome, {{name}}!",
|
|
"goodMorning": "Good morning",
|
|
"goodAfternoon": "Good afternoon",
|
|
"goodEvening": "Good evening",
|
|
"subtitle": "Here's what's happening with your music today.",
|
|
"stats": {
|
|
"totalTracks": "Total Tracks",
|
|
"totalPlaylists": "Playlists",
|
|
"totalFavorites": "Favorites",
|
|
"totalStorage": "Storage Used",
|
|
"tracksListened": "Tracks Listened",
|
|
"messagesSent": "Messages Sent",
|
|
"favorites": "Favorites",
|
|
"activeFriends": "Active Friends"
|
|
},
|
|
"fromLastMonth": "from last month",
|
|
"viewAll": "View all",
|
|
"recentActivity": "Recent Activity",
|
|
"recentActivityDescription": "Your latest interactions on the platform",
|
|
"recentTracks": "Recent Tracks",
|
|
"recentTracksDescription": "Latest additions to your library",
|
|
"noTracksInLibrary": "No tracks in your library",
|
|
"quickActions": "Quick Actions",
|
|
"quickActionsDescription": "Fast access to main features",
|
|
"uploadTrack": "Upload Track",
|
|
"createPlaylist": "Create Playlist",
|
|
"discoverMusic": "Discover Music",
|
|
"openChat": "Open Chat",
|
|
"startChat": "Start Chat",
|
|
"newTrack": "New Track",
|
|
"newChat": "New Chat",
|
|
"library": "Library",
|
|
"inviteFriends": "Invite Friends",
|
|
"activity": {
|
|
"newTrackAdded": "New track added",
|
|
"messageFrom": "Message from @{{user}}",
|
|
"newFavoriteAdded": "New favorite added"
|
|
}
|
|
},
|
|
"comingSoon": {
|
|
"title": "Coming Soon",
|
|
"description": "This feature is currently under development and will be available soon.",
|
|
"notifyMe": "Notify me",
|
|
"goBack": "Go back"
|
|
},
|
|
"player": {
|
|
"miniPlayerAriaLabel": "Mini audio player",
|
|
"expandPlayer": "Expand player",
|
|
"closeMiniPlayer": "Close mini player"
|
|
},
|
|
"chat": {
|
|
"title": "Chat",
|
|
"conversations": "Conversations",
|
|
"newConversation": "New Conversation",
|
|
"searchConversations": "Search conversations",
|
|
"noConversations": "No conversations",
|
|
"startConversation": "Start a conversation",
|
|
"messages": {
|
|
"placeholder": "Type your message...",
|
|
"send": "Send",
|
|
"typing": "{{user}} is typing...",
|
|
"online": "Online",
|
|
"offline": "Offline",
|
|
"lastSeen": "Last seen {{time}}"
|
|
},
|
|
"errors": {
|
|
"connectionFailed": "Failed to connect to chat",
|
|
"messageFailed": "Failed to send message",
|
|
"reconnecting": "Reconnecting..."
|
|
}
|
|
},
|
|
"library": {
|
|
"title": "Library",
|
|
"myFiles": "My Files",
|
|
"favorites": "Favorites",
|
|
"recent": "Recent",
|
|
"search": "Search library",
|
|
"filterBy": "Filter by",
|
|
"sortBy": "Sort by",
|
|
"viewMode": {
|
|
"grid": "Grid view",
|
|
"list": "List view"
|
|
},
|
|
"upload": {
|
|
"title": "Upload File",
|
|
"dragDrop": "Drag and drop your files here",
|
|
"or": "or",
|
|
"browseFiles": "Browse files",
|
|
"supportedFormats": "Supported formats: MP3, WAV, FLAC, PDF, DOC, DOCX",
|
|
"maxSize": "Max size: 100MB"
|
|
},
|
|
"actions": {
|
|
"play": "Play",
|
|
"download": "Download",
|
|
"share": "Share",
|
|
"addToFavorites": "Add to favorites",
|
|
"removeFromFavorites": "Remove from favorites",
|
|
"edit": "Edit",
|
|
"delete": "Delete"
|
|
},
|
|
"empty": {
|
|
"title": "Your library is empty",
|
|
"subtitle": "Start by uploading your first files",
|
|
"description": "Upload your first track or create a playlist to get started.",
|
|
"uploadButton": "Upload file",
|
|
"uploadTrack": "Upload Track"
|
|
}
|
|
},
|
|
"profile": {
|
|
"title": "Profile",
|
|
"subtitle": "Manage your personal information and preferences",
|
|
"personalInfo": "Personal Information",
|
|
"updateProfile": "Update your profile",
|
|
"edit": "Edit",
|
|
"save": "Save",
|
|
"cancel": "Cancel",
|
|
"avatar": {
|
|
"title": "Profile Picture",
|
|
"changePhoto": "Change photo",
|
|
"removePhoto": "Remove photo"
|
|
},
|
|
"accountInfo": "Account Information",
|
|
"memberSince": "Member since",
|
|
"emailVerified": "Email verified",
|
|
"lastLogin": "Last login",
|
|
"fields": {
|
|
"firstName": "First Name",
|
|
"lastName": "Last Name",
|
|
"username": "Username",
|
|
"email": "Email",
|
|
"bio": "Bio",
|
|
"bioPlaceholder": "Tell us about yourself..."
|
|
}
|
|
},
|
|
"settings": {
|
|
"title": "Settings",
|
|
"subtitle": "Manage your preferences and account settings",
|
|
"tabs": {
|
|
"appearance": "Appearance",
|
|
"language": "Language",
|
|
"notifications": "Notifications",
|
|
"security": "Security"
|
|
},
|
|
"appearance": {
|
|
"theme": "Theme",
|
|
"themeDescription": "Choose the theme that works best for you",
|
|
"light": "Light",
|
|
"dark": "Dark",
|
|
"system": "System",
|
|
"systemDescription": "Follow system"
|
|
},
|
|
"language": {
|
|
"title": "Language and Region",
|
|
"description": "Choose your preferred language",
|
|
"language": "Language"
|
|
},
|
|
"notifications": {
|
|
"title": "Notifications",
|
|
"description": "Configure your notification preferences",
|
|
"emailNotifications": "Email notifications",
|
|
"emailDescription": "Receive notifications by email",
|
|
"pushNotifications": "Push notifications",
|
|
"pushDescription": "Receive push notifications in browser",
|
|
"chatNotifications": "Chat notifications",
|
|
"chatDescription": "Receive notifications for new messages"
|
|
},
|
|
"security": {
|
|
"title": "Security",
|
|
"description": "Manage your security settings",
|
|
"changePassword": "Change password",
|
|
"changePasswordDescription": "Update your password",
|
|
"twoFactor": "Two-factor authentication",
|
|
"twoFactorDescription": "Add an extra layer of security",
|
|
"activeSessions": "Active sessions",
|
|
"activeSessionsDescription": "Manage your login sessions",
|
|
"modify": "Modify",
|
|
"configure": "Configure",
|
|
"view": "View"
|
|
},
|
|
"save": "Save changes",
|
|
"saving": "Saving..."
|
|
},
|
|
"errors": {
|
|
"404": {
|
|
"title": "Page Not Found",
|
|
"message": "The page you're looking for doesn't exist.",
|
|
"backHome": "Back to home"
|
|
},
|
|
"500": {
|
|
"title": "Server Error",
|
|
"message": "An internal error occurred. Please try again later.",
|
|
"retry": "Retry"
|
|
},
|
|
"network": {
|
|
"title": "Connection Error",
|
|
"message": "Unable to connect to server. Check your internet connection.",
|
|
"retry": "Retry"
|
|
},
|
|
"unauthorized": {
|
|
"title": "Unauthorized Access",
|
|
"message": "You don't have permission to access this resource.",
|
|
"login": "Login"
|
|
}
|
|
},
|
|
"navigation": {
|
|
"dashboard": "Dashboard",
|
|
"chat": "Chat",
|
|
"library": "Library",
|
|
"profile": "Profile",
|
|
"settings": "Settings",
|
|
"menu": "Menu",
|
|
"close": "Close"
|
|
},
|
|
"validation": {
|
|
"required": "This field is required",
|
|
"email": "Please enter a valid email address",
|
|
"minLength": "This field must contain at least {{min}} characters",
|
|
"maxLength": "This field cannot exceed {{max}} characters",
|
|
"passwordMatch": "Passwords do not match",
|
|
"fileSize": "File cannot exceed {{max}}MB",
|
|
"fileType": "File type not supported"
|
|
},
|
|
"pwa": {
|
|
"install": {
|
|
"title": "Install Veza",
|
|
"description": "Quickly access Veza from your home screen",
|
|
"button": "Install",
|
|
"installing": "Installing...",
|
|
"later": "Later",
|
|
"success": "App installed successfully!",
|
|
"error": "Installation error"
|
|
},
|
|
"update": {
|
|
"title": "Update available",
|
|
"description": "A new version of Veza is available",
|
|
"button": "Update",
|
|
"updating": "Updating...",
|
|
"later": "Later",
|
|
"success": "App updated!",
|
|
"error": "Update error"
|
|
},
|
|
"offline": {
|
|
"title": "Offline mode",
|
|
"description": "You are currently offline. Some features may be limited.",
|
|
"retry": "Retry"
|
|
},
|
|
"notifications": {
|
|
"permission": {
|
|
"title": "Notifications",
|
|
"description": "Allow notifications to receive important updates",
|
|
"allow": "Allow",
|
|
"deny": "Deny"
|
|
}
|
|
}
|
|
},
|
|
"tracks": {
|
|
"title": "Tracks",
|
|
"upload": "Upload Track",
|
|
"play": "Play",
|
|
"pause": "Pause",
|
|
"like": "Like",
|
|
"unlike": "Unlike",
|
|
"addToFavorites": "Add to favorites",
|
|
"removeFromFavorites": "Remove from favorites",
|
|
"share": "Share",
|
|
"download": "Download",
|
|
"comments": "Comments",
|
|
"addComment": "Add a comment",
|
|
"editComment": "Edit comment",
|
|
"deleteComment": "Delete comment",
|
|
"reply": "Reply",
|
|
"noTracks": "No tracks available",
|
|
"noResults": "No results found",
|
|
"loading": "Loading tracks...",
|
|
"duration": "Duration",
|
|
"artist": "Artist",
|
|
"album": "Album",
|
|
"genre": "Genre",
|
|
"year": "Year",
|
|
"plays": "Plays",
|
|
"likes": "Likes"
|
|
},
|
|
"playlists": {
|
|
"title": "Playlists",
|
|
"create": "Create Playlist",
|
|
"edit": "Edit Playlist",
|
|
"delete": "Delete Playlist",
|
|
"follow": "Follow",
|
|
"unfollow": "Unfollow",
|
|
"following": "Following",
|
|
"followers": "Followers",
|
|
"share": "Share",
|
|
"addTrack": "Add Track",
|
|
"removeTrack": "Remove Track",
|
|
"collaborators": "Collaborators",
|
|
"addCollaborator": "Add Collaborator",
|
|
"removeCollaborator": "Remove Collaborator",
|
|
"noPlaylists": "No playlists available",
|
|
"loading": "Loading playlists...",
|
|
"tracks": "Tracks",
|
|
"public": "Public",
|
|
"private": "Private"
|
|
},
|
|
"notifications": {
|
|
"title": "Notifications",
|
|
"markAsRead": "Mark as read",
|
|
"markAllAsRead": "Mark all as read",
|
|
"clearAll": "Clear all",
|
|
"noNotifications": "No notifications",
|
|
"viewAll": "View all notifications",
|
|
"newMessage": "New message",
|
|
"trackUploaded": "Track uploaded",
|
|
"userMentioned": "You were mentioned",
|
|
"system": "System notification",
|
|
"friendRequest": "Friend request",
|
|
"conversationInvite": "Conversation invite"
|
|
},
|
|
"search": {
|
|
"title": "Search",
|
|
"placeholder": "Search tracks, playlists, users...",
|
|
"results": "Results",
|
|
"noResults": "No results found",
|
|
"tracks": "Tracks",
|
|
"playlists": "Playlists",
|
|
"users": "Users",
|
|
"all": "All"
|
|
},
|
|
"analytics": {
|
|
"title": "Analytics",
|
|
"period": "Period",
|
|
"last7Days": "Last 7 days",
|
|
"last30Days": "Last 30 days",
|
|
"last90Days": "Last 90 days",
|
|
"lastYear": "Last year",
|
|
"topTracks": "Top Tracks",
|
|
"topPlaylists": "Top Playlists",
|
|
"totalPlays": "Total Plays",
|
|
"totalLikes": "Total Likes",
|
|
"totalDownloads": "Total Downloads"
|
|
},
|
|
"webhooks": {
|
|
"title": "Webhooks",
|
|
"create": "Create Webhook",
|
|
"edit": "Edit Webhook",
|
|
"delete": "Delete Webhook",
|
|
"test": "Test Webhook",
|
|
"regenerateKey": "Regenerate API Key",
|
|
"url": "URL",
|
|
"events": "Events",
|
|
"status": "Status",
|
|
"active": "Active",
|
|
"inactive": "Inactive",
|
|
"noWebhooks": "No webhooks configured"
|
|
},
|
|
"admin": {
|
|
"title": "Admin Dashboard",
|
|
"users": "Users",
|
|
"systemStats": "System Statistics",
|
|
"auditLogs": "Audit Logs",
|
|
"suspiciousActivity": "Suspicious Activity"
|
|
},
|
|
"keyboard": {
|
|
"shortcuts": {
|
|
"title": "Keyboard Shortcuts",
|
|
"search": "Focus search or navigate to search page",
|
|
"newMessage": "Open new chat/message",
|
|
"playPause": "Play or pause current track",
|
|
"nextTrack": "Play next track",
|
|
"previousTrack": "Play previous track",
|
|
"volumeUp": "Increase volume",
|
|
"volumeDown": "Decrease volume",
|
|
"mute": "Toggle mute",
|
|
"toggleSidebar": "Toggle sidebar",
|
|
"escape": "Close modals or go back",
|
|
"help": "Show this help dialog"
|
|
}
|
|
},
|
|
"player": {
|
|
"play": "Play",
|
|
"pause": "Pause",
|
|
"next": "Next track",
|
|
"previous": "Previous track",
|
|
"shuffleOn": "Shuffle: On",
|
|
"shuffleOff": "Shuffle: Off",
|
|
"repeatOff": "Repeat: Off",
|
|
"repeatTrack": "Repeat: Track",
|
|
"repeatPlaylist": "Repeat: Playlist",
|
|
"mute": "Mute",
|
|
"unmute": "Unmute",
|
|
"showQueue": "Show queue",
|
|
"hideQueue": "Hide queue"
|
|
},
|
|
"header": {
|
|
"searchPlaceholder": "What do you want to play?",
|
|
"searchAriaLabel": "Search tracks, artists, playlists",
|
|
"online": "Online",
|
|
"profile": "Profile",
|
|
"signOut": "Sign Out"
|
|
},
|
|
"nav": {
|
|
"sections": {
|
|
"workspace": "My workspace",
|
|
"vezaNetwork": "Veza Network",
|
|
"commerce": "Commerce",
|
|
"library": "Library",
|
|
"system": "System"
|
|
},
|
|
"items": {
|
|
"dashboard": "Command Center",
|
|
"tracks": "Projects",
|
|
"gear": "Gear Locker",
|
|
"analytics": "Performance",
|
|
"social": "Community Feed",
|
|
"feed": "Feed",
|
|
"marketplace": "Marketplace",
|
|
"live": "Live Sessions",
|
|
"chat": "Channels",
|
|
"sell": "Seller Dashboard",
|
|
"wishlist": "Wishlist",
|
|
"purchases": "Purchases",
|
|
"playlists": "Playlists",
|
|
"favoris": "Favorites",
|
|
"queue": "Play Queue",
|
|
"developer": "Developer API",
|
|
"admin": "Admin Panel"
|
|
},
|
|
"settings": "Settings",
|
|
"logout": "Logout",
|
|
"skipToContent": "Skip to content"
|
|
}
|
|
}
|