@ant-design/agentic-ui 2.30.12 → 2.30.14
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/dist/Bubble/AIBubble.js +32 -18
- package/dist/Bubble/ContentFilemapView.d.ts +14 -0
- package/dist/Bubble/ContentFilemapView.js +95 -0
- package/dist/Bubble/MessagesContent/MarkdownPreview.js +3 -2
- package/dist/Bubble/UserBubble.js +48 -6
- package/dist/Bubble/extractFilemapBlocks.d.ts +17 -0
- package/dist/Bubble/extractFilemapBlocks.js +23 -0
- package/dist/Bubble/type.d.ts +3 -0
- package/dist/Hooks/useLanguage.d.ts +2 -0
- package/dist/I18n/locales.d.ts +2 -0
- package/dist/I18n/locales.js +5 -1
- package/dist/MarkdownEditor/editor/elements/AgenticUiBlocks/agenticUiEmbedUtils.d.ts +5 -1
- package/dist/MarkdownEditor/editor/elements/AgenticUiBlocks/agenticUiEmbedUtils.js +10 -2
- package/dist/MarkdownEditor/editor/elements/Code/index.js +22 -14
- package/dist/MarkdownEditor/editor/parser/constants.d.ts +10 -0
- package/dist/MarkdownEditor/editor/parser/constants.js +46 -0
- package/dist/MarkdownEditor/editor/parser/parserMarkdownToSlateNode.js +3 -1
- package/dist/MarkdownEditor/editor/parser/parserSlateNodeToMarkdown.js +11 -0
- package/dist/MarkdownEditor/editor/utils/markdownToHtml.js +6 -4
- package/dist/MarkdownEditor/types.d.ts +6 -0
- package/dist/MarkdownInputField/AttachmentButton/AttachmentFileList/AttachmentFileIcon.js +3 -1
- package/dist/MarkdownInputField/AttachmentButton/AttachmentFileList/AttachmentFileListItem.js +2 -2
- package/dist/MarkdownInputField/AttachmentButton/AttachmentFileList/index.js +6 -1
- package/dist/MarkdownInputField/AttachmentButton/AttachmentFileList/style.js +11 -1
- package/dist/MarkdownInputField/AttachmentButton/index.d.ts +12 -0
- package/dist/MarkdownInputField/AttachmentButton/index.js +23 -13
- package/dist/MarkdownInputField/FileMapView/FileMapViewItem.js +20 -1
- package/dist/MarkdownInputField/FileMapView/index.d.ts +13 -1
- package/dist/MarkdownInputField/FileMapView/index.js +57 -18
- package/dist/MarkdownInputField/FileMapView/style.js +6 -0
- package/dist/MarkdownInputField/FileUploadManager/index.js +4 -26
- package/dist/MarkdownInputField/style.js +7 -0
- package/dist/MarkdownRenderer/MarkdownRenderer.js +10 -6
- package/dist/MarkdownRenderer/index.d.ts +1 -1
- package/dist/MarkdownRenderer/renderers/AgenticUiFileMapBlockRenderer.d.ts +4 -2
- package/dist/MarkdownRenderer/renderers/AgenticUiFileMapBlockRenderer.js +47 -5
- package/dist/MarkdownRenderer/renderers/ChartRenderer.js +9 -0
- package/dist/MarkdownRenderer/streaming/useStreamingMarkdownReact.js +2 -2
- package/dist/MarkdownRenderer/types.d.ts +45 -2
- package/dist/MarkdownRenderer/useMarkdownToReact.js +2 -2
- package/dist/Plugins/chart/ChartRender.js +30 -9
- package/dist/Plugins/chart/DonutChart/index.js +21 -7
- package/dist/Plugins/chart/HistogramChart/index.d.ts +5 -1
- package/dist/Plugins/chart/HistogramChart/index.js +79 -12
- package/dist/Plugins/chart/ScatterChart/index.d.ts +8 -0
- package/dist/Plugins/chart/ScatterChart/index.js +78 -8
- package/dist/Plugins/chart/components/ChartContainer/ChartErrorBoundary.d.ts +4 -0
- package/dist/Plugins/code/components/AceEditor.js +69 -8
- package/dist/Plugins/code/components/CodeRenderer.js +0 -1
- package/dist/Workspace/Browser/index.js +3 -1
- package/package.json +1 -1
|
@@ -305,6 +305,8 @@ import { loadAceEditor, loadAceTheme } from "../loadAceEditor";
|
|
|
305
305
|
var debounceTimer = useRef(0);
|
|
306
306
|
var editorRef = useRef();
|
|
307
307
|
var dom = useRef(null);
|
|
308
|
+
// 记录 Ace 会话当前使用的语言,用于语言变更时动态切换而不是销毁重建
|
|
309
|
+
var aceLanguageRef = useRef(element.language);
|
|
308
310
|
// Ace Editor 异步加载状态
|
|
309
311
|
var _useState = _sliced_to_array(useState(false), 2), aceLoaded = _useState[0], setAceLoaded = _useState[1];
|
|
310
312
|
var aceModuleRef = useRef(null);
|
|
@@ -493,6 +495,8 @@ import { loadAceEditor, loadAceTheme } from "../loadAceEditor";
|
|
|
493
495
|
// 初始化 Ace 编辑器(仅在库加载完成后)
|
|
494
496
|
// 注意: intentionally 不将 editorProps.codeProps 列入依赖,因其对象引用在父组件内容更新时会频繁变化,
|
|
495
497
|
// 导致编辑器被不必要地销毁重建。codeProps 的配置在初始化时已应用,主题等动态变更由独立 effect 处理。
|
|
498
|
+
// element.language 同样不列为依赖,语言切换由独立的 effect 处理,避免流式渲染中 language
|
|
499
|
+
// 逐字符变化时触发编辑器销毁重建。
|
|
496
500
|
useEffect(function() {
|
|
497
501
|
if (process.env.NODE_ENV === 'test') return;
|
|
498
502
|
if (!aceLoaded || !aceModuleRef.current || !dom.current) return;
|
|
@@ -521,6 +525,7 @@ import { loadAceEditor, loadAceTheme } from "../loadAceEditor";
|
|
|
521
525
|
showGutter: true
|
|
522
526
|
}, codeProps));
|
|
523
527
|
editorRef.current = codeEditor;
|
|
528
|
+
aceLanguageRef.current = element.language;
|
|
524
529
|
// 设置主题
|
|
525
530
|
var theme = codeProps.theme || props.theme || 'github';
|
|
526
531
|
codeEditor.setTheme("ace/theme/".concat(theme));
|
|
@@ -551,19 +556,59 @@ import { loadAceEditor, loadAceTheme } from "../loadAceEditor";
|
|
|
551
556
|
});
|
|
552
557
|
})();
|
|
553
558
|
}, 16);
|
|
554
|
-
if (readonly)
|
|
555
|
-
|
|
556
|
-
|
|
559
|
+
if (!readonly) {
|
|
560
|
+
// 配置编辑器事件
|
|
561
|
+
setupEditorEvents(codeEditor);
|
|
562
|
+
}
|
|
557
563
|
return function() {
|
|
558
564
|
clearTimeout(debounceTimer.current);
|
|
559
565
|
codeEditor.destroy();
|
|
560
566
|
};
|
|
567
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
561
568
|
}, [
|
|
562
569
|
aceLoaded,
|
|
563
|
-
element.language,
|
|
564
570
|
readonly,
|
|
565
571
|
setupEditorEvents
|
|
566
572
|
]);
|
|
573
|
+
// 语言切换时动态更新 Ace 会话模式,无需销毁重建编辑器
|
|
574
|
+
useEffect(function() {
|
|
575
|
+
if (!editorRef.current || !aceLoaded) return;
|
|
576
|
+
if (aceLanguageRef.current === element.language) return;
|
|
577
|
+
aceLanguageRef.current = element.language;
|
|
578
|
+
(function() {
|
|
579
|
+
return _async_to_generator(function() {
|
|
580
|
+
var lang, aceLangs, _editorRef_current, _editorRef_current1;
|
|
581
|
+
return _ts_generator(this, function(_state) {
|
|
582
|
+
switch(_state.label){
|
|
583
|
+
case 0:
|
|
584
|
+
lang = element.language || '';
|
|
585
|
+
if (modeMap.has(lang)) {
|
|
586
|
+
lang = modeMap.get(lang);
|
|
587
|
+
}
|
|
588
|
+
return [
|
|
589
|
+
4,
|
|
590
|
+
getAceLangs()
|
|
591
|
+
];
|
|
592
|
+
case 1:
|
|
593
|
+
aceLangs = _state.sent();
|
|
594
|
+
if (aceLangs.has(lang)) {
|
|
595
|
+
;
|
|
596
|
+
(_editorRef_current = editorRef.current) === null || _editorRef_current === void 0 ? void 0 : _editorRef_current.session.setMode("ace/mode/".concat(lang));
|
|
597
|
+
} else {
|
|
598
|
+
;
|
|
599
|
+
(_editorRef_current1 = editorRef.current) === null || _editorRef_current1 === void 0 ? void 0 : _editorRef_current1.session.setMode("ace/mode/text");
|
|
600
|
+
}
|
|
601
|
+
return [
|
|
602
|
+
2
|
|
603
|
+
];
|
|
604
|
+
}
|
|
605
|
+
});
|
|
606
|
+
})();
|
|
607
|
+
})();
|
|
608
|
+
}, [
|
|
609
|
+
element.language,
|
|
610
|
+
aceLoaded
|
|
611
|
+
]);
|
|
567
612
|
// 监听外部值变化
|
|
568
613
|
useEffect(function() {
|
|
569
614
|
var value = element.value || '';
|
|
@@ -572,10 +617,26 @@ import { loadAceEditor, loadAceTheme } from "../loadAceEditor";
|
|
|
572
617
|
value = JSON.stringify(partialParse(value), null, 2);
|
|
573
618
|
} catch (e) {}
|
|
574
619
|
}
|
|
575
|
-
if (value
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
620
|
+
if (value === codeRef.current) return;
|
|
621
|
+
var editor = editorRef.current;
|
|
622
|
+
var prev = codeRef.current;
|
|
623
|
+
codeRef.current = value;
|
|
624
|
+
if (!editor) return;
|
|
625
|
+
// 流式渲染时内容只会在末尾追加。通过检测 value.startsWith(prev) 来判断是否为纯追加,
|
|
626
|
+
// 若是则调用 session.insert 在末尾插入增量内容,避免 setValue 清空重写导致的闪动。
|
|
627
|
+
var isAppend = value.startsWith(prev);
|
|
628
|
+
if (isAppend) {
|
|
629
|
+
var delta = value.slice(prev.length);
|
|
630
|
+
var doc = editor.session.getDocument();
|
|
631
|
+
var lastRow = doc.getLength() - 1;
|
|
632
|
+
var lastCol = doc.getLine(lastRow).length;
|
|
633
|
+
editor.session.insert({
|
|
634
|
+
row: lastRow,
|
|
635
|
+
column: lastCol
|
|
636
|
+
}, delta);
|
|
637
|
+
} else {
|
|
638
|
+
editor.setValue(value);
|
|
639
|
+
editor.clearSelection();
|
|
579
640
|
}
|
|
580
641
|
}, [
|
|
581
642
|
element.value
|
|
@@ -346,7 +346,6 @@ import { AceEditor, AceEditorContainer, CodeContainer, CodeToolbar, HtmlPreview,
|
|
|
346
346
|
props.children,
|
|
347
347
|
state.showBorder,
|
|
348
348
|
state.hide,
|
|
349
|
-
state.htmlStr,
|
|
350
349
|
isSelected,
|
|
351
350
|
(_editorProps_codeProps1 = editorProps.codeProps) === null || _editorProps_codeProps1 === void 0 ? void 0 : _editorProps_codeProps1.hideToolBar,
|
|
352
351
|
(_editorProps_codeProps2 = editorProps.codeProps) === null || _editorProps_codeProps2 === void 0 ? void 0 : _editorProps_codeProps2.disableHtmlPreview,
|
|
@@ -151,14 +151,16 @@ export var BrowserItemComponent = function BrowserItemComponent(param) {
|
|
|
151
151
|
var _useBrowserContext = useBrowserContext(), prefixCls = _useBrowserContext.prefixCls, wrapSSR = _useBrowserContext.wrapSSR, hashId = _useBrowserContext.hashId;
|
|
152
152
|
var locale = useContext(I18nContext).locale;
|
|
153
153
|
var handleOpen = function handleOpen(e) {
|
|
154
|
+
e.preventDefault();
|
|
155
|
+
e.stopPropagation();
|
|
154
156
|
if (onOpen) {
|
|
155
|
-
e.preventDefault();
|
|
156
157
|
onOpen(item);
|
|
157
158
|
return;
|
|
158
159
|
}
|
|
159
160
|
window.open(item.url, '_blank', 'noopener,noreferrer');
|
|
160
161
|
};
|
|
161
162
|
var handleLocate = function handleLocate(e) {
|
|
163
|
+
e.preventDefault();
|
|
162
164
|
e.stopPropagation();
|
|
163
165
|
onLocate === null || onLocate === void 0 ? void 0 : onLocate(item);
|
|
164
166
|
};
|