UNPKG

@wordpress/block-library

Version:
112 lines (107 loc) 2.41 kB
/** * WordPress dependencies */ import { createBlock, getBlockAttributes } from '@wordpress/blocks'; /** * Internal dependencies */ const { name: name } = { $schema: "https://schemas.wp.org/trunk/block.json", apiVersion: 2, name: "core/paragraph", title: "Paragraph", category: "text", description: "Start with the basic building block of all narrative.", keywords: ["text"], textdomain: "default", attributes: { align: { type: "string" }, content: { type: "string", source: "html", selector: "p", "default": "", __experimentalRole: "content" }, dropCap: { type: "boolean", "default": false }, placeholder: { type: "string" }, direction: { type: "string", "enum": ["ltr", "rtl"] } }, supports: { anchor: true, className: false, color: { gradients: true, link: true, __experimentalDefaultControls: { background: true, text: true } }, spacing: { margin: true, padding: true }, typography: { fontSize: true, lineHeight: true, __experimentalFontFamily: true, __experimentalTextDecoration: true, __experimentalFontStyle: true, __experimentalFontWeight: true, __experimentalLetterSpacing: true, __experimentalTextTransform: true, __experimentalDefaultControls: { fontSize: true } }, __experimentalSelector: "p", __unstablePasteTextInline: true }, editorStyle: "wp-block-paragraph-editor", style: "wp-block-paragraph" }; const transforms = { from: [{ type: 'raw', // Paragraph is a fallback and should be matched last. priority: 20, selector: 'p', schema: _ref => { let { phrasingContentSchema, isPaste } = _ref; return { p: { children: phrasingContentSchema, attributes: isPaste ? [] : ['style', 'id'] } }; }, transform(node) { const attributes = getBlockAttributes(name, node.outerHTML); const { textAlign } = node.style || {}; if (textAlign === 'left' || textAlign === 'center' || textAlign === 'right') { attributes.align = textAlign; } return createBlock(name, attributes); } }] }; export default transforms; //# sourceMappingURL=transforms.js.map