diff --git a/package.json b/package.json index c6b656f..537907f 100644 --- a/package.json +++ b/package.json @@ -31,6 +31,7 @@ "ra-language-chinese": "^2.0.10", "ra-language-french": "^4.9.3", "ra-language-german": "^3.13.4", + "ra-language-italian": "^3.13.1", "react": "^17.0.0", "react-admin": "^3.19.12", "react-dom": "^17.0.2", diff --git a/src/App.js b/src/App.js index 0aca651..3d6c4b1 100644 --- a/src/App.js +++ b/src/App.js @@ -28,12 +28,14 @@ import germanMessages from "./i18n/de"; import englishMessages from "./i18n/en"; import frenchMessages from "./i18n/fr"; import chineseMessages from "./i18n/zh"; +import italianMessages from "./i18n/it"; // TODO: Can we use lazy loading together with browser locale? const messages = { de: germanMessages, en: englishMessages, fr: frenchMessages, + it: italianMessages, zh: chineseMessages, }; const i18nProvider = polyglotI18nProvider( diff --git a/src/i18n/it.js b/src/i18n/it.js new file mode 100644 index 0000000..90b617b --- /dev/null +++ b/src/i18n/it.js @@ -0,0 +1,385 @@ +import italianMessages from "ra-language-italian"; + +const it = { + ...italianMessages, + synapseadmin: { + auth: { + base_url: "URL dell'homeserver", + welcome: "Benvenuto in Synapse-admin", + server_version: "Versione di Synapse", + username_error: + "Per favore inserisci un ID utente completo: '@utente:dominio'", + protocol_error: "L'URL deve iniziare per 'http://' o 'https://'", + url_error: "URL del server Matrix non valido", + sso_sign_in: "Accedi con SSO", + }, + users: { + invalid_user_id: "ID utente non valido su questo homeserver.", + tabs: { sso: "SSO" }, + }, + rooms: { + tabs: { + basic: "Semplice", + members: "Membro", + detail: "Dettagli", + permission: "Permessi", + }, + }, + reports: { tabs: { basic: "Semplice", detail: "Dettagli" } }, + }, + import_users: { + error: { + at_entry: "Alla voce %{entry}: %{message}", + error: "Errore", + required_field: "Il campo '%{field}' non è presente", + invalid_value: + "Valore non valido alla riga %{row}. '%{field}' Il campo può essere solo 'true' o 'false'", + unreasonably_big: + "Impossibile caricare un file così grosso (%{size} megabyte)", + already_in_progress: "Un import è attualmente già in caricamento", + id_exits: "L'ID %{id} è già presente", + }, + title: "Importa utenti tramite file CSV", + goToPdf: "Vai al PDF", + cards: { + importstats: { + header: "Importa utenti", + users_total: + "%{smart_count} utente nel file CSV |||| %{smart_count} utenti nel file CSV", + guest_count: "%{smart_count} ospite |||| %{smart_count} ospiti", + admin_count: + "%{smart_count} amministratore |||| %{smart_count} amministratori", + }, + conflicts: { + header: "Strategia di conflitto", + mode: { + stop: "Stoppa al conflitto", + skip: "Mostra l'errore e ignora il conflitto", + }, + }, + ids: { + header: "ID", + all_ids_present: "ID presenti in ogni voce", + count_ids_present: + "%{smart_count} voce con ID |||| %{smart_count} voci con ID", + mode: { + ignore: "Ignora gli ID nel file CSV e creane di nuovi", + update: "Aggiorna le voci esistenti", + }, + }, + passwords: { + header: "Passwords", + all_passwords_present: "Password presenti in ogni voce", + count_passwords_present: + "%{smart_count} voce con password |||| %{smart_count} voci con password", + use_passwords: "Usa le password dal file CSV", + }, + upload: { + header: "Input file CSV", + explanation: + "Qui puoi caricare un file con valori separati da virgole che verrà poi utilizzato per creare o aggiornare gli utenti. Il file deve includere i campi 'id' and 'displayname'. Puoi scaricare un file di esempio per adattarlo: ", + }, + startImport: { + simulate_only: "Solo simulazione", + run_import: "Importa", + }, + results: { + header: "Importa i risultati", + total: + "%{smart_count} voce in totale |||| %{smart_count} voci in totale", + successful: "%{smart_count} voci importate con successo", + skipped: "%{smart_count} voci ignorate", + download_skipped: "Scarica le voci ignorate", + with_error: + "%{smart_count} voce con errori ||| %{smart_count} voci con errori", + simulated_only: "Il processo era stato solamente simulato", + }, + }, + }, + resources: { + users: { + name: "Utente |||| Utenti", + email: "Email", + msisdn: "Telefono", + threepid: "Email / Telefono", + fields: { + avatar: "Avatar", + id: "ID utente", + name: "Nome", + is_guest: "Ospite", + admin: "Amministratore", + deactivated: "Disattivato", + guests: "Mostra gli ospiti", + show_deactivated: "Mostra gli utenti disattivati", + user_id: "Cerca utente", + displayname: "Nickname", + password: "Password", + avatar_url: "URL dell'avatar", + avatar_src: "Avatar", + medium: "Medium", + threepids: "3PID", + address: "Indirizzo", + creation_ts_ms: "Creazione del timestamp", + consent_version: "Versione minima richiesta", + auth_provider: "Provider", + user_type: "Tipo d'utente", + }, + helper: { + password: + "Cambiando la password l'utente verrà disconnesso da tutte le sessioni attive.", + deactivate: "Devi fornire una password per riattivare l'account.", + erase: "Constrassegna l'utente come cancellato dal GDPR", + }, + action: { + erase: "Cancella i dati dell'utente", + }, + }, + rooms: { + name: "Stanza |||| Stanze", + fields: { + room_id: "ID della stanza", + name: "Nome", + canonical_alias: "Alias", + joined_members: "Membri", + joined_local_members: "Membri locali", + joined_local_devices: "Dispositivi locali", + state_events: "Eventi di stato / Complessità", + version: "Versione", + is_encrypted: "Criptato", + encryption: "Crittografia", + federatable: "Federabile", + public: "Visibile nella cartella della stanza", + creator: "Creatore", + join_rules: "Regole per entrare", + guest_access: "Entra come ospite", + history_visibility: "Visibilità temporale", + topic: "Topic", + avatar: "Avatar", + }, + helper: { + /* forward_extremities: + "Forward extremities are the leaf events at the end of a Directed acyclic graph (DAG) in a room, aka events that have no children. The more exist in a room, the more state resolution that Synapse needs to perform (hint: it's an expensive operation). While Synapse has code to prevent too many of these existing at one time in a room, bugs can sometimes make them crop up again. If a room has >10 forward extremities, it's worth checking which room is the culprit and potentially removing them using the SQL queries mentioned in #1760.", */ + }, + enums: { + join_rules: { + public: "Pubblica", + knock: "Bussa", + invite: "Invita", + private: "Privata", + }, + guest_access: { + can_join: "Gli utenti ospiti possono entrare", + forbidden: "Gli utenti ospiti non possono entrare", + }, + history_visibility: { + invited: "Dall'invito", + joined: "Dall'entrata", + shared: "Dalla condivisione", + world_readable: "Chiunque", + }, + unencrypted: "Non criptata", + }, + action: { + erase: { + title: "Cancella stanza", + content: + "Sei sicuro di voler eliminare questa stanza? Questa azione è definitiva. Tutti i messaggi e i media condivisi in questa stanza verranno eliminati dal server!", + }, + }, + }, + reports: { + name: "Evento segnalato |||| Eventi segnalati", + fields: { + id: "ID", + received_ts: "Orario del report", + user_id: "richiedente", + name: "nome della stanza", + score: "punteggio", + reason: "ragione", + event_id: "ID dell'evento", + event_json: { + origin: "server di origine", + origin_server_ts: "ora dell'invio", + type: "tipo di evento", + content: { + msgtype: "tipo di contenuto", + body: "contenuto", + format: "formato", + formatted_body: "contenuto formattato", + algorithm: "algoritmo", + }, + }, + }, + }, + connections: { + name: "Connessioni", + fields: { + last_seen: "Data", + ip: "Indirizzo IP", + user_agent: "agente utente", + }, + }, + devices: { + name: "Dispositivo |||| Dispositivi", + fields: { + device_id: "ID del dispositivo", + display_name: "Nome del dispositivo", + last_seen_ts: "Timestamp", + last_seen_ip: "Indirizzo IP", + }, + action: { + erase: { + title: "Rimozione del dispositivo %{id}", + content: 'Sei sicuro di voler rimuovere il dispositivo "%{name}"?', + success: "Dispositivo rimosso con successo.", + failure: "C'è stato un errore.", + }, + }, + }, + users_media: { + name: "Media", + fields: { + media_id: "ID del media", + media_length: "Peso del file (in Byte)", + media_type: "Tipo", + upload_name: "Nome del file", + quarantined_by: "In quarantena da", + safe_from_quarantine: "Protetto dalla quarantena", + created_ts: "Creato", + last_access_ts: "Ultimo accesso", + }, + }, + delete_media: { + name: "Media", + fields: { + before_ts: "ultimo accesso effettuato prima", + size_gt: "Più grande di (in byte)", + keep_profiles: "Mantieni le immagini del profilo", + }, + action: { + send: "Cancella media", + send_success: "Richiesta inviata con successo.", + send_failure: "C'è stato un errore.", + }, + helper: { + send: "Questa API cancella i media locali dal disco del tuo server. Questo include anche ogni miniatura e copia del media scaricato. Questa API non inciderà sui media che sono stati caricati nei repository esterni.", + }, + }, + protect_media: { + action: { + create: "Non protetto, proteggi", + delete: "Protetto, rimuovi protezione", + none: "In quarantena", + send_success: "Stato della protezione cambiato con successo.", + send_failure: "C'è stato un errore.", + }, + }, + quarantine_media: { + action: { + name: "Quarantina", + create: "Aggiungi alla quarantena", + delete: "In quarantena, rimuovi dalla quarantena", + none: "Protetto dalla quarantena", + send_success: "Stato della quarantena cambiato con successo.", + send_failure: "C'è stato un errore.", + }, + }, + pushers: { + name: "Pusher |||| Pusher", + fields: { + app: "App", + app_display_name: "Nome dell'app", + app_id: "ID dell'app", + device_display_name: "Nome del dispositivo", + kind: "Tipo", + lang: "Lingua", + profile_tag: "Tag del profilo", + pushkey: "Pushkey", + data: { url: "URL" }, + }, + }, + servernotices: { + name: "Avvisi del server", + send: "Invia avvisi", + fields: { + body: "Messaggio", + }, + action: { + send: "Invia nota", + send_success: "Avviso inviato con successo.", + send_failure: "C'è stato un errore.", + }, + helper: { + send: 'Invia un avviso dal server agli utenti selezionati. La feature "Avvisi del server" è stata attivata sul server.', + }, + }, + user_media_statistics: { + name: "Media degli utenti", + fields: { + media_count: "Numero media", + media_length: "Lunghezza media", + }, + }, + forward_extremities: { + name: "Invia estremità", + fields: { + id: "Event ID", + received_ts: "Timestamp", + depth: "Profondità", + state_group: "State group", + }, + }, + room_state: { + name: "Eventi di stato", + fields: { + type: "Tipo", + content: "Contenuto", + origin_server_ts: "Ora dell'invio", + sender: "Mittente", + }, + }, + room_directory: { + name: "Elenco delle stanze", + fields: { + world_readable: "gli utenti ospite possono vedere senza entrare", + guest_can_join: "gli utenti ospite possono entrare", + }, + action: { + title: + "Cancella stanza dall'elenco |||| Cancella %{smart_count} stanze dall'elenco", + content: + "Sei sicuro di voler rimuovere questa stanza dall'elenco? |||| Sei sicuro di voler rimuovere %{smart_count} stanze dall'elenco?", + erase: "Rimuovi dall'elenco", + create: "Crea", + send_success: "Stanza creata con successo.", + send_failure: "C'è stato un errore.", + }, + }, + destinations: { + name: "Federazione", + fields: { + destination: "Destinazione", + failure_ts: "Timestamp dell'errore", + retry_last_ts: "Tentativo ultimo timestamp", + retry_interval: "Intervallo dei tentativi", + last_successful_stream_ordering: "Ultimo flusso riuscito con successo", + stream_ordering: "Flusso", + }, + action: { reconnect: "Riconnetti" }, + }, + }, + registration_tokens: { + name: "Token di registrazione", + fields: { + token: "Token", + valid: "Token valido", + uses_allowed: "Usi permessi", + pending: "In attesa", + completed: "Completato", + expiry_time: "Data della scadenza", + length: "Lunghezza", + }, + helper: { length: "Lunghezza del token se non viene dato alcun token." }, + }, +}; +export default it; diff --git a/yarn.lock b/yarn.lock index d8071e2..949c41d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1776,13 +1776,20 @@ core-js-pure "^3.19.0" regenerator-runtime "^0.13.4" -"@babel/runtime@^7.1.2", "@babel/runtime@^7.10.0", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.13", "@babel/runtime@^7.12.5", "@babel/runtime@^7.13.10", "@babel/runtime@^7.15.4", "@babel/runtime@^7.16.3", "@babel/runtime@^7.16.7", "@babel/runtime@^7.18.3", "@babel/runtime@^7.18.9", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.4", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.2", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.3", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": +"@babel/runtime@^7.1.2", "@babel/runtime@^7.10.0", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.13", "@babel/runtime@^7.12.5", "@babel/runtime@^7.13.10", "@babel/runtime@^7.15.4", "@babel/runtime@^7.16.3", "@babel/runtime@^7.16.7", "@babel/runtime@^7.18.3", "@babel/runtime@^7.18.9", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.4", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.3", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": version "7.21.0" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.21.0.tgz#5b55c9d394e5fcf304909a8b00c07dc217b56673" integrity sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw== dependencies: regenerator-runtime "^0.13.11" +"@babel/runtime@^7.6.2": + version "7.20.13" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.13.tgz#7055ab8a7cff2b8f6058bf6ae45ff84ad2aded4b" + integrity sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA== + dependencies: + regenerator-runtime "^0.13.11" + "@babel/template@^7.16.0", "@babel/template@^7.3.3": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.16.0.tgz#d16a35ebf4cd74e202083356fab21dd89363ddd6" @@ -1952,22 +1959,22 @@ resolved "https://registry.yarnpkg.com/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz#1bfafe4b7ed0f3e4105837e056e0a89b108ebe36" integrity sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg== -"@emotion/babel-plugin@^11.10.6": - version "11.10.6" - resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.10.6.tgz#a68ee4b019d661d6f37dec4b8903255766925ead" - integrity sha512-p2dAqtVrkhSa7xz1u/m9eHYdLi+en8NowrmXeF/dKtJpU8lCWli8RUAati7NcSl0afsBott48pdnANuD0wh9QQ== +"@emotion/babel-plugin@^11.11.0": + version "11.11.0" + resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz#c2d872b6a7767a9d176d007f5b31f7d504bb5d6c" + integrity sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ== dependencies: "@babel/helper-module-imports" "^7.16.7" "@babel/runtime" "^7.18.3" - "@emotion/hash" "^0.9.0" - "@emotion/memoize" "^0.8.0" - "@emotion/serialize" "^1.1.1" + "@emotion/hash" "^0.9.1" + "@emotion/memoize" "^0.8.1" + "@emotion/serialize" "^1.1.2" babel-plugin-macros "^3.1.0" convert-source-map "^1.5.0" escape-string-regexp "^4.0.0" find-root "^1.1.0" source-map "^0.5.7" - stylis "4.1.3" + stylis "4.2.0" "@emotion/cache@^11.7.1": version "11.7.1" @@ -1990,13 +1997,25 @@ resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.0.tgz#c5153d50401ee3c027a57a177bc269b16d889cb7" integrity sha512-14FtKiHhy2QoPIzdTcvh//8OyBlknNs2nXRwIhG904opCby3l+9Xaf/wuPvICBF0rc1ZCNBd3nKe9cd2mecVkQ== -"@emotion/is-prop-valid@^1.1.1", "@emotion/is-prop-valid@^1.2.0": +"@emotion/hash@^0.9.1": + version "0.9.1" + resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.1.tgz#4ffb0055f7ef676ebc3a5a91fb621393294e2f43" + integrity sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ== + +"@emotion/is-prop-valid@^1.1.1": version "1.2.0" resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-1.2.0.tgz#7f2d35c97891669f7e276eb71c83376a5dc44c83" integrity sha512-3aDpDprjM0AwaxGE09bOPkNxHpBd+kA6jty3RnaEXdweX1DF1U3VQpPYb0g1IStAuK7SVQ1cy+bNBBKp4W3Fjg== dependencies: "@emotion/memoize" "^0.8.0" +"@emotion/is-prop-valid@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz#23116cf1ed18bfeac910ec6436561ecb1a3885cc" + integrity sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw== + dependencies: + "@emotion/memoize" "^0.8.1" + "@emotion/memoize@^0.7.4": version "0.7.5" resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.5.tgz#2c40f81449a4e554e9fc6396910ed4843ec2be50" @@ -2007,6 +2026,11 @@ resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.8.0.tgz#f580f9beb67176fa57aae70b08ed510e1b18980f" integrity sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA== +"@emotion/memoize@^0.8.1": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.8.1.tgz#c1ddb040429c6d21d38cc945fe75c818cfb68e17" + integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA== + "@emotion/react@^11.7.1": version "11.7.1" resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.7.1.tgz#3f800ce9b20317c13e77b8489ac4a0b922b2fe07" @@ -2020,7 +2044,7 @@ "@emotion/weak-memoize" "^0.2.5" hoist-non-react-statics "^3.3.1" -"@emotion/serialize@^1.0.2", "@emotion/serialize@^1.1.1": +"@emotion/serialize@^1.0.2": version "1.1.1" resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.1.1.tgz#0595701b1902feded8a96d293b26be3f5c1a5cf0" integrity sha512-Zl/0LFggN7+L1liljxXdsVSVlg6E/Z/olVWpfxUTxOAmi8NU7YoeWeLfi1RmnB2TATHoaWwIBRoL+FvAJiTUQA== @@ -2031,38 +2055,59 @@ "@emotion/utils" "^1.2.0" csstype "^3.0.2" +"@emotion/serialize@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.1.2.tgz#017a6e4c9b8a803bd576ff3d52a0ea6fa5a62b51" + integrity sha512-zR6a/fkFP4EAcCMQtLOhIgpprZOwNmCldtpaISpvz348+DP4Mz8ZoKaGGCQpbzepNIUWbq4w6hNZkwDyKoS+HA== + dependencies: + "@emotion/hash" "^0.9.1" + "@emotion/memoize" "^0.8.1" + "@emotion/unitless" "^0.8.1" + "@emotion/utils" "^1.2.1" + csstype "^3.0.2" + "@emotion/sheet@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.1.0.tgz#56d99c41f0a1cda2726a05aa6a20afd4c63e58d2" integrity sha512-u0AX4aSo25sMAygCuQTzS+HsImZFuS8llY8O7b9MDRzbJM0kVJlAz6KNDqcG7pOuQZJmj/8X/rAW+66kMnMW+g== "@emotion/styled@^11.10.6": - version "11.10.6" - resolved "https://registry.yarnpkg.com/@emotion/styled/-/styled-11.10.6.tgz#d886afdc51ef4d66c787ebde848f3cc8b117ebba" - integrity sha512-OXtBzOmDSJo5Q0AFemHCfl+bUueT8BIcPSxu0EGTpGk6DmI5dnhSzQANm1e1ze0YZL7TDyAyy6s/b/zmGOS3Og== + version "11.11.0" + resolved "https://registry.yarnpkg.com/@emotion/styled/-/styled-11.11.0.tgz#26b75e1b5a1b7a629d7c0a8b708fbf5a9cdce346" + integrity sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng== dependencies: "@babel/runtime" "^7.18.3" - "@emotion/babel-plugin" "^11.10.6" - "@emotion/is-prop-valid" "^1.2.0" - "@emotion/serialize" "^1.1.1" - "@emotion/use-insertion-effect-with-fallbacks" "^1.0.0" - "@emotion/utils" "^1.2.0" + "@emotion/babel-plugin" "^11.11.0" + "@emotion/is-prop-valid" "^1.2.1" + "@emotion/serialize" "^1.1.2" + "@emotion/use-insertion-effect-with-fallbacks" "^1.0.1" + "@emotion/utils" "^1.2.1" "@emotion/unitless@^0.8.0": version "0.8.0" resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.8.0.tgz#a4a36e9cbdc6903737cd20d38033241e1b8833db" integrity sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw== -"@emotion/use-insertion-effect-with-fallbacks@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.0.tgz#ffadaec35dbb7885bd54de3fa267ab2f860294df" - integrity sha512-1eEgUGmkaljiBnRMTdksDV1W4kUnmwgp7X9G8B++9GYwl1lUdqSndSriIrTJ0N7LQaoauY9JJ2yhiOYK5+NI4A== +"@emotion/unitless@^0.8.1": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.8.1.tgz#182b5a4704ef8ad91bde93f7a860a88fd92c79a3" + integrity sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ== + +"@emotion/use-insertion-effect-with-fallbacks@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz#08de79f54eb3406f9daaf77c76e35313da963963" + integrity sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw== "@emotion/utils@^1.0.0", "@emotion/utils@^1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.2.0.tgz#9716eaccbc6b5ded2ea5a90d65562609aab0f561" integrity sha512-sn3WH53Kzpw8oQ5mgMmIzzyAaH2ZqFEbozVVBSYp538E06OSE6ytOp7pRAjNQR+Q/orwqdQYJSe2m3hCOeznkw== +"@emotion/utils@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.2.1.tgz#bbab58465738d31ae4cb3dbb6fc00a5991f755e4" + integrity sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg== + "@emotion/weak-memoize@^0.2.5": version "0.2.5" resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz#8eed982e2ee6f7f4e44c253e12962980791efd46" @@ -5382,9 +5427,9 @@ escodegen@^2.0.0: source-map "~0.6.1" eslint-config-prettier@^8.8.0: - version "8.8.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.8.0.tgz#bfda738d412adc917fd7b038857110efe98c9348" - integrity sha512-wLbQiFre3tdGgpDv67NQKnJuTlcUVYHas3k+DZCc2U2BadthoEY4B7hLPvAxaqdyOGCzuLfii2fqGph10va7oA== + version "8.10.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz#3a06a662130807e2502fc3ff8b4143d8a0658e11" + integrity sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg== eslint-config-react-app@^7.0.1: version "7.0.1" @@ -9235,10 +9280,10 @@ ra-core@^3.19.12: query-string "^5.1.1" reselect "~3.0.0" -ra-core@^4.9.3: - version "4.9.3" - resolved "https://registry.yarnpkg.com/ra-core/-/ra-core-4.9.3.tgz#65bcd030d652b02f5bc9381ded03017e1265c222" - integrity sha512-SZiTLixV68EvqbgCgwxfiu0+2IS00zzAavK8kg9qzohrVhiKnBQK0GvvfXTN9rKdgqNP/6d/anNwuYq+Wk0KbA== +ra-core@^4.13.2: + version "4.13.2" + resolved "https://registry.yarnpkg.com/ra-core/-/ra-core-4.13.2.tgz#18b05e794e1b3548f8070af68c68bf3dcc4b1cb9" + integrity sha512-CblQAEYkH8Yr6YeW86dzLOZJGLkCXNfaWLzhZKXN0biHYyZlTQiOQOLEzPB5anKIQK0hnTl8lLaritm42cjlwA== dependencies: clsx "^1.1.1" date-fns "^2.19.0" @@ -9272,17 +9317,22 @@ ra-language-english@^3.19.12: ra-core "^3.19.12" ra-language-french@^4.9.3: - version "4.9.3" - resolved "https://registry.yarnpkg.com/ra-language-french/-/ra-language-french-4.9.3.tgz#ceba5fa71c49d8dc4afc3e239d1cd568a0942e40" - integrity sha512-L2HKcl77rp8BXggzH77jU86AJjJ8OTtEp256eYtSL9C/quAjIhvrdVgxrcwk8wxy10+SxesFkjkRQT6wtd+RAg== + version "4.13.2" + resolved "https://registry.yarnpkg.com/ra-language-french/-/ra-language-french-4.13.2.tgz#bd4ce568360fa42799f8f4c1bf8ad9b8266fd6c2" + integrity sha512-+c2QIrmTIHYfry45aPgal7VPM+w9TBzsWmE5Uyw6OyYG8JX32byJ9f6Dc1VSVDbWh1MzMfwEU5vU/S8KH/IZoQ== dependencies: - ra-core "^4.9.3" + ra-core "^4.13.2" ra-language-german@^3.13.4: version "3.13.5" resolved "https://registry.yarnpkg.com/ra-language-german/-/ra-language-german-3.13.5.tgz#553385555907713a2ae08ba8f7aabd041b922936" integrity sha512-dGWWJbIP5FUp0axoH+7sZj6011IgifEz55FLij3QSBI4ZusDdH/CL3l4oy+srUXFI+IzoXGGtQPJ7ax3p11cLQ== +ra-language-italian@^3.13.1: + version "3.13.1" + resolved "https://registry.yarnpkg.com/ra-language-italian/-/ra-language-italian-3.13.1.tgz#115f15c00f140ba319d5daf53c7bd477c73b9546" + integrity sha512-iGgdkbnpA+5GD6OcAjOuOA95/jmJegC9txE8X+AmlA7vhsHdcnHam/D6goqv3sqfeqgCkPCPmJAMO/+slHXR1w== + ra-test@^3.15.0: version "3.19.4" resolved "https://registry.yarnpkg.com/ra-test/-/ra-test-3.19.4.tgz#fa50fd8a7334ed8769da905bd26bdfac624cb9b8" @@ -10491,10 +10541,10 @@ stylis@4.0.13: resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.0.13.tgz#f5db332e376d13cc84ecfe5dace9a2a51d954c91" integrity sha512-xGPXiFVl4YED9Jh7Euv2V220mriG9u4B2TA6Ybjc1catrstKD2PpIdU3U0RKpkVBC2EhmL/F0sPCr9vrFTNRag== -stylis@4.1.3: - version "4.1.3" - resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.1.3.tgz#fd2fbe79f5fed17c55269e16ed8da14c84d069f7" - integrity sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA== +stylis@4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.2.0.tgz#79daee0208964c8fe695a42fcffcac633a211a51" + integrity sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw== supports-color@^5.3.0: version "5.5.0"