@yungu-fed/rich-text-editor 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +74 -0
- package/dist/index.cjs +9 -0
- package/dist/index.css +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +9986 -0
- package/dist/mathlive.min-DhvSIziw.js +39472 -0
- package/dist/mathlive.min-e1W1EjoF.cjs +3237 -0
- package/dist/rich-text-editor/i18n.d.ts +63 -0
- package/dist/rich-text-editor/i18n.d.ts.map +1 -0
- package/dist/rich-text-editor/index.d.ts +38 -0
- package/dist/rich-text-editor/index.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/Editor.d.ts +3 -0
- package/dist/rich-text-editor/primitives/Editor.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/FormulaObject.d.ts +3 -0
- package/dist/rich-text-editor/primitives/FormulaObject.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/ImageObject.d.ts +3 -0
- package/dist/rich-text-editor/primitives/ImageObject.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/InsertNodeButton.d.ts +3 -0
- package/dist/rich-text-editor/primitives/InsertNodeButton.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/ObjectElement.d.ts +12 -0
- package/dist/rich-text-editor/primitives/ObjectElement.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/RichTextEditorRootProvider.d.ts +18 -0
- package/dist/rich-text-editor/primitives/RichTextEditorRootProvider.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/Root.d.ts +3 -0
- package/dist/rich-text-editor/primitives/Root.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/SelectAction.d.ts +7 -0
- package/dist/rich-text-editor/primitives/SelectAction.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/TableCellElement.d.ts +9 -0
- package/dist/rich-text-editor/primitives/TableCellElement.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/TableElement.d.ts +7 -0
- package/dist/rich-text-editor/primitives/TableElement.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/Toolbar.d.ts +11 -0
- package/dist/rich-text-editor/primitives/Toolbar.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/ToolbarAction.d.ts +7 -0
- package/dist/rich-text-editor/primitives/ToolbarAction.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/ToolbarIcon.d.ts +7 -0
- package/dist/rich-text-editor/primitives/ToolbarIcon.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/ToolbarSection.d.ts +3 -0
- package/dist/rich-text-editor/primitives/ToolbarSection.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/ToolbarSeparator.d.ts +3 -0
- package/dist/rich-text-editor/primitives/ToolbarSeparator.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/codecs.d.ts +7 -0
- package/dist/rich-text-editor/primitives/codecs.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/commands.d.ts +2 -0
- package/dist/rich-text-editor/primitives/commands.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/context.d.ts +47 -0
- package/dist/rich-text-editor/primitives/context.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/createSelectAction.d.ts +4 -0
- package/dist/rich-text-editor/primitives/createSelectAction.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/createToolbarButton.d.ts +4 -0
- package/dist/rich-text-editor/primitives/createToolbarButton.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/featureDefinitions.d.ts +3 -0
- package/dist/rich-text-editor/primitives/featureDefinitions.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/featureRegistry.d.ts +155 -0
- package/dist/rich-text-editor/primitives/featureRegistry.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/focusBoundary.d.ts +13 -0
- package/dist/rich-text-editor/primitives/focusBoundary.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/index.d.ts +138 -0
- package/dist/rich-text-editor/primitives/index.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/nodeFactories.d.ts +13 -0
- package/dist/rich-text-editor/primitives/nodeFactories.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/nodeInsertCommand.d.ts +13 -0
- package/dist/rich-text-editor/primitives/nodeInsertCommand.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/slateRenderers.d.ts +5 -0
- package/dist/rich-text-editor/primitives/slateRenderers.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/slateRuntime.d.ts +36 -0
- package/dist/rich-text-editor/primitives/slateRuntime.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/slateTypes.d.ts +33 -0
- package/dist/rich-text-editor/primitives/slateTypes.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/tableCommands.d.ts +20 -0
- package/dist/rich-text-editor/primitives/tableCommands.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/tableModel.d.ts +16 -0
- package/dist/rich-text-editor/primitives/tableModel.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/toolbarActions.d.ts +24 -0
- package/dist/rich-text-editor/primitives/toolbarActions.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/toolbarState.d.ts +12 -0
- package/dist/rich-text-editor/primitives/toolbarState.d.ts.map +1 -0
- package/dist/rich-text-editor/primitives/types.d.ts +168 -0
- package/dist/rich-text-editor/primitives/types.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/DefaultToolbarSection.d.ts +8 -0
- package/dist/rich-text-editor/styled/DefaultToolbarSection.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/DefaultToolbarSeparator.d.ts +2 -0
- package/dist/rich-text-editor/styled/DefaultToolbarSeparator.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/Editor.d.ts +4 -0
- package/dist/rich-text-editor/styled/Editor.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/FormulaButton.d.ts +3 -0
- package/dist/rich-text-editor/styled/FormulaButton.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/FormulaDialog.d.ts +2 -0
- package/dist/rich-text-editor/styled/FormulaDialog.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/FormulaDialogContent.d.ts +2 -0
- package/dist/rich-text-editor/styled/FormulaDialogContent.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/ImageButton.d.ts +3 -0
- package/dist/rich-text-editor/styled/ImageButton.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/MathFieldInput.d.ts +10 -0
- package/dist/rich-text-editor/styled/MathFieldInput.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/Root.d.ts +10 -0
- package/dist/rich-text-editor/styled/Root.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/StyledToolbarIconButton.d.ts +11 -0
- package/dist/rich-text-editor/styled/StyledToolbarIconButton.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/Toolbar.d.ts +3 -0
- package/dist/rich-text-editor/styled/Toolbar.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/ToolbarSection.d.ts +3 -0
- package/dist/rich-text-editor/styled/ToolbarSection.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/ToolbarSeparator.d.ts +3 -0
- package/dist/rich-text-editor/styled/ToolbarSeparator.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/createStyledInsertNodeButton.d.ts +6 -0
- package/dist/rich-text-editor/styled/createStyledInsertNodeButton.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/createStyledSelectButton.d.ts +6 -0
- package/dist/rich-text-editor/styled/createStyledSelectButton.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/createStyledToolbarButton.d.ts +6 -0
- package/dist/rich-text-editor/styled/createStyledToolbarButton.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/defaultToolbar.d.ts +2 -0
- package/dist/rich-text-editor/styled/defaultToolbar.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/index.d.ts +71 -0
- package/dist/rich-text-editor/styled/index.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/mathliveLoader.d.ts +6 -0
- package/dist/rich-text-editor/styled/mathliveLoader.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/mediaCommands.d.ts +5 -0
- package/dist/rich-text-editor/styled/mediaCommands.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/mediaContext.d.ts +22 -0
- package/dist/rich-text-editor/styled/mediaContext.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/mediaTypes.d.ts +14 -0
- package/dist/rich-text-editor/styled/mediaTypes.d.ts.map +1 -0
- package/dist/rich-text-editor/styled/toolbarDescriptors.d.ts +14 -0
- package/dist/rich-text-editor/styled/toolbarDescriptors.d.ts.map +1 -0
- package/package.json +95 -0
package/README.md
ADDED
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# @yungu-fed/rich-text-editor
|
|
2
|
+
|
|
3
|
+
React editor component library for question-related editing workflows.
|
|
4
|
+
|
|
5
|
+
## Development
|
|
6
|
+
|
|
7
|
+
This package is managed independently from consuming applications.
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
pnpm install
|
|
11
|
+
pnpm ladle
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Build
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
pnpm build
|
|
18
|
+
pnpm build-ladle
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
The package publishes ESM, CommonJS, and TypeScript declarations from `dist`.
|
|
22
|
+
React, React DOM, and Slate runtime packages are peer dependencies and are not
|
|
23
|
+
bundled.
|
|
24
|
+
|
|
25
|
+
## Use In A Parent Project
|
|
26
|
+
|
|
27
|
+
During local integration:
|
|
28
|
+
|
|
29
|
+
```json
|
|
30
|
+
{
|
|
31
|
+
"dependencies": {
|
|
32
|
+
"@yungu-fed/rich-text-editor": "file:./packages/rich-text-editor"
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
After publishing:
|
|
38
|
+
|
|
39
|
+
```json
|
|
40
|
+
{
|
|
41
|
+
"dependencies": {
|
|
42
|
+
"@yungu-fed/rich-text-editor": "^0.1.0"
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Then import editor APIs from the package root:
|
|
48
|
+
|
|
49
|
+
```tsx
|
|
50
|
+
import { RichTextEditor } from '@yungu-fed/rich-text-editor'
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## Editor Value 与节点插件
|
|
54
|
+
|
|
55
|
+
编辑器内容使用 Slate JSON。每个 `RichTextEditor.Editor` 都可以通过 `value` / `onChange` 读取和控制
|
|
56
|
+
内容。`Root` 只负责共享 toolbar 与编辑运行时。`apiRef` 只暴露稳定命令式能力,例如 `getValue`、`focus`、
|
|
57
|
+
`blur`、`isFocused`、`runCommand`、`insertNode`;不暴露原始 Slate editor。
|
|
58
|
+
多个 editor 的编辑焦点状态通过 `Root.onEditorFocusChange` 观察;不要通过 DOM
|
|
59
|
+
focus、CSS selector 或 Slate selection 推断共享 toolbar 是否应该显示。
|
|
60
|
+
|
|
61
|
+
自定义节点通过 `RichTextEditorPlugin.nodes` 声明。Toolbar 插入统一使用
|
|
62
|
+
`RichTextEditor.Toolbar.InsertNodeButton`;节点定义决定该节点是否 inline、void、
|
|
63
|
+
markable,以及如何插入、渲染、normalize 和通过 codecs 转换。完整 API 和示例见
|
|
64
|
+
`docs/compound-component-api.md`。
|
|
65
|
+
|
|
66
|
+
## Compatibility
|
|
67
|
+
|
|
68
|
+
- Runtime peer range: React `>=16.14 <20`
|
|
69
|
+
- Local development baseline: React `16.14.0`
|
|
70
|
+
- Do not use React 18+ only APIs in exported components.
|
|
71
|
+
- Slate baseline: `slate@0.94.1`, `slate-react@0.99.0`,
|
|
72
|
+
`slate-history@0.93.0`, and `slate-hyperscript@0.81.3`.
|
|
73
|
+
- Slate packages are peer dependencies because this package is a component
|
|
74
|
+
library and should share the consuming application's editor runtime.
|