index.js
33 lines
| 1 | /** |
| 2 | * No Wrap |
| 3 | */ |
| 4 | import { ReactComponent as Icon } from './icon.svg'; |
| 5 | |
| 6 | import { __ } from '@wordpress/i18n'; |
| 7 | import { registerFormatType, toggleFormat } from '@wordpress/rich-text'; |
| 8 | import { RichTextToolbarButton } from '@wordpress/block-editor'; |
| 9 | |
| 10 | registerFormatType('vk-blocks/nowrap', { |
| 11 | title: __('No wrap', 'vk-blocks'), |
| 12 | tagName: 'span', |
| 13 | className: 'text-nowrap', |
| 14 | edit(props) { |
| 15 | const { value, isActive } = props; |
| 16 | |
| 17 | return ( |
| 18 | <> |
| 19 | <RichTextToolbarButton |
| 20 | icon={Icon} |
| 21 | title={__('No wrap', 'vk-blocks')} |
| 22 | onClick={() => { |
| 23 | props.onChange( |
| 24 | toggleFormat(value, { type: 'vk-blocks/nowrap' }) |
| 25 | ); |
| 26 | }} |
| 27 | isActive={isActive} |
| 28 | /> |
| 29 | </> |
| 30 | ); |
| 31 | }, |
| 32 | }); |
| 33 |