UNPKG

@atlaskit/editor-plugin-block-menu

Version:

BlockMenu plugin for @atlaskit/editor-core

31 lines 921 B
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray"; /** * Unwraps a layoutSection node, extracting content from all columns. * Works with any number of columns (2, 3, etc.). * * Example: * layoutSection( * layoutColumn(p('a'), p('b')), * layoutColumn(p('c')), * layoutColumn(p('d')) * ) * → [p('a'), p('b'), p('c'), p('d')] */ export var unwrapLayoutStep = function unwrapLayoutStep(nodes) { var outputNodes = []; nodes.forEach(function (node) { var isLayoutSection = node.type.name === 'layoutSection'; if (isLayoutSection) { node.children.forEach(function (column) { var isLayoutColumn = column.type.name === 'layoutColumn'; if (isLayoutColumn) { outputNodes.push.apply(outputNodes, _toConsumableArray(column.children)); } }); } }); if (outputNodes.length === 0) { return nodes; } return outputNodes; };