diff --git a/locales/de/LC_MESSAGES/volto.po b/locales/de/LC_MESSAGES/volto.po index 87007bd..908798e 100644 --- a/locales/de/LC_MESSAGES/volto.po +++ b/locales/de/LC_MESSAGES/volto.po @@ -21,6 +21,51 @@ msgstr "Feld Hinzufügen" msgid "Cancel" msgstr "Abbrechen" +#: components/Widget/SelectWidget +# defaultMessage: Choices +msgid "Choices" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Choose a file +msgid "Choose a file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Close +msgid "Close" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Date +msgid "Date" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Default +msgid "Default" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Description +msgid "Description" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to replace the existing file +msgid "Drop file here to replace the existing file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to upload a new file +msgid "Drop file here to upload a new file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop files here ... +msgid "Drop files here ..." +msgstr "" + #: components/FormView # defaultMessage: Error msgid "Error" @@ -31,6 +76,156 @@ msgstr "Fehler" msgid "Form" msgstr "Formular" +#: components/Widget/SelectWidget +# defaultMessage: No options +msgid "No options" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: No value +msgid "No value" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Replace existing file +msgid "Replace existing file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Required +msgid "Required" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Select… +msgid "Select…" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Short Name +msgid "Short Name" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Time +msgid "Time" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Title +msgid "Title" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Used for programmatic access to the fieldset. +msgid "Used for programmatic access to the fieldset." +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce Su e Giu per scegliere un'opzione +msgid "ay11_Use Up and Down to choose options" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibile +msgid "ay11_select available" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibili +msgid "ay11_select availables" +msgstr "" + +#: helpers/react-select +# defaultMessage: deselezionata +msgid "ay11_select deselected" +msgstr "" + +#: helpers/react-select +# defaultMessage: disabilitato +msgid "ay11_select disabled" +msgstr "" + +#: helpers/react-select +# defaultMessage: evidenziato +msgid "ay11_select focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: per la ricerca +msgid "ay11_select for search term" +msgstr "" + +#: helpers/react-select +# defaultMessage: è disabilitata. Seleziona un'altra opzione +msgid "ay11_select is disabled. Select another option." +msgstr "" + +#: helpers/react-select +# defaultMessage: opzione +msgid "ay11_select option" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "ay11_select result" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "ay11_select results" +msgstr "" + +#: helpers/react-select +# defaultMessage: selezionata +msgid "ay11_select selected" +msgstr "" + +#: helpers/react-select +# defaultMessage: valore +msgid "ay11_select value" +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce destra e sinistra per attivare o disattivare i valori evidenziati, premi Backspace per rimuovere il valore corrente evidenziato +msgid "ay11_select_Use left and right to toggle between focused values, press Backspace to remove the currently focused value" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Tab per selezionare l'opzione e uscire dal menu +msgid "ay11_select__press Tab to select the option and exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: digita per filtrare la lista +msgid "ay11_select__type to refine list" +msgstr "" + +#: helpers/react-select +# defaultMessage: è selezionato +msgid "ay11_select_is_focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi freccia giu per aprire il menu, premi Backspace per rimuovere il valore selezionato +msgid "ay11_select_press Down to open the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Invio per selezionare l'opzione corrente +msgid "ay11_select_press Enter to select the currently focused option" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Esc per uscire dal menu +msgid "ay11_select_press Escape to exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi la freccia a sinistra per evidenziare i valori selezionati +msgid "ay11_select_press left to focus selected values" +msgstr "" + #: formSchema # defaultMessage: Description msgid "description" @@ -223,7 +418,7 @@ msgid "form_useAsBCC" msgstr "" #: fieldSchema -# defaultMessage: If selected, a copy of email will be sent to this address. +# defaultMessage: If selected, a copy of email will alse be sent to this address. msgid "form_useAsBCC_description" msgstr "" @@ -247,6 +442,21 @@ msgstr "Unsichtbares Captcha" msgid "invisible_hcaptcha_desc" msgstr "Siehe https://docs.hcaptcha.com/faq#do-i-need-to-display-anything-on-the-page-when-using-hcaptcha-in-invisible-mode" +#: helpers/react-select +# defaultMessage: Nessuna opzione +msgid "select_noOptionsMessage" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "select_risultati" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "select_risultato" +msgstr "" + #: formSchema # defaultMessage: Title msgid "title" diff --git a/locales/en/LC_MESSAGES/volto.po b/locales/en/LC_MESSAGES/volto.po index 25cd816..2941161 100644 --- a/locales/en/LC_MESSAGES/volto.po +++ b/locales/en/LC_MESSAGES/volto.po @@ -21,6 +21,51 @@ msgstr "Add field" msgid "Cancel" msgstr "Cancel" +#: components/Widget/SelectWidget +# defaultMessage: Choices +msgid "Choices" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Choose a file +msgid "Choose a file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Close +msgid "Close" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Date +msgid "Date" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Default +msgid "Default" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Description +msgid "Description" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to replace the existing file +msgid "Drop file here to replace the existing file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to upload a new file +msgid "Drop file here to upload a new file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop files here ... +msgid "Drop files here ..." +msgstr "" + #: components/FormView # defaultMessage: Error msgid "Error" @@ -31,6 +76,156 @@ msgstr "Errore" msgid "Form" msgstr "Form" +#: components/Widget/SelectWidget +# defaultMessage: No options +msgid "No options" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: No value +msgid "No value" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Replace existing file +msgid "Replace existing file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Required +msgid "Required" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Select… +msgid "Select…" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Short Name +msgid "Short Name" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Time +msgid "Time" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Title +msgid "Title" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Used for programmatic access to the fieldset. +msgid "Used for programmatic access to the fieldset." +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce Su e Giu per scegliere un'opzione +msgid "ay11_Use Up and Down to choose options" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibile +msgid "ay11_select available" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibili +msgid "ay11_select availables" +msgstr "" + +#: helpers/react-select +# defaultMessage: deselezionata +msgid "ay11_select deselected" +msgstr "" + +#: helpers/react-select +# defaultMessage: disabilitato +msgid "ay11_select disabled" +msgstr "" + +#: helpers/react-select +# defaultMessage: evidenziato +msgid "ay11_select focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: per la ricerca +msgid "ay11_select for search term" +msgstr "" + +#: helpers/react-select +# defaultMessage: è disabilitata. Seleziona un'altra opzione +msgid "ay11_select is disabled. Select another option." +msgstr "" + +#: helpers/react-select +# defaultMessage: opzione +msgid "ay11_select option" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "ay11_select result" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "ay11_select results" +msgstr "" + +#: helpers/react-select +# defaultMessage: selezionata +msgid "ay11_select selected" +msgstr "" + +#: helpers/react-select +# defaultMessage: valore +msgid "ay11_select value" +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce destra e sinistra per attivare o disattivare i valori evidenziati, premi Backspace per rimuovere il valore corrente evidenziato +msgid "ay11_select_Use left and right to toggle between focused values, press Backspace to remove the currently focused value" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Tab per selezionare l'opzione e uscire dal menu +msgid "ay11_select__press Tab to select the option and exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: digita per filtrare la lista +msgid "ay11_select__type to refine list" +msgstr "" + +#: helpers/react-select +# defaultMessage: è selezionato +msgid "ay11_select_is_focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi freccia giu per aprire il menu, premi Backspace per rimuovere il valore selezionato +msgid "ay11_select_press Down to open the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Invio per selezionare l'opzione corrente +msgid "ay11_select_press Enter to select the currently focused option" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Esc per uscire dal menu +msgid "ay11_select_press Escape to exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi la freccia a sinistra per evidenziare i valori selezionati +msgid "ay11_select_press left to focus selected values" +msgstr "" + #: formSchema # defaultMessage: Description msgid "description" @@ -223,7 +418,7 @@ msgid "form_useAsBCC" msgstr "" #: fieldSchema -# defaultMessage: If selected, a copy of email will be sent to this address. +# defaultMessage: If selected, a copy of email will alse be sent to this address. msgid "form_useAsBCC_description" msgstr "" @@ -247,6 +442,21 @@ msgstr "Invisible captcha" msgid "invisible_hcaptcha_desc" msgstr "See https://docs.hcaptcha.com/faq#do-i-need-to-display-anything-on-the-page-when-using-hcaptcha-in-invisible-mode" +#: helpers/react-select +# defaultMessage: Nessuna opzione +msgid "select_noOptionsMessage" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "select_risultati" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "select_risultato" +msgstr "" + #: formSchema # defaultMessage: Title msgid "title" diff --git a/locales/es/LC_MESSAGES/volto.po b/locales/es/LC_MESSAGES/volto.po index 6aa4a3b..9ce34f4 100644 --- a/locales/es/LC_MESSAGES/volto.po +++ b/locales/es/LC_MESSAGES/volto.po @@ -23,6 +23,51 @@ msgstr "Agregar campo" msgid "Cancel" msgstr "Cancelar" +#: components/Widget/SelectWidget +# defaultMessage: Choices +msgid "Choices" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Choose a file +msgid "Choose a file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Close +msgid "Close" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Date +msgid "Date" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Default +msgid "Default" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Description +msgid "Description" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to replace the existing file +msgid "Drop file here to replace the existing file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to upload a new file +msgid "Drop file here to upload a new file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop files here ... +msgid "Drop files here ..." +msgstr "" + #: components/FormView # defaultMessage: Error msgid "Error" @@ -33,6 +78,156 @@ msgstr "Error" msgid "Form" msgstr "Formulario" +#: components/Widget/SelectWidget +# defaultMessage: No options +msgid "No options" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: No value +msgid "No value" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Replace existing file +msgid "Replace existing file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Required +msgid "Required" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Select… +msgid "Select…" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Short Name +msgid "Short Name" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Time +msgid "Time" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Title +msgid "Title" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Used for programmatic access to the fieldset. +msgid "Used for programmatic access to the fieldset." +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce Su e Giu per scegliere un'opzione +msgid "ay11_Use Up and Down to choose options" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibile +msgid "ay11_select available" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibili +msgid "ay11_select availables" +msgstr "" + +#: helpers/react-select +# defaultMessage: deselezionata +msgid "ay11_select deselected" +msgstr "" + +#: helpers/react-select +# defaultMessage: disabilitato +msgid "ay11_select disabled" +msgstr "" + +#: helpers/react-select +# defaultMessage: evidenziato +msgid "ay11_select focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: per la ricerca +msgid "ay11_select for search term" +msgstr "" + +#: helpers/react-select +# defaultMessage: è disabilitata. Seleziona un'altra opzione +msgid "ay11_select is disabled. Select another option." +msgstr "" + +#: helpers/react-select +# defaultMessage: opzione +msgid "ay11_select option" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "ay11_select result" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "ay11_select results" +msgstr "" + +#: helpers/react-select +# defaultMessage: selezionata +msgid "ay11_select selected" +msgstr "" + +#: helpers/react-select +# defaultMessage: valore +msgid "ay11_select value" +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce destra e sinistra per attivare o disattivare i valori evidenziati, premi Backspace per rimuovere il valore corrente evidenziato +msgid "ay11_select_Use left and right to toggle between focused values, press Backspace to remove the currently focused value" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Tab per selezionare l'opzione e uscire dal menu +msgid "ay11_select__press Tab to select the option and exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: digita per filtrare la lista +msgid "ay11_select__type to refine list" +msgstr "" + +#: helpers/react-select +# defaultMessage: è selezionato +msgid "ay11_select_is_focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi freccia giu per aprire il menu, premi Backspace per rimuovere il valore selezionato +msgid "ay11_select_press Down to open the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Invio per selezionare l'opzione corrente +msgid "ay11_select_press Enter to select the currently focused option" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Esc per uscire dal menu +msgid "ay11_select_press Escape to exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi la freccia a sinistra per evidenziare i valori selezionati +msgid "ay11_select_press left to focus selected values" +msgstr "" + #: formSchema # defaultMessage: Description msgid "description" @@ -225,7 +420,7 @@ msgid "form_useAsBCC" msgstr "" #: fieldSchema -# defaultMessage: If selected, a copy of email will be sent to this address. +# defaultMessage: If selected, a copy of email will alse be sent to this address. msgid "form_useAsBCC_description" msgstr "" @@ -249,6 +444,21 @@ msgstr "Captcha invisible" msgid "invisible_hcaptcha_desc" msgstr "Ver https://docs.hcaptcha.com/faq#do-i-need-to-display-anything-on-the-page-when-using-hcaptcha-in-invisible-mode" +#: helpers/react-select +# defaultMessage: Nessuna opzione +msgid "select_noOptionsMessage" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "select_risultati" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "select_risultato" +msgstr "" + #: formSchema # defaultMessage: Title msgid "title" diff --git a/locales/eu/LC_MESSAGES/volto.po b/locales/eu/LC_MESSAGES/volto.po index 9758168..ac3a6bf 100644 --- a/locales/eu/LC_MESSAGES/volto.po +++ b/locales/eu/LC_MESSAGES/volto.po @@ -23,6 +23,51 @@ msgstr "Gehitu eremua" msgid "Cancel" msgstr "Utzi" +#: components/Widget/SelectWidget +# defaultMessage: Choices +msgid "Choices" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Choose a file +msgid "Choose a file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Close +msgid "Close" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Date +msgid "Date" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Default +msgid "Default" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Description +msgid "Description" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to replace the existing file +msgid "Drop file here to replace the existing file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to upload a new file +msgid "Drop file here to upload a new file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop files here ... +msgid "Drop files here ..." +msgstr "" + #: components/FormView # defaultMessage: Error msgid "Error" @@ -33,6 +78,156 @@ msgstr "Errorea" msgid "Form" msgstr "Formularioa" +#: components/Widget/SelectWidget +# defaultMessage: No options +msgid "No options" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: No value +msgid "No value" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Replace existing file +msgid "Replace existing file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Required +msgid "Required" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Select… +msgid "Select…" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Short Name +msgid "Short Name" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Time +msgid "Time" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Title +msgid "Title" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Used for programmatic access to the fieldset. +msgid "Used for programmatic access to the fieldset." +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce Su e Giu per scegliere un'opzione +msgid "ay11_Use Up and Down to choose options" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibile +msgid "ay11_select available" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibili +msgid "ay11_select availables" +msgstr "" + +#: helpers/react-select +# defaultMessage: deselezionata +msgid "ay11_select deselected" +msgstr "" + +#: helpers/react-select +# defaultMessage: disabilitato +msgid "ay11_select disabled" +msgstr "" + +#: helpers/react-select +# defaultMessage: evidenziato +msgid "ay11_select focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: per la ricerca +msgid "ay11_select for search term" +msgstr "" + +#: helpers/react-select +# defaultMessage: è disabilitata. Seleziona un'altra opzione +msgid "ay11_select is disabled. Select another option." +msgstr "" + +#: helpers/react-select +# defaultMessage: opzione +msgid "ay11_select option" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "ay11_select result" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "ay11_select results" +msgstr "" + +#: helpers/react-select +# defaultMessage: selezionata +msgid "ay11_select selected" +msgstr "" + +#: helpers/react-select +# defaultMessage: valore +msgid "ay11_select value" +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce destra e sinistra per attivare o disattivare i valori evidenziati, premi Backspace per rimuovere il valore corrente evidenziato +msgid "ay11_select_Use left and right to toggle between focused values, press Backspace to remove the currently focused value" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Tab per selezionare l'opzione e uscire dal menu +msgid "ay11_select__press Tab to select the option and exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: digita per filtrare la lista +msgid "ay11_select__type to refine list" +msgstr "" + +#: helpers/react-select +# defaultMessage: è selezionato +msgid "ay11_select_is_focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi freccia giu per aprire il menu, premi Backspace per rimuovere il valore selezionato +msgid "ay11_select_press Down to open the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Invio per selezionare l'opzione corrente +msgid "ay11_select_press Enter to select the currently focused option" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Esc per uscire dal menu +msgid "ay11_select_press Escape to exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi la freccia a sinistra per evidenziare i valori selezionati +msgid "ay11_select_press left to focus selected values" +msgstr "" + #: formSchema # defaultMessage: Description msgid "description" @@ -225,7 +420,7 @@ msgid "form_useAsBCC" msgstr "" #: fieldSchema -# defaultMessage: If selected, a copy of email will be sent to this address. +# defaultMessage: If selected, a copy of email will alse be sent to this address. msgid "form_useAsBCC_description" msgstr "" @@ -249,6 +444,21 @@ msgstr "Captcha ikustezina" msgid "invisible_hcaptcha_desc" msgstr "Ikusi https://docs.hcaptcha.com/faq#do-i-need-to-display-anything-on-the-page-when-using-hcaptcha-in-invisible-mode" +#: helpers/react-select +# defaultMessage: Nessuna opzione +msgid "select_noOptionsMessage" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "select_risultati" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "select_risultato" +msgstr "" + #: formSchema # defaultMessage: Title msgid "title" diff --git a/locales/fr/LC_MESSAGES/volto.po b/locales/fr/LC_MESSAGES/volto.po index cc27e63..40da976 100644 --- a/locales/fr/LC_MESSAGES/volto.po +++ b/locales/fr/LC_MESSAGES/volto.po @@ -21,6 +21,51 @@ msgstr "Ajouter un champ" msgid "Cancel" msgstr "Annuler" +#: components/Widget/SelectWidget +# defaultMessage: Choices +msgid "Choices" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Choose a file +msgid "Choose a file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Close +msgid "Close" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Date +msgid "Date" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Default +msgid "Default" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Description +msgid "Description" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to replace the existing file +msgid "Drop file here to replace the existing file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to upload a new file +msgid "Drop file here to upload a new file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop files here ... +msgid "Drop files here ..." +msgstr "" + #: components/FormView # defaultMessage: Error msgid "Error" @@ -31,6 +76,156 @@ msgstr "Erreur" msgid "Form" msgstr "Formulaire" +#: components/Widget/SelectWidget +# defaultMessage: No options +msgid "No options" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: No value +msgid "No value" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Replace existing file +msgid "Replace existing file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Required +msgid "Required" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Select… +msgid "Select…" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Short Name +msgid "Short Name" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Time +msgid "Time" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Title +msgid "Title" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Used for programmatic access to the fieldset. +msgid "Used for programmatic access to the fieldset." +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce Su e Giu per scegliere un'opzione +msgid "ay11_Use Up and Down to choose options" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibile +msgid "ay11_select available" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibili +msgid "ay11_select availables" +msgstr "" + +#: helpers/react-select +# defaultMessage: deselezionata +msgid "ay11_select deselected" +msgstr "" + +#: helpers/react-select +# defaultMessage: disabilitato +msgid "ay11_select disabled" +msgstr "" + +#: helpers/react-select +# defaultMessage: evidenziato +msgid "ay11_select focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: per la ricerca +msgid "ay11_select for search term" +msgstr "" + +#: helpers/react-select +# defaultMessage: è disabilitata. Seleziona un'altra opzione +msgid "ay11_select is disabled. Select another option." +msgstr "" + +#: helpers/react-select +# defaultMessage: opzione +msgid "ay11_select option" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "ay11_select result" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "ay11_select results" +msgstr "" + +#: helpers/react-select +# defaultMessage: selezionata +msgid "ay11_select selected" +msgstr "" + +#: helpers/react-select +# defaultMessage: valore +msgid "ay11_select value" +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce destra e sinistra per attivare o disattivare i valori evidenziati, premi Backspace per rimuovere il valore corrente evidenziato +msgid "ay11_select_Use left and right to toggle between focused values, press Backspace to remove the currently focused value" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Tab per selezionare l'opzione e uscire dal menu +msgid "ay11_select__press Tab to select the option and exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: digita per filtrare la lista +msgid "ay11_select__type to refine list" +msgstr "" + +#: helpers/react-select +# defaultMessage: è selezionato +msgid "ay11_select_is_focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi freccia giu per aprire il menu, premi Backspace per rimuovere il valore selezionato +msgid "ay11_select_press Down to open the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Invio per selezionare l'opzione corrente +msgid "ay11_select_press Enter to select the currently focused option" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Esc per uscire dal menu +msgid "ay11_select_press Escape to exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi la freccia a sinistra per evidenziare i valori selezionati +msgid "ay11_select_press left to focus selected values" +msgstr "" + #: formSchema # defaultMessage: Description msgid "description" @@ -223,7 +418,7 @@ msgid "form_useAsBCC" msgstr "" #: fieldSchema -# defaultMessage: If selected, a copy of email will be sent to this address. +# defaultMessage: If selected, a copy of email will alse be sent to this address. msgid "form_useAsBCC_description" msgstr "" @@ -247,6 +442,21 @@ msgstr "" msgid "invisible_hcaptcha_desc" msgstr "" +#: helpers/react-select +# defaultMessage: Nessuna opzione +msgid "select_noOptionsMessage" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "select_risultati" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "select_risultato" +msgstr "" + #: formSchema # defaultMessage: Title msgid "title" diff --git a/locales/it/LC_MESSAGES/volto.po b/locales/it/LC_MESSAGES/volto.po index ff4c00e..9eab89d 100644 --- a/locales/it/LC_MESSAGES/volto.po +++ b/locales/it/LC_MESSAGES/volto.po @@ -21,6 +21,51 @@ msgstr "Aggiungi campo" msgid "Cancel" msgstr "Annulla" +#: components/Widget/SelectWidget +# defaultMessage: Choices +msgid "Choices" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Choose a file +msgid "Choose a file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Close +msgid "Close" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Date +msgid "Date" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Default +msgid "Default" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Description +msgid "Description" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to replace the existing file +msgid "Drop file here to replace the existing file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to upload a new file +msgid "Drop file here to upload a new file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop files here ... +msgid "Drop files here ..." +msgstr "" + #: components/FormView # defaultMessage: Error msgid "Error" @@ -31,6 +76,156 @@ msgstr "Errore" msgid "Form" msgstr "Form" +#: components/Widget/SelectWidget +# defaultMessage: No options +msgid "No options" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: No value +msgid "No value" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Replace existing file +msgid "Replace existing file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Required +msgid "Required" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Select… +msgid "Select…" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Short Name +msgid "Short Name" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Time +msgid "Time" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Title +msgid "Title" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Used for programmatic access to the fieldset. +msgid "Used for programmatic access to the fieldset." +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce Su e Giu per scegliere un'opzione +msgid "ay11_Use Up and Down to choose options" +msgstr "Usa le frecce Su e Giu per scegliere un'opzione" + +#: helpers/react-select +# defaultMessage: disponibile +msgid "ay11_select available" +msgstr "disponibile" + +#: helpers/react-select +# defaultMessage: disponibili +msgid "ay11_select availables" +msgstr "disponibili" + +#: helpers/react-select +# defaultMessage: deselezionata +msgid "ay11_select deselected" +msgstr "deselezionata" + +#: helpers/react-select +# defaultMessage: disabilitato +msgid "ay11_select disabled" +msgstr "disabilitato" + +#: helpers/react-select +# defaultMessage: evidenziato +msgid "ay11_select focused" +msgstr "evidenziato" + +#: helpers/react-select +# defaultMessage: per la ricerca +msgid "ay11_select for search term" +msgstr "per la ricerca" + +#: helpers/react-select +# defaultMessage: è disabilitata. Seleziona un'altra opzione +msgid "ay11_select is disabled. Select another option." +msgstr "è disabilitata. Seleziona un'altra opzione" + +#: helpers/react-select +# defaultMessage: opzione +msgid "ay11_select option" +msgstr "opzione" + +#: helpers/react-select +# defaultMessage: risultato +msgid "ay11_select result" +msgstr "risultato" + +#: helpers/react-select +# defaultMessage: risultati +msgid "ay11_select results" +msgstr "risultati" + +#: helpers/react-select +# defaultMessage: selezionata +msgid "ay11_select selected" +msgstr "selezionata" + +#: helpers/react-select +# defaultMessage: valore +msgid "ay11_select value" +msgstr "valore" + +#: helpers/react-select +# defaultMessage: Usa le frecce destra e sinistra per attivare o disattivare i valori evidenziati, premi Backspace per rimuovere il valore corrente evidenziato +msgid "ay11_select_Use left and right to toggle between focused values, press Backspace to remove the currently focused value" +msgstr "Usa le frecce destra e sinistra per attivare o disattivare i valori evidenziati, premi Backspace per rimuovere il valore corrente evidenziato" + +#: helpers/react-select +# defaultMessage: premi Tab per selezionare l'opzione e uscire dal menu +msgid "ay11_select__press Tab to select the option and exit the menu" +msgstr "premi Tab per selezionare l'opzione e uscire dal menu" + +#: helpers/react-select +# defaultMessage: digita per filtrare la lista +msgid "ay11_select__type to refine list" +msgstr "digita per filtrare la lista" + +#: helpers/react-select +# defaultMessage: è selezionato +msgid "ay11_select_is_focused" +msgstr "è selezionato" + +#: helpers/react-select +# defaultMessage: premi freccia giu per aprire il menu, premi Backspace per rimuovere il valore selezionato +msgid "ay11_select_press Down to open the menu" +msgstr "premi freccia giu per aprire il menu, premi Backspace per rimuovere il valore selezionato" + +#: helpers/react-select +# defaultMessage: premi Invio per selezionare l'opzione corrente +msgid "ay11_select_press Enter to select the currently focused option" +msgstr "premi Invio per selezionare l'opzione corrente" + +#: helpers/react-select +# defaultMessage: premi Esc per uscire dal menu +msgid "ay11_select_press Escape to exit the menu" +msgstr "premi Esc per uscire dal menu" + +#: helpers/react-select +# defaultMessage: premi la freccia a sinistra per evidenziare i valori selezionati +msgid "ay11_select_press left to focus selected values" +msgstr "premi la freccia a sinistra per evidenziare i valori selezionati" + #: formSchema # defaultMessage: Description msgid "description" @@ -223,7 +418,7 @@ msgid "form_useAsBCC" msgstr "Invia una copia dell'email a questo indirizzo" #: fieldSchema -# defaultMessage: If selected, a copy of email will be sent to this address. +# defaultMessage: If selected, a copy of email will alse be sent to this address. msgid "form_useAsBCC_description" msgstr "Se selezionato, una copia dell'email verrà inviata anche a questo indirizzo." @@ -247,6 +442,21 @@ msgstr "Captcha invisibile" msgid "invisible_hcaptcha_desc" msgstr "Leggi https://docs.hcaptcha.com/faq#do-i-need-to-display-anything-on-the-page-when-using-hcaptcha-in-invisible-mode" +#: helpers/react-select +# defaultMessage: Nessuna opzione +msgid "select_noOptionsMessage" +msgstr "Nessuna opzione" + +#: helpers/react-select +# defaultMessage: risultati +msgid "select_risultati" +msgstr "risultati" + +#: helpers/react-select +# defaultMessage: risultato +msgid "select_risultato" +msgstr "risultato" + #: formSchema # defaultMessage: Title msgid "title" diff --git a/locales/ja/LC_MESSAGES/volto.po b/locales/ja/LC_MESSAGES/volto.po index 75ede8e..257f20d 100644 --- a/locales/ja/LC_MESSAGES/volto.po +++ b/locales/ja/LC_MESSAGES/volto.po @@ -21,6 +21,51 @@ msgstr "" msgid "Cancel" msgstr "" +#: components/Widget/SelectWidget +# defaultMessage: Choices +msgid "Choices" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Choose a file +msgid "Choose a file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Close +msgid "Close" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Date +msgid "Date" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Default +msgid "Default" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Description +msgid "Description" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to replace the existing file +msgid "Drop file here to replace the existing file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to upload a new file +msgid "Drop file here to upload a new file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop files here ... +msgid "Drop files here ..." +msgstr "" + #: components/FormView # defaultMessage: Error msgid "Error" @@ -31,6 +76,156 @@ msgstr "" msgid "Form" msgstr "" +#: components/Widget/SelectWidget +# defaultMessage: No options +msgid "No options" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: No value +msgid "No value" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Replace existing file +msgid "Replace existing file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Required +msgid "Required" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Select… +msgid "Select…" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Short Name +msgid "Short Name" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Time +msgid "Time" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Title +msgid "Title" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Used for programmatic access to the fieldset. +msgid "Used for programmatic access to the fieldset." +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce Su e Giu per scegliere un'opzione +msgid "ay11_Use Up and Down to choose options" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibile +msgid "ay11_select available" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibili +msgid "ay11_select availables" +msgstr "" + +#: helpers/react-select +# defaultMessage: deselezionata +msgid "ay11_select deselected" +msgstr "" + +#: helpers/react-select +# defaultMessage: disabilitato +msgid "ay11_select disabled" +msgstr "" + +#: helpers/react-select +# defaultMessage: evidenziato +msgid "ay11_select focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: per la ricerca +msgid "ay11_select for search term" +msgstr "" + +#: helpers/react-select +# defaultMessage: è disabilitata. Seleziona un'altra opzione +msgid "ay11_select is disabled. Select another option." +msgstr "" + +#: helpers/react-select +# defaultMessage: opzione +msgid "ay11_select option" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "ay11_select result" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "ay11_select results" +msgstr "" + +#: helpers/react-select +# defaultMessage: selezionata +msgid "ay11_select selected" +msgstr "" + +#: helpers/react-select +# defaultMessage: valore +msgid "ay11_select value" +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce destra e sinistra per attivare o disattivare i valori evidenziati, premi Backspace per rimuovere il valore corrente evidenziato +msgid "ay11_select_Use left and right to toggle between focused values, press Backspace to remove the currently focused value" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Tab per selezionare l'opzione e uscire dal menu +msgid "ay11_select__press Tab to select the option and exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: digita per filtrare la lista +msgid "ay11_select__type to refine list" +msgstr "" + +#: helpers/react-select +# defaultMessage: è selezionato +msgid "ay11_select_is_focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi freccia giu per aprire il menu, premi Backspace per rimuovere il valore selezionato +msgid "ay11_select_press Down to open the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Invio per selezionare l'opzione corrente +msgid "ay11_select_press Enter to select the currently focused option" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Esc per uscire dal menu +msgid "ay11_select_press Escape to exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi la freccia a sinistra per evidenziare i valori selezionati +msgid "ay11_select_press left to focus selected values" +msgstr "" + #: formSchema # defaultMessage: Description msgid "description" @@ -223,7 +418,7 @@ msgid "form_useAsBCC" msgstr "" #: fieldSchema -# defaultMessage: If selected, a copy of email will be sent to this address. +# defaultMessage: If selected, a copy of email will alse be sent to this address. msgid "form_useAsBCC_description" msgstr "" @@ -247,6 +442,21 @@ msgstr "" msgid "invisible_hcaptcha_desc" msgstr "" +#: helpers/react-select +# defaultMessage: Nessuna opzione +msgid "select_noOptionsMessage" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "select_risultati" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "select_risultato" +msgstr "" + #: formSchema # defaultMessage: Title msgid "title" diff --git a/locales/nl/LC_MESSAGES/volto.po b/locales/nl/LC_MESSAGES/volto.po index 75ede8e..257f20d 100644 --- a/locales/nl/LC_MESSAGES/volto.po +++ b/locales/nl/LC_MESSAGES/volto.po @@ -21,6 +21,51 @@ msgstr "" msgid "Cancel" msgstr "" +#: components/Widget/SelectWidget +# defaultMessage: Choices +msgid "Choices" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Choose a file +msgid "Choose a file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Close +msgid "Close" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Date +msgid "Date" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Default +msgid "Default" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Description +msgid "Description" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to replace the existing file +msgid "Drop file here to replace the existing file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to upload a new file +msgid "Drop file here to upload a new file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop files here ... +msgid "Drop files here ..." +msgstr "" + #: components/FormView # defaultMessage: Error msgid "Error" @@ -31,6 +76,156 @@ msgstr "" msgid "Form" msgstr "" +#: components/Widget/SelectWidget +# defaultMessage: No options +msgid "No options" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: No value +msgid "No value" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Replace existing file +msgid "Replace existing file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Required +msgid "Required" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Select… +msgid "Select…" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Short Name +msgid "Short Name" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Time +msgid "Time" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Title +msgid "Title" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Used for programmatic access to the fieldset. +msgid "Used for programmatic access to the fieldset." +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce Su e Giu per scegliere un'opzione +msgid "ay11_Use Up and Down to choose options" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibile +msgid "ay11_select available" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibili +msgid "ay11_select availables" +msgstr "" + +#: helpers/react-select +# defaultMessage: deselezionata +msgid "ay11_select deselected" +msgstr "" + +#: helpers/react-select +# defaultMessage: disabilitato +msgid "ay11_select disabled" +msgstr "" + +#: helpers/react-select +# defaultMessage: evidenziato +msgid "ay11_select focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: per la ricerca +msgid "ay11_select for search term" +msgstr "" + +#: helpers/react-select +# defaultMessage: è disabilitata. Seleziona un'altra opzione +msgid "ay11_select is disabled. Select another option." +msgstr "" + +#: helpers/react-select +# defaultMessage: opzione +msgid "ay11_select option" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "ay11_select result" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "ay11_select results" +msgstr "" + +#: helpers/react-select +# defaultMessage: selezionata +msgid "ay11_select selected" +msgstr "" + +#: helpers/react-select +# defaultMessage: valore +msgid "ay11_select value" +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce destra e sinistra per attivare o disattivare i valori evidenziati, premi Backspace per rimuovere il valore corrente evidenziato +msgid "ay11_select_Use left and right to toggle between focused values, press Backspace to remove the currently focused value" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Tab per selezionare l'opzione e uscire dal menu +msgid "ay11_select__press Tab to select the option and exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: digita per filtrare la lista +msgid "ay11_select__type to refine list" +msgstr "" + +#: helpers/react-select +# defaultMessage: è selezionato +msgid "ay11_select_is_focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi freccia giu per aprire il menu, premi Backspace per rimuovere il valore selezionato +msgid "ay11_select_press Down to open the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Invio per selezionare l'opzione corrente +msgid "ay11_select_press Enter to select the currently focused option" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Esc per uscire dal menu +msgid "ay11_select_press Escape to exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi la freccia a sinistra per evidenziare i valori selezionati +msgid "ay11_select_press left to focus selected values" +msgstr "" + #: formSchema # defaultMessage: Description msgid "description" @@ -223,7 +418,7 @@ msgid "form_useAsBCC" msgstr "" #: fieldSchema -# defaultMessage: If selected, a copy of email will be sent to this address. +# defaultMessage: If selected, a copy of email will alse be sent to this address. msgid "form_useAsBCC_description" msgstr "" @@ -247,6 +442,21 @@ msgstr "" msgid "invisible_hcaptcha_desc" msgstr "" +#: helpers/react-select +# defaultMessage: Nessuna opzione +msgid "select_noOptionsMessage" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "select_risultati" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "select_risultato" +msgstr "" + #: formSchema # defaultMessage: Title msgid "title" diff --git a/locales/pt/LC_MESSAGES/volto.po b/locales/pt/LC_MESSAGES/volto.po index 75ede8e..257f20d 100644 --- a/locales/pt/LC_MESSAGES/volto.po +++ b/locales/pt/LC_MESSAGES/volto.po @@ -21,6 +21,51 @@ msgstr "" msgid "Cancel" msgstr "" +#: components/Widget/SelectWidget +# defaultMessage: Choices +msgid "Choices" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Choose a file +msgid "Choose a file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Close +msgid "Close" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Date +msgid "Date" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Default +msgid "Default" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Description +msgid "Description" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to replace the existing file +msgid "Drop file here to replace the existing file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to upload a new file +msgid "Drop file here to upload a new file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop files here ... +msgid "Drop files here ..." +msgstr "" + #: components/FormView # defaultMessage: Error msgid "Error" @@ -31,6 +76,156 @@ msgstr "" msgid "Form" msgstr "" +#: components/Widget/SelectWidget +# defaultMessage: No options +msgid "No options" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: No value +msgid "No value" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Replace existing file +msgid "Replace existing file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Required +msgid "Required" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Select… +msgid "Select…" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Short Name +msgid "Short Name" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Time +msgid "Time" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Title +msgid "Title" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Used for programmatic access to the fieldset. +msgid "Used for programmatic access to the fieldset." +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce Su e Giu per scegliere un'opzione +msgid "ay11_Use Up and Down to choose options" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibile +msgid "ay11_select available" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibili +msgid "ay11_select availables" +msgstr "" + +#: helpers/react-select +# defaultMessage: deselezionata +msgid "ay11_select deselected" +msgstr "" + +#: helpers/react-select +# defaultMessage: disabilitato +msgid "ay11_select disabled" +msgstr "" + +#: helpers/react-select +# defaultMessage: evidenziato +msgid "ay11_select focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: per la ricerca +msgid "ay11_select for search term" +msgstr "" + +#: helpers/react-select +# defaultMessage: è disabilitata. Seleziona un'altra opzione +msgid "ay11_select is disabled. Select another option." +msgstr "" + +#: helpers/react-select +# defaultMessage: opzione +msgid "ay11_select option" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "ay11_select result" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "ay11_select results" +msgstr "" + +#: helpers/react-select +# defaultMessage: selezionata +msgid "ay11_select selected" +msgstr "" + +#: helpers/react-select +# defaultMessage: valore +msgid "ay11_select value" +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce destra e sinistra per attivare o disattivare i valori evidenziati, premi Backspace per rimuovere il valore corrente evidenziato +msgid "ay11_select_Use left and right to toggle between focused values, press Backspace to remove the currently focused value" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Tab per selezionare l'opzione e uscire dal menu +msgid "ay11_select__press Tab to select the option and exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: digita per filtrare la lista +msgid "ay11_select__type to refine list" +msgstr "" + +#: helpers/react-select +# defaultMessage: è selezionato +msgid "ay11_select_is_focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi freccia giu per aprire il menu, premi Backspace per rimuovere il valore selezionato +msgid "ay11_select_press Down to open the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Invio per selezionare l'opzione corrente +msgid "ay11_select_press Enter to select the currently focused option" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Esc per uscire dal menu +msgid "ay11_select_press Escape to exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi la freccia a sinistra per evidenziare i valori selezionati +msgid "ay11_select_press left to focus selected values" +msgstr "" + #: formSchema # defaultMessage: Description msgid "description" @@ -223,7 +418,7 @@ msgid "form_useAsBCC" msgstr "" #: fieldSchema -# defaultMessage: If selected, a copy of email will be sent to this address. +# defaultMessage: If selected, a copy of email will alse be sent to this address. msgid "form_useAsBCC_description" msgstr "" @@ -247,6 +442,21 @@ msgstr "" msgid "invisible_hcaptcha_desc" msgstr "" +#: helpers/react-select +# defaultMessage: Nessuna opzione +msgid "select_noOptionsMessage" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "select_risultati" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "select_risultato" +msgstr "" + #: formSchema # defaultMessage: Title msgid "title" diff --git a/locales/pt_BR/LC_MESSAGES/volto.po b/locales/pt_BR/LC_MESSAGES/volto.po index 22d2070..76e4d0c 100644 --- a/locales/pt_BR/LC_MESSAGES/volto.po +++ b/locales/pt_BR/LC_MESSAGES/volto.po @@ -27,6 +27,51 @@ msgstr "Adicionar campo" msgid "Cancel" msgstr "Cancelar" +#: components/Widget/SelectWidget +# defaultMessage: Choices +msgid "Choices" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Choose a file +msgid "Choose a file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Close +msgid "Close" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Date +msgid "Date" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Default +msgid "Default" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Description +msgid "Description" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to replace the existing file +msgid "Drop file here to replace the existing file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to upload a new file +msgid "Drop file here to upload a new file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop files here ... +msgid "Drop files here ..." +msgstr "" + #: components/FormView # defaultMessage: Error msgid "Error" @@ -37,6 +82,156 @@ msgstr "Erro" msgid "Form" msgstr "Formulário" +#: components/Widget/SelectWidget +# defaultMessage: No options +msgid "No options" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: No value +msgid "No value" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Replace existing file +msgid "Replace existing file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Required +msgid "Required" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Select… +msgid "Select…" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Short Name +msgid "Short Name" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Time +msgid "Time" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Title +msgid "Title" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Used for programmatic access to the fieldset. +msgid "Used for programmatic access to the fieldset." +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce Su e Giu per scegliere un'opzione +msgid "ay11_Use Up and Down to choose options" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibile +msgid "ay11_select available" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibili +msgid "ay11_select availables" +msgstr "" + +#: helpers/react-select +# defaultMessage: deselezionata +msgid "ay11_select deselected" +msgstr "" + +#: helpers/react-select +# defaultMessage: disabilitato +msgid "ay11_select disabled" +msgstr "" + +#: helpers/react-select +# defaultMessage: evidenziato +msgid "ay11_select focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: per la ricerca +msgid "ay11_select for search term" +msgstr "" + +#: helpers/react-select +# defaultMessage: è disabilitata. Seleziona un'altra opzione +msgid "ay11_select is disabled. Select another option." +msgstr "" + +#: helpers/react-select +# defaultMessage: opzione +msgid "ay11_select option" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "ay11_select result" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "ay11_select results" +msgstr "" + +#: helpers/react-select +# defaultMessage: selezionata +msgid "ay11_select selected" +msgstr "" + +#: helpers/react-select +# defaultMessage: valore +msgid "ay11_select value" +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce destra e sinistra per attivare o disattivare i valori evidenziati, premi Backspace per rimuovere il valore corrente evidenziato +msgid "ay11_select_Use left and right to toggle between focused values, press Backspace to remove the currently focused value" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Tab per selezionare l'opzione e uscire dal menu +msgid "ay11_select__press Tab to select the option and exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: digita per filtrare la lista +msgid "ay11_select__type to refine list" +msgstr "" + +#: helpers/react-select +# defaultMessage: è selezionato +msgid "ay11_select_is_focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi freccia giu per aprire il menu, premi Backspace per rimuovere il valore selezionato +msgid "ay11_select_press Down to open the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Invio per selezionare l'opzione corrente +msgid "ay11_select_press Enter to select the currently focused option" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Esc per uscire dal menu +msgid "ay11_select_press Escape to exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi la freccia a sinistra per evidenziare i valori selezionati +msgid "ay11_select_press left to focus selected values" +msgstr "" + #: formSchema # defaultMessage: Description msgid "description" @@ -229,7 +424,7 @@ msgid "form_useAsBCC" msgstr "" #: fieldSchema -# defaultMessage: If selected, a copy of email will be sent to this address. +# defaultMessage: If selected, a copy of email will alse be sent to this address. msgid "form_useAsBCC_description" msgstr "" @@ -253,6 +448,21 @@ msgstr "Captcha invisível" msgid "invisible_hcaptcha_desc" msgstr "Leia mais em https://docs.hcaptcha.com/faq#do-i-need-to-display-anything-on-the-page-when-using-hcaptcha-in-invisible-mode" +#: helpers/react-select +# defaultMessage: Nessuna opzione +msgid "select_noOptionsMessage" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "select_risultati" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "select_risultato" +msgstr "" + #: formSchema # defaultMessage: Title msgid "title" diff --git a/locales/ro/LC_MESSAGES/volto.po b/locales/ro/LC_MESSAGES/volto.po index 75ede8e..257f20d 100644 --- a/locales/ro/LC_MESSAGES/volto.po +++ b/locales/ro/LC_MESSAGES/volto.po @@ -21,6 +21,51 @@ msgstr "" msgid "Cancel" msgstr "" +#: components/Widget/SelectWidget +# defaultMessage: Choices +msgid "Choices" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Choose a file +msgid "Choose a file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Close +msgid "Close" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Date +msgid "Date" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Default +msgid "Default" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Description +msgid "Description" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to replace the existing file +msgid "Drop file here to replace the existing file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to upload a new file +msgid "Drop file here to upload a new file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop files here ... +msgid "Drop files here ..." +msgstr "" + #: components/FormView # defaultMessage: Error msgid "Error" @@ -31,6 +76,156 @@ msgstr "" msgid "Form" msgstr "" +#: components/Widget/SelectWidget +# defaultMessage: No options +msgid "No options" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: No value +msgid "No value" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Replace existing file +msgid "Replace existing file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Required +msgid "Required" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Select… +msgid "Select…" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Short Name +msgid "Short Name" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Time +msgid "Time" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Title +msgid "Title" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Used for programmatic access to the fieldset. +msgid "Used for programmatic access to the fieldset." +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce Su e Giu per scegliere un'opzione +msgid "ay11_Use Up and Down to choose options" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibile +msgid "ay11_select available" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibili +msgid "ay11_select availables" +msgstr "" + +#: helpers/react-select +# defaultMessage: deselezionata +msgid "ay11_select deselected" +msgstr "" + +#: helpers/react-select +# defaultMessage: disabilitato +msgid "ay11_select disabled" +msgstr "" + +#: helpers/react-select +# defaultMessage: evidenziato +msgid "ay11_select focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: per la ricerca +msgid "ay11_select for search term" +msgstr "" + +#: helpers/react-select +# defaultMessage: è disabilitata. Seleziona un'altra opzione +msgid "ay11_select is disabled. Select another option." +msgstr "" + +#: helpers/react-select +# defaultMessage: opzione +msgid "ay11_select option" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "ay11_select result" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "ay11_select results" +msgstr "" + +#: helpers/react-select +# defaultMessage: selezionata +msgid "ay11_select selected" +msgstr "" + +#: helpers/react-select +# defaultMessage: valore +msgid "ay11_select value" +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce destra e sinistra per attivare o disattivare i valori evidenziati, premi Backspace per rimuovere il valore corrente evidenziato +msgid "ay11_select_Use left and right to toggle between focused values, press Backspace to remove the currently focused value" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Tab per selezionare l'opzione e uscire dal menu +msgid "ay11_select__press Tab to select the option and exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: digita per filtrare la lista +msgid "ay11_select__type to refine list" +msgstr "" + +#: helpers/react-select +# defaultMessage: è selezionato +msgid "ay11_select_is_focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi freccia giu per aprire il menu, premi Backspace per rimuovere il valore selezionato +msgid "ay11_select_press Down to open the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Invio per selezionare l'opzione corrente +msgid "ay11_select_press Enter to select the currently focused option" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Esc per uscire dal menu +msgid "ay11_select_press Escape to exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi la freccia a sinistra per evidenziare i valori selezionati +msgid "ay11_select_press left to focus selected values" +msgstr "" + #: formSchema # defaultMessage: Description msgid "description" @@ -223,7 +418,7 @@ msgid "form_useAsBCC" msgstr "" #: fieldSchema -# defaultMessage: If selected, a copy of email will be sent to this address. +# defaultMessage: If selected, a copy of email will alse be sent to this address. msgid "form_useAsBCC_description" msgstr "" @@ -247,6 +442,21 @@ msgstr "" msgid "invisible_hcaptcha_desc" msgstr "" +#: helpers/react-select +# defaultMessage: Nessuna opzione +msgid "select_noOptionsMessage" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "select_risultati" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "select_risultato" +msgstr "" + #: formSchema # defaultMessage: Title msgid "title" diff --git a/locales/volto.pot b/locales/volto.pot index fbdf86c..4448e32 100644 --- a/locales/volto.pot +++ b/locales/volto.pot @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: Plone\n" -"POT-Creation-Date: 2022-03-24T09:14:19.679Z\n" +"POT-Creation-Date: 2022-07-07T10:05:12.698Z\n" "Last-Translator: Plone i18n \n" "Language-Team: Plone i18n \n" "MIME-Version: 1.0\n" @@ -23,6 +23,51 @@ msgstr "" msgid "Cancel" msgstr "" +#: components/Widget/SelectWidget +# defaultMessage: Choices +msgid "Choices" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Choose a file +msgid "Choose a file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Close +msgid "Close" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Date +msgid "Date" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Default +msgid "Default" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Description +msgid "Description" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to replace the existing file +msgid "Drop file here to replace the existing file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop file here to upload a new file +msgid "Drop file here to upload a new file" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Drop files here ... +msgid "Drop files here ..." +msgstr "" + #: components/FormView # defaultMessage: Error msgid "Error" @@ -33,6 +78,156 @@ msgstr "" msgid "Form" msgstr "" +#: components/Widget/SelectWidget +# defaultMessage: No options +msgid "No options" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: No value +msgid "No value" +msgstr "" + +#: components/Widget/FileWidget +# defaultMessage: Replace existing file +msgid "Replace existing file" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Required +msgid "Required" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Select… +msgid "Select…" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Short Name +msgid "Short Name" +msgstr "" + +#: components/Widget/DatetimeWidget +# defaultMessage: Time +msgid "Time" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Title +msgid "Title" +msgstr "" + +#: components/Widget/SelectWidget +# defaultMessage: Used for programmatic access to the fieldset. +msgid "Used for programmatic access to the fieldset." +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce Su e Giu per scegliere un'opzione +msgid "ay11_Use Up and Down to choose options" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibile +msgid "ay11_select available" +msgstr "" + +#: helpers/react-select +# defaultMessage: disponibili +msgid "ay11_select availables" +msgstr "" + +#: helpers/react-select +# defaultMessage: deselezionata +msgid "ay11_select deselected" +msgstr "" + +#: helpers/react-select +# defaultMessage: disabilitato +msgid "ay11_select disabled" +msgstr "" + +#: helpers/react-select +# defaultMessage: evidenziato +msgid "ay11_select focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: per la ricerca +msgid "ay11_select for search term" +msgstr "" + +#: helpers/react-select +# defaultMessage: è disabilitata. Seleziona un'altra opzione +msgid "ay11_select is disabled. Select another option." +msgstr "" + +#: helpers/react-select +# defaultMessage: opzione +msgid "ay11_select option" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "ay11_select result" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "ay11_select results" +msgstr "" + +#: helpers/react-select +# defaultMessage: selezionata +msgid "ay11_select selected" +msgstr "" + +#: helpers/react-select +# defaultMessage: valore +msgid "ay11_select value" +msgstr "" + +#: helpers/react-select +# defaultMessage: Usa le frecce destra e sinistra per attivare o disattivare i valori evidenziati, premi Backspace per rimuovere il valore corrente evidenziato +msgid "ay11_select_Use left and right to toggle between focused values, press Backspace to remove the currently focused value" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Tab per selezionare l'opzione e uscire dal menu +msgid "ay11_select__press Tab to select the option and exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: digita per filtrare la lista +msgid "ay11_select__type to refine list" +msgstr "" + +#: helpers/react-select +# defaultMessage: è selezionato +msgid "ay11_select_is_focused" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi freccia giu per aprire il menu, premi Backspace per rimuovere il valore selezionato +msgid "ay11_select_press Down to open the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Invio per selezionare l'opzione corrente +msgid "ay11_select_press Enter to select the currently focused option" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi Esc per uscire dal menu +msgid "ay11_select_press Escape to exit the menu" +msgstr "" + +#: helpers/react-select +# defaultMessage: premi la freccia a sinistra per evidenziare i valori selezionati +msgid "ay11_select_press left to focus selected values" +msgstr "" + #: formSchema # defaultMessage: Description msgid "description" @@ -225,7 +420,7 @@ msgid "form_useAsBCC" msgstr "" #: fieldSchema -# defaultMessage: If selected, a copy of email will be sent to this address. +# defaultMessage: If selected, a copy of email will alse be sent to this address. msgid "form_useAsBCC_description" msgstr "" @@ -249,6 +444,21 @@ msgstr "" msgid "invisible_hcaptcha_desc" msgstr "" +#: helpers/react-select +# defaultMessage: Nessuna opzione +msgid "select_noOptionsMessage" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultati +msgid "select_risultati" +msgstr "" + +#: helpers/react-select +# defaultMessage: risultato +msgid "select_risultato" +msgstr "" + #: formSchema # defaultMessage: Title msgid "title" diff --git a/src/components/Field.jsx b/src/components/Field.jsx index 978f124..9eb8916 100644 --- a/src/components/Field.jsx +++ b/src/components/Field.jsx @@ -2,15 +2,15 @@ import React from 'react'; import PropTypes from 'prop-types'; import { useIntl, defineMessages } from 'react-intl'; -import TextWidget from '@plone/volto/components/manage/Widgets/TextWidget'; -import TextareaWidget from '@plone/volto/components/manage/Widgets/TextareaWidget'; -import SelectWidget from '@plone/volto/components/manage/Widgets/SelectWidget'; -import EmailWidget from '@plone/volto/components/manage/Widgets/EmailWidget'; -import FileWidget from '@plone/volto/components/manage/Widgets/FileWidget'; -import CheckboxWidget from '@plone/volto/components/manage/Widgets/CheckboxWidget'; import WysiwygWidget from '@plone/volto/components/manage/Widgets/WysiwygWidget'; -import { DatetimeWidget } from '@plone/volto/components'; +import EmailWidget from './Widget/EmailWidget'; +import FileWidget from './Widget/FileWidget'; +import DatetimeWidget from './Widget/DatetimeWidget'; +import CheckboxWidget from './Widget/CheckboxWidget'; +import SelectWidget from './Widget/SelectWidget'; +import TextWidget from './Widget/TextWidget'; +import TextareaWidget from './Widget/TextareaWidget'; import CheckboxListWidget from './Widget/CheckboxListWidget'; import RadioWidget from './Widget/RadioWidget'; @@ -98,6 +98,7 @@ const Field = ({ classNamePrefix="react-select" isDisabled={disabled} invalid={isInvalid().toString()} + required={required} {...(isInvalid() ? { className: 'is-invalid' } : {})} /> )} @@ -160,6 +161,7 @@ const Field = ({ onChange={onChange} value={value} isDisabled={disabled} + required={required} invalid={isInvalid().toString()} {...(isInvalid() ? { className: 'is-invalid' } : {})} /> diff --git a/src/components/Widget/CheckboxListWidget.jsx b/src/components/Widget/CheckboxListWidget.jsx index 61e37f7..80da4c5 100644 --- a/src/components/Widget/CheckboxListWidget.jsx +++ b/src/components/Widget/CheckboxListWidget.jsx @@ -27,6 +27,7 @@ const CheckboxListWidget = ({ fieldSet, isDisabled, wrapped, + invalid, }) => { const updateValueList = (val, checked) => { let newValue = new Set([...(value || [])]); @@ -36,6 +37,17 @@ const CheckboxListWidget = ({ onChange(id, [...newValue]); }; + let attributes = {}; + if (required) { + attributes.required = true; + attributes['aria-required'] = true; + } + + const isInvalid = invalid === true || invalid === 'true'; + if (isInvalid) { + attributes['aria-invalid'] = true; + } + return ( {opt.label} } + {...attributes} /> ))} diff --git a/src/components/Widget/CheckboxWidget.jsx b/src/components/Widget/CheckboxWidget.jsx new file mode 100644 index 0000000..a5ed50c --- /dev/null +++ b/src/components/Widget/CheckboxWidget.jsx @@ -0,0 +1,94 @@ +/** + * CheckboxWidget component. + * @module components/manage/Widgets/CheckboxWidget + * added aria- attributes + */ + +import React from 'react'; +import PropTypes from 'prop-types'; +import { Checkbox } from 'semantic-ui-react'; + +import { injectIntl } from 'react-intl'; +import { FormFieldWrapper } from '@plone/volto/components'; + +/** + * CheckboxWidget component class. + * @function CheckboxWidget + * @returns {string} Markup of the component. + * + * To use it, in schema properties, declare a field like: + * + * ```jsx + * { + * title: "Active", + * type: 'boolean', + * } + * ``` + */ +const CheckboxWidget = (props) => { + const { id, title, value, onChange, isDisabled, required, invalid } = props; + + let attributes = {}; + if (required) { + attributes.required = true; + attributes['aria-required'] = 'true'; + } + + const isInvalid = invalid === true || invalid === 'true'; + if (isInvalid) { + attributes['aria-invalid'] = true; + } + + return ( + +
+ { + onChange(id, checked); + }} + aria-required={required ? 'true' : 'false'} + label={} + {...attributes} + /> +
+
+ ); +}; + +/** + * Property types. + * @property {Object} propTypes Property types. + * @static + */ +CheckboxWidget.propTypes = { + id: PropTypes.string.isRequired, + title: PropTypes.string.isRequired, + description: PropTypes.string, + required: PropTypes.bool, + error: PropTypes.arrayOf(PropTypes.string), + value: PropTypes.bool, + onChange: PropTypes.func, + onEdit: PropTypes.func, + onDelete: PropTypes.func, + wrapped: PropTypes.bool, +}; + +/** + * Default properties. + * @property {Object} defaultProps Default properties. + * @static + */ +CheckboxWidget.defaultProps = { + description: null, + required: false, + error: [], + value: null, + onChange: null, + onEdit: null, + onDelete: null, +}; + +export default injectIntl(CheckboxWidget); diff --git a/src/components/Widget/DatetimeWidget.jsx b/src/components/Widget/DatetimeWidget.jsx new file mode 100644 index 0000000..69c7742 --- /dev/null +++ b/src/components/Widget/DatetimeWidget.jsx @@ -0,0 +1,308 @@ +/** + * DatetimeWidget component. + * @module components/manage/Widgets/DatetimeWidget + * added aria- attributes + */ +import React, { Component } from 'react'; +import { compose } from 'redux'; +import PropTypes from 'prop-types'; +import { defineMessages, injectIntl } from 'react-intl'; +import loadable from '@loadable/component'; +import cx from 'classnames'; +import { Icon, FormFieldWrapper } from '@plone/volto/components'; +import { parseDateTime } from '@plone/volto/helpers'; +import { injectLazyLibs } from '@plone/volto/helpers/Loadable/Loadable'; + +import leftKey from '@plone/volto/icons/left-key.svg'; +import rightKey from '@plone/volto/icons/right-key.svg'; +import clearSVG from '@plone/volto/icons/clear.svg'; + +import 'rc-time-picker/assets/index.css'; +import 'react-dates/initialize'; +import 'react-dates/lib/css/_datepicker.css'; + +const TimePicker = loadable(() => import('rc-time-picker')); + +const messages = defineMessages({ + date: { + id: 'Date', + defaultMessage: 'Date', + }, + time: { + id: 'Time', + defaultMessage: 'Time', + }, +}); + +const PrevIcon = () => ( +
+ +
+); +const NextIcon = () => ( +
+ +
+); + +const defaultTimeDateOnly = { + hour: 12, + minute: 0, + second: 0, +}; + +/** + * DatetimeWidget component class + * @class DatetimeWidget + * @extends Component + * + * To use it, in schema properties, declare a field like: + * + * ```jsx + * { + * title: "Publish date", + * type: 'datetime', + * } + * ``` + */ +export class DatetimeWidgetComponent extends Component { + /** + * Constructor + * @method constructor + * @param {Object} props Component properties + * @constructs DatetimeWidget + */ + constructor(props) { + super(props); + this.moment = props.moment.default; + + this.state = { + focused: false, + // if passed value matches the construction time, we guess it's a default + isDefault: + parseDateTime( + this.props.intl.locale, + this.props.value, + undefined, + this.moment, + )?.toISOString() === this.moment().utc().toISOString(), + }; + } + + getInternalValue() { + return parseDateTime( + this.props.intl.locale, + this.props.value, + undefined, + this.moment, + ); + } + + getDateOnly() { + return this.props.dateOnly || this.props.widget === 'date'; + } + + /** + * Update date storage + * @method onDateChange + * @param {Object} date updated momentjs Object for date + * @returns {undefined} + */ + onDateChange = (date) => { + if (date) { + const moment = this.props.moment.default; + const isDateOnly = this.getDateOnly(); + const base = (this.getInternalValue() || moment()).set({ + year: date.year(), + month: date.month(), + date: date.date(), + ...(isDateOnly ? defaultTimeDateOnly : {}), + }); + const dateValue = isDateOnly + ? base.format('YYYY-MM-DD') + : base.toISOString(); + this.props.onChange(this.props.id, dateValue); + } + this.setState({ isDefault: false }); + }; + + /** + * Update date storage + * @method onTimeChange + * @param {Object} time updated momentjs Object for time + * @returns {undefined} + */ + onTimeChange = (time) => { + const moment = this.props.moment.default; + if (time) { + const base = (this.getInternalValue() || moment()).set({ + hours: time?.hours() ?? 0, + minutes: time?.minutes() ?? 0, + seconds: 0, + }); + const dateValue = base.toISOString(); + this.props.onChange(this.props.id, dateValue); + } + }; + + onResetDates = () => { + this.setState({ isDefault: false }); + this.props.onChange(this.props.id, null); + }; + + /** + * Handle SingleDatePicker focus + * @method onFocusChange + * @param {boolean} focused component focus state. + * @returns {undefined} + */ + onFocusChange = ({ focused }) => this.setState({ focused }); + + render() { + const { + id, + resettable, + intl, + reactDates, + widgetOptions, + invalid, + required, + } = this.props; + const noPastDates = + this.props.noPastDates || widgetOptions?.pattern_options?.noPastDates; + const moment = this.props.moment.default; + const datetime = this.getInternalValue(); + const dateOnly = this.getDateOnly(); + const { SingleDatePicker } = reactDates; + + let attributes = {}; + if (required) { + attributes.required = true; + attributes['aria-required'] = true; + } + + const isInvalid = invalid === true || invalid === 'true'; + if (isInvalid) { + attributes['aria-invalid'] = true; + } + + return ( + +
+
+ false })} + onFocusChange={this.onFocusChange} + noBorder + displayFormat={moment.localeData(intl.locale).longDateFormat('L')} + navPrev={} + navNext={} + id={`${id}-date`} + placeholder={intl.formatMessage(messages.date)} + {...attributes} + /> +
+ {!dateOnly && ( +
+ +
+ )} + {resettable && ( + + )} +
+
+ ); + } +} + +/** + * Property types. + * @property {Object} propTypes Property types. + * @static + */ +DatetimeWidgetComponent.propTypes = { + id: PropTypes.string.isRequired, + title: PropTypes.string.isRequired, + description: PropTypes.string, + required: PropTypes.bool, + error: PropTypes.arrayOf(PropTypes.string), + dateOnly: PropTypes.bool, + noPastDates: PropTypes.bool, + value: PropTypes.string, + onChange: PropTypes.func.isRequired, + wrapped: PropTypes.bool, + resettable: PropTypes.bool, +}; + +/** + * Default properties. + * @property {Object} defaultProps Default properties. + * @static + */ +DatetimeWidgetComponent.defaultProps = { + description: null, + required: false, + error: [], + dateOnly: false, + noPastDates: false, + value: null, + resettable: true, +}; + +export default compose( + injectLazyLibs(['reactDates', 'moment']), + injectIntl, +)(DatetimeWidgetComponent); diff --git a/src/components/Widget/EmailWidget.jsx b/src/components/Widget/EmailWidget.jsx new file mode 100644 index 0000000..51cebfc --- /dev/null +++ b/src/components/Widget/EmailWidget.jsx @@ -0,0 +1,110 @@ +/** + * EmailWidget component. + * @module components/manage/Widgets/EmailWidget + * added aria- attributes + */ + +import { FormFieldWrapper } from '@plone/volto/components'; +import PropTypes from 'prop-types'; +import React from 'react'; +import { Input } from 'semantic-ui-react'; + +/** EmailWidget, a widget for email addresses + * + * To use it, in schema properties, declare a field like: + * + * ```jsx + * { + * title: "Email", + * widget: 'email', + * } + * ``` + */ +const EmailWidget = (props) => { + const { + id, + value, + onChange, + onBlur, + onClick, + minLength, + maxLength, + placeholder, + isDisabled, + required, + invalid, + } = props; + const inputId = `field-${id}`; + + let attributes = {}; + if (required) { + attributes.required = true; + attributes['aria-required'] = true; + } + + const isInvalid = invalid === true || invalid === 'true'; + if (isInvalid) { + attributes['aria-invalid'] = true; + } + return ( + + + onChange(id, target.value === '' ? undefined : target.value) + } + onBlur={({ target }) => + onBlur(id, target.value === '' ? undefined : target.value) + } + onClick={() => onClick()} + minLength={minLength || null} + maxLength={maxLength || null} + {...attributes} + /> + + ); +}; + +/** + * Property types + * @property {Object} propTypes Property types. + * @static + */ +EmailWidget.propTypes = { + id: PropTypes.string.isRequired, + title: PropTypes.string.isRequired, + description: PropTypes.string, + required: PropTypes.bool, + error: PropTypes.arrayOf(PropTypes.string), + value: PropTypes.string, + onChange: PropTypes.func.isRequired, + onBlur: PropTypes.func, + onClick: PropTypes.func, + minLength: PropTypes.number, + maxLength: PropTypes.number, + placeholder: PropTypes.string, +}; + +/** + * Default properties. + * @property {Object} defaultProps Default properties. + * @static + */ +EmailWidget.defaultProps = { + description: null, + required: false, + error: [], + value: null, + onChange: () => {}, + onBlur: () => {}, + onClick: () => {}, + minLength: null, + maxLength: null, +}; + +export default EmailWidget; diff --git a/src/components/Widget/FileWidget.jsx b/src/components/Widget/FileWidget.jsx new file mode 100644 index 0000000..6cb80d2 --- /dev/null +++ b/src/components/Widget/FileWidget.jsx @@ -0,0 +1,235 @@ +/** + * FileWidget component. + * @module components/manage/Widgets/FileWidget + * added aria- attributes + */ + +import React from 'react'; +import PropTypes from 'prop-types'; +import { Button, Image, Dimmer } from 'semantic-ui-react'; +import { readAsDataURL } from 'promise-file-reader'; +import { injectIntl } from 'react-intl'; +import deleteSVG from '@plone/volto/icons/delete.svg'; +import { Icon, FormFieldWrapper } from '@plone/volto/components'; +import loadable from '@loadable/component'; +import { flattenToAppURL } from '@plone/volto/helpers'; +import { defineMessages, useIntl } from 'react-intl'; + +const imageMimetypes = [ + 'image/png', + 'image/jpeg', + 'image/webp', + 'image/jpg', + 'image/gif', + 'image/svg+xml', +]; +const Dropzone = loadable(() => import('react-dropzone')); + +const messages = defineMessages({ + releaseDrag: { + id: 'Drop files here ...', + defaultMessage: 'Drop files here ...', + }, + editFile: { + id: 'Drop file here to replace the existing file', + defaultMessage: 'Drop file here to replace the existing file', + }, + fileDrag: { + id: 'Drop file here to upload a new file', + defaultMessage: 'Drop file here to upload a new file', + }, + replaceFile: { + id: 'Replace existing file', + defaultMessage: 'Replace existing file', + }, + addNewFile: { + id: 'Choose a file', + defaultMessage: 'Choose a file', + }, +}); + +/** + * FileWidget component class. + * @function FileWidget + * @returns {string} Markup of the component. + * + * To use it, in schema properties, declare a field like: + * + * ```jsx + * { + * title: "File", + * widget: 'file', + * } + * ``` + * or: + * + * ```jsx + * { + * title: "File", + * type: 'object', + * } + * ``` + * + */ +const FileWidget = (props) => { + const { id, value, onChange, required, invalid } = props; + const [fileType, setFileType] = React.useState(false); + const intl = useIntl(); + + React.useEffect(() => { + if (value && imageMimetypes.includes(value['content-type'])) { + setFileType(true); + } + }, [value]); + + const imgsrc = value?.download + ? `${flattenToAppURL(value?.download)}?id=${Date.now()}` + : null || value?.data + ? `data:${value['content-type']};${value.encoding},${value.data}` + : null; + + /** + * Drop handler + * @method onDrop + * @param {array} files File objects + * @returns {undefined} + */ + const onDrop = (files) => { + const file = files[0]; + readAsDataURL(file).then((data) => { + const fields = data.match(/^data:(.*);(.*),(.*)$/); + onChange(id, { + data: fields[3], + encoding: fields[2], + 'content-type': fields[1], + filename: file.name, + }); + }); + + let reader = new FileReader(); + reader.onload = function () { + const fields = reader.result.match(/^data:(.*);(.*),(.*)$/); + if (imageMimetypes.includes(fields[1])) { + setFileType(true); + let imagePreview = document.getElementById(`field-${id}-image`); + imagePreview.src = reader.result; + } else { + setFileType(false); + } + }; + reader.readAsDataURL(files[0]); + }; + + let attributes = {}; + if (required) { + attributes.required = true; + attributes['aria-required'] = true; + } + + const isInvalid = invalid === true || invalid === 'true'; + if (isInvalid) { + attributes['aria-invalid'] = true; + } + + return ( + + + {({ getRootProps, getInputProps, isDragActive }) => ( +
+ {isDragActive && } + {fileType ? ( + + ) : ( +
+ {isDragActive ? ( +

+ {intl.formatMessage(messages.releaseDrag)} +

+ ) : value ? ( +

+ {intl.formatMessage(messages.editFile)} +

+ ) : ( +

+ {intl.formatMessage(messages.fileDrag)} +

+ )} +
+ )} + + + +
+ )} +
+
+ {value && value.filename} + {value && ( + + )} +
+
+ ); +}; + +/** + * Property types. + * @property {Object} propTypes Property types. + * @static + */ +FileWidget.propTypes = { + id: PropTypes.string.isRequired, + title: PropTypes.string.isRequired, + description: PropTypes.string, + required: PropTypes.bool, + error: PropTypes.arrayOf(PropTypes.string), + value: PropTypes.shape({ + '@type': PropTypes.string, + title: PropTypes.string, + }), + onChange: PropTypes.func.isRequired, + wrapped: PropTypes.bool, +}; + +/** + * Default properties. + * @property {Object} defaultProps Default properties. + * @static + */ +FileWidget.defaultProps = { + description: null, + required: false, + error: [], + value: null, +}; + +export default injectIntl(FileWidget); diff --git a/src/components/Widget/RadioWidget.jsx b/src/components/Widget/RadioWidget.jsx index 53e6a8e..b995d96 100644 --- a/src/components/Widget/RadioWidget.jsx +++ b/src/components/Widget/RadioWidget.jsx @@ -16,7 +16,19 @@ const RadioWidget = ({ intl, fieldSet, wrapped, + invalid, }) => { + let attributes = {}; + if (required) { + attributes.required = true; + attributes['aria-required'] = true; + } + + const isInvalid = invalid === true || invalid === 'true'; + if (isInvalid) { + attributes['aria-invalid'] = true; + } + return ( onChange(id, e.target.value)} + {...attributes} /> @@ -47,4 +60,3 @@ const RadioWidget = ({ }; export default RadioWidget; - diff --git a/src/components/Widget/SelectWidget.jsx b/src/components/Widget/SelectWidget.jsx new file mode 100644 index 0000000..314a9c0 --- /dev/null +++ b/src/components/Widget/SelectWidget.jsx @@ -0,0 +1,319 @@ +/** + * SelectWidget component. + * @module components/manage/Widgets/SelectWidget + * added aria- attributes + */ + +import React, { Component } from 'react'; +import PropTypes from 'prop-types'; +import { connect } from 'react-redux'; +import { compose } from 'redux'; +import { map } from 'lodash'; +import { defineMessages, injectIntl } from 'react-intl'; +import { + getVocabFromHint, + getVocabFromField, + getVocabFromItems, +} from '@plone/volto/helpers'; +import { FormFieldWrapper } from '@plone/volto/components'; +import { getVocabulary, getVocabularyTokenTitle } from '@plone/volto/actions'; +import { normalizeValue } from '@plone/volto/components/manage/Widgets/SelectUtils'; + +import { + customSelectStyles, + DropdownIndicator, + ClearIndicator, + Option, + selectTheme, + MenuList, +} from '@plone/volto/components/manage/Widgets/SelectStyling'; +import { injectLazyLibs } from '@plone/volto/helpers/Loadable/Loadable'; +import { + getReactSelectAriaLiveMessages, + getReactSelectScreenReaderStatus, +} from '../../helpers/react-select'; +const messages = defineMessages({ + default: { + id: 'Default', + defaultMessage: 'Default', + }, + idTitle: { + id: 'Short Name', + defaultMessage: 'Short Name', + }, + idDescription: { + id: 'Used for programmatic access to the fieldset.', + defaultMessage: 'Used for programmatic access to the fieldset.', + }, + title: { + id: 'Title', + defaultMessage: 'Title', + }, + description: { + id: 'Description', + defaultMessage: 'Description', + }, + close: { + id: 'Close', + defaultMessage: 'Close', + }, + choices: { + id: 'Choices', + defaultMessage: 'Choices', + }, + required: { + id: 'Required', + defaultMessage: 'Required', + }, + select: { + id: 'Select…', + defaultMessage: 'Select…', + }, + no_value: { + id: 'No value', + defaultMessage: 'No value', + }, + no_options: { + id: 'No options', + defaultMessage: 'No options', + }, +}); + +/** + * SelectWidget component class. + * @function SelectWidget + * @returns {string} Markup of the component. + */ +class SelectWidget extends Component { + /** + * Property types. + * @property {Object} propTypes Property types. + * @static + */ + static propTypes = { + id: PropTypes.string.isRequired, + title: PropTypes.string.isRequired, + description: PropTypes.string, + required: PropTypes.bool, + error: PropTypes.arrayOf(PropTypes.string), + getVocabulary: PropTypes.func.isRequired, + getVocabularyTokenTitle: PropTypes.func.isRequired, + choices: PropTypes.arrayOf( + PropTypes.oneOfType([PropTypes.object, PropTypes.array]), + ), + items: PropTypes.shape({ + vocabulary: PropTypes.object, + }), + widgetOptions: PropTypes.shape({ + vocabulary: PropTypes.object, + }), + value: PropTypes.oneOfType([ + PropTypes.object, + PropTypes.string, + PropTypes.bool, + PropTypes.func, + PropTypes.array, + ]), + onChange: PropTypes.func.isRequired, + onBlur: PropTypes.func, + onClick: PropTypes.func, + onEdit: PropTypes.func, + onDelete: PropTypes.func, + wrapped: PropTypes.bool, + noValueOption: PropTypes.bool, + customOptionStyling: PropTypes.any, + isMulti: PropTypes.bool, + placeholder: PropTypes.string, + }; + + /** + * Default properties + * @property {Object} defaultProps Default properties. + * @static + */ + static defaultProps = { + description: null, + required: false, + items: { + vocabulary: null, + }, + widgetOptions: { + vocabulary: null, + }, + error: [], + choices: [], + value: null, + onChange: () => {}, + onBlur: () => {}, + onClick: () => {}, + onEdit: null, + onDelete: null, + noValueOption: true, + customOptionStyling: null, + }; + + /** + * Component did mount + * @method componentDidMount + * @returns {undefined} + */ + componentDidMount() { + if ( + (!this.props.choices || this.props.choices?.length === 0) && + this.props.vocabBaseUrl + ) { + this.props.getVocabulary({ + vocabNameOrURL: this.props.vocabBaseUrl, + size: -1, + subrequest: this.props.intl.locale, + }); + } + } + + /** + * Render method. + * @method render + * @returns {string} Markup for the component. + */ + render() { + const { + id, + choices, + value, + intl, + onChange, + required, + invalid, + title, + } = this.props; + const normalizedValue = normalizeValue(choices, value, intl); + // Make sure that both disabled and isDisabled (from the DX layout feat work) + const disabled = this.props.disabled || this.props.isDisabled; + const Select = this.props.reactSelect.default; + + let options = this.props.vocabBaseUrl + ? this.props.choices + : [ + ...map(choices, (option) => ({ + value: option[0], + label: + // Fix "None" on the serializer, to remove when fixed in p.restapi + option[1] !== 'None' && option[1] ? option[1] : option[0], + })), + // Only set "no-value" option if there's no default in the field + // TODO: also if this.props.defaultValue? + ...(this.props.noValueOption && !this.props.default + ? [ + { + label: this.props.intl.formatMessage(messages.no_value), + value: 'no-value', + }, + ] + : []), + ]; + + const isMulti = this.props.isMulti + ? this.props.isMulti + : id === 'roles' || id === 'groups'; + + let attributes = {}; + if (required) { + attributes.required = true; + attributes['aria-required'] = true; + } + + const isInvalid = invalid === true || invalid === 'true'; + if (isInvalid) { + attributes['aria-invalid'] = true; + } + + return ( + + + onChange(id, target.value === '' ? undefined : target.value) + } + {...attributes} + ref={(node) => { + this.node = node; + }} + onBlur={({ target }) => + onBlur(id, target.value === '' ? undefined : target.value) + } + onClick={() => onClick()} + minLength={minLength || null} + maxLength={maxLength || null} + /> + {icon && iconAction && ( + + )} + + ); + } +} + +export default injectIntl(TextWidget); diff --git a/src/components/Widget/TextareaWidget.jsx b/src/components/Widget/TextareaWidget.jsx new file mode 100644 index 0000000..746cae0 --- /dev/null +++ b/src/components/Widget/TextareaWidget.jsx @@ -0,0 +1,120 @@ +/** + * TextareaWidget component. + * @module components/manage/Widgets/TextareaWidget + * + * added aria- attributes + */ + +import React, { useState } from 'react'; +import PropTypes from 'prop-types'; +import { Label, TextArea } from 'semantic-ui-react'; + +import { injectIntl } from 'react-intl'; +import { FormFieldWrapper } from '@plone/volto/components'; + +/** + * TextareaWidget, a widget for multiple lines text + * + * To use it, in schema properties, declare a field like: + * + * ```jsx + * { + * title: "Text", + * widget: 'textarea', + * } + * ``` + */ +const TextareaWidget = (props) => { + const { + id, + maxLength, + value, + onChange, + placeholder, + required, + invalid, + } = props; + const [lengthError, setlengthError] = useState(''); + + const onhandleChange = (id, value) => { + if (maxLength & value?.length) { + let remlength = maxLength - value.length; + if (remlength < 0) { + setlengthError(`You have exceed word limit by ${Math.abs(remlength)}`); + } else { + setlengthError(''); + } + } + onChange(id, value); + }; + + let attributes = {}; + if (required) { + attributes.required = true; + attributes['aria-required'] = true; + } + + const isInvalid = invalid === true || invalid === 'true'; + if (lengthError?.length > 0 || isInvalid) { + attributes['aria-invalid'] = true; + } + + return ( + +