trypost/lang/en/settings.php
Paulo Castellano e17b86ac93 Make the content-language field a searchable combobox and reload on UI-language switch
Replace the plain content-language <Select> in the brand form with a
searchable LanguagePicker combobox (Popover + Command), matching the
FontPicker. i18n the combobox placeholder/search/empty strings across all
15 locales.

Switch the UI language via a full page reload instead of client-side dir
syncing, so the server-rendered <html dir> flips LTR<->RTL correctly
without a manual refresh.
2026-07-03 18:17:38 -03:00

363 lines
15 KiB
PHP

<?php
return [
'title' => 'Settings',
'description' => 'Manage your profile and account settings',
'hub' => [
'title' => 'Settings',
'description' => 'Choose what you want to manage.',
'profile' => [
'title' => 'Profile',
'description' => 'Update your personal info, password, and notification preferences.',
],
'workspace' => [
'title' => 'Workspace',
'description' => 'Configure your workspace, brand, members, and API keys.',
],
'account' => [
'title' => 'Account',
'description' => 'Manage your account info, usage, and billing.',
],
],
'nav' => [
'profile' => 'Profile',
'authentication' => 'Authentication',
'workspace' => 'Workspace',
'members' => 'Members',
'notifications' => 'Notifications',
'billing' => 'Billing',
],
'notifications' => [
'title' => 'Notification preferences',
'heading' => 'Email notifications',
'description' => 'Choose which email notifications you want to receive',
'post_published' => 'Post published',
'post_published_description' => 'Receive an email when your post is published successfully',
'post_failed' => 'Post failed',
'post_failed_description' => 'Receive an email when your post fails to publish',
'account_disconnected' => 'Account disconnected',
'account_disconnected_description' => 'Receive an email when a social account is disconnected',
'save' => 'Save preferences',
],
'profile' => [
'title' => 'Profile settings',
'photo_heading' => 'Profile photo',
'photo_description' => 'Upload a profile photo',
'heading' => 'Profile information',
'description' => 'Update your name and email address',
'avatar' => 'Avatar',
'name' => 'Name',
'name_placeholder' => 'Full name',
'email' => 'Email address',
'email_placeholder' => 'Email address',
'email_unverified' => 'Your email address is unverified.',
'resend_verification' => 'Click here to resend the verification email.',
'verification_sent' => 'A new verification link has been sent to your email address.',
'save' => 'Save',
],
'authentication' => [
'title' => 'Authentication',
'page_title' => 'Authentication settings',
'sessions' => [
'title' => 'Active sessions',
'description' => 'If you notice anything suspicious, sign out of other devices.',
'unknown_browser' => 'Unknown browser',
'unknown_ip' => 'Unknown IP',
'on' => 'on',
'active_now' => 'Active now',
'log_out_others' => 'Log out other devices',
'modal_title' => 'Log out other devices',
'modal_description_password' => 'Enter your current password to confirm you want to log out other browser sessions.',
'modal_description_email' => 'Type your email address to confirm you want to log out other browser sessions.',
'password_placeholder' => 'Current password',
'email_placeholder' => 'Your account email',
'cancel' => 'Cancel',
'submit' => 'Log out other devices',
'email_mismatch' => 'The email address does not match your account.',
'flash_logged_out' => 'You have been logged out from other devices.',
],
'password' => [
'update_title' => 'Update password',
'set_title' => 'Set a password',
'update_description' => 'Ensure your account is using a long, random password to stay secure.',
'set_description' => 'Add a password so you can sign in without a connected provider.',
'current_password' => 'Current password',
'new_password' => 'New password',
'confirm_password' => 'Confirm password',
'save' => 'Save password',
'set' => 'Set password',
],
'providers' => [
'title' => 'Connected accounts',
'description' => 'Sign in faster with these connected providers.',
'connected' => 'Connected',
'not_connected' => 'Not connected',
'connect' => 'Connect',
'disconnect' => 'Disconnect',
'flash_disconnected' => ':provider disconnected successfully.',
'flash_connected' => ':provider connected successfully.',
'flash_already_linked' => 'That :provider account is already linked to another user.',
'flash_cannot_disconnect' => 'You cannot disconnect your only sign-in method. Set a password or connect another provider first.',
],
],
'delete_account' => [
'heading' => 'Delete account',
'description' => 'Delete your account and all of its resources',
'warning' => 'Warning',
'warning_message' => 'Please proceed with caution, this cannot be undone.',
'button' => 'Delete account',
'modal_title' => 'Are you sure you want to delete your account?',
'modal_description_password' => 'Once your account is deleted, all of its resources and data will also be permanently deleted. Please enter your password to confirm.',
'modal_description_email' => 'Once your account is deleted, all of its resources and data will also be permanently deleted. Please type your email address :email to confirm.',
'password' => 'Password',
'password_placeholder' => 'Password',
'email_placeholder' => 'Your account email',
'email_mismatch' => 'The email address does not match your account.',
'cancel' => 'Cancel',
'confirm' => 'Delete account',
],
'workspace' => [
'tabs' => [
'workspace' => 'Workspace',
'brand' => 'Brand',
'users' => 'Members',
'api_keys' => 'API Keys',
],
'title' => 'Workspace settings',
'logo_heading' => 'Workspace logo',
'logo_description' => 'Upload a logo for your workspace',
'heading' => 'Workspace name',
'description' => 'Update your workspace name',
'members_heading' => 'Members',
'members_description' => 'Manage workspace members and invitations',
'name' => 'Name',
'name_placeholder' => 'My Workspace',
'save' => 'Save',
],
'brand' => [
'title' => 'Brand',
'description' => 'Configure your brand identity for AI-generated content.',
'name' => 'Workspace name',
'name_placeholder' => 'My brand',
'website' => 'Website',
'website_placeholder' => 'https://yourbrand.com',
'brand_description' => 'Description',
'brand_description_placeholder' => 'Tell us about your brand, what you do, and who your audience is...',
'voice' => 'Brand voice',
'voice_description' => 'Pick the traits that define how your content sounds.',
'voice_group' => [
'pov' => 'Point of view',
'formality' => 'Formality',
'energy' => 'Energy',
'humor' => 'Humor',
'attitude' => 'Attitude',
'warmth' => 'Warmth',
'confidence' => 'Confidence',
'style' => 'Style',
],
'voice_trait' => [
'first_person' => 'First person',
'second_person' => 'Second person (you)',
'third_person' => 'Third person',
'formal' => 'Formal',
'balanced' => 'Balanced',
'casual' => 'Casual',
'calm' => 'Calm',
'moderate' => 'Moderate',
'enthusiastic' => 'Enthusiastic',
'vibrant' => 'Vibrant',
'serious' => 'Serious',
'dry' => 'Dry / subtle',
'witty' => 'Witty',
'playful' => 'Playful',
'respectful' => 'Respectful',
'even_handed' => 'Even-handed',
'bold' => 'Bold',
'provocative' => 'Provocative',
'neutral' => 'Neutral',
'friendly' => 'Friendly',
'empathetic' => 'Empathetic',
'humble' => 'Humble',
'confident' => 'Confident',
'assertive' => 'Assertive',
'direct' => 'Direct',
'concise' => 'Concise',
'transparent' => 'Transparent',
'no_hype' => 'No hype',
'practical' => 'Practical',
'data_driven' => 'Data-driven',
'storytelling' => 'Storytelling',
'inspirational' => 'Inspirational',
'educational' => 'Educational',
'technical' => 'Technical',
'minimalist' => 'Few emojis',
],
'brand_color' => 'Brand color',
'background_color' => 'Background color',
'text_color' => 'Text color',
'font' => 'Font',
'image_style' => 'Image style',
'image_style_description' => 'Visual style applied when generating slide and cover images for AI posts.',
'image_style_cinematic' => 'Cinematic',
'image_style_illustration' => 'Illustration',
'image_style_isometric_3d' => 'Isometric',
'image_style_cartoon' => 'Cartoon',
'image_style_typographic' => 'Typographic',
'image_style_infographic' => 'Infographic',
'image_style_minimalist' => 'Minimalist',
'image_style_mockup' => 'Mockup',
'content_language' => 'Content language',
'content_language_description' => 'Language used for AI-generated captions, hashtags, and any text inside generated images or videos.',
'font_placeholder' => 'Select a font…',
'font_search' => 'Search font…',
'font_empty' => 'No fonts match.',
'language_placeholder' => 'Select a language…',
'language_search' => 'Search language…',
'language_empty' => 'No language found.',
],
'members' => [
'title' => 'Members',
'heading' => 'Team members',
'description' => 'Manage members and invites for this workspace',
'cancel' => 'Cancel',
'remove' => 'Remove',
'make_role' => 'Make :role',
'invite' => [
'title' => 'Invite Member',
'description' => 'Send an email invite to add collaborators',
'email' => 'Email',
'email_placeholder' => 'collaborator@email.com',
'role' => 'Role',
'role_placeholder' => 'Select a role',
'submit' => 'Send Invite',
],
'pending' => [
'title' => 'Pending Invites',
'description' => 'Invites awaiting acceptance',
'empty' => 'No pending invites',
],
'list' => [
'title' => 'Members',
'description' => 'People with access to this workspace',
'empty' => 'No members besides the owner',
],
'remove_modal' => [
'title' => 'Remove member',
'description' => 'Are you sure you want to remove this member from the workspace? They will lose access to all workspace resources.',
'action' => 'Remove member',
],
'cancel_invite_modal' => [
'title' => 'Cancel invitation',
'description' => 'Are you sure you want to cancel this invitation?',
'action' => 'Cancel invitation',
],
'roles' => [
'owner' => 'Owner',
'admin' => 'Admin',
'member' => 'Member',
'viewer' => 'Viewer',
],
'flash' => [
'invite_sent' => 'Invite sent successfully!',
'invite_deleted' => 'Invite deleted.',
'member_removed' => 'Member removed successfully.',
'role_updated' => 'Member role updated.',
'wrong_email' => 'This invite is for a different email address.',
'already_member' => 'You are already a member of this workspace.',
'invite_accepted' => 'Welcome! You are now a member of the workspace.',
'invite_declined' => 'Invite declined.',
],
],
'account' => [
'tabs' => [
'account' => 'Account',
'usage' => 'Usage',
'billing' => 'Billing',
],
'title' => 'Account Settings',
'description' => 'Manage your account name and billing email',
'name' => 'Account Name',
'name_placeholder' => 'My Company',
'billing_email' => 'Billing Email',
'billing_email_placeholder' => 'billing@company.com',
'billing_email_hint' => 'This email will be used for invoices and billing communications from Stripe.',
'submit' => 'Save',
],
'flash' => [
'account_updated' => 'Account updated successfully!',
'profile_updated' => 'Profile updated successfully!',
'password_updated' => 'Password updated successfully!',
'workspace_updated' => 'Settings updated successfully!',
'photo_updated' => 'Photo updated successfully!',
'photo_deleted' => 'Photo removed successfully!',
'logo_updated' => 'Logo uploaded successfully!',
'logo_deleted' => 'Logo removed successfully!',
'notifications_updated' => 'Notification preferences updated!',
],
'api_keys' => [
'title' => 'API Keys',
'page_title' => 'API Keys',
'heading' => 'API Keys',
'description' => 'Manage API keys for programmatic access to your workspace.',
'create' => 'Create API Key',
'copy' => 'Copy',
'new_token_message' => 'Your new API key has been created. Copy it now — you won\'t be able to see it again.',
'table' => [
'name' => 'Name',
'key' => 'Key',
'status' => 'Status',
'expires' => 'Expires',
'last_used' => 'Last Used',
'never' => 'Never',
],
'actions' => [
'copy_id' => 'Copy API Key ID',
'copy_id_success' => 'API Key ID copied to clipboard',
'delete' => 'Delete',
],
'empty' => [
'title' => 'No API keys yet',
'description' => 'Create an API key to access your workspace programmatically.',
],
'delete_modal' => [
'title' => 'Delete API key',
'description' => 'Are you sure you want to delete this API key? Any applications using this key will lose access immediately.',
'action' => 'Delete API key',
],
'create_dialog' => [
'title' => 'Create API Key',
'description' => 'Create a new API key for programmatic access to your workspace.',
'name' => 'Name',
'name_placeholder' => 'e.g. Production API Key',
'expires' => 'Expiration date (optional)',
'expires_placeholder' => 'No expiration',
'submit' => 'Create',
'cancel' => 'Cancel',
],
'flash' => [
'created' => 'API key created successfully!',
'deleted' => 'API key deleted successfully!',
],
],
];