@udecode/plate-core
Advanced tools
Comparing version 4.3.7 to 5.3.0
# @udecode/plate-core | ||
## 5.3.0 | ||
### Minor Changes | ||
- [#1126](https://github.com/udecode/plate/pull/1126) [`7ee21356`](https://github.com/udecode/plate/commit/7ee21356f0a4e67e367232b3dbc9957254a0c11e) Thanks [@zbeyens](https://github.com/zbeyens)! - feat: | ||
- `PlatePlugin` | ||
- new field: `overrideProps` | ||
- Overrides rendered node props (shallow merge). | ||
- This enables controlling the props of any node component (use cases: indent, align,...). | ||
- used by `pipeRenderElement` and `pipeRenderLeaf` | ||
- `getRenderElement` and `getRenderLeaf`: | ||
- pass the rest of the props to the component | ||
- `getRenderNodeProps`: | ||
- computes slate class and `nodeProps` | ||
- new dependency: `clsx` | ||
- new types: | ||
- `OverrideProps` | ||
- `PlatePluginEditor` | ||
- `PlatePluginSerialize` | ||
- `PlatePluginNode` | ||
- `PlatePluginElement` | ||
- `PlatePluginLeaf` | ||
## 4.3.7 | ||
@@ -4,0 +27,0 @@ |
@@ -8,2 +8,3 @@ /** | ||
export * from './OnChange'; | ||
export * from './OverrideProps'; | ||
export * from './PlatePlugin'; | ||
@@ -10,0 +11,0 @@ export * from './RenderElement'; |
@@ -6,2 +6,3 @@ import { SPEditor } from '../SPEditor'; | ||
import { OnChange } from './OnChange'; | ||
import { OverrideProps } from './OverrideProps'; | ||
import { RenderElement } from './RenderElement'; | ||
@@ -21,3 +22,5 @@ import { RenderLeaf } from './RenderLeaf'; | ||
*/ | ||
export interface PlatePlugin<T extends SPEditor = SPEditor> extends Partial<DOMHandlers<T>> { | ||
export interface PlatePlugin<T extends SPEditor = SPEditor> extends PlatePluginSerialize<T>, PlatePluginElement<T>, PlatePluginLeaf<T> { | ||
} | ||
export interface PlatePluginEditor<T extends SPEditor = SPEditor> extends Partial<DOMHandlers<T>> { | ||
/** | ||
@@ -28,10 +31,6 @@ * @see {@link Decorate} | ||
/** | ||
* @see {@link DeserializeHtml} | ||
* Plugin keys to support configuration. | ||
*/ | ||
deserialize?: Deserialize<T>; | ||
pluginKeys?: string | string[]; | ||
/** | ||
* Inline element types. | ||
*/ | ||
inlineTypes?: (editor: T) => string[]; | ||
/** | ||
* @see {@link OnChange} | ||
@@ -41,13 +40,15 @@ */ | ||
/** | ||
* Plugin keys to support configuration. | ||
* Overrides rendered node props (shallow merge). | ||
*/ | ||
pluginKeys?: string | string[]; | ||
overrideProps?: OverrideProps<T>; | ||
/** | ||
* @see {@link RenderElement} | ||
* Editor method overriders. | ||
*/ | ||
renderElement?: RenderElement<T>; | ||
withOverrides?: WithOverride | WithOverride[]; | ||
} | ||
export interface PlatePluginSerialize<T extends SPEditor = SPEditor> { | ||
/** | ||
* @see {@link RenderLeaf} | ||
* @see {@link DeserializeHtml} | ||
*/ | ||
renderLeaf?: RenderLeaf<T>; | ||
deserialize?: Deserialize<T>; | ||
/** | ||
@@ -57,2 +58,4 @@ * @see {@link SerializeHtml} | ||
serialize?: Serialize; | ||
} | ||
export interface PlatePluginNode<T extends SPEditor = SPEditor> extends PlatePluginSerialize<T>, PlatePluginEditor<T> { | ||
/** | ||
@@ -62,7 +65,19 @@ * Void element types. | ||
voidTypes?: (editor: T) => string[]; | ||
} | ||
export interface PlatePluginElement<T extends SPEditor = SPEditor> extends PlatePluginNode<T> { | ||
/** | ||
* Editor method overriders. | ||
* Inline element types. | ||
*/ | ||
withOverrides?: WithOverride | WithOverride[]; | ||
inlineTypes?: (editor: T) => string[]; | ||
/** | ||
* @see {@link RenderElement} | ||
*/ | ||
renderElement?: RenderElement<T>; | ||
} | ||
export interface PlatePluginLeaf<T extends SPEditor = SPEditor> extends PlatePluginNode<T> { | ||
/** | ||
* @see {@link RenderLeaf} | ||
*/ | ||
renderLeaf?: RenderLeaf<T>; | ||
} | ||
//# sourceMappingURL=PlatePlugin.d.ts.map |
/// <reference types="react" /> | ||
import { SPEditor } from '../SPEditor'; | ||
import { TRenderElementProps } from '../TRenderElementProps'; | ||
import { SPRenderElementProps } from '../SPRenderElementProps'; | ||
/** | ||
@@ -9,3 +9,3 @@ * Function used to render an element. | ||
*/ | ||
export declare type RenderElement<T extends SPEditor = SPEditor> = (editor: T) => (props: TRenderElementProps) => JSX.Element | undefined; | ||
export declare type RenderElement<T extends SPEditor = SPEditor> = (editor: T) => (props: SPRenderElementProps) => JSX.Element | undefined; | ||
//# sourceMappingURL=RenderElement.d.ts.map |
@@ -1,13 +0,7 @@ | ||
import { TElement } from '../TElement'; | ||
import { TText } from '../TText'; | ||
import { SPRenderElementProps } from '../SPRenderElementProps'; | ||
import { SPRenderLeafProps } from '../SPRenderLeafProps'; | ||
/** | ||
* Map slate node properties to component props. | ||
*/ | ||
export declare type GetNodeProps = (options: { | ||
attributes: any; | ||
children: any; | ||
element?: TElement; | ||
leaf?: TText; | ||
text?: TText; | ||
}) => NodeProps; | ||
export declare type GetNodeProps = (props: SPRenderElementProps | SPRenderLeafProps) => NodeProps | undefined; | ||
/** | ||
@@ -14,0 +8,0 @@ * Props passed from `getNodeProps` option. |
/// <reference types="react" /> | ||
import { RenderNodeOptions } from '../types/PlatePluginOptions/RenderNodeOptions'; | ||
import { TRenderElementProps } from '../types/TRenderElementProps'; | ||
import { SPRenderElementProps } from '../types/SPRenderElementProps'; | ||
/** | ||
@@ -9,3 +9,3 @@ * Get a `Editable.renderElement` handler for `options.type`. | ||
*/ | ||
export declare const getEditableRenderElement: (options: RenderNodeOptions | RenderNodeOptions[]) => ({ attributes, element, children }: TRenderElementProps) => JSX.Element | undefined; | ||
export declare const getEditableRenderElement: (options: RenderNodeOptions | RenderNodeOptions[]) => (props: SPRenderElementProps) => JSX.Element | undefined; | ||
//# sourceMappingURL=getEditableRenderElement.d.ts.map |
import { RenderNodeOptions } from '../types/PlatePluginOptions/RenderNodeOptions'; | ||
import { TRenderLeafProps } from '../types/TRenderLeafProps'; | ||
import { SPRenderLeafProps } from '../types/SPRenderLeafProps'; | ||
/** | ||
@@ -8,3 +8,3 @@ * Get a `Editable.renderLeaf` handler for `options.type`. | ||
*/ | ||
export declare const getEditableRenderLeaf: ({ type, component: Leaf, getNodeProps, overrideProps, }: RenderNodeOptions) => ({ children, leaf, text, attributes, }: TRenderLeafProps) => any; | ||
export declare const getEditableRenderLeaf: ({ type, component: Leaf, getNodeProps, overrideProps, }: RenderNodeOptions) => (props: SPRenderLeafProps) => any; | ||
//# sourceMappingURL=getEditableRenderLeaf.d.ts.map |
@@ -16,2 +16,3 @@ /** | ||
export * from './getRenderLeaf'; | ||
export * from './getRenderNodeProps'; | ||
export * from './getSlateClass'; | ||
@@ -18,0 +19,0 @@ export * from './getVoidTypes'; |
{ | ||
"name": "@udecode/plate-core", | ||
"version": "4.3.7", | ||
"version": "5.3.0", | ||
"description": "The core architecture of Plate – a plugin system for slate", | ||
@@ -41,2 +41,3 @@ "keywords": [ | ||
"dependencies": { | ||
"clsx": "^1.1.1", | ||
"lodash": "^4.17.21", | ||
@@ -43,0 +44,0 @@ "zustand": "^3.4.2" |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
1175626
217
9046
8
+ Addedclsx@^1.1.1
+ Addedclsx@1.2.1(transitive)