/** * Copyright (c) 2025, Salesforce, Inc. * All rights reserved. * For full license text, see the LICENSE file or https://utam.dev/salesforce/license */ import { Driver as _Driver, Element as _Element, Locator as _Locator, BaseUtamElement as _BaseUtamElement, ActionableUtamElement as _ActionableUtamElement, ClickableUtamElement as _ClickableUtamElement, UtamBaseRootPageObject as _UtamBaseRootPageObject } from '@utam/core'; import _ContentRenderer from 'salesforce-pageobjects/experience/ui/gen/canvas/pageObjects/contentRenderer'; import _Card from 'salesforce-pageobjects/lightning/pageObjects/card'; import _GenUiFooter from 'salesforce-pageobjects/experience/ui/gen/canvas/pageObjects/genUiFooter'; import _ButtonIcon from 'salesforce-pageobjects/lightning/pageObjects/buttonIcon'; import _AgentPanel from 'salesforce-pageobjects/experience/ui/gen/canvas/pageObjects/agentPanel'; import _VerticalNavigation from 'salesforce-pageobjects/lightning/pageObjects/verticalNavigation'; import _VerticalNavigationItem from 'salesforce-pageobjects/lightning/pageObjects/verticalNavigationItem'; import _ButtonMenu from 'salesforce-pageobjects/lightning/pageObjects/buttonMenu'; import _Spinner from 'salesforce-pageobjects/lightning/pageObjects/spinner'; import _RecommendationItems from 'salesforce-pageobjects/experience/ui/gen/canvas/pageObjects/recommendationItems'; /** * A complex Lightning Web Component that serves as a user interface for a canvas application, with functionalities such as managing and displaying UI elements, handling user interactions, and communicating with the backend. * Selector: experience_ui_gen_canvas-canvas-home * generated from JSON dist/experience/ui/gen/canvas/canvasHome.utam.json * @version 2026-03-09T13:56:35.467Z * @author Salesforce */ export default class CanvasHome extends _UtamBaseRootPageObject { constructor(driver: _Driver, element?: _Element, locator?: _Locator); /** * Click the button to toggle the left panel */ clickTogglePanel(): Promise; /** * Click the button to toggle the chat panel */ clickToggleChat(): Promise; /** * Click the button to create a new canvas */ clickNewCanvas(): Promise; /** * Click the button to navigate back to the home page * @param selectorStr CSS selector parameter */ clickBackHome(selectorStr: string): Promise; /** * Check if the enable Einstein card is visible * @return boolean * @param selectorStr CSS selector parameter */ isEnableEinsteinCardVisible(selectorStr: string): Promise; /** * Check if the enable Einstein link is visible * @return boolean * @param selectorStr CSS selector parameter */ isEnableEinsteinLinkVisible(selectorStr: string): Promise; /** * Check if the enable Einstein help link is visible * @return boolean * @param selectorStr CSS selector parameter */ isEnableEinsteinHelpLinkVisible(selectorStr: string): Promise; /** * Returns true if element "enableEinsteinCard" present on the page * @return boolean * @param selectorStr CSS selector parameter */ verifyEnableEinsteinCardPresence(selectorStr: string): Promise; /** * Returns true if element "backHomeButton" present on the page * @return boolean * @param selectorStr CSS selector parameter */ verifyBackHomeButtonPresence(selectorStr: string): Promise; /** * Returns true if element "enableEinsteinLink" present on the page * @return boolean * @param selectorStr CSS selector parameter */ verifyEnableEinsteinLinkPresence(selectorStr: string): Promise; /** * Returns true if element "enableEinsteinHelpLink" present on the page * @return boolean * @param selectorStr CSS selector parameter */ verifyEnableEinsteinHelpLinkPresence(selectorStr: string): Promise; waitForContentRenderer(): Promise<_ContentRenderer>; waitForCanvasHomeCard(): Promise<_Card>; waitForFooterComponent(): Promise<_GenUiFooter>; waitForToggleChatButton(): Promise<(_BaseUtamElement & _ActionableUtamElement & _ClickableUtamElement)>; waitForTogglePanelButton(): Promise<(_BaseUtamElement & _ActionableUtamElement & _ClickableUtamElement)>; waitForCanvasMenuButton(): Promise<_ButtonIcon>; waitForNewCanvasButton(): Promise<(_BaseUtamElement & _ActionableUtamElement & _ClickableUtamElement)>; /** * @param selectorStr CSS selector parameter */ waitForBackHomeButton(selectorStr: string): Promise<(_BaseUtamElement & _ActionableUtamElement & _ClickableUtamElement)>; waitForAgentforcePanel(): Promise<_AgentPanel>; waitForCanvasMenu(): Promise<_VerticalNavigation>; waitForCanvasMenuItem(): Promise<_VerticalNavigationItem>; /** * @param selectorStr CSS selector parameter */ waitForNavigationMenu(selectorStr: string): Promise<_VerticalNavigation>; /** * @param selectorStr CSS selector parameter */ waitForNavigationItems(selectorStr: string): Promise<_VerticalNavigationItem[]>; waitForDeleteButton(): Promise<_ButtonIcon>; /** * @param selectorStr CSS selector parameter */ waitForSettingsMenu(selectorStr: string): Promise<_ButtonMenu>; /** * @param selectorStr CSS selector parameter */ waitForSpinner(selectorStr: string): Promise<_Spinner>; /** * Represents the container of tiles on a canvas. This LWC/element only shows on a populated canvas. It will not render on the create canvas view when there is a question field, etc. */ getContentRenderer(): Promise<_ContentRenderer>; /** * Represents the main card container when Agentic UI is enabled. */ getCanvasHomeCard(): Promise<_Card | null>; /** * Represents the footer component with input and action buttons */ getFooterComponent(): Promise<_GenUiFooter>; /** * Represents the button for toggling the menu of canvases */ getCanvasMenuButton(): Promise<_ButtonIcon>; /** * Represents the chat panel component */ getAgentforcePanel(): Promise<_AgentPanel>; /** * Represents the menu of canvases (a vertical navigation menu) when the panel is open */ getCanvasMenu(): Promise<_VerticalNavigation>; /** * Represents individual navigation items within the vertical navigation menu */ getCanvasMenuItem(): Promise<_VerticalNavigationItem>; /** * Represents the vertical navigation menu when the panel is open * @param selectorStr CSS selector parameter */ getNavigationMenu(selectorStr: string): Promise<_VerticalNavigation | null>; /** * Represents individual navigation items within the vertical navigation menu * @param selectorStr CSS selector parameter */ getNavigationItems(selectorStr: string): Promise<_VerticalNavigationItem[] | null>; /** * Represents the delete canvas button */ getDeleteButton(): Promise<_ButtonIcon | null>; /** * Represents the settings menu for canvas configuration * @param selectorStr CSS selector parameter */ getSettingsMenu(selectorStr: string): Promise<_ButtonMenu | null>; /** * Represents a loading spinner shown when content is being fetched * @param selectorStr CSS selector parameter */ getSpinner(selectorStr: string): Promise<_Spinner | null>; getRecommendationItems(): Promise<_RecommendationItems>; }