@hkyhy/marsun-components-core 0.1.115 → 0.1.117

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 (63) hide show
  1. package/dist/agent-hub.js +131 -126
  2. package/dist/agent-hub.js.map +1 -1
  3. package/dist/components/AgentHub/Chat/Detail/ChatAgentFab/index.d.ts +1 -1
  4. package/dist/components/AgentHub/Chat/Detail/ChatAgentFab/index.js.map +1 -1
  5. package/dist/components/AgentHub/Chat/Detail/ChatAgentFab/style.module.scss.js +9 -9
  6. package/dist/components/AgentHub/Chat/Detail/ChatAgentFabLayout/index.d.ts +2 -2
  7. package/dist/components/AgentHub/Chat/Detail/ChatAgentFabLayout/index.js.map +1 -1
  8. package/dist/components/AgentHub/Chat/Detail/ChatAgentFabLayout/style.module.scss.js +3 -3
  9. package/dist/components/AgentHub/Chat/Detail/ChatCapabilityStrip/index.d.ts +20 -0
  10. package/dist/components/AgentHub/Chat/Detail/ChatCapabilityStrip/index.js +155 -0
  11. package/dist/components/AgentHub/Chat/Detail/ChatCapabilityStrip/index.js.map +1 -0
  12. package/dist/components/AgentHub/Chat/Detail/ChatCapabilityStrip/style.module.scss.js +19 -0
  13. package/dist/components/AgentHub/Chat/Detail/ChatCapabilityStrip/style.module.scss.js.map +1 -0
  14. package/dist/components/AgentHub/Chat/Detail/ChatPanel/index.d.ts +2 -0
  15. package/dist/components/AgentHub/Chat/Detail/ChatPanel/index.js +59 -55
  16. package/dist/components/AgentHub/Chat/Detail/ChatPanel/index.js.map +1 -1
  17. package/dist/components/AgentHub/Chat/Detail/ChatPanelHeaderTools/index.d.ts +19 -0
  18. package/dist/components/AgentHub/Chat/Detail/ChatPanelHeaderTools/index.js +122 -0
  19. package/dist/components/AgentHub/Chat/Detail/ChatPanelHeaderTools/index.js.map +1 -0
  20. package/dist/components/AgentHub/Chat/Detail/ChatPanelHeaderTools/style.module.scss.js +8 -0
  21. package/dist/components/AgentHub/Chat/Detail/ChatPanelHeaderTools/style.module.scss.js.map +1 -0
  22. package/dist/components/AgentHub/Chat/Detail/index.d.ts +4 -0
  23. package/dist/components/Audit/AuditLogList.d.ts +2 -0
  24. package/dist/components/Audit/AuditLogList.js +179 -170
  25. package/dist/components/Audit/AuditLogList.js.map +1 -1
  26. package/dist/components/Audit/labels.d.ts +6 -2
  27. package/dist/components/Audit/labels.js +19 -16
  28. package/dist/components/Audit/labels.js.map +1 -1
  29. package/dist/components/Audit/labels.json.d.ts +47 -1
  30. package/dist/components/Audit/labels.json.js +124 -32
  31. package/dist/components/Audit/labels.json.js.map +1 -1
  32. package/dist/components/Audit/style.module.scss.js +26 -22
  33. package/dist/components/Audit/style.module.scss.js.map +1 -1
  34. package/dist/components/Icons/ZoomIn.d.ts +1 -0
  35. package/dist/components/Icons/ZoomIn.js +7 -0
  36. package/dist/components/Icons/ZoomIn.js.map +1 -0
  37. package/dist/components/Icons/ZoomOut.d.ts +1 -0
  38. package/dist/components/Icons/ZoomOut.js +7 -0
  39. package/dist/components/Icons/ZoomOut.js.map +1 -0
  40. package/dist/components/Icons/index.d.ts +2 -0
  41. package/dist/components/Icons/registry.d.ts +1 -1
  42. package/dist/components/Icons/registry.js +58 -52
  43. package/dist/components/Icons/registry.js.map +1 -1
  44. package/dist/components/Stat/StatCardList.js +16 -16
  45. package/dist/components/Stat/StatCardList.js.map +1 -1
  46. package/dist/components/Tools/ActionTracking/ActionTrackingShell.d.ts +27 -0
  47. package/dist/components/Tools/ActionTracking/ActionTrackingShell.js +43 -0
  48. package/dist/components/Tools/ActionTracking/ActionTrackingShell.js.map +1 -0
  49. package/dist/components/Tools/ActionTracking/index.d.ts +2 -0
  50. package/dist/components/Tools/ActionTracking/style.module.scss.js +7 -0
  51. package/dist/components/Tools/ActionTracking/style.module.scss.js.map +1 -0
  52. package/dist/components/Tools/index.d.ts +2 -0
  53. package/dist/components/Tour/AppTour/index.js +1 -1
  54. package/dist/components/Tour/AppTour/index.js.map +1 -1
  55. package/dist/components/Tour/index.d.ts +1 -0
  56. package/dist/components/Tour/resolveTourTarget.d.ts +7 -0
  57. package/dist/components/Tour/resolveTourTarget.js +16 -0
  58. package/dist/components/Tour/resolveTourTarget.js.map +1 -0
  59. package/dist/index.js +785 -771
  60. package/dist/index.js.map +1 -1
  61. package/dist/marsun-components-core.css +1 -1
  62. package/dist/styles/global.css +1 -1
  63. package/package.json +1 -1
@@ -8,9 +8,9 @@ import { Check as p } from "./Check.js";
8
8
  import { ChevronDown as f } from "./ChevronDown.js";
9
9
  import { ChevronLeft as l } from "./ChevronLeft.js";
10
10
  import { ChevronRight as a } from "./ChevronRight.js";
11
- import { ChevronUp as s } from "./ChevronUp.js";
12
- import { CircleAlert as C } from "./CircleAlert.js";
13
- import { CircleCheck as n } from "./CircleCheck.js";
11
+ import { ChevronUp as n } from "./ChevronUp.js";
12
+ import { CircleAlert as s } from "./CircleAlert.js";
13
+ import { CircleCheck as C } from "./CircleCheck.js";
14
14
  import { CircleHelp as h } from "./CircleHelp.js";
15
15
  import { CirclePlay as d } from "./CirclePlay.js";
16
16
  import { CircleX as c } from "./CircleX.js";
@@ -24,12 +24,12 @@ import { Crown as U } from "./Crown.js";
24
24
  import { Database as P } from "./Database.js";
25
25
  import { Download as k } from "./Download.js";
26
26
  import { Eye as y } from "./Eye.js";
27
- import { EyeOff as T } from "./EyeOff.js";
28
- import { File as b } from "./File.js";
29
- import { FileArchive as D } from "./FileArchive.js";
30
- import { FileImage as O } from "./FileImage.js";
31
- import { FileSpreadsheet as R } from "./FileSpreadsheet.js";
32
- import { FileText as I } from "./FileText.js";
27
+ import { EyeOff as O } from "./EyeOff.js";
28
+ import { File as I } from "./File.js";
29
+ import { FileArchive as T } from "./FileArchive.js";
30
+ import { FileImage as b } from "./FileImage.js";
31
+ import { FileSpreadsheet as D } from "./FileSpreadsheet.js";
32
+ import { FileText as R } from "./FileText.js";
33
33
  import { Flag as v } from "./Flag.js";
34
34
  import { Flame as A } from "./Flame.js";
35
35
  import { Folder as M } from "./Folder.js";
@@ -40,17 +40,17 @@ import { Import as z } from "./Import.js";
40
40
  import { Inbox as E } from "./Inbox.js";
41
41
  import { Info as q } from "./Info.js";
42
42
  import { LayoutDashboard as X } from "./LayoutDashboard.js";
43
- import { LayoutGrid as G } from "./LayoutGrid.js";
44
- import { ListTodo as N } from "./ListTodo.js";
45
- import { Loader2 as _ } from "./Loader2.js";
46
- import { Lock as Y } from "./Lock.js";
47
- import { LogOut as j } from "./LogOut.js";
48
- import { Maximize2 as J } from "./Maximize2.js";
49
- import { MessageCircle as K } from "./MessageCircle.js";
50
- import { MessageSquare as Q } from "./MessageSquare.js";
51
- import { Minimize2 as V } from "./Minimize2.js";
52
- import { PanelLeftClose as W } from "./PanelLeftClose.js";
53
- import { PanelLeftOpen as Z } from "./PanelLeftOpen.js";
43
+ import { LayoutGrid as Z } from "./LayoutGrid.js";
44
+ import { ListTodo as G } from "./ListTodo.js";
45
+ import { Loader2 as N } from "./Loader2.js";
46
+ import { Lock as _ } from "./Lock.js";
47
+ import { LogOut as Y } from "./LogOut.js";
48
+ import { Maximize2 as j } from "./Maximize2.js";
49
+ import { MessageCircle as J } from "./MessageCircle.js";
50
+ import { MessageSquare as K } from "./MessageSquare.js";
51
+ import { Minimize2 as Q } from "./Minimize2.js";
52
+ import { PanelLeftClose as V } from "./PanelLeftClose.js";
53
+ import { PanelLeftOpen as W } from "./PanelLeftOpen.js";
54
54
  import { Pause as $ } from "./Pause.js";
55
55
  import { Pencil as oo } from "./Pencil.js";
56
56
  import { Plus as ro } from "./Plus.js";
@@ -62,9 +62,9 @@ import { Settings as po } from "./Settings.js";
62
62
  import { Shield as fo } from "./Shield.js";
63
63
  import { ShieldCheck as lo } from "./ShieldCheck.js";
64
64
  import { SlidersHorizontal as ao } from "./SlidersHorizontal.js";
65
- import { Square as so } from "./Square.js";
66
- import { Star as Co } from "./Star.js";
67
- import { ThumbsDown as no } from "./ThumbsDown.js";
65
+ import { Square as no } from "./Square.js";
66
+ import { Star as so } from "./Star.js";
67
+ import { ThumbsDown as Co } from "./ThumbsDown.js";
68
68
  import { ThumbsUp as ho } from "./ThumbsUp.js";
69
69
  import { Trash2 as co } from "./Trash2.js";
70
70
  import { Trophy as uo } from "./Trophy.js";
@@ -75,7 +75,9 @@ import { UserPlus as wo } from "./UserPlus.js";
75
75
  import { UserRoundCog as Fo } from "./UserRoundCog.js";
76
76
  import { Users as Uo } from "./Users.js";
77
77
  import { X as Po } from "./X.js";
78
- const Jr = [
78
+ import { ZoomIn as ko } from "./ZoomIn.js";
79
+ import { ZoomOut as yo } from "./ZoomOut.js";
80
+ const Vr = [
79
81
  "ArrowLeft",
80
82
  "ArrowLeftRight",
81
83
  "BarChart3",
@@ -152,8 +154,10 @@ const Jr = [
152
154
  "UserPlus",
153
155
  "UserRoundCog",
154
156
  "Users",
155
- "X"
156
- ], Kr = {
157
+ "X",
158
+ "ZoomIn",
159
+ "ZoomOut"
160
+ ], Wr = {
157
161
  ArrowLeft: o,
158
162
  ArrowLeftRight: r,
159
163
  BarChart3: m,
@@ -164,9 +168,9 @@ const Jr = [
164
168
  ChevronDown: f,
165
169
  ChevronLeft: l,
166
170
  ChevronRight: a,
167
- ChevronUp: s,
168
- CircleAlert: C,
169
- CircleCheck: n,
171
+ ChevronUp: n,
172
+ CircleAlert: s,
173
+ CircleCheck: C,
170
174
  CircleHelp: h,
171
175
  CirclePlay: d,
172
176
  CircleX: c,
@@ -180,12 +184,12 @@ const Jr = [
180
184
  Database: P,
181
185
  Download: k,
182
186
  Eye: y,
183
- EyeOff: T,
184
- File: b,
185
- FileArchive: D,
186
- FileImage: O,
187
- FileSpreadsheet: R,
188
- FileText: I,
187
+ EyeOff: O,
188
+ File: I,
189
+ FileArchive: T,
190
+ FileImage: b,
191
+ FileSpreadsheet: D,
192
+ FileText: R,
189
193
  Flag: v,
190
194
  Flame: A,
191
195
  Folder: M,
@@ -196,17 +200,17 @@ const Jr = [
196
200
  Inbox: E,
197
201
  Info: q,
198
202
  LayoutDashboard: X,
199
- LayoutGrid: G,
200
- ListTodo: N,
201
- Loader2: _,
202
- Lock: Y,
203
- LogOut: j,
204
- Maximize2: J,
205
- MessageCircle: K,
206
- MessageSquare: Q,
207
- Minimize2: V,
208
- PanelLeftClose: W,
209
- PanelLeftOpen: Z,
203
+ LayoutGrid: Z,
204
+ ListTodo: G,
205
+ Loader2: N,
206
+ Lock: _,
207
+ LogOut: Y,
208
+ Maximize2: j,
209
+ MessageCircle: J,
210
+ MessageSquare: K,
211
+ Minimize2: Q,
212
+ PanelLeftClose: V,
213
+ PanelLeftOpen: W,
210
214
  Pause: $,
211
215
  Pencil: oo,
212
216
  Plus: ro,
@@ -218,9 +222,9 @@ const Jr = [
218
222
  Shield: fo,
219
223
  ShieldCheck: lo,
220
224
  SlidersHorizontal: ao,
221
- Square: so,
222
- Star: Co,
223
- ThumbsDown: no,
225
+ Square: no,
226
+ Star: so,
227
+ ThumbsDown: Co,
224
228
  ThumbsUp: ho,
225
229
  Trash2: co,
226
230
  Trophy: uo,
@@ -230,10 +234,12 @@ const Jr = [
230
234
  UserPlus: wo,
231
235
  UserRoundCog: Fo,
232
236
  Users: Uo,
233
- X: Po
237
+ X: Po,
238
+ ZoomIn: ko,
239
+ ZoomOut: yo
234
240
  };
235
241
  export {
236
- Jr as ICON_NAMES,
237
- Kr as ICON_REGISTRY
242
+ Vr as ICON_NAMES,
243
+ Wr as ICON_REGISTRY
238
244
  };
239
245
  //# sourceMappingURL=registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sources":["../../../src/components/Icons/registry.ts"],"sourcesContent":["import type React from 'react';\nimport type { IconProps } from './createIcon';\nimport { ArrowLeft } from './ArrowLeft';\nimport { ArrowLeftRight } from './ArrowLeftRight';\nimport { BarChart3 } from './BarChart3';\nimport { Bell } from './Bell';\nimport { BookOpen } from './BookOpen';\nimport { Bot } from './Bot';\nimport { Check } from './Check';\nimport { ChevronDown } from './ChevronDown';\nimport { ChevronLeft } from './ChevronLeft';\nimport { ChevronRight } from './ChevronRight';\nimport { ChevronUp } from './ChevronUp';\nimport { CircleAlert } from './CircleAlert';\nimport { CircleCheck } from './CircleCheck';\nimport { CircleHelp } from './CircleHelp';\nimport { CirclePlay } from './CirclePlay';\nimport { CircleX } from './CircleX';\nimport { ClipboardCheck } from './ClipboardCheck';\nimport { Clock } from './Clock';\nimport { CloudDownload } from './CloudDownload';\nimport { CloudUpload } from './CloudUpload';\nimport { Code } from './Code';\nimport { Copy } from './Copy';\nimport { Crown } from './Crown';\nimport { Database } from './Database';\nimport { Download } from './Download';\nimport { Eye } from './Eye';\nimport { EyeOff } from './EyeOff';\nimport { File } from './File';\nimport { FileArchive } from './FileArchive';\nimport { FileImage } from './FileImage';\nimport { FileSpreadsheet } from './FileSpreadsheet';\nimport { FileText } from './FileText';\nimport { Flag } from './Flag';\nimport { Flame } from './Flame';\nimport { Folder } from './Folder';\nimport { FolderOpen } from './FolderOpen';\nimport { Hash } from './Hash';\nimport { House } from './House';\nimport { Import } from './Import';\nimport { Inbox } from './Inbox';\nimport { Info } from './Info';\nimport { LayoutDashboard } from './LayoutDashboard';\nimport { LayoutGrid } from './LayoutGrid';\nimport { ListTodo } from './ListTodo';\nimport { Loader2 } from './Loader2';\nimport { Lock } from './Lock';\nimport { LogOut } from './LogOut';\nimport { Maximize2 } from './Maximize2';\nimport { MessageCircle } from './MessageCircle';\nimport { MessageSquare } from './MessageSquare';\nimport { Minimize2 } from './Minimize2';\nimport { PanelLeftClose } from './PanelLeftClose';\nimport { PanelLeftOpen } from './PanelLeftOpen';\nimport { Pause } from './Pause';\nimport { Pencil } from './Pencil';\nimport { Plus } from './Plus';\nimport { Presentation } from './Presentation';\nimport { RefreshCw } from './RefreshCw';\nimport { RotateCw } from './RotateCw';\nimport { Send } from './Send';\nimport { Settings } from './Settings';\nimport { Shield } from './Shield';\nimport { ShieldCheck } from './ShieldCheck';\nimport { SlidersHorizontal } from './SlidersHorizontal';\nimport { Square } from './Square';\nimport { Star } from './Star';\nimport { ThumbsDown } from './ThumbsDown';\nimport { ThumbsUp } from './ThumbsUp';\nimport { Trash2 } from './Trash2';\nimport { Trophy } from './Trophy';\nimport { Undo2 } from './Undo2';\nimport { Upload } from './Upload';\nimport { User } from './User';\nimport { UserPlus } from './UserPlus';\nimport { UserRoundCog } from './UserRoundCog';\nimport { Users } from './Users';\nimport { X } from './X';\n\nexport const ICON_NAMES = [\n 'ArrowLeft',\n 'ArrowLeftRight',\n 'BarChart3',\n 'Bell',\n 'BookOpen',\n 'Bot',\n 'Check',\n 'ChevronDown',\n 'ChevronLeft',\n 'ChevronRight',\n 'ChevronUp',\n 'CircleAlert',\n 'CircleCheck',\n 'CircleHelp',\n 'CirclePlay',\n 'CircleX',\n 'ClipboardCheck',\n 'Clock',\n 'CloudDownload',\n 'CloudUpload',\n 'Code',\n 'Copy',\n 'Crown',\n 'Database',\n 'Download',\n 'Eye',\n 'EyeOff',\n 'File',\n 'FileArchive',\n 'FileImage',\n 'FileSpreadsheet',\n 'FileText',\n 'Flag',\n 'Flame',\n 'Folder',\n 'FolderOpen',\n 'Hash',\n 'House',\n 'Import',\n 'Inbox',\n 'Info',\n 'LayoutDashboard',\n 'LayoutGrid',\n 'ListTodo',\n 'Loader2',\n 'Lock',\n 'LogOut',\n 'Maximize2',\n 'MessageCircle',\n 'MessageSquare',\n 'Minimize2',\n 'PanelLeftClose',\n 'PanelLeftOpen',\n 'Pause',\n 'Pencil',\n 'Plus',\n 'Presentation',\n 'RefreshCw',\n 'RotateCw',\n 'Send',\n 'Settings',\n 'Shield',\n 'ShieldCheck',\n 'SlidersHorizontal',\n 'Square',\n 'Star',\n 'ThumbsDown',\n 'ThumbsUp',\n 'Trash2',\n 'Trophy',\n 'Undo2',\n 'Upload',\n 'User',\n 'UserPlus',\n 'UserRoundCog',\n 'Users',\n 'X',\n] as const;\n\nexport type IconName = (typeof ICON_NAMES)[number];\n\n/** 全量注册表:仅 showcase / 按名取图标时用;业务具名 import 勿依赖本文件,以免拖入全部图标 */\nexport const ICON_REGISTRY: Record<IconName, React.FC<IconProps>> = {\n ArrowLeft,\n ArrowLeftRight,\n BarChart3,\n Bell,\n BookOpen,\n Bot,\n Check,\n ChevronDown,\n ChevronLeft,\n ChevronRight,\n ChevronUp,\n CircleAlert,\n CircleCheck,\n CircleHelp,\n CirclePlay,\n CircleX,\n ClipboardCheck,\n Clock,\n CloudDownload,\n CloudUpload,\n Code,\n Copy,\n Crown,\n Database,\n Download,\n Eye,\n EyeOff,\n File,\n FileArchive,\n FileImage,\n FileSpreadsheet,\n FileText,\n Flag,\n Flame,\n Folder,\n FolderOpen,\n Hash,\n House,\n Import,\n Inbox,\n Info,\n LayoutDashboard,\n LayoutGrid,\n ListTodo,\n Loader2,\n Lock,\n LogOut,\n Maximize2,\n MessageCircle,\n MessageSquare,\n Minimize2,\n PanelLeftClose,\n PanelLeftOpen,\n Pause,\n Pencil,\n Plus,\n Presentation,\n RefreshCw,\n RotateCw,\n Send,\n Settings,\n Shield,\n ShieldCheck,\n SlidersHorizontal,\n Square,\n Star,\n ThumbsDown,\n ThumbsUp,\n Trash2,\n Trophy,\n Undo2,\n Upload,\n User,\n UserPlus,\n UserRoundCog,\n Users,\n X,\n};\n"],"names":["ICON_NAMES","ICON_REGISTRY","ArrowLeft","ArrowLeftRight","BarChart3","Bell","BookOpen","Bot","Check","ChevronDown","ChevronLeft","ChevronRight","ChevronUp","CircleAlert","CircleCheck","CircleHelp","CirclePlay","CircleX","ClipboardCheck","Clock","CloudDownload","CloudUpload","Code","Copy","Crown","Database","Download","Eye","EyeOff","File","FileArchive","FileImage","FileSpreadsheet","FileText","Flag","Flame","Folder","FolderOpen","Hash","House","Import","Inbox","Info","LayoutDashboard","LayoutGrid","ListTodo","Loader2","Lock","LogOut","Maximize2","MessageCircle","MessageSquare","Minimize2","PanelLeftClose","PanelLeftOpen","Pause","Pencil","Plus","Presentation","RefreshCw","RotateCw","Send","Settings","Shield","ShieldCheck","SlidersHorizontal","Square","Star","ThumbsDown","ThumbsUp","Trash2","Trophy","Undo2","Upload","User","UserPlus","UserRoundCog","Users","X"],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sources":["../../../src/components/Icons/registry.ts"],"sourcesContent":["import type React from 'react';\nimport type { IconProps } from './createIcon';\nimport { ArrowLeft } from './ArrowLeft';\nimport { ArrowLeftRight } from './ArrowLeftRight';\nimport { BarChart3 } from './BarChart3';\nimport { Bell } from './Bell';\nimport { BookOpen } from './BookOpen';\nimport { Bot } from './Bot';\nimport { Check } from './Check';\nimport { ChevronDown } from './ChevronDown';\nimport { ChevronLeft } from './ChevronLeft';\nimport { ChevronRight } from './ChevronRight';\nimport { ChevronUp } from './ChevronUp';\nimport { CircleAlert } from './CircleAlert';\nimport { CircleCheck } from './CircleCheck';\nimport { CircleHelp } from './CircleHelp';\nimport { CirclePlay } from './CirclePlay';\nimport { CircleX } from './CircleX';\nimport { ClipboardCheck } from './ClipboardCheck';\nimport { Clock } from './Clock';\nimport { CloudDownload } from './CloudDownload';\nimport { CloudUpload } from './CloudUpload';\nimport { Code } from './Code';\nimport { Copy } from './Copy';\nimport { Crown } from './Crown';\nimport { Database } from './Database';\nimport { Download } from './Download';\nimport { Eye } from './Eye';\nimport { EyeOff } from './EyeOff';\nimport { File } from './File';\nimport { FileArchive } from './FileArchive';\nimport { FileImage } from './FileImage';\nimport { FileSpreadsheet } from './FileSpreadsheet';\nimport { FileText } from './FileText';\nimport { Flag } from './Flag';\nimport { Flame } from './Flame';\nimport { Folder } from './Folder';\nimport { FolderOpen } from './FolderOpen';\nimport { Hash } from './Hash';\nimport { House } from './House';\nimport { Import } from './Import';\nimport { Inbox } from './Inbox';\nimport { Info } from './Info';\nimport { LayoutDashboard } from './LayoutDashboard';\nimport { LayoutGrid } from './LayoutGrid';\nimport { ListTodo } from './ListTodo';\nimport { Loader2 } from './Loader2';\nimport { Lock } from './Lock';\nimport { LogOut } from './LogOut';\nimport { Maximize2 } from './Maximize2';\nimport { MessageCircle } from './MessageCircle';\nimport { MessageSquare } from './MessageSquare';\nimport { Minimize2 } from './Minimize2';\nimport { PanelLeftClose } from './PanelLeftClose';\nimport { PanelLeftOpen } from './PanelLeftOpen';\nimport { Pause } from './Pause';\nimport { Pencil } from './Pencil';\nimport { Plus } from './Plus';\nimport { Presentation } from './Presentation';\nimport { RefreshCw } from './RefreshCw';\nimport { RotateCw } from './RotateCw';\nimport { Send } from './Send';\nimport { Settings } from './Settings';\nimport { Shield } from './Shield';\nimport { ShieldCheck } from './ShieldCheck';\nimport { SlidersHorizontal } from './SlidersHorizontal';\nimport { Square } from './Square';\nimport { Star } from './Star';\nimport { ThumbsDown } from './ThumbsDown';\nimport { ThumbsUp } from './ThumbsUp';\nimport { Trash2 } from './Trash2';\nimport { Trophy } from './Trophy';\nimport { Undo2 } from './Undo2';\nimport { Upload } from './Upload';\nimport { User } from './User';\nimport { UserPlus } from './UserPlus';\nimport { UserRoundCog } from './UserRoundCog';\nimport { Users } from './Users';\nimport { X } from './X';\nimport { ZoomIn } from './ZoomIn';\nimport { ZoomOut } from './ZoomOut';\n\nexport const ICON_NAMES = [\n 'ArrowLeft',\n 'ArrowLeftRight',\n 'BarChart3',\n 'Bell',\n 'BookOpen',\n 'Bot',\n 'Check',\n 'ChevronDown',\n 'ChevronLeft',\n 'ChevronRight',\n 'ChevronUp',\n 'CircleAlert',\n 'CircleCheck',\n 'CircleHelp',\n 'CirclePlay',\n 'CircleX',\n 'ClipboardCheck',\n 'Clock',\n 'CloudDownload',\n 'CloudUpload',\n 'Code',\n 'Copy',\n 'Crown',\n 'Database',\n 'Download',\n 'Eye',\n 'EyeOff',\n 'File',\n 'FileArchive',\n 'FileImage',\n 'FileSpreadsheet',\n 'FileText',\n 'Flag',\n 'Flame',\n 'Folder',\n 'FolderOpen',\n 'Hash',\n 'House',\n 'Import',\n 'Inbox',\n 'Info',\n 'LayoutDashboard',\n 'LayoutGrid',\n 'ListTodo',\n 'Loader2',\n 'Lock',\n 'LogOut',\n 'Maximize2',\n 'MessageCircle',\n 'MessageSquare',\n 'Minimize2',\n 'PanelLeftClose',\n 'PanelLeftOpen',\n 'Pause',\n 'Pencil',\n 'Plus',\n 'Presentation',\n 'RefreshCw',\n 'RotateCw',\n 'Send',\n 'Settings',\n 'Shield',\n 'ShieldCheck',\n 'SlidersHorizontal',\n 'Square',\n 'Star',\n 'ThumbsDown',\n 'ThumbsUp',\n 'Trash2',\n 'Trophy',\n 'Undo2',\n 'Upload',\n 'User',\n 'UserPlus',\n 'UserRoundCog',\n 'Users',\n 'X',\n 'ZoomIn',\n 'ZoomOut',\n] as const;\n\nexport type IconName = (typeof ICON_NAMES)[number];\n\n/** 全量注册表:仅 showcase / 按名取图标时用;业务具名 import 勿依赖本文件,以免拖入全部图标 */\nexport const ICON_REGISTRY: Record<IconName, React.FC<IconProps>> = {\n ArrowLeft,\n ArrowLeftRight,\n BarChart3,\n Bell,\n BookOpen,\n Bot,\n Check,\n ChevronDown,\n ChevronLeft,\n ChevronRight,\n ChevronUp,\n CircleAlert,\n CircleCheck,\n CircleHelp,\n CirclePlay,\n CircleX,\n ClipboardCheck,\n Clock,\n CloudDownload,\n CloudUpload,\n Code,\n Copy,\n Crown,\n Database,\n Download,\n Eye,\n EyeOff,\n File,\n FileArchive,\n FileImage,\n FileSpreadsheet,\n FileText,\n Flag,\n Flame,\n Folder,\n FolderOpen,\n Hash,\n House,\n Import,\n Inbox,\n Info,\n LayoutDashboard,\n LayoutGrid,\n ListTodo,\n Loader2,\n Lock,\n LogOut,\n Maximize2,\n MessageCircle,\n MessageSquare,\n Minimize2,\n PanelLeftClose,\n PanelLeftOpen,\n Pause,\n Pencil,\n Plus,\n Presentation,\n RefreshCw,\n RotateCw,\n Send,\n Settings,\n Shield,\n ShieldCheck,\n SlidersHorizontal,\n Square,\n Star,\n ThumbsDown,\n ThumbsUp,\n Trash2,\n Trophy,\n Undo2,\n Upload,\n User,\n UserPlus,\n UserRoundCog,\n Users,\n X,\n ZoomIn,\n ZoomOut,\n};\n"],"names":["ICON_NAMES","ICON_REGISTRY","ArrowLeft","ArrowLeftRight","BarChart3","Bell","BookOpen","Bot","Check","ChevronDown","ChevronLeft","ChevronRight","ChevronUp","CircleAlert","CircleCheck","CircleHelp","CirclePlay","CircleX","ClipboardCheck","Clock","CloudDownload","CloudUpload","Code","Copy","Crown","Database","Download","Eye","EyeOff","File","FileArchive","FileImage","FileSpreadsheet","FileText","Flag","Flame","Folder","FolderOpen","Hash","House","Import","Inbox","Info","LayoutDashboard","LayoutGrid","ListTodo","Loader2","Lock","LogOut","Maximize2","MessageCircle","MessageSquare","Minimize2","PanelLeftClose","PanelLeftOpen","Pause","Pencil","Plus","Presentation","RefreshCw","RotateCw","Send","Settings","Shield","ShieldCheck","SlidersHorizontal","Square","Star","ThumbsDown","ThumbsUp","Trash2","Trophy","Undo2","Upload","User","UserPlus","UserRoundCog","Users","X","ZoomIn","ZoomOut"],"mappings":"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"}
@@ -1,29 +1,29 @@
1
1
  import { jsx as t } from "react/jsx-runtime";
2
- import { Row as f, Col as p } from "antd";
2
+ import { Row as d, Col as p } from "antd";
3
3
  import u from "classnames";
4
- import g from "./StatCard/index.js";
5
- import x from "./StatCardList.module.scss.js";
6
- const h = (r) => r <= 2 ? { xs: 12, sm: 12, lg: 12 } : r <= 3 ? { xs: 12, sm: 8, lg: 8 } : r <= 4 ? { xs: 12, sm: 12, lg: 6 } : { xs: 12, sm: 8, lg: 4 }, v = ({
4
+ import x from "./StatCard/index.js";
5
+ import h from "./StatCardList.module.scss.js";
6
+ const C = (r) => r <= 0 ? { span: 24 } : r === 1 ? { span: 24 } : r === 2 ? { xs: 24, sm: 12 } : r === 3 ? { xs: 24, sm: 8 } : r === 4 ? { xs: 12, sm: 12, lg: 6 } : 24 % r === 0 ? { xs: 12, sm: 8, lg: 24 / r } : { flex: "1 1 0", style: { minWidth: 140 } }, j = ({
7
7
  items: r,
8
- gutter: o = [16, 16],
9
- className: l,
10
- inline: i = !1,
11
- fontSize: m
8
+ gutter: e = [16, 16],
9
+ className: i,
10
+ inline: m = !1,
11
+ fontSize: o
12
12
  }) => {
13
- const e = r.filter((s) => !s.hidden), a = h(e.length);
13
+ const n = r.filter((s) => !s.hidden), a = C(n.length);
14
14
  return /* @__PURE__ */ t(
15
- f,
15
+ d,
16
16
  {
17
- gutter: o,
18
- className: u("stat-card-list", x["stat-card-list"], l),
19
- children: e.map((s, n) => {
20
- const { colProps: c, hidden: C, ...d } = s;
21
- return /* @__PURE__ */ t(p, { ...c ?? a, children: /* @__PURE__ */ t(g, { ...d, inline: i, fontSize: m }) }, n);
17
+ gutter: e,
18
+ className: u("stat-card-list", h["stat-card-list"], i),
19
+ children: n.map((s, f) => {
20
+ const { colProps: l, hidden: g, ...c } = s;
21
+ return /* @__PURE__ */ t(p, { ...l ?? a, children: /* @__PURE__ */ t(x, { ...c, inline: m, fontSize: o }) }, f);
22
22
  })
23
23
  }
24
24
  );
25
25
  };
26
26
  export {
27
- v as default
27
+ j as default
28
28
  };
29
29
  //# sourceMappingURL=StatCardList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StatCardList.js","sources":["../../../src/components/Stat/StatCardList.tsx"],"sourcesContent":["import { Col, Row } from 'antd';\nimport type { ColProps } from 'antd/es/grid';\nimport classNames from 'classnames';\nimport React from 'react';\nimport type { StatCardProps } from './StatCard';\nimport StatCard from './StatCard';\nimport styles from './StatCardList.module.scss';\n\nexport interface StatItem extends Omit<StatCardProps, 'inline' | 'fontSize'> {\n /** 卡片占列配置,不传则根据总 items 数自动计算 */\n colProps?: ColProps;\n /** 是否隐藏,为 true 时不渲染 */\n hidden?: boolean;\n}\n\nexport interface StatCardListProps {\n /** 统计项列表 */\n items: StatItem[];\n /** 行间距 */\n gutter?: [number, number];\n /** 容器 className */\n className?: string;\n /** 是否内联模式 */\n inline?: boolean;\n /** 内联模式字体大小 */\n fontSize?: number;\n}\n\n/** 根据项数自动计算默认列宽 */\nconst getDefaultCol = (total: number): ColProps => {\n if (total <= 2) return { xs: 12, sm: 12, lg: 12 };\n if (total <= 3) return { xs: 12, sm: 8, lg: 8 };\n if (total <= 4) return { xs: 12, sm: 12, lg: 6 };\n return { xs: 12, sm: 8, lg: 4 };\n};\n\n/** 统计卡片列表 */\nconst StatCardList: React.FC<StatCardListProps> = ({\n items,\n gutter = [16, 16],\n className,\n inline = false,\n fontSize,\n}) => {\n const visibleItems = items.filter((item) => !item.hidden);\n const defaultCol = getDefaultCol(visibleItems.length);\n\n return (\n <Row\n gutter={gutter}\n className={classNames('stat-card-list', styles['stat-card-list'], className)}\n >\n {visibleItems.map((item, idx) => {\n const { colProps, hidden, ...cardProps } = item;\n return (\n <Col key={idx} {...(colProps ?? defaultCol)}>\n <StatCard {...cardProps} inline={inline} fontSize={fontSize} />\n </Col>\n );\n })}\n </Row>\n );\n};\n\nexport default StatCardList;\n"],"names":["getDefaultCol","total","StatCardList","items","gutter","className","inline","fontSize","visibleItems","item","defaultCol","jsx","Row","classNames","styles","idx","colProps","hidden","cardProps","Col","StatCard"],"mappings":";;;;;AA6BA,MAAMA,IAAgB,CAACC,MACjBA,KAAS,IAAU,EAAE,IAAI,IAAI,IAAI,IAAI,IAAI,GAAA,IACzCA,KAAS,IAAU,EAAE,IAAI,IAAI,IAAI,GAAG,IAAI,EAAA,IACxCA,KAAS,IAAU,EAAE,IAAI,IAAI,IAAI,IAAI,IAAI,EAAA,IACtC,EAAE,IAAI,IAAI,IAAI,GAAG,IAAI,EAAA,GAIxBC,IAA4C,CAAC;AAAA,EACjD,OAAAC;AAAA,EACA,QAAAC,IAAS,CAAC,IAAI,EAAE;AAAA,EAChB,WAAAC;AAAA,EACA,QAAAC,IAAS;AAAA,EACT,UAAAC;AACF,MAAM;AACJ,QAAMC,IAAeL,EAAM,OAAO,CAACM,MAAS,CAACA,EAAK,MAAM,GAClDC,IAAaV,EAAcQ,EAAa,MAAM;AAEpD,SACE,gBAAAG;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,QAAAR;AAAA,MACA,WAAWS,EAAW,kBAAkBC,EAAO,gBAAgB,GAAGT,CAAS;AAAA,MAE1E,UAAAG,EAAa,IAAI,CAACC,GAAMM,MAAQ;AAC/B,cAAM,EAAE,UAAAC,GAAU,QAAAC,GAAQ,GAAGC,MAAcT;AAC3C,eACE,gBAAAE,EAACQ,GAAA,EAAe,GAAIH,KAAYN,GAC9B,UAAA,gBAAAC,EAACS,GAAA,EAAU,GAAGF,GAAW,QAAAZ,GAAgB,UAAAC,EAAA,CAAoB,EAAA,GADrDQ,CAEV;AAAA,MAEJ,CAAC;AAAA,IAAA;AAAA,EAAA;AAGP;"}
1
+ {"version":3,"file":"StatCardList.js","sources":["../../../src/components/Stat/StatCardList.tsx"],"sourcesContent":["import { Col, Row } from 'antd';\nimport type { ColProps } from 'antd/es/grid';\nimport classNames from 'classnames';\nimport React from 'react';\nimport type { StatCardProps } from './StatCard';\nimport StatCard from './StatCard';\nimport styles from './StatCardList.module.scss';\n\nexport interface StatItem extends Omit<StatCardProps, 'inline' | 'fontSize'> {\n /** 卡片占列配置,不传则根据总 items 数自动计算 */\n colProps?: ColProps;\n /** 是否隐藏,为 true 时不渲染 */\n hidden?: boolean;\n}\n\nexport interface StatCardListProps {\n /** 统计项列表 */\n items: StatItem[];\n /** 行间距 */\n gutter?: [number, number];\n /** 容器 className */\n className?: string;\n /** 是否内联模式 */\n inline?: boolean;\n /** 内联模式字体大小 */\n fontSize?: number;\n}\n\n/** 根据项数自动计算默认列宽;24 不能整除时用 flex 均分撑满(如 5 项) */\nconst getDefaultCol = (total: number): ColProps => {\n if (total <= 0) return { span: 24 };\n if (total === 1) return { span: 24 };\n if (total === 2) return { xs: 24, sm: 12 };\n if (total === 3) return { xs: 24, sm: 8 };\n if (total === 4) return { xs: 12, sm: 12, lg: 6 };\n if (24 % total === 0) {\n const span = 24 / total;\n return { xs: 12, sm: 8, lg: span };\n }\n return { flex: '1 1 0', style: { minWidth: 140 } };\n};\n\n/** 统计卡片列表 */\nconst StatCardList: React.FC<StatCardListProps> = ({\n items,\n gutter = [16, 16],\n className,\n inline = false,\n fontSize,\n}) => {\n const visibleItems = items.filter((item) => !item.hidden);\n const defaultCol = getDefaultCol(visibleItems.length);\n\n return (\n <Row\n gutter={gutter}\n className={classNames('stat-card-list', styles['stat-card-list'], className)}\n >\n {visibleItems.map((item, idx) => {\n const { colProps, hidden, ...cardProps } = item;\n return (\n <Col key={idx} {...(colProps ?? defaultCol)}>\n <StatCard {...cardProps} inline={inline} fontSize={fontSize} />\n </Col>\n );\n })}\n </Row>\n );\n};\n\nexport default StatCardList;\n"],"names":["getDefaultCol","total","StatCardList","items","gutter","className","inline","fontSize","visibleItems","item","defaultCol","jsx","Row","classNames","styles","idx","colProps","hidden","cardProps","Col","StatCard"],"mappings":";;;;;AA6BA,MAAMA,IAAgB,CAACC,MACjBA,KAAS,IAAU,EAAE,MAAM,GAAA,IAC3BA,MAAU,IAAU,EAAE,MAAM,GAAA,IAC5BA,MAAU,IAAU,EAAE,IAAI,IAAI,IAAI,GAAA,IAClCA,MAAU,IAAU,EAAE,IAAI,IAAI,IAAI,EAAA,IAClCA,MAAU,IAAU,EAAE,IAAI,IAAI,IAAI,IAAI,IAAI,EAAA,IAC1C,KAAKA,MAAU,IAEV,EAAE,IAAI,IAAI,IAAI,GAAG,IADX,KAAKA,EACU,IAEvB,EAAE,MAAM,SAAS,OAAO,EAAE,UAAU,MAAI,GAI3CC,IAA4C,CAAC;AAAA,EACjD,OAAAC;AAAA,EACA,QAAAC,IAAS,CAAC,IAAI,EAAE;AAAA,EAChB,WAAAC;AAAA,EACA,QAAAC,IAAS;AAAA,EACT,UAAAC;AACF,MAAM;AACJ,QAAMC,IAAeL,EAAM,OAAO,CAACM,MAAS,CAACA,EAAK,MAAM,GAClDC,IAAaV,EAAcQ,EAAa,MAAM;AAEpD,SACE,gBAAAG;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,QAAAR;AAAA,MACA,WAAWS,EAAW,kBAAkBC,EAAO,gBAAgB,GAAGT,CAAS;AAAA,MAE1E,UAAAG,EAAa,IAAI,CAACC,GAAMM,MAAQ;AAC/B,cAAM,EAAE,UAAAC,GAAU,QAAAC,GAAQ,GAAGC,MAAcT;AAC3C,eACE,gBAAAE,EAACQ,GAAA,EAAe,GAAIH,KAAYN,GAC9B,UAAA,gBAAAC,EAACS,GAAA,EAAU,GAAGF,GAAW,QAAAZ,GAAgB,UAAAC,EAAA,CAAoB,EAAA,GADrDQ,CAEV;AAAA,MAEJ,CAAC;AAAA,IAAA;AAAA,EAAA;AAGP;"}
@@ -0,0 +1,27 @@
1
+ import { ReactNode } from 'react';
2
+ import { PageShellActionItem } from '../../Layout/PageShell';
3
+ export type ActionTrackingShellProps = {
4
+ title?: string;
5
+ description?: ReactNode;
6
+ /** 顶栏操作(如「新建任务」);权限由 App 决定是否传入 */
7
+ actions?: PageShellActionItem[];
8
+ spinning?: boolean;
9
+ /** 筛选条(App 注入) */
10
+ filterSlot?: ReactNode;
11
+ /** 列表+分页(App 注入;含行执行闭环钮) */
12
+ listSlot?: ReactNode;
13
+ /** 告警处置等扩展槽(可选;S3 可空) */
14
+ dispositionSlot?: ReactNode;
15
+ /** 弹层:新建/跟进/取消等 */
16
+ modalSlot?: ReactNode;
17
+ className?: string;
18
+ bodyClassName?: string;
19
+ syncPageMeta?: boolean;
20
+ fillHeight?: boolean;
21
+ };
22
+ /**
23
+ * 行动跟踪页壳(D8):布局 + 注入点;权限码 / 筛选项 / 列 / 处置 / API 均由 App 注入。
24
+ * 告警处置与执行闭环分型由 App 遵守;壳不内置认领逻辑。
25
+ */
26
+ declare const ActionTrackingShell: React.FC<ActionTrackingShellProps>;
27
+ export default ActionTrackingShell;
@@ -0,0 +1,43 @@
1
+ import { jsxs as l } from "react/jsx-runtime";
2
+ import d from "classnames";
3
+ import f from "../../Layout/ModulePageShell/index.js";
4
+ import g from "./style.module.scss.js";
5
+ const S = ({
6
+ title: r = "行动跟踪",
7
+ description: s,
8
+ actions: o,
9
+ spinning: e,
10
+ filterSlot: t,
11
+ listSlot: i,
12
+ dispositionSlot: a,
13
+ modalSlot: c,
14
+ className: n,
15
+ bodyClassName: m,
16
+ syncPageMeta: h,
17
+ fillHeight: p
18
+ }) => /* @__PURE__ */ l(f, { ...{
19
+ title: r,
20
+ description: s,
21
+ actions: o,
22
+ spinning: e,
23
+ syncPageMeta: h,
24
+ fillHeight: p,
25
+ bodyClassName: m
26
+ }, children: [
27
+ /* @__PURE__ */ l(
28
+ "div",
29
+ {
30
+ className: d("action-tracking-shell", g["action-tracking-shell"], n),
31
+ children: [
32
+ t,
33
+ a,
34
+ i
35
+ ]
36
+ }
37
+ ),
38
+ c
39
+ ] });
40
+ export {
41
+ S as default
42
+ };
43
+ //# sourceMappingURL=ActionTrackingShell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActionTrackingShell.js","sources":["../../../../src/components/Tools/ActionTracking/ActionTrackingShell.tsx"],"sourcesContent":["import classNames from 'classnames';\nimport type { ReactNode } from 'react';\nimport ModulePageShell, { type ModulePageShellProps } from '../../Layout/ModulePageShell';\nimport type { PageShellActionItem } from '../../Layout/PageShell';\nimport styles from './style.module.scss';\n\nexport type ActionTrackingShellProps = {\n title?: string;\n description?: ReactNode;\n /** 顶栏操作(如「新建任务」);权限由 App 决定是否传入 */\n actions?: PageShellActionItem[];\n spinning?: boolean;\n /** 筛选条(App 注入) */\n filterSlot?: ReactNode;\n /** 列表+分页(App 注入;含行执行闭环钮) */\n listSlot?: ReactNode;\n /** 告警处置等扩展槽(可选;S3 可空) */\n dispositionSlot?: ReactNode;\n /** 弹层:新建/跟进/取消等 */\n modalSlot?: ReactNode;\n className?: string;\n bodyClassName?: string;\n syncPageMeta?: boolean;\n fillHeight?: boolean;\n};\n\n/**\n * 行动跟踪页壳(D8):布局 + 注入点;权限码 / 筛选项 / 列 / 处置 / API 均由 App 注入。\n * 告警处置与执行闭环分型由 App 遵守;壳不内置认领逻辑。\n */\nconst ActionTrackingShell: React.FC<ActionTrackingShellProps> = ({\n title = '行动跟踪',\n description,\n actions,\n spinning,\n filterSlot,\n listSlot,\n dispositionSlot,\n modalSlot,\n className,\n bodyClassName,\n syncPageMeta,\n fillHeight,\n}) => {\n const shellProps: ModulePageShellProps = {\n title,\n description,\n actions,\n spinning,\n syncPageMeta,\n fillHeight,\n bodyClassName,\n };\n\n return (\n <ModulePageShell {...shellProps}>\n <div\n className={classNames('action-tracking-shell', styles['action-tracking-shell'], className)}\n >\n {filterSlot}\n {dispositionSlot}\n {listSlot}\n </div>\n {modalSlot}\n </ModulePageShell>\n );\n};\n\nexport default ActionTrackingShell;\n"],"names":["ActionTrackingShell","title","description","actions","spinning","filterSlot","listSlot","dispositionSlot","modalSlot","className","bodyClassName","syncPageMeta","fillHeight","jsxs","ModulePageShell","classNames","styles"],"mappings":";;;;AA8BA,MAAMA,IAA0D,CAAC;AAAA,EAC/D,OAAAC,IAAQ;AAAA,EACR,aAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC;AAAA,EACA,YAAAC;AAAA,EACA,UAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,WAAAC;AAAA,EACA,WAAAC;AAAA,EACA,eAAAC;AAAA,EACA,cAAAC;AAAA,EACA,YAAAC;AACF,MAYI,gBAAAC,EAACC,GAAA,EAAiB,GAXqB;AAAA,EACvC,OAAAb;AAAA,EACA,aAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC;AAAA,EACA,cAAAO;AAAA,EACA,YAAAC;AAAA,EACA,eAAAF;AAAA,GAKE,UAAA;AAAA,EAAA,gBAAAG;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWE,EAAW,yBAAyBC,EAAO,uBAAuB,GAAGP,CAAS;AAAA,MAExF,UAAA;AAAA,QAAAJ;AAAA,QACAE;AAAA,QACAD;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAAA,EAEFE;AAAA,GACH;"}
@@ -0,0 +1,2 @@
1
+ export { default as ActionTrackingShell } from './ActionTrackingShell';
2
+ export type { ActionTrackingShellProps } from './ActionTrackingShell';
@@ -0,0 +1,7 @@
1
+ const t = {
2
+ "action-tracking-shell": "_action-tracking-shell_1bk2p_1"
3
+ };
4
+ export {
5
+ t as default
6
+ };
7
+ //# sourceMappingURL=style.module.scss.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"style.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
@@ -1,5 +1,7 @@
1
1
  export { InboxBell } from './Inbox';
2
2
  export type { InboxBellItem, InboxBellListResult, InboxBellListParams, InboxBellProps, InboxBellMessageType, } from './Inbox';
3
+ export { ActionTrackingShell } from './ActionTracking';
4
+ export type { ActionTrackingShellProps } from './ActionTracking';
3
5
  export { MessageTemplateAdmin } from './MessageCenter';
4
6
  export type { MessageTemplateAdminProps, MessageTemplateAdminItem, MessageEventCatalogItem, MessageEventCatalogPayload, MessageAudienceRoleOption, MessageAudienceUserOption, MessageTemplateVariable, MessageTemplateVariableAdmin, PushRuleAdminItem, MessageCrudFlags, MessageAdminPermissions, } from './MessageCenter';
5
7
  export { generateTemplateCode, normalizeTemplatePlaceholders, applyTemplateVars, resolveMessageAdminPermissions, MSG_CENTER_APP_SWITCH_STORAGE_KEY, SYSTEM_APP_TO_MSG_CENTER_APP_KEY, MSG_CENTER_SWITCHABLE_APP_KEYS, msgCenterAppKeyFromSystemAppCode, filterMsgCenterSwitchableApps, getMsgCenterAppKey, setMsgCenterAppKey, subscribeMsgCenterAppKey, bindMsgCenterAppKeyStorageSync, resolveMsgCenterSwitchState, useMsgCenterAppKey, MsgCenterAppSwitcher, } from './MessageCenter';
@@ -17,7 +17,7 @@ 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(u, { children: [
20
- /* @__PURE__ */ r(p, { type: "text", icon: /* @__PURE__ */ r(C, {}), onClick: () => e(!0), title: "导览" }),
20
+ /* @__PURE__ */ r(p, { type: "text", icon: /* @__PURE__ */ r(C, {}), onClick: () => e(!0), title: "系统导览" }),
21
21
  /* @__PURE__ */ r(
22
22
  a,
23
23
  {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/Tour/AppTour/index.tsx"],"sourcesContent":["import { CircleHelp } from '@/components/Icons';\nimport type { TourProps } from 'antd';\nimport { Button, Tour } from 'antd';\nimport classNames from 'classnames';\nimport React, { useState } from 'react';\nimport styles from './style.module.scss';\n\nexport interface AppTourStep {\n title: string;\n description: React.ReactNode;\n target?: () => HTMLElement;\n placement?: TourProps['steps'] extends (infer S)[] | undefined ? S extends { placement?: infer P } ? P : never : never;\n}\n\nexport interface AppTourProps {\n steps: AppTourStep[];\n /** localStorage key,用于记录是否已完成导览 */\n storageKey?: string;\n /** 是否自动打开(首次) */\n autoOpen?: boolean;\n}\n\nconst AppTour: React.FC<AppTourProps> = ({ steps, storageKey, autoOpen = true }) => {\n const [open, setOpen] = useState(false);\n\n React.useEffect(() => {\n if (!autoOpen || !storageKey) return;\n const completed = localStorage.getItem(storageKey);\n if (!completed) {\n const timer = setTimeout(() => setOpen(true), 800);\n return () => clearTimeout(timer);\n }\n }, [autoOpen, storageKey]);\n\n const handleClose = () => {\n setOpen(false);\n if (storageKey) localStorage.setItem(storageKey, 'true');\n };\n\n if (!steps.length) return null;\n\n return (\n <>\n <Button type=\"text\" icon={<CircleHelp />} onClick={() => setOpen(true)} title=\"导览\" />\n <Tour\n open={open}\n onClose={handleClose}\n onFinish={handleClose}\n steps={steps}\n indicatorsRender={(current, total) => (\n <span className={classNames('app-tour-root', styles['app-tour-root'])}>\n {current + 1} / {total}\n </span>\n )}\n />\n </>\n );\n};\n\nexport default AppTour;\n"],"names":["AppTour","steps","storageKey","autoOpen","open","setOpen","useState","React","timer","handleClose","jsxs","Fragment","jsx","Button","CircleHelp","Tour","current","total","classNames","styles"],"mappings":";;;;;;AAsBA,MAAMA,IAAkC,CAAC,EAAE,OAAAC,GAAO,YAAAC,GAAY,UAAAC,IAAW,SAAW;AAClF,QAAM,CAACC,GAAMC,CAAO,IAAIC,EAAS,EAAK;AAEtCC,EAAAA,EAAM,UAAU,MAAM;AACpB,QAAI,CAACJ,KAAY,CAACD,EAAY;AAE9B,QAAI,CADc,aAAa,QAAQA,CAAU,GACjC;AACd,YAAMM,IAAQ,WAAW,MAAMH,EAAQ,EAAI,GAAG,GAAG;AACjD,aAAO,MAAM,aAAaG,CAAK;AAAA,IACjC;AAAA,EACF,GAAG,CAACL,GAAUD,CAAU,CAAC;AAEzB,QAAMO,IAAc,MAAM;AACxB,IAAAJ,EAAQ,EAAK,GACTH,KAAY,aAAa,QAAQA,GAAY,MAAM;AAAA,EACzD;AAEA,SAAKD,EAAM,SAGT,gBAAAS,EAAAC,GAAA,EACE,UAAA;AAAA,IAAA,gBAAAC,EAACC,GAAA,EAAO,MAAK,QAAO,MAAM,gBAAAD,EAACE,GAAA,CAAA,CAAW,GAAI,SAAS,MAAMT,EAAQ,EAAI,GAAG,OAAM,MAAK;AAAA,IACnF,gBAAAO;AAAA,MAACG;AAAA,MAAA;AAAA,QACC,MAAAX;AAAA,QACA,SAASK;AAAA,QACT,UAAUA;AAAA,QACV,OAAAR;AAAA,QACA,kBAAkB,CAACe,GAASC,MAC1B,gBAAAP,EAAC,QAAA,EAAK,WAAWQ,EAAW,iBAAiBC,EAAO,eAAe,CAAC,GACjE,UAAA;AAAA,UAAAH,IAAU;AAAA,UAAE;AAAA,UAAIC;AAAA,QAAA,EAAA,CACnB;AAAA,MAAA;AAAA,IAAA;AAAA,EAEJ,GACF,IAhBwB;AAkB5B;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/Tour/AppTour/index.tsx"],"sourcesContent":["import { CircleHelp } from '@/components/Icons';\nimport type { TourProps } from 'antd';\nimport { Button, Tour } from 'antd';\nimport classNames from 'classnames';\nimport React, { useState } from 'react';\nimport styles from './style.module.scss';\n\nexport interface AppTourStep {\n title: string;\n description: React.ReactNode;\n target?: () => HTMLElement;\n placement?: TourProps['steps'] extends (infer S)[] | undefined\n ? S extends { placement?: infer P }\n ? P\n : never\n : never;\n}\n\nexport interface AppTourProps {\n steps: AppTourStep[];\n /** localStorage key,用于记录是否已完成导览 */\n storageKey?: string;\n /** 是否自动打开(首次) */\n autoOpen?: boolean;\n}\n\nconst AppTour: React.FC<AppTourProps> = ({ steps, storageKey, autoOpen = true }) => {\n const [open, setOpen] = useState(false);\n\n React.useEffect(() => {\n if (!autoOpen || !storageKey) return;\n const completed = localStorage.getItem(storageKey);\n if (!completed) {\n const timer = setTimeout(() => setOpen(true), 800);\n return () => clearTimeout(timer);\n }\n }, [autoOpen, storageKey]);\n\n const handleClose = () => {\n setOpen(false);\n if (storageKey) localStorage.setItem(storageKey, 'true');\n };\n\n if (!steps.length) return null;\n\n return (\n <>\n <Button type=\"text\" icon={<CircleHelp />} onClick={() => setOpen(true)} title=\"系统导览\" />\n <Tour\n open={open}\n onClose={handleClose}\n onFinish={handleClose}\n steps={steps}\n indicatorsRender={(current, total) => (\n <span className={classNames('app-tour-root', styles['app-tour-root'])}>\n {current + 1} / {total}\n </span>\n )}\n />\n </>\n );\n};\n\nexport default AppTour;\n"],"names":["AppTour","steps","storageKey","autoOpen","open","setOpen","useState","React","timer","handleClose","jsxs","Fragment","jsx","Button","CircleHelp","Tour","current","total","classNames","styles"],"mappings":";;;;;;AA0BA,MAAMA,IAAkC,CAAC,EAAE,OAAAC,GAAO,YAAAC,GAAY,UAAAC,IAAW,SAAW;AAClF,QAAM,CAACC,GAAMC,CAAO,IAAIC,EAAS,EAAK;AAEtCC,EAAAA,EAAM,UAAU,MAAM;AACpB,QAAI,CAACJ,KAAY,CAACD,EAAY;AAE9B,QAAI,CADc,aAAa,QAAQA,CAAU,GACjC;AACd,YAAMM,IAAQ,WAAW,MAAMH,EAAQ,EAAI,GAAG,GAAG;AACjD,aAAO,MAAM,aAAaG,CAAK;AAAA,IACjC;AAAA,EACF,GAAG,CAACL,GAAUD,CAAU,CAAC;AAEzB,QAAMO,IAAc,MAAM;AACxB,IAAAJ,EAAQ,EAAK,GACTH,KAAY,aAAa,QAAQA,GAAY,MAAM;AAAA,EACzD;AAEA,SAAKD,EAAM,SAGT,gBAAAS,EAAAC,GAAA,EACE,UAAA;AAAA,IAAA,gBAAAC,EAACC,GAAA,EAAO,MAAK,QAAO,MAAM,gBAAAD,EAACE,GAAA,CAAA,CAAW,GAAI,SAAS,MAAMT,EAAQ,EAAI,GAAG,OAAM,QAAO;AAAA,IACrF,gBAAAO;AAAA,MAACG;AAAA,MAAA;AAAA,QACC,MAAAX;AAAA,QACA,SAASK;AAAA,QACT,UAAUA;AAAA,QACV,OAAAR;AAAA,QACA,kBAAkB,CAACe,GAASC,MAC1B,gBAAAP,EAAC,QAAA,EAAK,WAAWQ,EAAW,iBAAiBC,EAAO,eAAe,CAAC,GACjE,UAAA;AAAA,UAAAH,IAAU;AAAA,UAAE;AAAA,UAAIC;AAAA,QAAA,EAAA,CACnB;AAAA,MAAA;AAAA,IAAA;AAAA,EAEJ,GACF,IAhBwB;AAkB5B;"}
@@ -1,2 +1,3 @@
1
1
  export { default as AppTour } from './AppTour';
2
2
  export type { AppTourProps, AppTourStep } from './AppTour';
3
+ export { getTargetByTourId, resolveTourTarget } from './resolveTourTarget';
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Resolve a Tour target from CSS selector or `data-tour` id.
3
+ * Returns null when missing — callers must skip that step (do not fall back to body).
4
+ */
5
+ export declare function resolveTourTarget(selector: string): HTMLElement | null;
6
+ /** Convenience: `[data-tour="<id>"]` */
7
+ export declare function getTargetByTourId(tourId: string): HTMLElement | null;
@@ -0,0 +1,16 @@
1
+ function e(r) {
2
+ if (typeof document > "u" || !r) return null;
3
+ try {
4
+ return document.querySelector(r);
5
+ } catch {
6
+ return null;
7
+ }
8
+ }
9
+ function t(r) {
10
+ return r ? e(`[data-tour="${r}"]`) : null;
11
+ }
12
+ export {
13
+ t as getTargetByTourId,
14
+ e as resolveTourTarget
15
+ };
16
+ //# sourceMappingURL=resolveTourTarget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveTourTarget.js","sources":["../../../src/components/Tour/resolveTourTarget.ts"],"sourcesContent":["/**\n * Resolve a Tour target from CSS selector or `data-tour` id.\n * Returns null when missing — callers must skip that step (do not fall back to body).\n */\nexport function resolveTourTarget(selector: string): HTMLElement | null {\n if (typeof document === 'undefined' || !selector) return null;\n try {\n return document.querySelector(selector) as HTMLElement | null;\n } catch {\n return null;\n }\n}\n\n/** Convenience: `[data-tour=\"<id>\"]` */\nexport function getTargetByTourId(tourId: string): HTMLElement | null {\n if (!tourId) return null;\n return resolveTourTarget(`[data-tour=\"${tourId}\"]`);\n}\n"],"names":["resolveTourTarget","selector","getTargetByTourId","tourId"],"mappings":"AAIO,SAASA,EAAkBC,GAAsC;AACtE,MAAI,OAAO,WAAa,OAAe,CAACA,EAAU,QAAO;AACzD,MAAI;AACF,WAAO,SAAS,cAAcA,CAAQ;AAAA,EACxC,QAAQ;AACN,WAAO;AAAA,EACT;AACF;AAGO,SAASC,EAAkBC,GAAoC;AACpE,SAAKA,IACEH,EAAkB,eAAeG,CAAM,IAAI,IAD9B;AAEtB;"}