@wordpress/block-library
Version:
Block library for the WordPress editor.
49 lines (47 loc) • 1.46 kB
JavaScript
import { createElement, Fragment } from "@wordpress/element";
/**
* External dependencies
*/
import classnames from 'classnames';
/**
* WordPress dependencies
*/
import { AlignmentControl, BlockControls, InspectorControls, useBlockProps } from '@wordpress/block-editor';
import { PanelBody, ToggleControl } from '@wordpress/components';
import { __ } from '@wordpress/i18n';
export default function Edit(_ref) {
let {
attributes: {
linkTarget,
textAlign
},
setAttributes
} = _ref;
const blockProps = useBlockProps({
className: classnames({
[`has-text-align-${textAlign}`]: textAlign
})
});
const blockControls = createElement(BlockControls, {
group: "block"
}, createElement(AlignmentControl, {
value: textAlign,
onChange: newAlign => setAttributes({
textAlign: newAlign
})
}));
const inspectorControls = createElement(InspectorControls, null, createElement(PanelBody, {
title: __('Link settings')
}, createElement(ToggleControl, {
label: __('Open in new tab'),
onChange: value => setAttributes({
linkTarget: value ? '_blank' : '_self'
}),
checked: linkTarget === '_blank'
})));
return createElement(Fragment, null, blockControls, inspectorControls, createElement("div", blockProps, createElement("a", {
href: "#edit-comment-pseudo-link",
onClick: event => event.preventDefault()
}, __('Edit'))));
}
//# sourceMappingURL=edit.js.map