@glissandoo/lib 1.102.9 → 1.102.10

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/lang/fr.json ADDED
@@ -0,0 +1,297 @@
1
+ {
2
+ "badgeAccPerformances.firstLevel.text": "Félicitations ! Vous avez réalisé votre premier concert depuis que vous êtes sur Glissandoo.",
3
+ "badgeAccPerformances.firstLevel.title": "Nouvelle médaille obtenue",
4
+ "badgeAccPerformances.upLevel.text": "Vous avez atteint un nouveau niveau en assistant à {string:extra.count} concerts",
5
+ "badgeAccPerformances.upLevel.title": "Nouveau niveau en tant que 'Musicien de concert'",
6
+ "badgeAccPractices.firstLevel.text": "Félicitations ! Vous avez réalisé votre première répétition.",
7
+ "badgeAccPractices.firstLevel.title": "Nouvelle médaille obtenue",
8
+ "badgeAccPractices.upLevel.text": "Vous avez atteint un nouveau niveau en assistant à {string:extra.count} répétitions",
9
+ "badgeAccPractices.upLevel.title": "Nouveau niveau en 'Entraînement musical'",
10
+ "badgeAnswerEvents.firstLevel.text": "Félicitations ! Vous avez répondu à votre premier événement.",
11
+ "badgeAnswerEvents.firstLevel.title": "Nouvelle médaille obtenue",
12
+ "badgeAnswerEvents.upLevel.text": "Vous avez atteint un nouveau niveau en répondant à {string:extra.count} événements",
13
+ "badgeAnswerEvents.upLevel.title": "Nouveau niveau en tant que 'Réponse de musicien'",
14
+ "badgeStrikePractices.firstLevel.text": "Félicitations ! Vous avez une série de {string:extra.count} répétitions",
15
+ "badgeStrikePractices.firstLevel.title": "Nouvelle médaille obtenue",
16
+ "badgeStrikePractices.upLevel.text": "Vous avez atteint un nouveau niveau en assistant régulièrement à {string:extra.count} répétitions",
17
+ "badgeStrikePractices.upLevel.title": "Nouveau niveau en 'Série de répétitions'",
18
+ "communication.create.text": "{string:group.0.displayName} a publié un nouveau post.",
19
+ "communication.create.title": "Nouveau post",
20
+ "communication.newComment.text": "{string:user.0.displayName} a commenté une publication",
21
+ "communication.newComment.title": "Nouveau commentaire",
22
+ "event": "Événement",
23
+ "group.delete.text": "Le groupe {string:group.0.displayName} a été supprimé",
24
+ "group.delete.title": "Groupe supprimé",
25
+ "group.onboarding.attendance.text": "Qui est disponible pour la répétition ? 😍 Découvrez-le grâce à des listes de présence simples 🙋‍♀️",
26
+ "group.onboarding.attendance.title": "📅 {string:group.0.displayName}",
27
+ "group.onboarding.dashboard.text": "Sur https://app.glissandoo.com, vous pouvez facilement organiser votre groupe : répétitions, concerts, répertoire et bien plus encore. 🎶",
28
+ "group.onboarding.dashboard.title": "Avez-vous visité notre tableau de bord web ? 💻",
29
+ "group.onboarding.engagement.text": "La clé d'une communication efficace est d'avoir un calendrier clair. Jusqu'à présent, vous faites un excellent travail ; continuez à ajouter vos répétitions et concerts ! 👏",
30
+ "group.onboarding.engagement.title": "Encouragez la participation des musiciens 📅",
31
+ "group.onboarding.invite.text": "Glissandoo est créé avec amour par des musiciens, pour des musiciens 🎶",
32
+ "group.onboarding.invite.title": "Commencez par inviter vos membres 👋",
33
+ "group.onboarding.premium.text": "Vous êtes sur le plan premium pendant 30 jours. Glissandoo est gratuit pour tous les musiciens, parents et personnel de votre ensemble 💚",
34
+ "group.onboarding.premium.title": "{string:group.0.displayName}",
35
+ "group.players.add.text": "Vous avez été ajouté à {string:group.0.displayName}",
36
+ "group.players.add.title": "Nouveau groupe",
37
+ "group.players.join.text": "{string:user.0.displayName} a rejoint le groupe {string:group.0.displayName} via le lien d'invitation",
38
+ "group.players.join.title": "Nouveau membre",
39
+ "group.players.leave.text": "{string:user.0.displayName} a quitté {string:group.0.displayName}",
40
+ "group.players.leave.title": "Un musicien a quitté un groupe",
41
+ "group.players.remove.text": "Vous ne faites plus partie de {string:group.0.displayName}",
42
+ "group.players.remove.title": "Groupe supprimé",
43
+ "groupPlayer.switchInstruments.byAdmin.text": "Un administrateur a modifié vos instruments",
44
+ "groupPlayer.switchInstruments.byAdmin.title": "Instruments modifiés",
45
+ "instruments.accordion": "Accordéon",
46
+ "instruments.agogo": "Agogô",
47
+ "instruments.altoClarinet": "Clarinette alto",
48
+ "instruments.altoSaxophone": "Saxophone alto",
49
+ "instruments.auxiliar": "Auxiliaire",
50
+ "instruments.bagpipes": "Cornemuse",
51
+ "instruments.bandurria": "Bandurria",
52
+ "instruments.banjo": "Banjo",
53
+ "instruments.baritone": "Baryton",
54
+ "instruments.baritoneSax": "Saxophone baryton",
55
+ "instruments.bass-choir": "Basse",
56
+ "instruments.bass-drum": "Grosse caisse",
57
+ "instruments.bass": "Basse électrique",
58
+ "instruments.bassClarinet": "Clarinette basse",
59
+ "instruments.bassoon": "Basson",
60
+ "instruments.cajon": "Cajón",
61
+ "instruments.castanets": "Castagnettes",
62
+ "instruments.cello": "Violoncelle",
63
+ "instruments.chocalho": "Chocalho",
64
+ "instruments.choir": "Chœur",
65
+ "instruments.clarinet": "Clarinette",
66
+ "instruments.contraAlto": "Contre-alto",
67
+ "instruments.contraBass": "Contrebasson",
68
+ "instruments.contrabassClarinet": "Clarinette contrebasse",
69
+ "instruments.cornet": "Cornet",
70
+ "instruments.counterTenor": "Contre-ténor",
71
+ "instruments.cymbals": "Cymbales",
72
+ "instruments.dj": "DJ",
73
+ "instruments.doubleBass": "Contrebasse",
74
+ "instruments.drumSet": "Batterie",
75
+ "instruments.dulzaina-fa": "Dolçaina en fa",
76
+ "instruments.dulzaina": "Dolçaina",
77
+ "instruments.electricGuitar": "Guitare électrique",
78
+ "instruments.englishHorn": "Cor anglais",
79
+ "instruments.euphonium": "Euphonium",
80
+ "instruments.flabiol": "Flabiol",
81
+ "instruments.flagBearer": "Porte-drapeau",
82
+ "instruments.flugelhorn": "Bugle",
83
+ "instruments.flute": "Flûte",
84
+ "instruments.frenchHorn": "Cor français",
85
+ "instruments.guitar": "Guitare",
86
+ "instruments.harmonica": "Harmonica",
87
+ "instruments.harp": "Harpe",
88
+ "instruments.harpsichord": "Clavecin",
89
+ "instruments.highTrombone": "Trombone alto",
90
+ "instruments.keyboard": "Claviers",
91
+ "instruments.littleClarinet": "Petite clarinette",
92
+ "instruments.low-flute": "Flûte basse",
93
+ "instruments.lowSaxophone": "Saxophone basse",
94
+ "instruments.lowTrombone": "Trombone basse",
95
+ "instruments.lowTrumpet": "Trompette basse",
96
+ "instruments.lute": "Luth",
97
+ "instruments.mallets": "Lames",
98
+ "instruments.mandoline": "Mandoline",
99
+ "instruments.maracas": "Maracas",
100
+ "instruments.marchingToms": "Toms de marche",
101
+ "instruments.melodica": "Mélodica",
102
+ "instruments.mezzosoprano": "Mezzo-soprano",
103
+ "instruments.musicConductor": "Direction musicale",
104
+ "instruments.oboe": "Hautbois",
105
+ "instruments.peak-flute": "Flûte à bec",
106
+ "instruments.percussion": "Percussions",
107
+ "instruments.piano": "Piano",
108
+ "instruments.piccolo": "Piccolo",
109
+ "instruments.piccoloTrumpet": "Trompette piccolo",
110
+ "instruments.repique": "Repique",
111
+ "instruments.silbote": "Silbote",
112
+ "instruments.singer": "Chanteur",
113
+ "instruments.snareDrum": "Caisse claire",
114
+ "instruments.soprano": "Soprano",
115
+ "instruments.sopranoSaxophone": "Saxophone soprano",
116
+ "instruments.surdo": "Surdo",
117
+ "instruments.tabal": "Tambour",
118
+ "instruments.tambourine": "Tambourin",
119
+ "instruments.tambourineBrazilian": "Tamborim",
120
+ "instruments.tarota": "Tarota",
121
+ "instruments.tenor": "Ténor",
122
+ "instruments.tenorSax": "Saxophone ténor",
123
+ "instruments.timbalBrazilian": "Timbal brésilien",
124
+ "instruments.timpani": "Timbales",
125
+ "instruments.trombone": "Trombone",
126
+ "instruments.trumpet": "Trompette",
127
+ "instruments.tuba-wagnerian": "Tuba wagnérienne",
128
+ "instruments.tuba": "Tuba",
129
+ "instruments.txistu": "Txistu",
130
+ "instruments.ukelele": "Ukulélé",
131
+ "instruments.unknown": "Instrument inconnu",
132
+ "instruments.viola": "Alto",
133
+ "instruments.violin": "Violon",
134
+ "musicStyles.banda-cornetas-y-tambores": "Bande de cornets et tambours",
135
+ "musicStyles.banda-de-musica": "Bande de musique",
136
+ "musicStyles.batucada": "Batucada",
137
+ "musicStyles.big-band": "Big band",
138
+ "musicStyles.charanga": "Charanga",
139
+ "musicStyles.colla": "Colla",
140
+ "musicStyles.coro": "Chœur",
141
+ "musicStyles.jazz-band": "Jazz band",
142
+ "musicStyles.marching-band": "Fanfare",
143
+ "musicStyles.orquesta-sinfonica": "Orchestre symphonique",
144
+ "musicStyles.txistularis": "Bande de txistularis",
145
+ "offer.applicant.add.text": "{string:user.0.displayName} a postulé pour le poste {string:extra.vacancyName} dans {string:group.0.displayName}",
146
+ "offer.applicant.add.title": "Nouvelle candidature",
147
+ "offer.select.applicant.text": "Félicitations ! Votre candidature pour le poste {string:extra.vacancyName} dans {string:group.0.displayName} a été acceptée. Rejoignez votre nouveau groupe et commencez à profiter de la musique avec vos nouveaux collègues",
148
+ "offer.select.applicant.title": "🎉 Candidature acceptée",
149
+ "performance.assistance.confirm.byAdmin.text": "Un administrateur a confirmé votre présence pour {string:event.0.displayName}",
150
+ "performance.assistance.confirm.byAdmin.title": "Présence confirmée par un administrateur",
151
+ "performance.assistance.confirm.text": "{string:user.0.displayName} a confirmé sa présence à {string:event.0.displayName}",
152
+ "performance.assistance.confirm.title": "Présence confirmée",
153
+ "performance.assistance.decline.byAdmin.text": "Un administrateur a refusé votre présence pour {string:event.0.displayName}",
154
+ "performance.assistance.decline.byAdmin.title": "Présence refusée par un administrateur",
155
+ "performance.assistance.decline.text": "{string:user.0.displayName} a refusé sa présence à {string:event.0.displayName}",
156
+ "performance.assistance.decline.title": "Présence refusée",
157
+ "performance.cancel.text": "{string:event.0.displayName} de {string:group.0.displayName} a été annulé",
158
+ "performance.cancel.title": "Spectacle annulé",
159
+ "performance.create.text": "{string:event.0.displayName} de {string:group.0.displayName} a été créé",
160
+ "performance.create.title": "Nouveau spectacle",
161
+ "performance.edit.attendance.text": "Le nombre de participants pour {string:event.0.displayName} a été mis à jour",
162
+ "performance.edit.attendance.title": "Spectacle - modification des participants",
163
+ "performance.edit.comments.text": "Les commentaires pour {string:event.0.displayName} ont été mis à jour",
164
+ "performance.edit.comments.title": "Spectacle - commentaires mis à jour",
165
+ "performance.edit.datetime.text": "L'horaire de {string:event.0.displayName} a été mis à jour",
166
+ "performance.edit.datetime.title": "Spectacle - horaire modifié",
167
+ "performance.edit.locality.text": "L'adresse de {string:event.0.displayName} a été mise à jour",
168
+ "performance.edit.locality.title": "Spectacle - adresse modifiée",
169
+ "performance.edit.repertory.text": "Le répertoire de {string:event.0.displayName} a été mis à jour",
170
+ "performance.edit.repertory.title": "Spectacle - répertoire mis à jour",
171
+ "performance.edit.responseDeadline.text": "La date limite de réponse pour {string:event.0.displayName} a été mise à jour",
172
+ "performance.edit.responseDeadline.title": "Spectacle - date limite de réponse modifiée",
173
+ "performance.edit.stage.text": "Le plan de scène de {string:event.0.displayName} a été mis à jour",
174
+ "performance.edit.stage.title": "Spectacle - plan de scène modifié",
175
+ "performance.edit.title.text": "Le titre de {string:event.0.displayName} a été mis à jour",
176
+ "performance.edit.title.title": "Spectacle - titre modifié",
177
+ "performance.interest.confirm.byAdmin.text": "Un administrateur vous a inscrit à {string:event.0.displayName}",
178
+ "performance.interest.confirm.byAdmin.title": "Inscription au concert par administrateur",
179
+ "performance.interest.confirm.text": "{string:user.0.displayName} s'est inscrit à {string:event.0.displayName}",
180
+ "performance.interest.confirm.title": "Nouvelle inscription pour un concert",
181
+ "performance.interest.lose.byAdmin.text": "Un administrateur vous a désinscrit de {string:event.0.displayName}",
182
+ "performance.interest.lose.byAdmin.title": "Désinscription du concert par administrateur",
183
+ "performance.interest.lose.text": "{string:user.0.displayName} n'est plus inscrit à {string:event.0.displayName}",
184
+ "performance.interest.lose.title": "Inscription annulée pour le concert",
185
+ "performance.players.add.text": "Vous avez été ajouté à {string:event.0.displayName}",
186
+ "performance.players.add.title": "Nouveau spectacle",
187
+ "performance.players.remove.text": "Vous avez été retiré de {string:event.0.displayName}",
188
+ "performance.players.remove.title": "Spectacle annulé",
189
+ "performance.reminder.text": "Veuillez confirmer votre présence à {string:event.0.displayName}",
190
+ "performance.reminder.title": "Confirmez votre présence",
191
+ "performance.reminderDatetime.confirmed.text": "{string:event.0.displayName} de {string:group.0.displayName} demain à {date:event.0.[datetime,timezone]:time}",
192
+ "performance.reminderDatetime.confirmed.title": "Rappel du spectacle",
193
+ "performance.reminderDeadlineEnded.selectionModeClosedOrNotActive.text": "La date limite de réponse pour {string:event.0.displayName} est dépassée",
194
+ "performance.reminderDeadlineEnded.selectionModeClosedOrNotActive.title": "Date limite de réponse dépassée pour le concert",
195
+ "performance.reminderDeadlineEnded.selectionModeOpen.text": "La date limite de réponse pour {string:event.0.displayName} est dépassée. N'oubliez pas de sélectionner les participants.",
196
+ "performance.reminderDeadlineEnded.selectionModeOpen.title": "Date limite de réponse dépassée pour le concert",
197
+ "performance.reminderDeadlineSoon.pending.text": "Le délai pour confirmer votre présence à {string:event.0.displayName} de {string:group.0.displayName} se termine dans {string:extra.hours} heures",
198
+ "performance.reminderDeadlineSoon.pending.title": "Rappel de la date limite pour le spectacle",
199
+ "performance.rollCallReminder.text": "C'est le moment idéal pour enregistrer les présences.",
200
+ "performance.rollCallReminder.title": "Faites l'appel pour le spectacle",
201
+ "performance.selection.deselect.text": "Vous n'avez pas été sélectionné pour participer à {string:event.0.displayName}",
202
+ "performance.selection.deselect.title": "Non sélectionné pour le concert",
203
+ "performance.selection.select.text": "Vous avez été sélectionné pour participer à {string:event.0.displayName}",
204
+ "performance.selection.select.title": "Sélectionné pour le concert",
205
+ "performance": "Spectacle",
206
+ "practice.assistance.confirm.byAdmin.text": "Un administrateur a confirmé votre présence pour la répétition du {date:event.0.[datetime,timezone]:date}",
207
+ "practice.assistance.confirm.byAdmin.title": "Présence confirmée par un administrateur",
208
+ "practice.assistance.confirm.text": "{string:user.0.displayName} a confirmé sa présence à la répétition du {date:event.0.[datetime,timezone]:date}",
209
+ "practice.assistance.confirm.title": "Présence confirmée",
210
+ "practice.assistance.decline.byAdmin.text": "Un administrateur a refusé votre présence pour la répétition du {date:event.0.[datetime,timezone]:date}",
211
+ "practice.assistance.decline.byAdmin.title": "Présence refusée par un administrateur",
212
+ "practice.assistance.decline.text": "{string:user.0.displayName} a refusé sa présence à la répétition du {date:event.0.[datetime,timezone]:date}",
213
+ "practice.assistance.decline.title": "Présence refusée",
214
+ "practice.cancel.text": "La répétition du {date:event.0.[datetime,timezone]:date} de {string:group.0.displayName} a été annulée",
215
+ "practice.cancel.title": "Répétition annulée",
216
+ "practice.create.text": "Une répétition de {string:group.0.displayName} a été programmée pour le {date:event.0.[datetime,timezone]:datetime}",
217
+ "practice.create.title": "Nouvelle répétition",
218
+ "practice.edit.attendance.text": "La limite de participants pour la répétition du {date:event.0.[datetime,timezone]:date} a été mise à jour",
219
+ "practice.edit.attendance.title": "Répétition - modification de la limite de participants",
220
+ "practice.edit.comments.text": "Les commentaires de la répétition du {date:event.0.[datetime,timezone]:date} ont été mis à jour",
221
+ "practice.edit.comments.title": "Répétition - commentaires mis à jour",
222
+ "practice.edit.datetime.text": "L'horaire de la répétition du {date:event.0.[datetime,timezone]:date} a été mis à jour",
223
+ "practice.edit.datetime.title": "Répétition - horaire modifié",
224
+ "practice.edit.locality.text": "L'adresse de la répétition du {date:event.0.[datetime,timezone]:date} a été mise à jour",
225
+ "practice.edit.locality.title": "Répétition - adresse modifiée",
226
+ "practice.edit.repertory.text": "Le répertoire de la répétition du {date:event.0.[datetime,timezone]:date} a été mis à jour",
227
+ "practice.edit.repertory.title": "Répétition - répertoire mis à jour",
228
+ "practice.edit.responseDeadline.text": "La date limite de réponse pour la répétition du {date:event.0.[datetime,timezone]:date} a été mise à jour",
229
+ "practice.edit.responseDeadline.title": "Répétition - date limite de réponse modifiée",
230
+ "practice.edit.stage.text": "Le plan de scène de la répétition du {date:event.0.[datetime,timezone]:date} a été mis à jour",
231
+ "practice.edit.stage.title": "Répétition - plan de scène modifié",
232
+ "practice.edit.title.text": "Le titre de la répétition du {date:event.0.[datetime,timezone]:date} a été mis à jour",
233
+ "practice.edit.title.title": "Répétition - titre modifié",
234
+ "practice.interest.confirm.byAdmin.text": "Un administrateur vous a inscrit à la répétition de {string:group.0.displayName} le {date:event.0.[datetime,timezone]:date}",
235
+ "practice.interest.confirm.byAdmin.title": "Inscription à la répétition par administrateur",
236
+ "practice.interest.confirm.text": "{string:user.0.displayName} s'est inscrit à la répétition de {string:group.0.displayName} le {date:event.0.[datetime,timezone]:date}",
237
+ "practice.interest.confirm.title": "Inscription confirmée pour la répétition",
238
+ "practice.interest.lose.byAdmin.text": "Un administrateur vous a désinscrit de la répétition de {string:group.0.displayName} le {date:event.0.[datetime,timezone]:date}",
239
+ "practice.interest.lose.byAdmin.title": "Désinscription de la répétition par administrateur",
240
+ "practice.interest.lose.text": "{string:user.0.displayName} n'est plus inscrit à la répétition de {string:group.0.displayName} le {date:event.0.[datetime,timezone]:date}",
241
+ "practice.interest.lose.title": "Inscription annulée pour la répétition",
242
+ "practice.players.add.text": "Vous avez été ajouté à une répétition de {string:group.0.displayName} prévue pour le {date:event.0.[datetime,timezone]:datetime}",
243
+ "practice.players.add.title": "Nouvelle répétition",
244
+ "practice.players.remove.text": "Vous avez été retiré de la répétition de {string:group.0.displayName} du {date:event.0.[datetime,timezone]:date}",
245
+ "practice.players.remove.title": "Répétition annulée",
246
+ "practice.reminder.text": "Veuillez confirmer votre présence à la répétition du {date:event.0.[datetime,timezone]:datetime} de {string:group.0.displayName}",
247
+ "practice.reminder.title": "Confirmez votre présence",
248
+ "practice.reminderDatetime.confirmed.text": "Répétition de {string:group.0.displayName} demain à {date:event.0.[datetime,timezone]:time}",
249
+ "practice.reminderDatetime.confirmed.title": "Rappel de répétition",
250
+ "practice.reminderDeadlineEnded.selectionModeClosedOrNotActive.text": "La date limite de réponse pour la répétition de {string:group.0.displayName} le {date:event.0.[datetime,timezone]:date} est dépassée",
251
+ "practice.reminderDeadlineEnded.selectionModeClosedOrNotActive.title": "Date limite de réponse dépassée pour la répétition",
252
+ "practice.reminderDeadlineEnded.selectionModeOpen.text": "La date limite de réponse pour la répétition de {string:group.0.displayName} le {date:event.0.[datetime,timezone]:date} est dépassée. N'oubliez pas de sélectionner les participants.",
253
+ "practice.reminderDeadlineEnded.selectionModeOpen.title": "Date limite de réponse dépassée pour la répétition",
254
+ "practice.reminderDeadlineSoon.pending.text": "Le délai pour confirmer votre présence à la répétition de {string:group.0.displayName} se termine dans {string:extra.hours} heures",
255
+ "practice.reminderDeadlineSoon.pending.title": "Rappel de la date limite pour la répétition",
256
+ "practice.rollCallReminder.text": "C'est le meilleur moment pour marquer les présences.",
257
+ "practice.rollCallReminder.title": "Faites l'appel pour la répétition",
258
+ "practice.selection.deselect.text": "Vous n'avez pas été sélectionné pour participer à la répétition de {string:group.0.displayName} le {date:event.0.[datetime,timezone]:date}",
259
+ "practice.selection.deselect.title": "Non sélectionné pour la répétition",
260
+ "practice.selection.select.text": "Vous avez été sélectionné pour participer à la répétition de {string:group.0.displayName} le {date:event.0.[datetime,timezone]:date}",
261
+ "practice.selection.select.title": "Sélectionné pour la répétition",
262
+ "practice": "Répétition",
263
+ "practices.cancel.text": "{string:extra.num} répétitions de {string:group.0.displayName} ont été annulées entre le {date:event.0.[datetime,timezone]:shortDate} et le {date:event.1.[datetime,timezone]:shortDate}",
264
+ "practices.cancel.title": "Répétitions annulées",
265
+ "practices.create.text": "{string:extra.num} répétitions de {string:group.0.displayName} ont été programmées entre le {date:event.0.[datetime,timezone]:shortDate} et le {date:event.1.[datetime,timezone]:shortDate}",
266
+ "practices.create.title": "Nouvelles répétitions",
267
+ "practices.edit.attendance.text": "La limite de participation pour une série de répétitions a été mise à jour",
268
+ "practices.edit.attendance.title": "Répétitions - limite de participation modifiée",
269
+ "practices.edit.comments.text": "Les commentaires pour une série de répétitions ont été mis à jour",
270
+ "practices.edit.comments.title": "Répétitions - commentaires mis à jour",
271
+ "practices.edit.datetime.text": "Les horaires pour une série de répétitions ont été mis à jour",
272
+ "practices.edit.datetime.title": "Répétitions - horaires mis à jour",
273
+ "practices.edit.locality.text": "Les adresses pour une série de répétitions ont été mises à jour",
274
+ "practices.edit.locality.title": "Répétitions - changement d'adresse",
275
+ "practices.edit.repertory.text": "Le répertoire pour une série de répétitions a été mis à jour",
276
+ "practices.edit.repertory.title": "Répétitions - changement de répertoire",
277
+ "practices.edit.responseDeadline.text": "La date limite de réponse pour plusieurs répétitions a été mise à jour",
278
+ "practices.edit.responseDeadline.title": "Répétitions - date limite de réponse modifiée",
279
+ "practices.edit.stage.text": "Le plan de scène pour plusieurs répétitions a été mis à jour",
280
+ "practices.edit.stage.title": "Répétitions - plan de scène modifié",
281
+ "practices.edit.title.text": "Les titres pour une série de répétitions ont été mis à jour",
282
+ "practices.edit.title.title": "Répétitions - titre modifié",
283
+ "practices.players.add.text": "Vous avez été ajouté à une série de répétitions entre le {date:event.0.[datetime,timezone]:shortDate} et le {date:event.1.[datetime,timezone]:shortDate}",
284
+ "practices.players.add.title": "Nouvelles répétitions",
285
+ "practices.players.remove.text": "Vous avez été retiré d'une série de répétitions entre le {date:event.0.[datetime,timezone]:shortDate} et le {date:event.1.[datetime,timezone]:shortDate}",
286
+ "practices.players.remove.title": "Répétitions supprimées",
287
+ "repertoireTags.1": "1er",
288
+ "repertoireTags.2": "2e",
289
+ "repertoireTags.3": "3e",
290
+ "repertoireTags.4": "4e",
291
+ "repertoireTags.principal": "Principal",
292
+ "sections.all": "Tous",
293
+ "theme.claim.new.text": "{string:user.0.displayName} a réclamé la partition de {instrument:extra.[instrumentId,customInstrumentName]} pour l'œuvre \"{string:extra.title}\"",
294
+ "theme.claim.new.title": "Demande de partition",
295
+ "theme.claim.update.text": "La partition de {instrument:extra.[instrumentId,customInstrumentName]} pour l'œuvre \"{string:extra.title}\" a été ajoutée",
296
+ "theme.claim.update.title": "Nouvelle partition ajoutée"
297
+ }
package/lang/gl.json CHANGED
@@ -128,9 +128,9 @@
128
128
  "instruments.tuba": "Tuba",
129
129
  "instruments.txistu": "Txistu",
130
130
  "instruments.ukelele": "Ukelele",
131
+ "instruments.unknown": "Instrumento descoñecido",
131
132
  "instruments.viola": "Viola",
132
133
  "instruments.violin": "Violín",
133
- "instruments.unknown": "Instrumento descoñecido",
134
134
  "musicStyles.banda-cornetas-y-tambores": "Banda de cornetas e tambores",
135
135
  "musicStyles.banda-de-musica": "Banda de música",
136
136
  "musicStyles.batucada": "Batucada",
@@ -142,6 +142,10 @@
142
142
  "musicStyles.marching-band": "Marching band",
143
143
  "musicStyles.orquesta-sinfonica": "Orquestra sinfónica",
144
144
  "musicStyles.txistularis": "Banda de txistularis",
145
+ "offer.applicant.add.text": "{string:user.0.displayName} solicitou a vacante {string:extra.vacancyName} en {string:group.0.displayName}",
146
+ "offer.applicant.add.title": "Nova solicitude de vacante",
147
+ "offer.select.applicant.text": "Parabéns! A túa solicitude para a vacante {string:extra.vacancyName} en {string:group.0.displayName} foi aceptada. Únete ao teu novo grupo e comeza a gozar da música cos teus novos compañeiros",
148
+ "offer.select.applicant.title": "🎉 Solicitude de vacante aceptada",
145
149
  "performance.assistance.confirm.byAdmin.text": "Un administrador confirmou a súa asistencia a {string:event.0.displayName}",
146
150
  "performance.assistance.confirm.byAdmin.title": "Asistencia confirmada por un administrador",
147
151
  "performance.assistance.confirm.text": "{string:user.0.displayName} confirmou a asistencia a {string:event.0.displayName}",
@@ -170,14 +174,14 @@
170
174
  "performance.edit.stage.title": "Concerto - o plan de colocación cambiou",
171
175
  "performance.edit.title.text": "Actualizouse o título de {string:event.0.displayName}",
172
176
  "performance.edit.title.title": "Acto - cambio de título",
173
- "performance.interest.confirm.text": "{string:user.0.displayName} inscribiuse en {string:event.0.displayName}",
174
- "performance.interest.confirm.title": "Nova inscrición para un concerto",
175
- "performance.interest.lose.text": "{string:user.0.displayName} xa non está anotado en {string:event.0.displayName}",
176
- "performance.interest.lose.title": "Inscrición cancelada para o concerto",
177
177
  "performance.interest.confirm.byAdmin.text": "Un administrador anotouche en {string:event.0.displayName}",
178
178
  "performance.interest.confirm.byAdmin.title": "Anotado no concerto por administrador",
179
+ "performance.interest.confirm.text": "{string:user.0.displayName} inscribiuse en {string:event.0.displayName}",
180
+ "performance.interest.confirm.title": "Nova inscrición para un concerto",
179
181
  "performance.interest.lose.byAdmin.text": "Un administrador desanotouche de {string:event.0.displayName}",
180
182
  "performance.interest.lose.byAdmin.title": "Desanotado do concerto por administrador",
183
+ "performance.interest.lose.text": "{string:user.0.displayName} xa non está anotado en {string:event.0.displayName}",
184
+ "performance.interest.lose.title": "Inscrición cancelada para o concerto",
181
185
  "performance.players.add.text": "Engadiuse a {string:event.0.displayName}",
182
186
  "performance.players.add.title": "Novo acto",
183
187
  "performance.players.remove.text": "Foi eliminado de {string:event.0.displayName}",
@@ -227,14 +231,14 @@
227
231
  "practice.edit.stage.title": "Ensaio - cambio de plan de colocación",
228
232
  "practice.edit.title.text": "Actualizouse o título do ensaio o {date:event.0.[datetime,timezone]:date}",
229
233
  "practice.edit.title.title": "Ensaio - cambio de título",
230
- "practice.interest.confirm.text": "{string:user.0.displayName} inscribiuse no ensaio de {string:group.0.displayName} o {date:event.0.[datetime,timezone]:date}",
231
- "practice.interest.confirm.title": "Inscrición confirmada para o ensaio",
232
- "practice.interest.lose.text": "{string:user.0.displayName} xa non está anotado para o ensaio de {string:group.0.displayName} o {date:event.0.[datetime,timezone]:date}",
233
- "practice.interest.lose.title": "Inscrición perdida para o ensaio",
234
234
  "practice.interest.confirm.byAdmin.text": "Un administrador anotoute no ensaio de {string:group.0.displayName} o {date:event.0.[datetime,timezone]:date}",
235
235
  "practice.interest.confirm.byAdmin.title": "Anotado no ensaio por administrador",
236
+ "practice.interest.confirm.text": "{string:user.0.displayName} inscribiuse no ensaio de {string:group.0.displayName} o {date:event.0.[datetime,timezone]:date}",
237
+ "practice.interest.confirm.title": "Inscrición confirmada para o ensaio",
236
238
  "practice.interest.lose.byAdmin.text": "Un administrador desanotoute do ensaio de {string:group.0.displayName} o {date:event.0.[datetime,timezone]:date}",
237
239
  "practice.interest.lose.byAdmin.title": "Desanotado do ensaio por administrador",
240
+ "practice.interest.lose.text": "{string:user.0.displayName} xa non está anotado para o ensaio de {string:group.0.displayName} o {date:event.0.[datetime,timezone]:date}",
241
+ "practice.interest.lose.title": "Inscrición perdida para o ensaio",
238
242
  "practice.players.add.text": "Engadiute o novo ensaio de {string:group.0.displayName} o {date:event.0.[datetime,timezone]:datetime}",
239
243
  "practice.players.add.title": "Nova proba",
240
244
  "practice.players.remove.text": "Eliminárono da proba de {string:group.0.displayName} de {date:event.0.[datetime,timezone]:date}",
@@ -289,9 +293,5 @@
289
293
  "theme.claim.new.text": "{string:user.0.displayName} ha reclamado la partitura de {instrument:extra.[instrumentId,customInstrumentName]} de la obra \"{string:extra.title}\"",
290
294
  "theme.claim.new.title": "Han pedido una partitura",
291
295
  "theme.claim.update.text": "Se ha añadido la partitura de {instrument:extra.[instrumentId,customInstrumentName]} de la obra \"{string:extra.title}\"",
292
- "theme.claim.update.title": "Nueva partitura de {instrument:extra.[instrumentId,customInstrumentName]}",
293
- "offer.applicant.add.text": "{string:user.0.displayName} solicitou a vacante {string:extra.vacancyName} en {string:group.0.displayName}",
294
- "offer.applicant.add.title": "Nova solicitude de vacante",
295
- "offer.select.applicant.text": "Parabéns! A túa solicitude para a vacante {string:extra.vacancyName} en {string:group.0.displayName} foi aceptada. Únete ao teu novo grupo e comeza a gozar da música cos teus novos compañeiros",
296
- "offer.select.applicant.title": "🎉 Solicitude de vacante aceptada"
296
+ "theme.claim.update.title": "Nueva partitura de {instrument:extra.[instrumentId,customInstrumentName]}"
297
297
  }
package/lang/index.d.ts CHANGED
@@ -6,9 +6,13 @@ export declare enum LanguagesTypes {
6
6
  GL = "gl",
7
7
  DE = "de",
8
8
  PT = "pt",
9
- EU = "eu"
9
+ EU = "eu",
10
+ IT = "it",
11
+ FR = "fr",
12
+ NL = "nl"
10
13
  }
11
14
  export type MainLanguagesTypes = LanguagesTypes.ES | LanguagesTypes.EN;
15
+ export type DateFormatTypes = keyof LanguageProvider[LanguagesTypes]['date']['format'];
12
16
  export type LanguageProvider = Record<LanguagesTypes, {
13
17
  messages: Record<string, string>;
14
18
  date: {
@@ -21,11 +25,9 @@ export type LanguageProvider = Record<LanguagesTypes, {
21
25
  };
22
26
  };
23
27
  }>;
24
- export type DateFormatTypes = keyof LanguageProvider[LanguagesTypes]['date']['format'];
25
28
  export declare const mainLangs: Record<LanguagesTypes, MainLanguagesTypes>;
26
29
  export declare const langByCoLang: Record<LanguagesTypes, LanguagesTypes>;
27
30
  declare const languageProvider: LanguageProvider;
28
- export declare const defaultLocale = LanguagesTypes.ES;
29
31
  export declare const getDateLang: (lang: LanguagesTypes) => {
30
32
  locale: Locale;
31
33
  format: {
@@ -36,5 +38,6 @@ export declare const getDateLang: (lang: LanguagesTypes) => {
36
38
  };
37
39
  };
38
40
  export declare const getFormattedDate: (date: Date, formatType: DateFormatTypes, lang: LanguagesTypes) => string;
41
+ export declare const defaultLocale = LanguagesTypes.EN;
39
42
  export declare const getTranslation: (key: string, lang: LanguagesTypes) => string | null;
40
43
  export default languageProvider;
package/lang/index.js CHANGED
@@ -3,14 +3,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getTranslation = exports.getFormattedDate = exports.getDateLang = exports.defaultLocale = exports.langByCoLang = exports.mainLangs = exports.LanguagesTypes = void 0;
6
+ exports.getTranslation = exports.defaultLocale = exports.getFormattedDate = exports.getDateLang = exports.langByCoLang = exports.mainLangs = exports.LanguagesTypes = void 0;
7
7
  const date_fns_1 = require("date-fns");
8
8
  const ca_1 = require("date-fns/locale/ca");
9
9
  const de_1 = require("date-fns/locale/de");
10
10
  const en_US_1 = require("date-fns/locale/en-US");
11
11
  const es_1 = require("date-fns/locale/es");
12
12
  const eu_1 = require("date-fns/locale/eu");
13
+ const fr_1 = require("date-fns/locale/fr");
13
14
  const gl_1 = require("date-fns/locale/gl");
15
+ const it_1 = require("date-fns/locale/it");
16
+ const nl_1 = require("date-fns/locale/nl");
14
17
  const pt_1 = require("date-fns/locale/pt");
15
18
  const get_1 = __importDefault(require("lodash/get"));
16
19
  const ca_json_1 = __importDefault(require("./ca.json"));
@@ -18,7 +21,10 @@ const de_json_1 = __importDefault(require("./de.json"));
18
21
  const en_json_1 = __importDefault(require("./en.json"));
19
22
  const es_json_1 = __importDefault(require("./es.json"));
20
23
  const eu_json_1 = __importDefault(require("./eu.json"));
24
+ const fr_json_1 = __importDefault(require("./fr.json"));
21
25
  const gl_json_1 = __importDefault(require("./gl.json"));
26
+ const it_json_1 = __importDefault(require("./it.json"));
27
+ const nl_json_1 = __importDefault(require("./nl.json"));
22
28
  const pt_json_1 = __importDefault(require("./pt.json"));
23
29
  var LanguagesTypes;
24
30
  (function (LanguagesTypes) {
@@ -29,6 +35,9 @@ var LanguagesTypes;
29
35
  LanguagesTypes["DE"] = "de";
30
36
  LanguagesTypes["PT"] = "pt";
31
37
  LanguagesTypes["EU"] = "eu";
38
+ LanguagesTypes["IT"] = "it";
39
+ LanguagesTypes["FR"] = "fr";
40
+ LanguagesTypes["NL"] = "nl";
32
41
  })(LanguagesTypes = exports.LanguagesTypes || (exports.LanguagesTypes = {}));
33
42
  exports.mainLangs = {
34
43
  [LanguagesTypes.ES]: LanguagesTypes.ES,
@@ -38,6 +47,9 @@ exports.mainLangs = {
38
47
  [LanguagesTypes.EN]: LanguagesTypes.EN,
39
48
  [LanguagesTypes.DE]: LanguagesTypes.EN,
40
49
  [LanguagesTypes.PT]: LanguagesTypes.EN,
50
+ [LanguagesTypes.IT]: LanguagesTypes.EN,
51
+ [LanguagesTypes.FR]: LanguagesTypes.EN,
52
+ [LanguagesTypes.NL]: LanguagesTypes.EN,
41
53
  };
42
54
  exports.langByCoLang = {
43
55
  [LanguagesTypes.ES]: LanguagesTypes.ES,
@@ -47,9 +59,12 @@ exports.langByCoLang = {
47
59
  [LanguagesTypes.EN]: LanguagesTypes.EN,
48
60
  [LanguagesTypes.DE]: LanguagesTypes.DE,
49
61
  [LanguagesTypes.PT]: LanguagesTypes.PT,
62
+ [LanguagesTypes.IT]: LanguagesTypes.IT,
63
+ [LanguagesTypes.FR]: LanguagesTypes.FR,
64
+ [LanguagesTypes.NL]: LanguagesTypes.NL,
50
65
  };
51
66
  const languageProvider = {
52
- es: {
67
+ [LanguagesTypes.ES]: {
53
68
  messages: es_json_1.default,
54
69
  date: {
55
70
  locale: es_1.es,
@@ -61,7 +76,7 @@ const languageProvider = {
61
76
  },
62
77
  },
63
78
  },
64
- en: {
79
+ [LanguagesTypes.EN]: {
65
80
  messages: en_json_1.default,
66
81
  date: {
67
82
  locale: en_US_1.enUS,
@@ -73,7 +88,7 @@ const languageProvider = {
73
88
  },
74
89
  },
75
90
  },
76
- ca: {
91
+ [LanguagesTypes.CA]: {
77
92
  messages: ca_json_1.default,
78
93
  date: {
79
94
  locale: ca_1.ca,
@@ -85,7 +100,7 @@ const languageProvider = {
85
100
  },
86
101
  },
87
102
  },
88
- gl: {
103
+ [LanguagesTypes.GL]: {
89
104
  messages: gl_json_1.default,
90
105
  date: {
91
106
  locale: gl_1.gl,
@@ -97,7 +112,7 @@ const languageProvider = {
97
112
  },
98
113
  },
99
114
  },
100
- de: {
115
+ [LanguagesTypes.DE]: {
101
116
  messages: de_json_1.default,
102
117
  date: {
103
118
  locale: de_1.de,
@@ -109,7 +124,7 @@ const languageProvider = {
109
124
  },
110
125
  },
111
126
  },
112
- pt: {
127
+ [LanguagesTypes.PT]: {
113
128
  messages: pt_json_1.default,
114
129
  date: {
115
130
  locale: pt_1.pt,
@@ -121,7 +136,7 @@ const languageProvider = {
121
136
  },
122
137
  },
123
138
  },
124
- eu: {
139
+ [LanguagesTypes.EU]: {
125
140
  messages: eu_json_1.default,
126
141
  date: {
127
142
  locale: eu_1.eu,
@@ -133,8 +148,43 @@ const languageProvider = {
133
148
  },
134
149
  },
135
150
  },
151
+ [LanguagesTypes.IT]: {
152
+ messages: it_json_1.default,
153
+ date: {
154
+ locale: it_1.it,
155
+ format: {
156
+ date: 'iiii d MMMM',
157
+ datetime: "iiii d MMMM 'alle' HH:mm",
158
+ shortDate: 'dd/MM/yy',
159
+ time: 'HH:mm',
160
+ },
161
+ },
162
+ },
163
+ [LanguagesTypes.FR]: {
164
+ messages: fr_json_1.default,
165
+ date: {
166
+ locale: fr_1.fr,
167
+ format: {
168
+ date: 'iiii d MMMM',
169
+ datetime: "iiii d MMMM 'à' HH:mm",
170
+ shortDate: 'dd/MM/yy',
171
+ time: "HH:mm'h'",
172
+ },
173
+ },
174
+ },
175
+ [LanguagesTypes.NL]: {
176
+ messages: nl_json_1.default,
177
+ date: {
178
+ locale: nl_1.nl,
179
+ format: {
180
+ date: 'iiii d MMMM',
181
+ datetime: "iiii d MMMM 'om' HH:mm",
182
+ shortDate: 'dd-MM-yy',
183
+ time: 'HH:mm',
184
+ },
185
+ },
186
+ },
136
187
  };
137
- exports.defaultLocale = LanguagesTypes.ES;
138
188
  const getDateLang = (lang) => {
139
189
  return languageProvider[lang].date;
140
190
  };
@@ -144,6 +194,7 @@ const getFormattedDate = (date, formatType, lang) => {
144
194
  return (0, date_fns_1.format)(date, dateLang.format[formatType], { locale: dateLang.locale });
145
195
  };
146
196
  exports.getFormattedDate = getFormattedDate;
197
+ exports.defaultLocale = LanguagesTypes.EN;
147
198
  const getTranslation = (key, lang) => {
148
199
  return (0, get_1.default)(languageProvider, [lang, 'messages', key]) || null;
149
200
  };