blockly

Paquete blockly

Clases

Clase Descripción
Bloquear Clase para un bloque. No se suele llamar directamente, se prefiere workspace.newBlock().
BlockFlyoutInflater Clase responsable de crear bloques para menús desplegables.
BlockNavigationPolicy Es un conjunto de reglas que controlan la navegación con el teclado desde un bloque.
BlockSvg Clase para la representación SVG de un bloque. No se suele llamar directamente, se prefiere workspace.newBlock().
ButtonFlyoutInflater Clase responsable de crear botones para los menús desplegables.
CodeGenerator Clase para un generador de código que traduce los bloques a un lenguaje.
CollapsibleToolboxCategory Clase para una categoría en una caja de herramientas que se puede contraer.
ComponentManager Es el administrador de todos los elementos registrados en el espacio de trabajo.
Conexión Clase para una conexión entre bloques.
ConnectionChecker Clase para la lógica de verificación del tipo de conexión.
ConnectionDB Base de datos de conexiones. Las conexiones se almacenan en orden de su componente vertical. De esta manera, las conexiones en un área se pueden buscar rápidamente con una búsqueda binaria.
ConnectionNavigationPolicy Es un conjunto de reglas que controlan la navegación con el teclado desde una conexión.
ContextMenuRegistry Clase para el registro de elementos del menú contextual. Se espera que sea un singleton. No debes crear una instancia nueva, sino acceder a esta clase solo desde ContextMenuRegistry.registry.
DeleteArea Clase abstracta para un componente que puede borrar un bloque o una burbuja que se suelta sobre él.
DragTarget Clase abstracta para un componente con un comportamiento personalizado cuando se arrastra un bloque o una burbuja sobre él o se suelta sobre él.
FieldCheckbox Clase para un campo de casilla de verificación.
FieldDropdown Clase para un campo desplegable editable.
FieldImage Clase para una imagen en un bloque.
FieldLabel Clase para un campo de texto no editable y no serializable.
FieldLabelSerializable Clase para un campo de texto serializable y no editable.
FieldNavigationPolicy Es un conjunto de reglas que controlan la navegación con el teclado desde un campo.
FieldNumber Clase para un campo de número editable.
FieldTextInput Clase para un campo de texto editable.
FieldVariable Clase para el campo desplegable de una variable.
FlyoutButton Clase para un botón o una etiqueta en el menú desplegable.
FlyoutButtonNavigationPolicy Es un conjunto de reglas que controlan la navegación con el teclado desde un botón de menú desplegable.
FlyoutItem Representación de un elemento que se muestra en un menú desplegable.
FlyoutMetricsManager Calcula las métricas del espacio de trabajo de un desplegable. Las métricas se usan principalmente para dimensionar las barras de desplazamiento del menú desplegable.
FlyoutNavigationPolicy Política de navegación genérica que navega entre los elementos del menú desplegable.
FlyoutNavigator
FlyoutSeparator Representación de un espacio entre elementos en un menú desplegable.
FlyoutSeparatorNavigationPolicy Es un conjunto de reglas que controlan la navegación con el teclado desde un separador de menú desplegable. Este es un marcador de posición no operativo, ya que no se puede navegar a los separadores de la ventana desplegable.
FocusableTreeTraverser Es una utilidad de ayuda para las implementaciones de IFocusableTree que ayuda con los recorridos de árbol comunes.
FocusManager

Es un singleton por página que administra el enfoque de Blockly en uno o más IFocusableTrees y sincroniza bidireccionalmente este enfoque con el DOM.

Las personas que llaman y desean cambiar de forma explícita el enfoque de entrada para seleccionar componentes de Blockly en la página deben usar las funciones de enfoque de este administrador.

El administrador es responsable de controlar los eventos de enfoque del DOM (que pueden surgir de los usuarios que hacen clic en los elementos de la página) y de garantizar que los IFocusableNodes correspondientes estén claramente marcados como destacados de forma activa o pasiva de la misma manera en que se representarían con llamadas a focusNode().

Gesto Clase para un gesto.
Cuadrícula Clase para la cuadrícula de un espacio de trabajo.
HorizontalFlyout Clase para un menú desplegable.
Entrada Clase para una entrada con campos opcionales.
InsertionMarkerPreviewer
KeyboardNavigationController El KeyboardNavigationController controla la coordinación del comportamiento de navegación con el teclado en todo Blockly, como habilitar o inhabilitar la visualización completa del cursor.
LabelFlyoutInflater Clase responsable de crear etiquetas para los menús desplegables.
LineCursor Clase para un cursor de línea.
Marker Clase para un marcador. Se usa en la navegación con el teclado para guardar una ubicación en el AST de Blockly.
MarkerManager Clase para administrar los múltiples marcadores y el cursor en un espacio de trabajo.
Menú Es una clase de menú básica.
MenuItem Clase que representa un elemento en un menú.
MetricsManager Es el administrador de todos los cálculos de métricas del espacio de trabajo.
Nombres Clase para una base de datos de nombres de entidades (variables, procedimientos, etcétera).
Navigator Clase responsable de determinar dónde debe moverse el enfoque en respuesta a los comandos de navegación con el teclado.
Opciones Analiza las opciones especificadas por el usuario y usa valores predeterminados razonables cuando no se especifica el comportamiento.
RenderedConnection Clase para una conexión entre bloques que se puede renderizar en la pantalla.
Barra de desplazamiento Clase para una barra de desplazamiento SVG pura. Esta técnica ofrece una barra de desplazamiento que garantiza que funcionará, pero es posible que no se vea ni se comporte como las barras de desplazamiento del sistema.
ScrollbarPair Clase para un par de barras de desplazamiento. Horizontal y vertical
SeparatorFlyoutInflater Clase responsable de crear separadores para los menús desplegables.
ShortcutRegistry Clase para el registro de combinaciones de teclas. Se espera que sea un singleton. No debes crear una instancia nueva, sino que solo debes acceder a esta clase desde ShortcutRegistry.registry.
Tema Clase para un tema.
ThemeManager Clase para almacenar y actualizar el tema y los componentes de la IU de un espacio de trabajo.
Toast Clase que permite mostrar y descartar notificaciones temporales.
Caja de herramientas Clase para una caja de herramientas. Crea el DOM de la caja de herramientas.
ToolboxCategory Clase para una categoría en una caja de herramientas.
ToolboxItem Es la clase de un elemento de la caja de herramientas.
ToolboxSeparator Clase para un separador de caja de herramientas. Es la línea visual delgada que aparece en la caja de herramientas. Este elemento no es interactivo.
Papelera Clase para un bote de basura.
UnattachedFieldError Representa un error en el que el campo intenta acceder a su bloque o a información sobre él antes de que se haya adjuntado a dicho bloque.
VariableMap Clase para un mapa de variables. Contiene una estructura de datos de diccionario con tipos de variables como claves y listas de variables como valores. La lista de variables es del tipo indicado por la clave.
VariableModel Clase para un modelo de variable. Contiene información de la variable, incluidos el nombre, el ID y el tipo.
VerticalFlyout Clase para un menú desplegable.
Workspace Clase para un espacio de trabajo. Es una estructura de datos que contiene bloques. No hay IU y se puede crear sin encabezado.
WorkspaceAudio Clase para cargar, almacenar y reproducir audio en un espacio de trabajo.
WorkspaceDragger Clase para un arrastrador de espacio de trabajo. Mueve el espacio de trabajo cuando se arrastra con un mouse o con el tacto.
WorkspaceNavigationPolicy Es un conjunto de reglas que controlan la navegación con el teclado desde un espacio de trabajo.
WorkspaceSvg Clase para un espacio de trabajo. Esta es un área en pantalla con papelera, barras de desplazamiento, burbujas y arrastre opcionales.
ZoomControls Clase para controles de zoom.

Clases abstractas

Clase abstracta Descripción
Campo Clase abstracta para un campo editable.
Flyout Clase para un menú desplegable.

Enumeraciones

Enumeration Descripción
ConnectionType Es un enum para el tipo de conexión o entrada.

Funciones

Función Descripción
getFocusManager() Función de conveniencia para FocusManager.getFocusManager.
hasBubble(obj) Es un verificador de tipos que comprueba si el objeto determinado es un IHasBubble.
hideChaff(opt_onlyClosePopups) Cierra las sugerencias, los menús contextuales, las selecciones de menús desplegables, etcétera.
inject(container, opt_options) Inserta un editor de Blockly en el elemento contenedor especificado (por lo general, un div).
isCopyable(obj)
isDeletable(obj) Devuelve un valor que indica si el objeto determinado es un IDeletable.
isDraggable(obj) Devuelve si el objeto determinado es IDraggable o no.
isIcon(obj) Es un verificador de tipos que comprueba si el objeto determinado es un IIcon.
isPaster(obj)
isRenderedElement(obj)
isSelectable(obj) Comprueba si el objeto determinado es un ISelectable.
isSerializable(obj) Es un verificador de tipos que comprueba si el objeto determinado es un ISerializable.
isVariableBackedParameterModel(param) Devuelve un valor que indica si el objeto determinado es un contenedor de variables o no.
navigateBlock(current, delta) Devuelve el siguiente elemento navegable en relación con el elemento secundario del bloque proporcionado.
navigateStacks(current, delta) Devuelve la pila siguiente o anterior en relación con la pila del elemento determinado.
setLocale(locale)

Establece la configuración regional (es decir, los mensajes, el texto en bloque, etc. localizados) en la configuración regional proporcionada.

Esto no es útil ni necesario cuando se carga desde una etiqueta de secuencia de comandos, ya que los mensajes se clugan automáticamente en el objeto Blockly.Msg. Sin embargo, lo proporcionamos en los contextos de etiquetas de secuencia de comandos y de no etiquetas de secuencia de comandos para que el compilador de TypeScript pueda crear correctamente nuestros archivos de definición de tipos.

Interfaces

Interfaz Descripción
BlocklyOptions Opciones de Blockly
FieldCheckboxConfig Son las opciones de configuración del campo de casilla de verificación.
FieldCheckboxFromJsonConfig Son las opciones de configuración de fromJson para el campo de casilla de verificación.
FieldConfig Son opciones de configuración adicionales para el campo base.
FieldDropdownFromJsonConfig Es la configuración de fromJson para el campo desplegable.
FieldImageConfig Son las opciones de configuración del campo de imagen.
FieldImageFromJsonConfig Opciones de configuración de fromJson para el campo de imagen.
FieldLabelConfig Son las opciones de configuración del campo de etiqueta.
FieldLabelFromJsonConfig Opciones de configuración de fromJson para el campo de etiqueta.
FieldNumberConfig Son las opciones de configuración del campo de número.
FieldNumberFromJsonConfig Opciones de configuración de fromJson para el campo de número.
FieldTextInputFromJsonConfig Opciones de configuración de fromJson para el campo de entrada de texto.
FieldVariableConfig Son las opciones de configuración del campo de variables.
FieldVariableFromJsonConfig Son las opciones de configuración de fromJson para el campo de la variable.
IAutoHideable Es la interfaz de un componente que se puede ocultar automáticamente.
IBoundedElement Es una interfaz de elemento delimitado.
IBubble Una interfaz de burbujas
ICollapsibleToolboxItem Interfaz para un elemento de la caja de herramientas que se puede contraer.
IComponent Es la interfaz de un componente del espacio de trabajo que se puede registrar con ComponentManager.
IConnectionChecker Clase para la lógica de verificación del tipo de conexión.
IConnectionPreviewer Muestra "vistas previas" visuales de dónde se conectará un bloque si se suelta.
IContextMenu
ICopyable
IDeletable Es la interfaz de un objeto que se puede borrar.
IDeleteArea Es la interfaz de un componente que puede borrar un bloque o una burbuja que se suelte sobre él.
IDraggable Representa un objeto que se puede arrastrar.
IDragger
IDragStrategy
IDragTarget Interfaz para un componente con comportamiento personalizado cuando se arrastra un bloque o una burbuja sobre él o se suelta sobre él.
IFlyout Interfaz para un menú desplegable.
IFlyoutInflater
IFocusableNode Representa cualquier elemento que puede tener el enfoque de entrada.
IFocusableTree

Representa un árbol de elementos enfocables con su propio contexto de enfoque activo o pasivo.

Ten en cuenta que FocusManager controla el enfoque y que las implementaciones de árbol pueden tener como máximo un IFocusableNode enfocado a la vez. Si el árbol en sí tiene el enfoque, el nodo enfocado del árbol se considera "activo" ("pasivo" si otro árbol tiene el enfoque).

El enfoque se comparte entre uno o más árboles, en los que cada árbol puede tener exactamente un nodo activo o pasivo (y solo puede existir un nodo activo en toda la página en un momento determinado). La idea del enfoque pasivo es proporcionar contexto a los usuarios sobre dónde se restablecerá el enfoque cuando vuelvan a navegar a un árbol enfocado anteriormente.

Ten en cuenta que, si se necesita el nodo enfocado actual del árbol (pasivo o activo), se puede usar FocusableTreeTraverser.findFocusedNode.

Ten en cuenta que, si se necesitan nodos específicos para este árbol, usa lookUpFocusableNode o FocusableTreeTraverser.findFocusableNodeFor.

IHasBubble
IIcon
IKeyboardAccessible Interfaz para un objeto que controla combinaciones de teclas.
ImageProperties Es la definición de una opción de menú desplegable de imagen legible por humanos.
IMetricsManager Es la interfaz de un administrador de métricas.
IMovable Es la interfaz para un objeto que se puede mover.
INavigationPolicy Es un conjunto de reglas que especifican dónde debe continuar la navegación con el teclado.
IPaster Objeto que puede pegar datos en un espacio de trabajo.
IPositionable Interfaz para un componente que se posiciona sobre el espacio de trabajo.
IRegistrable Interfaz para un componente de Blockly que se puede registrar.
IRenderedElement
ISelectable

Es la interfaz de un objeto que se puede seleccionar.

En general, se espera que las implementaciones usen sus implementaciones de onNodeFocus() y onNodeBlur() para llamar a setSelected() con ellas mismas y con null, respectivamente, para garantizar que las selecciones se actualicen correctamente y se active el evento de cambio de selección.

ISelectableToolboxItem Es la interfaz de un elemento de la caja de herramientas que se puede seleccionar.
ISerializable
IStyleable Interfaz para un objeto al que se le puede agregar un diseño.
IToolbox Interfaz para una caja de herramientas.
IToolboxItem Interfaz para un elemento de la caja de herramientas.
IVariableBackedParameterModel Es la interfaz para un modelo de parámetros que contiene un modelo de variables.
IVariableMap

Los mapas de variables son objetos de contenedor responsables de almacenar y administrar el conjunto de variables a las que se hace referencia en un espacio de trabajo.

Cualquiera de estos métodos puede definir invariantes sobre qué nombres y tipos son válidos, y arrojar una excepción si no se cumplen.

IVariableModel
IVariableState Representa el estado de una variable determinada.
ToastOptions Son las opciones de configuración o visualización de una notificación emergente.

Espacios de nombres

Espacio de nombres Descripción
Bloquear
blockAnimations
blockRendering
browserEvents
burbujas
bumpObjects
portapapeles
CollapsibleToolboxCategory
comments
common
ComponentManager
constants
ContextMenu
ContextMenuItems
ContextMenuRegistry
Css
dialog
arrastrar
Eventos
Extensiones
fieldRegistry
geras
íconos
ICopyable
inputs
capas
libraryBlocks
MetricsManager
Nombres
Opciones
Procedimientos
registry
RenderedConnection
renderManagement
serialización
ShortcutItems
ShortcutRegistry
Tema
ThemeManager
Temas
thrasos
Toast Opciones para determinar con qué frecuencia los lectores de pantalla deben leer los mensajes emergentes. Los valores corresponden a los de aria-live.
ToolboxCategory
ToolboxSeparator
Información sobre la herramienta
Touch
uiPosition
utils
Variables
VariablesDynamic
WidgetDiv
Xml
zelos

Variables

Variable Descripción
Bloqueos Es una asignación de nombres de tipos de bloques a objetos de prototipos de bloques.
COLLAPSE_CHARS
COLLAPSED_FIELD_NAME
COLLAPSED_INPUT_NAME
config Objeto que contiene todos los valores de Blockly que esperamos que los desarrolladores puedan cambiar.
defineBlocksWithJsonArray Define bloques a partir de un array de definiciones de bloques en formato JSON, como los que podrían generar las Herramientas para desarrolladores de Blockly.
DELETE_VARIABLE_ID
DropDownDiv
getMainWorkspace Devuelve el espacio de trabajo principal. Devuelve el espacio de trabajo principal que se usó por última vez (según el enfoque). Intenta no usar esta función, en especial si hay varias instancias de Blockly en una página.
getSelected Devuelve el objeto copiable seleccionado actualmente.
INPUT_VALUE
JavaScript
keyboardNavigationController Es la instancia singleton del controlador de navegación con el teclado.
Msg Es un diccionario de mensajes localizados.
NEXT_STATEMENT
OPPOSITE_TYPE
OUTPUT_VALUE
PREVIOUS_STATEMENT
PROCEDURE_CATEGORY_NAME Es la cadena para usar en el atributo "custom" de una categoría en el XML de la caja de herramientas. Esta cadena indica que la categoría se debe completar de forma dinámica con bloques de procedimientos.
RENAME_VARIABLE_ID
setParentContainer Establece el contenedor principal. Este es el elemento contenedor en el que se renderizan WidgetDiv, dropDownDiv y Tooltip la primera vez que se llama a Blockly.inject. Este método es una NOP si se llama después del primer Blockly.inject.
svgResize Ajusta el tamaño de la imagen SVG para que cubra completamente su contenedor. Llama a este método cuando la vista cambie de tamaño (p.ej., cuando se cambie el tamaño de la ventana o la orientación del dispositivo). Consulta workspace.resizeContents para cambiar el tamaño del espacio de trabajo cuando cambia el contenido (p.ej., cuando se agrega o quita un bloque). Registra el alto y el ancho de la imagen SVG.
TOOLBOX_AT_BOTTOM
TOOLBOX_AT_LEFT
TOOLBOX_AT_RIGHT
TOOLBOX_AT_TOP
VARIABLE_CATEGORY_NAME Es la cadena para usar en el atributo "custom" de una categoría en el XML de la caja de herramientas. Esta cadena indica que la categoría se debe completar de forma dinámica con bloques de variables.
VARIABLE_DYNAMIC_CATEGORY_NAME Es la cadena para usar en el atributo "custom" de una categoría en el XML de la caja de herramientas. Esta cadena indica que la categoría se debe completar de forma dinámica con bloques de variables.
VERSION Versión principal de Blockly. El script de compilación (npm run build) anula esta constante con el valor de la versión en package.json. Esto lo hace el compilador de Closure en la tarea gulp buildCompressed. Para las compilaciones locales, puedes pasar --define='Blockly.VERSION=X.Y.Z' al compilador para anular esta constante.

Alias de tipo

Alias de tipo Descripción
FieldCheckboxValidator Es una función que se llama para validar los cambios en el valor del campo antes de que se establezcan.
FieldDropdownConfig Son las opciones de configuración del campo desplegable.
FieldDropdownValidator Es una función que se llama para validar los cambios en el valor del campo antes de que se establezcan.
FieldNumberValidator Es una función que se llama para validar los cambios en el valor del campo antes de que se establezcan.
FieldTextInputConfig Son las opciones de configuración del campo de entrada de texto.
FieldTextInputValidator Es una función que se llama para validar los cambios en el valor del campo antes de que se establezcan.
FieldValidator Es una función que se llama para validar los cambios en el valor del campo antes de que se establezcan.
FieldVariableValidator Es una función que se llama para validar los cambios en el valor del campo antes de que se establezcan.
ICopyData
MenuGenerator Puede ser un array de opciones de menú o una función que genera un array de opciones de menú para FieldDropdown o sus elementos secundarios.
MenuGeneratorFunction Es una función que genera un array de opciones de menú para FieldDropdown o sus elementos secundarios.
MenuOption Es una opción individual en el menú desplegable. Puede ser el literal de cadena separator para un elemento separador del menú o un array para los elementos normales del menú de acciones. En el último caso, el primer elemento es el valor legible por humanos (texto, objeto ImageProperties o elemento HTML), y el segundo elemento es el valor independiente del idioma.
ReturnEphemeralFocus

Declaración de tipo para devolver el enfoque a FocusManager después de completar un flujo de IU efímero (como un diálogo).

Consulta FocusManager.takeEphemeralFocus para obtener más detalles.