@liujitcn/kratos-admin-system 0.0.21 → 0.0.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/dist/package/declarations/src/api/system/base_language.d.ts +5 -4
  2. package/dist/package/declarations/src/api/system/base_translation.d.ts +7 -4
  3. package/dist/package/declarations/src/api/system/ops_monitoring.d.ts +19 -0
  4. package/dist/package/declarations/src/api/system/ops_monitoring_sse.d.ts +12 -0
  5. package/dist/package/declarations/src/components/DynamicTranslationCell.vue.d.ts +9 -32
  6. package/dist/package/declarations/src/components/DynamicTranslationEditor.vue.d.ts +3 -6
  7. package/dist/package/declarations/src/components/dynamicTranslation.d.ts +11 -17
  8. package/dist/package/declarations/src/locales/generated.d.ts +6536 -0
  9. package/dist/package/declarations/src/rpc/base/v1/ai_session.d.ts +12 -2
  10. package/dist/package/declarations/src/rpc/base/v1/ai_tool.d.ts +9 -1
  11. package/dist/package/declarations/src/rpc/base/v1/config.d.ts +35 -0
  12. package/dist/package/declarations/src/rpc/system/admin/v1/auth.d.ts +1 -1
  13. package/dist/package/declarations/src/rpc/system/admin/v1/base_config.d.ts +23 -7
  14. package/dist/package/declarations/src/rpc/system/admin/v1/base_dict.d.ts +7 -77
  15. package/dist/package/declarations/src/rpc/system/admin/v1/base_job.d.ts +9 -1
  16. package/dist/package/declarations/src/rpc/system/admin/v1/base_language.d.ts +7 -2
  17. package/dist/package/declarations/src/rpc/system/admin/v1/base_menu.d.ts +5 -40
  18. package/dist/package/declarations/src/rpc/system/admin/v1/base_migration.d.ts +6 -6
  19. package/dist/package/declarations/src/rpc/system/admin/v1/base_role.d.ts +13 -1
  20. package/dist/package/declarations/src/rpc/system/admin/v1/base_translation.d.ts +54 -81
  21. package/dist/package/declarations/src/rpc/system/admin/v1/base_user.d.ts +11 -1
  22. package/dist/package/declarations/src/rpc/system/admin/v1/code_gen.d.ts +11 -11
  23. package/dist/package/declarations/src/rpc/system/admin/v1/code_gen_table.d.ts +11 -1
  24. package/dist/package/declarations/src/rpc/system/admin/v1/common.d.ts +13 -0
  25. package/dist/package/declarations/src/rpc/system/admin/v1/ops_monitoring.d.ts +222 -0
  26. package/dist/package/declarations/src/views/tool/ops-monitoring/index.vue.d.ts +3 -0
  27. package/dist/package/src/api/base/ai_message.ts +2 -2
  28. package/dist/package/src/api/system/base_language.ts +13 -15
  29. package/dist/package/src/api/system/base_translation.ts +17 -6
  30. package/dist/package/src/api/system/ops_monitoring.ts +88 -0
  31. package/dist/package/src/api/system/ops_monitoring_sse.ts +49 -0
  32. package/dist/package/src/components/DynamicTranslationCell.vue +199 -126
  33. package/dist/package/src/components/DynamicTranslationEditor.vue +109 -78
  34. package/dist/package/src/components/dynamicTranslation.ts +11 -31
  35. package/dist/package/src/locales/README.md +7 -5
  36. package/dist/package/src/locales/en-US.json +876 -872
  37. package/dist/package/src/locales/es-ES.json +900 -895
  38. package/dist/package/src/locales/fr-FR.json +896 -891
  39. package/dist/package/src/locales/generated.ts +22 -0
  40. package/dist/package/src/locales/ja-JP.json +876 -872
  41. package/dist/package/src/locales/ko-KR.json +881 -876
  42. package/dist/package/src/locales/zh-CN.json +876 -872
  43. package/dist/package/src/locales/zh-TW.json +876 -871
  44. package/dist/package/src/module.ts +3 -17
  45. package/dist/package/src/rpc/base/v1/ai_session.ts +13 -2
  46. package/dist/package/src/rpc/base/v1/ai_tool.ts +10 -1
  47. package/dist/package/src/rpc/base/v1/config.ts +47 -0
  48. package/dist/package/src/rpc/system/admin/v1/auth.ts +1 -1
  49. package/dist/package/src/rpc/system/admin/v1/base_config.ts +24 -7
  50. package/dist/package/src/rpc/system/admin/v1/base_dict.ts +7 -79
  51. package/dist/package/src/rpc/system/admin/v1/base_job.ts +10 -1
  52. package/dist/package/src/rpc/system/admin/v1/base_language.ts +8 -2
  53. package/dist/package/src/rpc/system/admin/v1/base_menu.ts +5 -41
  54. package/dist/package/src/rpc/system/admin/v1/base_migration.ts +8 -8
  55. package/dist/package/src/rpc/system/admin/v1/base_role.ts +14 -1
  56. package/dist/package/src/rpc/system/admin/v1/base_translation.ts +54 -81
  57. package/dist/package/src/rpc/system/admin/v1/base_user.ts +12 -1
  58. package/dist/package/src/rpc/system/admin/v1/code_gen.ts +11 -11
  59. package/dist/package/src/rpc/system/admin/v1/code_gen_table.ts +12 -1
  60. package/dist/package/src/rpc/system/admin/v1/common.ts +21 -0
  61. package/dist/package/src/rpc/system/admin/v1/ops_monitoring.ts +255 -0
  62. package/dist/package/src/views/ai/chat/components/ChatPanel.vue +36 -36
  63. package/dist/package/src/views/ai/chat/components/SessionPanel.vue +6 -6
  64. package/dist/package/src/views/ai/chat/components/XSender.vue +20 -20
  65. package/dist/package/src/views/ai/chat/index.vue +33 -32
  66. package/dist/package/src/views/ai/chat/message.ts +16 -15
  67. package/dist/package/src/views/base/api/index.vue +55 -56
  68. package/dist/package/src/views/base/area/index.vue +18 -19
  69. package/dist/package/src/views/base/config/index.vue +143 -133
  70. package/dist/package/src/views/base/dept/index.vue +42 -43
  71. package/dist/package/src/views/base/dict/index.vue +49 -45
  72. package/dist/package/src/views/base/dict/item.vue +54 -49
  73. package/dist/package/src/views/base/job/index.vue +51 -52
  74. package/dist/package/src/views/base/job/log.vue +18 -18
  75. package/dist/package/src/views/{tool → base}/language/index.vue +51 -47
  76. package/dist/package/src/views/base/log/index.vue +40 -40
  77. package/dist/package/src/views/base/menu/index.vue +220 -177
  78. package/dist/package/src/views/base/migration/index.vue +24 -24
  79. package/dist/package/src/views/base/post/index.vue +42 -43
  80. package/dist/package/src/views/base/role/index.vue +54 -55
  81. package/dist/package/src/views/base/tenant/index.vue +42 -43
  82. package/dist/package/src/views/base/user/components/dept-tree.vue +1 -1
  83. package/dist/package/src/views/base/user/index.vue +69 -71
  84. package/dist/package/src/views/profile/components/base.vue +9 -9
  85. package/dist/package/src/views/profile/components/password.vue +19 -20
  86. package/dist/package/src/views/profile/components/security.vue +20 -20
  87. package/dist/package/src/views/profile/index.vue +3 -3
  88. package/dist/package/src/views/tool/api-doc/index.vue +1 -1
  89. package/dist/package/src/views/tool/code-gen/code-preview/index.vue +13 -13
  90. package/dist/package/src/views/tool/code-gen/columns/index.vue +89 -89
  91. package/dist/package/src/views/tool/code-gen/components/CodeGenLocaleEditor.vue +5 -5
  92. package/dist/package/src/views/tool/code-gen/components/CodeGenProgressDialog.vue +21 -21
  93. package/dist/package/src/views/tool/code-gen/components/CodePreviewPane.vue +5 -5
  94. package/dist/package/src/views/tool/code-gen/config.ts +60 -60
  95. package/dist/package/src/views/tool/code-gen/preview/data.ts +2 -2
  96. package/dist/package/src/views/tool/code-gen/preview/index.vue +30 -31
  97. package/dist/package/src/views/tool/code-gen/proto/index.vue +43 -43
  98. package/dist/package/src/views/tool/code-gen/table/index.vue +95 -95
  99. package/dist/package/src/views/tool/ops-monitoring/index.vue +1175 -0
  100. package/dist/package/src/views/tool/project-doc/index.vue +7 -7
  101. package/package.json +2 -2
  102. package/dist/package/declarations/src/rpc/base/v1/enum.d.ts +0 -43
  103. package/dist/package/declarations/src/rpc/system/common/v1/enum.d.ts +0 -67
  104. package/dist/package/src/rpc/base/v1/enum.ts +0 -54
  105. package/dist/package/src/rpc/system/common/v1/enum.ts +0 -80
  106. /package/dist/package/declarations/src/views/{tool → base}/language/index.vue.d.ts +0 -0
@@ -1,928 +1,933 @@
1
1
  {
2
- "system.ai.requestFailedWithStatus": "La demande d'assistant IA a échoué ({status})",
3
- "system.profile.title": "Centre personnel",
4
- "system.common.action.createResource": "Ajout de {resource}",
5
- "system.common.action.deleteResource": "Supprimer {resource}",
6
- "system.common.action.editResource": "Modifier {resource}",
7
- "system.common.action.refreshCache": "Actualiser le cache",
8
- "system.common.dialog.cancelDelete": "Non supprimé {resource}",
9
- "system.common.dialog.deleteBatch": "Êtes-vous sûr de supprimer le {count}{unit}{resource} sélectionné ?",
10
- "system.common.dialog.deleteSelected": "Êtes-vous sûr de supprimer le {resource} sélectionné ?",
11
- "system.common.dialog.deleteSingle": "Êtes-vous sûr de vouloir supprimer {resource} ?",
12
- "system.common.dialog.resourceField": "{field} : {value}",
13
- "system.common.dialog.statusChange": "Êtes-vous sûr de {action}{resource} ?\n{field} : {value}",
14
- "system.common.field.createdAt": "Heure de création",
15
- "system.common.field.operation": "Fonctionnement",
16
- "system.common.field.remark": "Remarques",
17
- "system.common.field.sort": "Trier\nStatut",
18
- "system.common.field.status": "Status",
19
- "system.common.field.tenant": "Locataire",
20
- "system.common.field.updatedAt": "Heure de mise à jour",
21
- "system.common.message.createSuccess": "{resource} a été ajouté avec succès",
22
- "system.common.message.deleteSuccess": "Suppression de {resource} réussie",
23
- "system.common.message.loadChildrenFailed": "n'a pas réussi à charger le nœud enfant {resource}",
24
- "system.common.message.refreshSuccess": "Actualisé avec succès",
25
- "system.common.message.selectDeleteItem": "Veuillez cocher pour supprimer l'élément",
26
- "system.common.message.statusSuccess": "{action} Succès",
27
- "system.common.message.updateSuccess": "a modifié {resource} avec succès",
28
- "system.common.placeholder.remark": "Veuillez saisir des remarques",
29
- "system.common.validation.maxLength": "{field} ne peut pas dépasser {max} caractères",
30
- "system.common.validation.requiredInput": "Veuillez saisir {field}",
31
- "system.common.validation.requiredSelect": "Veuillez sélectionner {field}",
32
- "system.common.validation.sortPositive": "Le tri doit être supérieur à 0",
33
- "system.area.action.create": "Ajouter une nouvelle région administrative",
34
- "system.area.action.edit": "Modifier la région administrative",
35
- "system.area.field.name": "nom de la zone",
36
- "system.area.field.parent": "Espace parents",
37
- "system.area.message.deleteBatch": "Etes-vous sûr de supprimer la zone administrative sélectionnée ?",
38
- "system.area.message.deleteSingle": "Etes-vous sûr de vouloir supprimer la zone administrative ?",
39
- "system.area.resource": "Région administrative",
40
- "system.common.field.index": "numéro de série",
41
- "system.language.resource": "Langue",
42
- "system.language.action.create": "Nouvelle langue",
43
- "system.language.action.edit": "Langue d'édition",
44
- "system.language.field.code": "code langue",
45
- "system.language.field.name": "Nom de la langue",
46
- "system.language.field.nativeName": "nom local",
47
- "system.language.field.sort": "Trier",
48
- "system.language.field.primary": "Langue principale",
49
- "system.language.field.status": "S'il faut activer",
50
- "system.language.placeholder.code": "Veuillez saisir le code de langue",
51
- "system.language.placeholder.name": "Veuillez saisir le nom de la langue",
52
- "system.language.placeholder.nativeName": "Veuillez entrer le nom local",
53
- "system.language.placeholder.sort": "Veuillez saisir le tri",
54
- "system.language.message.primaryCannotDisable": "La langue principale ne peut pas être désactivée",
55
- "system.language.message.primaryCannotDelete": "La langue principale ne peut pas être supprimée",
56
- "system.language.message.confirmStatus": "Êtes-vous sûr de la langue {action} ?\nLangue : {name}",
57
- "system.language.message.confirmPrimary": "Définir cette langue comme langue principale ?\nLangue : {name}",
58
- "system.language.message.confirmDelete": "Etes-vous sûr de vouloir supprimer la langue ?\nLangue : {name}",
59
- "system.area.value.root": "Nœud de niveau supérieur",
60
- "system.post.field.code": "Numéro de position",
61
- "system.post.field.name": "Nom du poste",
62
- "system.post.resource": "Poste",
63
- "system.dept.field.name": "Nom du département",
64
- "system.dept.field.parent": "Département Supérieur\nDépartement",
65
- "system.dept.resource": "department",
66
- "system.dept.value.root": "Département supérieur",
67
- "system.tenant.field.code": "Numéro de locataire",
68
- "system.tenant.field.contactName": "Contacter",
69
- "system.tenant.field.contactPhone": "Numéro de téléphone",
70
- "system.tenant.field.name": "Nom du locataire",
71
- "system.tenant.message.phoneInvalid": "Veuillez entrer le numéro de contact correct",
72
- "system.tenant.message.protectedDelete": "Le locataire par défaut ne peut pas être supprimé",
73
- "system.tenant.message.protectedStatus": "Le locataire par défaut ne peut pas modifier le statut",
74
- "system.tenant.resource": "Locataire\nClé de configuration",
75
- "system.config.field.key": "Configuration key",
76
- "system.config.field.name": "nom de la configuration\nEmplacement de configuration",
77
- "system.config.field.site": "Type de configuration",
78
- "system.config.field.type": "Valeur de configuration",
79
- "system.config.field.value": "Configuration value",
80
- "system.config.message.imageMissing": "Aucune image configurée",
81
- "system.config.message.richTextMissing": "Texte enrichi non configuré",
82
- "system.config.message.valueMissing": "non configuré",
83
- "system.config.resource": "Configuration du système",
84
- "system.log.field.browser": "Navigateur",
85
- "system.log.field.clientId": "ID client",
86
- "system.log.field.clientIp": "IP du client",
87
- "system.log.field.clientName": "nom du client",
88
- "system.log.field.costTime": "Temps d'exécution (ms)",
89
- "system.log.field.location": "Emplacement",
90
- "system.log.field.method": "Méthode de requête",
91
- "system.log.field.operation": "Comment fonctionner",
92
- "system.log.field.os": "Système d'exploitation",
93
- "system.log.field.path": "chemin de requête",
94
- "system.log.field.reason": "Raison de l'échec",
95
- "system.log.field.referer": "page source",
96
- "system.log.field.requestBody": "corps de la demande",
97
- "system.log.field.requestHeader": "en-tête de requête",
98
- "system.log.field.requestId": "ID de demande",
99
- "system.log.field.requestResult": "Résultats de la demande",
100
- "system.log.field.requestTime": "Temps de fonctionnement",
101
- "system.log.field.requestUri": "URI de la demande",
102
- "system.log.field.result": "Résultat de l'opération\nCode d'état",
103
- "system.log.field.statusCode": "Status code",
104
- "system.log.field.userId": "ID utilisateur",
105
- "system.log.field.userName": "Nom d'utilisateur",
106
- "system.log.section.basic": "Informations de base",
107
- "system.log.section.client": "Informations client",
108
- "system.log.section.request": "Demander des informations",
109
- "system.log.section.user": "Informations utilisateur",
110
- "system.log.status.failed": "a échoué",
111
- "system.log.status.success": "Succès",
112
- "system.log.title.detail": "Détails du journal système",
113
- "system.common.field.action": "Fonctionnement",
114
- "system.common.placeholder.startDate": "Heure de début",
115
- "system.common.placeholder.endDate": "Date limite",
116
- "system.jobLog.title.detail": "Détails du journal des tâches planifiées",
117
- "system.jobLog.section.basic": "Informations de base",
118
- "system.jobLog.section.execution": "Informations d'exécution\nParamètres d'exécution",
119
- "system.jobLog.field.input": "Input",
120
- "system.jobLog.field.output": "Résultats de sortie",
121
- "system.jobLog.field.error": "Raison de l'échec",
122
- "system.jobLog.field.executeTime": "temps d'exécution",
123
- "system.jobLog.field.processTime": "Cela prend du temps",
124
- "system.jobLog.field.processTimeMs": "Temps consommé (ms)",
125
- "system.apiDoc.message.empty": "Aucun document pour l'instant\nModule",
126
- "system.migration.field.module": "Source de données",
127
- "system.migration.field.dataSource": "Version",
128
- "system.migration.field.version": "Version",
129
- "system.migration.placeholder.module": "Veuillez entrer dans le module de migration",
130
- "system.migration.placeholder.dataSource": "Veuillez saisir le nom de la source de données",
131
- "system.migration.placeholder.version": "Veuillez saisir le numéro de version",
132
- "system.migration.message.emptyHistory": "Aucun historique de mise à niveau pour l'instant",
133
- "system.migration.title.history": "Historique de mise à niveau de la base de données",
134
- "system.migration.title.list": "Liste des enregistrements de mise à niveau",
135
- "system.migration.value.defaultModule": "Migration de base de données",
136
- "system.migration.message.total": "Total de {total} articles",
137
- "system.migration.section.description": "Instructions de mise à niveau",
138
- "system.migration.section.sql": "Script SQL",
139
- "system.migration.field.upScript": "script de mise à niveau",
140
- "system.migration.field.downScript": "script de restauration",
141
- "system.migration.action.copyUpScript": "Copier le script de mise à niveau",
142
- "system.migration.action.copyDownScript": "Copier le script de secours",
143
- "system.migration.message.emptyDetail": "Cet enregistrement n'a pas encore de description ou de script",
144
- "system.migration.message.selectRecord": "Veuillez sélectionner un enregistrement de mise à niveau",
145
- "system.migration.message.copySuccess": "Script SQL copié",
146
- "system.migration.message.copyFailed": "Échec de la copie, veuillez sélectionner le contenu du script manuellement",
147
- "system.common.value.yes": "Oui",
148
- "system.common.value.no": "Non",
149
- "system.common.value.unknown": "Inconnu",
150
- "system.api.title.detail": "Détails de l'API",
151
- "system.api.title.edit": "API d'édition",
152
- "system.api.field.toolName": "nom de l'outil",
153
- "system.api.field.toolPrompts": "mot d'info-bulle",
154
- "system.api.field.serviceName": "Nom du service",
155
- "system.api.field.serviceDescription": "Description du service",
156
- "system.api.field.description": "Descriptif",
157
- "system.api.field.operation": "Comment fonctionner",
158
- "system.api.field.method": "Méthode de requête",
159
- "system.api.field.path": "Adresse de la demande",
160
- "system.api.field.mcpTool": "Outils MCP",
161
- "system.api.field.agentTool": "Outil Agent",
162
- "system.api.field.mcpStatus": "État de l'outil MCP",
163
- "system.api.field.agentStatus": "État de l'outil Agent",
164
- "system.api.placeholder.toolPrompt": "Veuillez saisir le mot de l'info-bulle",
165
- "system.api.section.parameters": "paramètres de requête",
166
- "system.api.section.requestBody": "corps de la demande",
167
- "system.api.section.responses": "valeur de retour\nChamp",
168
- "system.api.doc.field.name": "Field",
169
- "system.api.doc.field.location": "Emplacement\nType",
170
- "system.api.doc.field.type": "Type",
171
- "system.api.doc.field.required": "Obligatoire",
172
- "system.api.doc.field.description": "Descriptif",
173
- "system.api.message.noParameters": "Aucun paramètre de requête",
174
- "system.api.message.noRequestBody": "Aucun corps de requête",
175
- "system.api.message.noResponseBody": "Aucun corps de réponse",
176
- "system.api.message.noResponses": "Aucune valeur de retour",
177
- "system.api.message.saveSuccess": "Enregistré avec succès",
178
- "system.api.message.confirmMcpStatus": "Êtes-vous sûr que {action} est la fonctionnalité de l'outil MCP pour cette API ?\nAPI : {api}",
179
- "system.api.message.confirmAgentStatus": "Êtes-vous sûr que {action} est la fonctionnalité de l'outil Agent de cette API ?\nAPI : {api}",
180
- "system.job.action.create": "Ajouter une nouvelle tâche planifiée",
181
- "system.job.action.edit": "Modifier les tâches planifiées",
182
- "system.job.action.start": "Début",
183
- "system.job.action.stop": "Arrêter",
184
- "system.job.action.execute": "Exécuter une fois",
185
- "system.job.action.log": "Journal",
186
- "system.job.action.addArg": "Ajouter des paramètres",
187
- "system.job.field.name": "Nom de la tâche",
188
- "system.job.field.invokeTarget": "cible de l'appel",
189
- "system.job.field.cron": "Expression Cron",
190
- "system.job.field.args": "paramètre cible",
191
- "system.job.field.argsShort": "Paramètres",
192
- "system.job.field.argKey": "Paramètres\nValeur",
193
- "system.job.field.argValue": "Value",
194
- "system.job.field.entryId": "ID de tâche",
195
- "system.job.placeholder.name": "Veuillez saisir le nom de la tâche",
196
- "system.job.placeholder.invokeTarget": "Veuillez saisir la cible de l'appel",
197
- "system.job.validation.argKeyRequired": "Tous les paramètres doivent être renseignés",
198
- "system.job.message.createSuccess": "Nouvelle tâche planifiée avec succès",
199
- "system.job.message.updateSuccess": "Tâche planifiée modifiée avec succès",
200
- "system.job.message.confirmStatus": "Êtes-vous sûr de la tâche planifiée {action} ?\nNom de la tâche : {name}",
201
- "system.job.message.confirmDeleteSingle": "Êtes-vous sûr de supprimer la tâche planifiée ?\nNom de la tâche : {name}",
202
- "system.job.message.confirmDeleteBatch": "Êtes-vous sûr de supprimer les tâches planifiées {count} sélectionnées ?",
203
- "system.job.message.confirmDeleteSelected": "Êtes-vous sûr de supprimer la tâche planifiée sélectionnée ?",
204
- "system.job.message.deleteSuccess": "Suppression de la tâche planifiée avec succès",
205
- "system.job.message.deleteCanceled": "La suppression de la tâche planifiée a été annulée",
206
- "system.job.message.confirmStart": "Êtes-vous sûr de démarrer la tâche planifiée ?\nNom de la tâche : {name}",
207
- "system.job.message.startSuccess": "Démarré avec succès",
208
- "system.job.message.startCanceled": "Le démarrage planifié de la tâche a été annulé",
209
- "system.job.message.confirmStop": "Êtes-vous sûr de vouloir arrêter la tâche planifiée ?\nNom de la tâche : {name}",
210
- "system.job.message.stopSuccess": "Arrêtez-vous avec succès",
211
- "system.job.message.stopCanceled": "La tâche planifiée a été annulée",
212
- "system.job.message.confirmExecute": "Êtes-vous sûr d'exécuter une tâche planifiée ?\nNom de la tâche : {name}",
213
- "system.job.message.executeSuccess": "exécuté avec succès",
214
- "system.job.message.executeCanceled": "L'exécution de la tâche planifiée a été annulée",
215
- "system.job.title.log": "[{name}] Journal des tâches planifiées",
216
- "system.role.action.create": "Nouveau rôle",
217
- "system.role.action.edit": "Modifier le rôle",
218
- "system.role.action.assignPermission": "Attribuer des autorisations",
219
- "system.role.action.collapseNodes": "nœud de réduction",
220
- "system.role.action.expandNodes": "Développer le nœud",
221
- "system.role.title.assignPermission": "[{name}] Attribution d'autorisations",
222
- "system.role.field.tenant": "Locataire auquel",
223
- "system.role.field.tenantShort": "Locataire",
224
- "system.role.field.name": "nom du rôle\nCode de rôle",
225
- "system.role.field.code": "Role code",
226
- "system.role.field.dataScope": "Autorisations de données",
227
- "system.role.field.menuPermission": "Autorisations de menu",
228
- "system.role.field.treeOperation": "Opérations sur l'arborescence",
229
- "system.role.field.selectionMode": "Mode de vérification",
230
- "system.role.field.parentChildLinked": "Lien père-fils",
231
- "system.role.placeholder.tenant": "Veuillez sélectionner le locataire",
232
- "system.role.placeholder.name": "Veuillez saisir le nom du rôle",
233
- "system.role.placeholder.code": "Veuillez saisir le code de rôle",
234
- "system.role.placeholder.menuPermission": "Nom de l'autorisation du menu",
235
- "system.role.validation.menuDuplicate": "Les autorisations de menu ne peuvent pas être répétées",
236
- "system.role.message.parentChildLinkedTip": "Si vous avez uniquement besoin de vérifier les autorisations du menu et que vous n'avez pas besoin de vérifier les autorisations du sous-menu ou des boutons, veuillez désactiver la liaison parent-enfant.",
237
- "system.role.message.createSuccess": "Caractère ajouté avec succès",
238
- "system.role.message.updateSuccess": "Modification de rôle réussie",
239
- "system.role.message.protectedStatus": "Le rôle par défaut ne permet pas la modification du statut",
240
- "system.role.message.protectedDelete": "Le rôle par défaut ne peut pas être supprimé",
241
- "system.role.message.protectedPermission": "Le locataire actuel ne peut pas se voir attribuer cette autorisation de rôle intégrée.",
242
- "system.role.message.confirmStatus": "Êtes-vous sûr du rôle {action} ?\nNom du rôle : {name}",
243
- "system.role.message.confirmDeleteSingle": "Êtes-vous sûr de vouloir supprimer le rôle ?\nNom du rôle : {name}",
244
- "system.role.message.confirmDeleteBatch": "Êtes-vous sûr de vouloir supprimer les {count} caractères sélectionnés ?",
245
- "system.role.message.confirmDeleteSelected": "Etes-vous sûr de supprimer le caractère sélectionné ?",
246
- "system.role.message.deleteSuccess": "Rôle supprimé avec succès",
247
- "system.role.message.deleteCanceled": "Caractère non supprimé",
248
- "system.role.message.assignSuccess": "Autorisations attribuées avec succès",
249
- "system.user.action.create": "Ajouter un nouvel utilisateur",
250
- "system.user.action.edit": "Modifier l'utilisateur",
251
- "system.user.action.resetPassword": "Réinitialiser le mot de passe",
252
- "system.user.title.departmentList": "Liste des départements",
253
- "system.user.title.resetPassword": "Réinitialiser le mot de passe : {name}",
254
- "system.user.field.tenant": "Locataire auquel",
255
- "system.user.field.tenantShort": "Locataire",
256
- "system.user.field.userName": "Compte utilisateur",
257
- "system.user.field.userCode": "Numéro d'utilisateur",
258
- "system.user.field.nickName": "Pseudonyme de l'utilisateur",
259
- "system.user.field.nickNameShort": "Pseudo\nRôle",
260
- "system.user.field.role": "Role",
261
- "system.user.field.department": "Département utilisateur\nDépartement",
262
- "system.user.field.departmentShort": "Department",
263
- "system.user.field.post": "Position de l'utilisateur",
264
- "system.user.field.postShort": "Poste",
265
- "system.user.field.password": "Mot de passe",
266
- "system.user.field.newPassword": "Nouveau mot de passe",
267
- "system.user.field.passwordStrength": "Astuce de force",
268
- "system.user.field.gender": "Sexe",
269
- "system.user.placeholder.tenant": "Veuillez sélectionner le locataire",
270
- "system.user.placeholder.userName": "Veuillez entrer le compte utilisateur",
271
- "system.user.placeholder.userCode": "Veuillez saisir le numéro d'utilisateur",
272
- "system.user.placeholder.nickName": "Veuillez saisir le pseudo de l'utilisateur",
273
- "system.user.placeholder.department": "Veuillez sélectionner le département utilisateur",
274
- "system.user.placeholder.post": "Veuillez sélectionner la position de l'utilisateur",
275
- "system.user.placeholder.password": "Veuillez saisir le mot de passe",
276
- "system.user.placeholder.newPassword": "Veuillez saisir un nouveau mot de passe",
277
- "system.user.message.resetPasswordSuccess": "Réinitialisation du mot de passe réussie\nNom d'utilisateur : {name}",
278
- "system.user.message.createSuccess": "Nouvel utilisateur ajouté avec succès",
279
- "system.user.message.updateSuccess": "Modification de l'utilisateur réussie",
280
- "system.user.message.protectedAccount": "Le compte administrateur intégré ne peut être modifié que via le centre personnel",
281
- "system.user.message.confirmStatus": "Êtes-vous sûr d'être l'utilisateur {action} ?\nNom d'utilisateur : {name}",
282
- "system.user.message.confirmDeleteSingle": "Êtes-vous sûr de vouloir supprimer l'utilisateur ?\nNom d'utilisateur : {name}",
283
- "system.user.message.confirmDeleteBatch": "Êtes-vous sûr de vouloir supprimer les utilisateurs {count} sélectionnés ?",
284
- "system.user.message.confirmDeleteSelected": "Êtes-vous sûr de supprimer l'utilisateur sélectionné ?",
285
- "system.user.message.deleteSuccess": "Utilisateur supprimé avec succès",
286
- "system.user.message.deleteCanceled": "L'utilisateur a été supprimé",
287
- "system.translation.field.translations": "Traduction multilingue",
288
- "system.translation.field.nameTranslations": "Traduction du nom",
289
- "system.translation.field.valueTranslations": "traduction de valeur",
290
- "system.translation.placeholder.text": "Veuillez saisir la traduction de {language}",
291
- "system.translation.action.generateDraft": "génère un brouillon {language}",
292
- "system.translation.message.saveBeforeDraft": "Veuillez d'abord enregistrer les ressources en chinois, puis générer un brouillon de traduction automatique.",
293
- "system.translation.message.draftSuccess": "{language}Brouillon généré avec succès",
294
- "system.translation.status.pending": "A traduire",
295
- "system.translation.status.machine": "Projet de machine",
296
- "system.translation.status.reviewed": "Révisé",
297
- "system.translation.status.sourceChanged": "Modifications du texte source",
298
- "system.menu.title.list": "Liste des menus",
299
- "system.menu.action.create": "Nouveau menu",
300
- "system.menu.action.edit": "Modifier le menu",
301
- "system.menu.action.addRouteParam": "Ajouter des paramètres de routage",
302
- "system.menu.type.folder": "Table des matières",
303
- "system.menu.type.menu": "Menu\nBouton",
304
- "system.menu.type.button": "Button",
305
- "system.menu.type.external": "lien externe",
306
- "system.menu.access.public": "Accès public",
307
- "system.menu.access.guest": "Visiteurs uniquement",
308
- "system.menu.access.authenticated": "Accès à la connexion",
309
- "system.menu.field.parent": "Menu précédent",
310
- "system.menu.field.type": "Type de menu",
311
- "system.menu.field.name": "Nom du menu",
312
- "system.menu.field.title": "Titre du menu",
313
- "system.menu.field.buttonName": "nom du bouton\nIcône de menu",
314
- "system.menu.field.icon": "Menu icon",
315
- "system.menu.field.defaultIcon": "Icône par défaut",
316
- "system.menu.field.selectedIcon": "Icône de vérification",
317
- "system.menu.field.path": "chemin de routage",
318
- "system.menu.field.pathOrPermission": "Identification du chemin de routage/de l'autorité",
319
- "system.menu.field.logicalPath": "chemin logique",
320
- "system.menu.field.permission": "identification de l'autorisation",
321
- "system.menu.field.internalPath": "chemin interne",
322
- "system.menu.field.routeName": "nom de l'itinéraire",
323
- "system.menu.field.logicalName": "nom logique",
324
- "system.menu.field.component": "chemin du composant\nAdresse de redirection",
325
- "system.menu.field.redirect": "Redirect URL",
326
- "system.menu.field.redirectRoute": "Itinéraire de saut",
327
- "system.menu.field.externalUrl": "adresse du lien externe",
328
- "system.menu.field.displayStatus": "Afficher l'état",
329
- "system.menu.field.viewKey": "clé d'affichage",
330
- "system.menu.field.access": "Mode d'accès",
331
- "system.menu.field.hidden": "S'il faut masquer",
332
- "system.menu.field.alwaysShow": "toujours affiché\nPage de cache",
333
- "system.menu.field.keepAlive": "Cache page",
334
- "system.menu.field.fullscreen": "Mode plein écran",
335
- "system.menu.field.affix": "Balise fixe\nParamètres de routage",
336
- "system.menu.field.routeParams": "Route parameters",
337
- "system.menu.field.apiList": "Liste des API",
338
- "system.menu.status.hidden": "Masquer",
339
- "system.menu.status.visible": "spectacle",
340
- "system.menu.placeholder.parent": "Veuillez sélectionner le menu supérieur",
341
- "system.menu.placeholder.title": "Veuillez saisir le titre du menu",
342
- "system.menu.placeholder.buttonName": "Veuillez saisir le nom du bouton",
343
- "system.menu.placeholder.icon": "Veuillez sélectionner l'icône du menu",
344
- "system.menu.placeholder.defaultIcon": "par exemple. ACCUEIL_DEFAULT",
345
- "system.menu.placeholder.selectedIcon": "par exemple. HOME_SELECTED",
346
- "system.menu.placeholder.logicalName": "Par exemple AppHome",
347
- "system.menu.placeholder.routeName": "Veuillez saisir le nom de l'itinéraire",
348
- "system.menu.placeholder.viewKey": "par exemple. ACCUEIL",
349
- "system.menu.placeholder.access": "Veuillez sélectionner le mode d'accès",
350
- "system.menu.placeholder.permission": "Veuillez saisir l'ID d'autorisation du bouton",
351
- "system.menu.placeholder.logicalPath": "Par exemple application/accueil",
352
- "system.menu.placeholder.redirectRoute": "Veuillez entrer l'itinéraire de saut",
353
- "system.menu.tooltip.mobileIcon": "Remplissez la clé icône ou l'adresse image HTTPS enregistrée par le module du terminal mobile.",
354
- "system.menu.tooltip.logicalName": "La page mobile utilise le nom logique unique du préfixe de l'application.",
355
- "system.menu.tooltip.routeName": "Si vous devez activer la mise en cache, vous devez vous assurer que le nom dans setOptions de la page est cohérent avec celui-ci. Il est recommandé d'utiliser un étui Camel.",
356
- "system.menu.tooltip.viewKey": "doit être cohérent avec la viewKey stable enregistrée dans le module du terminal mobile et le chemin du fichier du composant n'est pas renseigné.",
357
- "system.menu.tooltip.component": "Le chemin complet de la page du composant, au format nom du module/chemin des vues dans le module, tel que system/base/user/index, et le suffixe par défaut est .vue.",
358
- "system.menu.tooltip.alwaysShow": "Sélectionnez \"Oui\", même s'il n'y a qu'un seul nœud enfant sous le répertoire ou le menu, le nœud parent sera affiché ; sélectionnez \"Non\", s'il n'y a qu'un seul nœud enfant, seul le nœud enfant sera affiché.",
359
- "system.menu.tooltip.routeParams": "La page du composant utilise le nom useRoute().query.parameter pour obtenir la valeur du paramètre de routage.",
360
- "system.menu.tooltip.logicalPath": "Utilisez le chemin logique stable avec le préfixe app/ et ne renseignez pas le chemin de la page physique uni-app.",
361
- "system.menu.tooltip.permission": "Le menu de type de bouton utilise un identifiant d'autorisation, tel que base:user:create.",
362
- "system.menu.tooltip.internalPath": "Le lien externe utilise un chemin interne unique, tel que externe/exemple ; l'adresse réelle est renseignée dans l'adresse du lien externe.",
363
- "system.menu.tooltip.folderPath": "Le répertoire ne renseigne pas le chemin, il sert uniquement à organiser les menus de niveau inférieur.",
364
- "system.menu.tooltip.routePath": "Les chemins de menu n'ont généralement pas de /, comme utilisateur.",
365
- "system.menu.validation.defaultIcon": "Veuillez saisir l'icône par défaut",
366
- "system.menu.validation.viewKey": "Veuillez saisir la clé d'affichage",
367
- "system.menu.validation.selectedIcon": "Veuillez saisir l'icône de vérification",
368
- "system.menu.validation.permission": "Veuillez saisir l'ID d'autorisation",
369
- "system.menu.validation.externalUrl": "Veuillez saisir l'adresse complète du lien externe",
370
- "system.menu.validation.logicalPath": "Veuillez entrer le chemin logique",
371
- "system.menu.validation.routePath": "Veuillez saisir le chemin de routage",
372
- "system.menu.validation.appPathPrefix": "Le chemin logique mobile doit utiliser le préfixe app/",
373
- "system.menu.validation.httpUrl": "Veuillez saisir l'adresse complète du lien externe HTTP",
374
- "system.menu.validation.logicalName": "Veuillez saisir un nom logique",
375
- "system.menu.validation.appNamePrefix": "Le nom logique mobile doit utiliser le préfixe App",
376
- "system.menu.validation.component": "Veuillez saisir le chemin du composant",
377
- "system.menu.value.availableApi": "API facultative",
378
- "system.menu.value.selectedApi": "API sélectionnée",
379
- "system.menu.message.createSuccess": "Menu créé avec succès",
380
- "system.menu.message.updateSuccess": "Menu mis à jour avec succès",
381
- "system.menu.message.confirmStatus": "Êtes-vous sûr du menu {action} ?\nNom du menu : {name}",
382
- "system.menu.message.protectedDelete": "Le menu fixe ne permet pas la suppression",
383
- "system.menu.message.confirmDeleteSingle": "Etes-vous sûr de vouloir supprimer le menu ?\nNom du menu : {name}",
384
- "system.menu.message.confirmDeleteBatch": "Êtes-vous sûr de vouloir supprimer les éléments de menu {count} sélectionnés ?",
385
- "system.menu.message.confirmDeleteSelected": "Êtes-vous sûr de supprimer l'élément de menu sélectionné ?",
386
- "system.menu.message.deleteSuccess": "Supprimer le menu avec succès",
387
- "system.menu.message.deleteCanceled": "Supprimer le menu annulé",
388
- "system.common.value.none": "Aucun",
389
- "system.dict.action.create": "Nouveau dictionnaire",
390
- "system.dict.action.edit": "Modifier le dictionnaire",
391
- "system.dict.action.items": "données du dictionnaire",
392
- "system.dict.title.items": "【{name}】Données du dictionnaire",
393
- "system.dict.field.name": "nom du dictionnaire",
394
- "system.dict.field.code": "encodage du dictionnaire",
395
- "system.dict.placeholder.name": "Veuillez saisir le nom du dictionnaire",
396
- "system.dict.placeholder.code": "Veuillez saisir le code du dictionnaire",
397
- "system.dict.message.createSuccess": "Nouveau dictionnaire ajouté avec succès",
398
- "system.dict.message.updateSuccess": "Dictionnaire modifié avec succès",
399
- "system.dict.message.confirmStatus": "Etes-vous sûr du dictionnaire {action} ?\nNom du dictionnaire : {name}",
400
- "system.dict.message.confirmDeleteSingle": "Êtes-vous sûr de vouloir supprimer le dictionnaire ?\nNom du dictionnaire : {name}",
401
- "system.dict.message.confirmDeleteBatch": "Êtes-vous sûr de vouloir supprimer les dictionnaires {count} sélectionnés ?",
402
- "system.dict.message.confirmDeleteSelected": "Etes-vous sûr de supprimer le dictionnaire sélectionné ?",
403
- "system.dict.message.deleteSuccess": "Supprimer le dictionnaire avec succès",
404
- "system.dict.message.deleteCanceled": "Dictionnaire supprimé",
405
- "system.dictItem.action.create": "Ajouter de nouvelles données de dictionnaire",
406
- "system.dictItem.action.edit": "Modifier les données du dictionnaire",
407
- "system.dictItem.action.clearTag": "Effacer\nBalise de dictionnaire",
408
- "system.dictItem.field.label": "Dictionary label",
409
- "system.dictItem.field.value": "valeur du dictionnaire\nType de balise",
410
- "system.dictItem.field.tagType": "Tag type",
411
- "system.dictItem.placeholder.label": "Veuillez saisir la balise du dictionnaire",
412
- "system.dictItem.placeholder.value": "Veuillez saisir la valeur du dictionnaire",
413
- "system.dictItem.validation.label": "Veuillez saisir une balise de dictionnaire (100 caractères ou moins)",
414
- "system.dictItem.validation.value": "Veuillez saisir la valeur du dictionnaire (50 caractères ou moins)",
415
- "system.dictItem.value.tagPreview": "Aperçu des balises",
416
- "system.dictItem.message.createSuccess": "Les données du dictionnaire ont été ajoutées avec succès",
417
- "system.dictItem.message.updateSuccess": "Données du dictionnaire modifiées avec succès",
418
- "system.dictItem.message.confirmStatus": "Êtes-vous sûr des données du dictionnaire {action} ?\nBalise du dictionnaire : {name}",
419
- "system.dictItem.message.confirmDeleteSingle": "Êtes-vous sûr de vouloir supprimer les données du dictionnaire ?\nBalise de dictionnaire : {name}",
420
- "system.dictItem.message.confirmDeleteBatch": "Êtes-vous sûr de supprimer les données du dictionnaire d'éléments {count} sélectionnées ?",
421
- "system.dictItem.message.confirmDeleteSelected": "Êtes-vous sûr de supprimer les données du dictionnaire sélectionnées ?",
422
- "system.dictItem.message.deleteSuccess": "Supprimer les données du dictionnaire avec succès",
423
- "system.dictItem.message.deleteCanceled": "Données du dictionnaire non supprimées",
424
- "system.profile.account.title": "Informations sur le compte",
425
- "system.profile.account.navDescription": "Conserver l'avatar et les informations",
426
- "system.profile.account.description": "Conservez l'avatar, le surnom et les informations de base du compte.",
427
- "system.profile.account.action.edit": "Modifier les informations de base\nAvatar",
2
+ "system.ai.request_failed_with_status": "La requête de l’assistant IA a échoué ({status})",
3
+ "system.profile.title": "Profil",
4
+ "system.base.area.action.create": "Créer une zone administrative",
5
+ "system.base.area.action.edit": "Modifier la zone administrative",
6
+ "system.base.area.field.name": "Nom de la zone",
7
+ "system.base.area.field.parent": "Zone parente",
8
+ "system.base.area.message.delete_batch": "Supprimer les zones administratives sélectionnées ?",
9
+ "system.base.area.message.delete_single": "Supprimer cette zone administrative ?",
10
+ "system.base.area.resource": "zone administrative",
11
+ "system.base.language.resource": "langue",
12
+ "system.base.language.action.create": "Créer une langue",
13
+ "system.base.language.action.edit": "Modifier la langue",
14
+ "system.base.language.field.code": "Code langue",
15
+ "system.base.language.field.name": "Nom de la langue",
16
+ "system.base.language.field.native_name": "Nom local",
17
+ "system.base.language.field.sort": "Ordre",
18
+ "system.base.language.field.primary": "Langue principale",
19
+ "system.base.language.field.status": "Activée",
20
+ "system.base.language.placeholder.code": "Saisissez le code langue",
21
+ "system.base.language.placeholder.name": "Saisissez le nom de la langue",
22
+ "system.base.language.placeholder.native_name": "Saisissez le nom local",
23
+ "system.base.language.placeholder.sort": "Saisissez l’ordre",
24
+ "system.base.language.message.primary_cannot_disable": "La langue principale ne peut pas être désactivée",
25
+ "system.base.language.message.primary_cannot_delete": "La langue principale ne peut pas être supprimée",
26
+ "system.base.language.message.confirm_status": "Modifier le statut de la langue ?\nLangue : {name}\nAction : {action}",
27
+ "system.base.language.message.confirm_primary": "Définir cette langue comme langue principale ?\nLangue : {name}",
28
+ "system.base.language.message.confirm_delete": "Supprimer la langue ?\nLangue : {name}",
29
+ "system.base.area.value.root": "Niveau supérieur",
30
+ "system.base.post.field.code": "Code du poste",
31
+ "system.base.post.field.name": "Nom du poste",
32
+ "system.base.post.resource": "poste",
33
+ "system.base.dept.field.name": "Nom du département",
34
+ "system.base.dept.field.parent": "Département parent",
35
+ "system.base.dept.resource": "département",
36
+ "system.base.dept.value.root": "Département racine",
37
+ "system.base.tenant.field.code": "Code du locataire",
38
+ "system.base.tenant.field.contact_name": "Contacter",
39
+ "system.base.tenant.field.contact_phone": "Téléphone du contact",
40
+ "system.base.tenant.field.name": "Nom du locataire",
41
+ "system.base.tenant.message.phone_invalid": "Saisissez un numéro de téléphone valide",
42
+ "system.base.tenant.message.protected_delete": "Le locataire par défaut ne peut pas être supprimé",
43
+ "system.base.tenant.message.protected_status": "Le statut du locataire par défaut ne peut pas être modifié",
44
+ "system.base.tenant.resource": "locataire",
45
+ "system.base.config.field.key": "Clé de configuration",
46
+ "system.base.config.field.name": "Nom de la configuration",
47
+ "system.base.config.field.site": "Emplacement de la configuration",
48
+ "system.base.config.field.type": "Type de configuration",
49
+ "system.base.config.field.value": "Valeur de configuration",
50
+ "system.base.config.message.image_missing": "Aucune image configurée",
51
+ "system.base.config.message.rich_text_missing": "Aucun texte enrichi configuré",
52
+ "system.base.config.message.value_missing": "Non configuré",
53
+ "system.base.config.resource": "configuration système",
54
+ "system.base.log.field.browser": "Navigateur",
55
+ "system.base.log.field.client_id": "ID client",
56
+ "system.base.log.field.client_ip": "IP du client",
57
+ "system.base.log.field.client_name": "Nom du client",
58
+ "system.base.log.field.cost_time": "Temps d'exécution (ms)",
59
+ "system.base.log.field.location": "Emplacement",
60
+ "system.base.log.field.method": "Méthode de requête",
61
+ "system.base.log.field.operation": "Comment fonctionner",
62
+ "system.base.log.field.os": "Système d’exploitation",
63
+ "system.base.log.field.path": "chemin de requête",
64
+ "system.base.log.field.reason": "Raison de l'échec",
65
+ "system.base.log.field.referer": "Page référente",
66
+ "system.base.log.field.request_body": "corps de la demande",
67
+ "system.base.log.field.request_header": "en-tête de requête",
68
+ "system.base.log.field.request_id": "ID de demande",
69
+ "system.base.log.field.request_result": "Résultats de la demande",
70
+ "system.base.log.field.request_time": "Temps de fonctionnement",
71
+ "system.base.log.field.request_uri": "URI de la demande",
72
+ "system.base.log.field.result": "Résultat",
73
+ "system.base.log.field.status_code": "Code d’état",
74
+ "system.base.log.field.user_id": "ID utilisateur",
75
+ "system.base.log.field.user_name": "Nom d'utilisateur",
76
+ "system.base.log.section.basic": "Informations de base",
77
+ "system.base.log.section.client": "Informations client",
78
+ "system.base.log.section.request": "Demander des informations",
79
+ "system.base.log.section.user": "Informations utilisateur",
80
+ "system.base.log.status.failed": "a échoué",
81
+ "system.base.log.status.success": "Succès",
82
+ "system.base.log.title.detail": "Détails du journal système",
83
+ "system.base.job.log.title.detail": "Détails du journal des tâches planifiées",
84
+ "system.base.job.log.section.basic": "Informations de base",
85
+ "system.base.job.log.section.execution": "Informations d’exécution",
86
+ "system.base.job.log.field.input": "Entrée",
87
+ "system.base.job.log.field.output": "Résultats de sortie",
88
+ "system.base.job.log.field.error": "Raison de l'échec",
89
+ "system.base.job.log.field.execute_time": "temps d'exécution",
90
+ "system.base.job.log.field.process_time": "Durée",
91
+ "system.base.job.log.field.process_time_ms": "Temps consommé (ms)",
92
+ "system.base.api.doc.message.empty": "Aucun document",
93
+ "system.base.migration.field.module": "Module",
94
+ "system.base.migration.field.data_source": "Source de données",
95
+ "system.base.migration.field.version": "Version",
96
+ "system.base.migration.placeholder.module": "Saisissez le module de migration",
97
+ "system.base.migration.placeholder.data_source": "Saisissez le nom de la source de données",
98
+ "system.base.migration.placeholder.version": "Saisissez la version",
99
+ "system.base.migration.message.empty_history": "Aucun historique de mise à niveau",
100
+ "system.base.migration.title.history": "Historique des mises à niveau de la base de données",
101
+ "system.base.migration.title.list": "Enregistrements de mise à niveau",
102
+ "system.base.migration.value.default_module": "Migration de base de données",
103
+ "system.base.migration.message.total": "{total} enregistrements",
104
+ "system.base.migration.section.description": "Instructions de mise à niveau",
105
+ "system.base.migration.section.sql": "Script SQL",
106
+ "system.base.migration.field.up_script": "script de mise à niveau",
107
+ "system.base.migration.field.down_script": "Script de restauration",
108
+ "system.base.migration.action.copy_up_script": "Copier le script de mise à niveau",
109
+ "system.base.migration.action.copy_down_script": "Copier le script de restauration",
110
+ "system.base.migration.message.empty_detail": "Cet enregistrement ne contient ni description ni script",
111
+ "system.base.migration.message.select_record": "Veuillez sélectionner un enregistrement de mise à niveau",
112
+ "system.base.migration.message.copy_success": "Script SQL copié",
113
+ "system.base.migration.message.copy_failed": "Échec de la copie. Sélectionnez et copiez le script manuellement",
114
+ "system.base.api.title.detail": "Détails de l'API",
115
+ "system.base.api.title.edit": "API d'édition",
116
+ "system.base.api.field.tool_name": "Nom de l’outil",
117
+ "system.base.api.field.tool_prompts": "Invites de l’outil",
118
+ "system.base.api.field.service_name": "Nom du service",
119
+ "system.base.api.field.service_description": "Description du service",
120
+ "system.base.api.field.description": "Descriptif",
121
+ "system.base.api.field.operation": "Comment fonctionner",
122
+ "system.base.api.field.method": "Méthode de requête",
123
+ "system.base.api.field.path": "Adresse de la demande",
124
+ "system.base.api.field.mcp_tool": "Outils MCP",
125
+ "system.base.api.field.agent_tool": "Outil Agent",
126
+ "system.base.api.field.mcp_status": "État de l'outil MCP",
127
+ "system.base.api.field.agent_status": "État de l'outil Agent",
128
+ "system.base.api.placeholder.tool_prompt": "Saisissez les indications de l’outil",
129
+ "system.base.api.section.parameters": "Paramètres de la requête",
130
+ "system.base.api.section.request_body": "Corps de la requête",
131
+ "system.base.api.section.responses": "Réponses",
132
+ "system.base.api.doc.field.name": "Champ",
133
+ "system.base.api.doc.field.location": "Emplacement",
134
+ "system.base.api.doc.field.type": "Type",
135
+ "system.base.api.doc.field.required": "Obligatoire",
136
+ "system.base.api.doc.field.description": "Descriptif",
137
+ "system.base.api.message.no_parameters": "Aucun paramètre de requête",
138
+ "system.base.api.message.no_request_body": "Aucun corps de requête",
139
+ "system.base.api.message.no_response_body": "Aucun corps de réponse",
140
+ "system.base.api.message.no_responses": "Aucune réponse",
141
+ "system.base.api.message.save_success": "Enregistré avec succès",
142
+ "system.base.api.message.confirm_mcp_status": "Êtes-vous sûr que {action} est la fonctionnalité de l'outil MCP pour cette API ?\nAPI : {api}",
143
+ "system.base.api.message.confirm_agent_status": "Êtes-vous sûr que {action} est la fonctionnalité de l'outil Agent de cette API ?\nAPI : {api}",
144
+ "system.base.job.action.create": "Créer une tâche planifiée",
145
+ "system.base.job.action.edit": "Modifier la tâche planifiée",
146
+ "system.base.job.action.start": "Début",
147
+ "system.base.job.action.stop": "Arrêter",
148
+ "system.base.job.action.execute": "Exécuter une fois",
149
+ "system.base.job.action.log": "Journaux",
150
+ "system.base.job.action.add_arg": "Ajouter des paramètres",
151
+ "system.base.job.field.name": "Nom de la tâche",
152
+ "system.base.job.field.invoke_target": "Cible",
153
+ "system.base.job.field.cron": "Expression Cron",
154
+ "system.base.job.field.args": "paramètre cible",
155
+ "system.base.job.field.args_short": "Paramètres",
156
+ "system.base.job.field.arg_key": "Paramètre",
157
+ "system.base.job.field.arg_value": "Valeur",
158
+ "system.base.job.field.entry_id": "ID de tâche",
159
+ "system.base.job.placeholder.name": "Saisissez le nom de la tâche",
160
+ "system.base.job.placeholder.invoke_target": "Saisissez la cible",
161
+ "system.base.job.validation.arg_key_required": "Tous les paramètres doivent être renseignés",
162
+ "system.base.job.message.create_success": "Tâche planifiée créée",
163
+ "system.base.job.message.update_success": "Tâche planifiée modifiée avec succès",
164
+ "system.base.job.message.confirm_status": "{action} cette tâche planifiée ?\nNom de la tâche : {name}",
165
+ "system.base.job.message.confirm_delete_single": "Supprimer cette tâche planifiée ?\nNom de la tâche : {name}",
166
+ "system.base.job.message.confirm_delete_batch": "Supprimer les {count} tâches planifiées sélectionnées ?",
167
+ "system.base.job.message.confirm_delete_selected": "Supprimer les tâches planifiées sélectionnées ?",
168
+ "system.base.job.message.delete_success": "Tâche planifiée supprimée",
169
+ "system.base.job.message.delete_canceled": "Suppression de la tâche planifiée annulée",
170
+ "system.base.job.message.confirm_start": "Démarrer cette tâche planifiée ?\nNom de la tâche : {name}",
171
+ "system.base.job.message.start_success": "Démarré avec succès",
172
+ "system.base.job.message.start_canceled": "Démarrage de la tâche annulé",
173
+ "system.base.job.message.confirm_stop": "Arrêter cette tâche planifiée ?\nNom de la tâche : {name}",
174
+ "system.base.job.message.stop_success": "Arrêtez-vous avec succès",
175
+ "system.base.job.message.stop_canceled": "Arrêt de la tâche annulé",
176
+ "system.base.job.message.confirm_execute": "Exécuter cette tâche planifiée une fois ?\nNom de la tâche : {name}",
177
+ "system.base.job.message.execute_success": "exécuté avec succès",
178
+ "system.base.job.message.execute_canceled": "Exécution de la tâche annulée",
179
+ "system.base.job.title.log": "[{name}] Journal des tâches planifiées",
180
+ "system.base.role.action.create": "Nouveau rôle",
181
+ "system.base.role.action.edit": "Modifier le rôle",
182
+ "system.base.role.action.assign_permission": "Attribuer des autorisations",
183
+ "system.base.role.action.collapse_nodes": "nœud de réduction",
184
+ "system.base.role.action.expand_nodes": "Développer le nœud",
185
+ "system.base.role.title.assign_permission": "[{name}] Attribution d'autorisations",
186
+ "system.base.role.field.tenant": "Locataire auquel",
187
+ "system.base.role.field.tenant_short": "Locataire",
188
+ "system.base.role.field.name": "Nom du rôle",
189
+ "system.base.role.field.code": "Code du rôle",
190
+ "system.base.role.field.data_scope": "Autorisations de données",
191
+ "system.base.role.field.menu_permission": "Autorisations de menu",
192
+ "system.base.role.field.tree_operation": "Opérations sur l'arborescence",
193
+ "system.base.role.field.selection_mode": "Mode de vérification",
194
+ "system.base.role.field.parent_child_linked": "Lien père-fils",
195
+ "system.base.role.placeholder.tenant": "Veuillez sélectionner le locataire",
196
+ "system.base.role.placeholder.name": "Saisissez le nom du rôle",
197
+ "system.base.role.placeholder.code": "Saisissez le code du rôle",
198
+ "system.base.role.placeholder.menu_permission": "Nom de la permission de menu",
199
+ "system.base.role.validation.menu_duplicate": "Les permissions de menu ne peuvent pas être dupliquées",
200
+ "system.base.role.message.parent_child_linked_tip": "Désactivez le lien parent-enfant pour sélectionner des permissions de menu sans sélectionner automatiquement les sous-menus ou les boutons",
201
+ "system.base.role.message.create_success": "Rôle créé",
202
+ "system.base.role.message.update_success": "Rôle mis à jour",
203
+ "system.base.role.message.protected_status": "Le statut du rôle par défaut ne peut pas être modifié",
204
+ "system.base.role.message.protected_delete": "Le rôle par défaut ne peut pas être supprimé",
205
+ "system.base.role.message.protected_permission": "Ce locataire ne peut pas attribuer de permissions au rôle intégré",
206
+ "system.base.role.message.confirm_status": "{action} ce rôle ?\nNom du rôle : {name}",
207
+ "system.base.role.message.confirm_delete_single": "Supprimer ce rôle ?\nNom du rôle : {name}",
208
+ "system.base.role.message.confirm_delete_batch": "Supprimer les {count} rôles sélectionnés ?",
209
+ "system.base.role.message.confirm_delete_selected": "Supprimer les rôles sélectionnés ?",
210
+ "system.base.role.message.delete_success": "Rôle supprimé",
211
+ "system.base.role.message.delete_canceled": "Suppression du rôle annulée",
212
+ "system.base.role.message.assign_success": "Autorisations attribuées avec succès",
213
+ "system.base.user.action.create": "Ajouter un nouvel utilisateur",
214
+ "system.base.user.action.edit": "Modifier l'utilisateur",
215
+ "system.base.user.action.reset_password": "Réinitialiser le mot de passe",
216
+ "system.base.user.title.department_list": "Liste des départements",
217
+ "system.base.user.title.reset_password": "Réinitialiser le mot de passe : {name}",
218
+ "system.base.user.field.tenant": "Locataire auquel",
219
+ "system.base.user.field.tenant_short": "Locataire",
220
+ "system.base.user.field.user_name": "Nom d’utilisateur",
221
+ "system.base.user.field.user_code": "Code utilisateur",
222
+ "system.base.user.field.nick_name": "Surnom",
223
+ "system.base.user.field.nick_name_short": "Pseudonyme",
224
+ "system.base.user.field.role": "Rôle",
225
+ "system.base.user.field.department": "Département",
226
+ "system.base.user.field.department_short": "Département",
227
+ "system.base.user.field.post": "Position de l'utilisateur",
228
+ "system.base.user.field.post_short": "Poste",
229
+ "system.base.user.field.password": "Mot de passe",
230
+ "system.base.user.field.new_password": "Nouveau mot de passe",
231
+ "system.base.user.field.password_strength": "Robustesse du mot de passe",
232
+ "system.base.user.field.gender": "Sexe",
233
+ "system.base.user.placeholder.tenant": "Veuillez sélectionner le locataire",
234
+ "system.base.user.placeholder.user_name": "Saisissez le nom d’utilisateur",
235
+ "system.base.user.placeholder.user_code": "Saisissez le code utilisateur",
236
+ "system.base.user.placeholder.nick_name": "Saisissez le surnom",
237
+ "system.base.user.placeholder.department": "Veuillez sélectionner le département utilisateur",
238
+ "system.base.user.placeholder.post": "Veuillez sélectionner la position de l'utilisateur",
239
+ "system.base.user.placeholder.password": "Saisissez le mot de passe",
240
+ "system.base.user.placeholder.new_password": "Saisissez le nouveau mot de passe",
241
+ "system.base.user.message.reset_password_success": "Mot de passe réinitialisé avec succès\nUtilisateur : {name}",
242
+ "system.base.user.message.create_success": "Utilisateur créé",
243
+ "system.base.user.message.update_success": "Utilisateur mis à jour",
244
+ "system.base.user.message.protected_account": "Les comptes administrateur intégrés ne peuvent être modifiés que depuis la page du profil",
245
+ "system.base.user.message.confirm_status": "{action} cet utilisateur ?\nUtilisateur : {name}",
246
+ "system.base.user.message.confirm_delete_single": "Supprimer cet utilisateur ?\nUtilisateur : {name}",
247
+ "system.base.user.message.confirm_delete_batch": "Supprimer les {count} utilisateurs sélectionnés ?",
248
+ "system.base.user.message.confirm_delete_selected": "Supprimer les utilisateurs sélectionnés ?",
249
+ "system.base.user.message.delete_success": "Utilisateur supprimé",
250
+ "system.base.user.message.delete_canceled": "Suppression de l’utilisateur annulée",
251
+ "system.base.translation.field.translations": "Traductions",
252
+ "system.base.translation.field.name_translations": "Traductions des noms",
253
+ "system.base.translation.field.value_translations": "Traductions des valeurs",
254
+ "system.base.translation.placeholder.text": "Saisissez la traduction {language}",
255
+ "system.base.translation.action.translate": "Traduire",
256
+ "system.base.translation.action.batch_translate": "Tout traduire",
257
+ "system.base.translation.message.translate_success": "{language} traduite",
258
+ "system.base.translation.message.translate_failed": "Échec de la traduction de {language}",
259
+ "system.base.translation.message.batch_translate_success": "{count} langues traduites",
260
+ "system.base.translation.message.batch_translate_partial": "{success} langues traduites, {failed} échecs",
261
+ "system.base.translation.message.batch_translate_failed": "Échec de la traduction groupée",
262
+ "system.base.menu.title.list": "Liste des menus",
263
+ "system.base.menu.action.create": "Créer un menu",
264
+ "system.base.menu.action.edit": "Modifier le menu",
265
+ "system.base.menu.action.add_route_param": "Ajouter des paramètres de routage",
266
+ "system.base.menu.type.folder": "Dossier",
267
+ "system.base.menu.type.menu": "Menu",
268
+ "system.base.menu.type.button": "Bouton",
269
+ "system.base.menu.type.external": "Lien externe",
270
+ "system.base.menu.access.public": "Accès public",
271
+ "system.base.menu.access.guest": "Visiteurs uniquement",
272
+ "system.base.menu.access.authenticated": "Utilisateurs connectés",
273
+ "system.base.menu.field.parent": "Menu parent",
274
+ "system.base.menu.field.type": "Type de menu",
275
+ "system.base.menu.field.name": "Nom du menu",
276
+ "system.base.menu.field.title": "Titre du menu",
277
+ "system.base.menu.field.button_name": "Nom du bouton",
278
+ "system.base.menu.field.icon": "Icône du menu",
279
+ "system.base.menu.field.default_icon": "Icône par défaut",
280
+ "system.base.menu.field.selected_icon": "Icône de vérification",
281
+ "system.base.menu.field.path": "chemin de routage",
282
+ "system.base.menu.field.path_or_permission": "Identification du chemin de routage/de l'autorité",
283
+ "system.base.menu.field.logical_path": "chemin logique",
284
+ "system.base.menu.field.permission": "identification de l'autorisation",
285
+ "system.base.menu.field.internal_path": "chemin interne",
286
+ "system.base.menu.field.route_name": "Nom de la route",
287
+ "system.base.menu.field.logical_name": "Nom logique",
288
+ "system.base.menu.field.component": "Chemin du composant",
289
+ "system.base.menu.field.redirect": "URL de redirection",
290
+ "system.base.menu.field.redirect_route": "Itinéraire de saut",
291
+ "system.base.menu.field.external_url": "adresse du lien externe",
292
+ "system.base.menu.field.display_status": "Afficher l'état",
293
+ "system.base.menu.field.view_key": "Clé de vue",
294
+ "system.base.menu.field.access": "Mode d'accès",
295
+ "system.base.menu.field.hidden": "S'il faut masquer",
296
+ "system.base.menu.field.always_show": "Toujours affiché",
297
+ "system.base.menu.field.keep_alive": "Page mise en cache",
298
+ "system.base.menu.field.fullscreen": "Mode plein écran",
299
+ "system.base.menu.field.affix": "Onglet épinglé",
300
+ "system.base.menu.field.route_params": "Paramètres de route",
301
+ "system.base.menu.field.api_list": "Liste des API",
302
+ "system.base.menu.status.hidden": "Masquer",
303
+ "system.base.menu.status.visible": "spectacle",
304
+ "system.base.menu.placeholder.parent": "Sélectionnez le menu parent",
305
+ "system.base.menu.placeholder.title": "Saisissez le titre du menu",
306
+ "system.base.menu.placeholder.button_name": "Saisissez le nom du bouton",
307
+ "system.base.menu.placeholder.icon": "Sélectionnez l’icône du menu",
308
+ "system.base.menu.placeholder.default_icon": "par exemple. ACCUEIL_DEFAULT",
309
+ "system.base.menu.placeholder.selected_icon": "par exemple. HOME_SELECTED",
310
+ "system.base.menu.placeholder.logical_name": "Par exemple AppHome",
311
+ "system.base.menu.placeholder.route_name": "Saisissez le nom de la route",
312
+ "system.base.menu.placeholder.view_key": "par exemple. ACCUEIL",
313
+ "system.base.menu.placeholder.access": "Veuillez sélectionner le mode d'accès",
314
+ "system.base.menu.placeholder.permission": "Saisissez l’identifiant de permission",
315
+ "system.base.menu.placeholder.logical_path": "Par exemple application/accueil",
316
+ "system.base.menu.placeholder.redirect_route": "Veuillez entrer l'itinéraire de saut",
317
+ "system.base.menu.tooltip.mobile_icon": "Remplissez la clé icône ou l'adresse image HTTPS enregistrée par le module du terminal mobile.",
318
+ "system.base.menu.tooltip.logical_name": "Utilisez un nom logique unique avec le préfixe App pour les pages mobiles",
319
+ "system.base.menu.tooltip.route_name": "Pour mettre la page en cache, ce nom doit correspondre à celui de defineOptions ; PascalCase est recommandé",
320
+ "system.base.menu.tooltip.view_key": "doit être cohérent avec la viewKey stable enregistrée dans le module du terminal mobile et le chemin du fichier du composant n'est pas renseigné.",
321
+ "system.base.menu.tooltip.component": "Saisissez le chemin complet du module et de la vue, par exemple system/base/user/index",
322
+ "system.base.menu.tooltip.always_show": "Sélectionnez \"Oui\", même s'il n'y a qu'un seul nœud enfant sous le répertoire ou le menu, le nœud parent sera affiché ; sélectionnez \"Non\", s'il n'y a qu'un seul nœud enfant, seul le nœud enfant sera affiché.",
323
+ "system.base.menu.tooltip.route_params": "La page du composant utilise le nom useRoute().query.parameter pour obtenir la valeur du paramètre de routage.",
324
+ "system.base.menu.tooltip.logical_path": "Utilisez le chemin logique stable avec le préfixe app/ et ne renseignez pas le chemin de la page physique uni-app.",
325
+ "system.base.menu.tooltip.permission": "Le menu de type de bouton utilise un identifiant d'autorisation, tel que base:user:create.",
326
+ "system.base.menu.tooltip.internal_path": "Le lien externe utilise un chemin interne unique, tel que externe/exemple ; l'adresse réelle est renseignée dans l'adresse du lien externe.",
327
+ "system.base.menu.tooltip.folder_path": "Le répertoire ne renseigne pas le chemin, il sert uniquement à organiser les menus de niveau inférieur.",
328
+ "system.base.menu.tooltip.route_path": "Les chemins de menu n'ont généralement pas de /, comme utilisateur.",
329
+ "system.base.menu.validation.default_icon": "Veuillez saisir l'icône par défaut",
330
+ "system.base.menu.validation.view_key": "Veuillez saisir la clé d'affichage",
331
+ "system.base.menu.validation.selected_icon": "Veuillez saisir l'icône de vérification",
332
+ "system.base.menu.validation.permission": "Saisissez l’identifiant de permission",
333
+ "system.base.menu.validation.external_url": "Veuillez saisir l'adresse complète du lien externe",
334
+ "system.base.menu.validation.logical_path": "Veuillez entrer le chemin logique",
335
+ "system.base.menu.validation.route_path": "Veuillez saisir le chemin de routage",
336
+ "system.base.menu.validation.app_path_prefix": "Le chemin logique mobile doit utiliser le préfixe app/",
337
+ "system.base.menu.validation.http_url": "Veuillez saisir l'adresse complète du lien externe HTTP",
338
+ "system.base.menu.validation.logical_name": "Veuillez saisir un nom logique",
339
+ "system.base.menu.validation.app_name_prefix": "Le nom logique mobile doit utiliser le préfixe App",
340
+ "system.base.menu.validation.component": "Veuillez saisir le chemin du composant",
341
+ "system.base.menu.value.available_api": "API disponibles",
342
+ "system.base.menu.value.selected_api": "API sélectionnées",
343
+ "system.base.menu.message.create_success": "Menu créé",
344
+ "system.base.menu.message.update_success": "Menu mis à jour",
345
+ "system.base.menu.message.confirm_status": "{action} ce menu ?\nMenu : {name}",
346
+ "system.base.menu.message.protected_delete": "Les menus fixes ne peuvent pas être supprimés",
347
+ "system.base.menu.message.confirm_delete_single": "Supprimer ce menu ?\nMenu : {name}",
348
+ "system.base.menu.message.confirm_delete_batch": "Supprimer les {count} éléments de menu sélectionnés ?",
349
+ "system.base.menu.message.confirm_delete_selected": "Supprimer les éléments de menu sélectionnés ?",
350
+ "system.base.menu.message.delete_success": "Menu supprimé",
351
+ "system.base.menu.message.delete_canceled": "Suppression du menu annulée",
352
+ "system.base.dict.action.create": "Créer un dictionnaire",
353
+ "system.base.dict.action.edit": "Modifier le dictionnaire",
354
+ "system.base.dict.action.items": "Éléments du dictionnaire",
355
+ "system.base.dict.title.items": "[{name}] Éléments du dictionnaire",
356
+ "system.base.dict.field.name": "Nom du dictionnaire",
357
+ "system.base.dict.field.code": "Code du dictionnaire",
358
+ "system.base.dict.placeholder.name": "Saisissez le nom du dictionnaire",
359
+ "system.base.dict.placeholder.code": "Saisissez le code du dictionnaire",
360
+ "system.base.dict.message.create_success": "Dictionnaire créé",
361
+ "system.base.dict.message.update_success": "Dictionnaire mis à jour",
362
+ "system.base.dict.message.confirm_status": "{action} ce dictionnaire ?\nDictionnaire : {name}",
363
+ "system.base.dict.message.confirm_delete_single": "Supprimer ce dictionnaire ?\nDictionnaire : {name}",
364
+ "system.base.dict.message.confirm_delete_batch": "Supprimer les {count} dictionnaires sélectionnés ?",
365
+ "system.base.dict.message.confirm_delete_selected": "Supprimer les dictionnaires sélectionnés ?",
366
+ "system.base.dict.message.delete_success": "Dictionnaire supprimé",
367
+ "system.base.dict.message.delete_canceled": "Suppression du dictionnaire annulée",
368
+ "system.base.dict.item.action.create": "Créer un élément de dictionnaire",
369
+ "system.base.dict.item.action.edit": "Modifier l’élément de dictionnaire",
370
+ "system.base.dict.item.action.clear_tag": "Effacer",
371
+ "system.base.dict.item.field.label": "Libellé du dictionnaire",
372
+ "system.base.dict.item.field.value": "Valeur du dictionnaire",
373
+ "system.base.dict.item.field.tag_type": "Type d’étiquette",
374
+ "system.base.dict.item.placeholder.label": "Saisissez le libellé du dictionnaire",
375
+ "system.base.dict.item.placeholder.value": "Saisissez la valeur du dictionnaire",
376
+ "system.base.dict.item.validation.label": "Veuillez saisir une balise de dictionnaire (100 caractères ou moins)",
377
+ "system.base.dict.item.validation.value": "Veuillez saisir la valeur du dictionnaire (50 caractères ou moins)",
378
+ "system.base.dict.item.value.tag_preview": "Aperçu des balises",
379
+ "system.base.dict.item.message.create_success": "Élément de dictionnaire créé",
380
+ "system.base.dict.item.message.update_success": "Élément de dictionnaire mis à jour",
381
+ "system.base.dict.item.message.confirm_status": "Êtes-vous sûr des données du dictionnaire {action} ?\nBalise du dictionnaire : {name}",
382
+ "system.base.dict.item.message.confirm_delete_single": "Êtes-vous sûr de vouloir supprimer les données du dictionnaire ?\nBalise de dictionnaire : {name}",
383
+ "system.base.dict.item.message.confirm_delete_batch": "Êtes-vous sûr de supprimer les données du dictionnaire d'éléments {count} sélectionnées ?",
384
+ "system.base.dict.item.message.confirm_delete_selected": "Êtes-vous sûr de supprimer les données du dictionnaire sélectionnées ?",
385
+ "system.base.dict.item.message.delete_success": "Élément de dictionnaire supprimé",
386
+ "system.base.dict.item.message.delete_canceled": "Données du dictionnaire non supprimées",
387
+ "system.profile.account.title": "Informations du compte",
388
+ "system.profile.account.nav_description": "Gérez votre avatar et votre profil",
389
+ "system.profile.account.description": "Gérez votre avatar, votre surnom et les informations de base de votre compte",
390
+ "system.profile.account.action.edit": "Modifier le profil",
428
391
  "system.profile.account.field.avatar": "Avatar",
429
- "system.profile.account.field.userName": "Compte de connexion",
430
- "system.profile.account.field.nickName": "Pseudo",
431
- "system.profile.account.field.gender": "Sexe",
432
- "system.profile.account.field.phone": "Associer le téléphone portable",
392
+ "system.profile.account.field.user_name": "Compte de connexion",
393
+ "system.profile.account.field.nick_name": "Surnom",
394
+ "system.profile.account.field.gender": "Genre",
395
+ "system.profile.account.field.phone": "Téléphone associé",
433
396
  "system.profile.account.field.role": "Rôle",
434
397
  "system.profile.account.field.dept": "Département",
435
- "system.profile.account.placeholder.nickName": "Veuillez entrer votre pseudo",
436
- "system.profile.account.message.avatarHint": "Cliquez dans le coin inférieur droit pour changer l'avatar",
437
- "system.profile.account.message.avatarUpdated": "Avatar mis à jour avec succès",
438
- "system.profile.account.message.avatarUploadFailed": "Échec du téléchargement de l'avatar",
439
- "system.profile.account.message.updated": "Les informations de base ont été mises à jour",
440
- "system.profile.value.unbound": "non lié",
441
- "system.profile.value.private": "Confidentiel",
398
+ "system.profile.account.placeholder.nick_name": "Saisissez un surnom",
399
+ "system.profile.account.message.avatar_hint": "Utilisez le bouton en bas à droite pour modifier votre avatar",
400
+ "system.profile.account.message.avatar_updated": "Avatar mis à jour",
401
+ "system.profile.account.message.avatar_upload_failed": "Échec du téléversement de l’avatar",
402
+ "system.profile.account.message.updated": "Profil mis à jour",
403
+ "system.profile.value.unbound": "Non associé",
404
+ "system.profile.value.private": "Privé",
442
405
  "system.profile.security.title": "Paramètres de sécurité",
443
- "system.profile.security.navDescription": "Gérer l'authentification et la sécurité",
444
- "system.profile.security.description": "Gérez le mot de passe de connexion, la vérification du téléphone mobile et l'intégrité du compte.",
445
- "system.profile.security.value.accountNormal": "L'état du compte est normal",
446
- "system.profile.security.field.loginPassword": "Mot de passe de connexion",
447
- "system.profile.security.field.phone": "Associer le téléphone portable",
448
- "system.profile.security.field.phoneNumber": "Numéro de portable",
406
+ "system.profile.security.nav_description": "Gérez la vérification et la sécurité",
407
+ "system.profile.security.description": "Gérez votre mot de passe, la vérification du téléphone et la complétude du profil",
408
+ "system.profile.security.value.account_normal": "Statut du compte normal",
409
+ "system.profile.security.field.login_password": "Mot de passe de connexion",
410
+ "system.profile.security.field.phone": "Téléphone associé",
411
+ "system.profile.security.field.phone_number": "Numéro de téléphone",
449
412
  "system.profile.security.field.code": "Code de vérification",
450
- "system.profile.security.field.phoneVerification": "Vérification du téléphone portable",
451
- "system.profile.security.field.profileCompletion": "Complétude des données",
452
- "system.profile.security.message.passwordHint": "Il est recommandé de le mettre à jour régulièrement pour éviter d'utiliser le même mot de passe pendant une longue période.",
453
- "system.profile.security.message.phoneBound": "Lié : {phone}",
454
- "system.profile.security.message.phoneUnbound": "n'est actuellement pas lié à un téléphone mobile.",
455
- "system.profile.security.message.oauthBound": "a été lié et peut être utilisé pour se connecter à l'arrière-plan de gestion.",
456
- "system.profile.security.message.oauthUnbound": "n'est pas lié. Il peut être utilisé pour se connecter à l'arrière-plan de gestion après une liaison réussie.",
457
- "system.profile.security.message.oauthBindSuccess": "Liaison de compte tiers réussie",
458
- "system.profile.security.message.oauthUnbindSuccess": "Le compte tiers a été dissocié",
459
- "system.profile.security.message.codeSent": "Code de vérification envoyé",
460
- "system.profile.security.message.phoneUpdated": "Numéro de téléphone portable mis à jour avec succès",
461
- "system.profile.security.action.changePassword": "Aller pour modifier",
462
- "system.profile.security.action.changePhone": "Changer le numéro de téléphone portable",
463
- "system.profile.security.action.bindNow": "Lier maintenant\nLiaison",
464
- "system.profile.security.action.bind": "Bind",
413
+ "system.profile.security.field.phone_verification": "Vérification du téléphone",
414
+ "system.profile.security.field.profile_completion": "Complétude du profil",
415
+ "system.profile.security.message.password_hint": "Mettez régulièrement à jour votre mot de passe pour éviter de le conserver trop longtemps",
416
+ "system.profile.security.message.phone_bound": "Associé : {phone}",
417
+ "system.profile.security.message.phone_unbound": "Aucun numéro de téléphone n’est actuellement associé",
418
+ "system.profile.security.message.oauth_bound": "Associé et disponible pour se connecter à la console d’administration",
419
+ "system.profile.security.message.oauth_unbound": "Non associé. Associez-le pour utiliser cette méthode de connexion",
420
+ "system.profile.security.message.oauth_bind_success": "Compte tiers associé",
421
+ "system.profile.security.message.oauth_unbind_success": "Compte tiers dissocié",
422
+ "system.profile.security.message.code_sent": "Code de vérification envoyé",
423
+ "system.profile.security.message.phone_updated": "Numéro de téléphone mis à jour",
424
+ "system.profile.security.action.change_password": "Modifier",
425
+ "system.profile.security.action.change_phone": "Modifier le téléphone",
426
+ "system.profile.security.action.bind_now": "Associer maintenant",
427
+ "system.profile.security.action.bind": "Associer",
465
428
  "system.profile.security.action.unbind": "Dissocier",
466
- "system.profile.security.action.sendCode": "Envoyer le code de vérification\nRéessayez après",
467
- "system.profile.security.action.retryAfter": "{seconds}s",
429
+ "system.profile.security.action.send_code": "Envoyer le code",
430
+ "system.profile.security.action.retry_after": "Réessayer dans {seconds}s",
468
431
  "system.profile.security.status.title": "Statut du compte",
469
- "system.profile.security.status.description": "Vérifiez l'état actuel de la vérification du compte et l'intégrité des données.",
470
- "system.profile.security.dialog.bindPhone": "Associer le téléphone mobile",
471
- "system.profile.security.dialog.confirmUnbind": "Êtes-vous sûr de dissocier cette méthode de connexion ?\nMéthode de connexion : {provider}",
472
- "system.profile.security.placeholder.phone": "Veuillez saisir votre numéro de téléphone portable",
473
- "system.profile.security.placeholder.code": "Veuillez saisir le code de vérification",
474
- "system.profile.security.validation.phone": "Veuillez saisir le numéro de téléphone portable correct",
475
- "system.profile.password.title": "Changer le mot de passe",
476
- "system.profile.password.navDescription": "Mettre à jour le mot de passe de connexion",
477
- "system.profile.password.description": "Mettez à jour le mot de passe de connexion actuel pour assurer la sécurité de votre compte.",
478
- "system.profile.password.value.strongRecommended": "Haute intensité recommandée",
432
+ "system.profile.security.status.description": "Consultez le statut de vérification et la complétude du profil",
433
+ "system.profile.security.dialog.bind_phone": "Associer un téléphone",
434
+ "system.profile.security.dialog.confirm_unbind": "Dissocier cette méthode de connexion ?\nMéthode : {provider}",
435
+ "system.profile.security.placeholder.phone": "Saisissez un numéro de téléphone",
436
+ "system.profile.security.placeholder.code": "Saisissez le code de vérification",
437
+ "system.profile.security.validation.phone": "Saisissez un numéro de téléphone valide",
438
+ "system.profile.password.title": "Modifier le mot de passe",
439
+ "system.profile.password.nav_description": "Mettez à jour votre mot de passe de connexion",
440
+ "system.profile.password.description": "Mettez à jour votre mot de passe actuel pour sécuriser votre compte",
441
+ "system.profile.password.value.strong_recommended": "Un mot de passe fort est recommandé",
479
442
  "system.profile.password.action.update": "Mettre à jour le mot de passe",
480
- "system.profile.password.field.oldPassword": "Mot de passe d'origine",
481
- "system.profile.password.field.newPassword": "Nouveau mot de passe",
482
- "system.profile.password.field.confirmPassword": "Confirmer le mot de passe",
483
- "system.profile.password.placeholder.oldPassword": "Veuillez saisir le mot de passe d'origine",
484
- "system.profile.password.placeholder.newPassword": "Veuillez saisir un nouveau mot de passe",
485
- "system.profile.password.placeholder.confirmPassword": "Veuillez saisir à nouveau le nouveau mot de passe",
486
- "system.profile.password.message.mismatch": "Les mots de passe saisis deux fois sont incohérents.",
487
- "system.profile.password.message.strengthInsufficient": "Le nouveau mot de passe n'est pas assez fort. Veuillez l'augmenter à la force la plus élevée.",
488
- "system.profile.password.message.updated": "Le mot de passe a été modifié avec succès, veuillez vous reconnecter",
489
- "system.profile.password.tip.uniqueTitle": "Évitez de répéter les mots de passe",
490
- "system.profile.password.tip.uniqueDescription": "Ne réutilisez pas d'anciens mots de passe ou des mots de passe déjà utilisés par d'autres systèmes.",
491
- "system.profile.password.tip.strengthTitle": "Contrôler la force du mot de passe",
492
- "system.profile.password.tip.strengthDescription": "Une combinaison de lettres majuscules et minuscules, de chiffres et de symboles est recommandée.",
493
- "system.profile.password.tip.recordTitle": "Mettre à jour les enregistrements à temps",
494
- "system.profile.password.tip.recordDescription": "En cas de transfert de compte, veuillez mettre à jour simultanément le dossier de garde.",
495
- "system.ai.chat.welcomeDescription": "Vous pouvez poser des questions directement ou télécharger des pièces jointes pour analyse ensemble.",
443
+ "system.profile.password.field.old_password": "Mot de passe actuel",
444
+ "system.profile.password.field.new_password": "Nouveau mot de passe",
445
+ "system.profile.password.field.confirm_password": "Confirmer le mot de passe",
446
+ "system.profile.password.placeholder.old_password": "Saisissez votre mot de passe actuel",
447
+ "system.profile.password.placeholder.new_password": "Saisissez un nouveau mot de passe",
448
+ "system.profile.password.placeholder.confirm_password": "Saisissez à nouveau le mot de passe",
449
+ "system.profile.password.message.mismatch": "Les mots de passe ne correspondent pas",
450
+ "system.profile.password.message.strength_insufficient": "Le nouveau mot de passe doit atteindre le niveau de robustesse maximal",
451
+ "system.profile.password.message.updated": "Mot de passe modifié. Reconnectez-vous",
452
+ "system.profile.password.tip.unique_title": "Évitez de réutiliser les mots de passe",
453
+ "system.profile.password.tip.unique_description": "Ne réutilisez pas d’anciens mots de passe ni de mots de passe utilisés dans d’autres systèmes",
454
+ "system.profile.password.tip.strength_title": "Utilisez un mot de passe fort",
455
+ "system.profile.password.tip.strength_description": "Utilisez une combinaison de majuscules, minuscules, chiffres et symboles",
456
+ "system.profile.password.tip.record_title": "Gardez les dossiers à jour",
457
+ "system.profile.password.tip.record_description": "Lors du transfert d’un compte, mettez également à jour le registre de conservation du mot de passe",
458
+ "system.ai.chat.welcome_description": "Vous pouvez poser des questions directement ou télécharger des pièces jointes pour analyse ensemble.",
496
459
  "system.ai.chat.welcome.morning": "Bonjour, je suis l'assistant universel d'IA",
497
460
  "system.ai.chat.welcome.afternoon": "Bonjour, je suis l'assistant universel d'IA",
498
461
  "system.ai.chat.welcome.evening": "Bonsoir, je suis l'Assistant IA Universel",
499
462
  "system.ai.chat.shortcut.eyebrow": "Fonctionnement rapide",
500
- "system.ai.chat.shortcut.startTitle": "Commencez avec des flux de travail courants",
501
- "system.ai.chat.shortcut.continueTitle": "Continuer à appeler des processus communs",
502
- "system.ai.chat.action.refreshShortcuts": "Modifier un lot",
503
- "system.ai.chat.action.copyRequest": "Copier le message de demande",
504
- "system.ai.chat.action.viewRuntime": "Afficher les détails d'exécution",
463
+ "system.ai.chat.shortcut.start_title": "Commencez avec des flux de travail courants",
464
+ "system.ai.chat.shortcut.continue_title": "Continuer à appeler des processus communs",
465
+ "system.ai.chat.action.refresh_shortcuts": "Modifier un lot",
466
+ "system.ai.chat.action.copy_request": "Copier le message de demande",
467
+ "system.ai.chat.action.view_runtime": "Afficher les détails d'exécution",
505
468
  "system.ai.chat.action.send": "Envoyer",
506
469
  "system.ai.chat.action.copy": "Copie",
507
470
  "system.ai.chat.action.resend": "Renvoyer",
508
471
  "system.ai.chat.action.regenerate": "Régénérer",
509
- "system.ai.chat.action.createBranch": "Créer une session de branche à partir d'ici",
472
+ "system.ai.chat.action.create_branch": "Créer une session de branche à partir d'ici",
510
473
  "system.ai.chat.action.speak": "Lire à haute voix",
511
- "system.ai.chat.action.stopSpeaking": "Arrêter la lecture",
512
- "system.ai.chat.action.uploadAttachment": "Télécharger la pièce jointe",
513
- "system.ai.chat.action.selectLocalFile": "Sélectionnez le fichier local",
514
- "system.ai.chat.action.voiceInput": "Saisie vocale",
515
- "system.ai.chat.action.stopVoiceInput": "Arrêter la saisie vocale",
516
- "system.ai.chat.action.collapseSessions": "Fermer la barre de conversation",
517
- "system.ai.chat.action.expandSessions": "Développer la barre de conversation",
518
- "system.ai.chat.action.newConversation": "Nouvelle session",
519
- "system.ai.chat.action.conversationMenu": "Opérations de session",
474
+ "system.ai.chat.action.stop_speaking": "Arrêter la lecture",
475
+ "system.ai.chat.action.upload_attachment": "Télécharger la pièce jointe",
476
+ "system.ai.chat.action.select_local_file": "Sélectionnez le fichier local",
477
+ "system.ai.chat.action.voice_input": "Saisie vocale",
478
+ "system.ai.chat.action.stop_voice_input": "Arrêter la saisie vocale",
479
+ "system.ai.chat.action.collapse_sessions": "Fermer la barre de conversation",
480
+ "system.ai.chat.action.expand_sessions": "Développer la barre de conversation",
481
+ "system.ai.chat.action.new_conversation": "Nouvelle session",
482
+ "system.ai.chat.action.conversation_menu": "Opérations de session",
520
483
  "system.ai.chat.action.rename": "Renommer",
521
484
  "system.ai.chat.action.continue": "Continuer",
522
- "system.ai.chat.action.confirmDeleteConversation": "Confirmer la suppression",
523
- "system.ai.chat.title.errorDetail": "Détails de l'erreur",
485
+ "system.ai.chat.action.confirm_delete_conversation": "Confirmer la suppression",
486
+ "system.ai.chat.title.error_detail": "Détails de l'erreur",
524
487
  "system.ai.chat.title.runtime": "Détails de l'opération",
525
- "system.ai.chat.title.recentConversations": "Conversations récentes\nEntrée",
526
- "system.ai.chat.field.inputTokens": "Sortie",
527
- "system.ai.chat.field.outputTokens": "Output",
528
- "system.ai.chat.field.cacheTokens": "Lecture du cache",
529
- "system.ai.chat.field.totalTokens": "Total",
488
+ "system.ai.chat.title.recent_conversations": "Conversations récentes",
489
+ "system.ai.chat.field.input_tokens": "Sortie",
490
+ "system.ai.chat.field.output_tokens": "Tokens de sortie",
491
+ "system.ai.chat.field.cache_tokens": "Lecture du cache",
492
+ "system.ai.chat.field.total_tokens": "Total",
530
493
  "system.ai.chat.field.duration": "Cela prend du temps",
531
- "system.ai.chat.field.firstToken": "Premier jeton",
532
- "system.ai.chat.field.totalDuration": "Temps total pris",
494
+ "system.ai.chat.field.first_token": "Premier jeton",
495
+ "system.ai.chat.field.total_duration": "Temps total pris",
533
496
  "system.ai.chat.status.loading": "Chargement",
534
497
  "system.ai.chat.status.failed": "a échoué",
535
498
  "system.ai.chat.status.completed": "Terminé",
536
499
  "system.ai.chat.status.thinking": "Réflexion",
537
500
  "system.ai.chat.status.answering": "Répondre",
538
- "system.ai.chat.status.sendFailed": "n'a pas réussi à envoyer",
501
+ "system.ai.chat.status.send_failed": "n'a pas réussi à envoyer",
539
502
  "system.ai.chat.status.uploading": "Téléchargement...",
540
- "system.ai.chat.status.recognizingVoice": "Reconnaissance de la parole...",
541
- "system.ai.chat.status.uploadingAttachments": "La pièce jointe est en cours de téléchargement...",
503
+ "system.ai.chat.status.recognizing_voice": "Reconnaissance de la parole...",
504
+ "system.ai.chat.status.uploading_attachments": "La pièce jointe est en cours de téléchargement...",
542
505
  "system.ai.chat.source.network": "Données réseau",
543
506
  "system.ai.chat.source.model": "réponse modèle",
544
507
  "system.ai.chat.source.fallback": "Réponse à un déclassement",
545
- "system.ai.chat.value.itemCount": "{count} article",
546
- "system.ai.chat.value.generalAssistant": "Assistant général",
547
- "system.ai.chat.value.shortcutTools": "{group} · {count} outils",
508
+ "system.ai.chat.value.item_count": "{count} article",
509
+ "system.ai.chat.value.general_assistant": "Assistant général",
510
+ "system.ai.chat.value.shortcut_tools": "{group} · {count} outils",
548
511
  "system.ai.chat.value.tool": "Outils",
549
- "system.ai.chat.value.selectedAttachments": "{count} pièces jointes sélectionnées",
550
- "system.ai.chat.value.attachmentsAvailable": "peut télécharger des pièces jointes",
551
- "system.ai.chat.value.analyzeAttachments": "Veuillez poursuivre l'analyse en fonction du contenu ci-joint",
552
- "system.ai.chat.value.newConversation": "Nouvelle conversation",
553
- "system.ai.chat.value.branchTitle": "Succursale : {title}",
512
+ "system.ai.chat.value.selected_attachments": "{count} pièces jointes sélectionnées",
513
+ "system.ai.chat.value.attachments_available": "peut télécharger des pièces jointes",
514
+ "system.ai.chat.value.analyze_attachments": "Veuillez poursuivre l'analyse en fonction du contenu ci-joint",
515
+ "system.ai.chat.value.new_conversation": "Nouvelle conversation",
516
+ "system.ai.chat.value.branch_title": "Succursale : {title}",
554
517
  "system.ai.chat.placeholder.input": "Saisissez n'importe quelle question ou téléchargez une pièce jointe pour continuer à la poser.",
555
- "system.ai.chat.placeholder.searchConversation": "Rechercher des conversations",
556
- "system.ai.chat.placeholder.conversationName": "Veuillez saisir un nom de session",
557
- "system.ai.chat.message.loadingShortcuts": "Chargement de l'entrée de raccourci...",
558
- "system.ai.chat.message.serverError": "Exception du serveur, il est recommandé de réessayer plus tard.",
559
- "system.ai.chat.message.replyFailed": "La réponse n'a pas été renvoyée avec succès cette fois. Vous pouvez réessayer la question directement.",
560
- "system.ai.chat.message.requestCopied": "Le message de demande a été copié",
561
- "system.ai.chat.message.copyUnsupported": "Le navigateur actuel ne prend pas en charge la copie",
562
- "system.ai.chat.message.contentRequired": "Le contenu du message ne peut pas être vide",
563
- "system.ai.chat.message.contentUnchanged": "Le contenu du message n'a pas changé",
564
- "system.ai.chat.message.attachmentHint": "peut être complété par des pièces jointes d'images ou de texte, qui seront utilisées pour l'analyse du problème actuel après l'envoi.",
565
- "system.ai.chat.message.voiceUnsupported": "Le navigateur actuel ne prend pas en charge la reconnaissance vocale",
566
- "system.ai.chat.message.microphoneDenied": "L'autorisation du microphone a échoué, veuillez vérifier les autorisations du navigateur",
567
- "system.ai.chat.message.voiceFailed": "La reconnaissance vocale a échoué, veuillez réessayer plus tard.",
568
- "system.ai.chat.message.attachmentsUploaded": "a téléchargé {count} pièces jointes",
569
- "system.ai.chat.message.attachmentUploadFailed": "Échec du téléchargement de la pièce jointe",
570
- "system.ai.chat.message.attachmentLimit": "Téléchargez jusqu'à {count} pièces jointes",
571
- "system.ai.chat.message.attachmentUnsupported": "La pièce jointe \"{name}\" n'est pas encore prise en charge et a été ignorée",
572
- "system.ai.chat.message.attachmentTooLarge": "La pièce jointe \"{name}\" dépasse {size}Mo et a été ignorée",
573
- "system.ai.chat.message.attachmentRemaining": "Vous pouvez sélectionner jusqu'à {count} pièces jointes, qui ont été automatiquement interceptées",
574
- "system.ai.chat.message.actionCanceled": "Opération annulée",
575
- "system.ai.chat.message.conversationCreated": "Nouvelle session créée",
576
- "system.ai.chat.message.emptyStream": "La réponse de streaming de l'assistant IA est vide",
577
- "system.ai.chat.message.incompleteStream": "La réponse de streaming de l'assistant IA n'est pas renvoyée complètement",
578
- "system.ai.chat.message.requestFailed": "La demande d'assistant IA a échoué",
579
- "system.ai.chat.message.updatedAndRegenerated": "mis à jour et régénéré",
580
- "system.ai.chat.message.updateFailed": "Échec de la mise à jour du message",
581
- "system.ai.chat.message.messageCopied": "Message copié",
582
- "system.ai.chat.message.messageDeleted": "Message supprimé",
583
- "system.ai.chat.message.localRetryMissing": "Aucun message local trouvé à renvoyer",
518
+ "system.ai.chat.placeholder.search_conversation": "Rechercher des conversations",
519
+ "system.ai.chat.placeholder.conversation_name": "Veuillez saisir un nom de session",
520
+ "system.ai.chat.message.loading_shortcuts": "Chargement de l'entrée de raccourci...",
521
+ "system.ai.chat.message.server_error": "Exception du serveur, il est recommandé de réessayer plus tard.",
522
+ "system.ai.chat.message.reply_failed": "La réponse n'a pas été renvoyée avec succès cette fois. Vous pouvez réessayer la question directement.",
523
+ "system.ai.chat.message.request_copied": "Le message de demande a été copié",
524
+ "system.ai.chat.message.copy_unsupported": "Le navigateur actuel ne prend pas en charge la copie",
525
+ "system.ai.chat.message.content_required": "Le contenu du message ne peut pas être vide",
526
+ "system.ai.chat.message.content_unchanged": "Le contenu du message n'a pas changé",
527
+ "system.ai.chat.message.attachment_hint": "peut être complété par des pièces jointes d'images ou de texte, qui seront utilisées pour l'analyse du problème actuel après l'envoi.",
528
+ "system.ai.chat.message.voice_unsupported": "Le navigateur actuel ne prend pas en charge la reconnaissance vocale",
529
+ "system.ai.chat.message.microphone_denied": "L'autorisation du microphone a échoué, veuillez vérifier les autorisations du navigateur",
530
+ "system.ai.chat.message.voice_failed": "La reconnaissance vocale a échoué, veuillez réessayer plus tard.",
531
+ "system.ai.chat.message.attachments_uploaded": "a téléchargé {count} pièces jointes",
532
+ "system.ai.chat.message.attachment_upload_failed": "Échec du téléchargement de la pièce jointe",
533
+ "system.ai.chat.message.attachment_limit": "Téléchargez jusqu'à {count} pièces jointes",
534
+ "system.ai.chat.message.attachment_unsupported": "La pièce jointe \"{name}\" n'est pas encore prise en charge et a été ignorée",
535
+ "system.ai.chat.message.attachment_too_large": "La pièce jointe \"{name}\" dépasse {size}Mo et a été ignorée",
536
+ "system.ai.chat.message.attachment_remaining": "Vous pouvez sélectionner jusqu'à {count} pièces jointes, qui ont été automatiquement interceptées",
537
+ "system.ai.chat.message.action_canceled": "Opération annulée",
538
+ "system.ai.chat.message.conversation_created": "Nouvelle session créée",
539
+ "system.ai.chat.message.empty_stream": "La réponse de streaming de l'assistant IA est vide",
540
+ "system.ai.chat.message.incomplete_stream": "La réponse de streaming de l'assistant IA n'est pas renvoyée complètement",
541
+ "system.ai.chat.message.request_failed": "La demande d'assistant IA a échoué",
542
+ "system.ai.chat.message.updated_and_regenerated": "mis à jour et régénéré",
543
+ "system.ai.chat.message.update_failed": "Échec de la mise à jour du message",
544
+ "system.ai.chat.message.message_copied": "Message copié",
545
+ "system.ai.chat.message.message_deleted": "Message supprimé",
546
+ "system.ai.chat.message.local_retry_missing": "Aucun message local trouvé à renvoyer",
584
547
  "system.ai.chat.message.resent": "Renvoyer",
585
- "system.ai.chat.message.retryFailedOnly": "Seuls les messages dont l'envoi a échoué peuvent être renvoyés.",
548
+ "system.ai.chat.message.retry_failed_only": "Seuls les messages dont l'envoi a échoué peuvent être renvoyés.",
586
549
  "system.ai.chat.message.regenerated": "Régénéré",
587
- "system.ai.chat.message.regenerateFailed": "Échec de la régénération",
588
- "system.ai.chat.message.branchCreated": "Session de branche créée",
589
- "system.ai.chat.message.speechUnsupported": "Le navigateur actuel ne prend pas en charge la lecture à haute voix",
590
- "system.ai.chat.message.conversationRenamed": "Session renommée",
591
- "system.ai.chat.message.conversationDeleted": "Séance supprimée",
550
+ "system.ai.chat.message.regenerate_failed": "Échec de la régénération",
551
+ "system.ai.chat.message.branch_created": "Session de branche créée",
552
+ "system.ai.chat.message.speech_unsupported": "Le navigateur actuel ne prend pas en charge la lecture à haute voix",
553
+ "system.ai.chat.message.conversation_renamed": "Session renommée",
554
+ "system.ai.chat.message.conversation_deleted": "Séance supprimée",
592
555
  "system.ai.chat.message.thinking": "compile les réponses",
593
- "system.ai.chat.dialog.confirmDeleteMessage": "Confirmer pour supprimer le message actuel ?",
594
- "system.ai.chat.dialog.confirmResendMessage": "Confirmer pour renvoyer le message actuel ?",
595
- "system.ai.chat.dialog.confirmRegenerateMessage": "La régénération écrasera le message actuel",
596
- "system.ai.chat.dialog.renameTitle": "Renommer la session",
597
- "system.ai.chat.dialog.renameDescription": "Veuillez saisir un nouveau nom de session\nNom actuel : {title}",
598
- "system.ai.chat.dialog.deleteTitle": "Supprimer la session",
599
- "system.ai.chat.dialog.deleteDescription": "Supprimer cette session ?\nNom de la session : {title}",
600
- "system.codegen.action.batchGenerate": "Génération par lots",
601
- "system.codegen.action.batchRestore": "Restauration par lots",
602
- "system.codegen.action.confirmRestore": "Confirmer la restauration",
603
- "system.codegen.action.generate": "générer",
604
- "system.codegen.action.recentTask": "Tâches récentes",
605
- "system.codegen.action.restore": "Restaurer",
606
- "system.codegen.value.on": "sur",
607
- "system.codegen.value.off": "Fermer",
608
- "system.codegen.value.generate": "générer",
609
- "system.codegen.value.skip": "Sauter",
610
- "system.codegen.value.lazy": "Chargement paresseux",
611
- "system.codegen.value.eager": "Tout charger",
612
- "system.codegen.pageType.normal": "Forme ordinaire",
613
- "system.codegen.pageType.tree": "Table arborescente",
614
- "system.codegen.pageType.treeLazy": "Chargement paresseux en forme d'arbre",
615
- "system.codegen.pageType.leftTree": "Arbre gauche table droite",
616
- "system.codegen.source.static": "données statiques",
617
- "system.codegen.source.dict": "Dictionnaire",
618
- "system.codegen.source.table": "Fiche technique",
619
- "system.codegen.operator.eq": "est égal à",
620
- "system.codegen.operator.like": "Correspondance floue",
621
- "system.codegen.operator.between": "intervalle",
622
- "system.codegen.component.input": "Saisie de texte",
623
- "system.codegen.component.password": "Saisie du mot de passe",
624
- "system.codegen.component.textarea": "Plusieurs lignes de texte",
625
- "system.codegen.component.inputNumber": "Saisie numérique",
626
- "system.codegen.component.segmented": "Sélection des segments\ncommutateur",
627
- "system.codegen.component.switch": "Case à cocher",
628
- "system.codegen.component.checkbox": "Checkbox",
629
- "system.codegen.component.select": "sélection déroulante",
630
- "system.codegen.component.selectShort": "liste déroulante",
631
- "system.codegen.component.dict": "Sélection du dictionnaire",
632
- "system.codegen.component.radioGroup": "Groupe radio",
633
- "system.codegen.component.checkboxGroup": "Groupe à sélection multiple",
634
- "system.codegen.component.treeSelect": "Sélection de l'arborescence",
635
- "system.codegen.component.datePicker": "Sélection des dates",
636
- "system.codegen.component.cron": "Expression Cron",
637
- "system.codegen.component.transfer": "boîte à navette",
638
- "system.codegen.component.imageUpload": "Téléchargement d'une seule image",
639
- "system.codegen.component.imagesUpload": "Téléchargement de plusieurs images",
640
- "system.codegen.component.fileUpload": "Téléchargement d'un seul fichier",
641
- "system.codegen.component.filesUpload": "Téléchargement de plusieurs fichiers",
642
- "system.codegen.component.richText": "Texte enrichi",
643
- "system.codegen.component.dynamicList": "liste dynamique",
644
- "system.codegen.component.kvList": "liste de valeurs clés",
645
- "system.codegen.component.slot": "Emplacement personnalisé",
646
- "system.codegen.component.text": "texte",
647
- "system.codegen.component.tree": "forme d'arbre",
648
- "system.codegen.component.image": "Image",
649
- "system.codegen.component.money": "Montant",
650
- "system.codegen.component.date": "Date",
651
- "system.codegen.validation.tableRequired": "Veuillez sélectionner la table professionnelle",
652
- "system.codegen.validation.moduleRequired": "Veuillez saisir un module métier valide",
653
- "system.codegen.validation.commentLength": "La description de la table métier ne peut pas dépasser 128 caractères",
654
- "system.codegen.validation.parentMenuRequired": "Veuillez sélectionner un menu parent",
655
- "system.codegen.validation.pageTypeRequired": "Veuillez sélectionner le type de page",
656
- "system.codegen.validation.parentColumnRequired": "Veuillez sélectionner le champ du nœud parent",
657
- "system.codegen.validation.treeLabelRequired": "Veuillez sélectionner un champ d'affichage de l'arborescence",
658
- "system.codegen.validation.remarkLength": "La note ne peut pas dépasser 500 caractères",
659
- "system.codegen.validation.leftTreeTableRequired": "Veuillez sélectionner le tableau de données de l'arborescence de gauche",
660
- "system.codegen.validation.filterColumnRequired": "Veuillez sélectionner un champ de filtre",
661
- "system.codegen.validation.leftTreeParentRequired": "Veuillez sélectionner le champ parent de l'arborescence de gauche",
662
- "system.codegen.validation.leftTreeLabelRequired": "Veuillez sélectionner le champ d'affichage de l'arborescence de gauche",
663
- "system.codegen.validation.leftTreeValueRequired": "Veuillez sélectionner le champ de valeur de l'arborescence de gauche",
664
- "system.codegen.i18n.field.translations": "Descriptions dans les langues non principales",
665
- "system.codegen.i18n.action.editColumn": "Modifier les descriptions des champs dans les langues non principales",
666
- "system.codegen.i18n.status.complete": "Rempli",
667
- "system.codegen.i18n.status.missing": "est manquant",
668
- "system.codegen.i18n.message.missing": "Vous devez renseigner avant la génération formelle : {locales}",
669
- "system.codegen.i18n.placeholder.comment": "Source chinois : {source}",
670
- "system.codegen.i18n.placeholder.leftTreeComment": "Zuo Shuyuan Chinois : {source}",
671
- "system.codegen.i18n.tooltip.table": "Conserve les descriptions dans les langues non principales pour les pages, menus et fichiers de langue générés. Les configurations manquantes peuvent être temporairement stockées et doivent être complètes une fois officiellement générées.",
672
- "system.codegen.table.title.create": "Ajout de la configuration de la table de génération de code",
673
- "system.codegen.table.title.edit": "Modifier la configuration de la table de génération de code",
674
- "system.codegen.table.field.name": "Nom de la table d'entreprise",
675
- "system.codegen.table.field.comment": "Description de la table métier",
676
- "system.codegen.table.field.businessModule": "Module métier",
677
- "system.codegen.table.field.parentMenu": "Menu parent",
678
- "system.codegen.table.field.pageType": "Type de page",
679
- "system.codegen.table.field.parentColumn": "Champ du nœud parent",
680
- "system.codegen.table.field.treeLabelColumn": "champs d'affichage de l'arborescence",
681
- "system.codegen.table.field.leftTreeTable": "Tableau de données Zuoshu",
682
- "system.codegen.table.field.leftTreeComment": "Description de l'arborescence de gauche\nChamp de filtre",
683
- "system.codegen.table.field.filterColumn": "Filter column",
684
- "system.codegen.table.field.leftTreeParentColumn": "Champ parent de l'arborescence de gauche",
685
- "system.codegen.table.field.leftTreeLabelColumn": "Champ d'affichage de l'arborescence de gauche",
686
- "system.codegen.table.field.leftTreeValueColumn": "Champ de valeur de l'arborescence de gauche",
687
- "system.codegen.table.field.leftTreeLazy": "Chargement du paresseux gauche",
688
- "system.codegen.table.field.genBackend": "Générer un backend",
689
- "system.codegen.table.field.genFrontend": "Générer un frontal",
690
- "system.codegen.table.field.genSql": "Générer SQL\nStatut",
691
- "system.codegen.table.field.status": "Status",
692
- "system.codegen.table.field.remark": "Remarques",
693
- "system.codegen.table.field.createdAt": "Heure de création",
694
- "system.codegen.table.placeholder.databaseTable": "Veuillez sélectionner une table de base de données",
695
- "system.codegen.table.placeholder.comment": "est automatiquement ressorti après sélection de la table métier et peut être modifié.",
696
- "system.codegen.table.placeholder.businessModule": "Veuillez sélectionner le module métier",
697
- "system.codegen.table.placeholder.parentMenu": "Veuillez choisir de générer le menu de montage de page",
698
- "system.codegen.table.placeholder.parentColumn": "Veuillez sélectionner le champ du nœud parent",
699
- "system.codegen.table.placeholder.treeLabelColumn": "Veuillez sélectionner un champ d'affichage de l'arborescence",
700
- "system.codegen.table.placeholder.leftTreeTable": "Veuillez sélectionner le tableau de données de l'arborescence de gauche",
701
- "system.codegen.table.placeholder.leftTreeComment": "est automatiquement affiché après avoir sélectionné la table de données de l'arborescence de gauche et peut être modifié.",
702
- "system.codegen.table.placeholder.filterColumn": "Veuillez sélectionner le champ de filtre de table actuel",
703
- "system.codegen.table.placeholder.leftTreeParentColumn": "Veuillez sélectionner le champ parent de l'arborescence de gauche",
704
- "system.codegen.table.placeholder.leftTreeLabelColumn": "Veuillez sélectionner le champ d'affichage de l'arborescence de gauche",
705
- "system.codegen.table.placeholder.leftTreeValueColumn": "Veuillez sélectionner le champ de valeur de l'arborescence de gauche",
706
- "system.codegen.table.placeholder.remark": "Veuillez saisir des remarques",
707
- "system.codegen.table.tooltip.name": "Sélectionnez la table de base de données source pour la génération de code ; la même table ne peut pas être configurée à plusieurs reprises.",
708
- "system.codegen.table.tooltip.comment": "Description chinoise de l'entreprise, utilisée pour les titres de menu Proto, backend, frontend et chinois.",
709
- "system.codegen.table.tooltip.businessModule": "Le nom du module et de la table déterminent ensemble les chemins du proto, du service, de l'API et de la page.",
710
- "system.codegen.table.tooltip.parentMenu": "Sélectionnez le répertoire de montage pour générer la page ; synchroniser les autorisations des menus et des boutons lorsque les conditions de génération sont remplies.",
711
- "system.codegen.table.tooltip.pageType": "Sélectionnez une table paginée, une table arborescente, une table arborescente à chargement paresseux ou une disposition de table arborescente gauche droite.",
712
- "system.codegen.table.tooltip.parentColumn": "Champ de la table arborescente pointant vers l'enregistrement parent, tel que parent_id.",
713
- "system.codegen.table.tooltip.treeLabelColumn": "Le champ de texte affiché par le nœud de l'arborescence, tel que le nom.",
714
- "system.codegen.table.tooltip.leftTreeTable": "La table source de données de l'arborescence de gauche.",
715
- "system.codegen.table.tooltip.leftTreeComment": "Le titre chinois de l'arborescence de gauche n'affecte pas l'interface et le chemin du fichier.",
716
- "system.codegen.table.tooltip.filterColumn": "Le champ de requête associé à la valeur du nœud d'arborescence de gauche dans la table métier actuelle.",
717
- "system.codegen.table.tooltip.leftTreeParentColumn": "Champ dans la table source de l'arborescence de gauche pointant vers le nœud parent.",
718
- "system.codegen.table.tooltip.leftTreeLabelColumn": "Le champ de texte affiché par le nœud d'arborescence de gauche.",
719
- "system.codegen.table.tooltip.leftTreeValueColumn": "Le champ de valeur unique transmis par le nœud d'arborescence de gauche à la liste de droite.",
720
- "system.codegen.table.tooltip.leftTreeLazy": "Demande uniquement les enfants du nœud actuel lors du développement.",
721
- "system.codegen.table.tooltip.genBackend": "Générer un proto, un backend Biz, un service et un code d'enregistrement.",
722
- "system.codegen.table.tooltip.genFrontend": "Générez l'API front-end, les pages et les fichiers de langue dans les sept langues.",
723
- "system.codegen.table.tooltip.genSql": "Synchronisez les menus de page, les autorisations des boutons et leurs traductions dans les sept langues.",
724
- "system.codegen.table.tooltip.status": "La configuration désactivée peut uniquement être visualisée ; il sera automatiquement généré après une génération réussie.",
725
- "system.codegen.table.tooltip.remark": "est uniquement destiné au personnel de maintenance et ne participe pas à la génération de noms.",
726
- "system.codegen.table.value.disabledModule": "{module} (désactivé)",
727
- "system.codegen.table.action.columns": "Configuration du terrain",
728
- "system.codegen.table.action.proto": "Configuration du prototype",
729
- "system.codegen.table.action.pagePreview": "Aperçu de la page",
730
- "system.codegen.table.action.codePreview": "Aperçu du code",
731
- "system.codegen.table.message.selectGenerate": "Veuillez vérifier l'élément généré",
732
- "system.codegen.table.message.disabled": "Configuration de la table de génération de codes {name} Désactivé",
733
- "system.codegen.table.message.selectRestore": "Veuillez sélectionner une entrée de génération de code qui dispose d'un instantané de restauration disponible",
734
- "system.codegen.table.message.restoreSuccess": "Restaurer le résultat de la génération de code avec succès",
735
- "system.codegen.table.message.createSuccess": "Configuration de la nouvelle table de génération de code réussie",
736
- "system.codegen.table.message.updateSuccess": "Modification réussie de la configuration de la table de génération de code",
737
- "system.codegen.table.message.selectDelete": "Veuillez cocher pour supprimer l'élément",
738
- "system.codegen.table.message.deleteCanceled": "Configuration de la table de génération de code non supprimée",
739
- "system.codegen.table.message.deleteSuccess": "Supprimer avec succès la configuration de la table de génération de code",
740
- "system.codegen.table.dialog.generateOne": "Confirmez la table métier générée : {name} ?",
741
- "system.codegen.table.dialog.generateBatch": "Confirmer pour générer {count} tables métier dans l'ordre de vérification ?",
742
- "system.codegen.table.dialog.restoreOne": "Confirmez pour restaurer la table métier : {name} ? Les fichiers de construction, les menus de pages et les autorisations des boutons seront restaurés à leur état d'avant la construction.",
743
- "system.codegen.table.dialog.restoreBatch": "Confirmer la restauration par lots des tables métier {count} ? Les fichiers partagés générés par lots doivent être restaurés par lots.",
744
- "system.codegen.table.dialog.deleteOne": "Confirmer la suppression de la table métier : {name} ?",
745
- "system.codegen.table.dialog.deleteBatch": "Confirmer pour supprimer les configurations {count} sélectionnées ?\nChamp de base de données",
746
- "system.codegen.column.title.databaseFields": "Configuration du champ",
747
- "system.codegen.column.title.workspace": "Configuration du champ",
748
- "system.codegen.column.title.workspaceWithTable": "{table}\nOption",
749
- "system.codegen.column.title.options": "{scope} - {column}",
750
- "system.codegen.column.title.optionWarning": "avertissement de configuration des options\nChamp de base de données",
751
- "system.codegen.column.field.databaseColumn": "Database column",
752
- "system.codegen.column.field.comment": "Description du champ",
753
- "system.codegen.column.field.query": "Requête\nListe",
754
- "system.codegen.column.field.list": "Formulaire",
755
- "system.codegen.column.field.form": "Form",
756
- "system.codegen.column.field.selectionMode": "Sélectionner le mode",
757
- "system.codegen.column.field.source": "Source",
758
- "system.codegen.column.field.dictionary": "Dictionnaire",
759
- "system.codegen.column.field.activeValue": "valeur d'activation",
760
- "system.codegen.column.field.inactiveValue": "valeur de clôture",
761
- "system.codegen.column.field.dataTable": "Fiche technique",
762
- "system.codegen.column.field.treeParent": "champ parent de l'arborescence",
763
- "system.codegen.column.field.loadMode": "Méthode de chargement",
764
- "system.codegen.column.field.treeLabel": "champs d'affichage de l'arborescence",
765
- "system.codegen.column.field.labelField": "Champ d'étiquette",
766
- "system.codegen.column.field.treeValue": "champ de valeur de l'arborescence",
767
- "system.codegen.column.field.valueField": "Champ de valeur",
768
- "system.codegen.column.field.staticData": "données statiques",
769
- "system.codegen.column.scope.query": "Requête\nListe",
770
- "system.codegen.column.scope.list": "Formulaire",
771
- "system.codegen.column.scope.form": "Form",
772
- "system.codegen.column.value.tableName": "Nom de la table : {name}",
773
- "system.codegen.column.value.tableComment": "Annotation du tableau : {comment}",
774
- "system.codegen.column.value.queryCount": "Requête de l'élément {count}",
775
- "system.codegen.column.value.listCount": "Liste {count} élément",
776
- "system.codegen.column.value.formCount": "formulaire {count} entrée",
777
- "system.codegen.column.value.database": "Base de données",
778
- "system.codegen.column.value.primaryKey": "Clé primaire",
779
- "system.codegen.column.value.autoIncrement": "auto-incrémentation",
780
- "system.codegen.column.value.nullable": "Nullable",
781
- "system.codegen.column.value.notNull": "n'est pas vide",
782
- "system.codegen.column.value.required": "Obligatoire",
783
- "system.codegen.column.value.single": "Choix unique",
784
- "system.codegen.column.value.multiple": "Choix multiples",
785
- "system.codegen.column.value.lazyChildren": "Chargement paresseux des nœuds enfants",
786
- "system.codegen.column.placeholder.comment": "Veuillez saisir la description du champ",
787
- "system.codegen.column.placeholder.queryOperator": "Méthode de requête",
788
- "system.codegen.column.placeholder.queryComponent": "Composant de requête",
789
- "system.codegen.column.placeholder.listComponent": "Composant d'affichage",
790
- "system.codegen.column.placeholder.formComponent": "Composant d'entrée",
791
- "system.codegen.column.placeholder.source": "Sélectionnez la source",
792
- "system.codegen.column.placeholder.dictionary": "Sélectionner le dictionnaire",
793
- "system.codegen.column.placeholder.activeValue": "Sélectionnez la valeur d'activation",
794
- "system.codegen.column.placeholder.inactiveValue": "Sélectionnez la valeur de clôture",
795
- "system.codegen.column.placeholder.dataTable": "Sélectionner la table de données",
796
- "system.codegen.column.placeholder.treeParent": "Sélectionner le champ parent de l'arborescence",
797
- "system.codegen.column.placeholder.treeLabel": "Sélectionner les champs d'affichage de l'arborescence",
798
- "system.codegen.column.placeholder.labelField": "Sélectionner les champs d'affichage",
799
- "system.codegen.column.placeholder.treeValue": "Sélectionner le champ de valeur de l'arborescence",
800
- "system.codegen.column.placeholder.valueField": "Sélectionner le champ de valeur",
801
- "system.codegen.column.placeholder.optionLabel": "Afficher le texte",
802
- "system.codegen.column.placeholder.optionValue": "soumettre la valeur\nOptions",
803
- "system.codegen.column.action.options": "Options",
804
- "system.codegen.column.action.saveAndClose": "Enregistrer et fermer",
805
- "system.codegen.column.action.deleteStatic": "Supprimer les données statiques",
806
- "system.codegen.column.action.continueSave": "Continuer à enregistrer",
807
- "system.codegen.column.action.backToEdit": "Retour pour modifier",
808
- "system.codegen.column.message.empty": "Aucune configuration de champ pour l'instant",
809
- "system.codegen.column.message.selectRecord": "Veuillez d'abord choisir de générer des enregistrements",
810
- "system.codegen.column.message.emptyStatic": "Aucune donnée statique pour l'instant",
811
- "system.codegen.column.message.nameAndTypeRequired": "Le nom du champ et le type de base de données ne peuvent pas être vides\nLa source de l'option du champ est incohérente. Voulez-vous continuer à épargner ?",
812
- "system.codegen.column.dialog.inconsistentSource": "La source de l'option {scopes} dans le champ {column} est incohérente. Voulez-vous continuer à épargner ?",
813
- "system.codegen.column.tooltip.drag": "Tri par glisser-déposer",
814
- "system.codegen.column.tooltip.dragAria": "Glisser-déposer pour ajuster l'ordre des champs",
815
- "system.codegen.column.tooltip.multipleJsonOnly": "La sélection multiple ne prend en charge que les champs JSON",
816
- "system.codegen.column.tooltip.optionConfigured": "a été configuré et peut être enregistré directement ; il peut être ouvert et modifié lorsqu'un écrasement est nécessaire.",
817
- "system.codegen.column.tooltip.configureOption": "Options de configuration\nLa configuration de l'option du champ n'a pas de composant correspondant\nConfiguration de commutateur incomplète pour dans le champ \nLa valeur ouverte et la valeur fermée du champ ne peuvent pas être identiques\nL'option du champ",
818
- "system.codegen.column.validation.optionComponentMissing": "La configuration de l'option {scope} du champ {column} n'a pas de composant correspondant",
819
- "system.codegen.column.validation.switchIncomplete": "Configuration de commutateur incomplète pour {scope} pour le champ {column}",
820
- "system.codegen.column.validation.switchValuesSame": "Les valeurs d'activation et de désactivation de {scope} du champ {column} ne peuvent pas être identiques.",
821
- "system.codegen.column.validation.switchValuesUnsupported": "{column} ne peut pas configurer la valeur du commutateur\nLe champ {scope}",
822
- "system.codegen.column.validation.lazyTreeOnly": "字段 {column} 的{scope}仅树形选项支持懒加载",
823
- "system.codegen.column.validation.treeTableOnly": "L'option d'arborescence {scope} pour le champ {column} ne peut utiliser que la source de la table de données.",
824
- "system.codegen.column.validation.sourceIncomplete": "Configuration de la source d'option {scope} incomplète pour le champ {column}",
825
- "system.codegen.column.validation.staticIncomplete": "L'option {scope} du champ {column} nécessite au moins une donnée statique complète",
826
- "system.codegen.column.validation.tableFieldsIncomplete": "La configuration du champ d'option de table de données {scope} pour le champ {column} est incomplète.",
827
- "system.codegen.proto.trigger.crud": "Page CRUD",
828
- "system.codegen.proto.trigger.pageTree": "Arborescence des pages",
829
- "system.codegen.proto.trigger.leftTree": "Arbre gauche table droite",
830
- "system.codegen.proto.trigger.entityOption": "Options d'entité\nOptions du champ",
831
- "system.codegen.proto.trigger.fieldOption": "état du champ",
832
- "system.codegen.proto.trigger.fieldStatus": "Field status",
833
- "system.codegen.proto.apiKind.crud": "Ajouter, supprimer, modifier et vérifier\nListe",
834
- "system.codegen.proto.apiKind.list": "Options",
835
- "system.codegen.proto.apiKind.option": "Options",
836
- "system.codegen.proto.apiKind.tree": "forme d'arbre\nStatut",
837
- "system.codegen.proto.apiKind.status": "Status",
838
- "system.codegen.proto.field.triggerType": "source de déclenchement\nType d'interface",
839
- "system.codegen.proto.field.apiKind": "API type",
840
- "system.codegen.proto.field.capability": "Capacités du prototype",
841
- "system.codegen.proto.field.generateSetting": "Paramètres de construction",
842
- "system.codegen.proto.field.methodComment": "Description de la méthode",
843
- "system.codegen.proto.field.methodName": "nom de la méthode",
844
- "system.codegen.proto.field.protoPath": "Chemin du proto",
845
- "system.codegen.proto.field.serviceComment": "Description du service",
846
- "system.codegen.proto.field.serviceName": "Nom du service",
847
- "system.codegen.proto.field.parentColumn": "Champ du nœud parent",
848
- "system.codegen.proto.field.labelColumn": "Champs d'affichage\nChamp de valeur",
849
- "system.codegen.proto.field.valueColumn": "Champ d'état",
850
- "system.codegen.proto.field.statusColumn": "Status column",
851
- "system.codegen.proto.field.loadMode": "Méthode de chargement",
852
- "system.codegen.proto.action.configure": "Configuration",
853
- "system.codegen.proto.action.generateApi": "Générer une interface",
854
- "system.codegen.proto.status.exists": "existe déjà",
855
- "system.codegen.proto.status.missing": "à générer",
856
- "system.codegen.proto.title.config": "{method} - {kind} Configuration",
857
- "system.codegen.proto.title.workspace": "Configuration du prototype",
858
- "system.codegen.proto.title.workspaceWithTable": "{table} Configuration du protocole",
859
- "system.codegen.proto.placeholder.parentColumn": "Veuillez sélectionner le champ du nœud parent",
860
- "system.codegen.proto.placeholder.labelColumn": "Veuillez sélectionner un champ à afficher",
861
- "system.codegen.proto.placeholder.valueColumn": "Veuillez sélectionner un champ de valeur",
862
- "system.codegen.proto.placeholder.statusColumn": "Veuillez sélectionner un champ de statut",
863
- "system.codegen.proto.message.configureFirst": "Veuillez d'abord compléter la configuration requise",
864
- "system.codegen.proto.message.saveSuccess": "Enregistrer la configuration Proto avec succès",
865
- "system.codegen.progress.title": "Progression de la génération de code",
866
- "system.codegen.progress.value.current": "Actuel : {table}",
867
- "system.codegen.progress.value.steps": "Étapes {completed} / {total}",
868
- "system.codegen.progress.value.createdAt": "créé en {time}",
869
- "system.codegen.progress.value.finishedAt": "Terminé en {time}",
870
- "system.codegen.progress.status.pending": "En attente",
871
- "system.codegen.progress.status.running": "Génération",
872
- "system.codegen.progress.status.succeeded": "Terminé",
873
- "system.codegen.progress.status.failed": "a échoué",
874
- "system.codegen.progress.action.copyError": "Copier le message d'erreur",
875
- "system.codegen.progress.action.reload": "Recharger",
876
- "system.codegen.progress.field.step": "Étapes",
877
- "system.codegen.progress.field.result": "résultats\nSortie",
878
- "system.codegen.progress.field.output": "Output",
879
- "system.codegen.progress.message.unavailableTitle": "La tâche n'est pas disponible",
880
- "system.codegen.progress.message.unavailable": "La tâche a expiré, n'existe pas ou n'a pas de droits d'accès",
881
- "system.codegen.progress.message.copied": "Message d'erreur copié",
882
- "system.codegen.progress.message.copyFailed": "Échec de la copie du message d'erreur",
883
- "system.codegen.preview.field.path": "chemin du fichier",
884
- "system.codegen.preview.field.action": "Opérations sur les fichiers",
885
- "system.codegen.preview.field.message": "Descriptif",
886
- "system.codegen.preview.field.passwordStrength": "Astuce de force",
887
- "system.codegen.preview.status.exists": "existe déjà",
888
- "system.codegen.preview.status.pendingCreate": "à créer",
889
- "system.codegen.preview.title.code": "Aperçu du code",
890
- "system.codegen.preview.title.workspace": "{table}Aperçu du code",
891
- "system.codegen.preview.title.create": "Ajout de {resource}",
892
- "system.codegen.preview.title.edit": "Éditeur{resource}",
893
- "system.codegen.preview.title.categoryList": "Liste des catégories",
894
- "system.codegen.preview.title.deleteConfirm": "Supprimer la confirmation",
895
- "system.codegen.preview.title.dataList": "Liste de données",
896
- "system.codegen.preview.dialog.confirmDelete": "Êtes-vous sûr de supprimer les données {count} sélectionnées ?",
897
- "system.codegen.preview.placeholder.customSlot": "Contenu d'emplacement personnalisé",
898
- "system.codegen.preview.placeholder.input": "Veuillez saisir {field}",
899
- "system.codegen.preview.placeholder.select": "Veuillez sélectionner {field}",
900
- "system.codegen.preview.validation.required": "{field} ne peut pas être vide",
901
- "system.codegen.preview.value.custom": "Personnalisé",
902
- "system.codegen.preview.value.category": "Classement\nDonnées",
903
- "system.codegen.preview.value.data": "record",
904
- "system.codegen.preview.value.enableField": "Activer {field}",
905
- "system.codegen.preview.value.topLevel": "Nœud de niveau supérieur",
906
- "system.codegen.preview.value.available": "Facultatif",
907
- "system.codegen.preview.value.selected": "sélectionné\nClé",
908
- "system.codegen.preview.value.key": "Valeur",
909
- "system.codegen.preview.value.value": "Value",
910
- "system.codegen.preview.value.rangeSeparator": "à",
911
- "system.codegen.preview.value.option": "{source} option {index}",
912
- "system.codegen.preview.message.emptyFiles": "Aucun fichier d'aperçu disponible pour l'instant",
913
- "system.codegen.preview.message.noPreviewFiles": "La configuration actuelle ne génère pas de fichier prévisualisable",
914
- "system.codegen.preview.message.loadFailed": "L'aperçu du code n'a pas pu être chargé, veuillez vérifier la configuration de build",
915
- "system.codegen.preview.message.emptyPage": "Aucune configuration de page pour l'instant",
916
- "system.codegen.preview.message.createSuccess": "ajouté avec succès",
917
- "system.codegen.preview.message.updateSuccess": "modifié avec succès",
918
- "system.codegen.preview.message.deleteSuccess": "Suppression réussie",
919
- "system.codegen.preview.message.missingTranslations": "doit être complété avant la génération formelle : {items}",
920
- "system.codegen.preview.value.listSeparator": ",",
921
- "system.projectDoc.title.navigation": "Répertoire des documents du projet",
922
- "system.projectDoc.placeholder.search": "Rechercher un élément ou un chemin",
923
- "system.projectDoc.message.noMatch": "Aucun document correspondant pour l'instant",
924
- "system.projectDoc.message.empty": "Aucun document de projet pour l'instant",
925
- "system.projectDoc.message.select": "Veuillez sélectionner un document de projet",
926
- "system.projectDoc.message.uncollected": "Document de référence non collecté : {path}",
927
- "system.projectDoc.value.updatedAt": "mis à jour depuis {time}"
556
+ "system.ai.chat.dialog.confirm_delete_message": "Confirmer pour supprimer le message actuel ?",
557
+ "system.ai.chat.dialog.confirm_resend_message": "Confirmer pour renvoyer le message actuel ?",
558
+ "system.ai.chat.dialog.confirm_regenerate_message": "La régénération écrasera le message actuel",
559
+ "system.ai.chat.dialog.rename_title": "Renommer la session",
560
+ "system.ai.chat.dialog.rename_description": "Veuillez saisir un nouveau nom de session\nNom actuel : {title}",
561
+ "system.ai.chat.dialog.delete_title": "Supprimer la session",
562
+ "system.ai.chat.dialog.delete_description": "Supprimer cette session ?\nNom de la session : {title}",
563
+ "system.code.gen.action.batch_generate": "Génération par lots",
564
+ "system.code.gen.action.batch_restore": "Restauration par lots",
565
+ "system.code.gen.action.confirm_restore": "Confirmer la restauration",
566
+ "system.code.gen.action.generate": "générer",
567
+ "system.code.gen.action.recent_task": "Tâches récentes",
568
+ "system.code.gen.action.restore": "Restaurer",
569
+ "system.code.gen.value.on": "sur",
570
+ "system.code.gen.value.off": "Fermer",
571
+ "system.code.gen.value.generate": "générer",
572
+ "system.code.gen.value.skip": "Sauter",
573
+ "system.code.gen.value.lazy": "Chargement paresseux",
574
+ "system.code.gen.value.eager": "Tout charger",
575
+ "system.code.gen.page_type.normal": "Formulaire classique",
576
+ "system.code.gen.page_type.tree": "Table arborescente",
577
+ "system.code.gen.page_type.tree_lazy": "Chargement paresseux en forme d'arbre",
578
+ "system.code.gen.page_type.left_tree": "Arbre à gauche, tableau à droite",
579
+ "system.code.gen.source.static": "données statiques",
580
+ "system.code.gen.source.dict": "Dictionnaire",
581
+ "system.code.gen.source.table": "Fiche technique",
582
+ "system.code.gen.operator.eq": "est égal à",
583
+ "system.code.gen.operator.like": "Correspondance floue",
584
+ "system.code.gen.operator.between": "intervalle",
585
+ "system.code.gen.component.input": "Saisie de texte",
586
+ "system.code.gen.component.password": "Saisie du mot de passe",
587
+ "system.code.gen.component.textarea": "Plusieurs lignes de texte",
588
+ "system.code.gen.component.input_number": "Saisie numérique",
589
+ "system.code.gen.component.segmented": "Sélection segmentée",
590
+ "system.code.gen.component.switch": "Case à cocher",
591
+ "system.code.gen.component.checkbox": "Case à cocher",
592
+ "system.code.gen.component.select": "sélection déroulante",
593
+ "system.code.gen.component.select_short": "liste déroulante",
594
+ "system.code.gen.component.dict": "Sélection du dictionnaire",
595
+ "system.code.gen.component.radio_group": "Groupe radio",
596
+ "system.code.gen.component.checkbox_group": "Groupe à sélection multiple",
597
+ "system.code.gen.component.tree_select": "Sélection de l'arborescence",
598
+ "system.code.gen.component.date_picker": "Sélection des dates",
599
+ "system.code.gen.component.cron": "Expression Cron",
600
+ "system.code.gen.component.transfer": "boîte à navette",
601
+ "system.code.gen.component.image_upload": "Téléchargement d'une seule image",
602
+ "system.code.gen.component.images_upload": "Téléchargement de plusieurs images",
603
+ "system.code.gen.component.file_upload": "Téléchargement d'un seul fichier",
604
+ "system.code.gen.component.files_upload": "Téléchargement de plusieurs fichiers",
605
+ "system.code.gen.component.rich_text": "Texte enrichi",
606
+ "system.code.gen.component.dynamic_list": "liste dynamique",
607
+ "system.code.gen.component.kv_list": "liste de valeurs clés",
608
+ "system.code.gen.component.slot": "Emplacement personnalisé",
609
+ "system.code.gen.component.text": "texte",
610
+ "system.code.gen.component.tree": "forme d'arbre",
611
+ "system.code.gen.component.image": "Image",
612
+ "system.code.gen.component.money": "Montant",
613
+ "system.code.gen.component.date": "Date",
614
+ "system.code.gen.validation.table_required": "Veuillez sélectionner la table métier",
615
+ "system.code.gen.validation.module_required": "Veuillez saisir un module métier valide",
616
+ "system.code.gen.validation.comment_length": "La description de la table métier ne peut pas dépasser 128 caractères",
617
+ "system.code.gen.validation.parent_menu_required": "Veuillez sélectionner un menu parent",
618
+ "system.code.gen.validation.page_type_required": "Veuillez sélectionner le type de page",
619
+ "system.code.gen.validation.parent_column_required": "Veuillez sélectionner le champ du nœud parent",
620
+ "system.code.gen.validation.tree_label_required": "Veuillez sélectionner un champ d'affichage de l'arborescence",
621
+ "system.code.gen.validation.remark_length": "La note ne peut pas dépasser 500 caractères",
622
+ "system.code.gen.validation.left_tree_table_required": "Veuillez sélectionner le tableau de données de l'arborescence de gauche",
623
+ "system.code.gen.validation.filter_column_required": "Veuillez sélectionner un champ de filtre",
624
+ "system.code.gen.validation.left_tree_parent_required": "Veuillez sélectionner le champ parent de l'arborescence de gauche",
625
+ "system.code.gen.validation.left_tree_label_required": "Veuillez sélectionner le champ d'affichage de l'arborescence de gauche",
626
+ "system.code.gen.validation.left_tree_value_required": "Veuillez sélectionner le champ de valeur de l'arborescence de gauche",
627
+ "system.code.gen.i18n.field.translations": "Descriptions dans les langues non principales",
628
+ "system.code.gen.i18n.action.edit_column": "Modifier les descriptions des champs dans les langues non principales",
629
+ "system.code.gen.i18n.status.complete": "Rempli",
630
+ "system.code.gen.i18n.status.missing": "Manquant",
631
+ "system.code.gen.i18n.message.missing": "Vous devez renseigner avant la génération formelle : {locales}",
632
+ "system.code.gen.i18n.placeholder.comment": "Texte source chinois : {source}",
633
+ "system.code.gen.i18n.placeholder.left_tree_comment": "Texte chinois de l’arbre gauche : {source}",
634
+ "system.code.gen.i18n.tooltip.table": "Conserve les descriptions dans les langues non principales pour les pages, menus et fichiers de langue générés. Les configurations manquantes peuvent être temporairement stockées et doivent être complètes une fois officiellement générées.",
635
+ "system.code.gen.table.title.create": "Ajout de la configuration de la table de génération de code",
636
+ "system.code.gen.table.title.edit": "Modifier la configuration de la table de génération de code",
637
+ "system.code.gen.table.field.name": "Nom de la table métier",
638
+ "system.code.gen.table.field.comment": "Description de la table métier",
639
+ "system.code.gen.table.field.business_module": "Module métier",
640
+ "system.code.gen.table.field.parent_menu": "Menu parent",
641
+ "system.code.gen.table.field.page_type": "Type de page",
642
+ "system.code.gen.table.field.parent_column": "Champ du nœud parent",
643
+ "system.code.gen.table.field.tree_label_column": "champs d'affichage de l'arborescence",
644
+ "system.code.gen.table.field.left_tree_table": "Table de données de l’arbre gauche",
645
+ "system.code.gen.table.field.left_tree_comment": "Description de l’arbre gauche",
646
+ "system.code.gen.table.field.filter_column": "Colonne de filtrage",
647
+ "system.code.gen.table.field.left_tree_parent_column": "Champ parent de l'arborescence de gauche",
648
+ "system.code.gen.table.field.left_tree_label_column": "Champ d'affichage de l'arborescence de gauche",
649
+ "system.code.gen.table.field.left_tree_value_column": "Champ de valeur de l'arborescence de gauche",
650
+ "system.code.gen.table.field.left_tree_lazy": "Chargement du paresseux gauche",
651
+ "system.code.gen.table.field.gen_backend": "Générer un backend",
652
+ "system.code.gen.table.field.gen_frontend": "Générer un frontal",
653
+ "system.code.gen.table.field.gen_sql": "Générer SQL",
654
+ "system.code.gen.table.field.status": "Statut",
655
+ "system.code.gen.table.field.remark": "Remarques",
656
+ "system.code.gen.table.field.created_at": "Heure de création",
657
+ "system.code.gen.table.placeholder.database_table": "Veuillez sélectionner une table de base de données",
658
+ "system.code.gen.table.placeholder.comment": "Chargée automatiquement depuis la table sélectionnée et modifiable",
659
+ "system.code.gen.table.placeholder.business_module": "Veuillez sélectionner le module métier",
660
+ "system.code.gen.table.placeholder.parent_menu": "Veuillez choisir de générer le menu de montage de page",
661
+ "system.code.gen.table.placeholder.parent_column": "Veuillez sélectionner le champ du nœud parent",
662
+ "system.code.gen.table.placeholder.tree_label_column": "Veuillez sélectionner un champ d'affichage de l'arborescence",
663
+ "system.code.gen.table.placeholder.left_tree_table": "Veuillez sélectionner le tableau de données de l'arborescence de gauche",
664
+ "system.code.gen.table.placeholder.left_tree_comment": "Chargée automatiquement depuis la table de l’arbre sélectionnée et modifiable",
665
+ "system.code.gen.table.placeholder.filter_column": "Veuillez sélectionner le champ de filtre de table actuel",
666
+ "system.code.gen.table.placeholder.left_tree_parent_column": "Veuillez sélectionner le champ parent de l'arborescence de gauche",
667
+ "system.code.gen.table.placeholder.left_tree_label_column": "Veuillez sélectionner le champ d'affichage de l'arborescence de gauche",
668
+ "system.code.gen.table.placeholder.left_tree_value_column": "Veuillez sélectionner le champ de valeur de l'arborescence de gauche",
669
+ "system.code.gen.table.placeholder.remark": "Veuillez saisir des remarques",
670
+ "system.code.gen.table.tooltip.name": "Sélectionnez la table de base de données source pour la génération de code ; la même table ne peut pas être configurée à plusieurs reprises.",
671
+ "system.code.gen.table.tooltip.comment": "Description chinoise de l'entreprise, utilisée pour les titres de menu Proto, backend, frontend et chinois.",
672
+ "system.code.gen.table.tooltip.business_module": "Le nom du module et de la table déterminent ensemble les chemins du proto, du service, de l'API et de la page.",
673
+ "system.code.gen.table.tooltip.parent_menu": "Sélectionnez le répertoire de montage pour générer la page ; synchroniser les autorisations des menus et des boutons lorsque les conditions de génération sont remplies.",
674
+ "system.code.gen.table.tooltip.page_type": "Sélectionnez une table paginée, une table arborescente, une table arborescente à chargement paresseux ou une disposition de table arborescente gauche droite.",
675
+ "system.code.gen.table.tooltip.parent_column": "Champ de la table arborescente pointant vers l'enregistrement parent, tel que parent_id.",
676
+ "system.code.gen.table.tooltip.tree_label_column": "Le champ de texte affiché par le nœud de l'arborescence, tel que le nom.",
677
+ "system.code.gen.table.tooltip.left_tree_table": "La table source de données de l'arborescence de gauche.",
678
+ "system.code.gen.table.tooltip.left_tree_comment": "Le titre chinois de l'arborescence de gauche n'affecte pas l'interface et le chemin du fichier.",
679
+ "system.code.gen.table.tooltip.filter_column": "Le champ de requête associé à la valeur du nœud d'arborescence de gauche dans la table métier actuelle.",
680
+ "system.code.gen.table.tooltip.left_tree_parent_column": "Champ dans la table source de l'arborescence de gauche pointant vers le nœud parent.",
681
+ "system.code.gen.table.tooltip.left_tree_label_column": "Le champ de texte affiché par le nœud d'arborescence de gauche.",
682
+ "system.code.gen.table.tooltip.left_tree_value_column": "Le champ de valeur unique transmis par le nœud d'arborescence de gauche à la liste de droite.",
683
+ "system.code.gen.table.tooltip.left_tree_lazy": "Demande uniquement les enfants du nœud actuel lors du développement.",
684
+ "system.code.gen.table.tooltip.gen_backend": "Générer un proto, un backend Biz, un service et un code d'enregistrement.",
685
+ "system.code.gen.table.tooltip.gen_frontend": "Générez l'API front-end, les pages et les fichiers de langue dans toutes les langues prises en charge.",
686
+ "system.code.gen.table.tooltip.gen_sql": "Synchronisez les menus de page, les autorisations des boutons et leurs traductions dans toutes les langues prises en charge.",
687
+ "system.code.gen.table.tooltip.status": "La configuration désactivée peut uniquement être visualisée ; il sera automatiquement généré après une génération réussie.",
688
+ "system.code.gen.table.tooltip.remark": "est uniquement destiné au personnel de maintenance et ne participe pas à la génération de noms.",
689
+ "system.code.gen.table.value.disabled_module": "{module} (désactivé)",
690
+ "system.code.gen.table.action.columns": "Configuration des champs",
691
+ "system.code.gen.table.action.proto": "Configuration du prototype",
692
+ "system.code.gen.table.action.page_preview": "Aperçu de la page",
693
+ "system.code.gen.table.action.code_preview": "Aperçu du code",
694
+ "system.code.gen.table.message.select_generate": "Veuillez vérifier l'élément généré",
695
+ "system.code.gen.table.message.disabled": "La configuration de génération de code {name} est désactivée",
696
+ "system.code.gen.table.message.select_restore": "Veuillez sélectionner une entrée de génération de code qui dispose d'un instantané de restauration disponible",
697
+ "system.code.gen.table.message.restore_success": "Restaurer le résultat de la génération de code avec succès",
698
+ "system.code.gen.table.message.create_success": "Configuration de la table de génération de code créée",
699
+ "system.code.gen.table.message.update_success": "Configuration de la table de génération de code mise à jour",
700
+ "system.code.gen.table.message.select_delete": "Veuillez cocher pour supprimer l'élément",
701
+ "system.code.gen.table.message.delete_canceled": "Suppression de la configuration de la table de génération de code annulée",
702
+ "system.code.gen.table.message.delete_success": "Configuration de la table de génération de code supprimée",
703
+ "system.code.gen.table.dialog.generate_one": "Confirmez la table métier générée : {name} ?",
704
+ "system.code.gen.table.dialog.generate_batch": "Confirmer pour générer {count} tables métier dans l'ordre de vérification ?",
705
+ "system.code.gen.table.dialog.restore_one": "Confirmez pour restaurer la table métier : {name} ? Les fichiers de construction, les menus de pages et les autorisations des boutons seront restaurés à leur état d'avant la construction.",
706
+ "system.code.gen.table.dialog.restore_batch": "Confirmer la restauration par lots des tables métier {count} ? Les fichiers partagés générés par lots doivent être restaurés par lots.",
707
+ "system.code.gen.table.dialog.delete_one": "Confirmer la suppression de la table métier : {name} ?",
708
+ "system.code.gen.table.dialog.delete_batch": "Confirmer la suppression des {count} configurations sélectionnées ?",
709
+ "system.code.gen.column.title.database_fields": "Configuration du champ",
710
+ "system.code.gen.column.title.workspace": "Configuration du champ",
711
+ "system.code.gen.column.title.workspace_with_table": "Configuration des colonnes de {table}",
712
+ "system.code.gen.column.title.options": "{scope} - {column}",
713
+ "system.code.gen.column.title.option_warning": "Avertissement de configuration des options",
714
+ "system.code.gen.column.field.database_column": "Colonne de base de données",
715
+ "system.code.gen.column.field.comment": "Description du champ",
716
+ "system.code.gen.column.field.query": "Requête",
717
+ "system.code.gen.column.field.list": "Liste",
718
+ "system.code.gen.column.field.form": "Formulaire",
719
+ "system.code.gen.column.field.selection_mode": "Sélectionner le mode",
720
+ "system.code.gen.column.field.source": "Source",
721
+ "system.code.gen.column.field.dictionary": "Dictionnaire",
722
+ "system.code.gen.column.field.active_value": "valeur d'activation",
723
+ "system.code.gen.column.field.inactive_value": "valeur de clôture",
724
+ "system.code.gen.column.field.data_table": "Fiche technique",
725
+ "system.code.gen.column.field.tree_parent": "champ parent de l'arborescence",
726
+ "system.code.gen.column.field.load_mode": "Méthode de chargement",
727
+ "system.code.gen.column.field.tree_label": "champs d'affichage de l'arborescence",
728
+ "system.code.gen.column.field.label_field": "Champ d'étiquette",
729
+ "system.code.gen.column.field.tree_value": "champ de valeur de l'arborescence",
730
+ "system.code.gen.column.field.value_field": "Champ de valeur",
731
+ "system.code.gen.column.field.static_data": "données statiques",
732
+ "system.code.gen.column.scope.query": "Requête",
733
+ "system.code.gen.column.scope.list": "Liste",
734
+ "system.code.gen.column.scope.form": "Formulaire",
735
+ "system.code.gen.column.value.table_name": "Nom de la table : {name}",
736
+ "system.code.gen.column.value.table_comment": "Annotation du tableau : {comment}",
737
+ "system.code.gen.column.value.query_count": "Requête de l'élément {count}",
738
+ "system.code.gen.column.value.list_count": "Liste {count} élément",
739
+ "system.code.gen.column.value.form_count": "Formulaire : {count}",
740
+ "system.code.gen.column.value.database": "Base de données",
741
+ "system.code.gen.column.value.primary_key": "Clé primaire",
742
+ "system.code.gen.column.value.auto_increment": "auto-incrémentation",
743
+ "system.code.gen.column.value.nullable": "Valeur nulle autorisée",
744
+ "system.code.gen.column.value.not_null": "n'est pas vide",
745
+ "system.code.gen.column.value.required": "Obligatoire",
746
+ "system.code.gen.column.value.single": "Choix unique",
747
+ "system.code.gen.column.value.multiple": "Choix multiples",
748
+ "system.code.gen.column.value.lazy_children": "Chargement paresseux des nœuds enfants",
749
+ "system.code.gen.column.placeholder.comment": "Veuillez saisir la description du champ",
750
+ "system.code.gen.column.placeholder.query_operator": "Méthode de requête",
751
+ "system.code.gen.column.placeholder.query_component": "Composant de requête",
752
+ "system.code.gen.column.placeholder.list_component": "Composant d'affichage",
753
+ "system.code.gen.column.placeholder.form_component": "Composant d'entrée",
754
+ "system.code.gen.column.placeholder.source": "Sélectionnez la source",
755
+ "system.code.gen.column.placeholder.dictionary": "Sélectionner le dictionnaire",
756
+ "system.code.gen.column.placeholder.active_value": "Sélectionnez la valeur d'activation",
757
+ "system.code.gen.column.placeholder.inactive_value": "Sélectionnez la valeur de clôture",
758
+ "system.code.gen.column.placeholder.data_table": "Sélectionner la table de données",
759
+ "system.code.gen.column.placeholder.tree_parent": "Sélectionner le champ parent de l'arborescence",
760
+ "system.code.gen.column.placeholder.tree_label": "Sélectionner les champs d'affichage de l'arborescence",
761
+ "system.code.gen.column.placeholder.label_field": "Sélectionner les champs d'affichage",
762
+ "system.code.gen.column.placeholder.tree_value": "Sélectionner le champ de valeur de l'arborescence",
763
+ "system.code.gen.column.placeholder.value_field": "Sélectionner le champ de valeur",
764
+ "system.code.gen.column.placeholder.option_label": "Afficher le texte",
765
+ "system.code.gen.column.placeholder.option_value": "Saisissez la valeur",
766
+ "system.code.gen.column.action.options": "Options",
767
+ "system.code.gen.column.action.save_and_close": "Enregistrer et fermer",
768
+ "system.code.gen.column.action.delete_static": "Supprimer les données statiques",
769
+ "system.code.gen.column.action.continue_save": "Continuer à enregistrer",
770
+ "system.code.gen.column.action.back_to_edit": "Retour pour modifier",
771
+ "system.code.gen.column.message.empty": "Aucune configuration de champ pour l'instant",
772
+ "system.code.gen.column.message.select_record": "Veuillez d'abord choisir de générer des enregistrements",
773
+ "system.code.gen.column.message.empty_static": "Aucune donnée statique pour l'instant",
774
+ "system.code.gen.column.message.name_and_type_required": "Le nom du champ et le type de base de données sont obligatoires",
775
+ "system.code.gen.column.dialog.inconsistent_source": "La source des options {scopes} du champ {column} est incohérente. Voulez-vous continuer l'enregistrement ?",
776
+ "system.code.gen.column.tooltip.drag": "Tri par glisser-déposer",
777
+ "system.code.gen.column.tooltip.drag_aria": "Glisser-déposer pour ajuster l'ordre des champs",
778
+ "system.code.gen.column.tooltip.multiple_json_only": "La sélection multiple ne prend en charge que les champs JSON",
779
+ "system.code.gen.column.tooltip.option_configured": "a été configuré et peut être enregistré directement ; il peut être ouvert et modifié lorsqu'un écrasement est nécessaire.",
780
+ "system.code.gen.column.tooltip.configure_option": "Configurer les options",
781
+ "system.code.gen.column.validation.option_component_missing": "La configuration de l'option {scope} du champ {column} n'a pas de composant correspondant",
782
+ "system.code.gen.column.validation.switch_incomplete": "Configuration de commutateur incomplète pour {scope} pour le champ {column}",
783
+ "system.code.gen.column.validation.switch_values_same": "Les valeurs d'activation et de désactivation de {scope} du champ {column} ne peuvent pas être identiques.",
784
+ "system.code.gen.column.validation.switch_values_unsupported": "Les options {scope} de la colonne {column} ne peuvent pas contenir de valeurs d’interrupteur",
785
+ "system.code.gen.column.validation.lazy_tree_only": "Le chargement différé est pris en charge uniquement par les options arborescentes {scope} du champ {column}",
786
+ "system.code.gen.column.validation.tree_table_only": "L'option d'arborescence {scope} pour le champ {column} ne peut utiliser que la source de la table de données.",
787
+ "system.code.gen.column.validation.source_incomplete": "Configuration de la source d'option {scope} incomplète pour le champ {column}",
788
+ "system.code.gen.column.validation.static_incomplete": "L'option {scope} du champ {column} nécessite au moins une donnée statique complète",
789
+ "system.code.gen.column.validation.table_fields_incomplete": "La configuration du champ d'option de table de données {scope} pour le champ {column} est incomplète.",
790
+ "system.code.gen.proto.trigger.crud": "Page CRUD",
791
+ "system.code.gen.proto.trigger.page_tree": "Arborescence des pages",
792
+ "system.code.gen.proto.trigger.left_tree": "Arbre gauche table droite",
793
+ "system.code.gen.proto.trigger.entity_option": "Options d’entité",
794
+ "system.code.gen.proto.trigger.field_option": "état du champ",
795
+ "system.code.gen.proto.trigger.field_status": "État du champ",
796
+ "system.code.gen.proto.api_kind.crud": "Créer, supprimer, modifier et consulter",
797
+ "system.code.gen.proto.api_kind.list": "Liste",
798
+ "system.code.gen.proto.api_kind.option": "Options",
799
+ "system.code.gen.proto.api_kind.tree": "Arborescence",
800
+ "system.code.gen.proto.api_kind.status": "Statut",
801
+ "system.code.gen.proto.field.trigger_type": "Type de déclencheur",
802
+ "system.code.gen.proto.field.api_kind": "Type d’API",
803
+ "system.code.gen.proto.field.capability": "Capacités du prototype",
804
+ "system.code.gen.proto.field.generate_setting": "Paramètres de construction",
805
+ "system.code.gen.proto.field.method_comment": "Description de la méthode",
806
+ "system.code.gen.proto.field.method_name": "nom de la méthode",
807
+ "system.code.gen.proto.field.proto_path": "Chemin du proto",
808
+ "system.code.gen.proto.field.service_comment": "Description du service",
809
+ "system.code.gen.proto.field.service_name": "Nom du service",
810
+ "system.code.gen.proto.field.parent_column": "Champ du nœud parent",
811
+ "system.code.gen.proto.field.label_column": "Colonne d’affichage",
812
+ "system.code.gen.proto.field.value_column": "Champ d'état",
813
+ "system.code.gen.proto.field.status_column": "Colonne d’état",
814
+ "system.code.gen.proto.field.load_mode": "Méthode de chargement",
815
+ "system.code.gen.proto.action.configure": "Configuration",
816
+ "system.code.gen.proto.action.generate_api": "Générer une interface",
817
+ "system.code.gen.proto.status.exists": "existe déjà",
818
+ "system.code.gen.proto.status.missing": "à générer",
819
+ "system.code.gen.proto.title.config": "Configuration {method} - {kind}",
820
+ "system.code.gen.proto.title.workspace": "Configuration du prototype",
821
+ "system.code.gen.proto.title.workspace_with_table": "{table} Configuration Proto",
822
+ "system.code.gen.proto.placeholder.parent_column": "Veuillez sélectionner le champ du nœud parent",
823
+ "system.code.gen.proto.placeholder.label_column": "Veuillez sélectionner un champ à afficher",
824
+ "system.code.gen.proto.placeholder.value_column": "Veuillez sélectionner un champ de valeur",
825
+ "system.code.gen.proto.placeholder.status_column": "Veuillez sélectionner un champ de statut",
826
+ "system.code.gen.proto.message.configure_first": "Veuillez d'abord compléter la configuration requise",
827
+ "system.code.gen.proto.message.save_success": "Configuration Proto enregistrée",
828
+ "system.code.gen.progress.title": "Progression de la génération de code",
829
+ "system.code.gen.progress.value.current": "Actuel : {table}",
830
+ "system.code.gen.progress.value.steps": "Étapes {completed} / {total}",
831
+ "system.code.gen.progress.value.created_at": "créé en {time}",
832
+ "system.code.gen.progress.value.finished_at": "Terminé en {time}",
833
+ "system.code.gen.progress.status.pending": "En attente",
834
+ "system.code.gen.progress.status.running": "Génération",
835
+ "system.code.gen.progress.status.succeeded": "Terminé",
836
+ "system.code.gen.progress.status.failed": "a échoué",
837
+ "system.code.gen.progress.action.copy_error": "Copier le message d'erreur",
838
+ "system.code.gen.progress.action.reload": "Recharger",
839
+ "system.code.gen.progress.field.step": "Étapes",
840
+ "system.code.gen.progress.field.result": "Résultat",
841
+ "system.code.gen.progress.field.output": "Sortie",
842
+ "system.code.gen.progress.message.unavailable_title": "La tâche n'est pas disponible",
843
+ "system.code.gen.progress.message.unavailable": "La tâche a expiré, n'existe pas ou n'a pas de droits d'accès",
844
+ "system.code.gen.progress.message.copied": "Message d'erreur copié",
845
+ "system.code.gen.progress.message.copy_failed": "Échec de la copie du message d'erreur",
846
+ "system.code.gen.preview.field.path": "chemin du fichier",
847
+ "system.code.gen.preview.field.action": "Opérations sur les fichiers",
848
+ "system.code.gen.preview.field.message": "Descriptif",
849
+ "system.code.gen.preview.field.password_strength": "Astuce de force",
850
+ "system.code.gen.preview.status.exists": "existe déjà",
851
+ "system.code.gen.preview.status.pending_create": "à créer",
852
+ "system.code.gen.preview.title.code": "Aperçu du code",
853
+ "system.code.gen.preview.title.workspace": "{table} Aperçu du code",
854
+ "system.code.gen.preview.title.create": "Ajout de {resource}",
855
+ "system.code.gen.preview.title.edit": "Modifier {resource}",
856
+ "system.code.gen.preview.title.category_list": "Liste des catégories",
857
+ "system.code.gen.preview.title.delete_confirm": "Supprimer la confirmation",
858
+ "system.code.gen.preview.title.data_list": "Liste de données",
859
+ "system.code.gen.preview.dialog.confirm_delete": "Êtes-vous sûr de supprimer les données {count} sélectionnées ?",
860
+ "system.code.gen.preview.placeholder.custom_slot": "Contenu d'emplacement personnalisé",
861
+ "system.code.gen.preview.placeholder.input": "Veuillez saisir {field}",
862
+ "system.code.gen.preview.placeholder.select": "Veuillez sélectionner {field}",
863
+ "system.code.gen.preview.validation.required": "{field} ne peut pas être vide",
864
+ "system.code.gen.preview.value.custom": "Personnalisé",
865
+ "system.code.gen.preview.value.category": "Catégorie",
866
+ "system.code.gen.preview.value.data": "enregistrement",
867
+ "system.code.gen.preview.value.enable_field": "Activer {field}",
868
+ "system.code.gen.preview.value.top_level": "Nœud de niveau supérieur",
869
+ "system.code.gen.preview.value.available": "Facultatif",
870
+ "system.code.gen.preview.value.selected": "Sélectionné",
871
+ "system.code.gen.preview.value.key": "Valeur",
872
+ "system.code.gen.preview.value.value": "Valeur",
873
+ "system.code.gen.preview.value.range_separator": "à",
874
+ "system.code.gen.preview.value.option": "Option {index} de {source}",
875
+ "system.code.gen.preview.message.empty_files": "Aucun fichier d'aperçu disponible pour l'instant",
876
+ "system.code.gen.preview.message.no_preview_files": "La configuration actuelle ne génère pas de fichier prévisualisable",
877
+ "system.code.gen.preview.message.load_failed": "L'aperçu du code n'a pas pu être chargé, veuillez vérifier la configuration de build",
878
+ "system.code.gen.preview.message.empty_page": "Aucune configuration de page pour l'instant",
879
+ "system.code.gen.preview.message.create_success": "ajouté avec succès",
880
+ "system.code.gen.preview.message.update_success": "modifié avec succès",
881
+ "system.code.gen.preview.message.delete_success": "Suppression réussie",
882
+ "system.code.gen.preview.message.missing_translations": "doit être complété avant la génération formelle : {items}",
883
+ "system.code.gen.preview.value.list_separator": ",",
884
+ "system.project.document.title.navigation": "Navigation des documents du projet",
885
+ "system.project.document.placeholder.search": "Rechercher des projets ou des chemins",
886
+ "system.project.document.message.no_match": "Aucun document correspondant",
887
+ "system.project.document.message.empty": "Aucun document de projet",
888
+ "system.project.document.message.select": "Sélectionnez un document de projet",
889
+ "system.project.document.message.uncollected": "Le document référencé n’a pas été collecté : {path}",
890
+ "system.project.document.value.updated_at": "Mis à jour {time}",
891
+ "system.ops_monitoring.collecting": "Collecte en cours",
892
+ "system.ops_monitoring.realtime": "Données en temps réel",
893
+ "system.ops_monitoring.window": "Fenêtre actuelle : dernières {minutes} minutes",
894
+ "system.ops_monitoring.last_sample": "Dernier échantillon {time}",
895
+ "system.ops_monitoring.core_metrics": "Indicateurs clés",
896
+ "system.ops_monitoring.request_latency_trend": "Tendance du volume et de la latence des requêtes",
897
+ "system.ops_monitoring.aggregation": "Agrégé par minute · dernières {minutes} minutes",
898
+ "system.ops_monitoring.p95_latency": "Latence P95",
899
+ "system.ops_monitoring.qps_trend": "Tendance QPS, actuel {value}",
900
+ "system.ops_monitoring.p95_trend": "Tendance de la latence P95, actuelle {value}",
901
+ "system.ops_monitoring.service_availability": "Disponibilité des services",
902
+ "system.ops_monitoring.service_dependency": "État actuel du service et des dépendances externes",
903
+ "system.ops_monitoring.online": "{online} / {total} en ligne",
904
+ "system.ops_monitoring.data_storage": "Stockage des données",
905
+ "system.ops_monitoring.storage_summary": "État du pool de connexions et de la configuration",
906
+ "system.ops_monitoring.interface_response": "Points d’accès et réponses",
907
+ "system.ops_monitoring.sort_recent": "Trié par volume de requêtes · dernières {minutes} minutes",
908
+ "system.ops_monitoring.endpoint_count": "{count} points d’accès",
909
+ "system.ops_monitoring.endpoint": "Point d’accès",
910
+ "system.ops_monitoring.error_rate": "Taux d’erreur",
911
+ "system.ops_monitoring.status.label": "Statut",
912
+ "system.ops_monitoring.instance_resources": "Ressources des instances",
913
+ "system.ops_monitoring.current_recent_sample": "Dernier échantillon du processus",
914
+ "system.ops_monitoring.instance_count": "{count} instances",
915
+ "system.ops_monitoring.alert_events": "Événements d’alerte",
916
+ "system.ops_monitoring.alert_attention": "Requêtes échouées nécessitant l’attention des opérations",
917
+ "system.ops_monitoring.unresolved": "{count} non résolues",
918
+ "system.ops_monitoring.unknown": "Inconnu",
919
+ "system.ops_monitoring.capacity": "Capacité",
920
+ "system.ops_monitoring.just_now": "À l’instant",
921
+ "system.ops_monitoring.minutes_ago": "Il y a {count} minutes",
922
+ "system.ops_monitoring.hours_ago": "Il y a {count} heures",
923
+ "system.ops_monitoring.days_ago": "Il y a {count} jours",
924
+ "system.ops_monitoring.status.normal": "Normal",
925
+ "system.ops_monitoring.status.unconfigured": "Non configuré",
926
+ "system.ops_monitoring.status.error": "Erreur",
927
+ "system.ops_monitoring.status.attention": "À surveiller",
928
+ "system.ops_monitoring.kpi.throughput": "Débit de requêtes QPS",
929
+ "system.ops_monitoring.kpi.p95_latency": "Latence P95",
930
+ "system.ops_monitoring.kpi.error_rate": "Taux d’erreur",
931
+ "system.ops_monitoring.kpi.availability": "Disponibilité",
932
+ "system.ops_monitoring.kpi.current_window": "Fenêtre actuelle"
928
933
  }