
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
draft-js-editor
Advanced tools
A rich text editor built using facebook's draft.js.
Takes inspiration from the text editors on medium and facebook notes.
npm install draft-js-editor --save
Import the Editor class into your file. The example below uses ES6 but it's not mandatory.
//...
import Editor from 'draft-js-editor'
class MyClass extends React.Component {
state = {};
render() {
return <div>
A sample text editor
<Editor
onChange={(editorState) => this.setState({ editorState })}
editorState={this.state.editorState}
/>
</div>
}
}
The Editor component accepts all the draft-js Editor props with the following additional ones.
iconColor The color of the iconsiconSelectedColor The color of the icon when selectedpopoverStyle Override the inline styles for the popover menu controlsinlineButtons This should be an array of React elements that will be rendered. Use this to customise the popover inline buttons. There's a 'Custom Inline Buttons' example under examples. Each element that gets rendered gets passed the following props: updateEditorState (call this after doing any editor state manipulations), editorState (the editor state), iconColor, iconSelectedColor.blockButtons Customise the block buttons. See the custom block button exampleblockTypes An object mapping custom types to components. Simpler than using draft-js's native blockRenderFn property.showInlineButtons Set to false to prevent showing the inline buttons.SideControl Override the side control to completely customise the interface. See the demo for an example.If you need to persist the editor state somewhere there are two useful methods that are part of the draft-js library that will let you convert to and from a string, convertFromRaw and convertToRaw
These methods require a ContentState which you can obtain by calling getCurrentContent on the editorState object returned from the onChange event.
You can use the static createWithContent method to obtain an editor state that can be passed in as a parameter to the Editor.
import { EditorState, convertFromRaw } from 'draft-js'
const contentState = convertFromRaw(rawContent)
const editorState = EditorState.createWithContent(contentState)
FAQs
A rich text editor built using draft js
We found that draft-js-editor demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.