| 1 | { |
| 2 | "remoteAutomation": { |
| 3 | "title": "Débogage d'automatisation distante", |
| 4 | "description": "Flux fixe : ouvrir la page, exécuter le JavaScript fourni par le web, capturer une capture d'écran et renvoyer le résultat.", |
| 5 | "status": { |
| 6 | "connected": "Plugin connecté", |
| 7 | "disconnected": "Plugin déconnecté" |
| 8 | }, |
| 9 | "form": { |
| 10 | "title": "Paramètres d'exécution", |
| 11 | "urlLabel": "URL de la page cible", |
| 12 | "urlPlaceholder": "https://example.com", |
| 13 | "codeLabel": "Code d'exécution", |
| 14 | "codePlaceholder": "Saisissez le code JavaScript à exécuter", |
| 15 | "codeHint": "Le code s'exécute dans le monde principal de la page cible. Écrivez directement le corps de fonction, par exemple : `return document.title`", |
| 16 | "timeoutLabel": "Délai d'exécution (ms)", |
| 17 | "screenshotLabel": "Capturer après exécution", |
| 18 | "screenshotHint": "Capturer la page actuelle avant de fermer la fenêtre", |
| 19 | "run": "Exécuter" |
| 20 | }, |
| 21 | "validation": { |
| 22 | "urlRequired": "Veuillez saisir l'URL de la page cible", |
| 23 | "codeRequired": "Veuillez saisir le code JavaScript à exécuter" |
| 24 | }, |
| 25 | "result": { |
| 26 | "title": "Résultats d'exécution", |
| 27 | "empty": "Aucun enregistrement d'exécution pour le moment", |
| 28 | "emptyValue": "(vide)", |
| 29 | "pluginUnsupported": "Le plugin n'est pas installé ou sa version actuelle ne prend pas en charge la méthode remoteAutomationRun", |
| 30 | "executionError": "Erreur d'exécution", |
| 31 | "success": "Succès", |
| 32 | "failed": "Échec", |
| 33 | "executionTime": "Temps d'exécution {{value}} ms", |
| 34 | "url": "URL : ", |
| 35 | "message": "Message : ", |
| 36 | "payload": "Résultat d'exécution", |
| 37 | "screenshot": "Capture d'écran", |
| 38 | "screenshotAlt": "Capture d'écran d'exécution" |
| 39 | } |
| 40 | }, |
| 41 | "proxyRequest": { |
| 42 | "title": "Débogage de requête proxy du plugin", |
| 43 | "description": "Envoyez n'importe quelle URL via l'arrière-plan de l'extension du navigateur, puis renvoyez au site le corps brut, le statut et les en-têtes de la réponse.", |
| 44 | "status": { |
| 45 | "connected": "Plugin connecté", |
| 46 | "disconnected": "Plugin déconnecté" |
| 47 | }, |
| 48 | "form": { |
| 49 | "title": "Paramètres de requête", |
| 50 | "urlLabel": "URL cible", |
| 51 | "urlPlaceholder": "https://example.com/api", |
| 52 | "headersLabel": "En-têtes (JSON)", |
| 53 | "headersPlaceholder": "{\n \"accept\": \"application/json\"\n}", |
| 54 | "headersHint": "Saisissez un objet JSON. Les valeurs des en-têtes seront converties en chaînes avant l'envoi.", |
| 55 | "bodyLabel": "Corps", |
| 56 | "bodyPlaceholder": "{\n \"hello\": \"world\"\n}", |
| 57 | "bodyHint": "Un JSON valide sera envoyé comme JSON. Un JSON invalide sera envoyé comme chaîne brute.", |
| 58 | "methodLabel": "Méthode dérivée", |
| 59 | "methodGet": "GET", |
| 60 | "methodPost": "POST", |
| 61 | "methodHint": "Le plugin enverra cette requête en {{method}}.", |
| 62 | "credentialsHint": "L'extension envoie les requêtes avec les cookies du navigateur lorsque le site cible les autorise.", |
| 63 | "bodyIgnoredHint": "Le mode GET n'envoie pas de corps de requête. Passez en POST si vous devez envoyer un body.", |
| 64 | "submit": "Envoyer la requête" |
| 65 | }, |
| 66 | "validation": { |
| 67 | "urlRequired": "Veuillez saisir l'URL cible", |
| 68 | "headersInvalid": "Les en-têtes doivent être un objet JSON valide" |
| 69 | }, |
| 70 | "result": { |
| 71 | "title": "Résultats de requête", |
| 72 | "empty": "Aucun enregistrement de requête proxy pour le moment", |
| 73 | "emptyValue": "(vide)", |
| 74 | "pluginUnsupported": "Le plugin n'est pas installé ou sa version actuelle ne prend pas en charge la méthode proxyRequest", |
| 75 | "requestFailed": "La requête proxy a échoué", |
| 76 | "success": "Succès", |
| 77 | "failed": "Échec", |
| 78 | "status": "Statut {{status}} {{statusText}}", |
| 79 | "url": "URL demandée : ", |
| 80 | "finalUrl": "URL finale : ", |
| 81 | "message": "Message : ", |
| 82 | "requestHeaders": "En-têtes de requête", |
| 83 | "responseHeaders": "En-têtes de réponse", |
| 84 | "requestBody": "Corps de requête", |
| 85 | "responseBody": "Corps de réponse", |
| 86 | "clear": "Effacer" |
| 87 | } |
| 88 | }, |
| 89 | "wxSphPublish": { |
| 90 | "title": "WeChat Channels Publish Debug", |
| 91 | "description": "Use the browser extension to publish a video through WeChat Channels web requests and debug login state, video/cover upload, scheduling, and location parameters.", |
| 92 | "status": { |
| 93 | "connected": "Plugin Connected", |
| 94 | "disconnected": "Plugin Disconnected" |
| 95 | }, |
| 96 | "permission": { |
| 97 | "title": "Permission Check", |
| 98 | "check": "Check Plugin Permission", |
| 99 | "granted": "Plugin permissions are ready", |
| 100 | "denied": "Plugin permissions are not fully granted", |
| 101 | "failed": "Permission check failed" |
| 102 | }, |
| 103 | "login": { |
| 104 | "title": "WeChat Channels Login", |
| 105 | "button": "Read Login State", |
| 106 | "empty": "Log in to channels.weixin.qq.com first, then read the login state.", |
| 107 | "failed": "WeChat Channels login failed", |
| 108 | "uid": "UID: {{uid}}" |
| 109 | }, |
| 110 | "form": { |
| 111 | "title": "Publish Parameters", |
| 112 | "video": "Video File", |
| 113 | "cover": "Cover Image", |
| 114 | "videoMetadata": "Video: {{width}}×{{height}}, {{duration}}s, about {{size}} MB", |
| 115 | "workTitle": "Title", |
| 116 | "workTitlePlaceholder": "Optional, used as extra description text", |
| 117 | "topics": "Topics", |
| 118 | "topicsPlaceholder": "Separate by comma or newline, e.g. food, coffee", |
| 119 | "desc": "Description", |
| 120 | "descPlaceholder": "Enter the WeChat Channels description", |
| 121 | "scheduledTime": "Scheduled Time", |
| 122 | "publish": "Publish to WeChat Channels" |
| 123 | }, |
| 124 | "location": { |
| 125 | "title": "Location", |
| 126 | "hint": "This version only debugs location parameters. If poiId is filled, it will be submitted with the post.", |
| 127 | "poiId": "POI ID", |
| 128 | "poiIdPlaceholder": "For example, uid returned by helper_search_location", |
| 129 | "poiName": "Location Name", |
| 130 | "poiNamePlaceholder": "Example: Coffee Shop", |
| 131 | "latitude": "Latitude", |
| 132 | "latitudePlaceholder": "39.904200", |
| 133 | "longitude": "Longitude", |
| 134 | "longitudePlaceholder": "116.407400", |
| 135 | "city": "City", |
| 136 | "cityPlaceholder": "Beijing", |
| 137 | "address": "Address", |
| 138 | "addressPlaceholder": "Detailed address" |
| 139 | }, |
| 140 | "validation": { |
| 141 | "videoRequired": "Please select a video file", |
| 142 | "coverRequired": "Please select a cover image", |
| 143 | "videoMetadataRequired": "Video metadata is not ready. Please select the video again.", |
| 144 | "videoMetadataFailed": "Failed to read video metadata" |
| 145 | }, |
| 146 | "result": { |
| 147 | "title": "Publish Result", |
| 148 | "pluginMissing": "The plugin is not installed or AIToEarnPlugin is not injected", |
| 149 | "publishFailed": "Publish failed", |
| 150 | "success": "Published successfully", |
| 151 | "failed": "Publish failed" |
| 152 | }, |
| 153 | "progress": { |
| 154 | "title": "Publish Progress", |
| 155 | "empty": "No publish progress yet" |
| 156 | } |
| 157 | } |
| 158 | } |
| 159 |