@zero-library/chat-copilot 1.0.0 → 1.0.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.
package/dist/index.css CHANGED
@@ -7,26 +7,6 @@
7
7
  background-position: 0 0;
8
8
  }
9
9
  }
10
- .styles_module_loadingMessage {
11
- position: relative;
12
- padding-bottom: 6px;
13
- }
14
- .styles_module_loadingMessage::after {
15
- content: "";
16
- position: absolute;
17
- left: 0;
18
- bottom: 0;
19
- height: 2px;
20
- width: 100%;
21
- background:
22
- linear-gradient(
23
- 90deg,
24
- #ff6b23,
25
- #af3cb8,
26
- #53b6ff);
27
- background-size: 200% 100%;
28
- animation: styles_module_loading-line 1.2s linear infinite;
29
- }
30
10
  @keyframes styles_module_spin {
31
11
  to {
32
12
  transform: rotate(360deg);
@@ -79,6 +59,42 @@
79
59
  background-color: #fff;
80
60
  color: #000;
81
61
  }
62
+ .styles_module_runStartedNode {
63
+ padding: 2px 12px;
64
+ border-radius: 4px;
65
+ background:
66
+ linear-gradient(
67
+ 90deg,
68
+ transparent 25%,
69
+ #e6f4ff 50%,
70
+ transparent 75%);
71
+ background-size: 200% 100%;
72
+ animation: styles_module_shimmer-bg 2s infinite linear;
73
+ display: flex;
74
+ width: 100px;
75
+ min-height: 28px;
76
+ box-sizing: border-box;
77
+ overflow: hidden;
78
+ }
79
+ .styles_module_runStartedNode .anticon-loading {
80
+ width: 14px;
81
+ height: 14px;
82
+ display: flex;
83
+ align-items: center;
84
+ justify-content: center;
85
+ }
86
+ .styles_module_runStartedNode .anticon-loading svg {
87
+ width: 14px;
88
+ height: 14px;
89
+ }
90
+ @keyframes styles_module_shimmer-bg {
91
+ 0% {
92
+ background-position: 200% 0;
93
+ }
94
+ 100% {
95
+ background-position: -200% 0;
96
+ }
97
+ }
82
98
 
83
99
  /* src/components/custom-components/tool-renders/index.module.less */
84
100
  .index_module_iconContainer {
@@ -234,42 +250,6 @@
234
250
  white-space: normal;
235
251
  height: auto;
236
252
  }
237
- .styles_module_runStartedNode {
238
- padding: 2px 12px;
239
- border-radius: 4px;
240
- background:
241
- linear-gradient(
242
- 90deg,
243
- transparent 25%,
244
- #e6f4ff 50%,
245
- transparent 75%);
246
- background-size: 200% 100%;
247
- animation: styles_module_shimmer-bg 2s infinite linear;
248
- display: flex;
249
- width: 100px;
250
- min-height: 28px;
251
- box-sizing: border-box;
252
- overflow: hidden;
253
- }
254
- .styles_module_runStartedNode .anticon-loading {
255
- width: 14px;
256
- height: 14px;
257
- display: flex;
258
- align-items: center;
259
- justify-content: center;
260
- }
261
- .styles_module_runStartedNode .anticon-loading svg {
262
- width: 14px;
263
- height: 14px;
264
- }
265
- @keyframes styles_module_shimmer-bg {
266
- 0% {
267
- background-position: 200% 0;
268
- }
269
- 100% {
270
- background-position: -200% 0;
271
- }
272
- }
273
253
  .styles_module_bubbleList {
274
254
  width: 100%;
275
255
  }
@@ -284,10 +264,12 @@
284
264
  padding-right: 0;
285
265
  padding-left: 10px;
286
266
  }
267
+ .styles_module_bubbleList.ant-bubble-list .ant-bubble-list-scroll-box .ant-bubble-list-scroll-content > .ant-bubble > .ant-bubble-body {
268
+ width: 100%;
269
+ }
287
270
  .styles_module_bubbleList.ant-bubble-list .ant-bubble {
288
271
  padding-top: 8px;
289
272
  padding-bottom: 0;
290
- width: 100%;
291
273
  }
292
274
  .styles_module_bubbleList.ant-bubble-list .ant-bubble:hover .message-actions {
293
275
  opacity: 1;
@@ -305,9 +287,6 @@
305
287
  padding-bottom: 0;
306
288
  min-height: 0;
307
289
  }
308
- .styles_module_bubbleList.ant-bubble-list .ant-bubble.ant-bubble-start .ant-bubble-footer {
309
- margin-top: 0;
310
- }
311
290
  .styles_module_bubbleList.ant-bubble-list .ant-bubble.ant-bubble-end .ant-bubble-content {
312
291
  background-color: var(--ant-color-primary-bg, #e6f4ff);
313
292
  }
@@ -317,10 +296,6 @@
317
296
  .styles_module_bubbleList.ant-bubble-list .ant-bubble.ant-bubble-end .ant-bubble-content-borderless .ant-file-card-list-content {
318
297
  padding: 0;
319
298
  }
320
- .styles_module_messageFooter {
321
- min-height: 24px;
322
- width: 100%;
323
- }
324
299
  .styles_module_messageActions {
325
300
  opacity: 0;
326
301
  pointer-events: none;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/styles.module.less","../src/components/custom-components/tool-renders/index.module.less","../src/ui/common/styles.module.less","../src/ui/layouts/components/styles.module.less","../src/ui/layouts/index.module.less"],"sourcesContent":["@keyframes loading-line {\n from {\n background-position: 200% 0;\n }\n to {\n background-position: 0 0;\n }\n}\n.loadingMessage {\n position: relative;\n padding-bottom: 6px;\n}\n.loadingMessage::after {\n content: '';\n position: absolute;\n left: 0;\n bottom: 0;\n height: 2px;\n width: 100%;\n background: linear-gradient(90deg, #ff6b23, #af3cb8, #53b6ff);\n background-size: 200% 100%;\n animation: loading-line 1.2s linear infinite;\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n.chatAttachments:global > .ant-attachment-list .ant-attachment-list-content {\n padding: 0 !important;\n}\n.chatAttachments:global > .ant-attachment-list .ant-attachment-list-card-status-uploading .ant-progress .ant-progress-text {\n display: none;\n}\n.chatAttachments:global > .ant-attachment-list .ant-attachment-list-card-status-uploading .ant-progress .ant-progress-circle {\n animation: spin 2s linear infinite;\n}\n.chatAttachments:global > .ant-attachment-list .ant-attachment-list-card-status-uploading .ant-attachment-list-card-content {\n gap: 4px;\n}\n.chatAttachments:global > .ant-attachment-list .ant-attachment-list-card-status-uploading .ant-attachment-list-card-content .ant-attachment-list-card-desc {\n width: 15px;\n height: 15px;\n border: 2px solid transparent;\n border-color: #1890ff;\n border-radius: 50%;\n animation: spin 1s linear infinite;\n box-sizing: border-box;\n position: relative;\n clip-path: inset(0 0 30% 0);\n}\n.chatAttachments:global > .ant-attachment-list .ant-attachment-list-card-status-uploading .ant-attachment-list-card-content .ant-attachment-list-card-desc .ant-attachment-list-card-ellipsis-prefix {\n display: none;\n}\n.chatSender:global.ant-sender:focus-within {\n box-shadow: none;\n}\n.chatQuoteMsg {\n margin-top: 4px;\n}\n.chatQuoteMsg:global.ant-bubble > .ant-bubble-content {\n min-height: auto;\n background-color: var(--ant-color-fill-tertiary) !important;\n color: var(--ant-color-text-tertiary);\n}\n.chatQuoteMsg .quoteTooltip {\n max-width: 100%;\n border: 1px solid #000;\n}\n.chatQuoteMsg .quoteTooltip .quoteTooltipContainer {\n max-height: 200px;\n overflow-y: auto;\n background-color: #fff;\n color: #000;\n}\n",".iconContainer {\n width: 20px;\n height: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--ant-border-radius-sm);\n overflow: hidden;\n flex-shrink: 0;\n gap: 20;\n}\n.toolName {\n font-size: 12px;\n color: var(--ant-color-text-secondary);\n flex: 1;\n line-height: 22px;\n}\n.duration {\n font-size: 12px;\n color: var(--ant-color-text-tertiary);\n flex-shrink: 0;\n}\n.statusIcon {\n font-size: 12px;\n display: flex;\n align-items: center;\n margin-left: 20px;\n}\n.sectionLabel {\n font-size: 12px;\n color: var(--ant-color-text-tertiary);\n margin-bottom: 4px;\n display: block;\n}\n.markdownContainer {\n max-width: 100%;\n overflow-x: auto;\n font-size: 12px;\n opacity: 0.85;\n}\n.sectionBlock {\n display: block;\n}\n.todoList {\n background-color: var(--ant-color-fill-alter);\n border-radius: var(--ant-border-radius);\n border: 1px solid var(--ant-color-border-secondary);\n margin-top: 4px;\n}\n.todoItem {\n padding: 8px 12px;\n border-bottom: 1px solid var(--ant-color-border-secondary);\n display: flex;\n align-items: flex-start;\n gap: 8px;\n}\n.todoItem:last-child {\n border-bottom: none;\n}\n.statusIconWrapper {\n margin-top: 2px;\n}\n.todoContent {\n flex: 1;\n min-width: 0;\n}\n.todoText {\n font-size: 13px;\n color: var(--ant-color-text);\n}\n.todoText.completed {\n color: var(--ant-color-text-tertiary);\n text-decoration: line-through;\n}\n.emptyText {\n font-size: 12px;\n}\n",".chatHeader {\n padding: 8px 16px;\n border-bottom: 1px solid #eee;\n}\n.chatHeader .chatTitle {\n font-size: 16px;\n font-weight: bold;\n}\n.chatHeader .popover {\n max-height: 500px;\n width: 300px;\n display: flex;\n flex-direction: column;\n padding: 0;\n}\n.chatHeader .popover :global .ant-popover-inner-content {\n min-height: 0;\n display: flex;\n flex-direction: column;\n}\n.conversationListPanel {\n width: 300px;\n max-width: 100%;\n border-right: 1px dashed #eee;\n}\n.conversationListPanel .createConversationButton {\n height: 38px;\n background-color: var(--ant-color-primary-bg);\n border-radius: var(--ant-border-radius-lg);\n color: var(--ant-color-primary);\n font-weight: bold;\n}\n.conversationListPanel .conversations {\n padding: 0 16px;\n}\n.conversationListPanel .conversations :global .ant-conversations-group-title {\n padding: 0;\n}\n.conversationListPanel .conversations :global .ant-conversations-group-title .ant-typography {\n color: #878aab;\n}\n.conversationListPanel .conversations :global .ant-conversations-list .ant-conversations-item {\n padding-left: 16px;\n touch-action: manipulation !important;\n}\n.conversationListPanel .conversations :global .ant-conversations-list .ant-conversations-item .ant-conversations-label {\n color: rgba(0, 0, 0, 0.88);\n}\n.conversationListPanel .conversations :global .ant-conversations-list .ant-conversations-item.ant-conversations-item-active .ant-conversations-label {\n color: var(--ant-color-primary);\n}\n.chatWelcomeWrap {\n height: 100%;\n max-width: 1000px;\n min-width: 320px;\n width: calc(100% - 24px);\n margin: 0 auto;\n}\n.chatWelcomeWrap :global .ant-prompts .ant-prompts-list {\n overflow: auto;\n}\n.chatWelcomeWrap .chatWelcome :global .ant-welcome-icon > img {\n border-radius: 10px;\n max-width: initial;\n}\n.promptItem {\n width: 100%;\n max-width: 100%;\n}\n.promptItem :global .ant-prompts-item {\n max-width: 100%;\n white-space: normal;\n height: auto;\n}\n.runStartedNode {\n padding: 2px 12px;\n border-radius: 4px;\n background: linear-gradient(90deg, transparent 25%, #e6f4ff 50%, transparent 75%);\n background-size: 200% 100%;\n animation: shimmer-bg 2s infinite linear;\n display: flex;\n width: 100px;\n min-height: 28px;\n box-sizing: border-box;\n overflow: hidden;\n}\n.runStartedNode :global .anticon-loading {\n width: 14px;\n height: 14px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.runStartedNode :global .anticon-loading svg {\n width: 14px;\n height: 14px;\n}\n@keyframes shimmer-bg {\n 0% {\n background-position: 200% 0;\n }\n 100% {\n background-position: -200% 0;\n }\n}\n.bubbleList {\n width: 100%;\n}\n.bubbleList:global.ant-bubble-list {\n width: 100%;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble-list-scroll-box .ant-bubble-list-scroll-content {\n max-width: 1000px;\n min-width: 320px;\n width: calc(100% - 12px);\n margin: 0 auto;\n padding-right: 0;\n padding-left: 10px;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble {\n padding-top: 8px;\n padding-bottom: 0;\n width: 100%;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble:hover .message-actions {\n opacity: 1;\n pointer-events: auto;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble.ant-bubble-start {\n padding-inline-end: 0%;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble.ant-bubble-start .ant-bubble-body {\n width: 100%;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble.ant-bubble-start .ant-bubble-content {\n background-color: transparent;\n padding: 0;\n padding-bottom: 0;\n min-height: 0;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble.ant-bubble-start .ant-bubble-footer {\n margin-top: 0;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble.ant-bubble-end .ant-bubble-content {\n background-color: var(--ant-color-primary-bg, #e6f4ff);\n}\n.bubbleList:global.ant-bubble-list .ant-bubble.ant-bubble-end .ant-bubble-content-borderless {\n background-color: transparent;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble.ant-bubble-end .ant-bubble-content-borderless .ant-file-card-list-content {\n padding: 0;\n}\n.messageFooter {\n min-height: 24px;\n width: 100%;\n}\n.messageActions {\n opacity: 0;\n pointer-events: none;\n transition: opacity 0.2s ease;\n}\n.resourceBtn {\n align-items: center;\n gap: 6px;\n padding: 4px 8px;\n font-size: 13px;\n font-weight: 500;\n color: #475569;\n /* text-slate-600 */\n background-color: #f1f5f9;\n /* bg-slate-100/60 */\n border: 1px solid #e2e8f0;\n /* border-slate-200/50 */\n border-radius: 12px;\n /* rounded-xl */\n transition: all 0.3s;\n cursor: pointer;\n}\n.resourceBtnActive {\n background-color: var(--ant-color-primary);\n color: #fff;\n}\n.userInputCollapse {\n width: calc(100% - 24px);\n max-width: 1000px;\n min-width: 320px;\n margin: 0 auto;\n}\n.logoArea {\n margin-bottom: 1.5rem;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n text-align: center;\n margin-top: 40px;\n}\n.logoArea .logoContainer {\n position: relative;\n margin-bottom: 1.5rem;\n cursor: pointer;\n}\n.logoArea .logoContainer .staticHalo {\n position: absolute;\n inset: 0;\n background-color: var(--ant-color-primary);\n filter: blur(24px);\n opacity: 0.2;\n transition: opacity 700ms;\n border-radius: 9999px;\n}\n.logoArea .logoContainer .logoHoverWrapper {\n position: relative;\n z-index: 10;\n padding: 0.5rem;\n transition: all 500ms ease-out;\n transform: scale(1) translateY(0);\n}\n.logoArea .logoContainer .logoHoverWrapper .logoImage {\n width: 6rem;\n height: 6rem;\n object-fit: contain;\n filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.1));\n transition: all 500ms;\n}\n.logoArea .logoContainer:hover .staticHalo {\n opacity: 0.5;\n}\n.logoArea .logoContainer:hover .logoHoverWrapper {\n transform: scale(1.1) translateY(-0.5rem);\n}\n.logoArea .logoContainer:hover .logoImage {\n filter: drop-shadow(0 10px 20px rgba(18, 124, 183, 0.4));\n}\n.logoArea .greetingTitle {\n margin-bottom: 0.75rem;\n font-size: 2.25rem;\n line-height: 2.5rem;\n font-weight: 700;\n letter-spacing: -0.025em;\n color: #1e293b;\n}\n@media (width >= 768px) {\n .logoArea .greetingTitle {\n font-size: 3rem;\n line-height: 1;\n }\n}\n.logoArea .greetingTitle .gradientText {\n color: transparent;\n background-clip: text;\n background-image: linear-gradient(to right, var(--ant-color-primary), #3b82f6);\n}\n.logoArea .greetingSubtitle {\n font-size: 1.125rem;\n line-height: 1.75rem;\n font-weight: 500;\n color: #64748b;\n}\n@media (width >= 768px) {\n .logoArea .greetingSubtitle {\n font-size: 1.25rem;\n line-height: 1.75rem;\n }\n}\n.senderReferenceHeaderTitle:global > .ant-sender-header-title {\n overflow: hidden;\n}\n.senderReferenceHeaderContent {\n padding: 0 !important;\n}\n",".bodyWidth {\n width: 100%;\n height: 100%;\n}\n.inputContainer {\n max-width: 1000px;\n min-width: 320px;\n width: calc(100% - 24px);\n}\n.disclaimerNotice {\n font-size: 12px;\n text-align: center;\n color: #bfbfbf;\n}\n.previewHeader {\n padding-bottom: 4px;\n border-bottom: 1px solid #e2e8f0;\n}\n.previewCloseBtn {\n cursor: pointer;\n display: flex;\n align-items: center;\n color: var(--ant-color-text-tertiary);\n transition: color 0.3s;\n font-size: 16px;\n}\n.previewCloseBtn:hover {\n color: var(--ant-color-text);\n}\n.previewCloseBtn .closeIcon {\n transition: transform 0.3s ease;\n}\n.previewCloseBtn.rotateIcon:hover .closeIcon {\n transform: rotate(90deg);\n}\n",".chatLayout {\n background-color: transparent;\n height: 100%;\n width: 100%;\n}\n.spinWrapper {\n height: 100%;\n}\n.spinWrapper :global .ant-spin-container {\n height: 100%;\n}\n.fullScroll {\n overflow: auto;\n flex: 1;\n height: 100%;\n}\n.animatedSplitter :global(.ant-splitter-panel) {\n transition: all 0.3s cubic-bezier(0.2, 0, 0, 1) !important;\n}\n.animatedSplitter :global(.ant-splitter-bar) {\n transition: all 0.3s cubic-bezier(0.2, 0, 0, 1) !important;\n}\n.hideSplitterBar :global(.ant-splitter-bar) {\n display: none !important;\n}\n"],"mappings":";AAAA,WAAWA;AACT;AACE,yBAAqB,KAAK;AAC5B;AACA;AACE,yBAAqB,EAAE;AACzB;AACF;AACA,CAACC;AACC,YAAU;AACV,kBAAgB;AAClB;AACA,CAJCA,4BAIc;AACb,WAAS;AACT,YAAU;AACV,QAAM;AACN,UAAQ;AACR,UAAQ;AACR,SAAO;AACP;AAAA,IAAY;AAAA,MAAgB,KAAhB;AAAA,MAAuB,OAAvB;AAAA,MAAgC,OAAhC;AAAA,MAAyC;AACrD,mBAAiB,KAAK;AACtB,aAAW,2BAAa,KAAK,OAAO;AACtC;AACA,WAAWC;AACT;AACE,eAAW,OAAO;AACpB;AACF;AACA,CAACC,8BAAuB,EAAE,CAAC,oBAAoB,CAAC;AAC9C,WAAS;AACX;AACA,CAHCA,8BAGuB,EAAE,CAHC,oBAGoB,CAAC,0CAA0C,CAAC,aAAa,CAAC;AACvG,WAAS;AACX;AACA,CANCA,8BAMuB,EAAE,CANC,oBAMoB,CAHC,0CAG0C,CAHC,aAGa,CAAC;AACvG,aAAW,KAAK,GAAG,OAAO;AAC5B;AACA,CATCA,8BASuB,EAAE,CATC,oBASoB,CANC,0CAM0C,CAAC;AACzF,OAAK;AACP;AACA,CAZCA,8BAYuB,EAAE,CAZC,oBAYoB,CATC,0CAS0C,CAHC,iCAGiC,CAAC;AAC3H,SAAO;AACP,UAAQ;AACR,UAAQ,IAAI,MAAM;AAClB,gBAAc;AACd,iBAAe;AACf,aAAW,KAAK,GAAG,OAAO;AAC1B,cAAY;AACZ,YAAU;AACV,aAAW,MAAM,EAAE,EAAE,IAAI;AAC3B;AACA,CAvBCA,8BAuBuB,EAAE,CAvBC,oBAuBoB,CApBC,0CAoB0C,CAdC,iCAciC,CAXC,8BAW8B,CAAC;AAC1J,WAAS;AACX;AACA,CAACC,wBAAiB,CAAC,UAAU;AAC3B,cAAY;AACd;AACA,CAACC;AACC,cAAY;AACd;AACA,CAHCA,0BAGmB,CAAC,WAAW,EAAE,CAAC;AACjC,cAAY;AACZ,oBAAkB,IAAI;AACtB,SAAO,IAAI;AACb;AACA,CARCA,2BAQa,CAACC;AACb,aAAW;AACX,UAAQ,IAAI,MAAM;AACpB;AACA,CAZCD,2BAYa,CAJCC,2BAIa,CAACC;AAC3B,cAAY;AACZ,cAAY;AACZ,oBAAkB;AAClB,SAAO;AACT;;;AC1EA,CAACC;AACC,SAAO;AACP,UAAQ;AACR,WAAS;AACT,eAAa;AACb,mBAAiB;AACjB,iBAAe,IAAI;AACnB,YAAU;AACV,eAAa;AACb,OAAK;AACP;AACA,CAACC;AACC,aAAW;AACX,SAAO,IAAI;AACX,QAAM;AACN,eAAa;AACf;AACA,CAACC;AACC,aAAW;AACX,SAAO,IAAI;AACX,eAAa;AACf;AACA,CAACC;AACC,aAAW;AACX,WAAS;AACT,eAAa;AACb,eAAa;AACf;AACA,CAACC;AACC,aAAW;AACX,SAAO,IAAI;AACX,iBAAe;AACf,WAAS;AACX;AACA,CAACC;AACC,aAAW;AACX,cAAY;AACZ,aAAW;AACX,WAAS;AACX;AACA,CAACC;AACC,WAAS;AACX;AACA,CAACC;AACC,oBAAkB,IAAI;AACtB,iBAAe,IAAI;AACnB,UAAQ,IAAI,MAAM,IAAI;AACtB,cAAY;AACd;AACA,CAACC;AACC,WAAS,IAAI;AACb,iBAAe,IAAI,MAAM,IAAI;AAC7B,WAAS;AACT,eAAa;AACb,OAAK;AACP;AACA,CAPCA,qBAOQ;AACP,iBAAe;AACjB;AACA,CAACC;AACC,cAAY;AACd;AACA,CAACC;AACC,QAAM;AACN,aAAW;AACb;AACA,CAACC;AACC,aAAW;AACX,SAAO,IAAI;AACb;AACA,CAJCA,qBAIQ,CAACC;AACR,SAAO,IAAI;AACX,mBAAiB;AACnB;AACA,CAACC;AACC,aAAW;AACb;;;AC5EA,CAACC;AACC,WAAS,IAAI;AACb,iBAAe,IAAI,MAAM;AAC3B;AACA,CAJCA,yBAIW,CAACC;AACX,aAAW;AACX,eAAa;AACf;AACA,CARCD,yBAQW,CAACE;AACX,cAAY;AACZ,SAAO;AACP,WAAS;AACT,kBAAgB;AAChB,WAAS;AACX;AACA,CAfCF,yBAeW,CAPCE,sBAOgB,CAAC;AAC5B,cAAY;AACZ,WAAS;AACT,kBAAgB;AAClB;AACA,CAACC;AACC,SAAO;AACP,aAAW;AACX,gBAAc,IAAI,OAAO;A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","names":["loading-line","loadingMessage","spin","chatAttachments","chatSender","chatQuoteMsg","quoteTooltip","quoteTooltipContainer","iconContainer","toolName","duration","statusIcon","sectionLabel","markdownContainer","sectionBlock","todoList","todoItem","statusIconWrapper","todoContent","todoText","completed","emptyText","chatHeader","chatTitle","popover","conversationListPanel","createConversationButton","conversations","chatWelcomeWrap","chatWelcome","promptItem","runStartedNode","shimmer-bg","bubbleList","messageFooter","messageActions","resourceBtn","resourceBtnActive","userInputCollapse","logoArea","logoContainer","staticHalo","logoHoverWrapper","logoImage","greetingTitle","gradientText","greetingSubtitle","senderReferenceHeaderTitle","senderReferenceHeaderContent","bodyWidth","inputContainer","disclaimerNotice","previewHeader","previewCloseBtn","closeIcon","rotateIcon","chatLayout","spinWrapper","fullScroll","animatedSplitter","hideSplitterBar"]}
1
+ {"version":3,"sources":["../src/components/styles.module.less","../src/components/custom-components/tool-renders/index.module.less","../src/ui/common/styles.module.less","../src/ui/layouts/components/styles.module.less","../src/ui/layouts/index.module.less"],"sourcesContent":["@keyframes loading-line {\n from {\n background-position: 200% 0;\n }\n to {\n background-position: 0 0;\n }\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n.chatAttachments:global > .ant-attachment-list .ant-attachment-list-content {\n padding: 0 !important;\n}\n.chatAttachments:global > .ant-attachment-list .ant-attachment-list-card-status-uploading .ant-progress .ant-progress-text {\n display: none;\n}\n.chatAttachments:global > .ant-attachment-list .ant-attachment-list-card-status-uploading .ant-progress .ant-progress-circle {\n animation: spin 2s linear infinite;\n}\n.chatAttachments:global > .ant-attachment-list .ant-attachment-list-card-status-uploading .ant-attachment-list-card-content {\n gap: 4px;\n}\n.chatAttachments:global > .ant-attachment-list .ant-attachment-list-card-status-uploading .ant-attachment-list-card-content .ant-attachment-list-card-desc {\n width: 15px;\n height: 15px;\n border: 2px solid transparent;\n border-color: #1890ff;\n border-radius: 50%;\n animation: spin 1s linear infinite;\n box-sizing: border-box;\n position: relative;\n clip-path: inset(0 0 30% 0);\n}\n.chatAttachments:global > .ant-attachment-list .ant-attachment-list-card-status-uploading .ant-attachment-list-card-content .ant-attachment-list-card-desc .ant-attachment-list-card-ellipsis-prefix {\n display: none;\n}\n.chatSender:global.ant-sender:focus-within {\n box-shadow: none;\n}\n.chatQuoteMsg {\n margin-top: 4px;\n}\n.chatQuoteMsg:global.ant-bubble > .ant-bubble-content {\n min-height: auto;\n background-color: var(--ant-color-fill-tertiary) !important;\n color: var(--ant-color-text-tertiary);\n}\n.chatQuoteMsg .quoteTooltip {\n max-width: 100%;\n border: 1px solid #000;\n}\n.chatQuoteMsg .quoteTooltip .quoteTooltipContainer {\n max-height: 200px;\n overflow-y: auto;\n background-color: #fff;\n color: #000;\n}\n.runStartedNode {\n padding: 2px 12px;\n border-radius: 4px;\n background: linear-gradient(90deg, transparent 25%, #e6f4ff 50%, transparent 75%);\n background-size: 200% 100%;\n animation: shimmer-bg 2s infinite linear;\n display: flex;\n width: 100px;\n min-height: 28px;\n box-sizing: border-box;\n overflow: hidden;\n}\n.runStartedNode :global .anticon-loading {\n width: 14px;\n height: 14px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.runStartedNode :global .anticon-loading svg {\n width: 14px;\n height: 14px;\n}\n@keyframes shimmer-bg {\n 0% {\n background-position: 200% 0;\n }\n 100% {\n background-position: -200% 0;\n }\n}\n",".iconContainer {\n width: 20px;\n height: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--ant-border-radius-sm);\n overflow: hidden;\n flex-shrink: 0;\n gap: 20;\n}\n.toolName {\n font-size: 12px;\n color: var(--ant-color-text-secondary);\n flex: 1;\n line-height: 22px;\n}\n.duration {\n font-size: 12px;\n color: var(--ant-color-text-tertiary);\n flex-shrink: 0;\n}\n.statusIcon {\n font-size: 12px;\n display: flex;\n align-items: center;\n margin-left: 20px;\n}\n.sectionLabel {\n font-size: 12px;\n color: var(--ant-color-text-tertiary);\n margin-bottom: 4px;\n display: block;\n}\n.markdownContainer {\n max-width: 100%;\n overflow-x: auto;\n font-size: 12px;\n opacity: 0.85;\n}\n.sectionBlock {\n display: block;\n}\n.todoList {\n background-color: var(--ant-color-fill-alter);\n border-radius: var(--ant-border-radius);\n border: 1px solid var(--ant-color-border-secondary);\n margin-top: 4px;\n}\n.todoItem {\n padding: 8px 12px;\n border-bottom: 1px solid var(--ant-color-border-secondary);\n display: flex;\n align-items: flex-start;\n gap: 8px;\n}\n.todoItem:last-child {\n border-bottom: none;\n}\n.statusIconWrapper {\n margin-top: 2px;\n}\n.todoContent {\n flex: 1;\n min-width: 0;\n}\n.todoText {\n font-size: 13px;\n color: var(--ant-color-text);\n}\n.todoText.completed {\n color: var(--ant-color-text-tertiary);\n text-decoration: line-through;\n}\n.emptyText {\n font-size: 12px;\n}\n",".chatHeader {\n padding: 8px 16px;\n border-bottom: 1px solid #eee;\n}\n.chatHeader .chatTitle {\n font-size: 16px;\n font-weight: bold;\n}\n.chatHeader .popover {\n max-height: 500px;\n width: 300px;\n display: flex;\n flex-direction: column;\n padding: 0;\n}\n.chatHeader .popover :global .ant-popover-inner-content {\n min-height: 0;\n display: flex;\n flex-direction: column;\n}\n.conversationListPanel {\n width: 300px;\n max-width: 100%;\n border-right: 1px dashed #eee;\n}\n.conversationListPanel .createConversationButton {\n height: 38px;\n background-color: var(--ant-color-primary-bg);\n border-radius: var(--ant-border-radius-lg);\n color: var(--ant-color-primary);\n font-weight: bold;\n}\n.conversationListPanel .conversations {\n padding: 0 16px;\n}\n.conversationListPanel .conversations :global .ant-conversations-group-title {\n padding: 0;\n}\n.conversationListPanel .conversations :global .ant-conversations-group-title .ant-typography {\n color: #878aab;\n}\n.conversationListPanel .conversations :global .ant-conversations-list .ant-conversations-item {\n padding-left: 16px;\n touch-action: manipulation !important;\n}\n.conversationListPanel .conversations :global .ant-conversations-list .ant-conversations-item .ant-conversations-label {\n color: rgba(0, 0, 0, 0.88);\n}\n.conversationListPanel .conversations :global .ant-conversations-list .ant-conversations-item.ant-conversations-item-active .ant-conversations-label {\n color: var(--ant-color-primary);\n}\n.chatWelcomeWrap {\n height: 100%;\n max-width: 1000px;\n min-width: 320px;\n width: calc(100% - 24px);\n margin: 0 auto;\n}\n.chatWelcomeWrap :global .ant-prompts .ant-prompts-list {\n overflow: auto;\n}\n.chatWelcomeWrap .chatWelcome :global .ant-welcome-icon > img {\n border-radius: 10px;\n max-width: initial;\n}\n.promptItem {\n width: 100%;\n max-width: 100%;\n}\n.promptItem :global .ant-prompts-item {\n max-width: 100%;\n white-space: normal;\n height: auto;\n}\n.bubbleList {\n width: 100%;\n}\n.bubbleList:global.ant-bubble-list {\n width: 100%;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble-list-scroll-box .ant-bubble-list-scroll-content {\n max-width: 1000px;\n min-width: 320px;\n width: calc(100% - 12px);\n margin: 0 auto;\n padding-right: 0;\n padding-left: 10px;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble-list-scroll-box .ant-bubble-list-scroll-content > .ant-bubble > .ant-bubble-body {\n width: 100%;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble {\n padding-top: 8px;\n padding-bottom: 0;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble:hover .message-actions {\n opacity: 1;\n pointer-events: auto;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble.ant-bubble-start {\n padding-inline-end: 0%;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble.ant-bubble-start .ant-bubble-body {\n width: 100%;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble.ant-bubble-start .ant-bubble-content {\n background-color: transparent;\n padding: 0;\n padding-bottom: 0;\n min-height: 0;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble.ant-bubble-end .ant-bubble-content {\n background-color: var(--ant-color-primary-bg, #e6f4ff);\n}\n.bubbleList:global.ant-bubble-list .ant-bubble.ant-bubble-end .ant-bubble-content-borderless {\n background-color: transparent;\n}\n.bubbleList:global.ant-bubble-list .ant-bubble.ant-bubble-end .ant-bubble-content-borderless .ant-file-card-list-content {\n padding: 0;\n}\n.messageActions {\n opacity: 0;\n pointer-events: none;\n transition: opacity 0.2s ease;\n}\n.resourceBtn {\n align-items: center;\n gap: 6px;\n padding: 4px 8px;\n font-size: 13px;\n font-weight: 500;\n color: #475569;\n /* text-slate-600 */\n background-color: #f1f5f9;\n /* bg-slate-100/60 */\n border: 1px solid #e2e8f0;\n /* border-slate-200/50 */\n border-radius: 12px;\n /* rounded-xl */\n transition: all 0.3s;\n cursor: pointer;\n}\n.resourceBtnActive {\n background-color: var(--ant-color-primary);\n color: #fff;\n}\n.userInputCollapse {\n width: calc(100% - 24px);\n max-width: 1000px;\n min-width: 320px;\n margin: 0 auto;\n}\n.logoArea {\n margin-bottom: 1.5rem;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n text-align: center;\n margin-top: 40px;\n}\n.logoArea .logoContainer {\n position: relative;\n margin-bottom: 1.5rem;\n cursor: pointer;\n}\n.logoArea .logoContainer .staticHalo {\n position: absolute;\n inset: 0;\n background-color: var(--ant-color-primary);\n filter: blur(24px);\n opacity: 0.2;\n transition: opacity 700ms;\n border-radius: 9999px;\n}\n.logoArea .logoContainer .logoHoverWrapper {\n position: relative;\n z-index: 10;\n padding: 0.5rem;\n transition: all 500ms ease-out;\n transform: scale(1) translateY(0);\n}\n.logoArea .logoContainer .logoHoverWrapper .logoImage {\n width: 6rem;\n height: 6rem;\n object-fit: contain;\n filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.1));\n transition: all 500ms;\n}\n.logoArea .logoContainer:hover .staticHalo {\n opacity: 0.5;\n}\n.logoArea .logoContainer:hover .logoHoverWrapper {\n transform: scale(1.1) translateY(-0.5rem);\n}\n.logoArea .logoContainer:hover .logoImage {\n filter: drop-shadow(0 10px 20px rgba(18, 124, 183, 0.4));\n}\n.logoArea .greetingTitle {\n margin-bottom: 0.75rem;\n font-size: 2.25rem;\n line-height: 2.5rem;\n font-weight: 700;\n letter-spacing: -0.025em;\n color: #1e293b;\n}\n@media (width >= 768px) {\n .logoArea .greetingTitle {\n font-size: 3rem;\n line-height: 1;\n }\n}\n.logoArea .greetingTitle .gradientText {\n color: transparent;\n background-clip: text;\n background-image: linear-gradient(to right, var(--ant-color-primary), #3b82f6);\n}\n.logoArea .greetingSubtitle {\n font-size: 1.125rem;\n line-height: 1.75rem;\n font-weight: 500;\n color: #64748b;\n}\n@media (width >= 768px) {\n .logoArea .greetingSubtitle {\n font-size: 1.25rem;\n line-height: 1.75rem;\n }\n}\n.senderReferenceHeaderTitle:global > .ant-sender-header-title {\n overflow: hidden;\n}\n.senderReferenceHeaderContent {\n padding: 0 !important;\n}\n",".bodyWidth {\n width: 100%;\n height: 100%;\n}\n.inputContainer {\n max-width: 1000px;\n min-width: 320px;\n width: calc(100% - 24px);\n}\n.disclaimerNotice {\n font-size: 12px;\n text-align: center;\n color: #bfbfbf;\n}\n.previewHeader {\n padding-bottom: 4px;\n border-bottom: 1px solid #e2e8f0;\n}\n.previewCloseBtn {\n cursor: pointer;\n display: flex;\n align-items: center;\n color: var(--ant-color-text-tertiary);\n transition: color 0.3s;\n font-size: 16px;\n}\n.previewCloseBtn:hover {\n color: var(--ant-color-text);\n}\n.previewCloseBtn .closeIcon {\n transition: transform 0.3s ease;\n}\n.previewCloseBtn.rotateIcon:hover .closeIcon {\n transform: rotate(90deg);\n}\n",".chatLayout {\n background-color: transparent;\n height: 100%;\n width: 100%;\n}\n.spinWrapper {\n height: 100%;\n}\n.spinWrapper :global .ant-spin-container {\n height: 100%;\n}\n.fullScroll {\n overflow: auto;\n flex: 1;\n height: 100%;\n}\n.animatedSplitter :global(.ant-splitter-panel) {\n transition: all 0.3s cubic-bezier(0.2, 0, 0, 1) !important;\n}\n.animatedSplitter :global(.ant-splitter-bar) {\n transition: all 0.3s cubic-bezier(0.2, 0, 0, 1) !important;\n}\n.hideSplitterBar :global(.ant-splitter-bar) {\n display: none !important;\n}\n"],"mappings":"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","names":["loading-line","spin","chatAttachments","chatSender","chatQuoteMsg","quoteTooltip","quoteTooltipContainer","runStartedNode","shimmer-bg","iconContainer","toolName","duration","statusIcon","sectionLabel","markdownContainer","sectionBlock","todoList","todoItem","statusIconWrapper","todoContent","todoText","completed","emptyText","chatHeader","chatTitle","popover","conversationListPanel","createConversationButton","conversations","chatWelcomeWrap","chatWelcome","promptItem","bubbleList","messageActions","resourceBtn","resourceBtnActive","userInputCollapse","logoArea","logoContainer","staticHalo","logoHoverWrapper","logoImage","greetingTitle","gradientText","greetingSubtitle","senderReferenceHeaderTitle","senderReferenceHeaderContent","bodyWidth","inputContainer","disclaimerNotice","previewHeader","previewCloseBtn","closeIcon","rotateIcon","chatLayout","spinWrapper","fullScroll","animatedSplitter","hideSplitterBar"]}
package/dist/index.d.mts CHANGED
@@ -3,6 +3,7 @@ import react__default from 'react';
3
3
  import { ButtonProps, ThemeConfig } from 'antd';
4
4
  import * as react_jsx_runtime from 'react/jsx-runtime';
5
5
  import { createRequest, RequestConfig, RenderControl } from '@zero-library/common';
6
+ import { BubbleProps } from '@ant-design/x-v2';
6
7
 
7
8
  type ConversationMemberEnum = 'user' | 'agent';
8
9
  declare enum AgentTypeEnum {
@@ -66,10 +67,10 @@ interface AgentConfig {
66
67
  }
67
68
  interface AgentInfo {
68
69
  id: string;
69
- name: string;
70
- description: string;
71
- iconUrl: string;
72
- agentType: AgentTypeEnum;
70
+ name?: string;
71
+ description?: string;
72
+ iconUrl?: string;
73
+ agentType?: AgentTypeEnum;
73
74
  updatedAt?: string;
74
75
  tagIds?: string[];
75
76
  spec?: AgentSpec;
@@ -77,6 +78,65 @@ interface AgentInfo {
77
78
  userInput?: Variable[];
78
79
  }
79
80
 
81
+ /**
82
+ * ChatSender 组件暴露的方法接口
83
+ */
84
+ interface ChatSenderHandle {
85
+ /** 聚焦输入框 */
86
+ focus: (options?: {
87
+ cursor?: 'start' | 'end';
88
+ }) => void;
89
+ }
90
+ /**
91
+ * 文件上传配置接口
92
+ */
93
+ interface FileUpload {
94
+ /** 上传时的额外参数 */
95
+ params?: ObjectType<any>;
96
+ /** 文件上传配置列表 */
97
+ config: FileUploadConfig;
98
+ /** 文件上传请求函数 */
99
+ request: AttachmentsProps['fileUpload'];
100
+ }
101
+ /**
102
+ * ChatSender 组件属性接口
103
+ */
104
+ interface SenderProps {
105
+ /** 输入框占位符 */
106
+ placeholder?: string;
107
+ /** 输入框内容 */
108
+ content?: string;
109
+ /** 文件列表 */
110
+ fileList?: InputFile[];
111
+ /** 是否打开文件选择头部 */
112
+ headerOpen?: boolean;
113
+ /** 是否正在发送消息 */
114
+ loading?: boolean;
115
+ /** 内容变化回调 */
116
+ onContentChange: (value: string) => void;
117
+ /** 文件列表变化回调 */
118
+ onFileListChange: (files: InputFile[]) => void;
119
+ /** 头部打开状态变化回调 */
120
+ onHeaderOpenChange: (open: boolean) => void;
121
+ /** 发送消息回调 */
122
+ onSend: () => void;
123
+ /** 取消发送回调 */
124
+ onCancel?: () => void;
125
+ /** 输入框聚焦回调 */
126
+ onFocus?: () => void;
127
+ /** 头部额外内容 */
128
+ extraHeader?: React.ReactNode;
129
+ /** 底部额外内容 */
130
+ extraFooter?: React.ReactNode;
131
+ /** 底部下方额外内容 */
132
+ extraFooterBelow?: React.ReactNode;
133
+ /** 发送按钮属性 */
134
+ sendBtnProps?: ButtonProps;
135
+ /** 文件上传配置 */
136
+ fileUpload?: FileUpload;
137
+ }
138
+ declare const _default$3: react.ForwardRefExoticComponent<SenderProps & react.RefAttributes<ChatSenderHandle>>;
139
+
80
140
  interface UserInputType {
81
141
  inputs: Variable[];
82
142
  outputs: Variable[];
@@ -87,6 +147,7 @@ interface UserInputType {
87
147
  * @returns 聊天服务对象
88
148
  */
89
149
  declare const createChatService: (request: ReturnType<typeof createRequest>, config?: RequestConfig) => {
150
+ fetchModelList: () => Promise<R<ProviderModel[]>>;
90
151
  fetchAgentInfo: (agentId: string) => Promise<R<AgentInfo>>;
91
152
  createConversationId: (params: ConversationCreate) => Promise<R<string>>;
92
153
  fetchConversations: (params: ConversationsQuery) => Promise<R<ConversationType[]>>;
@@ -237,9 +298,13 @@ interface ConvMeta {
237
298
  * 1 正常 2 debug
238
299
  */
239
300
  mode?: number;
301
+ /** 项目或知识库ID */
240
302
  libraryId?: string;
303
+ /** 会话来源 */
241
304
  source?: number;
305
+ /** 项目或知识库类型 */
242
306
  libraryType?: LibraryTypeEnum;
307
+ /** 技能会话ID */
243
308
  skillConversationId?: string;
244
309
  }
245
310
 
@@ -482,11 +547,17 @@ type MessageEvent = RunStartedEvent | TextEvent | FilesEvent | StepStartedEvent
482
547
  * 定义智能体和用户之间的消息结构
483
548
  */
484
549
  interface ConversationMessage {
550
+ /** 消息ID */
485
551
  messageId: string;
552
+ /** 会话ID */
486
553
  conversationId: string;
554
+ /** 执行ID */
487
555
  executionId: string;
556
+ /** 角色:1-智能体 2-用户 */
488
557
  role: number;
558
+ /** 消息内容 */
489
559
  content: MessageEvent[];
560
+ /** 上传文件内容 */
490
561
  files?: InputFile[];
491
562
  /** 消息反馈:1-赞 2-踩 */
492
563
  feedback?: number;
@@ -494,6 +565,7 @@ interface ConversationMessage {
494
565
  params?: string;
495
566
  /** 引用的消息信息 */
496
567
  quoteMsg?: MessageQuoteMsg;
568
+ /** 创建时间 */
497
569
  createdAt: string;
498
570
  /** 是否被打断标志 */
499
571
  stopFlag?: boolean;
@@ -1077,6 +1149,12 @@ interface ChatHooks {
1077
1149
  * }
1078
1150
  */
1079
1151
  onAppRightVerify?: (appKey: string) => boolean | Promise<boolean> | void;
1152
+ /**
1153
+ * 文件预览前回调函数
1154
+ * 在文件预览打开前调用,返回false可阻止预览
1155
+ * @param file - 被预览的文件对象, 如果不存在则表示正在关闭预览
1156
+ * @param isBuiltIn - 是否为内嵌布局
1157
+ */
1080
1158
  onBeforeFilePreview?: (file?: FileUrlType, isBuiltIn?: boolean) => boolean | Promise<boolean> | void;
1081
1159
  /**
1082
1160
  * 文件预览后的回调函数
@@ -1323,6 +1401,23 @@ interface ChatProps {
1323
1401
  layout?: ChatLayout;
1324
1402
  services?: ChatServices;
1325
1403
  }
1404
+ interface Model {
1405
+ modelName: string;
1406
+ modelLabel: string;
1407
+ desc: string | null;
1408
+ tags: readonly string[] | null;
1409
+ providerId: string;
1410
+ providerName: string;
1411
+ providerLabel?: string;
1412
+ icon: string;
1413
+ }
1414
+ interface ProviderModel {
1415
+ providerName: string;
1416
+ providerLabel: string;
1417
+ iconUrl: string;
1418
+ icon?: string;
1419
+ models: Model[];
1420
+ }
1326
1421
 
1327
1422
  /**
1328
1423
  * 附件组件属性接口
@@ -1339,67 +1434,21 @@ interface AttachmentsProps {
1339
1434
  /** 文件列表变化回调函数 */
1340
1435
  onChange: (fileList: InputFile[]) => void;
1341
1436
  }
1342
-
1343
1437
  /**
1344
- * ChatSender 组件暴露的方法接口
1438
+ * 附件上传组件
1439
+ * 支持多文件上传、文件类型验证、文件大小限制等功能
1345
1440
  */
1346
- interface ChatSenderHandle {
1347
- /** 聚焦输入框 */
1348
- focus: (options?: {
1349
- cursor?: 'start' | 'end';
1350
- }) => void;
1351
- }
1352
- /**
1353
- * 文件上传配置接口
1354
- */
1355
- interface FileUpload {
1356
- /** 上传时的额外参数 */
1357
- params?: ObjectType<any>;
1358
- /** 文件上传配置列表 */
1359
- config: FileUploadConfig;
1360
- /** 文件上传请求函数 */
1361
- request: AttachmentsProps['fileUpload'];
1362
- }
1363
- /**
1364
- * ChatSender 组件属性接口
1365
- */
1366
- interface SenderProps {
1367
- /** 输入框占位符 */
1368
- placeholder?: string;
1369
- /** 输入框内容 */
1370
- content?: string;
1371
- /** 文件列表 */
1372
- fileList?: InputFile[];
1373
- /** 是否打开文件选择头部 */
1374
- headerOpen?: boolean;
1375
- /** 是否正在发送消息 */
1376
- loading?: boolean;
1377
- /** 内容变化回调 */
1378
- onContentChange: (value: string) => void;
1379
- /** 文件列表变化回调 */
1380
- onFileListChange: (files: InputFile[]) => void;
1381
- /** 头部打开状态变化回调 */
1382
- onHeaderOpenChange: (open: boolean) => void;
1383
- /** 发送消息回调 */
1384
- onSend: () => void;
1385
- /** 取消发送回调 */
1386
- onCancel?: () => void;
1387
- /** 输入框聚焦回调 */
1388
- onFocus?: () => void;
1389
- /** 头部额外内容 */
1390
- extraHeader?: React.ReactNode;
1391
- /** 底部额外内容 */
1392
- extraFooter?: React.ReactNode;
1393
- /** 底部下方额外内容 */
1394
- extraFooterBelow?: React.ReactNode;
1395
- /** 发送按钮属性 */
1396
- sendBtnProps?: ButtonProps;
1397
- /** 文件上传配置 */
1398
- fileUpload?: FileUpload;
1441
+ declare const _default$2: react.ForwardRefExoticComponent<AttachmentsProps & react.RefAttributes<unknown>>;
1442
+
1443
+ interface RoleContent {
1444
+ role: number;
1445
+ user: ConversationMemberEnum;
1446
+ placement: BubbleProps['placement'];
1447
+ avatar?: any;
1399
1448
  }
1400
- declare const _default$3: react.ForwardRefExoticComponent<SenderProps & react.RefAttributes<ChatSenderHandle>>;
1401
1449
 
1402
1450
  interface MessageRenderProps {
1451
+ role: RoleContent;
1403
1452
  message: ConversationMessage;
1404
1453
  messageIndex?: number;
1405
1454
  loading?: boolean;
@@ -1408,10 +1457,8 @@ interface MessageRenderProps {
1408
1457
  /** message自定义标记渲染组件 */
1409
1458
  customComponents?: ChatLayoutMessageList['customComponents'];
1410
1459
  }
1411
- declare const _default$2: react__default.MemoExoticComponent<({ message, messageIndex, loading, containerRef, customComponents }: MessageRenderProps) => react_jsx_runtime.JSX.Element>;
1412
-
1413
- declare const _default$1: ({ firstMessages, welcomeMessage, avatar, agentActions, customComponents }: ChatLayoutMessageList) => react_jsx_runtime.JSX.Element;
1460
+ declare const _default$1: react__default.MemoExoticComponent<({ role, message, messageIndex, loading, containerRef, customComponents }: MessageRenderProps) => react_jsx_runtime.JSX.Element>;
1414
1461
 
1415
1462
  declare const _default: react.ForwardRefExoticComponent<ChatProps & react.RefAttributes<ChatHandle>>;
1416
1463
 
1417
- export { type AgentConfig, type AgentInfo, type AgentSpec, _default$1 as BubbleListItems, type ChatConfig, _default as ChatCopilot, type ChatHandle, type ChatProps, _default$3 as ChatSender, type ConversationMessage, type FileUploadConfig, type InputFile, _default$2 as MessageRender };
1464
+ export { type AgentConfig, type AgentInfo, type AgentSpec, _default$2 as Attachments, type AttachmentsProps, type ChatConfig, _default as ChatCopilot, type ChatHandle, type ChatHooks, type ChatLayout, type ChatParams, type ChatProps, _default$3 as ChatSender, type ChatServices, type ConversationMessage, type ConversationStrategy, type FileUploadConfig, type InputFile, _default$1 as MessageRender, type MessageRenderProps, type ReferencesType, type RequestInstance, type SenderProps };