capabilities property

List<String> get capabilities

Get capabilities (available actions) based on the widget type

Implementation

List<String> get capabilities {
  switch (widgetType) {
    case McpWidgetType.button:
      return [
        'tap',
        'long_press',
        'double_tap',
        'assert_exists',
        'assert_text',
      ];
    case McpWidgetType.textField:
      return ['tap', 'text_input', 'clear', 'assert_exists', 'assert_text'];
    case McpWidgetType.text:
      return ['assert_exists', 'assert_text'];
    case McpWidgetType.list:
      return ['scroll', 'swipe', 'assert_exists'];
    case McpWidgetType.image:
      return ['tap', 'assert_exists'];
    case McpWidgetType.card:
    case McpWidgetType.container:
      return ['tap', 'swipe', 'assert_exists'];
    case McpWidgetType.dropdown:
      return ['tap', 'select_dropdown', 'assert_exists'];
    case McpWidgetType.checkbox:
    case McpWidgetType.radio:
    case McpWidgetType.switchWidget:
      return ['tap', 'toggle', 'assert_exists', 'assert_selected'];
    case McpWidgetType.slider:
      return ['set_slider_value', 'assert_exists', 'assert_value'];
    case McpWidgetType.tab:
      return ['tap', 'assert_exists', 'assert_selected'];
    case McpWidgetType.custom:
      return ['tap', 'assert_exists'];
  }
}