Update translations in contact menu

This commit is contained in:
QuentinArguillere 2024-11-26 11:58:42 +01:00
parent 7c42e7ed5c
commit 3171f0d97d
9 changed files with 432 additions and 122 deletions

View file

@ -195,15 +195,9 @@
},
"Active" : {
},
"Add a picture" : {
},
"Add the contact" : {
},
"Add to favourites" : {
},
"Administrateur" : {
@ -959,9 +953,6 @@
},
"Close" : {
},
"Company" : {
},
"Conditions de service" : {
@ -1012,6 +1003,12 @@
"state" : "translated",
"value" : "Call"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Appel"
}
}
}
},
@ -1032,6 +1029,102 @@
}
}
},
"contact_details_add_to_favourites" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Add to favourites"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Ajouter aux favoris"
}
}
}
},
"contact_details_delete" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Delete"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Supprimer"
}
}
}
},
"contact_details_edit" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Edit"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Modifier"
}
}
}
},
"contact_details_numbers_and_addresses_title" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Phone numbers & SIP addresses"
}
},
"fr" : {
"stringUnit" : {
"state" : "needs_review",
"value" : "Numéros de téléphone et adresses SIP"
}
}
}
},
"contact_details_remove_from_favourites" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Remove from favourites"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Enlever des favoris"
}
}
}
},
"contact_details_share" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Share"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Partager"
}
}
}
},
"contact_dialog_pick_phone_number_or_sip_address_title" : {
"extractionState" : "manual",
"localizations" : {
@ -1049,6 +1142,86 @@
}
}
},
"contact_edit_title" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Edit contact"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Modifier contact"
}
}
}
},
"contact_editor_company" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Company"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Entreprise"
}
}
}
},
"contact_editor_first_name" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "First name"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Prénom"
}
}
}
},
"contact_editor_job_title" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Job title"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Poste"
}
}
}
},
"contact_editor_last_name" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Last name"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Nom de famille"
}
}
}
},
"contact_message_action" : {
"localizations" : {
"en" : {
@ -1065,11 +1238,56 @@
}
}
},
"contact_new_title" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "New contact"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Nouveau contact"
}
}
}
},
"contact_video_call_action" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Video call"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Appel vidéo"
}
}
}
},
"Contacts" : {
},
"contacts_list_all_contacts_title" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "All contacts"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Tous les contacts"
}
}
}
},
"contacts_list_empty" : {
"extractionState" : "manual",
@ -1088,6 +1306,71 @@
}
}
},
"contacts_list_favourites_title" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Favourites"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Favoris"
}
}
}
},
"contacts_list_filter_popup_see_all" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "See all"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Voir tous les contacts"
}
}
}
},
"contacts_list_filter_popup_see_linphone_only" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "See %@ contacts"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Voir les contacts %@"
}
}
}
},
"content_description_click_for_more_info" : {
"extractionState" : "stale",
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Click to have more information"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Cliquez pour plus dinformations"
}
}
}
},
"Continue" : {
"localizations" : {
"en" : {
@ -1987,12 +2270,6 @@
}
}
}
},
"Copy address" : {
},
"Copy number" : {
},
"Could not send ICS invitations to meeting to any participant" : {
@ -2002,18 +2279,12 @@
},
"Default mode" : {
},
"Delete" : {
},
"Delete %@?" : {
},
"Delete all history" : {
},
"Delete this contact" : {
},
"Deny all" : {
@ -2162,18 +2433,9 @@
},
"Earpiece" : {
},
"Edit" : {
},
"Edit contact" : {
},
"Edit Contact" : {
},
"Edit picture" : {
},
"En attente d'autres participants..." : {
@ -2195,15 +2457,6 @@
},
"Faire la validation à nouveau" : {
},
"Favourites" : {
},
"First Name" : {
},
"First name*" : {
},
"GC_MSG" : {
"extractionState" : "manual",
@ -2405,9 +2658,6 @@
}
}
}
},
"Information" : {
},
"Interoperable" : {
@ -2420,18 +2670,9 @@
},
"Invalide URI" : {
},
"Invitation" : {
},
"Job title" : {
},
"Joining..." : {
},
"Last name" : {
},
"list_filter_no_result_found" : {
"localizations" : {
@ -2460,6 +2701,54 @@
},
"Logs URL copied into clipboard" : {
},
"manage_account_add_picture" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Add a picture"
}
},
"fr" : {
"stringUnit" : {
"state" : "needs_review",
"value" : "Ajouter une image"
}
}
}
},
"manage_account_edit_picture" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Edit picture"
}
},
"fr" : {
"stringUnit" : {
"state" : "needs_review",
"value" : "Modifier limage"
}
}
}
},
"manage_account_remove_picture" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Remove picture"
}
},
"fr" : {
"stringUnit" : {
"state" : "needs_review",
"value" : "Enlever limage"
}
}
}
},
"Marquer comme non lu" : {
@ -2806,6 +3095,22 @@
}
}
},
"menu_copy_phone_number" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Copy phone number"
}
},
"fr" : {
"stringUnit" : {
"state" : "needs_review",
"value" : "Copier le numéro de téléphone"
}
}
}
},
"menu_copy_sip_address" : {
"localizations" : {
"en" : {
@ -2871,6 +3176,9 @@
}
}
}
},
"menu_invite" : {
},
"menu_reply_to_chat_message" : {
"extractionState" : "manual",
@ -2921,9 +3229,6 @@
}
}
}
},
"Message" : {
},
"Message copied into clipboard" : {
@ -3070,9 +3375,6 @@
},
"New call" : {
},
"New contact" : {
},
"new_conversation_create_group" : {
"extractionState" : "manual",
@ -3128,9 +3430,6 @@
},
"Opération en cours..." : {
},
"Other actions" : {
},
"Oui" : {
@ -3184,6 +3483,22 @@
},
"Phone number" : {
},
"phone_number" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Phone number"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Numéro de téléphone"
}
}
}
},
"QR code validated!" : {
@ -3223,12 +3538,6 @@
}
}
}
},
"Remove from favourites" : {
},
"Remove picture" : {
},
"Resume" : {
@ -3241,15 +3550,9 @@
},
"Scan QR code" : {
},
"See all" : {
},
"See contact" : {
},
"See Linphone contact" : {
},
"Select %@ %@" : {
"localizations" : {
@ -3286,18 +3589,25 @@
}
}
}
},
"Share" : {
},
"SIP address" : {
},
"SIP address :" : {
},
"SIP address copied into clipboard" : {
},
"sip_address" : {
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "SIP Address"
}
},
"fr" : {
"stringUnit" : {
"state" : "needs_review",
"value" : "Adresse SIP"
}
}
}
},
"sip.linphone.org" : {

View file

@ -41,8 +41,8 @@ struct ContactInnerActionsFragment: View {
var body: some View {
HStack(alignment: .center) {
Text("Information")
.default_text_style_800(styleSize: 16)
Text("contact_details_numbers_and_addresses_title")
.default_text_style_800(styleSize: 15)
Spacer()
@ -69,7 +69,7 @@ struct ContactInnerActionsFragment: View {
HStack {
HStack {
VStack {
Text("SIP address :")
Text(String(localized: "sip_address") + ":")
.default_text_style_700(styleSize: 14)
.frame(maxWidth: .infinity, alignment: .leading)
Text(contactAvatarModel.addresses[index].dropFirst(4))
@ -204,7 +204,7 @@ struct ContactInnerActionsFragment: View {
// TODO Medias Fragment
HStack(alignment: .center) {
Text("Other actions")
Text("contact_details_actions_title")
.default_text_style_800(styleSize: 16)
Spacer()
@ -226,7 +226,7 @@ struct ContactInnerActionsFragment: View {
.frame(width: 25, height: 25)
.padding(.all, 10)
Text("Edit")
Text("contact_details_edit")
.default_text_style(styleSize: 14)
.frame(maxWidth: .infinity, alignment: .leading)
.lineLimit(1)
@ -250,7 +250,7 @@ struct ContactInnerActionsFragment: View {
.frame(width: 25, height: 25)
.padding(.all, 10)
Text("Edit")
Text("contact_details_edit")
.default_text_style(styleSize: 14)
.frame(maxWidth: .infinity, alignment: .leading)
.lineLimit(1)
@ -288,8 +288,8 @@ struct ContactInnerActionsFragment: View {
.frame(width: 25, height: 25)
.padding(.all, 10)
Text(contactAvatarModel.friend != nil && contactAvatarModel.friend!.starred == true
? "Remove from favourites"
: "Add to favourites")
? "contact_details_remove_from_favourites"
: "contact_details_add_to_favourites")
.default_text_style(styleSize: 14)
.frame(maxWidth: .infinity, alignment: .leading)
.lineLimit(1)
@ -316,7 +316,7 @@ struct ContactInnerActionsFragment: View {
.frame(width: 25, height: 25)
.padding(.all, 10)
Text("Share")
Text("contact_details_share")
.default_text_style(styleSize: 14)
.frame(maxWidth: .infinity, alignment: .leading)
.lineLimit(1)
@ -343,7 +343,7 @@ struct ContactInnerActionsFragment: View {
.frame(width: 25, height: 25)
.padding(.all, 10)
Text("Delete this contact")
Text("contact_details_delete")
.foregroundStyle(Color.redDanger500)
.default_text_style(styleSize: 14)
.frame(maxWidth: .infinity, alignment: .leading)

View file

@ -179,7 +179,7 @@ struct ContactInnerFragment: View {
.background(Color.grayMain2c200)
.cornerRadius(40)
Text("Appel")
Text("contact_call_action")
.default_text_style(styleSize: 14)
}
})
@ -211,7 +211,7 @@ struct ContactInnerFragment: View {
.background(Color.grayMain2c200)
.cornerRadius(40)
Text("Message")
Text("contact_message_action")
.default_text_style(styleSize: 14)
}
})
@ -243,7 +243,7 @@ struct ContactInnerFragment: View {
.background(Color.grayMain2c200)
.cornerRadius(40)
Text("Video Call")
Text("contact_video_call_action")
.default_text_style(styleSize: 14)
}
})

View file

@ -81,7 +81,7 @@ struct ContactListBottomSheet: View {
.frame(width: 25, height: 25, alignment: .leading)
.padding(.all, 10)
Text(contactViewModel.stringToCopy.prefix(4) == "sip:"
? "Copy address" : "Copy number")
? "menu_copy_sip_address" : "menu_copy_phone_number")
.default_text_style(styleSize: 16)
Spacer()
}
@ -116,7 +116,7 @@ struct ContactListBottomSheet: View {
.foregroundStyle(Color.grayMain2c500)
.frame(width: 25, height: 25, alignment: .leading)
.padding(.all, 10)
Text("Invitation")
Text("menu_invite")
.default_text_style(styleSize: 16)
Spacer()
}

View file

@ -35,7 +35,7 @@ struct ContactsInnerFragment: View {
VStack(alignment: .leading) {
if !contactsManager.avatarListModel.filter({ $0.friend?.starred == true }).isEmpty {
HStack(alignment: .center) {
Text("Favourites")
Text("contacts_list_favourites_title")
.default_text_style_800(styleSize: 16)
Spacer()
@ -66,7 +66,7 @@ struct ContactsInnerFragment: View {
}
HStack(alignment: .center) {
Text("All contacts")
Text("contacts_list_all_contacts_title")
.default_text_style_800(styleSize: 16)
Spacer()

View file

@ -89,8 +89,8 @@ struct ContactsListBottomSheet: View {
.frame(width: 25, height: 25, alignment: .leading)
.padding(.all, 10)
Text(contactViewModel.selectedFriend != nil && contactViewModel.selectedFriend!.starred == true
? "Remove from favourites"
: "Add to favourites")
? "contact_details_add_to_favourites"
: "contact_details_remove_from_favourites")
.default_text_style(styleSize: 16)
Spacer()
}
@ -131,7 +131,7 @@ struct ContactsListBottomSheet: View {
.foregroundStyle(Color.grayMain2c500)
.frame(width: 25, height: 25, alignment: .leading)
.padding(.all, 10)
Text("Share")
Text("contact_details_share")
.default_text_style(styleSize: 16)
Spacer()
}
@ -169,7 +169,7 @@ struct ContactsListBottomSheet: View {
.foregroundStyle(Color.redDanger500)
.frame(width: 25, height: 25, alignment: .leading)
.padding(.all, 10)
Text("Delete")
Text("contact_details_delete")
.foregroundStyle(Color.redDanger500)
.default_text_style(styleSize: 16)
Spacer()

View file

@ -121,7 +121,7 @@ struct EditContactFragment: View {
}
}
Text(editContactViewModel.selectedEditFriend == nil ? "New contact" : "Edit contact")
Text(editContactViewModel.selectedEditFriend == nil ? "contact_new_title" : "contact_edit_title")
.multilineTextAlignment(.leading)
.default_text_style_orange_800(styleSize: 16)
@ -192,7 +192,7 @@ struct EditContactFragment: View {
.resizable()
.frame(width: 20, height: 20)
Text("Edit picture")
Text("manage_account_edit_picture")
.foregroundStyle(Color.grayMain2c700)
.multilineTextAlignment(.center)
.default_text_style(styleSize: 14)
@ -226,7 +226,7 @@ struct EditContactFragment: View {
.resizable()
.frame(width: 20, height: 20)
Text("Remove picture")
Text("manage_account_remove_picture")
.foregroundStyle(Color.grayMain2c700)
.multilineTextAlignment(.center)
.default_text_style(styleSize: 14)
@ -245,7 +245,7 @@ struct EditContactFragment: View {
.resizable()
.frame(width: 20, height: 20)
Text("Add a picture")
Text("manage_account_add_picture")
.foregroundStyle(Color.grayMain2c700)
.multilineTextAlignment(.center)
.default_text_style(styleSize: 14)
@ -276,11 +276,11 @@ struct EditContactFragment: View {
.background(Color.gray100)
VStack(alignment: .leading) {
Text("First name*")
Text(String(localized: "contact_editor_first_name") + "*")
.default_text_style_700(styleSize: 15)
.padding(.bottom, -5)
TextField("First Name", text: $editContactViewModel.firstName)
TextField("contact_editor_first_name", text: $editContactViewModel.firstName)
.default_text_style(styleSize: 15)
.frame(height: 25)
.padding(.horizontal, 20)
@ -297,11 +297,11 @@ struct EditContactFragment: View {
}
VStack(alignment: .leading) {
Text("Last name")
Text("contact_editor_last_name")
.default_text_style_700(styleSize: 15)
.padding(.bottom, -5)
TextField("Last name", text: $editContactViewModel.lastName)
TextField("contact_editor_last_name", text: $editContactViewModel.lastName)
.default_text_style(styleSize: 15)
.frame(height: 25)
.padding(.horizontal, 20)
@ -318,14 +318,14 @@ struct EditContactFragment: View {
}
VStack(alignment: .leading) {
Text("SIP address")
Text("sip_address")
.default_text_style_700(styleSize: 15)
.padding(.bottom, -5)
ForEach(0..<editContactViewModel.sipAddresses.count, id: \.self) { index in
HStack(alignment: .center) {
TextField("SIP address", text: $editContactViewModel.sipAddresses[index])
TextField("sip_address", text: $editContactViewModel.sipAddresses[index])
.default_text_style(styleSize: 15)
.disableAutocorrection(true)
.autocapitalization(.none)
@ -368,13 +368,13 @@ struct EditContactFragment: View {
.padding(.bottom)
VStack(alignment: .leading) {
Text("Phone number")
Text("phone_number")
.default_text_style_700(styleSize: 15)
.padding(.bottom, -5)
ForEach(0..<editContactViewModel.phoneNumbers.count, id: \.self) { index in
HStack(alignment: .center) {
TextField("Phone number", text: $editContactViewModel.phoneNumbers[index])
TextField("phone_number", text: $editContactViewModel.phoneNumbers[index])
.default_text_style(styleSize: 15)
.textContentType(.oneTimeCode)
.keyboardType(.numberPad)
@ -421,11 +421,11 @@ struct EditContactFragment: View {
.padding(.bottom)
VStack(alignment: .leading) {
Text("Company")
Text("contact_editor_company")
.default_text_style_700(styleSize: 15)
.padding(.bottom, -5)
TextField("Company", text: $editContactViewModel.company)
TextField("contact_editor_company", text: $editContactViewModel.company)
.default_text_style(styleSize: 15)
.frame(height: 25)
.padding(.horizontal, 20)
@ -442,11 +442,11 @@ struct EditContactFragment: View {
}
VStack(alignment: .leading) {
Text("Job title")
Text("contact_editor_job_title")
.default_text_style_700(styleSize: 15)
.padding(.bottom, -5)
TextField("Job title", text: $editContactViewModel.jobTitle)
TextField("contact_editor_job_title", text: $editContactViewModel.jobTitle)
.default_text_style(styleSize: 15)
.frame(height: 25)
.padding(.horizontal, 20)

View file

@ -54,7 +54,7 @@ struct SipAddressesPopup: View {
HStack {
HStack {
VStack {
Text("SIP address :")
Text(String(localized: "sip_address") + ":")
.default_text_style_700(styleSize: 14)
.frame(maxWidth: .infinity, alignment: .leading)
Text(contactAvatarModel.addresses[index].dropFirst(4))

View file

@ -356,7 +356,7 @@ struct ContentView: View {
sourceFlags: MagicSearch.Source.Friends.rawValue | MagicSearch.Source.LdapServers.rawValue)
} label: {
HStack {
Text("See all")
Text("contacts_list_filter_popup_see_all")
Spacer()
if magicSearch.allContact {
Image("green-check")
@ -375,7 +375,7 @@ struct ContentView: View {
sourceFlags: MagicSearch.Source.Friends.rawValue | MagicSearch.Source.LdapServers.rawValue)
} label: {
HStack {
Text("See Linphone contact")
Text(String(format: String(localized: "contacts_list_filter_popup_see_linphone_only"), Bundle.main.displayName))
Spacer()
if !magicSearch.allContact {
Image("green-check")