ForcePilot/backend/package/yuxi/channel/sdk/targets/display.py
Kris b438af3ba8 feat(channel-sdk): 新增完整的渠道SDK工具链
本提交新增了全渠道SDK核心模块:
1.  异步锁、目标解析、动作调度等基础工具
2.  消息动作注册与统一调度系统
3.  测试套件与契约测试框架
4.  完整的目标解析流水线与工具函数
5.  资源依赖注入与生命周期管理
2026-05-21 10:29:12 +08:00

36 lines
952 B
Python

def format_target_display(
target: str,
*,
display: str = "",
kind: str = "",
channel: str = "",
) -> str:
trimmed = target.strip()
display_trimmed = display.strip()
if display_trimmed:
if kind == "user":
return f"@{display_trimmed}"
if kind in ("group", "channel"):
return f"#{display_trimmed}"
return display_trimmed
if trimmed.startswith("@") or trimmed.startswith("#"):
return trimmed
lowered = trimmed.lower()
channel_prefix = f"{channel.lower()}:"
core = trimmed[len(channel_prefix) :] if lowered.startswith(channel_prefix) else trimmed
if core.lower().startswith("channel:"):
return f"#{core.split(':', 1)[1]}"
if core.lower().startswith("user:"):
return f"@{core.split(':', 1)[1]}"
if kind == "user":
return f"@{core}"
if kind in ("group", "channel"):
return f"#{core}"
return core