@hkyhy/marsun-components-core 0.1.52 → 0.1.56

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 (312) hide show
  1. package/README.md +29 -15
  2. package/dist/agent-hub.d.ts +11 -0
  3. package/dist/agent-hub.js +144 -0
  4. package/dist/agent-hub.js.map +1 -0
  5. package/dist/components/AgentHub/Chat/Action/CreateButton.js +3 -3
  6. package/dist/components/AgentHub/Chat/Action/ManageActionButtons.js +4 -4
  7. package/dist/components/AgentHub/Chat/Action/SessionActionButtons.js +4 -4
  8. package/dist/components/AgentHub/Chat/Detail/ChatFollowUpSuggestions/index.js +29 -27
  9. package/dist/components/AgentHub/Chat/Detail/ChatFollowUpSuggestions/index.js.map +1 -1
  10. package/dist/components/AgentHub/Chat/Detail/ChatInput/index.js +19 -18
  11. package/dist/components/AgentHub/Chat/Detail/ChatInput/index.js.map +1 -1
  12. package/dist/components/AgentHub/Chat/Detail/CitationPanel/index.js +18 -17
  13. package/dist/components/AgentHub/Chat/Detail/CitationPanel/index.js.map +1 -1
  14. package/dist/components/AgentHub/Chat/Detail/MessageActions/index.js +23 -19
  15. package/dist/components/AgentHub/Chat/Detail/MessageActions/index.js.map +1 -1
  16. package/dist/components/AgentHub/Chat/Detail/MessageItem/index.js +23 -21
  17. package/dist/components/AgentHub/Chat/Detail/MessageItem/index.js.map +1 -1
  18. package/dist/components/AgentHub/Chat/List/ChatCard/index.js +7 -7
  19. package/dist/components/AgentHub/Chat/List/SessionSidebar/index.js +19 -17
  20. package/dist/components/AgentHub/Chat/List/SessionSidebar/index.js.map +1 -1
  21. package/dist/components/AgentHub/KnowledgeBase/Action/CreateButton.js +3 -3
  22. package/dist/components/AgentHub/KnowledgeBase/Action/ManageActionButtons.js +1 -1
  23. package/dist/components/AgentHub/KnowledgeBase/Detail/DocumentTable/index.js +16 -15
  24. package/dist/components/AgentHub/KnowledgeBase/Detail/DocumentTable/index.js.map +1 -1
  25. package/dist/components/AgentHub/KnowledgeBase/Detail/ParseStatusTag/index.js +7 -7
  26. package/dist/components/AgentHub/KnowledgeBase/List/KnowledgeCard/index.js +8 -8
  27. package/dist/components/AgentHub/Report/Detail/ReportHtmlPreview/index.js +1 -1
  28. package/dist/components/Auth/UserProfileCard/UserProfileCard.js +7 -7
  29. package/dist/components/Auth/UserProfileCard/style.module.scss.js +16 -16
  30. package/dist/components/File/FileItem/index.js +22 -20
  31. package/dist/components/File/FileItem/index.js.map +1 -1
  32. package/dist/components/File/FilePreview/index.js +11 -11
  33. package/dist/components/File/fileDisplay.js +41 -36
  34. package/dist/components/File/fileDisplay.js.map +1 -1
  35. package/dist/components/Filter/CommonFilter/index.js +20 -18
  36. package/dist/components/Filter/CommonFilter/index.js.map +1 -1
  37. package/dist/components/Filter/FilterSelect/index.js +90 -89
  38. package/dist/components/Filter/FilterSelect/index.js.map +1 -1
  39. package/dist/components/Filter/FilterTreeSelect/index.js +51 -48
  40. package/dist/components/Filter/FilterTreeSelect/index.js.map +1 -1
  41. package/dist/components/Filter/FilterTrigger/index.js +13 -11
  42. package/dist/components/Filter/FilterTrigger/index.js.map +1 -1
  43. package/dist/components/Form/PersonOptionRow/index.js +4 -4
  44. package/dist/components/Icons/ArrowLeft.d.ts +1 -0
  45. package/dist/components/Icons/ArrowLeft.js +7 -0
  46. package/dist/components/Icons/ArrowLeft.js.map +1 -0
  47. package/dist/components/Icons/ArrowLeftRight.d.ts +1 -0
  48. package/dist/components/Icons/ArrowLeftRight.js +7 -0
  49. package/dist/components/Icons/ArrowLeftRight.js.map +1 -0
  50. package/dist/components/Icons/BarChart3.d.ts +1 -0
  51. package/dist/components/Icons/BarChart3.js +7 -0
  52. package/dist/components/Icons/BarChart3.js.map +1 -0
  53. package/dist/components/Icons/Bell.d.ts +1 -0
  54. package/dist/components/Icons/Bell.js +7 -0
  55. package/dist/components/Icons/Bell.js.map +1 -0
  56. package/dist/components/Icons/BookOpen.d.ts +1 -0
  57. package/dist/components/Icons/BookOpen.js +7 -0
  58. package/dist/components/Icons/BookOpen.js.map +1 -0
  59. package/dist/components/Icons/Bot.d.ts +1 -0
  60. package/dist/components/Icons/Bot.js +7 -0
  61. package/dist/components/Icons/Bot.js.map +1 -0
  62. package/dist/components/Icons/Check.d.ts +1 -0
  63. package/dist/components/Icons/Check.js +7 -0
  64. package/dist/components/Icons/Check.js.map +1 -0
  65. package/dist/components/Icons/ChevronDown.d.ts +1 -0
  66. package/dist/components/Icons/ChevronDown.js +7 -0
  67. package/dist/components/Icons/ChevronDown.js.map +1 -0
  68. package/dist/components/Icons/ChevronLeft.d.ts +1 -0
  69. package/dist/components/Icons/ChevronLeft.js +7 -0
  70. package/dist/components/Icons/ChevronLeft.js.map +1 -0
  71. package/dist/components/Icons/ChevronRight.d.ts +1 -0
  72. package/dist/components/Icons/ChevronRight.js +7 -0
  73. package/dist/components/Icons/ChevronRight.js.map +1 -0
  74. package/dist/components/Icons/ChevronUp.d.ts +1 -0
  75. package/dist/components/Icons/ChevronUp.js +7 -0
  76. package/dist/components/Icons/ChevronUp.js.map +1 -0
  77. package/dist/components/Icons/CircleAlert.d.ts +1 -0
  78. package/dist/components/Icons/CircleAlert.js +7 -0
  79. package/dist/components/Icons/CircleAlert.js.map +1 -0
  80. package/dist/components/Icons/CircleCheck.d.ts +1 -0
  81. package/dist/components/Icons/CircleCheck.js +7 -0
  82. package/dist/components/Icons/CircleCheck.js.map +1 -0
  83. package/dist/components/Icons/CircleHelp.d.ts +1 -0
  84. package/dist/components/Icons/CircleHelp.js +7 -0
  85. package/dist/components/Icons/CircleHelp.js.map +1 -0
  86. package/dist/components/Icons/CirclePlay.d.ts +1 -0
  87. package/dist/components/Icons/CirclePlay.js +7 -0
  88. package/dist/components/Icons/CirclePlay.js.map +1 -0
  89. package/dist/components/Icons/CircleX.d.ts +1 -0
  90. package/dist/components/Icons/CircleX.js +7 -0
  91. package/dist/components/Icons/CircleX.js.map +1 -0
  92. package/dist/components/Icons/ClipboardCheck.d.ts +1 -0
  93. package/dist/components/Icons/ClipboardCheck.js +7 -0
  94. package/dist/components/Icons/ClipboardCheck.js.map +1 -0
  95. package/dist/components/Icons/Clock.d.ts +1 -0
  96. package/dist/components/Icons/Clock.js +7 -0
  97. package/dist/components/Icons/Clock.js.map +1 -0
  98. package/dist/components/Icons/CloudDownload.d.ts +1 -0
  99. package/dist/components/Icons/CloudDownload.js +7 -0
  100. package/dist/components/Icons/CloudDownload.js.map +1 -0
  101. package/dist/components/Icons/CloudUpload.d.ts +1 -0
  102. package/dist/components/Icons/CloudUpload.js +7 -0
  103. package/dist/components/Icons/CloudUpload.js.map +1 -0
  104. package/dist/components/Icons/Code.d.ts +1 -0
  105. package/dist/components/Icons/Code.js +7 -0
  106. package/dist/components/Icons/Code.js.map +1 -0
  107. package/dist/components/Icons/Copy.d.ts +1 -0
  108. package/dist/components/Icons/Copy.js +7 -0
  109. package/dist/components/Icons/Copy.js.map +1 -0
  110. package/dist/components/Icons/Crown.d.ts +1 -0
  111. package/dist/components/Icons/Crown.js +7 -0
  112. package/dist/components/Icons/Crown.js.map +1 -0
  113. package/dist/components/Icons/Database.d.ts +1 -0
  114. package/dist/components/Icons/Database.js +7 -0
  115. package/dist/components/Icons/Database.js.map +1 -0
  116. package/dist/components/Icons/Download.d.ts +1 -0
  117. package/dist/components/Icons/Download.js +7 -0
  118. package/dist/components/Icons/Download.js.map +1 -0
  119. package/dist/components/Icons/Eye.d.ts +1 -0
  120. package/dist/components/Icons/Eye.js +7 -0
  121. package/dist/components/Icons/Eye.js.map +1 -0
  122. package/dist/components/Icons/EyeOff.d.ts +1 -0
  123. package/dist/components/Icons/EyeOff.js +7 -0
  124. package/dist/components/Icons/EyeOff.js.map +1 -0
  125. package/dist/components/Icons/File.d.ts +1 -0
  126. package/dist/components/Icons/File.js +7 -0
  127. package/dist/components/Icons/File.js.map +1 -0
  128. package/dist/components/Icons/FileArchive.d.ts +1 -0
  129. package/dist/components/Icons/FileArchive.js +7 -0
  130. package/dist/components/Icons/FileArchive.js.map +1 -0
  131. package/dist/components/Icons/FileImage.d.ts +1 -0
  132. package/dist/components/Icons/FileImage.js +7 -0
  133. package/dist/components/Icons/FileImage.js.map +1 -0
  134. package/dist/components/Icons/FileSpreadsheet.d.ts +1 -0
  135. package/dist/components/Icons/FileSpreadsheet.js +7 -0
  136. package/dist/components/Icons/FileSpreadsheet.js.map +1 -0
  137. package/dist/components/Icons/FileText.d.ts +1 -0
  138. package/dist/components/Icons/FileText.js +7 -0
  139. package/dist/components/Icons/FileText.js.map +1 -0
  140. package/dist/components/Icons/Flag.d.ts +1 -0
  141. package/dist/components/Icons/Flag.js +7 -0
  142. package/dist/components/Icons/Flag.js.map +1 -0
  143. package/dist/components/Icons/Flame.d.ts +1 -0
  144. package/dist/components/Icons/Flame.js +7 -0
  145. package/dist/components/Icons/Flame.js.map +1 -0
  146. package/dist/components/Icons/Folder.d.ts +1 -0
  147. package/dist/components/Icons/Folder.js +7 -0
  148. package/dist/components/Icons/Folder.js.map +1 -0
  149. package/dist/components/Icons/FolderOpen.d.ts +1 -0
  150. package/dist/components/Icons/FolderOpen.js +7 -0
  151. package/dist/components/Icons/FolderOpen.js.map +1 -0
  152. package/dist/components/Icons/Hash.d.ts +1 -0
  153. package/dist/components/Icons/Hash.js +7 -0
  154. package/dist/components/Icons/Hash.js.map +1 -0
  155. package/dist/components/Icons/House.d.ts +1 -0
  156. package/dist/components/Icons/House.js +7 -0
  157. package/dist/components/Icons/House.js.map +1 -0
  158. package/dist/components/Icons/Import.d.ts +1 -0
  159. package/dist/components/Icons/Import.js +7 -0
  160. package/dist/components/Icons/Import.js.map +1 -0
  161. package/dist/components/Icons/Inbox.d.ts +1 -0
  162. package/dist/components/Icons/Inbox.js +7 -0
  163. package/dist/components/Icons/Inbox.js.map +1 -0
  164. package/dist/components/Icons/Info.d.ts +1 -0
  165. package/dist/components/Icons/Info.js +7 -0
  166. package/dist/components/Icons/Info.js.map +1 -0
  167. package/dist/components/Icons/LayoutDashboard.d.ts +1 -0
  168. package/dist/components/Icons/LayoutDashboard.js +7 -0
  169. package/dist/components/Icons/LayoutDashboard.js.map +1 -0
  170. package/dist/components/Icons/LayoutGrid.d.ts +1 -0
  171. package/dist/components/Icons/LayoutGrid.js +7 -0
  172. package/dist/components/Icons/LayoutGrid.js.map +1 -0
  173. package/dist/components/Icons/ListTodo.d.ts +1 -0
  174. package/dist/components/Icons/ListTodo.js +7 -0
  175. package/dist/components/Icons/ListTodo.js.map +1 -0
  176. package/dist/components/Icons/Loader2.d.ts +1 -0
  177. package/dist/components/Icons/Loader2.js +7 -0
  178. package/dist/components/Icons/Loader2.js.map +1 -0
  179. package/dist/components/Icons/Lock.d.ts +1 -0
  180. package/dist/components/Icons/Lock.js +7 -0
  181. package/dist/components/Icons/Lock.js.map +1 -0
  182. package/dist/components/Icons/LogOut.d.ts +1 -0
  183. package/dist/components/Icons/LogOut.js +7 -0
  184. package/dist/components/Icons/LogOut.js.map +1 -0
  185. package/dist/components/Icons/Maximize2.d.ts +1 -0
  186. package/dist/components/Icons/Maximize2.js +7 -0
  187. package/dist/components/Icons/Maximize2.js.map +1 -0
  188. package/dist/components/Icons/MessageCircle.d.ts +1 -0
  189. package/dist/components/Icons/MessageCircle.js +7 -0
  190. package/dist/components/Icons/MessageCircle.js.map +1 -0
  191. package/dist/components/Icons/MessageSquare.d.ts +1 -0
  192. package/dist/components/Icons/MessageSquare.js +7 -0
  193. package/dist/components/Icons/MessageSquare.js.map +1 -0
  194. package/dist/components/Icons/Minimize2.d.ts +1 -0
  195. package/dist/components/Icons/Minimize2.js +7 -0
  196. package/dist/components/Icons/Minimize2.js.map +1 -0
  197. package/dist/components/Icons/PanelLeftClose.d.ts +1 -0
  198. package/dist/components/Icons/PanelLeftClose.js +7 -0
  199. package/dist/components/Icons/PanelLeftClose.js.map +1 -0
  200. package/dist/components/Icons/PanelLeftOpen.d.ts +1 -0
  201. package/dist/components/Icons/PanelLeftOpen.js +7 -0
  202. package/dist/components/Icons/PanelLeftOpen.js.map +1 -0
  203. package/dist/components/Icons/Pause.d.ts +1 -0
  204. package/dist/components/Icons/Pause.js +7 -0
  205. package/dist/components/Icons/Pause.js.map +1 -0
  206. package/dist/components/Icons/Pencil.d.ts +1 -0
  207. package/dist/components/Icons/Pencil.js +7 -0
  208. package/dist/components/Icons/Pencil.js.map +1 -0
  209. package/dist/components/Icons/Plus.d.ts +1 -0
  210. package/dist/components/Icons/Plus.js +7 -0
  211. package/dist/components/Icons/Plus.js.map +1 -0
  212. package/dist/components/Icons/Presentation.d.ts +1 -0
  213. package/dist/components/Icons/Presentation.js +7 -0
  214. package/dist/components/Icons/Presentation.js.map +1 -0
  215. package/dist/components/Icons/RefreshCw.d.ts +1 -0
  216. package/dist/components/Icons/RefreshCw.js +7 -0
  217. package/dist/components/Icons/RefreshCw.js.map +1 -0
  218. package/dist/components/Icons/RotateCw.d.ts +1 -0
  219. package/dist/components/Icons/RotateCw.js +7 -0
  220. package/dist/components/Icons/RotateCw.js.map +1 -0
  221. package/dist/components/Icons/Send.d.ts +1 -0
  222. package/dist/components/Icons/Send.js +7 -0
  223. package/dist/components/Icons/Send.js.map +1 -0
  224. package/dist/components/Icons/Settings.d.ts +1 -0
  225. package/dist/components/Icons/Settings.js +7 -0
  226. package/dist/components/Icons/Settings.js.map +1 -0
  227. package/dist/components/Icons/Shield.d.ts +1 -0
  228. package/dist/components/Icons/Shield.js +7 -0
  229. package/dist/components/Icons/Shield.js.map +1 -0
  230. package/dist/components/Icons/ShieldCheck.d.ts +1 -0
  231. package/dist/components/Icons/ShieldCheck.js +7 -0
  232. package/dist/components/Icons/ShieldCheck.js.map +1 -0
  233. package/dist/components/Icons/SlidersHorizontal.d.ts +1 -0
  234. package/dist/components/Icons/SlidersHorizontal.js +7 -0
  235. package/dist/components/Icons/SlidersHorizontal.js.map +1 -0
  236. package/dist/components/Icons/Square.d.ts +1 -0
  237. package/dist/components/Icons/Square.js +7 -0
  238. package/dist/components/Icons/Square.js.map +1 -0
  239. package/dist/components/Icons/Star.d.ts +1 -0
  240. package/dist/components/Icons/Star.js +7 -0
  241. package/dist/components/Icons/Star.js.map +1 -0
  242. package/dist/components/Icons/ThumbsDown.d.ts +1 -0
  243. package/dist/components/Icons/ThumbsDown.js +7 -0
  244. package/dist/components/Icons/ThumbsDown.js.map +1 -0
  245. package/dist/components/Icons/ThumbsUp.d.ts +1 -0
  246. package/dist/components/Icons/ThumbsUp.js +7 -0
  247. package/dist/components/Icons/ThumbsUp.js.map +1 -0
  248. package/dist/components/Icons/Trash2.d.ts +1 -0
  249. package/dist/components/Icons/Trash2.js +7 -0
  250. package/dist/components/Icons/Trash2.js.map +1 -0
  251. package/dist/components/Icons/Trophy.d.ts +1 -0
  252. package/dist/components/Icons/Trophy.js +7 -0
  253. package/dist/components/Icons/Trophy.js.map +1 -0
  254. package/dist/components/Icons/Undo2.d.ts +1 -0
  255. package/dist/components/Icons/Undo2.js +7 -0
  256. package/dist/components/Icons/Undo2.js.map +1 -0
  257. package/dist/components/Icons/Upload.d.ts +1 -0
  258. package/dist/components/Icons/Upload.js +7 -0
  259. package/dist/components/Icons/Upload.js.map +1 -0
  260. package/dist/components/Icons/User.d.ts +1 -0
  261. package/dist/components/Icons/User.js +7 -0
  262. package/dist/components/Icons/User.js.map +1 -0
  263. package/dist/components/Icons/UserPlus.d.ts +1 -0
  264. package/dist/components/Icons/UserPlus.js +7 -0
  265. package/dist/components/Icons/UserPlus.js.map +1 -0
  266. package/dist/components/Icons/UserRoundCog.d.ts +1 -0
  267. package/dist/components/Icons/UserRoundCog.js +7 -0
  268. package/dist/components/Icons/UserRoundCog.js.map +1 -0
  269. package/dist/components/Icons/Users.d.ts +1 -0
  270. package/dist/components/Icons/Users.js +7 -0
  271. package/dist/components/Icons/Users.js.map +1 -0
  272. package/dist/components/Icons/X.d.ts +1 -0
  273. package/dist/components/Icons/X.js +7 -0
  274. package/dist/components/Icons/X.js.map +1 -0
  275. package/dist/components/Icons/createIcon.d.ts +9 -0
  276. package/dist/components/Icons/createIcon.js +32 -0
  277. package/dist/components/Icons/createIcon.js.map +1 -0
  278. package/dist/components/Icons/index.d.ts +80 -90
  279. package/dist/components/Icons/registry.d.ts +6 -0
  280. package/dist/components/Icons/registry.js +239 -0
  281. package/dist/components/Icons/registry.js.map +1 -0
  282. package/dist/components/InteractiveBlock/InteractiveBlock.js +6 -6
  283. package/dist/components/Layout/AgentAppShell/AgentAppShell.js +112 -91
  284. package/dist/components/Layout/AgentAppShell/AgentAppShell.js.map +1 -1
  285. package/dist/components/Layout/AgentAppShell/style.module.scss.js +20 -18
  286. package/dist/components/Layout/AgentAppShell/style.module.scss.js.map +1 -1
  287. package/dist/components/Layout/PageHeaderLayout/index.js +7 -7
  288. package/dist/components/Modal/Modal/index.js +8 -8
  289. package/dist/components/Modal/StepModal/index.js +9 -9
  290. package/dist/components/OrgTree/OrgTree.js +41 -39
  291. package/dist/components/OrgTree/OrgTree.js.map +1 -1
  292. package/dist/components/StateBar/StateBar.js +4 -4
  293. package/dist/components/Table/ColumnConfigPanel.js +13 -10
  294. package/dist/components/Table/ColumnConfigPanel.js.map +1 -1
  295. package/dist/components/Table/Table.js +7 -7
  296. package/dist/components/Tour/AppTour/index.js +10 -10
  297. package/dist/components/Upload/index.js +76 -72
  298. package/dist/components/Upload/index.js.map +1 -1
  299. package/dist/file.d.ts +5 -0
  300. package/dist/file.js +24 -0
  301. package/dist/file.js.map +1 -0
  302. package/dist/index.d.ts +3 -1
  303. package/dist/index.js +615 -537
  304. package/dist/index.js.map +1 -1
  305. package/dist/llm.d.ts +5 -0
  306. package/dist/llm.js +8 -0
  307. package/dist/llm.js.map +1 -0
  308. package/dist/marsun-components-core.css +1 -1
  309. package/dist/styles/global.css +1 -1
  310. package/package.json +15 -5
  311. package/dist/components/Icons/index.js +0 -268
  312. package/dist/components/Icons/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"OrgTree.js","sources":["../../../src/components/OrgTree/OrgTree.tsx"],"sourcesContent":["import { Pencil, Plus, Trash2 } from '../Icons';\nimport { Button, Popconfirm, Space, Spin, Tooltip, Tree } from 'antd';\nimport type { DataNode } from 'antd/es/tree';\nimport classNames from 'classnames';\nimport React, { useEffect, useMemo, useState, type Key, type ReactNode } from 'react';\nimport styles from './style.module.scss';\n\nexport type OrgTreeNode = {\n id: string;\n name: string;\n parentId?: string | null;\n children?: OrgTreeNode[];\n /** 名称旁附加文案(如 mapped) */\n nameExtra?: ReactNode;\n};\n\nexport type OrgTreeProps = {\n nodes: OrgTreeNode[];\n loading?: boolean;\n /** 展示节点内增删改操作 */\n editable?: boolean;\n className?: string;\n /** 受控选中(点选节点,如右侧岗位面板) */\n selectedKeys?: Key[];\n onSelect?: (node: { id: string; name: string; parentId: string | null } | null) => void;\n onAdd?: (parentId: string) => void;\n onEdit?: (node: { id: string; name: string; parentId: string | null }) => void;\n /** 确认删除后回调;由业务执行 API */\n onDelete?: (node: { id: string; name: string }) => void | Promise<void>;\n /** 删除确认文案 */\n deleteConfirmTitle?: string;\n /** 确认钮文案(软禁用场景可传「禁用」) */\n deleteOkText?: string;\n deleteOkType?: 'primary' | 'danger';\n};\n\nfunction collectAllKeys(nodes: OrgTreeNode[]): string[] {\n const keys: string[] = [];\n for (const n of nodes) {\n keys.push(n.id);\n if (n.children?.length) keys.push(...collectAllKeys(n.children));\n }\n return keys;\n}\n\nfunction findOrgNode(\n list: OrgTreeNode[],\n id: string,\n): { id: string; name: string; parentId: string | null } | null {\n for (const n of list) {\n if (n.id === id) {\n return { id: n.id, name: n.name, parentId: n.parentId ?? null };\n }\n if (n.children?.length) {\n const hit = findOrgNode(n.children, id);\n if (hit) return hit;\n }\n }\n return null;\n}\n\n/**\n * 组织树(对齐 Assets 组织架构行为):默认展开、节点 hover 增删改。\n * 纯 UI,无业务 API。\n */\nconst OrgTree: React.FC<OrgTreeProps> = ({\n nodes,\n loading = false,\n editable = false,\n className,\n selectedKeys,\n onSelect,\n onAdd,\n onEdit,\n onDelete,\n deleteConfirmTitle = '确认删除该节点?',\n deleteOkText = '删除',\n deleteOkType = 'danger',\n}) => {\n const allKeys = useMemo(() => collectAllKeys(nodes), [nodes]);\n const [expandedKeys, setExpandedKeys] = useState<Key[]>([]);\n\n useEffect(() => {\n setExpandedKeys(allKeys);\n }, [allKeys]);\n\n const buildTreeNodes = (list: OrgTreeNode[]): DataNode[] =>\n list.map((node) => ({\n key: node.id,\n title: (\n <div className={classNames('marsun-org-tree-row', styles['marsun-org-tree-row'])}>\n <Tooltip\n title={\n node.nameExtra ? (\n <>\n {node.name}\n {node.nameExtra}\n </>\n ) : (\n node.name\n )\n }\n >\n <span className={classNames('marsun-org-tree-name', styles['marsun-org-tree-name'])}>\n {node.name}\n {node.nameExtra ? (\n <span\n className={classNames('marsun-org-tree-extra', styles['marsun-org-tree-extra'])}\n >\n {node.nameExtra}\n </span>\n ) : null}\n </span>\n </Tooltip>\n {editable ? (\n <Space\n size={0}\n className={classNames('marsun-org-tree-actions', styles['marsun-org-tree-actions'])}\n >\n {onAdd ? (\n <Button\n type=\"text\"\n size=\"small\"\n aria-label=\"添加子节点\"\n icon={<Plus size={14} />}\n onClick={(e) => {\n e.stopPropagation();\n onAdd(node.id);\n }}\n />\n ) : null}\n {onEdit ? (\n <Button\n type=\"text\"\n size=\"small\"\n aria-label=\"编辑\"\n icon={<Pencil size={14} />}\n onClick={(e) => {\n e.stopPropagation();\n onEdit({\n id: node.id,\n name: node.name,\n parentId: node.parentId ?? null,\n });\n }}\n />\n ) : null}\n {onDelete ? (\n <Popconfirm\n title={deleteConfirmTitle}\n okText={deleteOkText}\n okType={deleteOkType}\n cancelText=\"取消\"\n onConfirm={(e) => {\n e?.stopPropagation();\n return onDelete({ id: node.id, name: node.name });\n }}\n onCancel={(e) => e?.stopPropagation()}\n >\n <Button\n type=\"text\"\n size=\"small\"\n danger\n aria-label={deleteOkText}\n icon={<Trash2 size={14} />}\n onClick={(e) => e.stopPropagation()}\n />\n </Popconfirm>\n ) : null}\n </Space>\n ) : null}\n </div>\n ),\n children: node.children?.length ? buildTreeNodes(node.children) : undefined,\n }));\n\n const treeData = buildTreeNodes(nodes);\n\n return (\n <Spin spinning={loading}>\n <Tree\n className={classNames('marsun-org-tree', styles['marsun-org-tree'], className)}\n treeData={treeData}\n expandedKeys={expandedKeys}\n onExpand={(keys) => setExpandedKeys(keys)}\n selectedKeys={selectedKeys}\n onSelect={(keys) => {\n if (!onSelect) return;\n const id = keys[0] != null ? String(keys[0]) : '';\n onSelect(id ? findOrgNode(nodes, id) : null);\n }}\n showLine\n blockNode\n />\n </Spin>\n );\n};\n\nexport default OrgTree;\n"],"names":["collectAllKeys","nodes","keys","_a","findOrgNode","list","id","hit","OrgTree","loading","editable","className","selectedKeys","onSelect","onAdd","onEdit","onDelete","deleteConfirmTitle","deleteOkText","deleteOkType","allKeys","useMemo","expandedKeys","setExpandedKeys","useState","useEffect","buildTreeNodes","node","classNames","styles","jsx","Tooltip","jsxs","Fragment","Space","Button","Plus","Pencil","Popconfirm","Trash2","treeData","Spin","Tree"],"mappings":"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"}
1
+ {"version":3,"file":"OrgTree.js","sources":["../../../src/components/OrgTree/OrgTree.tsx"],"sourcesContent":["import { Pencil, Plus, Trash2 } from '../Icons';\nimport { Button, Popconfirm, Space, Spin, Tooltip, Tree } from 'antd';\nimport type { DataNode } from 'antd/es/tree';\nimport classNames from 'classnames';\nimport React, { useEffect, useMemo, useState, type Key, type ReactNode } from 'react';\nimport styles from './style.module.scss';\n\nexport type OrgTreeNode = {\n id: string;\n name: string;\n parentId?: string | null;\n children?: OrgTreeNode[];\n /** 名称旁附加文案(如 mapped) */\n nameExtra?: ReactNode;\n};\n\nexport type OrgTreeProps = {\n nodes: OrgTreeNode[];\n loading?: boolean;\n /** 展示节点内增删改操作 */\n editable?: boolean;\n className?: string;\n /** 受控选中(点选节点,如右侧岗位面板) */\n selectedKeys?: Key[];\n onSelect?: (node: { id: string; name: string; parentId: string | null } | null) => void;\n onAdd?: (parentId: string) => void;\n onEdit?: (node: { id: string; name: string; parentId: string | null }) => void;\n /** 确认删除后回调;由业务执行 API */\n onDelete?: (node: { id: string; name: string }) => void | Promise<void>;\n /** 删除确认文案 */\n deleteConfirmTitle?: string;\n /** 确认钮文案(软禁用场景可传「禁用」) */\n deleteOkText?: string;\n deleteOkType?: 'primary' | 'danger';\n};\n\nfunction collectAllKeys(nodes: OrgTreeNode[]): string[] {\n const keys: string[] = [];\n for (const n of nodes) {\n keys.push(n.id);\n if (n.children?.length) keys.push(...collectAllKeys(n.children));\n }\n return keys;\n}\n\nfunction findOrgNode(\n list: OrgTreeNode[],\n id: string,\n): { id: string; name: string; parentId: string | null } | null {\n for (const n of list) {\n if (n.id === id) {\n return { id: n.id, name: n.name, parentId: n.parentId ?? null };\n }\n if (n.children?.length) {\n const hit = findOrgNode(n.children, id);\n if (hit) return hit;\n }\n }\n return null;\n}\n\n/**\n * 组织树(对齐 Assets 组织架构行为):默认展开、节点 hover 增删改。\n * 纯 UI,无业务 API。\n */\nconst OrgTree: React.FC<OrgTreeProps> = ({\n nodes,\n loading = false,\n editable = false,\n className,\n selectedKeys,\n onSelect,\n onAdd,\n onEdit,\n onDelete,\n deleteConfirmTitle = '确认删除该节点?',\n deleteOkText = '删除',\n deleteOkType = 'danger',\n}) => {\n const allKeys = useMemo(() => collectAllKeys(nodes), [nodes]);\n const [expandedKeys, setExpandedKeys] = useState<Key[]>([]);\n\n useEffect(() => {\n setExpandedKeys(allKeys);\n }, [allKeys]);\n\n const buildTreeNodes = (list: OrgTreeNode[]): DataNode[] =>\n list.map((node) => ({\n key: node.id,\n title: (\n <div className={classNames('marsun-org-tree-row', styles['marsun-org-tree-row'])}>\n <Tooltip\n title={\n node.nameExtra ? (\n <>\n {node.name}\n {node.nameExtra}\n </>\n ) : (\n node.name\n )\n }\n >\n <span className={classNames('marsun-org-tree-name', styles['marsun-org-tree-name'])}>\n {node.name}\n {node.nameExtra ? (\n <span\n className={classNames('marsun-org-tree-extra', styles['marsun-org-tree-extra'])}\n >\n {node.nameExtra}\n </span>\n ) : null}\n </span>\n </Tooltip>\n {editable ? (\n <Space\n size={0}\n className={classNames('marsun-org-tree-actions', styles['marsun-org-tree-actions'])}\n >\n {onAdd ? (\n <Button\n type=\"text\"\n size=\"small\"\n aria-label=\"添加子节点\"\n icon={<Plus size={14} />}\n onClick={(e) => {\n e.stopPropagation();\n onAdd(node.id);\n }}\n />\n ) : null}\n {onEdit ? (\n <Button\n type=\"text\"\n size=\"small\"\n aria-label=\"编辑\"\n icon={<Pencil size={14} />}\n onClick={(e) => {\n e.stopPropagation();\n onEdit({\n id: node.id,\n name: node.name,\n parentId: node.parentId ?? null,\n });\n }}\n />\n ) : null}\n {onDelete ? (\n <Popconfirm\n title={deleteConfirmTitle}\n okText={deleteOkText}\n okType={deleteOkType}\n cancelText=\"取消\"\n onConfirm={(e) => {\n e?.stopPropagation();\n return onDelete({ id: node.id, name: node.name });\n }}\n onCancel={(e) => e?.stopPropagation()}\n >\n <Button\n type=\"text\"\n size=\"small\"\n danger\n aria-label={deleteOkText}\n icon={<Trash2 size={14} />}\n onClick={(e) => e.stopPropagation()}\n />\n </Popconfirm>\n ) : null}\n </Space>\n ) : null}\n </div>\n ),\n children: node.children?.length ? buildTreeNodes(node.children) : undefined,\n }));\n\n const treeData = buildTreeNodes(nodes);\n\n return (\n <Spin spinning={loading}>\n <Tree\n className={classNames('marsun-org-tree', styles['marsun-org-tree'], className)}\n treeData={treeData}\n expandedKeys={expandedKeys}\n onExpand={(keys) => setExpandedKeys(keys)}\n selectedKeys={selectedKeys}\n onSelect={(keys) => {\n if (!onSelect) return;\n const id = keys[0] != null ? String(keys[0]) : '';\n onSelect(id ? findOrgNode(nodes, id) : null);\n }}\n showLine\n blockNode\n />\n </Spin>\n );\n};\n\nexport default OrgTree;\n"],"names":["collectAllKeys","nodes","keys","_a","findOrgNode","list","id","hit","OrgTree","loading","editable","className","selectedKeys","onSelect","onAdd","onEdit","onDelete","deleteConfirmTitle","deleteOkText","deleteOkType","allKeys","useMemo","expandedKeys","setExpandedKeys","useState","useEffect","buildTreeNodes","node","classNames","styles","jsx","Tooltip","jsxs","Fragment","Space","Button","Plus","Pencil","Popconfirm","Trash2","treeData","Spin","Tree"],"mappings":"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"}
@@ -1,21 +1,21 @@
1
1
  import { jsx as r, jsxs as p } from "react/jsx-runtime";
2
2
  import { Tabs as u } from "antd";
3
3
  import o from "classnames";
4
- import { Info as N } from "../Icons/index.js";
5
4
  import a from "./style.module.scss.js";
6
- import x from "../TooltipInfo/TooltipInfo.js";
5
+ import N from "../TooltipInfo/TooltipInfo.js";
6
+ import { Info as x } from "../Icons/Info.js";
7
7
  function y(e, t) {
8
8
  return !t || t.length === 0 ? e : /* @__PURE__ */ p("span", { className: o("marsun-state-bar-tab-label", a["state-bar-tab-label"]), children: [
9
9
  e,
10
10
  /* @__PURE__ */ r(
11
- x,
11
+ N,
12
12
  {
13
13
  content: t,
14
14
  placement: "topLeft",
15
15
  minWidth: 220,
16
16
  maxWidth: 360,
17
17
  overlayClassName: "marsun-state-bar-info-tooltip",
18
- children: /* @__PURE__ */ r("span", { className: o("marsun-state-bar-info", a["state-bar-info"]), children: /* @__PURE__ */ r(N, { size: 14, "aria-hidden": !0 }) })
18
+ children: /* @__PURE__ */ r("span", { className: o("marsun-state-bar-info", a["state-bar-info"]), children: /* @__PURE__ */ r(x, { size: 14, "aria-hidden": !0 }) })
19
19
  }
20
20
  )
21
21
  ] });
@@ -1,9 +1,12 @@
1
1
  import { jsx as e, jsxs as v, Fragment as B } from "react/jsx-runtime";
2
2
  import { useState as S, useCallback as E, useMemo as z } from "react";
3
3
  import { Popover as J, Tooltip as Q, Collapse as X, Input as R, Space as Y, Button as V, Empty as A, Checkbox as Z } from "antd";
4
- import { Settings as $, Undo2 as q, ChevronDown as ee, ChevronRight as ne } from "../Icons/index.js";
5
- import { mergePanelWithConfig as re, splitVisibleHidden as te, panelItemsToConfig as ae } from "./columnConfigUtils.js";
4
+ import { mergePanelWithConfig as $, splitVisibleHidden as q, panelItemsToConfig as ee } from "./columnConfigUtils.js";
6
5
  import i from "./columnConfig.module.scss.js";
6
+ import { Settings as ne } from "../Icons/Settings.js";
7
+ import { Undo2 as re } from "../Icons/Undo2.js";
8
+ import { ChevronDown as te } from "../Icons/ChevronDown.js";
9
+ import { ChevronRight as ae } from "../Icons/ChevronRight.js";
7
10
  function j(s, r) {
8
11
  if (!r) return !0;
9
12
  const l = r.toLowerCase();
@@ -44,7 +47,7 @@ const H = ({ items: s, search: r, onChange: l, onToggle: t, depth: f = 0, collap
44
47
  onClick: (d) => {
45
48
  d.stopPropagation(), c(n.id);
46
49
  },
47
- children: p ? /* @__PURE__ */ e(ee, { size: 14 }) : /* @__PURE__ */ e(ne, { size: 14 })
50
+ children: p ? /* @__PURE__ */ e(te, { size: 14 }) : /* @__PURE__ */ e(ae, { size: 14 })
48
51
  }
49
52
  ) : /* @__PURE__ */ e("span", { className: i.foldSpacer, "aria-hidden": !0 }),
50
53
  /* @__PURE__ */ e("span", { className: i.grip, "aria-hidden": !0, children: "⠿" }),
@@ -110,10 +113,10 @@ const le = ({
110
113
  children: h
111
114
  }) => {
112
115
  const [c, g] = S([]), [y, w] = S(""), [D, L] = S(""), [T, n] = S(!1), [o, m] = S(() => /* @__PURE__ */ new Set()), p = E(() => {
113
- g(re(l, t)), w(""), L(""), m(/* @__PURE__ */ new Set());
116
+ g($(l, t)), w(""), L(""), m(/* @__PURE__ */ new Set());
114
117
  }, [l, t]), C = (a) => {
115
118
  a && p(), r(a);
116
- }, { visible: d, hidden: x } = z(() => te(c), [c]), N = z(() => c.filter((a) => a.hidden), [c]), _ = (a) => {
119
+ }, { visible: d, hidden: x } = z(() => q(c), [c]), N = z(() => c.filter((a) => a.hidden), [c]), _ = (a) => {
117
120
  g(M(a, N));
118
121
  }, G = (a) => {
119
122
  const b = new Set(N.map((k) => k.id)), u = a.filter((k) => b.has(k.id));
@@ -138,14 +141,14 @@ const le = ({
138
141
  }, U = async () => {
139
142
  n(!0);
140
143
  try {
141
- await f(ae(c)), r(!1);
144
+ await f(ee(c)), r(!1);
142
145
  } finally {
143
146
  n(!1);
144
147
  }
145
148
  }, W = /* @__PURE__ */ v("div", { className: i.panel, "data-ui": "table-column-config", children: [
146
149
  /* @__PURE__ */ v("div", { className: i.header, children: [
147
150
  /* @__PURE__ */ e("span", { className: i.title, children: "编辑表格" }),
148
- /* @__PURE__ */ e(Q, { title: "恢复默认", children: /* @__PURE__ */ e("button", { type: "button", className: i.resetBtn, onClick: K, "aria-label": "恢复默认", children: /* @__PURE__ */ e(q, { size: 16 }) }) })
151
+ /* @__PURE__ */ e(Q, { title: "恢复默认", children: /* @__PURE__ */ e("button", { type: "button", className: i.resetBtn, onClick: K, "aria-label": "恢复默认", children: /* @__PURE__ */ e(re, { size: 16 }) }) })
149
152
  ] }),
150
153
  /* @__PURE__ */ e(
151
154
  X,
@@ -232,7 +235,7 @@ const le = ({
232
235
  }
233
236
  );
234
237
  };
235
- function me({
238
+ function fe({
236
239
  open: s,
237
240
  onOpenChange: r,
238
241
  defaultItems: l,
@@ -254,7 +257,7 @@ function me({
254
257
  className: i.gearBtn,
255
258
  "aria-label": "编辑表格",
256
259
  onClick: (h) => h.stopPropagation(),
257
- children: /* @__PURE__ */ e($, { size: 14 })
260
+ children: /* @__PURE__ */ e(ne, { size: 14 })
258
261
  }
259
262
  )
260
263
  }
@@ -262,6 +265,6 @@ function me({
262
265
  }
263
266
  export {
264
267
  le as ColumnConfigPopover,
265
- me as ColumnConfigTrigger
268
+ fe as ColumnConfigTrigger
266
269
  };
267
270
  //# sourceMappingURL=ColumnConfigPanel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnConfigPanel.js","sources":["../../../src/components/Table/ColumnConfigPanel.tsx"],"sourcesContent":["import { useCallback, useMemo, useState, type DragEvent, type FC, type ReactNode } from 'react';\nimport { Button, Checkbox, Collapse, Empty, Input, Popover, Space, Tooltip } from 'antd';\nimport { ChevronDown, ChevronRight, Settings, Undo2 } from '../Icons';\nimport type { ColumnConfigPanelItem, TableColumnConfigItem } from './columnConfigTypes';\nimport { mergePanelWithConfig, panelItemsToConfig, splitVisibleHidden } from './columnConfigUtils';\nimport styles from './columnConfig.module.scss';\n\ntype ColumnConfigPanelProps = {\n open: boolean;\n onOpenChange: (open: boolean) => void;\n defaultItems: ColumnConfigPanelItem[];\n savedConfig: TableColumnConfigItem[] | null;\n onConfirm: (items: TableColumnConfigItem[]) => void | Promise<void>;\n children: ReactNode;\n};\n\nfunction flattenSearch(items: ColumnConfigPanelItem[], q: string): boolean {\n if (!q) return true;\n const lower = q.toLowerCase();\n return items.some(\n (it) =>\n it.label.toLowerCase().includes(lower) ||\n it.id.toLowerCase().includes(lower) ||\n (it.children ? flattenSearch(it.children, q) : false),\n );\n}\n\nconst DragList: FC<{\n items: ColumnConfigPanelItem[];\n search: string;\n onChange: (next: ColumnConfigPanelItem[]) => void;\n onToggle: (id: string, hidden: boolean) => void;\n depth?: number;\n collapsedIds: Set<string>;\n onToggleCollapse: (id: string) => void;\n}> = ({ items, search, onChange, onToggle, depth = 0, collapsedIds, onToggleCollapse }) => {\n const [dragIndex, setDragIndex] = useState<number | null>(null);\n const searching = Boolean(search.trim());\n\n const filtered = useMemo(() => {\n if (!search.trim()) return items.map((it, i) => ({ it, i }));\n return items.map((it, i) => ({ it, i })).filter(({ it }) => flattenSearch([it], search.trim()));\n }, [items, search]);\n\n const onDragStart = (e: DragEvent, index: number) => {\n setDragIndex(index);\n e.dataTransfer.effectAllowed = 'move';\n e.dataTransfer.setData('text/plain', String(index));\n };\n\n const onDrop = (e: DragEvent, toIndex: number) => {\n e.preventDefault();\n const from = dragIndex ?? Number(e.dataTransfer.getData('text/plain'));\n setDragIndex(null);\n if (!Number.isFinite(from) || from === toIndex) return;\n const next = [...items];\n const [moved] = next.splice(from, 1);\n if (!moved) return;\n next.splice(toIndex, 0, moved);\n onChange(next);\n };\n\n if (!filtered.length) {\n return <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} description=\"暂无数据\" />;\n }\n\n return (\n <ul className={styles.list} style={{ paddingLeft: depth ? 12 : 0 }}>\n {filtered.map(({ it, i }) => {\n const hasChildren = Boolean(it.children?.length);\n const expanded = searching || !collapsedIds.has(it.id);\n return (\n <li key={it.id} className={styles.listItem}>\n <div\n className={styles.row}\n draggable={!searching}\n onDragStart={(e) => onDragStart(e, i)}\n onDragOver={(e) => e.preventDefault()}\n onDrop={(e) => onDrop(e, i)}\n >\n {hasChildren ? (\n <button\n type=\"button\"\n className={styles.foldBtn}\n aria-label={expanded ? '折叠' : '展开'}\n aria-expanded={expanded}\n onClick={(e) => {\n e.stopPropagation();\n onToggleCollapse(it.id);\n }}\n >\n {expanded ? <ChevronDown size={14} /> : <ChevronRight size={14} />}\n </button>\n ) : (\n <span className={styles.foldSpacer} aria-hidden />\n )}\n <span className={styles.grip} aria-hidden>\n ⠿\n </span>\n <Checkbox checked={!it.hidden} onChange={(e) => onToggle(it.id, !e.target.checked)}>\n <span className={styles.label}>{it.label || it.id}</span>\n </Checkbox>\n </div>\n {hasChildren && expanded ? (\n <DragList\n items={it.children!}\n search={search}\n depth={depth + 1}\n collapsedIds={collapsedIds}\n onToggleCollapse={onToggleCollapse}\n onChange={(childNext) => {\n const next = items.map((x) =>\n x.id === it.id ? { ...x, children: childNext } : x,\n );\n onChange(next);\n }}\n onToggle={onToggle}\n />\n ) : null}\n </li>\n );\n })}\n </ul>\n );\n};\n\nfunction toggleInTree(\n items: ColumnConfigPanelItem[],\n id: string,\n hidden: boolean,\n): ColumnConfigPanelItem[] {\n return items.map((it) => {\n if (it.id === id) {\n const children = it.children?.map((c) => setHiddenDeep(c, hidden));\n return { ...it, hidden, children };\n }\n if (it.children) {\n const children = toggleInTree(it.children, id, hidden);\n const allHidden = children.every((c) => c.hidden);\n return {\n ...it,\n children,\n hidden: allHidden ? true : !hidden && it.id !== id ? false : it.hidden,\n };\n }\n return it;\n });\n}\n\nfunction setHiddenDeep(item: ColumnConfigPanelItem, hidden: boolean): ColumnConfigPanelItem {\n return {\n ...item,\n hidden,\n children: item.children?.map((c) => setHiddenDeep(c, hidden)),\n };\n}\n\n/** 将显隐两区合并回完整顺序:visible 在前,hidden 在后(保持各自内部拖拽序) */\nfunction mergeSections(\n visible: ColumnConfigPanelItem[],\n hidden: ColumnConfigPanelItem[],\n): ColumnConfigPanelItem[] {\n return [...visible, ...hidden];\n}\n\nexport const ColumnConfigPopover: FC<ColumnConfigPanelProps> = ({\n open,\n onOpenChange,\n defaultItems,\n savedConfig,\n onConfirm,\n children,\n}) => {\n const [draft, setDraft] = useState<ColumnConfigPanelItem[]>([]);\n const [searchVisible, setSearchVisible] = useState('');\n const [searchHidden, setSearchHidden] = useState('');\n const [saving, setSaving] = useState(false);\n const [collapsedIds, setCollapsedIds] = useState<Set<string>>(() => new Set());\n\n const syncDraft = useCallback(() => {\n setDraft(mergePanelWithConfig(defaultItems, savedConfig));\n setSearchVisible('');\n setSearchHidden('');\n setCollapsedIds(new Set());\n }, [defaultItems, savedConfig]);\n\n const handleOpenChange = (next: boolean) => {\n if (next) syncDraft();\n onOpenChange(next);\n };\n\n const { visible, hidden } = useMemo(() => splitVisibleHidden(draft), [draft]);\n /** 仅顶层 hidden,供可见区拖拽后 merge,避免把「摘出的二/三级扁平项」写回成顶层 */\n const topLevelHidden = useMemo(() => draft.filter((d) => d.hidden), [draft]);\n\n const setVisibleList = (list: ColumnConfigPanelItem[]) => {\n setDraft(mergeSections(list, topLevelHidden));\n };\n const setHiddenList = (list: ColumnConfigPanelItem[]) => {\n const topIds = new Set(topLevelHidden.map((d) => d.id));\n const newTopHidden = list.filter((i) => topIds.has(i.id));\n setDraft(\n mergeSections(\n draft.filter((d) => !d.hidden),\n newTopHidden,\n ),\n );\n };\n\n const onToggle = (id: string, nextHidden: boolean) => {\n setDraft((prev) => toggleInTree(prev, id, nextHidden));\n };\n\n const onToggleCollapse = useCallback((id: string) => {\n setCollapsedIds((prev) => {\n const next = new Set(prev);\n if (next.has(id)) next.delete(id);\n else next.add(id);\n return next;\n });\n }, []);\n\n const onReset = () => {\n setDraft(defaultItems.map((d) => ({ ...d, children: d.children?.map((c) => ({ ...c })) })));\n setCollapsedIds(new Set());\n };\n\n const onOk = async () => {\n setSaving(true);\n try {\n await onConfirm(panelItemsToConfig(draft));\n onOpenChange(false);\n } finally {\n setSaving(false);\n }\n };\n\n const content = (\n <div className={styles.panel} data-ui=\"table-column-config\">\n <div className={styles.header}>\n <span className={styles.title}>编辑表格</span>\n <Tooltip title=\"恢复默认\">\n <button type=\"button\" className={styles.resetBtn} onClick={onReset} aria-label=\"恢复默认\">\n <Undo2 size={16} />\n </button>\n </Tooltip>\n </div>\n <Collapse\n className={styles.collapse}\n defaultActiveKey={['visible', 'hidden']}\n ghost\n items={[\n {\n key: 'visible',\n label: '显示的信息',\n children: (\n <>\n <Input\n allowClear\n size=\"small\"\n className={styles.search}\n placeholder=\"搜索\"\n value={searchVisible}\n onChange={(e) => setSearchVisible(e.target.value)}\n />\n <DragList\n items={visible}\n search={searchVisible}\n onChange={setVisibleList}\n onToggle={onToggle}\n collapsedIds={collapsedIds}\n onToggleCollapse={onToggleCollapse}\n />\n </>\n ),\n },\n {\n key: 'hidden',\n label: '隐藏的信息',\n children: (\n <>\n <Input\n allowClear\n size=\"small\"\n className={styles.search}\n placeholder=\"搜索\"\n value={searchHidden}\n onChange={(e) => setSearchHidden(e.target.value)}\n />\n <DragList\n items={hidden}\n search={searchHidden}\n onChange={setHiddenList}\n onToggle={onToggle}\n collapsedIds={collapsedIds}\n onToggleCollapse={onToggleCollapse}\n />\n </>\n ),\n },\n ]}\n />\n <div className={styles.footer}>\n <Space>\n <Button size=\"small\" onClick={() => onOpenChange(false)}>\n 取消\n </Button>\n <Button type=\"primary\" size=\"small\" loading={saving} onClick={() => void onOk()}>\n 确定\n </Button>\n </Space>\n </div>\n </div>\n );\n\n return (\n <Popover\n trigger=\"click\"\n placement=\"bottomRight\"\n open={open}\n onOpenChange={handleOpenChange}\n content={content}\n overlayClassName={styles.overlay}\n arrow={false}\n >\n {children}\n </Popover>\n );\n};\n\nexport function ColumnConfigTrigger({\n open,\n onOpenChange,\n defaultItems,\n savedConfig,\n onConfirm,\n}: Omit<ColumnConfigPanelProps, 'children'>) {\n return (\n <ColumnConfigPopover\n open={open}\n onOpenChange={onOpenChange}\n defaultItems={defaultItems}\n savedConfig={savedConfig}\n onConfirm={onConfirm}\n >\n <button\n type=\"button\"\n className={styles.gearBtn}\n aria-label=\"编辑表格\"\n onClick={(e) => e.stopPropagation()}\n >\n <Settings size={14} />\n </button>\n </ColumnConfigPopover>\n );\n}\n"],"names":["flattenSearch","items","q","lower","it","DragList","search","onChange","onToggle","depth","collapsedIds","onToggleCollapse","dragIndex","setDragIndex","useState","searching","filtered","useMemo","i","onDragStart","e","index","onDrop","toIndex","from","next","moved","styles","hasChildren","_a","expanded","jsxs","jsx","ChevronDown","ChevronRight","Checkbox","childNext","x","Empty","toggleInTree","id","hidden","children","setHiddenDeep","allHidden","c","item","mergeSections","visible","ColumnConfigPopover","open","onOpenChange","defaultItems","savedConfig","onConfirm","draft","setDraft","searchVisible","setSearchVisible","searchHidden","setSearchHidden","saving","setSaving","setCollapsedIds","syncDraft","useCallback","mergePanelWithConfig","handleOpenChange","splitVisibleHidden","topLevelHidden","d","setVisibleList","list","setHiddenList","topIds","newTopHidden","nextHidden","prev","onReset","onOk","panelItemsToConfig","content","Tooltip","Undo2","Collapse","Fragment","Input","Space","Button","Popover","ColumnConfigTrigger","Settings"],"mappings":"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"}
1
+ {"version":3,"file":"ColumnConfigPanel.js","sources":["../../../src/components/Table/ColumnConfigPanel.tsx"],"sourcesContent":["import { useCallback, useMemo, useState, type DragEvent, type FC, type ReactNode } from 'react';\nimport { Button, Checkbox, Collapse, Empty, Input, Popover, Space, Tooltip } from 'antd';\nimport { ChevronDown, ChevronRight, Settings, Undo2 } from '../Icons';\nimport type { ColumnConfigPanelItem, TableColumnConfigItem } from './columnConfigTypes';\nimport { mergePanelWithConfig, panelItemsToConfig, splitVisibleHidden } from './columnConfigUtils';\nimport styles from './columnConfig.module.scss';\n\ntype ColumnConfigPanelProps = {\n open: boolean;\n onOpenChange: (open: boolean) => void;\n defaultItems: ColumnConfigPanelItem[];\n savedConfig: TableColumnConfigItem[] | null;\n onConfirm: (items: TableColumnConfigItem[]) => void | Promise<void>;\n children: ReactNode;\n};\n\nfunction flattenSearch(items: ColumnConfigPanelItem[], q: string): boolean {\n if (!q) return true;\n const lower = q.toLowerCase();\n return items.some(\n (it) =>\n it.label.toLowerCase().includes(lower) ||\n it.id.toLowerCase().includes(lower) ||\n (it.children ? flattenSearch(it.children, q) : false),\n );\n}\n\nconst DragList: FC<{\n items: ColumnConfigPanelItem[];\n search: string;\n onChange: (next: ColumnConfigPanelItem[]) => void;\n onToggle: (id: string, hidden: boolean) => void;\n depth?: number;\n collapsedIds: Set<string>;\n onToggleCollapse: (id: string) => void;\n}> = ({ items, search, onChange, onToggle, depth = 0, collapsedIds, onToggleCollapse }) => {\n const [dragIndex, setDragIndex] = useState<number | null>(null);\n const searching = Boolean(search.trim());\n\n const filtered = useMemo(() => {\n if (!search.trim()) return items.map((it, i) => ({ it, i }));\n return items.map((it, i) => ({ it, i })).filter(({ it }) => flattenSearch([it], search.trim()));\n }, [items, search]);\n\n const onDragStart = (e: DragEvent, index: number) => {\n setDragIndex(index);\n e.dataTransfer.effectAllowed = 'move';\n e.dataTransfer.setData('text/plain', String(index));\n };\n\n const onDrop = (e: DragEvent, toIndex: number) => {\n e.preventDefault();\n const from = dragIndex ?? Number(e.dataTransfer.getData('text/plain'));\n setDragIndex(null);\n if (!Number.isFinite(from) || from === toIndex) return;\n const next = [...items];\n const [moved] = next.splice(from, 1);\n if (!moved) return;\n next.splice(toIndex, 0, moved);\n onChange(next);\n };\n\n if (!filtered.length) {\n return <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} description=\"暂无数据\" />;\n }\n\n return (\n <ul className={styles.list} style={{ paddingLeft: depth ? 12 : 0 }}>\n {filtered.map(({ it, i }) => {\n const hasChildren = Boolean(it.children?.length);\n const expanded = searching || !collapsedIds.has(it.id);\n return (\n <li key={it.id} className={styles.listItem}>\n <div\n className={styles.row}\n draggable={!searching}\n onDragStart={(e) => onDragStart(e, i)}\n onDragOver={(e) => e.preventDefault()}\n onDrop={(e) => onDrop(e, i)}\n >\n {hasChildren ? (\n <button\n type=\"button\"\n className={styles.foldBtn}\n aria-label={expanded ? '折叠' : '展开'}\n aria-expanded={expanded}\n onClick={(e) => {\n e.stopPropagation();\n onToggleCollapse(it.id);\n }}\n >\n {expanded ? <ChevronDown size={14} /> : <ChevronRight size={14} />}\n </button>\n ) : (\n <span className={styles.foldSpacer} aria-hidden />\n )}\n <span className={styles.grip} aria-hidden>\n ⠿\n </span>\n <Checkbox checked={!it.hidden} onChange={(e) => onToggle(it.id, !e.target.checked)}>\n <span className={styles.label}>{it.label || it.id}</span>\n </Checkbox>\n </div>\n {hasChildren && expanded ? (\n <DragList\n items={it.children!}\n search={search}\n depth={depth + 1}\n collapsedIds={collapsedIds}\n onToggleCollapse={onToggleCollapse}\n onChange={(childNext) => {\n const next = items.map((x) =>\n x.id === it.id ? { ...x, children: childNext } : x,\n );\n onChange(next);\n }}\n onToggle={onToggle}\n />\n ) : null}\n </li>\n );\n })}\n </ul>\n );\n};\n\nfunction toggleInTree(\n items: ColumnConfigPanelItem[],\n id: string,\n hidden: boolean,\n): ColumnConfigPanelItem[] {\n return items.map((it) => {\n if (it.id === id) {\n const children = it.children?.map((c) => setHiddenDeep(c, hidden));\n return { ...it, hidden, children };\n }\n if (it.children) {\n const children = toggleInTree(it.children, id, hidden);\n const allHidden = children.every((c) => c.hidden);\n return {\n ...it,\n children,\n hidden: allHidden ? true : !hidden && it.id !== id ? false : it.hidden,\n };\n }\n return it;\n });\n}\n\nfunction setHiddenDeep(item: ColumnConfigPanelItem, hidden: boolean): ColumnConfigPanelItem {\n return {\n ...item,\n hidden,\n children: item.children?.map((c) => setHiddenDeep(c, hidden)),\n };\n}\n\n/** 将显隐两区合并回完整顺序:visible 在前,hidden 在后(保持各自内部拖拽序) */\nfunction mergeSections(\n visible: ColumnConfigPanelItem[],\n hidden: ColumnConfigPanelItem[],\n): ColumnConfigPanelItem[] {\n return [...visible, ...hidden];\n}\n\nexport const ColumnConfigPopover: FC<ColumnConfigPanelProps> = ({\n open,\n onOpenChange,\n defaultItems,\n savedConfig,\n onConfirm,\n children,\n}) => {\n const [draft, setDraft] = useState<ColumnConfigPanelItem[]>([]);\n const [searchVisible, setSearchVisible] = useState('');\n const [searchHidden, setSearchHidden] = useState('');\n const [saving, setSaving] = useState(false);\n const [collapsedIds, setCollapsedIds] = useState<Set<string>>(() => new Set());\n\n const syncDraft = useCallback(() => {\n setDraft(mergePanelWithConfig(defaultItems, savedConfig));\n setSearchVisible('');\n setSearchHidden('');\n setCollapsedIds(new Set());\n }, [defaultItems, savedConfig]);\n\n const handleOpenChange = (next: boolean) => {\n if (next) syncDraft();\n onOpenChange(next);\n };\n\n const { visible, hidden } = useMemo(() => splitVisibleHidden(draft), [draft]);\n /** 仅顶层 hidden,供可见区拖拽后 merge,避免把「摘出的二/三级扁平项」写回成顶层 */\n const topLevelHidden = useMemo(() => draft.filter((d) => d.hidden), [draft]);\n\n const setVisibleList = (list: ColumnConfigPanelItem[]) => {\n setDraft(mergeSections(list, topLevelHidden));\n };\n const setHiddenList = (list: ColumnConfigPanelItem[]) => {\n const topIds = new Set(topLevelHidden.map((d) => d.id));\n const newTopHidden = list.filter((i) => topIds.has(i.id));\n setDraft(\n mergeSections(\n draft.filter((d) => !d.hidden),\n newTopHidden,\n ),\n );\n };\n\n const onToggle = (id: string, nextHidden: boolean) => {\n setDraft((prev) => toggleInTree(prev, id, nextHidden));\n };\n\n const onToggleCollapse = useCallback((id: string) => {\n setCollapsedIds((prev) => {\n const next = new Set(prev);\n if (next.has(id)) next.delete(id);\n else next.add(id);\n return next;\n });\n }, []);\n\n const onReset = () => {\n setDraft(defaultItems.map((d) => ({ ...d, children: d.children?.map((c) => ({ ...c })) })));\n setCollapsedIds(new Set());\n };\n\n const onOk = async () => {\n setSaving(true);\n try {\n await onConfirm(panelItemsToConfig(draft));\n onOpenChange(false);\n } finally {\n setSaving(false);\n }\n };\n\n const content = (\n <div className={styles.panel} data-ui=\"table-column-config\">\n <div className={styles.header}>\n <span className={styles.title}>编辑表格</span>\n <Tooltip title=\"恢复默认\">\n <button type=\"button\" className={styles.resetBtn} onClick={onReset} aria-label=\"恢复默认\">\n <Undo2 size={16} />\n </button>\n </Tooltip>\n </div>\n <Collapse\n className={styles.collapse}\n defaultActiveKey={['visible', 'hidden']}\n ghost\n items={[\n {\n key: 'visible',\n label: '显示的信息',\n children: (\n <>\n <Input\n allowClear\n size=\"small\"\n className={styles.search}\n placeholder=\"搜索\"\n value={searchVisible}\n onChange={(e) => setSearchVisible(e.target.value)}\n />\n <DragList\n items={visible}\n search={searchVisible}\n onChange={setVisibleList}\n onToggle={onToggle}\n collapsedIds={collapsedIds}\n onToggleCollapse={onToggleCollapse}\n />\n </>\n ),\n },\n {\n key: 'hidden',\n label: '隐藏的信息',\n children: (\n <>\n <Input\n allowClear\n size=\"small\"\n className={styles.search}\n placeholder=\"搜索\"\n value={searchHidden}\n onChange={(e) => setSearchHidden(e.target.value)}\n />\n <DragList\n items={hidden}\n search={searchHidden}\n onChange={setHiddenList}\n onToggle={onToggle}\n collapsedIds={collapsedIds}\n onToggleCollapse={onToggleCollapse}\n />\n </>\n ),\n },\n ]}\n />\n <div className={styles.footer}>\n <Space>\n <Button size=\"small\" onClick={() => onOpenChange(false)}>\n 取消\n </Button>\n <Button type=\"primary\" size=\"small\" loading={saving} onClick={() => void onOk()}>\n 确定\n </Button>\n </Space>\n </div>\n </div>\n );\n\n return (\n <Popover\n trigger=\"click\"\n placement=\"bottomRight\"\n open={open}\n onOpenChange={handleOpenChange}\n content={content}\n overlayClassName={styles.overlay}\n arrow={false}\n >\n {children}\n </Popover>\n );\n};\n\nexport function ColumnConfigTrigger({\n open,\n onOpenChange,\n defaultItems,\n savedConfig,\n onConfirm,\n}: Omit<ColumnConfigPanelProps, 'children'>) {\n return (\n <ColumnConfigPopover\n open={open}\n onOpenChange={onOpenChange}\n defaultItems={defaultItems}\n savedConfig={savedConfig}\n onConfirm={onConfirm}\n >\n <button\n type=\"button\"\n className={styles.gearBtn}\n aria-label=\"编辑表格\"\n onClick={(e) => e.stopPropagation()}\n >\n <Settings size={14} />\n </button>\n </ColumnConfigPopover>\n );\n}\n"],"names":["flattenSearch","items","q","lower","it","DragList","search","onChange","onToggle","depth","collapsedIds","onToggleCollapse","dragIndex","setDragIndex","useState","searching","filtered","useMemo","i","onDragStart","e","index","onDrop","toIndex","from","next","moved","styles","hasChildren","_a","expanded","jsxs","jsx","ChevronDown","ChevronRight","Checkbox","childNext","x","Empty","toggleInTree","id","hidden","children","setHiddenDeep","allHidden","c","item","mergeSections","visible","ColumnConfigPopover","open","onOpenChange","defaultItems","savedConfig","onConfirm","draft","setDraft","searchVisible","setSearchVisible","searchHidden","setSearchHidden","saving","setSaving","setCollapsedIds","syncDraft","useCallback","mergePanelWithConfig","handleOpenChange","splitVisibleHidden","topLevelHidden","d","setVisibleList","list","setHiddenList","topIds","newTopHidden","nextHidden","prev","onReset","onOk","panelItemsToConfig","content","Tooltip","Undo2","Collapse","Fragment","Input","Space","Button","Popover","ColumnConfigTrigger","Settings"],"mappings":"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"}
@@ -2,15 +2,15 @@ import { jsxs as j, jsx as f } from "react/jsx-runtime";
2
2
  import { useRef as zt, useState as U, useEffect as ot, useMemo as S, useCallback as E } from "react";
3
3
  import { Space as Ft, Button as dt, Tooltip as pt, Table as kt } from "antd";
4
4
  import M from "classnames";
5
- import { Eye as ht } from "../Icons/index.js";
6
5
  import { ColumnConfigTrigger as Ct } from "./ColumnConfigPanel.js";
7
- import { applyColumnConfig as Dt, columnsToPanelItems as $t, columnsToConfig as jt, hideColumnAtPath as Bt, COLUMN_CONFIG_COL_KEY as Gt, isInternalColumnKey as yt, shortChildId as Pt } from "./columnConfigUtils.js";
6
+ import { applyColumnConfig as Dt, columnsToPanelItems as $t, columnsToConfig as jt, hideColumnAtPath as Bt, COLUMN_CONFIG_COL_KEY as Gt, isInternalColumnKey as ht, shortChildId as Pt } from "./columnConfigUtils.js";
8
7
  import { FLEX_SPACER_COL_KEY as fe } from "./columnConfigUtils.js";
9
8
  import { emptyTablePrefs as Ut } from "./tablePrefsTypes.js";
10
9
  import { normalizeHiddenRowKeys as Q, mergeTablePrefs as mt, applyHiddenRows as Mt } from "./tablePrefsUtils.js";
11
10
  import { parseTablePrefs as he, serializeTablePrefs as ye } from "./tablePrefsUtils.js";
12
11
  import o from "./style.module.scss.js";
13
12
  import ft from "./columnConfig.module.scss.js";
13
+ import { Eye as yt } from "../Icons/Eye.js";
14
14
  import Xt from "../Empty/Empty.js";
15
15
  const Yt = { x: "max-content" }, T = 40, qt = 64;
16
16
  function Zt(e) {
@@ -22,7 +22,7 @@ function gt(e) {
22
22
  let a = 0;
23
23
  for (const s of e) {
24
24
  const L = s.key != null ? String(s.key) : "";
25
- if (L && yt(L)) continue;
25
+ if (L && ht(L)) continue;
26
26
  if ((i = s.children) != null && i.length) {
27
27
  a += gt(s.children);
28
28
  continue;
@@ -49,7 +49,7 @@ function Lt(e, a, i, s = [], L = 0, l) {
49
49
  return e.map((r, d) => {
50
50
  var O, x;
51
51
  const b = Jt(r, d);
52
- if (yt(b)) return r;
52
+ if (ht(b)) return r;
53
53
  const A = i ? Pt(i, b) : b, N = [...s, A], _ = r.onHeaderCell;
54
54
  let p = l;
55
55
  L === 0 && (p = (O = r.children) != null && O.length ? k++ : void 0);
@@ -64,7 +64,7 @@ function Lt(e, a, i, s = [], L = 0, l) {
64
64
  onClick: (H) => {
65
65
  H.stopPropagation(), a(N);
66
66
  },
67
- children: /* @__PURE__ */ f(ht, { size: 12 })
67
+ children: /* @__PURE__ */ f(yt, { size: 12 })
68
68
  }
69
69
  ) })
70
70
  ] }), c = (H) => {
@@ -293,7 +293,7 @@ function oe({
293
293
  onClick: (Nt) => {
294
294
  Nt.stopPropagation(), rt(ct);
295
295
  },
296
- children: /* @__PURE__ */ f(ht, { size: 14 })
296
+ children: /* @__PURE__ */ f(yt, { size: 14 })
297
297
  }
298
298
  ) })
299
299
  ] });
@@ -339,7 +339,7 @@ export {
339
339
  oe as default,
340
340
  Ut as emptyTablePrefs,
341
341
  Bt as hideColumnAtPath,
342
- yt as isInternalColumnKey,
342
+ ht as isInternalColumnKey,
343
343
  mt as mergeTablePrefs,
344
344
  Q as normalizeHiddenRowKeys,
345
345
  he as parseTablePrefs,
@@ -1,12 +1,12 @@
1
1
  import { jsxs as s, Fragment as p, jsx as r } from "react/jsx-runtime";
2
- import { CircleHelp as u } from "../../Icons/index.js";
3
- import { Button as a, Tour as f } from "antd";
4
- import d from "classnames";
5
- import h, { useState as x } from "react";
6
- import C from "./style.module.scss.js";
2
+ import { Button as u, Tour as a } from "antd";
3
+ import f from "classnames";
4
+ import d, { useState as h } from "react";
5
+ import x from "./style.module.scss.js";
6
+ import { CircleHelp as C } from "../../Icons/CircleHelp.js";
7
7
  const R = ({ steps: l, storageKey: t, autoOpen: n = !0 }) => {
8
- const [c, e] = x(!1);
9
- h.useEffect(() => {
8
+ const [c, e] = h(!1);
9
+ d.useEffect(() => {
10
10
  if (!n || !t) return;
11
11
  if (!localStorage.getItem(t)) {
12
12
  const o = setTimeout(() => e(!0), 800);
@@ -17,15 +17,15 @@ const R = ({ steps: l, storageKey: t, autoOpen: n = !0 }) => {
17
17
  e(!1), t && localStorage.setItem(t, "true");
18
18
  };
19
19
  return l.length ? /* @__PURE__ */ s(p, { children: [
20
- /* @__PURE__ */ r(a, { type: "text", icon: /* @__PURE__ */ r(u, {}), onClick: () => e(!0), title: "导览" }),
20
+ /* @__PURE__ */ r(u, { type: "text", icon: /* @__PURE__ */ r(C, {}), onClick: () => e(!0), title: "导览" }),
21
21
  /* @__PURE__ */ r(
22
- f,
22
+ a,
23
23
  {
24
24
  open: c,
25
25
  onClose: i,
26
26
  onFinish: i,
27
27
  steps: l,
28
- indicatorsRender: (m, o) => /* @__PURE__ */ s("span", { className: d("app-tour-root", C["app-tour-root"]), children: [
28
+ indicatorsRender: (m, o) => /* @__PURE__ */ s("span", { className: f("app-tour-root", x["app-tour-root"]), children: [
29
29
  m + 1,
30
30
  " / ",
31
31
  o