@ant-design/agentic-ui 2.30.22 → 2.30.24

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.
Files changed (58) hide show
  1. package/dist/Bubble/MessagesContent/MarkdownPreview.d.ts +0 -58
  2. package/dist/Bubble/MessagesContent/MarkdownPreview.js +79 -156
  3. package/dist/Hooks/useAutoScroll.js +6 -4
  4. package/dist/MarkdownEditor/BaseMarkdownEditor.d.ts +1 -50
  5. package/dist/MarkdownEditor/BaseMarkdownEditor.js +11 -55
  6. package/dist/MarkdownEditor/editor/Editor.js +11 -9
  7. package/dist/MarkdownEditor/editor/elements/Code/index.js +1 -0
  8. package/dist/MarkdownEditor/editor/plugins/elements.d.ts +2 -0
  9. package/dist/MarkdownEditor/editor/plugins/elements.js +4 -2
  10. package/dist/MarkdownEditor/editor/plugins/handlePaste.js +46 -35
  11. package/dist/MarkdownEditor/editor/plugins/hotKeyCommands/backspace.js +133 -133
  12. package/dist/MarkdownEditor/editor/plugins/hotKeyCommands/enter.js +156 -140
  13. package/dist/MarkdownEditor/editor/plugins/hotKeyCommands/match.d.ts +2 -1
  14. package/dist/MarkdownEditor/editor/plugins/hotKeyCommands/match.js +23 -4
  15. package/dist/MarkdownEditor/editor/plugins/hotKeyCommands/tab.js +40 -36
  16. package/dist/MarkdownEditor/editor/plugins/index.d.ts +1 -0
  17. package/dist/MarkdownEditor/editor/plugins/index.js +1 -0
  18. package/dist/MarkdownEditor/editor/plugins/useKeyboard.js +46 -44
  19. package/dist/MarkdownEditor/editor/plugins/withCodeTagPlugin.js +1 -13
  20. package/dist/MarkdownEditor/editor/plugins/withMarkdown.js +2 -1
  21. package/dist/MarkdownEditor/editor/plugins/withSanitizeInvalidChildren.d.ts +7 -0
  22. package/dist/MarkdownEditor/editor/plugins/withSanitizeInvalidChildren.js +217 -0
  23. package/dist/MarkdownEditor/editor/store.d.ts +3 -1
  24. package/dist/MarkdownEditor/editor/store.js +15 -29
  25. package/dist/MarkdownEditor/editor/utils/editorCommands.js +98 -17
  26. package/dist/MarkdownEditor/editor/utils/editorUtils.d.ts +11 -0
  27. package/dist/MarkdownEditor/editor/utils/editorUtils.js +43 -6
  28. package/dist/MarkdownEditor/editor/utils/keyboard.js +14 -12
  29. package/dist/MarkdownEditor/types.d.ts +36 -414
  30. package/dist/MarkdownEditor/types.js +1 -4
  31. package/dist/MarkdownInputField/MarkdownInputField.js +2 -0
  32. package/dist/MarkdownInputField/SendActions/index.js +7 -4
  33. package/dist/MarkdownInputField/SendButton/index.d.ts +6 -0
  34. package/dist/MarkdownInputField/SendButton/index.js +6 -0
  35. package/dist/MarkdownInputField/hooks/useMarkdownInputFieldHandlers.d.ts +2 -1
  36. package/dist/MarkdownInputField/hooks/useMarkdownInputFieldHandlers.js +6 -1
  37. package/dist/MarkdownRenderer/AnimationText.d.ts +1 -5
  38. package/dist/MarkdownRenderer/AnimationText.js +2 -8
  39. package/dist/MarkdownRenderer/CharacterQueue.d.ts +0 -2
  40. package/dist/MarkdownRenderer/CharacterQueue.js +2 -2
  41. package/dist/MarkdownRenderer/MarkdownRenderer.d.ts +1 -9
  42. package/dist/MarkdownRenderer/MarkdownRenderer.js +1 -9
  43. package/dist/MarkdownRenderer/StreamingCursor.d.ts +4 -0
  44. package/dist/MarkdownRenderer/StreamingCursor.js +20 -0
  45. package/dist/MarkdownRenderer/markdownReactShared.d.ts +8 -38
  46. package/dist/MarkdownRenderer/markdownReactShared.js +9 -45
  47. package/dist/MarkdownRenderer/renderers/ChartRenderer.js +9 -1
  48. package/dist/MarkdownRenderer/streaming/MarkdownBlockPiece.d.ts +1 -3
  49. package/dist/MarkdownRenderer/streaming/MarkdownBlockPiece.js +16 -28
  50. package/dist/MarkdownRenderer/style.js +18 -0
  51. package/dist/MarkdownRenderer/types.d.ts +14 -86
  52. package/dist/MarkdownRenderer/useStreaming.d.ts +1 -10
  53. package/dist/MarkdownRenderer/useStreaming.js +5 -13
  54. package/dist/ThoughtChainList/MarkdownEditor.d.ts +1 -35
  55. package/dist/ThoughtChainList/MarkdownEditor.js +5 -44
  56. package/dist/Workspace/RealtimeFollow/index.d.ts +3 -0
  57. package/dist/Workspace/RealtimeFollow/index.js +5 -3
  58. package/package.json +2 -2
@@ -4,76 +4,34 @@ import type { MarkdownEditorPlugin } from '../MarkdownEditor/plugin';
4
4
  import type { MarkdownEditorProps } from '../MarkdownEditor/types';
5
5
  import type { AttachmentFile } from '../MarkdownInputField/AttachmentButton/types';
6
6
  import type { FileMapViewProps } from '../MarkdownInputField/FileMapView';
7
- /**
8
- * FileMapView 相关配置,透传给 agentic-ui-filemap 代码块渲染器,
9
- * 方便在 markdownRenderConfig 中统一配置图片回显行为。
10
- */
7
+ /** 透传给 agentic-ui-filemap 代码块渲染器的配置 */
11
8
  export interface FileMapConfig {
12
- /**
13
- * 预览文件回调,透传给 FileMapView.onPreview。
14
- * 对图片:点击缩略图时触发,传入则阻止 antd Image 内置灯箱;
15
- * 对视频:传入则阻止内置弹窗;对普通文件:传入则阻止默认 window.open。
16
- */
9
+ /** 传入则阻止内置预览(灯箱/弹窗/window.open) */
17
10
  onPreview?: (file: AttachmentFile) => void;
18
- /**
19
- * 自定义每个媒体条目(图片/视频)的渲染,透传给 FileMapView.itemRender,
20
- * 常用于回显场景。
21
- */
11
+ /** 自定义媒体条目渲染 */
22
12
  itemRender?: FileMapViewProps['itemRender'];
23
- /**
24
- * 自定义文件数据规范化函数,用于将 agentic-ui-filemap 代码块中的原始 JSON 条目
25
- * 转换为 AttachmentFile 对象。
26
- *
27
- * 适用于服务端返回的字段名与 AttachmentFile 不一致(如 fileUrl → url、
28
- * fileId → uuid)或需要在数据层补充额外字段的场景。
29
- *
30
- * @param raw - 代码块 JSON 中的原始文件对象(未经处理)
31
- * @param defaultFile - 由内置逻辑生成的默认 AttachmentFile,可在此基础上做局部覆盖
32
- * @returns 转换后的 AttachmentFile;返回 null 时该条目将被过滤掉
33
- *
34
- * @example
35
- * ```tsx
36
- * fileMapConfig={{
37
- * normalizeFile: (raw, defaultFile) => ({
38
- * ...defaultFile,
39
- * url: raw.fileUrl as string,
40
- * uuid: raw.fileId as string,
41
- * }),
42
- * }}
43
- * ```
44
- */
13
+ /** 将原始 JSON 条目转为 AttachmentFile,返回 null 过滤该条目 */
45
14
  normalizeFile?: (raw: Record<string, unknown>, defaultFile: AttachmentFile) => AttachmentFile | null;
46
15
  }
47
16
  export interface MarkdownRendererEleProps {
48
- /** HTML tag name, e.g. 'p', 'h1', 'blockquote', 'pre' */
49
17
  tagName: string;
50
- /** The original hast node */
51
18
  node?: any;
52
- /** Rendered children */
53
19
  children?: React.ReactNode;
54
20
  [key: string]: any;
55
21
  }
56
22
  export interface CharacterQueueOptions {
57
- /** 每帧输出的最大字符数,默认 3 */
23
+ /** 默认 3 */
58
24
  charsPerFrame?: number;
59
- /**
60
- * 是否启用 CharacterQueue 逐字输出(RAF 驱动)。
61
- * MarkdownRenderer 流式默认合并为 `false`,避免每帧全量重解析导致整页闪动;需打字机时再设为 `true`。
62
- */
25
+ /** 流式时默认合并为 false,需打字机时设 true */
63
26
  animate?: boolean;
64
- /**
65
- * 仅对末尾 N 个字符做动画,前面内容立即展示。
66
- * 设为 50 时,每次 push 只对最后 50 字逐字输出,避免整段逐字动画。
67
- * 默认 undefined 表示整段动画(原有行为)。
68
- */
27
+ /** 仅对末尾 N 字做动画,前面内容立即展示 */
69
28
  animateTailChars?: number;
70
- /** 动画速度因子,1.0 为标准速度 */
29
+ /** 速度因子,默认 1.0 */
71
30
  speed?: number;
72
- /** 内容完成后立即 flush 全部剩余 */
73
31
  flushOnComplete?: boolean;
74
- /** 后台 tick 间隔(ms),默认 100 */
32
+ /** 默认 100ms */
75
33
  backgroundInterval?: number;
76
- /** 后台每次 tick 的字符数倍率,默认 10 */
34
+ /** 默认 10 */
77
35
  backgroundBatchMultiplier?: number;
78
36
  }
79
37
  export type { RendererPlugin } from '../MarkdownEditor/plugin';
@@ -84,65 +42,35 @@ export interface RendererBlockProps {
84
42
  }
85
43
  export type RenderMode = 'slate' | 'markdown';
86
44
  export interface MarkdownRendererProps {
87
- /** 完整的 markdown 内容(流式场景下持续增长) */
88
45
  content: string;
89
- /** 是否处于流式状态 */
90
46
  streaming?: boolean;
91
- /** 流式完成 */
92
47
  isFinished?: boolean;
93
- /** 字符队列配置 */
94
48
  queueOptions?: CharacterQueueOptions;
95
- /** 插件配置(用于自定义块渲染) */
96
49
  plugins?: MarkdownEditorPlugin[];
97
- /** markdownToHtml 的额外 remark/rehype 插件 */
98
50
  remarkPlugins?: MarkdownRemarkPlugin[];
99
- /** HTML 渲染配置 */
100
51
  htmlConfig?: MarkdownToHtmlConfig;
101
- /** 类名 */
102
52
  className?: string;
103
- /** 样式 */
104
53
  style?: React.CSSProperties;
105
- /** 类名前缀 */
106
54
  prefixCls?: string;
107
- /** 代码块配置,与 MarkdownEditor `codeProps` 对齐(含 `render` 覆盖) */
108
55
  codeProps?: MarkdownEditorProps['codeProps'];
109
- /** 脚注配置,与 MarkdownEditor `fncProps` 对齐 */
110
56
  fncProps?: MarkdownEditorProps['fncProps'];
111
- /** 链接配置 */
112
57
  linkConfig?: {
113
- /** 是否在新标签页打开链接,默认 true */
58
+ /** 默认 true */
114
59
  openInNewTab?: boolean;
115
- /** 自定义链接点击处理,返回 false 可阻止默认跳转 */
60
+ /** 返回 false 阻止跳转 */
116
61
  onClick?: (url?: string) => boolean | void;
117
62
  };
118
- /**
119
- * 流式时是否为生长中的末段启用淡入(AnimationText)。
120
- * 默认 false,避免重解析时整页闪动;需要段落入场效果时再设为 true。
121
- */
63
+ /** 末段淡入动画,默认开启;传 false 关闭 */
122
64
  streamingParagraphAnimation?: boolean;
123
- /** Apaasify / Schema 自定义渲染 */
124
65
  apaasify?: {
125
66
  enable?: boolean;
126
- /** 自定义渲染函数,接收解析后的 JSON value,返回 React 节点 */
127
67
  render?: (value: any) => React.ReactNode;
128
68
  };
129
- /**
130
- * FileMapView 配置,透传给 agentic-ui-filemap 代码块渲染器。
131
- * 可在 markdownRenderConfig 中统一配置图片 onPreview 和 itemRender。
132
- */
133
69
  fileMapConfig?: FileMapConfig;
134
- /**
135
- * 自定义元素渲染函数(markdown 渲染模式)
136
- * 与 Slate 模式的 eleItemRender 对应,允许拦截并替换任意块级/行内元素的渲染结果。
137
- * @param props - 元素属性(tagName、node、children 等)
138
- * @param defaultDom - 默认渲染结果
139
- * @returns 自定义渲染节点,或 undefined 时回退到 defaultDom
140
- */
70
+ /** 返回 undefined 回退默认渲染 */
141
71
  eleRender?: (props: MarkdownRendererEleProps, defaultDom: React.ReactNode) => React.ReactNode;
142
72
  }
143
73
  export interface MarkdownRendererRef {
144
- /** 获取渲染容器的 DOM 元素 */
145
74
  nativeElement: HTMLDivElement | null;
146
- /** 获取当前显示的内容 */
147
75
  getDisplayedContent: () => string;
148
76
  }
@@ -16,14 +16,5 @@ export declare enum StreamCacheTokenType {
16
16
  Table = "table",
17
17
  InlineCode = "inline-code"
18
18
  }
19
- /**
20
- * 流式 Markdown 缓存 hook。
21
- *
22
- * 逐字符扫描输入,识别不完整的 Markdown token(link、image、table、emphasis 等),
23
- * 将已完成的内容输出,不完整的部分暂缓,避免 parser 错误解析。
24
- *
25
- * @param input - 完整的 markdown 内容(持续增长)
26
- * @param enabled - 是否启用流式缓存(非流式直接透传)
27
- * @returns 安全的可解析 markdown 字符串
28
- */
19
+ /** 流式 token 缓存——暂缓不完整的 link/image/table 等,避免 parser 错误解析 */
29
20
  export declare const useStreaming: (input: string, enabled: boolean) => string;
@@ -303,16 +303,7 @@ var isInCodeBlock = function isInCodeBlock(text) {
303
303
  }
304
304
  return inFenced;
305
305
  };
306
- /**
307
- * 流式 Markdown 缓存 hook。
308
- *
309
- * 逐字符扫描输入,识别不完整的 Markdown token(link、image、table、emphasis 等),
310
- * 将已完成的内容输出,不完整的部分暂缓,避免 parser 错误解析。
311
- *
312
- * @param input - 完整的 markdown 内容(持续增长)
313
- * @param enabled - 是否启用流式缓存(非流式直接透传)
314
- * @returns 安全的可解析 markdown 字符串
315
- */ export var useStreaming = function useStreaming(input, enabled) {
306
+ /** 流式 token 缓存——暂缓不完整的 link/image/table 等,避免 parser 错误解析 */ export var useStreaming = function useStreaming(input, enabled) {
316
307
  var _useState = _sliced_to_array(useState(''), 2), output = _useState[0], setOutput = _useState[1];
317
308
  var cacheRef = useRef(getInitialCache());
318
309
  var processStreaming = useCallback(function(text) {
@@ -420,11 +411,12 @@ var isInCodeBlock = function isInCodeBlock(text) {
420
411
  cacheRef.current = getInitialCache();
421
412
  return;
422
413
  }
423
- if (enabled) {
424
- processStreaming(input);
425
- } else {
414
+ if (!enabled) {
426
415
  setOutput(input);
416
+ cacheRef.current = getInitialCache();
417
+ return;
427
418
  }
419
+ processStreaming(input);
428
420
  }, [
429
421
  input,
430
422
  enabled,
@@ -1,40 +1,6 @@
1
1
  import React from 'react';
2
2
  import { MarkdownEditorProps } from '../MarkdownEditor';
3
- /**
4
- * MarkdownEditorUpdate 组件 - Markdown 编辑器更新组件
5
- *
6
- * 该组件是对 MarkdownEditor 的封装,提供自动更新和格式化功能。
7
- * 主要用于在思维链中显示和更新 Markdown 内容。
8
- *
9
- * @component
10
- * @description Markdown 编辑器更新组件,提供自动更新和格式化功能
11
- * @param {MarkdownEditorProps & {isFinished?: boolean}} props - 组件属性
12
- * @param {boolean} [props.isFinished] - 内容是否已完成
13
- * @param {string} [props.initValue] - 初始内容
14
- * @param {boolean} [props.typewriter] - 是否启用打字机效果
15
- * @param {MarkdownEditorProps} props - 其他 MarkdownEditor 属性
16
- *
17
- * @example
18
- * ```tsx
19
- * import { MarkdownEditorUpdate } from './MarkdownEditor';
20
- *
21
- * <MarkdownEditorUpdate
22
- * initValue="# Hello World"
23
- * isFinished={true}
24
- * typewriter={false}
25
- * />
26
- * ```
27
- *
28
- * @returns {React.ReactElement} 渲染的 Markdown 编辑器组件
29
- *
30
- * @remarks
31
- * - 自动格式化 Markdown 内容
32
- * - 支持内容完成状态检测
33
- * - 提供打字机效果
34
- * - 只读模式
35
- * - 自动更新节点列表
36
- * - 响应式布局
37
- */
3
+ /** 思维链中的 MarkdownEditor 封装,自动格式化 + 流式更新 */
38
4
  export declare const MarkdownEditorUpdate: (props: MarkdownEditorProps & {
39
5
  isFinished?: boolean;
40
6
  }) => React.JSX.Element;
@@ -53,52 +53,13 @@ function _object_spread_props(target, source) {
53
53
  import React, { useEffect } from "react";
54
54
  import { MarkdownEditor, parserMdToSchema } from "../MarkdownEditor";
55
55
  import { MarkdownFormatter } from "../Plugins/formatter";
56
- /**
57
- * 将内容转换为列表格式的 Markdown
58
- * @param {string} content - 原始内容
59
- * @returns {string} 转换后的内容
60
- */ var toListMarkdown = function toListMarkdown(content) {
61
- return content;
62
- };
63
- /**
64
- * MarkdownEditorUpdate 组件 - Markdown 编辑器更新组件
65
- *
66
- * 该组件是对 MarkdownEditor 的封装,提供自动更新和格式化功能。
67
- * 主要用于在思维链中显示和更新 Markdown 内容。
68
- *
69
- * @component
70
- * @description Markdown 编辑器更新组件,提供自动更新和格式化功能
71
- * @param {MarkdownEditorProps & {isFinished?: boolean}} props - 组件属性
72
- * @param {boolean} [props.isFinished] - 内容是否已完成
73
- * @param {string} [props.initValue] - 初始内容
74
- * @param {boolean} [props.typewriter] - 是否启用打字机效果
75
- * @param {MarkdownEditorProps} props - 其他 MarkdownEditor 属性
76
- *
77
- * @example
78
- * ```tsx
79
- * import { MarkdownEditorUpdate } from './MarkdownEditor';
80
- *
81
- * <MarkdownEditorUpdate
82
- * initValue="# Hello World"
83
- * isFinished={true}
84
- * typewriter={false}
85
- * />
86
- * ```
87
- *
88
- * @returns {React.ReactElement} 渲染的 Markdown 编辑器组件
89
- *
90
- * @remarks
91
- * - 自动格式化 Markdown 内容
92
- * - 支持内容完成状态检测
93
- * - 提供打字机效果
94
- * - 只读模式
95
- * - 自动更新节点列表
96
- * - 响应式布局
97
- */ export var MarkdownEditorUpdate = function MarkdownEditorUpdate(props) {
56
+ /** 思维链中的 MarkdownEditor 封装,自动格式化 + 流式更新 */ export var MarkdownEditorUpdate = function MarkdownEditorUpdate(props) {
57
+ var _props_streaming;
98
58
  var editorRef = React.useRef();
99
59
  useEffect(function() {
100
60
  var _editorRef_current_store, _editorRef_current;
101
- (_editorRef_current = editorRef.current) === null || _editorRef_current === void 0 ? void 0 : (_editorRef_current_store = _editorRef_current.store) === null || _editorRef_current_store === void 0 ? void 0 : _editorRef_current_store.updateNodeList(parserMdToSchema(toListMarkdown(MarkdownFormatter.format(props.initValue || '') || '').trim(), props.plugins).schema);
61
+ var formatted = MarkdownFormatter.format(props.initValue || '') || '';
62
+ (_editorRef_current = editorRef.current) === null || _editorRef_current === void 0 ? void 0 : (_editorRef_current_store = _editorRef_current.store) === null || _editorRef_current_store === void 0 ? void 0 : _editorRef_current_store.updateNodeList(parserMdToSchema(formatted.trim(), props.plugins).schema);
102
63
  }, [
103
64
  props.initValue
104
65
  ]);
@@ -126,7 +87,7 @@ import { MarkdownFormatter } from "../Plugins/formatter";
126
87
  showLineNumbers: false
127
88
  }
128
89
  }, props), {
129
- typewriter: props.typewriter && !props.isFinished,
90
+ streaming: ((_props_streaming = props.streaming) !== null && _props_streaming !== void 0 ? _props_streaming : props.typewriter) && !props.isFinished,
130
91
  initValue: ""
131
92
  }));
132
93
  };
@@ -12,6 +12,9 @@ export interface RealtimeFollowData {
12
12
  title?: string;
13
13
  subTitle?: string;
14
14
  icon?: React.ComponentType;
15
+ /** 流式输出模式,同时传入时优先于 typewriter */
16
+ streaming?: boolean;
17
+ /** @deprecated 请使用 streaming */
15
18
  typewriter?: boolean;
16
19
  rightContent?: React.ReactNode;
17
20
  loadingRender?: React.ReactNode | (() => React.ReactNode);
@@ -268,7 +268,7 @@ var Overlay = function Overlay(param) {
268
268
  * ```
269
269
  */ export var RealtimeFollow = function RealtimeFollow(param) {
270
270
  var data = param.data, _param_htmlViewMode = param.htmlViewMode, htmlViewMode = _param_htmlViewMode === void 0 ? 'preview' : _param_htmlViewMode, prefixCls = param.prefixCls, hashId = param.hashId;
271
- var _data_typewriter, _data_content;
271
+ var _ref, _data_streaming, _data_content;
272
272
  var _data_markdownEditorProps;
273
273
  var getPrefixCls = useContext(ConfigProvider.ConfigContext).getPrefixCls;
274
274
  var finalPrefixCls = prefixCls || getPrefixCls('workspace-realtime');
@@ -282,13 +282,14 @@ var Overlay = function Overlay(param) {
282
282
  ]
283
283
  }), autoScrollRef = _useAutoScroll.containerRef, scrollToBottom = _useAutoScroll.scrollToBottom;
284
284
  useEffect(function() {
285
+ var _data_streaming;
285
286
  var _mdInstance_current;
286
287
  if (isTestEnv || !((_mdInstance_current = mdInstance.current) === null || _mdInstance_current === void 0 ? void 0 : _mdInstance_current.store)) return;
287
288
  if (!shouldUpdateEditor(data.type, htmlViewMode)) return;
288
289
  var content = getContentForEditor(data.type, data.content);
289
290
  var schema = parserMdToSchema(content, mdInstance.current.store.plugins).schema;
290
291
  mdInstance.current.store.updateNodeList(schema);
291
- if (data.typewriter && !isTestEnv) {
292
+ if (((_data_streaming = data.streaming) !== null && _data_streaming !== void 0 ? _data_streaming : data.typewriter) && !isTestEnv) {
292
293
  setTimeout(function() {
293
294
  return scrollToBottom();
294
295
  }, SCROLL_DELAY);
@@ -298,6 +299,7 @@ var Overlay = function Overlay(param) {
298
299
  data.type,
299
300
  htmlViewMode,
300
301
  isTestEnv,
302
+ data.streaming,
301
303
  data.typewriter,
302
304
  scrollToBottom
303
305
  ]);
@@ -338,7 +340,7 @@ var Overlay = function Overlay(param) {
338
340
  }
339
341
  var defaultProps = getEditorConfig(data.type);
340
342
  var mergedProps = _object_spread_props(_object_spread({}, defaultProps, data.markdownEditorProps), {
341
- typewriter: isTestEnv ? false : (_data_typewriter = data.typewriter) !== null && _data_typewriter !== void 0 ? _data_typewriter : defaultProps.typewriter,
343
+ streaming: isTestEnv ? false : (_ref = (_data_streaming = data.streaming) !== null && _data_streaming !== void 0 ? _data_streaming : data.typewriter) !== null && _ref !== void 0 ? _ref : defaultProps.typewriter,
342
344
  style: _object_spread({
343
345
  maxHeight: 'auto'
344
346
  }, defaultProps.style, (_data_markdownEditorProps = data.markdownEditorProps) === null || _data_markdownEditorProps === void 0 ? void 0 : _data_markdownEditorProps.style)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ant-design/agentic-ui",
3
- "version": "2.30.22",
3
+ "version": "2.30.24",
4
4
  "description": "面向智能体的 UI 组件库,提供多步推理可视化、工具调用展示、任务执行协同等 Agentic UI 能力",
5
5
  "repository": "git@github.com:ant-design/agentic-ui.git",
6
6
  "license": "MIT",
@@ -23,8 +23,8 @@
23
23
  "lint": "pnpm run lint:es && pnpm run lint:css",
24
24
  "lint:css": "stylelint \"{src,test}/**/*.{css,less}\"",
25
25
  "lint:es": "eslint \"{src,test}/**/*.{js,jsx,ts,tsx}\"",
26
+ "playwright:install": "playwright install --with-deps chromium",
26
27
  "prepare": "husky install && dumi setup",
27
- "prepublishOnly": "npm run build && npm run test",
28
28
  "prettier": "prettier --write \"{src,docs,test}/**/*.{js,jsx,ts,tsx,css,less,json,md}\"",
29
29
  "preview": "pnpm dumi preview",
30
30
  "report:demo": "node scripts/generateDemoReport.js",