@ai-group/chat-sdk 2.1.1 → 2.1.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.
- package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/index.d.ts +2 -2
- package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/index.js +3 -4
- package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/index.js.map +2 -2
- package/dist/cjs/components/XAdkChatbot/index.js +66 -99
- package/dist/cjs/components/XAdkChatbot/index.js.map +3 -3
- package/dist/cjs/components/XAdkSender/XAdkSender.stories.d.ts +6 -0
- package/dist/cjs/components/XAdkSender/XAdkSender.stories.js +119 -0
- package/dist/cjs/components/XAdkSender/XAdkSender.stories.js.map +7 -0
- package/dist/cjs/components/XAdkSender/index.d.ts +4 -0
- package/dist/cjs/components/XAdkSender/index.js +430 -0
- package/dist/cjs/components/XAdkSender/index.js.map +7 -0
- package/dist/cjs/components/XAdkSender/styles.d.ts +56 -0
- package/dist/cjs/components/XAdkSender/styles.js +340 -0
- package/dist/cjs/components/XAdkSender/styles.js.map +7 -0
- package/dist/cjs/components/XAdkWebProvider/XAdkWebProvider.stories.js +5 -5
- package/dist/cjs/components/XAdkWebProvider/XAdkWebProvider.stories.js.map +2 -2
- package/dist/cjs/components/XAdkWebProvider/index.js +12 -6
- package/dist/cjs/components/XAdkWebProvider/index.js.map +2 -2
- package/dist/cjs/components/XAiConversations/index.js +1 -1
- package/dist/cjs/components/XAiConversations/index.js.map +2 -2
- package/dist/cjs/components/XAiConversations/styles.d.ts +1 -0
- package/dist/cjs/components/XAiConversations/styles.js +3 -0
- package/dist/cjs/components/XAiConversations/styles.js.map +2 -2
- package/dist/cjs/components/XAiSender/XAiSender.stories.js +1 -1
- package/dist/cjs/components/XAiSender/XAiSender.stories.js.map +2 -2
- package/dist/cjs/components/XAiSender/index.js +17 -35
- package/dist/cjs/components/XAiSender/index.js.map +2 -2
- package/dist/cjs/hooks/useADKChat.d.ts +7 -16
- package/dist/cjs/hooks/useADKChat.js +115 -32
- package/dist/cjs/hooks/useADKChat.js.map +2 -2
- package/dist/cjs/hooks/useAgentGenerator.js +1 -1
- package/dist/cjs/hooks/useAgentGenerator.js.map +2 -2
- package/dist/cjs/services/api.d.ts +5 -5
- package/dist/cjs/services/api.js +6 -9
- package/dist/cjs/services/api.js.map +2 -2
- package/dist/cjs/types/XAdkChatbot.d.ts +21 -3
- package/dist/cjs/types/XAdkChatbot.js.map +1 -1
- package/dist/cjs/types/XAdkProvider.d.ts +35 -9
- package/dist/cjs/types/XAdkProvider.js.map +1 -1
- package/dist/cjs/types/XAdkSender.d.ts +49 -0
- package/dist/cjs/types/XAdkSender.js +18 -0
- package/dist/cjs/types/XAdkSender.js.map +7 -0
- package/dist/cjs/types/XAiProvider.d.ts +1 -28
- package/dist/cjs/types/XAiProvider.js.map +2 -2
- package/dist/cjs/types/XAiSender.d.ts +2 -0
- package/dist/cjs/types/XAiSender.js.map +1 -1
- package/dist/cjs/types/common.d.ts +6 -0
- package/dist/cjs/types/common.js +18 -0
- package/dist/cjs/types/common.js.map +7 -0
- package/dist/cjs/types/index.d.ts +2 -0
- package/dist/cjs/types/index.js +5 -1
- package/dist/cjs/types/index.js.map +2 -2
- package/dist/cjs/utils/chat.d.ts +1 -1
- package/dist/cjs/utils/umdEntry.d.ts +9 -9
- package/dist/cjs/utils/umdEntry.js +1 -0
- package/dist/cjs/utils/umdEntry.js.map +2 -2
- package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/index.d.ts +2 -2
- package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/index.js +3 -3
- package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/index.js.map +1 -1
- package/dist/esm/components/XAdkChatbot/index.js +80 -126
- package/dist/esm/components/XAdkChatbot/index.js.map +1 -1
- package/dist/esm/components/XAdkSender/XAdkSender.stories.d.ts +6 -0
- package/dist/esm/components/XAdkSender/XAdkSender.stories.js +126 -0
- package/dist/esm/components/XAdkSender/XAdkSender.stories.js.map +1 -0
- package/dist/esm/components/XAdkSender/index.d.ts +4 -0
- package/dist/esm/components/XAdkSender/index.js +589 -0
- package/dist/esm/components/XAdkSender/index.js.map +1 -0
- package/dist/esm/components/XAdkSender/styles.d.ts +56 -0
- package/dist/esm/components/XAdkSender/styles.js +50 -0
- package/dist/esm/components/XAdkSender/styles.js.map +1 -0
- package/dist/esm/components/XAdkWebProvider/XAdkWebProvider.stories.js +10 -11
- package/dist/esm/components/XAdkWebProvider/XAdkWebProvider.stories.js.map +1 -1
- package/dist/esm/components/XAdkWebProvider/index.js +25 -10
- package/dist/esm/components/XAdkWebProvider/index.js.map +1 -1
- package/dist/esm/components/XAiConversations/index.js +1 -0
- package/dist/esm/components/XAiConversations/index.js.map +1 -1
- package/dist/esm/components/XAiConversations/styles.d.ts +1 -0
- package/dist/esm/components/XAiConversations/styles.js +15 -14
- package/dist/esm/components/XAiConversations/styles.js.map +1 -1
- package/dist/esm/components/XAiSender/XAiSender.stories.js +1 -1
- package/dist/esm/components/XAiSender/XAiSender.stories.js.map +1 -1
- package/dist/esm/components/XAiSender/index.js +16 -22
- package/dist/esm/components/XAiSender/index.js.map +1 -1
- package/dist/esm/hooks/useADKChat.d.ts +7 -16
- package/dist/esm/hooks/useADKChat.js +212 -88
- package/dist/esm/hooks/useADKChat.js.map +1 -1
- package/dist/esm/hooks/useAgentGenerator.js +1 -1
- package/dist/esm/hooks/useAgentGenerator.js.map +1 -1
- package/dist/esm/services/api.d.ts +5 -5
- package/dist/esm/services/api.js +8 -11
- package/dist/esm/services/api.js.map +1 -1
- package/dist/esm/types/XAdkChatbot.d.ts +21 -3
- package/dist/esm/types/XAdkChatbot.js.map +1 -1
- package/dist/esm/types/XAdkProvider.d.ts +35 -9
- package/dist/esm/types/XAdkProvider.js.map +1 -1
- package/dist/esm/types/XAdkSender.d.ts +49 -0
- package/dist/esm/types/XAdkSender.js +2 -0
- package/dist/esm/types/XAdkSender.js.map +1 -0
- package/dist/esm/types/XAiProvider.d.ts +1 -28
- package/dist/esm/types/XAiProvider.js +0 -7
- package/dist/esm/types/XAiProvider.js.map +1 -1
- package/dist/esm/types/XAiSender.d.ts +2 -0
- package/dist/esm/types/XAiSender.js.map +1 -1
- package/dist/esm/types/common.d.ts +6 -0
- package/dist/esm/types/common.js +2 -0
- package/dist/esm/types/common.js.map +1 -0
- package/dist/esm/types/index.d.ts +2 -0
- package/dist/esm/types/index.js +2 -0
- package/dist/esm/types/index.js.map +1 -1
- package/dist/esm/utils/chat.d.ts +1 -1
- package/dist/esm/utils/chat.js +4 -4
- package/dist/esm/utils/chat.js.map +1 -1
- package/dist/esm/utils/umdEntry.d.ts +9 -9
- package/dist/esm/utils/umdEntry.js +1 -1
- package/dist/esm/utils/umdEntry.js.map +1 -1
- package/dist/umd/chat-sdk.min.js +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
export declare const useStyles: () => {
|
|
2
|
+
container: string;
|
|
3
|
+
fileListArea: string;
|
|
4
|
+
fileList: string;
|
|
5
|
+
fileCard: string;
|
|
6
|
+
fileSize: string;
|
|
7
|
+
uploadProgress: string;
|
|
8
|
+
fileIcon: string;
|
|
9
|
+
fileInfo: string;
|
|
10
|
+
fileName: string;
|
|
11
|
+
fileRemoveBtn: string;
|
|
12
|
+
mainArea: string;
|
|
13
|
+
senderWrap: string;
|
|
14
|
+
inputAndButtons: string;
|
|
15
|
+
textAreaWrapper: string;
|
|
16
|
+
textArea: string;
|
|
17
|
+
buttonGroup: string;
|
|
18
|
+
iconButton: string;
|
|
19
|
+
clearButton: string;
|
|
20
|
+
uploadButton: string;
|
|
21
|
+
sendButton: string;
|
|
22
|
+
tip: string;
|
|
23
|
+
} & {
|
|
24
|
+
w: (width: string | number) => string;
|
|
25
|
+
h: (height: string | number) => string;
|
|
26
|
+
p: (padding: string) => string;
|
|
27
|
+
pb: (padding: string | number) => string;
|
|
28
|
+
pt: (padding: string | number) => string;
|
|
29
|
+
pl: (padding: string | number) => string;
|
|
30
|
+
pr: (padding: string | number) => string;
|
|
31
|
+
m: (margin: string) => string;
|
|
32
|
+
mb: (margin: string | number) => string;
|
|
33
|
+
mt: (margin: string | number) => string;
|
|
34
|
+
ml: (margin: string | number) => string;
|
|
35
|
+
mr: (margin: string | number) => string;
|
|
36
|
+
text: (size: string | number) => string;
|
|
37
|
+
weight: (size: number) => string;
|
|
38
|
+
textColor: (c: string) => string;
|
|
39
|
+
bg: (c: string) => string;
|
|
40
|
+
rs: (radius: string | number) => string;
|
|
41
|
+
gap: (g: string | number) => string;
|
|
42
|
+
flex: string;
|
|
43
|
+
flexCenter: string;
|
|
44
|
+
flexBetween: string;
|
|
45
|
+
flexColumn: string;
|
|
46
|
+
flex1: string;
|
|
47
|
+
cursor: (type: string) => string;
|
|
48
|
+
border: (color: string, width?: string) => string;
|
|
49
|
+
boxShadow: (shadow: string) => string;
|
|
50
|
+
transition: (property?: string, duration?: string) => string;
|
|
51
|
+
overflow: (type: string) => string;
|
|
52
|
+
position: (type: string) => string;
|
|
53
|
+
zIndex: (index: number) => string;
|
|
54
|
+
flexCenterGap2: string;
|
|
55
|
+
flexCenterGap4: string;
|
|
56
|
+
};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import _taggedTemplateLiteral from "@babel/runtime/helpers/esm/taggedTemplateLiteral";
|
|
2
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21;
|
|
3
|
+
import { css } from '@emotion/css';
|
|
4
|
+
import { withBasicStyles } from "../../styles/common";
|
|
5
|
+
export var useStyles = withBasicStyles(function () {
|
|
6
|
+
return {
|
|
7
|
+
// 容器样式 - 最外层边框
|
|
8
|
+
container: css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n background: #fff;\n position: relative;\n overflow: hidden;\n padding: 10px 15px;\n overflow: visible;\n border: 2px solid transparent;\n transition: all 0.3s ease;\n \n &.drag-over {\n border: 2px dashed #000;\n background: rgba(0, 0, 0, 0.02);\n }\n "]))),
|
|
9
|
+
// 文件列表区域
|
|
10
|
+
fileListArea: css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n padding: 12px 16px 0 16px;\n max-height: 150px;\n overflow-y: auto;\n \n &::-webkit-scrollbar {\n width: 4px;\n }\n \n &::-webkit-scrollbar-track {\n background: #f5f5f5;\n border-radius: 2px;\n }\n \n &::-webkit-scrollbar-thumb {\n background: #d9d9d9;\n border-radius: 2px;\n }\n \n &::-webkit-scrollbar-thumb:hover {\n background: #bfbfbf;\n }\n "]))),
|
|
11
|
+
// 文件列表
|
|
12
|
+
fileList: css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n display: flex;\n flex-wrap: wrap;\n gap: 8px;\n margin-bottom: 12px;\n "]))),
|
|
13
|
+
// 文件卡片
|
|
14
|
+
fileCard: css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n position: relative;\n display: flex;\n align-items: center;\n padding: 8px 12px;\n height: 64px;\n box-sizing: border-box;\n background: #fafafa;\n border: 1px solid #f0f0f0;\n border-radius: 8px;\n min-width: 0;\n flex: 0 0 auto;\n max-width: 200px;\n \n &:hover {\n background: #f5f5f5;\n }\n "]))),
|
|
15
|
+
fileSize: css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n font-size: 11px;\n color: #8c8c8c;\n line-height: 1.4;\n height: 16px;\n display: flex;\n align-items: center;\n "]))),
|
|
16
|
+
// 进度条容器
|
|
17
|
+
uploadProgress: css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n height: 16px;\n display: flex;\n align-items: center;\n \n .ant-progress {\n width: 100%;\n margin: 0;\n }\n \n .ant-progress-inner {\n height: 4px !important;\n }\n \n .ant-progress-bg {\n height: 4px !important;\n }\n "]))),
|
|
18
|
+
// 文件图标
|
|
19
|
+
fileIcon: css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n font-size: 18px;\n color: #1890ff;\n margin-right: 10px;\n flex-shrink: 0;\n "]))),
|
|
20
|
+
// 文件信息
|
|
21
|
+
fileInfo: css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n flex: 1;\n min-width: 0;\n overflow: hidden;\n "]))),
|
|
22
|
+
// 文件名
|
|
23
|
+
fileName: css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n font-size: 12px;\n font-weight: 500;\n color: #262626;\n margin-bottom: 2px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n line-height: 1.4;\n "]))),
|
|
24
|
+
// 文件删除按钮 - 黑底白字
|
|
25
|
+
fileRemoveBtn: css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["\n position: absolute;\n top: -4px;\n right: -4px;\n width: 16px;\n height: 16px;\n min-width: 16px;\n border-radius: 50%;\n background: rgba(0, 0, 0, 0.75);\n color: #fff;\n border: none;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n z-index: 1;\n padding: 0;\n font-size: 8px;\n transition: all 0.2s ease;\n \n &:hover {\n background: rgba(0, 0, 0, 0.9);\n transform: scale(1.1);\n }\n \n &:active {\n transform: scale(0.95);\n }\n "]))),
|
|
26
|
+
// 主内容区域
|
|
27
|
+
mainArea: css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["\n //\n "]))),
|
|
28
|
+
// 发送区域
|
|
29
|
+
senderWrap: css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n gap: 12px;\n background: var(--yb-input-bg-color);\n border: .5px solid var(--widget-line, rgba(0, 0, 0, .08));\n border-radius: 20px;\n box-sizing: border-box;\n caret-color: var(--yb-input-caret-color);\n flex: auto;\n font-size: 14px;\n gap: 6px;\n line-height: 22px;\n padding: 7px 12px 7px 7px;\n position: relative;\n transition-duration: .2s;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, box-shadow;\n transition-timing-function: linear;\n box-shadow: 0 6px 30px 0 rgba(0,0,0,.08);\n "]))),
|
|
30
|
+
// 输入框和按钮容器
|
|
31
|
+
inputAndButtons: css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral(["\n flex: 1;\n display: flex;\n align-items: flex-end;\n gap: 8px;\n "]))),
|
|
32
|
+
// 文本输入框容器
|
|
33
|
+
textAreaWrapper: css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral(["\n flex: 1;\n display: flex;\n align-items: center;\n background: #fff;\n padding: 0 16px;\n min-height: 44px;\n \n /* \u79FB\u9664\u6240\u6709\u84DD\u8272\u6548\u679C */\n &:focus-within {\n border-color: #d9d9d9;\n box-shadow: none;\n }\n \n .ant-input:disabled {\n background: transparent !important;\n }\n \n &::placeholder {\n color: #bfbfbf;\n }\n "]))),
|
|
34
|
+
// 文本输入框
|
|
35
|
+
textArea: css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral(["\n flex: 1;\n border: none;\n background: transparent;\n font-size: 14px;\n line-height: 1.5;\n padding: 12px 0;\n outline: none;\n color: #262626;\n "]))),
|
|
36
|
+
// 按钮组
|
|
37
|
+
buttonGroup: css(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral(["\n display: flex;\n gap: 8px;\n align-items: center;\n height: 44px;\n "]))),
|
|
38
|
+
// 按钮统一样式
|
|
39
|
+
iconButton: css(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral(["\n width: 36px;\n height: 36px;\n min-width: 36px;\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n transition: all 0.2s ease;\n \n &:hover {\n transform: translateY(-1px);\n }\n \n &:active {\n transform: translateY(0);\n }\n "]))),
|
|
40
|
+
// 清空按钮
|
|
41
|
+
clearButton: css(_templateObject18 || (_templateObject18 = _taggedTemplateLiteral(["\n border: 1px solid #f0f0f0;\n background: #fff;\n color: #8c8c8c;\n \n &:hover {\n border-color: #d9d9d9;\n color: #262626;\n background: #fafafa;\n }\n \n &:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n }\n "]))),
|
|
42
|
+
// 上传按钮
|
|
43
|
+
uploadButton: css(_templateObject19 || (_templateObject19 = _taggedTemplateLiteral(["\n border: 1px solid #f0f0f0;\n background: #fff;\n \n &:hover {\n //\n }\n \n &:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n border-color: #f0f0f0;\n background: #fafafa;\n }\n "]))),
|
|
44
|
+
// 发送按钮
|
|
45
|
+
sendButton: css(_templateObject20 || (_templateObject20 = _taggedTemplateLiteral(["\n background: #000;\n border: none;\n color: #fff;\n \n &:hover:not(:disabled) {\n background: #333; /* \u60AC\u505C\u72B6\u6001 */\n }\n \n &:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n background: #cccccc;\n color: #fff;\n }\n \n &.stop {\n //\n \n &:hover:not(:disabled) {\n //\n }\n \n &:disabled {\n background: #cccccc; /* \u7981\u7528\u72B6\u6001\u4E5F\u4FDD\u6301\u6DE1\u7070\u8272 */\n }\n }\n "]))),
|
|
46
|
+
// 底部提示
|
|
47
|
+
tip: css(_templateObject21 || (_templateObject21 = _taggedTemplateLiteral(["\n margin: 12px 0;\n text-align: center;\n font-size: 12px;\n color: #8c8c8c;\n "])))
|
|
48
|
+
};
|
|
49
|
+
});
|
|
50
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["css","withBasicStyles","useStyles","container","_templateObject","_taggedTemplateLiteral","fileListArea","_templateObject2","fileList","_templateObject3","fileCard","_templateObject4","fileSize","_templateObject5","uploadProgress","_templateObject6","fileIcon","_templateObject7","fileInfo","_templateObject8","fileName","_templateObject9","fileRemoveBtn","_templateObject10","mainArea","_templateObject11","senderWrap","_templateObject12","inputAndButtons","_templateObject13","textAreaWrapper","_templateObject14","textArea","_templateObject15","buttonGroup","_templateObject16","iconButton","_templateObject17","clearButton","_templateObject18","uploadButton","_templateObject19","sendButton","_templateObject20","tip","_templateObject21"],"sources":["../../../../src/components/XAdkSender/styles.tsx"],"sourcesContent":["import { css } from '@emotion/css';\nimport { withBasicStyles } from '@/styles/common';\n\nexport const useStyles = withBasicStyles(() => ({\n // 容器样式 - 最外层边框\n container: css`\n background: #fff;\n position: relative;\n overflow: hidden;\n padding: 10px 15px;\n overflow: visible;\n border: 2px solid transparent;\n transition: all 0.3s ease;\n \n &.drag-over {\n border: 2px dashed #000;\n background: rgba(0, 0, 0, 0.02);\n }\n `,\n \n // 文件列表区域\n fileListArea: css`\n padding: 12px 16px 0 16px;\n max-height: 150px;\n overflow-y: auto;\n \n &::-webkit-scrollbar {\n width: 4px;\n }\n \n &::-webkit-scrollbar-track {\n background: #f5f5f5;\n border-radius: 2px;\n }\n \n &::-webkit-scrollbar-thumb {\n background: #d9d9d9;\n border-radius: 2px;\n }\n \n &::-webkit-scrollbar-thumb:hover {\n background: #bfbfbf;\n }\n `,\n \n // 文件列表\n fileList: css`\n display: flex;\n flex-wrap: wrap;\n gap: 8px;\n margin-bottom: 12px;\n `,\n \n // 文件卡片\n fileCard: css`\n position: relative;\n display: flex;\n align-items: center;\n padding: 8px 12px;\n height: 64px;\n box-sizing: border-box;\n background: #fafafa;\n border: 1px solid #f0f0f0;\n border-radius: 8px;\n min-width: 0;\n flex: 0 0 auto;\n max-width: 200px;\n \n &:hover {\n background: #f5f5f5;\n }\n `,\n\n fileSize: css`\n font-size: 11px;\n color: #8c8c8c;\n line-height: 1.4;\n height: 16px;\n display: flex;\n align-items: center;\n `,\n\n // 进度条容器\n uploadProgress: css`\n height: 16px;\n display: flex;\n align-items: center;\n \n .ant-progress {\n width: 100%;\n margin: 0;\n }\n \n .ant-progress-inner {\n height: 4px !important;\n }\n \n .ant-progress-bg {\n height: 4px !important;\n }\n `,\n \n // 文件图标\n fileIcon: css`\n font-size: 18px;\n color: #1890ff;\n margin-right: 10px;\n flex-shrink: 0;\n `,\n \n // 文件信息\n fileInfo: css`\n flex: 1;\n min-width: 0;\n overflow: hidden;\n `,\n \n // 文件名\n fileName: css`\n font-size: 12px;\n font-weight: 500;\n color: #262626;\n margin-bottom: 2px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n line-height: 1.4;\n `,\n \n // 文件删除按钮 - 黑底白字\n fileRemoveBtn: css`\n position: absolute;\n top: -4px;\n right: -4px;\n width: 16px;\n height: 16px;\n min-width: 16px;\n border-radius: 50%;\n background: rgba(0, 0, 0, 0.75);\n color: #fff;\n border: none;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n z-index: 1;\n padding: 0;\n font-size: 8px;\n transition: all 0.2s ease;\n \n &:hover {\n background: rgba(0, 0, 0, 0.9);\n transform: scale(1.1);\n }\n \n &:active {\n transform: scale(0.95);\n }\n `,\n \n // 主内容区域\n mainArea: css`\n //\n `,\n \n // 发送区域\n senderWrap: css`\n display: flex;\n align-items: center;\n gap: 12px;\n background: var(--yb-input-bg-color);\n border: .5px solid var(--widget-line, rgba(0, 0, 0, .08));\n border-radius: 20px;\n box-sizing: border-box;\n caret-color: var(--yb-input-caret-color);\n flex: auto;\n font-size: 14px;\n gap: 6px;\n line-height: 22px;\n padding: 7px 12px 7px 7px;\n position: relative;\n transition-duration: .2s;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, box-shadow;\n transition-timing-function: linear;\n box-shadow: 0 6px 30px 0 rgba(0,0,0,.08);\n `,\n \n // 输入框和按钮容器\n inputAndButtons: css`\n flex: 1;\n display: flex;\n align-items: flex-end;\n gap: 8px;\n `,\n \n // 文本输入框容器\n textAreaWrapper: css`\n flex: 1;\n display: flex;\n align-items: center;\n background: #fff;\n padding: 0 16px;\n min-height: 44px;\n \n /* 移除所有蓝色效果 */\n &:focus-within {\n border-color: #d9d9d9;\n box-shadow: none;\n }\n \n .ant-input:disabled {\n background: transparent !important;\n }\n \n &::placeholder {\n color: #bfbfbf;\n }\n `,\n\n // 文本输入框\n textArea: css`\n flex: 1;\n border: none;\n background: transparent;\n font-size: 14px;\n line-height: 1.5;\n padding: 12px 0;\n outline: none;\n color: #262626;\n `,\n \n // 按钮组\n buttonGroup: css`\n display: flex;\n gap: 8px;\n align-items: center;\n height: 44px;\n `,\n \n // 按钮统一样式\n iconButton: css`\n width: 36px;\n height: 36px;\n min-width: 36px;\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n transition: all 0.2s ease;\n \n &:hover {\n transform: translateY(-1px);\n }\n \n &:active {\n transform: translateY(0);\n }\n `,\n \n // 清空按钮\n clearButton: css`\n border: 1px solid #f0f0f0;\n background: #fff;\n color: #8c8c8c;\n \n &:hover {\n border-color: #d9d9d9;\n color: #262626;\n background: #fafafa;\n }\n \n &:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n }\n `,\n \n // 上传按钮\n uploadButton: css`\n border: 1px solid #f0f0f0;\n background: #fff;\n \n &:hover {\n //\n }\n \n &:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n border-color: #f0f0f0;\n background: #fafafa;\n }\n `,\n \n // 发送按钮\n sendButton: css`\n background: #000;\n border: none;\n color: #fff;\n \n &:hover:not(:disabled) {\n background: #333; /* 悬停状态 */\n }\n \n &:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n background: #cccccc;\n color: #fff;\n }\n \n &.stop {\n //\n \n &:hover:not(:disabled) {\n //\n }\n \n &:disabled {\n background: #cccccc; /* 禁用状态也保持淡灰色 */\n }\n }\n `,\n \n // 底部提示\n tip: css`\n margin: 12px 0;\n text-align: center;\n font-size: 12px;\n color: #8c8c8c;\n `\n}));"],"mappings":";;AAAA,SAASA,GAAG,QAAQ,cAAc;AAClC,SAASC,eAAe;AAExB,OAAO,IAAMC,SAAS,GAAGD,eAAe,CAAC;EAAA,OAAO;IAC9C;IACAE,SAAS,EAAEH,GAAG,CAAAI,eAAA,KAAAA,eAAA,GAAAC,sBAAA,gTAab;IAED;IACAC,YAAY,EAAEN,GAAG,CAAAO,gBAAA,KAAAA,gBAAA,GAAAF,sBAAA,obAsBhB;IAED;IACAG,QAAQ,EAAER,GAAG,CAAAS,gBAAA,KAAAA,gBAAA,GAAAJ,sBAAA,+FAKZ;IAED;IACAK,QAAQ,EAAEV,GAAG,CAAAW,gBAAA,KAAAA,gBAAA,GAAAN,sBAAA,qWAiBZ;IAEDO,QAAQ,EAAEZ,GAAG,CAAAa,gBAAA,KAAAA,gBAAA,GAAAR,sBAAA,+IAOZ;IAED;IACAS,cAAc,EAAEd,GAAG,CAAAe,gBAAA,KAAAA,gBAAA,GAAAV,sBAAA,gSAiBlB;IAED;IACAW,QAAQ,EAAEhB,GAAG,CAAAiB,gBAAA,KAAAA,gBAAA,GAAAZ,sBAAA,qGAKZ;IAED;IACAa,QAAQ,EAAElB,GAAG,CAAAmB,gBAAA,KAAAA,gBAAA,GAAAd,sBAAA,oEAIZ;IAED;IACAe,QAAQ,EAAEpB,GAAG,CAAAqB,gBAAA,KAAAA,gBAAA,GAAAhB,sBAAA,6MASZ;IAED;IACAiB,aAAa,EAAEtB,GAAG,CAAAuB,iBAAA,KAAAA,iBAAA,GAAAlB,sBAAA,4jBA4BjB;IAED;IACAmB,QAAQ,EAAExB,GAAG,CAAAyB,iBAAA,KAAAA,iBAAA,GAAApB,sBAAA,oBAEZ;IAED;IACAqB,UAAU,EAAE1B,GAAG,CAAA2B,iBAAA,KAAAA,iBAAA,GAAAtB,sBAAA,2oBAmBd;IAED;IACAuB,eAAe,EAAE5B,GAAG,CAAA6B,iBAAA,KAAAA,iBAAA,GAAAxB,sBAAA,yFAKnB;IAED;IACAyB,eAAe,EAAE9B,GAAG,CAAA+B,iBAAA,KAAAA,iBAAA,GAAA1B,sBAAA,+aAqBnB;IAED;IACA2B,QAAQ,EAAEhC,GAAG,CAAAiC,iBAAA,KAAAA,iBAAA,GAAA5B,sBAAA,uLASZ;IAED;IACA6B,WAAW,EAAElC,GAAG,CAAAmC,iBAAA,KAAAA,iBAAA,GAAA9B,sBAAA,4FAKf;IAED;IACA+B,UAAU,EAAEpC,GAAG,CAAAqC,iBAAA,KAAAA,iBAAA,GAAAhC,sBAAA,0UAiBd;IAED;IACAiC,WAAW,EAAEtC,GAAG,CAAAuC,iBAAA,KAAAA,iBAAA,GAAAlC,sBAAA,qRAef;IAED;IACAmC,YAAY,EAAExC,GAAG,CAAAyC,iBAAA,KAAAA,iBAAA,GAAApC,sBAAA,mPAchB;IAED;IACAqC,UAAU,EAAE1C,GAAG,CAAA2C,iBAAA,KAAAA,iBAAA,GAAAtC,sBAAA,mhBA2Bd;IAED;IACAuC,GAAG,EAAE5C,GAAG,CAAA6C,iBAAA,KAAAA,iBAAA,GAAAxC,sBAAA;EAMV,CAAC;AAAA,CAAC,CAAC"}
|
|
@@ -75,16 +75,9 @@ export var 单聊天窗口实例 = {
|
|
|
75
75
|
maxWidth: '350px',
|
|
76
76
|
height: '600px'
|
|
77
77
|
},
|
|
78
|
-
children: /*#__PURE__*/_jsx(XAdkWebProvider, _objectSpread(
|
|
78
|
+
children: /*#__PURE__*/_jsx(XAdkWebProvider, _objectSpread({
|
|
79
79
|
ref: providerRef
|
|
80
|
-
}, args)
|
|
81
|
-
onError: function onError(providerError) {
|
|
82
|
-
return console.log(providerError);
|
|
83
|
-
},
|
|
84
|
-
onMessage: function onMessage(data) {
|
|
85
|
-
return console.log(data);
|
|
86
|
-
}
|
|
87
|
-
}))
|
|
80
|
+
}, args))
|
|
88
81
|
})]
|
|
89
82
|
});
|
|
90
83
|
},
|
|
@@ -127,8 +120,14 @@ export var 携带历史记录实例 = {
|
|
|
127
120
|
onError: function onError(providerError) {
|
|
128
121
|
return console.log(providerError);
|
|
129
122
|
},
|
|
130
|
-
|
|
123
|
+
onSuccess: function onSuccess(appInfo) {
|
|
124
|
+
return console.log(appInfo);
|
|
125
|
+
},
|
|
126
|
+
onStream: function onStream(data) {
|
|
131
127
|
return console.log(data);
|
|
128
|
+
},
|
|
129
|
+
onMessage: function onMessage(data, message) {
|
|
130
|
+
return console.log(data, message);
|
|
132
131
|
}
|
|
133
132
|
}))
|
|
134
133
|
})
|
|
@@ -136,7 +135,7 @@ export var 携带历史记录实例 = {
|
|
|
136
135
|
},
|
|
137
136
|
args: {
|
|
138
137
|
url: 'https://m-poc-dev.zaxline.com',
|
|
139
|
-
token: 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.
|
|
138
|
+
token: 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoiVjRTT0htSm8zWmVhNFJOdWc3WFgyQT09Iiwic2NvcGUiOlsiYU5HbmZXS1pEUWVNWXkzd0NWSFc5VjVMIl0sImV4cCI6MTc2Nzg2MTk3NiwianRpIjoiUVpWODZPRVNMQXFRTWNpcUxwYm1zWFk2UWpzIiwiY2xpZW50X2lkIjoiYU5HbmZXS1pEUWVNWXkzd0NWSFc5VjVMIn0.U6GGZ87DYMQLf7wUO6t7ABRlT2dxwKfseaCji0Hj85Clh-26YZ66lq5O6ly54kgwH8KKQ-88X0TGHRajMcg4GDmrIzHJyEj0piIrfmt_iK7MGFmmpyXtob4JppQxcSB_Fv1nwc67kl4QbPTtsoAGpcPRn1b6vQcDjPoCVwzggws-ExKJS4cFskgr-ll6ihawvFm6xT5hUKdaOwfQT--q836S1NW-O2hZwytTujCWn6E1wdo4spYhy2HmzHHTT1spYG0vs1tr6iBY01mJpcMRDr4kJFFQah5a6H_-TxwO2mOMcjuvHeb1wle-00GwtsQryTz0awKRGqNqR6tLJD_7Rg',
|
|
140
139
|
config: {
|
|
141
140
|
appNo: 'aNGnfWKZDQeMYy3wCVHW9V5L',
|
|
142
141
|
session: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Button","XAdkWebProvider","jsx","_jsx","jsxs","_jsxs","meta","title","component","parameters","layout","docs","description","tags","argTypes","config","table","type","summary","detail","category","decorators","Story","style","padding","children","单聊天窗口实例","render","args","providerRef","useRef","handleSendMessage","_providerRef$current","current","chat","text","console","log","display","flexDirection","gap","marginRight","justifyContent","onClick","maxWidth","height","_objectSpread","ref","
|
|
1
|
+
{"version":3,"names":["React","Button","XAdkWebProvider","jsx","_jsx","jsxs","_jsxs","meta","title","component","parameters","layout","docs","description","tags","argTypes","config","table","type","summary","detail","category","decorators","Story","style","padding","children","单聊天窗口实例","render","args","providerRef","useRef","handleSendMessage","_providerRef$current","current","chat","text","console","log","display","flexDirection","gap","marginRight","justifyContent","onClick","maxWidth","height","_objectSpread","ref","url","token","appNo","providerId","携带历史记录实例","_providerRef$current2","width","onError","providerError","onSuccess","appInfo","onStream","data","onMessage","message","session","showSessionList"],"sources":["../../../../src/components/XAdkWebProvider/XAdkWebProvider.stories.tsx"],"sourcesContent":["import React from 'react';\nimport type { Meta, StoryObj } from '@storybook/react-vite';\nimport { Button } from 'antd';\nimport XAdkWebProvider from './index';\n\nconst meta: Meta<typeof XAdkWebProvider> = {\n title: 'AI组件/XAdkWebProvider AI容器',\n component: XAdkWebProvider,\n parameters: {\n layout: 'centered',\n docs: {\n description: {\n component: 'AI 聊天机器人容器组件,提供全局上下文和消息管理功能。',\n },\n },\n },\n tags: ['autodocs'],\n argTypes: {\n config: {\n description: '配置信息',\n table: {\n type: {\n summary: 'XAdkWebProviderConfig',\n detail: `{\n appNo?: string; // 应用唯一编号\n }`,\n },\n category: '配置选项',\n },\n },\n },\n // 添加装饰器,确保组件有必要的上下文\n decorators: [\n (Story) => (\n <div style={{ padding: '20px' }}>\n <Story />\n </div>\n ),\n ],\n};\n\nexport default meta;\ntype Story = StoryObj<typeof meta>;\n\n// 使用 Provider 的 XAiChatbot\nexport const 单聊天窗口实例: Story = {\n render: (args) => {\n const providerRef = React.useRef<any>(null);\n\n const handleSendMessage = () => {\n if (providerRef.current?.chat) {\n providerRef.current.chat({ text: '你好,AI!' });\n } else {\n console.log('XAdkWebProvider ref 未准备好或 chat 方法不存在');\n }\n };\n\n return (\n <div style={{ display: 'flex' }}>\n <div style={{ display: 'flex', flexDirection: 'column', gap: '12px', marginRight: '24px', justifyContent: 'center' }}>\n <Button type=\"primary\" onClick={handleSendMessage}>发送消息</Button>\n </div>\n <div style={{ maxWidth: '350px', height: '600px' }}>\n <XAdkWebProvider\n ref={providerRef}\n {...args}\n // onError={(providerError) => console.log(providerError)}\n // onMessage={(data) => console.log(data)}\n >\n </XAdkWebProvider>\n </div>\n </div>\n );\n },\n args: {\n url: 'https://m-poc-dev.zaxline.com',\n token: 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoiVjRTT0htSm8zWmVhNFJOdWc3WFgyQT09Iiwic2NvcGUiOlsiYU5HbmZXS1pEUWVNWXkzd0NWSFc5VjVMIl0sImV4cCI6MTc2NzUzNjE2NSwianRpIjoicnktX0RIQnVFbE9tQW1rZWtLNjBnNzREaGk0IiwiY2xpZW50X2lkIjoiYU5HbmZXS1pEUWVNWXkzd0NWSFc5VjVMIn0.UnedO15cSkYyE6u6ZQATLXSYIYb0GylP7RjeJYHDTVwGPuYKOHENgYMbXkL_FOe_V8681eZ5uXpR5k31HsziIjp_GtZdUqLv5O_bEzZ5gKMPmy9uXpr56M-IiB2c6GZRbJF-DI1b4J9QJcvwlIvQG-I2ug50cGmlZ4YHhRrjHnU6Z8j8iJoF4CLUgzG5R0UasIlonfI1uVUXX1lqD4iomZ7UDWodPLi2QpjlCkUq2kaJbjRSZAPHpugff4ZKzAl47nO2deBOBbmDkzPnKmibCwJ5rZVtYIYvWLq8iX0qgkhXEkEn20DB717WPGi779qB8vxOx4rGlwuegRAz_05_qg',\n config: {\n appNo: 'aNGnfWKZDQeMYy3wCVHW9V5L',\n },\n providerId: 'demo-provider',\n },\n};\n\n\n// 使用 Provider 的 XAiChatbot\nexport const 携带历史记录实例: Story = {\n render: (args) => {\n const providerRef = React.useRef<any>(null);\n\n const handleSendMessage = () => {\n if (providerRef.current?.chat) {\n providerRef.current.chat({ text: '你好,AI!' });\n } else {\n console.log('XAdkWebProvider ref 未准备好或 chat 方法不存在');\n }\n };\n\n return (\n <div style={{ display: 'flex' }}>\n <div style={{ height: '600px', width: '100vw' }}>\n <XAdkWebProvider\n ref={providerRef}\n {...args}\n onError={(providerError) => console.log(providerError)}\n onSuccess={(appInfo) => console.log(appInfo)}\n onStream={(data) => console.log(data)}\n onMessage={(data, message) => console.log(data, message)}\n />\n </div>\n </div>\n );\n },\n args: {\n url: 'https://m-poc-dev.zaxline.com',\n token: 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoiVjRTT0htSm8zWmVhNFJOdWc3WFgyQT09Iiwic2NvcGUiOlsiYU5HbmZXS1pEUWVNWXkzd0NWSFc5VjVMIl0sImV4cCI6MTc2Nzg2MTk3NiwianRpIjoiUVpWODZPRVNMQXFRTWNpcUxwYm1zWFk2UWpzIiwiY2xpZW50X2lkIjoiYU5HbmZXS1pEUWVNWXkzd0NWSFc5VjVMIn0.U6GGZ87DYMQLf7wUO6t7ABRlT2dxwKfseaCji0Hj85Clh-26YZ66lq5O6ly54kgwH8KKQ-88X0TGHRajMcg4GDmrIzHJyEj0piIrfmt_iK7MGFmmpyXtob4JppQxcSB_Fv1nwc67kl4QbPTtsoAGpcPRn1b6vQcDjPoCVwzggws-ExKJS4cFskgr-ll6ihawvFm6xT5hUKdaOwfQT--q836S1NW-O2hZwytTujCWn6E1wdo4spYhy2HmzHHTT1spYG0vs1tr6iBY01mJpcMRDr4kJFFQah5a6H_-TxwO2mOMcjuvHeb1wle-00GwtsQryTz0awKRGqNqR6tLJD_7Rg',\n config: {\n appNo: 'aNGnfWKZDQeMYy3wCVHW9V5L',\n session: {\n showSessionList: true,\n },\n },\n providerId: 'demo-provider',\n },\n};"],"mappings":"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"}
|
|
@@ -28,6 +28,8 @@ var XAdkWebProvider = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
28
28
|
_ref$providerId = _ref.providerId,
|
|
29
29
|
providerId = _ref$providerId === void 0 ? 'defaultId' : _ref$providerId,
|
|
30
30
|
onSuccess = _ref.onSuccess,
|
|
31
|
+
onStream = _ref.onStream,
|
|
32
|
+
onMessage = _ref.onMessage,
|
|
31
33
|
onError = _ref.onError;
|
|
32
34
|
// 使用 useAgentGenerator Hook 管理消息状态
|
|
33
35
|
var styles = useStyles();
|
|
@@ -38,7 +40,9 @@ var XAdkWebProvider = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
38
40
|
config: config,
|
|
39
41
|
token: token,
|
|
40
42
|
onSuccess: onSuccess,
|
|
41
|
-
onError: onError
|
|
43
|
+
onError: onError,
|
|
44
|
+
onStream: onStream,
|
|
45
|
+
onMessage: onMessage
|
|
42
46
|
}),
|
|
43
47
|
appInfo = _useADKChat.appInfo,
|
|
44
48
|
loading = _useADKChat.loading,
|
|
@@ -47,17 +51,19 @@ var XAdkWebProvider = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
47
51
|
suggestions = _useADKChat.suggestions,
|
|
48
52
|
sessionList = _useADKChat.sessionList,
|
|
49
53
|
currentSessionId = _useADKChat.currentSessionId,
|
|
54
|
+
initialized = _useADKChat.initialized,
|
|
50
55
|
setMessages = _useADKChat.setMessages,
|
|
51
56
|
startChat = _useADKChat.startChat,
|
|
52
57
|
stopChat = _useADKChat.stopChat,
|
|
53
58
|
clearChat = _useADKChat.clearChat,
|
|
54
59
|
suggestChat = _useADKChat.suggestChat,
|
|
60
|
+
confirmFnCall = _useADKChat.confirmFnCall,
|
|
55
61
|
deleteSession = _useADKChat.deleteSession,
|
|
56
62
|
updateSession = _useADKChat.updateSession,
|
|
57
63
|
setCurrentSessionDetail = _useADKChat.setCurrentSessionDetail;
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
64
|
+
|
|
65
|
+
// const { appName, icon } = appInfo || {};
|
|
66
|
+
|
|
61
67
|
useImperativeHandle(ref, function () {
|
|
62
68
|
return {
|
|
63
69
|
startChat: startChat,
|
|
@@ -81,7 +87,7 @@ var XAdkWebProvider = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
81
87
|
}, [appInfo, messages, stopChat, setMessages, setCurrentSessionDetail]);
|
|
82
88
|
var _useState = useState(false),
|
|
83
89
|
_useState2 = _slicedToArray(_useState, 2),
|
|
84
|
-
|
|
90
|
+
_isNarrow = _useState2[0],
|
|
85
91
|
setIsNarrow = _useState2[1];
|
|
86
92
|
var divRef = useRef(null);
|
|
87
93
|
|
|
@@ -123,13 +129,17 @@ var XAdkWebProvider = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
123
129
|
|
|
124
130
|
// 发送消息
|
|
125
131
|
var handleSendMessage = /*#__PURE__*/function () {
|
|
126
|
-
var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(
|
|
132
|
+
var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(_ref2) {
|
|
133
|
+
var _ref2$text, text;
|
|
127
134
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
128
135
|
while (1) switch (_context.prev = _context.next) {
|
|
129
136
|
case 0:
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
137
|
+
_ref2$text = _ref2.text, text = _ref2$text === void 0 ? '' : _ref2$text;
|
|
138
|
+
_context.next = 3;
|
|
139
|
+
return startChat({
|
|
140
|
+
text: text
|
|
141
|
+
});
|
|
142
|
+
case 3:
|
|
133
143
|
case "end":
|
|
134
144
|
return _context.stop();
|
|
135
145
|
}
|
|
@@ -226,7 +236,9 @@ var XAdkWebProvider = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
226
236
|
var lastMsg = messages.findLast(function (v) {
|
|
227
237
|
return v.role === 'user' && v.text;
|
|
228
238
|
});
|
|
229
|
-
handleSendMessage(
|
|
239
|
+
handleSendMessage({
|
|
240
|
+
text: (lastMsg === null || lastMsg === void 0 ? void 0 : lastMsg.text) || ''
|
|
241
|
+
});
|
|
230
242
|
}
|
|
231
243
|
})
|
|
232
244
|
}), /*#__PURE__*/_jsx(Tooltip, {
|
|
@@ -429,12 +441,15 @@ var XAdkWebProvider = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
429
441
|
children: /*#__PURE__*/_jsx("div", {
|
|
430
442
|
className: styles.content,
|
|
431
443
|
children: /*#__PURE__*/_jsx(XAdkChatbot, {
|
|
444
|
+
allowUpload: config === null || config === void 0 ? void 0 : config.allowUpload,
|
|
445
|
+
initialized: initialized,
|
|
432
446
|
prologue: prologue,
|
|
433
447
|
suggestions: suggestions,
|
|
434
448
|
loading: loading,
|
|
435
449
|
messages: messages,
|
|
436
450
|
footer: renderFooter,
|
|
437
451
|
onSubmit: handleSendMessage,
|
|
452
|
+
onConfirm: confirmFnCall,
|
|
438
453
|
onStop: stopChat,
|
|
439
454
|
onClear: clearChat,
|
|
440
455
|
onSuggest: suggestChat,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forwardRef","useImperativeHandle","useState","useRef","useEffect","message","Flex","Tooltip","Button","Modal","Input","ConfigProvider","copy","XProvider","ExclamationCircleFilled","ReloadOutlined","CopyOutlined","LikeFilled","LikeOutlined","MOBILE_MAX_WIDTH","API_SUCCESS_CODE","XAdkChatbot","DislikeFeedback","useADKChat","addFeedback","primaryBlue","XAiConversations","useStyles","jsx","_jsx","jsxs","_jsxs","confirm","XAdkWebProvider","_ref","ref","_config$chatProps","_config$session","_config$session2","_ref$url","url","window","location","origin","token","config","_ref$providerId","providerId","onSuccess","onError","styles","_useADKChat","appInfo","loading","messages","prologue","suggestions","sessionList","currentSessionId","setMessages","startChat","stopChat","clearChat","suggestChat","deleteSession","updateSession","setCurrentSessionDetail","_ref2","appName","icon","getAppInfo","getMessages","getSessions","_useState","_useState2","_slicedToArray","isNarrow","setIsNarrow","divRef","div","current","resizeObserver","ResizeObserver","entries","_iterator","_createForOfIteratorHelper","_step","s","n","done","entry","value","width","contentRect","err","e","f","observe","initialWidth","offsetWidth","disconnect","handleSendMessage","_ref3","_asyncToGenerator","_regeneratorRuntime","mark","_callee","text","wrap","_callee$","_context","prev","next","stop","_x","apply","arguments","handleAddFeedback","_ref4","_callee2","data","_data$raw$isLike","_data$raw","_ref5","appNo","isLike","_yield$addFeedback","result","_callee2$","_context2","raw","warning","abrupt","requestId","invocationId","sent","code","success","map","item","id","_objectSpread","error","_x2","renderFooter","_ref6","_ref6$message","msg","_ref6$isLastBotMsg","isLastBotMsg","_ref6$isLastMsg","isLastMsg","_msg$raw","gap","style","padding","children","title","type","size","color","onClick","lastMsg","findLast","v","role","activeColor","appTheme","onSubmit","_ref7","_callee3","formData","_yield$addFeedback2","_callee3$","_context3","_x3","msgs","filter","join","isOk","handleUpdateSession","sessionId","menuConfig","conversation","items","label","key","danger","menuInfo","domEvent","stopPropagation","inputValue","content","defaultValue","autoFocus","onChange","target","okText","cancelText","okButtonProps","background","borderColor","onOk","trim","Promise","reject","onCancel","okType","clearBtnShow","chatProps","session","showSessionList","className","providerWrapper","onActiveChange","onNewChat","activeKey","menu","chatbotWrapper","footer","onStop","onClear","onSuggest"],"sources":["../../../../src/components/XAdkWebProvider/index.tsx"],"sourcesContent":["import { forwardRef, useImperativeHandle, useState, useRef, useEffect } from 'react';\nimport { message, Flex, Tooltip, Button, Modal, Input, ConfigProvider } from 'antd';\nimport copy from 'copy-to-clipboard';\nimport { XProvider } from '@ant-design/x';\nimport type { ConversationsProps } from '@ant-design/x';\nimport { ExclamationCircleFilled, ReloadOutlined, CopyOutlined, LikeFilled, LikeOutlined } from '@ant-design/icons';\nimport { XAdkProviderProps, XAdkProviderHandle } from '@/types/XAdkProvider';\nimport { MOBILE_MAX_WIDTH, API_SUCCESS_CODE } from '@/constants';\nimport type { IMessage } from '@/types';\nimport XAdkChatbot from '../XAdkChatbot';\nimport DislikeFeedback from '../DislikeFeedback';\nimport useADKChat from '@/hooks/useADKChat';\nimport { addFeedback } from '@/services/api';\nimport { primaryBlue } from '@/styles/common';\nimport XAiConversations from '../XAiConversations';\nimport { useStyles } from './styles';\n\nconst { confirm } = Modal;\n\nconst XAdkWebProvider = forwardRef<XAdkProviderHandle, XAdkProviderProps>(({\n url = window.location.origin,\n token,\n config,\n providerId = 'defaultId',\n onSuccess,\n onError,\n}, ref) => {\n // 使用 useAgentGenerator Hook 管理消息状态\n const styles = useStyles();\n // const { textSpeed = 55 } = config?.chatProps || {};\n\n const {\n appInfo,\n loading,\n messages,\n prologue,\n suggestions,\n sessionList,\n currentSessionId,\n setMessages,\n startChat,\n stopChat,\n clearChat,\n suggestChat,\n deleteSession,\n updateSession,\n setCurrentSessionDetail,\n } = useADKChat({ url, config, token, onSuccess, onError });\n\n const { appName, icon } = appInfo || {};\n\n useImperativeHandle(ref, () => ({\n startChat,\n stopChat,\n clearChat,\n suggestChat,\n deleteSession,\n updateSession,\n getAppInfo: () => appInfo,\n getMessages: () => messages,\n getSessions: () => sessionList,\n setMessages,\n setCurrentSessionDetail,\n }), [appInfo, messages, stopChat, setMessages, setCurrentSessionDetail]);\n\n const [isNarrow, setIsNarrow] = useState<boolean>(false);\n const divRef = useRef<HTMLDivElement>(null);\n\n // 监听容器宽度变化\n useEffect(() => {\n const div = divRef.current;\n if (!div) return;\n\n // 创建监听器\n const resizeObserver = new ResizeObserver((entries) => {\n // eslint-disable-next-line no-restricted-syntax\n for (const entry of entries) {\n const { width } = entry.contentRect;\n setIsNarrow(width <= MOBILE_MAX_WIDTH);\n }\n });\n\n // 开始监听\n resizeObserver.observe(div);\n\n // 初始化检查\n const initialWidth = div.offsetWidth;\n setIsNarrow(initialWidth <= MOBILE_MAX_WIDTH);\n\n // 清理函数\n return () => {\n resizeObserver.disconnect();\n };\n }, []);\n\n // 发送消息\n const handleSendMessage = async (text: string) => {\n await startChat(text);\n };\n\n // 处理添加反馈\n const handleAddFeedback = async (data: any) => {\n const { appNo } = config || {};\n const isLike = data?.raw?.isLike ?? 0;\n if (isLike !== 0) {\n message.warning('已收到您的反馈,无需重复提交');\n return;\n }\n if (appNo) {\n const { result } = await addFeedback({\n url,\n token,\n appNo,\n requestId: data.invocationId,\n isLike: 1,\n });\n if (result?.code === API_SUCCESS_CODE) {\n message.success('感谢您的反馈');\n setMessages((prev) => {\n return prev.map((item) => {\n if (item.id === data.id) {\n return {\n ...item,\n raw: {\n ...item.raw,\n isLike: 1, \n }\n };\n }\n return item;\n });\n });\n } else {\n message.error('反馈失败,请稍后再试');\n }\n }\n };\n\n\n const renderFooter = ({ message: msg = {} as IMessage, isLastBotMsg = false, isLastMsg = false}) => {\n if (isLastBotMsg) {\n return (\n <Flex gap={4} style={{ padding: '8px 0' }}>\n {isLastMsg && (\n <Tooltip title=\"重新生成\">\n <Button\n type=\"text\"\n size=\"small\"\n style={{ color: '#949494' }}\n icon={<ReloadOutlined />}\n onClick={() => {\n const lastMsg = messages.findLast((v) => {\n return v.role === 'user' && v.text;\n });\n handleSendMessage(lastMsg?.text || '');\n }}\n />\n </Tooltip>\n )}\n <Tooltip title=\"赞\">\n <Button\n type=\"text\"\n size=\"small\"\n style={{ color: '#949494' }}\n icon={msg.raw?.isLike === 1 ? <LikeFilled /> : <LikeOutlined />}\n onClick={() => handleAddFeedback(msg)}\n />\n </Tooltip>\n <Tooltip title=\"踩\">\n <DislikeFeedback\n msg={msg}\n activeColor={appInfo?.appTheme || primaryBlue}\n onSubmit={async (formData) => {\n const { result } = await addFeedback({\n ...formData,\n requestId: msg.invocationId,\n isLike: -1,\n url,\n appNo: config?.appNo,\n token,\n });\n if (result?.code === API_SUCCESS_CODE) {\n message.success('已收到您的反馈,我们会努力做的更好');\n setMessages((prev) => {\n return prev.map((item) => {\n if (item.id === msg.id) {\n return {\n ...item,\n isLike: -1,\n };\n }\n return item;\n });\n });\n return true;\n }\n message.error('反馈失败,请稍后再试');\n return false;\n }}\n />\n </Tooltip>\n <Tooltip title=\"复制\">\n <Button\n type=\"text\"\n size=\"small\"\n style={{ color: '#949494' }}\n icon={<CopyOutlined />}\n onClick={() => {\n const msgs = messages.filter((v) => {\n return v.role === 'bot'\n && v.invocationId === msg.invocationId\n && v.text;\n });\n const text = msgs.map((v) => {\n return v.text;\n }).join('\\n');\n const isOk = copy(text);\n if (isOk) {\n message.success('复制成功');\n }\n }}\n />\n </Tooltip>\n </Flex>\n );\n }\n return null;\n };\n\n // 修改会话内容\n const handleUpdateSession = (sessionId: string, title: string) => {\n updateSession(sessionId, title);\n };\n\n // 会话操作菜单\n const menuConfig: ConversationsProps['menu'] = (conversation) => ({\n items: [\n {\n label: '重命名',\n key: 'edit',\n },\n {\n label: '删除',\n key: 'delete',\n danger: true,\n },\n ],\n onClick: (menuInfo) => {\n menuInfo.domEvent.stopPropagation();\n const { key } = menuInfo;\n switch (key) {\n case 'edit': {\n let inputValue = conversation.label as string || '';\n confirm({\n title: '编辑对话名称',\n icon: null,\n content: (\n <Input\n defaultValue={inputValue}\n autoFocus\n style={{ width: '100%' }}\n onChange={(e) => {\n inputValue = e.target.value;\n }}\n />\n ),\n okText: '确认',\n cancelText: '取消',\n okButtonProps: {\n style: { background: '#000', borderColor: '#000', color: '#fff' },\n },\n onOk: () => {\n if (!inputValue.trim()) {\n message.error('对话名称不能为空');\n return Promise.reject();\n }\n handleUpdateSession(conversation.key, inputValue);\n },\n onCancel: () => {\n // 静默处理\n },\n });\n break;\n }\n case 'delete':\n confirm({\n title: '确认删除?',\n icon: <ExclamationCircleFilled />,\n content: '该对话内容将被删除无法恢复。',\n okText: '确认删除',\n okType: 'danger',\n cancelText: '取消',\n okButtonProps: {\n style: { background: '#ff4d4f', borderColor: '#ff4d4f', color: '#fff' },\n },\n onOk() {\n deleteSession(conversation.key);\n },\n onCancel() {\n //\n },\n });\n break;\n }\n },\n });\n\n // 是否展示清空按钮\n const clearBtnShow = typeof config?.chatProps?.clearBtnShow !== 'undefined'\n ? config.chatProps.clearBtnShow\n : !config?.session?.showSessionList;\n\n return (\n <ConfigProvider>\n <XProvider>\n <div\n ref={divRef}\n className={styles.providerWrapper}\n > \n {config?.session?.showSessionList && (\n <XAiConversations\n isNarrow={false}\n sessionList={sessionList}\n onActiveChange={(key) => setCurrentSessionDetail(key)}\n onNewChat={clearChat}\n activeKey={currentSessionId}\n menu={menuConfig}\n />\n )}\n <div className={styles.chatbotWrapper}>\n <div className={styles.content}>\n <XAdkChatbot\n prologue={prologue}\n suggestions={suggestions}\n loading={loading}\n messages={messages}\n footer={renderFooter}\n onSubmit={handleSendMessage}\n onStop={stopChat}\n onClear={clearChat}\n onSuggest={suggestChat}\n clearBtnShow={clearBtnShow}\n />\n </div>\n </div>\n </div>\n </XProvider>\n </ConfigProvider>\n );\n});\n\nexport default XAdkWebProvider;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["forwardRef","useImperativeHandle","useState","useRef","useEffect","message","Flex","Tooltip","Button","Modal","Input","ConfigProvider","copy","XProvider","ExclamationCircleFilled","ReloadOutlined","CopyOutlined","LikeFilled","LikeOutlined","MOBILE_MAX_WIDTH","API_SUCCESS_CODE","XAdkChatbot","DislikeFeedback","useADKChat","addFeedback","primaryBlue","XAiConversations","useStyles","jsx","_jsx","jsxs","_jsxs","confirm","XAdkWebProvider","_ref","ref","_config$chatProps","_config$session","_config$session2","_ref$url","url","window","location","origin","token","config","_ref$providerId","providerId","onSuccess","onStream","onMessage","onError","styles","_useADKChat","appInfo","loading","messages","prologue","suggestions","sessionList","currentSessionId","initialized","setMessages","startChat","stopChat","clearChat","suggestChat","confirmFnCall","deleteSession","updateSession","setCurrentSessionDetail","getAppInfo","getMessages","getSessions","_useState","_useState2","_slicedToArray","_isNarrow","setIsNarrow","divRef","div","current","resizeObserver","ResizeObserver","entries","_iterator","_createForOfIteratorHelper","_step","s","n","done","entry","value","width","contentRect","err","e","f","observe","initialWidth","offsetWidth","disconnect","handleSendMessage","_ref3","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref2","_ref2$text","text","wrap","_callee$","_context","prev","next","stop","_x","apply","arguments","handleAddFeedback","_ref4","_callee2","data","_data$raw$isLike","_data$raw","_ref5","appNo","isLike","_yield$addFeedback","result","_callee2$","_context2","raw","warning","abrupt","requestId","invocationId","sent","code","success","map","item","id","_objectSpread","error","_x2","renderFooter","_ref6","_ref6$message","msg","_ref6$isLastBotMsg","isLastBotMsg","_ref6$isLastMsg","isLastMsg","_msg$raw","gap","style","padding","children","title","type","size","color","icon","onClick","lastMsg","findLast","v","role","activeColor","appTheme","onSubmit","_ref7","_callee3","formData","_yield$addFeedback2","_callee3$","_context3","_x3","msgs","filter","join","isOk","handleUpdateSession","sessionId","menuConfig","conversation","items","label","key","danger","menuInfo","domEvent","stopPropagation","inputValue","content","defaultValue","autoFocus","onChange","target","okText","cancelText","okButtonProps","background","borderColor","onOk","trim","Promise","reject","onCancel","okType","clearBtnShow","chatProps","session","showSessionList","className","providerWrapper","isNarrow","onActiveChange","onNewChat","activeKey","menu","chatbotWrapper","allowUpload","footer","onConfirm","onStop","onClear","onSuggest"],"sources":["../../../../src/components/XAdkWebProvider/index.tsx"],"sourcesContent":["import { forwardRef, useImperativeHandle, useState, useRef, useEffect } from 'react';\nimport { message, Flex, Tooltip, Button, Modal, Input, ConfigProvider } from 'antd';\nimport copy from 'copy-to-clipboard';\nimport { XProvider } from '@ant-design/x';\nimport type { ConversationsProps } from '@ant-design/x';\nimport { ExclamationCircleFilled, ReloadOutlined, CopyOutlined, LikeFilled, LikeOutlined } from '@ant-design/icons';\nimport { XAdkProviderProps, XAdkProviderHandle } from '@/types/XAdkProvider';\nimport { MOBILE_MAX_WIDTH, API_SUCCESS_CODE } from '@/constants';\nimport type { IMessage, SendContent } from '@/types';\nimport XAdkChatbot from '../XAdkChatbot';\nimport DislikeFeedback from '../DislikeFeedback';\nimport useADKChat from '@/hooks/useADKChat';\nimport { addFeedback } from '@/services/api';\nimport { primaryBlue } from '@/styles/common';\nimport XAiConversations from '../XAiConversations';\nimport { useStyles } from './styles';\n\nconst { confirm } = Modal;\n\nconst XAdkWebProvider = forwardRef<XAdkProviderHandle, XAdkProviderProps>(({\n url = window.location.origin,\n token,\n config,\n providerId = 'defaultId',\n onSuccess,\n onStream,\n onMessage,\n onError,\n}, ref) => {\n // 使用 useAgentGenerator Hook 管理消息状态\n const styles = useStyles();\n // const { textSpeed = 55 } = config?.chatProps || {};\n\n const {\n appInfo,\n loading,\n messages,\n prologue,\n suggestions,\n sessionList,\n currentSessionId,\n initialized,\n setMessages,\n startChat,\n stopChat,\n clearChat,\n suggestChat,\n confirmFnCall,\n deleteSession,\n updateSession,\n setCurrentSessionDetail,\n } = useADKChat({ url, config, token, onSuccess, onError, onStream, onMessage });\n\n // const { appName, icon } = appInfo || {};\n\n useImperativeHandle(ref, () => ({\n startChat,\n stopChat,\n clearChat,\n suggestChat,\n deleteSession,\n updateSession,\n getAppInfo: () => appInfo,\n getMessages: () => messages,\n getSessions: () => sessionList,\n setMessages,\n setCurrentSessionDetail,\n }), [appInfo, messages, stopChat, setMessages, setCurrentSessionDetail]);\n\n const [_isNarrow, setIsNarrow] = useState<boolean>(false);\n const divRef = useRef<HTMLDivElement>(null);\n\n // 监听容器宽度变化\n useEffect(() => {\n const div = divRef.current;\n if (!div) return;\n\n // 创建监听器\n const resizeObserver = new ResizeObserver((entries) => {\n // eslint-disable-next-line no-restricted-syntax\n for (const entry of entries) {\n const { width } = entry.contentRect;\n setIsNarrow(width <= MOBILE_MAX_WIDTH);\n }\n });\n\n // 开始监听\n resizeObserver.observe(div);\n\n // 初始化检查\n const initialWidth = div.offsetWidth;\n setIsNarrow(initialWidth <= MOBILE_MAX_WIDTH);\n\n // 清理函数\n return () => {\n resizeObserver.disconnect();\n };\n }, []);\n\n // 发送消息\n const handleSendMessage = async ({ text = '' }: SendContent) => {\n await startChat({ text });\n };\n\n // 处理添加反馈\n const handleAddFeedback = async (data: any) => {\n const { appNo } = config || {};\n const isLike = data?.raw?.isLike ?? 0;\n if (isLike !== 0) {\n message.warning('已收到您的反馈,无需重复提交');\n return;\n }\n if (appNo) {\n const { result } = await addFeedback({\n url,\n token,\n appNo,\n requestId: data.invocationId,\n isLike: 1,\n });\n if (result?.code === API_SUCCESS_CODE) {\n message.success('感谢您的反馈');\n setMessages((prev) => {\n return prev.map((item) => {\n if (item.id === data.id) {\n return {\n ...item,\n raw: {\n ...item.raw,\n isLike: 1, \n }\n };\n }\n return item;\n });\n });\n } else {\n message.error('反馈失败,请稍后再试');\n }\n }\n };\n\n\n const renderFooter = ({ message: msg = {} as IMessage, isLastBotMsg = false, isLastMsg = false}) => {\n if (isLastBotMsg) {\n return (\n <Flex gap={4} style={{ padding: '8px 0' }}>\n {isLastMsg && (\n <Tooltip title=\"重新生成\">\n <Button\n type=\"text\"\n size=\"small\"\n style={{ color: '#949494' }}\n icon={<ReloadOutlined />}\n onClick={() => {\n const lastMsg = messages.findLast((v) => {\n return v.role === 'user' && v.text;\n });\n handleSendMessage({ text: lastMsg?.text || '' });\n }}\n />\n </Tooltip>\n )}\n <Tooltip title=\"赞\">\n <Button\n type=\"text\"\n size=\"small\"\n style={{ color: '#949494' }}\n icon={msg.raw?.isLike === 1 ? <LikeFilled /> : <LikeOutlined />}\n onClick={() => handleAddFeedback(msg)}\n />\n </Tooltip>\n <Tooltip title=\"踩\">\n <DislikeFeedback\n msg={msg}\n activeColor={appInfo?.appTheme || primaryBlue}\n onSubmit={async (formData) => {\n const { result } = await addFeedback({\n ...formData,\n requestId: msg.invocationId,\n isLike: -1,\n url,\n appNo: config?.appNo,\n token,\n });\n if (result?.code === API_SUCCESS_CODE) {\n message.success('已收到您的反馈,我们会努力做的更好');\n setMessages((prev) => {\n return prev.map((item) => {\n if (item.id === msg.id) {\n return {\n ...item,\n isLike: -1,\n };\n }\n return item;\n });\n });\n return true;\n }\n message.error('反馈失败,请稍后再试');\n return false;\n }}\n />\n </Tooltip>\n <Tooltip title=\"复制\">\n <Button\n type=\"text\"\n size=\"small\"\n style={{ color: '#949494' }}\n icon={<CopyOutlined />}\n onClick={() => {\n const msgs = messages.filter((v) => {\n return v.role === 'bot'\n && v.invocationId === msg.invocationId\n && v.text;\n });\n const text = msgs.map((v) => {\n return v.text;\n }).join('\\n');\n const isOk = copy(text);\n if (isOk) {\n message.success('复制成功');\n }\n }}\n />\n </Tooltip>\n </Flex>\n );\n }\n return null;\n };\n\n // 修改会话内容\n const handleUpdateSession = (sessionId: string, title: string) => {\n updateSession(sessionId, title);\n };\n\n // 会话操作菜单\n const menuConfig: ConversationsProps['menu'] = (conversation) => ({\n items: [\n {\n label: '重命名',\n key: 'edit',\n },\n {\n label: '删除',\n key: 'delete',\n danger: true,\n },\n ],\n onClick: (menuInfo) => {\n menuInfo.domEvent.stopPropagation();\n const { key } = menuInfo;\n switch (key) {\n case 'edit': {\n let inputValue = conversation.label as string || '';\n confirm({\n title: '编辑对话名称',\n icon: null,\n content: (\n <Input\n defaultValue={inputValue}\n autoFocus\n style={{ width: '100%' }}\n onChange={(e) => {\n inputValue = e.target.value;\n }}\n />\n ),\n okText: '确认',\n cancelText: '取消',\n okButtonProps: {\n style: { background: '#000', borderColor: '#000', color: '#fff' },\n },\n onOk: () => {\n if (!inputValue.trim()) {\n message.error('对话名称不能为空');\n return Promise.reject();\n }\n handleUpdateSession(conversation.key, inputValue);\n },\n onCancel: () => {\n // 静默处理\n },\n });\n break;\n }\n case 'delete':\n confirm({\n title: '确认删除?',\n icon: <ExclamationCircleFilled />,\n content: '该对话内容将被删除无法恢复。',\n okText: '确认删除',\n okType: 'danger',\n cancelText: '取消',\n okButtonProps: {\n style: { background: '#ff4d4f', borderColor: '#ff4d4f', color: '#fff' },\n },\n onOk() {\n deleteSession(conversation.key);\n },\n onCancel() {\n //\n },\n });\n break;\n }\n },\n });\n\n // 是否展示清空按钮\n const clearBtnShow = typeof config?.chatProps?.clearBtnShow !== 'undefined'\n ? config.chatProps.clearBtnShow\n : !config?.session?.showSessionList;\n\n return (\n <ConfigProvider>\n <XProvider>\n <div\n ref={divRef}\n className={styles.providerWrapper}\n > \n {config?.session?.showSessionList && (\n <XAiConversations\n isNarrow={false}\n sessionList={sessionList}\n onActiveChange={(key) => setCurrentSessionDetail(key)}\n onNewChat={clearChat}\n activeKey={currentSessionId}\n menu={menuConfig}\n />\n )}\n <div className={styles.chatbotWrapper}>\n <div className={styles.content}>\n <XAdkChatbot\n allowUpload={config?.allowUpload}\n initialized={initialized}\n prologue={prologue}\n suggestions={suggestions}\n loading={loading}\n messages={messages}\n footer={renderFooter}\n onSubmit={handleSendMessage}\n onConfirm={confirmFnCall}\n onStop={stopChat}\n onClear={clearChat}\n onSuggest={suggestChat}\n clearBtnShow={clearBtnShow}\n />\n </div>\n </div>\n </div>\n </XProvider>\n </ConfigProvider>\n );\n});\n\nexport default XAdkWebProvider;\n"],"mappings":"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"}
|
|
@@ -53,6 +53,7 @@ var XAiConversations = function XAiConversations(props) {
|
|
|
53
53
|
}, 300);
|
|
54
54
|
};
|
|
55
55
|
return /*#__PURE__*/_jsxs("div", {
|
|
56
|
+
className: styles.conversationsWrapper,
|
|
56
57
|
children: [/*#__PURE__*/_jsx(GlobalStyle, {}), (!listVisible || isNarrow) && /*#__PURE__*/_jsxs("div", {
|
|
57
58
|
className: styles.capWrapper,
|
|
58
59
|
children: [/*#__PURE__*/_jsx("img", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","Conversations","RedoOutlined","Spin","Divider","InfiniteScroll","clsx","useChatbotContext","logo","AddChatIcon","flashOpen","SESSION_PAGE_SIZE","useStyles","GlobalStyle","jsx","_jsx","jsxs","_jsxs","XAiConversations","props","styles","_useChatbotContext","mergedProps","_mergedProps$isNarrow","isNarrow","sessionList","style","onActiveChange","onNewChat","loadMoreSessions","activeKey","menu","_useState","_useState2","_slicedToArray","listVisible","setListVisible","_useState3","_useState4","animateDirection","setAnimateDirection","handleSwitchTab","key","handleNewChat","handleShowList","handleCloseList","setTimeout","children","className","capWrapper","alt","src","w","h","capShape","capIcon","onClick","text","display","nWrapper","fWrapper","slideIn","slideOut","fheaderWrapper","addChatBtn","mr","tipTitle","scrollList","dataLength","length","next","hasMore","loader","textAlign","indicator","spin","size","endMessage","plain","textColor","overflow","paddingBottom","v","items","_objectSpread","width","borderRadius","mask"],"sources":["../../../../src/components/XAiConversations/index.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { Conversations } from '@ant-design/x';\nimport { RedoOutlined } from '@ant-design/icons';\nimport { Spin, Divider } from 'antd';\nimport InfiniteScroll from 'react-infinite-scroll-component';\nimport clsx from 'clsx';\nimport { useChatbotContext } from '@/hooks/useProviderContext';\nimport { type XAiConversationsProps } from '@/types/XAiConversations';\nimport logo from '@/assets/logo.png';\nimport AddChatIcon from '@/assets/svg/AddChatIcon';\nimport flashOpen from '@/assets/flash-open.svg?url';\nimport { SESSION_PAGE_SIZE } from '@/constants';\nimport { useStyles, GlobalStyle } from './styles';\n\nconst XAiConversations: React.FC<XAiConversationsProps> = (props) => {\n const styles = useStyles();\n const { mergedProps } = useChatbotContext(props);\n const {\n isNarrow = false,\n sessionList,\n style,\n onActiveChange,\n onNewChat,\n loadMoreSessions,\n activeKey,\n menu,\n } = mergedProps;\n\n const [listVisible, setListVisible] = useState(false);\n const [animateDirection, setAnimateDirection] = useState<'in' | 'out' | null>(null);\n\n const handleSwitchTab = (key: string) => {\n onActiveChange?.(key);\n };\n\n const handleNewChat = () => {\n onNewChat?.();\n };\n\n const handleShowList = () => {\n setListVisible(true);\n setAnimateDirection('in');\n };\n\n const handleCloseList = () => {\n setAnimateDirection('out');\n setTimeout(() => {\n setListVisible(false);\n setAnimateDirection(null);\n }, 300);\n };\n\n return (\n <div>\n <GlobalStyle />\n {/** 顶部操作栏 */}\n {\n (!listVisible || isNarrow) && (\n <div className={styles.capWrapper}>\n <img alt=\"logo\" src={logo} className={clsx(styles.w(32), styles.h(29))} />\n <div className={styles.capShape}>\n <div className={styles.capIcon}>\n <img src={flashOpen} alt=\"\" onClick={handleShowList} />\n </div>\n <div className={styles.capIcon}>\n <AddChatIcon className={clsx(styles.w(17), styles.text('#343434'))} onClick={handleNewChat} />\n </div>\n </div>\n </div>\n )\n }\n\n {/* 会话列表 */}\n <div\n style={{ display: listVisible ? 'block' : 'none' }}\n className={clsx(\n isNarrow ? styles.nWrapper : styles.fWrapper,\n animateDirection === 'in' && styles.slideIn,\n animateDirection === 'out' && styles.slideOut,\n )}\n >\n {/* 固定头部 */}\n <div className={styles.fheaderWrapper}>\n <img alt=\"logo\" src={logo} className={clsx(styles.w(32), styles.h(29))} />\n <div className={styles.capIcon}>\n <img src={flashOpen} alt=\"\" onClick={handleCloseList} />\n </div>\n </div>\n <div className={styles.addChatBtn} onClick={handleNewChat}>\n <AddChatIcon className={clsx(styles.w(17), styles.mr(10))} />\n 开启新对话\n </div>\n <div className={styles.tipTitle}>历史对话</div>\n\n {/* 滚动区域 */}\n <div className={styles.scrollList}>\n <InfiniteScroll\n dataLength={sessionList.length}\n next={loadMoreSessions}\n hasMore={false}\n loader={(\n <div style={{ textAlign: 'center' }}>\n <Spin indicator={<RedoOutlined spin />} size=\"small\" />\n </div>\n )}\n endMessage={sessionList.length === SESSION_PAGE_SIZE && <Divider plain><span className={styles.textColor('#949494')}>只展示前 50 条数据</span></Divider>}\n style={{ overflow: 'hidden', paddingBottom: '5px' }}\n >\n <Conversations\n activeKey={activeKey}\n onActiveChange={(v) => handleSwitchTab(v)}\n items={sessionList}\n menu={menu}\n style={{\n width: 256,\n borderRadius: '6px',\n ...style,\n }}\n />\n </InfiniteScroll>\n </div>\n </div>\n\n {/* 遮罩层 - 仅在窄屏且列表可见时显示 */}\n {isNarrow && listVisible && (\n <div className={styles.mask} onClick={handleCloseList} />\n )}\n </div>\n );\n};\n\nexport default XAiConversations;\n"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,SAASC,aAAa,QAAQ,eAAe;AAC7C,SAASC,YAAY,QAAQ,mBAAmB;AAChD,SAASC,IAAI,EAAEC,OAAO,QAAQ,MAAM;AACpC,OAAOC,cAAc,MAAM,iCAAiC;AAC5D,OAAOC,IAAI,MAAM,MAAM;AACvB,SAASC,iBAAiB;AAE1B,OAAOC,IAAI;AACX,OAAOC,WAAW;AAClB,OAAOC,SAAS;AAChB,SAASC,iBAAiB;AAC1B,SAASC,SAAS,EAAEC,WAAW;AAAmB,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAElD,IAAMC,gBAAiD,GAAG,SAApDA,gBAAiDA,CAAIC,KAAK,EAAK;EACnE,IAAMC,MAAM,GAAGR,SAAS,CAAC,CAAC;EAC1B,IAAAS,kBAAA,GAAwBd,iBAAiB,CAACY,KAAK,CAAC;IAAxCG,WAAW,GAAAD,kBAAA,CAAXC,WAAW;EACnB,IAAAC,qBAAA,GASID,WAAW,CARbE,QAAQ;IAARA,QAAQ,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA;IAChBE,WAAW,GAOTH,WAAW,CAPbG,WAAW;IACXC,KAAK,GAMHJ,WAAW,CANbI,KAAK;IACLC,cAAc,GAKZL,WAAW,CALbK,cAAc;IACdC,SAAS,GAIPN,WAAW,CAJbM,SAAS;IACTC,gBAAgB,GAGdP,WAAW,CAHbO,gBAAgB;IAChBC,SAAS,GAEPR,WAAW,CAFbQ,SAAS;IACTC,IAAI,GACFT,WAAW,CADbS,IAAI;EAGN,IAAAC,SAAA,GAAsChC,QAAQ,CAAC,KAAK,CAAC;IAAAiC,UAAA,GAAAC,cAAA,CAAAF,SAAA;IAA9CG,WAAW,GAAAF,UAAA;IAAEG,cAAc,GAAAH,UAAA;EAClC,IAAAI,UAAA,GAAgDrC,QAAQ,CAAsB,IAAI,CAAC;IAAAsC,UAAA,GAAAJ,cAAA,CAAAG,UAAA;IAA5EE,gBAAgB,GAAAD,UAAA;IAAEE,mBAAmB,GAAAF,UAAA;EAE5C,IAAMG,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,GAAW,EAAK;IACvCf,cAAc,aAAdA,cAAc,eAAdA,cAAc,CAAGe,GAAG,CAAC;EACvB,CAAC;EAED,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAA,EAAS;IAC1Bf,SAAS,aAATA,SAAS,eAATA,SAAS,CAAG,CAAC;EACf,CAAC;EAED,IAAMgB,cAAc,GAAG,SAAjBA,cAAcA,CAAA,EAAS;IAC3BR,cAAc,CAAC,IAAI,CAAC;IACpBI,mBAAmB,CAAC,IAAI,CAAC;EAC3B,CAAC;EAED,IAAMK,eAAe,GAAG,SAAlBA,eAAeA,CAAA,EAAS;IAC5BL,mBAAmB,CAAC,KAAK,CAAC;IAC1BM,UAAU,CAAC,YAAM;MACfV,cAAc,CAAC,KAAK,CAAC;MACrBI,mBAAmB,CAAC,IAAI,CAAC;IAC3B,CAAC,EAAE,GAAG,CAAC;EACT,CAAC;EAED,oBACEvB,KAAA;IAAA8B,QAAA,gBACEhC,IAAA,CAACF,WAAW,IAAE,CAAC,EAGb,CAAC,CAACsB,WAAW,IAAIX,QAAQ,kBACvBP,KAAA;MAAK+B,SAAS,EAAE5B,MAAM,CAAC6B,UAAW;MAAAF,QAAA,gBAChChC,IAAA;QAAKmC,GAAG,EAAC,MAAM;QAACC,GAAG,EAAE3C,IAAK;QAACwC,SAAS,EAAE1C,IAAI,CAACc,MAAM,CAACgC,CAAC,CAAC,EAAE,CAAC,EAAEhC,MAAM,CAACiC,CAAC,CAAC,EAAE,CAAC;MAAE,CAAE,CAAC,eAC1EpC,KAAA;QAAK+B,SAAS,EAAE5B,MAAM,CAACkC,QAAS;QAAAP,QAAA,gBAC9BhC,IAAA;UAAKiC,SAAS,EAAE5B,MAAM,CAACmC,OAAQ;UAAAR,QAAA,eAC7BhC,IAAA;YAAKoC,GAAG,EAAEzC,SAAU;YAACwC,GAAG,EAAC,EAAE;YAACM,OAAO,EAAEZ;UAAe,CAAE;QAAC,CACpD,CAAC,eACN7B,IAAA;UAAKiC,SAAS,EAAE5B,MAAM,CAACmC,OAAQ;UAAAR,QAAA,eAC7BhC,IAAA,CAACN,WAAW;YAACuC,SAAS,EAAE1C,IAAI,CAACc,MAAM,CAACgC,CAAC,CAAC,EAAE,CAAC,EAAEhC,MAAM,CAACqC,IAAI,CAAC,SAAS,CAAC,CAAE;YAACD,OAAO,EAAEb;UAAc,CAAE;QAAC,CAC3F,CAAC;MAAA,CACH,CAAC;IAAA,CACH,CACN,eAIH1B,KAAA;MACES,KAAK,EAAE;QAAEgC,OAAO,EAAEvB,WAAW,GAAG,OAAO,GAAG;MAAO,CAAE;MACnDa,SAAS,EAAE1C,IAAI,CACbkB,QAAQ,GAAGJ,MAAM,CAACuC,QAAQ,GAAGvC,MAAM,CAACwC,QAAQ,EAC5CrB,gBAAgB,KAAK,IAAI,IAAInB,MAAM,CAACyC,OAAO,EAC3CtB,gBAAgB,KAAK,KAAK,IAAInB,MAAM,CAAC0C,QACvC,CAAE;MAAAf,QAAA,gBAGF9B,KAAA;QAAK+B,SAAS,EAAE5B,MAAM,CAAC2C,cAAe;QAAAhB,QAAA,gBACpChC,IAAA;UAAKmC,GAAG,EAAC,MAAM;UAACC,GAAG,EAAE3C,IAAK;UAACwC,SAAS,EAAE1C,IAAI,CAACc,MAAM,CAACgC,CAAC,CAAC,EAAE,CAAC,EAAEhC,MAAM,CAACiC,CAAC,CAAC,EAAE,CAAC;QAAE,CAAE,CAAC,eAC1EtC,IAAA;UAAKiC,SAAS,EAAE5B,MAAM,CAACmC,OAAQ;UAAAR,QAAA,eAC7BhC,IAAA;YAAKoC,GAAG,EAAEzC,SAAU;YAACwC,GAAG,EAAC,EAAE;YAACM,OAAO,EAAEX;UAAgB,CAAE;QAAC,CACrD,CAAC;MAAA,CACH,CAAC,eACN5B,KAAA;QAAK+B,SAAS,EAAE5B,MAAM,CAAC4C,UAAW;QAACR,OAAO,EAAEb,aAAc;QAAAI,QAAA,gBACxDhC,IAAA,CAACN,WAAW;UAACuC,SAAS,EAAE1C,IAAI,CAACc,MAAM,CAACgC,CAAC,CAAC,EAAE,CAAC,EAAEhC,MAAM,CAAC6C,EAAE,CAAC,EAAE,CAAC;QAAE,CAAE,CAAC,kCAE/D;MAAA,CAAK,CAAC,eACNlD,IAAA;QAAKiC,SAAS,EAAE5B,MAAM,CAAC8C,QAAS;QAAAnB,QAAA,EAAC;MAAI,CAAK,CAAC,eAG3ChC,IAAA;QAAKiC,SAAS,EAAE5B,MAAM,CAAC+C,UAAW;QAAApB,QAAA,eAChChC,IAAA,CAACV,cAAc;UACb+D,UAAU,EAAE3C,WAAW,CAAC4C,MAAO;UAC/BC,IAAI,EAAEzC,gBAAiB;UACvB0C,OAAO,EAAE,KAAM;UACfC,MAAM,eACJzD,IAAA;YAAKW,KAAK,EAAE;cAAE+C,SAAS,EAAE;YAAS,CAAE;YAAA1B,QAAA,eAClChC,IAAA,CAACZ,IAAI;cAACuE,SAAS,eAAE3D,IAAA,CAACb,YAAY;gBAACyE,IAAI;cAAA,CAAE,CAAE;cAACC,IAAI,EAAC;YAAO,CAAE;UAAC,CACpD,CACL;UACFC,UAAU,EAAEpD,WAAW,CAAC4C,MAAM,KAAK1D,iBAAiB,iBAAII,IAAA,CAACX,OAAO;YAAC0E,KAAK;YAAA/B,QAAA,eAAChC,IAAA;cAAMiC,SAAS,EAAE5B,MAAM,CAAC2D,SAAS,CAAC,SAAS,CAAE;cAAAhC,QAAA,EAAC;YAAW,CAAM;UAAC,CAAS,CAAE;UAClJrB,KAAK,EAAE;YAAEsD,QAAQ,EAAE,QAAQ;YAAEC,aAAa,EAAE;UAAM,CAAE;UAAAlC,QAAA,eAEpDhC,IAAA,CAACd,aAAa;YACZ6B,SAAS,EAAEA,SAAU;YACrBH,cAAc,EAAE,SAAAA,eAACuD,CAAC;cAAA,OAAKzC,eAAe,CAACyC,CAAC,CAAC;YAAA,CAAC;YAC1CC,KAAK,EAAE1D,WAAY;YACnBM,IAAI,EAAEA,IAAK;YACXL,KAAK,EAAA0D,aAAA;cACHC,KAAK,EAAE,GAAG;cACVC,YAAY,EAAE;YAAK,GAChB5D,KAAK;UACR,CACH;QAAC,CACY;MAAC,CACd,CAAC;IAAA,CACH,CAAC,EAGLF,QAAQ,IAAIW,WAAW,iBACtBpB,IAAA;MAAKiC,SAAS,EAAE5B,MAAM,CAACmE,IAAK;MAAC/B,OAAO,EAAEX;IAAgB,CAAE,CACzD;EAAA,CACE,CAAC;AAEV,CAAC;AAED,eAAe3B,gBAAgB"}
|
|
1
|
+
{"version":3,"names":["React","useState","Conversations","RedoOutlined","Spin","Divider","InfiniteScroll","clsx","useChatbotContext","logo","AddChatIcon","flashOpen","SESSION_PAGE_SIZE","useStyles","GlobalStyle","jsx","_jsx","jsxs","_jsxs","XAiConversations","props","styles","_useChatbotContext","mergedProps","_mergedProps$isNarrow","isNarrow","sessionList","style","onActiveChange","onNewChat","loadMoreSessions","activeKey","menu","_useState","_useState2","_slicedToArray","listVisible","setListVisible","_useState3","_useState4","animateDirection","setAnimateDirection","handleSwitchTab","key","handleNewChat","handleShowList","handleCloseList","setTimeout","className","conversationsWrapper","children","capWrapper","alt","src","w","h","capShape","capIcon","onClick","text","display","nWrapper","fWrapper","slideIn","slideOut","fheaderWrapper","addChatBtn","mr","tipTitle","scrollList","dataLength","length","next","hasMore","loader","textAlign","indicator","spin","size","endMessage","plain","textColor","overflow","paddingBottom","v","items","_objectSpread","width","borderRadius","mask"],"sources":["../../../../src/components/XAiConversations/index.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { Conversations } from '@ant-design/x';\nimport { RedoOutlined } from '@ant-design/icons';\nimport { Spin, Divider } from 'antd';\nimport InfiniteScroll from 'react-infinite-scroll-component';\nimport clsx from 'clsx';\nimport { useChatbotContext } from '@/hooks/useProviderContext';\nimport { type XAiConversationsProps } from '@/types/XAiConversations';\nimport logo from '@/assets/logo.png';\nimport AddChatIcon from '@/assets/svg/AddChatIcon';\nimport flashOpen from '@/assets/flash-open.svg?url';\nimport { SESSION_PAGE_SIZE } from '@/constants';\nimport { useStyles, GlobalStyle } from './styles';\n\nconst XAiConversations: React.FC<XAiConversationsProps> = (props) => {\n const styles = useStyles();\n const { mergedProps } = useChatbotContext(props);\n const {\n isNarrow = false,\n sessionList,\n style,\n onActiveChange,\n onNewChat,\n loadMoreSessions,\n activeKey,\n menu,\n } = mergedProps;\n\n const [listVisible, setListVisible] = useState(false);\n const [animateDirection, setAnimateDirection] = useState<'in' | 'out' | null>(null);\n\n const handleSwitchTab = (key: string) => {\n onActiveChange?.(key);\n };\n\n const handleNewChat = () => {\n onNewChat?.();\n };\n\n const handleShowList = () => {\n setListVisible(true);\n setAnimateDirection('in');\n };\n\n const handleCloseList = () => {\n setAnimateDirection('out');\n setTimeout(() => {\n setListVisible(false);\n setAnimateDirection(null);\n }, 300);\n };\n\n return (\n <div className={styles.conversationsWrapper}>\n <GlobalStyle />\n {/** 顶部操作栏 */}\n {\n (!listVisible || isNarrow) && (\n <div className={styles.capWrapper}>\n <img alt=\"logo\" src={logo} className={clsx(styles.w(32), styles.h(29))} />\n <div className={styles.capShape}>\n <div className={styles.capIcon}>\n <img src={flashOpen} alt=\"\" onClick={handleShowList} />\n </div>\n <div className={styles.capIcon}>\n <AddChatIcon className={clsx(styles.w(17), styles.text('#343434'))} onClick={handleNewChat} />\n </div>\n </div>\n </div>\n )\n }\n\n {/* 会话列表 */}\n <div\n style={{ display: listVisible ? 'block' : 'none' }}\n className={clsx(\n isNarrow ? styles.nWrapper : styles.fWrapper,\n animateDirection === 'in' && styles.slideIn,\n animateDirection === 'out' && styles.slideOut,\n )}\n >\n {/* 固定头部 */}\n <div className={styles.fheaderWrapper}>\n <img alt=\"logo\" src={logo} className={clsx(styles.w(32), styles.h(29))} />\n <div className={styles.capIcon}>\n <img src={flashOpen} alt=\"\" onClick={handleCloseList} />\n </div>\n </div>\n <div className={styles.addChatBtn} onClick={handleNewChat}>\n <AddChatIcon className={clsx(styles.w(17), styles.mr(10))} />\n 开启新对话\n </div>\n <div className={styles.tipTitle}>历史对话</div>\n\n {/* 滚动区域 */}\n <div className={styles.scrollList}>\n <InfiniteScroll\n dataLength={sessionList.length}\n next={loadMoreSessions}\n hasMore={false}\n loader={(\n <div style={{ textAlign: 'center' }}>\n <Spin indicator={<RedoOutlined spin />} size=\"small\" />\n </div>\n )}\n endMessage={sessionList.length === SESSION_PAGE_SIZE && <Divider plain><span className={styles.textColor('#949494')}>只展示前 50 条数据</span></Divider>}\n style={{ overflow: 'hidden', paddingBottom: '5px' }}\n >\n <Conversations\n activeKey={activeKey}\n onActiveChange={(v) => handleSwitchTab(v)}\n items={sessionList}\n menu={menu}\n style={{\n width: 256,\n borderRadius: '6px',\n ...style,\n }}\n />\n </InfiniteScroll>\n </div>\n </div>\n\n {/* 遮罩层 - 仅在窄屏且列表可见时显示 */}\n {isNarrow && listVisible && (\n <div className={styles.mask} onClick={handleCloseList} />\n )}\n </div>\n );\n};\n\nexport default XAiConversations;\n"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import _taggedTemplateLiteral from "@babel/runtime/helpers/esm/taggedTemplateLiteral";
|
|
2
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15;
|
|
2
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16;
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import { css, keyframes } from '@emotion/css';
|
|
5
5
|
import { css as globalCss, Global } from '@emotion/react';
|
|
@@ -16,23 +16,24 @@ var slideOutRight = keyframes(_templateObject2 || (_templateObject2 = _taggedTem
|
|
|
16
16
|
export var useStyles = withBasicStyles(function () {
|
|
17
17
|
return {
|
|
18
18
|
// 静态样式
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
19
|
+
conversationsWrapper: css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n overflow: hidden;\n "]))),
|
|
20
|
+
capWrapper: css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n padding: 12px 16px;\n display: flex;\n align-items: center;\n "]))),
|
|
21
|
+
capShape: css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n justify-content: center;\n width: 80px;\n height: 40px;\n margin-left: 16px;\n background: #FFFFFF;\n box-shadow: 0px 4px 16px 0px rgba(127,135,166,0.08);\n border-radius: 24px;\n border: 1px solid #E7E7E7;\n box-sizing: border-box;\n transition: box-shadow 0.2s, border-color 0.2s;\n cursor: pointer;\n /* &:hover {\n box-shadow: 0px 4px 24px 0px rgba(127,135,166,0.16);\n border-color: ", ";\n } */\n "])), primaryBlue),
|
|
22
|
+
capIcon: css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n\n img {\n width: 17px;\n }\n\n &:hover {\n background: #F2F2F2;\n border-radius: 50%;\n }\n "]))),
|
|
23
|
+
addChatBtn: css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n width: 256px;\n height: 40px;\n margin: 17px auto 24px;\n background: #FFFFFF;\n border-radius: 20px;\n border: 1px solid #E7E7E7;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n color: #343434;\n\n &:hover {\n color: #3961F2;\n }\n\n &:active {\n color: #0A3BEE;\n }\n "]))),
|
|
24
|
+
tipTitle: css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n font-size: 12px;\n color: #949494;\n padding-left: 24px;\n "]))),
|
|
25
|
+
fWrapper: css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n background: #F8FBFF;\n padding: 16px 0 13px;\n width: 280px;\n height: 100%;\n box-sizing: border-box;\n position: relative;\n "]))),
|
|
26
|
+
nWrapper: css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n left: 0;\n width: 280px;\n height: 100%;\n z-index: 1000;\n transition: left 0.3s ease;\n background: #F8FBFF;\n padding: 16px 0 13px;\n box-shadow: 2px 0 8px rgba(0, 0, 0, 0.1);\n "]))),
|
|
27
|
+
mask: css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n background: rgba(0, 0, 0, 0.15);\n z-index: 999;\n cursor: pointer;\n "]))),
|
|
28
|
+
fheaderWrapper: css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 0 11px 0 16px;\n "]))),
|
|
29
|
+
scrollList: css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral(["\n max-height: calc(100vh - 120px); /* 120px\u4E3A\u5934\u90E8\u9AD8\u5EA6\uFF0C\u53EF\u6839\u636E\u5B9E\u9645\u8C03\u6574 */\n padding-bottom: 15px;\n overflow-y: auto;\n\n /* \u9690\u85CF\u6EDA\u52A8\u6761\uFF08Chrome, Edge, Safari\uFF09 */\n &::-webkit-scrollbar {\n width: 0;\n height: 0;\n display: none;\n background: transparent;\n }\n\n /* \u9690\u85CF\u6EDA\u52A8\u6761\uFF08Firefox\uFF09 */\n scrollbar-width: none;\n\n /* \u9690\u85CF\u6EDA\u52A8\u6761\uFF08IE/Edge\uFF09 */\n -ms-overflow-style: none;\n "]))),
|
|
30
|
+
slideIn: css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral(["\n animation: ", " 0.3s forwards;\n "])), slideInRight),
|
|
31
|
+
slideOut: css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral(["\n animation: ", " 0.3s forwards;\n "])), slideOutRight)
|
|
31
32
|
};
|
|
32
33
|
});
|
|
33
34
|
export var GlobalStyle = function GlobalStyle() {
|
|
34
35
|
return /*#__PURE__*/_jsx(Global, {
|
|
35
|
-
styles: globalCss(
|
|
36
|
+
styles: globalCss(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral(["\n .ant-conversations .ant-conversations-item-active {\n background: rgba(57,97,242,0.08);\n }\n\n .ant-conversations .ant-conversations-item-active .ant-conversations-label {\n color: #3961F2;\n }\n "])))
|
|
36
37
|
});
|
|
37
38
|
};
|
|
38
39
|
//# sourceMappingURL=styles.js.map
|