@object-ui/i18n 6.2.3 → 7.1.0
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.
- package/CHANGELOG.md +124 -0
- package/README.md +1 -1
- package/dist/LocalizationContext.d.ts +39 -0
- package/dist/LocalizationContext.js +38 -0
- package/dist/currency.d.ts +28 -0
- package/dist/currency.js +28 -0
- package/dist/i18n.d.ts +18 -0
- package/dist/i18n.js +37 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.js +4 -1
- package/dist/locales/ar.d.ts +1937 -1216
- package/dist/locales/ar.js +1855 -1129
- package/dist/locales/de.d.ts +1937 -1215
- package/dist/locales/de.js +1853 -1140
- package/dist/locales/en.d.ts +632 -5
- package/dist/locales/en.js +636 -5
- package/dist/locales/es.d.ts +1937 -1215
- package/dist/locales/es.js +1855 -1128
- package/dist/locales/fr.d.ts +1937 -1215
- package/dist/locales/fr.js +1829 -1116
- package/dist/locales/index.d.ts +17413 -10371
- package/dist/locales/ja.d.ts +1937 -1226
- package/dist/locales/ja.js +1855 -1139
- package/dist/locales/ko.d.ts +1937 -1215
- package/dist/locales/ko.js +1855 -1128
- package/dist/locales/pt.d.ts +1937 -1215
- package/dist/locales/pt.js +1855 -1128
- package/dist/locales/ru.d.ts +1937 -1226
- package/dist/locales/ru.js +1855 -1148
- package/dist/locales/zh.d.ts +641 -4
- package/dist/locales/zh.js +645 -4
- package/dist/pickLocalized.d.ts +14 -0
- package/dist/pickLocalized.js +33 -0
- package/dist/useObjectLabel.d.ts +21 -0
- package/dist/useObjectLabel.js +53 -1
- package/dist/useSafeTranslation.d.ts +13 -0
- package/dist/useSafeTranslation.js +32 -0
- package/package.json +6 -6
package/dist/locales/fr.js
CHANGED
|
@@ -1,1311 +1,2024 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Français (fr) - French language pack for Object UI
|
|
3
|
-
*/
|
|
4
1
|
const fr = {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
submit: 'Soumettre',
|
|
23
|
-
refresh: 'Actualiser',
|
|
24
|
-
export: 'Exporter',
|
|
25
|
-
import: 'Importer',
|
|
2
|
+
lookup: {
|
|
3
|
+
recentlyUsed: 'Récemment utilisés',
|
|
4
|
+
allResults: 'Tous les résultats',
|
|
5
|
+
createNew: 'Créer',
|
|
6
|
+
createNamed: 'Créer « {{name}} »',
|
|
7
|
+
showingResults: 'Affichage de {{shown}} sur {{total}} résultats',
|
|
8
|
+
showAllResults: 'Afficher tous les résultats ({{count}})',
|
|
9
|
+
selectedBadge: 'Sélectionné',
|
|
10
|
+
browseAll: 'Parcourir tous les enregistrements',
|
|
11
|
+
remove: 'Supprimer {{label}}',
|
|
12
|
+
selectFirst: 'Sélectionnez d’abord {{fields}}',
|
|
13
|
+
selectRecord: 'Sélectionner un enregistrement',
|
|
14
|
+
recordCount: '{{count}} enregistrements',
|
|
15
|
+
recordCountOne: '1 enregistrement',
|
|
16
|
+
pageOf: 'Page {{current}} sur {{total}}',
|
|
17
|
+
filters: 'Filtres',
|
|
18
|
+
clear: 'Effacer',
|
|
26
19
|
yes: 'Oui',
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
20
|
+
filterPlaceholder: 'Filtrer {{label}}',
|
|
21
|
+
prevPage: 'Page précédente',
|
|
22
|
+
nextPage: 'Page suivante',
|
|
23
|
+
jumpToPage: 'Aller à la page',
|
|
24
|
+
retry: 'Réessayer',
|
|
25
|
+
loading: 'Chargement…',
|
|
26
|
+
noOptions: 'Aucune option trouvée',
|
|
27
|
+
noRecords: 'Aucun enregistrement trouvé',
|
|
28
|
+
},
|
|
29
|
+
common: {
|
|
30
|
+
addToFavorites: "Ajouter aux favoris",
|
|
31
|
+
removeFromFavorites: "Retirer des favoris",
|
|
32
|
+
loading: "Chargement...",
|
|
33
|
+
save: "Enregistrer",
|
|
34
|
+
cancel: "Annuler",
|
|
35
|
+
delete: "Supprimer",
|
|
36
|
+
edit: "Modifier",
|
|
37
|
+
create: "Créer",
|
|
38
|
+
search: "Rechercher",
|
|
39
|
+
filter: "Filtrer",
|
|
40
|
+
reset: "Réinitialiser",
|
|
41
|
+
confirm: "Confirmer",
|
|
42
|
+
close: "Fermer",
|
|
43
|
+
back: "Retour",
|
|
44
|
+
next: "Suivant",
|
|
45
|
+
previous: "Précédent",
|
|
46
|
+
submit: "Soumettre",
|
|
47
|
+
refresh: "Actualiser",
|
|
48
|
+
export: "Exporter",
|
|
49
|
+
import: "Importer",
|
|
50
|
+
yes: "Oui",
|
|
51
|
+
no: "Non",
|
|
52
|
+
ok: "OK",
|
|
53
|
+
actions: "Actions",
|
|
54
|
+
more: "Plus",
|
|
55
|
+
selectAll: "Tout sélectionner",
|
|
56
|
+
clearAll: "Tout effacer",
|
|
57
|
+
noData: "Aucune donnée",
|
|
58
|
+
noResults: "Aucun résultat trouvé",
|
|
59
|
+
required: "Obligatoire",
|
|
60
|
+
optional: "Facultatif",
|
|
61
|
+
selectOption: "Sélectionner une option",
|
|
62
|
+
select: "Sélectionner...",
|
|
63
|
+
openChat: "Ouvrir le chat",
|
|
64
|
+
closeChat: "Fermer le chat",
|
|
65
|
+
toggleSidebar: "Basculer la barre latérale",
|
|
66
|
+
package: "Package",
|
|
67
|
+
},
|
|
68
|
+
actions: {
|
|
69
|
+
resultDialog: {
|
|
70
|
+
defaultTitle: 'Save this value now',
|
|
71
|
+
acknowledge: 'I have saved this',
|
|
72
|
+
},
|
|
42
73
|
},
|
|
43
74
|
validation: {
|
|
44
|
-
required:
|
|
45
|
-
minLength:
|
|
46
|
-
maxLength:
|
|
47
|
-
min:
|
|
48
|
-
max:
|
|
49
|
-
email:
|
|
50
|
-
url:
|
|
51
|
-
pattern:
|
|
52
|
-
unique:
|
|
53
|
-
type:
|
|
75
|
+
required: "{{field}} est obligatoire",
|
|
76
|
+
minLength: "{{field}} doit contenir au moins {{min}} caractères",
|
|
77
|
+
maxLength: "{{field}} doit contenir au plus {{max}} caractères",
|
|
78
|
+
min: "{{field}} doit être au moins {{min}}",
|
|
79
|
+
max: "{{field}} doit être au plus {{max}}",
|
|
80
|
+
email: "Veuillez saisir une adresse e-mail valide",
|
|
81
|
+
url: "Veuillez saisir une URL valide",
|
|
82
|
+
pattern: "Le format de {{field}} est invalide",
|
|
83
|
+
unique: "{{field}} doit être unique",
|
|
84
|
+
type: "{{field}} doit être un {{type}} valide",
|
|
54
85
|
},
|
|
55
86
|
form: {
|
|
56
|
-
addItem:
|
|
57
|
-
removeItem:
|
|
58
|
-
fieldRequired:
|
|
59
|
-
invalidFormat:
|
|
60
|
-
saveSuccess:
|
|
61
|
-
saveError:
|
|
62
|
-
unsavedChanges:
|
|
63
|
-
stepOf:
|
|
64
|
-
createTitle:
|
|
65
|
-
editTitle:
|
|
66
|
-
createDescription:
|
|
67
|
-
editDescription:
|
|
68
|
-
saveRecord:
|
|
87
|
+
addItem: "Ajouter un élément",
|
|
88
|
+
removeItem: "Supprimer un élément",
|
|
89
|
+
fieldRequired: "Ce champ est obligatoire",
|
|
90
|
+
invalidFormat: "Format invalide",
|
|
91
|
+
saveSuccess: "Enregistré avec succès",
|
|
92
|
+
saveError: "Échec de l'enregistrement",
|
|
93
|
+
unsavedChanges: "Vous avez des modifications non enregistrées. Voulez-vous vraiment quitter ?",
|
|
94
|
+
stepOf: "Étape {{current}} sur {{total}}",
|
|
95
|
+
createTitle: "Créer {{object}}",
|
|
96
|
+
editTitle: "Modifier {{object}}",
|
|
97
|
+
createDescription: "Ajouter un nouveau {{object}} à votre base de données.",
|
|
98
|
+
editDescription: "Mettre à jour les détails de {{object}}",
|
|
99
|
+
saveRecord: "Enregistrer",
|
|
100
|
+
create: "Créer",
|
|
101
|
+
update: "Mettre à jour",
|
|
102
|
+
createSuccess: "{{object}} créé",
|
|
103
|
+
updateSuccess: "{{object}} mis à jour",
|
|
104
|
+
deleteSuccess: "{{object}} supprimé",
|
|
69
105
|
},
|
|
70
106
|
fields: {
|
|
71
107
|
richText: {
|
|
72
|
-
format:
|
|
73
|
-
basicEditorHint:
|
|
74
|
-
placeholder:
|
|
108
|
+
format: "Format : {{format}}",
|
|
109
|
+
basicEditorHint: "Éditeur de texte enrichi (basique)",
|
|
110
|
+
placeholder: "Écrivez quelque chose...",
|
|
75
111
|
},
|
|
76
112
|
},
|
|
77
113
|
table: {
|
|
78
|
-
rowsPerPage:
|
|
79
|
-
showing:
|
|
80
|
-
noRows:
|
|
81
|
-
sortAsc:
|
|
82
|
-
sortDesc:
|
|
83
|
-
filterColumn:
|
|
84
|
-
columns:
|
|
85
|
-
exportCSV:
|
|
86
|
-
exportExcel:
|
|
87
|
-
selectRow:
|
|
88
|
-
selectAllRows:
|
|
89
|
-
expandRow:
|
|
90
|
-
collapseRow:
|
|
91
|
-
hideColumn:
|
|
92
|
-
freezeColumn:
|
|
93
|
-
unfreezeColumn:
|
|
94
|
-
pageInfo:
|
|
95
|
-
totalRecords:
|
|
114
|
+
rowsPerPage: "Lignes par page",
|
|
115
|
+
showing: "Affichage de {{from}} à {{to}} sur {{total}}",
|
|
116
|
+
noRows: "Aucune ligne à afficher",
|
|
117
|
+
sortAsc: "Tri croissant",
|
|
118
|
+
sortDesc: "Tri décroissant",
|
|
119
|
+
filterColumn: "Filtrer {{column}}",
|
|
120
|
+
columns: "Colonnes",
|
|
121
|
+
exportCSV: "Exporter en CSV",
|
|
122
|
+
exportExcel: "Exporter en Excel",
|
|
123
|
+
selectRow: "Sélectionner la ligne",
|
|
124
|
+
selectAllRows: "Sélectionner toutes les lignes",
|
|
125
|
+
expandRow: "Développer la ligne",
|
|
126
|
+
collapseRow: "Réduire la ligne",
|
|
127
|
+
hideColumn: "Masquer la colonne",
|
|
128
|
+
freezeColumn: "Figer la colonne",
|
|
129
|
+
unfreezeColumn: "Libérer la colonne",
|
|
130
|
+
pageInfo: "Page {{current}} sur {{total}}",
|
|
131
|
+
totalRecords: "{{count}} au total",
|
|
132
|
+
noResults: "Aucun résultat",
|
|
133
|
+
noResultsHint: "Essayez d'ajuster vos filtres ou vos termes de recherche.",
|
|
134
|
+
cancelAll: "Tout annuler",
|
|
135
|
+
saveAll: "Tout enregistrer ({{count}})",
|
|
136
|
+
addRecord: "Ajouter un enregistrement",
|
|
137
|
+
open: "Ouvrir",
|
|
138
|
+
search: "Rechercher...",
|
|
139
|
+
modified: "{{count}} ligne(s) modifiée(s)",
|
|
140
|
+
selected: "{{count}} sélectionné(s)",
|
|
141
|
+
edit: "Modifier",
|
|
142
|
+
delete: "Supprimer",
|
|
96
143
|
},
|
|
97
144
|
grid: {
|
|
98
|
-
actions:
|
|
99
|
-
edit:
|
|
100
|
-
delete:
|
|
101
|
-
export:
|
|
102
|
-
exportAs:
|
|
103
|
-
loading:
|
|
104
|
-
errorLoading:
|
|
105
|
-
pullToRefresh:
|
|
106
|
-
refreshing:
|
|
107
|
-
openRecord:
|
|
108
|
-
rowHeight:
|
|
145
|
+
actions: "Actions",
|
|
146
|
+
edit: "Modifier",
|
|
147
|
+
delete: "Supprimer",
|
|
148
|
+
export: "Exporter",
|
|
149
|
+
exportAs: "Exporter en {{format}}",
|
|
150
|
+
loading: "Chargement de la grille...",
|
|
151
|
+
errorLoading: "Erreur de chargement de la grille",
|
|
152
|
+
pullToRefresh: "Tirer pour actualiser",
|
|
153
|
+
refreshing: "Actualisation…",
|
|
154
|
+
openRecord: "Ouvrir l'enregistrement",
|
|
155
|
+
rowHeight: "Hauteur de ligne : {{mode}}",
|
|
156
|
+
openMenu: "Ouvrir le menu",
|
|
157
|
+
empty: "Vide",
|
|
158
|
+
yes: "Oui",
|
|
159
|
+
no: "Non",
|
|
160
|
+
systemFields: "Système",
|
|
161
|
+
toolbar: {
|
|
162
|
+
densityMode: "Densité",
|
|
163
|
+
densityCompact: "Compact",
|
|
164
|
+
densityComfortable: "Normal",
|
|
165
|
+
densitySpacious: "Spacieux",
|
|
166
|
+
densityCycleHint: "{{label}} (cliquer pour changer)",
|
|
167
|
+
densityCycleShortHint: "Cliquer pour changer",
|
|
168
|
+
},
|
|
169
|
+
import: {
|
|
170
|
+
title: "Importer {{object}}",
|
|
171
|
+
stepUpload: "Télécharger",
|
|
172
|
+
stepMapping: "Correspondance",
|
|
173
|
+
stepPreview: "Aperçu",
|
|
174
|
+
uploadDescription: "Téléchargez un fichier CSV pour commencer.",
|
|
175
|
+
mappingDescription: "Faites correspondre les colonnes CSV aux champs de l'objet.",
|
|
176
|
+
previewDescription: "Vérifiez les données avant d'importer.",
|
|
177
|
+
dragDrop: "Faites glisser le fichier CSV ici ou cliquez pour parcourir",
|
|
178
|
+
browseFiles: "Parcourir les fichiers",
|
|
179
|
+
onlyCsv: "Seuls les fichiers CSV sont pris en charge.",
|
|
180
|
+
fileNeedsHeader: "Le fichier doit avoir une ligne d'en-tête et au moins une ligne de données.",
|
|
181
|
+
mappingTemplate: "Modèle de correspondance :",
|
|
182
|
+
chooseTemplate: "Choisir un modèle…",
|
|
183
|
+
noSavedTemplates: "Aucun modèle enregistré",
|
|
184
|
+
noneOption: "— Aucun —",
|
|
185
|
+
saveCurrent: "Enregistrer le modèle actuel",
|
|
186
|
+
templateName: "Nom du modèle",
|
|
187
|
+
save: "Enregistrer",
|
|
188
|
+
deleteTemplate: "Supprimer le modèle",
|
|
189
|
+
csvColumn: "Colonne CSV",
|
|
190
|
+
mapsTo: "Correspond à",
|
|
191
|
+
status: "Statut",
|
|
192
|
+
skipColumn: "Ignorer la colonne",
|
|
193
|
+
skip: "— Ignorer —",
|
|
194
|
+
mapped: "Mappé",
|
|
195
|
+
skipped: "Ignoré",
|
|
196
|
+
rowsWithErrors: "{{count}} ligne(s) avec des erreurs",
|
|
197
|
+
rowsCorrected: "{{count}} ligne(s) corrigée(s)",
|
|
198
|
+
clickToFix: "— cliquez sur une cellule mise en surbrillance pour modifier en ligne.",
|
|
199
|
+
showingRows: "Affichage de {{shown}} sur {{total}} lignes",
|
|
200
|
+
importing: "Importation… {{progress}}%",
|
|
201
|
+
importComplete: "Importation terminée",
|
|
202
|
+
imported: "{{count}} importé(s)",
|
|
203
|
+
skippedCount: "{{count}} ignoré(s)",
|
|
204
|
+
moreErrors: "…et {{count}} erreur(s) de plus",
|
|
205
|
+
cancel: "Annuler",
|
|
206
|
+
back: "Retour",
|
|
207
|
+
next: "Suivant",
|
|
208
|
+
close: "Fermer",
|
|
209
|
+
importNRows: "Importer {{count}} lignes",
|
|
210
|
+
importingProgress: "Importation…",
|
|
211
|
+
requiredMark: "*",
|
|
212
|
+
required: "Obligatoire",
|
|
213
|
+
invalidType: "{{type}} invalide",
|
|
214
|
+
},
|
|
109
215
|
},
|
|
110
216
|
calendar: {
|
|
111
|
-
today:
|
|
112
|
-
month:
|
|
113
|
-
week:
|
|
114
|
-
day:
|
|
115
|
-
agenda:
|
|
116
|
-
allDay:
|
|
117
|
-
noEvents:
|
|
118
|
-
newEvent:
|
|
119
|
-
moreEvents:
|
|
217
|
+
today: "Aujourd'hui",
|
|
218
|
+
month: "Mois",
|
|
219
|
+
week: "Semaine",
|
|
220
|
+
day: "Jour",
|
|
221
|
+
agenda: "Agenda",
|
|
222
|
+
allDay: "Toute la journée",
|
|
223
|
+
noEvents: "Aucun événement",
|
|
224
|
+
newEvent: "Nouvel événement",
|
|
225
|
+
moreEvents: "+{{count}} de plus",
|
|
120
226
|
},
|
|
121
227
|
list: {
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
228
|
+
loading: 'Loading records...',
|
|
229
|
+
recordCount: "{{count}} enregistrements",
|
|
230
|
+
recordCountOne: "{{count}} enregistrement",
|
|
231
|
+
addRecord: "Ajouter un enregistrement",
|
|
232
|
+
tabs: "Onglets",
|
|
233
|
+
allRecords: "Tous les enregistrements",
|
|
234
|
+
search: "Rechercher",
|
|
235
|
+
filter: "Filtrer",
|
|
236
|
+
filterRecords: "Filtrer les enregistrements",
|
|
237
|
+
sort: "Trier",
|
|
238
|
+
sortRecords: "Trier les enregistrements",
|
|
239
|
+
group: "Grouper",
|
|
240
|
+
groupBy: "Grouper par",
|
|
241
|
+
export: "Exporter",
|
|
242
|
+
exportAs: "Exporter en {{format}}",
|
|
243
|
+
color: "Couleur",
|
|
244
|
+
rowColor: "Couleur de ligne",
|
|
245
|
+
colorByField: "Colorer par champ",
|
|
246
|
+
clear: "Effacer",
|
|
247
|
+
none: "Aucun",
|
|
248
|
+
hideFields: "Masquer les champs",
|
|
249
|
+
noItems: "Aucun élément trouvé",
|
|
143
250
|
noItemsMessage: "Il n'y a aucun enregistrement à afficher. Essayez d'ajuster les filtres ou d'ajouter de nouvelles données.",
|
|
251
|
+
showAll: "Tout afficher",
|
|
252
|
+
pullToRefresh: "Tirer pour actualiser",
|
|
253
|
+
refreshing: "Actualisation…",
|
|
254
|
+
share: "Partager",
|
|
255
|
+
print: "Imprimer",
|
|
256
|
+
hideFieldsTitle: "Masquer les champs",
|
|
257
|
+
dataLimitReached: "Les {{limit}} premiers enregistrements sont affichés. Il peut y avoir plus de données disponibles.",
|
|
258
|
+
viewSettings: "Paramètres de vue",
|
|
259
|
+
viewSettingsHint: "Regroupement, couleur, densité et champs visibles.",
|
|
260
|
+
addGroup: "Ajouter un champ de groupe",
|
|
261
|
+
collapsedByDefault: "Réduit par défaut",
|
|
262
|
+
removeGroup: "Supprimer",
|
|
144
263
|
},
|
|
145
264
|
kanban: {
|
|
146
|
-
addCard:
|
|
147
|
-
addColumn:
|
|
148
|
-
moveCard:
|
|
149
|
-
deleteCard:
|
|
150
|
-
deleteColumn:
|
|
265
|
+
addCard: "Ajouter une carte",
|
|
266
|
+
addColumn: "Ajouter une colonne",
|
|
267
|
+
moveCard: "Déplacer la carte",
|
|
268
|
+
deleteCard: "Supprimer la carte",
|
|
269
|
+
deleteColumn: "Supprimer la colonne",
|
|
270
|
+
noCards: "Aucune carte",
|
|
271
|
+
cardTitlePlaceholder: "Saisir le titre de la carte...",
|
|
151
272
|
},
|
|
152
273
|
timeline: {
|
|
153
274
|
bucket: {
|
|
154
|
-
overdue:
|
|
275
|
+
overdue: "En retard",
|
|
155
276
|
today: "Aujourd'hui",
|
|
156
|
-
tomorrow:
|
|
157
|
-
thisWeek:
|
|
158
|
-
nextWeek:
|
|
159
|
-
later:
|
|
160
|
-
noDate:
|
|
161
|
-
unassigned:
|
|
277
|
+
tomorrow: "Demain",
|
|
278
|
+
thisWeek: "Cette semaine",
|
|
279
|
+
nextWeek: "Semaine prochaine",
|
|
280
|
+
later: "Plus tard",
|
|
281
|
+
noDate: "Sans date",
|
|
282
|
+
unassigned: "Non attribué",
|
|
162
283
|
},
|
|
163
284
|
},
|
|
164
285
|
gantt: {
|
|
165
286
|
column: {
|
|
166
|
-
taskName:
|
|
167
|
-
start:
|
|
168
|
-
end:
|
|
287
|
+
taskName: "Nom de la tâche",
|
|
288
|
+
start: "Début",
|
|
289
|
+
end: "Fin",
|
|
169
290
|
},
|
|
170
291
|
toolbar: {
|
|
171
|
-
prevPeriod:
|
|
172
|
-
nextPeriod:
|
|
173
|
-
zoomIn:
|
|
174
|
-
zoomOut:
|
|
175
|
-
jumpToToday:
|
|
176
|
-
today: '
|
|
177
|
-
showTaskList:
|
|
178
|
-
hideTaskList:
|
|
292
|
+
prevPeriod: "Période précédente",
|
|
293
|
+
nextPeriod: "Période suivante",
|
|
294
|
+
zoomIn: "Zoom avant",
|
|
295
|
+
zoomOut: "Zoom arrière",
|
|
296
|
+
jumpToToday: "Aller à aujourd'hui",
|
|
297
|
+
today: "Aujourd'hui",
|
|
298
|
+
showTaskList: "Afficher la liste des tâches",
|
|
299
|
+
hideTaskList: "Masquer la liste des tâches",
|
|
179
300
|
},
|
|
180
301
|
},
|
|
181
302
|
view: {
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
303
|
+
editViewConfig: "Modifier la configuration de la vue",
|
|
304
|
+
rename: "Renommer",
|
|
305
|
+
duplicateView: "Dupliquer la vue",
|
|
306
|
+
shareView: "Partager la vue",
|
|
307
|
+
setAsDefault: "Définir par défaut",
|
|
308
|
+
pinView: "Épingler la vue",
|
|
309
|
+
unpinView: "Désépingler la vue",
|
|
310
|
+
changeViewType: "Changer le type de vue",
|
|
311
|
+
deleteView: "Supprimer la vue",
|
|
312
|
+
addView: "Ajouter une vue",
|
|
313
|
+
unsavedChanges: "Modifications non enregistrées",
|
|
314
|
+
saveAsView: "Enregistrer comme vue",
|
|
315
|
+
moreViews: "{{count}} de plus",
|
|
316
|
+
activeFilters: "Filtres actifs",
|
|
317
|
+
activeSort: "Tri actif",
|
|
318
|
+
manageViews: "Gérer les vues",
|
|
319
|
+
manageAllViews: "Gérer toutes les vues…",
|
|
320
|
+
manageViewsDescription: "Réorganiser, renommer, épingler ou supprimer toutes les vues de cet objet.",
|
|
321
|
+
searchViews: "Rechercher des vues",
|
|
322
|
+
addNewView: "Ajouter une nouvelle vue",
|
|
323
|
+
done: "Terminé",
|
|
324
|
+
noViewsFound: "Aucune vue ne correspond à votre recherche.",
|
|
325
|
+
dragToReorder: "Glisser pour réorganiser",
|
|
326
|
+
defaultView: "Vue par défaut",
|
|
327
|
+
defaultBadge: "par défaut",
|
|
328
|
+
tabActionsFor: "Actions de vue pour {{name}}",
|
|
329
|
+
readonlyAriaLabel: "Vue en lecture seule",
|
|
330
|
+
readonlyTooltip: "Vue système — dupliquer pour personnaliser.",
|
|
331
|
+
},
|
|
332
|
+
designer: {
|
|
333
|
+
undo: 'Undo',
|
|
334
|
+
redo: 'Redo',
|
|
196
335
|
},
|
|
197
336
|
detail: {
|
|
198
|
-
back:
|
|
199
|
-
edit:
|
|
200
|
-
editInline:
|
|
201
|
-
save:
|
|
202
|
-
saveChanges:
|
|
203
|
-
editFieldsInline:
|
|
204
|
-
share:
|
|
205
|
-
duplicate:
|
|
206
|
-
export:
|
|
337
|
+
back: "Retour",
|
|
338
|
+
edit: "Modifier",
|
|
339
|
+
editInline: "Modifier",
|
|
340
|
+
save: "Enregistrer",
|
|
341
|
+
saveChanges: "Enregistrer les modifications",
|
|
342
|
+
editFieldsInline: "Modifier les champs",
|
|
343
|
+
share: "Partager",
|
|
344
|
+
duplicate: "Dupliquer",
|
|
345
|
+
export: "Exporter",
|
|
207
346
|
viewHistory: "Voir l'historique",
|
|
208
|
-
delete:
|
|
347
|
+
delete: "Supprimer",
|
|
209
348
|
moreActions: "Plus d'actions",
|
|
210
|
-
addToFavorites:
|
|
211
|
-
removeFromFavorites:
|
|
212
|
-
previousRecord:
|
|
213
|
-
nextRecord:
|
|
214
|
-
recordOf:
|
|
215
|
-
recordNotFound:
|
|
349
|
+
addToFavorites: "Ajouter aux favoris",
|
|
350
|
+
removeFromFavorites: "Retirer des favoris",
|
|
351
|
+
previousRecord: "Enregistrement précédent",
|
|
352
|
+
nextRecord: "Enregistrement suivant",
|
|
353
|
+
recordOf: "{{current}} sur {{total}}",
|
|
354
|
+
recordNotFound: "Enregistrement introuvable",
|
|
216
355
|
recordNotFoundDescription: "L'enregistrement que vous recherchez n'existe pas ou a peut-être été supprimé.",
|
|
217
|
-
goBack:
|
|
218
|
-
details:
|
|
219
|
-
related:
|
|
220
|
-
relatedRecords:
|
|
221
|
-
relatedRecordOne:
|
|
222
|
-
noRelatedRecords:
|
|
223
|
-
loading:
|
|
224
|
-
copyToClipboard:
|
|
225
|
-
copied:
|
|
226
|
-
deleteConfirmation:
|
|
356
|
+
goBack: "Retour",
|
|
357
|
+
details: "Détails",
|
|
358
|
+
related: "Associés",
|
|
359
|
+
relatedRecords: "{{count}} enregistrements",
|
|
360
|
+
relatedRecordOne: "{{count}} enregistrement",
|
|
361
|
+
noRelatedRecords: "Aucun enregistrement associé trouvé",
|
|
362
|
+
loading: "Chargement...",
|
|
363
|
+
copyToClipboard: "Copier dans le presse-papiers",
|
|
364
|
+
copied: "Copié !",
|
|
365
|
+
deleteConfirmation: "Êtes-vous sûr de vouloir supprimer cet enregistrement ?",
|
|
227
366
|
editRecord: "Modifier l'enregistrement",
|
|
228
|
-
viewAll:
|
|
229
|
-
new:
|
|
230
|
-
emptyValue:
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
367
|
+
viewAll: "Tout afficher",
|
|
368
|
+
new: "Nouveau",
|
|
369
|
+
emptyValue: "—",
|
|
370
|
+
comments: "Commentaires",
|
|
371
|
+
searchComments: "Rechercher des commentaires…",
|
|
372
|
+
addCommentPlaceholder: "Ajouter un commentaire… (Ctrl+Entrée pour envoyer)",
|
|
373
|
+
noMatchingComments: "Aucun commentaire correspondant",
|
|
374
|
+
noCommentsYet: "Aucun commentaire pour le moment",
|
|
375
|
+
pinned: "Épinglé",
|
|
376
|
+
pin: "Épingler",
|
|
377
|
+
unpin: "Désépingler",
|
|
378
|
+
justNow: "à l'instant",
|
|
379
|
+
minutesAgo: "il y a {{count}} min",
|
|
380
|
+
hoursAgo: "il y a {{count}} h",
|
|
381
|
+
daysAgo: "il y a {{count}} j",
|
|
382
|
+
dropFilesToUpload: "Déposez les fichiers ici ou cliquez pour télécharger",
|
|
383
|
+
attachmentCount: "{{count}} pièce jointe",
|
|
384
|
+
attachmentCountPlural: "{{count}} pièces jointes",
|
|
385
|
+
removeAttachment: "Supprimer la pièce jointe",
|
|
386
|
+
unifiedDiff: "Vue unifiée",
|
|
387
|
+
sideBySideDiff: "Vue côte à côte",
|
|
388
|
+
noChanges: "Aucune modification",
|
|
389
|
+
previousVersion: "Précédent",
|
|
390
|
+
currentVersion: "Actuel",
|
|
391
|
+
discussion: "Discussion",
|
|
392
|
+
showDiscussion: "Afficher la discussion ({{count}})",
|
|
393
|
+
hideDiscussion: "Masquer la discussion",
|
|
394
|
+
bold: "Gras (Ctrl+B)",
|
|
395
|
+
italic: "Italique (Ctrl+I)",
|
|
396
|
+
listFormat: "Liste",
|
|
397
|
+
inlineCode: "Code en ligne",
|
|
398
|
+
mentionSomeone: "Mentionner quelqu'un",
|
|
399
|
+
preview: "Aperçu",
|
|
400
|
+
submitComment: "Envoyer (Ctrl+Entrée)",
|
|
401
|
+
sendComment: "Envoyer",
|
|
402
|
+
writeComment: "Écrire un commentaire…",
|
|
403
|
+
subscribedTooltip: "Abonné — cliquez pour vous désabonner",
|
|
404
|
+
unsubscribedTooltip: "S'abonner aux notifications",
|
|
405
|
+
firstRecord: "Premier enregistrement (Début)",
|
|
406
|
+
previousRecordKey: "Enregistrement précédent (←)",
|
|
407
|
+
nextRecordKey: "Enregistrement suivant (→)",
|
|
408
|
+
lastRecord: "Dernier enregistrement (Fin)",
|
|
409
|
+
noRecords: "Aucun enregistrement",
|
|
410
|
+
searchWhileNavigating: "Rechercher pendant la navigation",
|
|
411
|
+
searchRecords: "Rechercher des enregistrements…",
|
|
412
|
+
allActivity: "Toute l'activité",
|
|
413
|
+
commentsOnly: "Commentaires uniquement",
|
|
414
|
+
fieldChangesFilter: "Modifications de champs",
|
|
415
|
+
tasksOnly: "Tâches uniquement",
|
|
416
|
+
leaveCommentPlaceholder: "Laisser un commentaire… (Ctrl+Entrée pour envoyer)",
|
|
417
|
+
noActivity: "Aucune activité enregistrée",
|
|
418
|
+
loadMore: "Charger plus",
|
|
419
|
+
edited: "(modifié)",
|
|
420
|
+
via: "via {{source}}",
|
|
421
|
+
replyCount: "{{count}} réponse",
|
|
422
|
+
replyCountPlural: "{{count}} réponses",
|
|
423
|
+
replyPlaceholder: "Répondre…",
|
|
424
|
+
filterActivity: "Filtrer l'activité",
|
|
425
|
+
openDiscussion: "Ouvrir le panneau de discussion",
|
|
426
|
+
closeDiscussion: "Fermer le panneau de discussion",
|
|
427
|
+
subscribeAriaLabel: "S'abonner aux notifications",
|
|
428
|
+
unsubscribeAriaLabel: "Se désabonner des notifications",
|
|
429
|
+
clearSearch: "Effacer la recherche",
|
|
430
|
+
saving: "Enregistrement…",
|
|
431
|
+
lockedByApproval: "Verrouillé pour approbation",
|
|
432
|
+
lockedTooltip: "Cet enregistrement a une demande d'approbation en attente ; la modification est verrouillée",
|
|
433
|
+
cancelApproval: "Annuler l'approbation",
|
|
434
|
+
cancelApprovalInFlight: "Annulation…",
|
|
435
|
+
cancelApprovalTooltip: "Annuler la demande d'approbation en attente pour déverrouiller l'enregistrement",
|
|
436
|
+
cancelApprovalFailed: "Échec de l'annulation de l'approbation",
|
|
437
|
+
cancelApprovalUnavailable: "L'annulation des approbations n'est pas prise en charge par cette source de données",
|
|
438
|
+
linkCopied: "Lien copié dans le presse-papiers",
|
|
439
|
+
linkCopyFailed: "Impossible de copier le lien",
|
|
440
|
+
cancel: "Annuler",
|
|
441
|
+
cancelEdit: "Abandonner les modifications",
|
|
442
|
+
sectionMoreDetails: "Plus de détails",
|
|
443
|
+
concurrentUpdateTitle: "Cet enregistrement a été modifié par quelqu'un d'autre",
|
|
444
|
+
concurrentUpdateDescription: "Un autre utilisateur a enregistré une version plus récente de {{field}} pendant votre modification. Choisissez comment résoudre le conflit.",
|
|
445
|
+
concurrentUpdateYourEdit: "Votre modification",
|
|
446
|
+
concurrentUpdateCurrentValue: "Valeur actuelle",
|
|
447
|
+
concurrentUpdateUpdatedBy: "Mis à jour par {{name}}",
|
|
448
|
+
concurrentUpdateUpdatedAt: "Mis à jour le {{when}}",
|
|
449
|
+
concurrentUpdateReload: "Charger la version actuelle",
|
|
450
|
+
concurrentUpdateOverwrite: "Écraser quand même",
|
|
451
|
+
concurrentUpdateCancel: "Annuler",
|
|
452
|
+
openInNewTab: "Ouvrir dans un nouvel onglet",
|
|
453
|
+
activity: "Activité",
|
|
454
|
+
history: "Historique",
|
|
455
|
+
editRow: "Modifier",
|
|
456
|
+
deleteRow: "Supprimer",
|
|
457
|
+
deleteRowConfirmation: "Supprimer cet enregistrement ?",
|
|
458
|
+
deleteRowTitle: "Supprimer l'enregistrement",
|
|
459
|
+
actions: "Actions",
|
|
460
|
+
previousPage: "Précédent",
|
|
461
|
+
nextPage: "Suivant",
|
|
462
|
+
pageOf: "Page {{current}} sur {{total}}",
|
|
463
|
+
sortBy: "Trier par",
|
|
464
|
+
filterPlaceholder: "Filtrer...",
|
|
465
|
+
highlightFields: "Champs clés",
|
|
466
|
+
createdBy: "Créé par",
|
|
467
|
+
updatedBy: "Mis à jour par",
|
|
468
|
+
showEmptyRelated_one: "+ {{count}} vide",
|
|
469
|
+
showEmptyRelated_other: "+ {{count}} vides",
|
|
470
|
+
copyEmail: "Copier l'e-mail",
|
|
471
|
+
copyPhone: "Copier le téléphone",
|
|
472
|
+
copyRecordId: "Copier l'ID",
|
|
473
|
+
showEmptyFields: "Afficher {{count}} champs vides",
|
|
474
|
+
hideEmptyFields: "Masquer les champs vides",
|
|
475
|
+
noValue: "Aucune valeur",
|
|
300
476
|
},
|
|
301
477
|
chart: {
|
|
302
|
-
noData:
|
|
303
|
-
loading:
|
|
478
|
+
noData: "Aucune donnée de graphique disponible",
|
|
479
|
+
loading: "Chargement du graphique...",
|
|
304
480
|
},
|
|
305
481
|
map: {
|
|
306
|
-
searchLocations:
|
|
307
|
-
locationDetails:
|
|
308
|
-
markersCount:
|
|
309
|
-
invalidCoordinates:
|
|
310
|
-
invalidCoordinatesPlural:
|
|
482
|
+
searchLocations: "Rechercher des lieux…",
|
|
483
|
+
locationDetails: "Détails du lieu",
|
|
484
|
+
markersCount: "{{count}} marqueurs",
|
|
485
|
+
invalidCoordinates: "{{count}} enregistrement avec des coordonnées manquantes ou invalides exclu de la carte.",
|
|
486
|
+
invalidCoordinatesPlural: "{{count}} enregistrements avec des coordonnées manquantes ou invalides exclus de la carte.",
|
|
311
487
|
},
|
|
312
488
|
workflow: {
|
|
313
|
-
draft:
|
|
314
|
-
active:
|
|
315
|
-
paused:
|
|
316
|
-
completed:
|
|
317
|
-
cancelled:
|
|
318
|
-
save:
|
|
319
|
-
publish:
|
|
320
|
-
addNode:
|
|
321
|
-
workflowFlow:
|
|
322
|
-
properties:
|
|
323
|
-
connections:
|
|
324
|
-
quickConnect:
|
|
325
|
-
fromPlaceholder:
|
|
326
|
-
toPlaceholder:
|
|
327
|
-
connect:
|
|
328
|
-
label:
|
|
329
|
-
type:
|
|
330
|
-
description:
|
|
331
|
-
assignee:
|
|
332
|
-
assigneeType:
|
|
333
|
-
user:
|
|
334
|
-
role:
|
|
335
|
-
group:
|
|
336
|
-
expression:
|
|
337
|
-
timeoutMinutes:
|
|
338
|
-
selectNodeToEdit:
|
|
339
|
-
workflowTitle:
|
|
340
|
-
newWorkflow:
|
|
341
|
-
outConnections:
|
|
342
|
-
start:
|
|
343
|
-
end:
|
|
344
|
-
task:
|
|
345
|
-
userTask:
|
|
346
|
-
serviceTask:
|
|
347
|
-
scriptTask:
|
|
348
|
-
approval:
|
|
349
|
-
condition:
|
|
350
|
-
parallelGateway:
|
|
351
|
-
joinGateway:
|
|
352
|
-
boundaryEvent:
|
|
353
|
-
delay:
|
|
354
|
-
notification:
|
|
355
|
-
webhook:
|
|
356
|
-
allowConcurrency:
|
|
357
|
-
forbidConcurrency:
|
|
358
|
-
replaceConcurrency:
|
|
359
|
-
queueConcurrency:
|
|
360
|
-
conditionEvent:
|
|
361
|
-
manualEvent:
|
|
362
|
-
webhookEvent:
|
|
363
|
-
timerEvent:
|
|
364
|
-
signalEvent:
|
|
365
|
-
versionHistory:
|
|
366
|
-
importBpmn:
|
|
367
|
-
exportBpmn:
|
|
368
|
-
undo:
|
|
369
|
-
redo:
|
|
370
|
-
resetZoom:
|
|
489
|
+
draft: "Brouillon",
|
|
490
|
+
active: "Actif",
|
|
491
|
+
paused: "En pause",
|
|
492
|
+
completed: "Terminé",
|
|
493
|
+
cancelled: "Annulé",
|
|
494
|
+
save: "Enregistrer",
|
|
495
|
+
publish: "Publier",
|
|
496
|
+
addNode: "Ajouter un nœud",
|
|
497
|
+
workflowFlow: "Flux de travail",
|
|
498
|
+
properties: "Propriétés",
|
|
499
|
+
connections: "Connexions",
|
|
500
|
+
quickConnect: "Connexion rapide",
|
|
501
|
+
fromPlaceholder: "De...",
|
|
502
|
+
toPlaceholder: "Vers...",
|
|
503
|
+
connect: "Connecter",
|
|
504
|
+
label: "Libellé",
|
|
505
|
+
type: "Type",
|
|
506
|
+
description: "Description",
|
|
507
|
+
assignee: "Responsable",
|
|
508
|
+
assigneeType: "Type de responsable",
|
|
509
|
+
user: "Utilisateur",
|
|
510
|
+
role: "Rôle",
|
|
511
|
+
group: "Groupe",
|
|
512
|
+
expression: "Expression",
|
|
513
|
+
timeoutMinutes: "Délai (minutes)",
|
|
514
|
+
selectNodeToEdit: "Sélectionnez un nœud pour modifier ses propriétés",
|
|
515
|
+
workflowTitle: "Titre du workflow",
|
|
516
|
+
newWorkflow: "Nouveau workflow",
|
|
517
|
+
outConnections: "{{count}} sortie(s)",
|
|
518
|
+
start: "Début",
|
|
519
|
+
end: "Fin",
|
|
520
|
+
task: "Tâche",
|
|
521
|
+
userTask: "Tâche utilisateur",
|
|
522
|
+
serviceTask: "Tâche service",
|
|
523
|
+
scriptTask: "Tâche script",
|
|
524
|
+
approval: "Approbation",
|
|
525
|
+
condition: "Condition",
|
|
526
|
+
parallelGateway: "Passerelle parallèle",
|
|
527
|
+
joinGateway: "Passerelle de jonction",
|
|
528
|
+
boundaryEvent: "Événement limite",
|
|
529
|
+
delay: "Délai",
|
|
530
|
+
notification: "Notification",
|
|
531
|
+
webhook: "Webhook",
|
|
532
|
+
allowConcurrency: "Autoriser (exécution simultanée)",
|
|
533
|
+
forbidConcurrency: "Interdire (ignorer les nouveaux)",
|
|
534
|
+
replaceConcurrency: "Remplacer (annuler les existants)",
|
|
535
|
+
queueConcurrency: "File d'attente (exécuter après)",
|
|
536
|
+
conditionEvent: "Condition",
|
|
537
|
+
manualEvent: "Manuel",
|
|
538
|
+
webhookEvent: "Webhook",
|
|
539
|
+
timerEvent: "Minuterie",
|
|
540
|
+
signalEvent: "Signal",
|
|
541
|
+
versionHistory: "Historique des versions",
|
|
542
|
+
importBpmn: "Importer BPMN",
|
|
543
|
+
exportBpmn: "Exporter BPMN",
|
|
544
|
+
undo: "Annuler",
|
|
545
|
+
redo: "Rétablir",
|
|
546
|
+
resetZoom: "Réinitialiser le zoom",
|
|
371
547
|
},
|
|
372
548
|
dashboard: {
|
|
373
|
-
addWidget:
|
|
374
|
-
removeWidget:
|
|
375
|
-
editLayout:
|
|
376
|
-
saveLayout:
|
|
377
|
-
resetLayout:
|
|
549
|
+
addWidget: "Ajouter un widget",
|
|
550
|
+
removeWidget: "Supprimer un widget",
|
|
551
|
+
editLayout: "Modifier la mise en page",
|
|
552
|
+
saveLayout: "Enregistrer la mise en page",
|
|
553
|
+
resetLayout: "Réinitialiser la mise en page",
|
|
554
|
+
total: "Total",
|
|
555
|
+
noDataAvailable: "Aucune donnée disponible",
|
|
556
|
+
noDataSourceFor: "Aucune source de données pour",
|
|
557
|
+
trend: {
|
|
558
|
+
vsLastQuarter: "vs. trimestre dernier",
|
|
559
|
+
vsLastMonth: "vs. mois dernier",
|
|
560
|
+
vsLastWeek: "vs. semaine dernière",
|
|
561
|
+
vsLastYear: "vs. année dernière",
|
|
562
|
+
vsYesterday: "vs. hier",
|
|
563
|
+
vsPreviousPeriod: "vs. période précédente",
|
|
564
|
+
},
|
|
378
565
|
},
|
|
379
566
|
configPanel: {
|
|
380
|
-
save:
|
|
381
|
-
discard:
|
|
382
|
-
close:
|
|
383
|
-
layout:
|
|
384
|
-
columns:
|
|
385
|
-
gap:
|
|
386
|
-
rowHeight:
|
|
387
|
-
data:
|
|
388
|
-
refreshInterval:
|
|
389
|
-
appearance:
|
|
390
|
-
title:
|
|
391
|
-
showDescription:
|
|
392
|
-
theme:
|
|
393
|
-
configuration:
|
|
394
|
-
general:
|
|
395
|
-
advanced:
|
|
567
|
+
save: "Enregistrer",
|
|
568
|
+
discard: "Annuler",
|
|
569
|
+
close: "Fermer",
|
|
570
|
+
layout: "Disposition",
|
|
571
|
+
columns: "Colonnes",
|
|
572
|
+
gap: "Espacement",
|
|
573
|
+
rowHeight: "Hauteur de ligne",
|
|
574
|
+
data: "Données",
|
|
575
|
+
refreshInterval: "Intervalle de rafraîchissement",
|
|
576
|
+
appearance: "Apparence",
|
|
577
|
+
title: "Titre",
|
|
578
|
+
showDescription: "Afficher la description",
|
|
579
|
+
theme: "Thème",
|
|
580
|
+
configuration: "Configuration",
|
|
581
|
+
general: "Général",
|
|
582
|
+
advanced: "Avancé",
|
|
396
583
|
},
|
|
397
584
|
appDesigner: {
|
|
398
|
-
createApp:
|
|
585
|
+
createApp: "Créer une application",
|
|
399
586
|
editApp: "Modifier l'application",
|
|
400
|
-
basicInfo:
|
|
401
|
-
objects:
|
|
402
|
-
navigation:
|
|
403
|
-
branding:
|
|
404
|
-
appName: "Nom de l'
|
|
405
|
-
appTitle:
|
|
406
|
-
appDescription:
|
|
407
|
-
appIcon:
|
|
408
|
-
template:
|
|
409
|
-
layout:
|
|
410
|
-
layoutSidebar:
|
|
411
|
-
layoutHeader:
|
|
412
|
-
layoutEmpty:
|
|
413
|
-
selectObjects:
|
|
414
|
-
searchObjects:
|
|
415
|
-
selectAll:
|
|
416
|
-
deselectAll:
|
|
417
|
-
navBuilder:
|
|
418
|
-
addGroup:
|
|
419
|
-
addUrl:
|
|
420
|
-
addSeparator:
|
|
421
|
-
noNavItems:
|
|
422
|
-
logoUrl:
|
|
423
|
-
primaryColor:
|
|
424
|
-
faviconUrl:
|
|
425
|
-
preview:
|
|
426
|
-
complete:
|
|
427
|
-
snakeCaseHint:
|
|
428
|
-
modeEdit:
|
|
429
|
-
modePreview:
|
|
430
|
-
modeCode:
|
|
431
|
-
addWidget:
|
|
432
|
-
widgetProperties:
|
|
433
|
-
dataSource:
|
|
434
|
-
valueField:
|
|
435
|
-
aggregate:
|
|
436
|
-
colorVariant:
|
|
437
|
-
addComponent:
|
|
438
|
-
componentProperties:
|
|
439
|
-
viewType:
|
|
440
|
-
fields:
|
|
587
|
+
basicInfo: "Informations de base",
|
|
588
|
+
objects: "Objets",
|
|
589
|
+
navigation: "Navigation",
|
|
590
|
+
branding: "Identité visuelle",
|
|
591
|
+
appName: "Nom de l'app",
|
|
592
|
+
appTitle: "Titre",
|
|
593
|
+
appDescription: "Description",
|
|
594
|
+
appIcon: "Icône",
|
|
595
|
+
template: "Modèle",
|
|
596
|
+
layout: "Disposition",
|
|
597
|
+
layoutSidebar: "Barre latérale",
|
|
598
|
+
layoutHeader: "En-tête",
|
|
599
|
+
layoutEmpty: "Vide",
|
|
600
|
+
selectObjects: "Sélectionner des objets",
|
|
601
|
+
searchObjects: "Rechercher des objets…",
|
|
602
|
+
selectAll: "Tout sélectionner",
|
|
603
|
+
deselectAll: "Tout désélectionner",
|
|
604
|
+
navBuilder: "Constructeur de navigation",
|
|
605
|
+
addGroup: "Ajouter un groupe",
|
|
606
|
+
addUrl: "Ajouter une URL",
|
|
607
|
+
addSeparator: "Ajouter un séparateur",
|
|
608
|
+
noNavItems: "Aucun élément de navigation pour l'instant.",
|
|
609
|
+
logoUrl: "URL du logo",
|
|
610
|
+
primaryColor: "Couleur principale",
|
|
611
|
+
faviconUrl: "URL du favicon",
|
|
612
|
+
preview: "Aperçu",
|
|
613
|
+
complete: "Terminer",
|
|
614
|
+
snakeCaseHint: "Doit être en snake_case (ex. my_app)",
|
|
615
|
+
modeEdit: "Modifier",
|
|
616
|
+
modePreview: "Aperçu",
|
|
617
|
+
modeCode: "Code",
|
|
618
|
+
addWidget: "Ajouter un widget",
|
|
619
|
+
widgetProperties: "Propriétés du widget",
|
|
620
|
+
dataSource: "Source de données",
|
|
621
|
+
valueField: "Champ de valeur",
|
|
622
|
+
aggregate: "Agrégat",
|
|
623
|
+
colorVariant: "Variante de couleur",
|
|
624
|
+
addComponent: "Ajouter un composant",
|
|
625
|
+
componentProperties: "Propriétés du composant",
|
|
626
|
+
viewType: "Type de vue",
|
|
627
|
+
fields: "Champs",
|
|
441
628
|
toolbar: "Barre d'outils",
|
|
442
|
-
showSearch:
|
|
443
|
-
showFilters:
|
|
444
|
-
showSort:
|
|
445
|
-
appearance:
|
|
446
|
-
rowHeight:
|
|
447
|
-
stripedRows:
|
|
448
|
-
bordered:
|
|
449
|
-
livePreview:
|
|
450
|
-
stepBasicDesc:
|
|
451
|
-
stepObjectsDesc:
|
|
629
|
+
showSearch: "Afficher la recherche",
|
|
630
|
+
showFilters: "Afficher les filtres",
|
|
631
|
+
showSort: "Afficher le tri",
|
|
632
|
+
appearance: "Apparence",
|
|
633
|
+
rowHeight: "Hauteur de ligne",
|
|
634
|
+
stripedRows: "Lignes alternées",
|
|
635
|
+
bordered: "Avec bordure",
|
|
636
|
+
livePreview: "Aperçu en direct",
|
|
637
|
+
stepBasicDesc: "Nom, titre et mise en page",
|
|
638
|
+
stepObjectsDesc: "Sélectionner les objets métier",
|
|
452
639
|
stepNavigationDesc: "Construire l'arbre de navigation",
|
|
453
|
-
stepBrandingDesc:
|
|
454
|
-
noObjectsFound:
|
|
640
|
+
stepBrandingDesc: "Logo, couleurs et favicon",
|
|
641
|
+
noObjectsFound: "Aucun objet trouvé.",
|
|
455
642
|
noNavItemsHint: "Pas encore d'éléments de navigation. Sélectionnez des objets à l'étape précédente ou ajoutez-en manuellement.",
|
|
456
|
-
separator:
|
|
457
|
-
separatorLabel:
|
|
458
|
-
newGroup:
|
|
459
|
-
newLink:
|
|
460
|
-
saveDraft:
|
|
461
|
-
cancelConfirmTitle:
|
|
462
|
-
cancelConfirmMessage:
|
|
463
|
-
confirmDiscard:
|
|
464
|
-
keepEditing:
|
|
465
|
-
navNoItems:
|
|
466
|
-
navNoPreviewItems:
|
|
467
|
-
navLivePreview:
|
|
468
|
-
navCollapseGroup:
|
|
469
|
-
navExpandGroup:
|
|
470
|
-
navAddChild:
|
|
471
|
-
navMoveUp:
|
|
472
|
-
navMoveDown:
|
|
473
|
-
navRemove:
|
|
643
|
+
separator: "Séparateur",
|
|
644
|
+
separatorLabel: "— Séparateur —",
|
|
645
|
+
newGroup: "Nouveau groupe",
|
|
646
|
+
newLink: "Nouveau lien",
|
|
647
|
+
saveDraft: "Enregistrer le brouillon",
|
|
648
|
+
cancelConfirmTitle: "Abandonner les modifications ?",
|
|
649
|
+
cancelConfirmMessage: "Vous avez des modifications non enregistrées. Êtes-vous sûr de vouloir annuler ?",
|
|
650
|
+
confirmDiscard: "Abandonner",
|
|
651
|
+
keepEditing: "Continuer à éditer",
|
|
652
|
+
navNoItems: "Aucun élément de navigation. Cliquez sur les boutons ci-dessus pour ajouter des éléments.",
|
|
653
|
+
navNoPreviewItems: "Aucun élément",
|
|
654
|
+
navLivePreview: "Aperçu en direct",
|
|
655
|
+
navCollapseGroup: "Réduire le groupe",
|
|
656
|
+
navExpandGroup: "Développer le groupe",
|
|
657
|
+
navAddChild: "Ajouter un enfant",
|
|
658
|
+
navMoveUp: "Monter",
|
|
659
|
+
navMoveDown: "Descendre",
|
|
660
|
+
navRemove: "Supprimer",
|
|
474
661
|
navObjectPage: "Page d'objet",
|
|
475
|
-
navDashboard:
|
|
476
|
-
navPage:
|
|
477
|
-
navReport:
|
|
478
|
-
navGroup:
|
|
479
|
-
navUrl:
|
|
480
|
-
navSeparator:
|
|
481
|
-
navTypeObject:
|
|
482
|
-
navTypeDashboard:
|
|
483
|
-
navTypePage:
|
|
484
|
-
navTypeReport:
|
|
485
|
-
navTypeUrl:
|
|
486
|
-
navTypeGroup:
|
|
487
|
-
navTypeSeparator:
|
|
488
|
-
navTypeAction:
|
|
489
|
-
navEditIcon:
|
|
490
|
-
navToggleVisible:
|
|
491
|
-
navHidden:
|
|
492
|
-
navExportSchema:
|
|
493
|
-
navImportSchema:
|
|
494
|
-
navExportSuccess:
|
|
495
|
-
navImportSuccess:
|
|
496
|
-
navImportError:
|
|
497
|
-
navIconPlaceholder:
|
|
498
|
-
dashboardEditor:
|
|
499
|
-
noWidgets:
|
|
500
|
-
widgetLayoutSize:
|
|
501
|
-
widgetWidth:
|
|
502
|
-
widgetHeight:
|
|
503
|
-
dashboardPreview:
|
|
504
|
-
noWidgetsPreview:
|
|
505
|
-
pageCanvasEditor:
|
|
506
|
-
emptyPage:
|
|
507
|
-
pagePreview:
|
|
508
|
-
noComponentsPreview:
|
|
509
|
-
modePage:
|
|
510
|
-
modeDashboard:
|
|
511
|
-
undo:
|
|
512
|
-
redo:
|
|
513
|
-
brandingEditor:
|
|
514
|
-
brandingExport:
|
|
515
|
-
brandingImport:
|
|
516
|
-
brandingPreview:
|
|
517
|
-
brandingSampleButton:
|
|
518
|
-
brandingSampleText:
|
|
519
|
-
colorPalette:
|
|
520
|
-
fontFamily:
|
|
521
|
-
fontDefault:
|
|
522
|
-
modeLight:
|
|
523
|
-
modeDark:
|
|
524
|
-
mobilePreview:
|
|
662
|
+
navDashboard: "Tableau de bord",
|
|
663
|
+
navPage: "Page",
|
|
664
|
+
navReport: "Rapport",
|
|
665
|
+
navGroup: "Groupe",
|
|
666
|
+
navUrl: "URL",
|
|
667
|
+
navSeparator: "Séparateur",
|
|
668
|
+
navTypeObject: "Objet",
|
|
669
|
+
navTypeDashboard: "Tableau de bord",
|
|
670
|
+
navTypePage: "Page",
|
|
671
|
+
navTypeReport: "Rapport",
|
|
672
|
+
navTypeUrl: "URL",
|
|
673
|
+
navTypeGroup: "Groupe",
|
|
674
|
+
navTypeSeparator: "Séparateur",
|
|
675
|
+
navTypeAction: "Action",
|
|
676
|
+
navEditIcon: "Modifier l'icône",
|
|
677
|
+
navToggleVisible: "Basculer la visibilité",
|
|
678
|
+
navHidden: "Masqué",
|
|
679
|
+
navExportSchema: "Exporter JSON",
|
|
680
|
+
navImportSchema: "Importer JSON",
|
|
681
|
+
navExportSuccess: "Schéma de navigation exporté",
|
|
682
|
+
navImportSuccess: "Schéma de navigation importé",
|
|
683
|
+
navImportError: "JSON de navigation invalide",
|
|
684
|
+
navIconPlaceholder: "Nom de l'icône (ex. Users)",
|
|
685
|
+
dashboardEditor: "Éditeur de tableau de bord",
|
|
686
|
+
noWidgets: "Aucun widget. Cliquez sur un bouton ci-dessus pour en ajouter un.",
|
|
687
|
+
widgetLayoutSize: "Taille de la disposition",
|
|
688
|
+
widgetWidth: "Largeur",
|
|
689
|
+
widgetHeight: "Hauteur",
|
|
690
|
+
dashboardPreview: "Aperçu du tableau de bord",
|
|
691
|
+
noWidgetsPreview: "Aucun widget à prévisualiser",
|
|
692
|
+
pageCanvasEditor: "Éditeur de canevas de page",
|
|
693
|
+
emptyPage: "Page vide. Cliquez sur un bouton ci-dessus pour ajouter un composant.",
|
|
694
|
+
pagePreview: "Aperçu de la page",
|
|
695
|
+
noComponentsPreview: "Aucun composant à prévisualiser",
|
|
696
|
+
modePage: "Page",
|
|
697
|
+
modeDashboard: "Tableau de bord",
|
|
698
|
+
undo: "Annuler",
|
|
699
|
+
redo: "Rétablir",
|
|
700
|
+
brandingEditor: "Éditeur d'identité",
|
|
701
|
+
brandingExport: "Exporter JSON",
|
|
702
|
+
brandingImport: "Importer JSON",
|
|
703
|
+
brandingPreview: "Aperçu",
|
|
704
|
+
brandingSampleButton: "Bouton exemple",
|
|
705
|
+
brandingSampleText: "Voici l'apparence de votre thème de marque.",
|
|
706
|
+
colorPalette: "Palette de couleurs",
|
|
707
|
+
fontFamily: "Famille de polices",
|
|
708
|
+
fontDefault: "Par défaut (système)",
|
|
709
|
+
modeLight: "Clair",
|
|
710
|
+
modeDark: "Sombre",
|
|
711
|
+
mobilePreview: "Aperçu mobile",
|
|
525
712
|
objectManager: {
|
|
526
|
-
title:
|
|
527
|
-
addObject:
|
|
528
|
-
searchPlaceholder:
|
|
529
|
-
noObjects:
|
|
530
|
-
objectName:
|
|
531
|
-
objectLabel:
|
|
532
|
-
pluralLabel:
|
|
533
|
-
icon:
|
|
534
|
-
selectIcon:
|
|
535
|
-
group:
|
|
536
|
-
noGroup:
|
|
537
|
-
sortOrder:
|
|
538
|
-
enabled:
|
|
539
|
-
relationships:
|
|
540
|
-
systemBadge:
|
|
541
|
-
fieldCount:
|
|
542
|
-
ungrouped:
|
|
543
|
-
deleteConfirmTitle:
|
|
544
|
-
deleteConfirmMessage: '
|
|
713
|
+
title: "Gestionnaire d'objets",
|
|
714
|
+
addObject: "Nouvel objet",
|
|
715
|
+
searchPlaceholder: "Rechercher des objets…",
|
|
716
|
+
noObjects: "Aucun objet trouvé.",
|
|
717
|
+
objectName: "Nom API",
|
|
718
|
+
objectLabel: "Étiquette",
|
|
719
|
+
pluralLabel: "Étiquette plurielle",
|
|
720
|
+
icon: "Icône",
|
|
721
|
+
selectIcon: "Sélectionner une icône…",
|
|
722
|
+
group: "Groupe",
|
|
723
|
+
noGroup: "Aucun groupe",
|
|
724
|
+
sortOrder: "Ordre de tri",
|
|
725
|
+
enabled: "Activé",
|
|
726
|
+
relationships: "Relations",
|
|
727
|
+
systemBadge: "Système",
|
|
728
|
+
fieldCount: "{{count}} champs",
|
|
729
|
+
ungrouped: "Sans groupe",
|
|
730
|
+
deleteConfirmTitle: "Supprimer l'objet ?",
|
|
731
|
+
deleteConfirmMessage: "Cela supprimera définitivement l'objet et tous ses champs. Cette action est irréversible.",
|
|
545
732
|
},
|
|
546
733
|
fieldDesigner: {
|
|
547
|
-
title:
|
|
548
|
-
addField:
|
|
549
|
-
searchPlaceholder:
|
|
550
|
-
allTypes:
|
|
551
|
-
noFields:
|
|
552
|
-
fieldName:
|
|
553
|
-
fieldLabel:
|
|
554
|
-
fieldType:
|
|
555
|
-
fieldGroup:
|
|
556
|
-
description:
|
|
557
|
-
required:
|
|
558
|
-
unique:
|
|
559
|
-
readOnly:
|
|
560
|
-
hidden:
|
|
561
|
-
indexed:
|
|
562
|
-
externalId:
|
|
563
|
-
trackHistory:
|
|
564
|
-
defaultValue:
|
|
565
|
-
placeholder:
|
|
566
|
-
referenceTo:
|
|
567
|
-
formula:
|
|
568
|
-
options:
|
|
569
|
-
addOption:
|
|
570
|
-
validationRules:
|
|
571
|
-
addRule:
|
|
572
|
-
systemBadge:
|
|
573
|
-
ungrouped:
|
|
574
|
-
deleteConfirmTitle:
|
|
575
|
-
deleteConfirmMessage:
|
|
734
|
+
title: "Concepteur de champs",
|
|
735
|
+
addField: "Nouveau champ",
|
|
736
|
+
searchPlaceholder: "Rechercher des champs…",
|
|
737
|
+
allTypes: "Tous les types",
|
|
738
|
+
noFields: "Aucun champ trouvé.",
|
|
739
|
+
fieldName: "Nom API",
|
|
740
|
+
fieldLabel: "Étiquette",
|
|
741
|
+
fieldType: "Type",
|
|
742
|
+
fieldGroup: "Groupe",
|
|
743
|
+
description: "Description",
|
|
744
|
+
required: "Obligatoire",
|
|
745
|
+
unique: "Unique",
|
|
746
|
+
readOnly: "Lecture seule",
|
|
747
|
+
hidden: "Masqué",
|
|
748
|
+
indexed: "Indexé",
|
|
749
|
+
externalId: "ID externe",
|
|
750
|
+
trackHistory: "Suivre l'historique",
|
|
751
|
+
defaultValue: "Valeur par défaut",
|
|
752
|
+
placeholder: "Espace réservé",
|
|
753
|
+
referenceTo: "Référence à",
|
|
754
|
+
formula: "Formule",
|
|
755
|
+
options: "Options",
|
|
756
|
+
addOption: "Ajouter une option",
|
|
757
|
+
validationRules: "Règles de validation",
|
|
758
|
+
addRule: "Ajouter une règle",
|
|
759
|
+
systemBadge: "Système",
|
|
760
|
+
ungrouped: "Général",
|
|
761
|
+
deleteConfirmTitle: "Supprimer le champ ?",
|
|
762
|
+
deleteConfirmMessage: "Le champ sera définitivement supprimé. Les données existantes dans ce champ seront perdues.",
|
|
763
|
+
basicSection: "Basique",
|
|
764
|
+
typeSpecificSection: "Paramètres de type",
|
|
765
|
+
advancedSection: "Avancé",
|
|
766
|
+
typeCategory: {
|
|
767
|
+
text: "Texte",
|
|
768
|
+
number: "Nombre",
|
|
769
|
+
date: "Date et heure",
|
|
770
|
+
choice: "Choix",
|
|
771
|
+
relation: "Relation",
|
|
772
|
+
advanced: "Avancé",
|
|
773
|
+
},
|
|
576
774
|
},
|
|
577
775
|
},
|
|
578
776
|
console: {
|
|
579
|
-
title:
|
|
777
|
+
title: "Console ObjectStack",
|
|
580
778
|
initializing: "Initialisation de l'application...",
|
|
581
779
|
breadcrumb: {
|
|
582
|
-
dashboards:
|
|
583
|
-
pages:
|
|
584
|
-
reports:
|
|
585
|
-
system:
|
|
780
|
+
dashboards: "Tableaux de bord",
|
|
781
|
+
pages: "Pages",
|
|
782
|
+
reports: "Rapports",
|
|
783
|
+
system: "Système",
|
|
586
784
|
},
|
|
587
785
|
loadingSteps: {
|
|
588
|
-
connecting:
|
|
589
|
-
loadingConfig:
|
|
786
|
+
connecting: "Connexion à la source de données",
|
|
787
|
+
loadingConfig: "Chargement de la configuration",
|
|
590
788
|
preparingWorkspace: "Préparation de l'espace de travail",
|
|
591
789
|
},
|
|
592
790
|
error: {
|
|
593
|
-
connectionFailed:
|
|
791
|
+
connectionFailed: "Impossible de se connecter au serveur",
|
|
594
792
|
serverUnreachable: "Le serveur {{url}} est inaccessible.",
|
|
595
|
-
checkServer:
|
|
596
|
-
timeout:
|
|
793
|
+
checkServer: "Veuillez vérifier votre connexion réseau ou que le backend est en cours d’exécution.",
|
|
794
|
+
timeout: "Délai de connexion dépassé après 10 secondes.",
|
|
597
795
|
},
|
|
598
796
|
actions: {
|
|
599
|
-
retry:
|
|
600
|
-
retrying:
|
|
797
|
+
retry: "Réessayer",
|
|
798
|
+
retrying: "Nouvelle tentative…",
|
|
601
799
|
},
|
|
602
800
|
shortcuts: {
|
|
603
|
-
title:
|
|
604
|
-
description:
|
|
801
|
+
title: "Raccourcis clavier",
|
|
802
|
+
description: "Référence rapide de tous les raccourcis clavier disponibles.",
|
|
605
803
|
groups: {
|
|
606
|
-
general:
|
|
607
|
-
navigation:
|
|
608
|
-
dataViews:
|
|
609
|
-
preferences:
|
|
804
|
+
general: "Général",
|
|
805
|
+
navigation: "Navigation",
|
|
806
|
+
dataViews: "Vues de données",
|
|
807
|
+
preferences: "Préférences",
|
|
610
808
|
},
|
|
611
|
-
openCommandPalette:
|
|
612
|
-
showShortcuts:
|
|
613
|
-
closeDialog:
|
|
614
|
-
toggleSidebar:
|
|
615
|
-
focusSearch:
|
|
616
|
-
createRecord:
|
|
617
|
-
refreshData:
|
|
809
|
+
openCommandPalette: "Ouvrir la palette de commandes",
|
|
810
|
+
showShortcuts: "Afficher les raccourcis clavier",
|
|
811
|
+
closeDialog: "Fermer le dialogue / panneau",
|
|
812
|
+
toggleSidebar: "Basculer la barre latérale",
|
|
813
|
+
focusSearch: "Focus sur la recherche",
|
|
814
|
+
createRecord: "Créer un nouvel enregistrement",
|
|
815
|
+
refreshData: "Actualiser les données",
|
|
618
816
|
editRecord: "Modifier l'enregistrement sélectionné",
|
|
619
|
-
toggleDarkMode:
|
|
817
|
+
toggleDarkMode: "Basculer le mode sombre",
|
|
620
818
|
},
|
|
621
819
|
commandPalette: {
|
|
622
|
-
placeholder:
|
|
623
|
-
noResults:
|
|
624
|
-
objects:
|
|
625
|
-
dashboards:
|
|
626
|
-
pages:
|
|
627
|
-
reports:
|
|
820
|
+
placeholder: "Tapez une commande ou recherchez...",
|
|
821
|
+
noResults: "Aucun résultat trouvé.",
|
|
822
|
+
objects: "Objets",
|
|
823
|
+
dashboards: "Tableaux de bord",
|
|
824
|
+
pages: "Pages",
|
|
825
|
+
reports: "Rapports",
|
|
628
826
|
switchApp: "Changer d'application",
|
|
629
|
-
current:
|
|
630
|
-
preferences:
|
|
631
|
-
lightTheme:
|
|
632
|
-
darkTheme:
|
|
633
|
-
systemTheme:
|
|
634
|
-
actions:
|
|
635
|
-
openFullSearch:
|
|
636
|
-
createApp:
|
|
827
|
+
current: "Actuel",
|
|
828
|
+
preferences: "Préférences",
|
|
829
|
+
lightTheme: "Thème clair",
|
|
830
|
+
darkTheme: "Thème sombre",
|
|
831
|
+
systemTheme: "Thème système",
|
|
832
|
+
actions: "Actions",
|
|
833
|
+
openFullSearch: "Ouvrir la page de recherche complète",
|
|
834
|
+
createApp: "Créer une nouvelle application",
|
|
835
|
+
searching: "Recherche…",
|
|
836
|
+
records: "Enregistrements",
|
|
837
|
+
recentRecords: "Récemment consultés",
|
|
637
838
|
},
|
|
638
839
|
errors: {
|
|
639
840
|
somethingWentWrong: "Quelque chose s'est mal passé",
|
|
640
|
-
unexpectedError:
|
|
641
|
-
tryAgain:
|
|
841
|
+
unexpectedError: "Une erreur inattendue est survenue lors du rendu de cette vue.",
|
|
842
|
+
tryAgain: "Réessayer",
|
|
642
843
|
goHome: "Retour à l'accueil",
|
|
643
|
-
errorDetails:
|
|
844
|
+
errorDetails: "Détails de l'erreur (développement uniquement)",
|
|
644
845
|
},
|
|
645
846
|
theme: {
|
|
646
|
-
toggle:
|
|
647
|
-
light:
|
|
648
|
-
dark:
|
|
649
|
-
system:
|
|
847
|
+
toggle: "Changer de thème",
|
|
848
|
+
light: "Clair",
|
|
849
|
+
dark: "Sombre",
|
|
850
|
+
system: "Système",
|
|
650
851
|
},
|
|
651
852
|
objectView: {
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
853
|
+
systemViewReadonly: 'System view defined in code - duplicate to customize.',
|
|
854
|
+
expandToPage: 'Open as full page',
|
|
855
|
+
objectNotFound: "Objet introuvable",
|
|
856
|
+
objectNotFoundDescription: "L'objet « {{objectName}} » n'existe pas dans la configuration actuelle.",
|
|
857
|
+
objectNotFoundHint: "Vérifiez les paramètres de navigation de votre application ou sélectionnez un autre objet dans la barre latérale.",
|
|
858
|
+
allRecords: "Tous les enregistrements",
|
|
859
|
+
exitDesignMode: "Quitter le mode conception",
|
|
860
|
+
enterDesignMode: "Entrer en mode conception",
|
|
861
|
+
metadataInspector: "Inspecteur de métadonnées",
|
|
862
|
+
editView: "Modifier la vue",
|
|
863
|
+
addView: "Ajouter une vue",
|
|
864
|
+
designTools: "Outils de conception",
|
|
865
|
+
new: "Nouveau",
|
|
866
|
+
configureView: "Configurer la vue",
|
|
867
|
+
closePanel: "Fermer le panneau",
|
|
868
|
+
page: "Page",
|
|
869
|
+
pageConfigHint: "Barre d'outils, navigation et paramètres du shell de vue",
|
|
870
|
+
listConfigHint: "Rendu des données, colonnes et apparence pour ce type de liste",
|
|
871
|
+
general: "Général",
|
|
872
|
+
generalHint: "Titre, description et type de la vue",
|
|
873
|
+
toolbar: "Barre d'outils",
|
|
874
|
+
toolbarHint: "Recherche, filtre, tri, regroupement et bascule de densité",
|
|
875
|
+
toolbarEnabledCount: "{{count}} sur {{total}} activés",
|
|
876
|
+
navigationSection: "Navigation",
|
|
877
|
+
navigationHint: "Comportement au clic sur la ligne et paramètres de la vue détaillée",
|
|
878
|
+
records: "Enregistrements",
|
|
879
|
+
recordsHint: "Mode de sélection, ajout d'enregistrement et édition en ligne",
|
|
880
|
+
exportPrint: "Export et impression",
|
|
881
|
+
exportPrintHint: "Formats d'export, impression et affichage du nombre d'enregistrements",
|
|
882
|
+
showAllFields: "Tout afficher",
|
|
883
|
+
hideAllFields: "Tout masquer",
|
|
884
|
+
searchFields: "Rechercher des champs...",
|
|
885
|
+
title: "Titre",
|
|
886
|
+
description: "Description",
|
|
887
|
+
data: "Données",
|
|
888
|
+
source: "Source",
|
|
889
|
+
columns: "Colonnes",
|
|
890
|
+
filterBy: "Filtrer par",
|
|
891
|
+
sortBy: "Trier par",
|
|
892
|
+
appearance: "Apparence",
|
|
893
|
+
showDescription: "Afficher la description",
|
|
894
|
+
viewType: "Type de vue",
|
|
895
|
+
userFilters: "Filtres utilisateur",
|
|
896
|
+
enableSearch: "Activer la recherche",
|
|
897
|
+
enableFilter: "Activer le filtre",
|
|
898
|
+
enableSort: "Activer le tri",
|
|
899
|
+
enableHideFields: "Activer masquer les champs",
|
|
900
|
+
enableGroup: "Activer le regroupement",
|
|
901
|
+
enableColor: "Activer la couleur",
|
|
902
|
+
enableDensity: "Activer la densité",
|
|
903
|
+
userActions: "Actions utilisateur",
|
|
904
|
+
addRecordViaForm: "Ajouter des enregistrements via un formulaire",
|
|
905
|
+
advanced: "Avancé",
|
|
906
|
+
allowExport: "Autoriser l'exportation",
|
|
907
|
+
recordCount: "{{count}} enregistrements",
|
|
908
|
+
noDescription: "Aucune description",
|
|
909
|
+
none: "Aucun",
|
|
910
|
+
columnsConfigured: "{{count}} colonnes",
|
|
911
|
+
save: "Enregistrer",
|
|
912
|
+
discard: "Annuler",
|
|
913
|
+
createView: "Créer une vue",
|
|
914
|
+
newView: "Nouvelle vue",
|
|
915
|
+
typeOptions: "Options de type",
|
|
916
|
+
groupByField: "Champ de regroupement",
|
|
917
|
+
startDateField: "Champ de date de début",
|
|
918
|
+
titleField: "Champ de titre",
|
|
919
|
+
latitudeField: "Champ de latitude",
|
|
920
|
+
longitudeField: "Champ de longitude",
|
|
718
921
|
imageField: "Champ d'image",
|
|
719
|
-
dateField:
|
|
720
|
-
selectField:
|
|
721
|
-
gridOptionsHint:
|
|
722
|
-
groupBy:
|
|
723
|
-
prefixField:
|
|
724
|
-
fields:
|
|
725
|
-
fieldsVisible:
|
|
726
|
-
sortsCount:
|
|
727
|
-
filtersCount:
|
|
728
|
-
endDateField:
|
|
729
|
-
color:
|
|
730
|
-
fieldTextColor:
|
|
731
|
-
rowHeight:
|
|
732
|
-
wrapHeaders:
|
|
733
|
-
showFieldDescriptions:
|
|
734
|
-
collapseAllByDefault:
|
|
735
|
-
striped:
|
|
736
|
-
bordered:
|
|
737
|
-
inlineEdit:
|
|
738
|
-
addDeleteRecordsInline:
|
|
922
|
+
dateField: "Champ de date",
|
|
923
|
+
selectField: "Sélectionner un champ...",
|
|
924
|
+
gridOptionsHint: "La vue grille utilise les colonnes configurées ci-dessus.",
|
|
925
|
+
groupBy: "Regrouper par",
|
|
926
|
+
prefixField: "Champ de préfixe",
|
|
927
|
+
fields: "Champs",
|
|
928
|
+
fieldsVisible: "{{count}} visibles",
|
|
929
|
+
sortsCount: "{{count}} tris",
|
|
930
|
+
filtersCount: "{{count}} filtres",
|
|
931
|
+
endDateField: "Champ de date de fin",
|
|
932
|
+
color: "Couleur",
|
|
933
|
+
fieldTextColor: "Couleur du texte du champ",
|
|
934
|
+
rowHeight: "Hauteur de ligne",
|
|
935
|
+
wrapHeaders: "Retour à la ligne des en-têtes",
|
|
936
|
+
showFieldDescriptions: "Afficher les descriptions des champs",
|
|
937
|
+
collapseAllByDefault: "Tout réduire par défaut",
|
|
938
|
+
striped: "Lignes rayées",
|
|
939
|
+
bordered: "Cellules bordées",
|
|
940
|
+
inlineEdit: "Modifier les enregistrements en ligne",
|
|
941
|
+
addDeleteRecordsInline: "Ajouter/supprimer des enregistrements en ligne",
|
|
739
942
|
clickIntoRecordDetails: "Cliquer pour les détails de l'enregistrement",
|
|
740
|
-
navigationMode:
|
|
741
|
-
navigationWidth:
|
|
742
|
-
navigationWidthHint:
|
|
743
|
-
openNewTab:
|
|
744
|
-
openNewTabHint:
|
|
943
|
+
navigationMode: "Mode de navigation",
|
|
944
|
+
navigationWidth: "Largeur de navigation",
|
|
945
|
+
navigationWidthHint: "Disponible pour les modes de navigation tiroir, modale et partagée",
|
|
946
|
+
openNewTab: "Ouvrir dans un nouvel onglet",
|
|
947
|
+
openNewTabHint: "Disponible pour les modes de navigation page et nouvelle fenêtre",
|
|
948
|
+
import: "Importer",
|
|
949
|
+
importTitle: "Importer depuis CSV",
|
|
950
|
+
importedToast: "{{count}} ligne(s) importée(s).",
|
|
951
|
+
importedWithSkipped: "{{ok}} ligne(s) importée(s) ; {{skipped}} ignorée(s).",
|
|
952
|
+
showAdvancedSettings: "Afficher les paramètres avancés",
|
|
953
|
+
showFewerSettings: "Afficher moins de paramètres",
|
|
954
|
+
createViewDesc: "Choisissez un type de vue et donnez-lui un nom. Tous les paramètres peuvent être modifiés ensuite.",
|
|
955
|
+
cancel: "Annuler",
|
|
956
|
+
create: "Créer",
|
|
957
|
+
delete: "Supprimer",
|
|
958
|
+
deleteViewTitle: "Supprimer la vue",
|
|
959
|
+
deleteViewConfirm: "Supprimer la vue \"{{name}}\" ? Ceci est irréversible.",
|
|
960
|
+
bulkDeleteConfirm: "Supprimer {{count}} enregistrements sélectionnés ? Ceci est irréversible.",
|
|
961
|
+
duplicateViewName: "Une vue avec ce nom existe déjà.",
|
|
962
|
+
viewTypeGrid: "Grille",
|
|
963
|
+
viewTypeGridDesc: "Tableau de type tableur d'enregistrements.",
|
|
964
|
+
viewTypeKanban: "Kanban",
|
|
965
|
+
viewTypeKanbanDesc: "Cartes regroupées en colonnes par un champ de sélection unique.",
|
|
966
|
+
viewTypeCalendar: "Calendrier",
|
|
967
|
+
viewTypeCalendarDesc: "Enregistrements placés par date dans un calendrier mensuel.",
|
|
968
|
+
viewTypeGallery: "Galerie",
|
|
969
|
+
viewTypeGalleryDesc: "Grandes cartes d'image depuis un champ de pièce jointe.",
|
|
970
|
+
viewTypeTimeline: "Chronologie",
|
|
971
|
+
viewTypeTimelineDesc: "Enregistrements le long d'un axe temporel horizontal.",
|
|
972
|
+
viewTypeGantt: "Gantt",
|
|
973
|
+
viewTypeGanttDesc: "Barres de projet avec début/fin et dépendances.",
|
|
974
|
+
viewTypeMap: "Carte",
|
|
975
|
+
viewTypeMapDesc: "Marqueurs géographiques depuis des champs latitude/longitude.",
|
|
976
|
+
viewTypeChart: "Graphique",
|
|
977
|
+
viewTypeChartDesc: "Graphiques à barres/lignes/secteurs agrégés.",
|
|
978
|
+
groupByFieldHelp: "Le tableau Kanban regroupe les enregistrements en colonnes selon les valeurs du champ.",
|
|
979
|
+
startDateFieldHelp: "Le calendrier place les enregistrements sur la cellule correspondant à cette date.",
|
|
980
|
+
ganttStartDateFieldHelp: "Le bord gauche de chaque barre Gantt utilise cette date.",
|
|
981
|
+
ganttEndDateFieldHelp: "Le bord droit de chaque barre Gantt utilise cette date.",
|
|
982
|
+
timelineDateFieldHelp: "Les enregistrements sont positionnés sur la chronologie selon cette date.",
|
|
983
|
+
latitudeFieldHelp: "Champ contenant la latitude (champs géo uniquement).",
|
|
984
|
+
longitudeFieldHelp: "Champ contenant la longitude (champs géo uniquement).",
|
|
985
|
+
imageFieldHelp: "La couverture de la galerie provient de ce champ image ou pièce jointe.",
|
|
986
|
+
selectOption: "Sélectionner...",
|
|
987
|
+
noEligibleFieldForType: "Aucun champ éligible de ce type. Ajoutez-en un à l'objet d'abord.",
|
|
988
|
+
viewTypeUnavailable: "Cet objet n'a pas de champ pouvant servir de \"{{field}}\".",
|
|
989
|
+
viewTypeUnavailableShort: "Non pris en charge par cet objet.",
|
|
990
|
+
chartType: "Type de graphique",
|
|
991
|
+
chartTypeHelp: "Détermine comment les données sont rendues.",
|
|
992
|
+
chartTypeBar: "Graphique à barres",
|
|
993
|
+
chartTypeLine: "Graphique en courbes",
|
|
994
|
+
chartTypePie: "Graphique circulaire",
|
|
995
|
+
chartTypeArea: "Graphique en aires",
|
|
996
|
+
chartTypeScatter: "Nuage de points",
|
|
997
|
+
xAxisField: "Champ axe X",
|
|
998
|
+
xAxisFieldHelp: "La dimension catégorielle ou temporelle.",
|
|
999
|
+
yAxisField: "Champ axe Y",
|
|
1000
|
+
yAxisFieldHelp: "Le champ numérique à agréger.",
|
|
1001
|
+
selectionMode: "Mode de sélection",
|
|
1002
|
+
selectionNone: "Aucun",
|
|
1003
|
+
selectionSingle: "Unique",
|
|
1004
|
+
selectionMultiple: "Multiple",
|
|
1005
|
+
pageSize: "Taille de page",
|
|
1006
|
+
pageSizeOptions: "Options de taille de page",
|
|
1007
|
+
exportFormats: "Formats d'exportation",
|
|
1008
|
+
exportMaxRecords: "Enregistrements max",
|
|
1009
|
+
exportIncludeHeaders: "Inclure les en-têtes",
|
|
1010
|
+
exportFileNamePrefix: "Préfixe du nom de fichier",
|
|
1011
|
+
searchableFields: "Champs recherchables",
|
|
1012
|
+
filterableFields: "Champs filtrables",
|
|
1013
|
+
resizableColumns: "Colonnes redimensionnables",
|
|
1014
|
+
densityCompact: "Compact",
|
|
1015
|
+
densityComfortable: "Normal",
|
|
1016
|
+
densitySpacious: "Spacieux",
|
|
1017
|
+
densityMode: "Mode de densité",
|
|
1018
|
+
hiddenFields: "Champs masqués",
|
|
1019
|
+
rowActions: "Actions de ligne",
|
|
1020
|
+
bulkActions: "Actions en masse",
|
|
1021
|
+
sharing: "Partage",
|
|
1022
|
+
sharingEnabled: "Partage activé",
|
|
1023
|
+
sharingVisibility: "Visibilité",
|
|
1024
|
+
addRecordEnabled: "Ajout d'enregistrement activé",
|
|
1025
|
+
addRecordPosition: "Position",
|
|
1026
|
+
addRecordMode: "Mode",
|
|
1027
|
+
addRecordFormView: "Vue formulaire",
|
|
1028
|
+
conditionalFormatting: "Mise en forme conditionnelle",
|
|
1029
|
+
addRule: "Ajouter une règle",
|
|
1030
|
+
quickFilters: "Filtres rapides",
|
|
1031
|
+
addQuickFilter: "Ajouter un filtre rapide",
|
|
1032
|
+
ufElements: "Éléments",
|
|
1033
|
+
ufDropdown: "Liste déroulante",
|
|
1034
|
+
ufTabs: "Onglets",
|
|
1035
|
+
ufToggle: "Bascule",
|
|
1036
|
+
ufAddField: "+ Ajouter un champ de filtre...",
|
|
1037
|
+
ufNoFields: "Aucun champ disponible",
|
|
1038
|
+
ufAddTab: "+ Ajouter un onglet",
|
|
1039
|
+
ufTabLabel: "Étiquette",
|
|
1040
|
+
ufShowAllRecords: "Afficher l'onglet \"Tous les enregistrements\"",
|
|
1041
|
+
ufAllowAddTab: "Autoriser l'ajout d'onglets",
|
|
1042
|
+
showRecordCount: "Afficher le nombre d'enregistrements",
|
|
1043
|
+
allowPrinting: "Autoriser l'impression",
|
|
1044
|
+
virtualScroll: "Défilement virtuel",
|
|
1045
|
+
emptyStateTitle: "Titre de l'état vide",
|
|
1046
|
+
emptyStateMessage: "Message de l'état vide",
|
|
1047
|
+
emptyStateIcon: "Icône de l'état vide",
|
|
1048
|
+
ariaLabel: "Étiquette ARIA",
|
|
1049
|
+
ariaDescribedBy: "Décrit par ARIA",
|
|
1050
|
+
ariaLive: "ARIA en direct",
|
|
1051
|
+
accessibility: "Accessibilité",
|
|
1052
|
+
viewTabs: "Onglets de vue",
|
|
745
1053
|
},
|
|
746
1054
|
localeSwitcher: {
|
|
747
|
-
label:
|
|
1055
|
+
label: "Langue",
|
|
1056
|
+
},
|
|
1057
|
+
search: "Rechercher…",
|
|
1058
|
+
nav: {
|
|
1059
|
+
pinItem: "Épingler {{name}}",
|
|
1060
|
+
unpinItem: "Désépingler {{name}}",
|
|
1061
|
+
dragToReorder: "Glisser pour réorganiser",
|
|
1062
|
+
favorites: "Favoris",
|
|
748
1063
|
},
|
|
749
1064
|
},
|
|
750
1065
|
auth: {
|
|
751
1066
|
login: {
|
|
752
|
-
title:
|
|
753
|
-
description:
|
|
754
|
-
emailLabel:
|
|
755
|
-
emailPlaceholder:
|
|
756
|
-
passwordLabel:
|
|
757
|
-
passwordPlaceholder:
|
|
758
|
-
forgotPasswordText:
|
|
759
|
-
submitButton:
|
|
760
|
-
submittingButton:
|
|
1067
|
+
title: "Connectez-vous à votre compte",
|
|
1068
|
+
description: "Entrez votre e-mail et votre mot de passe pour continuer",
|
|
1069
|
+
emailLabel: "E-mail",
|
|
1070
|
+
emailPlaceholder: "name@example.com",
|
|
1071
|
+
passwordLabel: "Mot de passe",
|
|
1072
|
+
passwordPlaceholder: "Entrez votre mot de passe",
|
|
1073
|
+
forgotPasswordText: "Mot de passe oublié ?",
|
|
1074
|
+
submitButton: "Se connecter",
|
|
1075
|
+
submittingButton: "Connexion en cours...",
|
|
761
1076
|
noAccountText: "Vous n'avez pas de compte ?",
|
|
762
1077
|
signUpText: "S'inscrire",
|
|
1078
|
+
errors: {
|
|
1079
|
+
invalidCredentials: "E-mail ou mot de passe invalide. Veuillez réessayer.",
|
|
1080
|
+
emailNotVerified: "Veuillez vérifier votre adresse e-mail avant de vous connecter.",
|
|
1081
|
+
},
|
|
763
1082
|
},
|
|
764
1083
|
register: {
|
|
765
|
-
title:
|
|
766
|
-
description:
|
|
767
|
-
nameLabel:
|
|
768
|
-
namePlaceholder:
|
|
769
|
-
emailLabel:
|
|
770
|
-
emailPlaceholder:
|
|
771
|
-
passwordLabel:
|
|
772
|
-
passwordPlaceholder:
|
|
773
|
-
confirmPasswordLabel:
|
|
774
|
-
confirmPasswordPlaceholder:
|
|
775
|
-
passwordMismatchError:
|
|
776
|
-
passwordTooShortError:
|
|
777
|
-
submitButton:
|
|
778
|
-
submittingButton:
|
|
779
|
-
hasAccountText:
|
|
780
|
-
signInText:
|
|
1084
|
+
title: "Créer un compte",
|
|
1085
|
+
description: "Entrez vos informations pour commencer",
|
|
1086
|
+
nameLabel: "Nom",
|
|
1087
|
+
namePlaceholder: "Jean Dupont",
|
|
1088
|
+
emailLabel: "E-mail",
|
|
1089
|
+
emailPlaceholder: "name@example.com",
|
|
1090
|
+
passwordLabel: "Mot de passe",
|
|
1091
|
+
passwordPlaceholder: "Créer un mot de passe (min. 8 caractères)",
|
|
1092
|
+
confirmPasswordLabel: "Confirmer le mot de passe",
|
|
1093
|
+
confirmPasswordPlaceholder: "Confirmez votre mot de passe",
|
|
1094
|
+
passwordMismatchError: "Les mots de passe ne correspondent pas",
|
|
1095
|
+
passwordTooShortError: "Le mot de passe doit contenir au moins 8 caractères",
|
|
1096
|
+
submitButton: "Créer un compte",
|
|
1097
|
+
submittingButton: "Création du compte...",
|
|
1098
|
+
hasAccountText: "Vous avez déjà un compte ?",
|
|
1099
|
+
signInText: "Se connecter",
|
|
1100
|
+
errors: {
|
|
1101
|
+
userExists: "Un compte avec cet e-mail existe déjà. Essayez de vous connecter.",
|
|
1102
|
+
},
|
|
1103
|
+
verifyInbox: {
|
|
1104
|
+
title: "Vérifiez votre boîte de réception",
|
|
1105
|
+
description: "Nous avons envoyé un lien de vérification à {{email}}. Cliquez sur le lien pour activer votre compte.",
|
|
1106
|
+
resend: "Renvoyer l'e-mail de vérification",
|
|
1107
|
+
resending: "Envoi…",
|
|
1108
|
+
resent: "E-mail de vérification envoyé.",
|
|
1109
|
+
backToSignIn: "Retour à la connexion",
|
|
1110
|
+
},
|
|
781
1111
|
},
|
|
782
1112
|
forgotPassword: {
|
|
783
|
-
title:
|
|
784
|
-
description:
|
|
785
|
-
emailLabel:
|
|
786
|
-
emailPlaceholder:
|
|
787
|
-
submitButton:
|
|
788
|
-
submittingButton:
|
|
789
|
-
successTitle:
|
|
790
|
-
successDescription:
|
|
791
|
-
backToSignInText:
|
|
792
|
-
rememberPasswordText:
|
|
793
|
-
signInText:
|
|
1113
|
+
title: "Réinitialiser votre mot de passe",
|
|
1114
|
+
description: "Entrez votre adresse e-mail et nous vous enverrons un lien pour réinitialiser votre mot de passe",
|
|
1115
|
+
emailLabel: "E-mail",
|
|
1116
|
+
emailPlaceholder: "name@example.com",
|
|
1117
|
+
submitButton: "Envoyer le lien de réinitialisation",
|
|
1118
|
+
submittingButton: "Envoi en cours...",
|
|
1119
|
+
successTitle: "Vérifiez vos e-mails",
|
|
1120
|
+
successDescription: "Nous avons envoyé un lien de réinitialisation du mot de passe à {{email}}. Veuillez vérifier votre boîte de réception.",
|
|
1121
|
+
backToSignInText: "Retour à la connexion",
|
|
1122
|
+
rememberPasswordText: "Vous vous souvenez de votre mot de passe ?",
|
|
1123
|
+
signInText: "Se connecter",
|
|
1124
|
+
},
|
|
1125
|
+
resetPassword: {
|
|
1126
|
+
title: "Définir un nouveau mot de passe",
|
|
1127
|
+
description: "Choisissez un mot de passe que vous n'avez pas utilisé auparavant.",
|
|
1128
|
+
newPassword: "Nouveau mot de passe",
|
|
1129
|
+
confirmPassword: "Confirmer le mot de passe",
|
|
1130
|
+
submit: "Mettre à jour le mot de passe",
|
|
1131
|
+
submitting: "Mise à jour…",
|
|
1132
|
+
success: "Mot de passe mis à jour",
|
|
1133
|
+
failed: "Échec de la réinitialisation",
|
|
1134
|
+
invalidToken: "Ce lien de réinitialisation est invalide ou a expiré.",
|
|
1135
|
+
missingToken: "Le lien de réinitialisation est manquant ou a expiré",
|
|
1136
|
+
passwordsMismatch: "Les mots de passe ne correspondent pas",
|
|
1137
|
+
requestNewLink: "Demander un nouveau lien",
|
|
1138
|
+
},
|
|
1139
|
+
verifyEmail: {
|
|
1140
|
+
title: "Vérifier l'adresse e-mail",
|
|
1141
|
+
description: "Nous avons envoyé un lien de vérification à votre adresse e-mail. Cliquez sur le lien pour vérifier votre compte.",
|
|
1142
|
+
sentTo: "Envoyé à :",
|
|
1143
|
+
verifyingTitle: "Vérification…",
|
|
1144
|
+
verifyingDescription: "Nous vérifions votre e-mail. Veuillez patienter.",
|
|
1145
|
+
successTitle: "E-mail vérifié",
|
|
1146
|
+
successDescription: "Votre e-mail a été vérifié. Vous pouvez maintenant vous connecter.",
|
|
1147
|
+
errorTitle: "Échec de la vérification",
|
|
1148
|
+
errorDescription: "La vérification a échoué. Veuillez demander un nouveau lien.",
|
|
1149
|
+
missingToken: "Il manque un token dans le lien de vérification.",
|
|
1150
|
+
emailMissing: "Adresse e-mail manquante",
|
|
1151
|
+
resendButton: "Renvoyer l'e-mail de vérification",
|
|
1152
|
+
resending: "Envoi…",
|
|
1153
|
+
resent: "E-mail envoyé ! Vérifiez votre boîte de réception",
|
|
1154
|
+
resentSuccess: "E-mail de vérification envoyé !",
|
|
1155
|
+
resentDescription: "Veuillez vérifier votre boîte de réception et cliquer sur le lien de vérification.",
|
|
1156
|
+
resendFailed: "Impossible de renvoyer l'e-mail de vérification",
|
|
1157
|
+
signInLink: "Aller à la connexion",
|
|
1158
|
+
backToSignIn: "Retour à la connexion",
|
|
1159
|
+
backToLogin: "Retour à la connexion",
|
|
1160
|
+
checkSpam: "E-mail non reçu ? Vérifiez votre dossier spam ou contactez le support.",
|
|
1161
|
+
or: "Ou",
|
|
1162
|
+
},
|
|
1163
|
+
setup: {
|
|
1164
|
+
welcomeTitle: "Bienvenue sur ObjectStack",
|
|
1165
|
+
description: "Créez le premier compte propriétaire pour terminer la configuration.",
|
|
1166
|
+
yourName: "Votre nom",
|
|
1167
|
+
orgName: "Nom de l'organisation",
|
|
1168
|
+
orgNamePlaceholder: "Entreprise Exemple SA",
|
|
1169
|
+
emailLabel: "E-mail",
|
|
1170
|
+
emailPlaceholder: "nom@exemple.fr",
|
|
1171
|
+
passwordLabel: "Mot de passe",
|
|
1172
|
+
passwordHint: "Au moins 8 caractères",
|
|
1173
|
+
submit: "Créer le compte propriétaire",
|
|
1174
|
+
submitting: "Configuration…",
|
|
1175
|
+
failed: "Échec de la configuration",
|
|
1176
|
+
},
|
|
1177
|
+
device: {
|
|
1178
|
+
title: "Autoriser un nouvel appareil",
|
|
1179
|
+
subtitle: "Approuvez cet appareil pour vous connecter en tant que {{email}}.",
|
|
1180
|
+
userCodeLabel: "Code de l'appareil",
|
|
1181
|
+
requesterLabel: "Demande de connexion de",
|
|
1182
|
+
approveWarning: "N'approuvez que si vous venez de lancer cette connexion vous-même. Une fois approuvée, ce runtime pourra accéder aux packages privés de votre organisation.",
|
|
1183
|
+
loggedInAs: "Connecté en tant que {{email}}",
|
|
1184
|
+
approve: "Approuver l'appareil",
|
|
1185
|
+
approving: "Approbation…",
|
|
1186
|
+
approvedTitle: "Appareil autorisé",
|
|
1187
|
+
approvedDescription: "Vous pouvez revenir à l'appareil — il devrait se connecter sous peu.",
|
|
1188
|
+
approveSuccess: "Appareil autorisé",
|
|
1189
|
+
approveSuccessDescription: "Vous pouvez fermer cette fenêtre.",
|
|
1190
|
+
approveFailed: "Échec de l'approbation",
|
|
1191
|
+
deny: "Refuser la demande",
|
|
1192
|
+
denying: "Refus…",
|
|
1193
|
+
deniedTitle: "Accès refusé",
|
|
1194
|
+
deniedDescription: "L'accès ne sera pas accordé à l'appareil.",
|
|
1195
|
+
denyFailed: "Impossible de refuser la demande",
|
|
1196
|
+
invalidTitle: "Lien d'appareil invalide",
|
|
1197
|
+
invalidDescription: "Aucun code d'appareil n'a été fourni dans l'URL.",
|
|
1198
|
+
loading: "Chargement…",
|
|
1199
|
+
cancel: "Annuler",
|
|
1200
|
+
},
|
|
1201
|
+
shell: {
|
|
1202
|
+
tenantHostHint: "Vous vous connectez à cet espace de travail",
|
|
794
1203
|
},
|
|
795
1204
|
},
|
|
796
1205
|
errors: {
|
|
797
|
-
networkError:
|
|
798
|
-
serverError:
|
|
799
|
-
notFound:
|
|
800
|
-
unauthorized:
|
|
801
|
-
forbidden:
|
|
802
|
-
timeout:
|
|
803
|
-
unknown:
|
|
1206
|
+
networkError: "Erreur réseau. Veuillez vérifier votre connexion.",
|
|
1207
|
+
serverError: "Erreur serveur. Veuillez réessayer plus tard.",
|
|
1208
|
+
notFound: "Ressource introuvable.",
|
|
1209
|
+
unauthorized: "Vous n'êtes pas autorisé à effectuer cette action.",
|
|
1210
|
+
forbidden: "Accès refusé.",
|
|
1211
|
+
timeout: "Délai d'attente dépassé. Veuillez réessayer.",
|
|
1212
|
+
unknown: "Une erreur inattendue s'est produite.",
|
|
804
1213
|
},
|
|
805
1214
|
workspace: {
|
|
806
|
-
label:
|
|
807
|
-
default:
|
|
808
|
-
switch:
|
|
809
|
-
create:
|
|
810
|
-
createTitle:
|
|
811
|
-
createDescription:
|
|
812
|
-
createButton:
|
|
813
|
-
nameLabel:
|
|
814
|
-
namePlaceholder:
|
|
815
|
-
slugLabel:
|
|
816
|
-
slugHint:
|
|
817
|
-
invite:
|
|
818
|
-
members:
|
|
819
|
-
settings:
|
|
1215
|
+
label: "Espaces de travail",
|
|
1216
|
+
default: "Mon espace de travail",
|
|
1217
|
+
switch: "Changer d'espace de travail",
|
|
1218
|
+
create: "Créer un espace de travail",
|
|
1219
|
+
createTitle: "Créer un espace de travail",
|
|
1220
|
+
createDescription: "Un espace de travail est un lieu partagé pour la collaboration de votre équipe.",
|
|
1221
|
+
createButton: "Créer un espace de travail",
|
|
1222
|
+
nameLabel: "Nom de l'espace de travail",
|
|
1223
|
+
namePlaceholder: "p.ex., Acme Inc",
|
|
1224
|
+
slugLabel: "Slug URL",
|
|
1225
|
+
slugHint: "Utilisé dans les URL. Uniquement lettres minuscules, chiffres et tirets.",
|
|
1226
|
+
invite: "Inviter un membre",
|
|
1227
|
+
members: "Membres",
|
|
1228
|
+
settings: "Paramètres de l'espace de travail",
|
|
1229
|
+
},
|
|
1230
|
+
help: {
|
|
1231
|
+
appDocs: 'Documentation de cette app',
|
|
1232
|
+
allDocs: 'Toute la documentation',
|
|
1233
|
+
onlineDocs: 'Documentation en ligne',
|
|
820
1234
|
},
|
|
821
1235
|
sidebar: {
|
|
822
|
-
settings:
|
|
823
|
-
help:
|
|
824
|
-
helpTooltip:
|
|
825
|
-
activityFeed:
|
|
1236
|
+
settings: "Paramètres",
|
|
1237
|
+
help: "Aide",
|
|
1238
|
+
helpTooltip: "Aide et documentation",
|
|
1239
|
+
activityFeed: "Flux d'activité",
|
|
1240
|
+
notifications: "Notifications",
|
|
1241
|
+
approvals: "Approbations",
|
|
1242
|
+
inbox: "Boîte de réception",
|
|
1243
|
+
inboxAriaLabel: "Ouvrir la boîte de réception",
|
|
1244
|
+
area: "Zone",
|
|
1245
|
+
scope: "Périmètre",
|
|
1246
|
+
recent: "Récent",
|
|
1247
|
+
favorites: "Favoris",
|
|
1248
|
+
starred: "Étoilés",
|
|
1249
|
+
removeFromFavorites: "Retirer {{name}} des favoris",
|
|
1250
|
+
},
|
|
1251
|
+
topbar: {
|
|
1252
|
+
aiAssistant: "Assistant IA",
|
|
826
1253
|
},
|
|
827
1254
|
home: {
|
|
828
|
-
title:
|
|
829
|
-
subtitle:
|
|
830
|
-
nav:
|
|
831
|
-
allApps:
|
|
832
|
-
loading:
|
|
833
|
-
recent:
|
|
834
|
-
starred:
|
|
835
|
-
welcome:
|
|
836
|
-
welcomeDescription:
|
|
837
|
-
createFirstApp:
|
|
838
|
-
systemSettings:
|
|
1255
|
+
title: "Accueil",
|
|
1256
|
+
subtitle: "Tableau de bord de votre espace de travail",
|
|
1257
|
+
nav: "Accueil",
|
|
1258
|
+
allApps: "Toutes les applications",
|
|
1259
|
+
loading: "Chargement de l'espace de travail...",
|
|
1260
|
+
recent: "Récent",
|
|
1261
|
+
starred: "Favoris",
|
|
1262
|
+
welcome: "Bienvenue dans ObjectUI",
|
|
1263
|
+
welcomeDescription: "Commencez par créer votre première application ou configurer les paramètres système.",
|
|
1264
|
+
createFirstApp: "Créez votre première app",
|
|
1265
|
+
systemSettings: "Paramètres système",
|
|
839
1266
|
browseMarketplace: "Parcourir la marketplace d'apps",
|
|
840
1267
|
quickActions: {
|
|
841
|
-
title:
|
|
842
|
-
createApp:
|
|
843
|
-
createAppDesc:
|
|
844
|
-
manageObjects:
|
|
845
|
-
manageObjectsDesc:
|
|
846
|
-
systemSettings:
|
|
847
|
-
systemSettingsDesc:
|
|
1268
|
+
title: "Actions rapides",
|
|
1269
|
+
createApp: "Créer une app",
|
|
1270
|
+
createAppDesc: "Commencez avec une nouvelle application",
|
|
1271
|
+
manageObjects: "Gérer les objets",
|
|
1272
|
+
manageObjectsDesc: "Configurer les modèles de données",
|
|
1273
|
+
systemSettings: "Paramètres système",
|
|
1274
|
+
systemSettingsDesc: "Configurez votre espace de travail",
|
|
848
1275
|
},
|
|
849
1276
|
appCard: {
|
|
850
|
-
noDescription:
|
|
851
|
-
default:
|
|
1277
|
+
noDescription: "Aucune description",
|
|
1278
|
+
default: "Par défaut",
|
|
1279
|
+
},
|
|
1280
|
+
greetingMorning: "Bonjour",
|
|
1281
|
+
greetingAfternoon: "Bon après-midi",
|
|
1282
|
+
greetingEvening: "Bonsoir",
|
|
1283
|
+
greetingNight: "Travail de nuit",
|
|
1284
|
+
heroTagline: "Reprenez là où vous vous êtes arrêté ou découvrez quelque chose de nouveau.",
|
|
1285
|
+
open: "Ouvrir",
|
|
1286
|
+
stats: {
|
|
1287
|
+
apps: "Applications",
|
|
1288
|
+
starred: "Étoilés",
|
|
1289
|
+
recent: "Récents",
|
|
1290
|
+
},
|
|
1291
|
+
recentApps: {
|
|
1292
|
+
title: "Récemment ouverts",
|
|
1293
|
+
itemType: {
|
|
1294
|
+
object: "Objet",
|
|
1295
|
+
dashboard: "Tableau de bord",
|
|
1296
|
+
page: "Page",
|
|
1297
|
+
record: "Enregistrement",
|
|
1298
|
+
},
|
|
1299
|
+
},
|
|
1300
|
+
starredApps: {
|
|
1301
|
+
title: "Étoilés",
|
|
1302
|
+
},
|
|
1303
|
+
gettingStarted: {
|
|
1304
|
+
title: "Personnaliser l'accueil",
|
|
1305
|
+
description: "Marquez une application en favori pour l'épingler ici et y accéder en un clic. Tout ce que vous ouvrez apparaîtra automatiquement sous \"Récemment ouverts\".",
|
|
1306
|
+
cta: "Parcourir toutes les applications",
|
|
852
1307
|
},
|
|
853
1308
|
},
|
|
854
1309
|
layout: {
|
|
855
1310
|
appSwitcher: {
|
|
856
|
-
home:
|
|
857
|
-
addApp:
|
|
858
|
-
editApp:
|
|
859
|
-
manageAllApps:
|
|
860
|
-
systemConsole:
|
|
861
|
-
noAppsConfigured:
|
|
1311
|
+
home: "Accueil",
|
|
1312
|
+
addApp: "Ajouter une application",
|
|
1313
|
+
editApp: "Modifier l'application",
|
|
1314
|
+
manageAllApps: "Gérer toutes les applications",
|
|
1315
|
+
systemConsole: "Console système",
|
|
1316
|
+
noAppsConfigured: "Aucune application configurée",
|
|
862
1317
|
},
|
|
863
1318
|
activityFeed: {
|
|
864
|
-
title:
|
|
865
|
-
filter:
|
|
866
|
-
empty:
|
|
867
|
-
ariaLabel:
|
|
868
|
-
typeCreate:
|
|
869
|
-
typeUpdate:
|
|
870
|
-
typeDelete:
|
|
871
|
-
typeComment:
|
|
872
|
-
relativeJustNow:
|
|
873
|
-
relativeSecondsAgo:
|
|
874
|
-
relativeMinutesAgo:
|
|
875
|
-
relativeHoursAgo:
|
|
876
|
-
relativeDaysAgo:
|
|
1319
|
+
title: "Activité récente",
|
|
1320
|
+
filter: "Filtrer",
|
|
1321
|
+
empty: "Aucune activité récente",
|
|
1322
|
+
ariaLabel: "Fil d'activité",
|
|
1323
|
+
typeCreate: "Créer",
|
|
1324
|
+
typeUpdate: "Mettre à jour",
|
|
1325
|
+
typeDelete: "Supprimer",
|
|
1326
|
+
typeComment: "Commentaire",
|
|
1327
|
+
relativeJustNow: "à l'instant",
|
|
1328
|
+
relativeSecondsAgo: "il y a {{count}}s",
|
|
1329
|
+
relativeMinutesAgo: "il y a {{count}}m",
|
|
1330
|
+
relativeHoursAgo: "il y a {{count}}h",
|
|
1331
|
+
relativeDaysAgo: "il y a {{count}}j",
|
|
1332
|
+
viewAll: "Voir toute l'activité",
|
|
877
1333
|
},
|
|
878
1334
|
metadata: {
|
|
879
|
-
label:
|
|
880
|
-
toggleTitle: '
|
|
881
|
-
panelTitle:
|
|
882
|
-
jsonBadge:
|
|
883
|
-
copyJson:
|
|
1335
|
+
label: "Métadonnées",
|
|
1336
|
+
toggleTitle: "Basculer l'inspecteur de métadonnées",
|
|
1337
|
+
panelTitle: "Inspecteur de métadonnées",
|
|
1338
|
+
jsonBadge: "JSON",
|
|
1339
|
+
copyJson: "Copier JSON",
|
|
884
1340
|
},
|
|
885
1341
|
},
|
|
886
1342
|
search: {
|
|
887
|
-
title:
|
|
888
|
-
back:
|
|
889
|
-
placeholder:
|
|
890
|
-
inputAriaLabel:
|
|
891
|
-
resultsCount:
|
|
892
|
-
resultsCountPlural:
|
|
893
|
-
itemsAvailable:
|
|
894
|
-
noResults:
|
|
895
|
-
noResultsHint: '
|
|
896
|
-
typeObjects:
|
|
897
|
-
typeDashboards:
|
|
898
|
-
typePages:
|
|
899
|
-
typeReports:
|
|
900
|
-
badgeObject:
|
|
901
|
-
badgeDashboard:
|
|
902
|
-
badgePage:
|
|
903
|
-
badgeReport:
|
|
1343
|
+
title: "Rechercher",
|
|
1344
|
+
back: "Retour",
|
|
1345
|
+
placeholder: "Rechercher des objets, tableaux de bord, pages, rapports...",
|
|
1346
|
+
inputAriaLabel: "Rechercher des objets, tableaux de bord, pages, rapports",
|
|
1347
|
+
resultsCount: "{{count}} résultat pour \"{{query}}\"",
|
|
1348
|
+
resultsCountPlural: "{{count}} résultats pour \"{{query}}\"",
|
|
1349
|
+
itemsAvailable: "{{count}} éléments disponibles",
|
|
1350
|
+
noResults: "Aucun résultat trouvé",
|
|
1351
|
+
noResultsHint: "Essayez d'ajuster vos termes de recherche",
|
|
1352
|
+
typeObjects: "Objets",
|
|
1353
|
+
typeDashboards: "Tableaux de bord",
|
|
1354
|
+
typePages: "Pages",
|
|
1355
|
+
typeReports: "Rapports",
|
|
1356
|
+
badgeObject: "Objet",
|
|
1357
|
+
badgeDashboard: "Tableau de bord",
|
|
1358
|
+
badgePage: "Page",
|
|
1359
|
+
badgeReport: "Rapport",
|
|
904
1360
|
},
|
|
905
1361
|
empty: {
|
|
906
|
-
objectNotFound:
|
|
907
|
-
objectNotFoundDescription: '
|
|
908
|
-
pageNotFound:
|
|
909
|
-
pageNotFoundDescription:
|
|
910
|
-
dashboardNotFound:
|
|
911
|
-
dashboardNotFoundDescription:
|
|
912
|
-
reportNotFound:
|
|
913
|
-
reportNotFoundDescription:
|
|
914
|
-
noAppsConfigured:
|
|
915
|
-
noAppsConfiguredDescription:
|
|
916
|
-
createFirstApp:
|
|
917
|
-
systemSettings:
|
|
918
|
-
back:
|
|
1362
|
+
objectNotFound: "Objet introuvable",
|
|
1363
|
+
objectNotFoundDescription: "La définition de l'objet \"{{name}}\" est manquante. Vérifiez votre configuration ou revenez en arrière.",
|
|
1364
|
+
pageNotFound: "Page introuvable",
|
|
1365
|
+
pageNotFoundDescription: "La page \"{{name}}\" est introuvable. Elle a peut-être été supprimée ou renommée.",
|
|
1366
|
+
dashboardNotFound: "Tableau de bord introuvable",
|
|
1367
|
+
dashboardNotFoundDescription: "Le tableau de bord \"{{name}}\" est introuvable. Il a peut-être été supprimé ou renommé.",
|
|
1368
|
+
reportNotFound: "Rapport introuvable",
|
|
1369
|
+
reportNotFoundDescription: "Le rapport \"{{name}}\" est introuvable. Il a peut-être été supprimé ou renommé.",
|
|
1370
|
+
noAppsConfigured: "Aucune application configurée",
|
|
1371
|
+
noAppsConfiguredDescription: "Aucune application n'est enregistrée. Créez votre première application ou visitez les paramètres système.",
|
|
1372
|
+
createFirstApp: "Créer la première application",
|
|
1373
|
+
systemSettings: "Paramètres système",
|
|
1374
|
+
back: "Retour",
|
|
1375
|
+
recordNotFound: "Enregistrement introuvable",
|
|
1376
|
+
recordNotFoundDescription: "L'enregistrement que vous recherchez n'existe pas ou a peut-être été supprimé.",
|
|
919
1377
|
},
|
|
920
1378
|
renderer: {
|
|
921
|
-
noPageSchema:
|
|
922
|
-
noFormSchema:
|
|
923
|
-
noDashboardSchema:
|
|
924
|
-
pageRendering:
|
|
925
|
-
dashboardRendering:
|
|
926
|
-
formRenderingMode:
|
|
927
|
-
formRenderingFor: '
|
|
928
|
-
createRecord:
|
|
929
|
-
editRecord:
|
|
930
|
-
page:
|
|
931
|
-
dashboard:
|
|
932
|
-
save:
|
|
933
|
-
cancel:
|
|
1379
|
+
noPageSchema: "Aucun schéma de page fourni",
|
|
1380
|
+
noFormSchema: "Aucun schéma de formulaire fourni",
|
|
1381
|
+
noDashboardSchema: "Aucun schéma de tableau de bord fourni",
|
|
1382
|
+
pageRendering: "Rendu de la page : {{name}}",
|
|
1383
|
+
dashboardRendering: "Rendu du tableau de bord : {{name}}",
|
|
1384
|
+
formRenderingMode: "Formulaire rendu en mode {{mode}}",
|
|
1385
|
+
formRenderingFor: "pour l'enregistrement {{id}}",
|
|
1386
|
+
createRecord: "Créer un enregistrement",
|
|
1387
|
+
editRecord: "Modifier l'enregistrement",
|
|
1388
|
+
page: "Page",
|
|
1389
|
+
dashboard: "Tableau de bord",
|
|
1390
|
+
save: "Enregistrer",
|
|
1391
|
+
cancel: "Annuler",
|
|
934
1392
|
},
|
|
935
1393
|
actionDialog: {
|
|
936
|
-
title:
|
|
937
|
-
description:
|
|
938
|
-
selectPlaceholder:
|
|
939
|
-
requiredError:
|
|
940
|
-
cancel:
|
|
941
|
-
confirm:
|
|
942
|
-
defaultActionTitle:
|
|
943
|
-
ok:
|
|
1394
|
+
title: "Paramètres d'action",
|
|
1395
|
+
description: "Veuillez saisir les informations requises pour continuer.",
|
|
1396
|
+
selectPlaceholder: "Sélectionner {{label}}",
|
|
1397
|
+
requiredError: "{{label}} est obligatoire",
|
|
1398
|
+
cancel: "Annuler",
|
|
1399
|
+
confirm: "Confirmer",
|
|
1400
|
+
defaultActionTitle: "Action",
|
|
1401
|
+
ok: "OK",
|
|
1402
|
+
lookupPlaceholder: "Coller l'ID d'enregistrement (UUID) pour {{label}}",
|
|
1403
|
+
lookupHelpText: "Entrez l'ID de l'enregistrement de l'objet référencé. Un sélecteur sera bientôt ajouté.",
|
|
1404
|
+
},
|
|
1405
|
+
actionConfirm: {
|
|
1406
|
+
title: "Confirmer l’action",
|
|
1407
|
+
confirm: "Continuer",
|
|
1408
|
+
cancel: "Annuler",
|
|
944
1409
|
},
|
|
945
1410
|
rowAction: {
|
|
946
|
-
openMenu:
|
|
947
|
-
edit:
|
|
948
|
-
delete:
|
|
1411
|
+
openMenu: "Ouvrir le menu",
|
|
1412
|
+
edit: "Modifier",
|
|
1413
|
+
delete: "Supprimer",
|
|
949
1414
|
},
|
|
950
1415
|
navigationSync: {
|
|
951
|
-
addedPage:
|
|
952
|
-
addedDashboard:
|
|
953
|
-
removedPage:
|
|
954
|
-
removedDashboard:
|
|
955
|
-
renamedPage:
|
|
956
|
-
renamedDashboard:
|
|
957
|
-
undoLabel:
|
|
958
|
-
undone:
|
|
959
|
-
undoFailed: '
|
|
960
|
-
updateFailed:
|
|
1416
|
+
addedPage: "Navigation mise à jour : page \"{{name}}\" ajoutée",
|
|
1417
|
+
addedDashboard: "Navigation mise à jour : tableau de bord \"{{name}}\" ajouté",
|
|
1418
|
+
removedPage: "Navigation mise à jour : page \"{{name}}\" supprimée",
|
|
1419
|
+
removedDashboard: "Navigation mise à jour : tableau de bord \"{{name}}\" supprimé",
|
|
1420
|
+
renamedPage: "Navigation mise à jour : page \"{{oldName}}\" renommée en \"{{newName}}\"",
|
|
1421
|
+
renamedDashboard: "Navigation mise à jour : tableau de bord \"{{oldName}}\" renommé en \"{{newName}}\"",
|
|
1422
|
+
undoLabel: "Annuler",
|
|
1423
|
+
undone: "Modification de navigation annulée",
|
|
1424
|
+
undoFailed: "Impossible d'annuler la modification de navigation",
|
|
1425
|
+
updateFailed: "Impossible de mettre à jour la navigation",
|
|
961
1426
|
},
|
|
962
1427
|
objectActions: {
|
|
963
|
-
deleteSuccess:
|
|
964
|
-
deleteFailed:
|
|
965
|
-
noRecordId:
|
|
966
|
-
deleteConfirm:
|
|
1428
|
+
deleteSuccess: "{{label}} supprimé avec succès",
|
|
1429
|
+
deleteFailed: "Impossible de supprimer {{label}}",
|
|
1430
|
+
noRecordId: "Aucun ID d'enregistrement fourni",
|
|
1431
|
+
deleteConfirm: "Supprimer cet enregistrement ?",
|
|
1432
|
+
bulkDeleteSuccess: "{{count}} enregistrement(s) {{label}} supprimé(s)",
|
|
1433
|
+
bulkDeletePartial: "{{succeeded}} supprimé(s), {{failed}} échoué(s)",
|
|
967
1434
|
},
|
|
968
1435
|
objectViewActions: {
|
|
969
|
-
renameFailed:
|
|
970
|
-
deleteFailed:
|
|
1436
|
+
renameFailed: "Impossible de renommer la vue",
|
|
1437
|
+
deleteFailed: "Impossible de supprimer la vue",
|
|
971
1438
|
},
|
|
972
1439
|
dashboardActions: {
|
|
973
|
-
pdfPreparing: '
|
|
974
|
-
exportFailed: '
|
|
975
|
-
forecastSoon:
|
|
1440
|
+
pdfPreparing: "Préparation de l'export PDF…",
|
|
1441
|
+
exportFailed: "Échec de l'export : {{message}}",
|
|
1442
|
+
forecastSoon: "La vue de prévision arrive bientôt",
|
|
976
1443
|
},
|
|
977
1444
|
recordDetail: {
|
|
978
|
-
viewersTooltip:
|
|
1445
|
+
viewersTooltip: "Utilisateurs consultant cet enregistrement en ce moment",
|
|
979
1446
|
},
|
|
980
1447
|
cellRender: {
|
|
981
|
-
empty:
|
|
982
|
-
yes:
|
|
983
|
-
no:
|
|
984
|
-
systemFields:
|
|
1448
|
+
empty: "Vide",
|
|
1449
|
+
yes: "Oui",
|
|
1450
|
+
no: "Non",
|
|
1451
|
+
systemFields: "Système",
|
|
985
1452
|
},
|
|
986
1453
|
user: {
|
|
987
|
-
profile:
|
|
988
|
-
settings:
|
|
989
|
-
logout:
|
|
1454
|
+
profile: "Profil",
|
|
1455
|
+
settings: "Paramètres",
|
|
1456
|
+
logout: "Se déconnecter",
|
|
1457
|
+
preferences: "Préférences",
|
|
1458
|
+
theme: "Thème",
|
|
1459
|
+
language: "Langue",
|
|
990
1460
|
},
|
|
991
1461
|
report: {
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1462
|
+
total: "Total",
|
|
1463
|
+
rowTotal: "Total ligne",
|
|
1464
|
+
columnTotal: "Total colonne",
|
|
1465
|
+
grandTotal: "Total général",
|
|
1466
|
+
totals: "Totaux",
|
|
1467
|
+
rowsLabel: "Ligne",
|
|
1468
|
+
columnsLabel: "Colonne",
|
|
1469
|
+
allLabel: "(Tout)",
|
|
1470
|
+
emptyLabel: "(Vide)",
|
|
1471
|
+
loading: "Chargement…",
|
|
1472
|
+
failedToLoad: "Échec du chargement de la matrice : {{message}}",
|
|
1473
|
+
needsAcross: "Le rapport matriciel nécessite au moins un champ `groupingsAcross`.",
|
|
1003
1474
|
aggregate: {
|
|
1004
|
-
count:
|
|
1005
|
-
countDistinct:
|
|
1006
|
-
sum:
|
|
1007
|
-
avg:
|
|
1008
|
-
min:
|
|
1009
|
-
max:
|
|
1010
|
-
first:
|
|
1475
|
+
count: "Compter",
|
|
1476
|
+
countDistinct: "Compter distincts",
|
|
1477
|
+
sum: "Somme",
|
|
1478
|
+
avg: "Moyenne",
|
|
1479
|
+
min: "Minimum",
|
|
1480
|
+
max: "Maximum",
|
|
1481
|
+
first: "Premier",
|
|
1011
1482
|
},
|
|
1012
1483
|
editor: {
|
|
1013
|
-
breadcrumb:
|
|
1014
|
-
basic:
|
|
1015
|
-
title:
|
|
1016
|
-
titlePlaceholder:
|
|
1017
|
-
description:
|
|
1018
|
-
descriptionPlaceholder:
|
|
1019
|
-
type:
|
|
1020
|
-
typeTabular:
|
|
1021
|
-
typeSummary:
|
|
1022
|
-
typeMatrix:
|
|
1023
|
-
typeJoined:
|
|
1024
|
-
typeHelp:
|
|
1025
|
-
data:
|
|
1026
|
-
objectName:
|
|
1027
|
-
objectNamePlaceholder:
|
|
1028
|
-
objectNameHelp:
|
|
1029
|
-
limit:
|
|
1030
|
-
limitPlaceholder:
|
|
1031
|
-
columns:
|
|
1032
|
-
columnsHint:
|
|
1033
|
-
filters:
|
|
1034
|
-
filtersHint:
|
|
1035
|
-
filtersComplex:
|
|
1036
|
-
groupBy:
|
|
1037
|
-
groupByHint:
|
|
1038
|
-
rows:
|
|
1039
|
-
rowsHint:
|
|
1040
|
-
columnsAxis:
|
|
1041
|
-
columnsAxisHint:
|
|
1042
|
-
values:
|
|
1043
|
-
valuesHint:
|
|
1044
|
-
grouping:
|
|
1045
|
-
addGrouping:
|
|
1046
|
-
dateGranularity:
|
|
1047
|
-
dateGranularityNone:
|
|
1048
|
-
day:
|
|
1049
|
-
week:
|
|
1050
|
-
month:
|
|
1051
|
-
quarter:
|
|
1052
|
-
year:
|
|
1053
|
-
sortAsc:
|
|
1054
|
-
sortDesc:
|
|
1055
|
-
chart:
|
|
1056
|
-
chartHint:
|
|
1057
|
-
chartType:
|
|
1058
|
-
chartTitle:
|
|
1059
|
-
chartTitlePlaceholder:
|
|
1060
|
-
chartXAxis:
|
|
1061
|
-
chartYAxis:
|
|
1062
|
-
chartShowLegend:
|
|
1063
|
-
chartShowDataLabels:
|
|
1064
|
-
chartNone:
|
|
1065
|
-
chartBar:
|
|
1066
|
-
chartLine:
|
|
1067
|
-
chartArea:
|
|
1068
|
-
chartPie:
|
|
1069
|
-
chartDonut:
|
|
1070
|
-
chartFunnel:
|
|
1071
|
-
validationNeedsObject:
|
|
1072
|
-
validationMatrixNeedsRowsCols:
|
|
1073
|
-
validationSummaryNeedsRows:
|
|
1074
|
-
blocks:
|
|
1075
|
-
blocksHint:
|
|
1076
|
-
addBlock:
|
|
1077
|
-
removeBlock:
|
|
1078
|
-
blockName:
|
|
1079
|
-
blockNamePlaceholder:
|
|
1080
|
-
blockLabel:
|
|
1081
|
-
blockLabelPlaceholder:
|
|
1082
|
-
blockDescription:
|
|
1083
|
-
blockDescriptionPlaceholder:
|
|
1084
|
-
validationJoinedNeedsBlocks:
|
|
1085
|
-
validationBlockNameRequired:
|
|
1086
|
-
validationBlockNameDuplicate:
|
|
1087
|
-
validationBlockNeedsColumns:
|
|
1088
|
-
noneOption:
|
|
1089
|
-
addCondition:
|
|
1090
|
-
combineLogic:
|
|
1091
|
-
opContains:
|
|
1092
|
-
opIsEmpty:
|
|
1093
|
-
opIsNotEmpty:
|
|
1094
|
-
formatAuto:
|
|
1095
|
-
formatCurrency:
|
|
1096
|
-
formatPercent:
|
|
1097
|
-
formatInteger:
|
|
1098
|
-
formatDate:
|
|
1099
|
-
formatDatetime:
|
|
1100
|
-
columnLabelPlaceholder:
|
|
1101
|
-
aggregateColumn:
|
|
1102
|
-
formatColumn:
|
|
1103
|
-
addColumns:
|
|
1104
|
-
searchFields:
|
|
1105
|
-
noMatchingFields:
|
|
1106
|
-
noFieldsAvailable:
|
|
1484
|
+
breadcrumb: "Configuration",
|
|
1485
|
+
basic: "Général",
|
|
1486
|
+
title: "Titre",
|
|
1487
|
+
titlePlaceholder: "ex. Pipeline par trimestre",
|
|
1488
|
+
description: "Description",
|
|
1489
|
+
descriptionPlaceholder: "Que montre ce rapport ?",
|
|
1490
|
+
type: "Type de rapport",
|
|
1491
|
+
typeTabular: "Tableau — liste à plat",
|
|
1492
|
+
typeSummary: "Résumé — regroupé avec totaux",
|
|
1493
|
+
typeMatrix: "Matrice — pivot lignes × colonnes",
|
|
1494
|
+
typeJoined: "Combiné — plusieurs blocs",
|
|
1495
|
+
typeHelp: "Choisissez la mise en page correspondant à ce que vous voulez voir.",
|
|
1496
|
+
data: "Données",
|
|
1497
|
+
objectName: "Source de données",
|
|
1498
|
+
objectNamePlaceholder: "ex. opportunity",
|
|
1499
|
+
objectNameHelp: "Quel objet ce rapport doit-il interroger ?",
|
|
1500
|
+
limit: "Limite de lignes",
|
|
1501
|
+
limitPlaceholder: "ex. 100",
|
|
1502
|
+
columns: "Colonnes",
|
|
1503
|
+
columnsHint: "Choisissez les champs à afficher en colonnes. Ajoutez une agrégation (Somme, Nombre…) dans les rapports Résumé ou Matrice.",
|
|
1504
|
+
filters: "Filtres",
|
|
1505
|
+
filtersHint: "Limitez les lignes incluses dans ce rapport.",
|
|
1506
|
+
filtersComplex: "Ce rapport utilise un filtre avancé qui ne peut pas être édité ici. L’enregistrement le conservera tel quel.",
|
|
1507
|
+
groupBy: "Grouper par",
|
|
1508
|
+
groupByHint: "Regrouper les données et calculer les sous-totaux.",
|
|
1509
|
+
rows: "Lignes",
|
|
1510
|
+
rowsHint: "Grouper les lignes par ces champs.",
|
|
1511
|
+
columnsAxis: "Colonnes",
|
|
1512
|
+
columnsAxisHint: "Pivoter ces champs en haut.",
|
|
1513
|
+
values: "Valeurs",
|
|
1514
|
+
valuesHint: "Nombres affichés dans chaque cellule. Choisissez un ou plusieurs champs et ajoutez une agrégation (Somme, Nombre…).",
|
|
1515
|
+
grouping: "Groupement",
|
|
1516
|
+
addGrouping: "Ajouter un groupement",
|
|
1517
|
+
dateGranularity: "Granularité de la date",
|
|
1518
|
+
dateGranularityNone: "(valeur brute)",
|
|
1519
|
+
day: "Jour",
|
|
1520
|
+
week: "Semaine",
|
|
1521
|
+
month: "Mois",
|
|
1522
|
+
quarter: "Trimestre",
|
|
1523
|
+
year: "Année",
|
|
1524
|
+
sortAsc: "Croissant",
|
|
1525
|
+
sortDesc: "Décroissant",
|
|
1526
|
+
chart: "Graphique",
|
|
1527
|
+
chartHint: "Visualisation optionnelle affichée à côté du tableau.",
|
|
1528
|
+
chartType: "Type de graphique",
|
|
1529
|
+
chartTitle: "Titre du graphique",
|
|
1530
|
+
chartTitlePlaceholder: "Par défaut, le titre du rapport",
|
|
1531
|
+
chartXAxis: "Axe X (catégorie)",
|
|
1532
|
+
chartYAxis: "Axe Y (valeur)",
|
|
1533
|
+
chartShowLegend: "Afficher la légende",
|
|
1534
|
+
chartShowDataLabels: "Afficher les étiquettes",
|
|
1535
|
+
chartNone: "(aucun graphique)",
|
|
1536
|
+
chartBar: "Barres",
|
|
1537
|
+
chartLine: "Courbe",
|
|
1538
|
+
chartArea: "Aires",
|
|
1539
|
+
chartPie: "Camembert",
|
|
1540
|
+
chartDonut: "Anneau",
|
|
1541
|
+
chartFunnel: "Entonnoir",
|
|
1542
|
+
validationNeedsObject: "Sélectionnez une source de données avant d’ajouter des colonnes.",
|
|
1543
|
+
validationMatrixNeedsRowsCols: "Les rapports matriciels nécessitent au moins une ligne et une colonne.",
|
|
1544
|
+
validationSummaryNeedsRows: "Les rapports résumés nécessitent au moins un champ de regroupement.",
|
|
1545
|
+
blocks: "Blocs",
|
|
1546
|
+
blocksHint: "Chaque bloc est son propre tableau ou graphique. Les filtres de bloc sont combinés (ET) avec le filtre du rapport.",
|
|
1547
|
+
addBlock: "Ajouter un bloc",
|
|
1548
|
+
removeBlock: "Supprimer le bloc",
|
|
1549
|
+
blockName: "Nom du bloc",
|
|
1550
|
+
blockNamePlaceholder: "nom_unique_du_bloc",
|
|
1551
|
+
blockLabel: "Libellé d’affichage",
|
|
1552
|
+
blockLabelPlaceholder: "Affiché au-dessus du bloc",
|
|
1553
|
+
blockDescription: "Description",
|
|
1554
|
+
blockDescriptionPlaceholder: "Contexte optionnel pour ce bloc",
|
|
1555
|
+
validationJoinedNeedsBlocks: "Les rapports combinés nécessitent au moins un bloc.",
|
|
1556
|
+
validationBlockNameRequired: "Chaque bloc doit avoir un nom non vide.",
|
|
1557
|
+
validationBlockNameDuplicate: "Les noms de bloc doivent être uniques dans le rapport.",
|
|
1558
|
+
validationBlockNeedsColumns: "Chaque bloc doit avoir au moins une colonne.",
|
|
1559
|
+
noneOption: "(aucun)",
|
|
1560
|
+
addCondition: "Ajouter une condition",
|
|
1561
|
+
combineLogic: "Combiner avec",
|
|
1562
|
+
opContains: "contient",
|
|
1563
|
+
opIsEmpty: "est vide",
|
|
1564
|
+
opIsNotEmpty: "n’est pas vide",
|
|
1565
|
+
formatAuto: "Auto",
|
|
1566
|
+
formatCurrency: "Devise",
|
|
1567
|
+
formatPercent: "Pourcentage",
|
|
1568
|
+
formatInteger: "Entier",
|
|
1569
|
+
formatDate: "Date",
|
|
1570
|
+
formatDatetime: "Date et heure",
|
|
1571
|
+
columnLabelPlaceholder: "Remplacer le libellé",
|
|
1572
|
+
aggregateColumn: "Agrégation",
|
|
1573
|
+
formatColumn: "Format",
|
|
1574
|
+
addColumns: "Ajouter des colonnes",
|
|
1575
|
+
searchFields: "Rechercher des champs…",
|
|
1576
|
+
noMatchingFields: "Aucun champ ne correspond à votre recherche.",
|
|
1577
|
+
noFieldsAvailable: "Aucun champ disponible.",
|
|
1578
|
+
columnsCount: "{n} colonne(s) sélectionnée(s)",
|
|
1579
|
+
columnsEmpty: "Aucune colonne sélectionnée pour l'instant.",
|
|
1580
|
+
fieldPickerTitle: "Sélectionner des champs",
|
|
1581
|
+
fieldPickerDescription: "Choisissez un ou plusieurs champs à ajouter. Utilisez le champ de recherche pour filtrer la liste.",
|
|
1582
|
+
fieldPickerChangeTitle: "Changer le champ",
|
|
1583
|
+
fieldPickerAddGroupingTitle: "Ajouter un regroupement",
|
|
1584
|
+
fieldPickerEmpty: "(Sélectionner un champ)",
|
|
1585
|
+
fieldPickerSelected: "{n} sélectionné(s)",
|
|
1586
|
+
fieldPickerClear: "Effacer la sélection",
|
|
1587
|
+
fieldPickerAdd: "Ajouter",
|
|
1588
|
+
fieldPickerAddN: "Ajouter {n}",
|
|
1107
1589
|
},
|
|
1108
1590
|
},
|
|
1109
1591
|
organizations: {
|
|
1110
|
-
mine:
|
|
1111
|
-
title:
|
|
1112
|
-
heading:
|
|
1113
|
-
subtitle:
|
|
1114
|
-
searchPlaceholder:
|
|
1115
|
-
new:
|
|
1116
|
-
current:
|
|
1117
|
-
manage:
|
|
1118
|
-
emptyTitle:
|
|
1119
|
-
emptyDescription:
|
|
1120
|
-
noMatches:
|
|
1592
|
+
mine: "Mes organisations",
|
|
1593
|
+
title: "Organisations",
|
|
1594
|
+
heading: "Vos organisations",
|
|
1595
|
+
subtitle: "Sélectionnez une organisation pour continuer ou créez-en une nouvelle.",
|
|
1596
|
+
searchPlaceholder: "Rechercher une organisation",
|
|
1597
|
+
new: "Nouvelle organisation",
|
|
1598
|
+
current: "Organisation actuelle",
|
|
1599
|
+
manage: "Gérer",
|
|
1600
|
+
emptyTitle: "Aucune organisation pour le moment",
|
|
1601
|
+
emptyDescription: "Créez votre première organisation pour commencer.",
|
|
1602
|
+
noMatches: "Aucune organisation ne correspond à votre recherche.",
|
|
1121
1603
|
},
|
|
1122
1604
|
notifications: {
|
|
1123
|
-
empty:
|
|
1124
|
-
markAllRead:
|
|
1125
|
-
viewAll:
|
|
1126
|
-
approvalsPending:
|
|
1127
|
-
viewApprovals:
|
|
1128
|
-
noPendingApprovals:
|
|
1605
|
+
empty: "Aucune notification",
|
|
1606
|
+
markAllRead: "Tout marquer comme lu",
|
|
1607
|
+
viewAll: "Voir toutes les notifications",
|
|
1608
|
+
approvalsPending: "{{count}} approbations en attente",
|
|
1609
|
+
viewApprovals: "Voir les approbations",
|
|
1610
|
+
noPendingApprovals: "Aucune approbation en attente",
|
|
1129
1611
|
openApprovalsInbox: "Ouvrir la boîte d'approbations",
|
|
1612
|
+
emptyUnread: "Tout est lu",
|
|
1613
|
+
filterUnread: "Non lus",
|
|
1614
|
+
filterAll: "Tous",
|
|
1130
1615
|
},
|
|
1131
1616
|
publicForm: {
|
|
1132
|
-
submit:
|
|
1133
|
-
submitting:
|
|
1134
|
-
submitAnother:
|
|
1135
|
-
poweredBy:
|
|
1136
|
-
secureNotice:
|
|
1137
|
-
thankYouTitle:
|
|
1138
|
-
thankYouMessage:
|
|
1139
|
-
redirecting:
|
|
1140
|
-
unavailableTitle:
|
|
1141
|
-
unavailableDescription:
|
|
1142
|
-
tryDemo:
|
|
1143
|
-
retry:
|
|
1144
|
-
loading:
|
|
1145
|
-
requiredHint:
|
|
1146
|
-
consentLabelDefault: '
|
|
1147
|
-
consentLink:
|
|
1148
|
-
consentRequired:
|
|
1149
|
-
rateLimited:
|
|
1150
|
-
redirectBlocked:
|
|
1617
|
+
submit: "Envoyer",
|
|
1618
|
+
submitting: "Envoi…",
|
|
1619
|
+
submitAnother: "Envoyer une autre réponse",
|
|
1620
|
+
poweredBy: "Propulsé par ObjectStack",
|
|
1621
|
+
secureNotice: "Vos informations sont transmises en toute sécurité et utilisées uniquement pour traiter votre demande.",
|
|
1622
|
+
thankYouTitle: "Merci !",
|
|
1623
|
+
thankYouMessage: "Votre soumission a été reçue avec succès.",
|
|
1624
|
+
redirecting: "Redirection dans {{seconds}} seconde(s)…",
|
|
1625
|
+
unavailableTitle: "Formulaire non disponible",
|
|
1626
|
+
unavailableDescription: "Aucun formulaire public n'est disponible à cette URL. Assurez-vous que la vue sous-jacente a le partage anonyme activé.",
|
|
1627
|
+
tryDemo: "Essayer la démo",
|
|
1628
|
+
retry: "Réessayer",
|
|
1629
|
+
loading: "Chargement du formulaire…",
|
|
1630
|
+
requiredHint: "* Champ obligatoire",
|
|
1631
|
+
consentLabelDefault: "J'accepte la politique de confidentialité et consens au traitement de mes données pour cette demande.",
|
|
1632
|
+
consentLink: "Politique de confidentialité",
|
|
1633
|
+
consentRequired: "Veuillez accepter la politique de confidentialité pour continuer.",
|
|
1634
|
+
rateLimited: "Prenez un moment pour vérifier vos réponses avant d'envoyer.",
|
|
1635
|
+
redirectBlocked: "Soumission acceptée, mais l'URL de redirection a été bloquée pour des raisons de sécurité.",
|
|
1151
1636
|
demo: {
|
|
1152
|
-
contactTitle:
|
|
1153
|
-
contactDescription:
|
|
1154
|
-
supportTitle:
|
|
1155
|
-
supportDescription:
|
|
1156
|
-
thankYouSalesTitle:
|
|
1157
|
-
thankYouSalesMessage:
|
|
1158
|
-
thankYouSupportTitle: '
|
|
1159
|
-
thankYouSupportMessage: '
|
|
1637
|
+
contactTitle: "Nous contacter",
|
|
1638
|
+
contactDescription: "Parlez-nous de votre projet et un représentant commercial vous contactera dans un jour ouvrable.",
|
|
1639
|
+
supportTitle: "Soumettre une demande d'assistance",
|
|
1640
|
+
supportDescription: "Décrivez-nous le problème — notre équipe répondra dans un jour ouvrable.",
|
|
1641
|
+
thankYouSalesTitle: "Merci — nous avons reçu votre message !",
|
|
1642
|
+
thankYouSalesMessage: "Un représentant commercial vous contactera dans un jour ouvrable.",
|
|
1643
|
+
thankYouSupportTitle: "C'est bon — votre demande est en file d'attente.",
|
|
1644
|
+
thankYouSupportMessage: "Un ingénieur d'assistance vous fera un suivi bientôt. Sauvegardez cette page si vous avez des captures d'écran supplémentaires.",
|
|
1160
1645
|
field: {
|
|
1161
|
-
firstName:
|
|
1162
|
-
lastName:
|
|
1163
|
-
email:
|
|
1164
|
-
phone:
|
|
1165
|
-
jobTitle:
|
|
1166
|
-
company:
|
|
1167
|
-
website:
|
|
1168
|
-
industry:
|
|
1169
|
-
companySize:
|
|
1170
|
-
howCanWeHelp:
|
|
1171
|
-
subject:
|
|
1172
|
-
description:
|
|
1173
|
-
issueType:
|
|
1174
|
-
priority:
|
|
1646
|
+
firstName: "Prénom",
|
|
1647
|
+
lastName: "Nom",
|
|
1648
|
+
email: "E-mail professionnel",
|
|
1649
|
+
phone: "Téléphone",
|
|
1650
|
+
jobTitle: "Titre du poste",
|
|
1651
|
+
company: "Entreprise",
|
|
1652
|
+
website: "Site web",
|
|
1653
|
+
industry: "Secteur",
|
|
1654
|
+
companySize: "Taille de l'entreprise",
|
|
1655
|
+
howCanWeHelp: "Comment pouvons-nous vous aider ?",
|
|
1656
|
+
subject: "Sujet",
|
|
1657
|
+
description: "Description",
|
|
1658
|
+
issueType: "Type de problème",
|
|
1659
|
+
priority: "Priorité",
|
|
1175
1660
|
},
|
|
1176
1661
|
industry: {
|
|
1177
|
-
technology:
|
|
1178
|
-
software:
|
|
1179
|
-
finance:
|
|
1180
|
-
healthcare:
|
|
1181
|
-
retail:
|
|
1182
|
-
other:
|
|
1662
|
+
technology: "Technologie",
|
|
1663
|
+
software: "Logiciel / SaaS",
|
|
1664
|
+
finance: "Finance",
|
|
1665
|
+
healthcare: "Santé",
|
|
1666
|
+
retail: "Commerce de détail",
|
|
1667
|
+
other: "Autre",
|
|
1183
1668
|
},
|
|
1184
1669
|
issueType: {
|
|
1185
|
-
question:
|
|
1186
|
-
problem:
|
|
1187
|
-
bug:
|
|
1188
|
-
feature_request:
|
|
1670
|
+
question: "Question",
|
|
1671
|
+
problem: "Problème",
|
|
1672
|
+
bug: "Bug",
|
|
1673
|
+
feature_request: "Demande de fonctionnalité",
|
|
1189
1674
|
},
|
|
1190
1675
|
priority: {
|
|
1191
|
-
low:
|
|
1192
|
-
medium:
|
|
1193
|
-
high:
|
|
1194
|
-
critical:
|
|
1676
|
+
low: "Faible",
|
|
1677
|
+
medium: "Moyen",
|
|
1678
|
+
high: "Élevé",
|
|
1679
|
+
critical: "Critique",
|
|
1195
1680
|
},
|
|
1196
1681
|
},
|
|
1197
1682
|
},
|
|
1198
1683
|
marketplace: {
|
|
1199
|
-
title:
|
|
1200
|
-
subtitle:
|
|
1201
|
-
searchPlaceholder:
|
|
1202
|
-
searchAria:
|
|
1203
|
-
installed:
|
|
1204
|
-
installedCount:
|
|
1205
|
-
refresh:
|
|
1206
|
-
all:
|
|
1207
|
-
noApprovedYet:
|
|
1208
|
-
noMatchFilters:
|
|
1209
|
-
noDescription:
|
|
1210
|
-
back:
|
|
1211
|
-
installedTitle:
|
|
1212
|
-
installedSubtitle:
|
|
1213
|
-
installedEmpty:
|
|
1214
|
-
browseLink:
|
|
1215
|
-
installedAdditiveNote:
|
|
1216
|
-
installedAt:
|
|
1217
|
-
installedBy:
|
|
1218
|
-
installedPackageId:
|
|
1219
|
-
cachedAs:
|
|
1220
|
-
versionBadge:
|
|
1221
|
-
installedBadge:
|
|
1684
|
+
title: "Marketplace d'applications",
|
|
1685
|
+
subtitle: "Parcourez les applications approuvées publiées dans le catalogue ObjectStack. Cliquez sur une application pour voir les détails et l'installer dans l'un de vos environnements.",
|
|
1686
|
+
searchPlaceholder: "Rechercher des applications par nom ou ID de manifeste…",
|
|
1687
|
+
searchAria: "Rechercher des applications du marketplace",
|
|
1688
|
+
installed: "Installé",
|
|
1689
|
+
installedCount: "Installées ({{count}})",
|
|
1690
|
+
refresh: "Actualiser",
|
|
1691
|
+
all: "Toutes",
|
|
1692
|
+
noApprovedYet: "Aucune application approuvée pour le marketplace pour l'instant.",
|
|
1693
|
+
noMatchFilters: "Aucune application ne correspond à vos filtres.",
|
|
1694
|
+
noDescription: "Aucune description disponible.",
|
|
1695
|
+
back: "Retour au marketplace",
|
|
1696
|
+
installedTitle: "Applications installées",
|
|
1697
|
+
installedSubtitle: "Paquets du marketplace actuellement installés dans le noyau de ce runtime.",
|
|
1698
|
+
installedEmpty: "Aucune application du marketplace installée dans ce runtime pour l'instant.",
|
|
1699
|
+
browseLink: "Parcourir le marketplace →",
|
|
1700
|
+
installedAdditiveNote: "<strong>Remarque :</strong> L'API du noyau est uniquement additive — la désinstallation supprime le manifeste du disque pour que le paquet ne se charge pas au prochain démarrage, mais le noyau en cours d'exécution maintient l'application enregistrée jusqu'au redémarrage.",
|
|
1701
|
+
installedAt: "Installé {{when}}",
|
|
1702
|
+
installedBy: "par {{user}}",
|
|
1703
|
+
installedPackageId: "Paquet",
|
|
1704
|
+
cachedAs: "Mis en cache sous <code>{{path}}</code>",
|
|
1705
|
+
versionBadge: "v{{version}}",
|
|
1706
|
+
installedBadge: "Installé v{{version}}",
|
|
1222
1707
|
load: {
|
|
1223
|
-
failed:
|
|
1224
|
-
failedHint:
|
|
1225
|
-
packageFailed:
|
|
1226
|
-
notFound:
|
|
1708
|
+
failed: "Impossible de charger le marketplace",
|
|
1709
|
+
failedHint: "Par défaut, ce runtime pointe vers le cloud public ObjectStack. Assurez-vous que le runtime est en ligne.",
|
|
1710
|
+
packageFailed: "Impossible de charger le paquet",
|
|
1711
|
+
notFound: "Introuvable.",
|
|
1227
1712
|
},
|
|
1228
1713
|
detail: {
|
|
1229
|
-
homepage: '
|
|
1230
|
-
installedV:
|
|
1231
|
-
about:
|
|
1232
|
-
noReadme:
|
|
1233
|
-
versions:
|
|
1234
|
-
noApprovedVersions:
|
|
1235
|
-
prerelease:
|
|
1236
|
-
moreOptions: '
|
|
1237
|
-
uninstallFromRuntime:
|
|
1714
|
+
homepage: "Page d'accueil",
|
|
1715
|
+
installedV: "Installé · v{{version}}",
|
|
1716
|
+
about: "À propos",
|
|
1717
|
+
noReadme: "Aucun readme disponible.",
|
|
1718
|
+
versions: "Versions",
|
|
1719
|
+
noApprovedVersions: "Aucune version approuvée.",
|
|
1720
|
+
prerelease: "Prélancement",
|
|
1721
|
+
moreOptions: "Plus d'options d'installation",
|
|
1722
|
+
uninstallFromRuntime: "Désinstaller de ce runtime",
|
|
1723
|
+
addSampleData: 'Ajouter des données d\'exemple',
|
|
1724
|
+
reseedAgain: 'Recharger les données d\'exemple',
|
|
1725
|
+
purgeSampleData: 'Supprimer les données d\'exemple',
|
|
1726
|
+
purgeConfirm: 'Supprimer tous les enregistrements d\'exemple créés par ce paquet ? Les enregistrements ajoutés par l\'utilisateur ne seront PAS touchés.',
|
|
1727
|
+
purgeSuccess: '{{count}} enregistrement(s) d\'exemple supprimé(s).',
|
|
1728
|
+
purgeNoData: 'Aucun enregistrement d\'exemple à supprimer.',
|
|
1729
|
+
reseedQueued: 'Les données d\'exemple seront rechargées au prochain accès à l\'environnement.',
|
|
1730
|
+
reseedLocalSuccess: 'Données d\'exemple rechargées : {{inserted}} ajoutés, {{updated}} mis à jour.',
|
|
1731
|
+
reseedPartialErrors: '({{count}} enregistrement(s) n\'ont pas pu être écrits)',
|
|
1732
|
+
updateAvailable: 'Mise à jour disponible',
|
|
1238
1733
|
},
|
|
1239
1734
|
action: {
|
|
1240
|
-
install:
|
|
1241
|
-
reinstall:
|
|
1242
|
-
working:
|
|
1243
|
-
installToCloud:
|
|
1244
|
-
installing:
|
|
1245
|
-
uninstall:
|
|
1246
|
-
uninstalling:
|
|
1247
|
-
details:
|
|
1248
|
-
close:
|
|
1249
|
-
dismiss:
|
|
1250
|
-
openOnCloud:
|
|
1251
|
-
backHome:
|
|
1735
|
+
install: "Installer",
|
|
1736
|
+
reinstall: "Réinstaller",
|
|
1737
|
+
working: "Traitement…",
|
|
1738
|
+
installToCloud: "Installer dans le cloud…",
|
|
1739
|
+
installing: "Installation…",
|
|
1740
|
+
uninstall: "Désinstaller",
|
|
1741
|
+
uninstalling: "Désinstallation…",
|
|
1742
|
+
details: "Détails",
|
|
1743
|
+
close: "Fermer",
|
|
1744
|
+
dismiss: "Fermer",
|
|
1745
|
+
openOnCloud: "Ouvrir dans le cloud",
|
|
1746
|
+
backHome: "Retour à l'accueil",
|
|
1252
1747
|
},
|
|
1253
1748
|
install: {
|
|
1254
|
-
dialogTitle:
|
|
1255
|
-
dialogDescCurrent:
|
|
1256
|
-
dialogDescPicker:
|
|
1257
|
-
environment:
|
|
1258
|
-
environmentPlaceholder:
|
|
1259
|
-
includeSampleData:
|
|
1260
|
-
noEnvs:
|
|
1261
|
-
noPermission: '
|
|
1262
|
-
signInFirst: '
|
|
1263
|
-
success:
|
|
1264
|
-
localSuccess:
|
|
1265
|
-
localManifestConflict:
|
|
1266
|
-
localUnauthorized: '
|
|
1267
|
-
localMarketplaceUnavailable:
|
|
1749
|
+
dialogTitle: "Installer {{name}}",
|
|
1750
|
+
dialogDescCurrent: "Installer dans cet environnement ({{host}}).",
|
|
1751
|
+
dialogDescPicker: "Choisissez un environnement où installer cette application. Vous devez être connecté à ObjectStack Cloud.",
|
|
1752
|
+
environment: "Environnement",
|
|
1753
|
+
environmentPlaceholder: "Sélectionner un environnement",
|
|
1754
|
+
includeSampleData: "Inclure des données d'exemple",
|
|
1755
|
+
noEnvs: "Aucun environnement trouvé dans votre organisation active.",
|
|
1756
|
+
noPermission: "Vous n'avez pas la permission d'installer des applications dans un environnement. Seuls les propriétaires et administrateurs de l'organisation peuvent installer.",
|
|
1757
|
+
signInFirst: "Vous devez d'abord vous connecter à ObjectStack Cloud.",
|
|
1758
|
+
success: "Installé avec succès. Ouvrez l'environnement pour voir la nouvelle application.",
|
|
1759
|
+
localSuccess: "v{{version}} installé dans ce runtime. \"{{name}}\" devrait maintenant apparaître dans le sélecteur d'applications.",
|
|
1760
|
+
localManifestConflict: "{{message}}\nRemarque : Une application locale possède déjà ce manifest_id. Supprimez-la d'abord de objectstack.config.ts.",
|
|
1761
|
+
localUnauthorized: "Connectez-vous d'abord à ce runtime.",
|
|
1762
|
+
localMarketplaceUnavailable: "Ce runtime n'a pas de OS_CLOUD_URL configuré.",
|
|
1268
1763
|
},
|
|
1269
1764
|
uninstall: {
|
|
1270
|
-
confirm:
|
|
1271
|
-
successInList:
|
|
1272
|
-
successInDetail:
|
|
1765
|
+
confirm: "Désinstaller {{manifestId}} v{{version}} de ce runtime ?\n\nLe manifeste en cache sera supprimé.",
|
|
1766
|
+
successInList: "{{manifestId}} supprimé. Redémarrez le runtime pour le décharger complètement.",
|
|
1767
|
+
successInDetail: "Manifeste en cache pour {{manifestId}} supprimé.",
|
|
1273
1768
|
},
|
|
1274
1769
|
accessDenied: {
|
|
1275
|
-
title:
|
|
1276
|
-
description:
|
|
1770
|
+
title: "Marketplace réservé aux administrateurs",
|
|
1771
|
+
description: "Vous n'avez pas la permission d'installer des applications dans cet environnement.",
|
|
1277
1772
|
},
|
|
1278
1773
|
category: {
|
|
1279
|
-
crm:
|
|
1280
|
-
erp:
|
|
1281
|
-
hr:
|
|
1282
|
-
finance:
|
|
1283
|
-
project:
|
|
1284
|
-
collaboration:
|
|
1285
|
-
analytics:
|
|
1286
|
-
integration:
|
|
1287
|
-
automation:
|
|
1288
|
-
ai:
|
|
1289
|
-
security:
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
storage:
|
|
1293
|
-
other:
|
|
1774
|
+
crm: "CRM",
|
|
1775
|
+
erp: "ERP",
|
|
1776
|
+
hr: "RH",
|
|
1777
|
+
finance: "Finance",
|
|
1778
|
+
project: "Gestion de projet",
|
|
1779
|
+
collaboration: "Collaboration",
|
|
1780
|
+
analytics: "Analytique",
|
|
1781
|
+
integration: "Intégration",
|
|
1782
|
+
automation: "Automatisation",
|
|
1783
|
+
ai: "IA",
|
|
1784
|
+
security: "Sécurité",
|
|
1785
|
+
"developer-tools": "Outils développeur",
|
|
1786
|
+
"ui-theme": "Thème UI",
|
|
1787
|
+
storage: "Stockage",
|
|
1788
|
+
other: "Autre",
|
|
1294
1789
|
},
|
|
1295
1790
|
pricing: {
|
|
1296
|
-
free:
|
|
1297
|
-
freemium:
|
|
1298
|
-
paid:
|
|
1299
|
-
subscription:
|
|
1300
|
-
|
|
1301
|
-
|
|
1791
|
+
free: "Gratuit",
|
|
1792
|
+
freemium: "Freemium",
|
|
1793
|
+
paid: "Payant",
|
|
1794
|
+
subscription: "Abonnement",
|
|
1795
|
+
"usage-based": "À l'utilisation",
|
|
1796
|
+
"contact-sales": "Contacter les ventes",
|
|
1302
1797
|
},
|
|
1303
1798
|
relativeTime: {
|
|
1304
|
-
today: '
|
|
1305
|
-
daysAgo:
|
|
1306
|
-
monthsAgo:
|
|
1307
|
-
yearsAgo:
|
|
1799
|
+
today: "aujourd'hui",
|
|
1800
|
+
daysAgo: "il y a {{count}}j",
|
|
1801
|
+
monthsAgo: "il y a {{count}} mois",
|
|
1802
|
+
yearsAgo: "il y a {{count}} ans",
|
|
1308
1803
|
},
|
|
1309
1804
|
},
|
|
1805
|
+
approvalsInbox: {
|
|
1806
|
+
loadMore: 'Charger plus',
|
|
1807
|
+
loadingMore: 'Chargement…',
|
|
1808
|
+
loadedOf: '{{loaded}} sur {{total}} chargées',
|
|
1809
|
+
actEscalate: 'SLA escaladé',
|
|
1810
|
+
systemSlaActor: 'Système (SLA)',
|
|
1811
|
+
reassignBtn: 'Réattribuer',
|
|
1812
|
+
reassignTitle: 'Confier cette approbation à quelqu\'un d\'autre ?',
|
|
1813
|
+
reassignBody: 'Votre place d\'approbateur passe à la personne choisie — elle est notifiée et peut agir immédiatement.',
|
|
1814
|
+
reassignTo: 'Nouvel approbateur',
|
|
1815
|
+
reassignToPlaceholder: 'Choisissez un utilisateur ou saisissez un e-mail / role:<nom>',
|
|
1816
|
+
reassignSuccess: 'Confiée à {{to}}',
|
|
1817
|
+
requestInfoBtn: 'Demander des infos',
|
|
1818
|
+
requestInfoTitle: 'Demander plus d\'informations au demandeur ?',
|
|
1819
|
+
requestInfoBody: 'La demande reste en attente ; le demandeur est notifié et peut répondre dans le fil.',
|
|
1820
|
+
requestInfoPlaceholder: 'Que faut-il au demandeur ?',
|
|
1821
|
+
requestInfoSent: 'Renvoyée au demandeur pour complément',
|
|
1822
|
+
remindBtn: 'Relancer',
|
|
1823
|
+
remindSuccess: 'Relance envoyée à {{count}} approbateur(s)',
|
|
1824
|
+
remindThrottled: 'Une relance a déjà été envoyée récemment — réessayez plus tard.',
|
|
1825
|
+
replyPlaceholder: 'Répondre sur cette demande…',
|
|
1826
|
+
slaRemaining: 'SLA : {{dur}} restants',
|
|
1827
|
+
slaOverdue: 'SLA dépassé de {{dur}}',
|
|
1828
|
+
actReassign: 'Réattribuée',
|
|
1829
|
+
actRemind: 'Relance',
|
|
1830
|
+
actRequestInfo: 'Infos demandées',
|
|
1831
|
+
actComment: 'Commentaire',
|
|
1832
|
+
stepProgress: 'Étapes d\'approbation',
|
|
1833
|
+
prevRequest: 'Précédente',
|
|
1834
|
+
nextRequest: 'Suivante',
|
|
1835
|
+
positionOf: '{{index}} sur {{total}}',
|
|
1836
|
+
quickPhrase1: 'Approuvée — conforme aux exigences.',
|
|
1837
|
+
quickPhrase2: 'Approuvée sous conditions — surveillez l\'exécution.',
|
|
1838
|
+
quickPhrase3: 'Veuillez compléter le dossier et soumettre à nouveau.',
|
|
1839
|
+
title: 'Centre d\'approbations',
|
|
1840
|
+
subtitle: 'Consultez et traitez les demandes d\'approbation.',
|
|
1841
|
+
refresh: 'Actualiser',
|
|
1842
|
+
tabMyPending: 'En attente de moi',
|
|
1843
|
+
tabSubmitted: 'Soumises par moi',
|
|
1844
|
+
tabAll: 'Toutes',
|
|
1845
|
+
searchPlaceholder: 'Rechercher un enregistrement, un processus, un demandeur…',
|
|
1846
|
+
clearSearch: 'Effacer la recherche',
|
|
1847
|
+
statusFilter: 'Statut',
|
|
1848
|
+
allStatuses: 'Tous les statuts',
|
|
1849
|
+
processFilter: 'Processus',
|
|
1850
|
+
allProcesses: 'Tous les processus',
|
|
1851
|
+
objectFilter: 'Objet',
|
|
1852
|
+
allObjects: 'Tous les objets',
|
|
1853
|
+
filterCount: '{{shown}} sur {{total}}',
|
|
1854
|
+
selected: 'sélectionnées',
|
|
1855
|
+
actionableCount: '({{count}} actionnables)',
|
|
1856
|
+
selectAll: 'Tout sélectionner',
|
|
1857
|
+
selectRow: 'Sélectionner la demande',
|
|
1858
|
+
colRequest: 'Demande',
|
|
1859
|
+
colRecord: 'Enregistrement',
|
|
1860
|
+
colRequester: 'Demandeur',
|
|
1861
|
+
colStatus: 'Statut',
|
|
1862
|
+
colWaiting: 'Soumise',
|
|
1863
|
+
colActions: 'Actions',
|
|
1864
|
+
statusPending: 'En attente',
|
|
1865
|
+
statusApproved: 'Approuvée',
|
|
1866
|
+
statusRejected: 'Rejetée',
|
|
1867
|
+
statusRecalled: 'Retirée',
|
|
1868
|
+
statusReturned: 'Renvoyé pour révision',
|
|
1869
|
+
sendBackBtn: 'Renvoyer',
|
|
1870
|
+
sendBackTitle: 'Renvoyer cette demande pour révision ?',
|
|
1871
|
+
sendBackBody: 'Ce tour se termine et l\'enregistrement est déverrouillé pour que le demandeur corrige les données. À la nouvelle soumission, un nouveau tour d\'approbation s\'ouvre pour tous les approbateurs.',
|
|
1872
|
+
sendBackPlaceholder: 'Que faut-il corriger avant approbation ?',
|
|
1873
|
+
sendBackSuccess: 'Renvoyé pour révision — le demandeur peut maintenant modifier et soumettre à nouveau',
|
|
1874
|
+
sendBackAutoRejected: 'Limite de révisions atteinte — la demande a été rejetée automatiquement',
|
|
1875
|
+
actRevise: 'Renvoyé pour révision',
|
|
1876
|
+
actResubmit: 'Soumis à nouveau',
|
|
1877
|
+
roundChip: 'Tour {{n}}',
|
|
1878
|
+
returnedHint: 'Un approbateur vous a renvoyé cette demande. L\'enregistrement est déverrouillé — corrigez les données puis soumettez à nouveau pour démarrer un nouveau tour d\'approbation.',
|
|
1879
|
+
resubmitBtn: 'Soumettre à nouveau',
|
|
1880
|
+
resubmitting: 'Nouvelle soumission…',
|
|
1881
|
+
resubmitSuccess: 'Soumis à nouveau — un nouveau tour d\'approbation est ouvert',
|
|
1882
|
+
resubmitPlaceholder: 'Qu\'avez-vous modifié ?',
|
|
1883
|
+
editRecordBtn: 'Modifier l\'enregistrement',
|
|
1884
|
+
abandonTitle: 'Abandonner cette révision ?',
|
|
1885
|
+
abandonBody: 'La demande est retirée au lieu d\'être soumise à nouveau. L\'approbation s\'arrête ici.',
|
|
1886
|
+
emptyTitle: 'Aucune demande',
|
|
1887
|
+
emptyPending: 'Tout est à jour — rien n\'attend votre approbation.',
|
|
1888
|
+
emptyOther: 'Rien ici pour l\'instant.',
|
|
1889
|
+
emptyViewAll: 'Voir toutes les demandes',
|
|
1890
|
+
noMatches: 'Aucun résultat avec les filtres actuels.',
|
|
1891
|
+
keyboardHint: 'Clavier : j/k déplacer · Entrée ouvrir · x sélectionner · a approuver · r rejeter',
|
|
1892
|
+
drawerTitle: 'Demande d\'approbation',
|
|
1893
|
+
submittedAgo: 'Soumise {{when}}',
|
|
1894
|
+
completedAt: 'Terminée {{when}}',
|
|
1895
|
+
waitingOn: 'En attente de',
|
|
1896
|
+
history: 'Activité',
|
|
1897
|
+
noActions: 'Aucune action pour le moment.',
|
|
1898
|
+
actSubmit: 'Soumise',
|
|
1899
|
+
actApprove: 'Approuvée',
|
|
1900
|
+
actReject: 'Rejetée',
|
|
1901
|
+
actRecall: 'Retirée',
|
|
1902
|
+
rawData: 'Données brutes (JSON)',
|
|
1903
|
+
copy: 'Copier',
|
|
1904
|
+
copied: 'Copié',
|
|
1905
|
+
copyFailed: 'Échec de la copie',
|
|
1906
|
+
overrideActor: 'Agir sous une autre identité (admin)',
|
|
1907
|
+
actor: 'Acteur',
|
|
1908
|
+
auto: 'Auto',
|
|
1909
|
+
overrideHint: 'p. ex. role:sales_manager. Laissez vide pour l\'identité détectée automatiquement.',
|
|
1910
|
+
comment: 'Commentaire (facultatif)',
|
|
1911
|
+
approve: 'Approuver',
|
|
1912
|
+
approving: 'Approbation…',
|
|
1913
|
+
reject: 'Rejeter',
|
|
1914
|
+
rejecting: 'Rejet…',
|
|
1915
|
+
recall: 'Retirer',
|
|
1916
|
+
recalling: 'Retrait…',
|
|
1917
|
+
cancel: 'Annuler',
|
|
1918
|
+
clear: 'Effacer',
|
|
1919
|
+
approveN: 'Approuver {{count}}',
|
|
1920
|
+
rejectN: 'Rejeter {{count}}',
|
|
1921
|
+
bulkApproveTitle: 'Approuver {{count}} demandes ?',
|
|
1922
|
+
bulkApproveBody: 'Chaque demande est approuvée avec votre identité et son flux continue sur la branche d\'approbation.',
|
|
1923
|
+
bulkRejectTitle: 'Rejeter {{count}} demandes ?',
|
|
1924
|
+
bulkRejectBody: 'Les demandes sélectionnées seront rejetées et leurs demandeurs notifiés.',
|
|
1925
|
+
bulkApproved: '{{count}} demandes approuvées',
|
|
1926
|
+
bulkRejected: '{{count}} demandes rejetées',
|
|
1927
|
+
bulkPartial: '{{ok}} réussies, {{fail}} échouées : {{which}}',
|
|
1928
|
+
rejectOneTitle: 'Rejeter « {{title}} » ?',
|
|
1929
|
+
rejectOneBody: 'La demande sera rejetée et le demandeur notifié.',
|
|
1930
|
+
rejectTitle: 'Rejeter cette demande ?',
|
|
1931
|
+
rejectBody: 'La demande sera marquée comme rejetée et le demandeur notifié.',
|
|
1932
|
+
recallTitle: 'Retirer cette demande ?',
|
|
1933
|
+
recallBody: 'Après le retrait, les approbateurs ne pourront plus agir et l\'enregistrement sera déverrouillé.',
|
|
1934
|
+
inlineApproved: '« {{title}} » approuvée',
|
|
1935
|
+
inlineRejected: '« {{title}} » rejetée',
|
|
1936
|
+
approvedFinal: 'Approuvée',
|
|
1937
|
+
approvedWaiting: 'Approuvée — en attente des autres approbateurs',
|
|
1938
|
+
rejectedToast: 'Rejetée',
|
|
1939
|
+
recalledToast: 'Demande retirée',
|
|
1940
|
+
whyDisabled: 'Seuls les approbateurs désignés peuvent agir. En attente de : {{who}}.',
|
|
1941
|
+
whyDisabledSubmitter: 'Vous avez soumis cette demande, vous pouvez donc la retirer — mais seuls les approbateurs désignés peuvent l\'approuver ou la rejeter.',
|
|
1942
|
+
noActor: 'Impossible de déterminer l\'identité',
|
|
1943
|
+
actionFailed: 'Échec de l\'action',
|
|
1944
|
+
loadFailed: 'Impossible de charger la demande',
|
|
1945
|
+
recallUnavailable: 'Le retrait n\'est pas disponible sur ce déploiement.',
|
|
1946
|
+
requestGone: 'Cette demande n\'existe plus. Actualisez la liste.',
|
|
1947
|
+
notAllowed: 'Vous n\'êtes pas autorisé à effectuer cette action.',
|
|
1948
|
+
alreadyDecided: 'Cette demande a déjà été traitée. Actualisez la liste.',
|
|
1949
|
+
justNow: 'à l\'instant',
|
|
1950
|
+
minutesAgo: 'il y a {{count}} min',
|
|
1951
|
+
hoursAgo: 'il y a {{count}} h',
|
|
1952
|
+
daysAgo: 'il y a {{count}} jours',
|
|
1953
|
+
},
|
|
1954
|
+
preview: {
|
|
1955
|
+
empty: {
|
|
1956
|
+
loadFailedTitle: "Échec du chargement de l'aperçu du brouillon",
|
|
1957
|
+
loadFailedDescription: "Impossible de lire la surcouche de brouillon. Réessayez ou vérifiez votre connexion.",
|
|
1958
|
+
notReadyTitle: '« {{app}} » n\'est pas encore dans le brouillon',
|
|
1959
|
+
notReadyDescription: "La génération est peut-être en cours, ou elle a échoué avant la préparation de cette application. Consultez la conversation pour connaître l'état — ce volet s'actualise à l'arrivée des brouillons.",
|
|
1960
|
+
nothingTitle: "Rien à prévisualiser pour l'instant",
|
|
1961
|
+
retry: 'Réessayer',
|
|
1962
|
+
},
|
|
1963
|
+
draftBar: {
|
|
1964
|
+
message: "Aperçu du brouillon — vous voyez des modifications non publiées. Rien n'est en ligne avant publication.",
|
|
1965
|
+
publish: 'Publier',
|
|
1966
|
+
publishing: 'Publication…',
|
|
1967
|
+
exit: "Quitter l'aperçu",
|
|
1968
|
+
changes: 'Modifications',
|
|
1969
|
+
},
|
|
1970
|
+
changes: {
|
|
1971
|
+
title: 'Modifications en attente',
|
|
1972
|
+
description: 'Ce que la publication changera. Les nouveaux éléments sont ajoutés ; les mises à jour remplacent la version en ligne.',
|
|
1973
|
+
loading: 'Chargement des modifications en attente…',
|
|
1974
|
+
loadFailed: 'Impossible de charger les modifications en attente :',
|
|
1975
|
+
empty: 'Rien en attente — tous les brouillons ont été publiés.',
|
|
1976
|
+
kindNew: 'Nouveau',
|
|
1977
|
+
kindUpdate: 'Mise à jour',
|
|
1978
|
+
},
|
|
1979
|
+
},
|
|
1980
|
+
filterBuilder: {
|
|
1981
|
+
where: "Où",
|
|
1982
|
+
and: "ET",
|
|
1983
|
+
or: "OU",
|
|
1984
|
+
clearAll: "Tout effacer",
|
|
1985
|
+
selectField: "Sélectionner un champ",
|
|
1986
|
+
operator: "Opérateur",
|
|
1987
|
+
selectValue: "Sélectionner une valeur",
|
|
1988
|
+
value: "Valeur",
|
|
1989
|
+
addFilter: "Ajouter un filtre",
|
|
1990
|
+
removeCondition: "Supprimer la condition",
|
|
1991
|
+
trueLabel: "Vrai",
|
|
1992
|
+
falseLabel: "Faux",
|
|
1993
|
+
noResults: "Aucun résultat",
|
|
1994
|
+
searchField: "Rechercher {{label}}…",
|
|
1995
|
+
enterId: "Saisir l'ID {{label}}",
|
|
1996
|
+
operators: {
|
|
1997
|
+
equals: "Égal à",
|
|
1998
|
+
notEquals: "Différent de",
|
|
1999
|
+
contains: "Contient",
|
|
2000
|
+
notContains: "Ne contient pas",
|
|
2001
|
+
isEmpty: "Est vide",
|
|
2002
|
+
isNotEmpty: "N'est pas vide",
|
|
2003
|
+
greaterThan: "Supérieur à",
|
|
2004
|
+
lessThan: "Inférieur à",
|
|
2005
|
+
greaterOrEqual: "Supérieur ou égal",
|
|
2006
|
+
lessOrEqual: "Inférieur ou égal",
|
|
2007
|
+
before: "Avant",
|
|
2008
|
+
after: "Après",
|
|
2009
|
+
between: "Entre",
|
|
2010
|
+
in: "Dans",
|
|
2011
|
+
notIn: "Pas dans",
|
|
2012
|
+
},
|
|
2013
|
+
},
|
|
2014
|
+
sortBuilder: {
|
|
2015
|
+
sortBy: "Trier par",
|
|
2016
|
+
thenBy: "Puis par",
|
|
2017
|
+
selectField: "Sélectionner un champ",
|
|
2018
|
+
ascending: "A → Z",
|
|
2019
|
+
descending: "Z → A",
|
|
2020
|
+
addSort: "Ajouter un tri",
|
|
2021
|
+
removeSort: "Supprimer le tri",
|
|
2022
|
+
},
|
|
1310
2023
|
};
|
|
1311
2024
|
export default fr;
|