pgkiln 0.56.0 → 0.57.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/SECURITY.md +1 -0
- package/docs/apex-feature-parity.md +1 -1
- package/docs/guide/03-builder.md +3 -2
- package/docs/guide/12-development.md +14 -0
- package/package.json +1 -1
- package/public/builder.css +1 -1
- package/public/worksheet.js +31 -26
- package/src/builder/i18n/de.ts +371 -0
- package/src/builder/i18n/en.ts +371 -0
- package/src/builder/i18n/es.ts +371 -0
- package/src/builder/i18n/fr.ts +371 -0
- package/src/builder/i18n/nl.ts +371 -0
- package/src/builder/i18n/pt.ts +371 -0
- package/src/builder/i18n.ts +10 -0
- package/src/builder/object-browser.ts +71 -67
- package/src/builder/table-editor.ts +51 -48
- package/src/builder/ui.ts +3 -2
- package/src/builder/worksheet.ts +160 -154
package/src/builder/i18n/pt.ts
CHANGED
|
@@ -672,4 +672,375 @@ export const pt: BuilderMessages = {
|
|
|
672
672
|
'sql.tool.reports.desc': 'Tabelas sem chaves, chaves estrangeiras sem índice, falhas de segurança em nível de linha e mais.',
|
|
673
673
|
'sql.tool.activity': 'Monitorar Atividade',
|
|
674
674
|
'sql.tool.activity.desc': 'Visualizações de página, erros e páginas lentas dos aplicativos.',
|
|
675
|
+
// ------------------------------------------------------------ SQL Worksheet (sprint 123)
|
|
676
|
+
'ws.title': 'Planilha SQL',
|
|
677
|
+
'ws.tab.result': 'Resultado da consulta',
|
|
678
|
+
'ws.tab.chart': 'Gráfico',
|
|
679
|
+
'ws.tab.output': 'Saída do script',
|
|
680
|
+
'ws.tab.notices': 'Avisos',
|
|
681
|
+
'ws.tab.explain': 'Plano de execução',
|
|
682
|
+
'ws.tab.autotrace': 'Autotrace',
|
|
683
|
+
'ws.tab.history': 'Histórico SQL',
|
|
684
|
+
'ob.type.all': 'Todos os objetos',
|
|
685
|
+
'ob.type.table': 'Tabelas',
|
|
686
|
+
'ob.type.view': 'Views',
|
|
687
|
+
'ob.type.matview': 'Views materializadas',
|
|
688
|
+
'ob.type.index': 'Índices',
|
|
689
|
+
'ob.type.sequence': 'Sequências',
|
|
690
|
+
'ob.type.type': 'Tipos',
|
|
691
|
+
'ob.type.function': 'Funções',
|
|
692
|
+
'ob.type.procedure': 'Procedimentos',
|
|
693
|
+
'ob.type.trigger': 'Triggers',
|
|
694
|
+
'ob.type.policy': 'Políticas',
|
|
695
|
+
'ws.nav.no_schema': 'Nenhum esquema que você possa usar.',
|
|
696
|
+
'ws.nav.no_objects': 'Nenhum objeto em {schema}.',
|
|
697
|
+
'ws.nav.no_type': 'Nenhum objeto do tipo “{type}” em {schema}.',
|
|
698
|
+
'ws.nav.drag': '{type}: arraste para o editor para um SELECT',
|
|
699
|
+
'ws.nav.open': 'Abrir',
|
|
700
|
+
'ws.nav.cols_limit': 'As colunas são listadas para as primeiras {n} tabelas e views.',
|
|
701
|
+
'ws.rows_one': '{n} linha',
|
|
702
|
+
'ws.rows': '{n} linhas',
|
|
703
|
+
'ws.stmt_one': '{n} instrução',
|
|
704
|
+
'ws.stmt': '{n} instruções',
|
|
705
|
+
'ws.download': 'Baixar',
|
|
706
|
+
'ws.dl.sql': 'INSERTs SQL',
|
|
707
|
+
'ws.result.showing': 'mostrando as primeiras {n}',
|
|
708
|
+
'ws.line': 'linha {n}',
|
|
709
|
+
'ws.all_rows': 'Todas as linhas',
|
|
710
|
+
'ws.all_rows.title': 'Executar a instrução de novo e mostrar até {n} linhas',
|
|
711
|
+
'ws.chart.title': 'Criar gráfico (Ctrl+F11)',
|
|
712
|
+
'ws.copy': 'Copiar',
|
|
713
|
+
'ws.value': 'Valor',
|
|
714
|
+
'ws.close': 'Fechar',
|
|
715
|
+
'ws.result.failed': 'A instrução falhou: veja a saída do script.',
|
|
716
|
+
'ws.result.no_rows': 'Sem linhas: a última instrução não era uma consulta. Veja a saída do script.',
|
|
717
|
+
'ws.result.empty': 'Execute uma consulta (Ctrl+Enter) para ver as linhas aqui.',
|
|
718
|
+
'ws.log.not_run': '-- {n}. linha {line}: não executada (uma instrução anterior falhou)',
|
|
719
|
+
'ws.log.head': '-- {n}. linha {line}: {sql}',
|
|
720
|
+
'ws.error': 'Erro: {error}',
|
|
721
|
+
'ws.error_at': 'Erro na linha {line}: {error}',
|
|
722
|
+
'ws.error_at_col': 'Erro na linha {line}, coluna {col}: {error}',
|
|
723
|
+
'ws.log.first': '(primeiras {n} de {rows} linhas)',
|
|
724
|
+
'ws.log.summary_one': '{n} instrução executada, {failed} com falha, {ms} ms.',
|
|
725
|
+
'ws.log.summary': '{n} instruções executadas, {failed} com falha, {ms} ms.',
|
|
726
|
+
'ws.log.empty': 'Executar script (F5) executa cada instrução e registra cada uma aqui.',
|
|
727
|
+
'ws.notice.meta': 'instrução {n} · {at}',
|
|
728
|
+
'ws.notice.empty': 'As mensagens RAISE NOTICE, INFO e WARNING da última execução aparecem aqui.',
|
|
729
|
+
'ws.no_plan': 'Sem plano.',
|
|
730
|
+
'ws.hist.search': 'Pesquisar no histórico',
|
|
731
|
+
'ws.hist.status': 'Status',
|
|
732
|
+
'ws.hist.all': 'Todas',
|
|
733
|
+
'ws.hist.ok': 'Com sucesso',
|
|
734
|
+
'ws.hist.failed': 'Com falha',
|
|
735
|
+
'ws.hist.failed_title': 'Com falha: {error}',
|
|
736
|
+
'ws.hist.insert': 'Inserir no cursor: {sql}',
|
|
737
|
+
'ws.hist.run_title': 'Colocar no editor e executar',
|
|
738
|
+
'ws.hist.empty': 'Suas instruções aparecem aqui depois que você as executa.',
|
|
739
|
+
'ws.ready': 'Pronto.',
|
|
740
|
+
'ws.status.explain': 'Plano de execução em {ms} ms.',
|
|
741
|
+
'ws.status.autotrace': 'Autotrace em {ms} ms.',
|
|
742
|
+
'ws.status.rows_one': '{n} linha em {ms} ms.',
|
|
743
|
+
'ws.status.rows': '{n} linhas em {ms} ms.',
|
|
744
|
+
'ws.status.stmts_one': '{n} instrução em {ms} ms.',
|
|
745
|
+
'ws.status.stmts': '{n} instruções em {ms} ms.',
|
|
746
|
+
'ws.errors': 'Erros',
|
|
747
|
+
'ws.warnings': 'Avisos',
|
|
748
|
+
'ws.running': 'Executando…',
|
|
749
|
+
'ws.chart.empty': 'Criar gráfico (Ctrl+F11) desenha a última consulta: uma coluna de rótulos e colunas numéricas.',
|
|
750
|
+
'ws.explain.empty': 'Plano de execução (F10) mostra como o PostgreSQL executaria a instrução no cursor; nada é executado.',
|
|
751
|
+
'ws.autotrace.empty': 'Autotrace (F6) executa a instrução no cursor com EXPLAIN ANALYZE e a reverte: linhas reais, tempo e buffers por etapa.',
|
|
752
|
+
'ws.idle.seconds': '{n} segundos',
|
|
753
|
+
'ws.idle.minute': '{n} minuto',
|
|
754
|
+
'ws.idle.minutes': '{n} minutos',
|
|
755
|
+
'ws.txn.none': 'Nenhuma transação aberta',
|
|
756
|
+
'ws.txn.failed': 'Transação com falha',
|
|
757
|
+
'ws.txn.open': 'Transação aberta',
|
|
758
|
+
'ws.txn.under_minute': 'menos de um minuto',
|
|
759
|
+
'ws.txn.min': '{n} min',
|
|
760
|
+
'ws.txn.no_txn': 'Esta planilha não tem nenhuma transação aberta.',
|
|
761
|
+
'ws.txn.busy': 'Ainda há uma execução em andamento nesta planilha: aguarde até que termine.',
|
|
762
|
+
'ws.txn.end_failed': '{action} falhou: {error}. A conexão foi fechada, por isso a transação é revertida.',
|
|
763
|
+
'ws.txn.commit_rolled': 'A transação tinha falhado, então o COMMIT a reverteu: nada foi salvo.',
|
|
764
|
+
'ws.txn.committed': 'Confirmada ({what}).',
|
|
765
|
+
'ws.txn.rolled_back': 'Revertida ({what} desfeitas).',
|
|
766
|
+
'ws.txn.rolled_back_failed': 'Revertida ({what} desfeitas; a transação tinha falhado).',
|
|
767
|
+
'ws.file.name_long': 'Um nome tem no máximo 200 caracteres.',
|
|
768
|
+
'ws.file.too_big': 'Um script tem no máximo 5 MB.',
|
|
769
|
+
'ws.file.new_name': 'Digite o novo nome.',
|
|
770
|
+
'ws.file.need_name': 'Dê um nome à planilha para salvá-la como script.',
|
|
771
|
+
'ws.file.exists': 'Já existe um script chamado “{name}”.',
|
|
772
|
+
'ws.file.renamed': 'Renomeado para “{name}”.',
|
|
773
|
+
'ws.file.saved': 'Salvo como o script “{name}”.',
|
|
774
|
+
'ws.txn.switched': 'Você trocou de workspace: a transação foi revertida.',
|
|
775
|
+
'ws.txn.open_first': 'Esta planilha tem uma transação aberta: faça Commit ou Rollback primeiro, ou volte para Transação.',
|
|
776
|
+
'ws.txn.needs_js': 'O modo de transação precisa de JavaScript (a aba da planilha a que pertence); esta execução foi recusada.',
|
|
777
|
+
'ws.txn.runs_as': 'A transação desta planilha é executada como {who}: faça Commit ou Rollback antes de mudar Executar como.',
|
|
778
|
+
'ws.txn.not_in_txn': 'Linha {line}: {what} não pode ser executado dentro de uma transação. Mude a planilha para Autocommit para executá-lo.',
|
|
779
|
+
'ws.txn.new_started': '{note} Uma nova transação começou.',
|
|
780
|
+
'ws.txn.begin_left': 'A transação iniciada com BEGIN ainda estava aberta no fim da execução e foi revertida. Mude a planilha para Transação para manter uma transação aberta entre execuções.',
|
|
781
|
+
'ws.txn.ended_editor': 'A transação terminou com o COMMIT ou ROLLBACK no editor; a próxima execução inicia uma nova.',
|
|
782
|
+
'ws.txn.aborted': 'Uma instrução falhou, então a transação foi abortada: Rollback a encerra (COMMIT também a reverteria).',
|
|
783
|
+
'ws.chart.nothing': 'Nada para desenhar: a consulta precisa de uma coluna numérica ao lado dos rótulos.',
|
|
784
|
+
'ws.chart.again': 'Desenhar de novo',
|
|
785
|
+
'ws.chart.name': 'Nome do gráfico',
|
|
786
|
+
'ws.chart.save': 'Salvar gráfico',
|
|
787
|
+
'ws.binds.title': 'Valores para a execução',
|
|
788
|
+
'ws.binds.help': 'Variáveis de ligação ({bind}) recebem um valor como literal entre aspas; variáveis de substituição ({sub}) colocam o texto na instrução como está. Vazio é NULL para uma variável de ligação.',
|
|
789
|
+
'ws.runs_as_role': 'o papel {role} de {app}',
|
|
790
|
+
'ws.refresh_nav': 'Atualizar o navegador',
|
|
791
|
+
'ws.navigator': 'Navegador',
|
|
792
|
+
'ws.objects': 'Objetos',
|
|
793
|
+
'ws.files': 'Arquivos',
|
|
794
|
+
'ws.schema': 'Esquema',
|
|
795
|
+
'ws.object_type': 'Tipo de objeto',
|
|
796
|
+
'ws.search_objects': 'Pesquisar objetos',
|
|
797
|
+
'ws.refresh': 'Atualizar',
|
|
798
|
+
'ws.sql_scripts': '(Scripts SQL)',
|
|
799
|
+
'ws.no_scripts': 'Ainda não há scripts: salve uma planilha para criar um.',
|
|
800
|
+
'ws.resize_nav': 'Redimensionar o navegador',
|
|
801
|
+
'ws.worksheet': 'Planilha',
|
|
802
|
+
'ws.toggle_nav': 'Ocultar ou mostrar o navegador',
|
|
803
|
+
'ws.file.menu': 'Salvar, abrir, renomear ou baixar a planilha (Ctrl+S salva)',
|
|
804
|
+
'ws.untitled': 'Sem título',
|
|
805
|
+
'ws.name': 'Nome',
|
|
806
|
+
'ws.save_title': 'Salvar (Ctrl+S)',
|
|
807
|
+
'ws.save_as': 'Salvar como novo',
|
|
808
|
+
'ws.rename': 'Renomear',
|
|
809
|
+
'ws.new': 'Novo',
|
|
810
|
+
'ws.open_file': 'Abrir…',
|
|
811
|
+
'ws.pin_title': 'Fixar esta planilha no início do SQL Workshop',
|
|
812
|
+
'ws.pin': 'Fixar',
|
|
813
|
+
'ws.run_statement': 'Executar instrução',
|
|
814
|
+
'ws.run_script': 'Executar script',
|
|
815
|
+
'ws.continue': 'Continuar em caso de erro',
|
|
816
|
+
'ws.format': 'Formatar',
|
|
817
|
+
'ws.format_title': 'Formatar (Ctrl+F7)',
|
|
818
|
+
'ws.case_title': 'Converter maiúsculas e minúsculas da seleção (Ctrl+B)',
|
|
819
|
+
'ws.case': 'Converter maiúsculas',
|
|
820
|
+
'ws.find_title': 'Localizar e substituir (Ctrl+F, Ctrl+H)',
|
|
821
|
+
'ws.find': 'Localizar',
|
|
822
|
+
'ws.load_title': 'Carregar dados em uma tabela',
|
|
823
|
+
'ws.load': 'Carregar dados',
|
|
824
|
+
'ws.keys': 'Atalhos de teclado',
|
|
825
|
+
'ws.key.save': 'Salvar',
|
|
826
|
+
'ws.key.find': 'Localizar / substituir',
|
|
827
|
+
'ws.key.goto': 'Ir para a linha',
|
|
828
|
+
'ws.key.comment': 'Comentar as linhas',
|
|
829
|
+
'ws.key.suggest': 'Sugestões',
|
|
830
|
+
'ws.key.help': 'Ajuda',
|
|
831
|
+
'ws.key.fullscreen': 'Sair da tela cheia',
|
|
832
|
+
'ws.kwcase': 'Formatar palavras-chave em',
|
|
833
|
+
'ws.lower': 'minúsculas',
|
|
834
|
+
'ws.upper': 'MAIÚSCULAS',
|
|
835
|
+
'ws.help': 'Ajuda sobre a Planilha SQL',
|
|
836
|
+
'ws.commit_label': 'Commit',
|
|
837
|
+
'ws.txn.mode_title': 'Autocommit: cada instrução é confirmada sozinha. Transação: as instruções ficam em uma transação até Commit ou Rollback.',
|
|
838
|
+
'ws.autocommit': 'Autocommit',
|
|
839
|
+
'ws.transaction': 'Transação',
|
|
840
|
+
'ws.txn.runs_as_title': 'Executa como {who}',
|
|
841
|
+
'ws.txn.commit_title': 'Confirmar a transação da planilha',
|
|
842
|
+
'ws.txn.rollback_title': 'Reverter a transação da planilha',
|
|
843
|
+
'ws.rollback': 'Rollback',
|
|
844
|
+
'ws.run_as': 'Executar como',
|
|
845
|
+
'ws.run_as_title': 'Com qual identidade as instruções são executadas',
|
|
846
|
+
'ws.owner_conn': 'Conexão do proprietário',
|
|
847
|
+
'ws.ws_login': 'Login do workspace',
|
|
848
|
+
'ws.clear_title': 'Limpar o editor',
|
|
849
|
+
'ws.clear': 'Limpar',
|
|
850
|
+
'ws.fullscreen_title': 'Tela cheia (Escape sai)',
|
|
851
|
+
'ws.fullscreen': 'Tela cheia',
|
|
852
|
+
'ws.runs_as': 'Executa como {who}',
|
|
853
|
+
'ws.search_path': '{schema} primeiro no caminho de busca ({change})',
|
|
854
|
+
'ws.change': 'alterar',
|
|
855
|
+
'ws.commit.txn': 'As instruções ficam em uma transação até Commit ou Rollback; ela é revertida após {idle} sem execução.',
|
|
856
|
+
'ws.commit.auto': 'Cada instrução é confirmada sozinha.',
|
|
857
|
+
'ws.worksheets': 'Planilhas',
|
|
858
|
+
'ws.replace_with': 'Substituir por',
|
|
859
|
+
'ws.regex': 'Regex',
|
|
860
|
+
'ws.match_case': 'Diferenciar maiúsculas',
|
|
861
|
+
'ws.next': 'Próximo',
|
|
862
|
+
'ws.replace': 'Substituir',
|
|
863
|
+
'ws.replace_all': 'Substituir tudo',
|
|
864
|
+
'ws.line_ph': 'Linha',
|
|
865
|
+
'ws.close_esc': 'Fechar (Escape)',
|
|
866
|
+
'ws.resize_out': 'Redimensionar a saída',
|
|
867
|
+
'ws.output': 'Saída',
|
|
868
|
+
'js.ws.copied': '{what} copiado.',
|
|
869
|
+
'js.ws.no_copy': 'Copiar não é permitido aqui.',
|
|
870
|
+
'js.ws.the_statement': 'A instrução',
|
|
871
|
+
'js.ws.rows': '{n} linhas',
|
|
872
|
+
'js.ws.untitled': 'Sem título {n}',
|
|
873
|
+
'js.ws.script': 'Script “{name}”',
|
|
874
|
+
'js.ws.unsaved': '(alterações não salvas)',
|
|
875
|
+
'js.ws.not_saved': 'Não salva como script',
|
|
876
|
+
'js.ws.close_tab': 'Fechar {name}',
|
|
877
|
+
'js.ws.new_tab': 'Nova planilha',
|
|
878
|
+
'js.ws.close_unsaved': 'Fechar “{name}” sem salvar?',
|
|
879
|
+
'js.ws.txn_unknown': 'Estado da transação desconhecido',
|
|
880
|
+
'js.ws.txn_not_ended': 'Não foi possível encerrar a transação: recarregue a página.',
|
|
881
|
+
'js.ws.txn_confirm': 'Mudar para Autocommit reverte a transação aberta. Reverter?',
|
|
882
|
+
'js.ws.formatted': 'Formatado.',
|
|
883
|
+
'js.ws.format_failed': 'Falha ao formatar.',
|
|
884
|
+
'js.ws.bad_pattern': 'Padrão inválido: {error}',
|
|
885
|
+
'js.ws.not_found': 'Não encontrado.',
|
|
886
|
+
'js.ws.open_ob': 'Abrir no Browser de Objetos',
|
|
887
|
+
'js.ws.close': 'Fechar',
|
|
888
|
+
'js.ws.open_failed': 'Não foi possível abrir o objeto.',
|
|
889
|
+
'js.ws.replaced': '{n} substituídos.',
|
|
890
|
+
// ------------------------------------------------------------ SQL Worksheet, the browser's transaction texts (sprint 123)
|
|
891
|
+
'js.ws.close_txn': '“{name}” tem uma transação aberta. Fechar e reverter a transação?',
|
|
892
|
+
'js.ws.commit_txn': 'As instruções ficam em uma transação até Commit ou Rollback; ela é revertida após {idle} sem execução.',
|
|
893
|
+
'js.ws.commit_auto': 'Cada instrução é confirmada sozinha.',
|
|
894
|
+
'js.ws.idle_seconds': '{n} segundos',
|
|
895
|
+
'js.ws.idle_minute': '{n} minuto',
|
|
896
|
+
'js.ws.idle_minutes': '{n} minutos',
|
|
897
|
+
'js.ws.txn_none': 'Nenhuma transação aberta',
|
|
898
|
+
'js.ws.txn_failed': 'Transação com falha',
|
|
899
|
+
'js.ws.txn_open': 'Transação aberta',
|
|
900
|
+
'js.ws.stmt_one': '{n} instrução',
|
|
901
|
+
'js.ws.stmt': '{n} instruções',
|
|
902
|
+
'js.ws.under_minute': 'menos de um minuto',
|
|
903
|
+
'js.ws.min': '{n} min',
|
|
904
|
+
// ------------------------------------------------------------ Object Browser (sprint 123)
|
|
905
|
+
'ob.title': 'Browser de Objetos',
|
|
906
|
+
'ob.tab.columns': 'Colunas',
|
|
907
|
+
'ob.tab.data': 'Dados',
|
|
908
|
+
'ob.tab.indexes': 'Índices',
|
|
909
|
+
'ob.tab.constraints': 'Restrições',
|
|
910
|
+
'ob.tab.triggers': 'Triggers',
|
|
911
|
+
'ob.tab.grants': 'Permissões',
|
|
912
|
+
'ob.tab.rls': 'Segurança em nível de linha',
|
|
913
|
+
'ob.tab.dependencies': 'Dependências',
|
|
914
|
+
'ob.tab.statistics': 'Estatísticas',
|
|
915
|
+
'ob.tab.ddl': 'DDL',
|
|
916
|
+
'ob.filter_label': 'Filtrar objetos',
|
|
917
|
+
'ob.filter': 'Filtrar',
|
|
918
|
+
'ob.extension': 'extensão',
|
|
919
|
+
'ob.no_schema': 'Nenhum esquema que você possa usar.',
|
|
920
|
+
'ob.create_in': 'Criar objetos de banco de dados em {schema}',
|
|
921
|
+
'ob.tile.table_form': 'Tabela (formulário)',
|
|
922
|
+
'ob.tile.table_form.desc': 'Colunas, chaves, índices e segurança em um formulário',
|
|
923
|
+
'ob.kind.table': 'Tabela',
|
|
924
|
+
'ob.kind.view': 'View',
|
|
925
|
+
'ob.kind.function': 'Função',
|
|
926
|
+
'ob.kind.sequence': 'Sequência',
|
|
927
|
+
'ob.kind.index': 'Índice',
|
|
928
|
+
'ob.tile.start': 'Iniciar uma instrução CREATE {what}',
|
|
929
|
+
'ob.tile.quick': 'Quick SQL',
|
|
930
|
+
'ob.tile.quick.desc': 'Um modelo de dados abreviado',
|
|
931
|
+
'ob.tile.load': 'Carregar dados',
|
|
932
|
+
'ob.tile.load.desc': 'Uma tabela a partir de um arquivo',
|
|
933
|
+
'ob.select_hint': 'Selecione um objeto na árvore ou filtre-o pelo nome.',
|
|
934
|
+
'ob.schema': 'Esquema',
|
|
935
|
+
'ob.system': 'Mostrar objetos do sistema',
|
|
936
|
+
'ob.create': 'Criar',
|
|
937
|
+
'ob.db_objects': 'Objetos do banco de dados',
|
|
938
|
+
'ob.err.table': 'Escolha uma tabela que você possa usar.',
|
|
939
|
+
'ob.err.col_name': 'Um nome de coluna é uma letra ou _ seguida de letras, dígitos, _ ou $.',
|
|
940
|
+
'ob.err.col_exists': '{column} já é uma coluna.',
|
|
941
|
+
'ob.err.type': 'Um tipo é um nome com um tamanho opcional, por exemplo text, numeric(9,2), varchar(40), int[].',
|
|
942
|
+
'ob.err.choose_col': 'Escolha uma coluna da tabela.',
|
|
943
|
+
'ob.err.new_name': 'O novo nome deve ser um nome válido que a tabela ainda não tenha.',
|
|
944
|
+
'ob.err.default': "Um padrão é uma expressão (no máximo 200 caracteres, sem ; ou comentários), por exemplo now(), 0 ou 'new'.",
|
|
945
|
+
'ob.err.nothing': 'Nada para alterar: escolha um novo tipo, nulos ou um padrão.',
|
|
946
|
+
'ob.err.action': 'Ação desconhecida.',
|
|
947
|
+
'ob.review': 'Revise a instrução e clique em Executar: nada foi alterado ainda.',
|
|
948
|
+
'ob.none': 'Nenhum.',
|
|
949
|
+
'ob.ddl_of': 'DDL de {name}',
|
|
950
|
+
'ob.no_ddl': 'Sem DDL (um objeto de uma extensão, ou não legível com esta conexão).',
|
|
951
|
+
'ob.source_of': 'Código-fonte de {name}',
|
|
952
|
+
'ob.no_source': 'Uma função de agregação ou de janela: sem código-fonte.',
|
|
953
|
+
'ob.definition_of': 'Definição de {name}',
|
|
954
|
+
'ob.size': 'Tamanho: {size}',
|
|
955
|
+
'ob.more': 'Mais',
|
|
956
|
+
'ob.column': 'Coluna',
|
|
957
|
+
'ob.add_col': 'Adicionar coluna',
|
|
958
|
+
'ob.name': 'Nome',
|
|
959
|
+
'ob.type': 'Tipo',
|
|
960
|
+
'ob.show_sql': 'Mostrar o SQL',
|
|
961
|
+
'ob.modify_col': 'Modificar coluna',
|
|
962
|
+
'ob.new_type': 'Novo tipo',
|
|
963
|
+
'ob.the_same': 'o mesmo',
|
|
964
|
+
'ob.nulls': 'Nulos',
|
|
965
|
+
'ob.allowed': 'permitidos',
|
|
966
|
+
'ob.default': 'Padrão',
|
|
967
|
+
'ob.set_to': 'definir como',
|
|
968
|
+
'ob.default_none': 'nenhum',
|
|
969
|
+
'ob.default_expr': 'Expressão padrão',
|
|
970
|
+
'ob.rename_col': 'Renomear coluna',
|
|
971
|
+
'ob.new_name': 'Novo nome',
|
|
972
|
+
'ob.new_name_ph': 'novo nome',
|
|
973
|
+
'ob.drop_col': 'Excluir coluna',
|
|
974
|
+
'ob.toolbar_note': 'Cada uma escreve a instrução ALTER TABLE na Planilha SQL: revise-a lá e execute-a.',
|
|
975
|
+
'ob.no_rows': 'Sem linhas.',
|
|
976
|
+
'ob.pages': 'Páginas',
|
|
977
|
+
'ob.previous': '‹ Anterior',
|
|
978
|
+
'ob.next': 'Próximo ›',
|
|
979
|
+
'ob.rows_range': 'Linhas {from}–{to}',
|
|
980
|
+
'ob.change_rows': 'Para alterar linhas, use a Planilha SQL ou uma grade interativa sobre a tabela em uma aplicação.',
|
|
981
|
+
'ob.rls_on': 'A segurança em nível de linha está ativada',
|
|
982
|
+
'ob.rls_forced': '(forçada também para o proprietário)',
|
|
983
|
+
'ob.rls_off': 'A segurança em nível de linha está desativada.',
|
|
984
|
+
'ob.no_policies': 'Sem políticas.',
|
|
985
|
+
'ob.used_by': 'Usado por',
|
|
986
|
+
'ob.nothing_refers': 'Nada faz referência a ele.',
|
|
987
|
+
'ob.uses': 'Usa',
|
|
988
|
+
'ob.refers_nothing': 'Não faz referência a mais nada.',
|
|
989
|
+
'ob.edit_table': 'Editar tabela',
|
|
990
|
+
'ob.security': 'Segurança',
|
|
991
|
+
// ------------------------------------------------------------ Table Properties (sprint 123)
|
|
992
|
+
'te.move_up': 'Mover para cima',
|
|
993
|
+
'te.move_down': 'Mover para baixo',
|
|
994
|
+
'te.name': 'Nome',
|
|
995
|
+
'te.type': 'Tipo',
|
|
996
|
+
'te.key': 'Chave',
|
|
997
|
+
'te.pk': 'Chave primária',
|
|
998
|
+
'te.not_null': 'Not null',
|
|
999
|
+
'te.generated': 'Gerada (armazenada)',
|
|
1000
|
+
'te.default': 'Padrão',
|
|
1001
|
+
'te.identity': 'Identidade',
|
|
1002
|
+
'te.comment': 'Comentário',
|
|
1003
|
+
'te.remove': 'Remover',
|
|
1004
|
+
'te.columns': 'Colunas',
|
|
1005
|
+
'te.add_col': 'Adicionar coluna',
|
|
1006
|
+
'te.pk_name': 'Nome da chave primária',
|
|
1007
|
+
'te.pk_help': 'Marque Chave nas colunas da chave primária.',
|
|
1008
|
+
'te.uniques': 'Chaves únicas',
|
|
1009
|
+
'te.cols_comma': 'Colunas (separadas por vírgulas)',
|
|
1010
|
+
'te.fks': 'Chaves estrangeiras',
|
|
1011
|
+
'te.references': 'Referencia',
|
|
1012
|
+
'te.their_cols': 'Colunas dela',
|
|
1013
|
+
'te.its_pk': 'a chave primária dela',
|
|
1014
|
+
'te.on_delete': 'Ao excluir',
|
|
1015
|
+
'te.checks': 'Verificações',
|
|
1016
|
+
'te.condition': 'Condição',
|
|
1017
|
+
'te.indexes': 'Índices',
|
|
1018
|
+
'te.cols_exprs': 'Colunas ou expressões',
|
|
1019
|
+
'te.unique': 'Único',
|
|
1020
|
+
'te.kept': 'Mantidos como estão (outro método ou uma condição):',
|
|
1021
|
+
'te.more': 'Comentário e segurança',
|
|
1022
|
+
'te.rls': 'Segurança em nível de linha: linhas somente por meio de políticas',
|
|
1023
|
+
'te.force_rls': 'Forçá-la também para o proprietário da tabela',
|
|
1024
|
+
'te.partitioning': 'Particionamento',
|
|
1025
|
+
'te.partition_by': 'Particionar por',
|
|
1026
|
+
'te.not_partitioned': 'Não particionada',
|
|
1027
|
+
'te.part_help': 'As partições são tabelas criadas com CREATE TABLE … PARTITION OF na planilha.',
|
|
1028
|
+
'te.no_changes': 'Ainda não há alterações: a tabela está como o formulário a mostra.',
|
|
1029
|
+
'te.fill_in': 'Preencha a tabela e clique em Visualizar DDL.',
|
|
1030
|
+
'te.output': 'Saída',
|
|
1031
|
+
'te.output_empty': 'Aplicar mostra aqui o que aconteceu.',
|
|
1032
|
+
'te.schema': 'Esquema',
|
|
1033
|
+
'te.table_name': 'Nome da tabela',
|
|
1034
|
+
'te.props': 'Propriedades da tabela',
|
|
1035
|
+
'te.preview': 'Visualizar DDL',
|
|
1036
|
+
'te.apply': 'Aplicar',
|
|
1037
|
+
'te.open_ws': 'Abrir na planilha',
|
|
1038
|
+
'te.review': 'Revise as instruções e execute-as: nada foi alterado ainda.',
|
|
1039
|
+
'te.changed': '{table} alterada: {what}.',
|
|
1040
|
+
'te.created': '{table} criada: {what}.',
|
|
1041
|
+
'te.nothing_changed': 'Nada foi alterado',
|
|
1042
|
+
'te.rolled_back': 'as instruções foram executadas em uma transação, que foi revertida.',
|
|
1043
|
+
'te.failed_stmt': 'Instrução com falha',
|
|
1044
|
+
'te.title_table': 'Tabela {table}',
|
|
1045
|
+
'te.title_create': 'Criar tabela',
|
|
675
1046
|
};
|
package/src/builder/i18n.ts
CHANGED
|
@@ -86,6 +86,16 @@ const LABELS: Record<string, BuilderKey> = {
|
|
|
86
86
|
Settings: 'app.tab.settings',
|
|
87
87
|
};
|
|
88
88
|
|
|
89
|
+
/**
|
|
90
|
+
* (sprint 123) The texts the builder's own JavaScript shows (keys js.*), in the language: shell() puts them in the
|
|
91
|
+
* page as JSON in an attribute (<div id="builder-texts" hidden data-texts="…">, escaped like any value; no inline
|
|
92
|
+
* script), and public/*.js read them with a small helper. English fills any gap.
|
|
93
|
+
*/
|
|
94
|
+
export function clientTexts(lang: BuilderLang): Record<string, string> {
|
|
95
|
+
const own = MESSAGES[lang];
|
|
96
|
+
return Object.fromEntries(Object.keys(en).filter((k) => k.startsWith('js.')).map((k) => [k, own[k] ?? (en as Record<string, string>)[k]]));
|
|
97
|
+
}
|
|
98
|
+
|
|
89
99
|
/** A translator: the language's messages (`own`, for tests: a partial file), then English, then the key itself. */
|
|
90
100
|
export function builderTranslator(lang: BuilderLang, own: Readonly<Record<string, string>> = MESSAGES[lang]): BuilderTranslate {
|
|
91
101
|
const text = (key: string): string | undefined => own[key] ?? (en as Record<string, string>)[key];
|