handlePressKey function
Last updated: 2026-03-05T20:45:07.036Z
Metrics
LOC: 27
Complexity: 7
Params: 1
Signature
handlePressKey(step: FlowStep): : StepResult
Source Code
function handlePressKey(step: FlowStep): StepResult {
if (!step.key) {
return { status: "failed", error: "press-key step missing key" };
}
const target = step.selector ? findElement(step) : document.activeElement;
if (!target) {
return { status: "failed", error: "No target for key press" };
}
target.dispatchEvent(
new KeyboardEvent("keydown", { key: step.key, bubbles: true }),
);
target.dispatchEvent(
new KeyboardEvent("keyup", { key: step.key, bubbles: true }),
);
// Handle Enter on forms
if (step.key === "Enter" && target instanceof HTMLElement) {
const form = target.closest("form");
if (form) {
form.dispatchEvent(new Event("submit", { bubbles: true }));
}
}
return { status: "success" };
}
Dependencies (Outgoing)
| Target | Type |
|---|---|
| findElement | calls |
Impact (Incoming)
| Source | Type |
|---|---|
| executeStep | calls |