UNPKG

@wordpress/block-library

Version:
54 lines (49 loc) 1.54 kB
import { createElement } from "@wordpress/element"; /** * WordPress dependencies */ import { __ } from '@wordpress/i18n'; import { useContext, useState } from '@wordpress/element'; import { BlockControls, PlainText, useBlockProps } from '@wordpress/block-editor'; import { ToolbarButton, Disabled, ToolbarGroup } from '@wordpress/components'; /** * Internal dependencies */ import Preview from './preview'; export default function HTMLEdit(_ref) { let { attributes, setAttributes, isSelected } = _ref; const [isPreview, setIsPreview] = useState(); const isDisabled = useContext(Disabled.Context); function switchToPreview() { setIsPreview(true); } function switchToHTML() { setIsPreview(false); } return createElement("div", useBlockProps({ className: 'block-library-html__edit' }), createElement(BlockControls, null, createElement(ToolbarGroup, null, createElement(ToolbarButton, { className: "components-tab-button", isPressed: !isPreview, onClick: switchToHTML }, "HTML"), createElement(ToolbarButton, { className: "components-tab-button", isPressed: isPreview, onClick: switchToPreview }, __('Preview')))), isPreview || isDisabled ? createElement(Preview, { content: attributes.content, isSelected: isSelected }) : createElement(PlainText, { value: attributes.content, onChange: content => setAttributes({ content }), placeholder: __('Write HTML…'), "aria-label": __('HTML') })); } //# sourceMappingURL=edit.js.map