UNPKG

@wordpress/block-library

Version:
89 lines (85 loc) 2.7 kB
import { createElement } from "@wordpress/element"; /** * Internal dependencies */ import HeadingToolbar from './heading-toolbar'; /** * WordPress dependencies */ import { __ } from '@wordpress/i18n'; import { Fragment } from '@wordpress/element'; import { PanelBody } from '@wordpress/components'; import { createBlock } from '@wordpress/blocks'; import { RichText, BlockControls, InspectorControls, AlignmentToolbar } from '@wordpress/block-editor'; export default function HeadingEdit(_ref) { var attributes = _ref.attributes, setAttributes = _ref.setAttributes, mergeBlocks = _ref.mergeBlocks, insertBlocksAfter = _ref.insertBlocksAfter, onReplace = _ref.onReplace, className = _ref.className; var align = attributes.align, content = attributes.content, level = attributes.level, placeholder = attributes.placeholder; var tagName = 'h' + level; return createElement(Fragment, null, createElement(BlockControls, null, createElement(HeadingToolbar, { minLevel: 2, maxLevel: 5, selectedLevel: level, onChange: function onChange(newLevel) { return setAttributes({ level: newLevel }); } })), createElement(InspectorControls, null, createElement(PanelBody, { title: __('Heading Settings') }, createElement("p", null, __('Level')), createElement(HeadingToolbar, { minLevel: 1, maxLevel: 7, selectedLevel: level, onChange: function onChange(newLevel) { return setAttributes({ level: newLevel }); } }), createElement("p", null, __('Text Alignment')), createElement(AlignmentToolbar, { value: align, onChange: function onChange(nextAlign) { setAttributes({ align: nextAlign }); } }))), createElement(RichText, { identifier: "content", wrapperClassName: "wp-block-heading", tagName: tagName, value: content, onChange: function onChange(value) { return setAttributes({ content: value }); }, onMerge: mergeBlocks, unstableOnSplit: insertBlocksAfter ? function (before, after) { setAttributes({ content: before }); for (var _len = arguments.length, blocks = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) { blocks[_key - 2] = arguments[_key]; } insertBlocksAfter([].concat(blocks, [createBlock('core/paragraph', { content: after })])); } : undefined, onRemove: function onRemove() { return onReplace([]); }, style: { textAlign: align }, className: className, placeholder: placeholder || __('Write heading…') })); } //# sourceMappingURL=edit.js.map