1
0
mirror of https://github.com/ianstormtaylor/slate.git synced 2025-03-06 05:49:47 +01:00
slate/docs/general/plugins.md
Ian Storm Taylor 7a71de387c
Add controller (#2221)
* fold Stack into Editor

* switch Change objects to be tied to editors, not values

* introduce controller

* add the "commands" concept

* convert history into commands on `value.data`

* add the ability to not normalize on editor creation/setting

* convert schema to a mutable constructor

* add editor.command method

* convert plugin handlers to receive `next`

* switch commands to use the onCommand middleware

* add queries support, convert schema to queries

* split out browser plugin

* remove noop util

* fixes

* fixes

* start fixing tests, refactor hyperscript to be more literal

* fix slate-html-serializer tests

* fix schema tests with hyperscript

* fix text model tests with hyperscript

* fix more tests

* get all tests passing

* fix lint

* undo decorations example update

* update examples

* small changes to the api to make it nicer

* update docs

* update commands/queries plugin logic

* change normalizeNode and validateNode to be middleware

* fix decoration removal

* rename commands tests

* add useful errors to existing APIs

* update changelogs

* cleanup

* fixes

* update docs

* add editor docs
2018-10-09 14:03:27 -07:00

6.5 KiB

Plugins

Here's a list of Slate plugins, organized by category, so that they're easier to find than searching NPM or Yarn.

Behavior

Plugins that add specific behaviors to your editor.

Plugin Description Downloads
slate-auto-replace Automatically transform certain input as a user types.
slate-collapse-on-escape Collapse the selection when users hit esc.
slate-drop-or-paste-images Allows users to insert images by drag-dropping or copy-pasting.
slate-mark-hotkeys Adds common hotkey formatting utils to an editor.
slate-no-empty Prevents documents from being empty.
slate-paste-linkify Automatically linkify URLs when they are pasted.
slate-soft-break Adds soft breaks when users hit enter.
slate-sticky-inlines Changes the inline node behavior to allow editing at the edges.
slate-suggestions Displays inline auto-completed suggestions.
slate-trailing-block Ensure that documents end in a specific kind of block.
slate-instant-replace Automatically transform last word typed.

Find more plugins on npm or yarn.

Components

Components for building Slate editors.

Plugin Description Downloads
slate-editor-icons A set of icons for using in toolbars, etc.

Serializers

Serializers for handling Slate data.

Plugin Description Downloads
slate-base64-serializer A base64 string serializer for Slate documents.
slate-html-serializer An HTML serializer for Slate documents.
slate-plain-serializer A plain text serializer for Slate documents.

Utils

Useful utilities when working with Slate documents and components.

Plugin Description Downloads
slate-hyperprint Prints Slate documents in their slate-hyperscript format.
slate-hyperscript Allows you to express Slate documents in JSX.
slate-prop-types A set of prop types to use in your Slate components.