SuperAPI AI 工具集

scene-menu-bar

通用与其它

查看项目

更新于 10-16 08:07

技能介绍

用途:为 PostHog 场景在 <SceneTitleSection> 上方添加或编辑 Mac 风格 SceneMenuBar,把 ScenePanel 操作整合为可发现、可键盘导航的菜单栏。整条栏由 SCENE_MENU_BAR 特性开关控制(见 lib/constants.tsx)。

主要组件(均位于 frontend/src/layout/scenes/components/SceneMenuBar.tsx):SceneMenuBar 顶层包裹,含固定的右侧集群(PostHog AI / Docs / Support);SceneMenuBarMenu 顶层菜单(File / Edit / View / Metadata / Staff only);SceneMenuBarSubMenu 子菜单;SceneMenuBarItem 普通项;SceneMenuBarCheckboxItem 复选项;SceneMenuBarRadioGroup 与 SceneMenuBarRadioItem 单选组;SceneMenuBarSeparator 分隔线;SceneMenuBarShortcut 快捷键提示;SceneMenuBarPopover 用于文本输入、下拉等富表单控件(Menu 弹层会拦截按键)。

规范要点:File 含 Create 子菜单、项目树项、导出与位于底部且带 variant="destructive" 的删除/归档/恢复;Edit 含复制、重命名、改 SQL、状态变更,开关类项用分隔线与普通项隔开;View 为条件性跨资源跳转,空则不渲染;Metadata 必须用 Popover(标签、评估上下文、阶段等);Staff only 仅对员工等显示。状态类操作统一放 Edit,不单独建 State 菜单。破坏性操作底部用分隔线隔开并加 variant="destructive",不加 opensFloatingUi,涉及权限时包 AccessControlAction。开关组用稳定标签(如 Pinned、Show debug panel)。打开弹窗/面板的项标签末尾加 …。Create 子菜单含 Cohort、Survey、Dashboard、Notebook、Endpoint、Subscription、Alert、Share or embed 等交叉售卖项。运行时可能为空菜单需显式传 disabled 或在父级整体 gate。标签等富输入用 TagsCombobox,缓存用 debounce 250 毫秒做乐观保存。File 底部用 <SceneMenuBarFileItems dataAttrKey={RESOURCE_TYPE} />。整栏在 padded 布局下才做 -mx-4 -mt-4 出血。已迁移场景包括 Feature Flag、Insight、Dashboard,迁移时新建 <Scene>SceneMenuBar.tsx 并置于 <SceneTitleSection> 上方。审计时把 ScenePanel 各项映射到菜单归属、是否 destructive、是否 opensFloatingUi、是否切换项及门控条件。具体细节以官方资料为准。