@wordpress/block-editor
Version:
60 lines (48 loc) • 1.65 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = BlockNavigationListItem;
var _element = require("@wordpress/element");
var _classnames = _interopRequireDefault(require("classnames"));
var _components = require("@wordpress/components");
var _blocks = require("@wordpress/blocks");
var _i18n = require("@wordpress/i18n");
var _blockIcon = _interopRequireDefault(require("../block-icon"));
/**
* External dependencies
*/
/**
* WordPress dependencies
*/
/**
* Internal dependencies
*/
function BlockNavigationListItem({
block,
onClick,
isSelected,
wrapperComponent: WrapperComponent,
children
}) {
const blockType = (0, _blocks.getBlockType)(block.name);
return (0, _element.createElement)("div", {
className: "block-editor-block-navigation__list-item"
}, (0, _element.createElement)(WrapperComponent, {
className: (0, _classnames.default)('block-editor-block-navigation__list-item-button', {
'is-selected': isSelected
}),
onClick: onClick
}, (0, _element.createElement)(_blockIcon.default, {
icon: blockType.icon,
showColors: true
}), children ? children : (0, _blocks.__experimentalGetBlockLabel)(blockType, block.attributes), isSelected && (0, _element.createElement)(_components.VisuallyHidden, {
as: "span"
}, (0, _i18n.__)('(selected block)'))));
}
BlockNavigationListItem.defaultProps = {
onClick: () => {},
wrapperComponent: props => (0, _element.createElement)(_components.Button, props)
};
//# sourceMappingURL=list-item.js.map