/** * 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, EditableUtamElement as _EditableUtamElement, UtamBasePageObject as _UtamBasePageObject } from '@utam/core'; import _Spinner from 'salesforce-pageobjects/lightning/pageObjects/spinner'; import _ModalHeader from 'salesforce-pageobjects/lightning/pageObjects/modalHeader'; import _Datatable from 'salesforce-pageobjects/lightning/pageObjects/datatable'; /** * A modal component that allows users to configure input settings for a form. It includes options to disable free text input, manage prompts, upload CSV files, and save or cancel changes. * Selector: src-experience_ui_gen_canvas-/input-settings-modal * generated from JSON dist/experience/ui/gen/canvas/inputSettingsModal.utam.json * @version 2026-03-09T13:56:35.516Z * @author Salesforce */ export default class InputSettingsModal extends _UtamBasePageObject { constructor(driver: _Driver, element?: _Element, locator?: _Locator); /** * Toggle the disable free text input checkbox */ toggleDisableTextInput(): Promise; /** * Check if the disable free text input checkbox is checked * @return string */ isDisableTextInputChecked(attrName: string): Promise; /** * Enter text into the prompts text area */ typeInPromptsTextArea(text: string): Promise; /** * Get the current value of the prompts text area * @return string */ getPromptsTextAreaValue(): Promise; /** * Click the add prompts button */ clickAddPromptsButton(): Promise; /** * Click the upload CSV button * @param selectorStr CSS selector parameter */ clickUploadCsvButton(selectorStr: string): Promise; /** * Trigger the file upload process */ uploadCsvFile(text: string): Promise; /** * Click the delete selected prompts button */ clickDeleteSelectedPromptsButton(): Promise; /** * Check if the cancel button is disabled * @return string * @param selectorStr CSS selector parameter */ isCancelButtonDisabled(selectorStr: string, attrName: string): Promise; /** * Check if the save button is disabled * @return string * @param selectorStr CSS selector parameter */ isSaveButtonDisabled(selectorStr: string, attrName: string): Promise; /** * Click the cancel button * @param selectorStr CSS selector parameter */ clickCancelButton(selectorStr: string): Promise; /** * Click the save button * @param selectorStr CSS selector parameter */ clickSaveButton(selectorStr: string): Promise; /** * Returns true if element "promptsTextArea" present on the page * @return boolean */ verifyPromptsTextAreaPresence(): Promise; /** * Returns true if element "addPromptsButton" present on the page * @return boolean */ verifyAddPromptsButtonPresence(): Promise; /** * Returns true if element "uploadCsvButton" present on the page * @return boolean * @param selectorStr CSS selector parameter */ verifyUploadCsvButtonPresence(selectorStr: string): Promise; /** * Returns true if element "deleteSelectedPromptsButton" present on the page * @return boolean */ verifyDeleteSelectedPromptsButtonPresence(): Promise; waitForSpinner(): Promise<_Spinner>; /** * Represents the header of the modal with a title. */ getModalHeader(): Promise<_ModalHeader>; /** * Represents the data table for displaying prompts. */ getDataTable(): Promise<_Datatable | null>; /** * Represents the spinner indicating a loading state. */ getSpinner(): Promise<_Spinner | null>; }