(nodes)
| 117 | // ───────────────────────────────────────────────────────────────── |
| 118 | |
| 119 | function dropEmpty(nodes) { |
| 120 | return nodes.flatMap(node => { |
| 121 | const children = dropEmpty(node.children) |
| 122 | if (INTERACTIVE_ROLES.has(node.role)) return [{ ...node, children }] |
| 123 | if (children.length > 0) return [{ ...node, children }] |
| 124 | return [] |
| 125 | }) |
| 126 | } |
| 127 | |
| 128 | // ───────────────────────────────────────────────────────────────── |
| 129 | // STEP 3 · Render: AriaNode[] → indented YAML text |
no outgoing calls
no test coverage detected