paul-ai-assistant 1.0.2 → 1.0.4

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 (213) hide show
  1. package/dist/6254.async.js +490 -490
  2. package/dist/7084.async.js +247 -0
  3. package/dist/customer-service-typewriter/index.html +44 -0
  4. package/dist/demos.async.js +384 -10
  5. package/dist/demos__customerServiceTypewriter__index.md.async.js +2 -0
  6. package/dist/dumi__tmp-production__dumi__theme__ContextWrapper.async.js +1 -1
  7. package/dist/meta__demos.async.js +1601 -1
  8. package/dist/meta__docs.async.js +29 -28
  9. package/dist/preload_helper.js +1 -1
  10. package/dist/umi.js +47 -47
  11. package/dist/~demos/demos-customer-service-typewriter-demo-customer-service-demo/index.html +44 -0
  12. package/dist/~demos/demos-customer-service-typewriter-demo-smart-scroll-demo/index.html +44 -0
  13. package/es/AssistantChat/AssistantChatApp/const.js +1 -1
  14. package/es/AssistantChat/AssistantChatApp/index.js +1 -1
  15. package/es/AssistantChat/AssistantChatCard/AgentCardRender/component/TraceComponent.js +4 -4
  16. package/es/AssistantChat/AssistantChatCard/AgentCardRender/index.js +4 -5
  17. package/es/AssistantChat/AssistantChatCard/LlmGenerateCard/index.js +2 -2
  18. package/es/AssistantChat/AssistantChatCard/LlmGenerateCardV5/index.js +1 -1
  19. package/es/AssistantChat/AssistantChatCard/OperationCard/Copy/index.js +1 -1
  20. package/es/AssistantChat/AssistantChatCard/OperationCard/CopyRequestId/index.js +1 -1
  21. package/es/AssistantChat/AssistantChatCard/OperationCard/FeedBack/index.js +2 -2
  22. package/es/AssistantChat/AssistantChatCard/OperationCard/ShareButton/index.js +1 -1
  23. package/es/AssistantChat/AssistantChatCard/OperationCard/index.js +1 -1
  24. package/es/AssistantChat/AssistantChatCard/UserQueryCardRender/AttachmentsRender.js +4 -4
  25. package/es/AssistantChat/AssistantChatCard/UserQueryCardRender/ImageRender.js +6 -6
  26. package/es/AssistantChat/AssistantChatInput/index.js +7 -5
  27. package/es/common/registerAssistChatForm.js +8 -5
  28. package/es/components/AgentCardSubmit/index.js +1 -2
  29. package/es/components/AgentResult/index.js +1 -1
  30. package/es/components/AgentSchemaForm/ScreenshotView.js +1 -1
  31. package/es/components/AgentSchemaForm/index.js +5 -5
  32. package/es/components/ArrayInput/index.js +1 -1
  33. package/es/components/InspectionCard/index.js +1 -1
  34. package/es/components/LlmMarkDown/MdAmarkGuess/index.js +1 -1
  35. package/es/components/LlmMarkDown/MdAmarkReference/index.js +3 -3
  36. package/es/components/LlmMarkDown/index.js +1 -1
  37. package/es/components/LlmModelChange/index.js +2 -2
  38. package/es/components/LlmReference/index.js +9 -9
  39. package/es/components/LlmTraceComponents/Disassemble/index.js +2 -2
  40. package/es/components/LlmTraceComponents/Rewrite/index.js +2 -2
  41. package/es/components/MarkDown/index.js +42 -13
  42. package/es/components/ModelSelect/ModeDropdown.js +1 -1
  43. package/es/components/ModelSelect/const.js +3 -3
  44. package/es/components/PaulButtonGroup/Select.js +2 -2
  45. package/es/components/PaulButtonGroup/index.js +2 -2
  46. package/es/components/PopAuth/index.js +2 -2
  47. package/es/components/SchemaInput/SchemaInputCore/index.js +1 -1
  48. package/es/components/SchemaInput/SimpleJSONEditor/index.js +1 -1
  49. package/es/components/SelectBlurry/index.js +2 -2
  50. package/es/components/ShareModal/index.js +2 -2
  51. package/es/components/ShareOperationBar/index.js +2 -2
  52. package/es/components/TextContent/index.js +3 -3
  53. package/es/components/TraceWithAgent/index.js +4 -9
  54. package/es/context/index.js +2 -1
  55. package/es/context/utils/messages.js +2 -2
  56. package/es/context/utils/send.js +3 -3
  57. package/es/context/utils/tool.js +2 -2
  58. package/es/utils/CSEIconTool.js +1 -1
  59. package/es/utils/apushAssistant.js +2 -3
  60. package/es/utils/clientPlugin.js +1 -1
  61. package/es/utils/common.js +17 -0
  62. package/es/utils/event.js +87 -0
  63. package/es/utils/formDataFormat.js +1 -1
  64. package/es/utils/formatData.js +1 -1
  65. package/es/utils/helpers.js +78 -0
  66. package/es/utils/log.js +1 -1
  67. package/es/utils/request.js +74 -0
  68. package/es/utils/send.js +1 -1
  69. package/es/utils/uploadImage.js +1 -1
  70. package/package.json +6 -19
  71. package/dist/2517.async.js +0 -247
  72. package/es/AssistantChat/AssistantChatApp/CardMatchRender/index.d.ts +0 -8
  73. package/es/AssistantChat/AssistantChatApp/OperationMatchRender/index.d.ts +0 -9
  74. package/es/AssistantChat/AssistantChatApp/const.d.ts +0 -51
  75. package/es/AssistantChat/AssistantChatApp/index.d.ts +0 -4
  76. package/es/AssistantChat/AssistantChatCard/AgentCardRender/TemplateCard.d.ts +0 -3
  77. package/es/AssistantChat/AssistantChatCard/AgentCardRender/common/types.d.ts +0 -3
  78. package/es/AssistantChat/AssistantChatCard/AgentCardRender/component/TemplateHeader.d.ts +0 -5
  79. package/es/AssistantChat/AssistantChatCard/AgentCardRender/component/TemplateHtml.d.ts +0 -7
  80. package/es/AssistantChat/AssistantChatCard/AgentCardRender/component/TemplateParagraph.d.ts +0 -3
  81. package/es/AssistantChat/AssistantChatCard/AgentCardRender/component/TemplateTitle.d.ts +0 -3
  82. package/es/AssistantChat/AssistantChatCard/AgentCardRender/component/TraceComponent.d.ts +0 -3
  83. package/es/AssistantChat/AssistantChatCard/AgentCardRender/context/index.d.ts +0 -29
  84. package/es/AssistantChat/AssistantChatCard/AgentCardRender/index.d.ts +0 -4
  85. package/es/AssistantChat/AssistantChatCard/AgentCardRender/utils.d.ts +0 -2
  86. package/es/AssistantChat/AssistantChatCard/AgentCommonCard/index.d.ts +0 -4
  87. package/es/AssistantChat/AssistantChatCard/AgentExecutionCard/index.d.ts +0 -16
  88. package/es/AssistantChat/AssistantChatCard/LlmGenerateCard/index.d.ts +0 -14
  89. package/es/AssistantChat/AssistantChatCard/LlmGenerateCardV5/index.d.ts +0 -78
  90. package/es/AssistantChat/AssistantChatCard/OperationCard/AigcTipsRender/index.d.ts +0 -7
  91. package/es/AssistantChat/AssistantChatCard/OperationCard/Copy/index.d.ts +0 -7
  92. package/es/AssistantChat/AssistantChatCard/OperationCard/CopyRequestId/index.d.ts +0 -3
  93. package/es/AssistantChat/AssistantChatCard/OperationCard/FeedBack/index.d.ts +0 -11
  94. package/es/AssistantChat/AssistantChatCard/OperationCard/ShareButton/index.d.ts +0 -3
  95. package/es/AssistantChat/AssistantChatCard/OperationCard/index.d.ts +0 -4
  96. package/es/AssistantChat/AssistantChatCard/UserQueryCardRender/AttachmentsRender.d.ts +0 -21
  97. package/es/AssistantChat/AssistantChatCard/UserQueryCardRender/ImageRender.d.ts +0 -7
  98. package/es/AssistantChat/AssistantChatCard/UserQueryCardRender/index.d.ts +0 -8
  99. package/es/AssistantChat/AssistantChatCard/index.d.ts +0 -5
  100. package/es/AssistantChat/AssistantChatInput/index.d.ts +0 -5
  101. package/es/AssistantChat/AssistantToolApp/const.d.ts +0 -12
  102. package/es/AssistantChat/AssistantToolApp/index.d.ts +0 -4
  103. package/es/AssistantChat/AssistantToolExecutionApp/const.d.ts +0 -7
  104. package/es/AssistantChat/AssistantToolExecutionApp/index.d.ts +0 -4
  105. package/es/AssistantChat/AssistentError/index.d.ts +0 -5
  106. package/es/AssistantChat/index.d.ts +0 -6
  107. package/es/AssistantChat/logCallback/aTagLog.d.ts +0 -1
  108. package/es/AssistantChat/logCallback/copyLog.d.ts +0 -3
  109. package/es/ErrorBoundary/ErrorBoundaryFallback/index.d.ts +0 -5
  110. package/es/ErrorBoundary/index.d.ts +0 -22
  111. package/es/common/registerAssistChatForm.d.ts +0 -2
  112. package/es/components/AgentCardSubmit/index.d.ts +0 -20
  113. package/es/components/AgentResult/index.d.ts +0 -8
  114. package/es/components/AgentSchemaForm/ScreenshotView.d.ts +0 -12
  115. package/es/components/AgentSchemaForm/_interface.d.ts +0 -37
  116. package/es/components/AgentSchemaForm/index.d.ts +0 -9
  117. package/es/components/AgentText/index.d.ts +0 -4
  118. package/es/components/AigcTips/index.d.ts +0 -9
  119. package/es/components/ArrayInput/index.d.ts +0 -3
  120. package/es/components/AssistantDrawer/index.d.ts +0 -22
  121. package/es/components/EmptyIcon/index.d.ts +0 -3
  122. package/es/components/HeaderSvgIcon/index.d.ts +0 -3
  123. package/es/components/InspectionCard/index.d.ts +0 -66
  124. package/es/components/InspectionCard/result.d.ts +0 -13
  125. package/es/components/LlmMarkDown/MdAmarkGuess/index.d.ts +0 -16
  126. package/es/components/LlmMarkDown/MdAmarkReference/index.d.ts +0 -21
  127. package/es/components/LlmMarkDown/index.d.ts +0 -30
  128. package/es/components/LlmModelChange/index.d.ts +0 -57
  129. package/es/components/LlmReference/index.d.ts +0 -25
  130. package/es/components/LlmTitle/index.d.ts +0 -14
  131. package/es/components/LlmTrace/index.d.ts +0 -17
  132. package/es/components/LlmTraceComponents/Disassemble/index.d.ts +0 -24
  133. package/es/components/LlmTraceComponents/ReadResource/index.d.ts +0 -24
  134. package/es/components/LlmTraceComponents/Rewrite/index.d.ts +0 -23
  135. package/es/components/LlmTraceComponents/TraceMarkDown/index.d.ts +0 -22
  136. package/es/components/LlmTraceComponents/const.d.ts +0 -25
  137. package/es/components/LlmTraceV2/index.d.ts +0 -56
  138. package/es/components/LlmTraceV3/components/TraceContentComponents/BusinessFlow/index.d.ts +0 -13
  139. package/es/components/LlmTraceV3/components/TraceContentComponents/CodeBlock/index.d.ts +0 -18
  140. package/es/components/LlmTraceV3/components/TraceContentComponents/DeepThinking/index.d.ts +0 -13
  141. package/es/components/LlmTraceV3/components/TraceContentComponents/InfoMissing/index.d.ts +0 -13
  142. package/es/components/LlmTraceV3/components/TraceContentComponents/LinkList/index.d.ts +0 -20
  143. package/es/components/LlmTraceV3/components/TraceContentComponents/SearchResults/index.d.ts +0 -13
  144. package/es/components/LlmTraceV3/components/TraceContentComponents/TaskPlanning/index.d.ts +0 -12
  145. package/es/components/LlmTraceV3/components/TraceContentComponents/ToolCall/index.d.ts +0 -13
  146. package/es/components/LlmTraceV3/components/TraceContentComponents/ToolResult/index.d.ts +0 -13
  147. package/es/components/LlmTraceV3/components/TraceContentComponents/const.d.ts +0 -32
  148. package/es/components/LlmTraceV3/components/TraceGroup/index.d.ts +0 -8
  149. package/es/components/LlmTraceV3/components/TraceHeader/index.d.ts +0 -8
  150. package/es/components/LlmTraceV3/components/TraceItem/index.d.ts +0 -8
  151. package/es/components/LlmTraceV3/components/TraceSlide/index.d.ts +0 -30
  152. package/es/components/LlmTraceV3/components/TraceStatusIcon/index.d.ts +0 -8
  153. package/es/components/LlmTraceV3/hooks/useGroupCollapse.d.ts +0 -18
  154. package/es/components/LlmTraceV3/hooks/useItemCollapse.d.ts +0 -18
  155. package/es/components/LlmTraceV3/hooks/useTraceAnimation.d.ts +0 -15
  156. package/es/components/LlmTraceV3/hooks/useTraceCollapse.d.ts +0 -17
  157. package/es/components/LlmTraceV3/index.d.ts +0 -11
  158. package/es/components/LlmTraceV3/types.d.ts +0 -263
  159. package/es/components/LlmTraceV3/utils/collapseLogic.d.ts +0 -26
  160. package/es/components/LlmTraceV3/utils/traceHelpers.d.ts +0 -42
  161. package/es/components/MarkDown/index.d.ts +0 -11
  162. package/es/components/ModelSelect/ModeDropdown.d.ts +0 -8
  163. package/es/components/ModelSelect/const.d.ts +0 -30
  164. package/es/components/ModelSelect/index.d.ts +0 -4
  165. package/es/components/PaulButtonGroup/Select.d.ts +0 -3
  166. package/es/components/PaulButtonGroup/index.d.ts +0 -16
  167. package/es/components/PopAuth/index.d.ts +0 -4
  168. package/es/components/ReferenceInfoItem/index.d.ts +0 -49
  169. package/es/components/ReferenceTag/index.d.ts +0 -11
  170. package/es/components/SchemaInput/SchemaInputCore/index.d.ts +0 -4
  171. package/es/components/SchemaInput/SchemaInputCore/utils.d.ts +0 -1
  172. package/es/components/SchemaInput/SimpleJSONEditor/index.d.ts +0 -4
  173. package/es/components/SchemaInput/index.d.ts +0 -8
  174. package/es/components/SelectBlurry/index.d.ts +0 -3
  175. package/es/components/SendMessageSvgIcon/index.d.ts +0 -3
  176. package/es/components/ShareContent/index.d.ts +0 -21
  177. package/es/components/ShareModal/index.d.ts +0 -15
  178. package/es/components/ShareOperationBar/index.d.ts +0 -4
  179. package/es/components/TextContent/index.d.ts +0 -14
  180. package/es/components/TraceMarkdownWithCard/index.d.ts +0 -6
  181. package/es/components/TraceWithAgent/index.d.ts +0 -23
  182. package/es/constants/assistChatEvent.d.ts +0 -33
  183. package/es/constants/common.d.ts +0 -71
  184. package/es/constants/logTrace.d.ts +0 -3
  185. package/es/constants/reference.d.ts +0 -109
  186. package/es/constants/traceDataStatus.d.ts +0 -34
  187. package/es/context/index.d.ts +0 -13
  188. package/es/context/utils/messages.d.ts +0 -33
  189. package/es/context/utils/send.d.ts +0 -29
  190. package/es/context/utils/tool.d.ts +0 -19
  191. package/es/index.d.ts +0 -37
  192. package/es/interface/IAgent.d.ts +0 -12
  193. package/es/interface/IChatBottom.d.ts +0 -69
  194. package/es/interface/IChatCard.d.ts +0 -40
  195. package/es/interface/IChatContext.d.ts +0 -59
  196. package/es/interface/IChatRef.d.ts +0 -75
  197. package/es/interface/IGuessQuestion.d.ts +0 -43
  198. package/es/interface/IMessage.d.ts +0 -17
  199. package/es/interface/ISend.d.ts +0 -19
  200. package/es/interface/index.d.ts +0 -272
  201. package/es/utils/CSEIconTool.d.ts +0 -8
  202. package/es/utils/apushAssistant.d.ts +0 -73
  203. package/es/utils/clientPlugin.d.ts +0 -3
  204. package/es/utils/common.d.ts +0 -10
  205. package/es/utils/copyToClipboard.d.ts +0 -2
  206. package/es/utils/formDataFormat.d.ts +0 -3
  207. package/es/utils/formatData.d.ts +0 -14
  208. package/es/utils/log.d.ts +0 -18
  209. package/es/utils/parseUrl.d.ts +0 -9
  210. package/es/utils/screenshot.d.ts +0 -45
  211. package/es/utils/send.d.ts +0 -10
  212. package/es/utils/uploadImage.d.ts +0 -9
  213. package/es/utils/websocketLogger.d.ts +0 -176
@@ -1,4 +1,5 @@
1
- "use strict";(self.webpackChunk_alife_paul_ai_assistant=self.webpackChunk_alife_paul_ai_assistant||[]).push([[669],{60855:function(t,e,n){n.r(e),n.d(e,{demos:function(){return r}});var o=n(1024),a=n.n(o),r={}},72457:function(t,e,n){n.r(e),n.d(e,{demos:function(){return r}});var o=n(1024),a=n.n(o),r={"demos-markdown-latex-mermaid-demo-markdown-latex-mermaid":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(2517),n.e(2433)]).then(n.bind(n,42473))})),asset:{type:"BLOCK",id:"demos-markdown-latex-mermaid-demo-markdown-latex-mermaid",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(57782).Z},react:{type:"NPM",value:"16.14.0"},"./index.scss":{type:"FILE",value:n(77526).Z},"../../src/components/MarkDown.tsx":{type:"FILE",value:n(12485).Z},"./data.ts":{type:"FILE",value:n(19783).Z},"@alife/goc-utils":{type:"NPM",value:"1.36.0"},"@alife/magic-chat-ui":{type:"NPM",value:"3.20.1"},katex:{type:"NPM",value:"0.16.25"},mermaid:{type:"NPM",value:"11.12.1"},"rehype-highlight":{type:"NPM",value:"6.0.0"},"rehype-katex":{type:"NPM",value:"6.0.3"},"rehype-raw":{type:"NPM",value:"6.1.1"},"remark-gfm":{type:"NPM",value:"3.0.1"},"remark-math":{type:"NPM",value:"5.1.1"}},entry:"index.tsx"},context:void 0,renderOpts:void 0}}},50639:function(t,e,n){n.r(e),n.d(e,{demos:function(){return r}});var o=n(1024),a=n.n(o),r={"demos-tool-chat-type-demo-toolchattype":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(2517),n.e(2433)]).then(n.bind(n,91090))})),asset:{type:"BLOCK",id:"demos-tool-chat-type-demo-toolchattype",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(82299).Z},"@alife/paul-ai-assistant":{type:"NPM",value:"0.1.16"},"./data.ts":{type:"FILE",value:n(4453).Z},"../config.tsx":{type:"FILE",value:n(23730).Z},axios:{type:"NPM",value:"0.21.4"}},entry:"index.tsx"},context:void 0,renderOpts:void 0},"demos-tool-chat-type-demo-chat-input-demo":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(2517),n.e(2433)]).then(n.bind(n,25248))})),asset:{type:"BLOCK",id:"demos-tool-chat-type-demo-chat-input-demo",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(11633).Z},react:{type:"NPM",value:"16.14.0"},"@alife/magic-basic":{type:"NPM",value:"4.2.11"},"@alife/paul-ai-assistant":{type:"NPM",value:"0.1.16"},"../config.tsx":{type:"FILE",value:n(23730).Z},axios:{type:"NPM",value:"0.21.4"}},entry:"index.tsx"},context:void 0,renderOpts:void 0},"demos-tool-chat-type-demo-chat-list-demo":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(2517),n.e(2433)]).then(n.bind(n,54115))})),asset:{type:"BLOCK",id:"demos-tool-chat-type-demo-chat-list-demo",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(89).Z},react:{type:"NPM",value:"16.14.0"},"@alife/magic-basic":{type:"NPM",value:"4.2.11"},"@alife/paul-ai-assistant":{type:"NPM",value:"0.1.16"},"./data.ts":{type:"FILE",value:n(4453).Z},"../config.tsx":{type:"FILE",value:n(23730).Z},axios:{type:"NPM",value:"0.21.4"}},entry:"index.tsx"},context:void 0,renderOpts:void 0},"demos-tool-chat-type-demo-chat-scenario-demo":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(2517),n.e(2433)]).then(n.bind(n,94885))})),asset:{type:"BLOCK",id:"demos-tool-chat-type-demo-chat-scenario-demo",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(88321).Z},react:{type:"NPM",value:"16.14.0"},"@alife/magic-basic":{type:"NPM",value:"4.2.11"},"@alife/paul-ai-assistant":{type:"NPM",value:"0.1.16"},"../config.tsx":{type:"FILE",value:n(23730).Z},axios:{type:"NPM",value:"0.21.4"}},entry:"index.tsx"},context:void 0,renderOpts:void 0},"demos-tool-chat-type-demo-schema-input":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(2517),n.e(2433)]).then(n.bind(n,14663))})),asset:{type:"BLOCK",id:"demos-tool-chat-type-demo-schema-input",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(22516).Z},react:{type:"NPM",value:"16.14.0"},"@alife/magic-basic":{type:"NPM",value:"4.2.11"},"@alife/paul-ai-assistant":{type:"NPM",value:"0.1.16"}},entry:"index.tsx"},context:void 0,renderOpts:void 0},"demos-tool-chat-type-demo-assistant-drawer":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(2517),n.e(2433)]).then(n.bind(n,25578))})),asset:{type:"BLOCK",id:"demos-tool-chat-type-demo-assistant-drawer",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(53925).Z},react:{type:"NPM",value:"16.14.0"},"@alife/magic-basic":{type:"NPM",value:"4.2.11"},"@alife/paul-ai-assistant":{type:"NPM",value:"0.1.16"}},entry:"index.tsx"},context:void 0,renderOpts:void 0},"demos-tool-chat-type-demo-agentschemaformdemo":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(2517),n.e(2433)]).then(n.bind(n,97005))})),asset:{type:"BLOCK",id:"demos-tool-chat-type-demo-agentschemaformdemo",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(93649).Z},react:{type:"NPM",value:"16.14.0"},"../src/components/AgentSchemaForm.tsx":{type:"FILE",value:n(32772).Z},"@alife/magic-pro":{type:"NPM",value:"2.5.27"},"../../ErrorBoundary.tsx":{type:"FILE",value:n(23566).Z},"../../AssistantChat/AssistentError.tsx":{type:"FILE",value:n(55919).Z},"../../utils/formDataFormat.ts":{type:"FILE",value:n(46825).Z},"../../utils/formatData.tsx":{type:"FILE",value:n(69139).Z},"../../utils/log.ts":{type:"FILE",value:n(26678).Z},"../PaulButtonGroup.tsx":{type:"FILE",value:n(16913).Z},"./index.scss":{type:"FILE",value:n(30725).Z},"../AgentCardSubmit.tsx":{type:"FILE",value:n(90550).Z},"./_interface.ts":{type:"FILE",value:n(32669).Z},"../AgentText.tsx":{type:"FILE",value:n(33810).Z},"./ScreenshotView.tsx":{type:"FILE",value:n(48256).Z},"@alife/goc-utils":{type:"NPM",value:"1.36.0"},moment:{type:"NPM",value:"2.30.1"},"@alife/magic-basic":{type:"NPM",value:"4.2.11"},"@alife/magic-request":{type:"NPM",value:"2.5.9"},"./ErrorBoundaryFallback.tsx":{type:"FILE",value:n(3864).Z},"@formily/antd":{type:"NPM",value:"1.3.17"},"@alife/paul-ai-assistant":{type:"NPM",value:"0.1.16"},"../../constants/common.tsx":{type:"FILE",value:n(4202).Z},"./Select.tsx":{type:"FILE",value:n(66507).Z},"../../utils/CSEIconTool.tsx":{type:"FILE",value:n(39374).Z},"./ScreenshotView.scss":{type:"FILE",value:n(43828).Z},"@alife/magic-icons":{type:"NPM",value:"2.3.13"},ahooks:{type:"NPM",value:"3.9.5"},lodash:{type:"NPM",value:"4.17.21"}},entry:"index.tsx"},context:void 0,renderOpts:void 0}}},62748:function(t,e,n){n.r(e),n.d(e,{texts:function(){return o}});const o=[{value:"bizDomain",paraId:0,tocIndex:0},{value:"\u8868\u793A\u4E1A\u52A1\u57DF\u552F\u4E00\u6807\u8BC6\uFF0C",paraId:0,tocIndex:0},{value:"bizId",paraId:0,tocIndex:0},{value:"\u8868\u793A\u4E1A\u52A1 id \u552F\u4E00\u6807\u8BC6",paraId:0,tocIndex:0},{value:"\u6301\u7EED\u8865\u5145\u4E2D...",paraId:1,tocIndex:1},{value:"\u4E1A\u52A1\u57DF",paraId:2,tocIndex:1},{value:"\u63CF\u8FF0",paraId:2,tocIndex:1},{value:"CSE",paraId:2,tocIndex:1},{value:"\u5DE5\u5355",paraId:2,tocIndex:1},{value:"CSE_HOTLINE_IM",paraId:2,tocIndex:1},{value:"\u667A\u80FD\u70ED\u7EBF",paraId:2,tocIndex:1},{value:"AES",paraId:2,tocIndex:1},{value:"\u667A\u80FD\u670D\u52A1",paraId:2,tocIndex:1},{value:"YUN_TAI",paraId:2,tocIndex:1},{value:"\u4E91\u53F0",paraId:2,tocIndex:1},{value:"PUBLIC_AES_YUNQI",paraId:2,tocIndex:1},{value:"\u4E91\u4F01",paraId:2,tocIndex:1},{value:"PUBLIC_AES_SMB",paraId:2,tocIndex:1},{value:"SMB",paraId:2,tocIndex:1},{value:"AGENT_PLATFORM",paraId:2,tocIndex:1},{value:"Agent \u7BA1\u7406\u540E\u53F0",paraId:2,tocIndex:1},{value:"\u5C5E\u6027",paraId:3,tocIndex:2},{value:"\u7C7B\u578B",paraId:3,tocIndex:2},{value:"\u5FC5\u586B",paraId:3,tocIndex:2},{value:"\u9ED8\u8BA4\u503C",paraId:3,tocIndex:2},{value:"\u8BF4\u660E",paraId:3,tocIndex:2},{value:"bizId",paraId:3,tocIndex:2},{value:"string | number",paraId:3,tocIndex:2},{value:"\u662F",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u4E1A\u52A1 id",paraId:3,tocIndex:2},{value:"bizDomain",paraId:3,tocIndex:2},{value:"BIZ_DOMAIN | string",paraId:3,tocIndex:2},{value:"\u662F",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u4E1A\u52A1\u7C7B\u578B",paraId:3,tocIndex:2},{value:"className",paraId:3,tocIndex:2},{value:"string",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u6837\u5F0F\u7C7B\u540D",paraId:3,tocIndex:2},{value:"dataSource",paraId:3,tocIndex:2},{value:"any[]",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u5BF9\u8BDD\u6570\u636E",paraId:3,tocIndex:2},{value:"placeholder",paraId:3,tocIndex:2},{value:"string",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u53D1\u9001\u6D88\u606F\u7684 placeholder",paraId:3,tocIndex:2},{value:"cardComponentMap",paraId:3,tocIndex:2},{value:"any",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u4E1A\u52A1\u81EA\u5B9A\u4E49\u5361\u7247\u6E32\u67D3\u7684\u7EC4\u4EF6\u6CE8\u518C",paraId:3,tocIndex:2},{value:"operationComponentMap",paraId:3,tocIndex:2},{value:"any",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u4E1A\u52A1\u81EA\u5B9A\u4E49\u64CD\u4F5C\u6E32\u67D3\u7684\u7EC4\u4EF6\u6CE8\u518C",paraId:3,tocIndex:2},{value:"locateAfterSingleMessageUpdate",paraId:3,tocIndex:2},{value:"boolean",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u5355\u6761\u6D88\u606F\u66F4\u65B0\u65F6\uFF0C\u662F\u5426\u9700\u8981\u5B9A\u4F4D\u5230\u6D88\u606F\u7684\u4F4D\u7F6E",paraId:3,tocIndex:2},{value:"interruptLlmMessageScroll",paraId:3,tocIndex:2},{value:"boolean",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u4E2D\u65AD\u6253\u5B57\u673A\u6D88\u606F\u6EDA\u52A8",paraId:3,tocIndex:2},{value:"topRenderMessage",paraId:3,tocIndex:2},{value:"any",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u9876\u90E8\u6E32\u67D3\u6D88\u606F",paraId:3,tocIndex:2},{value:"cardRender",paraId:3,tocIndex:2},{value:"(data: any) => ReactNode",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u81EA\u5B9A\u4E49\u6E32\u67D3\u51FD\u6570",paraId:3,tocIndex:2},{value:"operationRender",paraId:3,tocIndex:2},{value:"(data: any) => ReactNode",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u81EA\u5B9A\u4E49\u6E32\u67D3\u51FD\u6570",paraId:3,tocIndex:2},{value:"toolRender",paraId:3,tocIndex:2},{value:"() => ReactNode",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u5DE5\u5177\u533A\u57DF\u7684\u81EA\u5B9A\u4E49\u6E32\u67D3",paraId:3,tocIndex:2},{value:"toolConfig",paraId:3,tocIndex:2},{value:"IToolConfig | false",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u5DE5\u5177\u914D\u7F6E",paraId:3,tocIndex:2},{value:"onCloseToolCallback",paraId:3,tocIndex:2},{value:"(tool: any) => void",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u5173\u95ED\u5DE5\u5177\u56DE\u8C03",paraId:3,tocIndex:2},{value:"extBottomRender",paraId:3,tocIndex:2},{value:"() => ReactNode",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u5E95\u90E8\u6309\u94AE\u914D\u7F6E",paraId:3,tocIndex:2},{value:"onSend",paraId:3,tocIndex:2},{value:"(data?: any, onSuccessCallback?: (res: { data?: any }) => void) => void",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u53D1\u9001\u6D88\u606F ",paraId:3,tocIndex:2},{value:" ",paraId:3,tocIndex:2},{value:"\u53C2\u6570:",paraId:3,tocIndex:2},{value:" ",paraId:3,tocIndex:2},{value:" - ",paraId:3,tocIndex:2},{value:"data",paraId:3,tocIndex:2},{value:": \u6D88\u606F\u53D1\u9001\u53C2\u6570 ",paraId:3,tocIndex:2},{value:" - ",paraId:3,tocIndex:2},{value:"onSuccessCallback",paraId:3,tocIndex:2},{value:": \u53D1\u9001\u6210\u529F\u56DE\u8C03 ",paraId:3,tocIndex:2},{value:" \u5305\u62EC\uFF1A ",paraId:3,tocIndex:2},{value:" 1. \u91CD\u7F6E\u8F93\u5165 ",paraId:3,tocIndex:2},{value:" 2. \u5224\u65AD\u662F\u5426\u5927\u6A21\u578B\u751F\u6210 ",paraId:3,tocIndex:2},{value:" 3. \u6709\u8868\u5355\u65F6\uFF0C\u91CD\u7F6E\u8868\u5355, \u591A\u8F6E\u5BF9\u8BDD\u65F6\u8868\u5355\u53EA\u5728\u9996\u8F6E\u6709\u6548 ",paraId:3,tocIndex:2},{value:" 4. \u5DE5\u5177\u6267\u884C\uFF0C\u5355\u8F6E\u6267\u884C\u6210\u529F\u9700\u8981\u5173\u95ED\u5DE5\u5177\u63D0\u793A",paraId:3,tocIndex:2},{value:"onChangeInputValue",paraId:3,tocIndex:2},{value:"(val: any) => void",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u76D1\u542C\u8F93\u5165\u6846\u503C\u53D8\u5316",paraId:3,tocIndex:2},{value:"onChangeInputDiasbled",paraId:3,tocIndex:2},{value:"(val: any) => void",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u76D1\u542C\u8F93\u5165\u6846\u7981\u7528",paraId:3,tocIndex:2},{value:"emptyContent",paraId:3,tocIndex:2},{value:"ReactNode",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u7A7A\u5185\u5BB9",paraId:3,tocIndex:2},{value:"inputProps",paraId:3,tocIndex:2},{value:"TextAreaProps",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u8F93\u5165\u6846\u5C5E\u6027",paraId:3,tocIndex:2},{value:"log",paraId:3,tocIndex:2},{value:"(eventName: string, v?: any) => void",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u65E5\u5FD7\u4E0A\u62A5\u65B9\u6CD5",paraId:3,tocIndex:2},{value:"logTrace",paraId:3,tocIndex:2},{value:"ILogTrace",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u64CD\u4F5C\u94FE\u8DEF\u4E0A\u62A5\u65B9\u6CD5",paraId:3,tocIndex:2},{value:"errorMessage",paraId:3,tocIndex:2},{value:"ReactNode",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u9519\u8BEF\u63D0\u793A",paraId:3,tocIndex:2},{value:"onError",paraId:3,tocIndex:2},{value:"(v: any) => void",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u547D\u4E2D ErrorBoundary \u7684\u56DE\u8C03",paraId:3,tocIndex:2},{value:"\u5C5E\u6027",paraId:4,tocIndex:3},{value:"\u7C7B\u578B",paraId:4,tocIndex:3},{value:"\u5FC5\u586B",paraId:4,tocIndex:3},{value:"\u8BF4\u660E",paraId:4,tocIndex:3},{value:"showBaseToolTag",paraId:4,tocIndex:3},{value:"boolean",paraId:4,tocIndex:3},{value:"\u5426",paraId:4,tocIndex:3},{value:"\u5DE5\u5177\u680F\u662F\u5426\u5C55\u793A\u5185\u7F6E\u5DE5\u5177",paraId:4,tocIndex:3},{value:"openQuickWakeUp",paraId:4,tocIndex:3},{value:"boolean",paraId:4,tocIndex:3},{value:"\u5426",paraId:4,tocIndex:3},{value:"\u662F\u5426\u5F00\u542F\u5FEB\u6377\u5524\u9192",paraId:4,tocIndex:3},{value:"baseToolApi",paraId:4,tocIndex:3},{value:"string",paraId:4,tocIndex:3},{value:"\u5426",paraId:4,tocIndex:3},{value:"\u57FA\u7840\u5DE5\u5177 api",paraId:4,tocIndex:3},{value:"customToolList",paraId:4,tocIndex:3},{value:"ReactNode[]",paraId:4,tocIndex:3},{value:"\u5426",paraId:4,tocIndex:3},{value:"\u81EA\u5B9A\u4E49\u5DE5\u5177\u5217\u8868",paraId:4,tocIndex:3},{value:"agentConfig",paraId:4,tocIndex:3},{value:"IAgentConfig",paraId:4,tocIndex:3},{value:"\u5426",paraId:4,tocIndex:3},{value:"agent \u5DE5\u5177\u914D\u7F6E",paraId:4,tocIndex:3},{value:"\u5C5E\u6027",paraId:5,tocIndex:4},{value:"\u7C7B\u578B",paraId:5,tocIndex:4},{value:"\u5FC5\u586B",paraId:5,tocIndex:4},{value:"\u8BF4\u660E",paraId:5,tocIndex:4},{value:"agentData",paraId:5,tocIndex:4},{value:"any",paraId:5,tocIndex:4},{value:"\u5426",paraId:5,tocIndex:4},{value:"\u53D7\u63A7 agent \u5DE5\u5177\u53C2\u6570",paraId:5,tocIndex:4},{value:"disableCloseAgent",paraId:5,tocIndex:4},{value:"boolean",paraId:5,tocIndex:4},{value:"\u5426",paraId:5,tocIndex:4},{value:"\u662F\u5426\u7981\u6B62\u5173\u95ED agent \u5DE5\u5177",paraId:5,tocIndex:4},{value:"disableClearAgentContext",paraId:5,tocIndex:4},{value:"boolean",paraId:5,tocIndex:4},{value:"\u5426",paraId:5,tocIndex:4},{value:"\u662F\u5426\u7981\u6B62\u6E05\u7A7A agent \u4E0A\u4E0B\u6587",paraId:5,tocIndex:4},{value:"\u5C5E\u6027",paraId:6,tocIndex:5},{value:"\u7C7B\u578B",paraId:6,tocIndex:5},{value:"\u5FC5\u586B",paraId:6,tocIndex:5},{value:"\u8BF4\u660E",paraId:6,tocIndex:5},{value:"startTrace",paraId:6,tocIndex:5},{value:"(eventName: string, bizId: string | number) => void",paraId:6,tocIndex:5},{value:"\u5426",paraId:6,tocIndex:5},{value:"\u5F00\u59CB\u94FE\u8DEF\u4E0A\u62A5",paraId:6,tocIndex:5},{value:"closeTrace",paraId:6,tocIndex:5},{value:"(eventName: string, bizId: string | number) => void",paraId:6,tocIndex:5},{value:"\u5426",paraId:6,tocIndex:5},{value:"\u7ED3\u675F\u94FE\u8DEF\u4E0A\u62A5",paraId:6,tocIndex:5},{value:"updateTrace",paraId:6,tocIndex:5},{value:"(eventName: string, bizId: string | number, subEventKey: string) => void",paraId:6,tocIndex:5},{value:"\u5426",paraId:6,tocIndex:5},{value:"\u66F4\u65B0\u94FE\u8DEF\u4E0A\u62A5",paraId:6,tocIndex:5},{value:"\u5C5E\u6027",paraId:7,tocIndex:6},{value:"\u7C7B\u578B",paraId:7,tocIndex:6},{value:"\u8BF4\u660E",paraId:7,tocIndex:6},{value:"updateInputValue",paraId:7,tocIndex:6},{value:"(val: string) => void",paraId:7,tocIndex:6},{value:"\u66F4\u65B0\u8F93\u5165\u6846\u503C",paraId:7,tocIndex:6},{value:"disableInput",paraId:7,tocIndex:6},{value:"(value: boolean) => void",paraId:7,tocIndex:6},{value:"\u7981\u7528\u8F93\u5165\u6846",paraId:7,tocIndex:6},{value:"showSingleMessageCard",paraId:7,tocIndex:6},{value:"(data: any) => ReactNode",paraId:7,tocIndex:6},{value:"\u663E\u793A\u5355\u6761\u6D88\u606F\u5361\u7247",paraId:7,tocIndex:6},{value:"setInputFormSchema",paraId:7,tocIndex:6},{value:"(val: any) => void",paraId:7,tocIndex:6},{value:"\u8BBE\u7F6E\u8F93\u5165\u8868\u5355 schema",paraId:7,tocIndex:6},{value:"setPlaceholder",paraId:7,tocIndex:6},{value:"(val: string) => void",paraId:7,tocIndex:6},{value:"\u8BBE\u7F6E placeholder",paraId:7,tocIndex:6},{value:"focusInput",paraId:7,tocIndex:6},{value:"() => void",paraId:7,tocIndex:6},{value:"\u805A\u7126\u8F93\u5165\u6846",paraId:7,tocIndex:6},{value:"getScrollInfo",paraId:7,tocIndex:6},{value:"() => { isTop: boolean; isBottom: boolean; scrollOffset: number; scrollSize: number; viewportSize: number; }",paraId:7,tocIndex:6},{value:"\u83B7\u53D6\u6EDA\u52A8\u4FE1\u606F",paraId:7,tocIndex:6},{value:"initCopilotTools",paraId:7,tocIndex:6},{value:"() => void",paraId:7,tocIndex:6},{value:"\u521D\u59CB\u5316 copilot \u5DE5\u5177",paraId:7,tocIndex:6},{value:"selectCopilotTool",paraId:7,tocIndex:6},{value:"(tool: any) => void",paraId:7,tocIndex:6},{value:"\u9009\u62E9 copilot \u5DE5\u5177",paraId:7,tocIndex:6},{value:"closeCopilotTool",paraId:7,tocIndex:6},{value:"() => void",paraId:7,tocIndex:6},{value:"\u5173\u95ED copilot \u5DE5\u5177",paraId:7,tocIndex:6},{value:"updataMessageList",paraId:7,tocIndex:6},{value:"(scroll?: boolean) => void",paraId:7,tocIndex:6},{value:"\u66F4\u65B0\u6D88\u606F\u5217\u8868",paraId:7,tocIndex:6},{value:"updateMessage",paraId:7,tocIndex:6},{value:"(messageId: any) => void",paraId:7,tocIndex:6},{value:"\u66F4\u65B0\u5355\u6761\u6D88\u606F",paraId:7,tocIndex:6}]},93610:function(t,e,n){n.r(e),n.d(e,{texts:function(){return o}});const o=[{value:"\u672C\u793A\u4F8B\u5C55\u793A\u4E86 MarkDown \u7EC4\u4EF6\u5982\u4F55\u6E32\u67D3 LaTeX \u6570\u5B66\u516C\u5F0F\u548C Mermaid \u56FE\u8868\u3002",paraId:0,tocIndex:0},{value:"\u2705 \u652F\u6301\u884C\u5185\u548C\u5757\u7EA7 LaTeX \u6570\u5B66\u516C\u5F0F",paraId:1,tocIndex:1},{value:"\u2705 \u652F\u6301\u591A\u79CD Mermaid \u56FE\u8868\u7C7B\u578B",paraId:1,tocIndex:1},{value:"\u2705 \u6570\u5B66\u516C\u5F0F\u548C\u56FE\u8868\u53EF\u4EE5\u6DF7\u5408\u4F7F\u7528",paraId:1,tocIndex:1},{value:"\u2705 \u4FDD\u6301\u539F\u6709\u7684\u4EE3\u7801\u9AD8\u4EAE\u548C Markdown \u7279\u6027",paraId:1,tocIndex:1},{value:"\u5207\u6362\u4E0D\u540C\u7684 Tab \u9875\u67E5\u770B\u4E0D\u540C\u7684\u793A\u4F8B\uFF1A",paraId:2,tocIndex:2},{value:"LaTeX \u516C\u5F0F\u793A\u4F8B",paraId:3,tocIndex:2},{value:"\uFF1A\u5C55\u793A\u5404\u79CD\u6570\u5B66\u516C\u5F0F\u7684\u6E32\u67D3\u6548\u679C",paraId:3,tocIndex:2},{value:"Mermaid \u56FE\u8868\u793A\u4F8B",paraId:3,tocIndex:2},{value:"\uFF1A\u5C55\u793A\u6D41\u7A0B\u56FE\u3001\u5E8F\u5217\u56FE\u3001\u7C7B\u56FE\u7B49",paraId:3,tocIndex:2},{value:"\u7EFC\u5408\u793A\u4F8B",paraId:3,tocIndex:2},{value:"\uFF1A\u5C55\u793A\u6570\u5B66\u516C\u5F0F\u548C\u56FE\u8868\u6DF7\u5408\u4F7F\u7528\u7684\u573A\u666F",paraId:3,tocIndex:2}]},70332:function(t,e,n){n.r(e),n.d(e,{texts:function(){return o}});const o=[{value:"\u5C55\u793A ",paraId:0,tocIndex:1},{value:"AssistantChatInput",paraId:0,tocIndex:1},{value:" \u8F93\u5165\u6846\u7EC4\u4EF6\u7684\u72EC\u7ACB\u4F7F\u7528\uFF0C\u5305\u62EC\u5404\u79CD\u72B6\u6001\u63A7\u5236\u548C\u4E8B\u4EF6\u56DE\u8C03\u3002",paraId:0,tocIndex:1},{value:"\u529F\u80FD\u7279\u6027\uFF1A",paraId:1,tocIndex:1},{value:"\u8F93\u5165\u6846\u72B6\u6001\u63A7\u5236\uFF08\u7981\u7528/\u542F\u7528\uFF09",paraId:2,tocIndex:1},{value:"\u81EA\u5B9A\u4E49 placeholder",paraId:2,tocIndex:1},{value:"\u8F93\u5165\u503C\u5B9E\u65F6\u76D1\u542C",paraId:2,tocIndex:1},{value:"\u901A\u8FC7 ref \u63A7\u5236\u8F93\u5165\u6846",paraId:2,tocIndex:1},{value:"\u4E8B\u4EF6\u65E5\u5FD7\u5C55\u793A",paraId:2,tocIndex:1},{value:"\u5C55\u793A ",paraId:3,tocIndex:2},{value:"AssistantChatApp",paraId:3,tocIndex:2},{value:" \u5BF9\u8BDD\u5217\u8868\u7EC4\u4EF6\u7684\u72EC\u7ACB\u4F7F\u7528\uFF0C\u652F\u6301\u591A\u79CD\u6D88\u606F\u7C7B\u578B\u548C\u5361\u7247\u7EC4\u4EF6\u3002",paraId:3,tocIndex:2},{value:"\u529F\u80FD\u7279\u6027\uFF1A",paraId:4,tocIndex:2},{value:"\u7528\u6237\u6D88\u606F\u548C AI \u56DE\u590D\u5C55\u793A",paraId:5,tocIndex:2},{value:"\u591A\u79CD\u5361\u7247\u7EC4\u4EF6\uFF08LlmGenerateCardV5\u3001AgentCommonCard\u3001AgentCardRender\uFF09",paraId:5,tocIndex:2},{value:"\u6D88\u606F\u5361\u7247\u5BBD\u5EA6\u914D\u7F6E",paraId:5,tocIndex:2},{value:"\u6EDA\u52A8\u63A7\u5236",paraId:5,tocIndex:2},{value:"\u52A8\u6001\u6DFB\u52A0\u6D88\u606F",paraId:5,tocIndex:2},{value:"\u5B8C\u6574\u7684\u804A\u5929\u6D41\u7A0B\u6F14\u793A\uFF0C\u5305\u62EC\u7528\u6237\u8F93\u5165\u3001AI \u6D41\u5F0F\u56DE\u590D\u3001\u591A\u8F6E\u5BF9\u8BDD\u7B49\u529F\u80FD\u3002",paraId:6,tocIndex:3},{value:"\u529F\u80FD\u7279\u6027\uFF1A",paraId:7,tocIndex:3},{value:"\u5B8C\u6574\u7684\u53D1\u9001-\u63A5\u6536\u6D41\u7A0B",paraId:8,tocIndex:3},{value:"\u6A21\u62DF\u6D41\u5F0F\u63A8\u9001\u6548\u679C\uFF08\u9010\u5B57\u663E\u793A\uFF09",paraId:8,tocIndex:3},{value:"\u505C\u6B62\u751F\u6210\u529F\u80FD",paraId:8,tocIndex:3},{value:"\u591A\u8F6E\u5BF9\u8BDD\u652F\u6301",paraId:8,tocIndex:3},{value:"\u7A7A\u72B6\u6001\u5C55\u793A",paraId:8,tocIndex:3},{value:"Schema \u8F93\u5165\u7EC4\u4EF6\uFF0C\u652F\u6301\u52A8\u6001\u8868\u5355\u751F\u6210\u548C\u9A8C\u8BC1\u3002",paraId:9,tocIndex:4},{value:"\u62BD\u5C49\u7EC4\u4EF6\uFF0C\u7528\u4E8E\u4FA7\u8FB9\u680F\u5C55\u793A\u3002",paraId:10,tocIndex:5},{value:"Agent Schema \u8868\u5355\u7EC4\u4EF6\u3002",paraId:11,tocIndex:6}]},93649:function(t,e){e.Z=`import React from 'react';
1
+ "use strict";(self.webpackChunk_alife_paul_ai_assistant=self.webpackChunk_alife_paul_ai_assistant||[]).push([[669],{8373:function(t,e,n){n.r(e),n.d(e,{demos:function(){return r}});var o=n(1024),a=n.n(o),r={"demos-customer-service-typewriter-demo-smart-scroll-demo":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(7084),n.e(2433)]).then(n.bind(n,45762))})),asset:{type:"BLOCK",id:"demos-customer-service-typewriter-demo-smart-scroll-demo",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(84370).Z},react:{type:"NPM",value:"16.14.0"},"@alife/magic-basic":{type:"NPM",value:"4.2.11"},"@alife/paul-ai-assistant":{type:"NPM",value:"0.2.2"},"./smart-scroll-data.ts":{type:"FILE",value:n(45543).Z},"../config.tsx":{type:"FILE",value:n(23730).Z},axios:{type:"NPM",value:"0.21.4"}},entry:"index.tsx"},context:void 0,renderOpts:void 0},"demos-customer-service-typewriter-demo-customer-service-demo":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(7084),n.e(2433)]).then(n.bind(n,4770))})),asset:{type:"BLOCK",id:"demos-customer-service-typewriter-demo-customer-service-demo",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(86256).Z},react:{type:"NPM",value:"16.14.0"},"@alife/magic-basic":{type:"NPM",value:"4.2.11"},"@alife/paul-ai-assistant":{type:"NPM",value:"0.2.2"},"../config.tsx":{type:"FILE",value:n(23730).Z},"./customer-service-data.ts":{type:"FILE",value:n(24276).Z},axios:{type:"NPM",value:"0.21.4"}},entry:"index.tsx"},context:void 0,renderOpts:void 0}}},60855:function(t,e,n){n.r(e),n.d(e,{demos:function(){return r}});var o=n(1024),a=n.n(o),r={}},72457:function(t,e,n){n.r(e),n.d(e,{demos:function(){return r}});var o=n(1024),a=n.n(o),r={"demos-markdown-latex-mermaid-demo-markdown-latex-mermaid":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(7084),n.e(2433)]).then(n.bind(n,42473))})),asset:{type:"BLOCK",id:"demos-markdown-latex-mermaid-demo-markdown-latex-mermaid",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(57782).Z},react:{type:"NPM",value:"16.14.0"},"./index.scss":{type:"FILE",value:n(77526).Z},"../../src/components/MarkDown.tsx":{type:"FILE",value:n(12485).Z},"./data.ts":{type:"FILE",value:n(19783).Z},"@alife/goc-utils":{type:"NPM",value:"1.36.0"},"@alife/magic-chat-ui":{type:"NPM",value:"3.20.1"},katex:{type:"NPM",value:"0.16.25"},mermaid:{type:"NPM",value:"11.12.1"},"rehype-highlight":{type:"NPM",value:"6.0.0"},"rehype-katex":{type:"NPM",value:"6.0.3"},"rehype-raw":{type:"NPM",value:"6.1.1"},"remark-gfm":{type:"NPM",value:"3.0.1"},"remark-math":{type:"NPM",value:"5.1.1"}},entry:"index.tsx"},context:void 0,renderOpts:void 0}}},50639:function(t,e,n){n.r(e),n.d(e,{demos:function(){return r}});var o=n(1024),a=n.n(o),r={"demos-tool-chat-type-demo-toolchattype":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(7084),n.e(2433)]).then(n.bind(n,91090))})),asset:{type:"BLOCK",id:"demos-tool-chat-type-demo-toolchattype",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(82299).Z},"@alife/paul-ai-assistant":{type:"NPM",value:"0.2.2"},"./data.ts":{type:"FILE",value:n(4453).Z},"../config.tsx":{type:"FILE",value:n(23730).Z},axios:{type:"NPM",value:"0.21.4"}},entry:"index.tsx"},context:void 0,renderOpts:void 0},"demos-tool-chat-type-demo-chat-input-demo":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(7084),n.e(2433)]).then(n.bind(n,25248))})),asset:{type:"BLOCK",id:"demos-tool-chat-type-demo-chat-input-demo",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(11633).Z},react:{type:"NPM",value:"16.14.0"},"@alife/magic-basic":{type:"NPM",value:"4.2.11"},"@alife/paul-ai-assistant":{type:"NPM",value:"0.2.2"},"../config.tsx":{type:"FILE",value:n(23730).Z},axios:{type:"NPM",value:"0.21.4"}},entry:"index.tsx"},context:void 0,renderOpts:void 0},"demos-tool-chat-type-demo-chat-list-demo":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(7084),n.e(2433)]).then(n.bind(n,54115))})),asset:{type:"BLOCK",id:"demos-tool-chat-type-demo-chat-list-demo",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(89).Z},react:{type:"NPM",value:"16.14.0"},"@alife/magic-basic":{type:"NPM",value:"4.2.11"},"@alife/paul-ai-assistant":{type:"NPM",value:"0.2.2"},"../config.tsx":{type:"FILE",value:n(23730).Z},"./data.ts":{type:"FILE",value:n(4453).Z},axios:{type:"NPM",value:"0.21.4"}},entry:"index.tsx"},context:void 0,renderOpts:void 0},"demos-tool-chat-type-demo-chat-scenario-demo":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(7084),n.e(2433)]).then(n.bind(n,94885))})),asset:{type:"BLOCK",id:"demos-tool-chat-type-demo-chat-scenario-demo",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(88321).Z},react:{type:"NPM",value:"16.14.0"},"@alife/magic-basic":{type:"NPM",value:"4.2.11"},"@alife/paul-ai-assistant":{type:"NPM",value:"0.2.2"},"../config.tsx":{type:"FILE",value:n(23730).Z},axios:{type:"NPM",value:"0.21.4"}},entry:"index.tsx"},context:void 0,renderOpts:void 0},"demos-tool-chat-type-demo-schema-input":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(7084),n.e(2433)]).then(n.bind(n,14663))})),asset:{type:"BLOCK",id:"demos-tool-chat-type-demo-schema-input",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(22516).Z},react:{type:"NPM",value:"16.14.0"},"@alife/magic-basic":{type:"NPM",value:"4.2.11"},"@alife/paul-ai-assistant":{type:"NPM",value:"0.2.2"}},entry:"index.tsx"},context:void 0,renderOpts:void 0},"demos-tool-chat-type-demo-assistant-drawer":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(7084),n.e(2433)]).then(n.bind(n,25578))})),asset:{type:"BLOCK",id:"demos-tool-chat-type-demo-assistant-drawer",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(53925).Z},react:{type:"NPM",value:"16.14.0"},"@alife/magic-basic":{type:"NPM",value:"4.2.11"},"@alife/paul-ai-assistant":{type:"NPM",value:"0.2.2"}},entry:"index.tsx"},context:void 0,renderOpts:void 0},"demos-tool-chat-type-demo-agentschemaformdemo":{component:a().memo(a().lazy(function(){return Promise.all([n.e(9725),n.e(6254),n.e(7084),n.e(2433)]).then(n.bind(n,97005))})),asset:{type:"BLOCK",id:"demos-tool-chat-type-demo-agentschemaformdemo",refAtomIds:[],dependencies:{"index.tsx":{type:"FILE",value:n(93649).Z},react:{type:"NPM",value:"16.14.0"},"../src/components/AgentSchemaForm.tsx":{type:"FILE",value:n(32772).Z},"@alife/magic-pro":{type:"NPM",value:"2.5.27"},"../../ErrorBoundary.tsx":{type:"FILE",value:n(23566).Z},"../../utils/formatData.tsx":{type:"FILE",value:n(69139).Z},"../../AssistantChat/AssistentError.tsx":{type:"FILE",value:n(55919).Z},"../AgentText.tsx":{type:"FILE",value:n(33810).Z},"../AgentCardSubmit.tsx":{type:"FILE",value:n(90550).Z},"../../utils/formDataFormat.ts":{type:"FILE",value:n(46825).Z},"./index.scss":{type:"FILE",value:n(30725).Z},"../PaulButtonGroup.tsx":{type:"FILE",value:n(16913).Z},"./ScreenshotView.tsx":{type:"FILE",value:n(48256).Z},"./_interface.ts":{type:"FILE",value:n(32669).Z},"../../utils/log.ts":{type:"FILE",value:n(26678).Z},"@alife/goc-utils":{type:"NPM",value:"1.36.0"},"@alife/magic-request":{type:"NPM",value:"2.5.9"},moment:{type:"NPM",value:"2.30.1"},"@alife/magic-basic":{type:"NPM",value:"4.2.11"},"@formily/antd":{type:"NPM",value:"1.3.17"},"./ErrorBoundaryFallback.tsx":{type:"FILE",value:n(3864).Z},"@alife/paul-ai-assistant":{type:"NPM",value:"0.2.2"},"../../constants/common.tsx":{type:"FILE",value:n(4202).Z},"./ScreenshotView.scss":{type:"FILE",value:n(43828).Z},"../../utils/CSEIconTool.tsx":{type:"FILE",value:n(39374).Z},"./Select.tsx":{type:"FILE",value:n(66507).Z},"@alife/magic-icons":{type:"NPM",value:"2.3.13"},ahooks:{type:"NPM",value:"3.9.5"},lodash:{type:"NPM",value:"4.17.21"}},entry:"index.tsx"},context:void 0,renderOpts:void 0}}},11796:function(t,e,n){n.r(e),n.d(e,{texts:function(){return o}});const o=[{value:"\u4E13\u95E8\u7528\u4E8E\u6D4B\u8BD5\u667A\u80FD\u6EDA\u52A8\u529F\u80FD\u7684 Demo\uFF0C\u5305\u542B\u4EE5\u4E0B\u6D4B\u8BD5\u80FD\u529B\uFF1A",paraId:0,tocIndex:0},{value:"\u81EA\u52A8\u6EDA\u52A8",paraId:1,tocIndex:1},{value:": \u5F53\u7528\u6237\u5728\u5E95\u90E8\u65F6\uFF0C\u65B0\u6D88\u606F\u548C\u6D41\u5F0F\u8F93\u51FA\u4F1A\u81EA\u52A8\u6EDA\u52A8",paraId:1,tocIndex:1},{value:"\u65B0\u6D88\u606F\u63D0\u793A",paraId:1,tocIndex:1},{value:": \u5F53\u7528\u6237\u4E0D\u5728\u5E95\u90E8\u65F6\uFF0C\u663E\u793A\u65B0\u6D88\u606F\u63D0\u793A\u6309\u94AE",paraId:1,tocIndex:1},{value:"\u63D0\u793A\u6D88\u5931\u903B\u8F91",paraId:1,tocIndex:1},{value:": \u70B9\u51FB\u63D0\u793A\u6216\u6EDA\u52A8\u5230\u5E95\u90E8\u540E\uFF0C\u63D0\u793A\u81EA\u52A8\u6D88\u5931",paraId:1,tocIndex:1},{value:"\u6D41\u5F0F\u8F93\u51FA\u8DDF\u968F",paraId:1,tocIndex:1},{value:": \u6A21\u62DF\u771F\u5B9E\u7684\u6D41\u5F0F\u8F93\u51FA\u573A\u666F\uFF0C\u6D4B\u8BD5\u6EDA\u52A8\u8DDF\u968F\u6548\u679C",paraId:1,tocIndex:1},{value:"\u914D\u7F6E",paraId:2,tocIndex:2},{value:"\u8BF4\u660E",paraId:2,tocIndex:2},{value:"\u9ED8\u8BA4\u503C",paraId:2,tocIndex:2},{value:"\u667A\u80FD\u6EDA\u52A8",paraId:2,tocIndex:2},{value:"\u662F\u5426\u542F\u7528\u667A\u80FD\u6EDA\u52A8\u529F\u80FD",paraId:2,tocIndex:2},{value:"\u5F00\u542F",paraId:2,tocIndex:2},{value:"\u65B0\u6D88\u606F\u63D0\u793A",paraId:2,tocIndex:2},{value:"\u662F\u5426\u663E\u793A\u65B0\u6D88\u606F\u63D0\u793A",paraId:2,tocIndex:2},{value:"\u5F00\u542F",paraId:2,tocIndex:2},{value:"\u8DDF\u968F\u9608\u503C",paraId:2,tocIndex:2},{value:'\u8DDD\u79BB\u5E95\u90E8\u591A\u5C11\u50CF\u7D20\u5185\u8BA4\u4E3A"\u5728\u5E95\u90E8"',paraId:2,tocIndex:2},{value:"150px",paraId:2,tocIndex:2},{value:"\u6D4B\u8BD5\u65B0\u6D88\u606F\u63D0\u793A\u663E\u793A",paraId:3,tocIndex:3},{value:'\u70B9\u51FB"\u6EDA\u52A8\u5230\u9876\u90E8"\u79BB\u5F00\u5E95\u90E8',paraId:4,tocIndex:3},{value:'\u70B9\u51FB"\u6DFB\u52A0\u6D88\u606F"',paraId:4,tocIndex:3},{value:"\u89C2\u5BDF\u65B0\u6D88\u606F\u63D0\u793A\u662F\u5426\u51FA\u73B0",paraId:4,tocIndex:3},{value:"\u6D4B\u8BD5\u65B0\u6D88\u606F\u63D0\u793A\u6D88\u5931",paraId:5,tocIndex:3},{value:"\u70B9\u51FB\u65B0\u6D88\u606F\u63D0\u793A\u6309\u94AE",paraId:6,tocIndex:3},{value:"\u89C2\u5BDF\u662F\u5426\u6EDA\u52A8\u5230\u5E95\u90E8\u5E76\u9690\u85CF\u63D0\u793A",paraId:6,tocIndex:3},{value:"\u6D4B\u8BD5\u6D41\u5F0F\u8F93\u51FA",paraId:7,tocIndex:3},{value:'\u70B9\u51FB"\u6A21\u62DF\u6D41\u5F0F\u8F93\u51FA"',paraId:8,tocIndex:3},{value:"\u89C2\u5BDF\u5728\u5E95\u90E8\u65F6\u662F\u5426\u81EA\u52A8\u8DDF\u968F",paraId:8,tocIndex:3},{value:"\u6D4B\u8BD5\u6D41\u5F0F\u8F93\u51FA\u4E2D\u5411\u4E0A\u6EDA\u52A8\uFF0C\u89C2\u5BDF\u65B0\u6D88\u606F\u63D0\u793A",paraId:8,tocIndex:3},{value:"\u6D4B\u8BD5\u72B6\u6001\u663E\u793A",paraId:9,tocIndex:3},{value:"\u6EDA\u52A8\u65F6\u89C2\u5BDF\u72B6\u6001\u680F\u7684\u5B9E\u65F6\u53D8\u5316",paraId:10,tocIndex:3},{value:'\u6CE8\u610F"\u8DDD\u79BB\u5E95\u90E8"\u3001"\u5728\u5E95\u90E8"\u7B49\u72B6\u6001',paraId:10,tocIndex:3},{value:"\u5C55\u793A\u771F\u5B9E\u5BA2\u670D\u573A\u666F\u4E0B\u7684\u6253\u5B57\u673A\u6548\u679C\uFF0C\u9875\u9762\u52A0\u8F7D\u65F6\u5305\u542B\u5B8C\u6574\u5386\u53F2\u5BF9\u8BDD\uFF0C\u53EA\u5BF9\u6700\u540E\u4E00\u6761\u6D88\u606F\u5E94\u7528\u6253\u5B57\u673A\u6548\u679C\u3002\u9002\u5408\u6D4B\u8BD5\u81EA\u52A8\u6EDA\u52A8\u8DDF\u968F\u65B0\u5185\u5BB9\u7684\u529F\u80FD\u3002",paraId:11,tocIndex:4},{value:"\u6A21\u62DF\u4E00\u4E2A\u5B8C\u6574\u7684\u5BA2\u670D\u54A8\u8BE2\u573A\u666F\uFF1A\u5BA2\u6237\u9047\u5230 ECS \u5B9E\u4F8B SSH \u8FDE\u63A5\u95EE\u9898\uFF0CAI \u5BA2\u670D\u52A9\u624B\u5E2E\u52A9\u6392\u67E5\u5E76\u89E3\u51B3\u95EE\u9898\u3002",paraId:12,tocIndex:5},{value:"\u2705 ",paraId:13,tocIndex:6},{value:"\u771F\u5B9E\u4E1A\u52A1\u573A\u666F",paraId:13,tocIndex:6},{value:"\uFF1AECS \u5B9E\u4F8B SSH \u8FDE\u63A5\u95EE\u9898\u6392\u67E5\u7684\u5B8C\u6574\u6D41\u7A0B",paraId:13,tocIndex:6},{value:"\u2705 ",paraId:13,tocIndex:6},{value:"\u5386\u53F2\u5BF9\u8BDD\u9884\u52A0\u8F7D",paraId:13,tocIndex:6},{value:"\uFF1A\u9875\u9762\u52A0\u8F7D\u65F6\u5373\u663E\u793A\u5B8C\u6574\u7684 5 \u8F6E\u5BF9\u8BDD\u5386\u53F2",paraId:13,tocIndex:6},{value:"\u2705 ",paraId:13,tocIndex:6},{value:"\u6700\u540E\u4E00\u6761\u6D88\u606F\u6253\u5B57\u673A",paraId:13,tocIndex:6},{value:"\uFF1A\u53EA\u5BF9\u6700\u540E\u4E00\u6761 AI \u56DE\u590D\u5E94\u7528\u6253\u5B57\u673A\u6548\u679C",paraId:13,tocIndex:6},{value:"\u2705 ",paraId:13,tocIndex:6},{value:"\u81EA\u52A8\u6EDA\u52A8\u8DDF\u968F",paraId:13,tocIndex:6},{value:"\uFF1A\u6253\u5B57\u673A\u8F93\u51FA\u65F6\u81EA\u52A8\u6EDA\u52A8\u5230\u5E95\u90E8\uFF0C\u8DDF\u968F\u65B0\u5185\u5BB9",paraId:13,tocIndex:6},{value:"\u2705 ",paraId:13,tocIndex:6},{value:"\u9650\u5236\u5BB9\u5668\u9AD8\u5EA6",paraId:13,tocIndex:6},{value:"\uFF1A\u5BB9\u5668\u9AD8\u5EA6\u9650\u5236\u4E3A 500px\uFF0C\u8D85\u51FA\u5185\u5BB9\u9700\u6EDA\u52A8\u67E5\u770B",paraId:13,tocIndex:6},{value:"\u2705 ",paraId:13,tocIndex:6},{value:"\u601D\u8003\u94FE\u8DEF\u5C55\u793A",paraId:13,tocIndex:6},{value:"\uFF1A\u901A\u8FC7 trace \u7EC4\u4EF6\u5C55\u793A AI \u7684\u5206\u6790\u601D\u8003\u8FC7\u7A0B",paraId:13,tocIndex:6},{value:"\u2705 ",paraId:13,tocIndex:6},{value:"\u77E5\u8BC6\u5F15\u7528\u5C55\u793A",paraId:13,tocIndex:6},{value:"\uFF1A\u5305\u542B\u591A\u79CD\u7C7B\u578B\u7684\u53C2\u8003\u6765\u6E90\uFF08\u77E5\u8BC6\u5E93\u3001\u6587\u6863\u3001\u5DE5\u5355\u3001\u8BED\u96C0\u7B49\uFF09",paraId:13,tocIndex:6},{value:"\u2705 ",paraId:13,tocIndex:6},{value:"\u4EE3\u7801\u5757\u5C55\u793A",paraId:13,tocIndex:6},{value:"\uFF1A\u5C55\u793A bash \u547D\u4EE4\u3001\u914D\u7F6E\u793A\u4F8B\u7B49\u6280\u672F\u5185\u5BB9",paraId:13,tocIndex:6},{value:"\u2705 ",paraId:13,tocIndex:6},{value:"\u91CD\u64AD\u529F\u80FD",paraId:13,tocIndex:6},{value:"\uFF1A\u652F\u6301\u91CD\u65B0\u64AD\u653E\u6253\u5B57\u673A\u52A8\u753B\u6548\u679C",paraId:13,tocIndex:6},{value:"Round 1 - \u95EE\u9898\u521D\u8BC6",paraId:14,tocIndex:7},{value:"\u7528\u6237\u63D0\u51FA SSH \u8FDE\u63A5\u95EE\u9898",paraId:15,tocIndex:7},{value:"AI \u7B80\u5355\u56DE\u590D\u5E76\u8BE2\u95EE\u8BE6\u7EC6\u4FE1\u606F",paraId:15,tocIndex:7},{value:"\u72B6\u6001\uFF1A\u7ACB\u5373\u663E\u793A",paraId:15,tocIndex:7},{value:"Round 2 - \u4FE1\u606F\u6536\u96C6",paraId:16,tocIndex:7},{value:"\u7528\u6237\u63D0\u4F9B\u5B9E\u4F8B ID\u3001\u533A\u57DF\u7B49\u4FE1\u606F",paraId:17,tocIndex:7},{value:"AI \u8FDB\u884C\u521D\u6B65\u5206\u6790\uFF0C\u5C55\u793A\u601D\u8003\u8FC7\u7A0B\uFF08trace\uFF09",paraId:17,tocIndex:7},{value:"\u72B6\u6001\uFF1A\u7ACB\u5373\u663E\u793A",paraId:17,tocIndex:7},{value:"Round 3 - \u6DF1\u5EA6\u8BCA\u65AD",paraId:18,tocIndex:7},{value:"\u7528\u6237\u5BF9\u7ED3\u679C\u63D0\u51FA\u7591\u95EE",paraId:19,tocIndex:7},{value:"AI \u8BE6\u7EC6\u8BCA\u65AD\u95EE\u9898\u539F\u56E0\uFF0C\u63D0\u4F9B\u591A\u4E2A\u89E3\u51B3\u65B9\u6848",paraId:19,tocIndex:7},{value:"\u5305\u542B\uFF1A\u601D\u8003\u94FE\u8DEF + 3 \u4E2A\u53C2\u8003\u6765\u6E90",paraId:19,tocIndex:7},{value:"\u72B6\u6001\uFF1A\u7ACB\u5373\u663E\u793A",paraId:19,tocIndex:7},{value:"Round 4 - \u89E3\u51B3\u65B9\u6848",paraId:20,tocIndex:7},{value:"\u7528\u6237\u9009\u62E9 CLI \u65B9\u5F0F\u6062\u590D",paraId:21,tocIndex:7},{value:"AI \u63D0\u4F9B\u8BE6\u7EC6\u7684\u547D\u4EE4\u884C\u64CD\u4F5C\u6B65\u9AA4",paraId:21,tocIndex:7},{value:"\u5305\u542B\uFF1Abash \u4EE3\u7801\u5757 + \u601D\u8003\u94FE\u8DEF + 2 \u4E2A\u53C2\u8003\u6765\u6E90",paraId:21,tocIndex:7},{value:"\u72B6\u6001\uFF1A\u7ACB\u5373\u663E\u793A",paraId:21,tocIndex:7},{value:"Round 5 - \u786E\u8BA4\u89E3\u51B3",paraId:22,tocIndex:7},{value:" \u26A1 \u6253\u5B57\u673A\u6548\u679C",paraId:22,tocIndex:7},{value:"\u7528\u6237\u786E\u8BA4\u95EE\u9898\u5DF2\u89E3\u51B3",paraId:23,tocIndex:7},{value:"AI \u63D0\u4F9B\u540E\u7EED\u5EFA\u8BAE\u548C\u5DE5\u5177\u63A8\u8350",paraId:23,tocIndex:7},{value:"\u5305\u542B\uFF1A2 \u4E2A\u53C2\u8003\u6765\u6E90\uFF08\u5DE5\u5177\u548C\u4E1A\u52A1\u6D41\uFF09",paraId:23,tocIndex:7},{value:"\u72B6\u6001\uFF1A\u6253\u5B57\u673A\u6548\u679C\u5C55\u793A\uFF0C\u81EA\u52A8\u6EDA\u52A8\u8DDF\u968F",paraId:23,tocIndex:7},{value:"\u6D88\u606F\u7C7B\u578B",paraId:24,tocIndex:8},{value:"\uFF1A\u5C55\u793A ",paraId:24,tocIndex:8},{value:"LlmGenerateCardV5",paraId:24,tocIndex:8},{value:" \u7EC4\u4EF6\u7684\u5B8C\u6574\u80FD\u529B",paraId:24,tocIndex:8},{value:"Trace \u7EC4\u4EF6",paraId:24,tocIndex:8},{value:"\uFF1A\u5C55\u793A AI \u601D\u8003\u8FC7\u7A0B\u7684\u53EF\u89C6\u5316",paraId:24,tocIndex:8},{value:"References \u7EC4\u4EF6",paraId:24,tocIndex:8},{value:`\uFF1A\u5C55\u793A\u591A\u79CD\u7C7B\u578B\u7684\u53C2\u8003\u6765\u6E90
2
+ `,paraId:24,tocIndex:8},{value:"kb",paraId:25,tocIndex:8},{value:" - \u77E5\u8BC6\u5E93",paraId:25,tocIndex:8},{value:"doc",paraId:25,tocIndex:8},{value:" - \u6587\u6863",paraId:25,tocIndex:8},{value:"ticket",paraId:25,tocIndex:8},{value:" - \u5DE5\u5355",paraId:25,tocIndex:8},{value:"yuque",paraId:25,tocIndex:8},{value:" - \u8BED\u96C0",paraId:25,tocIndex:8},{value:"sop",paraId:25,tocIndex:8},{value:" - \u5DE5\u5177",paraId:25,tocIndex:8},{value:"agent",paraId:25,tocIndex:8},{value:" - \u4E1A\u52A1\u6D41",paraId:25,tocIndex:8},{value:"Markdown \u6E32\u67D3",paraId:24,tocIndex:8},{value:"\uFF1A\u652F\u6301\u6807\u9898\u3001\u5217\u8868\u3001\u4EE3\u7801\u5757\u7B49\u4E30\u5BCC\u683C\u5F0F",paraId:24,tocIndex:8},{value:"\u6253\u5B57\u673A\u6548\u679C",paraId:24,tocIndex:8},{value:"\uFF1A\u6BCF 30ms \u663E\u793A\u4E00\u4E2A\u5B57\u7B26\uFF0C\u6A21\u62DF\u771F\u5B9E\u7684\u6D41\u5F0F\u8F93\u51FA",paraId:24,tocIndex:8},{value:"\u8FD9\u4E2A Demo \u9002\u5408\u7528\u4E8E\uFF1A",paraId:26,tocIndex:9},{value:"\u6D4B\u8BD5\u81EA\u52A8\u6EDA\u52A8\u8DDF\u968F\u65B0\u5185\u5BB9\u7684\u529F\u80FD",paraId:27,tocIndex:9},{value:"\u5C55\u793A AI \u5BA2\u670D\u7684\u5B8C\u6574\u4EA4\u4E92\u6D41\u7A0B",paraId:27,tocIndex:9},{value:"\u6F14\u793A\u6253\u5B57\u673A\u6548\u679C\u5728\u5B9E\u9645\u4E1A\u52A1\u4E2D\u7684\u5E94\u7528",paraId:27,tocIndex:9},{value:"\u5C55\u793A\u601D\u8003\u94FE\u8DEF\u548C\u77E5\u8BC6\u5F15\u7528\u7684\u5B8C\u6574\u80FD\u529B",paraId:27,tocIndex:9},{value:"\u9A8C\u8BC1\u9650\u5236\u5BB9\u5668\u9AD8\u5EA6\u65F6\u7684\u6EDA\u52A8\u884C\u4E3A",paraId:27,tocIndex:9},{value:"\u4F5C\u4E3A\u4EA7\u54C1\u6F14\u793A\u6216\u5BA2\u6237\u6F14\u793A\u7684\u53C2\u8003",paraId:27,tocIndex:9}]},62748:function(t,e,n){n.r(e),n.d(e,{texts:function(){return o}});const o=[{value:"bizDomain",paraId:0,tocIndex:0},{value:"\u8868\u793A\u4E1A\u52A1\u57DF\u552F\u4E00\u6807\u8BC6\uFF0C",paraId:0,tocIndex:0},{value:"bizId",paraId:0,tocIndex:0},{value:"\u8868\u793A\u4E1A\u52A1 id \u552F\u4E00\u6807\u8BC6",paraId:0,tocIndex:0},{value:"\u6301\u7EED\u8865\u5145\u4E2D...",paraId:1,tocIndex:1},{value:"\u4E1A\u52A1\u57DF",paraId:2,tocIndex:1},{value:"\u63CF\u8FF0",paraId:2,tocIndex:1},{value:"CSE",paraId:2,tocIndex:1},{value:"\u5DE5\u5355",paraId:2,tocIndex:1},{value:"CSE_HOTLINE_IM",paraId:2,tocIndex:1},{value:"\u667A\u80FD\u70ED\u7EBF",paraId:2,tocIndex:1},{value:"AES",paraId:2,tocIndex:1},{value:"\u667A\u80FD\u670D\u52A1",paraId:2,tocIndex:1},{value:"YUN_TAI",paraId:2,tocIndex:1},{value:"\u4E91\u53F0",paraId:2,tocIndex:1},{value:"PUBLIC_AES_YUNQI",paraId:2,tocIndex:1},{value:"\u4E91\u4F01",paraId:2,tocIndex:1},{value:"PUBLIC_AES_SMB",paraId:2,tocIndex:1},{value:"SMB",paraId:2,tocIndex:1},{value:"AGENT_PLATFORM",paraId:2,tocIndex:1},{value:"Agent \u7BA1\u7406\u540E\u53F0",paraId:2,tocIndex:1},{value:"\u5C5E\u6027",paraId:3,tocIndex:2},{value:"\u7C7B\u578B",paraId:3,tocIndex:2},{value:"\u5FC5\u586B",paraId:3,tocIndex:2},{value:"\u9ED8\u8BA4\u503C",paraId:3,tocIndex:2},{value:"\u8BF4\u660E",paraId:3,tocIndex:2},{value:"bizId",paraId:3,tocIndex:2},{value:"string | number",paraId:3,tocIndex:2},{value:"\u662F",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u4E1A\u52A1 id",paraId:3,tocIndex:2},{value:"bizDomain",paraId:3,tocIndex:2},{value:"BIZ_DOMAIN | string",paraId:3,tocIndex:2},{value:"\u662F",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u4E1A\u52A1\u7C7B\u578B",paraId:3,tocIndex:2},{value:"className",paraId:3,tocIndex:2},{value:"string",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u6837\u5F0F\u7C7B\u540D",paraId:3,tocIndex:2},{value:"dataSource",paraId:3,tocIndex:2},{value:"any[]",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u5BF9\u8BDD\u6570\u636E",paraId:3,tocIndex:2},{value:"placeholder",paraId:3,tocIndex:2},{value:"string",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u53D1\u9001\u6D88\u606F\u7684 placeholder",paraId:3,tocIndex:2},{value:"cardComponentMap",paraId:3,tocIndex:2},{value:"any",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u4E1A\u52A1\u81EA\u5B9A\u4E49\u5361\u7247\u6E32\u67D3\u7684\u7EC4\u4EF6\u6CE8\u518C",paraId:3,tocIndex:2},{value:"operationComponentMap",paraId:3,tocIndex:2},{value:"any",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u4E1A\u52A1\u81EA\u5B9A\u4E49\u64CD\u4F5C\u6E32\u67D3\u7684\u7EC4\u4EF6\u6CE8\u518C",paraId:3,tocIndex:2},{value:"locateAfterSingleMessageUpdate",paraId:3,tocIndex:2},{value:"boolean",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u5355\u6761\u6D88\u606F\u66F4\u65B0\u65F6\uFF0C\u662F\u5426\u9700\u8981\u5B9A\u4F4D\u5230\u6D88\u606F\u7684\u4F4D\u7F6E",paraId:3,tocIndex:2},{value:"interruptLlmMessageScroll",paraId:3,tocIndex:2},{value:"boolean",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u4E2D\u65AD\u6253\u5B57\u673A\u6D88\u606F\u6EDA\u52A8",paraId:3,tocIndex:2},{value:"topRenderMessage",paraId:3,tocIndex:2},{value:"any",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u9876\u90E8\u6E32\u67D3\u6D88\u606F",paraId:3,tocIndex:2},{value:"cardRender",paraId:3,tocIndex:2},{value:"(data: any) => ReactNode",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u81EA\u5B9A\u4E49\u6E32\u67D3\u51FD\u6570",paraId:3,tocIndex:2},{value:"operationRender",paraId:3,tocIndex:2},{value:"(data: any) => ReactNode",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u81EA\u5B9A\u4E49\u6E32\u67D3\u51FD\u6570",paraId:3,tocIndex:2},{value:"toolRender",paraId:3,tocIndex:2},{value:"() => ReactNode",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u5DE5\u5177\u533A\u57DF\u7684\u81EA\u5B9A\u4E49\u6E32\u67D3",paraId:3,tocIndex:2},{value:"toolConfig",paraId:3,tocIndex:2},{value:"IToolConfig | false",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u5DE5\u5177\u914D\u7F6E",paraId:3,tocIndex:2},{value:"onCloseToolCallback",paraId:3,tocIndex:2},{value:"(tool: any) => void",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u5173\u95ED\u5DE5\u5177\u56DE\u8C03",paraId:3,tocIndex:2},{value:"extBottomRender",paraId:3,tocIndex:2},{value:"() => ReactNode",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u5E95\u90E8\u6309\u94AE\u914D\u7F6E",paraId:3,tocIndex:2},{value:"onSend",paraId:3,tocIndex:2},{value:"(data?: any, onSuccessCallback?: (res: { data?: any }) => void) => void",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u53D1\u9001\u6D88\u606F ",paraId:3,tocIndex:2},{value:" ",paraId:3,tocIndex:2},{value:"\u53C2\u6570:",paraId:3,tocIndex:2},{value:" ",paraId:3,tocIndex:2},{value:" - ",paraId:3,tocIndex:2},{value:"data",paraId:3,tocIndex:2},{value:": \u6D88\u606F\u53D1\u9001\u53C2\u6570 ",paraId:3,tocIndex:2},{value:" - ",paraId:3,tocIndex:2},{value:"onSuccessCallback",paraId:3,tocIndex:2},{value:": \u53D1\u9001\u6210\u529F\u56DE\u8C03 ",paraId:3,tocIndex:2},{value:" \u5305\u62EC\uFF1A ",paraId:3,tocIndex:2},{value:" 1. \u91CD\u7F6E\u8F93\u5165 ",paraId:3,tocIndex:2},{value:" 2. \u5224\u65AD\u662F\u5426\u5927\u6A21\u578B\u751F\u6210 ",paraId:3,tocIndex:2},{value:" 3. \u6709\u8868\u5355\u65F6\uFF0C\u91CD\u7F6E\u8868\u5355, \u591A\u8F6E\u5BF9\u8BDD\u65F6\u8868\u5355\u53EA\u5728\u9996\u8F6E\u6709\u6548 ",paraId:3,tocIndex:2},{value:" 4. \u5DE5\u5177\u6267\u884C\uFF0C\u5355\u8F6E\u6267\u884C\u6210\u529F\u9700\u8981\u5173\u95ED\u5DE5\u5177\u63D0\u793A",paraId:3,tocIndex:2},{value:"onChangeInputValue",paraId:3,tocIndex:2},{value:"(val: any) => void",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u76D1\u542C\u8F93\u5165\u6846\u503C\u53D8\u5316",paraId:3,tocIndex:2},{value:"onChangeInputDiasbled",paraId:3,tocIndex:2},{value:"(val: any) => void",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u76D1\u542C\u8F93\u5165\u6846\u7981\u7528",paraId:3,tocIndex:2},{value:"emptyContent",paraId:3,tocIndex:2},{value:"ReactNode",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u7A7A\u5185\u5BB9",paraId:3,tocIndex:2},{value:"inputProps",paraId:3,tocIndex:2},{value:"TextAreaProps",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u8F93\u5165\u6846\u5C5E\u6027",paraId:3,tocIndex:2},{value:"log",paraId:3,tocIndex:2},{value:"(eventName: string, v?: any) => void",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u65E5\u5FD7\u4E0A\u62A5\u65B9\u6CD5",paraId:3,tocIndex:2},{value:"logTrace",paraId:3,tocIndex:2},{value:"ILogTrace",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u64CD\u4F5C\u94FE\u8DEF\u4E0A\u62A5\u65B9\u6CD5",paraId:3,tocIndex:2},{value:"errorMessage",paraId:3,tocIndex:2},{value:"ReactNode",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u9519\u8BEF\u63D0\u793A",paraId:3,tocIndex:2},{value:"onError",paraId:3,tocIndex:2},{value:"(v: any) => void",paraId:3,tocIndex:2},{value:"\u5426",paraId:3,tocIndex:2},{value:"-",paraId:3,tocIndex:2},{value:"\u547D\u4E2D ErrorBoundary \u7684\u56DE\u8C03",paraId:3,tocIndex:2},{value:"\u5C5E\u6027",paraId:4,tocIndex:3},{value:"\u7C7B\u578B",paraId:4,tocIndex:3},{value:"\u5FC5\u586B",paraId:4,tocIndex:3},{value:"\u8BF4\u660E",paraId:4,tocIndex:3},{value:"showBaseToolTag",paraId:4,tocIndex:3},{value:"boolean",paraId:4,tocIndex:3},{value:"\u5426",paraId:4,tocIndex:3},{value:"\u5DE5\u5177\u680F\u662F\u5426\u5C55\u793A\u5185\u7F6E\u5DE5\u5177",paraId:4,tocIndex:3},{value:"openQuickWakeUp",paraId:4,tocIndex:3},{value:"boolean",paraId:4,tocIndex:3},{value:"\u5426",paraId:4,tocIndex:3},{value:"\u662F\u5426\u5F00\u542F\u5FEB\u6377\u5524\u9192",paraId:4,tocIndex:3},{value:"baseToolApi",paraId:4,tocIndex:3},{value:"string",paraId:4,tocIndex:3},{value:"\u5426",paraId:4,tocIndex:3},{value:"\u57FA\u7840\u5DE5\u5177 api",paraId:4,tocIndex:3},{value:"customToolList",paraId:4,tocIndex:3},{value:"ReactNode[]",paraId:4,tocIndex:3},{value:"\u5426",paraId:4,tocIndex:3},{value:"\u81EA\u5B9A\u4E49\u5DE5\u5177\u5217\u8868",paraId:4,tocIndex:3},{value:"agentConfig",paraId:4,tocIndex:3},{value:"IAgentConfig",paraId:4,tocIndex:3},{value:"\u5426",paraId:4,tocIndex:3},{value:"agent \u5DE5\u5177\u914D\u7F6E",paraId:4,tocIndex:3},{value:"\u5C5E\u6027",paraId:5,tocIndex:4},{value:"\u7C7B\u578B",paraId:5,tocIndex:4},{value:"\u5FC5\u586B",paraId:5,tocIndex:4},{value:"\u8BF4\u660E",paraId:5,tocIndex:4},{value:"agentData",paraId:5,tocIndex:4},{value:"any",paraId:5,tocIndex:4},{value:"\u5426",paraId:5,tocIndex:4},{value:"\u53D7\u63A7 agent \u5DE5\u5177\u53C2\u6570",paraId:5,tocIndex:4},{value:"disableCloseAgent",paraId:5,tocIndex:4},{value:"boolean",paraId:5,tocIndex:4},{value:"\u5426",paraId:5,tocIndex:4},{value:"\u662F\u5426\u7981\u6B62\u5173\u95ED agent \u5DE5\u5177",paraId:5,tocIndex:4},{value:"disableClearAgentContext",paraId:5,tocIndex:4},{value:"boolean",paraId:5,tocIndex:4},{value:"\u5426",paraId:5,tocIndex:4},{value:"\u662F\u5426\u7981\u6B62\u6E05\u7A7A agent \u4E0A\u4E0B\u6587",paraId:5,tocIndex:4},{value:"\u5C5E\u6027",paraId:6,tocIndex:5},{value:"\u7C7B\u578B",paraId:6,tocIndex:5},{value:"\u5FC5\u586B",paraId:6,tocIndex:5},{value:"\u8BF4\u660E",paraId:6,tocIndex:5},{value:"startTrace",paraId:6,tocIndex:5},{value:"(eventName: string, bizId: string | number) => void",paraId:6,tocIndex:5},{value:"\u5426",paraId:6,tocIndex:5},{value:"\u5F00\u59CB\u94FE\u8DEF\u4E0A\u62A5",paraId:6,tocIndex:5},{value:"closeTrace",paraId:6,tocIndex:5},{value:"(eventName: string, bizId: string | number) => void",paraId:6,tocIndex:5},{value:"\u5426",paraId:6,tocIndex:5},{value:"\u7ED3\u675F\u94FE\u8DEF\u4E0A\u62A5",paraId:6,tocIndex:5},{value:"updateTrace",paraId:6,tocIndex:5},{value:"(eventName: string, bizId: string | number, subEventKey: string) => void",paraId:6,tocIndex:5},{value:"\u5426",paraId:6,tocIndex:5},{value:"\u66F4\u65B0\u94FE\u8DEF\u4E0A\u62A5",paraId:6,tocIndex:5},{value:"\u5C5E\u6027",paraId:7,tocIndex:6},{value:"\u7C7B\u578B",paraId:7,tocIndex:6},{value:"\u8BF4\u660E",paraId:7,tocIndex:6},{value:"updateInputValue",paraId:7,tocIndex:6},{value:"(val: string) => void",paraId:7,tocIndex:6},{value:"\u66F4\u65B0\u8F93\u5165\u6846\u503C",paraId:7,tocIndex:6},{value:"disableInput",paraId:7,tocIndex:6},{value:"(value: boolean) => void",paraId:7,tocIndex:6},{value:"\u7981\u7528\u8F93\u5165\u6846",paraId:7,tocIndex:6},{value:"showSingleMessageCard",paraId:7,tocIndex:6},{value:"(data: any) => ReactNode",paraId:7,tocIndex:6},{value:"\u663E\u793A\u5355\u6761\u6D88\u606F\u5361\u7247",paraId:7,tocIndex:6},{value:"setInputFormSchema",paraId:7,tocIndex:6},{value:"(val: any) => void",paraId:7,tocIndex:6},{value:"\u8BBE\u7F6E\u8F93\u5165\u8868\u5355 schema",paraId:7,tocIndex:6},{value:"setPlaceholder",paraId:7,tocIndex:6},{value:"(val: string) => void",paraId:7,tocIndex:6},{value:"\u8BBE\u7F6E placeholder",paraId:7,tocIndex:6},{value:"focusInput",paraId:7,tocIndex:6},{value:"() => void",paraId:7,tocIndex:6},{value:"\u805A\u7126\u8F93\u5165\u6846",paraId:7,tocIndex:6},{value:"getScrollInfo",paraId:7,tocIndex:6},{value:"() => { isTop: boolean; isBottom: boolean; scrollOffset: number; scrollSize: number; viewportSize: number; }",paraId:7,tocIndex:6},{value:"\u83B7\u53D6\u6EDA\u52A8\u4FE1\u606F",paraId:7,tocIndex:6},{value:"initCopilotTools",paraId:7,tocIndex:6},{value:"() => void",paraId:7,tocIndex:6},{value:"\u521D\u59CB\u5316 copilot \u5DE5\u5177",paraId:7,tocIndex:6},{value:"selectCopilotTool",paraId:7,tocIndex:6},{value:"(tool: any) => void",paraId:7,tocIndex:6},{value:"\u9009\u62E9 copilot \u5DE5\u5177",paraId:7,tocIndex:6},{value:"closeCopilotTool",paraId:7,tocIndex:6},{value:"() => void",paraId:7,tocIndex:6},{value:"\u5173\u95ED copilot \u5DE5\u5177",paraId:7,tocIndex:6},{value:"updataMessageList",paraId:7,tocIndex:6},{value:"(scroll?: boolean) => void",paraId:7,tocIndex:6},{value:"\u66F4\u65B0\u6D88\u606F\u5217\u8868",paraId:7,tocIndex:6},{value:"updateMessage",paraId:7,tocIndex:6},{value:"(messageId: any) => void",paraId:7,tocIndex:6},{value:"\u66F4\u65B0\u5355\u6761\u6D88\u606F",paraId:7,tocIndex:6}]},93610:function(t,e,n){n.r(e),n.d(e,{texts:function(){return o}});const o=[{value:"\u672C\u793A\u4F8B\u5C55\u793A\u4E86 MarkDown \u7EC4\u4EF6\u5982\u4F55\u6E32\u67D3 LaTeX \u6570\u5B66\u516C\u5F0F\u548C Mermaid \u56FE\u8868\u3002",paraId:0,tocIndex:0},{value:"\u2705 \u652F\u6301\u884C\u5185\u548C\u5757\u7EA7 LaTeX \u6570\u5B66\u516C\u5F0F",paraId:1,tocIndex:1},{value:"\u2705 \u652F\u6301\u591A\u79CD Mermaid \u56FE\u8868\u7C7B\u578B",paraId:1,tocIndex:1},{value:"\u2705 \u6570\u5B66\u516C\u5F0F\u548C\u56FE\u8868\u53EF\u4EE5\u6DF7\u5408\u4F7F\u7528",paraId:1,tocIndex:1},{value:"\u2705 \u4FDD\u6301\u539F\u6709\u7684\u4EE3\u7801\u9AD8\u4EAE\u548C Markdown \u7279\u6027",paraId:1,tocIndex:1},{value:"\u5207\u6362\u4E0D\u540C\u7684 Tab \u9875\u67E5\u770B\u4E0D\u540C\u7684\u793A\u4F8B\uFF1A",paraId:2,tocIndex:2},{value:"LaTeX \u516C\u5F0F\u793A\u4F8B",paraId:3,tocIndex:2},{value:"\uFF1A\u5C55\u793A\u5404\u79CD\u6570\u5B66\u516C\u5F0F\u7684\u6E32\u67D3\u6548\u679C",paraId:3,tocIndex:2},{value:"Mermaid \u56FE\u8868\u793A\u4F8B",paraId:3,tocIndex:2},{value:"\uFF1A\u5C55\u793A\u6D41\u7A0B\u56FE\u3001\u5E8F\u5217\u56FE\u3001\u7C7B\u56FE\u7B49",paraId:3,tocIndex:2},{value:"\u7EFC\u5408\u793A\u4F8B",paraId:3,tocIndex:2},{value:"\uFF1A\u5C55\u793A\u6570\u5B66\u516C\u5F0F\u548C\u56FE\u8868\u6DF7\u5408\u4F7F\u7528\u7684\u573A\u666F",paraId:3,tocIndex:2}]},70332:function(t,e,n){n.r(e),n.d(e,{texts:function(){return o}});const o=[{value:"\u5C55\u793A ",paraId:0,tocIndex:1},{value:"AssistantChatInput",paraId:0,tocIndex:1},{value:" \u8F93\u5165\u6846\u7EC4\u4EF6\u7684\u72EC\u7ACB\u4F7F\u7528\uFF0C\u5305\u62EC\u5404\u79CD\u72B6\u6001\u63A7\u5236\u548C\u4E8B\u4EF6\u56DE\u8C03\u3002",paraId:0,tocIndex:1},{value:"\u529F\u80FD\u7279\u6027\uFF1A",paraId:1,tocIndex:1},{value:"\u8F93\u5165\u6846\u72B6\u6001\u63A7\u5236\uFF08\u7981\u7528/\u542F\u7528\uFF09",paraId:2,tocIndex:1},{value:"\u81EA\u5B9A\u4E49 placeholder",paraId:2,tocIndex:1},{value:"\u8F93\u5165\u503C\u5B9E\u65F6\u76D1\u542C",paraId:2,tocIndex:1},{value:"\u901A\u8FC7 ref \u63A7\u5236\u8F93\u5165\u6846",paraId:2,tocIndex:1},{value:"\u4E8B\u4EF6\u65E5\u5FD7\u5C55\u793A",paraId:2,tocIndex:1},{value:"\u5C55\u793A ",paraId:3,tocIndex:2},{value:"AssistantChatApp",paraId:3,tocIndex:2},{value:" \u5BF9\u8BDD\u5217\u8868\u7EC4\u4EF6\u7684\u72EC\u7ACB\u4F7F\u7528\uFF0C\u652F\u6301\u591A\u79CD\u6D88\u606F\u7C7B\u578B\u548C\u5361\u7247\u7EC4\u4EF6\u3002",paraId:3,tocIndex:2},{value:"\u529F\u80FD\u7279\u6027\uFF1A",paraId:4,tocIndex:2},{value:"\u7528\u6237\u6D88\u606F\u548C AI \u56DE\u590D\u5C55\u793A",paraId:5,tocIndex:2},{value:"\u591A\u79CD\u5361\u7247\u7EC4\u4EF6\uFF08LlmGenerateCardV5\u3001AgentCommonCard\u3001AgentCardRender\uFF09",paraId:5,tocIndex:2},{value:"\u6D88\u606F\u5361\u7247\u5BBD\u5EA6\u914D\u7F6E",paraId:5,tocIndex:2},{value:"\u6EDA\u52A8\u63A7\u5236",paraId:5,tocIndex:2},{value:"\u52A8\u6001\u6DFB\u52A0\u6D88\u606F",paraId:5,tocIndex:2},{value:"\u5B8C\u6574\u7684\u804A\u5929\u6D41\u7A0B\u6F14\u793A\uFF0C\u5305\u62EC\u7528\u6237\u8F93\u5165\u3001AI \u6D41\u5F0F\u56DE\u590D\u3001\u591A\u8F6E\u5BF9\u8BDD\u7B49\u529F\u80FD\u3002",paraId:6,tocIndex:3},{value:"\u529F\u80FD\u7279\u6027\uFF1A",paraId:7,tocIndex:3},{value:"\u5B8C\u6574\u7684\u53D1\u9001-\u63A5\u6536\u6D41\u7A0B",paraId:8,tocIndex:3},{value:"\u6A21\u62DF\u6D41\u5F0F\u63A8\u9001\u6548\u679C\uFF08\u9010\u5B57\u663E\u793A\uFF09",paraId:8,tocIndex:3},{value:"\u505C\u6B62\u751F\u6210\u529F\u80FD",paraId:8,tocIndex:3},{value:"\u591A\u8F6E\u5BF9\u8BDD\u652F\u6301",paraId:8,tocIndex:3},{value:"\u7A7A\u72B6\u6001\u5C55\u793A",paraId:8,tocIndex:3},{value:"Schema \u8F93\u5165\u7EC4\u4EF6\uFF0C\u652F\u6301\u52A8\u6001\u8868\u5355\u751F\u6210\u548C\u9A8C\u8BC1\u3002",paraId:9,tocIndex:4},{value:"\u62BD\u5C49\u7EC4\u4EF6\uFF0C\u7528\u4E8E\u4FA7\u8FB9\u680F\u5C55\u793A\u3002",paraId:10,tocIndex:5},{value:"Agent Schema \u8868\u5355\u7EC4\u4EF6\u3002",paraId:11,tocIndex:6}]},93649:function(t,e){e.Z=`import React from 'react';
2
3
  import AgentSchemaForm from '../src/components/AgentSchemaForm';
3
4
 
4
5
  const AgentSchemaFormDemo = () => {
@@ -318,6 +319,1605 @@ axios.interceptors.request.use(
318
319
  );
319
320
 
320
321
  registerAssistChatForm?.();
322
+ `},24276:function(t,e){e.Z=`const baseTimestamp = Date.now() - 3600000; // 1\u5C0F\u65F6\u524D
323
+
324
+ // Round 1: \u521D\u59CB\u95EE\u9898
325
+ const round1Messages = [
326
+ // \u7528\u6237\u63D0\u95EE
327
+ {
328
+ id: 5001,
329
+ type: 2,
330
+ userInfo: {
331
+ userId: 2089,
332
+ username: '\u674E\u660E',
333
+ avatar: null,
334
+ role: 2,
335
+ },
336
+ timestamp: baseTimestamp,
337
+ subjectId: 'demo_cs_001',
338
+ dataInfo: {
339
+ content: '\u6211\u5728\u4F7F\u7528\u4E91\u670D\u52A1\u5668ECS\u65F6\u9047\u5230\u4E86\u8FDE\u63A5\u95EE\u9898\uFF0C\u65E0\u6CD5SSH\u767B\u5F55\uFF0C\u8BF7\u5E2E\u6211\u770B\u770B\u662F\u4EC0\u4E48\u539F\u56E0\uFF1F',
340
+ },
341
+ dialogId: 5001,
342
+ },
343
+ // AI\u7B80\u5355\u56DE\u590D
344
+ {
345
+ id: 5002,
346
+ type: 101,
347
+ userInfo: {
348
+ userId: 0,
349
+ username: null,
350
+ avatar: null,
351
+ role: 3,
352
+ },
353
+ timestamp: baseTimestamp + 2000,
354
+ subjectId: 'demo_cs_001',
355
+ dataInfo: {
356
+ component: [{ name: 'LlmGenerateCardV5' }],
357
+ props: [
358
+ {
359
+ name: 'LlmGenerateCardV5',
360
+ value: {
361
+ finished: true,
362
+ headerTips: {
363
+ tipsContent: '\u5185\u5BB9\u4E3AAI\u751F\u6210\uFF0C\u8BF7\u7406\u89E3\u5BA2\u6237\u95EE\u9898\u540E\u5224\u65AD\u662F\u5426\u53EF\u7528\uFF01',
364
+ showTips: false,
365
+ },
366
+ content: \`\u60A8\u597D\uFF01\u6211\u662F\u4E91\u670D\u52A1\u52A9\u624B\uFF0C\u5F88\u62B1\u6B49\u60A8\u9047\u5230\u4E86ECS\u8FDE\u63A5\u95EE\u9898\u3002SSH\u65E0\u6CD5\u8FDE\u63A5\u53EF\u80FD\u7531\u591A\u79CD\u539F\u56E0\u5BFC\u81F4\uFF0C\u4E3A\u4E86\u66F4\u597D\u5730\u5E2E\u60A8\u6392\u67E5\u95EE\u9898\uFF0C\u6211\u9700\u8981\u4E86\u89E3\u4E00\u4E9B\u8BE6\u7EC6\u4FE1\u606F\uFF1A
367
+
368
+ 1. \u5B9E\u4F8BID\u548C\u6240\u5728\u5730\u57DF
369
+ 2. \u4ECE\u4EC0\u4E48\u65F6\u5019\u5F00\u59CB\u65E0\u6CD5\u8FDE\u63A5
370
+ 3. \u4E4B\u524D\u662F\u5426\u80FD\u591F\u6B63\u5E38\u8FDE\u63A5
371
+
372
+ \u8BF7\u63D0\u4F9B\u8FD9\u4E9B\u4FE1\u606F\uFF0C\u6211\u4F1A\u7ACB\u5373\u4E3A\u60A8\u8FDB\u884C\u5168\u9762\u8BCA\u65AD\u3002\`,
373
+ },
374
+ },
375
+ ],
376
+ },
377
+ headerInfo: {
378
+ component: 'OperationCard',
379
+ props: [{ name: 'Feedback', value: {} }, { name: 'Copy', value: { type: 'beFormat' } }],
380
+ extInfo: {
381
+ headerTag: {
382
+ backgroundColor: '#EBF4F5',
383
+ color: '#099BAB',
384
+ text: '\u667A\u80FD\u5BA2\u670D',
385
+ },
386
+ },
387
+ },
388
+ dialogId: 5002,
389
+ },
390
+ ];
391
+
392
+ // Round 2: \u4FE1\u606F\u6536\u96C6
393
+ const round2Messages = [
394
+ // \u7528\u6237\u63D0\u4F9B\u4FE1\u606F
395
+ {
396
+ id: 5003,
397
+ type: 2,
398
+ userInfo: {
399
+ userId: 2089,
400
+ username: '\u674E\u660E',
401
+ avatar: null,
402
+ role: 2,
403
+ },
404
+ timestamp: baseTimestamp + 60000,
405
+ subjectId: 'demo_cs_001',
406
+ dataInfo: {
407
+ content:
408
+ '\u5B9E\u4F8BID\u662F i-bp1234567890abcde\uFF0C\u533A\u57DF\u662F\u534E\u4E1C1(\u676D\u5DDE)\uFF0C\u4ECE\u4ECA\u5929\u65E9\u4E0A8\u70B9\u5F00\u59CB\u5C31\u8FDE\u4E0D\u4E0A\u4E86\uFF0C\u4E4B\u524D\u4E00\u76F4\u90FD\u80FD\u6B63\u5E38\u4F7F\u7528\u7684\u3002',
409
+ },
410
+ dialogId: 5003,
411
+ },
412
+ // AI\u5206\u6790\u56DE\u590D\uFF08\u542Btrace\uFF09
413
+ {
414
+ id: 5004,
415
+ type: 101,
416
+ userInfo: {
417
+ userId: 0,
418
+ username: null,
419
+ avatar: null,
420
+ role: 3,
421
+ },
422
+ timestamp: baseTimestamp + 65000,
423
+ subjectId: 'demo_cs_001',
424
+ dataInfo: {
425
+ component: [{ name: 'LlmGenerateCardV5' }],
426
+ props: [
427
+ {
428
+ name: 'LlmGenerateCardV5',
429
+ value: {
430
+ finished: true,
431
+ headerTips: {
432
+ tipsContent: '\u5185\u5BB9\u4E3AAI\u751F\u6210\uFF0C\u8BF7\u7406\u89E3\u5BA2\u6237\u95EE\u9898\u540E\u5224\u65AD\u662F\u5426\u53EF\u7528\uFF01',
433
+ showTips: false,
434
+ },
435
+ content: \`\u6536\u5230\u60A8\u7684\u4FE1\u606F\uFF0C\u6211\u6B63\u5728\u5BF9\u5B9E\u4F8B **i-bp1234567890abcde** \u8FDB\u884C\u5168\u9762\u68C0\u67E5\u3002\u8BF7\u7A0D\u5019\uFF0C\u6211\u4F1A\u4E3A\u60A8\u8BE6\u7EC6\u5206\u6790\u53EF\u80FD\u7684\u539F\u56E0\u3002\`,
436
+ trace: {
437
+ data: [
438
+ {
439
+ showTitle: '\u5B9E\u4F8B\u8BCA\u65AD',
440
+ status: 'SUCCESS',
441
+ result: [
442
+ {
443
+ showTitle: '\u68C0\u67E5\u5B9E\u4F8B\u72B6\u6001',
444
+ type: 'markdown',
445
+ result: {
446
+ content: '\u5B9E\u4F8B\u8FD0\u884C\u6B63\u5E38\uFF0C\u72B6\u6001\uFF1A\u8FD0\u884C\u4E2D\\nCPU\u4F7F\u7528\u7387\uFF1A12%\\n\u5185\u5B58\u4F7F\u7528\u7387\uFF1A35%\\n\u7CFB\u7EDF\u76D8\u6B63\u5E38',
447
+ },
448
+ status: 'SUCCESS',
449
+ },
450
+ {
451
+ showTitle: '\u68C0\u67E5\u7F51\u7EDC\u8FDE\u63A5',
452
+ type: 'markdown',
453
+ result: {
454
+ content: 'VPC\u7F51\u7EDC\u6B63\u5E38\\n\u516C\u7F51\u5E26\u5BBD\uFF1A\u6B63\u5E38\\nEIP\u7ED1\u5B9A\u72B6\u6001\uFF1A\u6B63\u5E38',
455
+ },
456
+ status: 'SUCCESS',
457
+ },
458
+ {
459
+ showTitle: '\u68C0\u67E5\u5B89\u5168\u7EC4\u914D\u7F6E',
460
+ type: 'markdown',
461
+ result: {
462
+ content: '\u53D1\u73B0\u5F02\u5E38\uFF1A\u5B89\u5168\u7EC4\u89C4\u5219\u5728\u4ECA\u5929 08:00 \u6709\u4FEE\u6539\u8BB0\u5F55\\nSSH\u7AEF\u53E3(22)\u7684\u5165\u7AD9\u89C4\u5219\u53EF\u80FD\u88AB\u4FEE\u6539',
463
+ },
464
+ status: 'SUCCESS',
465
+ },
466
+ ],
467
+ },
468
+ ],
469
+ traceName: '\u601D\u8003\u8FC7\u7A0B',
470
+ status: 'SUCCESS',
471
+ cost: 1245,
472
+ },
473
+ },
474
+ },
475
+ ],
476
+ },
477
+ headerInfo: {
478
+ component: 'OperationCard',
479
+ props: [{ name: 'Feedback', value: {} }, { name: 'Copy', value: { type: 'beFormat' } }],
480
+ extInfo: {
481
+ headerTag: {
482
+ backgroundColor: '#EBF4F5',
483
+ color: '#099BAB',
484
+ text: '\u667A\u80FD\u5BA2\u670D',
485
+ },
486
+ },
487
+ },
488
+ dialogId: 5004,
489
+ },
490
+ ];
491
+
492
+ // Round 3: \u8BE6\u7EC6\u8BCA\u65AD\uFF08\u6253\u5B57\u673A\u6548\u679C\uFF09
493
+ const round3Messages = [
494
+ // \u7528\u6237\u7591\u95EE
495
+ {
496
+ id: 5005,
497
+ type: 2,
498
+ userInfo: {
499
+ userId: 2089,
500
+ username: '\u674E\u660E',
501
+ avatar: null,
502
+ role: 2,
503
+ },
504
+ timestamp: baseTimestamp + 120000,
505
+ subjectId: 'demo_cs_001',
506
+ dataInfo: {
507
+ content: '\u5B89\u5168\u7EC4\u914D\u7F6E\u5E94\u8BE5\u6CA1\u95EE\u9898\u554A\uFF0C\u4E4B\u524D\u4E00\u76F4\u90FD\u80FD\u7528\u7684\uFF0C\u4ECA\u5929\u65E9\u4E0A\u4E5F\u6CA1\u4EBA\u4FEE\u6539\u8FC7\u554A\uFF1F',
508
+ },
509
+ dialogId: 5005,
510
+ },
511
+ // AI\u8BE6\u7EC6\u8BCA\u65AD\uFF08\u6253\u5B57\u673A\u6548\u679C + trace + references\uFF09
512
+ {
513
+ id: 5006,
514
+ type: 101,
515
+ userInfo: {
516
+ userId: 0,
517
+ username: null,
518
+ avatar: null,
519
+ role: 3,
520
+ },
521
+ timestamp: baseTimestamp + 125000,
522
+ subjectId: 'demo_cs_001',
523
+ dataInfo: {
524
+ component: [{ name: 'LlmGenerateCardV5' }],
525
+ props: [
526
+ {
527
+ name: 'LlmGenerateCardV5',
528
+ value: {
529
+ finished: true, // \u521D\u59CB\u72B6\u6001\uFF0C\u6253\u5B57\u673A\u65F6\u4F1A\u8BBE\u4E3Afalse
530
+ headerTips: {
531
+ tipsContent: '\u5185\u5BB9\u4E3AAI\u751F\u6210\uFF0C\u8BF7\u7406\u89E3\u5BA2\u6237\u95EE\u9898\u540E\u5224\u65AD\u662F\u5426\u53EF\u7528\uFF01',
532
+ showTips: false,
533
+ },
534
+ content: \`\u6839\u636E\u7CFB\u7EDF\u8BB0\u5F55\uFF0C\u6211\u53D1\u73B0\u4E86\u95EE\u9898\u6240\u5728\u3002\u8BA9\u6211\u4E3A\u60A8\u8BE6\u7EC6\u8BF4\u660E\uFF1A
535
+
536
+ ## \u95EE\u9898\u8BCA\u65AD
537
+
538
+ \u7ECF\u8FC7\u6DF1\u5165\u5206\u6790\uFF0C\u786E\u8BA4\u4E86\u4EE5\u4E0B\u60C5\u51B5\uFF1A
539
+
540
+ 1. **\u914D\u7F6E\u53D8\u66F4\u8BB0\u5F55**\uFF1A\u5B89\u5168\u7EC4 sg-bp1234567890 \u5728\u4ECA\u5929 08:03:24 \u6709\u4E00\u6761\u4FEE\u6539\u8BB0\u5F55
541
+ 2. **\u5F53\u524D\u89C4\u5219\u72B6\u6001**\uFF1ASSH\u7AEF\u53E3(22)\u7684\u5165\u7AD9\u89C4\u5219\u5DF2\u88AB\u79FB\u9664
542
+ 3. **\u53D8\u66F4\u6765\u6E90**\uFF1A\u901A\u8FC7API\u8C03\u7528\u4FEE\u6539\uFF0C\u8C03\u7528\u8005\u4E3A\u5B50\u8D26\u53F7 deploy-user
543
+
544
+ ## \u53EF\u80FD\u539F\u56E0
545
+
546
+ \u8FD9\u5F88\u53EF\u80FD\u662F\u4EE5\u4E0B\u60C5\u51B5\u5BFC\u81F4\u7684\uFF1A
547
+
548
+ - \u81EA\u52A8\u5316\u90E8\u7F72\u811A\u672C\u8BEF\u64CD\u4F5C
549
+ - \u5B89\u5168\u7EC4\u6A21\u677F\u66F4\u65B0\u65F6\u7684\u914D\u7F6E\u9519\u8BEF
550
+ - \u6279\u91CF\u64CD\u4F5C\u65F6\u8BEF\u5C06\u6B64\u5B9E\u4F8B\u5305\u542B\u5728\u5185
551
+
552
+ ## \u5EFA\u8BAE\u65B9\u6848
553
+
554
+ \u60A8\u53EF\u4EE5\u901A\u8FC7\u4EE5\u4E0B\u65B9\u5F0F\u6062\u590D\u8BBF\u95EE\uFF1A
555
+
556
+ 1. \u5728\u63A7\u5236\u53F0\u624B\u52A8\u6DFB\u52A0SSH\u89C4\u5219\uFF08\u63A8\u8350\uFF0C\u66F4\u5B89\u5168\uFF09
557
+ 2. \u4F7F\u7528CLI\u547D\u4EE4\u5FEB\u901F\u6062\u590D
558
+ 3. \u56DE\u6EDA\u5230\u5386\u53F2\u914D\u7F6E\u5FEB\u7167
559
+
560
+ \u6211\u53EF\u4EE5\u4E3A\u60A8\u751F\u6210\u8BE6\u7EC6\u7684\u64CD\u4F5C\u6B65\u9AA4\uFF0C\u8BF7\u544A\u8BC9\u6211\u60A8\u5E0C\u671B\u4F7F\u7528\u54EA\u79CD\u65B9\u5F0F\uFF1F\`,
561
+ trace: {
562
+ data: [
563
+ {
564
+ showTitle: '\u6DF1\u5EA6\u5206\u6790',
565
+ status: 'SUCCESS',
566
+ result: [
567
+ {
568
+ showTitle: '\u67E5\u8BE2\u53D8\u66F4\u5386\u53F2',
569
+ type: 'markdown',
570
+ result: {
571
+ content:
572
+ '\u65F6\u95F4\uFF1A2025-12-16 08:03:24\\n\u64CD\u4F5C\uFF1AModifySecurityGroupRule\\n\u6765\u6E90IP\uFF1A172.16.1.105\\n\u64CD\u4F5C\u8D26\u53F7\uFF1Adeploy-user',
573
+ },
574
+ status: 'SUCCESS',
575
+ },
576
+ {
577
+ showTitle: '\u5206\u6790\u5F71\u54CD\u8303\u56F4',
578
+ type: 'markdown',
579
+ result: {
580
+ content: '\u53D7\u5F71\u54CD\u5B9E\u4F8B\uFF1A1\u53F0\\n\u5F71\u54CD\u670D\u52A1\uFF1ASSH\u8FDC\u7A0B\u8FDE\u63A5\\n\u4E1A\u52A1\u5F71\u54CD\uFF1A\u65E0\u6CD5\u8FDC\u7A0B\u7BA1\u7406\u5B9E\u4F8B',
581
+ },
582
+ status: 'SUCCESS',
583
+ },
584
+ {
585
+ showTitle: '\u751F\u6210\u89E3\u51B3\u65B9\u6848',
586
+ type: 'markdown',
587
+ result: {
588
+ content: '\u65B9\u6848\u4E00\uFF1A\u63A7\u5236\u53F0\u64CD\u4F5C\uFF08\u63A8\u8350\uFF09\\n\u65B9\u6848\u4E8C\uFF1ACLI\u547D\u4EE4\\n\u65B9\u6848\u4E09\uFF1A\u914D\u7F6E\u56DE\u6EDA',
589
+ },
590
+ status: 'SUCCESS',
591
+ },
592
+ ],
593
+ },
594
+ ],
595
+ traceName: '\u601D\u8003\u8FC7\u7A0B',
596
+ status: 'SUCCESS',
597
+ cost: 2156,
598
+ },
599
+ references: [
600
+ {
601
+ dataId: 'kb_12345',
602
+ title: 'ECS\u5B9E\u4F8BSSH\u8FDE\u63A5\u5E38\u89C1\u95EE\u9898\u6392\u67E5\u6307\u5357',
603
+ itemType: 'kb',
604
+ url: 'https://help.aliyun.com/document_detail/12345.html',
605
+ description: '\u8BE6\u7EC6\u4ECB\u7ECDSSH\u8FDE\u63A5\u5931\u8D25\u7684\u5404\u79CD\u539F\u56E0\u548C\u89E3\u51B3\u65B9\u6848\uFF0C\u5305\u62EC\u5B89\u5168\u7EC4\u3001\u7F51\u7EDC\u3001\u7CFB\u7EDF\u914D\u7F6E\u7B49\u65B9\u9762',
606
+ sourceName: '\u963F\u91CC\u4E91\u5E2E\u52A9\u4E2D\u5FC3',
607
+ },
608
+ {
609
+ dataId: 'doc_67890',
610
+ title: '\u5B89\u5168\u7EC4\u89C4\u5219\u914D\u7F6E\u6700\u4F73\u5B9E\u8DF5',
611
+ itemType: 'doc',
612
+ url: 'https://help.aliyun.com/document_detail/67890.html',
613
+ description: '\u4F01\u4E1A\u7EA7\u5B89\u5168\u7EC4\u914D\u7F6E\u89C4\u8303\u3001\u6CE8\u610F\u4E8B\u9879\u548C\u5E38\u89C1\u9519\u8BEF\u907F\u514D\u6307\u5357',
614
+ sourceName: '\u963F\u91CC\u4E91\u6587\u6863\u4E2D\u5FC3',
615
+ },
616
+ {
617
+ dataId: 'ticket_892345',
618
+ title: '\u5DE5\u5355 #892345: SSH\u8FDE\u63A5\u8D85\u65F6\u89E3\u51B3\u65B9\u6848',
619
+ itemType: 'ticket',
620
+ url: 'https://workorder.console.aliyun.com/892345',
621
+ description: '\u76F8\u4F3C\u95EE\u9898\u7684\u5DE5\u5355\u5904\u7406\u8BB0\u5F55\uFF0C\u5305\u542B\u8BE6\u7EC6\u7684\u6392\u67E5\u6B65\u9AA4\u548C\u89E3\u51B3\u65B9\u6CD5',
622
+ sourceName: '\u5DE5\u5355\u7CFB\u7EDF',
623
+ },
624
+ ],
625
+ },
626
+ },
627
+ ],
628
+ },
629
+ headerInfo: {
630
+ component: 'OperationCard',
631
+ props: [{ name: 'Feedback', value: {} }, { name: 'Copy', value: { type: 'beFormat' } }],
632
+ extInfo: {
633
+ headerTag: {
634
+ backgroundColor: '#EBF4F5',
635
+ color: '#099BAB',
636
+ text: '\u667A\u80FD\u5BA2\u670D',
637
+ },
638
+ },
639
+ },
640
+ dialogId: 5006,
641
+ },
642
+ ];
643
+
644
+ // Round 4: \u89E3\u51B3\u65B9\u6848\uFF08\u6253\u5B57\u673A\u6548\u679C\uFF09
645
+ const round4Messages = [
646
+ // \u7528\u6237\u786E\u8BA4
647
+ {
648
+ id: 5007,
649
+ type: 2,
650
+ userInfo: {
651
+ userId: 2089,
652
+ username: '\u674E\u660E',
653
+ avatar: null,
654
+ role: 2,
655
+ },
656
+ timestamp: baseTimestamp + 180000,
657
+ subjectId: 'demo_cs_001',
658
+ dataInfo: {
659
+ content: '\u6211\u67E5\u770B\u4E86\u4E00\u4E0B\uFF0C\u786E\u5B9E\u662F\u4ECA\u5929\u65E9\u4E0A\u5B89\u5168\u7EC4\u89C4\u5219\u88AB\u8BEF\u4FEE\u6539\u4E86\u3002\u8BF7\u5E2E\u6211\u63D0\u4F9BCLI\u547D\u4EE4\u7684\u65B9\u5F0F\uFF0C\u6211\u60F3\u5FEB\u901F\u6062\u590D\u3002',
660
+ },
661
+ dialogId: 5007,
662
+ },
663
+ // AI\u63D0\u4F9B\u89E3\u51B3\u65B9\u6848\uFF08\u6253\u5B57\u673A\u6548\u679C + \u4EE3\u7801\u5757 + trace + references\uFF09
664
+ {
665
+ id: 5008,
666
+ type: 101,
667
+ userInfo: {
668
+ userId: 0,
669
+ username: null,
670
+ avatar: null,
671
+ role: 3,
672
+ },
673
+ timestamp: baseTimestamp + 185000,
674
+ subjectId: 'demo_cs_001',
675
+ dataInfo: {
676
+ component: [{ name: 'LlmGenerateCardV5' }],
677
+ props: [
678
+ {
679
+ name: 'LlmGenerateCardV5',
680
+ value: {
681
+ finished: true, // \u521D\u59CB\u72B6\u6001\uFF0C\u6253\u5B57\u673A\u65F6\u4F1A\u8BBE\u4E3Afalse
682
+ headerTips: {
683
+ tipsContent: '\u5185\u5BB9\u4E3AAI\u751F\u6210\uFF0C\u8BF7\u7406\u89E3\u5BA2\u6237\u95EE\u9898\u540E\u5224\u65AD\u662F\u5426\u53EF\u7528\uFF01',
684
+ showTips: false,
685
+ },
686
+ content: \`\u597D\u7684\uFF0C\u6211\u5DF2\u7ECF\u4E3A\u60A8\u51C6\u5907\u4E86\u8BE6\u7EC6\u7684CLI\u6062\u590D\u65B9\u6848\u3002\u8BF7\u6309\u7167\u4EE5\u4E0B\u6B65\u9AA4\u64CD\u4F5C\uFF1A
687
+
688
+ ## \u65B9\u6848\uFF1A\u4F7F\u7528\u963F\u91CC\u4E91CLI\u5FEB\u901F\u6062\u590D
689
+
690
+ ### 1. \u6DFB\u52A0SSH\u5B89\u5168\u7EC4\u89C4\u5219
691
+
692
+ \u6267\u884C\u4EE5\u4E0B\u547D\u4EE4\u6DFB\u52A0SSH\u8BBF\u95EE\u89C4\u5219\uFF1A
693
+
694
+ \\\`\\\`\\\`bash
695
+ aliyun ecs AuthorizeSecurityGroup \\\\
696
+ --RegionId cn-hangzhou \\\\
697
+ --SecurityGroupId sg-bp1234567890 \\\\
698
+ --IpProtocol tcp \\\\
699
+ --PortRange 22/22 \\\\
700
+ --SourceCidrIp 0.0.0.0/0 \\\\
701
+ --Priority 1 \\\\
702
+ --Description "SSH\u8BBF\u95EE\u89C4\u5219"
703
+ \\\`\\\`\\\`
704
+
705
+ **\u8BF4\u660E**\uFF1A
706
+ - \\\`SourceCidrIp 0.0.0.0/0\\\` \u8868\u793A\u5141\u8BB8\u6240\u6709IP\u8BBF\u95EE\uFF0C\u751F\u4EA7\u73AF\u5883\u5EFA\u8BAE\u9650\u5236\u4E3A\u7279\u5B9AIP\u6BB5
707
+ - \\\`Priority 1\\\` \u8868\u793A\u6700\u9AD8\u4F18\u5148\u7EA7
708
+
709
+ ### 2. \u9A8C\u8BC1\u89C4\u5219\u662F\u5426\u751F\u6548
710
+
711
+ \u67E5\u8BE2\u5F53\u524D\u5B89\u5168\u7EC4\u89C4\u5219\uFF1A
712
+
713
+ \\\`\\\`\\\`bash
714
+ aliyun ecs DescribeSecurityGroupAttribute \\\\
715
+ --RegionId cn-hangzhou \\\\
716
+ --SecurityGroupId sg-bp1234567890
717
+ \\\`\\\`\\\`
718
+
719
+ ### 3. \u6D4B\u8BD5SSH\u8FDE\u63A5
720
+
721
+ \u914D\u7F6E\u5B8C\u6210\u540E\uFF0C\u4F7F\u7528\u4EE5\u4E0B\u547D\u4EE4\u6D4B\u8BD5\u8FDE\u63A5\uFF1A
722
+
723
+ \\\`\\\`\\\`bash
724
+ ssh -v root@your-ecs-public-ip
725
+ \\\`\\\`\\\`
726
+
727
+ \u5982\u679C\u4ECD\u7136\u65E0\u6CD5\u8FDE\u63A5\uFF0C\u8BF7\u68C0\u67E5\uFF1A
728
+ - \u5B9E\u4F8B\u72B6\u6001\u662F\u5426\u4E3A"\u8FD0\u884C\u4E2D"
729
+ - \u662F\u5426\u6709\u5176\u4ED6\u7F51\u7EDC\u7B56\u7565\u9650\u5236\uFF08\u5982VPC\u7684\u7F51\u7EDCACL\uFF09
730
+ - \u672C\u5730\u9632\u706B\u5899\u6216\u7F51\u7EDC\u8BBE\u7F6E
731
+
732
+ ## \u9884\u9632\u63AA\u65BD
733
+
734
+ \u4E3A\u907F\u514D\u7C7B\u4F3C\u95EE\u9898\u518D\u6B21\u53D1\u751F\uFF0C\u5EFA\u8BAE\uFF1A
735
+
736
+ 1. \u5BF9\u5B50\u8D26\u53F7\u8BBE\u7F6E\u66F4\u4E25\u683C\u7684\u6743\u9650\u63A7\u5236
737
+ 2. \u542F\u7528\u64CD\u4F5C\u5BA1\u8BA1\uFF0C\u8BB0\u5F55\u6240\u6709\u5B89\u5168\u7EC4\u53D8\u66F4
738
+ 3. \u5B9A\u671F\u5907\u4EFD\u5173\u952E\u914D\u7F6E
739
+ 4. \u4F7F\u7528\u8D44\u6E90\u7EC4\u548C\u6807\u7B7E\u7BA1\u7406\u5B9E\u4F8B
740
+
741
+ \u6267\u884C\u5B8C\u6210\u540E\u8BF7\u544A\u8BC9\u6211\u7ED3\u679C\uFF0C\u6211\u4F1A\u7EE7\u7EED\u534F\u52A9\u60A8\u3002\`,
742
+ trace: {
743
+ data: [
744
+ {
745
+ showTitle: '\u65B9\u6848\u751F\u6210',
746
+ status: 'SUCCESS',
747
+ result: [
748
+ {
749
+ showTitle: '\u67E5\u8BE2\u5386\u53F2\u914D\u7F6E',
750
+ type: 'markdown',
751
+ result: {
752
+ content:
753
+ '\u627E\u5230\u6628\u65E523:55\u7684\u914D\u7F6E\u5FEB\u7167\\n\u5305\u542BSSH\u89C4\u5219\uFF1A22/22, 0.0.0.0/0\\n\u89C4\u5219ID\uFF1Asgr-bp9876543210',
754
+ },
755
+ status: 'SUCCESS',
756
+ },
757
+ {
758
+ showTitle: '\u751F\u6210\u6062\u590D\u547D\u4EE4',
759
+ type: 'markdown',
760
+ result: {
761
+ content: '\u57FA\u4E8E\u5386\u53F2\u914D\u7F6E\u751F\u6210CLI\u547D\u4EE4\\n\u5DF2\u9002\u914D\u5F53\u524D\u533A\u57DF\u548C\u5B89\u5168\u7EC4ID\\n\u6DFB\u52A0\u5B89\u5168\u63D0\u793A\u548C\u9A8C\u8BC1\u6B65\u9AA4',
762
+ },
763
+ status: 'SUCCESS',
764
+ },
765
+ {
766
+ showTitle: '\u5B89\u5168\u5BA1\u6838',
767
+ type: 'markdown',
768
+ result: {
769
+ content: '\u547D\u4EE4\u5DF2\u901A\u8FC7\u5B89\u5168\u5BA1\u6838\\n\u6743\u9650\u68C0\u67E5\uFF1A\u901A\u8FC7\\n\u53C2\u6570\u9A8C\u8BC1\uFF1A\u901A\u8FC7\\n\u53EF\u76F4\u63A5\u6267\u884C',
770
+ },
771
+ status: 'SUCCESS',
772
+ },
773
+ ],
774
+ },
775
+ ],
776
+ traceName: '\u601D\u8003\u8FC7\u7A0B',
777
+ status: 'SUCCESS',
778
+ cost: 1876,
779
+ },
780
+ references: [
781
+ {
782
+ dataId: 'doc_cli_guide',
783
+ title: '\u963F\u91CC\u4E91CLI\u4F7F\u7528\u6307\u5357 - \u5B89\u5168\u7EC4\u7BA1\u7406',
784
+ itemType: 'doc',
785
+ url: 'https://help.aliyun.com/document_detail/cli_ecs_securitygroup.html',
786
+ description: 'CLI\u547D\u4EE4\u884C\u5DE5\u5177\u64CD\u4F5C\u5B89\u5168\u7EC4\u7684\u5B8C\u6574\u6587\u6863\uFF0C\u5305\u542B\u6240\u6709\u53C2\u6570\u8BF4\u660E\u548C\u793A\u4F8B',
787
+ sourceName: '\u963F\u91CC\u4E91CLI\u6587\u6863',
788
+ },
789
+ {
790
+ dataId: 'yuque_bestpractice',
791
+ title: '\u4F01\u4E1A\u5B89\u5168\u7EC4\u7BA1\u7406\u6700\u4F73\u5B9E\u8DF5',
792
+ itemType: 'yuque',
793
+ url: 'https://yuque.alibaba-inc.com/docs/security-group-bp',
794
+ description: '\u5185\u90E8\u6700\u4F73\u5B9E\u8DF5\u6587\u6863\uFF0C\u5305\u542B\u6743\u9650\u63A7\u5236\u3001\u5BA1\u8BA1\u3001\u5907\u4EFD\u7B49\u5B8C\u6574\u65B9\u6848',
795
+ sourceName: '\u5185\u90E8\u6587\u6863',
796
+ },
797
+ ],
798
+ },
799
+ },
800
+ ],
801
+ },
802
+ headerInfo: {
803
+ component: 'OperationCard',
804
+ props: [{ name: 'Feedback', value: {} }, { name: 'Copy', value: { type: 'beFormat' } }],
805
+ extInfo: {
806
+ headerTag: {
807
+ backgroundColor: '#EBF4F5',
808
+ color: '#099BAB',
809
+ text: '\u667A\u80FD\u5BA2\u670D',
810
+ },
811
+ },
812
+ },
813
+ dialogId: 5008,
814
+ },
815
+ ];
816
+
817
+ // Round 5: \u786E\u8BA4\u89E3\u51B3
818
+ const round5Messages = [
819
+ // \u7528\u6237\u611F\u8C22
820
+ {
821
+ id: 5009,
822
+ type: 2,
823
+ userInfo: {
824
+ userId: 2089,
825
+ username: '\u674E\u660E',
826
+ avatar: null,
827
+ role: 2,
828
+ },
829
+ timestamp: baseTimestamp + 300000,
830
+ subjectId: 'demo_cs_001',
831
+ dataInfo: {
832
+ content: '\u592A\u597D\u4E86\uFF01\u6211\u6309\u7167\u6B65\u9AA4\u6267\u884C\u4E86\u547D\u4EE4\uFF0C\u73B0\u5728\u5DF2\u7ECF\u53EF\u4EE5\u6B63\u5E38SSH\u8FDE\u63A5\u4E86\u3002\u975E\u5E38\u611F\u8C22\uFF01',
833
+ },
834
+ dialogId: 5009,
835
+ },
836
+ // AI\u786E\u8BA4\u548C\u540E\u7EED\u5EFA\u8BAE
837
+ {
838
+ id: 5010,
839
+ type: 101,
840
+ userInfo: {
841
+ userId: 0,
842
+ username: null,
843
+ avatar: null,
844
+ role: 3,
845
+ },
846
+ timestamp: baseTimestamp + 302000,
847
+ subjectId: 'demo_cs_001',
848
+ dataInfo: {
849
+ component: [{ name: 'LlmGenerateCardV5' }],
850
+ props: [
851
+ {
852
+ name: 'LlmGenerateCardV5',
853
+ value: {
854
+ finished: true,
855
+ headerTips: {
856
+ tipsContent: '\u5185\u5BB9\u4E3AAI\u751F\u6210\uFF0C\u8BF7\u7406\u89E3\u5BA2\u6237\u95EE\u9898\u540E\u5224\u65AD\u662F\u5426\u53EF\u7528\uFF01',
857
+ showTips: false,
858
+ },
859
+ content: \`\u592A\u597D\u4E86\uFF01\u5F88\u9AD8\u5174\u95EE\u9898\u5DF2\u7ECF\u89E3\u51B3\u3002
860
+
861
+ \u4E3A\u4E86\u907F\u514D\u7C7B\u4F3C\u95EE\u9898\u518D\u6B21\u53D1\u751F\uFF0C\u6211\u4E3A\u60A8\u51C6\u5907\u4E86\u4E00\u4E9B\u5DE5\u5177\u548C\u81EA\u52A8\u5316\u65B9\u6848\uFF0C\u60A8\u53EF\u4EE5\u8003\u8651\u4F7F\u7528\uFF1A
862
+
863
+ **\u63A8\u8350\u5DE5\u5177**\uFF1A
864
+ - \u5B89\u5168\u7EC4\u914D\u7F6E\u5BA1\u8BA1\u5DE5\u5177 - \u81EA\u52A8\u68C0\u6D4B\u914D\u7F6E\u53D8\u66F4\u5E76\u544A\u8B66
865
+ - \u81EA\u52A8\u5316\u5B89\u5168\u7EC4\u68C0\u67E5\u4E1A\u52A1\u6D41 - \u5B9A\u671F\u5DE1\u68C0\u5E76\u751F\u6210\u62A5\u544A
866
+
867
+ \u5982\u679C\u540E\u7EED\u8FD8\u6709\u5176\u4ED6\u95EE\u9898\uFF0C\u968F\u65F6\u6B22\u8FCE\u54A8\u8BE2\u3002\u795D\u60A8\u5DE5\u4F5C\u987A\u5229\uFF01\`,
868
+ references: [
869
+ {
870
+ dataId: 'sop_audit_tool',
871
+ title: '\u5B89\u5168\u7EC4\u914D\u7F6E\u5BA1\u8BA1\u5DE5\u5177',
872
+ itemType: 'sop',
873
+ url: 'https://tools.aliyun.com/security-group-audit',
874
+ description: '\u5B9E\u65F6\u76D1\u63A7\u5B89\u5168\u7EC4\u914D\u7F6E\u53D8\u66F4\uFF0C\u81EA\u52A8\u544A\u8B66\u5F02\u5E38\u64CD\u4F5C\uFF0C\u652F\u6301\u914D\u7F6E\u5FEB\u7167\u548C\u4E00\u952E\u56DE\u6EDA',
875
+ sourceName: '\u8FD0\u7EF4\u5DE5\u5177\u5E73\u53F0',
876
+ },
877
+ {
878
+ dataId: 'agent_autocheck',
879
+ title: '\u81EA\u52A8\u5316\u5B89\u5168\u7EC4\u68C0\u67E5\u4E1A\u52A1\u6D41',
880
+ itemType: 'agent',
881
+ url: 'https://workflow.aliyun.com/security-check',
882
+ description: '\u5B9A\u671F\u81EA\u52A8\u5DE1\u68C0\u5B89\u5168\u7EC4\u914D\u7F6E\uFF0C\u751F\u6210\u5065\u5EB7\u5EA6\u62A5\u544A\uFF0C\u53D1\u73B0\u98CE\u9669\u81EA\u52A8\u63D0\u5355',
883
+ sourceName: '\u4E1A\u52A1\u6D41\u5E73\u53F0',
884
+ },
885
+ ],
886
+ },
887
+ },
888
+ ],
889
+ },
890
+ headerInfo: {
891
+ component: 'OperationCard',
892
+ props: [{ name: 'Feedback', value: {} }, { name: 'Copy', value: { type: 'beFormat' } }],
893
+ extInfo: {
894
+ headerTag: {
895
+ backgroundColor: '#EBF4F5',
896
+ color: '#099BAB',
897
+ text: '\u667A\u80FD\u5BA2\u670D',
898
+ },
899
+ },
900
+ },
901
+ dialogId: 5010,
902
+ },
903
+ ];
904
+
905
+ // \u5BFC\u51FA\u5B8C\u6574\u5BF9\u8BDD\u5386\u53F2
906
+ export const customerServiceHistory = [
907
+ ...round1Messages,
908
+ ...round2Messages,
909
+ ...round3Messages,
910
+ ...round4Messages,
911
+ ...round5Messages,
912
+ ];
913
+
914
+ // \u5BFC\u51FA\u9700\u8981\u6253\u5B57\u673A\u6548\u679C\u7684\u6D88\u606FID - \u53EA\u5BF9\u6700\u540E\u4E00\u6761\u6D88\u606F\u5E94\u7528\u6253\u5B57\u673A\u6548\u679C
915
+ export const typewriterMessageIds = [5010];
916
+ `},86256:function(t,e){e.Z=`import { useRef, useState, useEffect } from 'react';
917
+ import { Button, Card } from '@alife/magic-basic';
918
+ import PaulAiAssistant from '@alife/paul-ai-assistant';
919
+ import { customerServiceHistory, typewriterMessageIds } from './customer-service-data';
920
+ import '../config';
921
+
922
+ /**
923
+ * \u5BA2\u670D\u573A\u666F Demo - \u5DF2\u6709\u4FE1\u606F\u6253\u5B57\u673A\u6548\u679C
924
+ * \u5C55\u793A\u771F\u5B9E\u5BA2\u670D\u573A\u666F\uFF1A\u9875\u9762\u52A0\u8F7D\u65F6\u5305\u542B\u5386\u53F2\u5BF9\u8BDD\uFF0C\u90E8\u5206AI\u56DE\u590D\u4EE5\u6253\u5B57\u673A\u6548\u679C\u5C55\u793A
925
+ */
926
+ const CustomerServiceDemo = () => {
927
+ const assistantRef = useRef<any>(null);
928
+ const [messages, setMessages] = useState<any[]>([]);
929
+ const [currentTypewriting, setCurrentTypewriting] = useState<number | null>(null);
930
+ const [isReplaying, setIsReplaying] = useState(false);
931
+ const hasInitialized = useRef(false);
932
+ const intervalRef = useRef<any>(null);
933
+
934
+ // \u7EC4\u4EF6\u52A0\u8F7D\u65F6\u521D\u59CB\u5316\u5BF9\u8BDD
935
+ useEffect(() => {
936
+ if (!hasInitialized.current) {
937
+ hasInitialized.current = true;
938
+ initializeConversation();
939
+ }
940
+
941
+ // \u7EC4\u4EF6\u5378\u8F7D\u65F6\u6E05\u7406
942
+ return () => {
943
+ if (intervalRef.current) {
944
+ clearInterval(intervalRef.current);
945
+ }
946
+ };
947
+ // eslint-disable-next-line react-hooks/exhaustive-deps
948
+ }, []);
949
+
950
+ // \u521D\u59CB\u5316\u5BF9\u8BDD\u5386\u53F2
951
+ const initializeConversation = () => {
952
+ // \u52A0\u8F7D\u6240\u6709\u6D88\u606F\uFF0C\u4F46\u6253\u5B57\u673A\u6D88\u606F\u8BBE\u7F6E\u4E3A\u521D\u59CB\u72B6\u6001\uFF08content\u4E3A\u7A7A\uFF0Cfinished\u4E3Afalse\uFF09
953
+ const initialMessages = customerServiceHistory.map((msg) => {
954
+ if (typewriterMessageIds.includes(msg.id)) {
955
+ // \u8FD9\u662F\u9700\u8981\u6253\u5B57\u673A\u6548\u679C\u7684\u6D88\u606F\uFF0C\u521D\u59CB\u5316\u4E3A\u7A7A\u5185\u5BB9
956
+ return {
957
+ ...msg,
958
+ dataInfo: {
959
+ ...msg.dataInfo,
960
+ props: msg.dataInfo.props.map((prop: any) => ({
961
+ ...prop,
962
+ value: {
963
+ ...prop.value,
964
+ content: '', // \u521D\u59CB\u5185\u5BB9\u4E3A\u7A7A
965
+ finished: false, // \u8BBE\u7F6E\u4E3A\u672A\u5B8C\u6210\u72B6\u6001
966
+ },
967
+ })),
968
+ },
969
+ };
970
+ }
971
+ return msg;
972
+ });
973
+
974
+ setMessages(initialMessages);
975
+
976
+ // \u5EF6\u8FDF500ms\u540E\u5F00\u59CB\u7B2C\u4E00\u4E2A\u6253\u5B57\u673A\u6548\u679C
977
+ setTimeout(() => {
978
+ startTypewriterForMessage(typewriterMessageIds[0]);
979
+ }, 500);
980
+ };
981
+
982
+ // \u6253\u5B57\u673A\u6548\u679C\u6838\u5FC3\u51FD\u6570
983
+ const startTypewriterForMessage = (messageId: number) => {
984
+ setCurrentTypewriting(messageId);
985
+
986
+ // \u627E\u5230\u539F\u59CB\u6D88\u606F\uFF08\u5305\u542B\u5B8C\u6574\u5185\u5BB9\uFF09
987
+ const originalMessage = customerServiceHistory.find((m) => m.id === messageId);
988
+ if (!originalMessage) {
989
+ console.error(\`Message \${messageId} not found\`);
990
+ return;
991
+ }
992
+
993
+ const fullContent = originalMessage.dataInfo.props[0].value.content;
994
+ const fullValue = originalMessage.dataInfo.props[0].value; // \u5305\u542Btrace\u3001references\u7B49\u5B8C\u6574\u6570\u636E
995
+
996
+ let currentText = '';
997
+ let charIndex = 0;
998
+
999
+ // \u6E05\u7406\u4E4B\u524D\u7684interval\uFF08\u5982\u679C\u5B58\u5728\uFF09
1000
+ if (intervalRef.current) {
1001
+ clearInterval(intervalRef.current);
1002
+ }
1003
+
1004
+ // \u5F00\u59CB\u6253\u5B57\u673A\u6548\u679C
1005
+ intervalRef.current = setInterval(() => {
1006
+ if (charIndex < fullContent.length) {
1007
+ // \u9010\u5B57\u6DFB\u52A0
1008
+ currentText += fullContent[charIndex];
1009
+ charIndex++;
1010
+
1011
+ // \u66F4\u65B0\u6D88\u606F\u5185\u5BB9
1012
+ setMessages((prev) =>
1013
+ prev.map((msg) => {
1014
+ if (msg.id === messageId) {
1015
+ return {
1016
+ ...msg,
1017
+ dataInfo: {
1018
+ ...msg.dataInfo,
1019
+ props: msg.dataInfo.props.map((prop: any) => ({
1020
+ ...prop,
1021
+ value: {
1022
+ ...fullValue, // \u4FDD\u7559trace\u3001references\u7B49\u5B8C\u6574\u6570\u636E
1023
+ content: currentText, // \u66F4\u65B0\u5F53\u524D\u6587\u672C
1024
+ finished: false, // \u4ECD\u5728\u751F\u6210\u4E2D
1025
+ },
1026
+ })),
1027
+ },
1028
+ };
1029
+ }
1030
+ return msg;
1031
+ })
1032
+ );
1033
+
1034
+ // \u81EA\u52A8\u6EDA\u52A8\u5230\u5E95\u90E8
1035
+ try {
1036
+ assistantRef.current?.chatAppRef?.current?.scrollToEnd?.();
1037
+ } catch (e) {
1038
+ // \u5FFD\u7565\u6EDA\u52A8\u9519\u8BEF
1039
+ }
1040
+ } else {
1041
+ // \u6253\u5B57\u673A\u5B8C\u6210
1042
+ clearInterval(intervalRef.current);
1043
+ intervalRef.current = null;
1044
+
1045
+ // \u8BBE\u7F6E\u4E3A\u5B8C\u6210\u72B6\u6001
1046
+ setMessages((prev) =>
1047
+ prev.map((msg) => {
1048
+ if (msg.id === messageId) {
1049
+ return {
1050
+ ...msg,
1051
+ dataInfo: {
1052
+ ...msg.dataInfo,
1053
+ props: msg.dataInfo.props.map((prop: any) => ({
1054
+ ...prop,
1055
+ value: {
1056
+ ...fullValue,
1057
+ content: fullContent, // \u786E\u4FDD\u5185\u5BB9\u5B8C\u6574
1058
+ finished: true, // \u6807\u8BB0\u4E3A\u5B8C\u6210
1059
+ },
1060
+ })),
1061
+ },
1062
+ };
1063
+ }
1064
+ return msg;
1065
+ })
1066
+ );
1067
+
1068
+ // \u68C0\u67E5\u662F\u5426\u8FD8\u6709\u4E0B\u4E00\u4E2A\u9700\u8981\u6253\u5B57\u673A\u6548\u679C\u7684\u6D88\u606F
1069
+ const currentIndex = typewriterMessageIds.indexOf(messageId);
1070
+ if (currentIndex < typewriterMessageIds.length - 1) {
1071
+ // \u5EF6\u8FDF800ms\u540E\u5F00\u59CB\u4E0B\u4E00\u4E2A\u6D88\u606F\u7684\u6253\u5B57\u673A\u6548\u679C
1072
+ setTimeout(() => {
1073
+ startTypewriterForMessage(typewriterMessageIds[currentIndex + 1]);
1074
+ }, 800);
1075
+ } else {
1076
+ // \u6240\u6709\u6253\u5B57\u673A\u6548\u679C\u5B8C\u6210
1077
+ setCurrentTypewriting(null);
1078
+ setIsReplaying(false);
1079
+ }
1080
+ }
1081
+ }, 30); // \u6BCF30ms\u663E\u793A\u4E00\u4E2A\u5B57\u7B26
1082
+ };
1083
+
1084
+ // \u91CD\u64AD\u529F\u80FD
1085
+ const handleReplay = () => {
1086
+ // \u6E05\u7406\u5F53\u524D\u7684interval
1087
+ if (intervalRef.current) {
1088
+ clearInterval(intervalRef.current);
1089
+ intervalRef.current = null;
1090
+ }
1091
+
1092
+ // \u91CD\u7F6E\u72B6\u6001
1093
+ setIsReplaying(true);
1094
+ setCurrentTypewriting(null);
1095
+ setMessages([]);
1096
+ hasInitialized.current = false;
1097
+
1098
+ // \u5EF6\u8FDF100ms\u540E\u91CD\u65B0\u521D\u59CB\u5316
1099
+ setTimeout(() => {
1100
+ hasInitialized.current = true;
1101
+ initializeConversation();
1102
+ }, 100);
1103
+ };
1104
+
1105
+ return (
1106
+ <Card title="\u5BA2\u670D\u573A\u666F\u6F14\u793A - \u6700\u540E\u4E00\u6761\u6D88\u606F\u6253\u5B57\u673A\u6548\u679C" contentHeight="400px">
1107
+ <style>
1108
+ {\`
1109
+ .customer-service-typewriter-demo .assistant-chat-paul-ai-container {
1110
+ height: 100% !important;
1111
+ overflow: hidden !important;
1112
+ }
1113
+ .customer-service-typewriter-demo .assistant-chat-paul-ai-message-show {
1114
+ height: 100% !important;
1115
+ overflow: hidden !important;
1116
+ }
1117
+ .customer-service-typewriter-demo .assistant-chat-paul-ai-app-container {
1118
+ height: 100% !important;
1119
+ overflow: hidden !important;
1120
+ }
1121
+ .customer-service-typewriter-demo .assistant-chat-paul-ai-list {
1122
+ max-height: 300px !important;
1123
+ overflow-y: auto !important;
1124
+ }
1125
+ \`}
1126
+ </style>
1127
+ <div style={{ height: '100%', display: 'flex', flexDirection: 'column' }}>
1128
+ {/* \u4FE1\u606F\u9762\u677F */}
1129
+ <div
1130
+ style={{
1131
+ padding: '12px',
1132
+ backgroundColor: '#f0f9ff',
1133
+ borderRadius: '4px',
1134
+ marginBottom: '12px',
1135
+ fontSize: '13px',
1136
+ lineHeight: '20px',
1137
+ }}
1138
+ >
1139
+ <div style={{ display: 'flex', alignItems: 'center', justifyContent: 'space-between' }}>
1140
+ <div>
1141
+ <div style={{ fontWeight: 'bold', marginBottom: '4px' }}>
1142
+ \u{1F4BC} \u5BA2\u670D\u54A8\u8BE2\u573A\u666F - \u6D4B\u8BD5\u81EA\u52A8\u6EDA\u52A8\u8DDF\u968F\u65B0\u5185\u5BB9
1143
+ </div>
1144
+ <div style={{ color: '#666', fontSize: '12px' }}>
1145
+ \u2728 \u7279\u6027: \u5386\u53F2\u5BF9\u8BDD\u52A0\u8F7D + \u6700\u540E\u4E00\u6761\u6D88\u606F\u6253\u5B57\u673A\u6548\u679C + \u81EA\u52A8\u6EDA\u52A8\u8DDF\u968F
1146
+ {currentTypewriting && (
1147
+ <span style={{ marginLeft: '12px', color: '#1890ff' }}>
1148
+ \u26A1 \u6B63\u5728\u751F\u6210\u6700\u540E\u4E00\u6761\u56DE\u590D...
1149
+ </span>
1150
+ )}
1151
+ </div>
1152
+ </div>
1153
+ <Button onClick={handleReplay} size="small" disabled={isReplaying && currentTypewriting !== null}>
1154
+ \u{1F504} \u91CD\u64AD\u52A8\u753B
1155
+ </Button>
1156
+ </div>
1157
+ </div>
1158
+
1159
+ {/* \u5BF9\u8BDD\u533A\u57DF - \u9650\u5236\u9AD8\u5EA6\u4EE5\u4FBF\u6D4B\u8BD5\u6EDA\u52A8 */}
1160
+ <div style={{ flex: 1, overflow: 'hidden', minHeight: 0 }} className="customer-service-typewriter-demo">
1161
+ <PaulAiAssistant
1162
+ ref={assistantRef}
1163
+ bizDomain="CSE"
1164
+ bizId="customer_service_typewriter_demo"
1165
+ dataSource={messages}
1166
+ hiddenChatInput // \u9690\u85CF\u8F93\u5165\u6846\uFF0C\u53EA\u5C55\u793A\u5386\u53F2\u5BF9\u8BDD
1167
+ messageCardWidth="medium"
1168
+ emptyContent={
1169
+ <div
1170
+ style={{
1171
+ textAlign: 'center',
1172
+ padding: '80px 20px',
1173
+ color: '#999',
1174
+ }}
1175
+ >
1176
+ <div style={{ fontSize: '16px', marginBottom: '8px', fontWeight: 500 }}>
1177
+ \u6B63\u5728\u52A0\u8F7D\u5BF9\u8BDD\u5386\u53F2
1178
+ </div>
1179
+ <div style={{ fontSize: '13px' }}>\u8BF7\u7A0D\u5019...</div>
1180
+ </div>
1181
+ }
1182
+ log={(eventName, logData) => {
1183
+ console.log('log', eventName, logData);
1184
+ }}
1185
+ />
1186
+ </div>
1187
+ </div>
1188
+ </Card>
1189
+ );
1190
+ };
1191
+
1192
+ export default CustomerServiceDemo;
1193
+ `},45543:function(t,e){e.Z=`const baseTimestamp = Date.now() - 3600000;
1194
+
1195
+ // \u751F\u6210\u4E00\u6761\u7528\u6237\u6D88\u606F
1196
+ export const createUserMessage = (id: number, content: string, timestamp: number) => ({
1197
+ id,
1198
+ type: 2,
1199
+ userInfo: {
1200
+ userId: 2089,
1201
+ username: '\u6D4B\u8BD5\u7528\u6237',
1202
+ avatar: null,
1203
+ role: 2,
1204
+ },
1205
+ timestamp,
1206
+ subjectId: 'smart_scroll_test',
1207
+ dataInfo: {
1208
+ content,
1209
+ },
1210
+ dialogId: id,
1211
+ });
1212
+
1213
+ // \u751F\u6210\u4E00\u6761 AI \u6D88\u606F
1214
+ export const createAiMessage = (
1215
+ id: number,
1216
+ content: string,
1217
+ timestamp: number,
1218
+ finished = true
1219
+ ) => ({
1220
+ id,
1221
+ type: 101,
1222
+ userInfo: {
1223
+ userId: 0,
1224
+ username: null,
1225
+ avatar: null,
1226
+ role: 3,
1227
+ },
1228
+ timestamp,
1229
+ subjectId: 'smart_scroll_test',
1230
+ dataInfo: {
1231
+ component: [{ name: 'LlmGenerateCardV5' }],
1232
+ props: [
1233
+ {
1234
+ name: 'LlmGenerateCardV5',
1235
+ value: {
1236
+ finished,
1237
+ headerTips: {
1238
+ tipsContent: 'AI \u751F\u6210\u5185\u5BB9',
1239
+ showTips: false,
1240
+ },
1241
+ content,
1242
+ },
1243
+ },
1244
+ ],
1245
+ },
1246
+ headerInfo: {
1247
+ component: 'OperationCard',
1248
+ props: [{ name: 'Feedback', value: {} }, { name: 'Copy', value: { type: 'beFormat' } }],
1249
+ extInfo: {
1250
+ headerTag: {
1251
+ backgroundColor: '#EBF4F5',
1252
+ color: '#099BAB',
1253
+ text: 'AI \u52A9\u624B',
1254
+ },
1255
+ },
1256
+ },
1257
+ dialogId: id,
1258
+ });
1259
+
1260
+ // \u521D\u59CB\u6D88\u606F\u5217\u8868\uFF08\u8DB3\u591F\u591A\uFF0C\u786E\u4FDD\u9700\u8981\u6EDA\u52A8\uFF09
1261
+ export const initialMessages = [
1262
+ createUserMessage(1001, '\u4F60\u597D\uFF0C\u6211\u60F3\u4E86\u89E3\u4E00\u4E0B\u667A\u80FD\u6EDA\u52A8\u529F\u80FD', baseTimestamp),
1263
+ createAiMessage(
1264
+ 1002,
1265
+ \`\u4F60\u597D\uFF01\u5F88\u9AD8\u5174\u4E3A\u4F60\u4ECB\u7ECD\u667A\u80FD\u6EDA\u52A8\u529F\u80FD\u3002
1266
+
1267
+ ## \u667A\u80FD\u6EDA\u52A8\u7B80\u4ECB
1268
+
1269
+ \u667A\u80FD\u6EDA\u52A8\u662F\u4E00\u4E2A\u4F18\u5316\u804A\u5929\u4F53\u9A8C\u7684\u529F\u80FD\uFF0C\u4E3B\u8981\u7279\u70B9\u5305\u62EC\uFF1A
1270
+
1271
+ 1. **\u81EA\u52A8\u8DDF\u968F**\uFF1A\u5F53\u7528\u6237\u5728\u5E95\u90E8\u65F6\uFF0C\u65B0\u6D88\u606F\u4F1A\u81EA\u52A8\u6EDA\u52A8\u5230\u89C6\u56FE\u4E2D
1272
+ 2. **\u624B\u52A8\u6D4F\u89C8\u4FDD\u62A4**\uFF1A\u5F53\u7528\u6237\u5411\u4E0A\u6EDA\u52A8\u67E5\u770B\u5386\u53F2\u6D88\u606F\u65F6\uFF0C\u4E0D\u4F1A\u88AB\u5F3A\u5236\u62C9\u5230\u5E95\u90E8
1273
+ 3. **\u65B0\u6D88\u606F\u63D0\u793A**\uFF1A\u5F53\u6709\u65B0\u6D88\u606F\u4F46\u7528\u6237\u4E0D\u5728\u5E95\u90E8\u65F6\uFF0C\u663E\u793A\u63D0\u793A\u6309\u94AE
1274
+
1275
+ \u8FD9\u4E2A\u529F\u80FD\u53EF\u4EE5\u663E\u8457\u63D0\u5347\u6D41\u5F0F\u8F93\u51FA\u65F6\u7684\u7528\u6237\u4F53\u9A8C\u3002\`,
1276
+ baseTimestamp + 2000
1277
+ ),
1278
+ createUserMessage(1003, '\u542C\u8D77\u6765\u5F88\u4E0D\u9519\uFF0C\u53EF\u4EE5\u8BE6\u7EC6\u4ECB\u7ECD\u4E00\u4E0B\u81EA\u52A8\u8DDF\u968F\u529F\u80FD\u5417\uFF1F', baseTimestamp + 60000),
1279
+ createAiMessage(
1280
+ 1004,
1281
+ \`\u5F53\u7136\u53EF\u4EE5\uFF01
1282
+
1283
+ ## \u81EA\u52A8\u8DDF\u968F\u529F\u80FD\u8BE6\u89E3
1284
+
1285
+ ### \u5DE5\u4F5C\u539F\u7406
1286
+
1287
+ \u81EA\u52A8\u8DDF\u968F\u529F\u80FD\u901A\u8FC7\u76D1\u542C\u4EE5\u4E0B\u4E8B\u4EF6\u6765\u5DE5\u4F5C\uFF1A
1288
+
1289
+ 1. **\u5185\u5BB9\u9AD8\u5EA6\u53D8\u5316**\uFF1A\u4F7F\u7528 ResizeObserver \u76D1\u542C\u6D88\u606F\u5BB9\u5668\u7684\u9AD8\u5EA6\u53D8\u5316
1290
+ 2. **\u6EDA\u52A8\u4F4D\u7F6E\u68C0\u6D4B**\uFF1A\u5B9E\u65F6\u8BA1\u7B97\u7528\u6237\u4E0E\u5E95\u90E8\u7684\u8DDD\u79BB
1291
+ 3. **\u9608\u503C\u5224\u65AD**\uFF1A\u5F53\u8DDD\u79BB\u5E95\u90E8\u5C0F\u4E8E\u9608\u503C\uFF08\u9ED8\u8BA4 150px\uFF09\u65F6\uFF0C\u8BA4\u4E3A\u7528\u6237"\u5728\u5E95\u90E8"
1292
+
1293
+ ### \u89E6\u53D1\u6761\u4EF6
1294
+
1295
+ \u5F53\u6EE1\u8DB3\u4EE5\u4E0B\u6761\u4EF6\u65F6\u4F1A\u81EA\u52A8\u6EDA\u52A8\uFF1A
1296
+ - \u7528\u6237\u5728\u5E95\u90E8\u9644\u8FD1
1297
+ - \u6709\u65B0\u5185\u5BB9\u4EA7\u751F\uFF08\u65B0\u6D88\u606F\u6216\u6D41\u5F0F\u8F93\u51FA\uFF09
1298
+ - \u6CA1\u6709\u88AB\u624B\u52A8\u6682\u505C
1299
+
1300
+ ### \u4EE3\u7801\u793A\u4F8B
1301
+
1302
+ \\\`\\\`\\\`typescript
1303
+ const smartScroll = useSmartScroll({
1304
+ containerRef: chatListRef,
1305
+ enabled: true,
1306
+ followThreshold: 150, // \u8DDD\u79BB\u5E95\u90E8 150px \u5185\u8BA4\u4E3A\u5728\u5E95\u90E8
1307
+ throttleMs: 100, // \u8282\u6D41\u65F6\u95F4
1308
+ });
1309
+ \\\`\\\`\\\`\`,
1310
+ baseTimestamp + 65000
1311
+ ),
1312
+ createUserMessage(1005, '\u90A3\u65B0\u6D88\u606F\u63D0\u793A\u662F\u600E\u4E48\u5DE5\u4F5C\u7684\uFF1F', baseTimestamp + 120000),
1313
+ createAiMessage(
1314
+ 1006,
1315
+ \`## \u65B0\u6D88\u606F\u63D0\u793A\u529F\u80FD
1316
+
1317
+ ### \u663E\u793A\u65F6\u673A
1318
+
1319
+ \u65B0\u6D88\u606F\u63D0\u793A\u4F1A\u5728\u4EE5\u4E0B\u60C5\u51B5\u663E\u793A\uFF1A
1320
+ 1. \u7528\u6237\u4E0D\u5728\u5E95\u90E8\uFF08\u8DDD\u79BB > followThreshold\uFF09
1321
+ 2. \u6709\u65B0\u6D88\u606F\u5230\u8FBE\u6216\u5185\u5BB9\u66F4\u65B0
1322
+ 3. \u529F\u80FD\u5DF2\u542F\u7528 (newMessageIndicatorEnable: true)
1323
+
1324
+ ### \u6D88\u5931\u65F6\u673A
1325
+
1326
+ \u65B0\u6D88\u606F\u63D0\u793A\u4F1A\u5728\u4EE5\u4E0B\u60C5\u51B5\u6D88\u5931\uFF1A
1327
+ 1. \u7528\u6237\u70B9\u51FB\u63D0\u793A\u6309\u94AE
1328
+ 2. \u7528\u6237\u624B\u52A8\u6EDA\u52A8\u56DE\u5E95\u90E8
1329
+ 3. \u81EA\u52A8\u6EDA\u52A8\u5C06\u89C6\u56FE\u5E26\u5230\u5E95\u90E8
1330
+
1331
+ ### \u9632\u6296\u673A\u5236
1332
+
1333
+ \u4E3A\u4E86\u907F\u514D\u63D0\u793A\u95EA\u70C1\uFF0C\u6709 1 \u79D2\u7684\u4FDD\u62A4\u671F\uFF1A
1334
+ - \u663E\u793A\u63D0\u793A\u540E 1 \u79D2\u5185\u4E0D\u4F1A\u56E0\u4E3A\u6EDA\u52A8\u4E8B\u4EF6\u81EA\u52A8\u9690\u85CF
1335
+ - \u8FD9\u786E\u4FDD\u7528\u6237\u6709\u8DB3\u591F\u65F6\u95F4\u770B\u5230\u63D0\u793A
1336
+
1337
+ ### UI \u6837\u5F0F
1338
+
1339
+ \u65B0\u6D88\u606F\u63D0\u793A\u662F\u4E00\u4E2A\u56FA\u5B9A\u5728\u5E95\u90E8\u7684\u6309\u94AE\uFF0C\u70B9\u51FB\u540E\u4F1A\u5E73\u6ED1\u6EDA\u52A8\u5230\u6700\u65B0\u6D88\u606F\u3002\`,
1340
+ baseTimestamp + 125000
1341
+ ),
1342
+ createUserMessage(1007, '\u6D41\u5F0F\u8F93\u51FA\u65F6\u7684\u8868\u73B0\u5982\u4F55\uFF1F', baseTimestamp + 180000),
1343
+ createAiMessage(
1344
+ 1008,
1345
+ \`## \u6D41\u5F0F\u8F93\u51FA\u573A\u666F
1346
+
1347
+ \u6D41\u5F0F\u8F93\u51FA\u662F\u667A\u80FD\u6EDA\u52A8\u6700\u91CD\u8981\u7684\u5E94\u7528\u573A\u666F\u4E4B\u4E00\u3002
1348
+
1349
+ ### \u7528\u6237\u5728\u5E95\u90E8\u65F6
1350
+
1351
+ \u5F53\u7528\u6237\u5728\u5E95\u90E8\u89C2\u770B AI \u56DE\u590D\u65F6\uFF1A
1352
+ 1. \u6BCF\u6B21\u5185\u5BB9\u66F4\u65B0\u90FD\u4F1A\u89E6\u53D1 ResizeObserver
1353
+ 2. \u68C0\u6D4B\u5230\u7528\u6237\u5728\u5E95\u90E8\uFF0C\u81EA\u52A8\u8C03\u7528\u8282\u6D41\u6EDA\u52A8
1354
+ 3. \u89C6\u56FE\u5E73\u6ED1\u8DDF\u968F\u5185\u5BB9\u589E\u957F
1355
+ 4. \u8282\u6D41\u65F6\u95F4\u9ED8\u8BA4 100ms\uFF0C\u786E\u4FDD\u6D41\u7545\u4E0D\u5361\u987F
1356
+
1357
+ ### \u7528\u6237\u79BB\u5F00\u5E95\u90E8\u65F6
1358
+
1359
+ \u5F53\u7528\u6237\u5728\u6D41\u5F0F\u8F93\u51FA\u8FC7\u7A0B\u4E2D\u5411\u4E0A\u6EDA\u52A8\uFF1A
1360
+ 1. \u68C0\u6D4B\u5230\u7528\u6237\u79BB\u5F00\u5E95\u90E8
1361
+ 2. \u663E\u793A\u65B0\u6D88\u606F\u63D0\u793A
1362
+ 3. \u6682\u505C\u81EA\u52A8\u6EDA\u52A8\uFF0C\u4E0D\u6253\u6270\u7528\u6237\u6D4F\u89C8
1363
+ 4. \u7528\u6237\u53EF\u4EE5\u968F\u65F6\u70B9\u51FB\u63D0\u793A\u56DE\u5230\u6700\u65B0\u4F4D\u7F6E
1364
+
1365
+ ### \u6027\u80FD\u4F18\u5316
1366
+
1367
+ - \u4F7F\u7528 requestAnimationFrame \u4F18\u5316\u6EDA\u52A8\u6027\u80FD
1368
+ - \u8282\u6D41\u673A\u5236\u907F\u514D\u8FC7\u4E8E\u9891\u7E41\u7684\u6EDA\u52A8\u8C03\u7528
1369
+ - \u5C0F\u8DDD\u79BB\u4F7F\u7528 'auto'\uFF0C\u5927\u8DDD\u79BB\u4F7F\u7528 'smooth' \u52A8\u753B\`,
1370
+ baseTimestamp + 185000
1371
+ ),
1372
+ ];
1373
+
1374
+ // \u7528\u4E8E\u6A21\u62DF\u6D41\u5F0F\u8F93\u51FA\u7684\u957F\u6587\u672C
1375
+ export const streamingContent = \`## \u8FD9\u662F\u4E00\u6BB5\u6D41\u5F0F\u8F93\u51FA\u7684\u5185\u5BB9
1376
+
1377
+ \u8BA9\u6211\u6765\u8BE6\u7EC6\u89E3\u91CA\u4E00\u4E0B\u667A\u80FD\u6EDA\u52A8\u7684\u5B9E\u73B0\u539F\u7406...
1378
+
1379
+ ### \u7B2C\u4E00\u90E8\u5206\uFF1A\u72B6\u6001\u7BA1\u7406
1380
+
1381
+ \u667A\u80FD\u6EDA\u52A8\u7CFB\u7EDF\u4F7F\u7528\u4EE5\u4E0B\u72B6\u6001\uFF1A
1382
+
1383
+ 1. **isNearBottom**: \u7528\u6237\u662F\u5426\u5728\u5E95\u90E8\u9644\u8FD1
1384
+ - \u901A\u8FC7\u8BA1\u7B97 scrollHeight - scrollTop - clientHeight \u5F97\u5230\u8DDD\u79BB
1385
+ - \u8DDD\u79BB <= followThreshold \u65F6\u4E3A true
1386
+
1387
+ 2. **isPaused**: \u662F\u5426\u6682\u505C\u81EA\u52A8\u6EDA\u52A8
1388
+ - \u663E\u793A\u65B0\u6D88\u606F\u63D0\u793A\u65F6\u81EA\u52A8\u6682\u505C
1389
+ - \u7528\u6237\u56DE\u5230\u5E95\u90E8\u65F6\u6062\u590D
1390
+
1391
+ 3. **showIndicator**: \u662F\u5426\u663E\u793A\u65B0\u6D88\u606F\u63D0\u793A
1392
+ - \u7528\u6237\u4E0D\u5728\u5E95\u90E8\u4E14\u6709\u65B0\u5185\u5BB9\u65F6\u663E\u793A
1393
+ - \u6709\u9632\u6296\u4FDD\u62A4\u673A\u5236
1394
+
1395
+ ### \u7B2C\u4E8C\u90E8\u5206\uFF1A\u6838\u5FC3 Hook
1396
+
1397
+ \\\`\\\`\\\`typescript
1398
+ // useSmartScroll - \u6838\u5FC3\u72B6\u6001\u7BA1\u7406
1399
+ const {
1400
+ shouldAutoScroll, // \u662F\u5426\u5E94\u8BE5\u81EA\u52A8\u6EDA\u52A8
1401
+ smoothScrollToBottom, // \u5E73\u6ED1\u6EDA\u52A8\u5230\u5E95\u90E8
1402
+ throttledScrollToBottom, // \u8282\u6D41\u6EDA\u52A8\uFF08\u7528\u4E8E\u6D41\u5F0F\uFF09
1403
+ updateIsNearBottom, // \u5B9E\u65F6\u66F4\u65B0\u4F4D\u7F6E\u72B6\u6001
1404
+ showNewMessageIndicator, // \u65B0\u6D88\u606F\u63D0\u793A\u72B6\u6001
1405
+ } = useSmartScroll(options);
1406
+
1407
+ // useContentHeightObserver - \u5185\u5BB9\u9AD8\u5EA6\u76D1\u542C
1408
+ useContentHeightObserver({
1409
+ containerRef,
1410
+ smartScroll,
1411
+ enabled: true,
1412
+ isStreaming,
1413
+ });
1414
+ \\\`\\\`\\\`
1415
+
1416
+ ### \u7B2C\u4E09\u90E8\u5206\uFF1A\u4E8B\u4EF6\u6D41\u7A0B
1417
+
1418
+ \\\`\\\`\\\`
1419
+ \u65B0\u6D88\u606F\u5230\u8FBE
1420
+ \u2193
1421
+ \u251C\u2500 \u7528\u6237\u6D88\u606F \u2192 \u5F3A\u5236\u6EDA\u52A8\u5230\u5E95\u90E8
1422
+ \u2514\u2500 AI \u6D88\u606F \u2192 \u7B49\u5F85 ContentHeightObserver \u5904\u7406
1423
+ \u2193
1424
+ \u5185\u5BB9\u9AD8\u5EA6\u589E\u52A0 (ResizeObserver)
1425
+ \u2193
1426
+ updateIsNearBottom() \u68C0\u67E5\u4F4D\u7F6E
1427
+ \u2193
1428
+ \u251C\u2500 \u5728\u5E95\u90E8 \u2192 throttledScrollToBottom()
1429
+ \u2514\u2500 \u4E0D\u5728\u5E95\u90E8 \u2192 setShowNewMessageIndicator(true)
1430
+ \\\`\\\`\\\`
1431
+
1432
+ ### \u7B2C\u56DB\u90E8\u5206\uFF1A\u6700\u4F73\u5B9E\u8DF5
1433
+
1434
+ 1. **\u5408\u7406\u8BBE\u7F6E followThreshold**
1435
+ - \u592A\u5C0F\u53EF\u80FD\u5BFC\u81F4\u8F7B\u5FAE\u6EDA\u52A8\u5C31\u79BB\u5F00\u5E95\u90E8
1436
+ - \u592A\u5927\u53EF\u80FD\u5BFC\u81F4\u660E\u663E\u4E0D\u5728\u5E95\u90E8\u4E5F\u89E6\u53D1\u81EA\u52A8\u6EDA\u52A8
1437
+ - \u63A8\u8350\u503C\uFF1A100-200px
1438
+
1439
+ 2. **\u6CE8\u610F\u6D41\u5F0F\u8F93\u51FA\u7684\u8282\u6D41**
1440
+ - throttleMs \u8BBE\u7F6E\u592A\u5C0F\u4F1A\u5BFC\u81F4\u8FC7\u4E8E\u9891\u7E41\u7684\u6EDA\u52A8
1441
+ - \u8BBE\u7F6E\u592A\u5927\u4F1A\u5BFC\u81F4\u8DDF\u968F\u4E0D\u591F\u53CA\u65F6
1442
+ - \u63A8\u8350\u503C\uFF1A80-150ms
1443
+
1444
+ 3. **\u65B0\u6D88\u606F\u63D0\u793A\u7684\u6837\u5F0F**
1445
+ - \u5E94\u8BE5\u8DB3\u591F\u9192\u76EE\u4F46\u4E0D\u906E\u6321\u5185\u5BB9
1446
+ - \u4F4D\u7F6E\u5E94\u8BE5\u5728\u53EF\u89C6\u533A\u57DF\u5185
1447
+ - \u70B9\u51FB\u533A\u57DF\u8981\u8DB3\u591F\u5927
1448
+
1449
+ \u8FD9\u5C31\u662F\u667A\u80FD\u6EDA\u52A8\u7CFB\u7EDF\u7684\u5B8C\u6574\u4ECB\u7ECD\uFF01\u5E0C\u671B\u5BF9\u4F60\u6709\u5E2E\u52A9\u3002\`;
1450
+
1451
+ // \u8FFD\u52A0\u6D88\u606F\u6A21\u677F
1452
+ export const appendMessages = [
1453
+ createUserMessage(2001, '\u80FD\u7ED9\u6211\u6F14\u793A\u4E00\u4E0B\u65B0\u6D88\u606F\u7684\u6548\u679C\u5417\uFF1F', Date.now()),
1454
+ createAiMessage(
1455
+ 2002,
1456
+ '\u5F53\u7136\u53EF\u4EE5\uFF01\u6211\u73B0\u5728\u53D1\u9001\u4E00\u6761\u65B0\u6D88\u606F\uFF0C\u5982\u679C\u4F60\u4E0D\u5728\u5E95\u90E8\uFF0C\u5E94\u8BE5\u80FD\u770B\u5230\u65B0\u6D88\u606F\u63D0\u793A\u3002',
1457
+ Date.now() + 1000
1458
+ ),
1459
+ createUserMessage(2003, '\u6211\u770B\u5230\u4E86\u65B0\u6D88\u606F\u63D0\u793A\uFF01\u70B9\u51FB\u540E\u679C\u7136\u6EDA\u52A8\u5230\u5E95\u90E8\u4E86', Date.now() + 60000),
1460
+ createAiMessage(
1461
+ 2004,
1462
+ \`\u592A\u597D\u4E86\uFF01\u8FD9\u8BF4\u660E\u667A\u80FD\u6EDA\u52A8\u529F\u80FD\u5DE5\u4F5C\u6B63\u5E38\u3002
1463
+
1464
+ \u4F60\u53EF\u4EE5\u7EE7\u7EED\u6D4B\u8BD5\u4EE5\u4E0B\u573A\u666F\uFF1A
1465
+ 1. \u5728\u6D41\u5F0F\u8F93\u51FA\u65F6\u5411\u4E0A\u6EDA\u52A8\uFF0C\u89C2\u5BDF\u65B0\u6D88\u606F\u63D0\u793A
1466
+ 2. \u70B9\u51FB\u65B0\u6D88\u606F\u63D0\u793A\uFF0C\u89C2\u5BDF\u6EDA\u52A8\u884C\u4E3A
1467
+ 3. \u624B\u52A8\u6EDA\u52A8\u5230\u5E95\u90E8\uFF0C\u89C2\u5BDF\u63D0\u793A\u662F\u5426\u6D88\u5931
1468
+
1469
+ \u6709\u4EFB\u4F55\u95EE\u9898\u968F\u65F6\u95EE\u6211\uFF01\`,
1470
+ Date.now() + 61000
1471
+ ),
1472
+ ];
1473
+ `},84370:function(t,e){e.Z=`import { useCallback, useEffect, useRef, useState } from 'react';
1474
+ import { Button, Card, InputNumber, message, Switch } from '@alife/magic-basic';
1475
+ import PaulAiAssistant from '@alife/paul-ai-assistant';
1476
+ import type { IScrollState } from '@alife/paul-ai-assistant';
1477
+ import '../config';
1478
+ import {
1479
+ appendMessages,
1480
+ createAiMessage,
1481
+ createUserMessage,
1482
+ initialMessages,
1483
+ streamingContent,
1484
+ } from './smart-scroll-data';
1485
+
1486
+ /**
1487
+ * \u667A\u80FD\u6EDA\u52A8\u529F\u80FD\u6D4B\u8BD5 Demo
1488
+ * \u7528\u4E8E\u6D4B\u8BD5\u81EA\u52A8\u6EDA\u52A8\u548C\u65B0\u6D88\u606F\u63D0\u793A\u7684\u663E\u793A/\u6D88\u5931\u903B\u8F91
1489
+ */
1490
+ const SmartScrollDemo = () => {
1491
+ const assistantRef = useRef<any>(null);
1492
+ const [messages, setMessages] = useState<any[]>([]);
1493
+ const [isStreaming, setIsStreaming] = useState(false);
1494
+ const [scrollState, setScrollState] = useState<IScrollState | null>(null);
1495
+ const streamingIntervalRef = useRef<any>(null);
1496
+ const messageIdRef = useRef(3000);
1497
+
1498
+ // \u914D\u7F6E\u9879
1499
+ const [smartScrollEnabled, setSmartScrollEnabled] = useState(true);
1500
+ const [newMessageIndicatorEnabled, setNewMessageIndicatorEnabled] = useState(true);
1501
+ const [followThreshold, setFollowThreshold] = useState(150);
1502
+
1503
+ // \u521D\u59CB\u5316
1504
+ useEffect(() => {
1505
+ setMessages(initialMessages);
1506
+ return () => {
1507
+ if (streamingIntervalRef.current) {
1508
+ clearInterval(streamingIntervalRef.current);
1509
+ }
1510
+ };
1511
+ }, []);
1512
+
1513
+ // \u6EDA\u52A8\u72B6\u6001\u53D8\u5316\u56DE\u8C03
1514
+ const handleScrollStateChange = useCallback((state: IScrollState) => {
1515
+ setScrollState(state);
1516
+ console.log('[SmartScrollDemo] \u6EDA\u52A8\u72B6\u6001\u53D8\u5316:', state);
1517
+ }, []);
1518
+
1519
+ // \u6DFB\u52A0\u4E00\u6761\u65B0\u6D88\u606F
1520
+ const handleAddMessage = useCallback(() => {
1521
+ const newId = messageIdRef.current++;
1522
+ const userMsg = createUserMessage(newId, \`\u8FD9\u662F\u7B2C \${newId} \u6761\u6D4B\u8BD5\u6D88\u606F\`, Date.now());
1523
+ setMessages((prev) => [...prev, userMsg]);
1524
+
1525
+ // \u5EF6\u8FDF\u6DFB\u52A0 AI \u56DE\u590D
1526
+ setTimeout(() => {
1527
+ const aiId = messageIdRef.current++;
1528
+ const aiMsg = createAiMessage(
1529
+ aiId,
1530
+ \`\u6536\u5230\u4F60\u7684\u7B2C \${newId} \u6761\u6D88\u606F\uFF01\u8FD9\u662F AI \u7684\u56DE\u590D\u3002\\n\\n\u5F53\u524D\u65F6\u95F4\uFF1A\${new Date().toLocaleTimeString()}\`,
1531
+ Date.now(),
1532
+ );
1533
+ setMessages((prev) => [...prev, aiMsg]);
1534
+ message.success('\u5DF2\u6DFB\u52A0\u65B0\u6D88\u606F');
1535
+ }, 500);
1536
+ }, []);
1537
+
1538
+ // \u6279\u91CF\u6DFB\u52A0\u6D88\u606F\uFF08\u7528\u4E8E\u6D4B\u8BD5\u5927\u91CF\u6D88\u606F\u573A\u666F\uFF09
1539
+ const handleBatchAddMessages = useCallback(() => {
1540
+ const newMessages: any[] = [];
1541
+ for (let i = 0; i < 5; i++) {
1542
+ const userMsgId = messageIdRef.current++;
1543
+ const aiMsgId = messageIdRef.current++;
1544
+ newMessages.push(
1545
+ createUserMessage(userMsgId, \`\u6279\u91CF\u6D88\u606F \${i + 1}\uFF1A\u8FD9\u662F\u7528\u6237\u7684\u95EE\u9898\`, Date.now() + i * 1000),
1546
+ );
1547
+ newMessages.push(
1548
+ createAiMessage(
1549
+ aiMsgId,
1550
+ \`\u6279\u91CF\u6D88\u606F \${i + 1}\uFF1A\u8FD9\u662F AI \u7684\u56DE\u590D\u3002\\n\\n\u8FD9\u6761\u6D88\u606F\u7528\u4E8E\u6D4B\u8BD5\u6279\u91CF\u6DFB\u52A0\u65F6\u7684\u6EDA\u52A8\u884C\u4E3A\u3002\`,
1551
+ Date.now() + i * 1000 + 500,
1552
+ ),
1553
+ );
1554
+ }
1555
+ setMessages((prev) => [...prev, ...newMessages]);
1556
+ message.success('\u5DF2\u6279\u91CF\u6DFB\u52A0 10 \u6761\u6D88\u606F');
1557
+ }, []);
1558
+
1559
+ // \u6A21\u62DF\u6D41\u5F0F\u8F93\u51FA
1560
+ const handleStartStreaming = useCallback(() => {
1561
+ if (isStreaming) {
1562
+ message.warning('\u6B63\u5728\u6D41\u5F0F\u8F93\u51FA\u4E2D...');
1563
+ return;
1564
+ }
1565
+
1566
+ // \u5148\u6DFB\u52A0\u4E00\u6761\u7528\u6237\u6D88\u606F
1567
+ const userMsgId = messageIdRef.current++;
1568
+ const userMsg = createUserMessage(userMsgId, '\u8BF7\u7ED9\u6211\u6F14\u793A\u6D41\u5F0F\u8F93\u51FA\u6548\u679C', Date.now());
1569
+ setMessages((prev) => [...prev, userMsg]);
1570
+
1571
+ // \u5F00\u59CB\u6D41\u5F0F\u8F93\u51FA
1572
+ setIsStreaming(true);
1573
+ const aiMsgId = messageIdRef.current++;
1574
+ let currentIndex = 0;
1575
+ const fullContent = streamingContent;
1576
+
1577
+ // \u521D\u59CB\u6DFB\u52A0\u7A7A\u6D88\u606F
1578
+ setTimeout(() => {
1579
+ const initialAiMsg = createAiMessage(aiMsgId, '', Date.now(), false);
1580
+ setMessages((prev) => [...prev, initialAiMsg]);
1581
+
1582
+ // \u5F00\u59CB\u9010\u5B57\u8F93\u51FA
1583
+ streamingIntervalRef.current = setInterval(() => {
1584
+ if (currentIndex < fullContent.length) {
1585
+ // \u6BCF\u6B21\u6DFB\u52A0 3-8 \u4E2A\u5B57\u7B26\uFF08\u6A21\u62DF\u771F\u5B9E\u6D41\u5F0F\uFF09
1586
+ const charsToAdd = Math.floor(Math.random() * 6) + 3;
1587
+ currentIndex = Math.min(currentIndex + charsToAdd, fullContent.length);
1588
+ const currentContent = fullContent.slice(0, currentIndex);
1589
+ const isFinished = currentIndex >= fullContent.length;
1590
+
1591
+ setMessages((prev) =>
1592
+ prev.map((msg) => {
1593
+ if (msg.id === aiMsgId) {
1594
+ return {
1595
+ ...msg,
1596
+ dataInfo: {
1597
+ ...msg.dataInfo,
1598
+ props: msg.dataInfo.props.map((prop: any) => ({
1599
+ ...prop,
1600
+ value: {
1601
+ ...prop.value,
1602
+ content: currentContent,
1603
+ finished: isFinished,
1604
+ },
1605
+ })),
1606
+ },
1607
+ };
1608
+ }
1609
+ return msg;
1610
+ }),
1611
+ );
1612
+
1613
+ if (isFinished) {
1614
+ clearInterval(streamingIntervalRef.current);
1615
+ streamingIntervalRef.current = null;
1616
+ setIsStreaming(false);
1617
+ message.success('\u6D41\u5F0F\u8F93\u51FA\u5B8C\u6210');
1618
+ }
1619
+ }
1620
+ }, 30);
1621
+ }, 300);
1622
+ }, [isStreaming]);
1623
+
1624
+ // \u505C\u6B62\u6D41\u5F0F\u8F93\u51FA
1625
+ const handleStopStreaming = useCallback(() => {
1626
+ if (streamingIntervalRef.current) {
1627
+ clearInterval(streamingIntervalRef.current);
1628
+ streamingIntervalRef.current = null;
1629
+ setIsStreaming(false);
1630
+
1631
+ // \u5C06\u5F53\u524D\u6D88\u606F\u6807\u8BB0\u4E3A\u5B8C\u6210
1632
+ setMessages((prev) =>
1633
+ prev.map((msg) => {
1634
+ if (msg.dataInfo?.props?.[0]?.value?.finished === false) {
1635
+ return {
1636
+ ...msg,
1637
+ dataInfo: {
1638
+ ...msg.dataInfo,
1639
+ props: msg.dataInfo.props.map((prop: any) => ({
1640
+ ...prop,
1641
+ value: {
1642
+ ...prop.value,
1643
+ finished: true,
1644
+ },
1645
+ })),
1646
+ },
1647
+ };
1648
+ }
1649
+ return msg;
1650
+ }),
1651
+ );
1652
+ message.info('\u5DF2\u505C\u6B62\u6D41\u5F0F\u8F93\u51FA');
1653
+ }
1654
+ }, []);
1655
+
1656
+ // \u91CD\u7F6E\u6D88\u606F
1657
+ const handleReset = useCallback(() => {
1658
+ handleStopStreaming();
1659
+ setMessages(initialMessages);
1660
+ messageIdRef.current = 3000;
1661
+ message.success('\u5DF2\u91CD\u7F6E\u6D88\u606F\u5217\u8868');
1662
+ }, [handleStopStreaming]);
1663
+
1664
+ // \u6EDA\u52A8\u5230\u5E95\u90E8\uFF08\u6D4B\u8BD5\u624B\u52A8\u6EDA\u52A8\uFF09
1665
+ const handleScrollToBottom = useCallback(() => {
1666
+ try {
1667
+ assistantRef.current?.chatAppRef?.current?.scrollToEnd?.();
1668
+ message.success('\u5DF2\u6EDA\u52A8\u5230\u5E95\u90E8');
1669
+ } catch (e) {
1670
+ message.error('\u6EDA\u52A8\u5931\u8D25');
1671
+ }
1672
+ }, []);
1673
+
1674
+ // \u6EDA\u52A8\u5230\u9876\u90E8\uFF08\u6D4B\u8BD5\u79BB\u5F00\u5E95\u90E8\u573A\u666F\uFF09
1675
+ const handleScrollToTop = useCallback(() => {
1676
+ try {
1677
+ const container = assistantRef.current?.chatAppRef?.current?.chatListRef?.current;
1678
+ if (container) {
1679
+ container.scrollTo({ top: 0, behavior: 'smooth' });
1680
+ message.success('\u5DF2\u6EDA\u52A8\u5230\u9876\u90E8 - \u8BF7\u89C2\u5BDF\u65B0\u6D88\u606F\u63D0\u793A');
1681
+ }
1682
+ } catch (e) {
1683
+ message.error('\u6EDA\u52A8\u5931\u8D25');
1684
+ }
1685
+ }, []);
1686
+
1687
+ return (
1688
+ <Card title="\u667A\u80FD\u6EDA\u52A8\u529F\u80FD\u6D4B\u8BD5" bodyStyle={{ height: 800 }}>
1689
+ <style>
1690
+ {\`
1691
+ .smart-scroll-demo .assistant-chat-paul-ai-container {
1692
+ height: 100% !important;
1693
+ overflow: hidden !important;
1694
+ }
1695
+ .smart-scroll-demo .assistant-chat-paul-ai-message-show {
1696
+ height: 100% !important;
1697
+ overflow: hidden !important;
1698
+ }
1699
+ .smart-scroll-demo .assistant-chat-paul-ai-app-container {
1700
+ height: 100% !important;
1701
+ overflow: hidden !important;
1702
+ position: relative !important;
1703
+ }
1704
+ .smart-scroll-demo .assistant-chat-paul-ai-list {
1705
+ max-height: 380px !important;
1706
+ overflow-y: auto !important;
1707
+ }
1708
+ .smart-scroll-config-panel {
1709
+ padding: 12px;
1710
+ background: #f5f5f5;
1711
+ border-radius: 8px;
1712
+ margin-bottom: 12px;
1713
+ }
1714
+ .smart-scroll-config-row {
1715
+ display: flex;
1716
+ align-items: center;
1717
+ gap: 16px;
1718
+ margin-bottom: 8px;
1719
+ flex-wrap: wrap;
1720
+ }
1721
+ .smart-scroll-config-item {
1722
+ display: flex;
1723
+ align-items: center;
1724
+ gap: 8px;
1725
+ }
1726
+ .smart-scroll-config-label {
1727
+ font-size: 13px;
1728
+ color: #333;
1729
+ white-space: nowrap;
1730
+ }
1731
+ .smart-scroll-actions {
1732
+ display: flex;
1733
+ gap: 8px;
1734
+ flex-wrap: wrap;
1735
+ }
1736
+ .smart-scroll-status {
1737
+ padding: 8px 12px;
1738
+ background: #e6f7ff;
1739
+ border-radius: 4px;
1740
+ font-size: 12px;
1741
+ margin-bottom: 12px;
1742
+ font-family: monospace;
1743
+ }
1744
+ .smart-scroll-status-item {
1745
+ display: inline-block;
1746
+ margin-right: 16px;
1747
+ }
1748
+ .smart-scroll-status-label {
1749
+ color: #666;
1750
+ }
1751
+ .smart-scroll-status-value {
1752
+ color: #1890ff;
1753
+ font-weight: 500;
1754
+ }
1755
+ .smart-scroll-status-value.warning {
1756
+ color: #faad14;
1757
+ }
1758
+ .smart-scroll-status-value.success {
1759
+ color: #52c41a;
1760
+ }
1761
+ \`}
1762
+ </style>
1763
+
1764
+ <div style={{ height: '100%', display: 'flex', flexDirection: 'column' }}>
1765
+ {/* \u914D\u7F6E\u9762\u677F */}
1766
+ <div className="smart-scroll-config-panel">
1767
+ <div className="smart-scroll-config-row">
1768
+ <div className="smart-scroll-config-item">
1769
+ <span className="smart-scroll-config-label">\u667A\u80FD\u6EDA\u52A8:</span>
1770
+ <Switch checked={smartScrollEnabled} onChange={setSmartScrollEnabled} size="small" />
1771
+ </div>
1772
+ <div className="smart-scroll-config-item">
1773
+ <span className="smart-scroll-config-label">\u65B0\u6D88\u606F\u63D0\u793A:</span>
1774
+ <Switch
1775
+ checked={newMessageIndicatorEnabled}
1776
+ onChange={setNewMessageIndicatorEnabled}
1777
+ size="small"
1778
+ />
1779
+ </div>
1780
+ <div className="smart-scroll-config-item">
1781
+ <span className="smart-scroll-config-label">\u8DDF\u968F\u9608\u503C:</span>
1782
+ <InputNumber
1783
+ value={followThreshold}
1784
+ onChange={(v) => setFollowThreshold(v || 150)}
1785
+ min={50}
1786
+ max={500}
1787
+ step={50}
1788
+ style={{ width: 100 }}
1789
+ size="small"
1790
+ />
1791
+ <span className="smart-scroll-config-label">px</span>
1792
+ </div>
1793
+ </div>
1794
+
1795
+ <div className="smart-scroll-actions">
1796
+ <Button size="small" type="primary" onClick={handleAddMessage}>
1797
+ \u6DFB\u52A0\u6D88\u606F
1798
+ </Button>
1799
+ <Button size="small" onClick={handleBatchAddMessages}>
1800
+ \u6279\u91CF\u6DFB\u52A0(5\u8F6E)
1801
+ </Button>
1802
+ <Button
1803
+ size="small"
1804
+ type="primary"
1805
+ onClick={handleStartStreaming}
1806
+ disabled={isStreaming}
1807
+ >
1808
+ {isStreaming ? '\u8F93\u51FA\u4E2D...' : '\u6A21\u62DF\u6D41\u5F0F\u8F93\u51FA'}
1809
+ </Button>
1810
+ {isStreaming && (
1811
+ <Button size="small" warning onClick={handleStopStreaming}>
1812
+ \u505C\u6B62\u8F93\u51FA
1813
+ </Button>
1814
+ )}
1815
+ <Button size="small" onClick={handleScrollToTop}>
1816
+ \u6EDA\u52A8\u5230\u9876\u90E8
1817
+ </Button>
1818
+ <Button size="small" onClick={handleScrollToBottom}>
1819
+ \u6EDA\u52A8\u5230\u5E95\u90E8
1820
+ </Button>
1821
+ <Button size="small" onClick={handleReset}>
1822
+ \u91CD\u7F6E
1823
+ </Button>
1824
+ </div>
1825
+ </div>
1826
+
1827
+ {/* \u6EDA\u52A8\u72B6\u6001\u663E\u793A */}
1828
+ {scrollState && smartScrollEnabled && (
1829
+ <div className="smart-scroll-status">
1830
+ <span className="smart-scroll-status-item">
1831
+ <span className="smart-scroll-status-label">\u8DDD\u79BB\u5E95\u90E8: </span>
1832
+ <span
1833
+ className={\`smart-scroll-status-value \${
1834
+ scrollState.distanceToBottom <= followThreshold ? 'success' : 'warning'
1835
+ }\`}
1836
+ >
1837
+ {Math.round(scrollState.distanceToBottom)}px
1838
+ </span>
1839
+ </span>
1840
+ <span className="smart-scroll-status-item">
1841
+ <span className="smart-scroll-status-label">\u5728\u5E95\u90E8: </span>
1842
+ <span
1843
+ className={\`smart-scroll-status-value \${
1844
+ scrollState.isNearBottom ? 'success' : 'warning'
1845
+ }\`}
1846
+ >
1847
+ {scrollState.isNearBottom ? '\u662F' : '\u5426'}
1848
+ </span>
1849
+ </span>
1850
+ <span className="smart-scroll-status-item">
1851
+ <span className="smart-scroll-status-label">\u5DF2\u6682\u505C: </span>
1852
+ <span
1853
+ className={\`smart-scroll-status-value \${
1854
+ scrollState.isPaused ? 'warning' : 'success'
1855
+ }\`}
1856
+ >
1857
+ {scrollState.isPaused ? '\u662F' : '\u5426'}
1858
+ </span>
1859
+ </span>
1860
+ <span className="smart-scroll-status-item">
1861
+ <span className="smart-scroll-status-label">\u5185\u5BB9\u9AD8\u5EA6: </span>
1862
+ <span className="smart-scroll-status-value">
1863
+ {Math.round(scrollState.scrollHeight || 0)}px
1864
+ </span>
1865
+ </span>
1866
+ <span className="smart-scroll-status-item">
1867
+ <span className="smart-scroll-status-label">\u6D88\u606F\u6570: </span>
1868
+ <span className="smart-scroll-status-value">{messages.length}</span>
1869
+ </span>
1870
+ </div>
1871
+ )}
1872
+
1873
+ {/* \u4F7F\u7528\u8BF4\u660E */}
1874
+ <div
1875
+ style={{
1876
+ padding: '8px 12px',
1877
+ background: '#fffbe6',
1878
+ borderRadius: '4px',
1879
+ marginBottom: '12px',
1880
+ fontSize: '12px',
1881
+ color: '#ad8b00',
1882
+ }}
1883
+ >
1884
+ <strong>\u6D4B\u8BD5\u6B65\u9AA4:</strong>
1885
+ 1. \u70B9\u51FB"\u6EDA\u52A8\u5230\u9876\u90E8"\u79BB\u5F00\u5E95\u90E8 \u2192 2. \u70B9\u51FB"\u6DFB\u52A0\u6D88\u606F"\u6216"\u6A21\u62DF\u6D41\u5F0F\u8F93\u51FA" \u2192 3. \u89C2\u5BDF\u65B0\u6D88\u606F\u63D0\u793A\u51FA\u73B0 \u2192
1886
+ 4. \u70B9\u51FB\u65B0\u6D88\u606F\u63D0\u793A\u6216\u6EDA\u52A8\u5230\u5E95\u90E8\uFF0C\u89C2\u5BDF\u63D0\u793A\u6D88\u5931
1887
+ </div>
1888
+
1889
+ {/* \u5BF9\u8BDD\u533A\u57DF */}
1890
+ <div style={{ flex: 1, overflow: 'hidden', minHeight: 0 }} className="smart-scroll-demo">
1891
+ <PaulAiAssistant
1892
+ ref={assistantRef}
1893
+ bizDomain="CSE"
1894
+ bizId="smart_scroll_demo"
1895
+ dataSource={messages}
1896
+ hiddenChatInput
1897
+ messageCardWidth="medium"
1898
+ smartScrollConfig={{
1899
+ enabled: smartScrollEnabled,
1900
+ followThreshold,
1901
+ throttleMs: 100,
1902
+ }}
1903
+ newMessageIndicatorEnable={newMessageIndicatorEnabled}
1904
+ onScrollStateChange={handleScrollStateChange}
1905
+ emptyContent={
1906
+ <div style={{ textAlign: 'center', padding: '80px 20px', color: '#999' }}>
1907
+ <div style={{ fontSize: '16px', marginBottom: '8px' }}>\u52A0\u8F7D\u4E2D...</div>
1908
+ </div>
1909
+ }
1910
+ log={(eventName, logData) => {
1911
+ console.log('[SmartScrollDemo] log:', eventName, logData);
1912
+ }}
1913
+ />
1914
+ </div>
1915
+ </div>
1916
+ </Card>
1917
+ );
1918
+ };
1919
+
1920
+ export default SmartScrollDemo;
321
1921
  `},19783:function(t,e){e.Z=`// LaTeX \u6570\u5B66\u516C\u5F0F\u793A\u4F8B\u6570\u636E
322
1922
  export const latexData = \`
323
1923
  # LaTeX \u6570\u5B66\u516C\u5F0F\u6E32\u67D3\u793A\u4F8B