UNPKG

@blockly/block-plus-minus

Version:

A group of blocks that replace the built-in mutator UI with a +/- based UI.

28 lines (25 loc) 836 B
/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 */ import * as Blockly from 'blockly/core'; /** * Returns the extra state of the given block (either as XML or a JSO, depending * on the block's definition). * @param {!Blockly.BlockSvg} block The block to get the extra state of. * @returns {string} A stringified version of the extra state of the given * block. */ export function getExtraBlockState(block) { // TODO: This is a dupe of the BlockChange.getExtraBlockState code, do we // want to make that public? if (block.saveExtraState) { const state = block.saveExtraState(); return state ? JSON.stringify(state) : ''; } else if (block.mutationToDom) { const state = block.mutationToDom(); return state ? Blockly.Xml.domToText(state) : ''; } return ''; }