71 lines
1.6 KiB
Markdown
71 lines
1.6 KiB
Markdown
---
|
|
ui_doc_type: component
|
|
component_id: device-tile
|
|
status: 구현됨
|
|
source_evidence:
|
|
- type: code
|
|
path: lib/src/features/devices/devices_page.dart
|
|
notes: "_DeviceTile, _DeviceStateChip, _CompactIconButton"
|
|
- type: docs
|
|
path: README.md
|
|
notes: "Android device 목록 조회 scope"
|
|
- type: user
|
|
path: null
|
|
notes: "agent-ui 생성 요청"
|
|
---
|
|
|
|
# Device Tile
|
|
|
|
Component ID: `device-tile`
|
|
|
|
Status: `구현됨`
|
|
|
|
## Source Evidence
|
|
|
|
| Type | Path | Notes |
|
|
|------|------|-------|
|
|
| code | `lib/src/features/devices/devices_page.dart` | `_DeviceTile`, `_DeviceStateChip`, `_CompactIconButton` |
|
|
| docs | `README.md` | Android device 목록 조회 scope |
|
|
| user | 없음 | agent-ui 생성 요청 |
|
|
|
|
## Purpose
|
|
|
|
Android device 하나의 readiness, serial, metadata, logcat/install actions를 grid card 안에서 표시한다.
|
|
|
|
## Used By
|
|
|
|
- `devices`: `devices.device-grid`
|
|
|
|
## Anatomy
|
|
|
|
- phone icon tinted by state
|
|
- display name
|
|
- serial
|
|
- product/device metadata
|
|
- state message
|
|
- state chip
|
|
- logcat icon action
|
|
- install icon action
|
|
|
|
## Variants
|
|
|
|
- ready: logcat 가능, pending install이 있으면 설치 가능
|
|
- attention: offline/unauthorized 등 조치 필요
|
|
- installing: install icon이 hourglass로 표시
|
|
|
|
## States
|
|
|
|
- default
|
|
- loading: installing action 상태
|
|
- empty: 해당 없음
|
|
- error: device state message/chip으로 표현
|
|
- disabled
|
|
|
|
## Rules
|
|
|
|
- install action은 pending install, installer, ready device, not installing 조건을 모두 만족해야 활성화한다.
|
|
- logcat action은 ready device와 callback이 있을 때만 활성화한다.
|
|
|
|
## Decision History
|
|
|
|
- 2026-06-25: ADB device grid item을 component로 기록했다.
|