Roadmap v8 #1156
Closed
zbeyens
started this conversation in
Feature Requests
Roadmap v8
#1156
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
While we have a general roadmap, this is a discussion for what can come until next major release.
Core
At the moment we have 3 props to use for each new plugin:
plugins
options
components
which is nicely decoupled but ideally we want to use a single prop to use (
plugins
) for less complexity.This was not possible because a plugin was not identifiable by a plugin key (
pluginKeys
can be an array of string).It can be solved by changing
pluginKeys: string | string[]
tokey: string
and each slate node will have its own plugin (instead of a single one like headings and lists).Plate
options
andcomponents
props will be removed in favor ofcreatePlatePlugins
createPlatePlugins
will be needed to register both options and componentsgetRenderElement
/getRenderLeaf
as defaults ifrenderElement
/renderLeaf
are not definedPlatePlugin
pluginKeys
will be renamed tokey: string
and notstring | string[]
anymoreoptions
prop) and options passed to plugin factories(
createXPlugin(options)
), both will be stored ineditor.plugins[key]
so it can be used by any transform/query, as it's already done for the common, e.g.type
optionrenderElement
andrenderLeaf
will be optionalvoidTypes
andinlineTypes
createPlatePlugin: (overrides: PlatePlugin<T>, defaults: PlatePlugin<T>) => PlatePlugin<T>
overrides
will overridedefaults
editor.plugins[plugin.key]
by PlateMisc
Beta Was this translation helpful? Give feedback.
All reactions