@ai-group/chat-sdk 3.8.0-alpha.1 → 3.8.0-alpha.2

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 (54) hide show
  1. package/dist/cjs/components/XAdkChatbot/index.js +240 -68
  2. package/dist/cjs/components/XAdkChatbot/index.js.map +3 -3
  3. package/dist/cjs/components/XAdkChatbot/styles.d.ts +1 -0
  4. package/dist/cjs/components/XAdkChatbot/styles.js +34 -6
  5. package/dist/cjs/components/XAdkChatbot/styles.js.map +2 -2
  6. package/dist/cjs/components/XAdkProvider/compound/Messages.d.ts +7 -1
  7. package/dist/cjs/components/XAdkProvider/compound/Messages.js +10 -0
  8. package/dist/cjs/components/XAdkProvider/compound/Messages.js.map +2 -2
  9. package/dist/cjs/components/XAdkSender/index.js +53 -5
  10. package/dist/cjs/components/XAdkSender/index.js.map +3 -3
  11. package/dist/cjs/components/XAdkThoughtChain/index.js +7 -3
  12. package/dist/cjs/components/XAdkThoughtChain/index.js.map +2 -2
  13. package/dist/cjs/components/XAdkThoughtChain/styles.d.ts +1 -1
  14. package/dist/cjs/components/XAdkThoughtChain/styles.js +25 -32
  15. package/dist/cjs/components/XAdkThoughtChain/styles.js.map +2 -2
  16. package/dist/cjs/components/XAiChatbot/index.js.map +2 -2
  17. package/dist/cjs/components/XAiProvider/index.js.map +2 -2
  18. package/dist/cjs/hooks/useADKMessageQueue.d.ts +4 -2
  19. package/dist/cjs/hooks/useADKMessageQueue.js +13 -11
  20. package/dist/cjs/hooks/useADKMessageQueue.js.map +2 -2
  21. package/dist/cjs/types/XAdkChatbot.d.ts +36 -0
  22. package/dist/cjs/types/XAdkChatbot.js.map +1 -1
  23. package/dist/cjs/types/XAdkSender.d.ts +8 -1
  24. package/dist/cjs/types/XAdkSender.js.map +1 -1
  25. package/dist/cjs/types/antdx.d.ts +4 -1
  26. package/dist/cjs/types/antdx.js.map +1 -1
  27. package/dist/esm/components/XAdkChatbot/index.js +210 -33
  28. package/dist/esm/components/XAdkChatbot/index.js.map +1 -1
  29. package/dist/esm/components/XAdkChatbot/styles.d.ts +1 -0
  30. package/dist/esm/components/XAdkChatbot/styles.js +30 -29
  31. package/dist/esm/components/XAdkChatbot/styles.js.map +1 -1
  32. package/dist/esm/components/XAdkProvider/compound/Messages.d.ts +7 -1
  33. package/dist/esm/components/XAdkProvider/compound/Messages.js +11 -1
  34. package/dist/esm/components/XAdkProvider/compound/Messages.js.map +1 -1
  35. package/dist/esm/components/XAdkSender/index.js +80 -16
  36. package/dist/esm/components/XAdkSender/index.js.map +1 -1
  37. package/dist/esm/components/XAdkThoughtChain/index.js +7 -7
  38. package/dist/esm/components/XAdkThoughtChain/index.js.map +1 -1
  39. package/dist/esm/components/XAdkThoughtChain/styles.d.ts +1 -1
  40. package/dist/esm/components/XAdkThoughtChain/styles.js +14 -14
  41. package/dist/esm/components/XAdkThoughtChain/styles.js.map +1 -1
  42. package/dist/esm/components/XAiChatbot/index.js.map +1 -1
  43. package/dist/esm/components/XAiProvider/index.js.map +1 -1
  44. package/dist/esm/hooks/useADKMessageQueue.d.ts +4 -2
  45. package/dist/esm/hooks/useADKMessageQueue.js +12 -10
  46. package/dist/esm/hooks/useADKMessageQueue.js.map +1 -1
  47. package/dist/esm/types/XAdkChatbot.d.ts +36 -0
  48. package/dist/esm/types/XAdkChatbot.js.map +1 -1
  49. package/dist/esm/types/XAdkSender.d.ts +8 -1
  50. package/dist/esm/types/XAdkSender.js.map +1 -1
  51. package/dist/esm/types/antdx.d.ts +4 -1
  52. package/dist/esm/types/antdx.js.map +1 -1
  53. package/dist/umd/chat-sdk.min.js +1 -1
  54. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","message","Tooltip","Flex","LikeFilled","LikeOutlined","ReloadOutlined","CopyOutlined","copy","XAdkChatbot","DislikeFeedback","useChatState","useChatActions","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","Messages","_ref","actions","actionsExtra","className","style","showFnCallDetail","renderFunctionCall","strategiesProp","strategies","_useChatState","messages","loading","prologue","suggestions","initialized","showFeedback","showUserActions","appInfo","onFileClick","_useChatActions","suggestChat","reChat","likeMessage","confirmFnCall","primaryColor","appTheme","defaultActions","_ref2","_group$isLike","group","isLastBotMsg","lastMsg","msgs","length","invocationId","isLikeVal","isLike","fullText","filter","m","functionCall","functionResponse","map","text","join","gap","align","padding","color","children","title","cursor","onClick","success","_asyncToGenerator","_regeneratorRuntime","mark","_callee","ok","wrap","_callee$","_context","prev","next","warning","abrupt","sent","error","stop","msg","activeColor","onSubmit","_ref4","_callee2","formData","_callee2$","_context2","_x","apply","arguments","onSuggest","onConfirm","enableGrouping","enableProcessParsing","_objectSpread"],"sources":["../../../../../src/components/XAdkProvider/compound/Messages.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { message, Tooltip, Flex } from \"antd\";\nimport {\n LikeFilled,\n LikeOutlined,\n ReloadOutlined,\n CopyOutlined,\n} from \"@ant-design/icons\";\nimport copy from \"copy-to-clipboard\";\nimport XAdkChatbot from \"../../XAdkChatbot\";\nimport DislikeFeedback from \"./DislikeFeedBack\";\nimport { useChatState } from \"../context/ChatStateContext\";\nimport { useChatActions } from \"../context/ChatActionContext\";\nimport type { ActionExtraProps, ActionProps } from \"@/types\";\nimport type { ChatStrategies } from \"@/types\";\n\nexport interface XAdkMessagesProps {\n /** 自定义操作栏渲染 */\n actions?: ActionProps;\n /** 追加在操作栏之后的内容 */\n actionsExtra?: ActionExtraProps;\n /** 类名 */\n className?: string;\n /** 样式 */\n style?: React.CSSProperties;\n /** 是否显示函数调用详情 */\n showFnCallDetail?: boolean;\n /** 自定义工具调用渲染函数,返回 null 则降级使用默认渲染 */\n renderFunctionCall?: (msg: import(\"@/types\").IMessage) => React.ReactNode | null;\n /** 局部策略覆盖,优先级高于 Provider preset/strategies */\n strategies?: ChatStrategies;\n}\n\n/**\n * Messages - XAdkProvider 的消息展示组件\n *\n * 使用 XAdkChatbot 渲染消息列表\n */\nconst Messages: React.FC<XAdkMessagesProps> = ({\n actions,\n actionsExtra,\n className,\n style,\n showFnCallDetail,\n renderFunctionCall,\n strategies: strategiesProp,\n}) => {\n const {\n messages,\n loading,\n prologue,\n suggestions,\n initialized,\n showFeedback,\n showUserActions,\n appInfo,\n onFileClick,\n strategies,\n } = useChatState();\n const { suggestChat, reChat, likeMessage, confirmFnCall } = useChatActions();\n\n const primaryColor = appInfo?.appTheme || \"#1677ff\";\n\n const defaultActions = useCallback<ActionProps>(\n ({ message: group, isLastBotMsg }) => {\n // 取该组最后一条 bot 消息的 invocationId 和 isLike 状态\n const lastMsg = group.msgs[group.msgs.length - 1];\n const invocationId = lastMsg?.invocationId;\n const isLikeVal = group.isLike ?? 0;\n\n const fullText = group.msgs\n .filter((m) => !m.functionCall && !m.functionResponse)\n .map((m) => m.text || \"\")\n .join(\"\");\n\n return (\n <Flex\n gap={16}\n align=\"center\"\n style={{ padding: \"4px 0\", color: \"#81858c\" }}\n >\n {isLastBotMsg && (\n <Tooltip title=\"重新生成\">\n <ReloadOutlined style={{ cursor: \"pointer\" }} onClick={reChat} />\n </Tooltip>\n )}\n <Tooltip title=\"复制内容\">\n <CopyOutlined\n style={{ cursor: \"pointer\" }}\n onClick={() => {\n copy(fullText);\n message.success(\"复制成功\");\n }}\n />\n </Tooltip>\n {showFeedback && invocationId && (\n <>\n <Tooltip title=\"赞\">\n {isLikeVal === 1 ? (\n <LikeFilled\n style={{ color: primaryColor, cursor: \"pointer\" }}\n />\n ) : (\n <LikeOutlined\n style={{ cursor: \"pointer\" }}\n onClick={async () => {\n if (isLikeVal !== 0) {\n message.warning(\"已收到您的反馈,无需重复提交\");\n return;\n }\n const ok = await likeMessage(invocationId, 1);\n if (ok) message.success(\"感谢您的反馈\");\n else message.error(\"反馈失败,请稍后再试\");\n }}\n />\n )}\n </Tooltip>\n <DislikeFeedback\n msg={group}\n activeColor={primaryColor}\n onSubmit={async (formData) => {\n const ok = await likeMessage(invocationId, -1, formData);\n if (ok) message.success(\"已收到您的反馈,我们会努力做得更好\");\n else message.error(\"反馈失败,请稍后再试\");\n return ok;\n }}\n />\n </>\n )}\n </Flex>\n );\n },\n [reChat, likeMessage, showFeedback, primaryColor],\n );\n\n return (\n <XAdkChatbot\n messages={messages}\n loading={loading}\n prologue={prologue}\n suggestions={suggestions}\n onSuggest={suggestChat}\n onConfirm={confirmFnCall}\n // 操作栏:使用外部传入的 actions,否则用内置默认 actions\n actions={actions ?? defaultActions}\n actionsExtra={actionsExtra}\n // 启用分组和解析\n enableGrouping={true}\n enableProcessParsing={true}\n initialized={initialized}\n showFnCallDetail={showFnCallDetail}\n // 文件点击回调\n onFileClick={onFileClick}\n // 样式\n className={className}\n style={style}\n // 自定义工具调用渲染\n renderFunctionCall={renderFunctionCall}\n // 用户消息 hover 操作栏\n showUserActions={showUserActions}\n strategies={{ ...strategies, ...strategiesProp }}\n />\n );\n};\n\nexport default Messages;\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","useCallback","message","Tooltip","Flex","LikeFilled","LikeOutlined","ReloadOutlined","CopyOutlined","copy","XAdkChatbot","DislikeFeedback","useChatState","useChatActions","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","Messages","_ref","actions","actionsExtra","renderBeforeGroup","renderAfterGroup","renderGroup","history","className","style","showFnCallDetail","renderFunctionCall","strategiesProp","strategies","_useChatState","messages","loading","prologue","suggestions","initialized","currentSessionId","showFeedback","showUserActions","appInfo","onFileClick","_useChatActions","suggestChat","reChat","likeMessage","confirmFnCall","primaryColor","appTheme","defaultActions","_ref2","_group$isLike","group","isLastBotMsg","lastMsg","msgs","length","invocationId","isLikeVal","isLike","fullText","filter","m","functionCall","functionResponse","map","text","join","gap","align","padding","color","children","title","cursor","onClick","success","_asyncToGenerator","_regeneratorRuntime","mark","_callee","ok","wrap","_callee$","_context","prev","next","warning","abrupt","sent","error","stop","msg","activeColor","onSubmit","_ref4","_callee2","formData","_callee2$","_context2","_x","apply","arguments","onSuggest","onConfirm","sessionId","enableGrouping","enableProcessParsing","_objectSpread"],"sources":["../../../../../src/components/XAdkProvider/compound/Messages.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { message, Tooltip, Flex } from \"antd\";\nimport {\n LikeFilled,\n LikeOutlined,\n ReloadOutlined,\n CopyOutlined,\n} from \"@ant-design/icons\";\nimport copy from \"copy-to-clipboard\";\nimport XAdkChatbot from \"../../XAdkChatbot\";\nimport DislikeFeedback from \"./DislikeFeedBack\";\nimport { useChatState } from \"../context/ChatStateContext\";\nimport { useChatActions } from \"../context/ChatActionContext\";\nimport type { ActionExtraProps, ActionProps, XAdkChatbotProps } from \"@/types\";\nimport type { ChatStrategies } from \"@/types\";\n\nexport interface XAdkMessagesProps {\n /** 自定义操作栏渲染 */\n actions?: ActionProps;\n /** 追加在操作栏之后的内容 */\n actionsExtra?: ActionExtraProps;\n /** 消息流中的业务模块与整组自定义展示。 */\n renderBeforeGroup?: XAdkChatbotProps[\"renderBeforeGroup\"];\n renderAfterGroup?: XAdkChatbotProps[\"renderAfterGroup\"];\n renderGroup?: XAdkChatbotProps[\"renderGroup\"];\n /** 受控历史消息分页;可通过 useChatActions().setMessages 合并新页。 */\n history?: XAdkChatbotProps[\"history\"];\n /** 类名 */\n className?: string;\n /** 样式 */\n style?: React.CSSProperties;\n /** 是否显示函数调用详情 */\n showFnCallDetail?: boolean;\n /** 自定义工具调用渲染函数,返回 null 则降级使用默认渲染 */\n renderFunctionCall?: (msg: import(\"@/types\").IMessage) => React.ReactNode | null;\n /** 局部策略覆盖,优先级高于 Provider preset/strategies */\n strategies?: ChatStrategies;\n}\n\n/**\n * Messages - XAdkProvider 的消息展示组件\n *\n * 使用 XAdkChatbot 渲染消息列表\n */\nconst Messages: React.FC<XAdkMessagesProps> = ({\n actions,\n actionsExtra,\n renderBeforeGroup,\n renderAfterGroup,\n renderGroup,\n history,\n className,\n style,\n showFnCallDetail,\n renderFunctionCall,\n strategies: strategiesProp,\n}) => {\n const {\n messages,\n loading,\n prologue,\n suggestions,\n initialized,\n currentSessionId,\n showFeedback,\n showUserActions,\n appInfo,\n onFileClick,\n strategies,\n } = useChatState();\n const { suggestChat, reChat, likeMessage, confirmFnCall } = useChatActions();\n\n const primaryColor = appInfo?.appTheme || \"#1677ff\";\n\n const defaultActions = useCallback<ActionProps>(\n ({ message: group, isLastBotMsg }) => {\n // 取该组最后一条 bot 消息的 invocationId 和 isLike 状态\n const lastMsg = group.msgs[group.msgs.length - 1];\n const invocationId = lastMsg?.invocationId;\n const isLikeVal = group.isLike ?? 0;\n\n const fullText = group.msgs\n .filter((m) => !m.functionCall && !m.functionResponse)\n .map((m) => m.text || \"\")\n .join(\"\");\n\n return (\n <Flex\n gap={16}\n align=\"center\"\n style={{ padding: \"4px 0\", color: \"#81858c\" }}\n >\n {isLastBotMsg && (\n <Tooltip title=\"重新生成\">\n <ReloadOutlined style={{ cursor: \"pointer\" }} onClick={reChat} />\n </Tooltip>\n )}\n <Tooltip title=\"复制内容\">\n <CopyOutlined\n style={{ cursor: \"pointer\" }}\n onClick={() => {\n copy(fullText);\n message.success(\"复制成功\");\n }}\n />\n </Tooltip>\n {showFeedback && invocationId && (\n <>\n <Tooltip title=\"赞\">\n {isLikeVal === 1 ? (\n <LikeFilled\n style={{ color: primaryColor, cursor: \"pointer\" }}\n />\n ) : (\n <LikeOutlined\n style={{ cursor: \"pointer\" }}\n onClick={async () => {\n if (isLikeVal !== 0) {\n message.warning(\"已收到您的反馈,无需重复提交\");\n return;\n }\n const ok = await likeMessage(invocationId, 1);\n if (ok) message.success(\"感谢您的反馈\");\n else message.error(\"反馈失败,请稍后再试\");\n }}\n />\n )}\n </Tooltip>\n <DislikeFeedback\n msg={group}\n activeColor={primaryColor}\n onSubmit={async (formData) => {\n const ok = await likeMessage(invocationId, -1, formData);\n if (ok) message.success(\"已收到您的反馈,我们会努力做得更好\");\n else message.error(\"反馈失败,请稍后再试\");\n return ok;\n }}\n />\n </>\n )}\n </Flex>\n );\n },\n [reChat, likeMessage, showFeedback, primaryColor],\n );\n\n return (\n <XAdkChatbot\n messages={messages}\n loading={loading}\n prologue={prologue}\n suggestions={suggestions}\n onSuggest={suggestChat}\n onConfirm={confirmFnCall}\n // 操作栏:使用外部传入的 actions,否则用内置默认 actions\n actions={actions ?? defaultActions}\n actionsExtra={actionsExtra}\n renderBeforeGroup={renderBeforeGroup}\n renderAfterGroup={renderAfterGroup}\n renderGroup={renderGroup}\n history={history}\n sessionId={currentSessionId}\n // 启用分组和解析\n enableGrouping={true}\n enableProcessParsing={true}\n initialized={initialized}\n showFnCallDetail={showFnCallDetail}\n // 文件点击回调\n onFileClick={onFileClick}\n // 样式\n className={className}\n style={style}\n // 自定义工具调用渲染\n renderFunctionCall={renderFunctionCall}\n // 用户消息 hover 操作栏\n showUserActions={showUserActions}\n strategies={{ ...strategies, ...strategiesProp }}\n />\n );\n};\n\nexport default Messages;\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,WAAW,QAAQ,OAAO;AAC1C,SAASC,OAAO,EAAEC,OAAO,EAAEC,IAAI,QAAQ,MAAM;AAC7C,SACEC,UAAU,EACVC,YAAY,EACZC,cAAc,EACdC,YAAY,QACP,mBAAmB;AAC1B,OAAOC,IAAI,MAAM,mBAAmB;AACpC,OAAOC,WAAW;AAClB,OAAOC,eAAe;AACtB,SAASC,YAAY;AACrB,SAASC,cAAc;AAAuC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AA2B9D;AACA;AACA;AACA;AACA;AACA,IAAMC,QAAqC,GAAG,SAAxCA,QAAqCA,CAAAC,IAAA,EAYrC;EAAA,IAXJC,OAAO,GAAAD,IAAA,CAAPC,OAAO;IACPC,YAAY,GAAAF,IAAA,CAAZE,YAAY;IACZC,iBAAiB,GAAAH,IAAA,CAAjBG,iBAAiB;IACjBC,gBAAgB,GAAAJ,IAAA,CAAhBI,gBAAgB;IAChBC,WAAW,GAAAL,IAAA,CAAXK,WAAW;IACXC,OAAO,GAAAN,IAAA,CAAPM,OAAO;IACPC,SAAS,GAAAP,IAAA,CAATO,SAAS;IACTC,KAAK,GAAAR,IAAA,CAALQ,KAAK;IACLC,gBAAgB,GAAAT,IAAA,CAAhBS,gBAAgB;IAChBC,kBAAkB,GAAAV,IAAA,CAAlBU,kBAAkB;IACNC,cAAc,GAAAX,IAAA,CAA1BY,UAAU;EAEV,IAAAC,aAAA,GAYItB,YAAY,CAAC,CAAC;IAXhBuB,QAAQ,GAAAD,aAAA,CAARC,QAAQ;IACRC,OAAO,GAAAF,aAAA,CAAPE,OAAO;IACPC,QAAQ,GAAAH,aAAA,CAARG,QAAQ;IACRC,WAAW,GAAAJ,aAAA,CAAXI,WAAW;IACXC,WAAW,GAAAL,aAAA,CAAXK,WAAW;IACXC,gBAAgB,GAAAN,aAAA,CAAhBM,gBAAgB;IAChBC,YAAY,GAAAP,aAAA,CAAZO,YAAY;IACZC,eAAe,GAAAR,aAAA,CAAfQ,eAAe;IACfC,OAAO,GAAAT,aAAA,CAAPS,OAAO;IACPC,WAAW,GAAAV,aAAA,CAAXU,WAAW;IACXX,UAAU,GAAAC,aAAA,CAAVD,UAAU;EAEZ,IAAAY,eAAA,GAA4DhC,cAAc,CAAC,CAAC;IAApEiC,WAAW,GAAAD,eAAA,CAAXC,WAAW;IAAEC,MAAM,GAAAF,eAAA,CAANE,MAAM;IAAEC,WAAW,GAAAH,eAAA,CAAXG,WAAW;IAAEC,aAAa,GAAAJ,eAAA,CAAbI,aAAa;EAEvD,IAAMC,YAAY,GAAG,CAAAP,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEQ,QAAQ,KAAI,SAAS;EAEnD,IAAMC,cAAc,GAAGnD,WAAW,CAChC,UAAAoD,KAAA,EAAsC;IAAA,IAAAC,aAAA;IAAA,IAA1BC,KAAK,GAAAF,KAAA,CAAdnD,OAAO;MAASsD,YAAY,GAAAH,KAAA,CAAZG,YAAY;IAC7B;IACA,IAAMC,OAAO,GAAGF,KAAK,CAACG,IAAI,CAACH,KAAK,CAACG,IAAI,CAACC,MAAM,GAAG,CAAC,CAAC;IACjD,IAAMC,YAAY,GAAGH,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEG,YAAY;IAC1C,IAAMC,SAAS,IAAAP,aAAA,GAAGC,KAAK,CAACO,MAAM,cAAAR,aAAA,cAAAA,aAAA,GAAI,CAAC;IAEnC,IAAMS,QAAQ,GAAGR,KAAK,CAACG,IAAI,CACxBM,MAAM,CAAC,UAACC,CAAC;MAAA,OAAK,CAACA,CAAC,CAACC,YAAY,IAAI,CAACD,CAAC,CAACE,gBAAgB;IAAA,EAAC,CACrDC,GAAG,CAAC,UAACH,CAAC;MAAA,OAAKA,CAAC,CAACI,IAAI,IAAI,EAAE;IAAA,EAAC,CACxBC,IAAI,CAAC,EAAE,CAAC;IAEX,oBACEnD,KAAA,CAACf,IAAI;MACHmE,GAAG,EAAE,EAAG;MACRC,KAAK,EAAC,QAAQ;MACd3C,KAAK,EAAE;QAAE4C,OAAO,EAAE,OAAO;QAAEC,KAAK,EAAE;MAAU,CAAE;MAAAC,QAAA,GAE7CnB,YAAY,iBACXzC,IAAA,CAACZ,OAAO;QAACyE,KAAK,EAAC,0BAAM;QAAAD,QAAA,eACnB5D,IAAA,CAACR,cAAc;UAACsB,KAAK,EAAE;YAAEgD,MAAM,EAAE;UAAU,CAAE;UAACC,OAAO,EAAE/B;QAAO,CAAE;MAAC,CAC1D,CACV,eACDhC,IAAA,CAACZ,OAAO;QAACyE,KAAK,EAAC,0BAAM;QAAAD,QAAA,eACnB5D,IAAA,CAACP,YAAY;UACXqB,KAAK,EAAE;YAAEgD,MAAM,EAAE;UAAU,CAAE;UAC7BC,OAAO,EAAE,SAAAA,QAAA,EAAM;YACbrE,IAAI,CAACsD,QAAQ,CAAC;YACd7D,OAAO,CAAC6E,OAAO,CAAC,MAAM,CAAC;UACzB;QAAE,CACH;MAAC,CACK,CAAC,EACTtC,YAAY,IAAImB,YAAY,iBAC3BzC,KAAA,CAAAF,SAAA;QAAA0D,QAAA,gBACE5D,IAAA,CAACZ,OAAO;UAACyE,KAAK,EAAC,QAAG;UAAAD,QAAA,EACfd,SAAS,KAAK,CAAC,gBACd9C,IAAA,CAACV,UAAU;YACTwB,KAAK,EAAE;cAAE6C,KAAK,EAAExB,YAAY;cAAE2B,MAAM,EAAE;YAAU;UAAE,CACnD,CAAC,gBAEF9D,IAAA,CAACT,YAAY;YACXuB,KAAK,EAAE;cAAEgD,MAAM,EAAE;YAAU,CAAE;YAC7BC,OAAO,eAAAE,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAAE,SAAAC,QAAA;cAAA,IAAAC,EAAA;cAAA,OAAAH,mBAAA,GAAAI,IAAA,UAAAC,SAAAC,QAAA;gBAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;kBAAA;oBAAA,MACH5B,SAAS,KAAK,CAAC;sBAAA0B,QAAA,CAAAE,IAAA;sBAAA;oBAAA;oBACjBvF,OAAO,CAACwF,OAAO,CAAC,gBAAgB,CAAC;oBAAC,OAAAH,QAAA,CAAAI,MAAA;kBAAA;oBAAAJ,QAAA,CAAAE,IAAA;oBAAA,OAGnBzC,WAAW,CAACY,YAAY,EAAE,CAAC,CAAC;kBAAA;oBAAvCwB,EAAE,GAAAG,QAAA,CAAAK,IAAA;oBACR,IAAIR,EAAE,EAAElF,OAAO,CAAC6E,OAAO,CAAC,QAAQ,CAAC,CAAC,KAC7B7E,OAAO,CAAC2F,KAAK,CAAC,YAAY,CAAC;kBAAC;kBAAA;oBAAA,OAAAN,QAAA,CAAAO,IAAA;gBAAA;cAAA,GAAAX,OAAA;YAAA,CAClC;UAAC,CACH;QACF,CACM,CAAC,eACVpE,IAAA,CAACJ,eAAe;UACdoF,GAAG,EAAExC,KAAM;UACXyC,WAAW,EAAE9C,YAAa;UAC1B+C,QAAQ;YAAA,IAAAC,KAAA,GAAAlB,iBAAA,eAAAC,mBAAA,GAAAC,IAAA,CAAE,SAAAiB,SAAOC,QAAQ;cAAA,IAAAhB,EAAA;cAAA,OAAAH,mBAAA,GAAAI,IAAA,UAAAgB,UAAAC,SAAA;gBAAA,kBAAAA,SAAA,CAAAd,IAAA,GAAAc,SAAA,CAAAb,IAAA;kBAAA;oBAAAa,SAAA,CAAAb,IAAA;oBAAA,OACNzC,WAAW,CAACY,YAAY,EAAE,CAAC,CAAC,EAAEwC,QAAQ,CAAC;kBAAA;oBAAlDhB,EAAE,GAAAkB,SAAA,CAAAV,IAAA;oBACR,IAAIR,EAAE,EAAElF,OAAO,CAAC6E,OAAO,CAAC,mBAAmB,CAAC,CAAC,KACxC7E,OAAO,CAAC2F,KAAK,CAAC,YAAY,CAAC;oBAAC,OAAAS,SAAA,CAAAX,MAAA,WAC1BP,EAAE;kBAAA;kBAAA;oBAAA,OAAAkB,SAAA,CAAAR,IAAA;gBAAA;cAAA,GAAAK,QAAA;YAAA,CACV;YAAA,iBAAAI,EAAA;cAAA,OAAAL,KAAA,CAAAM,KAAA,OAAAC,SAAA;YAAA;UAAA;QAAC,CACH,CAAC;MAAA,CACF,CACH;IAAA,CACG,CAAC;EAEX,CAAC,EACD,CAAC1D,MAAM,EAAEC,WAAW,EAAEP,YAAY,EAAES,YAAY,CAClD,CAAC;EAED,oBACEnC,IAAA,CAACL,WAAW;IACVyB,QAAQ,EAAEA,QAAS;IACnBC,OAAO,EAAEA,OAAQ;IACjBC,QAAQ,EAAEA,QAAS;IACnBC,WAAW,EAAEA,WAAY;IACzBoE,SAAS,EAAE5D,WAAY;IACvB6D,SAAS,EAAE1D;IACX;IAAA;IACA3B,OAAO,EAAEA,OAAO,aAAPA,OAAO,cAAPA,OAAO,GAAI8B,cAAe;IACnC7B,YAAY,EAAEA,YAAa;IAC3BC,iBAAiB,EAAEA,iBAAkB;IACrCC,gBAAgB,EAAEA,gBAAiB;IACnCC,WAAW,EAAEA,WAAY;IACzBC,OAAO,EAAEA,OAAQ;IACjBiF,SAAS,EAAEpE;IACX;IAAA;IACAqE,cAAc,EAAE,IAAK;IACrBC,oBAAoB,EAAE,IAAK;IAC3BvE,WAAW,EAAEA,WAAY;IACzBT,gBAAgB,EAAEA;IAClB;IAAA;IACAc,WAAW,EAAEA;IACb;IAAA;IACAhB,SAAS,EAAEA,SAAU;IACrBC,KAAK,EAAEA;IACP;IAAA;IACAE,kBAAkB,EAAEA;IACpB;IAAA;IACAW,eAAe,EAAEA,eAAgB;IACjCT,UAAU,EAAA8E,aAAA,CAAAA,aAAA,KAAO9E,UAAU,GAAKD,cAAc;EAAG,CAClD,CAAC;AAEN,CAAC;AAED,eAAeZ,QAAQ"}
@@ -32,6 +32,7 @@ var XAdkSender = /*#__PURE__*/forwardRef(function (_ref, ref) {
32
32
  _ref$uploadRequest = _ref.uploadRequest,
33
33
  uploadRequest = _ref$uploadRequest === void 0 ? function () {} : _ref$uploadRequest,
34
34
  onClear = _ref.onClear,
35
+ clearConfirm = _ref.clearConfirm,
35
36
  onChange = _ref.onChange,
36
37
  onSubmit = _ref.onSubmit,
37
38
  onStop = _ref.onStop,
@@ -348,12 +349,74 @@ var XAdkSender = /*#__PURE__*/forwardRef(function (_ref, ref) {
348
349
  uploadFiles(validFiles);
349
350
  }
350
351
  }, [files, maxFiles, maxFileSize, allowedFileTypes]);
352
+ var handleExistingFiles = useCallback(function (selectedFiles) {
353
+ if (!selectedFiles.length) return;
354
+ setFiles(function (prev) {
355
+ var next = _toConsumableArray(prev);
356
+ var _iterator2 = _createForOfIteratorHelper(selectedFiles),
357
+ _step2;
358
+ try {
359
+ var _loop = function _loop() {
360
+ var selected = _step2.value;
361
+ if (!selected.fileId || !selected.fileName) return 0; // continue
362
+ if (next.some(function (file) {
363
+ return String(file.fileId) === String(selected.fileId);
364
+ })) return 0; // continue
365
+ if (next.length >= maxFiles) {
366
+ message.error("\u6700\u591A\u53EA\u80FD\u4E0A\u4F20 ".concat(maxFiles, " \u4E2A\u6587\u4EF6"));
367
+ return 1; // break
368
+ }
369
+ var id = generateId();
370
+ var file = new File([], selected.fileName, {
371
+ type: selected.mimeType
372
+ });
373
+ next.push({
374
+ id: id,
375
+ uid: id,
376
+ name: selected.fileName,
377
+ file: file,
378
+ size: selected.size || 0,
379
+ type: selected.mimeType,
380
+ progress: 100,
381
+ status: "success",
382
+ fileId: selected.fileId,
383
+ tempUrl: selected.tempUrl,
384
+ response: _objectSpread(_objectSpread({}, selected.raw), {}, {
385
+ fileName: selected.fileName,
386
+ fileId: selected.fileId,
387
+ tempUrl: selected.tempUrl,
388
+ fileType: selected.type,
389
+ fileSize: selected.size,
390
+ mimeType: selected.mimeType
391
+ })
392
+ });
393
+ },
394
+ _ret;
395
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
396
+ _ret = _loop();
397
+ if (_ret === 0) continue;
398
+ if (_ret === 1) break;
399
+ }
400
+ } catch (err) {
401
+ _iterator2.e(err);
402
+ } finally {
403
+ _iterator2.f();
404
+ }
405
+ if (next.length !== prev.length) onFilesChange === null || onFilesChange === void 0 || onFilesChange(next);
406
+ return next;
407
+ });
408
+ }, [maxFiles, onFilesChange]);
351
409
 
352
410
  // 暴露给业务工具栏调用的命令式能力;外部 Popover 选择标签时可插入到当前光标位置。
353
411
  useImperativeHandle(ref, function () {
354
412
  return {
355
413
  addFiles: function addFiles(rawFiles) {
356
- handleFileSelect(rawFiles);
414
+ handleFileSelect(rawFiles.filter(function (file) {
415
+ return file instanceof File;
416
+ }));
417
+ handleExistingFiles(rawFiles.filter(function (file) {
418
+ return !(file instanceof File);
419
+ }));
357
420
  },
358
421
  insertMention: function insertMention(mention) {
359
422
  if (inlineTags) {
@@ -376,23 +439,23 @@ var XAdkSender = /*#__PURE__*/forwardRef(function (_ref, ref) {
376
439
  inlineTags ? (_inlineInputRef$curre4 = inlineInputRef.current) === null || _inlineInputRef$curre4 === void 0 ? void 0 : _inlineInputRef$curre4.focus() : (_textareaRef$current = textareaRef.current) === null || _textareaRef$current === void 0 ? void 0 : _textareaRef$current.focus();
377
440
  }
378
441
  };
379
- }, [handleFileSelect, inlineTags, setMentions, mentions]);
442
+ }, [handleFileSelect, handleExistingFiles, inlineTags, setMentions, mentions]);
380
443
 
381
444
  // 上传文件
382
445
  var uploadFiles = /*#__PURE__*/function () {
383
446
  var _ref13 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(fileList) {
384
- var _iterator2, _step2, _loop;
447
+ var _iterator3, _step3, _loop2;
385
448
  return _regeneratorRuntime().wrap(function _callee$(_context2) {
386
449
  while (1) switch (_context2.prev = _context2.next) {
387
450
  case 0:
388
- _iterator2 = _createForOfIteratorHelper(fileList);
451
+ _iterator3 = _createForOfIteratorHelper(fileList);
389
452
  _context2.prev = 1;
390
- _loop = /*#__PURE__*/_regeneratorRuntime().mark(function _loop() {
453
+ _loop2 = /*#__PURE__*/_regeneratorRuntime().mark(function _loop2() {
391
454
  var localFile;
392
- return _regeneratorRuntime().wrap(function _loop$(_context) {
455
+ return _regeneratorRuntime().wrap(function _loop2$(_context) {
393
456
  while (1) switch (_context.prev = _context.next) {
394
457
  case 0:
395
- localFile = _step2.value;
458
+ localFile = _step3.value;
396
459
  setFiles(function (prev) {
397
460
  return prev.map(function (f) {
398
461
  return f.id === localFile.id ? _objectSpread(_objectSpread({}, f), {}, {
@@ -465,15 +528,15 @@ var XAdkSender = /*#__PURE__*/forwardRef(function (_ref, ref) {
465
528
  case "end":
466
529
  return _context.stop();
467
530
  }
468
- }, _loop, null, [[2, 7]]);
531
+ }, _loop2, null, [[2, 7]]);
469
532
  });
470
- _iterator2.s();
533
+ _iterator3.s();
471
534
  case 4:
472
- if ((_step2 = _iterator2.n()).done) {
535
+ if ((_step3 = _iterator3.n()).done) {
473
536
  _context2.next = 8;
474
537
  break;
475
538
  }
476
- return _context2.delegateYield(_loop(), "t0", 6);
539
+ return _context2.delegateYield(_loop2(), "t0", 6);
477
540
  case 6:
478
541
  _context2.next = 4;
479
542
  break;
@@ -483,10 +546,10 @@ var XAdkSender = /*#__PURE__*/forwardRef(function (_ref, ref) {
483
546
  case 10:
484
547
  _context2.prev = 10;
485
548
  _context2.t1 = _context2["catch"](1);
486
- _iterator2.e(_context2.t1);
549
+ _iterator3.e(_context2.t1);
487
550
  case 13:
488
551
  _context2.prev = 13;
489
- _iterator2.f();
552
+ _iterator3.f();
490
553
  return _context2.finish(13);
491
554
  case 16:
492
555
  case "end":
@@ -877,12 +940,13 @@ var XAdkSender = /*#__PURE__*/forwardRef(function (_ref, ref) {
877
940
  });
878
941
  };
879
942
  var ClearButton = function ClearButton(props) {
943
+ var _clearConfirm$title, _clearConfirm$okText, _clearConfirm$cancelT;
880
944
  return /*#__PURE__*/_jsx(Popconfirm, {
881
- title: "\u786E\u5B9A\u8981\u6E05\u7A7A\u804A\u5929\u8BB0\u5F55\u5417?",
945
+ title: (_clearConfirm$title = clearConfirm === null || clearConfirm === void 0 ? void 0 : clearConfirm.title) !== null && _clearConfirm$title !== void 0 ? _clearConfirm$title : "确定要清空聊天记录吗?",
882
946
  onConfirm: onClear,
883
947
  placement: "top",
884
- okText: "\u786E\u5B9A",
885
- cancelText: "\u53D6\u6D88",
948
+ okText: (_clearConfirm$okText = clearConfirm === null || clearConfirm === void 0 ? void 0 : clearConfirm.okText) !== null && _clearConfirm$okText !== void 0 ? _clearConfirm$okText : "确定",
949
+ cancelText: (_clearConfirm$cancelT = clearConfirm === null || clearConfirm === void 0 ? void 0 : clearConfirm.cancelText) !== null && _clearConfirm$cancelT !== void 0 ? _clearConfirm$cancelT : "取消",
886
950
  disabled: controlsDisabled,
887
951
  children: /*#__PURE__*/_jsx("button", _objectSpread(_objectSpread({
888
952
  className: "".concat(styles.iconButton, " ").concat(styles.clearButton),