@deep-eye/core 1.3.4 → 1.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/chat-token.css +227 -0
  3. package/dist/components/chat/ChatApp.vue.d.ts +200 -0
  4. package/dist/components/chat/ChatApp.vue.d.ts.map +1 -0
  5. package/dist/components/chat/ChatBot.vue.d.ts +12 -1
  6. package/dist/components/chat/ChatBot.vue.d.ts.map +1 -1
  7. package/dist/components/chat/attachments.d.ts +4 -1
  8. package/dist/components/chat/attachments.d.ts.map +1 -1
  9. package/dist/components/chat/chatContext.d.ts +3 -2
  10. package/dist/components/chat/chatContext.d.ts.map +1 -1
  11. package/dist/components/chat/chatSessionSidebarAssets.d.ts +21 -0
  12. package/dist/components/chat/chatSessionSidebarAssets.d.ts.map +1 -0
  13. package/dist/components/chat/chatSessionSidebarTypes.d.ts +67 -0
  14. package/dist/components/chat/chatSessionSidebarTypes.d.ts.map +1 -0
  15. package/dist/components/chat/cloudConfig.d.ts +94 -0
  16. package/dist/components/chat/cloudConfig.d.ts.map +1 -0
  17. package/dist/components/chat/components/ArtifactList.vue.d.ts +14 -0
  18. package/dist/components/chat/components/ArtifactList.vue.d.ts.map +1 -0
  19. package/dist/components/chat/components/ChatHistorySearchDialog.vue.d.ts +37 -0
  20. package/dist/components/chat/components/ChatHistorySearchDialog.vue.d.ts.map +1 -0
  21. package/dist/components/chat/components/ChatProvider.vue.d.ts +10 -7
  22. package/dist/components/chat/components/ChatProvider.vue.d.ts.map +1 -1
  23. package/dist/components/chat/components/ChatSender.vue.d.ts +15 -3
  24. package/dist/components/chat/components/ChatSender.vue.d.ts.map +1 -1
  25. package/dist/components/chat/components/ChatSessionExpandHistoryCard.vue.d.ts +34 -0
  26. package/dist/components/chat/components/ChatSessionExpandHistoryCard.vue.d.ts.map +1 -0
  27. package/dist/components/chat/components/ChatSessionHistoryItem.vue.d.ts +21 -0
  28. package/dist/components/chat/components/ChatSessionHistoryItem.vue.d.ts.map +1 -0
  29. package/dist/components/chat/components/ChatSessionLoadingDots.vue.d.ts +11 -0
  30. package/dist/components/chat/components/ChatSessionLoadingDots.vue.d.ts.map +1 -0
  31. package/dist/components/chat/components/ChatSessionOverflowTooltip.vue.d.ts +22 -0
  32. package/dist/components/chat/components/ChatSessionOverflowTooltip.vue.d.ts.map +1 -0
  33. package/dist/components/chat/components/ChatSessionSidebar.vue.d.ts +84 -0
  34. package/dist/components/chat/components/ChatSessionSidebar.vue.d.ts.map +1 -0
  35. package/dist/components/chat/components/ChatSessionSkeleton.vue.d.ts +6 -0
  36. package/dist/components/chat/components/ChatSessionSkeleton.vue.d.ts.map +1 -0
  37. package/dist/components/chat/components/ChatSessionStatusMark.vue.d.ts +15 -0
  38. package/dist/components/chat/components/ChatSessionStatusMark.vue.d.ts.map +1 -0
  39. package/dist/components/chat/components/ChatSkillPanel.vue.d.ts +8 -2
  40. package/dist/components/chat/components/ChatSkillPanel.vue.d.ts.map +1 -1
  41. package/dist/components/chat/components/ConversationList.vue.d.ts.map +1 -1
  42. package/dist/components/chat/components/document-viewer/html/HtmlRenderer.vue.d.ts.map +1 -1
  43. package/dist/components/chat/components/document-viewer/screenshotCapture.d.ts +3 -2
  44. package/dist/components/chat/components/document-viewer/screenshotCapture.d.ts.map +1 -1
  45. package/dist/components/chat/components/index.d.ts +3 -0
  46. package/dist/components/chat/components/index.d.ts.map +1 -1
  47. package/dist/components/chat/composables/chatApiRequest.d.ts +39 -0
  48. package/dist/components/chat/composables/chatApiRequest.d.ts.map +1 -0
  49. package/dist/components/chat/composables/chatHistoryApi.d.ts +45 -0
  50. package/dist/components/chat/composables/chatHistoryApi.d.ts.map +1 -0
  51. package/dist/components/chat/composables/chatSessionId.d.ts +8 -0
  52. package/dist/components/chat/composables/chatSessionId.d.ts.map +1 -0
  53. package/dist/components/chat/composables/fetchModelList.d.ts +2 -0
  54. package/dist/components/chat/composables/fetchModelList.d.ts.map +1 -1
  55. package/dist/components/chat/composables/useChatNewSessionEpoch.d.ts +3 -0
  56. package/dist/components/chat/composables/useChatNewSessionEpoch.d.ts.map +1 -0
  57. package/dist/components/chat/composables/useChatSessionHistory.d.ts +58 -0
  58. package/dist/components/chat/composables/useChatSessionHistory.d.ts.map +1 -0
  59. package/dist/components/chat/composables/useChatSessionSwitch.d.ts +22 -0
  60. package/dist/components/chat/composables/useChatSessionSwitch.d.ts.map +1 -0
  61. package/dist/components/chat/composables/useHistoryGroupExpand.d.ts +14 -0
  62. package/dist/components/chat/composables/useHistoryGroupExpand.d.ts.map +1 -0
  63. package/dist/components/chat/harness/Tooltip.vue.d.ts +1 -1
  64. package/dist/components/chat/harness/Tooltip.vue.d.ts.map +1 -1
  65. package/dist/components/chat/htmlPreview.d.ts +13 -0
  66. package/dist/components/chat/htmlPreview.d.ts.map +1 -1
  67. package/dist/components/chat/icons/{ChatTipMenuLucideIcon.vue.d.ts → ChatArtifactFilesIcon.vue.d.ts} +1 -3
  68. package/dist/components/chat/icons/ChatArtifactFilesIcon.vue.d.ts.map +1 -0
  69. package/dist/components/chat/icons/ChatTipMenuAssetIcon.vue.d.ts +10 -0
  70. package/dist/components/chat/icons/ChatTipMenuAssetIcon.vue.d.ts.map +1 -0
  71. package/dist/components/chat/icons/ChatTipMenuExpertIcon.vue.d.ts +1 -3
  72. package/dist/components/chat/icons/ChatTipMenuExpertIcon.vue.d.ts.map +1 -1
  73. package/dist/components/chat/icons/index.d.ts +1 -0
  74. package/dist/components/chat/icons/index.d.ts.map +1 -1
  75. package/dist/components/chat/icons/tipMenuItemIcons.d.ts +1 -3
  76. package/dist/components/chat/icons/tipMenuItemIcons.d.ts.map +1 -1
  77. package/dist/components/chat/index.d.ts +14 -2
  78. package/dist/components/chat/index.d.ts.map +1 -1
  79. package/dist/components/chat/mdoc/ArtifactBlock.vue.d.ts +4 -1
  80. package/dist/components/chat/mdoc/ArtifactBlock.vue.d.ts.map +1 -1
  81. package/dist/components/chat/mdoc/ArtifactStack.vue.d.ts +13 -0
  82. package/dist/components/chat/mdoc/ArtifactStack.vue.d.ts.map +1 -0
  83. package/dist/components/chat/mdoc/ContentNodes.vue.d.ts.map +1 -1
  84. package/dist/components/chat/mdoc/artifactOpenStrategy.d.ts +1 -1
  85. package/dist/components/chat/mdoc/artifactOpenStrategy.d.ts.map +1 -1
  86. package/dist/components/chat/mdoc/artifactStack.d.ts +17 -0
  87. package/dist/components/chat/mdoc/artifactStack.d.ts.map +1 -0
  88. package/dist/components/chat/mdoc/index.d.ts +2 -0
  89. package/dist/components/chat/mdoc/index.d.ts.map +1 -1
  90. package/dist/components/chat/mdoc/sessionArtifacts.d.ts +20 -0
  91. package/dist/components/chat/mdoc/sessionArtifacts.d.ts.map +1 -0
  92. package/dist/components/chat/mentionEditor.d.ts +7 -2
  93. package/dist/components/chat/mentionEditor.d.ts.map +1 -1
  94. package/dist/components/chat/sidebarMotion.d.ts +5 -0
  95. package/dist/components/chat/sidebarMotion.d.ts.map +1 -1
  96. package/dist/components/chat/types.d.ts +136 -9
  97. package/dist/components/chat/types.d.ts.map +1 -1
  98. package/dist/components/skill/api/skillCloudUrl.d.ts.map +1 -1
  99. package/dist/components/skill/components/ChatSkillCard.vue.d.ts.map +1 -1
  100. package/dist/components/skill/components/ChatSkillCardSkeleton.vue.d.ts.map +1 -1
  101. package/dist/components/skill/components/ChatSkillDetailDialog.vue.d.ts.map +1 -1
  102. package/dist/components/skill/composables/useChatSkills.d.ts +6 -1
  103. package/dist/components/skill/composables/useChatSkills.d.ts.map +1 -1
  104. package/dist/components/skill/formatSkillUsageCount.d.ts +3 -0
  105. package/dist/components/skill/formatSkillUsageCount.d.ts.map +1 -0
  106. package/dist/components/skill/skillCardModel.d.ts.map +1 -1
  107. package/dist/components/skill/skillTabs.d.ts +5 -0
  108. package/dist/components/skill/skillTabs.d.ts.map +1 -0
  109. package/dist/components/skill/types.d.ts +2 -0
  110. package/dist/components/skill/types.d.ts.map +1 -1
  111. package/dist/components/ui/components/UiDialog.vue.d.ts.map +1 -1
  112. package/dist/components/ui/components/UiDropdown.vue.d.ts +8 -4
  113. package/dist/components/ui/components/UiDropdown.vue.d.ts.map +1 -1
  114. package/dist/components/ui/components/UiMenu.vue.d.ts +9 -3
  115. package/dist/components/ui/components/UiMenu.vue.d.ts.map +1 -1
  116. package/dist/components/ui/components/UiMenuColumn.vue.d.ts.map +1 -1
  117. package/dist/components/ui/components/UiMenuNestedSubmenu.vue.d.ts +6 -0
  118. package/dist/components/ui/components/UiMenuNestedSubmenu.vue.d.ts.map +1 -1
  119. package/dist/components/ui/components/UiMenuSubmenuList.vue.d.ts.map +1 -1
  120. package/dist/components/ui/components/UiSearchInput.vue.d.ts +5 -1
  121. package/dist/components/ui/components/UiSearchInput.vue.d.ts.map +1 -1
  122. package/dist/components/ui/components/UiTabs.vue.d.ts.map +1 -1
  123. package/dist/components/ui/composables/floatingPosition.d.ts +3 -1
  124. package/dist/components/ui/composables/floatingPosition.d.ts.map +1 -1
  125. package/dist/components/ui/composables/index.d.ts +1 -1
  126. package/dist/components/ui/composables/index.d.ts.map +1 -1
  127. package/dist/components/ui/composables/useUiDropdown.d.ts +12 -2
  128. package/dist/components/ui/composables/useUiDropdown.d.ts.map +1 -1
  129. package/dist/components/ui/composables/useUiMenuFloating.d.ts +5 -2
  130. package/dist/components/ui/composables/useUiMenuFloating.d.ts.map +1 -1
  131. package/dist/components/ui/types.d.ts +34 -6
  132. package/dist/components/ui/types.d.ts.map +1 -1
  133. package/dist/components/ui/utils/index.d.ts +1 -1
  134. package/dist/components/ui/utils/index.d.ts.map +1 -1
  135. package/dist/components/ui/utils/mapDropdownMenuItems.d.ts +6 -1
  136. package/dist/components/ui/utils/mapDropdownMenuItems.d.ts.map +1 -1
  137. package/dist/components/ui/utils/menuSubmenu.d.ts +3 -1
  138. package/dist/components/ui/utils/menuSubmenu.d.ts.map +1 -1
  139. package/dist/{index-oK2gNaio.js → index-BKxbaGuU.js} +1 -1
  140. package/dist/{index-GDdWx_nR.cjs → index-BvdV0Eu0.cjs} +1 -1
  141. package/dist/{index-B9m5lEtT.cjs → index-CPq9HVwe.cjs} +232 -228
  142. package/dist/{index-B1l7WLyd.js → index-CT4dZd6h.js} +38782 -35178
  143. package/dist/{index-zKQpqRx4.cjs → index-DHbY1Eq1.cjs} +1 -1
  144. package/dist/{index-DZFa6Oqy.js → index-YIVH2TCo.js} +1 -1
  145. package/dist/index.cjs +1 -1
  146. package/dist/index.js +328 -276
  147. package/dist/style.css +2 -2
  148. package/package.json +1 -1
  149. package/dist/components/chat/icons/ChatTipMenuLucideIcon.vue.d.ts.map +0 -1
@@ -4,6 +4,8 @@ type __VLS_Props = {
4
4
  cardModels: readonly ChatSkillCardModel[];
5
5
  loading?: boolean;
6
6
  typesLoading?: boolean;
7
+ loadingMore?: boolean;
8
+ hasMore?: boolean;
7
9
  showEmpty?: boolean;
8
10
  avatarThumb?: ChatSkillAvatarThumbConfig;
9
11
  };
@@ -11,12 +13,13 @@ type __VLS_ModelProps = {
11
13
  'activeCategory': string;
12
14
  };
13
15
  type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
14
- declare var __VLS_42: {};
16
+ declare var __VLS_48: {};
15
17
  type __VLS_Slots = {} & {
16
- empty?: (props: typeof __VLS_42) => any;
18
+ empty?: (props: typeof __VLS_48) => any;
17
19
  };
18
20
  declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
19
21
  use: (skill: ChatSkillCardModel) => any;
22
+ "load-more": () => any;
20
23
  "update:activeCategory": (value: string) => any;
21
24
  shortcut: (payload: {
22
25
  skill: ChatSkillCardModel;
@@ -24,6 +27,7 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
24
27
  }) => any;
25
28
  }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
26
29
  onUse?: ((skill: ChatSkillCardModel) => any) | undefined;
30
+ "onLoad-more"?: (() => any) | undefined;
27
31
  "onUpdate:activeCategory"?: ((value: string) => any) | undefined;
28
32
  onShortcut?: ((payload: {
29
33
  skill: ChatSkillCardModel;
@@ -32,6 +36,8 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
32
36
  }>, {
33
37
  loading: boolean;
34
38
  showEmpty: boolean;
39
+ loadingMore: boolean;
40
+ hasMore: boolean;
35
41
  typesLoading: boolean;
36
42
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
37
43
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -1 +1 @@
1
- {"version":3,"file":"ChatSkillPanel.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/components/ChatSkillPanel.vue"],"names":[],"mappings":"AAoKA,OAAO,KAAK,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAI/F,KAAK,WAAW,GAAG;IACf,IAAI,EAAE,SAAS,YAAY,EAAE,CAAA;IAC7B,UAAU,EAAE,SAAS,kBAAkB,EAAE,CAAA;IACzC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,WAAW,CAAC,EAAE,0BAA0B,CAAA;CACzC,CAAC;AAuCJ,KAAK,gBAAgB,GAAG;IACxB,gBAAgB,EAAE,MAAM,CAAC;CACxB,CAAC;AAUF,KAAK,iBAAiB,GAAG,WAAW,GAAG,gBAAgB,CAAC;AA6OxD,QAAA,IAAI,QAAQ,IAAY,CAAE;AAC1B,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,QAAQ,KAAK,GAAG,CAAA;CAAE,CAAC;AAK9C,QAAA,MAAM,UAAU;;;;eA3Re,kBAAkB;cAAQ,MAAM;;;;;;eAAhC,kBAAkB;cAAQ,MAAM;;;aAhBjD,OAAO;eAEL,OAAO;kBADJ,OAAO;6EA8SxB,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AAWzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
1
+ {"version":3,"file":"ChatSkillPanel.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/components/ChatSkillPanel.vue"],"names":[],"mappings":"AAwTA,OAAO,KAAK,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAI/F,KAAK,WAAW,GAAG;IACf,IAAI,EAAE,SAAS,YAAY,EAAE,CAAA;IAC7B,UAAU,EAAE,SAAS,kBAAkB,EAAE,CAAA;IACzC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,WAAW,CAAC,EAAE,0BAA0B,CAAA;CACzC,CAAC;AAgEJ,KAAK,gBAAgB,GAAG;IACxB,gBAAgB,EAAE,MAAM,CAAC;CACxB,CAAC;AAYF,KAAK,iBAAiB,GAAG,WAAW,GAAG,gBAAgB,CAAC;AAgUxD,QAAA,IAAI,QAAQ,IAAY,CAAE;AAC1B,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,QAAQ,KAAK,GAAG,CAAA;CAAE,CAAC;AAQ9C,QAAA,MAAM,UAAU;;;;;eA1Ye,kBAAkB;cAAQ,MAAM;;;;;;;eAAhC,kBAAkB;cAAQ,MAAM;;;aApBjD,OAAO;eAIL,OAAO;iBAFL,OAAO;aACX,OAAO;kBAFF,OAAO;6EAiaxB,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AAWzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationList.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/components/ConversationList.vue"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConversationList.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/components/ConversationList.vue"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"HtmlRenderer.vue.d.ts","sourceRoot":"","sources":["../../../../../../src/components/chat/components/document-viewer/html/HtmlRenderer.vue"],"names":[],"mappings":"AAyLA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAMjE,KAAK,WAAW,GAAG;IACjB,QAAQ,EAAE,gBAAgB,CAAA;CAC3B,CAAC;AA6EF,iBAAe,IAAI,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAkBjD;AAED,iBAAe,UAAU,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAElD;AAED,iBAAS,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAGzC;AAED,iBAAS,QAAQ,IAAI,IAAI,CAOxB;AAiFD,QAAA,MAAM,YAAY;;;;;;;;;;;kFAIhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
1
+ {"version":3,"file":"HtmlRenderer.vue.d.ts","sourceRoot":"","sources":["../../../../../../src/components/chat/components/document-viewer/html/HtmlRenderer.vue"],"names":[],"mappings":"AAqKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAMjE,KAAK,WAAW,GAAG;IACjB,QAAQ,EAAE,gBAAgB,CAAA;CAC3B,CAAC;AA0DF,iBAAe,IAAI,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAkBjD;AAED,iBAAe,UAAU,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAElD;AAED,iBAAS,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAEzC;AAED,iBAAS,QAAQ,IAAI,IAAI,CAOxB;AAiFD,QAAA,MAAM,YAAY;;;;;;;;;;;kFAIhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -22,8 +22,9 @@ export interface ResolveCropOptions {
22
22
  /** Warm up html2canvas while the user is drawing their selection. */
23
23
  export declare function preloadHtml2Canvas(): void;
24
24
  /**
25
- * Tries the main document first, then any same-origin iframe (the HTML
26
- * renderer's `sandbox="allow-same-origin"` frame) whose box intersects `rect`.
25
+ * Tries the main document first, then any iframe whose box intersects `rect`.
26
+ * Note: HTML previews use `sandbox="allow-scripts"` only, so their
27
+ * `contentDocument` is not reachable — text extraction falls back to html2canvas.
27
28
  */
28
29
  export declare function extractTextInRect(rect: ViewportRect, iframes?: readonly HTMLIFrameElement[]): string;
29
30
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"screenshotCapture.d.ts","sourceRoot":"","sources":["../../../../../src/components/chat/components/document-viewer/screenshotCapture.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AAEzD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,0FAA0F;IAC1F,GAAG,CAAC,EAAE,OAAO,CAAA;CACd;AAMD,qEAAqE;AACrE,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AA+DD;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,YAAY,EAClB,OAAO,GAAE,SAAS,iBAAiB,EAAO,GACzC,MAAM,CAqBR;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,GAAG,MAAM,CA+BzF;AAUD;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAuDtB;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAsBtB;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC7C,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC,CAe1C"}
1
+ {"version":3,"file":"screenshotCapture.d.ts","sourceRoot":"","sources":["../../../../../src/components/chat/components/document-viewer/screenshotCapture.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AAEzD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,0FAA0F;IAC1F,GAAG,CAAC,EAAE,OAAO,CAAA;CACd;AAMD,qEAAqE;AACrE,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AA+DD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,YAAY,EAClB,OAAO,GAAE,SAAS,iBAAiB,EAAO,GACzC,MAAM,CAqBR;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,GAAG,MAAM,CA+BzF;AAUD;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAuDtB;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAsBtB;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC7C,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC,CAe1C"}
@@ -12,6 +12,9 @@ export { default as ChatProvider } from './ChatProvider.vue';
12
12
  export { default as ChatQueue } from './ChatQueue.vue';
13
13
  export { default as ChatReasoning } from './ChatReasoning.vue';
14
14
  export { default as ChatSender } from './ChatSender.vue';
15
+ export { default as ChatSessionSidebar } from './ChatSessionSidebar.vue';
16
+ export { default as ChatSessionStatusMark } from './ChatSessionStatusMark.vue';
17
+ export { default as ChatHistorySearchDialog } from './ChatHistorySearchDialog.vue';
15
18
  export { UiDialog, UiDropdown, UiImage, UiMenu, UiSearchInput, UiSkeleton, UiTabs, ChatDialog, ChatSkillTabs, ChatSkeletonItem, } from '../../ui';
16
19
  export { ChatSkillCard, ChatSkillDetailDialog } from '../../skill';
17
20
  export { default as ChatSkillPanel } from './ChatSkillPanel.vue';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/components/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/components/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import { type ChatApiRequestContext, type ChatCloudConfig } from '../cloudConfig';
2
+ export type { ChatApiRequestContext, ChatApiRequestParams } from '../cloudConfig';
3
+ /** Query for `checkLastSession` — either by client `session_id` (`ga_session_id`) or by host project/module context. */
4
+ export interface LastSessionQuery {
5
+ lessonProjectId?: string;
6
+ project_id?: string[];
7
+ module_id?: string[];
8
+ objectType?: string;
9
+ ga_session_id?: string;
10
+ }
11
+ export interface LastSessionResponse {
12
+ hasSession: boolean;
13
+ sessionId?: string;
14
+ resumeSessionId?: string;
15
+ gaSessionId?: string;
16
+ gaSessionPending?: boolean;
17
+ lastIndex?: number;
18
+ status?: 'RUNNING' | 'DISCONNECTED' | 'DONE' | 'ERROR' | string;
19
+ input?: string;
20
+ createTime?: string;
21
+ answers?: string[];
22
+ }
23
+ /**
24
+ * Sends the built-in `agentChatKeep` request. Returns the raw `Response` — callers
25
+ * should hand the returned Promise straight to `ChatBot.consume()` rather than
26
+ * awaiting it first, so streaming starts as soon as headers land (no extra gap).
27
+ */
28
+ export declare function fetchChatApi(cloud: ChatCloudConfig, ctx: ChatApiRequestContext, signal?: AbortSignal): Promise<Response>;
29
+ /**
30
+ * Looks up a resumable session (client `session_id` via `ga_session_id`, or a host
31
+ * project/module context) so a disconnect/timeout can be continued via `fetchResume`.
32
+ * `objectType` defaults to `cloud.history?.objectType` when the query omits it.
33
+ */
34
+ export declare function checkLastSession(cloud: ChatCloudConfig, query: LastSessionQuery): Promise<LastSessionResponse>;
35
+ /** Resumes an SSE stream from `lastIndex` (`-1` = from the start). Hand the returned Promise straight to `consume()`. */
36
+ export declare function fetchResume(cloud: ChatCloudConfig, sessionId: string, lastIndex?: number, signal?: AbortSignal): Promise<Response>;
37
+ /** Notifies the server to stop generation for `sessionId`. Fire-and-forget from the caller's perspective. */
38
+ export declare function fetchAbortSession(cloud: ChatCloudConfig, sessionId: string): Promise<Response>;
39
+ //# sourceMappingURL=chatApiRequest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chatApiRequest.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/composables/chatApiRequest.ts"],"names":[],"mappings":"AACA,OAAO,EAML,KAAK,qBAAqB,EAE1B,KAAK,eAAe,EACrB,MAAM,gBAAgB,CAAA;AAEvB,YAAY,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAEjF,wHAAwH;AACxH,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,OAAO,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,SAAS,GAAG,cAAc,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAA;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CACnB;AA0CD;;;;GAIG;AACH,wBAAsB,YAAY,CAChC,KAAK,EAAE,eAAe,EACtB,GAAG,EAAE,qBAAqB,EAC1B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,QAAQ,CAAC,CAGnB;AAwBD;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,gBAAgB,GACtB,OAAO,CAAC,mBAAmB,CAAC,CAO9B;AAOD,yHAAyH;AACzH,wBAAsB,WAAW,CAC/B,KAAK,EAAE,eAAe,EACtB,SAAS,EAAE,MAAM,EACjB,SAAS,GAAE,MAAW,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,QAAQ,CAAC,CAOnB;AAOD,6GAA6G;AAC7G,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,eAAe,EACtB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,QAAQ,CAAC,CAEnB"}
@@ -0,0 +1,45 @@
1
+ import { type ChatCloudConfig } from '../cloudConfig';
2
+ /** Aligned with basic-agent-web's `GenericAgentHistoryType.AgentHistoryItem` list shape. */
3
+ export interface ChatHistoryItem {
4
+ id: string;
5
+ name?: string;
6
+ status?: 'RUNNING' | 'DISCONNECTED' | 'DONE' | 'ERROR' | string;
7
+ viewed?: boolean;
8
+ createDate?: string;
9
+ updateDate?: string;
10
+ session_id?: string;
11
+ }
12
+ export interface ChatHistoryDetail extends ChatHistoryItem {
13
+ /** Raw `agent_history` messages — hand to `normalizeAgentHistoryMessages` / `ChatBot.hydrateHistory`. */
14
+ messages: unknown[];
15
+ }
16
+ export interface ChatHistoryPageResult<T> {
17
+ pageNum: number;
18
+ pageSize: number;
19
+ total: number;
20
+ list: T[];
21
+ }
22
+ /** Aligned with basic-agent-web's `useAgentHomeSessions` `PAGE_SIZE`. */
23
+ export declare const DEFAULT_HISTORY_PAGE_SIZE = 50;
24
+ /**
25
+ * Normalizes a raw history list/detail item — tolerates both the camelCase shape
26
+ * (`isViewed`, `createDate`, …) and the snake_case detail-document shape
27
+ * (`is_viewed` / `create_date`, …) documented on basic-agent-web's
28
+ * `GenericAgentHistoryType.AgentHistoryItem`. `viewed` defaults to `true` when
29
+ * absent so older records without the field don't all show as unread.
30
+ */
31
+ export declare function normalizeHistoryItem(raw: Record<string, unknown>): ChatHistoryItem;
32
+ /** GET `cloud.history.findByUserIdUrl` (or the default), `objectType` always from `cloud.history.objectType`. Extra `cloud.history.params` are merged into the query. */
33
+ export declare function findByUserId(cloud: ChatCloudConfig, params: {
34
+ pageNum: number;
35
+ pageSize?: number;
36
+ }): Promise<ChatHistoryPageResult<ChatHistoryItem>>;
37
+ /** GET `cloud.history.findBySessionIdUrl` (or the default). Returns `null` when the session isn't found. */
38
+ export declare function findBySessionId(cloud: ChatCloudConfig, sessionId: string): Promise<ChatHistoryDetail | null>;
39
+ /** GET `cloud.history.viewedUrl` (or the default) to mark a session read/unread. */
40
+ export declare function updateViewed(cloud: ChatCloudConfig, sessionId: string, viewed?: boolean): Promise<void>;
41
+ /** POST `cloud.history.renameUrl` (or the default). Query is only `sessionId` + `name`. */
42
+ export declare function renameHistory(cloud: ChatCloudConfig, sessionId: string, name: string): Promise<void>;
43
+ /** GET `cloud.history.deleteUrl` (or the default). Query is only `sessionId`. */
44
+ export declare function deleteHistory(cloud: ChatCloudConfig, sessionId: string): Promise<void>;
45
+ //# sourceMappingURL=chatHistoryApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chatHistoryApi.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/composables/chatHistoryApi.ts"],"names":[],"mappings":"AAEA,OAAO,EAOL,KAAK,eAAe,EACrB,MAAM,gBAAgB,CAAA;AAEvB,4FAA4F;AAC5F,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,SAAS,GAAG,cAAc,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAA;IAC/D,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,iBAAkB,SAAQ,eAAe;IACxD,yGAAyG;IACzG,QAAQ,EAAE,OAAO,EAAE,CAAA;CACpB;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACtC,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,CAAC,EAAE,CAAA;CACV;AAED,yEAAyE;AACzE,eAAO,MAAM,yBAAyB,KAAK,CAAA;AAyD3C;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,eAAe,CAWlF;AAED,yKAAyK;AACzK,wBAAsB,YAAY,CAChC,KAAK,EAAE,eAAe,EACtB,MAAM,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7C,OAAO,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC,CA4BjD;AAED,4GAA4G;AAC5G,wBAAsB,eAAe,CACnC,KAAK,EAAE,eAAe,EACtB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAcnC;AAED,oFAAoF;AACpF,wBAAsB,YAAY,CAChC,KAAK,EAAE,eAAe,EACtB,SAAS,EAAE,MAAM,EACjB,MAAM,UAAO,GACZ,OAAO,CAAC,IAAI,CAAC,CAGf;AAOD,2FAA2F;AAC3F,wBAAsB,aAAa,CACjC,KAAK,EAAE,eAAe,EACtB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAIf;AAED,iFAAiF;AACjF,wBAAsB,aAAa,CAAC,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAI5F"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * 24-hex id aligned with basic-agent-web's client-side mongoId generator:
3
+ * 8-hex Unix timestamp (seconds) + 16 random hex chars. Not a real Mongo
4
+ * ObjectId (no machine/pid/counter component) — good enough for a client-
5
+ * generated `session_id` the server treats as an opaque key.
6
+ */
7
+ export declare function generateObjectId(): string;
8
+ //# sourceMappingURL=chatSessionId.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chatSessionId.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/composables/chatSessionId.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CASzC"}
@@ -14,6 +14,8 @@ export interface ParsedModelId {
14
14
  label: string;
15
15
  /** Trailing YYMMDD build stamp when present, e.g. `260628`. */
16
16
  buildTag?: string;
17
+ /** Trailing 预览版 / 正式版 when the API key uses a display name. */
18
+ editionTag?: string;
17
19
  }
18
20
  /** Resolve a display group for provider-prefixed model ids. */
19
21
  export declare function resolveModelGroup(id: string): string;
@@ -1 +1 @@
1
- {"version":3,"file":"fetchModelList.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/composables/fetchModelList.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAsB,MAAM,UAAU,CAAA;AAGzE;;;GAGG;AACH,eAAO,MAAM,sBAAsB,8CAA8C,CAAA;AAEjF,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;AAEhE,MAAM,WAAW,aAAa;IAC5B,uEAAuE;IACvE,KAAK,EAAE,MAAM,CAAA;IACb,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AA+BD,+DAA+D;AAC/D,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAOpD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,CAmDtD;AAED,mEAAmE;AACnE,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAEnD;AAOD,qDAAqD;AACrD,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAO3E;AAcD,yDAAyD;AACzD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,qBAAqB,EAAE,CAkB3E;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAClC,GAAG,GAAE,MAA+B,EACpC,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAOlC"}
1
+ {"version":3,"file":"fetchModelList.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/composables/fetchModelList.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAsB,MAAM,UAAU,CAAA;AAGzE;;;GAGG;AACH,eAAO,MAAM,sBAAsB,8CAA8C,CAAA;AAEjF,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;AAEhE,MAAM,WAAW,aAAa;IAC5B,uEAAuE;IACvE,KAAK,EAAE,MAAM,CAAA;IACb,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAiCD,+DAA+D;AAC/D,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAUpD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,CA2DtD;AAED,mEAAmE;AACnE,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAEnD;AASD,qDAAqD;AACrD,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAO3E;AAcD,yDAAyD;AACzD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,qBAAqB,EAAE,CAkB3E;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAClC,GAAG,GAAE,MAA+B,EACpC,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAOlC"}
@@ -0,0 +1,3 @@
1
+ export declare function bumpChatNewSession(): void;
2
+ export declare function useChatNewSessionEpoch(): import("vue").Ref<number, number>;
3
+ //# sourceMappingURL=useChatNewSessionEpoch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useChatNewSessionEpoch.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/composables/useChatNewSessionEpoch.ts"],"names":[],"mappings":"AASA,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED,wBAAgB,sBAAsB,sCAErC"}
@@ -0,0 +1,58 @@
1
+ import { type ComputedRef, type MaybeRefOrGetter, type Ref } from 'vue';
2
+ import type { ChatCloudConfig } from '../cloudConfig';
3
+ import { type ChatSessionListItem, type ChatSessionRunStatus } from '../chatSessionSidebarTypes';
4
+ export interface UseChatSessionHistoryOptions {
5
+ cloud: Ref<ChatCloudConfig | undefined> | ComputedRef<ChatCloudConfig | undefined>;
6
+ pageSize?: number;
7
+ /** Fallback title for items with no `name` from the backend. */
8
+ defaultTitle?: string;
9
+ /** Poll interval while any session is `running`. Default `4000`. */
10
+ runningPollMs?: number;
11
+ /**
12
+ * Currently open session. When this id leaves `running` (stream end or poll),
13
+ * it is auto-marked viewed so the unread blue dot clears without re-clicking.
14
+ */
15
+ activeSessionId?: MaybeRefOrGetter<string | undefined>;
16
+ }
17
+ /**
18
+ * `cloud`-driven history for `ChatSessionSidebar`: initial `findByUserId` fetch,
19
+ * `loadMore()` pagination, a silent 4s poll of page 1 while any session is
20
+ * `running` (diff-updates status/viewed only, no loading flicker), and an
21
+ * `upsertOptimisticSession` escape hatch for hosts to reflect a just-sent message
22
+ * before the backend has written a history row yet.
23
+ *
24
+ * When `activeSessionId` is provided, a session that leaves `running` while it is
25
+ * the open session is auto-`markViewed` so the unread blue dot clears in place.
26
+ */
27
+ export declare function useChatSessionHistory(options: UseChatSessionHistoryOptions): {
28
+ sessions: Ref<{
29
+ id: string;
30
+ title: string;
31
+ time: number;
32
+ status: ChatSessionRunStatus;
33
+ viewed: boolean;
34
+ animateIn?: boolean | undefined;
35
+ }[], ChatSessionListItem[] | {
36
+ id: string;
37
+ title: string;
38
+ time: number;
39
+ status: ChatSessionRunStatus;
40
+ viewed: boolean;
41
+ animateIn?: boolean | undefined;
42
+ }[]>;
43
+ loading: Ref<boolean, boolean>;
44
+ hasMore: Ref<boolean, boolean>;
45
+ total: Ref<number, number>;
46
+ refresh: () => Promise<void>;
47
+ loadMore: () => Promise<void>;
48
+ upsertOptimisticSession: (item: {
49
+ id: string;
50
+ title: string;
51
+ }) => void;
52
+ patchSessionStatus: (id: string, status: ChatSessionRunStatus) => void;
53
+ markViewed: (sessionId: string) => Promise<void>;
54
+ renameSession: (id: string, name: string) => Promise<boolean>;
55
+ deleteSession: (id: string) => Promise<boolean>;
56
+ };
57
+ export type UseChatSessionHistoryReturn = ReturnType<typeof useChatSessionHistory>;
58
+ //# sourceMappingURL=useChatSessionHistory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useChatSessionHistory.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/composables/useChatSessionHistory.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,GAAG,EACT,MAAM,KAAK,CAAA;AACZ,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AASrD,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EAC1B,MAAM,4BAA4B,CAAA;AAwBnC,MAAM,WAAW,4BAA4B;IAC3C,KAAK,EAAE,GAAG,CAAC,eAAe,GAAG,SAAS,CAAC,GAAG,WAAW,CAAC,eAAe,GAAG,SAAS,CAAC,CAAA;IAClF,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,gEAAgE;IAChE,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,oEAAoE;IACpE,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;OAGG;IACH,eAAe,CAAC,EAAE,gBAAgB,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;CACvD;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,4BAA4B;;;;;;;;;;;;;;;;;;;mBAsD/C,OAAO,CAAC,IAAI,CAAC;oBAIZ,OAAO,CAAC,IAAI,CAAC;oCA+BD;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAG,IAAI;6BAwB3C,MAAM,UAAU,oBAAoB,KAAG,IAAI;4BAatC,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;wBAgB1B,MAAM,QAAQ,MAAM,KAAG,OAAO,CAAC,OAAO,CAAC;wBAwBvC,MAAM,KAAG,OAAO,CAAC,OAAO,CAAC;EAuE3D;AAED,MAAM,MAAM,2BAA2B,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAA"}
@@ -0,0 +1,22 @@
1
+ import { type Ref } from 'vue';
2
+ import type { ChatCloudConfig } from '../cloudConfig';
3
+ import type { ChatBotExpose } from '../types';
4
+ export interface UseChatSessionSwitchOptions {
5
+ cloud: Ref<ChatCloudConfig>;
6
+ chatBotRef: Ref<ChatBotExpose | null>;
7
+ sessionIdModel: Ref<string | null>;
8
+ mainRef: Ref<HTMLElement | null>;
9
+ detachCurrentStream: () => void;
10
+ }
11
+ export declare function useChatSessionSwitch(options: UseChatSessionSwitchOptions): {
12
+ boundGaSessionId: Ref<string, string>;
13
+ isLoadingSession: Ref<boolean, boolean>;
14
+ skeletonHostRef: Ref<HTMLElement | undefined, HTMLElement | undefined>;
15
+ skeletonBottomPx: Ref<number, number>;
16
+ isAlreadyBoundSession: (id: string) => boolean;
17
+ loadSessionById: (sessionId: string) => Promise<void>;
18
+ clearForNewSession: () => void;
19
+ syncChatToSession: (sessionId: string | null, prev?: string | null) => Promise<void>;
20
+ updateSkeletonBottom: () => void;
21
+ };
22
+ //# sourceMappingURL=useChatSessionSwitch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useChatSessionSwitch.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/composables/useChatSessionSwitch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AAE7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAErD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAE7C,MAAM,WAAW,2BAA2B;IAC1C,KAAK,EAAE,GAAG,CAAC,eAAe,CAAC,CAAA;IAC3B,UAAU,EAAE,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,CAAA;IACrC,cAAc,EAAE,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IAClC,OAAO,EAAE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;IAChC,mBAAmB,EAAE,MAAM,IAAI,CAAA;CAChC;AAUD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,2BAA2B;;;;;gCAcpC,MAAM,KAAG,OAAO;iCAmFT,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;8BAZjC,IAAI;mCAiHS,MAAM,GAAG,IAAI,SAAS,MAAM,GAAG,IAAI,KAAG,OAAO,CAAC,IAAI,CAAC;gCAjL9D,IAAI;EA4MtC"}
@@ -0,0 +1,14 @@
1
+ import type { ChatSessionHistoryGroup } from '../chatSessionSidebarTypes';
2
+ /**
3
+ * Session group expand: new groups default expanded; user collapse persists across list refreshes.
4
+ * When collapsed, the active session remains visible.
5
+ */
6
+ export declare function useHistoryGroupExpand(getGroups: () => ChatSessionHistoryGroup[], getActiveSessionId?: () => string): {
7
+ expandedGroupIds: import("vue").Ref<string[], string[]>;
8
+ isGroupExpanded: (groupId: string) => boolean;
9
+ toggleGroup: (groupId: string) => void;
10
+ expandAll: () => void;
11
+ hasExpandedGroup: import("vue").ComputedRef<boolean>;
12
+ visibleSessionsOf: (group: ChatSessionHistoryGroup) => import("..").ChatSessionListItem[];
13
+ };
14
+ //# sourceMappingURL=useHistoryGroupExpand.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useHistoryGroupExpand.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/composables/useHistoryGroupExpand.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAA;AAEzE;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,uBAAuB,EAAE,EAC1C,kBAAkB,GAAE,MAAM,MAAiB;;+BAuBT,MAAM;2BAEV,MAAM;;;+BAgBF,uBAAuB;EAe1D"}
@@ -10,8 +10,8 @@ type __VLS_Slots = {} & {
10
10
  default?: (props: typeof __VLS_1) => any;
11
11
  };
12
12
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
13
- side: "bottom" | "top" | "right";
14
13
  disabled: boolean;
14
+ side: "bottom" | "top" | "right";
15
15
  delayMs: number;
16
16
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
17
17
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/harness/Tooltip.vue"],"names":[],"mappings":"AAyNA,OAAO,6BAA6B,CAAA;AAIpC,KAAK,WAAW,GAAG;IACf,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,QAAQ,GAAG,KAAK,GAAG,OAAO,CAAA;IACjC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAC;AA4MJ,QAAA,IAAI,OAAO,IAAW,CAAE;AACxB,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AAQ/C,QAAA,MAAM,UAAU;UAzNL,QAAQ,GAAG,KAAK,GAAG,OAAO;cAEtB,OAAO;aADR,MAAM;6EA2NlB,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AAWzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
1
+ {"version":3,"file":"Tooltip.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/harness/Tooltip.vue"],"names":[],"mappings":"AAyNA,OAAO,6BAA6B,CAAA;AAIpC,KAAK,WAAW,GAAG;IACf,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,QAAQ,GAAG,KAAK,GAAG,OAAO,CAAA;IACjC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAC;AA4MJ,QAAA,IAAI,OAAO,IAAW,CAAE;AACxB,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AAQ/C,QAAA,MAAM,UAAU;cAvND,OAAO;UAFX,QAAQ,GAAG,KAAK,GAAG,OAAO;aACvB,MAAM;6EA2NlB,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AAWzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
@@ -1,3 +1,4 @@
1
+ import type { OutlineNode } from './components/document-viewer/adapter';
1
2
  export declare function escapeHtmlAttribute(value: string): string;
2
3
  /**
3
4
  * Remote HTML is often served as `application/octet-stream` with
@@ -6,4 +7,16 @@ export declare function escapeHtmlAttribute(value: string): string;
6
7
  * relative CSS/images still resolve against the original URL.
7
8
  */
8
9
  export declare function injectHtmlBaseHref(html: string, src: string): string;
10
+ /**
11
+ * Assign stable heading ids, build the outline, and inject a scroll bridge so
12
+ * the host can drive `scrollToOutline` without `allow-same-origin`.
13
+ *
14
+ * Existing heading `id`s are kept — many interactive HTML artifacts fill
15
+ * `#prob-title` / similar anchors from a data island on load, and overwriting
16
+ * those ids leaves the preview visually empty.
17
+ */
18
+ export declare function annotateHtmlForPreview(html: string): {
19
+ html: string;
20
+ outline: OutlineNode[];
21
+ };
9
22
  //# sourceMappingURL=htmlPreview.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"htmlPreview.d.ts","sourceRoot":"","sources":["../../../src/components/chat/htmlPreview.ts"],"names":[],"mappings":"AAGA,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOzD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAgBpE"}
1
+ {"version":3,"file":"htmlPreview.d.ts","sourceRoot":"","sources":["../../../src/components/chat/htmlPreview.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAA;AAiBvE,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOzD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAgBpE;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,WAAW,EAAE,CAAA;CAAE,CA+B7F"}
@@ -1,6 +1,4 @@
1
- import { type Component } from 'vue';
2
1
  type __VLS_Props = {
3
- icon: Component;
4
2
  size?: number | string;
5
3
  };
6
4
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
@@ -8,4 +6,4 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {
8
6
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
7
  declare const _default: typeof __VLS_export;
10
8
  export default _default;
11
- //# sourceMappingURL=ChatTipMenuLucideIcon.vue.d.ts.map
9
+ //# sourceMappingURL=ChatArtifactFilesIcon.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatArtifactFilesIcon.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/icons/ChatArtifactFilesIcon.vue"],"names":[],"mappings":"AAuCA,KAAK,WAAW,GAAG;IACf,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CACvB,CAAC;AA+DJ,QAAA,MAAM,YAAY;UAhEP,MAAM,GAAG,MAAM;6EAmExB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -0,0 +1,10 @@
1
+ type __VLS_Props = {
2
+ src: string;
3
+ size?: number | string;
4
+ };
5
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
6
+ size: number | string;
7
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
8
+ declare const _default: typeof __VLS_export;
9
+ export default _default;
10
+ //# sourceMappingURL=ChatTipMenuAssetIcon.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatTipMenuAssetIcon.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/icons/ChatTipMenuAssetIcon.vue"],"names":[],"mappings":"AAyBA,KAAK,WAAW,GAAG;IACf,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CACvB,CAAC;AAqCJ,QAAA,MAAM,YAAY;UAtCP,MAAM,GAAG,MAAM;6EAyCxB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -1,9 +1,7 @@
1
1
  type __VLS_Props = {
2
2
  size?: number | string;
3
3
  };
4
- declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
5
- size: number | string;
6
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
4
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
7
5
  declare const _default: typeof __VLS_export;
8
6
  export default _default;
9
7
  //# sourceMappingURL=ChatTipMenuExpertIcon.vue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChatTipMenuExpertIcon.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/icons/ChatTipMenuExpertIcon.vue"],"names":[],"mappings":"AAiCA,KAAK,WAAW,GAAG;IACf,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CACvB,CAAC;AA2CJ,QAAA,MAAM,YAAY;UA5CP,MAAM,GAAG,MAAM;6EA+CxB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
1
+ {"version":3,"file":"ChatTipMenuExpertIcon.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/icons/ChatTipMenuExpertIcon.vue"],"names":[],"mappings":"AAkBA,KAAK,WAAW,GAAG;IACjB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CACvB,CAAC;AAoCF,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -7,6 +7,7 @@ export { default as ChatSenderClickIcon } from './ChatSenderClickIcon.vue';
7
7
  export { default as ChatSenderLinkIcon } from './ChatSenderLinkIcon.vue';
8
8
  export { default as ChatSenderAtIcon } from './ChatSenderAtIcon.vue';
9
9
  export { default as ChatFileDropIcon } from './ChatFileDropIcon.vue';
10
+ export { default as ChatArtifactFilesIcon } from './ChatArtifactFilesIcon.vue';
10
11
  export { chatTipMenuItemIcons } from './tipMenuItemIcons';
11
12
  export { default as ChatTipMenuExpertIcon } from './ChatTipMenuExpertIcon.vue';
12
13
  export { default as ChatTipMenuSkillIcon } from './ChatTipMenuSkillIcon.vue';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/icons/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAC5E,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AACtE,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAC5E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AACxE,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAC1E,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAC1E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AACxE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACpE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAC9E,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAC5E,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,gCAAgC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/icons/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAC5E,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AACtE,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAC5E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AACxE,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAC1E,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAC1E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AACxE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACpE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACpE,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAC9E,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAC5E,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,gCAAgC,CAAA"}
@@ -10,9 +10,7 @@ export declare const chatTipMenuItemIcons: {
10
10
  size?: number | string;
11
11
  }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{
12
12
  size?: number | string;
13
- }> & Readonly<{}>, {
14
- size: number | string;
15
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>>;
13
+ }> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>>;
16
14
  skill: import("vue").Raw<import("vue").DefineComponent<{
17
15
  size?: number | string;
18
16
  }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{
@@ -1 +1 @@
1
- {"version":3,"file":"tipMenuItemIcons.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/icons/tipMenuItemIcons.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;CAKI,CAAA"}
1
+ {"version":3,"file":"tipMenuItemIcons.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/icons/tipMenuItemIcons.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;CAKI,CAAA"}
@@ -1,6 +1,7 @@
1
1
  export { default as ChatMessage } from './components/ChatMessage.vue';
2
2
  export { default as ChatSender } from './components/ChatSender.vue';
3
3
  export { default as ChatBot } from './ChatBot.vue';
4
+ export { default as ChatApp } from './ChatApp.vue';
4
5
  export * from './components';
5
6
  export { ChatSenderAppendIcon, ChatSenderAtIcon, ChatSenderCheckIcon, ChatSenderClickIcon, ChatSenderLinkIcon, ChatSenderMicIcon, ChatSenderMicOffIcon, ChatSenderMoreIcon, } from './icons';
6
7
  export { ACTION_BAR_SYSTEM_PROMPT, ARTIFACT_BLOCK_SYSTEM_PROMPT, ASK_USER_FORM_SYSTEM_PROMPT, CHART_BLOCK_SYSTEM_PROMPT, } from './mdoc/builtInRegistry';
@@ -25,15 +26,26 @@ export { getChatFileIconSrc } from './fileIcons';
25
26
  export { getFilesFromDataTransfer, hasFileDrag } from './fileDrop';
26
27
  export { editChatQueueItem, enqueueChatPayload, moveChatQueueItem, removeChatQueueItem, } from './chatQueue';
27
28
  export { resolveChatAttachmentLimits, useChatContext } from './chatContext';
29
+ export { DEFAULT_ABORT_URL, DEFAULT_CHAT_API_URL, DEFAULT_HISTORY_FIND_BY_SESSION_URL, DEFAULT_HISTORY_FIND_BY_USER_URL, DEFAULT_HISTORY_VIEWED_URL, DEFAULT_HISTORY_RENAME_URL, DEFAULT_HISTORY_DELETE_URL, DEFAULT_LAST_SESSION_URL, DEFAULT_RESUME_URL, buildCloudAuthHeaders, mergeChatCloudConfig, resolveCloudHeaders, toSkillFetchConfig, toUploadConfig, } from './cloudConfig';
30
+ export type { ChatApiRequestContext, ChatApiRequestParams, ChatCloudAuth, ChatCloudChatConfig, ChatCloudConfig, ChatCloudHistoryConfig, ChatCloudSkillsConfig, ChatCloudUploadConfig, } from './cloudConfig';
31
+ export { checkLastSession, fetchAbortSession, fetchChatApi, fetchResume, } from './composables/chatApiRequest';
32
+ export type { LastSessionQuery, LastSessionResponse } from './composables/chatApiRequest';
33
+ export { generateObjectId } from './composables/chatSessionId';
34
+ export { DEFAULT_HISTORY_PAGE_SIZE, findByUserId, findBySessionId, normalizeHistoryItem, updateViewed, renameHistory, deleteHistory, } from './composables/chatHistoryApi';
35
+ export type { ChatHistoryDetail, ChatHistoryItem, ChatHistoryPageResult, } from './composables/chatHistoryApi';
28
36
  export { DEFAULT_MODEL_LIST_URL, fetchModelList, formatModelLabel, formatModelPricingTooltip, mapModelListResponse, parseModelId, resolveModelGroup, } from './composables/fetchModelList';
29
37
  export type { ModelListPricing, ModelListResponse, ParsedModelId, } from './composables/fetchModelList';
30
38
  export { getQiniuUploadCredential, uploadFile, uploadFileToQiniu } from './qiniuUpload';
31
39
  export { getChatPreviewKind, registerChatPreviewRenderer, resolveChatPreviewRenderer, } from './previewRenderers';
32
- export { resolveArtifactOpenStrategy, resolveArtifactPreviewKind, artifactToChatResource, openArtifactInNewTab, downloadArtifact, isTextArtifactType, } from './mdoc';
33
- export type { ArtifactOpenMode } from './mdoc';
40
+ export { resolveArtifactOpenStrategy, resolveArtifactPreviewKind, artifactToChatResource, openArtifactInNewTab, downloadArtifact, isTextArtifactType, collectSessionArtifacts, sessionArtifactToAction, } from './mdoc';
41
+ export type { ArtifactOpenMode, SessionArtifact } from './mdoc';
34
42
  export { registerToolRenderer, resolveToolRenderer } from './toolRenderers';
35
43
  export { classifyChatError } from './chatErrors';
36
44
  export type { ChatErrorKind, ClassifiedChatError } from './chatErrors';
37
45
  export { normalizeAgentHistoryMessages, normalizeHistoryResourceFile } from './hydrateHistory';
38
46
  export type { HydrateHistoryInput, HydrateHistoryOptions, HydrateHistorySession, } from './hydrateHistory';
47
+ export { DEFAULT_SIDEBAR_NAV_ITEMS, DEFAULT_SIDEBAR_PERSIST_KEY, DEFAULT_SIDEBAR_TEXTS, groupSessionsByTime, mapHistoryItemToSession, parseSessionRunStatus, } from './chatSessionSidebarTypes';
48
+ export type { ChatSessionHistoryGroup, ChatSessionListItem, ChatSessionNavItem, ChatSessionRunStatus, ChatSidebarTexts, } from './chatSessionSidebarTypes';
49
+ export { useChatSessionHistory } from './composables/useChatSessionHistory';
50
+ export type { UseChatSessionHistoryOptions, UseChatSessionHistoryReturn, } from './composables/useChatSessionHistory';
39
51
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/chat/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/chat/index.ts"],"names":[],"mappings":"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"}
@@ -2,12 +2,15 @@ import type { ConversationUiAction } from '../types';
2
2
  import type { MdocComponentNode } from './parser';
3
3
  type __VLS_Props = {
4
4
  node: MdocComponentNode;
5
+ variant?: 'inline' | 'list';
5
6
  };
6
7
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
7
8
  action: (payload: ConversationUiAction) => any;
8
9
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
9
10
  onAction?: ((payload: ConversationUiAction) => any) | undefined;
10
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
11
+ }>, {
12
+ variant: "inline" | "list";
13
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
11
14
  declare const _default: typeof __VLS_export;
12
15
  export default _default;
13
16
  //# sourceMappingURL=ArtifactBlock.vue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ArtifactBlock.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/ArtifactBlock.vue"],"names":[],"mappings":"AAuVA,OAAO,KAAK,EAAE,oBAAoB,EAAoB,MAAM,UAAU,CAAA;AAQtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAKjD,KAAK,WAAW,GAAG;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE,CAAC;AAsQ/C,QAAA,MAAM,YAAY;;;;kFAGhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
1
+ {"version":3,"file":"ArtifactBlock.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/chat/mdoc/ArtifactBlock.vue"],"names":[],"mappings":"AAgfA,OAAO,KAAK,EAAE,oBAAoB,EAAoB,MAAM,UAAU,CAAA;AAQtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAKjD,KAAK,WAAW,GAAG;IACf,IAAI,EAAE,iBAAiB,CAAA;IACvB,OAAO,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;CAC5B,CAAC;AA2TJ,QAAA,MAAM,YAAY;;;;;aA5TJ,QAAQ,GAAG,MAAM;6EAgU7B,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}