470 Commits

Author SHA1 Message Date
Shawn Erquhart
e937e8e626 handle markdown styled inline nodes
Slate does not allow inline nodes like links and
images to have marks (like strong, emphasis). This
commit changes the parsers to process these nodes
as if they were text nodes so that marks are
handled.
2017-09-26 14:50:56 -04:00
Shawn Erquhart
2d3bf9b3fc fix verbose markdown entity output
Because we convert markdown to an AST, the literal input
cannot be reconstructed, so we have to default to improving
received markdown rather than degrading it. This fix
implements smart MDAST parsing to ensure that adjacent
nodes with the same styling (strong, emphasis, etc) are
grouped together rather than separated (which results in
verbose output).
2017-09-26 14:50:56 -04:00
Shawn Erquhart
91590a2f25 remove pedantic markdown parsing 2017-09-26 14:50:56 -04:00
Shawn Erquhart
e54dee4220 allow links to be wrapped in marks 2017-09-26 14:50:56 -04:00
Shawn Erquhart
cd111f3a3d distinguish between newline and soft break in editor 2017-09-26 14:50:56 -04:00
Darrel O'Pry
1f06885a69 Add code coverage output generation to npm test (#610) 2017-09-20 12:23:40 -07:00
Shawn Erquhart
d349c3d3b1 Merge pull request #590 from netlify/update-depreciated-deps
Upgrade Depreciated React Dependencies
2017-09-15 16:18:24 -04:00
Caleb
6e356e81da Update tests for EntryEditorToolbar 2017-09-11 14:25:23 -06:00
Caleb
87f942e73b Rename hasChanged to enableSave for the editor Save button. 2017-09-11 14:08:07 -06:00
Caleb
654f844b86 Upgrade to seperate React prop-types library.
`propTypes` was seperated/depreciated from React as of 15.5.0:
https://facebook.github.io/react/blog/2017/04/07/react-v15.5.0.html#migrating-from-react.proptypes
2017-09-09 20:16:19 -06:00
Caleb
75aa52a650 Disable Save button when entry has not been changed. 2017-09-02 19:24:37 -06:00
Shawn Erquhart
75023d9f74 close rte heading block on enter keydown 2017-09-01 15:16:51 -04:00
Shawn Erquhart
c25a7c4abb debounce markdown editor change handler 2017-09-01 15:16:51 -04:00
Shawn Erquhart
4821959951 remove markdown widget serializers 2017-09-01 15:16:51 -04:00
Shawn Erquhart
6ed11a7da7 update markdown parsing tests 2017-08-31 12:06:54 -04:00
Shawn Erquhart
e408dcc27e add markdown editor soft break support 2017-08-31 11:03:08 -04:00
Shawn Erquhart
e43edf67b9 Merge pull request #567 from netlify/escape-markdown
escape markdown entities entered as literal text
2017-08-30 10:44:43 -04:00
bruce-one
5dfc0f0f24 Number editor return number. (#541)
Adding support for `min`, `max`, `step` on the input element and adding
`valueType` for specifying the return type, so the `NumberControl` can
return actual numbers.
2017-08-29 19:30:05 -07:00
Shawn Erquhart
8e805cabd8 escape markdown entities entered as literal text 2017-08-29 17:54:52 -04:00
Shawn Erquhart
0ea62e0f9d fix rte pasted links with leading/trailing spaces 2017-08-25 16:45:01 -04:00
Shawn Erquhart
317a876891 fix html paste for visual editor 2017-08-25 16:36:24 -04:00
Shawn Erquhart
9c0b7262ef fix small code issues in RTE implementation 2017-08-25 16:36:22 -04:00
Shawn Erquhart
3d83325afc add node type check to avoid errors in rte 2017-08-25 16:35:25 -04:00
Shawn Erquhart
2bb67321f9 fix visual editor heading line height 2017-08-25 16:35:24 -04:00
Shawn Erquhart
18b98fc1c9 remove superfluous deps, update yarn.lock 2017-08-25 16:35:23 -04:00
Shawn Erquhart
d84b156b0a update existing serialization tests 2017-08-25 16:31:09 -04:00
Shawn Erquhart
cf2b7be25f refactor and document rte serializers 2017-08-25 16:31:09 -04:00
Shawn Erquhart
406ae57d3e add blockquote rte button 2017-08-25 16:31:09 -04:00
Shawn Erquhart
9dcda7b0b9 organize serializers 2017-08-25 16:31:09 -04:00
Shawn Erquhart
dd51f6365c improve visual editor content styling 2017-08-25 16:31:09 -04:00
Shawn Erquhart
1d654662d2 improve shortcode handling in visual editor 2017-08-25 16:31:09 -04:00
Shawn Erquhart
ca60a6b8c9 update Slate shortcode handling to include paragraph 2017-08-25 16:31:09 -04:00
Shawn Erquhart
9174e56414 refactor remarkToRehypeShortcodes 2017-08-25 16:31:09 -04:00
Shawn Erquhart
be7385de29 refactor remark-shortcodes plugin 2017-08-25 16:31:07 -04:00
Shawn Erquhart
6377d8c73e initial refactor, some bugfixes 2017-08-25 16:30:39 -04:00
Shawn Erquhart
1f961d36cf display images inserted through rte 2017-08-25 16:30:39 -04:00
Shawn Erquhart
336cab2592 fix html whitespace truncation 2017-08-25 16:30:39 -04:00
Shawn Erquhart
750fbf5e3d re-implement visual editor link button 2017-08-25 16:30:39 -04:00
Shawn Erquhart
28ee67c35e eliminate unnecessary editor renders 2017-08-25 16:30:39 -04:00
Shawn Erquhart
de1e36108d allow yaml frontmatter parsing 2017-08-25 16:30:39 -04:00
Shawn Erquhart
7a744bef84 improve list handling 2017-08-25 16:30:39 -04:00
Shawn Erquhart
ae7bd79c7a re-implement visual editor html paste 2017-08-25 16:30:39 -04:00
Shawn Erquhart
82d9bdd7ae port history shortcuts from Slate, force focus 2017-08-25 16:30:39 -04:00
Shawn Erquhart
4ac63954ca fix focus update on toolbar block click 2017-08-25 16:30:39 -04:00
Shawn Erquhart
6443f5d808 allow enter key to make space around void nodes 2017-08-25 16:30:39 -04:00
Shawn Erquhart
fbecc887b8 require images to be parsed as shortcodes 2017-08-25 16:30:39 -04:00
Shawn Erquhart
dbf14a8f7b re-enable shortcode insertion via toolbar 2017-08-25 16:30:38 -04:00
Shawn Erquhart
b7379b019e re-implement shortcode parsing to/from mdast 2017-08-25 16:30:38 -04:00
Shawn Erquhart
c95f06138a fix soft break side effects 2017-08-25 16:30:38 -04:00
Shawn Erquhart
842c2935e9 use mdast instead of html for rte local model
markdown is currently serialized to html at load time,
which makes it near impossible to support arbitrary html
in the markdown. This also means we're stringifying to
html on every change.

This commit moves to Remark's MDAST for local serialization,
including parsing from MDAST to Slates's Raw AST. It brings
much more control over the editing experience and full
support for processing unescaped HTML.
2017-08-25 16:30:37 -04:00
Shawn Erquhart
93687d9157 add shortcodes through rte toolbar 2017-08-25 16:28:18 -04:00
Shawn Erquhart
469a50afa4 add idempotent markdown/html shortcode handling 2017-08-25 16:28:18 -04:00
Shawn Erquhart
63e93d79ca improve rte list handling 2017-08-25 16:28:18 -04:00
Shawn Erquhart
31c997897f fix inline code serializing to blocks 2017-08-25 16:28:18 -04:00
Shawn Erquhart
0e50210dcf close blocks on backspace 2017-08-25 16:28:18 -04:00
Shawn Erquhart
09751efe41 allow raw html in markdown 2017-08-25 16:28:18 -04:00
Shawn Erquhart
f22d09b781 add smart soft breaks for visual editor 2017-08-25 16:28:18 -04:00
Shawn Erquhart
fe3d04b722 streamline raw editor pasting 2017-08-25 16:28:18 -04:00
Shawn Erquhart
24caeadfa4 add list and code toolbar buttons 2017-08-25 16:28:17 -04:00
Shawn Erquhart
ae56ef6dda convert raw editor to Slate 2017-08-25 16:28:17 -04:00
Shawn Erquhart
719c105844 remove logic from raw markdown editor 2017-08-25 16:28:17 -04:00
Shawn Erquhart
b08a9fcaa8 improve Dropbox Paper paste handling 2017-08-25 16:28:17 -04:00
Shawn Erquhart
c49d84b2eb add empty node and Paper emoji unified plugins 2017-08-25 16:28:17 -04:00
Shawn Erquhart
a8fe57e5d6 pre-process visual editor pastes w/ unified 2017-08-25 16:28:17 -04:00
Shawn Erquhart
5a664f8be1 remove prosemirror, reuse unified pipelines 2017-08-25 16:28:17 -04:00
Shawn Erquhart
cba631ba1a improve visual/raw editor consistency 2017-08-25 16:25:30 -04:00
Shawn Erquhart
5cbc76da68 improve rte pasting 2017-08-25 16:24:13 -04:00
Shawn Erquhart
54e77bd80c fix raw editor formatting controls 2017-08-25 16:24:13 -04:00
Shawn Erquhart
faec38ac19 fix raw editor paste parsing 2017-08-25 16:24:13 -04:00
Shawn Erquhart
e0ca24c6d3 add unified config module 2017-08-25 16:24:13 -04:00
Shawn Erquhart
09e631ded7 allow nested widget previews to update 2017-08-25 16:24:13 -04:00
Shawn Erquhart
84ed450ac6 add visual editor serializer source doc 2017-08-25 16:24:13 -04:00
Shawn Erquhart
ffbd8d22cc expose widgetValueSerializer registry 2017-08-25 16:24:13 -04:00
Shawn Erquhart
1c0bb6a877 implement widget data serialization for rte perf 2017-08-25 16:24:13 -04:00
Shawn Erquhart
bc721337de set rte focus after toolbar click 2017-08-25 16:24:13 -04:00
Shawn Erquhart
22a8da11a4 fix rte link serialization 2017-08-25 16:24:13 -04:00
Shawn Erquhart
e682189410 only render editor page controls/previews on change 2017-08-25 16:24:13 -04:00
Shawn Erquhart
e01c077efb fix empty initial state for rte 2017-08-25 16:24:12 -04:00
Shawn Erquhart
9c869be8fa migrate visual editor from prosemirror to slate 2017-08-25 16:24:12 -04:00
Shawn Erquhart
49b3a62823 attempt prosemirror update, troubleshooting 2017-08-25 16:24:12 -04:00
Shawn Erquhart
e7ac3a7671 switch remark options to use gfm, fences 2017-08-25 16:24:12 -04:00
Shawn Erquhart
b293b235bb fix link creation in visual editor 2017-08-25 16:24:12 -04:00
Shawn Erquhart
bd767308cd fix visual editor tests, parse/serialize consistency 2017-08-25 16:24:12 -04:00
Shawn Erquhart
b22323201d handle raw editor html pastes with unified 2017-08-25 16:24:12 -04:00
Shawn Erquhart
b5e0be43f2 split off markdownToProseMirror plugin 2017-08-25 16:24:12 -04:00
Shawn Erquhart
361c3d5284 improve prosemirror parser, fix new doc creation 2017-08-25 16:24:12 -04:00
Shawn Erquhart
8bb18452e8 implement initial unified/remark preview update 2017-08-25 16:24:12 -04:00
Shawn Erquhart
5048c7ca1d convert editor component registry to Map 2017-08-25 16:24:12 -04:00
Shawn Erquhart
adcb215fbd replace remark with unified for docs and extensibility 2017-08-25 16:24:12 -04:00
Shawn Erquhart
514fbb30b8 render plugins on visual editor load 2017-08-25 16:24:12 -04:00
Shawn Erquhart
e401f7ef9b remove unrelated code style improvements 2017-08-25 16:24:12 -04:00
Shawn Erquhart
f93aa34105 fix rebase incongruencies 2017-08-25 16:24:12 -04:00
Kyle Mathews
8763666570 Update parser to support remaining node types + add inline styled text support 2017-08-25 16:24:12 -04:00
Kyle Mathews
0eb109cb73 Convert markdown-prosemirror parser/compiler to Remark 2017-08-25 16:24:12 -04:00
Kyle Mathews
24c0a1bdb4 Replace markup-it with Remark for rendering markdown in the editor preview 2017-08-25 16:24:12 -04:00
Damien Van Der Windt
b294110db7 Stopped the pluralization of collection name (#503) 2017-07-27 11:13:34 -07:00
Shawn Erquhart
56e63b6573 Merge pull request #493 from Dammmien/fix_list_item_reordering
Fix list item reordering #437
2017-07-25 08:45:23 -04:00
Damien Duhamel
1b3aec4ebf Add some comments 2017-07-25 10:28:35 +02:00
Damien Duhamel
4d2ed6b1ea Check editor value after update 2017-07-23 19:38:05 +02:00
Benaiah Mischenko
dac57c60a0 Entry deletion for the simple workflow (#485) 2017-07-21 23:40:33 -07:00