mirror of
https://github.com/google/blockly.git
synced 2026-01-08 17:40:09 +01:00
* chore: add and configure prettier * chore: remove clang-format * chore: remove clang-format config * chore: lint additional ts files * chore: fix lint errors in blocks * chore: add prettier-ignore where needed * chore: ignore js blocks when formatting * chore: fix playground html syntax * chore: fix yaml spacing from merge * chore: convert text blocks to use arrow functions * chore: format everything with prettier * chore: fix lint unused imports in blocks
29 lines
874 B
TypeScript
29 lines
874 B
TypeScript
/**
|
|
* @license
|
|
* Copyright 2022 Google LLC
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
import type {Block} from '../block.js';
|
|
import {IProcedureModel} from './i_procedure_model.js';
|
|
import * as goog from '../../closure/goog/goog.js';
|
|
goog.declareModuleId('Blockly.procedures.IProcedureBlock');
|
|
|
|
/** The interface for a block which models a procedure. */
|
|
export interface IProcedureBlock {
|
|
getProcedureModel(): IProcedureModel;
|
|
doProcedureUpdate(): void;
|
|
isProcedureDef(): boolean;
|
|
}
|
|
|
|
/** A type guard which checks if the given block is a procedure block. */
|
|
export function isProcedureBlock(
|
|
block: Block | IProcedureBlock
|
|
): block is IProcedureBlock {
|
|
return (
|
|
(block as IProcedureBlock).getProcedureModel !== undefined &&
|
|
(block as IProcedureBlock).doProcedureUpdate !== undefined &&
|
|
(block as IProcedureBlock).isProcedureDef !== undefined
|
|
);
|
|
}
|