diff --git a/packages/-ember-caluma/config/ember-intl.js b/packages/-ember-caluma/config/ember-intl.js
index 31e3a0e06..b58de8698 100644
--- a/packages/-ember-caluma/config/ember-intl.js
+++ b/packages/-ember-caluma/config/ember-intl.js
@@ -93,7 +93,7 @@ module.exports = function (/* environment */) {
return false;
}
- const requiredLocales = ["en", "de"];
+ const requiredLocales = ["en", "de", "it"];
// form builder is not yet supported in french
if (!key.startsWith("caluma.form-builder")) {
diff --git a/packages/core/tests/dummy/config/ember-intl.js b/packages/core/tests/dummy/config/ember-intl.js
index 79898e99f..b6cc0765b 100644
--- a/packages/core/tests/dummy/config/ember-intl.js
+++ b/packages/core/tests/dummy/config/ember-intl.js
@@ -89,7 +89,7 @@ module.exports = function (/* environment */) {
* @default "function(key,locale) { return true }"
*/
requiresTranslation(key, locale) {
- return ["en", "de", "fr"].includes(locale);
+ return ["en", "de", "fr", "it"].includes(locale);
},
};
};
diff --git a/packages/core/translations/it.yaml b/packages/core/translations/it.yaml
new file mode 100644
index 000000000..4a7c5fa2f
--- /dev/null
+++ b/packages/core/translations/it.yaml
@@ -0,0 +1,15 @@
+caluma:
+ caluma-query:
+ work-item:
+ status:
+ READY: "In corso"
+ COMPLETED: "Evaso"
+ CANCELED: "Demolito"
+ SKIPPED: "Tralasciato"
+ SUSPENDED: "In sospeso"
+ case:
+ status:
+ RUNNING: "In elaborazione"
+ COMPLETED: "Concluso"
+ CANCELED: "Demolito"
+ SUSPENDED: "In sospeso"
diff --git a/packages/distribution/translations/it.yaml b/packages/distribution/translations/it.yaml
new file mode 100644
index 000000000..55d599efd
--- /dev/null
+++ b/packages/distribution/translations/it.yaml
@@ -0,0 +1,116 @@
+caluma:
+ distribution:
+ empty: "Non sono ancora state create richieste."
+ no-actions: "Non sono disponibili operazioni nello stato attuale."
+ start: "Avvia circolazione"
+ send: "Invia richieste in corso"
+ complete: "Concludi circolazione"
+ skip: "Tralascia circolazione"
+ reopen: "Riavvia circolazione"
+ check-inquiries: "Segna le prese di posizione come verificate"
+ send-confirm: "Inviare davvero {count, plural, =1 {una richiesta in corso} other {{count} richieste in corso}}?"
+ complete-confirm: "Nella circolazione attuale {count, plural, =1 {vi è una richiesta in corso} other {vi sono {count} richieste in corso}}Attenzione: sta elaborando una richiesta già inviata. In caso di modifiche essenziali dei dettagli, può essere che il servizio destinatario non se ne accorga poiché non viene informato."
+
+ answer:
+ link: "Rispondi"
+
+ complete-error: "Errore nel tentativo di concludere il compito"
+ complete-not-allowed: "Non dispone del diritto di inviare questa risposta."
+
+ buttons:
+ compose:
+ label: "Rilascia per il controllo"
+ status: "In elaborazione"
+ adjust:
+ label: "Rilasciare adeguamento per il controllo"
+ status: "In rielaborazione"
+ confirm:
+ label: "Conferma"
+ status: "In fase di verifica"
+ revise:
+ label: "Rielabora"
+
+ details:
+ show: "Visualizza dettagli"
+ hide: "Nascondi dettagli"
+
+ new:
+ title: "Nuova richiesta"
+ search: "Cerca..."
+ suggestions: "Raccomandazioni"
+ empty: "Non sono stati trovati servizi"
+ groups: "{count} {count, plural, =1 {servizio} other {servizi}}"
+ selected: "{count, plural, other {selezionati}}"
+ reset: "Ripristina"
+ create-draft: "Crea bozza"
+ continue: "Avanti"
+ back: "Indietro"
+ error: "Errore nel tentativo di creare {count, plural, =1 {le richieste} other {la richiesta}}"
+
+ reminder:
+ link: "Invia reminder"
+ confirm: "Inviare davvero un reminder per questa richiesta?"
+ title: "Reminder inviati"
+ no-reminders: "Per la presente richiesta non sono ancora stati inviati reminder."
+ success: "Il reminder è stato inviato con successo"
+ error: "Errore nel tentativo di inviare il reminder"
+
+ types:
+ controlling: "Prese di posizione richieste"
+ addressed: "Proprie prese di posizione"
+ more: "Altre prese di posizione"
+
+ status:
+ draft: "Bozza"
+ skipped: "Terminata prima del tempo"
+ sent: "Inviata"
+ in-progress: "In elaborazione"
+ positive: "Positiva"
+ negative: "Negativa"
+ needs-interaction: "Operazione necessaria"
+
+ notfound:
+ title: "404"
+ subtitle: "Pagina non trovata!"
+ back: "Torna alla"
+ link: "Pagina iniziale"
+
+ withdraw:
+ link: "Ritira"
+ confirm: "Ritirare davvero la richiesta?"
+ error: "Errore nel tentativo di ritirare la richiesta"
+ status: "Ritirate"
+
+ reopen-inquiry:
+ link: "Riaprire"
+ confirm: "Riaprire davvero la richiesta?"
+ error: "Errore nel tentativo di riaprire la richiesta"
diff --git a/packages/form-builder/translations/it.yaml b/packages/form-builder/translations/it.yaml
new file mode 100644
index 000000000..9ce802f46
--- /dev/null
+++ b/packages/form-builder/translations/it.yaml
@@ -0,0 +1,197 @@
+caluma:
+ form-builder:
+ global:
+ save: "Salva"
+ loading: "Carica"
+ cancel: "Annulla"
+ search: "Cerca"
+ optional: "Facoltativo"
+
+ empty-search: "Nessun risultato trovato. Adegua la ricerca per ottenere risultati migliori."
+
+ not-found:
+ title: "Sembra si sia verificato un errore."
+ subtitle: "La pagina cercata non esiste!"
+ home: "Torna alla pagina principale"
+
+ form:
+ name: "Nome"
+ slug: "Slug"
+ description: "Descrizione"
+ isArchived: "Archiviato"
+ widgetOverride: "Widget personalizzato"
+ isPublished: "Pubblicato"
+ draft: "Bozza"
+ active: "Attivo"
+ all: "Tutti"
+
+ allForms: "Tutti i moduli"
+ new: "Nuovo modulo"
+ empty: "Non abbiamo trovato nessun modulo. Clicca sul pulsante in alto a destra per creare un modulo!"
+ loadMore: "Carica più moduli"
+
+ not-found: "Non è stato trovato un modulo con lo slug ''{slug}''"
+
+ question-list:
+ required:
+ label: "Obbligatorio (JEXL)"
+ not-required: "Facoltativo"
+ required: "Obbligatorio"
+ conditional: "Parzialmente obbligatorio"
+ hidden:
+ label: "Nascosto (JEXL)"
+ not-hidden: "Visibile"
+ hidden: "Nascosto"
+ conditional: "Parzialmente nascosto"
+
+ question:
+ label: "Etichetta"
+ slug: "Slug"
+ type: "Tipo"
+ isRequired: "Campo obbligatorio"
+ staticContent: "Contenuto statico"
+ infoText: "Testo informativo"
+ hintText: "Testo suggerimento"
+ confirmationText: "Testo di conferma"
+ placeholder: "Segnaposto"
+ isHidden: "Nascosto (JEXL)"
+ widgetOverride: "Tipo di widget"
+ isArchived: "Archiviato"
+ type-disabled: "Per evitare di avere dati corrotti non è più possibile modificare il tipo di domanda dopo aver creato una domanda."
+ supportsMarkdownPrefix: "Questo campo sostiene"
+ markdown: "Markdown"
+ dataSource: "Fonte dei dati"
+ formatValidators: "Convalida"
+ defaultValue: "Valore standard"
+ meta: "Metainformazioni"
+
+ general: "In generale"
+ options: "Opzioni"
+
+ min-value: "Valore minimo"
+ max-value: "Valore massimo"
+ min-length: "Lunghezza minima"
+ max-length: "Lunghezza massima"
+ rowForm: "Modulo per righe delle tabelle"
+ subForm: "Modulo per voci"
+ no-selection: "Nessuna selezione"
+ search-placeholder: "Clicca qui per cercare"
+ search-empty: "Nessun modulo trovato"
+ columnsToDisplay: "Colonne da visualizzare nel modulo"
+ calcExpression: "Formula di calcolo (JEXL)"
+
+ new: "Nuova domanda"
+
+ minor-info-title: "Importante!"
+ minor-info: "Per mantenere la coerenza dei dati, l'adeguamento di una domanda non può mai comportare la mutazione del significato della domanda."
+
+ remove: "Elimina domanda"
+ add: "Aggiungi nuova domanda o domanda esistente"
+ search: "Cerca una domanda (label o slug)"
+ create: "o crea una nuova domanda"
+ loadMore: "Carica più domande"
+
+ empty: "Non ha ancora aggiunto nessuna domanda. Clicchi sul pulsante in alto per farlo!"
+ advancedSettings: "Impostazioni avanzate"
+
+ types:
+ IntegerQuestion: "Numero intero"
+ FloatQuestion: "Numero in virgola mobile"
+ MultipleChoiceQuestion: "Selezione multipla"
+ ChoiceQuestion: "Selezione unica"
+ TextQuestion: "Testo"
+ TextareaQuestion: "Testo (più righe)"
+ TableQuestion: "Tabella"
+ FormQuestion: "Modulo"
+ FilesQuestion: "File"
+ StaticQuestion: "Contenuto non interattivo"
+ DateQuestion: "Data"
+ DynamicMultipleChoiceQuestion: "Selezione multipla dinamica"
+ DynamicChoiceQuestion: "Selezione unica dinamica"
+ CalculatedFloatQuestion: "Calcolo (numero in virgola mobile)"
+ ActionButtonQuestion: "Pulsante di operazione"
+
+ confirmText: "Testo di conferma"
+ action: "Operazione"
+ color: "Colore"
+ validateOnEnter: "Convalida quando si accede alla finestra"
+ showValidation: "Visualizza errore di convalida"
+
+ actions:
+ COMPLETE: "Concludi"
+ SKIP: "Tralascia"
+
+ colors:
+ PRIMARY: "Primario"
+ SECONDARY: "Secondario"
+ DEFAULT: "Standard"
+
+ widgetOverrides:
+ powerselect: "Power Select"
+ hidden: "Nascosto"
+ number-separator: "Separatore delle cifre"
+
+ not-found: "Non è stata trovata nessuna domanda con lo slug ''{slug}''"
+
+ hideLabel: "Nascondi etichetta"
+
+ usage:
+ title: "Questa domanda viene usata in {n,plural, =1 {un modulo} other {# moduli}}."
+ references-heading: "Tutti i riferimenti a questa domanda"
+ not-published: "non pubblicati"
+
+ options:
+ delete: "Elimina opzione"
+ archive: "Archivia (nascondi) opzione"
+ restore: "Ripristina opzione"
+
+ notification:
+ form:
+ save:
+ success: "Modulo salvato con successo!"
+ error: "Ops, nel tentativo di salvare il modulo qualcosa è andato storto..."
+
+ create:
+ success: "Modulo creato con successo!"
+ error: "Ops, nel tentativo di creare il modulo qualcosa è andato storto..."
+
+ reorder-questions:
+ success: "Le domande sono state riordinate con successo!"
+ error: "Ops, nel tentativo di riordinare le domande qualcosa è andato storto..."
+
+ reorder-options:
+ success: "Le opzioni sono state riordinate con successo!"
+ error: "Ops, nel tentativo di riordinare le opzioni qualcosa è andato storto..."
+
+ add-question:
+ success: "La domanda è stata aggiunta con successo al modulo!"
+ error: "Ops, nel tentativo di aggiungere la domanda qualcosa è andato storto..."
+
+ remove-question:
+ success: "La domanda è stata eliminata con successo dal modulo!"
+ error: "Ops, nel tentativo di eliminare la domanda qualcosa è andato storto..."
+
+ question:
+ save:
+ success: "La domanda è stata salvata con successo!"
+ error: "Ops, nel tentativo di salvare la domanda qualcosa è andato storto..."
+
+ copy-modal:
+ title: 'Copia "{form}"'
+ name:
+ label: "Nome"
+ hint: "Originale: {name}"
+ slug:
+ label: "Slug"
+ hint: "Originale: {slug}"
+ submit: "Copia"
+
+ validations:
+ form:
+ slug: "Esiste già un modulo con questo slug"
+
+ question:
+ slug: "Esiste già una domanda con questo slug"
+
+ option:
+ slug: "Esiste già un'opzione con questo slug"
diff --git a/packages/form/tests/dummy/config/ember-intl.js b/packages/form/tests/dummy/config/ember-intl.js
index 79898e99f..b6cc0765b 100644
--- a/packages/form/tests/dummy/config/ember-intl.js
+++ b/packages/form/tests/dummy/config/ember-intl.js
@@ -89,7 +89,7 @@ module.exports = function (/* environment */) {
* @default "function(key,locale) { return true }"
*/
requiresTranslation(key, locale) {
- return ["en", "de", "fr"].includes(locale);
+ return ["en", "de", "fr", "it"].includes(locale);
},
};
};
diff --git a/packages/form/translations/it.yaml b/packages/form/translations/it.yaml
new file mode 100644
index 000000000..5e1d5e6ee
--- /dev/null
+++ b/packages/form/translations/it.yaml
@@ -0,0 +1,58 @@
+caluma:
+ form:
+ optional: "Facoltativo"
+ save: "Salva"
+ delete: "Elimina"
+ edit: "Modifica"
+ cancel: "Annulla"
+ close: "Chiudi"
+ view: "Visualizza"
+ selectFile: "Cerca..."
+ deleteRow: "Cancellare davvero questa riga?"
+ addRow: "Aggiungi riga"
+ optionNotAvailable: "Questa opzione non è più disponibile"
+ info: "Ulteriori informazioni"
+
+ error:
+ details: "Dettagli tecnici:"
+ technical-error: "ops, qualcosa è andato storto! Non è stato possibile salvare la risposta."
+ offline: "Non è stato possibile salvare la risposta poiché manca la connessione a Internet. Verificare la connessione a Internet e riprovare."
+ invalid: "Non è stato possibile salvare la risposta poiché la convalida non è andata a buon fine. Verificare i dati inseriti e riprovare."
+
+ navigation:
+ next: "Avanti"
+ previous: "Indietro"
+ states:
+ untouched: "Non compilato"
+ unfinished: "Non compilato integralmente"
+ valid: "Compilato correttamente"
+ invalid: "Compilato in modo non corretto"
+
+ notification:
+ table:
+ add:
+ success: "Voce aggiunta con successo."
+ error: "Ops, nel tentativo di aggiungere la voce qualcosa è andato storto."
+
+ power-select:
+ placeholder-single: "Seleziona un'opzione"
+ placeholder-multiple: "Seleziona una o più opzioni"
+ options-loading: "Carica opzioni..."
+ options-empty: "Nessuna opzione disponibile"
+ search-placeholder: "Clicca qui per cercare"
+ search-empty: "Nessuna opzione trovata"
+ reset: "Ripristina"
+
+ validation:
+ blank: "Questo campo non può essere vuoto"
+ tooShort: "Questo campo deve contenere almeno {min} caratteri"
+ tooLong: "In questo campo sono ammessi al massimo {max} caratteri"
+ greaterThanOrEqualTo: "Il valore inserito in questo campo non può essere inferiore a {gte}"
+ lessThanOrEqualTo: "Il valore inserito in questo campo non può essere superiore a {lte}"
+ notAnInteger: "Inserisci una cifra intera"
+ inclusion: '"{label}" non è un valore valido per questo campo'
+ deleteFailed: "Errore durante l'eliminazione."
+ uploadFailed: "Errore durante il caricamento."
+ format: "{errorMsg}"
+ table: "Almeno una riga della tabella non è stata compilata correttamente."
+ error: "Le domande seguenti non sono state compilate in modo corretto:"
diff --git a/packages/workflow/tests/dummy/config/ember-intl.js b/packages/workflow/tests/dummy/config/ember-intl.js
index 79898e99f..b6cc0765b 100644
--- a/packages/workflow/tests/dummy/config/ember-intl.js
+++ b/packages/workflow/tests/dummy/config/ember-intl.js
@@ -89,7 +89,7 @@ module.exports = function (/* environment */) {
* @default "function(key,locale) { return true }"
*/
requiresTranslation(key, locale) {
- return ["en", "de", "fr"].includes(locale);
+ return ["en", "de", "fr", "it"].includes(locale);
},
};
};
diff --git a/packages/workflow/translations/it.yaml b/packages/workflow/translations/it.yaml
new file mode 100644
index 000000000..9dc24fab1
--- /dev/null
+++ b/packages/workflow/translations/it.yaml
@@ -0,0 +1,16 @@
+caluma:
+ mutate-work-item:
+ complete: "Concludi"
+ skip: "Tralascia"
+ cancel: "Annulla"
+ success:
+ complete: "Compito concluso con successo!"
+ skip: "Compito tralasciato con successo!"
+ cancel: "Compito annullato con successo!"
+ error:
+ complete: "Ops, nel tentativo di concludere il compito qualcosa è andato storto..."
+ skip: "Ops, nel tentativo di tralasciare il compito qualcosa è andato storto..."
+ cancel: "Ops, nel tentativo di annullare il compito qualcosa è andato storto..."
+
+ task-button:
+ error: "Errore nel tentativo di caricare il compito"