| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406 |
- {
- "title": "Configurações",
- "subtitle": "Gerencie sua oficina, faturas e preferencias",
- "nav": {
- "categories": {
- "general": "Geral",
- "billing": "Faturamento e documentos",
- "communications": "Comunicacoes",
- "workshop": "Oficina",
- "integrations": "Aplicativos e API",
- "system": "Sistema"
- },
- "items": {
- "company": {
- "title": "Empresa",
- "description": "Detalhes comerciais e marca"
- },
- "subscription": {
- "title": "Assinatura",
- "description": "Plano e faturamento"
- },
- "account": {
- "title": "Conta",
- "description": "Nome, e-mail e senha"
- },
- "team": {
- "title": "Equipe",
- "description": "Membros e funcoes"
- },
- "invoice": {
- "title": "Faturas e orçamentos",
- "description": "Configurações de fatura, layout e campos personalizados"
- },
- "templates": {
- "title": "Modelos",
- "description": "Estilo visual, cores e fontes"
- },
- "payment": {
- "title": "Pagamento",
- "description": "Condições de pagamento e contas"
- },
- "tax": {
- "title": "Imposto",
- "description": "Taxa de imposto e padroes"
- },
- "currency": {
- "title": "Moeda",
- "description": "Padroes de moeda e impostos"
- },
- "localization": {
- "title": "Localização",
- "description": "Idioma, moeda, data e hora"
- },
- "customFields": {
- "title": "Campos personalizados",
- "description": "Definir campos de dados personalizados"
- },
- "email": {
- "title": "E-mail",
- "description": "Provedor de e-mail e envio"
- },
- "sms": {
- "title": "SMS",
- "description": "Provedor SMS e mensagens"
- },
- "telegram": {
- "title": "Telegram",
- "description": "Telegram bot & messaging"
- },
- "customerPortal": {
- "title": "Portal do cliente",
- "description": "Portal de autoatendimento do cliente"
- },
- "workshop": {
- "title": "Oficina",
- "description": "Padroes de técnico e mao de obra"
- },
- "laborPresets": {
- "title": "Pacotes de mao de obra",
- "description": "Pacotes de trabalho predefinidos"
- },
- "maintenance": {
- "title": "Manutenção",
- "description": "Intervalos de serviço previstos"
- },
- "ai": {
- "title": "AI",
- "description": "Provedor de IA e recursos"
- },
- "reportSchedule": {
- "title": "Agendamento de relatórios",
- "description": "Envio automático de relatórios"
- },
- "integrations": {
- "title": "Integrações",
- "description": "Calendários, videochamadas e serviços conectados"
- },
- "webhooks": {
- "title": "Webhooks",
- "description": "Notificações de eventos em tempo real"
- },
- "appearance": {
- "title": "Aparência",
- "description": "Tema e exibição"
- },
- "data": {
- "title": "Dados",
- "description": "Exportar e importar backup"
- },
- "install": {
- "title": "Instalar app",
- "description": "Adicione o Torqvoice a este dispositivo"
- },
- "license": {
- "title": "Licença",
- "description": "Licença marca branca"
- },
- "about": {
- "title": "Sobre",
- "description": "Versao e informações"
- },
- "alerts": {
- "title": "Alertas",
- "description": "Aviso quando peças precisam ser repostas"
- },
- "support": {
- "title": "Suporte",
- "description": "Falar com o suporte e gerenciar o botão"
- },
- "tireHotel": {
- "title": "Hotel de pneus",
- "description": "Armazenagem sazonal de pneus"
- },
- "inspectionReminders": {
- "title": "Lembretes de inspeção",
- "description": "Link de agendamento, duração e antecedência"
- },
- "emailTemplates": {
- "title": "Modelos de e-mail",
- "description": "O que dizem seus e-mails de fatura, orçamento e relatório"
- }
- },
- "pro": "PRO",
- "new": "Novo"
- },
- "readOnly": {
- "banner": "Você tem acesso somente leitura as configurações. Contate um administrador para fazer alterações."
- },
- "featureLocked": {
- "requiresPro": "Assinatura necessária",
- "upgradePlan": "Ver planos",
- "activateLicense": "Ativar licença",
- "requiresLicense": "Licença white label necessária",
- "previewHint": "Você está vendo uma prévia. Tudo nesta página é liberado com uma assinatura."
- },
- "company": {
- "logoTitle": "Logo da empresa",
- "logoAlt": "Logo da empresa",
- "upload": "Enviar",
- "remove": "Remover",
- "logoHint": "JPG, PNG, WebP, SVG — max 2MB",
- "uploadingLogo": "Enviando logo...",
- "logoUpdated": "Logo atualizado",
- "failedUploadLogo": "Falha ao enviar o logo",
- "detailsTitle": "Detalhes da empresa",
- "shopName": "Nome da empresa / oficina",
- "shopNamePlaceholder": "Auto Mecanica Silva",
- "orgNumber": "Número da organização",
- "orgNumberPlaceholder": "123 456 789",
- "orgNumberLabel": "Rótulo do número da organização",
- "orgNumberLabelPlaceholder": "Nº da org.",
- "orgNumberLabelHint": "Impresso ao lado do número em faturas e orçamentos. Deixe vazio para usar o padrão no seu idioma, ou escreva como ele se chama no seu país, por exemplo CNPJ, NIF ou RUT.",
- "phone": "Telefone",
- "phonePlaceholder": "(11) 91234-5678",
- "email": "E-mail",
- "emailPlaceholder": "serviço@exemplo.com.br",
- "address": "Endereço",
- "slogan": "Slogan",
- "sloganPlaceholder": "Serviço e reparo para todas as marcas",
- "sloganHint": "Uma linha abaixo do nome em faturas e orçamentos.",
- "addressPlaceholder": "Rua Principal 123\nSala 100\n01234-567 Sao Paulo",
- "saveCompany": "Salvar detalhes da empresa",
- "addNewCompany": "Adicionar nova empresa",
- "companyName": "Nome da empresa",
- "companyNamePlaceholder": "Ex. Auto Mecanica Silva",
- "cancel": "Cancelar",
- "createCompany": "Criar empresa",
- "settingsSaved": "Configurações da empresa salvas",
- "failedSave": "Falha ao salvar configurações",
- "companyCreated": "Empresa criada com sucesso",
- "serviceType": "Tipo de Serviço",
- "serviceTypeDescription": "Selecione o tipo de serviço que sua oficina oferece. Isso altera os rótulos dos campos em todo o aplicativo.",
- "automotive": "Automotivo",
- "automotiveDescription": "Carros, caminhões e outros veículos rodoviários",
- "marineService": "Marine",
- "marineServiceDescription": "Barcos, iates e embarcações"
- },
- "account": {
- "profileTitle": "Perfil",
- "profileDescription": "Atualize seu nome de exibição e endereço de e-mail.",
- "emailVerified": "Verificado",
- "emailNotVerified": "Não verificado",
- "sendVerificationEmail": "Enviar e-mail de verificação",
- "verificationEmailSent": "E-mail de verificação enviado. Verifique sua caixa de entrada.",
- "verificationEmailFailed": "Falha ao enviar e-mail de verificação",
- "resendCooldown": "Reenviar em {seconds}s",
- "emailChangeSent": "Um link de confirmação foi enviado para seu novo endereço de e-mail. Seu e-mail será atualizado quando você clicar no link.",
- "name": "Nome",
- "namePlaceholder": "Seu nome",
- "emailLabel": "E-mail",
- "emailPlaceholder": "Seu e-mail",
- "saveProfile": "Salvar perfil",
- "profileUpdated": "Perfil atualizado",
- "failedUpdateProfile": "Falha ao atualizar o perfil",
- "failedUpdateEmail": "Falha ao atualizar o e-mail",
- "changePasswordTitle": "Alterar senha",
- "changePasswordDescription": "Digite sua senha atual e escolha uma nova.",
- "currentPassword": "Senha atual",
- "newPassword": "Nova senha",
- "confirmNewPassword": "Confirmar nova senha",
- "changePassword": "Alterar senha",
- "passwordChanged": "Senha alterada",
- "passwordsNoMatch": "As senhas nao correspondem",
- "passwordMinLength": "A senha deve ter pelo menos 8 caracteres",
- "failedChangePassword": "Falha ao alterar a senha",
- "twoFactorTitle": "Autenticação de dois fatores",
- "twoFactorEnabled": "A autenticação de dois fatores esta ativada",
- "twoFactorDisablePrompt": "Digite sua senha para desativar a autenticação de dois fatores.",
- "twoFactorEnablePrompt": "Adicione uma camada extra de segurança a sua conta ativando a autenticação de dois fatores com um aplicativo autenticador.",
- "password": "Senha",
- "enterPassword": "Digite sua senha",
- "disable2FA": "Desativar 2FA",
- "enable2FA": "Ativar 2FA",
- "twoFactorDisabled": "Autenticação de dois fatores desativada",
- "failedEnable2FA": "Falha ao ativar 2FA",
- "failedDisable2FA": "Falha ao desativar 2FA",
- "enterPasswordError": "Por favor, digite sua senha",
- "setupDialogTitle": "Ativar autenticação de dois fatores",
- "setupDialogDescription": "Digite sua senha para começar a configurar 2FA com um aplicativo autenticador.",
- "continue": "Continuar",
- "scanQRTitle": "Escanear código QR",
- "scanQRDescription": "Escaneie este código QR com seu aplicativo autenticador (Google Authenticator, Authy, etc.)",
- "verifyCodeTitle": "Verificar código",
- "verifyCodeDescription": "Digite o código de 6 dígitos do seu aplicativo autenticador para verificar se esta configurado corretamente.",
- "authCode": "Código de autenticação",
- "authCodePlaceholder": "000000",
- "back": "Voltar",
- "verify": "Verificar",
- "enterCodeError": "Por favor, digite o código do seu aplicativo autenticador",
- "invalidCode": "Código inválido. Tente novamente.",
- "verificationFailed": "Verificação falhou",
- "backupCodesTitle": "Salvar códigos de backup",
- "backupCodesDescription": "Salve estes códigos em um local seguro. Você pode usa-los para entrar se perder acesso ao seu aplicativo autenticador. Cada código so pode ser usado uma vez.",
- "copyCodes": "Copiar códigos",
- "copied": "Copiado",
- "backupCodesCopied": "Códigos de backup copiados para a área de transferência",
- "savedBackupCodes": "Salvei meus códigos de backup",
- "twoFactorEnabledSuccess": "Autenticação de dois fatores ativada",
- "dangerZone": "Zona de perigo",
- "deleteContentTitle": "Excluir conteúdo",
- "deleteContentDescription": "Exclua seletivamente dados da organização como veículos, clientes, orçamentos ou inventário. Sua conta e configurações permanecerao intactas.",
- "deleteContentButton": "Excluir conteúdo",
- "deleteAccountTitle": "Excluir conta",
- "deleteAccountDescription": "Exclua permanentemente sua conta e todos os dados associados, incluindo veículos, registros de serviço, ordens de serviço, faturas, clientes, arquivos e pagamentos. Esta ação nao pode ser desfeita.",
- "deleteAccountButton": "Excluir conta",
- "deleteAccountDialogTitle": "Excluir conta",
- "deleteAccountDialogDescription": "Isso excluirá permanentemente sua conta e todos os dados associados. Esta ação e irreversivel. Todos os seus veículos, registros de serviço, ordens de serviço, orçamentos, clientes, arquivos e histórico de pagamentos serão permanentemente removidos.",
- "deleteAccountConfirmPhrase": "delete me",
- "deleteAccountConfirmPrompt": "Digite <bold>delete me</bold> para confirmar",
- "permanentlyDelete": "Excluir permanentemente",
- "deleting": "Excluindo...",
- "failedDeleteAccount": "Falha ao excluir a conta",
- "deleteContentDialogTitle": "Excluir conteúdo",
- "deleteContentDialogDescription": "Selecione o conteúdo que deseja excluir permanentemente. Esta ação nao pode ser desfeita.",
- "contentVehicles": "Veículos",
- "contentVehiclesDescription": "Todos os veículos e seus registros de serviço, notas, lembretes, registros de combustível e faturas recorrentes",
- "contentCustomers": "Clientes",
- "contentCustomersDescription": "Todos os registros de clientes. Veículos vinculados a clientes excluidos serão desvinculados.",
- "contentQuotes": "Orçamentos",
- "contentQuotesDescription": "Todos os orçamentos e seus itens",
- "contentInventory": "Inventário",
- "contentInventoryDescription": "Todas as peças do inventário e suas imagens",
- "contentInspections": "Inspeções",
- "contentInspectionsDescription": "Todas as inspeções de veículos e seus resultados",
- "contentTechnicians": "Técnicos",
- "contentTechniciansDescription": "Todos os perfis de técnicos. Registros vinculados serão desvinculados.",
- "contentInspectionTemplates": "Modelos de inspeção",
- "contentInspectionTemplatesDescription": "Todos os modelos de inspeção e suas seções. Exclua as inspeções primeiro.",
- "contentNotifications": "Notificações",
- "contentNotificationsDescription": "Todas as notificações do sistema",
- "contentSmsMessages": "Mensagens SMS",
- "contentSmsMessagesDescription": "Todas as mensagens SMS enviadas e recebidas",
- "contentCustomFields": "Campos personalizados",
- "contentCustomFieldsDescription": "Todas as definições de campos personalizados e seus valores",
- "deleteContentConfirmPhrase": "delete my data",
- "deleteContentConfirmPrompt": "Digite <bold>delete my data</bold> para confirmar",
- "deleteSelected": "Excluir {count} selecionados",
- "contentDeleted": "O conteúdo selecionado foi excluído permanentemente",
- "failedDeleteContent": "Falha ao excluir o conteúdo",
- "passkey": {
- "title": "Passkeys",
- "description": "Entre com biometria ou uma chave de segurança em vez de uma senha.",
- "noPasskeys": "Nenhuma passkey registrada ainda.",
- "unnamed": "Passkey sem nome",
- "singleDevice": "Apenas este dispositivo",
- "multiDevice": "Sincronizado entre dispositivos",
- "register": "Registrar Passkey",
- "registering": "Registrando...",
- "registerSuccess": "Passkey registrada com sucesso",
- "registerFailed": "Falha ao registrar passkey",
- "delete": "Excluir",
- "deleteSuccess": "Passkey excluída",
- "deleteFailed": "Falha ao excluir passkey",
- "rename": "Renomear Passkey",
- "renameFailed": "Falha ao renomear passkey",
- "nameLabel": "Nome",
- "namePlaceholder": "ex. MacBook Pro, iPhone",
- "cancel": "Cancelar",
- "save": "Salvar",
- "confirmDeleteTitle": "Excluir Passkey",
- "confirmDelete": "Tem certeza de que deseja excluir esta passkey? Você não poderá mais entrar com ela."
- },
- "cancel": "Cancelar",
- "deleteWorkshopTitle": "Excluir oficina",
- "deleteWorkshopDescription": "Excluir permanentemente esta oficina e todos os seus dados: clientes, veículos, ordens de serviço, faturas, estoque e arquivos enviados. Os membros da equipe perderão o acesso. Isso não pode ser desfeito.",
- "deleteWorkshopButton": "Excluir oficina",
- "deleteWorkshopDialogTitle": "Excluir esta oficina?",
- "deleteWorkshopDialogDescription": "Isso exclui permanentemente a oficina e tudo o que há nela. Esta ação não pode ser desfeita.",
- "deleteWorkshopConfirmPrompt": "Digite <bold>{name}</bold> para confirmar.",
- "deleteWorkshopSuccess": "Oficina excluída",
- "deleteWorkshopFailed": "Falha ao excluir a oficina",
- "deleteAccountMoved": "Quer excluir sua conta?",
- "deleteAccountMovedLink": "Você pode fazer isso nas configurações de dados."
- },
- "team": {
- "title": "Equipe",
- "noOrgDescription": "Crie uma equipe para compartilhar dados com outros usuários.",
- "orgDescription": "Gerencie os membros da sua organização e suas funcoes.",
- "createOrg": "Criar organização",
- "createOrgDescription": "Crie uma organização para convidar membros da equipe. Você será o proprietário.",
- "orgName": "Nome da organização",
- "orgNamePlaceholder": "Minha oficina",
- "create": "Criar",
- "orgCreated": "Organização criada",
- "failedCreateOrg": "Falha ao criar a organização",
- "memberCount": "{count} membro",
- "memberCountPlural": "{count} membros",
- "admin": "Administrador",
- "member": "Membro",
- "inviteByEmail": "Convidar por e-mail",
- "inviteEmailPlaceholder": "usuário@exemplo.com.br",
- "invite": "Convidar",
- "invited": "Membro convidado com sucesso.",
- "userNotFoundTitle": "Usuário nao encontrado",
- "userNotFoundDescription": "Nenhuma conta encontrada para \"{email}\". Enviar um e-mail de convite para se registrar e entrar na equipe?",
- "sendInvitation": "Enviar convite",
- "invitationSentTitle": "Convite enviado",
- "invitationSentDescription": "Um e-mail de convite foi enviado para {email}.",
- "failedInvite": "Falha ao convidar o membro",
- "failedSendInvitation": "Falha ao enviar o convite",
- "pendingInvitations": "Convites pendentes",
- "invitedAs": "Convidado como {role}",
- "resendInvitation": "Reenviar o convite",
- "invitationResent": "Convite reenviado para {email}",
- "failedResendInvitation": "Falha ao reenviar o convite",
- "expires": "Expira em {date}",
- "pending": "Pendente",
- "cancelInvitation": "Cancelar convite",
- "cancelInvitationDescription": "Cancelar o convite para {email}? Eles nao poderao mais usar este link.",
- "invitationCancelled": "Convite cancelado",
- "failedCancelInvitation": "Falha ao cancelar o convite",
- "customRoles": "Funcoes personalizadas",
- "newRole": "Nova função",
- "roleName": "Nome da função",
- "roleNamePlaceholder": "Ex. Técnico",
- "fullAdminAccess": "Acesso total de administrador (ignora todas as verificacoes de permissão)",
- "permissions": "Permissoes",
- "createRole": "Criar função",
- "updateRole": "Atualizar função",
- "roleCreated": "Função criada",
- "roleUpdated": "Função atualizada",
- "failedSaveRole": "Falha ao salvar a função",
- "deleteRole": "Excluir função",
- "deleteRoleDescription": "Excluir a função \"{name}\"? Membros com esta função perderão suas permissoes personalizadas.",
- "roleDeleted": "Função excluída",
- "failedDeleteRole": "Falha ao excluir a função",
- "fullAccess": "Acesso total",
- "permissionCount": "{count} permissão",
- "permissionCountPlural": "{count} permissoes",
- "noCustomRoles": "Nenhuma função personalizada ainda. Crie uma para definir permissoes granulares para membros da equipe.",
- "presetAll": "Todos",
- "presetViewOnly": "Somente leitura",
- "presetWriteAll": "Leitura e escrita",
- "presetNone": "Nenhum",
- "builtInRoles": "Funcoes integradas",
- "ownerLabel": "Proprietário",
- "ownerDescription": "Acesso total. Pode gerenciar membros, alterar funcoes e excluir a organização.",
- "adminLabel": "Administrador",
- "adminDescription": "Pode convidar/remover membros e gerenciar dados compartilhados.",
- "memberLabel": "Membro",
- "memberDescription": "As permissões vêm da função atribuída. Sem função, este membro não pode fazer nada.",
- "roleAssigned": "Função atualizada",
- "failedAssignRole": "Falha ao atualizar a função",
- "removeMemberTitle": "Remover membro",
- "removeMemberDescription": "Remover {name} da equipe? Ele perdera acesso aos dados compartilhados.",
- "removeButton": "Remover",
- "memberRemoved": "Membro removido",
- "failedRemoveMember": "Falha ao remover o membro",
- "memberRoleUpdated": "Função do membro atualizada",
- "failedUpdateRole": "Falha ao atualizar a função",
- "removeMember": "Remove member",
- "cancelInvite": "Cancel invitation",
- "editRole": "Edit role",
- "technician": "Técnico",
- "technicianHint": "Pode receber serviços atribuídos e usar o aplicativo do técnico",
- "technicianFailed": "Não foi possível alterar",
- "setupApp": "Configurar o aplicativo",
- "setupAppTitle": "Configurar o aplicativo do técnico",
- "setupAppInstruction": "Peça a {name} para fazer isto no celular:",
- "setupAppOrType": "Ou informe este código:",
- "setupAppExpiry": "Funciona uma vez e expira em {time}.",
- "setupAppExpired": "Este código expirou. Feche e comece de novo.",
- "setupAppDone": "Concluído",
- "setupAppFailed": "Não foi possível criar um código de configuração",
- "setupPageTitle": "Configurar o aplicativo do técnico",
- "setupPageBody": "Abra o Torqvoice Tech neste telefone, toque em Escanear código de configuração e aponte novamente para o mesmo código.",
- "setupPageCode": "Ou digite este código no aplicativo",
- "setupPageOpenApp": "Abrir o Torqvoice Tech",
- "setupPageExpiry": "Este código funciona uma vez e expira dez minutos depois que sua oficina o criou.",
- "setupAppStep1": "Instalar o Torqvoice Tech",
- "setupAppStep2": "Abrir e tocar em “Escanear código de configuração”",
- "setupAppStep3": "Apontar o celular para este código",
- "setupAppNotCamera": "A câmera comum do celular não funciona. Precisa ser escaneado dentro do Torqvoice Tech.",
- "addTechnician": "Adicionar um técnico",
- "addTechnicianHint": "Para um mecânico no balcão. Sem e-mail e sem espera.",
- "technicianName": "Nome",
- "technicianNamePlaceholder": "Nome completo",
- "technicianPhone": "Número do celular",
- "technicianPhonePlaceholder": "O celular que ele tem no bolso",
- "addTechnicianSubmit": "Criar",
- "addTechnicianNote": "A partir daí ele entra com esse número. Sem senha para lembrar e sem nada para digitar na primeira tela do aplicativo.",
- "addTechnicianDone": "{name} está pronto. Mostre o código a ele.",
- "addTechnicianFailed": "Não foi possível criar esse técnico",
- "setupAppCopyLink": "Copiar o link para enviar",
- "setupAppCopied": "Copiado",
- "revokeTechnicianTitle": "Desconectar do aplicativo?",
- "revokeTechnicianBody": "{name} perde o acesso no celular na hora e qualquer código para de funcionar. O trabalho concluído e as horas ficam como estão.",
- "revokeTechnicianConfirm": "Desconectar",
- "addPerson": "Adicionar",
- "addPersonTitle": "Adicionar alguém à oficina",
- "addPersonWho": "Os dois são configurados de formas diferentes, então comece dizendo quem é.",
- "choiceTechnician": "Um mecânico",
- "choiceTechnicianHint": "Trabalha nos carros e usa o Torqvoice no celular. Mais fácil enquanto ele está aqui com você, e leva cerca de um minuto.",
- "choiceMember": "Alguém do escritório",
- "choiceMemberHint": "Recebe carros, pede peças e envia faturas, no computador. Você envia um e-mail e ele escolhe a própria senha.",
- "stepLabelWho": "Quem",
- "stepLabelDetails": "Dados",
- "stepLabelPhone": "O celular dele",
- "techDetailsTitle": "Nome e número do celular",
- "techDetailsBlurb": "É com esse número que ele vai entrar de agora em diante, então use o celular que ele realmente carrega. Não há senha para lembrar nem esquecer.",
- "techHandoffTitle": "Agora passe para o celular dele",
- "techHandoffBlurb": "Este código liga o celular dele à sua oficina. Vale uma vez só e por dez minutos, então faça enquanto ele está aqui.",
- "memberDetailsTitle": "O e-mail dele",
- "memberDetailsBlurb": "Ele recebe um e-mail com um link. Ao abrir, escolhe a própria senha e depois aparece na lista acima.",
- "roleHint": "Administradores podem mudar configurações e adicionar pessoas. Os demais fazem o trabalho do dia a dia.",
- "stepBack": "Voltar",
- "stepHandoffDone": "Ele já escaneou",
- "stepDoneTitle": "{name} está pronto",
- "stepDoneBody": "Ele pode abrir o aplicativo e ver os serviços dele. Na próxima vez entra só com o celular, sem código.",
- "stepInvitedTitle": "Convite enviado para {email}",
- "stepInvitedBody": "Ele aparece na lista assim que abrir o e-mail e aceitar. O link vale sete dias.",
- "stepDoneAnother": "Adicionar outra pessoa",
- "clashTitle": "{name} já tem esse número",
- "clashBlurb": "Duas pessoas não podem dividir um número de celular, porque é com ele que entram. Qual destes casos é?",
- "clashSamePerson": "É {name}",
- "clashSamePersonHint": "A mesma pessoa voltando, ou um nome escrito de outro jeito. Os serviços e as horas continuam com ela, e o nome que você digitou substitui o antigo.",
- "clashTakeover": "Não, é {name}",
- "clashTakeoverHint": "Outra pessoa que agora tem esse número. {name} mantém tudo o que fez aqui mas não pode mais entrar, e você pode dar um número novo depois.",
- "clashDifferentNumber": "Nenhum, quero mudar o número",
- "workshopCountry": "Em que país fica sua oficina?",
- "workshopCountryPlaceholder": "Escolha um país",
- "workshopCountryHint": "Perguntado uma vez só. Depois os celulares podem ser digitados na forma curta. Você pode mudar isso depois em <link>Configurações de localização</link>.",
- "phonePreview": "Salvo como",
- "stepScannedTitle": "{name} entrou",
- "countrySearch": "Buscar países",
- "countryNoMatch": "Nenhum país corresponde",
- "choiceStandalone": "Só um nome para o quadro",
- "choiceStandaloneHint": "Um aprendiz, um terceirizado, qualquer pessoa que você agenda mas que nunca entra. Sem celular, sem e-mail, sem conta. Você pode dar uma depois.",
- "standaloneDetailsTitle": "O nome e uma cor",
- "standaloneDetailsBlurb": "É tudo o que recebe e tudo o que precisa. Aparece no quadro e nos serviços, e não há onde fazer login.",
- "boardColour": "Cor no quadro",
- "stepStandaloneTitle": "{name} está no quadro",
- "stepStandaloneBody": "Você já pode agendar e colocar essa pessoa em serviços. Se um dia precisar do aplicativo, adicione um celular por esta lista.",
- "boardOnly": "Apenas no quadro",
- "boardOnlyHint": "São agendados e colocados em serviços, mas nunca entram. Dê um celular a eles quando precisarem do aplicativo.",
- "boardOnlyNoAccount": "Sem conta",
- "giveApp": "Dar o aplicativo",
- "giveAppTitle": "Dar o aplicativo a {name}",
- "giveAppBlurb": "Só falta um número de celular. É com ele que a pessoa vai entrar daí em diante.",
- "giveAppKeepsHistory": "Tudo o que já está registrado para essa pessoa continua como está.",
- "giveAppSubmit": "Criar a conta",
- "role": "Função",
- "inviteMemberHint": "Ela recebe um e-mail e escolhe a própria senha.",
- "removeBoardOnlyTitle": "Tirar {name} do quadro?",
- "removeBoardOnlyBody": "{name} deixa de aparecer no quadro e não pode mais ser colocado em serviços. O trabalho já registrado e as horas marcadas ficam exatamente como estão.",
- "removeBoardOnlyDone": "{name} saiu do quadro",
- "noRole": "Sem função",
- "worksOnJobs": "Trabalha nos serviços",
- "createDefaultRoles": "Criar as funções padrão",
- "defaultRolesCreated": "Funções padrão criadas",
- "noRolesYet": "Esta oficina ainda não tem funções, então não há o que dar além de Admin. Crie as padrão e ajuste as permissões depois.",
- "noRoleDescription": "Nenhuma permissão. A pessoa consegue entrar, mas todas as telas a recusam até você dar uma função abaixo.",
- "cannotUseApp": "A função dela não permite trabalhar em serviços. Dê primeiro Técnico, ou uma função com as mesmas permissões.",
- "revokeTechnicianDone": "{name} foi desconectado do aplicativo",
- "noAccessTitle": "Ainda sem acesso",
- "noAccessBody": "Sua conta faz parte da {workshop}, mas ainda não recebeu uma função, então não há nada aqui que você possa abrir. Peça uma função ao proprietário ou a um administrador da sua oficina.",
- "setupPageInstall": "Baixar no Google Play"
- },
- "invoice": {
- "title": "Layout da fatura",
- "description": "Configure o que aparece nas faturas PDF geradas.",
- "numberingTitle": "Numeração e prazos",
- "numberingDescription": "Como faturas e orçamentos são numerados, quando as faturas vencem e por quanto tempo os orçamentos ficam válidos.",
- "documentsTitle": "Documentos",
- "documentsDescription": "O que toda fatura e orçamento leva consigo.",
- "tabs": {
- "general": "Geral",
- "layout": "Layout",
- "customFields": "Campos personalizados"
- },
- "invoiceNumberFormat": "Formato do número da fatura",
- "invoiceNumberFormatHint": "Use <code>{year}</code> para o ano atual. Visualização: <bold>{preview}</bold>",
- "quoteNumberFormat": "Formato do número do orçamento",
- "quoteNumberFormatHint": "Use <code>{year}</code> para o ano atual. Visualização: <bold>{preview}</bold>",
- "quoteValidDays": "Validade do orçamento (dias)",
- "quoteValidDaysHint": "Novos orçamentos recebem uma data de validade com esse número de dias. 0 desativa.",
- "sectionInvoices": "Faturas",
- "sectionQuotes": "Orçamentos",
- "nextInvoiceNumber": "Próximo número da fatura",
- "nextInvoiceNumberPlaceholder": "Ex. 94",
- "nextInvoiceNumberHint": "A próxima fatura usara este número (ex. {example})",
- "dueDays": "Dias de vencimento",
- "dueDaysHint": "Número de dias ate o vencimento da fatura",
- "visibilityTitle": "Visibilidade na fatura",
- "companyLogo": "Logo da empresa",
- "companyLogoHint": "Exibir logo da empresa no cabeçalho da fatura",
- "companyName": "Nome da empresa",
- "companyNameHint": "Exibir nome da empresa no cabeçalho da fatura",
- "bankAccount": "Conta bancária",
- "bankAccountHint": "Mostrar conta bancária / IBAN na fatura",
- "organizationNumber": "Número da organização",
- "organizationNumberHint": "Mostrar número da organização no cabeçalho",
- "customFooter": "Rodapé personalizado da fatura",
- "footerPlaceholder": "Obrigado pela preferência!",
- "footerHint": "Este texto aparece no final de cada fatura",
- "saveInvoice": "Salvar configurações da fatura",
- "saved": "Configurações da fatura salvas",
- "layoutDescription": "Personalize a ordem e visibilidade das seções em suas faturas e orçamentos.",
- "layoutSaved": "Layout salvo com sucesso",
- "preview": "Pré-visualização",
- "layoutDocInvoice": "Fatura",
- "layoutDocQuote": "Orçamento",
- "saveLayout": "Salvar layout",
- "resetLayout": "Redefinir",
- "layoutColorsHint": "Cores, fontes e o estilo do timbre ficam em Modelos.",
- "goToTemplates": "Abrir Modelos",
- "lockTitle": "Bloqueio de documentos concluídos",
- "lockDescription": "Impede que uma fatura ou orçamento seja alterado depois de encerrado.",
- "lockWhatItDoes": "O que é bloqueado: peças, mão de obra, quantidades, preços, desconto, imposto, número do documento e data. Excluir o documento também é bloqueado.",
- "lockWhatItAllows": "O que continua funcionando: registrar pagamentos, pagamento online com cartão, mudanças de status, envio e reenvio, anexos e notas internas. Uma fatura bloqueada sempre pode ser paga.",
- "lockUnlockNote": "Proprietários e administradores podem desbloquear um documento específico na página dele quando algo realmente precisa ser corrigido. Todo desbloqueio fica no log de auditoria.",
- "lockDetailsShow": "O que o bloqueio faz",
- "lockDetailsHide": "Ocultar",
- "lockInvoicesLabel": "Bloquear faturas",
- "lockTriggerSent": "Assim que a fatura for enviada",
- "lockTriggerPaid": "Assim que a fatura for paga integralmente",
- "lockTriggerSentHint": "Bloqueia assim que a fatura é enviada por e-mail ou um link de compartilhamento é criado. Faturas enviadas antes de ativar isso não são afetadas.",
- "lockTriggerPaidHint": "Bloqueia quando o valor total é quitado ou a fatura é marcada como paga manualmente. Uma fatura paga em parte continua editável.",
- "lockQuotesLabel": "Bloquear orçamentos",
- "quoteLockTriggerSent": "Assim que o orçamento for enviado",
- "quoteLockTriggerAccepted": "Assim que o orçamento for aceito",
- "quoteLockTriggerSentHint": "Bloqueia assim que o orçamento chega ao cliente. Escolha apenas se você nunca revisa um orçamento durante a negociação.",
- "quoteLockTriggerAcceptedHint": "Bloqueia quando o cliente aceita o orçamento ou ele é convertido em serviço. Orçamentos enviados continuam editáveis.",
- "freezeTitle": "Faturas anteriores ao bloqueio",
- "freezeBody": "{count, plural, one {# fatura chegou} other {# faturas chegaram}} a um cliente antes que esta versão pudesse travar o que uma fatura imprime. Elas ainda são impressas com seus dados, logo e design atuais, então uma mudança feita hoje também as alcança. Travá-las mantém cada uma como é impressa agora.",
- "freezeNone": "Toda fatura que chegou a um cliente está travada como foi enviada.",
- "freezeButton": "Travar com o design atual",
- "freezeConfirmTitle": "Travar {count, plural, one {# fatura} other {# faturas}}?",
- "freezeConfirmBody": "Cada uma mantém o design, o logo, os dados da oficina, o cliente, o veículo e as constatações com que é impressa agora. Não pode ser desfeito, e as faturas continuam editáveis ou travadas para edição exatamente como hoje.",
- "freezeProgress": "Travadas {done} de {total}",
- "freezeDone": "{count, plural, one {# fatura travada} other {# faturas travadas}}",
- "freezeFailed": "Não foi possível travar as faturas",
- "sectionSending": "Envio",
- "attachPdfLabel": "Anexar o PDF aos e-mails",
- "attachPdfHint": "O padrão para cada fatura, orçamento e inspeção que você envia por e-mail. Ligado: o cliente recebe o PDF em anexo. Desligado: ele recebe um link para o documento, e o contador de visualizações mostra quando foi aberto, para você cobrar quem ainda não olhou. Você pode mudar isso em um envio específico na janela de compartilhamento."
- },
- "layoutEditor": {
- "helpText": "Arraste para reordenar. Use o alternador de largura para posicionar seções lado a lado. Seções consecutivas de meia largura (E/D) serão exibidas em duas colunas.",
- "addField": "Adicionar campo",
- "custom": "personalizado",
- "full": "Inteiro",
- "boxed": "Moldura",
- "plain": "Sem moldura",
- "boxedHint": "Impresso dentro de um painel",
- "plainHint": "Impresso sem painel",
- "L": "E",
- "R": "D",
- "left": "esquerda",
- "right": "direita",
- "halfWidthHint": "Meia largura ({column}) — clique para largura inteira",
- "fullWidthHint": "Largura inteira — clique para meia largura (esquerda)",
- "sections": {
- "header": "Cabeçalho",
- "slogan": "Slogan",
- "customer": "Cliente",
- "vehicle": "Veículo",
- "service": "Serviço",
- "document_title": "Título do documento",
- "items_table": "Tabela de itens",
- "parts_table": "Peças",
- "labor_table": "Mão de obra",
- "totals": "Totais",
- "notes": "Notas",
- "attached_documents": "Documentos anexados",
- "diagnostic_notes": "Notas de diagnóstico",
- "findings": "Observações",
- "warranty": "Garantia",
- "bank_account": "Conta bancária",
- "footer": "Rodapé",
- "general": "Geral",
- "telegram_qr": "QR do Telegram"
- },
- "fields": {
- "customer_name": "Nome do cliente",
- "customer_company": "Empresa",
- "customer_address": "Endereço",
- "customer_email": "E-mail",
- "customer_phone": "Telefone",
- "customer_tax_id": "CNPJ do cliente",
- "vehicle_name": "Veículo",
- "vin": "VIN",
- "license_plate": "Placa",
- "mileage": "Quilometragem",
- "service_title": "Título do serviço",
- "service_type": "Tipo de serviço",
- "tech_name": "Técnico",
- "logo": "Logotipo",
- "company_name": "Nome da empresa",
- "company_slogan": "Slogan",
- "company_address": "Endereço",
- "company_phone": "Telefone",
- "company_email": "E-mail",
- "company_org_number": "Número da organização",
- "bank_account": "Conta bancária",
- "footer_note": "Nota de rodapé",
- "org_number": "Número da organização",
- "payment_terms": "Condições de pagamento",
- "due_date": "Data de vencimento",
- "title": "Título",
- "invoice_number": "Nº da fatura",
- "customer_number": "Nº do cliente",
- "date": "Data",
- "portal_link": "Link do portal"
- },
- "presetsTitle": "Começar por uma disposição",
- "presetsHint": "Substitui a disposição abaixo. Nada é salvo até você salvar.",
- "presets": {
- "classic": {
- "name": "Clássica",
- "description": "Peças e mão de obra em tabelas separadas, dados empilhados à esquerda"
- },
- "letterhead": {
- "name": "Timbre",
- "description": "Contatos no rodapé, título abaixo dos endereços"
- },
- "compact": {
- "name": "Compacta",
- "description": "Sem painéis, só o essencial"
- },
- "minimal": {
- "name": "Minimalista",
- "description": "Tipografia pura sobre branco: sem caixas nem faixas, só linhas e espaço"
- },
- "itemized": {
- "name": "Discriminado",
- "description": "Uma lista de itens numerada com coluna de unidade"
- },
- "detailed": {
- "name": "Detalhada",
- "description": "Título no topo, veículo sozinho, as duas tabelas e todos os blocos opcionais"
- }
- },
- "style": {
- "documentTitle": "Folha inteira",
- "documentHint": "tamanho, espaçamento, acento, faixas",
- "textColor": "Texto",
- "labelColor": "Título",
- "backgroundColor": "Preenchimento",
- "borderColor": "Borda",
- "fontSize": "Tamanho",
- "rowPadding": "Altura da linha",
- "margin": "Margem",
- "accentColor": "Acento",
- "stripeColor": "Faixa",
- "stripes": "Faixas",
- "fontFamily": "Fonte",
- "fontInherit": "Herdar"
- }
- },
- "templates": {
- "title": "Modelos",
- "invoiceDescription": "Personalize a aparência das suas faturas e orçamentos PDF.",
- "inspectionsDescription": "Gerencie listas de verificação de inspeção e modelos multiponto.",
- "smsDescription": "Personalize as mensagens SMS enviadas aos clientes.",
- "tabs": {
- "invoice": "Fatura",
- "quotation": "Orçamento",
- "inspections": "Inspeções",
- "sms": "SMS",
- "layout": "Layout"
- },
- "presets": "Presets de modelo",
- "primaryColor": "Cor primária",
- "colors": "Cores",
- "textColor": "Texto",
- "textColorHint": "A cor dos títulos e do texto",
- "companyTextColor": "Nome da empresa",
- "companyTextColorHint": "A cor do nome no timbre",
- "frameBorderColor": "Linha da moldura",
- "frameBorderColorHint": "A linha onde a moldura encontra o papel",
- "frameShadow": "Sombra da moldura",
- "frameShadowOn": "Com sombra",
- "frameShadowOff": "Plano",
- "backgroundColor": "Fundo",
- "backgroundColorClear": "Limpar",
- "backgroundColorHint": "Deixe vazio para papel branco. Um tom claro imprime como folha tingida.",
- "fontAndLayout": "Fonte e layout",
- "fontFamily": "Família de fontes",
- "helveticaDefault": "Helvetica (Padrão)",
- "timesRoman": "Times Roman",
- "courier": "Courier",
- "headerStyle": "Estilo do cabeçalho",
- "logoSize": "Tamanho do logotipo",
- "standard": "Padrão",
- "compact": "Compacto",
- "modern": "Moderno",
- "framed": "Com moldura",
- "letterheadMark": "Timbre",
- "letterheadLogo": "Logotipo",
- "letterheadCompanyName": "Nome da empresa",
- "preview": "Visualização de {name}",
- "billTo": "Faturar para",
- "preparedFor": "Preparado para",
- "vehicle": "Veículo",
- "part": "Peça",
- "qty": "Qtd.",
- "price": "Preço",
- "total": "Total",
- "labor": "Mao de obra",
- "hours": "Horas",
- "rate": "Taxa",
- "subtotal": "Subtotal",
- "tax": "Imposto ({rate}%)",
- "previewService": "Serviço",
- "previewNotes": "Observações",
- "previewDiagnosticNotes": "Notas de diagnóstico",
- "previewDue": "Vencimento: {date}",
- "previewAdditionalInfo": "Informações adicionais",
- "previewThankYou": "Obrigado pela preferência",
- "saveInvoiceTemplate": "Salvar modelo de fatura",
- "saveQuotationTemplate": "Salvar modelo de orçamento",
- "invoiceTemplateSaved": "Configurações do modelo de fatura salvas",
- "quotationTemplateSaved": "Configurações do modelo de orçamento salvas",
- "failedSave": "Falha ao salvar configurações",
- "smsTemplates": "Modelos de mensagens SMS",
- "smsTemplatesDescription": "Personalize as mensagens de texto enviadas aos clientes. Use variáveis como <code>'{companyName}'</code> para inserir valores dinâmicos.",
- "reset": "Redefinir",
- "invoiceReady": "Fatura pronta",
- "invoiceReadyDescription": "Enviada ao compartilhar uma fatura com um cliente.",
- "quoteReady": "Orçamento pronto",
- "quoteReadyDescription": "Enviada ao compartilhar um orçamento com um cliente.",
- "inspectionReady": "Inspeção pronta",
- "inspectionReadyDescription": "Enviada ao compartilhar um relatório de inspeção com um cliente.",
- "statusInProgress": "Status: Em andamento",
- "statusInProgressDescription": "Enviada quando o status de uma ordem de serviço muda para Em andamento.",
- "statusWaitingParts": "Status: Aguardando peças",
- "statusWaitingPartsDescription": "Enviada quando o status muda para Aguardando peças.",
- "statusReady": "Status: Pronto para retirada",
- "statusReadyDescription": "Enviada quando o status muda para Pronto.",
- "statusCompleted": "Status: Concluído",
- "statusCompletedDescription": "Enviada quando o status muda para Concluído.",
- "paymentReceived": "Pagamento recebido",
- "paymentReceivedDescription": "Enviada quando um pagamento é registrado para uma fatura.",
- "saveSmsTemplates": "Salvar modelos SMS",
- "smsTemplateSaved": "Configurações dos modelos SMS salvas",
- "smsDefaults": {
- "invoiceReady": "Sua fatura está pronta. Veja aqui: {share_link}",
- "quoteReady": "Seu orçamento está pronto para revisão. Veja aqui: {share_link}",
- "inspectionReady": "O relatório de inspeção do seu veículo está pronto. Veja aqui: {share_link}",
- "statusInProgress": "O trabalho no seu veículo foi iniciado. Manteremos você informado.",
- "statusWaitingParts": "Seu veículo está aguardando peças. Avisaremos quando o trabalho for retomado.",
- "statusReady": "Seu veículo está pronto para retirada!",
- "statusCompleted": "Seu serviço está concluído. Obrigado pela preferência!",
- "paymentReceived": "Pagamento de {amount} recebido para a fatura {invoice_number}. Obrigado!"
- },
- "colorPresets": {
- "amber": "Âmbar",
- "blue": "Azul",
- "emerald": "Esmeralda",
- "red": "Vermelho",
- "purple": "Roxo",
- "slate": "Ardósia",
- "rose": "Rosa",
- "indigo": "Índigo"
- },
- "layoutTitle": "Layout da fatura",
- "layoutDescription": "Personalize a ordem e visibilidade das seções nas suas faturas e orçamentos.",
- "layoutSaved": "Layout salvo com sucesso",
- "layoutDocInvoice": "Fatura",
- "layoutDocQuote": "Orçamento",
- "goToLayout": "Disposição e seções",
- "openDesigner": "Abrir o designer",
- "designerIntro": "Escolha um ponto de partida e abra o designer para mudar tudo.",
- "designerHint": "Cores, fontes, espaçamento e todas as seções ficam no designer."
- },
- "payment": {
- "readMore": "Saiba mais",
- "detailsTitle": "Detalhes de pagamento",
- "detailsDescription": "Conta bancária e condições de pagamento nas faturas.",
- "bankAccount": "Conta bancária (IBAN)",
- "bankAccountPlaceholder": "NO93 8601 1117 947",
- "bankAccountHint": "Seu número de conta bancária ou IBAN para receber pagamentos",
- "paymentTerms": "Condições de pagamento",
- "paymentTermsPlaceholder": "Líquido 14 dias",
- "paymentTermsHint": "Texto das condições de pagamento nas faturas (ex. \"Líquido 14 dias\", \"No recebimento\")",
- "onlinePayments": "Pagamentos online",
- "onlinePaymentsDescription": "Deixe os clientes pagarem faturas pelo link que você envia. Stripe, Vipps e PayPal são conectados em Integrações e podem funcionar juntos.",
- "onlinePaymentsHint": "Quando um cliente paga, o provedor avisa a Torqvoice e a fatura se marca como paga sozinha. A página de cada provedor mostra a URL de notificação de que ele precisa.",
- "offered": "Nos links de fatura",
- "paused": "Conectado, não oferecido",
- "termsOfSale": "Termos de venda",
- "termsOfSaleDescription": "O que um cliente aceita ao pagar online. O Vipps exige termos publicados; a fatura faz link para eles de qualquer forma.",
- "termsOfSaleText": "Texto dos termos",
- "externalTermsUrl": "URL de condições externas (opcional)",
- "externalTermsUrlHint": "Link para uma página externa com suas condições. Se definido, a fatura ira direcionar aqui.",
- "publicTermsUrl": "URL publica das condições",
- "publicTermsUrlHint": "Compartilhe esta URL com o Vipps ou vincule-a ao seu site.",
- "savePayment": "Salvar configurações de pagamento",
- "saved": "Configurações de pagamento salvas"
- },
- "tax": {
- "title": "Imposto",
- "description": "Configure a taxa de imposto aplicada a faturas, orçamentos e ordens de serviço.",
- "modeLabel": "Modo de imposto",
- "modeHint": "Escolha se os preços das linhas sao inseridos com imposto ja incluído (inclusivo) ou antes do imposto (exclusivo). Os registros existentes mantem o modo com o qual foram criados.",
- "modeExclusive": "Exclusivo",
- "modeInclusive": "Inclusivo",
- "modeExclusiveExample": "Exemplo: 100 + {rate}% de imposto = 100 + imposto por cima.",
- "modeInclusiveExample": "Exemplo: 100 ja inclui {rate}% de imposto — a parte do imposto e calculada de tras para frente.",
- "lineItemsInclTaxLabel": "Mostrar preços das linhas com impostos em faturas e orçamentos",
- "lineItemsInclTaxHint": "Altera apenas o que é impresso em faturas e orçamentos, incluindo os PDFs e as cópias que os clientes abrem por link. Ligado: cada linha de peças e mão de obra e o subtotal aparecem com impostos incluídos, e a linha de impostos indica quanto disso é imposto. Desligado: preços sem impostos, com o imposto somado no final. Ordens de serviço e os preços que você digita não mudam.",
- "labelLabel": "Rótulo de imposto",
- "labelHint": "Nome personalizado exibido em faturas e orçamentos (ex. ICMS, IVA). Deixe em branco para usar o padrão traduzido.",
- "labelPlaceholder": "Imposto",
- "splitLabel": "Dividir o imposto em várias taxas",
- "splitHint": "Para lugares que cobram mais de um imposto na mesma fatura, como GST e QST no Quebec ou CGST e SGST na Índia. Cada imposto é impresso em uma linha própria com seu próprio número de registro, e o relatório de impostos os mantém separados.",
- "splitIncomplete": "Dê um nome e uma taxa a cada imposto antes de salvar.",
- "presetLabel": "Começar a partir de um modelo",
- "presetPlaceholder": "Escolha uma região",
- "presets": {
- "caQc": "Quebec, Canadá (GST + QST)",
- "caBc": "Colúmbia Britânica, Canadá (GST + PST)",
- "caSk": "Saskatchewan, Canadá (GST + PST)",
- "caMb": "Manitoba, Canadá (GST + RST)",
- "inIntra": "Índia, mesmo estado (CGST + SGST a 18%)"
- },
- "componentName": "Nome",
- "componentNamePlaceholder": "GST",
- "componentRate": "Taxa",
- "componentRegistration": "Número de registro",
- "componentRegistrationPlaceholder": "123456789 RT0001",
- "componentRemove": "Remover este imposto",
- "registrationHint": "Impresso nas faturas abaixo dos dados da sua empresa. Deixe em branco para um imposto no qual você não está registrado.",
- "addComponent": "Adicionar um imposto",
- "combinedRate": "Taxa combinada",
- "combinedRateHint": "Novas ordens de serviço e orçamentos são tributados pela soma das taxas acima.",
- "convertInclusiveLabel": "Converter registros existentes para modo inclusivo",
- "convertInclusiveHint": "Escala cada preço de linha para cima pela taxa de imposto para que os preços incluam imposto. Os totais para o cliente não mudam. Elegíveis: {serviceRecords} ordens de serviço, {quotes} orçamentos.",
- "convertInclusiveButton": "Converter para inclusivo",
- "convertInclusiveConfirmTitle": "Converter registros existentes para modo inclusivo?",
- "convertInclusiveConfirmDescription": "Isso reescreverá os preços de linha de {serviceRecords} ordens de serviço e {quotes} orçamentos para incluir imposto. Os totais para o cliente não mudarão, mas os preços impressos em faturas anteriores aparecerão mais altos. Esta ação não pode ser desfeita.",
- "convertInclusiveConfirmLabel": "Converter registros",
- "convertInclusiveSuccess": "Convertidas {serviceRecords} ordens de serviço e {quotes} orçamentos para modo inclusivo.",
- "convertInclusiveFailed": "Falha ao converter registros para modo inclusivo",
- "convertInclusiveNoRecords": "Nenhum registro em modo exclusivo para converter.",
- "convertExclusiveLabel": "Converter registros existentes para modo exclusivo",
- "convertExclusiveHint": "Escala cada preço de linha para baixo pela taxa de imposto para que os preços mostrem valores antes do imposto. Os totais para o cliente não mudam. Elegíveis: {serviceRecords} ordens de serviço, {quotes} orçamentos.",
- "convertExclusiveButton": "Converter para exclusivo",
- "convertExclusiveConfirmTitle": "Converter registros existentes para modo exclusivo?",
- "convertExclusiveConfirmDescription": "Isso reescreverá os preços de linha de {serviceRecords} ordens de serviço e {quotes} orçamentos para mostrar valores antes do imposto. Os totais para o cliente não mudarão, mas os preços impressos em faturas anteriores aparecerão mais baixos. Esta ação não pode ser desfeita.",
- "convertExclusiveConfirmLabel": "Converter registros",
- "convertExclusiveSuccess": "Convertidas {serviceRecords} ordens de serviço e {quotes} orçamentos para modo exclusivo.",
- "convertExclusiveFailed": "Falha ao converter registros para modo exclusivo",
- "convertExclusiveNoRecords": "Nenhum registro em modo inclusivo para converter."
- },
- "currency": {
- "title": "Moeda e impostos",
- "description": "Moeda padrão e taxa de imposto para faturas e registros de serviço.",
- "currencyLabel": "Moeda",
- "searchCurrency": "Pesquisar moeda...",
- "noCurrencyFound": "Nenhuma moeda encontrada.",
- "previewLabel": "Visualização: {value}",
- "enableTax": "Ativar impostos",
- "enableTaxHint": "Mostrar calculo de impostos em faturas e registros de serviço",
- "defaultTaxRate": "Taxa de imposto padrão (%)",
- "defaultTaxRateHint": "Preenchido automaticamente ao criar novos registros de serviço",
- "applyTaxToExistingLabel": "Aplicar imposto aos registros existentes",
- "applyTaxToExistingHint": "Aplica a taxa de imposto padrão as ordens de serviço e orçamentos existentes sem taxa definida. Elegíveis: {serviceRecords} ordens de serviço, {quotes} orçamentos.",
- "applyTaxToExistingButton": "Aplicar imposto aos registros existentes",
- "applyTaxConfirmTitle": "Aplicar imposto aos registros existentes?",
- "applyTaxConfirmDescription": "Isso definirá a taxa de imposto em {rate}% em {serviceRecords} ordens de serviço e {quotes} orçamentos que atualmente nao tem taxa, e recalculara seus totais. Registros com uma taxa personalizada nao serão alterados. Esta ação nao pode ser desfeita.",
- "applyTaxConfirmLabel": "Aplicar imposto",
- "applyTaxSuccess": "Atualizadas {serviceRecords} ordens de serviço e {quotes} orçamentos.",
- "applyTaxFailed": "Falha ao aplicar imposto aos registros existentes",
- "applyTaxNoRecords": "Nenhum registro precisa da taxa de imposto padrão.",
- "saveSettings": "Salvar configurações",
- "saved": "Configurações salvas",
- "currencies": {
- "USD": "Dolar americano",
- "EUR": "Euro",
- "GBP": "Libra esterlina",
- "NOK": "Coroa norueguesa",
- "SEK": "Coroa sueca",
- "DKK": "Coroa dinamarquesa",
- "CHF": "Franco suico",
- "CAD": "Dolar canadense",
- "AUD": "Dolar australiano",
- "NZD": "Dolar neozelandes",
- "JPY": "Iene japones",
- "CNY": "Yuan chines",
- "INR": "Rupia indiana",
- "BRL": "Real brasileiro",
- "MXN": "Peso mexicano",
- "PLN": "Zloti polones",
- "CZK": "Coroa tcheca",
- "HUF": "Florim hungaro",
- "TRY": "Lira turca",
- "ZAR": "Rand sul-africano",
- "KRW": "Won sul-coreano",
- "SGD": "Dolar de Singapura",
- "HKD": "Dolar de Hong Kong",
- "THB": "Baht tailandes",
- "ISK": "Coroa islandesa",
- "RON": "Leu romeno",
- "ILS": "Shekel israelense",
- "PHP": "Peso filipino",
- "IDR": "Rupia indonesia",
- "MYR": "Ringgit malaio",
- "LKR": "Rupia do Sri Lanka",
- "AED": "Dirham dos EAU",
- "SAR": "Rial saudita",
- "RUB": "Rublo russo",
- "TWD": "Dolar taiwanes",
- "VND": "Dong vietnamita",
- "PKR": "Rupia paquistanesa",
- "BDT": "Taka bengalesa",
- "NPR": "Rupia nepalesa",
- "BGN": "Lev bulgaro",
- "UAH": "Hryvnia ucraniana",
- "CLP": "Peso chileno",
- "COP": "Peso colombiano",
- "ARS": "Peso argentino",
- "PEN": "Sol peruano",
- "EGP": "Libra egipcia",
- "NGN": "Naira nigeriana",
- "KES": "Xelim queniano",
- "MAD": "Dirham marroquino",
- "DZD": "Dinar argelino",
- "GHS": "Cedi ganes",
- "QAR": "Rial catariano",
- "KWD": "Dinar kuwaitiano",
- "BHD": "Dinar do Bahrein",
- "OMR": "Rial omanense",
- "JOD": "Dinar jordaniano"
- },
- "formatTitle": "Formato da moeda",
- "formatSymbolName": "Simbolo",
- "formatCodeName": "Código",
- "formatSymbolLabel": "Simbolo: {value}",
- "formatCodeLabel": "Código: {value}"
- },
- "localization": {
- "languageTitle": "Idioma",
- "languageDescription": "Escolha o idioma de exibição do aplicativo.",
- "language": "Idioma",
- "forceCustomerLocale": "Forçar este idioma nas páginas voltadas ao cliente",
- "forceCustomerLocaleHint": "Quando ativado, o portal do cliente e as faturas, orçamentos e inspeções compartilhadas aparecem no idioma da sua oficina, independentemente das configurações do navegador do visitante. Quando desativado, as páginas voltadas aos clientes seguem o idioma do navegador do visitante.",
- "defaultCountryCode": "Código de país padrão",
- "defaultCountryCodeHint": "Usado quando os clientes fazem login no portal por SMS — aplicado a números de telefone sem código de país (seus ou do cliente). Formato: + seguido de dígitos, ex: +55.",
- "defaultCountryCodeInvalid": "Digite um código de país válido, ex: +55, 55 ou 0055.",
- "saved": "Configurações de localização salvas",
- "saveSettings": "Salvar configurações"
- },
- "customFields": {
- "title": "Campos personalizados",
- "description": "Defina campos personalizados que aparecem em registros de serviço e orçamentos.",
- "addField": "Adicionar campo",
- "filterAll": "Todos",
- "serviceRecord": "Registro de serviço",
- "quote": "Orçamento",
- "emptyState": "Nenhum campo personalizado definido ainda. Clique em \"Adicionar campo\" para criar um.",
- "required": "Obrigatório",
- "inactive": "Inativo",
- "editField": "Editar campo",
- "newField": "Novo campo personalizado",
- "label": "Rótulo",
- "labelPlaceholder": "ex. Expiração da garantia",
- "fieldName": "Nome do campo (ID)",
- "fieldNamePlaceholder": "expiração_garantia",
- "fieldNameHint": "Apenas letras minúsculas, números e underscores.",
- "fieldType": "Tipo de campo",
- "entityType": "Tipo de entidade",
- "fieldTypes": {
- "text": "Texto",
- "number": "Número",
- "date": "Data",
- "select": "Seleção (Dropdown)",
- "checkbox": "Caixa de seleção",
- "textarea": "Área de texto"
- },
- "optionsLabel": "Opções (separadas por vírgulas)",
- "optionsPlaceholder": "Opção 1, Opção 2, Opção 3",
- "active": "Ativo",
- "cancel": "Cancelar",
- "update": "Atualizar",
- "create": "Criar",
- "deleteTitle": "Excluir campo personalizado",
- "deleteDescription": "Isso excluirá permanentemente \"{label}\" e todos os seus valores salvos. Esta ação não pode ser desfeita.",
- "fieldCreated": "Campo personalizado criado",
- "fieldUpdated": "Campo personalizado atualizado",
- "fieldDeleted": "Campo personalizado excluído",
- "failedSave": "Falha ao salvar campo",
- "failedDelete": "Falha ao excluir",
- "edit": "Edit",
- "delete": "Delete",
- "unassigned": "Não atribuído",
- "defaultValue": "Valor padrão",
- "defaultValueHint": "Preenchido automaticamente em novos registros e impresso enquanto nenhum valor for informado.",
- "defaultValueNone": "Nenhum",
- "defaultValueCheckedHint": "Marcado por padrão",
- "placement": "Posição no documento",
- "placementHidden": "Não é impresso",
- "placementHint": "Em qual seção da fatura ou do orçamento este campo é impresso. No designer você também pode ativá-lo em mais seções.",
- "failedSavePlacement": "Não foi possível salvar a posição do campo"
- },
- "workshop": {
- "title": "Padroes da oficina",
- "description": "Valores padrão ao criar novos registros de serviço.",
- "defaultTechnician": "Nome do técnico padrão",
- "technicianPlaceholder": "Buscar técnico...",
- "failedCreateTech": "Falha ao criar técnico",
- "creating": "Criando...",
- "createTechnician": "Criar \"{name}\"",
- "newTechPlaceholder": "Nome do técnico",
- "addTech": "Adicionar",
- "addNewTech": "+ Adicionar novo",
- "defaultLaborRate": "Taxa de mao de obra padrão (por hora)",
- "laborRatePlaceholder": "75,00",
- "partsMarkupTitle": "Margem de Peças",
- "partsMarkupDescription": "Margem aplicada ao custo do fornecedor ao adicionar peças. Apenas interno. O cliente nunca vê o custo ou a margem, somente o preço final.",
- "defaultMarkupPercent": "Margem Padrão %",
- "defaultMarkupPercentHint": "Novas peças adicionadas manualmente são pré-preenchidas com esta margem. Deixe em 0 para inserir preços manualmente.",
- "markupAppliesToInventory": "Aplicar margem a peças do estoque",
- "markupAppliesToInventoryHint": "Quando ativado, peças selecionadas do estoque também usam custo + margem padrão (substitui o preço de venda do estoque).",
- "unitsTitle": "Unidades",
- "unitsDescription": "Escolha entre metrico (km, litros) e imperial (milhas, galoes).",
- "unitSystem": "Sistema de unidades",
- "metric": "Metrico (km, litros)",
- "imperial": "Imperial (milhas, galoes)",
- "distanceLabel": "Distancia",
- "volumeLabel": "Volume",
- "kilometers": "quilometros (km)",
- "liters": "litros (L)",
- "miles": "milhas (mi)",
- "gallons": "galoes (gal)",
- "defaultStockUnit": "Unidade de estoque padrão",
- "defaultStockUnitHint": "Preenchida automaticamente em novas peças do estoque. Cada peça ainda pode usar sua própria unidade.",
- "saveWorkshop": "Salvar configurações da oficina",
- "saved": "Configurações da oficina salvas",
- "assignDialogTitle": "Atribuir às ordens de serviço existentes?",
- "assignDialogDescription": "Deseja atribuir {name} a todas as ordens de serviço que não têm um técnico atribuído?",
- "assignDialogConfirm": "Sim, atribuir",
- "assignDialogSkip": "Não, pular",
- "assignedUnassigned": "{count, plural, =0 {Nenhuma ordem sem técnico encontrada} one {1 ordem atribuída} other {# ordens atribuídas}}",
- "assignFailed": "Falha ao atribuir ordens de serviço",
- "noTechnician": "Nenhum",
- "weekStartDay": "Início da semana",
- "workDayStart": "Início do expediente",
- "workDayEnd": "Fim do expediente",
- "titleTemplateTitle": "Título da ordem de serviço",
- "titleTemplateDescription": "Como uma nova ordem de serviço se chama antes que alguém digite um título. Monte-o com as tags abaixo; cada serviço abre com as tags preenchidas e o título ainda pode ser alterado no serviço.",
- "titleTemplate": "Modelo do título",
- "titleTemplatePlaceholder": "Deixe vazio para que cada serviço comece como \"New Service Record\"",
- "titleTemplateHint": "Clique em uma tag para adicioná-la. Uma tag sem conteúdo, como um veículo sem placa, é omitida junto com o separador.",
- "titleTemplatePreview": "Exemplo: {title}",
- "titleTemplateUnknown": "Tags desconhecidas são omitidas: {tags}",
- "titleTemplateTags": {
- "order_number": "Número da ordem",
- "license_plate": "Placa",
- "customer_name": "Nome do cliente",
- "vehicle": "Veículo (ano, marca, modelo)",
- "make": "Marca",
- "model": "Modelo",
- "year": "Ano",
- "vin": "Chassi (VIN)",
- "technician": "Técnico",
- "date": "Data"
- },
- "weekDays": {
- "0": "Domingo",
- "1": "Segunda-feira",
- "2": "Terça-feira",
- "3": "Quarta-feira",
- "4": "Quinta-feira",
- "5": "Sexta-feira",
- "6": "Sábado"
- }
- },
- "maintenance": {
- "title": "Manutenção preditiva",
- "description": "Preveja a quilometragem atual de cada veículo a partir do histórico de serviço e mostre veículos que precisam ou estão próximos do próximo serviço.",
- "enablePredicted": "Ativar manutenção preditiva",
- "enablePredictedHint": "Mostrar previsoes nos detalhes do veículo e painel",
- "serviceInterval": "Intervalo de serviço ({unit})",
- "serviceIntervalHint": "Distancia entre serviços recomendados",
- "approachingThreshold": "Limite de proximidade ({unit})",
- "approachingThresholdHint": "Mostrar aviso quando estiver dentro desta distancia do próximo serviço",
- "saveMaintenance": "Salvar configurações de manutenção",
- "saved": "Configurações de manutenção salvas"
- },
- "appearance": {
- "title": "Aparência",
- "description": "Personalize a aparência do Torqvoice.",
- "themeLabel": "Tema",
- "themeHint": "Escolha o esquema de cores do aplicativo. A escolha é salva neste dispositivo.",
- "themes": {
- "light": "Claro",
- "dark": "Escuro",
- "graphite": "Grafite",
- "ocean": "Oceano",
- "forest": "Floresta",
- "midnight": "Meia-noite",
- "carbon": "Carbono",
- "system": "Sistema"
- },
- "dateTimeTitle": "Data e hora",
- "dateTimeDescription": "Configure como datas e horários sao exibidos no aplicativo.",
- "dateFormat": "Formato de data",
- "timeFormat": "Formato de hora",
- "time12h": "12 horas (2:30 PM)",
- "time24h": "24 horas (14:30)",
- "timezone": "Fuso horário",
- "timezoneAuto": "Detectar automaticamente (navegador)",
- "searchTimezone": "Pesquisar fuso horário...",
- "noTimezoneFound": "Nenhum fuso horário encontrado.",
- "timezoneHint": "Com deteccao automatica, cada usuário ve as datas no fuso horário do navegador.",
- "previewLabel": "Visualização",
- "dateLabel": "Data",
- "dateTimeLabel": "Data e hora",
- "saveSettings": "Salvar configurações",
- "saved": "Configurações salvas"
- },
- "data": {
- "title": "Gerenciamento de dados",
- "description": "Traga dados do seu sistema antigo, baixe um backup de tudo ou restaure um.",
- "exportTitle": "Exportar dados",
- "exportDescription": "Baixe seus dados como arquivo zip. Selecione as categorias a incluir no backup.",
- "includeInBackup": "Incluir no backup:",
- "selectAll": "Selecionar tudo",
- "deselectAll": "Desmarcar tudo",
- "optSettings": "Configurações",
- "optSettingsDesc": "Info da oficina, config de faturas, provedores de pagamento",
- "optCustomers": "Clientes",
- "optCustomersDesc": "Registros de clientes e informações de contato",
- "optVehicles": "Veículos e registros de serviço",
- "optVehiclesDesc": "Veículos, notas, registros de combustível, lembretes, registros de serviço",
- "optQuotes": "Orçamentos",
- "optQuotesDesc": "Orçamentos com peças e mao de obra",
- "optInventory": "Inventário",
- "optInventoryDesc": "Peças do inventário e niveis de estoque",
- "optTechnicians": "Técnicos",
- "optTechniciansDesc": "Perfis de técnicos e atribuições do quadro de trabalho",
- "optInspections": "Inspeções",
- "optInspectionsDesc": "Modelos de inspeção, inspeções e resultados",
- "optAuditLogs": "Registros de auditoria",
- "optAuditLogsDesc": "Histórico de atividades e alterações",
- "optSmsMessages": "Mensagens",
- "optSmsMessagesDesc": "Mensagens SMS, WhatsApp e Telegram enviadas e recebidas",
- "optScheduledMessages": "Mensagens agendadas",
- "optScheduledMessagesDesc": "Mensagens na fila e recorrentes aguardando envio",
- "optNotifications": "Notificações",
- "optNotificationsDesc": "Notificações do sistema",
- "optCustomFields": "Campos personalizados",
- "optCustomFieldsDesc": "Definições e valores de campos personalizados",
- "optFiles": "Arquivos enviados",
- "optFilesDesc": "Imagens, anexos de serviço, logo",
- "filesWarning": "Inclui arquivos enviados — o backup pode ser maior",
- "downloadBackup": "Baixar backup",
- "exportComplete": "Exportacao concluída",
- "exportCompleteMessage": "Seu arquivo de backup foi baixado.",
- "exportFailed": "Exportacao falhou",
- "exportFailedMessage": "Nao foi possível exportar seus dados. Tente novamente.",
- "importTitle": "Importar dados",
- "importWarning": "A importação ira <bold>substituir todos os dados existentes</bold> pelo conteúdo do arquivo de backup. Esta ação nao pode ser desfeita.",
- "importFileHint": "Suporta arquivos de backup .zip (v2) e .json (v1).",
- "uploadRestore": "Enviar e restaurar",
- "importComplete": "Importação concluída",
- "importCompleteMessage": "Todos os dados foram restaurados do arquivo de backup.",
- "importFailed": "Importação falhou",
- "importFromOther": "Importar de outros serviços",
- "importFromOtherDescription": "Migre seus dados de outra plataforma. Selecione um serviço para começar.",
- "lubelogTitle": "Importar do LubeLog",
- "lubelogExportSteps": "Como exportar seus dados do LubeLog:",
- "lubelogStep1": "Abra sua instancia do LubeLog",
- "lubelogStep2": "Va para <bold>Settings</bold>",
- "lubelogStep3": "Clique em <bold>Make Backup</bold> para baixar um arquivo zip",
- "lubelogStep4": "Envie o arquivo zip baixado abaixo",
- "lubelogAddNote": "Isto ira <bold>adicionar dados junto</bold> aos seus registros existentes — nada será excluído.",
- "lubelogImported": "O que será importado:",
- "lubelogVehicles": "Veículos",
- "lubelogServiceRecords": "Registros de serviço com anexos",
- "lubelogNotes": "Notas",
- "lubelogFileHint": "Arquivos ate 200MB suportados.",
- "lubelogImportComplete": "Importação do LubeLog concluída",
- "cancel": "Cancelar",
- "import": "Importar",
- "invoiceNinjaTitle": "Importar do Invoice Ninja",
- "invoiceNinjaExportSteps": "Como exportar seus dados do Invoice Ninja:",
- "invoiceNinjaStep1": "Abra sua instancia do Invoice Ninja",
- "invoiceNinjaStep2": "Va para <bold>Settings > Import | Export</bold>",
- "invoiceNinjaStep3": "Clique em <bold>Export</bold> para baixar um arquivo zip",
- "invoiceNinjaStep4": "Envie o arquivo zip baixado abaixo",
- "invoiceNinjaAddNote": "Isto ira <bold>adicionar dados junto</bold> aos seus registros existentes — nada será excluído.",
- "invoiceNinjaImported": "O que será importado:",
- "invoiceNinjaCustomers": "Clientes",
- "invoiceNinjaProducts": "Produtos (inventário)",
- "invoiceNinjaInvoices": "Faturas como registros de serviço (peças e mao de obra)",
- "invoiceNinjaDocuments": "Documentos e anexos",
- "invoiceNinjaPayments": "Pagamentos",
- "invoiceNinjaFileHint": "Envie um arquivo de exportacao zip do Invoice Ninja. Arquivos ate 200MB suportados.",
- "invoiceNinjaImportComplete": "Importação do Invoice Ninja concluída",
- "backupStatus": {
- "title": "Proteção de dados",
- "description": "Levamos seus dados a sério. Todos os dados da sua organização, incluindo clientes, veículos, ordens de serviço, faturas e arquivos enviados, passam por backup automático a cada hora. Os backups são protegidos com criptografia AES-256 antes de sair da nossa infraestrutura e armazenados em um local separado e seguro, de modo que nenhuma parte externa pode lê-los.",
- "lastBackup": "Último backup:",
- "supportPrompt": "Se tiver dúvidas sobre como seus dados são protegidos,",
- "supportAction": "fale com nossa equipe de suporte."
- },
- "optTireHotel": "Hotel de pneus",
- "optTireHotelDesc": "Jogos armazenados, prateleiras, preparação e contratos de armazenagem",
- "optWorkshopConfig": "Configuração da oficina",
- "optWorkshopConfigDesc": "Modelos de mão de obra, funções, webhooks e relatórios agendados",
- "importHubDescription": "Escolha onde seus dados estão hoje. Importações de planilhas e aplicativos são adicionadas ao que você já tem e podem ser desfeitas; restaurar um backup substitui tudo.",
- "sourceSpreadsheet": "Planilha ou CSV",
- "sourceSpreadsheetDesc": "Exportações de qualquer sistema de oficina, ferramenta contábil, Contatos do Google, Outlook ou Excel. Você confirma o mapeamento das colunas e vê uma simulação antes de qualquer gravação.",
- "sourceLubelogDesc": "Veículos, registros de serviço e anotações de um backup do LubeLog.",
- "sourceInvoiceNinjaDesc": "Clientes, produtos, faturas e pagamentos de uma exportação do Invoice Ninja.",
- "sourceBackup": "Backup do Torqvoice",
- "sourceBackupDesc": "Um arquivo .zip ou .json baixado nesta página. Restaurar substitui tudo nesta oficina.",
- "restore": "Restaurar",
- "restoreTitle": "Restaurar um backup"
- },
- "license": {
- "title": "Licença marca branca",
- "description": "Ative uma licença marca branca para remover a marca Torqvoice das faturas e do aplicativo.",
- "purchaseWhiteLabel": "Comprar marca branca",
- "status": "Status:",
- "active": "Ativa",
- "inactive": "Inativa",
- "lastChecked": "Última verificação: {date}",
- "enterLicenseKey": "Insira a chave de licença",
- "validate": "Validar",
- "validated": "Licença validada com sucesso",
- "invalid": "Chave de licença invalida",
- "failedValidate": "Falha ao validar a licença",
- "keyHint": "Cada chave de licença esta vinculada a esta organização e nao pode ser compartilhada entre varias organizações.",
- "expired": "Expirada",
- "unverified": "Não verificada",
- "expiresOn": "Expira em: {date}",
- "unreachable": "Não foi possível acessar torqvoice.com. A licença salva neste servidor permanece inalterada.",
- "unverifiedHint": "Este servidor não consegue confirmar a licença com torqvoice.com há {days} dias. A marca Torqvoice volta após {max} dias sem uma verificação bem-sucedida.",
- "rejected": "torqvoice.com não aceitou esta chave: {reason}",
- "signedHint": "A validação é assinada por torqvoice.com e repetida diariamente, portanto o servidor precisa de acesso de saída a torqvoice.com."
- },
- "about": {
- "title": "Sobre o Torqvoice",
- "description": "Torqvoice e sua solucao completa de gerenciamento de serviços veiculares. Rastreie histórico de serviços, reparos e muito mais.",
- "version": "Versao",
- "website": "Site",
- "documentation": "Documentacao",
- "changelog": "Registro de alterações"
- },
- "portal": {
- "title": "Portal do cliente",
- "description": "Permita que seus clientes facam login e visualizem seus veículos, faturas, orçamentos e inspeções. Os clientes também podem enviar solicitações de serviço.",
- "enablePortal": "Ativar portal do cliente",
- "enablePortalHint": "Clientes com endereço de e-mail podem fazer login via link magico",
- "enabled": "Portal do cliente ativado",
- "disabled": "Portal do cliente desativado",
- "failedUpdate": "Falha ao atualizar configuração",
- "customSlug": "Slug personalizado do portal",
- "save": "Salvar",
- "slugSaved": "Slug do portal salvo",
- "slugRemoved": "Slug do portal removido",
- "failedUpdateSlug": "Falha ao atualizar slug",
- "slugHint": "Letras minúsculas, números, hifens e underscores. 3-48 caracteres. Deixe em branco para usar a URL padrão.",
- "portalUrl": "URL do portal",
- "urlCopied": "URL do portal copiada",
- "shareHint": "Compartilhe este link com seus clientes para que possam fazer login no portal.",
- "serviceRequestAlertsHint": "As solicitações de serviço do portal sempre aparecem no seu sino de notificações. Você também pode recebê-las por e-mail.",
- "serviceRequestAlertsLink": "Configurações de alerta →",
- "descriptionLabel": "Sobre sua oficina",
- "descriptionPlaceholder": "Conte aos clientes sobre sua oficina, os serviços que você oferece e o que torna seu trabalho único.",
- "descriptionHint": "Mostrado aos visitantes no topo da página inicial do seu portal.",
- "hoursLabel": "Horário de funcionamento",
- "hoursPlaceholder": "Seg-Sex: 8:00-17:00\nSáb: 9:00-13:00\nDom: Fechado",
- "hoursHint": "Texto livre. Use quebras de linha para listar cada dia separadamente.",
- "contentSaved": "Conteúdo do portal salvo",
- "background": {
- "title": "Plano de fundo do portal",
- "description": "Escolha como a página inicial do portal do cliente fica.",
- "typeNone": "Nenhum",
- "typeTemplate": "Modelo",
- "typeImage": "Imagem personalizada",
- "chooseTemplate": "Escolha um modelo",
- "uploadLabel": "Imagem de fundo",
- "upload": "Enviar imagem",
- "replace": "Substituir imagem",
- "remove": "Remover",
- "uploadHint": "JPG, PNG ou WebP. Máx. 8 MB. Recomendado pelo menos 1600×900.",
- "uploading": "Enviando plano de fundo…",
- "uploaded": "Plano de fundo atualizado",
- "uploadFailed": "Falha ao enviar o plano de fundo",
- "templateNames": {
- "default": "Sutil",
- "sunrise": "Amanhecer",
- "ocean": "Oceano",
- "forest": "Floresta",
- "slate": "Ardósia",
- "sand": "Areia"
- }
- },
- "copyUrl": "Copy portal URL"
- },
- "email": {
- "title": "Provedor de e-mail",
- "description": "Configure o provedor de e-mail da sua organização para envio de faturas e orçamentos. Se nao configurado, o provedor de e-mail padrão da plataforma será usado.",
- "useCustomLabel": "Usar provedor de e-mail personalizado",
- "useCustomHint": "Ative para configurar seu próprio provedor de e-mail em vez de usar o padrão da plataforma",
- "platformDefaultInfo": "Sua organização esta usando o provedor de e-mail padrão da plataforma. Faturas e orçamentos serão enviados usando as configurações de e-mail da plataforma.",
- "smtpHost": "Host SMTP",
- "smtpHostPlaceholder": "smtp.example.com",
- "smtpPort": "Porta SMTP",
- "smtpPortPlaceholder": "587",
- "username": "Usuário",
- "usernamePlaceholder": "usuário@example.com",
- "password": "Senha",
- "fromEmail": "E-mail do remetente",
- "fromEmailPlaceholder": "noreply@example.com",
- "fromEmailDomainPlaceholder": "noreply@seudominio.com",
- "fromName": "Nome do remetente",
- "fromNamePlaceholder": "Sua Oficina",
- "tlsConnection": "Conexão TLS (Porta 465)",
- "tlsConnectionHint": "Ative para TLS implícito. Desative para STARTTLS (porta 587/25).",
- "verifyTlsCerts": "Verificar certificados TLS",
- "verifyTlsCertsHint": "Desative para permitir certificados autoassinados (nao recomendado para produção)",
- "requireTlsUpgrade": "Exigir atualização TLS",
- "requireTlsUpgradeHint": "Forçar atualização TLS em conexões STARTTLS",
- "apiKey": "Chave API",
- "apiKeyHintResend": "Obtenha sua chave API em",
- "serverToken": "Token do servidor",
- "serverTokenHintPostmark": "Obtenha seu Token do servidor em",
- "apiKeyHintMailgun": "Obtenha sua chave API em",
- "domain": "Domínio",
- "domainPlaceholder": "mg.seudominio.com",
- "region": "Região",
- "apiKeyHintSendGrid": "Obtenha sua chave API em",
- "accessKeyId": "ID da chave de acesso",
- "secretAccessKey": "Chave de acesso secreta",
- "awsRegion": "Região AWS",
- "awsRegionPlaceholder": "us-east-1",
- "awsRegionHint": "A região AWS onde o SES esta configurado (ex. us-east-1, eu-west-1)",
- "sendTestEmail": "Enviar e-mail de teste",
- "testEmailHint": "Salve as configurações primeiro, depois envie um e-mail de teste para sua conta",
- "saveSettings": "Salvar configurações",
- "savedDefault": "Configurações de e-mail salvas — usando padrão da plataforma",
- "saved": "Configurações de e-mail salvas",
- "failedSave": "Falha ao salvar configurações",
- "testSentTo": "E-mail de teste enviado para {email}",
- "testFailed": "Teste de e-mail falhou"
- },
- "sms": {
- "title": "Provedor SMS",
- "description": "Configure seu provedor de SMS para mensagens bidirecionais com clientes. Cada organização usa seu próprio provedor de SMS e número de telefone.",
- "enableLabel": "Ativar mensagens SMS",
- "enableHint": "Enviar e receber mensagens SMS com clientes",
- "disabledInfo": "Mensagens SMS estão desativadas. Ative para enviar e receber mensagens de texto com seus clientes.",
- "phoneNumber": "Número de telefone",
- "phoneNumberPlaceholder": "+5511912345678",
- "phoneNumberHint": "Seu número de telefone habilitado para SMS no formato E.164 (ex. +5511912345678)",
- "accountSid": "SID da conta",
- "authToken": "Token de autenticação",
- "apiKey": "Chave API",
- "apiSecret": "Segredo API",
- "webhookUrl": "URL do webhook",
- "webhookUrlHint": "Configure esta URL no painel do {provider} para receber mensagens SMS recebidas.",
- "webhookCopied": "URL do webhook copiada",
- "testPhoneNumber": "Número de telefone de teste",
- "testPhonePlaceholder": "+5511998765432",
- "sendTestSms": "Enviar SMS de teste",
- "testSmsHint": "Salve as configurações primeiro, depois insira um número de destinatário para enviar um SMS de teste",
- "enterTestPhone": "Insira um número de telefone para enviar o SMS de teste",
- "saveSettings": "Salvar configurações",
- "savedDisabled": "Configurações SMS salvas — SMS desativado",
- "saved": "Configurações SMS salvas",
- "failedSave": "Falha ao salvar configurações",
- "testSentTo": "SMS de teste enviado para {phone}",
- "testFailed": "Teste de SMS falhou",
- "copyWebhookUrl": "Copy webhook URL"
- },
- "subscription": {
- "title": "Plano de assinatura",
- "description": "O nível de assinatura Torqvoice atual da sua organização e recursos disponíveis.",
- "currentPlan": "Plano atual",
- "planFree": "Gratuito",
- "planPro": "Torq Pro",
- "planEnterprise": "Enterprise",
- "price": "{price}/{interval}",
- "perYear": "ano",
- "perMonth": "mês",
- "statusActive": "Ativo",
- "statusCanceling": "Cancelando",
- "statusPastDue": "Vencido",
- "statusCanceled": "Cancelado",
- "billingPeriod": "Período de faturamento",
- "billingPeriodDates": "{start} — {end}",
- "nextRenewal": "Próxima renovação",
- "cancelingWarning": "Sua assinatura será cancelada em {date}. Após isso, você será rebaixado para o plano gratuito.",
- "pastDueWarning": "Seu pagamento está vencido. Atualize seu método de pagamento para evitar a interrupção do serviço.",
- "featuresTitle": "Recursos do plano",
- "featuresDescription": "O que está incluído no seu plano atual.",
- "featureCustomers": "Clientes",
- "featureTeamMembers": "Membros da equipe",
- "featureSmtp": "E-mail personalizado (SMTP)",
- "featureApi": "Acesso à API",
- "featurePayments": "Pagamentos online",
- "featureCustomFields": "Campos personalizados",
- "featureSms": "Mensagens SMS",
- "featureCustomerPortal": "Portal do cliente",
- "featureCustomTemplates": "Modelos personalizados",
- "featureBrandingRemoved": "Marca removida",
- "usageOf": "{used} / {limit}",
- "usageUnlimited": "{used} / Ilimitado",
- "included": "Incluído",
- "notIncluded": "Não incluído",
- "manageTitle": "Gerenciar assinatura",
- "manageBilling": "Gerenciar faturamento",
- "manageBillingDescription": "Atualizar método de pagamento, visualizar faturas e gerenciar detalhes de faturamento.",
- "cancelSubscription": "Cancelar assinatura",
- "resumeSubscription": "Retomar assinatura",
- "cancelDialogTitle": "Cancelar assinatura",
- "cancelDialogDescription": "Sua assinatura permanecerá ativa até {date}. Após isso, você será rebaixado para o plano gratuito.",
- "cancelDialogConfirm": "Sim, cancelar",
- "cancelDialogCancel": "Manter assinatura",
- "cancelSuccess": "A assinatura será cancelada no final do período de faturamento",
- "cancelError": "Falha ao cancelar a assinatura",
- "resumeSuccess": "Assinatura retomada com sucesso",
- "resumeError": "Falha ao retomar a assinatura",
- "billingPortalError": "Falha ao abrir o portal de faturamento",
- "checkoutError": "Failed to start checkout",
- "upgradeTitle": "Atualizar plano",
- "upgradeDescription": "Desbloqueie mais recursos atualizando seu plano.",
- "upgradeToProDescription": "Atualize para desbloquear clientes ilimitados, membros da equipe, relatórios, SMTP, acesso à API e mais.",
- "upgradeToEnterpriseDescription": "Precisa de mais de 5 membros da equipe? Atualize para Enterprise com até 50 usuários.",
- "upgradeToPro": "Atualizar para Pro — $99/ano",
- "upgradeToEnterprise": "Enterprise — $140/ano",
- "upgradeDialogTitle": "Atualizar para Enterprise",
- "upgradeDialogDescription": "Seu plano Pro atual será atualizado para Enterprise. Você será cobrado apenas pela diferença proporcional do período de faturamento restante.",
- "upgradeConfirm": "Confirmar atualização",
- "upgradeCalculating": "Calculando o valor proporcional…",
- "upgradeAmountDue": "Valor a pagar agora",
- "upgradeSuccess": "Atualizado para Enterprise com sucesso!",
- "upgradeError": "Falha ao atualizar a assinatura",
- "demoBadge": "Demo",
- "demoExpiresIn": "Expira em {days, plural, =0 {menos de um dia} one {# dia} other {# dias}} ({date})"
- },
- "ai": {
- "title": "Assistente de IA",
- "readMore": "Saiba mais",
- "description": "Configure a IA para gerar automaticamente notas de serviço e resumir o histórico do veículo.",
- "enableLabel": "Ativar IA",
- "enableHint": "Usar recursos de IA em toda a aplicacao",
- "disabledInfo": "Ative a IA para usar recursos como descricoes de serviço geradas automaticamente e resumos do histórico do veículo.",
- "provider": "Provedor de IA",
- "apiKey": "Chave API",
- "apiKeyHint": "Sua chave API {provider}. Armazenada com segurança e nunca compartilhada.",
- "model": "Modelo",
- "testConnection": "Testar conexão",
- "testSuccess": "Conexão de IA bem-sucedida!",
- "testFailed": "Conexão falhou. Verifique sua chave API e modelo.",
- "saved": "Configurações de IA salvas",
- "failedSave": "Falha ao salvar configurações de IA",
- "saveSettings": "Salvar configurações",
- "featuresTitle": "Recursos de IA incluidos:",
- "featureServiceNotes": "Gerar automaticamente descricoes profissionais de serviço a partir de peças e mao de obra",
- "featureHistorySummary": "Resumo do histórico de serviço do veículo com um clique",
- "cost": {
- "high": "Alto custo",
- "medium": "Médio",
- "low": "Baixo custo"
- }
- },
- "reportSchedule": {
- "title": "Agendamento de relatórios",
- "description": "Gere e envie automaticamente relatórios em PDF por e-mail em um cronograma recorrente.",
- "schedule": "Agendamento",
- "name": "Nome do agendamento",
- "namePlaceholder": "Ex. Relatório semanal de negócios",
- "frequency": "Frequência",
- "daily": "Diário",
- "weekly": "Semanal",
- "biweekly": "A cada 2 semanas",
- "monthly": "Mensal",
- "bimonthly": "A cada 2 meses",
- "quarterly": "A cada 4 meses",
- "semiannually": "A cada 6 meses",
- "yearly": "Anual",
- "dateRangeLabel": "Período",
- "dateRanges": {
- "last1d": "Último dia",
- "last7d": "Últimos 7 dias",
- "last14d": "Últimos 14 dias",
- "last30d": "Últimos 30 dias",
- "last60d": "Últimos 60 dias",
- "last90d": "Últimos 90 dias",
- "last6m": "Últimos 6 meses",
- "last12m": "Últimos 12 meses",
- "ytd": "Acumulado do ano",
- "allTime": "Todo o período"
- },
- "sections": "Seções do relatório",
- "sectionsDescription": "Selecione quais seções incluir no relatório agendado.",
- "sectionsIncluded": "Seções incluídas",
- "selectAll": "Selecionar tudo",
- "clearAll": "Limpar tudo",
- "recipients": "Destinatários",
- "recipientsDescription": "Selecione os membros da equipe que receberão o relatório por e-mail.",
- "recipientsCount": "Destinatários",
- "endDate": "Data de término",
- "endDateDescription": "Opcionalmente interrompa o agendamento após esta data.",
- "enabled": "Ativado",
- "disabled": "Desativado",
- "nextRun": "Próxima execução",
- "lastRun": "Última execução",
- "runCount": "Relatórios enviados",
- "save": "Salvar agendamento",
- "create": "Criar agendamento",
- "delete": "Excluir agendamento",
- "created": "Agendamento de relatórios criado",
- "updated": "Agendamento de relatórios atualizado",
- "deleted": "Agendamento de relatórios excluído",
- "toggledOn": "Agendamento de relatórios ativado",
- "toggledOff": "Agendamento de relatórios desativado",
- "failedSave": "Failed to save",
- "failedSend": "Failed to send",
- "failedToggle": "Failed to toggle",
- "failedDelete": "Failed to delete",
- "noMembers": "Nenhum membro encontrado",
- "addRecipient": "Adicionar destinatário...",
- "searchMembers": "Buscar membros...",
- "sendNow": "Enviar agora",
- "sentNow": "Relatório enviado com sucesso",
- "newSchedule": "Novo agendamento",
- "editSchedule": "Editar agendamento",
- "edit": "Editar",
- "cancel": "Cancelar",
- "sent": "enviados",
- "emptyTitle": "Nenhum relatório agendado",
- "emptyDescription": "Crie um agendamento para gerar e enviar relatórios automaticamente à sua equipe.",
- "sectionLabels": {
- "revenue": "Receita",
- "tax": "Impostos",
- "pastDue": "Faturas vencidas",
- "services": "Serviços",
- "customers": "Clientes",
- "technicians": "Técnicos",
- "parts": "Uso de peças",
- "jobAnalytics": "Análises de serviços",
- "retention": "Retenção de clientes",
- "inventory": "Estoque"
- }
- },
- "webhooks": {
- "title": "Webhooks",
- "subtitle": "Envie notificações de eventos em tempo real para seus próprios sistemas via HTTPS. Cada evento é assinado com HMAC-SHA256 para que você possa verificar a autenticidade.",
- "create": "Adicionar webhook",
- "createTitle": "Adicionar webhook",
- "editTitle": "Editar webhook",
- "createDescription": "Os webhooks são enviados como JSON via POST. Entregas com falha são tentadas novamente com backoff exponencial até 5 vezes.",
- "name": "Nome",
- "namePlaceholder": "ex.: Sincronização contábil",
- "url": "URL do endpoint",
- "urlHint": "Deve começar com http:// ou https://. Recomendamos fortemente HTTPS.",
- "description": "Descrição (opcional)",
- "events": "Eventos",
- "eventsHint": "Escolha quais eventos disparam este webhook.",
- "subscribeToAll": "Todos os eventos",
- "selectAtLeastOneEvent": "Selecione pelo menos um evento",
- "groups": {
- "customers": "Clientes",
- "vehicles": "Veículos",
- "services": "Ordens de serviço",
- "quotes": "Orçamentos",
- "payments": "Pagamentos",
- "inspections": "Inspeções",
- "inventory": "Estoque",
- "findings": "Apontamentos"
- },
- "save": "Salvar",
- "cancel": "Cancelar",
- "delete": "Excluir",
- "rotate": "Renovar",
- "done": "Pronto",
- "paused": "Pausado",
- "statusOk": "OK",
- "statusFailing": "{count, plural, one {# falha recente} other {# falhas recentes}}",
- "lastDelivery": "Última entrega {when}",
- "totalDeliveries": "{count, plural, one {# entrega} other {# entregas}}",
- "toggleAria": "Ativar ou desativar este webhook",
- "deliveries": "Entregas",
- "sendTest": "Enviar teste",
- "testSent": "Evento de teste enviado",
- "testFailed": "Falha ao enviar evento de teste",
- "rotateSecret": "Renovar chave de assinatura",
- "confirmRotateTitle": "Renovar chave de assinatura?",
- "confirmRotateDescription": "A chave atual deixará de funcionar imediatamente. Atualize seu endpoint com a nova chave.",
- "secretRotated": "Chave renovada",
- "secretRotatedDescription": "Salve esta chave agora — ela não poderá ser recuperada depois.",
- "confirmDeleteTitle": "Excluir webhook?",
- "confirmDeleteDescription": "“{name}” deixará de receber eventos imediatamente. Isso não pode ser desfeito.",
- "secretShownOnceTitle": "Webhook “{name}” criado",
- "secretShownOnceDescription": "Copie esta chave de assinatura agora. Ela não será exibida novamente.",
- "secretCopyHint": "Use esta chave para verificar o cabeçalho X-Torqvoice-Signature em cada requisição.",
- "deliveriesTitle": "Entregas — {name}",
- "deliveriesDescription": "Últimas 50 tentativas. Eventos com falha são tentados automaticamente com backoff exponencial.",
- "deliveriesEmpty": "Nenhuma entrega ainda. Envie um evento de teste para experimentar.",
- "attempt": "Tentativa {n}/{max}",
- "nextRetry": "Próxima tentativa {when}",
- "retryQueued": "Nova tentativa na fila",
- "retryFailed": "Nova tentativa falhou",
- "saveFailed": "Falha ao salvar",
- "deleteFailed": "Falha ao excluir",
- "toggleFailed": "Falha ao alternar",
- "rotateFailed": "Falha ao renovar",
- "created": "Webhook criado",
- "updated": "Webhook atualizado",
- "deleted": "Webhook excluído",
- "emptyTitle": "Nenhum webhook ainda",
- "emptyDescription": "Adicione um webhook para enviar eventos aos seus próprios sistemas — sincronização contábil, painéis personalizados, Zapier, qualquer coisa que fale HTTP.",
- "helpTitle": "Verificar assinaturas de webhook",
- "helpIntro": "Cada entrega inclui uma assinatura HMAC-SHA256 para que você possa confirmar que a requisição veio do Torqvoice.",
- "helpHeadersTitle": "Cabeçalhos enviados em cada requisição",
- "helpVerify": "Reconstrua a string assinada como `[timestamp].[body]` e compare com igualdade de tempo seguro:",
- "tabWebhooks": "Webhooks",
- "tabReference": "Referência de eventos",
- "autoDisabled": "Pausado automaticamente",
- "autoDisabledBanner": "Este webhook foi pausado automaticamente após 20 falhas consecutivas. Reative para retomar as entregas.",
- "reEnable": "Reativar",
- "resumed": "Webhook retomado",
- "copyUrl": "Copiar URL",
- "refresh": "Atualizar",
- "noMatches": "Nenhuma entrega corresponde a este filtro.",
- "retry": "Tentar novamente",
- "viewPayload": "Ver payload",
- "payloadCopied": "Payload copiado",
- "loadingPayload": "Carregando payload…",
- "requestPayload": "Payload da requisição",
- "response": "Resposta",
- "close": "Fechar",
- "samplePayload": "Envelope de exemplo",
- "referenceTitle": "Referência de eventos",
- "referenceIntro": "Toda entrega segue esta forma de envelope. Clique em um evento para ver um payload de exemplo que seu endpoint receberá.",
- "filter": {
- "all": "Todas",
- "success": "Sucesso",
- "failed": "Falhou",
- "retrying": "Tentando novamente",
- "pending": "Pendente"
- }
- },
- "alerts": {
- "title": "Alertas",
- "description": "Escolha sobre quais eventos deseja ser avisado e como.",
- "serviceRequest": {
- "title": "Alertas de solicitações de serviço",
- "description": "Solicitações de serviço enviadas pelo portal do cliente sempre aparecem no sino de notificações. Ative esta opção para recebê-las também por e-mail.",
- "email": "Notificação por e-mail",
- "emailHint": "Desativado por padrão. Um e-mail por solicitação, enviado assim que o cliente a envia.",
- "recipients": "Enviar para",
- "recipientsHint": "Deixe vazio para avisar todos os proprietários e administradores. Separe vários endereços com vírgulas.",
- "invalidRecipients": "Endereço inválido: {list}",
- "emailSetupHint": "Os alertas são enviados pelo provedor de e-mail que você configurou.",
- "emailSetupLink": "Configurações de e-mail →",
- "save": "Salvar configurações de alerta",
- "saved": "Configurações de alerta de solicitações salvas"
- },
- "lowStock": {
- "title": "Alertas de estoque baixo",
- "description": "Avisa quando uma peça atinge seu ponto de reposição. Uma peça está baixa quando a quantidade cai para ou abaixo da \"Qtd. mín.\", ou do padrão abaixo se não tiver. Cada peça é informada uma vez por queda e fica em silêncio até ser reposta.",
- "enable": "Ativar alertas de estoque baixo",
- "enableHint": "Desativado por padrão. Só peças com ponto de reposição são monitoradas.",
- "inApp": "Notificação no app",
- "inAppHint": "Uma notificação agrupada no sino, não uma por peça.",
- "email": "Resumo por e-mail",
- "emailHint": "Um único e-mail listando todas as peças que acabaram de ficar baixas.",
- "emailInterval": "Horas mínimas entre e-mails",
- "emailIntervalHint": "No máximo um resumo a cada tantas horas. 0 desativa o limite.",
- "save": "Salvar alertas",
- "saved": "Alertas de estoque baixo salvos",
- "defaultThreshold": "Ponto de reposição padrão",
- "defaultThresholdHint": "Usado apenas para peças sem ponto de reposição próprio. A \"Qtd. mín.\" da peça — definida ao editá-la — sempre prevalece. Deixe em 0 para monitorar só as peças configuradas individualmente.",
- "checkNow": "Verificar agora",
- "checkDisabled": "Os alertas estão desativados.",
- "checkNothingNew": "Nada novo — todas as peças baixas já foram informadas.",
- "checkAlerted": "{count} peça(s) recém-baixa(s) informada(s)",
- "checkFailed": "Falha na verificação",
- "configurePerPart": "Defina a Qtd. mín. de uma peça na página de estoque →",
- "readMore": "Saiba mais"
- },
- "technicianStatus": {
- "title": "Aplicativo do técnico Torqvoice (Android/iOS)",
- "description": "Aviso quando um técnico altera um serviço pelo telefone.",
- "inApp": "Avisar a recepção",
- "inAppHint": "Um aviso quando um serviço é concluído, fica aguardando peças ou é retomado.",
- "save": "Salvar",
- "saved": "Configurações de aviso salvas",
- "saveFailed": "Não foi possível salvar as configurações"
- }
- },
- "support": {
- "title": "Suporte",
- "description": "Fale com a equipe de suporte da Torqvoice sem sair do aplicativo. Sua solicitação inclui sua organização e a página em que você estava.",
- "showButton": "Mostrar o botão de suporte",
- "showButtonHint": "Um botão arrastável em todas as páginas, neste dispositivo. Quando oculto, uma pequena aba na borda direita o traz de volta.",
- "contactTitle": "Falar com o suporte",
- "contactHint": "Abrir o formulário de suporte imediatamente.",
- "contactAction": "Abrir formulário"
- },
- "install": {
- "title": "Instalar o Torqvoice",
- "description": "Instale o Torqvoice neste dispositivo para abri-lo pela tela de início, em tela cheia e sem a barra do navegador. É o mesmo app e os mesmos dados.",
- "installed": "O Torqvoice está instalado neste dispositivo.",
- "iosHint": "No Safari, toque no botão Compartilhar e depois em \"Adicionar à Tela de Início\".",
- "unavailable": "Este navegador não ofereceu a instalação. Abra o menu do navegador e procure \"Instalar app\" ou \"Adicionar à Tela de Início\".",
- "bannerHidden": "O aviso de instalação está oculto neste dispositivo.",
- "showBanner": "Mostrar o aviso novamente"
- },
- "tireHotel": {
- "title": "Hotel de pneus",
- "description": "Guarde os pneus sazonais dos seus clientes e saiba onde cada jogo está.",
- "cardTitle": "Armazenagem de pneus",
- "enable": "Ativar hotel de pneus",
- "enableHint": "Adiciona a armazenagem de pneus ao menu. Desativar depois oculta tudo sem excluir nada.",
- "defaultCapacity": "Pneus por prateleira (padrão)",
- "defaultCapacityHint": "Preenchido ao criar novas prateleiras. Ajustável em cada uma.",
- "warnPercent": "Avisar quando cheio (%)",
- "warnPercentHint": "Sinaliza o panorama da armazenagem quando essa fatia da capacidade total estiver ocupada.",
- "treadTitle": "Limites de troca",
- "treadHint": "Os mínimos legais variam por país, então defina os limites do seu mercado. Sulco abaixo do limite é sinalizado para troca.",
- "summerLimit": "Limite verão ({unit})",
- "winterLimit": "Limite inverno ({unit})",
- "unitMm": "mm",
- "unit32nds": "1/32\"",
- "setupHint": "Em seguida, configure suas prateleiras.",
- "setupLink": "Abrir layout da armazenagem",
- "save": "Salvar configurações do hotel de pneus",
- "saved": "Configurações do hotel de pneus salvas",
- "billingTitle": "Cobrança da armazenagem",
- "billingHint": "Preenchido na linha de guarda ao cobrar um jogo. Editável na cobrança.",
- "seasonalPrice": "Preço padrão de guarda",
- "prepTitle": "Preços da preparação",
- "prepHint": "Quanto custa cada tipo de preparação. Deixe em branco e nunca é cobrado, que é o que quer a oficina que inclui a lavagem na armazenagem. Os com preço entram sozinhos no orçamento e na ordem.",
- "prepNotCharged": "não cobrado"
- },
- "designer": {
- "invoice": "Fatura",
- "quote": "Orçamento",
- "eyebrow": "Designer de documentos",
- "galleryTitle": "Comece por um modelo",
- "galleryHint": "Escolha um ponto de partida. Você pode mudar tudo no designer.",
- "yourDesigns": "Seus designs",
- "autoRuleHint": "Vendas sem veículo são impressas com o design marcado para elas, a menos que a venda ou seu cliente tenha escolhido outro.",
- "useForPartsSale": "Usar para vendas só de peças",
- "usedForPartsSale": "Usado para vendas só de peças",
- "autoRule": {
- "parts_sale": "Venda apenas de peças"
- },
- "autoRuleSaved": "Uso de \"{name}\" atualizado",
- "couldNotSaveRule": "Não foi possível atualizar a regra",
- "templates": "Modelos",
- "inUse": "Em uso",
- "savedOn": "Salvo em {date}",
- "deleteDesignTitle": "Excluir design",
- "deleteDesignBody": "Excluir o design \"{name}\"? A fatura e o orçamento mantêm o que está aplicado; só a cópia salva some.",
- "delete": "Excluir",
- "deleteDesign": "Excluir este design",
- "continueCurrent": "Continuar com o meu layout atual",
- "backToSettings": "Voltar às configurações",
- "useInvoiceDesign": "Usar o design da fatura",
- "copiedToQuote": "Design da fatura copiado para o orçamento",
- "rulers": "Réguas",
- "saveDesign": "Salvar design",
- "saveDesignHint": "Guarde uma cópia nomeada deste design para voltar a ela pela galeria de modelos",
- "reset": "Redefinir",
- "save": "Salvar",
- "saving": "Salvando…",
- "saved": "Salvo",
- "couldNotSave": "Não foi possível salvar",
- "couldNotSaveDesigns": "Não foi possível salvar seus designs",
- "designUpdated": "\"{name}\" atualizado",
- "designSaved": "Salvo como \"{name}\"",
- "defaultDesignName": "Meu design de {doc}",
- "documentStyling": "Estilo do documento",
- "sections": "Seções",
- "sectionEmpty": "vazia",
- "sectionEmptyHint": "Aparece, mas com os dados atuais não há nada a imprimir nela.",
- "sectionShownHint": "Visível na folha. Clique para ocultar.",
- "sectionHiddenHint": "Oculta na folha. Clique para mostrar.",
- "railHint": "Arraste uma seção sobre a página: solte-a entre blocos para reordenar, sobre um cartão para ficar ao lado dele, ou em qualquer outro lugar para posicioná-la livremente. A página abre espaço ao redor dela.",
- "returnToFlow": "Devolver {section} ao fluxo",
- "saveDialogTitle": "Salvar este design",
- "saveDialogBody": "Guarda uma cópia nomeada do arranjo e da aparência atuais. Você a encontra em Seus designs, na galeria de modelos.",
- "designNamePlaceholder": "Nome do design",
- "nameExists": "Já existe um design com este nome; salvar vai atualizá-lo.",
- "updateDesign": "Atualizar design",
- "cancel": "Cancelar",
- "insertHere": "Inserir aqui",
- "dropLeftColumn": "Coluna esquerda",
- "dropRightColumn": "Coluna direita",
- "freePosition": "Posição livre",
- "sectionSettings": "Configurações da seção",
- "panelStyle": "Estilo do painel",
- "variant": {
- "accent": "Destaque",
- "panel": "Painel",
- "outline": "Contorno",
- "lines": "Linhas",
- "hint": "Destaque tinge o cartão com a cor principal. Painel combina com os outros cartões de detalhe. Contorno desenha apenas uma borda, e Linhas imprime sem caixa.",
- "classic": "Clássico",
- "box": "Moldura",
- "totalsHint": "Clássico imprime linhas simples com um traço acima do total. Moldura as emoldura. Painel e Destaque as colocam em um cartão."
- },
- "alignment": "Alinhamento",
- "alignCenter": "Centro",
- "itemsTableHint": "Uma lista numerada de todas as linhas do serviço, primeiro mão de obra e depois peças, no lugar das tabelas separadas.",
- "discardChanges": "Descartar alterações",
- "tablesExclusiveHint": "A folha imprime uma disposição: uma única lista numerada ou tabelas separadas de peças e mão de obra. Ativar uma desativa a outra.",
- "innerPadding": "Espaçamento interno",
- "totalsWidth": "Largura",
- "totalsWidthHint": "Vazio ocupa a linha inteira. Um valor em pontos pendura o bloco à direita; em uma coluna, ele usa a largura da coluna.",
- "placement": "Posicionamento",
- "visible": "Visível",
- "columnFull": "Inteira",
- "columnLeft": "Esquerda",
- "columnRight": "Direita",
- "drawBox": "Desenhar uma caixa",
- "showHeading": "Mostrar título",
- "spacing": "Espaçamento",
- "placedByHand": "Esta seção foi posicionada à mão, então o espaçamento do fluxo não a move.",
- "placedByHandFramed": "O timbre emoldurado fica sobre a faixa; arraste-o para movê-lo.",
- "placedByHandDrag": "Arraste-a, ou devolva-a ao fluxo, para usar o espaçamento.",
- "marginTop": "Topo",
- "marginBottom": "Base",
- "marginLeft": "Esquerda",
- "marginRight": "Direita",
- "spacingHint": "Pontos de espaço livre que a seção mantém ao redor de si no fluxo.",
- "logo": "Logotipo",
- "size": "Tamanho",
- "logoHint": "Desligue o logotipo em Campos para imprimir o nome da empresa no lugar dele.",
- "fields": "Campos",
- "removeField": "Remover desta seção",
- "yourCustomFields": "Seus campos personalizados",
- "appearance": "Aparência",
- "details": "Detalhes",
- "text": "Texto",
- "companyName": "Nome da empresa",
- "heading": "Título",
- "fill": "Preenchimento",
- "border": "Borda",
- "lineWidth": "Espessura da linha",
- "borderWidth": "Espessura da borda",
- "outerBorder": "Borda externa",
- "rowBanding": "Faixas nas linhas",
- "likeSheet": "Como a folha",
- "on": "Sim",
- "off": "Não",
- "font": "Fonte",
- "inherit": "Herdar",
- "auto": "auto",
- "sectionDragHint": "Arraste esta seção na lista, ou sobre a página, para movê-la. Uma vez posicionada à mão, as setas a deslocam um ponto por vez, dez com Shift, e Esc cancela o arraste.",
- "document": "Documento",
- "documentSubtitle": "Vale para a folha inteira",
- "headerStyleTitle": "Estilo do cabeçalho",
- "headerStyle": {
- "standard": {
- "name": "Padrão",
- "desc": "Nome e dados sobre branco, com traço abaixo"
- },
- "compact": {
- "name": "Compacto",
- "desc": "Cabeçalho enxuto, linhas densas"
- },
- "modern": {
- "name": "Moderno",
- "desc": "Faixa colorida em toda a largura"
- },
- "framed": {
- "name": "Emoldurado",
- "desc": "Faixa no topo e barra pela lateral esquerda"
- }
- },
- "colors": "Cores",
- "primary": "Principal",
- "background": "Fundo",
- "accent": "Destaque",
- "frame": "Moldura",
- "rail": "Barra",
- "leftEdge": "Borda esquerda",
- "rightEdge": "Borda direita",
- "frameLine": "Linha da moldura",
- "cornerRadius": "Raio do canto",
- "shadow": "Sombra",
- "shadowThin": "Fina",
- "shadowNormal": "Normal",
- "shadowWide": "Larga",
- "typography": "Tipografia",
- "baseSize": "Tamanho base",
- "page": "Página",
- "margins": "Margens",
- "rowHeight": "Altura da linha",
- "band": "Faixa",
- "sample": {
- "itemLabor": "Freios dianteiros substituídos",
- "itemDisc": "Disco de freio, dianteiro",
- "itemPads": "Jogo de pastilhas, eixo dianteiro",
- "itemConsumables": "Materiais de consumo",
- "unitPcs": "un",
- "unitSet": "jogo",
- "unitEach": "x",
- "findingPads": "Pastilhas traseiras em 15%",
- "findingPadsNote": "Substituir em até 5.000 km",
- "findingOilWeep": "Leve suor de óleo na tampa de válvulas",
- "notes": "Obrigado por escolher nossa oficina. Fale conosco se tiver qualquer dúvida.",
- "warranty": "12 meses de garantia em peças e mão de obra.",
- "serviceTitle": "Revisão anual e freios",
- "serviceType": "Reparo",
- "companyName": "Sua oficina",
- "slogan": "Serviço de qualidade em que você pode confiar",
- "paymentTerms": "Pagamento em 14 dias",
- "footerNote": "Obrigado pela preferência",
- "value": "Exemplo"
- },
- "logoUpload": "Enviar logotipo",
- "logoReplace": "Substituir logotipo",
- "logoUploading": "Enviando…",
- "logoFailed": "Não foi possível enviar a imagem",
- "footerLogoHint": "Ative o logotipo em Campos para imprimi-lo também no rodapé.",
- "logoReset": "Usar o logotipo da empresa",
- "logoOwn": "Impresso somente neste documento. O logotipo da empresa não muda.",
- "logoInherited": "Usando o logotipo da empresa. Envie um aqui para usar outro somente neste documento.",
- "slogan": "Slogan",
- "sloganPlaceholderHint": "Nenhum slogan definido, então a folha mostra um texto de exemplo que não será impresso.",
- "sloganSetHint": "Seu slogan vem dos dados da sua empresa.",
- "sloganLink": "Configurações da empresa",
- "paymentTerms": "Condições de pagamento",
- "paymentTermsPlaceholderHint": "Nenhuma condição de pagamento definida, então a folha mostra um texto de exemplo que não será impresso.",
- "paymentTermsSetHint": "Suas condições de pagamento vêm das configurações de pagamento.",
- "paymentTermsLink": "Configurações de pagamento",
- "telegramQr": "Código do Telegram",
- "telegramQrConnectedHint": "Imprime um código que abre {link}, seu bot do Telegram conectado. Aparece apenas em faturas emitidas depois que o bloco foi ativado.",
- "telegramQrPlaceholderHint": "Nenhum bot do Telegram está conectado, então a folha mostra um código de exemplo que não será impresso.",
- "telegramQrLink": "Integrações",
- "titleText": "Texto do título",
- "titleTextHint": "Como este documento se chama. Deixado vazio, imprime o próprio nome no idioma do leitor.",
- "orgNumberLabel": "Rótulo do número da organização",
- "orgNumberLabelHint": "Impresso ao lado do número da organização em faturas e orçamentos. Deixe vazio para usar o padrão no seu idioma, ou escreva como ele se chama no seu país, por exemplo CNPJ, NIF ou RUT. Compartilhado com as configurações da empresa.",
- "placeholder": "Exemplo",
- "leaveTitle": "Sair sem salvar?",
- "leaveBody": "Suas alterações neste design não foram salvas e serão perdidas.",
- "leaveConfirm": "Sair",
- "boldField": "Negrito",
- "deleteDesignDrafts": "{count, plural, one {# rascunho de fatura} other {# rascunhos de fatura}} que o usam voltarão ao design padrão.",
- "deleteDesignCustomers": "{count, plural, one {# cliente} other {# clientes}} definidos com ele voltarão ao design padrão.",
- "setDefault": "Definir como padrão",
- "defaultSet": "\"{name}\" está em uso agora",
- "couldNotSetDefault": "Não foi possível definir o design padrão",
- "fieldFixedSlot": "Sempre é impresso no mesmo lugar, portanto não pode ser movido."
- },
- "preview": {
- "title": "Serviço de freios e troca de óleo",
- "serviceType": "Manutenção",
- "findingPads": "Pastilhas traseiras desgastadas em 15%",
- "findingPadsNote": "Recomenda-se a troca em até 8.000 km",
- "findingOilLeak": "Leve vazamento de óleo na junta da tampa de válvulas",
- "invoiceNotes": "Pastilhas dianteiras substituídas. Óleo e filtro trocados com sintético 5W-30. Próxima revisão recomendada aos 80.000 km.",
- "quoteNotes": "Recomenda-se a troca das pastilhas dianteiras. Troca de óleo e filtro com sintético 5W-30.",
- "partBrakePads": "Pastilhas de freio (dianteiras)",
- "partOilFilter": "Filtro de óleo",
- "partSyntheticOil": "Óleo sintético 5W-30",
- "laborBrakeReplacement": "Substituição de freios",
- "laborOilChange": "Troca de óleo"
- },
- "inspectionReminders": {
- "title": "Lembretes de inspeção e agendamento",
- "description": "Como o link de agendamento em um lembrete se comporta. Definido uma vez; todas as campanhas usam.",
- "duration": "Duração da inspeção (minutos)",
- "durationHint": "Quanto tempo uma inspeção periódica ocupa um box. O link agenda horários com essa duração.",
- "leadDays": "Agendamento mais cedo (dias)",
- "leadDaysHint": "1 significa que o primeiro horário oferecido é amanhã, nunca hoje.",
- "horizonWeeks": "Até quando (semanas)",
- "horizonHint": "Os clientes podem escolher qualquer horário livre dentro dessas semanas.",
- "reserve": "Manter livre para quem chega sem hora",
- "reserveHint": "Boxes ou técnicos que o link nunca ocupa. 0 permite usar todos os livres.",
- "linkValidDays": "Link fica aberto (dias)",
- "linkValidHint": "Pelo menos {min}. Os links também ficam abertos até uma semana após o vencimento, o que for mais tarde.",
- "bookingMode": "O que um agendamento cria",
- "bookingModeDirect": "Uma ordem de serviço agendada no quadro",
- "bookingModeRequest": "Uma solicitação que o balcão confirma antes",
- "bookingModeHint": "O agendamento direto é o que faz o link valer o clique. Escolha solicitação se quiser aprovar sempre.",
- "phone": "Telefone nas mensagens",
- "phoneHint": "Mostrado como alternativa ao link. Padrão: o telefone da oficina.",
- "save": "Salvar",
- "saved": "Configurações salvas",
- "saveFailed": "Não foi possível salvar",
- "timeZoneDetected": "O fuso horário está em automático em Localização, então o servidor usa {zone}, o último visto em um navegador que salvou configurações. Escolha o fuso da oficina explicitamente para que os horários de agendamento nunca dependam de quem salvou por último.",
- "timeZoneExplicit": "Horários de agendamento e de funcionamento são lidos em {zone}.",
- "timeZoneChange": "Alterar em Localização"
- },
- "emailTemplates": {
- "title": "Modelos de e-mail",
- "description": "O que dizem os e-mails que sua oficina envia e como eles ficam. Cada tipo de e-mail tem um modelo integrado; crie o seu para mudar o texto, as cores e os blocos que o compõem.",
- "lockedDescription": "Crie os e-mails que sua oficina envia: mude o texto, adicione ou remova blocos e combine as cores com a sua marca.",
- "groups": {
- "documents": "Documentos",
- "messages": "Mensagens",
- "portal": "Portal do cliente",
- "team": "Equipe"
- },
- "kinds": {
- "invoice_sent": {
- "name": "Fatura enviada",
- "description": "Enviado quando uma fatura vai para um cliente por e-mail, com o PDF anexado ou um link para visualizá-la."
- },
- "quote_sent": {
- "name": "Orçamento enviado",
- "description": "Enviado quando um orçamento vai para um cliente por e-mail."
- },
- "inspection_sent": {
- "name": "Relatório de inspeção enviado",
- "description": "Enviado quando um relatório de inspeção vai para um cliente por e-mail."
- },
- "message": {
- "name": "Mensagem ao cliente",
- "description": "Uma mensagem escrita a um cliente: uma notificação de uma ordem de serviço, um relatório de status, um convite para videochamada ou um lembrete agendado."
- },
- "portal_signin": {
- "name": "Acesso ao portal",
- "description": "O link de acesso que um cliente solicita no portal do cliente."
- },
- "team_invitation": {
- "name": "Convite para a equipe",
- "description": "Enviado a um colega que você convida para a oficina, com o link que cria a conta."
- }
- },
- "blocks": {
- "header": "Cabeçalho",
- "heading": "Título",
- "paragraph": "Parágrafo",
- "callout": "Destaque",
- "button": "Botão",
- "document_summary": "Resumo do documento",
- "attachment_note": "Nota de anexo",
- "image": "Imagem",
- "divider": "Divisor",
- "spacer": "Espaço",
- "contact_footer": "Rodapé de contato"
- },
- "blockNotes": {
- "header": "Seu logotipo, ou o nome da oficina quando não há logotipo ou ele está desativado. Envie e dimensione o logotipo aqui; as cores e as fontes ficam em Assunto e tema.",
- "contact_footer": "Nome, endereço, telefone e e-mail da sua oficina, tirados das configurações de Empresa. Preencha-os lá para mudar o que é impresso aqui.",
- "divider": "Uma linha fina entre dois blocos. É omitida quando abriria ou fecharia o e-mail.",
- "callout": "Um painel em destaque com uma borda colorida. Bom para as palavras que mais importam, como a própria mensagem.",
- "attachment_note": "Impressa apenas quando um PDF é anexado ao e-mail.",
- "button": "O link costuma ser uma tag, como o link de compartilhamento. Um botão cujo link não tem valor é omitido do e-mail.",
- "document_summary": "Um painel com os números principais do documento. Linhas sem nada a mostrar são omitidas.",
- "image": "As imagens são comprimidas e redimensionadas para e-mail ao serem enviadas. Imagens que não são mais usadas são removidas quando o modelo é salvo.",
- "summaryUnused": "Este tipo de e-mail não tem documento, então o resumo não imprime nada."
- },
- "tagGroups": {
- "workshop": "Oficina",
- "customer": "Cliente",
- "vehicle": "Veículo",
- "document": "Documento",
- "message": "Mensagem",
- "portal": "Portal",
- "team": "Equipe"
- },
- "tags": {
- "workshop_name": {
- "label": "Nome da oficina",
- "description": "O nome da sua oficina."
- },
- "workshop_phone": {
- "label": "Telefone da oficina",
- "description": "O número de telefone das configurações de Empresa."
- },
- "workshop_email": {
- "label": "E-mail da oficina",
- "description": "O endereço de e-mail das configurações de Empresa."
- },
- "workshop_address": {
- "label": "Endereço da oficina",
- "description": "O endereço das configurações de Empresa, em quantas linhas ele tiver."
- },
- "current_user": {
- "label": "Nome do remetente",
- "description": "O nome da pessoa que envia o e-mail."
- },
- "customer_name": {
- "label": "Nome do cliente",
- "description": "O nome do cliente a quem o e-mail vai."
- },
- "vehicle": {
- "label": "Veículo",
- "description": "Ano, marca e modelo do veículo."
- },
- "plate": {
- "label": "Placa",
- "description": "O número da placa do veículo."
- },
- "mileage": {
- "label": "Quilometragem",
- "description": "A quilometragem registrada no veículo."
- },
- "document_number": {
- "label": "Número do documento",
- "description": "O número da fatura ou do orçamento."
- },
- "document_title": {
- "label": "Título do documento",
- "description": "O título do serviço ou do documento."
- },
- "total": {
- "label": "Total",
- "description": "O total do documento, na moeda dele."
- },
- "balance_due": {
- "label": "Saldo devedor",
- "description": "O que ainda falta pagar do documento após os pagamentos."
- },
- "due_date": {
- "label": "Data de vencimento",
- "description": "A data em que o pagamento vence."
- },
- "share_link": {
- "label": "Link de compartilhamento",
- "description": "Um link que o cliente pode abrir para ver o documento online."
- },
- "message": {
- "label": "Mensagem",
- "description": "A mensagem escrita para este e-mail, ou a nota adicionada ao documento."
- },
- "signin_link": {
- "label": "Link de acesso",
- "description": "O link que conecta o cliente ao portal. Ele expira em pouco tempo."
- },
- "portal_link": {
- "label": "Link do portal",
- "description": "Um link para o portal do cliente."
- },
- "invite_link": {
- "label": "Link do convite",
- "description": "O link que cria a conta e entra na equipe. Deixa de funcionar quando o convite expira."
- },
- "role": {
- "label": "Função",
- "description": "A função para a qual a pessoa é convidada."
- },
- "invite_expires": {
- "label": "Data de validade",
- "description": "O último dia em que o link do convite funciona."
- }
- },
- "headerRule": "Linha sob o cabeçalho",
- "headerRuleHint": "Uma linha fina entre o logotipo ou o nome da oficina e o resto do e-mail.",
- "optionalTag": "Nem todo e-mail tem um valor para esta tag. Quando ela fica vazia, as palavras ao redor são ajustadas.",
- "summaryRows": {
- "reference": "Referência",
- "vehicle": "Veículo",
- "total": "Total",
- "balance": "Saldo devedor",
- "due": "Data de vencimento"
- },
- "builtIn": "Integrado",
- "inUse": "Em uso",
- "useBuiltIn": "Usar o integrado",
- "setDefault": "Definir como padrão",
- "defaultSet": "Agora enviando com \"{name}\"",
- "couldNotSetDefault": "Não foi possível mudar o modelo em uso",
- "updatedOn": "Atualizado em {date}",
- "delete": "Excluir",
- "deleteTitle": "Excluir modelo",
- "deleteConfirm": "Excluir o modelo \"{name}\"? Se estiver em uso, os e-mails voltam ao modelo integrado.",
- "deleteTemplate": "Excluir este modelo",
- "deleted": "\"{name}\" excluído",
- "couldNotDelete": "Não foi possível excluir o modelo",
- "backToSettings": "Voltar às configurações",
- "unsaved": "(não salvo)",
- "save": "Salvar",
- "saving": "Salvando…",
- "savedState": "Salvo",
- "saved": "\"{name}\" salvo",
- "couldNotSave": "Não foi possível salvar",
- "saveAsNew": "Salvar como novo",
- "discard": "Descartar alterações",
- "sendTest": "Enviar teste",
- "cancel": "Cancelar",
- "problems": "{count, plural, one {# problema} other {# problemas}}",
- "unknownTags": "Estas tags não existem para este tipo de e-mail: {tags}",
- "missingTags": "Este e-mail precisa incluir {tags}",
- "subjectRequired": "O assunto não pode ficar vazio",
- "invalidTemplate": "Algum texto é longo demais ou um campo tem um valor inválido.",
- "leaveTitle": "Sair sem salvar?",
- "leaveBody": "Suas alterações neste modelo não foram salvas. Elas serão perdidas.",
- "leaveConfirm": "Sair",
- "subjectAndTheme": "Assunto e tema",
- "settingsSubtitle": "Vale para o e-mail inteiro",
- "blocksTitle": "Blocos",
- "addBlock": "Adicionar bloco",
- "removeBlock": "Remover bloco",
- "removeBlockLast": "O último bloco não pode ser removido",
- "blockEmpty": "vazio",
- "blockEmptyHint": "Aparece, mas ainda não há nada nele para imprimir.",
- "blockShownHint": "Visível no e-mail. Clique para ocultar.",
- "blockHiddenHint": "Oculto no e-mail. Clique para mostrar.",
- "railHint": "Arraste um bloco pela alça para movê-lo. A linha mostra onde ele vai ficar. Clique em um bloco para editar o texto dele à direita.",
- "resizeHint": "Arraste para redimensionar o painel. Clique duas vezes para redefinir.",
- "desktop": "Computador",
- "mobile": "Celular",
- "htmlView": "HTML",
- "textView": "Texto simples",
- "desktopTooltip": "Pré-visualizar na largura de computador",
- "mobileTooltip": "Pré-visualizar na largura de celular",
- "htmlViewTooltip": "Mostrar o e-mail HTML",
- "previewWidth": "Largura da pré-visualização",
- "previewView": "Modo de pré-visualização",
- "textViewTooltip": "Mostrar a versão em texto simples",
- "inboxNow": "Agora",
- "inboxNoSender": "Sua oficina",
- "inboxNoSubject": "(sem assunto)",
- "subject": "Assunto",
- "text": "Texto",
- "buttonLabel": "Texto do botão",
- "buttonHref": "Link",
- "spacerHeight": "Altura",
- "tagsTitle": "Tags",
- "tagsHint": "Clique em uma tag para inseri-la onde está o cursor no campo em que você digitou por último.",
- "theme": {
- "colors": "Cores",
- "primaryColor": "Principal",
- "textColor": "Texto",
- "mutedColor": "Texto suave",
- "backgroundColor": "Fundo",
- "panelColor": "Painéis",
- "invalidColor": "Uma cor não é um valor hexadecimal válido",
- "hexLabel": "{label} em hexadecimal",
- "typography": "Tipografia",
- "font": "Fonte",
- "fontHint": "Apenas fontes que todo cliente de e-mail já tem. A maioria não carrega fontes da web.",
- "fonts": {
- "system": "Sistema",
- "arial": "Arial",
- "georgia": "Georgia",
- "verdana": "Verdana",
- "trebuchet": "Trebuchet MS",
- "courier": "Courier New"
- },
- "lineSpacing": "Entrelinha",
- "lineSpacings": {
- "compact": "Compacta",
- "normal": "Normal",
- "relaxed": "Ampla"
- },
- "paragraphSpacing": "Espaço entre parágrafos",
- "paragraphSpacings": {
- "tight": "Apertado",
- "normal": "Normal",
- "loose": "Amplo"
- },
- "spacingHint": "A entrelinha é a altura de cada linha; o espaço entre parágrafos é o vão entre parágrafos e entre blocos de texto. Enter começa um parágrafo novo, Shift+Enter uma linha nova dentro dele.",
- "shapes": "Formas",
- "buttonRadius": "Cantos do botão",
- "topBar": "Barra colorida no topo",
- "topBarHint": "Uma faixa fina na sua cor principal ao longo da borda superior do e-mail.",
- "showLogo": "Mostrar logotipo",
- "showLogoHint": "Com o logotipo desativado, o cabeçalho imprime o nome da oficina no lugar."
- },
- "nameDialog": {
- "title": "Salvar este modelo",
- "body": "Dê um nome ao modelo para encontrá-lo na galeria. Salvar também faz dele o modelo com que este tipo de e-mail é enviado.",
- "placeholder": "Nome do modelo",
- "nameExists": "Já existe um modelo com este nome. Escolha outro nome.",
- "save": "Salvar modelo",
- "update": "Atualizar modelo"
- },
- "testDialog": {
- "title": "Enviar um e-mail de teste",
- "body": "O e-mail é enviado com dados de exemplo, para você vê-lo em um cliente de e-mail de verdade.",
- "placeholder": "Endereço de e-mail",
- "send": "Enviar",
- "sending": "Enviando…",
- "sentTitle": "E-mail de teste enviado",
- "sentBody": "Verifique a caixa de entrada de {email}. Pode levar um minuto para chegar.",
- "failedTitle": "Não foi possível enviar o e-mail de teste",
- "failedBody": "Verifique o provedor de e-mail em Provedores e tente novamente."
- },
- "toolbar": {
- "bold": "Negrito",
- "italic": "Itálico",
- "underline": "Sublinhado",
- "strike": "Tachado",
- "link": "Link",
- "linkUrl": "Endereço do link",
- "linkPlaceholder": "https://... ou {share_link}",
- "linkHint": "Um endereço web ou uma tag como {share_link}, preenchida quando o e-mail é enviado.",
- "linkApply": "Aplicar",
- "linkRemove": "Remover link",
- "bulletList": "Lista com marcadores",
- "orderedList": "Lista numerada",
- "align": {
- "left": "Alinhar à esquerda",
- "center": "Centralizar",
- "right": "Alinhar à direita"
- },
- "size": {
- "label": "Tamanho do texto",
- "default": "Tamanho padrão",
- "small": "Pequeno",
- "normal": "Normal",
- "large": "Grande",
- "extraLarge": "Extragrande"
- },
- "color": {
- "label": "Cor do texto",
- "text": "Cor de texto do tema",
- "muted": "Cor suave do tema",
- "primary": "Cor principal do tema",
- "default": "Padrão",
- "hex": "Cor hexadecimal",
- "apply": "Aplicar"
- },
- "clear": "Limpar formatação"
- },
- "logo": {
- "title": "Logotipo",
- "empty": "Nenhum logotipo enviado. O cabeçalho imprime o nome da oficina.",
- "upload": "Enviar logotipo",
- "replace": "Substituir logotipo",
- "remove": "Remover",
- "uploading": "Enviando…",
- "width": "Largura do logotipo",
- "hint": "Separado do logotipo da empresa. Ao ser enviado, ele é recortado e preparado para e-mail. PNG, JPEG ou WebP de até 4 MB.",
- "position": "Posição",
- "tooLarge": "A imagem deve ter menos de 4 MB",
- "uploadFailed": "Não foi possível enviar o logotipo"
- },
- "image": {
- "empty": "Nenhuma imagem enviada. O bloco não imprime nada até que haja uma.",
- "upload": "Enviar imagem",
- "replace": "Substituir imagem",
- "remove": "Remover",
- "uploading": "Enviando…",
- "alt": "Descrição",
- "altHint": "Lida em voz alta para leitores que não conseguem ver a imagem e exibida enquanto ela carrega. PNG, JPEG ou WebP de até 10 MB.",
- "width": "Largura",
- "widthHint": "600 px é a largura total do e-mail. Imagens mais estreitas ficam onde Posição indica.",
- "link": "Link",
- "linkHint": "Opcional. Abre ao clicar na imagem; uma tag como o link de compartilhamento também funciona aqui.",
- "tooLarge": "A imagem deve ter menos de 10 MB",
- "uploadFailed": "Não foi possível enviar a imagem"
- },
- "dragHandle": "Arraste para reordenar",
- "dragHandleKeyboard": "Arraste, ou use as teclas de seta, para mover este bloco",
- "tagDoesNotFit": "A tag não cabe neste campo."
- }
- }
|