@wordpress/block-library
Version:
Block library for the WordPress editor.
102 lines (90 loc) • 3.1 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = HeadingEdit;
var _element = require("@wordpress/element");
var _headingToolbar = _interopRequireDefault(require("./heading-toolbar"));
var _i18n = require("@wordpress/i18n");
var _components = require("@wordpress/components");
var _blocks = require("@wordpress/blocks");
var _blockEditor = require("@wordpress/block-editor");
/**
* Internal dependencies
*/
/**
* WordPress dependencies
*/
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 (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_blockEditor.BlockControls, null, (0, _element.createElement)(_headingToolbar.default, {
minLevel: 2,
maxLevel: 5,
selectedLevel: level,
onChange: function onChange(newLevel) {
return setAttributes({
level: newLevel
});
}
})), (0, _element.createElement)(_blockEditor.InspectorControls, null, (0, _element.createElement)(_components.PanelBody, {
title: (0, _i18n.__)('Heading Settings')
}, (0, _element.createElement)("p", null, (0, _i18n.__)('Level')), (0, _element.createElement)(_headingToolbar.default, {
minLevel: 1,
maxLevel: 7,
selectedLevel: level,
onChange: function onChange(newLevel) {
return setAttributes({
level: newLevel
});
}
}), (0, _element.createElement)("p", null, (0, _i18n.__)('Text Alignment')), (0, _element.createElement)(_blockEditor.AlignmentToolbar, {
value: align,
onChange: function onChange(nextAlign) {
setAttributes({
align: nextAlign
});
}
}))), (0, _element.createElement)(_blockEditor.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, [(0, _blocks.createBlock)('core/paragraph', {
content: after
})]));
} : undefined,
onRemove: function onRemove() {
return onReplace([]);
},
style: {
textAlign: align
},
className: className,
placeholder: placeholder || (0, _i18n.__)('Write heading…')
}));
}
//# sourceMappingURL=edit.js.map