{
    "description": {
        "author": "Salesforce",
        "text": [
            "Component that displays a status panel with a list of activity tasks, showing their status as completed or loading.",
            "Selector: app_dev_agent-status-panel"
        ]
    },
    "shadow": {
        "elements": [
            {
                "name": "panel",
                "selector": {
                    "css": ".panel"
                },
                "description": "Represents the main panel container",
                "elements": [
                    {
                        "name": "panelInnerWrapper",
                        "selector": {
                            "css": ".panel-inner-wrapper"
                        },
                        "description": "Represents the inner wrapper of the panel",
                        "elements": [
                            {
                                "name": "panelContentWrapper",
                                "selector": {
                                    "css": ".panel-content-wrapper"
                                },
                                "description": "Represents the content wrapper of the panel",
                                "elements": [
                                    {
                                        "name": "panelHeader",
                                        "selector": {
                                            "css": ".panel-header"
                                        },
                                        "description": "Represents the header section of the panel",
                                        "elements": [
                                            {
                                                "name": "panelTitle",
                                                "selector": {
                                                    "css": ".panel-title"
                                                },
                                                "description": "Represents the title of the panel"
                                            }
                                        ]
                                    },
                                    {
                                        "name": "panelList",
                                        "selector": {
                                            "css": ".panel-list"
                                        },
                                        "description": "Represents the list of activity tasks",
                                        "nullable": true,
                                        "elements": [
                                            {
                                                "name": "panelItems",
                                                "selector": {
                                                    "css": "li.panel-item",
                                                    "returnAll": true
                                                },
                                                "description": "Represents individual task items in the list",
                                                "elements": [
                                                    {
                                                        "name": "taskCompletedIcon",
                                                        "selector": {
                                                            "css": "lightning-icon[icon-name=\"utility:check\"]"
                                                        },
                                                        "type": "utam-lightning/pageObjects/icon",
                                                        "description": "Represents the check icon for completed tasks",
                                                        "nullable": true,
                                                        "public": true
                                                    },
                                                    {
                                                        "name": "taskLoadingSpinner",
                                                        "selector": {
                                                            "css": "lightning-spinner.spinner-icon"
                                                        },
                                                        "type": "utam-lightning/pageObjects/spinner",
                                                        "description": "Represents the loading spinner for tasks in progress",
                                                        "nullable": true,
                                                        "public": true
                                                    },
                                                    {
                                                        "name": "taskName",
                                                        "selector": {
                                                            "css": ".task-name"
                                                        },
                                                        "description": "Represents the name of the task"
                                                    }
                                                ]
                                            }
                                        ]
                                    }
                                ]
                            }
                        ]
                    }
                ]
            }
        ]
    },
    "methods": [
        {
            "name": "isPanelVisible",
            "description": {
                "text": [
                    "Check that the main panel is present and visible"
                ],
                "return": "boolean"
            },
            "compose": [
                {
                    "element": "panel",
                    "apply": "isVisible"
                }
            ]
        },
        {
            "name": "getPanelTitle",
            "description": {
                "text": [
                    "Get the text of the panel title"
                ],
                "return": "string"
            },
            "compose": [
                {
                    "element": "panelTitle",
                    "apply": "getText"
                }
            ]
        },
        {
            "name": "isPanelListPresent",
            "description": {
                "text": [
                    "Check that the task list is present"
                ],
                "return": "boolean"
            },
            "compose": [
                {
                    "element": "panelList",
                    "apply": "isPresent"
                }
            ]
        },
        {
            "name": "getTaskNames",
            "description": {
                "text": [
                    "Get the names of all tasks"
                ],
                "return": "string[]"
            },
            "compose": [
                {
                    "element": "panelItems",
                    "apply": "getText"
                }
            ]
        },
        {
            "name": "verifyPanelListPresence",
            "description": {
                "text": [
                    "Returns true if element \"panelList\" present on the page"
                ],
                "return": "boolean"
            },
            "compose": [
                {
                    "element": "panelList",
                    "matcher": {
                        "type": "notNull"
                    }
                }
            ]
        },
        {
            "name": "verifyTaskNamePresence",
            "description": {
                "text": [
                    "Returns true if element \"taskName\" present on the page"
                ],
                "return": "boolean"
            },
            "compose": [
                {
                    "element": "taskName",
                    "apply": "isPresent"
                }
            ]
        }
    ]
}