
Research
/Security News
Shai Hulud Strikes Again (v2)
Another wave of Shai-Hulud campaign has hit npm with more than 500 packages and 700+ versions affected.
@accordproject/markdown-editor
Advanced tools
[](https://www.npmjs.com/package/@accordproject/markdown-editor) [](https://badge.fury.io/js/%40accord
This repository contains a WYSIWYG editor for markdown that conforms to the CommonMark specification.
The editor is based on React, Slate, and the Accord Project markdown-transform project.
npm install @accordproject/markdown-editor @accordproject/markdown-slate slate slate-history slate-react semantic-ui-react
import React, { useState, useCallback } from 'react';
import ReactDOM from 'react-dom';
import { SlateTransformer } from '@accordproject/markdown-slate';
import { MarkdownEditor } from '@accordproject/markdown-editor';
const slateTransformer = new SlateTransformer();
const defaultMarkdown = `This is text. You can edit it.`;
const App = () => {
const [slateValue, setSlateValue] = useState(() => {
const slate = slateTransformer.fromMarkdown(defaultMarkdown);
return slate.document.children;
});
const onSlateValueChange = useCallback((slateChildren) => {
localStorage.setItem('slate-editor-value', JSON.stringify(slateChildren));
const slateValue = { document: { children: slateChildren } };
setSlateValue(slateValue.document.children);
}, []);
return (<MarkdownEditor readOnly={false} value={slateValue} onChange={onSlateValueChange} />);
}
ReactDOM.render(<App />, document.getElementById('root'));
While Storybook is running, if you make a change in a package that you want to see reflected in the demo, in a new terminal:
cd packages/markdown-editor
npm run build
Storybook will reload with the applied changes.
value: An array which is the initial contents of the editor (markdown text)onChange: A callback function called when contents of the editor change, receives the markdown textreadOnly: A boolean to lock all text and remove the formatting toolbarplaceholder: Placeholder string for text when the editor is blankactiveButton: Optional object to change formatting button active state color
{ background: '#FFF', symbol: '#000' }onChange: A callback function called when contents of the editor change, receives the markdown textaugmentEditor: A higher order function to augment the methods on the Slate editorcustomElements: A function for extending elements rendered by editorisEditable: A function for determining if the current edit should be allowedcanBeFormatted: A function that determines if current formatting change should be allowedcanCopy: A function that determines if current selection copy should be allowedcanKeyDown: A function that determines if current key event should be allowed
Accord Project is an open source, non-profit, initiative working to transform contract management and contract automation by digitizing contracts. Accord Project operates under the umbrella of the Linux Foundation. The technical charter for the Accord Project can be found here.
The Accord Project technology is being developed as open source. All the software packages are being actively maintained on GitHub and we encourage organizations and individuals to contribute requirements, documentation, issues, new templates, and code.
Find out what’s coming on our blog.
Join the Accord Project Technology Working Group Slack channel to get involved!
For code contributions, read our CONTRIBUTING guide and information for DEVELOPERS.
Using Accord Project? Add a README badge to let everyone know:
[](https://www.accordproject.org/)
Accord Project source code files are made available under the Apache License, Version 2.0. Accord Project documentation files are made available under the Creative Commons Attribution 4.0 International License (CC-BY-4.0).
Copyright 2018-2019 Clause, Inc. All trademarks are the property of their respective owners. See LF Projects Trademark Policy.
FAQs
[](https://www.npmjs.com/package/@accordproject/markdown-editor) [](https://badge.fury.io/js/%40accord
The npm package @accordproject/markdown-editor receives a total of 83 weekly downloads. As such, @accordproject/markdown-editor popularity was classified as not popular.
We found that @accordproject/markdown-editor demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 6 open source maintainers 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.

Research
/Security News
Another wave of Shai-Hulud campaign has hit npm with more than 500 packages and 700+ versions affected.

Product
Add real-time Socket webhook events to your workflows to automatically receive software supply chain alert changes in real time.

Security News
ENISA has become a CVE Program Root, giving the EU a central authority for coordinating vulnerability reporting, disclosure, and cross-border response.