@hkyhy/marsun-components-core 0.1.52 → 0.1.53
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/README.md +23 -15
- package/dist/agent-hub.d.ts +11 -0
- package/dist/agent-hub.js +144 -0
- package/dist/agent-hub.js.map +1 -0
- package/dist/components/AgentHub/Chat/Action/CreateButton.js +3 -3
- package/dist/components/AgentHub/Chat/Action/ManageActionButtons.js +4 -4
- package/dist/components/AgentHub/Chat/Action/SessionActionButtons.js +4 -4
- package/dist/components/AgentHub/Chat/Detail/ChatFollowUpSuggestions/index.js +29 -27
- package/dist/components/AgentHub/Chat/Detail/ChatFollowUpSuggestions/index.js.map +1 -1
- package/dist/components/AgentHub/Chat/Detail/ChatInput/index.js +19 -18
- package/dist/components/AgentHub/Chat/Detail/ChatInput/index.js.map +1 -1
- package/dist/components/AgentHub/Chat/Detail/CitationPanel/index.js +18 -17
- package/dist/components/AgentHub/Chat/Detail/CitationPanel/index.js.map +1 -1
- package/dist/components/AgentHub/Chat/Detail/MessageActions/index.js +23 -19
- package/dist/components/AgentHub/Chat/Detail/MessageActions/index.js.map +1 -1
- package/dist/components/AgentHub/Chat/Detail/MessageItem/index.js +23 -21
- package/dist/components/AgentHub/Chat/Detail/MessageItem/index.js.map +1 -1
- package/dist/components/AgentHub/Chat/List/ChatCard/index.js +7 -7
- package/dist/components/AgentHub/Chat/List/SessionSidebar/index.js +19 -17
- package/dist/components/AgentHub/Chat/List/SessionSidebar/index.js.map +1 -1
- package/dist/components/AgentHub/KnowledgeBase/Action/CreateButton.js +3 -3
- package/dist/components/AgentHub/KnowledgeBase/Action/ManageActionButtons.js +1 -1
- package/dist/components/AgentHub/KnowledgeBase/Detail/DocumentTable/index.js +16 -15
- package/dist/components/AgentHub/KnowledgeBase/Detail/DocumentTable/index.js.map +1 -1
- package/dist/components/AgentHub/KnowledgeBase/Detail/ParseStatusTag/index.js +7 -7
- package/dist/components/AgentHub/KnowledgeBase/List/KnowledgeCard/index.js +8 -8
- package/dist/components/AgentHub/Report/Detail/ReportHtmlPreview/index.js +1 -1
- package/dist/components/Auth/UserProfileCard/UserProfileCard.js +7 -7
- package/dist/components/File/FileItem/index.js +22 -20
- package/dist/components/File/FileItem/index.js.map +1 -1
- package/dist/components/File/FilePreview/index.js +11 -11
- package/dist/components/File/fileDisplay.js +41 -36
- package/dist/components/File/fileDisplay.js.map +1 -1
- package/dist/components/Filter/CommonFilter/index.js +20 -18
- package/dist/components/Filter/CommonFilter/index.js.map +1 -1
- package/dist/components/Filter/FilterSelect/index.js +90 -89
- package/dist/components/Filter/FilterSelect/index.js.map +1 -1
- package/dist/components/Filter/FilterTreeSelect/index.js +51 -48
- package/dist/components/Filter/FilterTreeSelect/index.js.map +1 -1
- package/dist/components/Filter/FilterTrigger/index.js +13 -11
- package/dist/components/Filter/FilterTrigger/index.js.map +1 -1
- package/dist/components/Form/PersonOptionRow/index.js +4 -4
- package/dist/components/Icons/ArrowLeft.d.ts +1 -0
- package/dist/components/Icons/ArrowLeft.js +7 -0
- package/dist/components/Icons/ArrowLeft.js.map +1 -0
- package/dist/components/Icons/ArrowLeftRight.d.ts +1 -0
- package/dist/components/Icons/ArrowLeftRight.js +7 -0
- package/dist/components/Icons/ArrowLeftRight.js.map +1 -0
- package/dist/components/Icons/BarChart3.d.ts +1 -0
- package/dist/components/Icons/BarChart3.js +7 -0
- package/dist/components/Icons/BarChart3.js.map +1 -0
- package/dist/components/Icons/Bell.d.ts +1 -0
- package/dist/components/Icons/Bell.js +7 -0
- package/dist/components/Icons/Bell.js.map +1 -0
- package/dist/components/Icons/BookOpen.d.ts +1 -0
- package/dist/components/Icons/BookOpen.js +7 -0
- package/dist/components/Icons/BookOpen.js.map +1 -0
- package/dist/components/Icons/Bot.d.ts +1 -0
- package/dist/components/Icons/Bot.js +7 -0
- package/dist/components/Icons/Bot.js.map +1 -0
- package/dist/components/Icons/Check.d.ts +1 -0
- package/dist/components/Icons/Check.js +7 -0
- package/dist/components/Icons/Check.js.map +1 -0
- package/dist/components/Icons/ChevronDown.d.ts +1 -0
- package/dist/components/Icons/ChevronDown.js +7 -0
- package/dist/components/Icons/ChevronDown.js.map +1 -0
- package/dist/components/Icons/ChevronLeft.d.ts +1 -0
- package/dist/components/Icons/ChevronLeft.js +7 -0
- package/dist/components/Icons/ChevronLeft.js.map +1 -0
- package/dist/components/Icons/ChevronRight.d.ts +1 -0
- package/dist/components/Icons/ChevronRight.js +7 -0
- package/dist/components/Icons/ChevronRight.js.map +1 -0
- package/dist/components/Icons/ChevronUp.d.ts +1 -0
- package/dist/components/Icons/ChevronUp.js +7 -0
- package/dist/components/Icons/ChevronUp.js.map +1 -0
- package/dist/components/Icons/CircleAlert.d.ts +1 -0
- package/dist/components/Icons/CircleAlert.js +7 -0
- package/dist/components/Icons/CircleAlert.js.map +1 -0
- package/dist/components/Icons/CircleCheck.d.ts +1 -0
- package/dist/components/Icons/CircleCheck.js +7 -0
- package/dist/components/Icons/CircleCheck.js.map +1 -0
- package/dist/components/Icons/CircleHelp.d.ts +1 -0
- package/dist/components/Icons/CircleHelp.js +7 -0
- package/dist/components/Icons/CircleHelp.js.map +1 -0
- package/dist/components/Icons/CirclePlay.d.ts +1 -0
- package/dist/components/Icons/CirclePlay.js +7 -0
- package/dist/components/Icons/CirclePlay.js.map +1 -0
- package/dist/components/Icons/CircleX.d.ts +1 -0
- package/dist/components/Icons/CircleX.js +7 -0
- package/dist/components/Icons/CircleX.js.map +1 -0
- package/dist/components/Icons/ClipboardCheck.d.ts +1 -0
- package/dist/components/Icons/ClipboardCheck.js +7 -0
- package/dist/components/Icons/ClipboardCheck.js.map +1 -0
- package/dist/components/Icons/Clock.d.ts +1 -0
- package/dist/components/Icons/Clock.js +7 -0
- package/dist/components/Icons/Clock.js.map +1 -0
- package/dist/components/Icons/CloudDownload.d.ts +1 -0
- package/dist/components/Icons/CloudDownload.js +7 -0
- package/dist/components/Icons/CloudDownload.js.map +1 -0
- package/dist/components/Icons/CloudUpload.d.ts +1 -0
- package/dist/components/Icons/CloudUpload.js +7 -0
- package/dist/components/Icons/CloudUpload.js.map +1 -0
- package/dist/components/Icons/Code.d.ts +1 -0
- package/dist/components/Icons/Code.js +7 -0
- package/dist/components/Icons/Code.js.map +1 -0
- package/dist/components/Icons/Copy.d.ts +1 -0
- package/dist/components/Icons/Copy.js +7 -0
- package/dist/components/Icons/Copy.js.map +1 -0
- package/dist/components/Icons/Crown.d.ts +1 -0
- package/dist/components/Icons/Crown.js +7 -0
- package/dist/components/Icons/Crown.js.map +1 -0
- package/dist/components/Icons/Database.d.ts +1 -0
- package/dist/components/Icons/Database.js +7 -0
- package/dist/components/Icons/Database.js.map +1 -0
- package/dist/components/Icons/Download.d.ts +1 -0
- package/dist/components/Icons/Download.js +7 -0
- package/dist/components/Icons/Download.js.map +1 -0
- package/dist/components/Icons/Eye.d.ts +1 -0
- package/dist/components/Icons/Eye.js +7 -0
- package/dist/components/Icons/Eye.js.map +1 -0
- package/dist/components/Icons/EyeOff.d.ts +1 -0
- package/dist/components/Icons/EyeOff.js +7 -0
- package/dist/components/Icons/EyeOff.js.map +1 -0
- package/dist/components/Icons/File.d.ts +1 -0
- package/dist/components/Icons/File.js +7 -0
- package/dist/components/Icons/File.js.map +1 -0
- package/dist/components/Icons/FileArchive.d.ts +1 -0
- package/dist/components/Icons/FileArchive.js +7 -0
- package/dist/components/Icons/FileArchive.js.map +1 -0
- package/dist/components/Icons/FileImage.d.ts +1 -0
- package/dist/components/Icons/FileImage.js +7 -0
- package/dist/components/Icons/FileImage.js.map +1 -0
- package/dist/components/Icons/FileSpreadsheet.d.ts +1 -0
- package/dist/components/Icons/FileSpreadsheet.js +7 -0
- package/dist/components/Icons/FileSpreadsheet.js.map +1 -0
- package/dist/components/Icons/FileText.d.ts +1 -0
- package/dist/components/Icons/FileText.js +7 -0
- package/dist/components/Icons/FileText.js.map +1 -0
- package/dist/components/Icons/Flag.d.ts +1 -0
- package/dist/components/Icons/Flag.js +7 -0
- package/dist/components/Icons/Flag.js.map +1 -0
- package/dist/components/Icons/Flame.d.ts +1 -0
- package/dist/components/Icons/Flame.js +7 -0
- package/dist/components/Icons/Flame.js.map +1 -0
- package/dist/components/Icons/Folder.d.ts +1 -0
- package/dist/components/Icons/Folder.js +7 -0
- package/dist/components/Icons/Folder.js.map +1 -0
- package/dist/components/Icons/FolderOpen.d.ts +1 -0
- package/dist/components/Icons/FolderOpen.js +7 -0
- package/dist/components/Icons/FolderOpen.js.map +1 -0
- package/dist/components/Icons/Hash.d.ts +1 -0
- package/dist/components/Icons/Hash.js +7 -0
- package/dist/components/Icons/Hash.js.map +1 -0
- package/dist/components/Icons/House.d.ts +1 -0
- package/dist/components/Icons/House.js +7 -0
- package/dist/components/Icons/House.js.map +1 -0
- package/dist/components/Icons/Import.d.ts +1 -0
- package/dist/components/Icons/Import.js +7 -0
- package/dist/components/Icons/Import.js.map +1 -0
- package/dist/components/Icons/Inbox.d.ts +1 -0
- package/dist/components/Icons/Inbox.js +7 -0
- package/dist/components/Icons/Inbox.js.map +1 -0
- package/dist/components/Icons/Info.d.ts +1 -0
- package/dist/components/Icons/Info.js +7 -0
- package/dist/components/Icons/Info.js.map +1 -0
- package/dist/components/Icons/LayoutDashboard.d.ts +1 -0
- package/dist/components/Icons/LayoutDashboard.js +7 -0
- package/dist/components/Icons/LayoutDashboard.js.map +1 -0
- package/dist/components/Icons/LayoutGrid.d.ts +1 -0
- package/dist/components/Icons/LayoutGrid.js +7 -0
- package/dist/components/Icons/LayoutGrid.js.map +1 -0
- package/dist/components/Icons/ListTodo.d.ts +1 -0
- package/dist/components/Icons/ListTodo.js +7 -0
- package/dist/components/Icons/ListTodo.js.map +1 -0
- package/dist/components/Icons/Loader2.d.ts +1 -0
- package/dist/components/Icons/Loader2.js +7 -0
- package/dist/components/Icons/Loader2.js.map +1 -0
- package/dist/components/Icons/Lock.d.ts +1 -0
- package/dist/components/Icons/Lock.js +7 -0
- package/dist/components/Icons/Lock.js.map +1 -0
- package/dist/components/Icons/LogOut.d.ts +1 -0
- package/dist/components/Icons/LogOut.js +7 -0
- package/dist/components/Icons/LogOut.js.map +1 -0
- package/dist/components/Icons/Maximize2.d.ts +1 -0
- package/dist/components/Icons/Maximize2.js +7 -0
- package/dist/components/Icons/Maximize2.js.map +1 -0
- package/dist/components/Icons/MessageCircle.d.ts +1 -0
- package/dist/components/Icons/MessageCircle.js +7 -0
- package/dist/components/Icons/MessageCircle.js.map +1 -0
- package/dist/components/Icons/MessageSquare.d.ts +1 -0
- package/dist/components/Icons/MessageSquare.js +7 -0
- package/dist/components/Icons/MessageSquare.js.map +1 -0
- package/dist/components/Icons/Minimize2.d.ts +1 -0
- package/dist/components/Icons/Minimize2.js +7 -0
- package/dist/components/Icons/Minimize2.js.map +1 -0
- package/dist/components/Icons/PanelLeftClose.d.ts +1 -0
- package/dist/components/Icons/PanelLeftClose.js +7 -0
- package/dist/components/Icons/PanelLeftClose.js.map +1 -0
- package/dist/components/Icons/PanelLeftOpen.d.ts +1 -0
- package/dist/components/Icons/PanelLeftOpen.js +7 -0
- package/dist/components/Icons/PanelLeftOpen.js.map +1 -0
- package/dist/components/Icons/Pause.d.ts +1 -0
- package/dist/components/Icons/Pause.js +7 -0
- package/dist/components/Icons/Pause.js.map +1 -0
- package/dist/components/Icons/Pencil.d.ts +1 -0
- package/dist/components/Icons/Pencil.js +7 -0
- package/dist/components/Icons/Pencil.js.map +1 -0
- package/dist/components/Icons/Plus.d.ts +1 -0
- package/dist/components/Icons/Plus.js +7 -0
- package/dist/components/Icons/Plus.js.map +1 -0
- package/dist/components/Icons/Presentation.d.ts +1 -0
- package/dist/components/Icons/Presentation.js +7 -0
- package/dist/components/Icons/Presentation.js.map +1 -0
- package/dist/components/Icons/RefreshCw.d.ts +1 -0
- package/dist/components/Icons/RefreshCw.js +7 -0
- package/dist/components/Icons/RefreshCw.js.map +1 -0
- package/dist/components/Icons/RotateCw.d.ts +1 -0
- package/dist/components/Icons/RotateCw.js +7 -0
- package/dist/components/Icons/RotateCw.js.map +1 -0
- package/dist/components/Icons/Send.d.ts +1 -0
- package/dist/components/Icons/Send.js +7 -0
- package/dist/components/Icons/Send.js.map +1 -0
- package/dist/components/Icons/Settings.d.ts +1 -0
- package/dist/components/Icons/Settings.js +7 -0
- package/dist/components/Icons/Settings.js.map +1 -0
- package/dist/components/Icons/Shield.d.ts +1 -0
- package/dist/components/Icons/Shield.js +7 -0
- package/dist/components/Icons/Shield.js.map +1 -0
- package/dist/components/Icons/ShieldCheck.d.ts +1 -0
- package/dist/components/Icons/ShieldCheck.js +7 -0
- package/dist/components/Icons/ShieldCheck.js.map +1 -0
- package/dist/components/Icons/SlidersHorizontal.d.ts +1 -0
- package/dist/components/Icons/SlidersHorizontal.js +7 -0
- package/dist/components/Icons/SlidersHorizontal.js.map +1 -0
- package/dist/components/Icons/Square.d.ts +1 -0
- package/dist/components/Icons/Square.js +7 -0
- package/dist/components/Icons/Square.js.map +1 -0
- package/dist/components/Icons/Star.d.ts +1 -0
- package/dist/components/Icons/Star.js +7 -0
- package/dist/components/Icons/Star.js.map +1 -0
- package/dist/components/Icons/ThumbsDown.d.ts +1 -0
- package/dist/components/Icons/ThumbsDown.js +7 -0
- package/dist/components/Icons/ThumbsDown.js.map +1 -0
- package/dist/components/Icons/ThumbsUp.d.ts +1 -0
- package/dist/components/Icons/ThumbsUp.js +7 -0
- package/dist/components/Icons/ThumbsUp.js.map +1 -0
- package/dist/components/Icons/Trash2.d.ts +1 -0
- package/dist/components/Icons/Trash2.js +7 -0
- package/dist/components/Icons/Trash2.js.map +1 -0
- package/dist/components/Icons/Trophy.d.ts +1 -0
- package/dist/components/Icons/Trophy.js +7 -0
- package/dist/components/Icons/Trophy.js.map +1 -0
- package/dist/components/Icons/Undo2.d.ts +1 -0
- package/dist/components/Icons/Undo2.js +7 -0
- package/dist/components/Icons/Undo2.js.map +1 -0
- package/dist/components/Icons/Upload.d.ts +1 -0
- package/dist/components/Icons/Upload.js +7 -0
- package/dist/components/Icons/Upload.js.map +1 -0
- package/dist/components/Icons/User.d.ts +1 -0
- package/dist/components/Icons/User.js +7 -0
- package/dist/components/Icons/User.js.map +1 -0
- package/dist/components/Icons/UserPlus.d.ts +1 -0
- package/dist/components/Icons/UserPlus.js +7 -0
- package/dist/components/Icons/UserPlus.js.map +1 -0
- package/dist/components/Icons/UserRoundCog.d.ts +1 -0
- package/dist/components/Icons/UserRoundCog.js +7 -0
- package/dist/components/Icons/UserRoundCog.js.map +1 -0
- package/dist/components/Icons/Users.d.ts +1 -0
- package/dist/components/Icons/Users.js +7 -0
- package/dist/components/Icons/Users.js.map +1 -0
- package/dist/components/Icons/X.d.ts +1 -0
- package/dist/components/Icons/X.js +7 -0
- package/dist/components/Icons/X.js.map +1 -0
- package/dist/components/Icons/createIcon.d.ts +9 -0
- package/dist/components/Icons/createIcon.js +32 -0
- package/dist/components/Icons/createIcon.js.map +1 -0
- package/dist/components/Icons/index.d.ts +80 -90
- package/dist/components/Icons/registry.d.ts +6 -0
- package/dist/components/Icons/registry.js +239 -0
- package/dist/components/Icons/registry.js.map +1 -0
- package/dist/components/InteractiveBlock/InteractiveBlock.js +6 -6
- package/dist/components/Layout/AgentAppShell/AgentAppShell.js +24 -23
- package/dist/components/Layout/AgentAppShell/AgentAppShell.js.map +1 -1
- package/dist/components/Layout/PageHeaderLayout/index.js +7 -7
- package/dist/components/Modal/Modal/index.js +8 -8
- package/dist/components/Modal/StepModal/index.js +9 -9
- package/dist/components/OrgTree/OrgTree.js +41 -39
- package/dist/components/OrgTree/OrgTree.js.map +1 -1
- package/dist/components/StateBar/StateBar.js +4 -4
- package/dist/components/Table/ColumnConfigPanel.js +13 -10
- package/dist/components/Table/ColumnConfigPanel.js.map +1 -1
- package/dist/components/Table/Table.js +7 -7
- package/dist/components/Tour/AppTour/index.js +10 -10
- package/dist/components/Upload/index.js +76 -72
- package/dist/components/Upload/index.js.map +1 -1
- package/dist/file.d.ts +5 -0
- package/dist/file.js +24 -0
- package/dist/file.js.map +1 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.js +615 -537
- package/dist/index.js.map +1 -1
- package/dist/llm.d.ts +5 -0
- package/dist/llm.js +8 -0
- package/dist/llm.js.map +1 -0
- package/dist/marsun-components-core.css +1 -1
- package/dist/styles/global.css +1 -1
- package/package.json +15 -5
- package/dist/components/Icons/index.js +0 -268
- package/dist/components/Icons/index.js.map +0 -1
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { jsxs as r, jsx as i } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
3
|
-
import { Typography as T, Tooltip as c, Button as x, Spin as E, Empty as l, Popconfirm as P } from "antd";
|
|
2
|
+
import { Typography as y, Tooltip as c, Button as g, Spin as S, Empty as l, Popconfirm as T } from "antd";
|
|
4
3
|
import e from "classnames";
|
|
5
|
-
import { getSessionDisplayName as
|
|
4
|
+
import { getSessionDisplayName as x, formatSessionTime as E } from "../../utils/sessionMessages.js";
|
|
6
5
|
import s from "./style.module.scss.js";
|
|
7
|
-
import
|
|
8
|
-
|
|
6
|
+
import { Plus as P } from "../../../../Icons/Plus.js";
|
|
7
|
+
import C from "../../../../VirtualScrollbar/VirtualScrollbar/index.js";
|
|
8
|
+
import { Undo2 as _ } from "../../../../Icons/Undo2.js";
|
|
9
|
+
import { Trash2 as j } from "../../../../Icons/Trash2.js";
|
|
10
|
+
const { Text: z } = y, U = ({
|
|
9
11
|
title: t,
|
|
10
12
|
sessions: d,
|
|
11
13
|
activeSessionId: m,
|
|
@@ -13,8 +15,8 @@ const { Text: z } = T, G = ({
|
|
|
13
15
|
disabled: a = !1,
|
|
14
16
|
onSelect: u,
|
|
15
17
|
onCreateSession: N,
|
|
16
|
-
onClearSession:
|
|
17
|
-
onDeleteSession:
|
|
18
|
+
onClearSession: f,
|
|
19
|
+
onDeleteSession: h
|
|
18
20
|
}) => /* @__PURE__ */ r("div", { className: e("session-sidebar-status", s["session-sidebar-status"]), children: [
|
|
19
21
|
/* @__PURE__ */ r("div", { className: e("session-sidebar-info", s["session-sidebar-info"]), children: [
|
|
20
22
|
/* @__PURE__ */ i(
|
|
@@ -27,11 +29,11 @@ const { Text: z } = T, G = ({
|
|
|
27
29
|
}
|
|
28
30
|
),
|
|
29
31
|
/* @__PURE__ */ i(c, { title: "新会话", children: /* @__PURE__ */ i(
|
|
30
|
-
|
|
32
|
+
g,
|
|
31
33
|
{
|
|
32
34
|
type: "text",
|
|
33
35
|
size: "small",
|
|
34
|
-
icon: /* @__PURE__ */ i(
|
|
36
|
+
icon: /* @__PURE__ */ i(P, {}),
|
|
35
37
|
disabled: a,
|
|
36
38
|
onClick: N,
|
|
37
39
|
"aria-label": "新会话",
|
|
@@ -40,11 +42,11 @@ const { Text: z } = T, G = ({
|
|
|
40
42
|
) })
|
|
41
43
|
] }),
|
|
42
44
|
/* @__PURE__ */ i(
|
|
43
|
-
|
|
45
|
+
C,
|
|
44
46
|
{
|
|
45
47
|
wrapperClassName: e("session-sidebar-media", s["session-sidebar-media"]),
|
|
46
48
|
className: e("session-sidebar-figure", s["session-sidebar-figure"]),
|
|
47
|
-
children: p ? /* @__PURE__ */ i("div", { className: e("session-sidebar-caption", s["session-sidebar-caption"]), children: /* @__PURE__ */ i(
|
|
49
|
+
children: p ? /* @__PURE__ */ i("div", { className: e("session-sidebar-caption", s["session-sidebar-caption"]), children: /* @__PURE__ */ i(S, { size: "small" }) }) : d.length === 0 ? /* @__PURE__ */ i("div", { className: e("session-sidebar-divider", s["session-sidebar-divider"]), children: /* @__PURE__ */ i(
|
|
48
50
|
l,
|
|
49
51
|
{
|
|
50
52
|
image: l.PRESENTED_IMAGE_SIMPLE,
|
|
@@ -52,7 +54,7 @@ const { Text: z } = T, G = ({
|
|
|
52
54
|
className: e("session-sidebar-block1", s["session-sidebar-block1"])
|
|
53
55
|
}
|
|
54
56
|
) }) : /* @__PURE__ */ i("div", { className: e("session-sidebar-block2", s["session-sidebar-block2"]), children: d.map((n) => {
|
|
55
|
-
const o = n.id === m, b =
|
|
57
|
+
const o = n.id === m, b = x(n), k = E(n.update_time ?? n.create_time) || "刚刚";
|
|
56
58
|
return /* @__PURE__ */ r(
|
|
57
59
|
"div",
|
|
58
60
|
{
|
|
@@ -95,7 +97,7 @@ const { Text: z } = T, G = ({
|
|
|
95
97
|
{
|
|
96
98
|
className: e("session-sidebar-block4", s["session-sidebar-block4"]),
|
|
97
99
|
children: /* @__PURE__ */ i(
|
|
98
|
-
|
|
100
|
+
T,
|
|
99
101
|
{
|
|
100
102
|
title: o ? "确定清空当前会话内容吗?" : "确定删除该会话吗?",
|
|
101
103
|
description: o ? "清空后当前对话记录将无法恢复。" : "删除后该会话记录将无法恢复。",
|
|
@@ -103,7 +105,7 @@ const { Text: z } = T, G = ({
|
|
|
103
105
|
cancelText: "取消",
|
|
104
106
|
okButtonProps: { danger: !0 },
|
|
105
107
|
disabled: a,
|
|
106
|
-
onConfirm: () => o ?
|
|
108
|
+
onConfirm: () => o ? f(n.id) : h(n.id),
|
|
107
109
|
children: /* @__PURE__ */ i(c, { title: o ? "清空" : "删除", children: /* @__PURE__ */ i(
|
|
108
110
|
"button",
|
|
109
111
|
{
|
|
@@ -120,7 +122,7 @@ const { Text: z } = T, G = ({
|
|
|
120
122
|
a && s["session-sidebar-session-action-btn-disabled"]
|
|
121
123
|
),
|
|
122
124
|
children: o ? /* @__PURE__ */ i(
|
|
123
|
-
|
|
125
|
+
_,
|
|
124
126
|
{
|
|
125
127
|
className: e(
|
|
126
128
|
"session-sidebar-block5",
|
|
@@ -128,7 +130,7 @@ const { Text: z } = T, G = ({
|
|
|
128
130
|
)
|
|
129
131
|
}
|
|
130
132
|
) : /* @__PURE__ */ i(
|
|
131
|
-
|
|
133
|
+
j,
|
|
132
134
|
{
|
|
133
135
|
className: e(
|
|
134
136
|
"session-sidebar-block5",
|
|
@@ -151,6 +153,6 @@ const { Text: z } = T, G = ({
|
|
|
151
153
|
)
|
|
152
154
|
] });
|
|
153
155
|
export {
|
|
154
|
-
|
|
156
|
+
U as default
|
|
155
157
|
};
|
|
156
158
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/components/AgentHub/Chat/List/SessionSidebar/index.tsx"],"sourcesContent":["import { VirtualScrollbar } from '@/components/VirtualScrollbar';\nimport { Plus, Trash2, Undo2 } from '@/components/Icons';\nimport type { ChatSession } from '@/components/AgentHub/types';\nimport { Button, Empty, Popconfirm, Spin, Tooltip, Typography } from 'antd';\nimport classNames from 'classnames';\nimport React from 'react';\nimport { formatSessionTime, getSessionDisplayName } from '../../utils/sessionMessages';\nimport styles from './style.module.scss';\n\nconst { Text } = Typography;\n\nexport interface SessionSidebarProps {\n title: string;\n sessions: ChatSession[];\n activeSessionId?: string;\n loading?: boolean;\n disabled?: boolean;\n onSelect: (sessionId: string) => void;\n onCreateSession: () => void;\n onClearSession: (sessionId: string) => void;\n onDeleteSession: (sessionId: string) => void;\n}\n\nconst SessionSidebar: React.FC<SessionSidebarProps> = ({\n title,\n sessions,\n activeSessionId,\n loading = false,\n disabled = false,\n onSelect,\n onCreateSession,\n onClearSession,\n onDeleteSession,\n}) => (\n <div className={classNames('session-sidebar-status', styles['session-sidebar-status'])}>\n <div className={classNames('session-sidebar-info', styles['session-sidebar-info'])}>\n <Text\n strong\n className={classNames('session-sidebar-detail', styles['session-sidebar-detail'])}\n title={title}\n >\n {title}\n </Text>\n <Tooltip title=\"新会话\">\n <Button\n type=\"text\"\n size=\"small\"\n icon={<Plus />}\n disabled={disabled}\n onClick={onCreateSession}\n aria-label=\"新会话\"\n className={classNames('session-sidebar-summary', styles['session-sidebar-summary'])}\n />\n </Tooltip>\n </div>\n\n <VirtualScrollbar\n wrapperClassName={classNames('session-sidebar-media', styles['session-sidebar-media'])}\n className={classNames('session-sidebar-figure', styles['session-sidebar-figure'])}\n >\n {loading ? (\n <div className={classNames('session-sidebar-caption', styles['session-sidebar-caption'])}>\n <Spin size=\"small\" />\n </div>\n ) : sessions.length === 0 ? (\n <div className={classNames('session-sidebar-divider', styles['session-sidebar-divider'])}>\n <Empty\n image={Empty.PRESENTED_IMAGE_SIMPLE}\n description=\"暂无历史对话\"\n className={classNames('session-sidebar-block1', styles['session-sidebar-block1'])}\n />\n </div>\n ) : (\n <div className={classNames('session-sidebar-block2', styles['session-sidebar-block2'])}>\n {sessions.map((session) => {\n const active = session.id === activeSessionId;\n const displayName = getSessionDisplayName(session);\n const timeLabel =\n formatSessionTime(session.update_time ?? session.create_time) || '刚刚';\n\n return (\n <div\n key={session.id}\n className={classNames(\n 'session-sidebar-session-item',\n styles['session-sidebar-session-item'],\n active && 'session-sidebar-session-item-active',\n active && styles['session-sidebar-session-item-active'],\n disabled && 'session-sidebar-session-item-disabled',\n disabled && styles['session-sidebar-session-item-disabled'],\n )}\n >\n <button\n type=\"button\"\n disabled={disabled}\n onClick={() => onSelect(session.id)}\n title={displayName}\n className={classNames(\n 'session-sidebar-session-button',\n styles['session-sidebar-session-button'],\n active && 'session-sidebar-session-button-active',\n active && styles['session-sidebar-session-button-active'],\n disabled && 'session-sidebar-session-button-disabled',\n disabled && styles['session-sidebar-session-button-disabled'],\n )}\n >\n {displayName}\n </button>\n\n <span\n className={classNames('session-sidebar-block3', styles['session-sidebar-block3'])}\n >\n {timeLabel}\n </span>\n\n <div\n className={classNames('session-sidebar-block4', styles['session-sidebar-block4'])}\n >\n <Popconfirm\n title={active ? '确定清空当前会话内容吗?' : '确定删除该会话吗?'}\n description={\n active ? '清空后当前对话记录将无法恢复。' : '删除后该会话记录将无法恢复。'\n }\n okText={active ? '清空' : '删除'}\n cancelText=\"取消\"\n okButtonProps={{ danger: true }}\n disabled={disabled}\n onConfirm={() =>\n active ? onClearSession(session.id) : onDeleteSession(session.id)\n }\n >\n <Tooltip title={active ? '清空' : '删除'}>\n <button\n type=\"button\"\n disabled={disabled}\n onClick={(e) => e.stopPropagation()}\n aria-label={active ? '清空' : '删除'}\n className={classNames(\n 'session-sidebar-session-action-btn',\n styles['session-sidebar-session-action-btn'],\n active && 'session-sidebar-session-action-btn-active',\n active && styles['session-sidebar-session-action-btn-active'],\n disabled && 'session-sidebar-session-action-btn-disabled',\n disabled && styles['session-sidebar-session-action-btn-disabled'],\n )}\n >\n {active ? (\n <Undo2\n className={classNames(\n 'session-sidebar-block5',\n styles['session-sidebar-block5'],\n )}\n />\n ) : (\n <Trash2\n className={classNames(\n 'session-sidebar-block5',\n styles['session-sidebar-block5'],\n )}\n />\n )}\n </button>\n </Tooltip>\n </Popconfirm>\n </div>\n </div>\n );\n })}\n </div>\n )}\n </VirtualScrollbar>\n </div>\n);\n\nexport default SessionSidebar;\n"],"names":["Text","Typography","SessionSidebar","title","sessions","activeSessionId","loading","disabled","onSelect","onCreateSession","onClearSession","onDeleteSession","jsxs","classNames","styles","jsx","Tooltip","Button","Plus","VirtualScrollbar","Spin","Empty","session","active","displayName","getSessionDisplayName","timeLabel","formatSessionTime","Popconfirm","e","Undo2","Trash2"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../src/components/AgentHub/Chat/List/SessionSidebar/index.tsx"],"sourcesContent":["import { VirtualScrollbar } from '@/components/VirtualScrollbar';\nimport { Plus, Trash2, Undo2 } from '@/components/Icons';\nimport type { ChatSession } from '@/components/AgentHub/types';\nimport { Button, Empty, Popconfirm, Spin, Tooltip, Typography } from 'antd';\nimport classNames from 'classnames';\nimport React from 'react';\nimport { formatSessionTime, getSessionDisplayName } from '../../utils/sessionMessages';\nimport styles from './style.module.scss';\n\nconst { Text } = Typography;\n\nexport interface SessionSidebarProps {\n title: string;\n sessions: ChatSession[];\n activeSessionId?: string;\n loading?: boolean;\n disabled?: boolean;\n onSelect: (sessionId: string) => void;\n onCreateSession: () => void;\n onClearSession: (sessionId: string) => void;\n onDeleteSession: (sessionId: string) => void;\n}\n\nconst SessionSidebar: React.FC<SessionSidebarProps> = ({\n title,\n sessions,\n activeSessionId,\n loading = false,\n disabled = false,\n onSelect,\n onCreateSession,\n onClearSession,\n onDeleteSession,\n}) => (\n <div className={classNames('session-sidebar-status', styles['session-sidebar-status'])}>\n <div className={classNames('session-sidebar-info', styles['session-sidebar-info'])}>\n <Text\n strong\n className={classNames('session-sidebar-detail', styles['session-sidebar-detail'])}\n title={title}\n >\n {title}\n </Text>\n <Tooltip title=\"新会话\">\n <Button\n type=\"text\"\n size=\"small\"\n icon={<Plus />}\n disabled={disabled}\n onClick={onCreateSession}\n aria-label=\"新会话\"\n className={classNames('session-sidebar-summary', styles['session-sidebar-summary'])}\n />\n </Tooltip>\n </div>\n\n <VirtualScrollbar\n wrapperClassName={classNames('session-sidebar-media', styles['session-sidebar-media'])}\n className={classNames('session-sidebar-figure', styles['session-sidebar-figure'])}\n >\n {loading ? (\n <div className={classNames('session-sidebar-caption', styles['session-sidebar-caption'])}>\n <Spin size=\"small\" />\n </div>\n ) : sessions.length === 0 ? (\n <div className={classNames('session-sidebar-divider', styles['session-sidebar-divider'])}>\n <Empty\n image={Empty.PRESENTED_IMAGE_SIMPLE}\n description=\"暂无历史对话\"\n className={classNames('session-sidebar-block1', styles['session-sidebar-block1'])}\n />\n </div>\n ) : (\n <div className={classNames('session-sidebar-block2', styles['session-sidebar-block2'])}>\n {sessions.map((session) => {\n const active = session.id === activeSessionId;\n const displayName = getSessionDisplayName(session);\n const timeLabel =\n formatSessionTime(session.update_time ?? session.create_time) || '刚刚';\n\n return (\n <div\n key={session.id}\n className={classNames(\n 'session-sidebar-session-item',\n styles['session-sidebar-session-item'],\n active && 'session-sidebar-session-item-active',\n active && styles['session-sidebar-session-item-active'],\n disabled && 'session-sidebar-session-item-disabled',\n disabled && styles['session-sidebar-session-item-disabled'],\n )}\n >\n <button\n type=\"button\"\n disabled={disabled}\n onClick={() => onSelect(session.id)}\n title={displayName}\n className={classNames(\n 'session-sidebar-session-button',\n styles['session-sidebar-session-button'],\n active && 'session-sidebar-session-button-active',\n active && styles['session-sidebar-session-button-active'],\n disabled && 'session-sidebar-session-button-disabled',\n disabled && styles['session-sidebar-session-button-disabled'],\n )}\n >\n {displayName}\n </button>\n\n <span\n className={classNames('session-sidebar-block3', styles['session-sidebar-block3'])}\n >\n {timeLabel}\n </span>\n\n <div\n className={classNames('session-sidebar-block4', styles['session-sidebar-block4'])}\n >\n <Popconfirm\n title={active ? '确定清空当前会话内容吗?' : '确定删除该会话吗?'}\n description={\n active ? '清空后当前对话记录将无法恢复。' : '删除后该会话记录将无法恢复。'\n }\n okText={active ? '清空' : '删除'}\n cancelText=\"取消\"\n okButtonProps={{ danger: true }}\n disabled={disabled}\n onConfirm={() =>\n active ? onClearSession(session.id) : onDeleteSession(session.id)\n }\n >\n <Tooltip title={active ? '清空' : '删除'}>\n <button\n type=\"button\"\n disabled={disabled}\n onClick={(e) => e.stopPropagation()}\n aria-label={active ? '清空' : '删除'}\n className={classNames(\n 'session-sidebar-session-action-btn',\n styles['session-sidebar-session-action-btn'],\n active && 'session-sidebar-session-action-btn-active',\n active && styles['session-sidebar-session-action-btn-active'],\n disabled && 'session-sidebar-session-action-btn-disabled',\n disabled && styles['session-sidebar-session-action-btn-disabled'],\n )}\n >\n {active ? (\n <Undo2\n className={classNames(\n 'session-sidebar-block5',\n styles['session-sidebar-block5'],\n )}\n />\n ) : (\n <Trash2\n className={classNames(\n 'session-sidebar-block5',\n styles['session-sidebar-block5'],\n )}\n />\n )}\n </button>\n </Tooltip>\n </Popconfirm>\n </div>\n </div>\n );\n })}\n </div>\n )}\n </VirtualScrollbar>\n </div>\n);\n\nexport default SessionSidebar;\n"],"names":["Text","Typography","SessionSidebar","title","sessions","activeSessionId","loading","disabled","onSelect","onCreateSession","onClearSession","onDeleteSession","jsxs","classNames","styles","jsx","Tooltip","Button","Plus","VirtualScrollbar","Spin","Empty","session","active","displayName","getSessionDisplayName","timeLabel","formatSessionTime","Popconfirm","e","Undo2","Trash2"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as t } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
const n = ({ onClick: o }) => /* @__PURE__ */ t(
|
|
2
|
+
import { Button as r } from "antd";
|
|
3
|
+
import { Plus as m } from "../../../Icons/Plus.js";
|
|
4
|
+
const n = ({ onClick: o }) => /* @__PURE__ */ t(r, { type: "primary", icon: /* @__PURE__ */ t(m, {}), onClick: o, children: "新建知识库" });
|
|
5
5
|
export {
|
|
6
6
|
n as default
|
|
7
7
|
};
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { jsx as r } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
|
|
2
|
+
import p from "@kne/button-group";
|
|
3
|
+
import { Table as h, Empty as f, Typography as y } from "antd";
|
|
4
|
+
import x from "../ParseStatusTag/index.js";
|
|
5
|
+
import g from "./style.module.scss.js";
|
|
6
|
+
import w from "classnames";
|
|
7
|
+
import { CirclePlay as N } from "../../../../Icons/CirclePlay.js";
|
|
8
|
+
import { Square as T } from "../../../../Icons/Square.js";
|
|
9
|
+
const { Text: i } = y, I = (t) => t ? t < 1024 ? `${t} B` : t < 1024 * 1024 ? `${(t / 1024).toFixed(1)} KB` : `${(t / 1024 / 1024).toFixed(1)} MB` : "-", C = (t) => t ? (typeof t == "number" ? new Date(t) : new Date(t)).toLocaleDateString("zh-CN", { year: "numeric", month: "2-digit", day: "2-digit" }) : "-", K = ({
|
|
9
10
|
data: t,
|
|
10
11
|
loading: o,
|
|
11
12
|
total: a,
|
|
@@ -16,7 +17,7 @@ const { Text: i } = g, I = (t) => t ? t < 1024 ? `${t} B` : t < 1024 * 1024 ? `$
|
|
|
16
17
|
onStopParse: s,
|
|
17
18
|
onDelete: u
|
|
18
19
|
}) => /* @__PURE__ */ r(
|
|
19
|
-
|
|
20
|
+
h,
|
|
20
21
|
{
|
|
21
22
|
rowKey: "id",
|
|
22
23
|
columns: [
|
|
@@ -24,7 +25,7 @@ const { Text: i } = g, I = (t) => t ? t < 1024 ? `${t} B` : t < 1024 * 1024 ? `$
|
|
|
24
25
|
title: "文档名称",
|
|
25
26
|
dataIndex: "name",
|
|
26
27
|
ellipsis: !0,
|
|
27
|
-
render: (e) => /* @__PURE__ */ r(i, { className:
|
|
28
|
+
render: (e) => /* @__PURE__ */ r(i, { className: w("document-table-root", g["document-table-root"]), ellipsis: { tooltip: e }, children: e })
|
|
28
29
|
},
|
|
29
30
|
{
|
|
30
31
|
title: "类型",
|
|
@@ -42,7 +43,7 @@ const { Text: i } = g, I = (t) => t ? t < 1024 ? `${t} B` : t < 1024 * 1024 ? `$
|
|
|
42
43
|
title: "解析状态",
|
|
43
44
|
dataIndex: "run",
|
|
44
45
|
width: 110,
|
|
45
|
-
render: (e) => /* @__PURE__ */ r(
|
|
46
|
+
render: (e) => /* @__PURE__ */ r(x, { status: e })
|
|
46
47
|
},
|
|
47
48
|
{
|
|
48
49
|
title: "分块数",
|
|
@@ -62,19 +63,19 @@ const { Text: i } = g, I = (t) => t ? t < 1024 ? `${t} B` : t < 1024 * 1024 ? `$
|
|
|
62
63
|
width: 140,
|
|
63
64
|
fixed: "right",
|
|
64
65
|
render: (e, n) => /* @__PURE__ */ r(
|
|
65
|
-
|
|
66
|
+
p,
|
|
66
67
|
{
|
|
67
68
|
moreType: "link",
|
|
68
69
|
list: [
|
|
69
70
|
{
|
|
70
71
|
children: "解析",
|
|
71
|
-
icon: /* @__PURE__ */ r(
|
|
72
|
+
icon: /* @__PURE__ */ r(N, {}),
|
|
72
73
|
hidden: n.run === "RUNNING",
|
|
73
74
|
onClick: () => m(n)
|
|
74
75
|
},
|
|
75
76
|
{
|
|
76
77
|
children: "停止",
|
|
77
|
-
icon: /* @__PURE__ */ r(
|
|
78
|
+
icon: /* @__PURE__ */ r(T, {}),
|
|
78
79
|
hidden: n.run !== "RUNNING",
|
|
79
80
|
onClick: () => s(n)
|
|
80
81
|
},
|
|
@@ -93,7 +94,7 @@ const { Text: i } = g, I = (t) => t ? t < 1024 ? `${t} B` : t < 1024 * 1024 ? `$
|
|
|
93
94
|
dataSource: t,
|
|
94
95
|
loading: o,
|
|
95
96
|
scroll: { x: "max-content" },
|
|
96
|
-
locale: { emptyText: /* @__PURE__ */ r(
|
|
97
|
+
locale: { emptyText: /* @__PURE__ */ r(f, { description: "暂无文档" }) },
|
|
97
98
|
pagination: {
|
|
98
99
|
current: d,
|
|
99
100
|
pageSize: l,
|
|
@@ -105,6 +106,6 @@ const { Text: i } = g, I = (t) => t ? t < 1024 ? `${t} B` : t < 1024 * 1024 ? `$
|
|
|
105
106
|
}
|
|
106
107
|
);
|
|
107
108
|
export {
|
|
108
|
-
|
|
109
|
+
K as default
|
|
109
110
|
};
|
|
110
111
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/components/AgentHub/KnowledgeBase/Detail/DocumentTable/index.tsx"],"sourcesContent":["import type { KBDocument } from '@/components/AgentHub/types';\nimport ButtonGroup from '@kne/button-group';\nimport { CirclePlay, Square } from '@/components/Icons';\nimport { Empty, Table, Typography } from 'antd';\nimport type { ColumnsType } from 'antd/es/table';\nimport React from 'react';\nimport ParseStatusTag from '../ParseStatusTag';\nimport styles from './style.module.scss';\nimport classNames from 'classnames';\n\nconst { Text } = Typography;\n\nconst formatSize = (bytes?: number) => {\n if (!bytes) return '-';\n if (bytes < 1024) return `${bytes} B`;\n if (bytes < 1024 * 1024) return `${(bytes / 1024).toFixed(1)} KB`;\n return `${(bytes / 1024 / 1024).toFixed(1)} MB`;\n};\n\nconst formatTime = (ts?: string | number) => {\n if (!ts) return '-';\n const d = typeof ts === 'number' ? new Date(ts) : new Date(ts);\n return d.toLocaleDateString('zh-CN', { year: 'numeric', month: '2-digit', day: '2-digit' });\n};\n\nexport interface DocumentTableProps {\n datasetId: string;\n data: KBDocument[];\n loading: boolean;\n total: number;\n page: number;\n pageSize: number;\n onPageChange: (page: number, pageSize: number) => void;\n onParse: (doc: KBDocument) => void;\n onStopParse: (doc: KBDocument) => void;\n onDelete: (doc: KBDocument) => void;\n}\n\nconst DocumentTable: React.FC<DocumentTableProps> = ({\n data,\n loading,\n total,\n page,\n pageSize,\n onPageChange,\n onParse,\n onStopParse,\n onDelete,\n}) => {\n const columns: ColumnsType<KBDocument> = [\n {\n title: '文档名称',\n dataIndex: 'name',\n ellipsis: true,\n render: (name: string) => (\n <Text className={classNames('document-table-root', styles['document-table-root'])} ellipsis={{ tooltip: name }}>\n {name}\n </Text>\n ),\n },\n {\n title: '类型',\n dataIndex: 'type',\n width: 80,\n render: (type?: string) => <Text type=\"secondary\">{type ?? '-'}</Text>,\n },\n {\n title: '大小',\n dataIndex: 'size',\n width: 100,\n render: (size?: number) => <Text type=\"secondary\">{formatSize(size)}</Text>,\n },\n {\n title: '解析状态',\n dataIndex: 'run',\n width: 110,\n render: (run?: string) => <ParseStatusTag status={run} />,\n },\n {\n title: '分块数',\n dataIndex: 'chunk_count',\n width: 80,\n render: (count?: number) => <Text type=\"secondary\">{count ?? 0}</Text>,\n },\n {\n title: '上传时间',\n dataIndex: 'create_time',\n width: 120,\n render: (t?: string | number) => <Text type=\"secondary\">{formatTime(t)}</Text>,\n },\n {\n title: '操作',\n key: 'actions',\n width: 140,\n fixed: 'right',\n render: (_, record) => (\n <ButtonGroup\n moreType=\"link\"\n list={[\n {\n children: '解析',\n icon: <CirclePlay />,\n hidden: record.run === 'RUNNING',\n onClick: () => onParse(record),\n },\n {\n children: '停止',\n icon: <Square />,\n hidden: record.run !== 'RUNNING',\n onClick: () => onStopParse(record),\n },\n {\n children: '删除',\n danger: true,\n message: `确认删除文档「${record.name}」?`,\n isDelete: true,\n onClick: () => onDelete(record),\n },\n ]}\n />\n ),\n },\n ];\n\n return (\n <Table<KBDocument>\n rowKey=\"id\"\n columns={columns}\n dataSource={data}\n loading={loading}\n scroll={{ x: 'max-content' }}\n locale={{ emptyText: <Empty description=\"暂无文档\" /> }}\n pagination={{\n current: page,\n pageSize,\n total,\n showSizeChanger: true,\n showTotal: (t) => `共 ${t} 篇文档`,\n onChange: onPageChange,\n }}\n />\n );\n};\n\nexport default DocumentTable;\n"],"names":["Text","Typography","formatSize","bytes","formatTime","ts","DocumentTable","data","loading","total","page","pageSize","onPageChange","onParse","onStopParse","onDelete","jsx","Table","name","classNames","styles","type","size","run","ParseStatusTag","count","t","_","record","ButtonGroup","CirclePlay","Square","Empty"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../src/components/AgentHub/KnowledgeBase/Detail/DocumentTable/index.tsx"],"sourcesContent":["import type { KBDocument } from '@/components/AgentHub/types';\nimport ButtonGroup from '@kne/button-group';\nimport { CirclePlay, Square } from '@/components/Icons';\nimport { Empty, Table, Typography } from 'antd';\nimport type { ColumnsType } from 'antd/es/table';\nimport React from 'react';\nimport ParseStatusTag from '../ParseStatusTag';\nimport styles from './style.module.scss';\nimport classNames from 'classnames';\n\nconst { Text } = Typography;\n\nconst formatSize = (bytes?: number) => {\n if (!bytes) return '-';\n if (bytes < 1024) return `${bytes} B`;\n if (bytes < 1024 * 1024) return `${(bytes / 1024).toFixed(1)} KB`;\n return `${(bytes / 1024 / 1024).toFixed(1)} MB`;\n};\n\nconst formatTime = (ts?: string | number) => {\n if (!ts) return '-';\n const d = typeof ts === 'number' ? new Date(ts) : new Date(ts);\n return d.toLocaleDateString('zh-CN', { year: 'numeric', month: '2-digit', day: '2-digit' });\n};\n\nexport interface DocumentTableProps {\n datasetId: string;\n data: KBDocument[];\n loading: boolean;\n total: number;\n page: number;\n pageSize: number;\n onPageChange: (page: number, pageSize: number) => void;\n onParse: (doc: KBDocument) => void;\n onStopParse: (doc: KBDocument) => void;\n onDelete: (doc: KBDocument) => void;\n}\n\nconst DocumentTable: React.FC<DocumentTableProps> = ({\n data,\n loading,\n total,\n page,\n pageSize,\n onPageChange,\n onParse,\n onStopParse,\n onDelete,\n}) => {\n const columns: ColumnsType<KBDocument> = [\n {\n title: '文档名称',\n dataIndex: 'name',\n ellipsis: true,\n render: (name: string) => (\n <Text className={classNames('document-table-root', styles['document-table-root'])} ellipsis={{ tooltip: name }}>\n {name}\n </Text>\n ),\n },\n {\n title: '类型',\n dataIndex: 'type',\n width: 80,\n render: (type?: string) => <Text type=\"secondary\">{type ?? '-'}</Text>,\n },\n {\n title: '大小',\n dataIndex: 'size',\n width: 100,\n render: (size?: number) => <Text type=\"secondary\">{formatSize(size)}</Text>,\n },\n {\n title: '解析状态',\n dataIndex: 'run',\n width: 110,\n render: (run?: string) => <ParseStatusTag status={run} />,\n },\n {\n title: '分块数',\n dataIndex: 'chunk_count',\n width: 80,\n render: (count?: number) => <Text type=\"secondary\">{count ?? 0}</Text>,\n },\n {\n title: '上传时间',\n dataIndex: 'create_time',\n width: 120,\n render: (t?: string | number) => <Text type=\"secondary\">{formatTime(t)}</Text>,\n },\n {\n title: '操作',\n key: 'actions',\n width: 140,\n fixed: 'right',\n render: (_, record) => (\n <ButtonGroup\n moreType=\"link\"\n list={[\n {\n children: '解析',\n icon: <CirclePlay />,\n hidden: record.run === 'RUNNING',\n onClick: () => onParse(record),\n },\n {\n children: '停止',\n icon: <Square />,\n hidden: record.run !== 'RUNNING',\n onClick: () => onStopParse(record),\n },\n {\n children: '删除',\n danger: true,\n message: `确认删除文档「${record.name}」?`,\n isDelete: true,\n onClick: () => onDelete(record),\n },\n ]}\n />\n ),\n },\n ];\n\n return (\n <Table<KBDocument>\n rowKey=\"id\"\n columns={columns}\n dataSource={data}\n loading={loading}\n scroll={{ x: 'max-content' }}\n locale={{ emptyText: <Empty description=\"暂无文档\" /> }}\n pagination={{\n current: page,\n pageSize,\n total,\n showSizeChanger: true,\n showTotal: (t) => `共 ${t} 篇文档`,\n onChange: onPageChange,\n }}\n />\n );\n};\n\nexport default DocumentTable;\n"],"names":["Text","Typography","formatSize","bytes","formatTime","ts","DocumentTable","data","loading","total","page","pageSize","onPageChange","onParse","onStopParse","onDelete","jsx","Table","name","classNames","styles","type","size","run","ParseStatusTag","count","t","_","record","ButtonGroup","CirclePlay","Square","Empty"],"mappings":"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"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { jsxs as a, jsx as o } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import e from "
|
|
5
|
-
import n from "classnames";
|
|
2
|
+
import { Spin as i } from "antd";
|
|
3
|
+
import m from "./style.module.scss.js";
|
|
4
|
+
import e from "classnames";
|
|
6
5
|
import { PARSE_STATUS_CONFIG as t } from "../../constants/types.js";
|
|
7
|
-
import
|
|
6
|
+
import n from "../../../../Tag/SemanticTag.js";
|
|
7
|
+
import { Loader2 as c } from "../../../../Icons/Loader2.js";
|
|
8
8
|
const N = ({ status: s }) => {
|
|
9
9
|
const r = t[s ?? "UNSTART"] ?? t.UNSTART;
|
|
10
|
-
return /* @__PURE__ */ a(
|
|
11
|
-
r.spinning && /* @__PURE__ */ o(
|
|
10
|
+
return /* @__PURE__ */ a(n, { color: r.color, children: [
|
|
11
|
+
r.spinning && /* @__PURE__ */ o(i, { indicator: /* @__PURE__ */ o(c, {}), size: "small", className: e("parse-status-tag-container", m["parse-status-tag-container"]) }),
|
|
12
12
|
r.label
|
|
13
13
|
] });
|
|
14
14
|
};
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsxs as o, jsx as r } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
3
|
-
import _ from "
|
|
4
|
-
import { Tooltip as f, Typography as C, Progress as b } from "antd";
|
|
2
|
+
import y from "@kne/button-group";
|
|
3
|
+
import { Tooltip as _, Typography as f, Progress as C } from "antd";
|
|
5
4
|
import l from "./style.module.scss.js";
|
|
6
5
|
import e from "classnames";
|
|
6
|
+
import { LayoutGrid as b } from "../../../../Icons/LayoutGrid.js";
|
|
7
7
|
import x, { SEMANTIC_COLORS as T } from "../../../../Tag/SemanticTag.js";
|
|
8
|
-
const { Text: c, Paragraph: P } =
|
|
8
|
+
const { Text: c, Paragraph: P } = f, I = ({
|
|
9
9
|
dataset: n,
|
|
10
10
|
onView: s,
|
|
11
11
|
onUpload: w,
|
|
@@ -23,9 +23,9 @@ const { Text: c, Paragraph: P } = C, I = ({
|
|
|
23
23
|
/* @__PURE__ */ r("div", { className: e("bg-primary", e("knowledge-card-inner", l["knowledge-card-inner"])) }),
|
|
24
24
|
/* @__PURE__ */ o("div", { className: e("knowledge-card-header", l["knowledge-card-header"]), children: [
|
|
25
25
|
/* @__PURE__ */ o("div", { className: e("knowledge-card-body", l["knowledge-card-body"]), children: [
|
|
26
|
-
/* @__PURE__ */ r("div", { className: e("knowledge-card-footer", l["knowledge-card-footer"]), children: /* @__PURE__ */ r(
|
|
26
|
+
/* @__PURE__ */ r("div", { className: e("knowledge-card-footer", l["knowledge-card-footer"]), children: /* @__PURE__ */ r(b, { className: e("text-primary", e("knowledge-card-row", l["knowledge-card-row"])) }) }),
|
|
27
27
|
/* @__PURE__ */ o("div", { className: e("knowledge-card-col", l["knowledge-card-col"]), children: [
|
|
28
|
-
/* @__PURE__ */ r(
|
|
28
|
+
/* @__PURE__ */ r(_, { title: n.name, children: /* @__PURE__ */ r(
|
|
29
29
|
c,
|
|
30
30
|
{
|
|
31
31
|
strong: !0,
|
|
@@ -62,7 +62,7 @@ const { Text: c, Paragraph: P } = C, I = ({
|
|
|
62
62
|
] })
|
|
63
63
|
] }),
|
|
64
64
|
/* @__PURE__ */ r(
|
|
65
|
-
|
|
65
|
+
C,
|
|
66
66
|
{
|
|
67
67
|
percent: d,
|
|
68
68
|
size: "small",
|
|
@@ -78,7 +78,7 @@ const { Text: c, Paragraph: P } = C, I = ({
|
|
|
78
78
|
className: e("knowledge-card-title", l["knowledge-card-title"]),
|
|
79
79
|
onClick: (v) => v.stopPropagation(),
|
|
80
80
|
children: /* @__PURE__ */ r(
|
|
81
|
-
|
|
81
|
+
y,
|
|
82
82
|
{
|
|
83
83
|
moreType: "link",
|
|
84
84
|
showLength: 1,
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsxs as n, jsx as r } from "react/jsx-runtime";
|
|
2
|
-
import { RefreshCw as f } from "../../../../Icons/index.js";
|
|
3
2
|
import i from "classnames";
|
|
4
3
|
import { Button as p } from "antd";
|
|
5
4
|
import s from "./style.module.scss.js";
|
|
5
|
+
import { RefreshCw as f } from "../../../../Icons/RefreshCw.js";
|
|
6
6
|
import v from "../../../../Empty/Empty.js";
|
|
7
7
|
const b = ({
|
|
8
8
|
html: e,
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsx as e, jsxs as a } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
3
|
-
import { Avatar as x, Dropdown as y } from "antd";
|
|
2
|
+
import { Avatar as k, Dropdown as x } from "antd";
|
|
4
3
|
import t from "classnames";
|
|
5
|
-
import { useMemo as
|
|
4
|
+
import { useMemo as y } from "react";
|
|
6
5
|
import r from "./style.module.scss.js";
|
|
6
|
+
import { LogOut as C } from "../../Icons/LogOut.js";
|
|
7
7
|
const D = ({
|
|
8
8
|
name: l,
|
|
9
9
|
nameMeta: s,
|
|
@@ -15,12 +15,12 @@ const D = ({
|
|
|
15
15
|
extra: m,
|
|
16
16
|
className: N
|
|
17
17
|
}) => {
|
|
18
|
-
const v = (h || l).trim().charAt(0).toUpperCase() || "U", o = s && s.trim() && s.trim() !== l.trim() ? s.trim() : void 0, g = o ? `${l} ${o}` : l, f =
|
|
18
|
+
const v = (h || l).trim().charAt(0).toUpperCase() || "U", o = s && s.trim() && s.trim() !== l.trim() ? s.trim() : void 0, g = o ? `${l} ${o}` : l, f = y(() => n || (p ? [
|
|
19
19
|
{
|
|
20
20
|
key: "logout",
|
|
21
21
|
danger: !0,
|
|
22
22
|
label: "退出登录",
|
|
23
|
-
icon: /* @__PURE__ */ e(
|
|
23
|
+
icon: /* @__PURE__ */ e(C, { size: 14 }),
|
|
24
24
|
onClick: p
|
|
25
25
|
}
|
|
26
26
|
] : []), [n, p]), d = /* @__PURE__ */ a(
|
|
@@ -33,7 +33,7 @@ const D = ({
|
|
|
33
33
|
),
|
|
34
34
|
"aria-label": "用户菜单",
|
|
35
35
|
children: [
|
|
36
|
-
/* @__PURE__ */ e(
|
|
36
|
+
/* @__PURE__ */ e(k, { className: r["user-profile-avatar"], size: i ? 32 : 40, children: v }),
|
|
37
37
|
i ? null : /* @__PURE__ */ a("div", { className: r["user-profile-meta"], children: [
|
|
38
38
|
/* @__PURE__ */ a("div", { className: r["user-profile-name"], title: g, children: [
|
|
39
39
|
/* @__PURE__ */ e("span", { className: r["user-profile-name-text"], children: l }),
|
|
@@ -43,7 +43,7 @@ const D = ({
|
|
|
43
43
|
] })
|
|
44
44
|
]
|
|
45
45
|
}
|
|
46
|
-
), w = f && f.length > 0 ? /* @__PURE__ */ e(
|
|
46
|
+
), w = f && f.length > 0 ? /* @__PURE__ */ e(x, { menu: { items: f }, trigger: ["click"], placement: "topLeft", children: d }) : d;
|
|
47
47
|
return /* @__PURE__ */ e(
|
|
48
48
|
"div",
|
|
49
49
|
{
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import { jsxs as o, Fragment as C, jsx as i } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import
|
|
6
|
-
import A from "../
|
|
7
|
-
import { normalizeFileDisplayItem as O, getFileTypeName as S, getFileIcon as B } from "../fileDisplay.js";
|
|
2
|
+
import { formatFileSize as T } from "../../../utils/format.js";
|
|
3
|
+
import { Tooltip as z, Button as x } from "antd";
|
|
4
|
+
import { useState as b } from "react";
|
|
5
|
+
import I from "../FilePreviewModal/index.js";
|
|
6
|
+
import { normalizeFileDisplayItem as P, getFileTypeName as j, getFileIcon as A } from "../fileDisplay.js";
|
|
8
7
|
import l from "./style.module.scss.js";
|
|
9
8
|
import t from "classnames";
|
|
10
|
-
import
|
|
11
|
-
|
|
9
|
+
import O from "../../Tag/FileTags.js";
|
|
10
|
+
import { Eye as S } from "../../Icons/Eye.js";
|
|
11
|
+
import { Download as B } from "../../Icons/Download.js";
|
|
12
|
+
import { Trash2 as D } from "../../Icons/Trash2.js";
|
|
13
|
+
const V = ({
|
|
12
14
|
file: p,
|
|
13
15
|
status: a,
|
|
14
16
|
showDownload: d = !0,
|
|
@@ -19,7 +21,7 @@ const Q = ({
|
|
|
19
21
|
onDelete: s,
|
|
20
22
|
onPreview: c
|
|
21
23
|
}) => {
|
|
22
|
-
const [N, f] =
|
|
24
|
+
const [N, f] = b(!1), e = P(p), y = () => {
|
|
23
25
|
if (n) {
|
|
24
26
|
n(e);
|
|
25
27
|
return;
|
|
@@ -30,25 +32,25 @@ const Q = ({
|
|
|
30
32
|
}, r = [];
|
|
31
33
|
u && r.push({
|
|
32
34
|
key: "preview",
|
|
33
|
-
icon: /* @__PURE__ */ i(
|
|
35
|
+
icon: /* @__PURE__ */ i(S, {}),
|
|
34
36
|
tooltip: "预览",
|
|
35
37
|
onClick: () => g()
|
|
36
38
|
}), d && r.push({
|
|
37
39
|
key: "download",
|
|
38
|
-
icon: /* @__PURE__ */ i(
|
|
40
|
+
icon: /* @__PURE__ */ i(B, {}),
|
|
39
41
|
tooltip: "下载",
|
|
40
42
|
onClick: () => y()
|
|
41
43
|
}), h && s && r.push({
|
|
42
44
|
key: "delete",
|
|
43
|
-
icon: /* @__PURE__ */ i(
|
|
45
|
+
icon: /* @__PURE__ */ i(D, {}),
|
|
44
46
|
tooltip: "删除",
|
|
45
47
|
onClick: () => s(e)
|
|
46
48
|
});
|
|
47
|
-
const v = [...r, ...w ?? []], k =
|
|
49
|
+
const v = [...r, ...w ?? []], k = j(e.name, e.mimeType);
|
|
48
50
|
return /* @__PURE__ */ o(C, { children: [
|
|
49
51
|
/* @__PURE__ */ i("div", { className: t("file-item-root", l["file-item-root"]), children: /* @__PURE__ */ o("div", { className: t("file-item-container", l["file-item-container"]), children: [
|
|
50
52
|
/* @__PURE__ */ o("div", { className: t("file-item-wrapper", l["file-item-wrapper"]), children: [
|
|
51
|
-
/* @__PURE__ */ i("span", { className: t("file-item-inner", l["file-item-inner"]), children:
|
|
53
|
+
/* @__PURE__ */ i("span", { className: t("file-item-inner", l["file-item-inner"]), children: A(e.name, e.mimeType) }),
|
|
52
54
|
/* @__PURE__ */ o("div", { className: t("file-item-header", l["file-item-header"]), children: [
|
|
53
55
|
/* @__PURE__ */ o("div", { className: t("file-item-body", l["file-item-body"]), children: [
|
|
54
56
|
/* @__PURE__ */ i(
|
|
@@ -60,10 +62,10 @@ const Q = ({
|
|
|
60
62
|
}
|
|
61
63
|
),
|
|
62
64
|
/* @__PURE__ */ i("span", { className: t("file-item-row", l["file-item-row"]), children: k }),
|
|
63
|
-
e.size != null && /* @__PURE__ */ i("span", { className: t("file-item-row", l["file-item-row"]), children:
|
|
65
|
+
e.size != null && /* @__PURE__ */ i("span", { className: t("file-item-row", l["file-item-row"]), children: T(e.size) })
|
|
64
66
|
] }),
|
|
65
67
|
e.tags && e.tags.length > 0 && /* @__PURE__ */ i(
|
|
66
|
-
|
|
68
|
+
O,
|
|
67
69
|
{
|
|
68
70
|
tags: e.tags,
|
|
69
71
|
className: t("file-item-col", l["file-item-col"])
|
|
@@ -73,8 +75,8 @@ const Q = ({
|
|
|
73
75
|
] }),
|
|
74
76
|
/* @__PURE__ */ o("div", { className: t("file-item-wrap", l["file-item-wrap"]), children: [
|
|
75
77
|
a && /* @__PURE__ */ i("span", { className: t("file-item-panel", l["file-item-panel"]), children: a }),
|
|
76
|
-
/* @__PURE__ */ i("div", { className: t("file-item-action-group", l["file-item-action-group"]), children: v.map((m) => /* @__PURE__ */ i(
|
|
77
|
-
|
|
78
|
+
/* @__PURE__ */ i("div", { className: t("file-item-action-group", l["file-item-action-group"]), children: v.map((m) => /* @__PURE__ */ i(z, { title: m.tooltip, children: /* @__PURE__ */ i(
|
|
79
|
+
x,
|
|
78
80
|
{
|
|
79
81
|
type: "text",
|
|
80
82
|
size: "small",
|
|
@@ -87,7 +89,7 @@ const Q = ({
|
|
|
87
89
|
] })
|
|
88
90
|
] }) }),
|
|
89
91
|
/* @__PURE__ */ i(
|
|
90
|
-
|
|
92
|
+
I,
|
|
91
93
|
{
|
|
92
94
|
open: N,
|
|
93
95
|
file: e,
|
|
@@ -99,6 +101,6 @@ const Q = ({
|
|
|
99
101
|
] });
|
|
100
102
|
};
|
|
101
103
|
export {
|
|
102
|
-
|
|
104
|
+
V as FileItem
|
|
103
105
|
};
|
|
104
106
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/File/FileItem/index.tsx"],"sourcesContent":["import { FileTags } from '@/components/Tag';\nimport { Trash2, Download, Eye } from '@/components/Icons';\nimport { formatFileSize } from '@/utils/format';\nimport { Button, Tooltip } from 'antd';\nimport React, { useState } from 'react';\nimport FilePreviewModal from '../FilePreviewModal';\nimport { getFileIcon, getFileTypeName, normalizeFileDisplayItem } from '../fileDisplay';\nimport type { FileDisplayItem } from '../types';\nimport styles from './style.module.scss';\nimport classNames from 'classnames';\n\nexport interface FileItemAction {\n key: string;\n icon: React.ReactNode;\n tooltip: string;\n onClick: (file: FileDisplayItem) => void;\n}\n\nexport interface FileItemProps {\n file: FileDisplayItem;\n status?: React.ReactNode;\n showDownload?: boolean;\n showDelete?: boolean;\n showPreview?: boolean;\n actions?: FileItemAction[];\n onDownload?: (file: FileDisplayItem) => void;\n onDelete?: (file: FileDisplayItem) => void;\n onPreview?: (file: FileDisplayItem) => void;\n}\n\nconst FileItem: React.FC<FileItemProps> = ({\n file,\n status,\n showDownload = true,\n showDelete = false,\n showPreview = true,\n actions,\n onDownload,\n onDelete,\n onPreview,\n}) => {\n const [previewOpen, setPreviewOpen] = useState(false);\n const resolvedFile = normalizeFileDisplayItem(file);\n\n const handleDownload = () => {\n if (onDownload) {\n onDownload(resolvedFile);\n return;\n }\n if (resolvedFile.url) window.open(resolvedFile.url, '_blank');\n };\n\n const handlePreview = () => {\n if (onPreview) onPreview(resolvedFile);\n else setPreviewOpen(true);\n };\n\n const defaultActions: FileItemAction[] = [];\n if (showPreview) {\n defaultActions.push({\n key: 'preview',\n icon: <Eye />,\n tooltip: '预览',\n onClick: () => handlePreview(),\n });\n }\n if (showDownload) {\n defaultActions.push({\n key: 'download',\n icon: <Download />,\n tooltip: '下载',\n onClick: () => handleDownload(),\n });\n }\n if (showDelete && onDelete) {\n defaultActions.push({\n key: 'delete',\n icon: <Trash2 />,\n tooltip: '删除',\n onClick: () => onDelete(resolvedFile),\n });\n }\n\n const allActions = [...defaultActions, ...(actions ?? [])];\n const typeName = getFileTypeName(resolvedFile.name, resolvedFile.mimeType);\n\n return (\n <>\n <div className={classNames('file-item-root', styles['file-item-root'])}>\n <div className={classNames('file-item-container', styles['file-item-container'])}>\n <div className={classNames('file-item-wrapper', styles['file-item-wrapper'])}>\n <span className={classNames('file-item-inner', styles['file-item-inner'])}>\n {getFileIcon(resolvedFile.name, resolvedFile.mimeType)}\n </span>\n <div className={classNames('file-item-header', styles['file-item-header'])}>\n <div className={classNames('file-item-body', styles['file-item-body'])}>\n <span\n className={classNames('file-item-footer', styles['file-item-footer'])}\n title={resolvedFile.name}\n >\n {resolvedFile.name}\n </span>\n <span className={classNames('file-item-row', styles['file-item-row'])}>\n {typeName}\n </span>\n {resolvedFile.size != null && (\n <span className={classNames('file-item-row', styles['file-item-row'])}>\n {formatFileSize(resolvedFile.size)}\n </span>\n )}\n </div>\n {resolvedFile.tags && resolvedFile.tags.length > 0 && (\n <FileTags\n tags={resolvedFile.tags}\n className={classNames('file-item-col', styles['file-item-col'])}\n />\n )}\n </div>\n </div>\n\n <div className={classNames('file-item-wrap', styles['file-item-wrap'])}>\n {status && (\n <span className={classNames('file-item-panel', styles['file-item-panel'])}>\n {status}\n </span>\n )}\n <div className={classNames('file-item-action-group', styles['file-item-action-group'])}>\n {allActions.map((action) => (\n <Tooltip key={action.key} title={action.tooltip}>\n <Button\n type=\"text\"\n size=\"small\"\n icon={action.icon}\n onClick={(e) => {\n e.stopPropagation();\n action.onClick(resolvedFile);\n }}\n />\n </Tooltip>\n ))}\n </div>\n </div>\n </div>\n </div>\n <FilePreviewModal\n open={previewOpen}\n file={resolvedFile}\n url={resolvedFile.url}\n downloadUrl={resolvedFile.url}\n onClose={() => setPreviewOpen(false)}\n />\n </>\n );\n};\n\nexport { FileItem };\nexport default FileItem;\n"],"names":["FileItem","file","status","showDownload","showDelete","showPreview","actions","onDownload","onDelete","onPreview","previewOpen","setPreviewOpen","useState","resolvedFile","normalizeFileDisplayItem","handleDownload","handlePreview","defaultActions","Eye","Download","Trash2","allActions","typeName","getFileTypeName","jsxs","Fragment","jsx","classNames","styles","getFileIcon","formatFileSize","FileTags","action","Tooltip","Button","e","FilePreviewModal"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/components/File/FileItem/index.tsx"],"sourcesContent":["import { FileTags } from '@/components/Tag';\nimport { Trash2, Download, Eye } from '@/components/Icons';\nimport { formatFileSize } from '@/utils/format';\nimport { Button, Tooltip } from 'antd';\nimport React, { useState } from 'react';\nimport FilePreviewModal from '../FilePreviewModal';\nimport { getFileIcon, getFileTypeName, normalizeFileDisplayItem } from '../fileDisplay';\nimport type { FileDisplayItem } from '../types';\nimport styles from './style.module.scss';\nimport classNames from 'classnames';\n\nexport interface FileItemAction {\n key: string;\n icon: React.ReactNode;\n tooltip: string;\n onClick: (file: FileDisplayItem) => void;\n}\n\nexport interface FileItemProps {\n file: FileDisplayItem;\n status?: React.ReactNode;\n showDownload?: boolean;\n showDelete?: boolean;\n showPreview?: boolean;\n actions?: FileItemAction[];\n onDownload?: (file: FileDisplayItem) => void;\n onDelete?: (file: FileDisplayItem) => void;\n onPreview?: (file: FileDisplayItem) => void;\n}\n\nconst FileItem: React.FC<FileItemProps> = ({\n file,\n status,\n showDownload = true,\n showDelete = false,\n showPreview = true,\n actions,\n onDownload,\n onDelete,\n onPreview,\n}) => {\n const [previewOpen, setPreviewOpen] = useState(false);\n const resolvedFile = normalizeFileDisplayItem(file);\n\n const handleDownload = () => {\n if (onDownload) {\n onDownload(resolvedFile);\n return;\n }\n if (resolvedFile.url) window.open(resolvedFile.url, '_blank');\n };\n\n const handlePreview = () => {\n if (onPreview) onPreview(resolvedFile);\n else setPreviewOpen(true);\n };\n\n const defaultActions: FileItemAction[] = [];\n if (showPreview) {\n defaultActions.push({\n key: 'preview',\n icon: <Eye />,\n tooltip: '预览',\n onClick: () => handlePreview(),\n });\n }\n if (showDownload) {\n defaultActions.push({\n key: 'download',\n icon: <Download />,\n tooltip: '下载',\n onClick: () => handleDownload(),\n });\n }\n if (showDelete && onDelete) {\n defaultActions.push({\n key: 'delete',\n icon: <Trash2 />,\n tooltip: '删除',\n onClick: () => onDelete(resolvedFile),\n });\n }\n\n const allActions = [...defaultActions, ...(actions ?? [])];\n const typeName = getFileTypeName(resolvedFile.name, resolvedFile.mimeType);\n\n return (\n <>\n <div className={classNames('file-item-root', styles['file-item-root'])}>\n <div className={classNames('file-item-container', styles['file-item-container'])}>\n <div className={classNames('file-item-wrapper', styles['file-item-wrapper'])}>\n <span className={classNames('file-item-inner', styles['file-item-inner'])}>\n {getFileIcon(resolvedFile.name, resolvedFile.mimeType)}\n </span>\n <div className={classNames('file-item-header', styles['file-item-header'])}>\n <div className={classNames('file-item-body', styles['file-item-body'])}>\n <span\n className={classNames('file-item-footer', styles['file-item-footer'])}\n title={resolvedFile.name}\n >\n {resolvedFile.name}\n </span>\n <span className={classNames('file-item-row', styles['file-item-row'])}>\n {typeName}\n </span>\n {resolvedFile.size != null && (\n <span className={classNames('file-item-row', styles['file-item-row'])}>\n {formatFileSize(resolvedFile.size)}\n </span>\n )}\n </div>\n {resolvedFile.tags && resolvedFile.tags.length > 0 && (\n <FileTags\n tags={resolvedFile.tags}\n className={classNames('file-item-col', styles['file-item-col'])}\n />\n )}\n </div>\n </div>\n\n <div className={classNames('file-item-wrap', styles['file-item-wrap'])}>\n {status && (\n <span className={classNames('file-item-panel', styles['file-item-panel'])}>\n {status}\n </span>\n )}\n <div className={classNames('file-item-action-group', styles['file-item-action-group'])}>\n {allActions.map((action) => (\n <Tooltip key={action.key} title={action.tooltip}>\n <Button\n type=\"text\"\n size=\"small\"\n icon={action.icon}\n onClick={(e) => {\n e.stopPropagation();\n action.onClick(resolvedFile);\n }}\n />\n </Tooltip>\n ))}\n </div>\n </div>\n </div>\n </div>\n <FilePreviewModal\n open={previewOpen}\n file={resolvedFile}\n url={resolvedFile.url}\n downloadUrl={resolvedFile.url}\n onClose={() => setPreviewOpen(false)}\n />\n </>\n );\n};\n\nexport { FileItem };\nexport default FileItem;\n"],"names":["FileItem","file","status","showDownload","showDelete","showPreview","actions","onDownload","onDelete","onPreview","previewOpen","setPreviewOpen","useState","resolvedFile","normalizeFileDisplayItem","handleDownload","handlePreview","defaultActions","Eye","Download","Trash2","allActions","typeName","getFileTypeName","jsxs","Fragment","jsx","classNames","styles","getFileIcon","formatFileSize","FileTags","action","Tooltip","Button","e","FilePreviewModal"],"mappings":"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"}
|