UNPKG

ldx-widgets

Version:

widgets

41 lines (33 loc) 1.29 kB
(function() { var RTEButton, RTEButtonRow, React, createClass, div; React = require('react'); createClass = require('create-react-class'); RTEButton = React.createFactory(require('./rte_button')); div = require('react-dom-factories').div; RTEButtonRow = createClass({ displayName: 'RTEButtonRow', render: function() { var b, blockType, buttonStyles, currentStyle, editorState, i, len, onToggle, ref, rteButtons, selection; ref = this.props, buttonStyles = ref.buttonStyles, editorState = ref.editorState, onToggle = ref.onToggle; currentStyle = editorState.getCurrentInlineStyle(); selection = editorState.getSelection(); blockType = editorState.getCurrentContent().getBlockForKey(selection.getStartKey()).getType(); rteButtons = []; for (i = 0, len = buttonStyles.length; i < len; i++) { b = buttonStyles[i]; rteButtons.push(RTEButton({ key: b.label, active: currentStyle.has(b.style) || b.style === blockType, label: b.label, onToggle: onToggle, style: b.style })); } return div({ key: 'button-row', className: 'RichEditor-controls' }, rteButtons); } }); module.exports = RTEButtonRow; }).call(this);