@gechiui/block-editor
Version:
47 lines (44 loc) • 1.39 kB
JavaScript
import { createElement } from "@gechiui/element";
/**
* External dependencies
*/
import classnames from 'classnames';
/**
* GeChiUI dependencies
*/
import { Button, VisuallyHidden } from '@gechiui/components';
import { __experimentalGetBlockLabel as getBlockLabel, getBlockType } from '@gechiui/blocks';
import { __ } from '@gechiui/i18n';
/**
* Internal dependencies
*/
import BlockIcon from '../block-icon';
export default function ListViewListItem(_ref) {
let {
block,
onClick,
isSelected,
wrapperComponent: WrapperComponent,
children
} = _ref;
const blockType = getBlockType(block.name);
const blockLabel = blockType ? getBlockLabel(blockType, block.attributes) : null;
return createElement("div", {
className: "block-editor-list-view__list-item"
}, createElement(WrapperComponent, {
className: classnames('block-editor-list-view__list-item-button', {
'is-selected': isSelected
}),
onClick: onClick
}, createElement(BlockIcon, {
icon: blockType === null || blockType === void 0 ? void 0 : blockType.icon,
showColors: true
}), children ? children : blockLabel, isSelected && createElement(VisuallyHidden, {
as: "span"
}, __('(选定的区块)'))));
}
ListViewListItem.defaultProps = {
onClick: () => {},
wrapperComponent: props => createElement(Button, props)
};
//# sourceMappingURL=list-item.js.map