blockly

pacote do Blockly

Classes

Turma Descrição
Bloquear Classe para um bloco. Normalmente não é chamado diretamente. É preferível usar workspace.newBlock().
BlockFlyoutInflater Classe responsável por criar blocos para menus flutuantes.
BlockNavigationPolicy Conjunto de regras que controlam a navegação pelo teclado em um bloco.
BlockSvg Classe para uma representação SVG de um bloco. Normalmente não é chamado diretamente. É preferível usar workspace.newBlock().
ButtonFlyoutInflater Classe responsável por criar botões para menus flutuantes.
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 lógica de verificação de tipo de conexão.
ConnectionDB Banco de dados de conexões. As conexões são armazenadas na ordem do componente vertical. Assim, 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. Isso deve ser um singleton. Não crie uma nova instância. Acesse essa classe apenas em ContextMenuRegistry.registry.
DeleteArea Classe abstrata para um componente que pode excluir um bloco ou uma bolha solta sobre ele.
DragTarget Classe abstrata para um componente com comportamento personalizado quando um bloco ou balão é arrastado ou solto 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 submenu.
FlyoutButtonNavigationPolicy Conjunto de regras que controlam a navegação pelo teclado em um botão de submenu.
FlyoutItem Representação de um item exibido em um submenu flutuante.
FlyoutMetricsManager Calcula métricas para o espaço de trabalho de um pop-up. As métricas são usadas principalmente para dimensionar barras de rolagem no painel flutuante.
FlyoutNavigationPolicy Política de navegação genérica que navega entre itens no menu flutuante.
FlyoutNavigator
FlyoutSeparator Representação de uma lacuna entre elementos em um menu flutuante.
FlyoutSeparatorNavigationPolicy Conjunto de regras que controlam a navegação pelo teclado de um separador de submenu. Este é um marcador de posição sem operação, já que não é possível navegar até os separadores de menu flutuante.
FocusableTreeTraverser Um utilitário auxiliar para implementações de IFocusableTree que ajuda com travessias de árvore comuns.
FocusManager

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

Os chamadores que quiserem mudar explicitamente o foco de entrada para selecionar componentes do Blockly na página precisam usar as funções de foco neste gerenciador.

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

Gesto Classe para um gesto.
Grade Classe para uma grade de espaço de trabalho.
HorizontalFlyout Classe para um submenu flutuante.
Entrada Classe para uma entrada com campos opcionais.
InsertionMarkerPreviewer
KeyboardNavigationController O KeyboardNavigationController coordena o comportamento de navegação por teclado em todo o Blockly, como ativar/desativar a visualização completa do cursor.
LabelFlyoutInflater Classe responsável por criar rótulos para menus flutuantes.
LineCursor Classe para um cursor de linha.
Marker Classe para um marcador. Usado na navegação por teclado para salvar um local na AST do Blockly.
MarkerManager Classe para gerenciar 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 espaço de trabalho.
Nomes Classe para um banco de dados de nomes de entidades (variáveis, procedimentos etc.).
Navigator Classe responsável por determinar para onde o foco deve se mover em resposta aos comandos de navegação pelo 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 com funcionamento garantido, mas que 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 menus flutuantes.
ShortcutRegistry Classe para o registro de atalhos de teclado. Isso deve ser um singleton. Não crie uma nova instância. Acesse essa classe apenas em "ShortcutRegistry.registry".
Tema Classe para um tema.
ThemeManager Classe para armazenar e atualizar o tema e os componentes de interface de um espaço de trabalho.
Toast Classe que permite mostrar e dispensar 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. Não é possível interagir com este item.
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. Contém informações da variável, incluindo nome, ID e tipo.
VerticalFlyout Classe para um submenu flutuante.
Workspace Classe para um espaço de trabalho. É uma estrutura de dados que contém blocos. Não há interface, e ele pode ser criado sem interface.
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 com um mouse ou por toque.
WorkspaceNavigationPolicy Conjunto de regras que controlam a navegação pelo teclado em um espaço de trabalho.
WorkspaceSvg Classe para um espaço de trabalho. É uma área na tela com lixeira, barras de rolagem, bolhas e arrastar 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 submenu flutuante.

Enumerações

Enumeração Descrição
ConnectionType Enumeração 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) Proteção de tipo que verifica se o objeto fornecido é um IHasBubble.
hideChaff(opt_onlyClosePopups) Fechar dicas, menus de contexto, seleções suspensas etc.
inject(container, opt_options) Injeta um editor do Blockly no elemento de contêiner especificado (geralmente uma div).
isCopyable(obj)
isDeletable(obj) Retorna se o objeto especificado é um IDeletable.
isDraggable(obj) Retorna se o objeto especificado é 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 especificado é um ISelectable.
isSerializable(obj) Proteção de tipo que verifica se o objeto fornecido é um ISerializable.
isVariableBackedParameterModel(param) Retorna se o objeto especificado é um detentor de variável ou não.
navigateBlock(current, delta) Retorna o próximo item navegável em relação ao elemento filho do bloco fornecido.
navigateStacks(current, delta) Retorna a próxima/anterior pilha relativa à pilha do elemento especificado.
setLocale(locale)

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

Isso não é útil/necessário ao carregar de uma tag de script, porque as mensagens são automaticamente inseridas no objeto Blockly.Msg. Mas fornecemos nos contextos de tag de script e sem tag 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 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 suspenso.
FieldImageConfig Opções de configuração para o campo de imagem.
FieldImageFromJsonConfig Opções de configuração fromJson para o campo de imagem.
FieldLabelConfig Opções de configuração para o campo de rótulo.
FieldLabelFromJsonConfig Opções de configuração fromJson para o campo de rótulo.
FieldNumberConfig Opções de configuração para o campo de número.
FieldNumberFromJsonConfig Opções de configuração fromJson para o campo de número.
FieldTextInputFromJsonConfig Opções de configuração 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 fromJson para o campo da variável.
IAutoHideable Interface para um componente que pode ser ocultado automaticamente.
IBoundedElement Uma interface de elemento limitado.
IBubble Uma interface de bolhas.
ICollapsibleToolboxItem Interface para um item na caixa de ferramentas que pode ser recolhido.
IComponent A interface de um componente do espaço de trabalho que pode ser registrado no ComponentManager.
IConnectionChecker Classe para lógica de verificação de tipo de conexão.
IConnectionPreviewer Mostra "pré-visualizações" visuais de onde um bloco será conectado se for solto.
IContextMenu
ICopyable
IDeletable A interface para um objeto que pode ser excluído.
IDeleteArea Interface para um componente que pode excluir um bloco ou balão solto sobre ele.
IDraggable Representa um objeto que pode ser arrastado.
IDragger
IDragStrategy
IDragTarget Interface para um componente com comportamento personalizado quando um bloco ou balão é arrastado ou solto sobre ele.
IFlyout Interface para um menu pop-up.
IFlyoutInflater
IFocusableNode Representa qualquer coisa que possa ter foco de entrada.
IFocusableTree

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

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

O foco é compartilhado entre uma ou mais árvores, em que cada uma pode ter exatamente um nó ativo ou passivo. Além disso, 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 focada anteriormente.

Se o nó focado atual da árvore (passivo ou ativo) for necessário, use FocusableTreeTraverser.findFocusedNode.

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.
IMetricsManager Interface para um gerenciador de métricas.
IMovable A interface de um objeto móvel.
INavigationPolicy Um conjunto de regras que especificam onde a navegação por teclado deve continuar.
IPaster Um objeto que pode colar dados em um espaço de trabalho.
IPositionable Interface para 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 que pode ser selecionado.

Geralmente, as implementações usam 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 para 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 para uma caixa de ferramentas.
IToolboxItem Interface para 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 contêineres 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 uma exceção se eles 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 de toast.

Namespaces

Namespace Descrição
Bloquear
blockAnimations
blockRendering
browserEvents
bolhas
bumpObjects
clipboard
CollapsibleToolboxCategory
comments
comum
ComponentManager
constants
ContextMenu
ContextMenuItems
ContextMenuRegistry
Css
dialog
dragging
Eventos
Extensões
fieldRegistry
geras
icons
ICopyable
inputs
camadas
libraryBlocks
MetricsManager
Nomes
Opções
Procedimentos
registry
RenderedConnection
renderManagement
serialization
ShortcutItems
ShortcutRegistry
Tema
ThemeManager
Temas
thrasos
Toast Opções de agressividade com que os leitores de tela devem ler os avisos. 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
Bloqueios Um mapeamento de nomes de tipos 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 mudar.
defineBlocksWithJsonArray Defina blocos de uma matriz de definições de blocos JSON, como pode ser gerado 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
keyboardNavigationController Instância singleton do controlador de navegação pelo teclado.
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 procedimentos.
RENAME_VARIABLE_ID
setParentContainer Defina o contêiner principal. É o elemento contêiner em que WidgetDiv, dropDownDiv e Tooltip são renderizados na primeira vez que Blockly.inject é chamado. Esse método é uma NOP se for chamado após o primeiro Blockly.inject.
svgResize Redimensione a imagem SVG para preencher completamente o contêiner. Chame isso quando a visualização mudar de tamanho (por exemplo, em uma mudança de orientação do dispositivo/redimensionamento da janela). 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 de 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 de variáveis.
VERSION Versão principal do Blockly. Essa constante é substituída pelo script de build (npm run build) pelo valor da versão em package.json. Isso é feito pelo Closure Compiler na tarefa "buildCompressed" do Gulp. Para builds locais, transmita --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 a string literal separator para um item separador de menu ou uma matriz para itens de menu de ação normal. No último caso, o primeiro elemento é o valor legível para humanos (texto, objeto ImageProperties ou elemento HTML), e o segundo elemento é o valor neutro em relação ao idioma.
ReturnEphemeralFocus

Declaração de tipo para retornar o foco ao FocusManager ao concluir um fluxo de interface efêmero (como uma caixa de diálogo).

Consulte FocusManager.takeEphemeralFocus para mais detalhes.