iop/agent-ui/definition/components/edge-selector/index.md
2026-06-25 08:38:09 +09:00

2 KiB

ui_doc_type component_id status source_evidence
component edge-selector implemented
type path notes
code apps/client/lib/widgets/nodes_panel.dart NodesPanel renders an Active Edge dropdown and refresh action.
type path notes
code apps/client/lib/widgets/runtime_panel.dart RuntimePanel renders an Active Edge dropdown and refresh action.
type path notes
code apps/client/lib/widgets/execution_logs_panel.dart ExecutionLogsPanel renders a Filter Edge dropdown and refresh action.
type path notes
user null Initial scaffold requested by user.

Edge Selector

Component ID: edge-selector

Status: implemented

Source Evidence

Type Path Notes
code apps/client/lib/widgets/nodes_panel.dart active Edge dropdown과 refresh icon을 포함한다.
code apps/client/lib/widgets/runtime_panel.dart responsive header 안에서 active Edge dropdown과 refresh icon을 포함한다.
code apps/client/lib/widgets/execution_logs_panel.dart filter Edge dropdown과 refresh icon을 포함한다.
user 없음 초기 agent-ui 생성을 요청했다.

Purpose

Edge-scoped view에서 대상 Edge를 선택하고 현재 view 데이터를 갱신한다.

Used By

  • nodes: nodes.edge-selector
  • runtime: runtime.edge-selector
  • execution-logs: execution-logs.edge-selector

Anatomy

  • label
  • dropdown
  • refresh icon button

Variants

  • active-edge: Nodes/Runtime에서 사용
  • filter-edge: Execution Logs에서 사용

States

  • default
  • loading: view별 refresh 상태로 표시
  • empty: Edge 목록이 없으면 selector를 숨기거나 안내 메시지를 표시
  • error: view별 error 영역에서 처리
  • disabled: 없음

Rules

  • dropdown item label은 edge name이 있으면 name, 없으면 edge id를 사용한다.
  • 선택 값이 목록에 없으면 첫 Edge로 fallback한다.

Decision History

  • 2026-06-25: 세 개 panel에 반복되는 Edge dropdown pattern을 component로 정의했다.