UNPKG

@guestbell/react-page-plugins

Version:

Plugins we use in GuestBell for working with amazing react-page package

40 lines 1.52 kB
import * as React from 'react'; import SlateRenderer from '../../common/components/slateRenderer/SlateRenderer'; import rules from '../../common/components/slateRenderer/rules'; import migrations from '../../common/slateMigrations/migrations'; import PaddingComponent from '../../common/utils/PaddingComponent'; import SlateEditor from '../../common/components/slateEditor/SlateEditor'; var SlateHtmlRenderer = function SlateHtmlRenderer(props) { var onChange = props.onChange, _props$data = props.data, _props$data2 = _props$data === void 0 ? {} : _props$data, value = _props$data2.value, version = _props$data2.version, toolbarButtons = props.toolbarButtons, hoverButtons = props.hoverButtons; var onChangeInternal = React.useCallback(function (_ref) { var value = _ref.value; return onChange({ value: value }); }, [onChange]); return /*#__PURE__*/React.createElement(PaddingComponent, { state: props.data }, !props.isEditMode ? /*#__PURE__*/React.createElement(SlateRenderer, { value: value, nodeRule: rules.nodeRule, textRule: rules.textRule, version: version, migrations: migrations }) : /*#__PURE__*/React.createElement(SlateEditor, { value: props.data.value, onChange: onChangeInternal, version: version, migrations: migrations, toolbarButtons: toolbarButtons, hoverButtons: hoverButtons, hideToolbar: !props.focused })); }; export default SlateHtmlRenderer; //# sourceMappingURL=SlateHtmlRenderer.js.map