Fixes primera revisión #86

Merged
jsegarra merged 13 commits from wbuezas/hedera-web-mindshore:bugfix/fixes-primera-review into 4922-vueMigration 2024-09-23 21:18:13 +00:00
6 changed files with 206 additions and 17 deletions
Showing only changes of commit cdf534e70b - Show all commits

View File

@ -84,5 +84,34 @@ export default {
delete: 'Esborrar',
emptyList: 'Llista buida',
modify: 'Modificar',
confirmDelete: 'Estàs segur que vols esborrar la línia?'
confirmDelete: 'Estàs segur que vols esborrar la línia?',
// Image related translations
'Cant lock cache': 'No es pot bloquejar la memòria cau',
'Bad file format': 'Format de fitxer no reconegut',
'File not choosed': 'No has seleccionat cap fitxer',
'Permission denied': 'No tens permís per pujar el fitxer',
'File upload error':
"No s'ha pogut pujar el fitxer, comprova que la mida no sigui massa gran",
'File save error': "No s'ha pogut desar el fitxer: %s",
'File size error': 'El fitxer no ha de superar %.2f MB',
'Bad file name':
"El nom del fitxer només ha de contenir lletres minúscules, dígits o el caràcter '_'",
'Bad collection name': 'Nom de col·lecció no vàlid',
'Collection not exists': 'La col·lecció no existeix',
'Unreferenced file': 'El fitxer no està referenciat per la base de dades',
'Cannot update matching id': "No es pot actualitzar l'id coincident",
'Com error': 'Error de comunicació amb el servidor',
'Image open error': "Error en obrir el fitxer d'imatge",
'Operation disabled': 'Operació deshabilitada per seguretat',
'Image added': 'Imatge afegida correctament',
ErrIniSize: 'El fitxer supera la directiva upload_max_filesize a php.ini',
ErrFormSize:
'El fitxer supera el MAX_FILE_SIZE especificat al formulari HTML',
ErrPartial: "El fitxer s'ha pujat parcialment",
ErrNoFile: "No s'ha pujat cap fitxer",
ErrNoTmpDir: 'Falta una carpeta temporal',
ErrCantWrite: "No s'ha pogut escriure el fitxer al disc",
ErrExtension: "La pujada del fitxer s'ha aturat per una extensió",
ErrDefault: 'Error de pujada desconegut',
'Sync complete': 'Sincronització completa'
};

View File

@ -118,5 +118,33 @@ export default {
save: 'Save',
cancel: 'Cancel',
of: 'of',
modify: 'Modify'
modify: 'Modify',
// Image related translations
'Cant lock cache': 'The cache could not be blocked',
'Bad file format': 'Unrecognized file format',
'File not choosed': 'You have not selected any file',
'Permission denied': 'You are not allowed to upload the file',
'File upload error':
'Failed to upload the file, check that size is not too large',
'File save error': 'Failed to save the file: %s',
'File size error': 'The file must be no longer than %.2f MB',
'Bad file name':
"The file name must contain only lowercase letters, digits or the '_' character",
'Bad collection name': 'Invalid collection name',
'Collection not exists': 'Collection does not exist',
'Unreferenced file': 'The file is not referenced by the database',
'Cannot update matching id': 'Cannot update matching id',
'Com error': 'Error communicating with the server',
'Image open error': 'Error opening the image file',
'Operation disabled': 'Operation disabled for security',
'Image added': 'Image added correctly',
ErrIniSize: 'File exceeds the upload_max_filesize directive in php.ini',
ErrFormSize: 'File exceeds the MAX_FILE_SIZE specified in the HTML form',
ErrPartial: 'File was partially uploaded',
ErrNoFile: 'No file was uploaded',
ErrNoTmpDir: 'Missing a temporary folder',
ErrCantWrite: 'Failed to write file to disk',
ErrExtension: 'File upload stopped by extension',
ErrDefault: 'Unknown upload error',
'Sync complete': 'Synchronization complete'
};

View File

@ -134,5 +134,34 @@ export default {
save: 'Guardar',
cancel: 'Cancelar',
of: 'de',
modify: 'Modificar'
modify: 'Modificar',
// Image related translations
'Cant lock cache': 'La caché no pudo ser bloqueada',
'Bad file format': 'Formato de archivo no reconocido',
'File not choosed': 'No has seleccionado ningún archivo',
'Permission denied': 'No tienes permiso para subir el fichero',
'File upload error':
'Error al subir el fichero, comprueba que su tamaño no sea demasiado grande',
'File save error': 'Error al guardar el fichero: %s',
'File size error': 'El fichero no debe ocupar más de %.2f MB',
'Bad file name':
"El nombre del archivo solo debe contener letras minúsculas, dígitos o el carácter '_'",
'Bad collection name': 'Nombre de colección no válido',
'Collection not exists': 'La colección no existe',
'Unreferenced file': 'El archivo no está referenciado por la base de datos',
'Cannot update matching id':
'No es posible actualizar los ítems con id coincidente',
'Com error': 'Error en la comunicación con el servidor',
'Image open error': 'Error al abrir el archivo de imagen',
'Operation disabled': 'Operación deshabilitada por seguridad',
'Image added': 'Imagen añadida correctamente',
ErrIniSize: 'File exceeds the upload_max_filesize directive in php.ini',
ErrFormSize: 'File exceeds the MAX_FILE_SIZE specified in the HTML form',
ErrPartial: 'File was partially uploaded',
ErrNoFile: 'No file was uploaded',
ErrNoTmpDir: 'Missing a temporary folder',
ErrCantWrite: 'Failed to write file to disk',
ErrExtension: 'File upload stopped by extension',
ErrDefault: 'Unknown upload error',
'Sync complete': 'Sincronización completada'
};

View File

@ -84,5 +84,37 @@ export default {
delete: 'Effacer',
emptyList: 'Vider la liste',
modify: 'Modifier',
confirmDelete: 'Voulez-vous vraiment supprimer la ligne?'
confirmDelete: 'Voulez-vous vraiment supprimer la ligne?',
// Image related translations
'Cant lock cache': "Le cache n'a pas pu être verrouillé",
'Bad file format': 'Format de fichier non reconnu',
'File not choosed': "Vous n'avez sélectionné aucun fichier",
'Permission denied': "Vous n'êtes pas autorisé à télécharger le fichier",
'File upload error':
"Échec du téléchargement du fichier, vérifiez que la taille n'est pas trop grande",
'File save error': "Échec de l'enregistrement du fichier : %s",
'File size error': 'Le fichier ne doit pas dépasser %.2f MB',
'Bad file name':
"Le nom du fichier ne doit contenir que des lettres minuscules, des chiffres ou le caractère '_'",
'Bad collection name': 'Nom de collection invalide',
'Collection not exists': "La collection n'existe pas",
'Unreferenced file':
"Le fichier n'est pas référencé par la base de données",
'Cannot update matching id':
"Impossible de mettre à jour l'ID correspondant",
'Com error': 'Erreur de communication avec le serveur',
'Image open error': "Erreur lors de l'ouverture du fichier image",
'Operation disabled': 'Opération désactivée pour des raisons de sécurité',
'Image added': 'Image ajoutée correctement',
ErrIniSize:
'Le fichier dépasse la directive upload_max_filesize dans php.ini',
ErrFormSize:
'Le fichier dépasse la taille maximale spécifiée dans le formulaire HTML',
ErrPartial: 'Le fichier a été partiellement téléchargé',
ErrNoFile: "Aucun fichier n'a été téléchargé",
ErrNoTmpDir: 'Il manque un dossier temporaire',
ErrCantWrite: "Échec de l'écriture du fichier sur le disque",
ErrExtension: 'Téléchargement du fichier arrêté par extension',
ErrDefault: 'Erreur de téléchargement inconnue',
'Sync complete': 'Synchronisation terminée'
};

View File

@ -82,5 +82,33 @@ export default {
delete: 'Eliminar',
emptyList: 'Lista vazia',
modify: 'Modificar',
confirmDelete: 'Tens certeza que queres eliminar esta linha?'
confirmDelete: 'Tens certeza que queres eliminar esta linha?',
// Image related translations
'Cant lock cache': 'O cache não pôde ser bloqueado',
'Bad file format': 'Formato de arquivo inválido',
'File not choosed': 'Não selecionastes nenhum arquivo',
'Permission denied': 'Não estas autorizado a subir o arquivo',
'File upload error': 'Erro ao subir o arquivo, verifique o tamanho',
'File save error': 'Erro ao salvar o arquivo: %s',
'File size error': 'O arquivo não deve ser maior que %.2f MB',
'Bad file name':
"O nome do arquivo deve conter somente letras minusculas, numeros ou '_'",
'Bad collection name': 'Nome de coleção inválido',
'Collection not exists': 'Coleção não existe',
'Unreferenced file': 'O arquivo não é referenciado pelo banco de dados',
'Cannot update matching id':
'Não é possível atualizar os itens com id coincidente',
'Com error': 'Erro de comunicação com o servidor',
'Image open error': 'Erro ao abrir a imagem',
'Operation disabled': 'Operação desativada por segurança',
'Image added': 'Imagem adicionada corretamente',
ErrIniSize: 'Arquivo supera o tamanho maximo de protocolo em php.ini',
ErrFormSize: 'Arquivo supera o tamanho maximo de protocolo em HTML form',
ErrPartial: 'Arquivo subido parcialmente',
ErrNoFile: 'Nenhum arquivo subido',
ErrNoTmpDir: 'Falta a pasta de arquivo temporal',
ErrCantWrite: 'Erro ao gravar arquivo no disco',
ErrExtension: 'Erro de extensão do arquivo',
ErrDefault: 'Erro desconhecido ao subir arquivo',
'Sync complete': 'Sincronização completa'
};

View File

@ -13,11 +13,24 @@ const { t } = useI18n();
const { notify } = useNotify();
const fileUploaderRef = ref(null);
const statusIcons = {
uploading: 'cloud_upload',
fulfilled: 'cloud_done',
rejected: 'error',
pending: 'add'
uploading: {
icon: 'cloud_upload',
tooltip: 'Uploading'
},
fulfilled: {
icon: 'cloud_done',
tooltip: 'imageUploaded'
},
rejected: {
icon: 'error',
tooltip: 'Error'
},
pending: {
icon: 'add',
tooltip: 'pendingUpload'
}
};
const formInitialData = reactive({
schema: 'catalog',
@ -72,6 +85,12 @@ const onSubmit = async data => {
results.forEach((result, index) => {
const fileIndex = filteredFiles[index].index;
addedFiles.value[fileIndex].uploadStatus = result.status;
if (result.status === 'rejected') {
addedFiles.value[fileIndex].errorMessage = t(
result.reason?.response?.data?.data?.message
);
}
});
const allSuccessful = results.every(
@ -122,10 +141,10 @@ onMounted(async () => getImageCollections());
<QPage class="vn-w-sm">
<VnForm
ref="vnFormRef"
:defaultActions="false"
:formInitialData="formInitialData"
separationBetweenInputs="md"
showBottomActions
:default-actions="false"
:form-initial-data="formInitialData"
separation-between-inputs="md"
show-bottom-actions
>
<template #form="{ data }">
<VnSelect
@ -146,7 +165,7 @@ onMounted(async () => getImageCollections());
hide-upload-btn
@added="onFilesAdded"
>
<template v-slot:list="scope">
<template #list="scope">
<QList v-if="addedFiles.length" separator>
<QItem
v-for="(file, index) in scope.files"
@ -182,10 +201,22 @@ onMounted(async () => getImageCollections());
:name="
statusIcons[
addedFiles[index].uploadStatus
]
].icon
"
size="sm"
/>
>
<QTooltip>
{{
addedFiles[index].errorMessage ||
t(
statusIcons[
addedFiles[index]
.uploadStatus
].tooltip
)
}}
</QTooltip>
</QIcon>
<QBtn
v-if="
addedFiles[index].uploadStatus !==
@ -198,7 +229,9 @@ onMounted(async () => getImageCollections());
round
icon="delete"
@click="removeFile(file, index)"
/>
>
<QTooltip>{{ t('remove') }}</QTooltip>
</QBtn>
</QItem>
</QList>
</template>
@ -239,6 +272,8 @@ en-US:
uploadSuccess: Upload finished successfully
uploadError: Some errors happened on upload
noFilesToUpload: There are no files to upload
pendingUpload: Pending upload
imageUploaded: Image uploaded
es-ES:
collection: Colección
updateMatching: Actualizar artículos con id coincidente
@ -248,6 +283,8 @@ es-ES:
uploadSuccess: Imágenes subidas correctamente
uploadError: Ocurrieron errores al subir alguna de las imágenes
noFilesToUpload: No se han seleccionado archivos para subir
pendingUpload: Subida pendiente
imageUploaded: Imagen subida
ca-ES:
collection: Col·lecció
updateMatching: Actualitzar els elements amb id coincident
@ -257,6 +294,8 @@ ca-ES:
uploadSuccess: Imatges pujades correctament
uploadError: Van ocórrer errors en pujar alguna de les imatges
noFilesToUpload: No s'ha seleccionat arxius per pujar
pendingUpload: Pujada pendent
imageUploaded: Imatge pujada
fr-FR:
collection: Collection
updateMatching: Mettre à jour les éléments avec l'identifiant correspondant
@ -266,6 +305,8 @@ fr-FR:
uploadSuccess: Les images téléchargées correctement
uploadError: Des erreurs sont survenues lors du téléchargement des images
noFilesToUpload: Aucun fichier sélectionné pour télécharger
pendingUpload: Téléchargement en attente
imageUploaded: Image téléchargée
pt-PT:
collection: Coleção
updateMatching: Atualizar itens com id correspondente
@ -275,4 +316,6 @@ pt-PT:
uploadSuccess: Upload concluído com sucesso
uploadError: Ocorreram erros ao subir alguma das imagens
noFilesToUpload: Não arquivos selecionados para upload
pendingUpload: Upload pendente
imageUploaded: Imagem carregada
</i18n>