Indent List
Turn any block into a list item.
'use client';
import React from 'react';
import { Plate } from '@udecode/plate-common/react';
import { editorPlugins } from '@/components/editor/plugins/editor-plugins';
import { useCreateEditor } from '@/components/editor/use-create-editor';
import { Editor, EditorContainer } from '@/components/plate-ui/editor';
import { DEMO_VALUES } from './values/demo-values';
export default function Demo({ id }: { id: string }) {
const editor = useCreateEditor({
plugins: [...editorPlugins],
value: DEMO_VALUES[id],
});
return (
<Plate editor={editor}>
<EditorContainer variant="demo">
<Editor />
</EditorContainer>
</Plate>
);
}
Installation
npm install @udecode/plate-indent-list @udecode/plate-indent
Usage
import { IndentPlugin } from '@udecode/plate-indent/react';
import { IndentListPlugin } from '@udecode/plate-indent-list/react';
import { HEADING_KEYS } from '@udecode/plate-heading';
import { HeadingPlugin } from '@udecode/plate-heading/react';
import { ParagraphPlugin } from '@udecode/plate-common/react';
const plugins = [
// ...otherPlugins,
HeadingPlugin,
IndentPlugin.configure({
inject: {
targetPlugins: [ParagraphPlugin.key, HEADING_KEYS.h1],
}
}),
IndentListPlugin.configure({
inject: {
targetPlugins: [ParagraphPlugin.key, HEADING_KEYS.h1],
}
}),
];
Plugins
IndentListPlugin
Options
用于确定兄弟元素的缩进列表选项的函数。
将 HTML 元素映射到列表样式类型的函数。
在缩进列表节点下渲染组件的函数。
API
getNextIndentList
Parameters
编辑器实例。
当前元素的entry。
获取下一个兄弟缩进列表的选项。
Returns
具有缩进列表的下一个兄弟entry,如果未找到则返回 undefined
。
getPreviousIndentList
获取具有缩进列表的前一个兄弟entry。
Parameters
编辑器实例。
当前元素的entry。
获取前一个兄弟缩进列表的选项。
Returns
具有缩进列表的前一个兄弟entry,如果未找到则返回 undefined
。
indentList
增加所选块的缩进。
Parameters
编辑器实例。
扩展 SetIndentOptions
。
outdentList
减少所选块的缩进。
Parameters
编辑器实例。
扩展 SetIndentOptions
。
someIndentList
检查所选块中是否有特定的列表样式类型。
Parameters
编辑器实例。
要检查的列表样式类型。
toggleIndentList
切换缩进列表。
Parameters
编辑器实例。
切换缩进列表的选项。
GetSiblingIndentListOptions
用于提供获取文本块中兄弟缩进列表的选项。
Attributes
此函数用于从给定entry获取前一个兄弟entry。
此函数用于从给定entry获取下一个兄弟entry。
此函数用于在查找过程中验证兄弟节点。如果返回 false,则检查下一个兄弟节点。
指示当兄弟节点具有与当前节点相同的缩进级别时是否中断查找。如果为 true,则在找到具有相同缩进级别的兄弟节点时停止查找。
一个接受 TNode
并返回布尔值或 undefined 的函数。此函数用于指定应该停止查找过程的条件。
指示当找到具有较低缩进级别的兄弟节点时是否中断查找。如果为 true,则在找到具有较低缩进级别的兄弟节点时停止查找。
指示当找到具有相同缩进级别但不同列表样式类型的兄弟节点时是否中断查找。如果为 true,则在找到这样的兄弟节点时停止查找。
API 组件
useIndentListToolbarButton
缩进列表工具栏按钮的行为钩子。
State
列表样式类型。
指示按钮是否被按下的布尔值。