Connect flow:
- surface OAuth failures: useOAuthPopup forwards {success, message}; the
accounts grid toasts the error instead of silently reloading
- detect a blocked popup and toast a "allow popups" message
- PopupCallback only promises auto-close when it has an opener, otherwise
tells the user to close it; adds role=status/aria-live and aria-hidden icons
- drop the dead LinkedInPage connect-route entry and the unsent access_token
field on the Facebook page-select type
Media/gallery:
- delete dead code: MediaDropzone.vue and useDragAndDrop.ts (no references)
- GalleryBrowser toasts per-file upload failures instead of swallowing them;
cards are always clickable now that videos open in the lightbox
- formatDurationMs rounds the sub-second branch and tolerates undefined
- advertise PDF in the gallery's accepted-formats hint
i18n: popup_blocked, manual_close (accounts) and upload.failed (assets) in all locales.
148 lines
7.1 KiB
PHP
148 lines
7.1 KiB
PHP
<?php
|
|
|
|
return [
|
|
'title' => 'Conexiones',
|
|
'page_title' => 'Cuentas Sociales',
|
|
'description' => 'Resumen de todas tus cuentas sociales conectadas',
|
|
'connect_cta' => 'Conectar',
|
|
|
|
'not_connected' => 'No conectado',
|
|
'connect' => 'Conectar',
|
|
'connection_lost' => 'Conexión perdida',
|
|
'reconnect' => 'Reconectar',
|
|
'reconnect_account' => 'Reconectar cuenta',
|
|
'view_profile' => 'Ver perfil',
|
|
'disconnect' => 'Desconectar',
|
|
|
|
'descriptions' => [
|
|
'linkedin' => 'Conecta tu perfil de LinkedIn o página de empresa',
|
|
'linkedin-page' => 'Conecta una página de empresa de LinkedIn',
|
|
'x' => 'Conecta tu cuenta de X (Twitter)',
|
|
'tiktok' => 'Conecta tu cuenta de TikTok',
|
|
'youtube' => 'Conecta un canal de YouTube',
|
|
'facebook' => 'Conecta una página de Facebook',
|
|
'instagram' => 'Conecta una cuenta profesional de Instagram',
|
|
'instagram-facebook' => 'Conecta Instagram vía página de Facebook',
|
|
'threads' => 'Conecta tu cuenta de Threads',
|
|
'pinterest' => 'Conecta tu cuenta de Pinterest',
|
|
'bluesky' => 'Conecta tu cuenta de Bluesky',
|
|
'mastodon' => 'Conecta tu cuenta de Mastodon',
|
|
'telegram' => 'Conecta un canal o grupo de Telegram',
|
|
'discord' => 'Conecta un servidor de Discord',
|
|
],
|
|
|
|
'disconnect_modal' => [
|
|
'title' => 'Desconectar cuenta',
|
|
'description' => '¿Estás seguro de que deseas desconectar esta cuenta? Puedes volver a conectarla en cualquier momento.',
|
|
'confirm' => 'Desconectar',
|
|
'cancel' => 'Cancelar',
|
|
],
|
|
|
|
'bluesky' => [
|
|
'title' => 'Conectar Bluesky',
|
|
'description' => 'Introduce tus credenciales para conectar',
|
|
'email' => 'Correo electrónico',
|
|
'email_placeholder' => 'tuusuario.bsky.social',
|
|
'app_password' => 'Contraseña de app',
|
|
'app_password_placeholder' => 'xxxx-xxxx-xxxx-xxxx',
|
|
'app_password_hint' => 'Usa una <strong>Contraseña de App</strong> por seguridad. Crea una en <a href="https://bsky.app/settings/app-passwords" target="_blank" class="underline">bsky.app/settings</a>.',
|
|
'submit' => 'Conectar Bluesky',
|
|
'submitting' => 'Conectando...',
|
|
],
|
|
|
|
'mastodon' => [
|
|
'title' => 'Conectar Mastodon',
|
|
'description' => 'Introduce tu instancia de Mastodon',
|
|
'instance_url' => 'URL de la instancia',
|
|
'instance_placeholder' => 'https://mastodon.social',
|
|
'instance_hint' => 'Introduce la URL de tu instancia de Mastodon (ej: mastodon.social, techhub.social)',
|
|
'submit' => 'Continuar con Mastodon',
|
|
'submitting' => 'Conectando...',
|
|
],
|
|
|
|
'telegram' => [
|
|
'title' => 'Conectar Telegram',
|
|
'description' => 'Vincula un canal o grupo',
|
|
'step_admin' => 'Añade :bot como administrador de tu canal o grupo de Telegram.',
|
|
'step_command' => 'Publica este comando en el canal o grupo:',
|
|
'waiting' => 'Esperando a que el canal se conecte…',
|
|
'connected' => '¡Canal conectado!',
|
|
'connected_toast' => '¡Canal de Telegram conectado correctamente!',
|
|
'copied_toast' => 'Comando copiado al portapapeles',
|
|
'copy_tooltip' => 'Copiar comando',
|
|
'expired' => 'Este código ha caducado. Genera uno nuevo para volver a intentarlo.',
|
|
'new_code' => 'Generar un nuevo código',
|
|
'retry' => 'Reintentar',
|
|
'error_generic' => 'No se pudo iniciar la conexión. Inténtalo de nuevo.',
|
|
'network_taken' => 'Este workspace ya tiene un canal de Telegram conectado. Desconéctalo primero.',
|
|
],
|
|
|
|
'facebook' => [
|
|
'title' => 'Seleccionar página de Facebook',
|
|
'description' => 'Elige qué página deseas conectar',
|
|
'no_pages' => 'No se encontraron páginas',
|
|
'no_pages_description' => 'No eres administrador de ninguna página de Facebook.',
|
|
'page_label' => 'Página de Facebook',
|
|
'view' => 'Ver',
|
|
'choose' => 'Elegir',
|
|
],
|
|
|
|
'instagram_facebook' => [
|
|
'title' => 'Seleccionar cuenta de Instagram',
|
|
'description' => 'Elige qué cuenta de Instagram deseas conectar',
|
|
'no_pages' => 'No se encontraron cuentas de Instagram',
|
|
'no_pages_description' => 'No se encontraron páginas de Facebook con cuentas Instagram Business vinculadas.',
|
|
'view' => 'Ver',
|
|
'choose' => 'Elegir',
|
|
],
|
|
|
|
'linkedin' => [
|
|
'title' => 'Seleccionar página de LinkedIn',
|
|
'description' => 'Elige qué página deseas conectar',
|
|
'no_pages' => 'No se encontraron páginas',
|
|
'no_pages_description' => 'No eres administrador de ninguna página de LinkedIn.',
|
|
'page_label' => 'Página de LinkedIn',
|
|
'select_title' => '¿Dónde quieres publicar?',
|
|
'select_subtitle' => 'Publica como tú mismo o elige una página de empresa que administres.',
|
|
'person_tag' => 'Persona',
|
|
'organization_tag' => 'Empresa',
|
|
'view' => 'Ver',
|
|
'choose' => 'Elegir',
|
|
],
|
|
|
|
'flash' => [
|
|
'disconnected' => '¡Cuenta desconectada correctamente!',
|
|
'connected' => '¡Cuenta conectada correctamente!',
|
|
'session_expired' => 'Sesión expirada. Inténtalo de nuevo.',
|
|
'workspace_not_found' => 'Workspace no encontrado.',
|
|
'activated' => '¡Cuenta activada!',
|
|
'deactivated' => '¡Cuenta desactivada!',
|
|
'already_connected' => 'Esta plataforma ya está conectada.',
|
|
'no_youtube_channels' => 'No se encontraron canales de YouTube. Crea un canal primero.',
|
|
],
|
|
|
|
'popup_callback' => [
|
|
'title_success' => 'Conectado',
|
|
'title_error' => 'Error',
|
|
'closing' => 'Esta ventana se cerrará automáticamente...',
|
|
'manual_close' => 'Puedes cerrar esta ventana.',
|
|
'popup_blocked' => 'No se pudo abrir la ventana de conexión. Permite las ventanas emergentes e inténtalo de nuevo.',
|
|
'connected' => '¡Cuenta conectada!',
|
|
'reconnected' => '¡Cuenta reconectada!',
|
|
'error_connecting' => 'Error al conectar la cuenta. Inténtalo de nuevo.',
|
|
'network_taken' => 'Este workspace ya tiene una cuenta para esta red. Desconéctala primero.',
|
|
'error_connecting_page' => 'Error al conectar la página. Inténtalo de nuevo.',
|
|
'error_connecting_channel' => 'Error al conectar el canal. Inténtalo de nuevo.',
|
|
'session_expired' => 'Sesión expirada. Inténtalo de nuevo.',
|
|
'workspace_not_found' => 'Workspace no encontrado.',
|
|
'invalid_state' => 'Estado inválido. Inténtalo de nuevo.',
|
|
'failed_to_authenticate' => 'Falló la autenticación.',
|
|
'failed_to_get_profile' => 'Falló al obtener el perfil.',
|
|
'page_not_found' => 'Página no encontrada.',
|
|
'channel_not_found' => 'Canal no encontrado.',
|
|
'no_facebook_pages' => 'No se encontraron páginas de Facebook. Debes ser administrador de al menos una página.',
|
|
'no_facebook_instagram_pages' => 'No se encontraron páginas de Facebook con cuentas de Instagram vinculadas.',
|
|
'no_youtube_channels' => 'No se encontraron canales de YouTube. Crea un canal primero.',
|
|
'not_linkedin_admin' => 'No eres administrador de ninguna página de LinkedIn.',
|
|
],
|
|
];
|