diff --git a/translations/frontend.pt_BR.xlf b/translations/frontend.pt_BR.xlf new file mode 100644 index 00000000..fb2f2335 --- /dev/null +++ b/translations/frontend.pt_BR.xlf @@ -0,0 +1,59 @@ + + + + + + search.placeholder + Pesquisar + + + + + part.labelp + Componentes + + + + + entity.select.group.new_not_added_to_DB + Novo (não adicionado ainda no DB) + + + + + user.password_strength.very_weak + Muito fraca + + + + + user.password_strength.weak + Fraca + + + + + user.password_strength.medium + Média + + + + + user.password_strength.strong + Forte + + + + + user.password_strength.very_strong + Bem forte + + + + + search.submit + Vá! + + + + diff --git a/translations/messages.en.xlf b/translations/messages.en.xlf index 8af54745..1a37106f 100644 --- a/translations/messages.en.xlf +++ b/translations/messages.en.xlf @@ -13068,145 +13068,145 @@ Buerklin-API Authentication server: - + settings.ai AI - + settings.ai.openrouter OpenRouter - + settings.ai.lmstudio LMStudio - + settings.ips.ai_extractor.model AI Model - + settings.ips.ai_extractor.ai_platform AI Platform - + settings.ips.ai_extractor.model.help The AI model that should be used for extraction. Must support structured output. - + settings.ips.ai_extractor.max_content_length Max. Website Content length - + settings.ips.ai_extractor.max_content_length.description The maximum number of characters of the website that are sent to the AI service. - + settings.ips.ai_extractor.output_language Output language - + settings.ips.ai_extractor.output_language.description By default, the providers returns information in the same language as the website. With that option you can ask the AI to translate it for you. Might only work with certain models. - + settings.ips.ai_extractor.additional_instructions Additional instructions - + settings.ips.ai_extractor.additional_instructions.description The additional instructions will be appended to the system prompt. - + info_providers.search.advanced_options Advanced options - + info_providers.no_cache_search Do not cache search results / Force fresh search - + info_providers.no_cache_details Do not cache result details / Force fresh part detail retrieval - + info_providers.from_url.method.generic_web Classic Web Scraper - + info_providers.from_url.method.ai_web AI Web Scraper - + info_providers.from_url.method Method - + info_providers.from_url.no_cache Ignore cache / Force fresh info retrieval - + info_providers.from_url.skip_delegation Do not delegate to specialized info providers - + settings.ips.ai_extractor AI Web Extractor - + settings.ips.ai_extractor.description This info provider uses an large language model (LLM) to extract detailed part information from arbitary shop URLs. - + settings.ai.openrouter.help Access to many AI models via openrouter.ai - + settings.ai.lmstudio.hosturl Host URL diff --git a/translations/security.pt_BR.xlf b/translations/security.pt_BR.xlf new file mode 100644 index 00000000..284b32d9 --- /dev/null +++ b/translations/security.pt_BR.xlf @@ -0,0 +1,23 @@ + + + + + + user.login_error.user_disabled + Sua conta está desativada! Fale com um administrador se você acredita ser um erro. + + + + + saml.error.cannot_login_local_user_per_saml + Você não pode fazer o login na conta com um usuário local por SSO! Use sua senha de usuário local. + + + + + saml.error.cannot_login_saml_user_locally + Você não pode usar autenticação local como login como usuário SAML! Use seu login SSO. + + + + diff --git a/translations/validators.pt_BR.xlf b/translations/validators.pt_BR.xlf new file mode 100644 index 00000000..fb07b80a --- /dev/null +++ b/translations/validators.pt_BR.xlf @@ -0,0 +1,257 @@ + + + + + + part.master_attachment.must_be_picture + O anexo de pré-visualização deve ser uma imagem válida! + + + + + structural.entity.unique_name + Um elemento com esse nome já existe nesse nível! + + + + + parameters.validator.min_lesser_typical + Valor precisa ser menor ou igual ao valor típico ({{ compared_value }}). + + + + + parameters.validator.min_lesser_max + Valor precisa ser menor ao valor máximo ({{ compared_value }}). + + + + + parameters.validator.max_greater_typical + Valor precisa ser maior ou igual ao valor típico ({{ compared_value }}). + + + + + validator.user.username_already_used + Um usuário com esse nome já existe + + + + + user.invalid_username + O nome de usuário precisa conter apenas letras, números, underscores, pontos, mais ou menos e não pode começar com um @! + + + + + obsolete + + + validator.noneofitschild.self + Um elemento não pode ser seu próprio parente! + + + + + obsolete + + + validator.noneofitschild.children + Você não pode assimilar um elemento filho como pai (pode causar loops)! + + + + + validator.select_valid_category + Selecione uma categoria válida! + + + + + validator.part_lot.only_existing + Não se pode adicionar novos componentes a essa localização já que está marcado como "Somente existentes" + + + + + validator.part_lot.location_full.no_increase + Localização está cheia. Quantidade não pode ser aumentada (novo valor deve ser menor que {{ old_amount }}). + + + + + validator.part_lot.location_full + Localização está cheia. Não pode ser adicionados novos componentes a ela. + + + + + validator.part_lot.single_part + Essa localização só pode conter um único componente que já está cheio! + + + + + validator.attachment.must_not_be_null + Você precisa selecionar um tipo de anexo! + + + + + validator.orderdetail.supplier_must_not_be_null + Você precisa selecionar um fornecedor! + + + + + validator.measurement_unit.use_si_prefix_needs_unit + Para habilitar prefixos do SI, você precisa inserir um símbolo de unidade! + + + + + part.ipn.must_be_unique + Um número de componente interno precisa ser único. {{ value }} já está em uso! + + + + + validator.project.bom_entry.name_or_part_needed + Você precisa escolher um componente ou inserir um nome a uma entrada BOM que não indica um componente. + + + + + project.bom_entry.name_already_in_bom + Já existe uma entrada BOM com esse nome! + + + + + project.bom_entry.part_already_in_bom + Esse componente já existe no BOM! + + + + + project.bom_entry.mountnames_quantity_mismatch + A quantidade de nome de componentes deve coincidir com a quantidade prevista no BOM + + + + + project.bom_entry.can_not_add_own_builds_part + Você não pode adicionar um componente de produção interna ao projeto de sua lista de materiais (BOM) + + + + + project.bom_has_to_include_all_subelement_parts + O BOM do projeto precisa incluir todas as montagens de componentes dos subprojetos. Componente %part_name% do projeto %project_name% está faltando! + + + + + project.bom_entry.price_not_allowed_on_parts + Preços não são permitidos em entradas BOM associadas a um componente. Defina o preço a um componente. + + + + + validator.project_build.lot_bigger_than_needed + Você selecionou uma quantidade maior que a necessária para retirar! Remova a quantidade desnecessária. + + + + + validator.project_build.lot_smaller_than_needed + Você selecionou menos quantidade para retirar que a necessária! Adicione a quantidade necessária. + + + + + part.name.must_match_category_regex + O nome do componente não coincide com a expressão regular inserida pela categoria: %regex% + + + + + validator.attachment.name_not_blank + Adicione um valor aqui, ou insira um arquivo para automaticamente usar o nome do arquivo como nome do anexo. + + + + + validator.part_lot.owner_must_match_storage_location_owner + O dono do lote precisa coincidir com o dono da localização do armazém selecionado (%owner_name%)! + + + + + validator.part_lot.owner_must_not_be_anonymous + Um dono de lote não pode ser um usuário anônimo! + + + + + validator.part_association.must_set_an_value_if_type_is_other + Se você atribuir o tipo para "outro", então deve adicionar o valor descrição para ele! + + + + + validator.part_association.part_cannot_be_associated_with_itself + Um componente não pode ser associado a ele mesmo! + + + + + validator.part_association.already_exists + A atribuição desse componente já foi feita! + + + + + validator.part_lot.vendor_barcode_must_be_unique + O valor do código de barras do vendedor já está sendo usado por outro lote. Precisa ser único! + + + + + validator.year_2038_bug_on_32bit + Por limitações técnicas, não é possível selecionar datas depois de 19/01/2038 em um sistema de 32 bits! + + + + + validator.fileSize.invalidFormat + Formato de tamanho de arquivo inválido. Use um número inteiro com K, M, G de sufixo par Kilo, Mega ou Gigabytes. + + + + + validator.invalid_range + O intervalo atual não é válido! + + + + + validator.google_code.wrong_code + Código inválido. Confira se o seu aplicativo de autenticação está configurado corretamente e se ambos servidor e o dispositivo de autenticação estão com os horários sincronizados. + + + + + settings.synonyms.type_synonyms.collection_type.duplicate + Já existe uma tradução definida para esse tipo e idioma + + + + + validator.invalid_gtin + Esse não é um GTIN / EAN válido! + + + +