ai-debug-local-mcp
Version:
🎯 ENHANCED AI GUIDANCE v4.1.2: Dramatically improved tool descriptions help AI users choose the right tools instead of 'close enough' options. Ultra-fast keyboard automation (10x speed), universal recording, multi-ecosystem debugging support, and compreh
94 lines • 2.54 kB
TypeScript
/**
* Flutter Structure Mapper
* Maps semantic nodes to logical UI structure
*/
import { FlutterSemanticNode } from './flutter-semantic-analyzer.js';
export interface UIStructure {
pages: UIPage[];
currentPage: UIPage | null;
navigation: NavigationStructure;
forms: FormStructure[];
interactables: InteractableElement[];
}
export interface UIPage {
title: string;
url: string;
elements: UIElement[];
primaryAction?: InteractableElement;
}
export interface UIElement {
id: string;
type: 'button' | 'text' | 'input' | 'image' | 'container' | 'unknown';
label: string;
bounds: DOMRect;
children: UIElement[];
parent?: UIElement;
semanticNode?: FlutterSemanticNode;
}
export interface NavigationStructure {
currentRoute: string;
possibleRoutes: string[];
navigationElements: InteractableElement[];
}
export interface FormStructure {
id: string;
fields: FormField[];
submitButton?: InteractableElement;
validationState: 'unknown' | 'valid' | 'invalid';
}
export interface FormField {
id: string;
label: string;
type: 'text' | 'email' | 'password' | 'select' | 'checkbox' | 'radio' | 'unknown';
required: boolean;
value?: string;
element: UIElement;
}
export interface InteractableElement {
id: string;
label: string;
type: 'button' | 'link' | 'input' | 'select';
bounds: DOMRect;
actions: string[];
primaryAction: string;
semanticNode?: FlutterSemanticNode;
}
export declare class FlutterStructureMapper {
/**
* Map semantic nodes to logical UI structure
*/
static mapToUIStructure(nodes: FlutterSemanticNode[], pageUrl: string): UIStructure;
/**
* Convert semantic nodes to UI elements
*/
private static nodesToElements;
/**
* Infer element type from semantic node
*/
private static inferElementType;
/**
* Identify current page structure
*/
private static identifyCurrentPage;
/**
* Identify form structures
*/
private static identifyForms;
/**
* Infer input field type
*/
private static inferInputType;
/**
* Identify all interactable elements
*/
private static identifyInteractables;
/**
* Identify navigation structure
*/
private static identifyNavigation;
/**
* Generate a human-readable summary of the UI structure
*/
static generateSummary(structure: UIStructure): string;
}
//# sourceMappingURL=flutter-structure-mapper.d.ts.map