feat(kotlin-compose): design system + 33 components + gallery_kt + e2e android emulator + scaffolder fixes

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-11 16:28:50 +02:00
parent 0bdb8454e1
commit cb6d9e61d1
152 changed files with 148262 additions and 25 deletions
@@ -0,0 +1,63 @@
---
name: android_input_keyevent
kind: function
lang: bash
domain: infra
version: "1.0.0"
purity: impure
signature: "android_input_keyevent([--serial <S>] key: string)"
description: "Send key event via adb shell input keyevent. Accepts aliases (BACK, HOME, POWER, ENTER, MENU, RECENT_APPS, VOLUME_UP, VOLUME_DOWN), raw numeric codes, or explicit KEYCODE_* names."
tags: [android, adb, input, keyevent, ui-test]
params:
- name: "--serial <S>"
desc: "Optional target device/emulator serial. If omitted, adb_pick_serial resolves the single connected device."
- name: "key"
desc: "Keycode: short alias (BACK/HOME/POWER/ENTER/MENU/RECENT_APPS/VOLUME_UP/VOLUME_DOWN), raw number (e.g. 4, 26), or explicit KEYCODE_* name."
output: "Stdout 'key: <code> on <serial>'."
uses_functions: ["adb_wsl_bash_infra"]
uses_types: []
returns: []
returns_optional: false
error_type: "error_go_core"
imports: []
tested: false
tests: []
test_file_path: ""
file_path: "bash/functions/infra/android_input_keyevent.sh"
notes: "Lista completa de keycodes: https://developer.android.com/reference/android/view/KeyEvent. Exit 3 si adb_pick_serial falla (ningun device o ambiguo sin --serial)."
---
## Ejemplo
```bash
# Pulsar BACK en el unico device conectado
android_input_keyevent BACK
# Pulsar HOME en un emulador especifico
android_input_keyevent --serial emulator-5554 HOME
# Codigo numerico directo
android_input_keyevent 26 # POWER
# KEYCODE_* explicito
android_input_keyevent KEYCODE_DPAD_CENTER
```
## Notas
Aliases resueltos internamente:
| Alias | KEYCODE |
|--------------|-----------------------|
| BACK | KEYCODE_BACK |
| HOME | KEYCODE_HOME |
| POWER | KEYCODE_POWER |
| ENTER | KEYCODE_ENTER |
| MENU | KEYCODE_MENU |
| RECENT_APPS | KEYCODE_APP_SWITCH |
| VOLUME_UP | KEYCODE_VOLUME_UP |
| VOLUME_DOWN | KEYCODE_VOLUME_DOWN |
Si el argumento no coincide con ningun alias y no es numerico, se construye `KEYCODE_<UPPER>` para pasarlo directo a `adb shell input keyevent`.
Exit codes: 1 = keycode vacio, 3 = fallo de `adb_pick_serial` (ningun device o ambiguo).