Skip to content

Commit 1519c3d

Browse files
重写table功能 (#36)
* table支持行的bar功能 * 简化表格节点获取逻辑,直接返回元素属性 * 添加demo并优化表格组件 (#25) * 添加Markdown编辑器示例 * 为表格组件添加CSS样式支持 * 调整Markdown编辑器表格组件样式,修复边距和滚动容器查找逻辑 * 优化表格组件样式,调整行列侧边框及交点位置,精简 Slate 属性 (#27) * 调整表格组件样式,优化行列侧边框和交点的尺寸及位置 * 移除不必要的 data-ignore-slate 属性,并在表格组件中添加 data-slate-editor 属性 * 优化表格组件性能,减少渲染时间 * 修复FloatBar关闭逻辑,确保在选择范围存在时才执行相关操作 * 调整表格组件样式,优化选中单元格和交点的背景色及尺寸 (#29) * 添加对 Python 语言的支持,并更新代码高亮配置以接受额外语言参数 * 1.12.28 * 添加带有错误处理功能的图片组件,加载失败时显示可点击链接 * 1.12.29 * 更新图片组件错误处理,加载失败时显示替代文本或链接 * 添加 blob-util 依赖,优化 Markdown 编辑器的粘贴功能,增强对 RTF 格式的支持 * 添加 copy-to-clipboard 依赖,并实现复制选中文本块的功能 * 1.12.30 * 优化媒体文件上传功能,支持 blob URL 转换为文件并上传 * 优化上传文件逻辑,修复 fragment.url 和 downloadUrl 的赋值顺序 * 移除媒体元素选择时的错误处理逻辑 * 调整表格组件样式,优化行列侧边框和交点的尺寸及位置 * 优化Markdown编辑器样式,调整列表、段落和标题的边距与填充 * 优化Markdown编辑器样式,为图表和卡片添加上下边距 * 1.12.31 * 移除不必要的 data-ignore-slate 属性,并在表格组件中添加 data-slate-editor 属性 * feat: 重构 chart 能力 (#28) * 新增图表组件及相关工具,优化图表属性设置和样式 * 新增motion依赖,优化图表组件的初始化逻辑,重构相关代码以提高可读性和性能 * 新增useGetSetState工具函数,优化InsertLink组件的代码结构 * 优化Markdown编辑器的布局和图表组件的尺寸调整逻辑,提高可读性和性能 * 新增对window.matchMedia的模拟,以支持测试环境中的媒体查询 * 优化Markdown编辑器的代码结构,重构InsertLink和TocHeading组件,修复媒体查询逻辑,提升可读性和性能 * 清理Markdown编辑器代码,移除未使用的editorProps属性,优化快照测试中的类名 * 优化Markdown编辑器,统一使用editorProps,提升代码可读性和一致性 * 优化Markdown编辑器的性能,重构组件以提升可读性和一致性 * 为测试用例添加ConfigProvider,以支持Ant Design主题配置 * 1.13.0 * feat: 重构图表组件,统一属性类型并添加索引支持 * 1.13.1 * feat: 添加新的演示代码并扩展图表下拉菜单选项 * 1.13.2 * 优化渲染方式 * feat: 添加对表格单元格和行的默认渲染处理 * feat: 添加图表组件的清理和重初始化逻辑 * feat: 调整图表容器的尺寸计算逻辑以支持动态索引 * 1.13.3 * 调整表格组件样式,优化选中单元格和交点的背景色及尺寸 --------- Co-authored-by: qixian.cs <[email protected]> Co-authored-by: chenshuai2144 <[email protected]> * 更新demo,调整表格组件的代码引用,添加debug属性以便于调试 * 更新pnpm-lock.yaml,升级@antv/g-plugin-image-loader至2.1.16,并移除重复的motion-dom依赖 * 优化表格组件,调整选中单元格样式及过渡效果,修复滚动事件处理逻辑 (#32) * 优化表格组件样式,调整选中单元格背景色及过渡效果,修复滚动事件处理逻辑 (#30) * table支持行的bar功能 * 简化表格节点获取逻辑,直接返回元素属性 * 添加demo并优化表格组件 (#25) * 添加Markdown编辑器示例 * 为表格组件添加CSS样式支持 * 调整Markdown编辑器表格组件样式,修复边距和滚动容器查找逻辑 * 调整表格组件样式,优化行列侧边框和交点的尺寸及位置 * 移除不必要的 data-ignore-slate 属性,并在表格组件中添加 data-slate-editor 属性 * 优化表格组件样式,调整行列侧边框及交点位置,精简 Slate 属性 (#27) * 调整表格组件样式,优化行列侧边框和交点的尺寸及位置 * 移除不必要的 data-ignore-slate 属性,并在表格组件中添加 data-slate-editor 属性 * 优化表格组件性能,减少渲染时间 * 修复FloatBar关闭逻辑,确保在选择范围存在时才执行相关操作 * 调整表格组件样式,优化选中单元格和交点的背景色及尺寸 * feat: 优化表格组件样式,调整选中单元格背景色及过渡效果,修复滚动事件处理逻辑 --------- Co-authored-by: chenshuai2144 <[email protected]> * Revert "优化表格组件样式,调整选中单元格背景色及过渡效果,修复滚动事件处理逻辑 (#30)" (#31) This reverts commit a369850. * 优化表格组件,调整选中单元格样式及过渡效果,修复滚动事件处理逻辑 --------- Co-authored-by: chenshuai2144 <[email protected]> Co-authored-by: 陈帅 <[email protected]> * 优化渲染能力,减少渲染次数,评论修改为右边,右侧面板需要专门实现 * feat: 更新依赖项版本以提升性能和稳定性 * 调整表格组件样式,修复单元格过渡效果及边距,优化表格边框样式 (#33) * 优化表格组件,调整选中单元格样式及过渡效果,修复滚动事件处理逻辑 * 调整表格组件样式,修复单元格过渡效果及边距,优化表格边框样式 * 调整表格组件样式,修复单元格过渡效果及边距,优化表格边框样式 * 优化表格组件,调整行高计算逻辑,修复边框样式及表格布局 * 移除调试日志,优化滚动事件处理逻辑 * 调整表格组件行高计算,修复最后一行单元格边框样式及圆角效果 * 1.13.16 * 调整表格组件样式,优化行高和宽度计算,修复边框样式及圆角效果 * 优化表格组件样式,添加选中状态下最后一行单元格右下角边框圆角效果 * 调整表格组件样式,统一单位为em,修复边框圆角效果 * 优化表格组件样式,修复边框样式及圆角效果 * feat: 更新构建配置,支持ES模块和CommonJS输出 * 1.14.0 * feat: 增加条件判断以防止在特定情况下渲染图表 * 1.14.1 * feat: 更新构建配置,统一输出目录为dist * 1.14.2 * feat: 调整多个组件的边框半径为12px,以统一样式 * 调整表格侧边样式,修复左侧位置偏移,优化过渡效果 * feat: 优化表格单元格组件,移除不必要的样式属性 * 1.14.3 * feat: 移除表格组件中不必要的文本对齐样式 * 1.14.4 * feat: 增强Markdown编辑器功能,添加选区处理和初始化逻辑 * 1.14.5 --------- Co-authored-by: qixian.cs <[email protected]> * feat: 添加删除和添加按钮的悬停效果,优化表格组件交互体验 (#34) * 优化表格组件,调整选中单元格样式及过渡效果,修复滚动事件处理逻辑 * 调整表格组件样式,修复单元格过渡效果及边距,优化表格边框样式 * 调整表格组件样式,修复单元格过渡效果及边距,优化表格边框样式 * 优化表格组件,调整行高计算逻辑,修复边框样式及表格布局 * 移除调试日志,优化滚动事件处理逻辑 * 调整表格组件行高计算,修复最后一行单元格边框样式及圆角效果 * 1.13.16 * 调整表格组件样式,优化行高和宽度计算,修复边框样式及圆角效果 * 优化表格组件样式,添加选中状态下最后一行单元格右下角边框圆角效果 * 调整表格组件样式,统一单位为em,修复边框圆角效果 * 优化表格组件样式,修复边框样式及圆角效果 * feat: 更新构建配置,支持ES模块和CommonJS输出 * 1.14.0 * feat: 增加条件判断以防止在特定情况下渲染图表 * 1.14.1 * feat: 更新构建配置,统一输出目录为dist * 1.14.2 * feat: 调整多个组件的边框半径为12px,以统一样式 * 调整表格侧边样式,修复左侧位置偏移,优化过渡效果 * feat: 优化表格单元格组件,移除不必要的样式属性 * 1.14.3 * feat: 移除表格组件中不必要的文本对齐样式 * 1.14.4 * feat: 增强Markdown编辑器功能,添加选区处理和初始化逻辑 * 1.14.5 * feat: 添加删除和添加按钮的悬停效果,优化表格组件交互体验 * feat: 添加 React 导入以支持 Markdown 编辑器组件 --------- Co-authored-by: qixian.cs <[email protected]> * feat: 添加删除确认功能,优化表格侧边栏组件交互体验 * feat: 优化表格组件,重构表格节点引用,提升性能和可维护性 * feat: 添加删除确认功能,并在删除时清除状态 (#35) * 优化表格组件,调整选中单元格样式及过渡效果,修复滚动事件处理逻辑 * 调整表格组件样式,修复单元格过渡效果及边距,优化表格边框样式 * 调整表格组件样式,修复单元格过渡效果及边距,优化表格边框样式 * 优化表格组件,调整行高计算逻辑,修复边框样式及表格布局 * 移除调试日志,优化滚动事件处理逻辑 * 调整表格组件行高计算,修复最后一行单元格边框样式及圆角效果 * 调整表格组件样式,优化行高和宽度计算,修复边框样式及圆角效果 * 优化表格组件样式,添加选中状态下最后一行单元格右下角边框圆角效果 * 调整表格组件样式,统一单位为em,修复边框圆角效果 * 优化表格组件样式,修复边框样式及圆角效果 * 调整表格侧边样式,修复左侧位置偏移,优化过渡效果 * feat: 添加删除和添加按钮的悬停效果,优化表格组件交互体验 * feat: 添加 React 导入以支持 Markdown 编辑器组件 * feat: 添加删除确认功能,并在删除时清除状态 * feat: 移除不必要的激活状态数组设置,优化删除操作逻辑 * feat: 添加获取选中单元格索引的函数,简化删除操作逻辑 (#37) * 优化表格组件,调整选中单元格样式及过渡效果,修复滚动事件处理逻辑 * 调整表格组件样式,修复单元格过渡效果及边距,优化表格边框样式 * 调整表格组件样式,修复单元格过渡效果及边距,优化表格边框样式 * 优化表格组件,调整行高计算逻辑,修复边框样式及表格布局 * 移除调试日志,优化滚动事件处理逻辑 * 调整表格组件行高计算,修复最后一行单元格边框样式及圆角效果 * 调整表格组件样式,优化行高和宽度计算,修复边框样式及圆角效果 * 优化表格组件样式,添加选中状态下最后一行单元格右下角边框圆角效果 * 调整表格组件样式,统一单位为em,修复边框圆角效果 * 优化表格组件样式,修复边框样式及圆角效果 * 调整表格侧边样式,修复左侧位置偏移,优化过渡效果 * feat: 添加删除和添加按钮的悬停效果,优化表格组件交互体验 * feat: 添加 React 导入以支持 Markdown 编辑器组件 * feat: 添加删除确认功能,并在删除时清除状态 * feat: 移除不必要的激活状态数组设置,优化删除操作逻辑 * feat: 更新删除功能,支持传递索引参数以确定删除的行或列 * feat: 添加获取选中单元格索引的函数,简化删除操作逻辑 * fix: 添加可选链以防止编辑器节点访问时的潜在错误 * fix: 更新表格样式以改善布局和可读性 * fix: 优化侧边栏删除按钮位置和样式,改善用户体验 * fix: 移除不必要的 domRect 和 domRange 属性,简化状态管理 * fix: 调整编辑器和工具栏的样式,增加最大宽度并居中对齐 * fix: 增加侧边栏图标以支持行和列的插入功能,优化编辑器交互体验 * fix: 移除不必要的 markdownEditorRef,简化拖拽句柄组件逻辑 * fix: 增加行列创建和对齐功能,优化表格组件交互 * fix: 调整工具栏样式,增加最大宽度并居中对齐 * fix: 使用 ResizeObserver 监控表格宽度变化,优化侧边栏显示 (#38) * 优化表格组件,调整选中单元格样式及过渡效果,修复滚动事件处理逻辑 * 调整表格组件样式,修复单元格过渡效果及边距,优化表格边框样式 * 调整表格组件样式,修复单元格过渡效果及边距,优化表格边框样式 * 优化表格组件,调整行高计算逻辑,修复边框样式及表格布局 * 移除调试日志,优化滚动事件处理逻辑 * 调整表格组件行高计算,修复最后一行单元格边框样式及圆角效果 * 调整表格组件样式,优化行高和宽度计算,修复边框样式及圆角效果 * 优化表格组件样式,添加选中状态下最后一行单元格右下角边框圆角效果 * 调整表格组件样式,统一单位为em,修复边框圆角效果 * 优化表格组件样式,修复边框样式及圆角效果 * 调整表格侧边样式,修复左侧位置偏移,优化过渡效果 * feat: 添加删除和添加按钮的悬停效果,优化表格组件交互体验 * feat: 添加 React 导入以支持 Markdown 编辑器组件 * feat: 添加删除确认功能,并在删除时清除状态 * feat: 移除不必要的激活状态数组设置,优化删除操作逻辑 * feat: 更新删除功能,支持传递索引参数以确定删除的行或列 * feat: 添加获取选中单元格索引的函数,简化删除操作逻辑 * fix: 使用 ResizeObserver 监控表格宽度变化,优化侧边栏显示 * fix: 将 useLayoutEffect 替换为 useEffect,优化表格宽度监控逻辑 * docs: 更新 CHANGELOG,添加 5.23.4 版本信息及修复记录 * fix: 修正表格单元格对齐逻辑,确保左对齐和右对齐功能正常 * fix: 增加对 ResizeObserver 的支持,优化表格组件的响应式布局 * fix: 修复表格单元格对齐逻辑,确保未定义对齐方式时返回正确值 --------- Co-authored-by: 222 <[email protected]>
1 parent 34cf8d5 commit 1519c3d

32 files changed

+42730
-36564
lines changed
+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
import { MarkdownEditor } from '@ant-design/md-editor';
2+
import React from 'react';
3+
4+
const defaultValue = `
5+
| 业务 | 2021Q1 | 2021Q2 | 2021Q3 | 2021Q4 | 2022Q1 | 2022Q2 | 2022Q3 | 2022Q4 | 2023Q1 | 2023Q2 | 2023Q3 | 2023Q4 |
6+
| ------------- | ------- | ------- | ------- | ------- | ------- | ------- | ------- | ------- | ------- | ------- | ------- | ------- |
7+
| 收入 | 135,303 | 138,259 | 142,368 | 144,188 | 135,471 | 134,034 | 140,093 | 144,954 | 149,986 | 149,208 | 154,625 | 155,200 |
8+
| 社交网络收入增值服务 | 72,443 | 72,013 | 75,203 | 71,913 | 72,738 | 71,683 | 72,727 | 70,417 | 79,337 | 74,211 | 75,748 | 69,100 |
9+
| 网络游戏 | 43,600 | 43,000 | 44,900 | 42,800 | 43,600 | 42,500 | na | na | na | 44,500 | 46,000 | 40,900 |
10+
| 社交网络收入 | 28,800 | 29,000 | 30,300 | 29,100 | 29,100 | 29,200 | na | na | na | 29,700 | 29,700 | 28,200 |
11+
| 网络广告 | 21,820 | 22,833 | 22,495 | 21,518 | 17,988 | 18,638 | 21,443 | 24,660 | 20,964 | 25,003 | 25,721 | 29,794 |
12+
| 其他 | 41,040 | 43,413 | 44,670 | 50,757 | 44,745 | 43,713 | 45,923 | 49,877 | 49,685 | 49,994 | 53,156 | 54,379 |
13+
`;
14+
export default () => {
15+
return (
16+
<MarkdownEditor
17+
width={'100vw'}
18+
height={'100vh'}
19+
reportMode
20+
initValue={defaultValue}
21+
/>
22+
);
23+
};

src/MarkdownEditor/editor/Editor.tsx

+8-1
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,13 @@ export const MEditor = observer(
9090
first.current = true;
9191
store.initializing = true;
9292
try {
93+
console.log(
94+
'reset',
95+
editorProps.initSchemaValue?.length
96+
? editorProps.initSchemaValue
97+
: undefined,
98+
editorProps.initSchemaValue,
99+
);
93100
EditorUtils.reset(
94101
markdownEditorRef.current,
95102
editorProps.initSchemaValue?.length
@@ -286,7 +293,7 @@ export const MEditor = observer(
286293

287294
// 如果是表格或者代码块,直接插入文本
288295
if (selection?.focus) {
289-
const rangeNodes = Editor.node(markdownEditorRef.current, [
296+
const rangeNodes = Editor?.node(markdownEditorRef.current, [
290297
selection.focus.path.at(0)!,
291298
]);
292299
if (!rangeNodes) return;

0 commit comments

Comments
 (0)