blockly (em inglês)

pacote blockly

Classes

Turma Descrição
Bloquear Classe para um bloco. Normalmente, não é chamado diretamente, workspace.newBlock() é a melhor opção.
BlockFlyoutInflater Classe responsável por criar blocos para pop-ups.
BlockNavigationPolicy Conjunto de regras que controlam a navegação pelo teclado em um bloco.
BlockSvg Classe para a representação SVG de um bloco. Normalmente, não é chamado diretamente, workspace.newBlock() é a melhor opção.
ButtonFlyoutInflater Classe responsável por criar botões para pop-ups.
CodeGenerator Classe para um gerador de código que traduz os blocos para uma linguagem.
CollapsibleToolboxCategory Classe para uma categoria em uma caixa de ferramentas que pode ser recolhida.
ComponentManager Gerenciador de todos os itens registrados no espaço de trabalho.
Conexão Classe para uma conexão entre blocos.
ConnectionChecker Classe para a lógica de verificação do tipo de conexão.
ConnectionDB Banco de dados de conexões. As conexões são armazenadas na ordem do componente vertical. Dessa forma, as conexões em uma área podem ser pesquisadas rapidamente usando uma pesquisa binária.
ConnectionNavigationPolicy Conjunto de regras que controlam a navegação pelo teclado de uma conexão.
ContextMenuRegistry Classe para o registro de itens do menu de contexto. Ele tem a intenção de ser um singleton. Não crie uma nova instância e acesse essa classe apenas em ContextMenuRegistry.registry.
DeleteArea Classe abstrata para um componente que pode excluir um bloco ou uma bolha que é colocada sobre ele.
DragTarget Classe abstrata para um componente com comportamento personalizado quando um bloco ou balão é arrastado ou colocado sobre ele.
FieldCheckbox Classe para um campo de caixa de seleção.
FieldDropdown Classe para um campo suspenso editável.
FieldImage Classe para uma imagem em um bloco.
FieldLabel Classe para um campo de texto não editável e não serializável.
FieldLabelSerializable Classe para um campo de texto não editável e serializável.
FieldNavigationPolicy Conjunto de regras que controlam a navegação pelo teclado em um campo.
FieldNumber Classe para um campo de número editável.
FieldTextInput Classe para um campo de texto editável.
FieldVariable Classe para o campo suspenso de uma variável.
FlyoutButton Classe para um botão ou rótulo no menu suspenso.
FlyoutButtonNavigationPolicy Conjunto de regras que controlam a navegação pelo teclado em um botão de expansão.
FlyoutItem Representação de um item exibido em um menu suspenso.
FlyoutMetricsManager Calcula as métricas do espaço de trabalho de um menu suspenso. As métricas são usadas principalmente para dimensionar barras de rolagem para o menu suspenso.
FlyoutNavigationPolicy Política de navegação genérica que navega entre os itens no menu suspenso.
FlyoutNavigator
FlyoutSeparator Representação de um intervalo entre os elementos em um menu suspenso.
FlyoutSeparatorNavigationPolicy Conjunto de regras que controlam a navegação pelo teclado de um separador de expansão. Esse é um marcador de posição sem operação, já que não é possível navegar até os separadores de pop-up.
FocusableTreeTraverser Um utilitário auxiliar para implementações de IFocusableTree para ajudar com transições de árvore comuns.
FocusManager

Um singleton por página que gerencia o foco do Blockly em uma ou mais IFocusableTrees e sincroniza esse foco de forma bidirecional com o DOM.

Os autores de chamadas que quiserem mudar explicitamente o foco de entrada de componentes selecionados do Blockly na página precisam usar as funções de foco nesse gerenciador.

O gerenciador é responsável por processar eventos de foco do DOM (que podem surgir quando os usuários clicam em elementos da página) e garantir que os IFocusableNodes correspondentes sejam claramente marcados como destacados ativamente/passivamente da mesma forma que isso seria representado com chamadas para focusNode().

Gesto Classe para um gesto.
Grade Classe para a grade de um espaço de trabalho.
HorizontalFlyout Classe para um menu suspenso.
Entrada Classe para uma entrada com campos opcionais.
InsertionMarkerPreviewer
LabelFlyoutInflater Classe responsável por criar rótulos para pop-ups.
LineCursor Classe para um cursor de linha.
Marker Classe para um marcador. Isso é usado na navegação pelo teclado para salvar um local no AST do Blockly.
MarkerManager Classe para gerenciar os vários marcadores e o cursor em um espaço de trabalho.
Menu Uma classe de menu básica.
MenuItem Classe que representa um item em um menu.
MetricsManager O administrador de todos os cálculos de métricas do Workspace.
Nomes Classe para um banco de dados de nomes de entidades (variáveis, procedimentos etc.).
Navegador Classe responsável por determinar para onde o foco precisa se mover em resposta aos comandos de navegação do teclado.
Opções Analise as opções especificadas pelo usuário usando padrões razoáveis quando o comportamento não for especificado.
RenderedConnection Classe para uma conexão entre blocos que podem ser renderizados na tela.
Barra de rolagem Classe para uma barra de rolagem SVG pura. Essa técnica oferece uma barra de rolagem que funciona, mas pode não ter a mesma aparência ou comportamento das barras de rolagem do sistema.
ScrollbarPair Classe para um par de barras de rolagem. Horizontal e vertical.
SeparatorFlyoutInflater Classe responsável por criar separadores para pop-ups.
ShortcutRegistry Classe para o registro de atalhos de teclado. Ele tem a intenção de ser um singleton. Não crie uma nova instância e acesse essa classe apenas em ShortcutRegistry.registry.
Tema Classe para um tema.
ThemeManager Classe para armazenar e atualizar o tema e os componentes da interface de um espaço de trabalho.
Toast Classe que permite mostrar e descartar notificações temporárias.
Caixa de ferramentas Classe para uma caixa de ferramentas. Cria o DOM da caixa de ferramentas.
ToolboxCategory Classe para uma categoria em uma caixa de ferramentas.
ToolboxItem Classe para um item na caixa de ferramentas.
ToolboxSeparator Classe para um separador da caixa de ferramentas. É a linha visual fina que aparece na caixa de ferramentas. Este item não pode ser usado.
Lixeira Classe para uma lixeira.
UnattachedFieldError Representa um erro em que o campo está tentando acessar o bloco ou informações sobre ele antes de ser anexado a ele.
VariableMap Classe para um mapa de variáveis. Ele contém uma estrutura de dados de dicionário com tipos de variáveis como chaves e listas de variáveis como valores. A lista de variáveis é o tipo indicado pela chave.
VariableModel Classe para um modelo de variável. Armazena informações da variável, incluindo nome, ID e tipo.
VerticalFlyout Classe para um menu suspenso.
Workspace Turma de um espaço de trabalho. É uma estrutura de dados que contém blocos. Não há interface e pode ser criado sem cabeça.
WorkspaceAudio Classe para carregar, armazenar e reproduzir áudio em um espaço de trabalho.
WorkspaceDragger Classe para um arrastador de espaço de trabalho. Ele move o espaço de trabalho quando é arrastado por um mouse ou toque.
WorkspaceNavigationPolicy Conjunto de regras que controlam a navegação pelo teclado em um espaço de trabalho.
WorkspaceSvg Turma de um espaço de trabalho. É uma área na tela com lixeira, barras de rolagem, bolhas e arrastamento opcionais.
ZoomControls Classe para controles de zoom.

Classes abstratas

Classe abstrata Descrição
Campo Classe abstrata para um campo editável.
Flyout Classe para um menu suspenso.

Enumerações

Enumeração Descrição
ConnectionType Enum para o tipo de uma conexão ou entrada.

Funções

Função Descrição
getFocusManager() Função de conveniência para FocusManager.getFocusManager.
hasBubble(obj) Protetor de tipo que verifica se o objeto fornecido é um IHasBubble.
hideChaff(opt_onlyClosePopups) Feche as dicas, menus de contexto, seleções de menus suspensos etc.
inject(container, opt_options) Injete um editor do Blockly no elemento de contêiner especificado (geralmente um div).
isCopyable(obj)
isDeletable(obj) Retorna se o objeto fornecido é um IDeletable.
isDraggable(obj) Retorna se o objeto fornecido é um IDraggable ou não.
isIcon(obj) Proteção de tipo que verifica se o objeto fornecido é um IIcon.
isPaster(obj)
isRenderedElement(obj)
isSelectable(obj) Verifica se o objeto fornecido é um ISelectable.
isSerializable(obj) Protetor de tipo que verifica se o objeto fornecido é ISerializable.
isVariableBackedParameterModel(param) Retorna se o objeto fornecido é um detentor de variável ou não.
setLocale(locale)

Define a localidade (ou seja, as mensagens localizadas/texto de bloco/etc.) para a localidade especificada.

Isso não é útil/necessário ao carregar de uma tag de script, porque as mensagens são agrupadas automaticamente no objeto Blockly.Msg. No entanto, fornecemos isso nos contextos de tag de script e não de script para que o tscompiler possa criar corretamente nossos arquivos de definição de tipo.

Interfaces

Interface Descrição
BlocklyOptions Opções do Blockly.
FieldCheckboxConfig Opções de configuração para o campo de caixa de seleção.
FieldCheckboxFromJsonConfig Opções de configuração de fromJson para o campo de caixa de seleção.
FieldConfig Opções de configuração extras para o campo base.
FieldDropdownFromJsonConfig Configuração fromJson para o campo do menu suspenso.
FieldImageConfig Opções de configuração para o campo de imagem.
FieldImageFromJsonConfig Opções de configuração de fromJson para o campo de imagem.
FieldLabelConfig Opções de configuração para o campo de rótulo.
FieldLabelFromJsonConfig Opções de configuração de fromJson para o campo de rótulo.
FieldNumberConfig Opções de configuração para o campo numérico.
FieldNumberFromJsonConfig Opções de configuração de fromJson para o campo de número.
FieldTextInputFromJsonConfig Opções de configuração de fromJson para o campo de entrada de texto.
FieldVariableConfig Opções de configuração para o campo de variável.
FieldVariableFromJsonConfig Opções de configuração de fromJson para o campo de variável.
IAutoHideable Interface para um componente que pode ser ocultado automaticamente.
IBoundedElement Uma interface de elemento limitado.
IBubble Uma interface de balão.
ICollapsibleToolboxItem Interface de um item na caixa de ferramentas que pode ser recolhido.
IComponent A interface de um componente de espaço de trabalho que pode ser registrado com o ComponentManager.
IConnectionChecker Classe para a lógica de verificação do tipo de conexão.
IConnectionPreviewer Mostra "prévias" visuais de onde um bloco será conectado se for descartado.
IContextMenu
ICopyable
IDeletable A interface de um objeto que pode ser excluído.
IDeleteArea Interface de um componente que pode excluir um bloco ou bolha que foi colocado sobre ele.
IDraggable Representa um objeto que pode ser arrastado.
IDragger
IDragStrategy
IDragTarget Interface de um componente com comportamento personalizado quando um bloco ou balão é arrastado ou posicionado sobre ele.
IFlyout Interface para um menu suspenso.
IFlyoutInflater
IFocusableNode Representa tudo o que pode ter foco de entrada.
IFocusableTree

Representa uma árvore de elementos focalizáveis com o próprio contexto de foco ativo/passivo.

O foco é gerenciado pelo FocusManager, e as implementações de árvore podem ter no máximo um IFocusableNode focado por vez. Se a árvore tiver foco, o nó em foco dela será considerado "ativo" (ou "passivo", se outra árvore tiver foco).

O foco é compartilhado entre uma ou mais árvores, em que cada árvore pode ter exatamente um nó ativo ou passivo (e apenas um nó ativo pode existir em toda a página a qualquer momento). A ideia do foco passivo é fornecer contexto aos usuários sobre onde o foco será restaurado ao navegar de volta para uma árvore em foco anteriormente.

Se o nó de foco atual da árvore (passivo ou ativo) for necessário, o método FocusableTreeTraverser.findFocusedNode poderá ser usado.

Se for necessário recuperar nós específicos para essa árvore, use lookUpFocusableNode ou FocusableTreeTraverser.findFocusableNodeFor.

IHasBubble
IIcon
IKeyboardAccessible Uma interface para um objeto que processa atalhos de teclado.
ImageProperties Definição de uma opção de menu suspenso de imagem legível por humanos.
IMetricsManager Interface para um gerenciador de métricas.
IMovable A interface de um objeto móvel.
INavigationPolicy Um conjunto de regras que especificam para onde a navegação pelo teclado deve prosseguir.
IPaster Um objeto que pode colar dados em um espaço de trabalho.
IPositionable Interface de um componente posicionado na parte de cima do espaço de trabalho.
IRegistrable A interface de um componente do Blockly que pode ser registrado.
IRenderedElement
ISelectable

A interface de um objeto selecionável.

Geralmente, as implementações devem usar as implementações de onNodeFocus() e onNodeBlur() para chamar setSelected() com elas mesmas e null, respectivamente, para garantir que as seleções sejam atualizadas corretamente e que o evento de mudança de seleção seja acionado.

ISelectableToolboxItem Interface de um item na caixa de ferramentas que pode ser selecionado.
ISerializable
IStyleable Interface para um objeto a que um estilo pode ser adicionado.
IToolbox Interface de uma caixa de ferramentas.
IToolboxItem Interface de um item na caixa de ferramentas.
IVariableBackedParameterModel Interface para um modelo de parâmetro que contém um modelo de variável.
IVariableMap

Os mapas de variáveis são objetos de contêiner responsáveis por armazenar e gerenciar o conjunto de variáveis referenciadas em um espaço de trabalho.

Qualquer um desses métodos pode definir invariantes sobre quais nomes e tipos são válidos e gerar exceções se não forem atendidos.

IVariableModel
IVariableState Representa o estado de uma determinada variável.
ToastOptions Opções de exibição/configuração para uma notificação ("toast")

Namespaces

Namespace Descrição
Bloquear
blockAnimations
blockRendering
browserEvents
bolhas
bumpObjects
Área de transferência
CollapsibleToolboxCategory
comments
comum
ComponentManager
constantes
ContextMenu
ContextMenuItems
ContextMenuRegistry
CSS
dialog
arrastar
Eventos
Extensões
fieldRegistry
geras
ícones
ICopyable
entradas
camadas
libraryBlocks
MetricsManager
Nomes
Opções
Procedimentos
registry
RenderedConnection
renderManagement
serialização
ShortcutItems
ShortcutRegistry
Tema
ThemeManager
Temas
thrasos
Toast Opções sobre como as notificações curtas precisam ser lidas pelos leitores de tela. Os valores correspondem aos de "aria-live".
ToolboxCategory
ToolboxSeparator
Dica
Toque
uiPosition
utils
Variáveis (link em inglês)
VariablesDynamic
WidgetDiv
Xml
zelos

Variáveis

Variável Descrição
Blocos Um mapeamento de nomes de tipo de bloco para objetos de protótipo de bloco.
COLLAPSE_CHARS
COLLAPSED_FIELD_NAME
COLLAPSED_INPUT_NAME
config Objeto que contém todos os valores no Blockly que esperamos que os desenvolvedores possam alterar.
defineBlocksWithJsonArray Define blocos de uma matriz de definições de blocos JSON, como as geradas pelas ferramentas para desenvolvedores do Blockly.
DELETE_VARIABLE_ID
DropDownDiv
getMainWorkspace Retorna o espaço de trabalho principal. Retorna o último espaço de trabalho principal usado (com base no foco). Tente não usar essa função, principalmente se houver várias instâncias do Blockly em uma página.
getSelected Retorna o objeto copiável selecionado no momento.
INPUT_VALUE
JavaScript
Msg Um dicionário de mensagens localizadas.
NEXT_STATEMENT
OPPOSITE_TYPE
OUTPUT_VALUE
PREVIOUS_STATEMENT
PROCEDURE_CATEGORY_NAME String para uso no atributo "custom" de uma categoria no XML da caixa de ferramentas. Essa string indica que a categoria precisa ser preenchida dinamicamente com blocos de procedimento.
RENAME_VARIABLE_ID
setParentContainer Defina o contêiner pai. Esse é o elemento de contêiner em que o WidgetDiv, o dropDownDiv e o Tooltip são renderizados na primeira vez que Blockly.inject é chamado. Esse método é um NOP se for chamado após o primeiro Blockly.inject.
svgResize Dimensione a imagem SVG para preencher completamente o contêiner. Chame esse método quando a visualização mudar de tamanho (por exemplo, em um redimensionamento de janela/mudança de orientação do dispositivo). Consulte workspace.resizeContents para redimensionar o espaço de trabalho quando o conteúdo mudar (por exemplo, quando um bloco for adicionado ou removido). Registre a altura/largura da imagem SVG.
TOOLBOX_AT_BOTTOM
TOOLBOX_AT_LEFT
TOOLBOX_AT_RIGHT
TOOLBOX_AT_TOP
VARIABLE_CATEGORY_NAME String para uso no atributo "custom" de uma categoria no XML da caixa de ferramentas. Essa string indica que a categoria precisa ser preenchida dinamicamente com blocos variáveis.
VARIABLE_DYNAMIC_CATEGORY_NAME String para uso no atributo "custom" de uma categoria no XML da caixa de ferramentas. Essa string indica que a categoria precisa ser preenchida dinamicamente com blocos variáveis.
VERSÃO Versão principal do Blockly. Essa constante é substituída pelo script de build (npm run build) para o valor da versão no package.json. Isso é feito pelo Closure Compiler na tarefa gulp buildCompressed. Para builds locais, é possível transmitir --define='Blockly.VERSION=X.Y.Z' ao compilador para substituir essa constante.

Aliases de tipo

Alias de tipo Descrição
FieldCheckboxValidator Uma função chamada para validar as mudanças no valor do campo antes de serem definidas.
FieldDropdownConfig Opções de configuração para o campo suspenso.
FieldDropdownValidator Uma função chamada para validar as mudanças no valor do campo antes de serem definidas.
FieldNumberValidator Uma função chamada para validar as mudanças no valor do campo antes de serem definidas.
FieldTextInputConfig Opções de configuração para o campo de entrada de texto.
FieldTextInputValidator Uma função chamada para validar as mudanças no valor do campo antes de serem definidas.
FieldValidator Uma função chamada para validar as mudanças no valor do campo antes de serem definidas.
FieldVariableValidator Uma função chamada para validar as mudanças no valor do campo antes de serem definidas.
ICopyData
MenuGenerator Uma matriz de opções de menu ou uma função que gera uma matriz de opções de menu para FieldDropdown ou seus descendentes.
MenuGeneratorFunction Uma função que gera uma matriz de opções de menu para FieldDropdown ou seus descendentes.
MenuOption Uma opção individual no menu suspenso. Pode ser o literal de string separator para um item de separador de menu ou uma matriz para itens de menu de ação normais. Nesse caso, o primeiro elemento é o valor legível por humanos (texto, objeto ImageProperties ou elemento HTML), e o segundo é o valor neutro em relação ao idioma.
ReturnEphemeralFocus

Declaração de tipo para retornar o foco ao FocusManager após a conclusão de um fluxo de interface efêmera (como uma caixa de diálogo).

Consulte FocusManager.takeEphemeralFocus para mais detalhes.