// For Library Version: 1.148.1
declare module "sap/fe/macros/AINotice" {
/**
* Building block that displays a AI notice.
* It's used to display information related to AI features. This information is rendered either
* as a link if the aggregation popoverContent is defined or as a label if there is no aggregation popoverContent.
*
*
* @since 1.145.0
*/
export default class AINotice
extends /* was: sap.fe.controls.AINotice */ Object {}
}
declare module "sap/fe/macros/AlwaysEditableField" {
import {
default as MacroAPI,
$MacroAPISettings,
} from "sap/fe/macros/MacroAPI";
import Event from "sap/ui/base/Event";
import Control from "sap/ui/core/Control";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
import FieldFormatOptions from "sap/fe/macros/field/FieldFormatOptions";
/**
* Building block for creating an always-editable field based on metadata provided by OData V4.
*
*
* This building block is designed for use with JSON model bindings in custom dialogs and popups,
* where the field must always be editable regardless of OData metadata or draft status.
*
*
* When creating an AlwaysEditableField building block, you must provide an ID.
* Usage example:
*
* ```javascript
*
*
* ```
*/
export default class AlwaysEditableField extends MacroAPI {
/**
* Adds a validation message to the field.
* This method creates a new message and associates it with the field's binding path,
* making it visible in the field's value state and message popover.
*
*
* @returns The ID of the created message
*/
addMessage(
/**
* The message parameters
*/
parameters: {
/**
* Detailed message description
*/
description?: string;
/**
* Message text to display
*/
message?: string;
/**
* Whether the message persists across refreshes
*/
persistent?: boolean;
/**
* Type of the message, such as Error, Warning, Success, or Information
*/
type?: /* was: sap.ui.core.message.MessageType */ any;
}
): string;
/**
*
* @returns Reference to sap.fe.macros.AlwaysEditableField
* to allow method chaining
*/
attachChange(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: AlwaysEditableField$ChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.AlwaysEditableField
* to allow method chaining
*/
attachChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: AlwaysEditableField$ChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.AlwaysEditableField
* to allow method chaining
*/
attachLiveChange(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.AlwaysEditableField
* to allow method chaining
*/
attachLiveChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.AlwaysEditableField
* to allow method chaining
*/
detachChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: AlwaysEditableField$ChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.AlwaysEditableField
* to allow method chaining
*/
detachLiveChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event change
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.AlwaysEditableField
* to allow method chaining
*/
fireChange(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler> }
* for the set of parameters that are expected by the event handlers.
*/
mParameters?: AlwaysEditableField$ChangeEventParameters
): this;
/**
* Fires event liveChange
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.AlwaysEditableField
* to allow method chaining
*/
fireLiveChange(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler>} for the set of parameters
* that are expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Gets the current enabled state of the field.
* This method handles various control types and wrappers, returning true for controls
* that are always enabled, such as Text, and checking the enabled property for interactive controls.
*
*
* @returns Boolean value indicating if the field is enabled, or true if control is not found (graceful
* fallback)
*/
getEnabled(): boolean;
/**
* Gets the message manager instance from the UI5 core.
* The message manager is responsible for handling all messages in the application.
*
*
* @returns The Messaging instance
*/
getMessageManager(): /* was: sap.ui.core.Messaging */ any;
/**
* Gets the current value of the field.
* This method handles various control types including CheckBox, Input, Text, MDC Field,
* RatingIndicator, Link, Label, ObjectStatus, ObjectIdentifier, and building blocks.
*
*
* @returns The current value of the field or undefined if control is not found
*/
getValue(): boolean | number | string | undefined;
/**
* Removes a message from the field by its ID.
* This method finds the message in the message model and removes it,
* clearing it from the field's value state.
*/
removeMessage(
/**
* The ID of the message to remove
*/
id: string
): void;
/**
* Sets the current enabled state of the field.
* This method handles various control types, setting the appropriate property,
* such as enabled, active, titleActive, or edit mode based on the control type.
*
*
* @returns The current field reference for chaining
*/
setEnabled(
/**
* The enabled state to set
*/
enabled: boolean
): Control;
/**
* Sets the current value of the field.
* This method handles various control types including CheckBox, Input, Text, and MDC Field.
*
*
* @returns The current field reference for chaining
*/
setValue(
/**
* The value to set
*/
value: boolean | number | string
): Control;
}
/**
* Describes the settings that can be provided to the AlwaysEditableField constructor.
*/
export interface $AlwaysEditableFieldSettings extends $MacroAPISettings {
/**
* Defines the path of the context used in the current page or block.
* This setting is defined by the framework.
*/
contextPath?: string | PropertyBindingInfo;
/**
* This is used to optionally provide an external description that comes from a different model than the
* oData model.
* This must be used in conjunction with the value property.
*/
description?: string | PropertyBindingInfo;
/**
* Defines the relative path of the property in the metamodel, based on the current contextPath.
* AlwaysEditableField only supports metadata paths with the Property type.
*/
metaPath?: string | PropertyBindingInfo;
/**
* This is used to optionally provide an external value that comes from a different model than the OData
* model.
* Typically used with JSON models for custom popup scenarios.
*/
value?: string | PropertyBindingInfo;
/**
* Prefix added to the generated ID of the value help used for the field.
*/
vhIdPrefix?: string | PropertyBindingInfo;
/**
* A set of options that can be configured.
*/
formatOptions?: FieldFormatOptions;
/**
* An event containing details is triggered when the value of the field is changed.
*/
change?: (oEvent: AlwaysEditableField$ChangeEvent) => void;
/**
* An event containing details is triggered when the value of the field is live changed.
*
*
* **Note:** Browsing autocomplete suggestions does not fire the event.
*/
liveChange?: (oEvent: Event) => void;
}
/**
* Parameters of the AlwaysEditableField#change event.
*/
export interface AlwaysEditableField$ChangeEventParameters {
value?: boolean | number | string | undefined;
isValid?: boolean;
}
/**
* Event object of the AlwaysEditableField#change event.
*/
export type AlwaysEditableField$ChangeEvent = Event<
AlwaysEditableField$ChangeEventParameters,
AlwaysEditableField
>;
/**
* Parameters of the AlwaysEditableField#liveChange event.
*/
export interface AlwaysEditableField$LiveChangeEventParameters {}
/**
* Event object of the AlwaysEditableField#liveChange event.
*/
export type AlwaysEditableField$LiveChangeEvent = Event<
AlwaysEditableField$LiveChangeEventParameters,
AlwaysEditableField
>;
}
declare module "sap/fe/macros/Chart" {
import {
default as MacroAPI,
$MacroAPISettings,
} from "sap/fe/macros/MacroAPI";
import PresentationVariant from "sap/fe/navigation/PresentationVariant";
import Context from "sap/ui/model/odata/v4/Context";
import SelectionVariant from "sap/fe/navigation/SelectionVariant";
import {
PropertyBindingInfo,
AggregationBindingInfo,
} from "sap/ui/base/ManagedObject";
import OverflowGroup from "sap/fe/macros/chart/OverflowGroup";
import ActionGroup from "sap/fe/macros/chart/ActionGroup";
import Action from "sap/fe/macros/chart/Action";
import Control from "sap/ui/core/Control";
import Event from "sap/ui/base/Event";
/**
* Building block used to create a chart based on the metadata provided by OData V4.
* {@link demo:sap/fe/core/fpmExplorer/index.html#/buildingBlocks/chart/chartDefault Overview of Building Blocks}
*
*
* Usually, a contextPath and metaPath is expected.
*
* Usage example:
*
* ```javascript
*
*
* ```
*/
export default class Chart
extends MacroAPI
implements
/* was: sap.fe.core.controllerextensions.viewState.IViewStateContributor */ Object
{
__implements__sap_fe_core_controllerextensions_viewState_IViewStateContributor: boolean;
/**
*
* @returns Reference to sap.fe.macros.Chart to allow
* method chaining
*/
attachSelectionChange(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Chart$SelectionChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Chart to allow
* method chaining
*/
attachSelectionChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Chart$SelectionChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Chart to allow
* method chaining
*/
detachSelectionChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Chart$SelectionChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event selectionChange
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Chart to allow
* method chaining
*/
fireSelectionChange(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler>} for the
* set of parameters that are expected by the event handlers.
*/
mParameters?: Chart$SelectionChangeEventParameters
): this;
/**
* Gets current value of property contextPath.
*
*
* @returns Value of property `contextPath`
*/
getContextPath(): string;
/**
* Gets the key of the current variant in the associated variant management.
*
*
* @returns Variant key of {@link sap.ui.fl.variants.VariantManagement} applied to the chart
*/
getCurrentVariantKey(): null | string;
/**
* Gets current value of property header.
*
*
* @returns Value of property `header`
*/
getHeader(): string;
/**
* Gets current value of property headerVisible.
*
*
* @returns Value of property `headerVisible`
*/
getHeaderVisible(): boolean;
/**
* Gets current value of property metaPath.
*
*
* @returns Value of property `metaPath`
*/
getMetaPath(): string;
/**
* Gets current value of property personalization.
*
*
* @returns Value of property `personalization`
*/
getPersonalization(): string;
/**
* Get the presentation variant that is currently applied on the chart.
*
*
* @returns The presentation variant {@link sap.fe.navigation.PresentationVariant} applied to the chart
*/
getPresentationVariant(): Promise;
/**
* Gets contexts from the chart that have been selected by the user.
*
*
* @returns Contexts of the rows selected by the user
*/
getSelectedContexts(): Context[];
/**
* Gets current value of property selectionMode.
*
*
* @returns Value of property `selectionMode`
*/
getSelectionMode(): string;
/**
* Get the selection variant from the chart. This function considers only the selection variant applied
* at the control level.
*
*
* @returns A promise that resolves with {@link sap.fe.navigation.SelectionVariant}.
*/
getSelectionVariant(): Promise;
/**
* Gets current value of property variantManagement.
*
*
* @returns Value of property `variantManagement`
*/
getVariantManagement(): string;
/**
* Gets current value of property contextPath.
*
*
* @returns Value of property `contextPath`
*/
setContextPath(): string;
/**
* Sets the variant of the provided key in the associated variant management.
*/
setCurrentVariantKey(
/**
* The variant key of {@link sap.ui.fl.variants.VariantManagement} to be set
*/
key: string
): void;
/**
* Gets current value of property header.
*
*
* @returns Value of property `header`
*/
setHeader(): string;
/**
* Gets current value of property headerVisible.
*
*
* @returns Value of property `headerVisible`
*/
setHeaderVisible(): boolean;
/**
* Gets current value of property metaPath.
*
*
* @returns Value of property `metaPath`
*/
setMetaPath(): string;
/**
* Gets current value of property personalization.
*
*
* @returns Value of property `personalization`
*/
setPersonalization(): string;
/**
* Set the presentation variant for the mdc chart.
* The json format retrieved by using the get PresentationVariant button in the linked FPM sample should
* be followed while trying to set the PresentationVariant as needed.
* The values dimensions, measures and other properties should also be given in the valid format and null
* or empty values should be avoided.
* One dimension attribute should have only one role associated with it on a given chart.
*/
setPresentationVariant(
/**
* the presentation variant {@link sap.fe.navigation.PresentationVariant} to be set
*/
presentationVariant: PresentationVariant
): Promise;
/**
* Gets current value of property selectionMode.
*
*
* @returns Value of property `selectionMode`
*/
setSelectionMode(): string;
/**
* Sets {@link sap.fe.navigation.SelectionVariant } to the chart. Note: setSelectionVariant will clear existing
* filters and then apply the SelectionVariant values.
*
*
* @returns A promise for asynchronous handling
*/
setSelectionVariant(
/**
* The {@link sap.fe.navigation.SelectionVariant} to apply to the chart
*/
selectionVariant: SelectionVariant,
/**
* Optional. If true, we will use the associated text property values (if they're available in the SelectionVariant)
* to display the filter value descriptions, instead of loading them from the backend
*/
prefillDescriptions?: boolean
): Promise;
/**
* Gets current value of property variantManagement.
*
*
* @returns Value of property `variantManagement`
*/
setVariantManagement(): string;
}
/**
* Describes the settings that can be provided to the Chart constructor.
*/
export interface $ChartSettings extends $MacroAPISettings {
/**
* Metadata path to the entitySet or navigationProperty
*/
contextPath?: string | PropertyBindingInfo;
/**
* Specifies the header text that is shown in the chart
*/
header?: string | PropertyBindingInfo;
/**
* Controls if the header text should be shown or not
*/
headerVisible?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Metadata path to the presentation context (UI.Chart with or without a qualifier)
*/
metaPath?: string | PropertyBindingInfo;
/**
* Controls which options should be enabled for the chart personalization dialog.
* If it is set to `true`, all possible options for this kind of chart are enabled.
*
* If it is set to `false`, personalization is disabled.
*
*
*
* You can also provide a more granular control for the personalization by providing a comma-separated list
* with the options you want to be available.
*
* Available options are:
*
* - Sort
*
* - Type
*
* - Item
*
* - Filter
*/
personalization?: string | PropertyBindingInfo;
/**
* Defines the selection mode to be used by the chart.
* Allowed values are `None`, `Single` or `Multiple`
*/
selectionMode?: string | PropertyBindingInfo;
/**
* Controls the kind of variant management that should be enabled for the chart.
* Allowed value is `Control`.
*
* If set with value `Control`, a variant management control is seen within the chart and the chart is linked
* to this.
*
* If not set with any value, variant management control is not available for this chart.
*/
variantManagement?: string | PropertyBindingInfo;
/**
* Aggregate overflowGroups of the chart.
*/
actionOverflowGroups?:
| OverflowGroup[]
| OverflowGroup
| AggregationBindingInfo
| `{${string}}`;
/**
* Aggregate actions of the chart.
*/
actions?:
| Array
| ActionGroup
| Action
| AggregationBindingInfo
| `{${string}}`;
/**
* ID of the FilterBar building block associated with the chart.
*/
filterBar?: Control | string;
/**
* An event triggered when chart selections are changed. The event contains information about the data selected/deselected
* and the Boolean flag that indicates whether data is selected or deselected.
*/
selectionChange?: (oEvent: Chart$SelectionChangeEvent) => void;
}
/**
* Parameters of the Chart#selectionChange event.
*/
export interface Chart$SelectionChangeEventParameters {
data?: any[];
selected?: boolean;
}
/**
* Event object of the Chart#selectionChange event.
*/
export type Chart$SelectionChangeEvent = Event<
Chart$SelectionChangeEventParameters,
Chart
>;
}
declare module "sap/fe/macros/CollaborativeDraftHandler" {
import {
default as BuildingBlock,
$BuildingBlockSettings,
} from "sap/fe/core/buildingBlocks/BuildingBlock";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
import Event from "sap/ui/base/Event";
/**
* A BuildingBlock to watch the lock status of a property and to react on changes.
*
* @since 1.141.0
*/
export default class CollaborativeDraftHandler extends BuildingBlock {
/**
*
* @returns Reference to sap.fe.macros.CollaborativeDraftHandler
* to allow method chaining
*/
attachAvatarPress(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: CollaborativeDraftHandler$AvatarPressEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.CollaborativeDraftHandler
* to allow method chaining
*/
attachAvatarPress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: CollaborativeDraftHandler$AvatarPressEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.CollaborativeDraftHandler
* to allow method chaining
*/
attachLockChange(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: CollaborativeDraftHandler$LockChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.CollaborativeDraftHandler
* to allow method chaining
*/
attachLockChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: CollaborativeDraftHandler$LockChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.CollaborativeDraftHandler
* to allow method chaining
*/
detachAvatarPress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: CollaborativeDraftHandler$AvatarPressEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.CollaborativeDraftHandler
* to allow method chaining
*/
detachLockChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: CollaborativeDraftHandler$LockChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event avatarPress
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.CollaborativeDraftHandler
* to allow method chaining
*/
fireAvatarPress(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler> }
* for the set of parameters that are expected by the event handlers.
*/
mParameters?: CollaborativeDraftHandler$AvatarPressEventParameters
): this;
/**
* Fires event lockChange
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.CollaborativeDraftHandler
* to allow method chaining
*/
fireLockChange(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler> }
* for the set of parameters that are expected by the event handlers.
*/
mParameters?: CollaborativeDraftHandler$LockChangeEventParameters
): this;
}
/**
* Describes the settings that can be provided to the CollaborativeDraftHandler constructor.
*/
export interface $CollaborativeDraftHandlerSettings
extends $BuildingBlockSettings {
/**
* Defines the path of the context used in the current page or block.
* This setting is defined by the framework, and can be overwritten.
*/
contextPath?: string | PropertyBindingInfo;
/**
* Defines the relative path of the property in the metamodel, based on the current contextPath.
*/
metaPath?: string | PropertyBindingInfo;
/**
* If set to true, the standard Avatar control is displayed to indicate the lock status.
* If set to false, nothing is displayed.
*/
showAvatar?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Event fired when the user clicks on the avatar.
* Parameters:
* - lockingUserID: The ID of the user locking the property
* - lockingUserName: The name of the user locking the property
* - lockingUserInitials: The initials of the user locking the property
* - lockingUserColor: The color associated to the user locking the property
*/
avatarPress?: (oEvent: CollaborativeDraftHandler$AvatarPressEvent) => void;
/**
* Event fired when the lock status changes.
* Parameters:
* - isLocked : True if the property is locked, false otherwise
* - lockingUserID: The ID of the user locking the property (undefined if not locked)
* - lockingUserName: The name of the user locking the property (undefined if not locked)
* - lockingUserInitials: The initials of the user locking the property (undefined if not locked)
* - lockingUserColor: The color associated to the user locking the property (undefined if not locked)
*/
lockChange?: (oEvent: CollaborativeDraftHandler$LockChangeEvent) => void;
}
/**
* Parameters of the CollaborativeDraftHandler#avatarPress event.
*/
export interface CollaborativeDraftHandler$AvatarPressEventParameters {
lockingUserID?: string;
lockingUserName?: string;
lockingUserInitials?: string;
lockingUserColor?: string;
}
/**
* Event object of the CollaborativeDraftHandler#avatarPress event.
*/
export type CollaborativeDraftHandler$AvatarPressEvent = Event<
CollaborativeDraftHandler$AvatarPressEventParameters,
CollaborativeDraftHandler
>;
/**
* Parameters of the CollaborativeDraftHandler#lockChange event.
*/
export interface CollaborativeDraftHandler$LockChangeEventParameters {
isLocked?: boolean;
lockingUserID?: string;
lockingUserName?: string;
lockingUserInitials?: string;
lockingUserColor?: string;
}
/**
* Event object of the CollaborativeDraftHandler#lockChange event.
*/
export type CollaborativeDraftHandler$LockChangeEvent = Event<
CollaborativeDraftHandler$LockChangeEventParameters,
CollaborativeDraftHandler
>;
}
declare module "sap/fe/macros/CollectionBindingInfo" {
import Filter from "sap/ui/model/Filter";
import Sorter from "sap/ui/model/Sorter";
/**
* API to add parameters to the collection binding info.
*/
export default class CollectionBindingInfo {
/**
* Adds a filter to the filters already present in the binding info.
*/
addFilter(
/**
* The {@link sap.ui.model.Filter "filter"} to add
*/
customFilter: Filter
): void;
/**
* Adds parameters to the select query.
*/
addSelect(
/**
* The list or properties to add to the query
*/
parameters: string[]
): void;
/**
* Adds a sorter to the sorter(s) already present, or create one if none exists.
*/
addSorter(
/**
* The {@link sap.ui.model.Sorter "sorter"} to add to the query
*/
sorter: Sorter
): void;
/**
* Attach the events to the table binding.
*/
attachEvent(
/**
* The event ID to attach the callback to
*/
eventId: string,
/**
* The callback function to be executed when the event is triggered
*/
callback: Function,
/**
* The listener object that will be used as the context for the callback function
*/
listener?: object,
/**
* Data that will be passed to the callback function when the event is triggered
*/
data?: object
): void;
/**
* Retrieve the 'serialized' binding info which is useful if you want to create your own binding
*
*
* @returns The {@link sap.fe.macros.CollectionBindingInfo "CollectionBindingInfo"}
*/
getBindingInfo(): SerializedCollectionBindingInfo;
/**
* Returns the current filters applied to the Table.
*
*
* @returns The {@link sap.ui.model.Filter "filters"} on the table
*/
getFilters(): Filter | undefined;
/**
* Returns the current sorters of the Table.
*
*
* @returns The {@link sap.ui.model.Sorter "sorters"} on the table
*/
getSorters(): Sorter[] | undefined;
}
export type SerializedCollectionBindingInfo = {};
}
declare module "sap/fe/macros/ConditionalSwitch" {
import {
default as BuildingBlockBase,
$BuildingBlockBaseSettings,
} from "sap/fe/base/BuildingBlockBase";
import { IFormContent } from "sap/ui/core/library";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Defines a conditional template that renders content based on the evaluation of a set of switchProperties.
* The switchProperties are defined using the {@link sap.fe.macros.ConditionalSwitchProperty } building
* block.
*
* @since 1.141.0
*/
export default class ConditionalSwitch
extends BuildingBlockBase
implements IFormContent
{
__implements__sap_ui_core_IFormContent: boolean;
}
/**
* Describes the settings that can be provided to the ConditionalSwitch constructor.
*/
export interface $ConditionalSwitchSettings
extends $BuildingBlockBaseSettings {
/**
* A function that returns the content to be rendered based on the evaluation of the switchProperties.
* The function receives an object with the switchProperties as key-value pairs, the binding context, and
* the displayed control.
* The function should return a single UI5 control.
*/
factory?: Function | PropertyBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/ConditionalSwitchProperty" {
import { default as UI5Element, $ElementSettings } from "sap/ui/core/Element";
import Event from "sap/ui/base/Event";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Defines a property with a key and a value that can be used in conditional templates.
* When the value is changed, a `valueChanged` event is fired.
*
* @since 1.141.0
*/
export default class ConditionalSwitchProperty extends UI5Element {
/**
*
* @returns Reference to sap.fe.macros.ConditionalSwitchProperty
* to allow method chaining
*/
attachValueChanged(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.ConditionalSwitchProperty
* to allow method chaining
*/
attachValueChanged(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.ConditionalSwitchProperty
* to allow method chaining
*/
detachValueChanged(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event valueChanged
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.ConditionalSwitchProperty
* to allow method chaining
*/
fireValueChanged(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler>} for
* the set of parameters that are expected by the event handlers.
*/
mParameters?: {}
): this;
}
/**
* Describes the settings that can be provided to the ConditionalSwitchProperty constructor.
*/
export interface $ConditionalSwitchPropertySettings extends $ElementSettings {
/**
* The key of the property.
*/
key?: string | PropertyBindingInfo;
/**
* The value of the property.
*/
value?: any | PropertyBindingInfo | `{${string}}`;
/**
* Event fired when the value of the property is changed.
* This is used internally by the `ConditionalTemplate` control to react to changes in the property value.
*/
valueChanged?: (oEvent: Event) => void;
}
/**
* Parameters of the ConditionalSwitchProperty#valueChanged event.
*/
export interface ConditionalSwitchProperty$ValueChangedEventParameters {}
/**
* Event object of the ConditionalSwitchProperty#valueChanged event.
*/
export type ConditionalSwitchProperty$ValueChangedEvent = Event<
ConditionalSwitchProperty$ValueChangedEventParameters,
ConditionalSwitchProperty
>;
}
declare module "sap/fe/macros/Field" {
import {
default as MacroAPI,
$MacroAPISettings,
} from "sap/fe/macros/MacroAPI";
import Event from "sap/ui/base/Event";
import Control from "sap/ui/core/Control";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
import FieldFormatOptions from "sap/fe/macros/field/FieldFormatOptions";
/**
* Building block for creating a field based on the metadata provided by OData V4.
*
*
* Usually, a DataField or DataPoint annotation is expected, but the field can also be used to display a
* property from the entity type.
* When creating a Field building block, you must provide an ID to ensure everything works correctly.
*
* Usage example:
*
* ```javascript
*
*
* ```
*
* Overview of Building Blocks
*/
export default class Field extends MacroAPI {
/**
* Adds a validation message to the field.
* This method creates a new message and associates it with the field's binding path,
* making it visible in the field's value state and message popover.
*
*
* @returns The ID of the created message
*/
addMessage(
/**
* The message parameters
*/
parameters: {
/**
* Detailed message description
*/
description?: string;
/**
* Message text to display
*/
message?: string;
/**
* Whether the message persists across refreshes
*/
persistent?: boolean;
/**
* Type of the message, such as Error, Warning, Success, or Information
*/
type?: /* was: sap.ui.core.message.MessageType */ any;
}
): string;
/**
*
* @returns Reference to sap.fe.macros.Field to allow
* method chaining
*/
attachChange(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Field$ChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Field to allow
* method chaining
*/
attachChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Field$ChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Field to allow
* method chaining
*/
attachLiveChange(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Field to allow
* method chaining
*/
attachLiveChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Field to allow
* method chaining
*/
detachChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Field$ChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Field to allow
* method chaining
*/
detachLiveChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event change to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Field to allow
* method chaining
*/
fireChange(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler> }
* for the set of parameters that are expected by the event handlers.
*/
mParameters?: Field$ChangeEventParameters
): this;
/**
* Fires event liveChange to attached
* listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Field to allow
* method chaining
*/
fireLiveChange(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler>} for the set of parameters
* that are expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Gets the current enabled state of the field.
* This method handles various control types and wrappers, returning true for controls
* that are always enabled, such as Text, and checking the enabled property for interactive controls.
*
*
* @returns Boolean value indicating if the field is enabled, or true if control is not found (graceful
* fallback)
*/
getEnabled(): boolean;
/**
* Gets the message manager instance from the UI5 core.
* The message manager is responsible for handling all messages in the application.
*
*
* @returns The Messaging instance
*/
getMessageManager(): /* was: sap.ui.core.Messaging */ any;
/**
* Gets the current value of the field.
* This method handles various control types including CheckBox, Input, Text, MDC Field,
* RatingIndicator, Link, Label, ObjectStatus, ObjectIdentifier, and building blocks.
*
*
* @returns The current value of the field or undefined if control is not found
*/
getValue(): boolean | number | string | undefined;
/**
* Removes a message from the field by its ID.
* This method finds the message in the message model and removes it,
* clearing it from the field's value state.
*/
removeMessage(
/**
* The ID of the message to remove
*/
id: string
): void;
/**
* Sets the current enabled state of the field.
* This method handles various control types, setting the appropriate property,
* such as enabled, active, titleActive, or edit mode based on the control type.
*
*
* @returns The current field reference for chaining
*/
setEnabled(
/**
* The enabled state to set
*/
enabled: boolean
): Control;
/**
* Sets the current value of the field.
* This method handles various control types including CheckBox, Input, Text, and MDC Field.
*
*
* @returns The current field reference for chaining
*/
setValue(
/**
* The value to set
*/
value: boolean | number | string
): Control;
}
/**
* Describes the settings that can be provided to the Field constructor.
*/
export interface $FieldSettings extends $MacroAPISettings {
/**
* Defines the path of the context used in the current page or block.
* This setting is defined by the framework.
*/
contextPath?: string | PropertyBindingInfo;
/**
* This is used to optionally provide an external description that comes from a different model than the
* oData model.
* This should be used in conjunction with the value property.
*/
description?: string | PropertyBindingInfo;
/**
* Defines the relative path of the property in the metamodel, based on the current contextPath.
*/
metaPath?: string | PropertyBindingInfo;
/**
* An expression that allows you to control the read-only state of the field.
* If you do not set any expression, SAP Fiori elements hooks into the standard lifecycle to determine the
* current state.
*/
readOnly?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Option to add semantic objects for a field.
* This parameter overwrites the semantic objects defined through annotations.
* Valid options are either a single semantic object, a stringified array of semantic objects,
* a formatter or a single binding expression returning either a single semantic object or an array of semantic
* objects.
*/
semanticObject?: string | PropertyBindingInfo;
/**
* This is used to optionally provide an external value that comes from a different model than the OData
* model.
* It is designed to work with a field with value help, and without support for complex value help (currency
* / unit).
*/
value?: string | PropertyBindingInfo;
/**
* A set of options that can be configured.
*/
formatOptions?: FieldFormatOptions;
/**
* An event containing details is triggered when the value of the field is changed.
*/
change?: (oEvent: Field$ChangeEvent) => void;
/**
* An event containing details is triggered when the value of the field is live changed.
* **Note:** Browsing autocomplete suggestions does not fire the event.
*/
liveChange?: (oEvent: Event) => void;
}
/**
* Parameters of the Field#change event.
*/
export interface Field$ChangeEventParameters {
value?: boolean | number | string | undefined;
isValid?: boolean;
}
/**
* Event object of the Field#change event.
*/
export type Field$ChangeEvent = Event;
/**
* Parameters of the Field#liveChange event.
*/
export interface Field$LiveChangeEventParameters {}
/**
* Event object of the Field#liveChange event.
*/
export type Field$LiveChangeEvent = Event<
Field$LiveChangeEventParameters,
Field
>;
}
declare module "sap/fe/macros/FilterBar" {
import {
default as MacroAPI,
$MacroAPISettings,
} from "sap/fe/macros/MacroAPI";
import FilterField from "sap/fe/macros/filterBar/FilterField";
import Event from "sap/ui/base/Event";
import SelectionVariant from "sap/fe/navigation/SelectionVariant";
import {
PropertyBindingInfo,
AggregationBindingInfo,
} from "sap/ui/base/ManagedObject";
import FilterFieldOverride from "sap/fe/macros/filterBar/FilterFieldOverride";
/**
* Building block for creating a FilterBar based on the metadata provided by OData V4.
* {@link demo:sap/fe/core/fpmExplorer/index.html#/buildingBlocks/filterBar/filterBarDefault Overview of Building Blocks}
*
*
* Usually, a SelectionFields annotation is expected.
*
* Usage example:
*
* ```javascript
*
*
* ```
*/
export default class FilterBar extends MacroAPI {
/**
* Adds a filterField to the FilterBar.
* **Note:** When adding a custom filter field that uses a custom operator, ensure you use the correct configuration.
* For more information, see {@link topic :5fb9f57fcf12401bbe39a635e9a32a4e Custom Filters with Custom Operators}.
*
*
* @since 1.147.0
* @experimental As of version 1.147.0.
*
* @returns Reference to this to allow method chaining
*/
addFilterField(
/**
* The filterField to add
*/
filterField: FilterField
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
attachAfterClear(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
attachAfterClear(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
attachFilterChanged(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
attachFilterChanged(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
attachSearch(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
attachSearch(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
detachAfterClear(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
detachFilterChanged(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
detachSearch(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event afterClear to
* attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
fireAfterClear(
/**
* The parameters to pass along with the event.
* See {@link .........types.EventHandler>} for the set
* of parameters that are expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Fires event filterChanged
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
fireFilterChanged(
/**
* The parameters to pass along with the event.
* See {@link .........types.EventHandler> }
* for the set of parameters that are expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Fires event search to attached
* listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
fireSearch(
/**
* The parameters to pass along with the event.
* See {@link .........types.EventHandler>} for the set
* of parameters that are expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Get the Active Filters Text Summary for the filter bar.
*
*
* @returns Active filters summary as text
*/
getActiveFiltersText(): string;
/**
* Gets the key of the current variant in the associated variant management.
*
*
* @returns Key of the currently selected variant. In case the model is not yet set, `null` will be returned.
*/
getCurrentVariantKey(): null | string;
/**
* Determines whether the field is enabled or disabled.
*
*
* @returns Whether the filterField is enabled or disabled.
*/
getFilterFieldEnabled(
/**
* Name of the field.
*/
name: string
): boolean;
/**
* Gets the visibility of a filter field.
*
*
* @returns A {@link Promise} that resolves to check whether the filter field is visible or not.
*/
getFilterFieldVisible(
/**
* The path to the property as a condition path
*/
conditionPath: string
): Promise;
/**
* Provides all the filters that are currently active
* along with the search expression.
*
*
* @returns An array of active filters and the search expression.
*/
getFilters(): object;
/**
* Get the selection variant from the filter bar.
* Note: This method returns all the filter values that are set in the filter bar, including the text from
* the search field (with $search as the property name). However, it doesn't return any filter field condition
* that uses a custom operator.
*
*
* @returns A promise which resolves with a {@link sap.fe.navigation.SelectionVariant}
*/
getSelectionVariant(): Promise;
/**
* Removes a filterField from the FilterBar.
*
* @since 1.147.0
* @experimental As of version 1.147.0.
*
* @returns The removed filterField or null
*/
removeFilterField(
/**
* The filterField to remove, or its index or ID
*/
filterField: number | FilterField | string
): null | FilterField;
/**
* Sets the new selected variant in the associated variant management.
*/
setCurrentVariantKey(
/**
* Key of the variant that should be selected. If the passed key doesn't identify a variant, it will be
* ignored.
*/
key: string
): void;
/**
* Sets the enablement of the field.
*/
setFilterFieldEnabled(
/**
* Name of the field that should be enabled or disabled.
*/
name: string,
/**
* Whether the field should be enabled or disabled.
*/
enabled: boolean
): void;
/**
* Shows or hides any filter field from the filter bar.
* The property will not be hidden inside the adaptation dialog and may be re-added.
*
*
* @returns A {@link Promise} resolving once the change in visibility was applied
*/
setFilterFieldVisible(
/**
* The path to the property as a condition path
*/
conditionPath: string,
/**
* Whether it should be shown or hidden
*/
visible: boolean
): Promise;
/**
* Set the filter values for the given property in the filter bar.
* The filter values can be either a single value or an array of values.
* Each filter value must be represented as a primitive value.
*
*
* @returns A promise for asynchronous handling
*/
setFilterValues(
/**
* The path to the property as a condition path
*/
sConditionPath: string,
/**
* The operator to be used (optional) - if not set, the default operator (EQ) will be used
*/
sOperator: string | undefined,
/**
* The values to be applied
*/
vValues?:
| boolean
| boolean[]
| number
| number[]
| string
| string[]
| undefined
): Promise;
/**
* Sets {@link sap.fe.navigation.SelectionVariant } to the filter bar. Note: setSelectionVariant will clear
* existing filters and then apply the SelectionVariant values.
* Note: This method cannot set the search field text or any filter field condition that relies on a custom
* operator.
*
*
* @returns A promise for asynchronous handling
*/
setSelectionVariant(
/**
* The {@link sap.fe.navigation.SelectionVariant} to apply to the filter bar
*/
selectionVariant: SelectionVariant,
/**
* Optional. If true, we will use the associated text property values (if they're available in the selectionVariant)
* to display the filter value descriptions, instead of loading them from the backend
*/
prefillDescriptions?: boolean
): Promise;
/**
* Triggers the API search on the filter bar.
*
*
* @returns Returns a promise which resolves if the filter is triggered; otherwise it is rejected.
*/
triggerSearch(): Promise;
}
/**
* Describes the settings that can be provided to the FilterBar constructor.
*/
export interface $FilterBarSettings extends $MacroAPISettings {
/**
* Defines the path of the context used in the current page or block.
* This setting is defined by the framework.
*/
contextPath?: string | PropertyBindingInfo;
/**
* If true, the search is triggered automatically when a filter value is changed.
*/
liveMode?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines the relative path of the property in the metamodel, based on the current contextPath.
*/
metaPath?: string | PropertyBindingInfo;
/**
* Comma separated list of navigation properties which are considered for filtering.
*/
navigationPropertiesForPersonalization?:
| string[]
| PropertyBindingInfo
| `{${string}}`;
/**
* Handles the visibility of the 'Clear' button on the FilterBar.
*/
showClearButton?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Displays possible errors during the search in a message box
*/
showMessages?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Aggregate filter fields of the FilterBar building block
*/
filterFields?:
| Array
| FilterFieldOverride
| FilterField
| AggregationBindingInfo
| `{${string}}`;
/**
* This event is fired when the 'Clear' button is pressed. This is only possible when the 'Clear' button
* is enabled.
*/
afterClear?: (oEvent: Event) => void;
/**
* This event is fired after either a filter value or the visibility of a filter item has been changed.
* The event contains conditions that are used as filters.
*/
filterChanged?: (oEvent: Event) => void;
/**
* This event is fired when the 'Go' button is pressed or after a condition change.
*/
search?: (oEvent: Event) => void;
}
/**
* Parameters of the FilterBar#afterClear event.
*/
export interface FilterBar$AfterClearEventParameters {}
/**
* Event object of the FilterBar#afterClear event.
*/
export type FilterBar$AfterClearEvent = Event<
FilterBar$AfterClearEventParameters,
FilterBar
>;
/**
* Parameters of the FilterBar#filterChanged event.
*/
export interface FilterBar$FilterChangedEventParameters {}
/**
* Event object of the FilterBar#filterChanged event.
*/
export type FilterBar$FilterChangedEvent = Event<
FilterBar$FilterChangedEventParameters,
FilterBar
>;
/**
* Parameters of the FilterBar#search event.
*/
export interface FilterBar$SearchEventParameters {}
/**
* Event object of the FilterBar#search event.
*/
export type FilterBar$SearchEvent = Event<
FilterBar$SearchEventParameters,
FilterBar
>;
}
declare module "sap/fe/macros/FormElement" {
import {
default as FormElement1,
$FormElementSettings as $FormElementSettings1,
} from "sap/ui/layout/form/FormElement";
import {
PropertyBindingInfo,
AggregationBindingInfo,
} from "sap/ui/base/ManagedObject";
import Control from "sap/ui/core/Control";
/**
* Building block used to create a form element based on the metadata provided by OData V4.
*
* @since 1.90.0
*/
export default class FormElement extends FormElement1 {}
/**
* Describes the settings that can be provided to the FormElement constructor.
*/
export interface $FormElementSettings extends $FormElementSettings1 {
/**
* Reference to the key of another column already displayed in the table to properly place this one
*/
anchor?: string | PropertyBindingInfo;
/**
* Defines the path of the context used in the current page or block.
* This setting is defined by the framework.
*/
contextPath?: string | PropertyBindingInfo;
/**
* Label shown for the field. If not set, the label from the annotations will be shown.
*/
label?: string | PropertyBindingInfo;
/**
* Defines the relative path of the property in the metamodel, based on the current contextPath.
*/
metaPath?: string | PropertyBindingInfo;
/**
* Determines where this column should be placed relative to the defined anchor
* Allowed values are `Before` and `After`
*/
placement?: string | PropertyBindingInfo;
/**
* If set to false, the FormElement is not rendered.
*/
visible?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Optional aggregation of controls that should be displayed inside the FormElement.
* If not set, a default Field building block will be rendered
*/
fields?: Control[] | Control | AggregationBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/KPITag" {
import {
default as BuildingBlock,
$BuildingBlockSettings,
} from "sap/fe/core/buildingBlocks/BuildingBlock";
import Event from "sap/ui/base/Event";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Building block used to create a KPI tag.
*/
export default class KPITag extends BuildingBlock {
/**
*
* @returns Reference to sap.fe.macros.KPITag to
* allow method chaining
*/
attachPress(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.KPITag to
* allow method chaining
*/
attachPress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.KPITag to
* allow method chaining
*/
detachPress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event press to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.KPITag to
* allow method chaining
*/
firePress(
/**
* The parameters to pass along with the event.
* See {@link .........types.EventHandler>} for the set of parameters that
* are expected by the event handlers.
*/
mParameters?: {}
): this;
}
/**
* Describes the settings that can be provided to the KPITag constructor.
*/
export interface $KPITagSettings extends $BuildingBlockSettings {
/**
* The Number to be displayed.
*/
number?: string | PropertyBindingInfo;
/**
* Set it to `true` if the KPI should display its status icon.
*/
showIcon?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* The Status to be displayed.
*/
status?: string | PropertyBindingInfo;
/**
* The Text to be displayed.
*/
text?: string | PropertyBindingInfo;
/**
* The Tooltip to be displayed.
*/
tooltip?: string | PropertyBindingInfo;
/**
* The Unit of Measure of the number to be displayed.
*/
unit?: string | PropertyBindingInfo;
/**
* An event is triggered when the KPI is pressed.
*/
press?: (oEvent: Event) => void;
}
/**
* Parameters of the KPITag#press event.
*/
export interface KPITag$PressEventParameters {}
/**
* Event object of the KPITag#press event.
*/
export type KPITag$PressEvent = Event;
}
declare module "sap/fe/macros/library" {}
declare module "sap/fe/macros/MacroAPI" {
import {
default as BuildingBlock,
$BuildingBlockSettings,
} from "sap/fe/core/buildingBlocks/BuildingBlock";
import { IFormContent } from "sap/ui/core/library";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Base API control for building blocks.
*/
export default class MacroAPI extends BuildingBlock implements IFormContent {
__implements__sap_ui_core_IFormContent: boolean;
}
/**
* Describes the settings that can be provided to the MacroAPI constructor.
*/
export interface $MacroAPISettings extends $BuildingBlockSettings {
/**
* Defines the path of the context used in the current page or block.
* This setting is defined by the framework.
*/
contextPath?: string | PropertyBindingInfo;
/**
* Defines the relative path of the property in the metamodel, based on the current contextPath.
*/
metaPath?: string | PropertyBindingInfo;
}
}
declare module "sap/fe/macros/MessageButton" {
import {
default as BuildingBlock,
$BuildingBlockSettings,
} from "sap/fe/core/buildingBlocks/BuildingBlock";
import Event from "sap/ui/base/Event";
/**
* Building block used to show bound messages.
* The Message Button Building Block gets the bound messages from the MessageModel.
* Usage example:
*
* ```javascript
*
*
* ```
*/
export default class MessageButton extends BuildingBlock {
/**
*
* @returns Reference to sap.fe.macros.MessageButton
* to allow method chaining
*/
attachVisibilityChange(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: MessageButton$VisibilityChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.MessageButton
* to allow method chaining
*/
attachVisibilityChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: MessageButton$VisibilityChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.MessageButton
* to allow method chaining
*/
detachVisibilityChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: MessageButton$VisibilityChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event visibilityChange
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.MessageButton
* to allow method chaining
*/
fireVisibilityChange(
/**
* The parameters to pass along with the event.
* See {@link .........types.EventHandler>} for the
* set of parameters that are expected by the event handlers.
*/
mParameters?: MessageButton$VisibilityChangeEventParameters
): this;
}
/**
* Describes the settings that can be provided to the MessageButton constructor.
*/
export interface $MessageButtonSettings extends $BuildingBlockSettings {
/**
* The event is triggered when the message button's visibility changes.
*/
visibilityChange?: (oEvent: MessageButton$VisibilityChangeEvent) => void;
}
/**
* Parameters of the MessageButton#visibilityChange event.
*/
export interface MessageButton$VisibilityChangeEventParameters {
visible?: boolean;
}
/**
* Event object of the MessageButton#visibilityChange event.
*/
export type MessageButton$VisibilityChangeEvent = Event<
MessageButton$VisibilityChangeEventParameters,
MessageButton
>;
}
declare module "sap/fe/macros/MicroChart" {
import {
default as BuildingBlock,
$BuildingBlockSettings,
} from "sap/fe/core/buildingBlocks/BuildingBlock";
import Event from "sap/ui/base/Event";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Building block used to create a MicroChart based on the metadata provided by OData V4.
* {@link demo:sap/fe/core/fpmExplorer/index.html#/buildingBlocks/microchart/ Overview of Micro Chart Building Block}
*
*
* Usually, a contextPath and metaPath is expected.
*
* Usage example:
*
* ```javascript
*
*
* ```
*
*
* ```javascript
*
* sap.ui.require(["sap/fe/macros/MicroChart"], function(MicroChart) {
* ...
* new MicroChart("myMicroChart", {metaPath:"@com.sap.vocabularies.UI.v1.Chart"})
* })
* ```
*
*
*
* @since 1.93.0
*/
export default class MicroChart extends BuildingBlock {
/**
*
* @returns Reference to sap.fe.macros.MicroChart
* to allow method chaining
*/
attachTitlePress(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.MicroChart
* to allow method chaining
*/
attachTitlePress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.MicroChart
* to allow method chaining
*/
detachTitlePress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event titlePress
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.MicroChart
* to allow method chaining
*/
fireTitlePress(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler>} for the set of parameters that are
* expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Gets current value of property contextPath.
*
*
* @returns Value of property `contextPath`
*/
getContextPath(): string;
/**
* Gets current value of property hideOnNoData.
*
*
* @returns Value of property `hideOnNoData`
*/
getHideOnNoData(): boolean;
/**
* Gets current value of property linkAriaText.
*
*
* @returns Value of property `linkAriaText`
*/
getLinkAriaText(): string;
/**
* Gets current value of property metaPath.
*
*
* @returns Value of property `metaPath`
*/
getMetaPath(): string;
/**
* Gets current value of property showOnlyChart.
*
*
* @returns Value of property `showOnlyChart`
*/
getShowOnlyChart(): boolean;
/**
* Gets current value of property size.
*
*
* @returns Value of property `size`
*/
getSize(): string;
/**
* Gets current value of property titleAsLink.
*
*
* @returns Value of property `titleAsLink`
*/
getTitleAsLink(): boolean;
/**
* Gets current value of property contextPath.
*
*
* @returns Value of property `contextPath`
*/
setContextPath(): string;
/**
* Gets current value of property hideOnNoData.
*
*
* @returns Value of property `hideOnNoData`
*/
setHideOnNoData(): boolean;
/**
* Gets current value of property linkAriaText.
*
*
* @returns Value of property `linkAriaText`
*/
setLinkAriaText(): string;
/**
* Gets current value of property metaPath.
*
*
* @returns Value of property `metaPath`
*/
setMetaPath(): string;
/**
* Gets current value of property showOnlyChart.
*
*
* @returns Value of property `showOnlyChart`
*/
setShowOnlyChart(): boolean;
/**
* Gets current value of property size.
*
*
* @returns Value of property `size`
*/
setSize(): string;
/**
* Gets current value of property titleAsLink.
*
*
* @returns Value of property `titleAsLink`
*/
setTitleAsLink(): boolean;
}
/**
* Describes the settings that can be provided to the MicroChart constructor.
*/
export interface $MicroChartSettings extends $BuildingBlockSettings {
/**
* context path to the MicroChart.
*/
contextPath?: string | PropertyBindingInfo;
/**
* Show blank space in case there is no data in the chart
*/
hideOnNoData?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Custom ARIA text for the title link.
* This property is only used when titleAsLink is set to true.
* If not provided, default ARIA text based on the navigationType is used.
*/
linkAriaText?: string | PropertyBindingInfo;
/**
* Metadata path to the MicroChart.
*/
metaPath?: string | PropertyBindingInfo;
/**
* To control the rendering of Title, Subtitle and Currency Labels. When the size is xs then we do
* not see the inner labels of the MicroChart as well.
*/
showOnlyChart?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Size of the MicroChart
*/
size?: string | PropertyBindingInfo;
/**
* Determines whether the micro chart title is displayed as a link or as a text.
* When set to true, the title is rendered as a clickable link.
*/
titleAsLink?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Event fired when the micro chart title link is pressed.
* The event provides the binding context of the micro chart in the event parameters.
* This event is only fired when titleAsLink is set to true.
*/
titlePress?: (oEvent: Event) => void;
}
/**
* Parameters of the MicroChart#titlePress event.
*/
export interface MicroChart$TitlePressEventParameters {}
/**
* Event object of the MicroChart#titlePress event.
*/
export type MicroChart$TitlePressEvent = Event<
MicroChart$TitlePressEventParameters,
MicroChart
>;
}
declare module "sap/fe/macros/MultiValueField" {
import {
default as BuildingBlock,
$BuildingBlockSettings,
} from "sap/fe/core/buildingBlocks/BuildingBlock";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Building block for creating a MultiValueField based on the metadata provided by OData V4.
*
*
* The MultiValueField can be used to display either a DataField or Property directly. It has to point to
* a collection property.
*
*
* Usage example:
*
* ```javascript
*
*
* ```
*
*
* @since 1.118.0
*/
export default class MultiValueField extends BuildingBlock {}
/**
* Describes the settings that can be provided to the MultiValueField constructor.
*/
export interface $MultiValueFieldSettings extends $BuildingBlockSettings {
/**
* The context path provided for the MultiValueField
*/
contextPath?: string | PropertyBindingInfo;
/**
* Property added to be able to add data / items to the multi-input field using a different model
*/
items?: any | PropertyBindingInfo | `{${string}}`;
/**
* Defines the relative Metadata path to the MultiValueField.
* The metaPath should point to a Property or DataField.
*/
metaPath?: string | PropertyBindingInfo;
/**
* The readOnly flag
*/
readOnly?: boolean | PropertyBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/Page" {
import {
default as BuildingBlock,
$BuildingBlockSettings,
} from "sap/fe/core/buildingBlocks/BuildingBlock";
import {
PropertyBindingInfo,
AggregationBindingInfo,
} from "sap/ui/base/ManagedObject";
import Control from "sap/ui/core/Control";
/**
* Building block used to create a custom page with a title and the content. By default, the page includes
* a title.
*/
export default class Page extends BuildingBlock {}
/**
* Describes the settings that can be provided to the Page constructor.
*/
export interface $PageSettings extends $BuildingBlockSettings {
/**
* ImageFitType of the avatar image. This property is only considered if the title property is defined.
*/
avatarImageFitType?: string | PropertyBindingInfo;
/**
* Source of the avatar image. This property is considered only if the title property is defined.
*/
avatarSrc?: string | PropertyBindingInfo;
/**
* Provides additional details of the page. This property is considered only if the title property is defined.
* Can be a string or a binding info object.
*/
description?: string | PropertyBindingInfo;
/**
* Controls the visibility of the footer.
*/
showFooter?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Title of the page. If no title is provided, the title, avatar, and description are derived from the unqualified
* HeaderInfo annotation associated with the entity.
* Can be a string or a binding info object.
*/
title?: string | PropertyBindingInfo;
/**
* Actions to be displayed in the title area (for example, Edit and Delete buttons).
*/
actions?: Control[] | Control | AggregationBindingInfo | `{${string}}`;
/**
* Breadcrumbs to be displayed in the title area.
*/
breadcrumbs?: Control[] | Control | AggregationBindingInfo | `{${string}}`;
/**
* Footer content (for example, toolbar with buttons).
*/
footer?: Control;
/**
* Additional content to be displayed in the header after the avatar.
*/
headerContent?:
| Control[]
| Control
| AggregationBindingInfo
| `{${string}}`;
/**
* Content(s) of the page
*/
items?: Control[] | Control | AggregationBindingInfo | `{${string}}`;
/**
* Navigation actions to be displayed in the title area.
*/
navigationActions?:
| Control[]
| Control
| AggregationBindingInfo
| `{${string}}`;
/**
* Content to be displayed next to the title (for example, GenericTag and Icon).
*/
titleContent?: Control[] | Control | AggregationBindingInfo | `{${string}}`;
/**
* Reference to a control that provides sticky subheader content.
*/
stickySubheaderProvider?: Control | string;
}
}
declare module "sap/fe/macros/Paginator" {
import {
default as BuildingBlock,
$BuildingBlockSettings,
} from "sap/fe/core/buildingBlocks/BuildingBlock";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Building block used to create a paginator control.
* Usage example:
*
* ```javascript
*
*
* ```
*
*
*
* @since 1.94.0
*/
export default class Paginator extends BuildingBlock {}
/**
* Describes the settings that can be provided to the Paginator constructor.
*/
export interface $PaginatorSettings extends $BuildingBlockSettings {
/**
* Title of the object that is readout by screen readers when the next/previous item is loaded via keyboard
* focus on the paginator button.
*/
ariaTitle?: string | PropertyBindingInfo;
}
}
declare module "sap/fe/macros/RichTextEditor" {
import {
default as BuildingBlock,
$BuildingBlockSettings,
} from "sap/fe/core/buildingBlocks/BuildingBlock";
import {
PropertyBindingInfo,
AggregationBindingInfo,
} from "sap/ui/base/ManagedObject";
import { CSSSize } from "sap/ui/core/library";
import ButtonGroup from "sap/fe/macros/richtexteditor/ButtonGroup";
import Plugin from "sap/fe/macros/richtexteditor/Plugin";
/**
* Building block that exposes the RichTextEditor UI5 control.
* It's used to enter formatted text, and uses the third-party component called TinyMCE.
*
*
* @since 1.117.0
*/
export default class RichTextEditor extends BuildingBlock {}
/**
* Describes the settings that can be provided to the RichTextEditor constructor.
*/
export interface $RichTextEditorSettings extends $BuildingBlockSettings {
/**
* With the 'excludeDefaultPlugins' you can ask to remove the plugins that will be added by default
* The default plugins are "emoticons" "directionality" "image" "table" "link" "powerpaste".
*/
excludeDefaultPlugins?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Height of RichTextEditor control in CSS units.
*/
height?: CSSSize | PropertyBindingInfo | `{${string}}`;
/**
* Use the readOnly attribute to override the edit flow of the page.
* By setting 'readOnly' to true, a FormattedText will be displayed instead of the editor.
*/
readOnly?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Use the 'required' attribute to make sure that the editor is filled with some text.
*/
required?: any | PropertyBindingInfo | `{${string}}`;
/**
* The value contained in the editor. You can use this attribute to set a default value.
*/
value?: any | PropertyBindingInfo | `{${string}}`;
/**
* With the 'buttonGroups' attribute you can customize the buttons that are displayed on the toolbar of
* the editor.
*/
buttonGroups?:
| ButtonGroup[]
| ButtonGroup
| AggregationBindingInfo
| `{${string}}`;
/**
* With the 'plugins' attribute you can customize the plugins that will be loaded by the editor.
*/
plugins?: Plugin[] | Plugin | AggregationBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/RichTextEditorWithMetadata" {
import {
default as RichTextEditor,
$RichTextEditorSettings,
} from "sap/fe/macros/RichTextEditor";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Metadata-driven building block that exposes the RichTextEditor UI5 control.
* It's used to enter formatted text and uses the third-party component called TinyMCE.
*
*
* @since 1.117.0
*/
export default class RichTextEditorWithMetadata extends RichTextEditor {}
/**
* Describes the settings that can be provided to the RichTextEditorWithMetadata constructor.
*/
export interface $RichTextEditorWithMetadataSettings
extends $RichTextEditorSettings {
/**
* The context path of the property displayed
*/
contextPath?: string | PropertyBindingInfo;
/**
* The metaPath of the displayed property
*/
metaPath?: string | PropertyBindingInfo;
}
}
declare module "sap/fe/macros/Share" {
import {
default as BuildingBlock,
$BuildingBlockSettings,
} from "sap/fe/core/buildingBlocks/BuildingBlock";
import ShareOptions from "sap/fe/macros/share/ShareOptions";
/**
* Building block used to create the ‘Share’ functionality.
*
*
* Please note that the 'Share in SAP Jam' option is only available on platforms that are integrated with
* SAP Jam.
*
*
* If you are consuming this macro in an environment where the SAP Fiori launchpad is not available, then
* the 'Save as Tile' option is not visible.
*
* Usage example:
*
* ```javascript
*
*
* ```
*
* {@link demo:sap/fe/core/fpmExplorer/index.html#/buildingBlocks/features/shareDefault Overview of Building Blocks}
*
*
* @since 1.93.0
*/
export default class Share extends BuildingBlock {}
/**
* Describes the settings that can be provided to the Share constructor.
*/
export interface $ShareSettings extends $BuildingBlockSettings {
/**
* Supported Share options {@link sap.fe.macros.share.ShareOptions }.
*/
shareOptions?: ShareOptions;
}
}
declare module "sap/fe/macros/Status" {
import {
default as BuildingBlock,
$BuildingBlockSettings,
} from "sap/fe/core/buildingBlocks/BuildingBlock";
import { IFormContent } from "sap/ui/core/library";
import Event from "sap/ui/base/Event";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Building block to display a status and criticality.
*
* @since 1.143.0
*/
export default class Status extends BuildingBlock implements IFormContent {
__implements__sap_ui_core_IFormContent: boolean;
/**
*
* @returns Reference to sap.fe.macros.Status to
* allow method chaining
*/
attachPress(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Status to
* allow method chaining
*/
attachPress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Status to
* allow method chaining
*/
detachPress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event press to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Status to
* allow method chaining
*/
firePress(
/**
* The parameters to pass along with the event.
*/
mParameters?: {}
): this;
}
/**
* Describes the settings that can be provided to the Status constructor.
*/
export interface $StatusSettings extends $BuildingBlockSettings {
/**
* Color palette to be used by the control. The supported values are "Standard" (default) and "Pastel".
*/
colorPalette?: string | PropertyBindingInfo;
/**
* Context path for the binding context.
*/
contextPath?: string | PropertyBindingInfo;
/**
* Determines whether the background color reflects the set state of the ObjectStatus instead of the control's
* text.
*/
inverted?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Indicates whether the ObjectStatus should be displayed in large design mode.
*/
largeDesign?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Metadata path to the DataField annotation or property.
*/
metaPath?: string | PropertyBindingInfo;
/**
* When the Status is clickable, it defines the size of the reactive area of the clickable element:
* - ReactiveAreaMode.Inline - The Status is displayed as part of a sentence.
* - ReactiveAreaMode.Overlay - The Status is displayed as an overlay on top of other interactive parts
* of the page.
* Note: It is designed to make the clickable element easier to activate and helps meet the WCAG 2.2 Target
* Size requirement. It is applicable only for the SAP Horizon themes. Note: The size of the reactive area
* is sufficiently large to help users avoid accidentally selecting (clicking or tapping) unintended UI
* elements. UI elements positioned over other parts of the page may need an invisible active touch area.
* This ensures that no elements beneath are activated accidentally when the user tries to interact with
* the overlay element.
*/
reactiveAreaMode?: string | PropertyBindingInfo;
/**
* Press event fired when the ObjectStatus is clicked.
*/
press?: (oEvent: Event) => void;
}
/**
* Parameters of the Status#press event.
*/
export interface Status$PressEventParameters {}
/**
* Event object of the Status#press event.
*/
export type Status$PressEvent = Event;
}
declare module "sap/fe/macros/Table" {
import {
default as MacroAPI,
$MacroAPISettings,
} from "sap/fe/macros/MacroAPI";
import Action from "sap/fe/macros/table/Action";
import Column from "sap/fe/macros/table/Column";
import Event from "sap/ui/base/Event";
import Context from "sap/ui/model/odata/v4/Context";
import PresentationVariant from "sap/fe/navigation/PresentationVariant";
import SelectionVariant from "sap/fe/navigation/SelectionVariant";
import {
PropertyBindingInfo,
AggregationBindingInfo,
} from "sap/ui/base/ManagedObject";
import OverflowGroup from "sap/fe/macros/table/OverflowGroups";
import { ITableActionOrGroup } from "sap/fe/macros/table/ITableActionOrGroup";
import AnalyticalConfiguration from "sap/fe/macros/table/AnalyticalConfiguration";
import { ITableColumn } from "sap/fe/macros/table/ITableColumn";
import TableCreationOptions from "sap/fe/macros/table/TableCreationOptions";
import MassEdit from "sap/fe/macros/table/MassEdit";
import Text from "sap/m/Text";
import IllustratedMessage from "sap/m/IllustratedMessage";
import QuickVariantSelection from "sap/fe/macros/table/QuickVariantSelection";
import CollectionBindingInfo from "sap/fe/macros/CollectionBindingInfo";
/**
* Building block used to create a table based on the metadata provided by OData V4.
*
*
* Usually, a LineItem, PresentationVariant, or SelectionPresentationVariant annotation is expected, but
* the Table building block can also be used to display an EntitySet.
*
*
* If a PresentationVariant is specified, then it must have UI.LineItem as the first property of the Visualizations.
*
*
* If a SelectionPresentationVariant is specified, then it must contain a valid PresentationVariant that
* also has a UI.LineItem as the first property of the Visualizations.
* Usage example:
*
* ```javascript
*
*
* ```
*
* {@link demo:sap/fe/core/fpmExplorer/index.html#/buildingBlocks/table/tableDefault Overview of Table Building Blocks}
*/
export default class Table
extends MacroAPI
implements
/* was: sap.fe.core.IRowBindingInterface */ Object,
/* was: sap.fe.macros.Table.ITableBlock */ Object
{
__implements__sap_fe_core_IRowBindingInterface: boolean;
__implements__sap_fe_macros_Table_ITableBlock: boolean;
/**
* Adds an action to the table.
*
* @since 1.145.0
* @experimental As of version 1.145.0.
*
* @returns Reference to this to allow method chaining
*/
addAction(
/**
* The action to add
*/
action: Action
): this;
/**
* Adds a column to the table.
*
* @since 1.145.0
* @experimental As of version 1.145.0.
*
* @returns Reference to this to allow method chaining
*/
addColumn(
/**
* The column to add
*/
column: Column
): this;
/**
* Adds a message to the table.
* The message applies to the whole table and not to an individual table row.
*
*
*
* @returns Promise The ID of the message
*/
addMessage(
/**
* The parameters to create the message
*/
parameters: {
/**
* Message description
*/
description?: string;
/**
* Message text
*/
message?: string;
/**
* True if the message is persistent
*/
persistent?: boolean;
/**
* Message type
*/
type?: /* was: sap.ui.core.message.MessageType */ any;
}
): Promise;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachBeforeRebindTable(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Table$BeforeRebindTableEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachBeforeRebindTable(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Table$BeforeRebindTableEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachRowPress(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachRowPress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachSelectionChange(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachSelectionChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Clears the selection.
*
* @since 1.142.0
*/
clearSelection(): void;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
detachBeforeRebindTable(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Table$BeforeRebindTableEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
detachRowPress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
detachSelectionChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event beforeRebindTable
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
fireBeforeRebindTable(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler> }
* for the set of parameters that are expected by the event handlers.
*/
mParameters?: Table$BeforeRebindTableEventParameters
): this;
/**
* Fires event rowPress to attached
* listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
fireRowPress(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler> }
* for the set of parameters that are expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Fires event selectionChange
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
fireSelectionChange(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler>} for the set of parameters that
* are expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Returns all contexts that are loaded in the table.
* See also the {@link sap.ui.model.odata.v4.ODataListBinding#getAllCurrentContexts } method.
*
*
* @since 1.142.0
*
* @returns All contexts of the table's list binding, or undefined if the table data is not yet loaded.
*/
getAllCurrentContexts(): Context[] | undefined;
/**
* Get the count of the row binding of the table.
*
*
* @returns The count of the row binding
*/
getCount(): number | undefined;
/**
* Get the variant management applied to the table.
*
*
* @returns Key of the currently selected variant. In case the model is not yet set, `null` will be returned.
*/
getCurrentVariantKey(): null | string;
/**
* Get the fields that should be ignored when generating the table.
*
* @since 1.124.0
* @experimental As of version 1.124.0.
*
* @returns The value of the ignoredFields property
*/
getIgnoredFields(): string;
/**
* Get the presentation variant that is currently applied on the table.
*
*
* @returns The presentation variant applied to the table
*/
getPresentationVariant(): Promise;
/**
* Gets contexts from the table that have been selected by the user.
*
*
* @returns Contexts of the rows selected by the user
*/
getSelectedContexts(): Context[];
/**
* Get the selection variant from the table. This function considers only the selection variant applied
* at the control level.
*
*
* @returns A promise which resolves with {@link sap.fe.navigation.SelectionVariant}
*/
getSelectionVariant(): Promise;
/**
* Hide the columns with the given column keys by setting their availability to Default.
*
* @since 1.124.0
* @experimental As of version 1.124.0.
*
* @returns Promise
*/
hideColumns(
/**
* The keys for the columns to hide
*/
columnKeys: string[]
): Promise;
/**
* Requests a refresh of the table.
*/
refresh(): void;
/**
* Removes an action from the table.
*
* @since 1.145.0
* @experimental As of version 1.145.0.
*
* @returns The removed action or null
*/
removeAction(
/**
* The action to remove, or its index or ID
*/
action: number | Action | string
): null | Action;
/**
* Removes a column from the table.
*
* @since 1.145.0
* @experimental As of version 1.145.0.
*
* @returns The removed column or null
*/
removeColumn(
/**
* The column to remove, or its index or ID
*/
column: number | Column | string
): null | Column;
/**
* Removes a message from the table.
*/
removeMessage(
/**
* The id of the message
*/
id: string
): void;
/**
* Set a variant management to the table.
*/
setCurrentVariantKey(
/**
* Key of the variant that should be selected. If the passed key doesn't identify a variant, it will be
* ignored.
*/
key: string
): void;
/**
* Sets the fields that should be ignored when generating the table.
*
* @since 1.124.0
* @experimental As of version 1.124.0.
*
* @returns Reference to this to allow method chaining
*/
setIgnoredFields(
/**
* The fields to ignore
*/
ignoredFields: string
): this;
/**
* Set a new presentation variant to the table.
*/
setPresentationVariant(
/**
* The new presentation variant that is to be set on the table.
*/
tablePV: PresentationVariant
): Promise;
/**
* Sets {@link sap.fe.navigation.SelectionVariant } to the table. Note: setSelectionVariant will clear existing
* filters and then apply the SelectionVariant values.
*
*
* @returns A promise for asynchronous handling
*/
setSelectionVariant(
/**
* The {@link sap.fe.navigation.SelectionVariant} to apply to the table
*/
selectionVariant: SelectionVariant,
/**
* Optional. If true, we will use the associated text property values (if they're available in the SelectionVariant)
* to display the filter value descriptions, instead of loading them from the backend
*/
prefillDescriptions?: boolean
): Promise;
/**
* Show the columns with the given column keys by setting their availability to Default.
*
* @since 1.124.0
* @experimental As of version 1.124.0.
*
* @returns Promise
*/
showColumns(
/**
* The keys for the columns to show
*/
columnKeys: string[]
): Promise;
}
/**
* Describes the settings that can be provided to the Table constructor.
*/
export interface $TableSettings extends $MacroAPISettings {
/**
* An expression that allows you to control the 'busy' state of the table.
*/
busy?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Determines whether the table adapts to the condensed layout.
*/
condensedTableLayout?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines the path of the context used in the current page or block.
* This setting is defined by the framework.
*/
contextPath?: string | PropertyBindingInfo;
/**
* Determines whether the number of fixed columns can be configured in the Column Settings dialog.
* This property doesn't apply for responsive tables
*/
disableColumnFreeze?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Controls if the copy functionality of the table is disabled or not.
*/
disableCopyToClipboard?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Specifies if the column width is automatically calculated.
*/
enableAutoColumnWidth?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Controls if the export functionality of the table is enabled or not.
*/
enableExport?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Controls whether the table can be opened in full-screen mode or not.
*/
enableFullScreen?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Controls if the paste functionality of the table is enabled or not.
*/
enablePaste?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Determine whether the data copied to the computed columns is sent to the back end.
*/
enablePastingOfComputedProperties?:
| boolean
| PropertyBindingInfo
| `{${string}}`;
/**
* Determines whether the Clear All button is enabled by default.
* To enable the Clear All button by default, you must set this property to false.
*/
enableSelectAll?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Configures the file name of exported table.
* It's limited to 31 characters. If the name is longer, it is truncated.
*/
exportFileName?: string | PropertyBindingInfo;
/**
* Maximum allowed number of records to be exported in one request.
*/
exportRequestSize?: int | PropertyBindingInfo | `{${string}}`;
/**
* Configures the sheet name of exported table.
* It's limited to 31 characters. If the name is longer, it is truncated.
*/
exportSheetName?: string | PropertyBindingInfo;
/**
* ID of the FilterBar building block associated with the table.
*/
filterBar?: string | PropertyBindingInfo;
/**
* Number of columns that are fixed on the left. Only columns which are not fixed can be scrolled horizontally.
* This property is not relevant for responsive tables
*/
frozenColumnCount?: int | PropertyBindingInfo | `{${string}}`;
/**
* Specifies the header text that is shown in the table.
*/
header?: string | PropertyBindingInfo;
/**
* Controls if the header text should be shown or not.
*/
headerVisible?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Comma-separated value of fields that must be ignored in the OData metadata by the Table building block.
*
* The table building block is not going to create built-in columns or offer table personalization for comma-separated
* value of fields that are provided in the ignoredfields.
*
* Any column referencing an ignored field is to be removed.
*/
ignoredFields?: string | PropertyBindingInfo;
/**
* Indicates if the table should load data when initialized.
* This property is used only if a filter bar is associated with the table and doesn't use the liveMode.
* If set to `true`, the table loads data on initialization if the filter bar has no mandatory filters or
* the mandatory filters are filled in.
* If set to `false`, the table waits for the filter bar to be filled in before loading data.
* The default value is `false`.
*/
initialLoad?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines whether to display the search action.
*/
isSearchable?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines the relative path to a LineItem, PresentationVariant, or SelectionPresentationVariant in the
* metamodel, based on the current contextPath.
*/
metaPath?: string | PropertyBindingInfo;
/**
* Changes the size of the IllustratedMessage in the table, or removes it completely.
* Allowed values are `illustratedMessage-Auto`, `illustratedMessage-Base`, `illustratedMessage-Dialog`,
* `illustratedMessage-Dot`, `illustratedMessage-Scene`, `illustratedMessage-Spot` or `text`.
*/
modeForNoDataMessage?: string | PropertyBindingInfo;
/**
* Controls which options should be enabled for the table personalization dialog.
* If it is set to `true`, all possible options for this kind of table are enabled.
*
* If it is set to `false`, personalization is disabled.
*
*
*
* You can also provide a more granular control for the personalization by providing a comma-separated list
* with the options you want to be available.
*
* Available options are:
*
* - Sort
*
* - Column
*
* - Filter
*
* - Group
*
*
*
* The Group option is only applicable to analytical tables and responsive tables.
*/
personalization?: string | PropertyBindingInfo;
/**
* Defines the layout options of the table popins. Only applies to responsive tables.
* Allowed values are `Block`, `GridLarge`, and `GridSmall`.
*
* - `Block`: Sets a block layout for rendering the table popins. The elements inside the popin container
* are rendered one below the other.
*
* - `GridLarge`: Sets a grid layout for rendering the table popins. The grid width for each table popin
* is comparatively larger than GridSmall, so this layout allows less content to be rendered in a single
* popin row.
*
* - `GridSmall`: Sets a grid layout for rendering the table popins. The grid width for each table popin
* is small, so this layout allows more content to be rendered in a single popin row.
*/
popinLayout?: string | PropertyBindingInfo;
/**
* An expression that allows you to control the 'read-only' state of the table.
* If you do not set any expression, SAP Fiori elements hooks into the standard lifecycle to determine the
* current state.
*/
readOnly?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Number of rows to be displayed in the table. Does not apply to responsive tables.
*/
rowCount?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines how the table handles the visible rows. Does not apply to responsive tables.
* Allowed values are `Auto`, `Fixed`, and `Interactive`.
*
* - If set to `Fixed`, the table always has as many rows as defined in the rowCount property.
*
* - If set to `Auto`, the number of rows is changed by the table automatically. The table adjusts the number
* of rows based on the available space, which is limited by the surrounding container. The table cannot
* have fewer rows than defined in the `rowCount` property.
*
* - If set to `Interactive` the table can have as many rows as defined in the rowCount property. The number
* of rows can be modified by dragging the resizer.
*/
rowCountMode?: string | PropertyBindingInfo;
/**
* Defines how many additional data records are requested from the back-end system when the user scrolls
* vertically in the table.
*/
scrollThreshold?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines the maximum number of rows that can be selected at once in the table.
* This property does not apply to responsive tables.
*/
selectionLimit?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines the selection mode to be used by the table.
* Allowed values are `None`, `Single`, `ForceSingle`, `Multi`, `ForceMulti`, or `Auto`.
* If set to `Single`, `Multi`, or `Auto`, SAP Fiori elements hooks into the standard lifecycle to determine
* a consistent selection mode.
* If set to `ForceSingle` or `ForceMulti`, note this may not adhere to the SAP Fiori guidelines.
*/
selectionMode?: string | PropertyBindingInfo;
/**
* Defines the number of records to be initially requested from the back end.
*/
threshold?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines the type of table that is used by the building block to render data.
* Allowed values are `GridTable`, `ResponsiveTable`, and `AnalyticalTable`.
*/
type?: string | PropertyBindingInfo;
/**
* Controls the kind of variant management that should be enabled for the table.
* Allowed value is `Control`.
*
* If set with value `Control`, a variant management control is seen within the table and the table is linked
* to this.
*
* If not set with any value, control level variant management is not available for this table.
*/
variantManagement?: string | PropertyBindingInfo;
/**
* Indicates if the column header should be a part of the width calculation.
*/
widthIncludingColumnHeader?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Aggregate overflowGroups of the table.
*/
actionOverflowGroups?:
| OverflowGroup[]
| OverflowGroup
| AggregationBindingInfo
| `{${string}}`;
/**
* Aggregate actions of the table.
*/
actions?:
| ITableActionOrGroup[]
| ITableActionOrGroup
| AggregationBindingInfo
| `{${string}}`;
/**
* A set of options that can be configured to control the aggregation behavior
*/
analyticalConfiguration?: AnalyticalConfiguration;
/**
* Aggregate columns of the table.
*/
columns?:
| ITableColumn[]
| ITableColumn
| AggregationBindingInfo
| `{${string}}`;
/**
* A set of options that can be configured.
*/
creationMode?: TableCreationOptions;
/**
* Aggregate mass edit of the table.
*/
massEdit?: MassEdit;
/**
* Aggregation to forward the IllustratedMessage control to the mdc control.
*/
noData?: Text | IllustratedMessage | PropertyBindingInfo | `{${string}}`;
/**
* Aggregate quickVariantSelection of the table.
*/
quickVariantSelection?: QuickVariantSelection;
/**
* Before a table rebind, an event is triggered that contains information about the binding.
* The event contains a parameter, `collectionBindingInfo`, which is an instance of `CollectionBindingInfoAPI`.
* It can also contain an optional parameter, `quickFilterKey`, which indicates what is the quick filter
* key (if any) being processed for the table.
* This allows you to manipulate the table's list binding.
* You can use this event to attach event handlers to the table's list binding.
* You can use this event to add selects, and add or read the sorters and filters.
*/
beforeRebindTable?: (oEvent: Table$BeforeRebindTableEvent) => void;
/**
* An event is triggered when the user chooses a row. The event contains information about which row is
* chosen.
* You can set this to handle the navigation manually.
*/
rowPress?: (oEvent: Event) => void;
/**
* An event triggered when the selection in the table changes.
*/
selectionChange?: (oEvent: Event) => void;
}
/**
* Parameters of the Table#beforeRebindTable event.
*/
export interface Table$BeforeRebindTableEventParameters {
collectionBindingInfo?: CollectionBindingInfo;
quickFilterKey?: string;
}
/**
* Event object of the Table#beforeRebindTable event.
*/
export type Table$BeforeRebindTableEvent = Event<
Table$BeforeRebindTableEventParameters,
Table
>;
/**
* Parameters of the Table#rowPress event.
*/
export interface Table$RowPressEventParameters {}
/**
* Event object of the Table#rowPress event.
*/
export type Table$RowPressEvent = Event;
/**
* Parameters of the Table#selectionChange event.
*/
export interface Table$SelectionChangeEventParameters {}
/**
* Event object of the Table#selectionChange event.
*/
export type Table$SelectionChangeEvent = Event<
Table$SelectionChangeEventParameters,
Table
>;
}
declare module "sap/fe/macros/TreeTable" {
import {
default as MacroAPI,
$MacroAPISettings,
} from "sap/fe/macros/MacroAPI";
import Action from "sap/fe/macros/table/Action";
import Column from "sap/fe/macros/table/Column";
import Event from "sap/ui/base/Event";
import Context from "sap/ui/model/odata/v4/Context";
import PresentationVariant from "sap/fe/navigation/PresentationVariant";
import SelectionVariant from "sap/fe/navigation/SelectionVariant";
import {
PropertyBindingInfo,
AggregationBindingInfo,
} from "sap/ui/base/ManagedObject";
import OverflowGroup from "sap/fe/macros/table/OverflowGroups";
import { ITableActionOrGroup } from "sap/fe/macros/table/ITableActionOrGroup";
import AnalyticalConfiguration from "sap/fe/macros/table/AnalyticalConfiguration";
import { ITableColumn } from "sap/fe/macros/table/ITableColumn";
import TreeTableCreationOptions from "sap/fe/macros/table/TreeTableCreationOptions";
import MassEdit from "sap/fe/macros/table/MassEdit";
import Text from "sap/m/Text";
import IllustratedMessage from "sap/m/IllustratedMessage";
import QuickVariantSelection from "sap/fe/macros/table/QuickVariantSelection";
import CollectionBindingInfo from "sap/fe/macros/CollectionBindingInfo";
/**
* Building block used to create a tree table based on the metadata provided by OData V4.
* {@link demo:sap/fe/core/fpmExplorer/index.html#/buildingBlocks/table/treeTable Overview of Tree Table Building Block}
*/
export default class TreeTable extends MacroAPI {
/**
* Adds an action to the table.
*
* @since 1.145.0
* @experimental As of version 1.145.0.
*
* @returns Reference to this to allow method chaining
*/
addAction(
/**
* The action to add
*/
action: Action
): this;
/**
* Adds a column to the table.
*
* @since 1.145.0
* @experimental As of version 1.145.0.
*
* @returns Reference to this to allow method chaining
*/
addColumn(
/**
* The column to add
*/
column: Column
): this;
/**
* Adds a message to the table.
* The message applies to the whole table and not to an individual table row.
*
*
*
* @returns Promise The ID of the message
*/
addMessage(
/**
* The parameters to create the message
*/
parameters: {
/**
* Message description
*/
description?: string;
/**
* Message text
*/
message?: string;
/**
* True if the message is persistent
*/
persistent?: boolean;
/**
* Message type
*/
type?: /* was: sap.ui.core.message.MessageType */ any;
}
): Promise;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachBeforeRebindTable(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: TreeTable$BeforeRebindTableEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachBeforeRebindTable(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: TreeTable$BeforeRebindTableEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachRowPress(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachRowPress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachSelectionChange(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachSelectionChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Clears the selection.
*
* @since 1.142.0
*/
clearSelection(): void;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
detachBeforeRebindTable(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: TreeTable$BeforeRebindTableEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
detachRowPress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
detachSelectionChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event beforeRebindTable
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
fireBeforeRebindTable(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler> }
* for the set of parameters that are expected by the event handlers.
*/
mParameters?: TreeTable$BeforeRebindTableEventParameters
): this;
/**
* Fires event rowPress to attached
* listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
fireRowPress(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler> }
* for the set of parameters that are expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Fires event selectionChange
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
fireSelectionChange(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler>} for the set of parameters that
* are expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Returns all contexts that are loaded in the table.
* See also the {@link sap.ui.model.odata.v4.ODataListBinding#getAllCurrentContexts } method.
*
*
* @since 1.142.0
*
* @returns All contexts of the table's list binding, or undefined if the table data is not yet loaded.
*/
getAllCurrentContexts(): Context[] | undefined;
/**
* Get the count of the row binding of the table.
*
*
* @returns The count of the row binding
*/
getCount(): number | undefined;
/**
* Get the variant management applied to the table.
*
*
* @returns Key of the currently selected variant. In case the model is not yet set, `null` will be returned.
*/
getCurrentVariantKey(): null | string;
/**
* Get the fields that should be ignored when generating the table.
*
* @since 1.124.0
* @experimental As of version 1.124.0.
*
* @returns The value of the ignoredFields property
*/
getIgnoredFields(): string;
/**
* Get the presentation variant that is currently applied on the table.
*
*
* @returns The presentation variant applied to the table
*/
getPresentationVariant(): Promise;
/**
* Gets contexts from the table that have been selected by the user.
*
*
* @returns Contexts of the rows selected by the user
*/
getSelectedContexts(): Context[];
/**
* Get the selection variant from the table. This function considers only the selection variant applied
* at the control level.
*
*
* @returns A promise which resolves with {@link sap.fe.navigation.SelectionVariant}
*/
getSelectionVariant(): Promise;
/**
* Hide the columns with the given column keys by setting their availability to Default.
*
* @since 1.124.0
* @experimental As of version 1.124.0.
*
* @returns Promise
*/
hideColumns(
/**
* The keys for the columns to hide
*/
columnKeys: string[]
): Promise;
/**
* Requests a refresh of the table.
*/
refresh(): void;
/**
* Removes an action from the table.
*
* @since 1.145.0
* @experimental As of version 1.145.0.
*
* @returns The removed action or null
*/
removeAction(
/**
* The action to remove, or its index or ID
*/
action: number | Action | string
): null | Action;
/**
* Removes a column from the table.
*
* @since 1.145.0
* @experimental As of version 1.145.0.
*
* @returns The removed column or null
*/
removeColumn(
/**
* The column to remove, or its index or ID
*/
column: number | Column | string
): null | Column;
/**
* Removes a message from the table.
*/
removeMessage(
/**
* The id of the message
*/
id: string
): void;
/**
* Set a variant management to the table.
*/
setCurrentVariantKey(
/**
* Key of the variant that should be selected. If the passed key doesn't identify a variant, it will be
* ignored.
*/
key: string
): void;
/**
* Sets the fields that should be ignored when generating the table.
*
* @since 1.124.0
* @experimental As of version 1.124.0.
*
* @returns Reference to this to allow method chaining
*/
setIgnoredFields(
/**
* The fields to ignore
*/
ignoredFields: string
): this;
/**
* Set a new presentation variant to the table.
*/
setPresentationVariant(
/**
* The new presentation variant that is to be set on the table.
*/
tablePV: PresentationVariant
): Promise;
/**
* Sets {@link sap.fe.navigation.SelectionVariant } to the table. Note: setSelectionVariant will clear existing
* filters and then apply the SelectionVariant values.
*
*
* @returns A promise for asynchronous handling
*/
setSelectionVariant(
/**
* The {@link sap.fe.navigation.SelectionVariant} to apply to the table
*/
selectionVariant: SelectionVariant,
/**
* Optional. If true, we will use the associated text property values (if they're available in the SelectionVariant)
* to display the filter value descriptions, instead of loading them from the backend
*/
prefillDescriptions?: boolean
): Promise;
/**
* Show the columns with the given column keys by setting their availability to Default.
*
* @since 1.124.0
* @experimental As of version 1.124.0.
*
* @returns Promise
*/
showColumns(
/**
* The keys for the columns to show
*/
columnKeys: string[]
): Promise;
}
/**
* Describes the settings that can be provided to the TreeTable constructor.
*/
export interface $TreeTableSettings extends $MacroAPISettings {
/**
* An expression that allows you to control the 'busy' state of the table.
*/
busy?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Determines whether the table adapts to the condensed layout.
*/
condensedTableLayout?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines the path of the context used in the current page or block.
* This setting is defined by the framework.
*/
contextPath?: string | PropertyBindingInfo;
/**
* Determines whether the number of fixed columns can be configured in the Column Settings dialog.
* This property doesn't apply for responsive tables
*/
disableColumnFreeze?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Controls if the copy functionality of the table is disabled or not.
*/
disableCopyToClipboard?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Specifies if the column width is automatically calculated.
*/
enableAutoColumnWidth?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Controls if the export functionality of the table is enabled or not.
*/
enableExport?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Controls whether the table can be opened in full-screen mode or not.
*/
enableFullScreen?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Controls if the paste functionality of the table is enabled or not.
*/
enablePaste?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Determine whether the data copied to the computed columns is sent to the back end.
*/
enablePastingOfComputedProperties?:
| boolean
| PropertyBindingInfo
| `{${string}}`;
/**
* Determines whether the Clear All button is enabled by default.
* To enable the Clear All button by default, you must set this property to false.
*/
enableSelectAll?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Configures the file name of exported table.
* It's limited to 31 characters. If the name is longer, it is truncated.
*/
exportFileName?: string | PropertyBindingInfo;
/**
* Maximum allowed number of records to be exported in one request.
*/
exportRequestSize?: int | PropertyBindingInfo | `{${string}}`;
/**
* Configures the sheet name of exported table.
* It's limited to 31 characters. If the name is longer, it is truncated.
*/
exportSheetName?: string | PropertyBindingInfo;
/**
* ID of the FilterBar building block associated with the table.
*/
filterBar?: string | PropertyBindingInfo;
/**
* Number of columns that are fixed on the left. Only columns which are not fixed can be scrolled horizontally.
* This property is not relevant for responsive tables
*/
frozenColumnCount?: int | PropertyBindingInfo | `{${string}}`;
/**
* Specifies the header text that is shown in the table.
*/
header?: string | PropertyBindingInfo;
/**
* Controls if the header text should be shown or not.
*/
headerVisible?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* The hierarchy qualifier used in the RecursiveHierarchy annotation.
*/
hierarchyQualifier?: string | PropertyBindingInfo;
/**
* Comma-separated value of fields that must be ignored in the OData metadata by the Table building block.
*
* The table building block is not going to create built-in columns or offer table personalization for comma-separated
* value of fields that are provided in the ignoredfields.
*
* Any column referencing an ignored field is to be removed.
*/
ignoredFields?: string | PropertyBindingInfo;
/**
* Indicates if the table should load data when initialized.
* This property is used only if a filter bar is associated with the table and doesn't use the liveMode.
* If set to `true`, the table loads data on initialization if the filter bar has no mandatory filters or
* the mandatory filters are filled in.
* If set to `false`, the table waits for the filter bar to be filled in before loading data.
* The default value is `false`.
*/
initialLoad?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines the extension point to control whether a source node can be copied to a specific parent node.
*/
isCopyToPositionAllowed?: string | PropertyBindingInfo;
/**
* Defines the extension point to control whether a source node can be dropped on a specific parent node.
*/
isMoveToPositionAllowed?: string | PropertyBindingInfo;
/**
* Defines the extension point to control whether a node can be copied.
*/
isNodeCopyable?: string | PropertyBindingInfo;
/**
* Defines the extension point to control if a node can be dragged.
*/
isNodeMovable?: string | PropertyBindingInfo;
/**
* Defines whether to display the search action.
*/
isSearchable?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines the relative path to a LineItem, PresentationVariant, or SelectionPresentationVariant in the
* metamodel, based on the current contextPath.
*/
metaPath?: string | PropertyBindingInfo;
/**
* Changes the size of the IllustratedMessage in the table, or removes it completely.
* Allowed values are `illustratedMessage-Auto`, `illustratedMessage-Base`, `illustratedMessage-Dialog`,
* `illustratedMessage-Dot`, `illustratedMessage-Scene`, `illustratedMessage-Spot` or `text`.
*/
modeForNoDataMessage?: string | PropertyBindingInfo;
/**
* Controls which options should be enabled for the table personalization dialog.
* If it is set to `true`, all possible options for this kind of table are enabled.
*
* If it is set to `false`, personalization is disabled.
*
*
*
* You can also provide a more granular control for the personalization by providing a comma-separated list
* with the options you want to be available.
*
* Available options are:
*
* - Sort
*
* - Column
*
* - Filter
*
* - Group
*
*
*
* The Group option is only applicable to analytical tables and responsive tables.
*/
personalization?: string | PropertyBindingInfo;
/**
* Defines the layout options of the table popins. Only applies to responsive tables.
* Allowed values are `Block`, `GridLarge`, and `GridSmall`.
*
* - `Block`: Sets a block layout for rendering the table popins. The elements inside the popin container
* are rendered one below the other.
*
* - `GridLarge`: Sets a grid layout for rendering the table popins. The grid width for each table popin
* is comparatively larger than GridSmall, so this layout allows less content to be rendered in a single
* popin row.
*
* - `GridSmall`: Sets a grid layout for rendering the table popins. The grid width for each table popin
* is small, so this layout allows more content to be rendered in a single popin row.
*/
popinLayout?: string | PropertyBindingInfo;
/**
* An expression that allows you to control the 'read-only' state of the table.
* If you do not set any expression, SAP Fiori elements hooks into the standard lifecycle to determine the
* current state.
*/
readOnly?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Number of rows to be displayed in the table. Does not apply to responsive tables.
*/
rowCount?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines how the table handles the visible rows. Does not apply to responsive tables.
* Allowed values are `Auto`, `Fixed`, and `Interactive`.
*
* - If set to `Fixed`, the table always has as many rows as defined in the rowCount property.
*
* - If set to `Auto`, the number of rows is changed by the table automatically. The table adjusts the number
* of rows based on the available space, which is limited by the surrounding container. The table cannot
* have fewer rows than defined in the `rowCount` property.
*
* - If set to `Interactive` the table can have as many rows as defined in the rowCount property. The number
* of rows can be modified by dragging the resizer.
*/
rowCountMode?: string | PropertyBindingInfo;
/**
* Defines how many additional data records are requested from the back-end system when the user scrolls
* vertically in the table.
*/
scrollThreshold?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines the maximum number of rows that can be selected at once in the table.
* This property does not apply to responsive tables.
*/
selectionLimit?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines the selection mode to be used by the table.
* Allowed values are `None`, `Single`, `ForceSingle`, `Multi`, `ForceMulti`, or `Auto`.
* If set to `Single`, `Multi`, or `Auto`, SAP Fiori elements hooks into the standard lifecycle to determine
* a consistent selection mode.
* If set to `ForceSingle` or `ForceMulti`, note this may not adhere to the SAP Fiori guidelines.
*/
selectionMode?: string | PropertyBindingInfo;
/**
* Defines the number of records to be initially requested from the back end.
*/
threshold?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines the type of table that will be used by the building block to render the data. This setting is
* defined by the framework.
* Allowed value is `TreeTable`.
*/
type?: string | PropertyBindingInfo;
/**
* Controls the kind of variant management that should be enabled for the table.
* Allowed value is `Control`.
*
* If set with value `Control`, a variant management control is seen within the table and the table is linked
* to this.
*
* If not set with any value, control level variant management is not available for this table.
*/
variantManagement?: string | PropertyBindingInfo;
/**
* Indicates if the column header should be a part of the width calculation.
*/
widthIncludingColumnHeader?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Aggregate overflowGroups of the table.
*/
actionOverflowGroups?:
| OverflowGroup[]
| OverflowGroup
| AggregationBindingInfo
| `{${string}}`;
/**
* Aggregate actions of the table.
*/
actions?:
| ITableActionOrGroup[]
| ITableActionOrGroup
| AggregationBindingInfo
| `{${string}}`;
/**
* A set of options that can be configured to control the aggregation behavior
*/
analyticalConfiguration?: AnalyticalConfiguration;
/**
* Aggregate columns of the table.
*/
columns?:
| ITableColumn[]
| ITableColumn
| AggregationBindingInfo
| `{${string}}`;
/**
* A set of options that can be configured.
*/
creationMode?: TreeTableCreationOptions;
/**
* Aggregate mass edit of the table.
*/
massEdit?: MassEdit;
/**
* Aggregation to forward the IllustratedMessage control to the mdc control.
*/
noData?: Text | IllustratedMessage | PropertyBindingInfo | `{${string}}`;
/**
* Aggregate quickVariantSelection of the table.
*/
quickVariantSelection?: QuickVariantSelection;
/**
* Before a table rebind, an event is triggered that contains information about the binding.
* The event contains a parameter, `collectionBindingInfo`, which is an instance of `CollectionBindingInfoAPI`.
* It can also contain an optional parameter, `quickFilterKey`, which indicates what is the quick filter
* key (if any) being processed for the table.
* This allows you to manipulate the table's list binding.
* You can use this event to attach event handlers to the table's list binding.
* You can use this event to add selects, and add or read the sorters and filters.
*/
beforeRebindTable?: (oEvent: TreeTable$BeforeRebindTableEvent) => void;
/**
* An event is triggered when the user chooses a row. The event contains information about which row is
* chosen.
* You can set this to handle the navigation manually.
*/
rowPress?: (oEvent: Event) => void;
/**
* An event triggered when the selection in the table changes.
*/
selectionChange?: (oEvent: Event) => void;
}
/**
* Parameters of the TreeTable#beforeRebindTable event.
*/
export interface TreeTable$BeforeRebindTableEventParameters {
collectionBindingInfo?: CollectionBindingInfo;
quickFilterKey?: string;
}
/**
* Event object of the TreeTable#beforeRebindTable event.
*/
export type TreeTable$BeforeRebindTableEvent = Event<
TreeTable$BeforeRebindTableEventParameters,
TreeTable
>;
/**
* Parameters of the TreeTable#rowPress event.
*/
export interface TreeTable$RowPressEventParameters {}
/**
* Event object of the TreeTable#rowPress event.
*/
export type TreeTable$RowPressEvent = Event<
TreeTable$RowPressEventParameters,
TreeTable
>;
/**
* Parameters of the TreeTable#selectionChange event.
*/
export interface TreeTable$SelectionChangeEventParameters {}
/**
* Event object of the TreeTable#selectionChange event.
*/
export type TreeTable$SelectionChangeEvent = Event<
TreeTable$SelectionChangeEventParameters,
TreeTable
>;
}
declare module "sap/fe/macros/VariantManagement" {
import {
default as BuildingBlock,
$BuildingBlockSettings,
} from "sap/fe/core/buildingBlocks/BuildingBlock";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
import Control from "sap/ui/core/Control";
/**
* Building block used to create a Variant Management based on the metadata provided by OData V4.
* Usage example:
*
* ```javascript
*
*
* ```
*
* {@link demo:sap/fe/core/fpmExplorer/index.html#/buildingBlocks/filterBar/filterBarVMWithTable Overview of Building Blocks}
*/
export default class VariantManagement extends BuildingBlock {}
/**
* Describes the settings that can be provided to the VariantManagement constructor.
*/
export interface $VariantManagementSettings extends $BuildingBlockSettings {
/**
* Header level for the variant management, determining its position or style.
*/
headerLevel?: string | PropertyBindingInfo;
/**
* Identifier for the variant management control.
*/
id?: any | PropertyBindingInfo | `{${string}}`;
/**
* Whether the "Set as Default" option is visible.
*/
showSetAsDefault?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* A list of control IDs to which the variant management is applied.
*/
for?: Control | string;
}
}
declare module "sap/fe/macros/chart/Action" {
import {
default as BaseAction,
$BaseActionSettings,
} from "sap/fe/macros/controls/BaseAction";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Definition of a custom action to be used in the chart toolbar
*/
export default class Action extends BaseAction {}
/**
* Describes the settings that can be provided to the Action constructor.
*/
export interface $ActionSettings extends $BaseActionSettings {
/**
* Event handler to be called when the user chooses the action
*/
press?: string | PropertyBindingInfo;
/**
* Defines if the action requires a selection.
*/
requiresSelection?: boolean | PropertyBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/chart/ActionGroup" {
import {
default as Action,
$ActionSettings,
} from "sap/fe/macros/chart/Action";
import {
PropertyBindingInfo,
AggregationBindingInfo,
} from "sap/ui/base/ManagedObject";
/**
* Definition of a custom action group to be used inside the chart toolbar
*/
export default class ActionGroup extends Action {}
/**
* Describes the settings that can be provided to the ActionGroup constructor.
*/
export interface $ActionGroupSettings extends $ActionSettings {
/**
* Reference to the key of another action or action group already displayed in the toolbar to properly place
* this one
*/
anchor?: string | PropertyBindingInfo;
/**
* Unique identifier of the action
*/
key?: string | PropertyBindingInfo;
/**
* Defines the overflow group of the action in the overflow toolbar.
*/
overflowGroup?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines where this action group should be placed relative to the defined anchor
* Allowed values are `Before` and `After`
*/
placement?: string | PropertyBindingInfo;
/**
* The text that will be displayed for this action group
*/
text?: string | PropertyBindingInfo;
/**
* Defines nested actions
*/
actions?: Action[] | Action | AggregationBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/chart/Chart" {
import { default as Control, $ControlSettings } from "sap/ui/core/Control";
import PresentationVariant from "sap/fe/navigation/PresentationVariant";
import Context from "sap/ui/model/odata/v4/Context";
import SelectionVariant from "sap/fe/navigation/SelectionVariant";
import {
PropertyBindingInfo,
AggregationBindingInfo,
} from "sap/ui/base/ManagedObject";
import OverflowGroup from "sap/fe/macros/chart/OverflowGroup";
import ActionGroup from "sap/fe/macros/chart/ActionGroup";
import Action from "sap/fe/macros/chart/Action";
import Event from "sap/ui/base/Event";
/**
* Building block used to create a chart based on the metadata provided by OData V4.
*
*
* Usually, a contextPath and metaPath is expected.
* Usage example:
*
* ```javascript
*
* sap.ui.require(["sap/fe/macros/chart/Chart"], function(Chart) {
* ...
* new Chart("myChart", {metaPath:"MyChart"})
* })
* ```
*
* This is currently an experimental API because the structure of the generated content will change to come
* closer to the Chart that you get out of templates.
* The public method and property will not change but the internal structure will so be careful on your
* usage.
*
*
* @deprecated As of version 1.130. Use {@link sap.fe.macros.Chart} instead
* @experimental As of version 1.124.
*/
export default class Chart extends Control {
/**
*
* @returns Reference to sap.fe.macros.Chart to allow
* method chaining
*/
attachSelectionChange(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Chart$SelectionChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Chart to allow
* method chaining
*/
attachSelectionChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Chart$SelectionChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Chart to allow
* method chaining
*/
detachSelectionChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Chart$SelectionChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event selectionChange
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Chart to allow
* method chaining
*/
fireSelectionChange(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler>} for the
* set of parameters that are expected by the event handlers.
*/
mParameters?: Chart$SelectionChangeEventParameters
): this;
/**
* Gets current value of property contextPath.
*
*
* @returns Value of property `contextPath`
*/
getContextPath(): string;
/**
* Gets the key of the current variant in the associated variant management.
*
*
* @returns Variant key of {@link sap.ui.fl.variants.VariantManagement} applied to the chart
*/
getCurrentVariantKey(): null | string;
/**
* Gets current value of property header.
*
*
* @returns Value of property `header`
*/
getHeader(): string;
/**
* Gets current value of property headerVisible.
*
*
* @returns Value of property `headerVisible`
*/
getHeaderVisible(): boolean;
/**
* Gets current value of property metaPath.
*
*
* @returns Value of property `metaPath`
*/
getMetaPath(): string;
/**
* Gets current value of property personalization.
*
*
* @returns Value of property `personalization`
*/
getPersonalization(): string;
/**
* Get the presentation variant that is currently applied on the chart.
*
*
* @returns The presentation variant {@link sap.fe.navigation.PresentationVariant} applied to the chart
*/
getPresentationVariant(): Promise;
/**
* Gets contexts from the chart that have been selected by the user.
*
*
* @returns Contexts of the rows selected by the user
*/
getSelectedContexts(): Context[];
/**
* Gets current value of property selectionMode.
*
*
* @returns Value of property `selectionMode`
*/
getSelectionMode(): string;
/**
* Get the selection variant from the chart. This function considers only the selection variant applied
* at the control level.
*
*
* @returns A promise that resolves with {@link sap.fe.navigation.SelectionVariant}.
*/
getSelectionVariant(): Promise;
/**
* Gets current value of property variantManagement.
*
*
* @returns Value of property `variantManagement`
*/
getVariantManagement(): string;
/**
* Gets current value of property contextPath.
*
*
* @returns Value of property `contextPath`
*/
setContextPath(): string;
/**
* Sets the variant of the provided key in the associated variant management.
*/
setCurrentVariantKey(
/**
* The variant key of {@link sap.ui.fl.variants.VariantManagement} to be set
*/
key: string
): void;
/**
* Gets current value of property header.
*
*
* @returns Value of property `header`
*/
setHeader(): string;
/**
* Gets current value of property headerVisible.
*
*
* @returns Value of property `headerVisible`
*/
setHeaderVisible(): boolean;
/**
* Gets current value of property metaPath.
*
*
* @returns Value of property `metaPath`
*/
setMetaPath(): string;
/**
* Gets current value of property personalization.
*
*
* @returns Value of property `personalization`
*/
setPersonalization(): string;
/**
* Set the presentation variant for the mdc chart.
* The json format retrieved by using the get PresentationVariant button in the linked FPM sample should
* be followed while trying to set the PresentationVariant as needed.
* The values dimensions, measures and other properties should also be given in the valid format and null
* or empty values should be avoided.
* One dimension attribute should have only one role associated with it on a given chart.
*/
setPresentationVariant(
/**
* the presentation variant {@link sap.fe.navigation.PresentationVariant} to be set
*/
presentationVariant: PresentationVariant
): Promise;
/**
* Gets current value of property selectionMode.
*
*
* @returns Value of property `selectionMode`
*/
setSelectionMode(): string;
/**
* Sets {@link sap.fe.navigation.SelectionVariant } to the chart. Note: setSelectionVariant will clear existing
* filters and then apply the SelectionVariant values.
*
*
* @returns A promise for asynchronous handling
*/
setSelectionVariant(
/**
* The {@link sap.fe.navigation.SelectionVariant} to apply to the chart
*/
selectionVariant: SelectionVariant,
/**
* Optional. If true, we will use the associated text property values (if they're available in the SelectionVariant)
* to display the filter value descriptions, instead of loading them from the backend
*/
prefillDescriptions?: boolean
): Promise;
/**
* Gets current value of property variantManagement.
*
*
* @returns Value of property `variantManagement`
*/
setVariantManagement(): string;
}
/**
* Describes the settings that can be provided to the Chart constructor.
*
* @deprecated As of version 1.130. Use {@link sap.fe.macros.Chart} instead
* @experimental As of version 1.124.
*/
export interface $ChartSettings extends $ControlSettings {
/**
* Metadata path to the entitySet or navigationProperty
*/
contextPath?: string | PropertyBindingInfo;
/**
* Specifies the header text that is shown in the chart
*/
header?: string | PropertyBindingInfo;
/**
* Controls if the header text should be shown or not
*/
headerVisible?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Metadata path to the presentation context (UI.Chart with or without a qualifier)
*/
metaPath?: string | PropertyBindingInfo;
/**
* Controls which options should be enabled for the chart personalization dialog.
* If it is set to `true`, all possible options for this kind of chart are enabled.
*
* If it is set to `false`, personalization is disabled.
*
*
*
* You can also provide a more granular control for the personalization by providing a comma-separated list
* with the options you want to be available.
*
* Available options are:
*
* - Sort
*
* - Type
*
* - Item
*
* - Filter
*/
personalization?: string | PropertyBindingInfo;
/**
* Defines the selection mode to be used by the chart.
* Allowed values are `None`, `Single` or `Multiple`
*/
selectionMode?: string | PropertyBindingInfo;
/**
* Controls the kind of variant management that should be enabled for the chart.
* Allowed value is `Control`.
*
* If set with value `Control`, a variant management control is seen within the chart and the chart is linked
* to this.
*
* If not set with any value, variant management control is not available for this chart.
*/
variantManagement?: string | PropertyBindingInfo;
/**
* Aggregate overflowGroups of the chart.
*/
actionOverflowGroups?:
| OverflowGroup[]
| OverflowGroup
| AggregationBindingInfo
| `{${string}}`;
/**
* Aggregate actions of the chart.
*/
actions?:
| Array
| ActionGroup
| Action
| AggregationBindingInfo
| `{${string}}`;
/**
* ID of the FilterBar building block associated with the chart.
*/
filterBar?: Control | string;
/**
* An event triggered when chart selections are changed. The event contains information about the data selected/deselected
* and the Boolean flag that indicates whether data is selected or deselected.
*/
selectionChange?: (oEvent: Chart$SelectionChangeEvent) => void;
}
/**
* Parameters of the Chart#selectionChange event.
*/
export interface Chart$SelectionChangeEventParameters {
data?: any[];
selected?: boolean;
}
/**
* Event object of the Chart#selectionChange event.
*/
export type Chart$SelectionChangeEvent = Event<
Chart$SelectionChangeEventParameters,
Chart
>;
}
declare module "sap/fe/macros/chart/OverflowGroup" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Definition of an overflow group to be used in the chart toolbar
*/
export default class OverflowGroup extends BuildingBlockObjectProperty {}
/**
* Describes the settings that can be provided to the OverflowGroup constructor.
*/
export interface $OverflowGroupSettings
extends $BuildingBlockObjectPropertySettings {
/**
* Defines the group of the toolbar separator in the overflow toolbar.
*/
overflowGroup?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines if a toolbar separator should be displayed.
*/
showSeparator?: boolean | PropertyBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/controls/BaseAction" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Base class for Action building blocks used across different UI areas, such as Table and Chart.
* Contains common properties shared by all action types.
*/
export default class BaseAction
extends BuildingBlockObjectProperty
implements
/* was: sap.fe.core.converters.controls.Common.Action.BaseActionType */ Object
{
__implements__sap_fe_core_converters_controls_Common_Action_BaseActionType: boolean;
}
/**
* Describes the settings that can be provided to the BaseAction constructor.
*/
export interface $BaseActionSettings
extends $BuildingBlockObjectPropertySettings {
/**
* Reference to the key of another action already displayed in the toolbar to properly place this one
*/
anchor?: string | PropertyBindingInfo;
/**
* Enables or disables the action
*/
enabled?: any | PropertyBindingInfo | `{${string}}`;
/**
* Defines the group of the action in the overflow toolbar.
*/
group?: int | PropertyBindingInfo | `{${string}}`;
/**
* Displays the AI Icon on the action button.
*/
isAIOperation?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Unique identifier of the action
*/
key?: string | PropertyBindingInfo;
/**
* Defines the overflow group of the action in the overflow toolbar.
* Takes precedence over the group property when defined.
*/
overflowGroup?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines where this action is placed relative to the defined anchor
* Allowed values are `Before` and `After`
*/
placement?: string | PropertyBindingInfo;
/**
* Defines the priority of the action in the overflow toolbar.
*/
priority?: string | PropertyBindingInfo;
/**
* Defines if the action requires a selection.
*/
requiresSelection?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* The text that is to be displayed for this action
*/
text?: any | PropertyBindingInfo | `{${string}}`;
/**
* Determines whether the action is visible.
*/
visible?: any | PropertyBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/controls/BuildingBlockObjectProperty" {
import {
default as BuildingBlockBase,
$BuildingBlockBaseSettings,
} from "sap/fe/base/BuildingBlockBase";
/**
* Base class for building block complex object properties that can be serialized to XML.
*/
export default class BuildingBlockObjectProperty extends BuildingBlockBase {}
/**
* Describes the settings that can be provided to the BuildingBlockObjectProperty constructor.
*/
export interface $BuildingBlockObjectPropertySettings
extends $BuildingBlockBaseSettings {}
}
declare module "sap/fe/macros/controls/BuildingBlockWithTemplating" {
import {
default as BuildingBlock,
$BuildingBlockSettings,
} from "sap/fe/core/buildingBlocks/BuildingBlock";
/**
* Using this class you can define a building block that will manage and render a templating based building
* block.
* On change of the main properties you will be able to recreate the content.
*
* @deprecated As of version 1.140.
* @experimental As of version 1.136.
*/
export default class BuildingBlockWithTemplating extends BuildingBlock {}
/**
* Describes the settings that can be provided to the BuildingBlockWithTemplating constructor.
*
* @deprecated As of version 1.140.
* @experimental As of version 1.136.
*/
export interface $BuildingBlockWithTemplatingSettings
extends $BuildingBlockSettings {}
}
declare module "sap/fe/macros/fcl/FlexibleColumnLayoutActions.block" {
import { default as Control, $ControlSettings } from "sap/ui/core/Control";
/**
* Building block for adding overflow toolbar buttons to integrate into the flexible column layout support
* from Fiori elements.
* Usage example:
*
* ```javascript
*
*
* ```
*
*
*
* @since 1.93.0
*/
export default class FlexibleColumnLayoutActions extends Control {}
/**
* Describes the settings that can be provided to the FlexibleColumnLayoutActions constructor.
*/
export interface $FlexibleColumnLayoutActionsSettings
extends $ControlSettings {}
}
declare module "sap/fe/macros/field/Field" {
import { default as Control, $ControlSettings } from "sap/ui/core/Control";
import Event from "sap/ui/base/Event";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
import FieldFormatOptions from "sap/fe/macros/field/FieldFormatOptions";
/**
* Building block for creating a field based on the metadata provided by OData V4.
*
*
* Usually, a DataField or DataPoint annotation is expected, but the field can also be used to display a
* property from the entity type.
* When creating a Field building block, you must provide an ID to ensure everything works correctly.
* Usage example:
*
* ```javascript
*
* sap.ui.require(["sap/fe/macros/field/Field"], function(Field) {
* ...
* new Field("MyField", {metaPath:"MyProperty"})
* })
* ```
*
* This is currently an experimental API because the structure of the generated content will change to come
* closer to the Field that you get out of templates.
* The public method and property will not change but the internal structure will so be careful on your
* usage.
*
*
* @deprecated As of version 1.135. Use {@link sap.fe.macros.Field} instead
* @experimental As of version 1.130.
*/
export default class Field extends Control {
/**
* Adds a validation message to the field.
* This method creates a new message and associates it with the field's binding path,
* making it visible in the field's value state and message popover.
*
*
* @returns The ID of the created message
*/
addMessage(
/**
* The message parameters
*/
parameters: {
/**
* Detailed message description
*/
description?: string;
/**
* Message text to display
*/
message?: string;
/**
* Whether the message persists across refreshes
*/
persistent?: boolean;
/**
* Type of the message, such as Error, Warning, Success, or Information
*/
type?: /* was: sap.ui.core.message.MessageType */ any;
}
): string;
/**
*
* @returns Reference to sap.fe.macros.Field to allow
* method chaining
*/
attachChange(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Field$ChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Field to allow
* method chaining
*/
attachChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Field$ChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Field to allow
* method chaining
*/
attachLiveChange(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Field to allow
* method chaining
*/
attachLiveChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Field to allow
* method chaining
*/
detachChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Field$ChangeEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Field to allow
* method chaining
*/
detachLiveChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event change to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Field to allow
* method chaining
*/
fireChange(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler> }
* for the set of parameters that are expected by the event handlers.
*/
mParameters?: Field$ChangeEventParameters
): this;
/**
* Fires event liveChange to attached
* listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Field to allow
* method chaining
*/
fireLiveChange(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler>} for the set of parameters
* that are expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Gets the current enabled state of the field.
* This method handles various control types and wrappers, returning true for controls
* that are always enabled, such as Text, and checking the enabled property for interactive controls.
*
*
* @returns Boolean value indicating if the field is enabled, or true if control is not found (graceful
* fallback)
*/
getEnabled(): boolean;
/**
* Gets the message manager instance from the UI5 core.
* The message manager is responsible for handling all messages in the application.
*
*
* @returns The Messaging instance
*/
getMessageManager(): /* was: sap.ui.core.Messaging */ any;
/**
* Gets the current value of the field.
* This method handles various control types including CheckBox, Input, Text, MDC Field,
* RatingIndicator, Link, Label, ObjectStatus, ObjectIdentifier, and building blocks.
*
*
* @returns The current value of the field or undefined if control is not found
*/
getValue(): boolean | number | string | undefined;
/**
* Removes a message from the field by its ID.
* This method finds the message in the message model and removes it,
* clearing it from the field's value state.
*/
removeMessage(
/**
* The ID of the message to remove
*/
id: string
): void;
/**
* Sets the current enabled state of the field.
* This method handles various control types, setting the appropriate property,
* such as enabled, active, titleActive, or edit mode based on the control type.
*
*
* @returns The current field reference for chaining
*/
setEnabled(
/**
* The enabled state to set
*/
enabled: boolean
): Control;
/**
* Sets the current value of the field.
* This method handles various control types including CheckBox, Input, Text, and MDC Field.
*
*
* @returns The current field reference for chaining
*/
setValue(
/**
* The value to set
*/
value: boolean | number | string
): Control;
}
/**
* Describes the settings that can be provided to the Field constructor.
*
* @deprecated As of version 1.135. Use {@link sap.fe.macros.Field} instead
* @experimental As of version 1.130.
*/
export interface $FieldSettings extends $ControlSettings {
/**
* Defines the path of the context used in the current page or block.
* This setting is defined by the framework.
*/
contextPath?: string | PropertyBindingInfo;
/**
* This is used to optionally provide an external description that comes from a different model than the
* oData model.
* This should be used in conjunction with the value property.
*/
description?: string | PropertyBindingInfo;
/**
* Defines the relative path of the property in the metamodel, based on the current contextPath.
*/
metaPath?: string | PropertyBindingInfo;
/**
* An expression that allows you to control the read-only state of the field.
* If you do not set any expression, SAP Fiori elements hooks into the standard lifecycle to determine the
* current state.
*/
readOnly?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Option to add semantic objects for a field.
* This parameter overwrites the semantic objects defined through annotations.
* Valid options are either a single semantic object, a stringified array of semantic objects,
* a formatter or a single binding expression returning either a single semantic object or an array of semantic
* objects.
*/
semanticObject?: string | PropertyBindingInfo;
/**
* This is used to optionally provide an external value that comes from a different model than the OData
* model.
* It is designed to work with a field with value help, and without support for complex value help (currency
* / unit).
*/
value?: string | PropertyBindingInfo;
/**
* A set of options that can be configured.
*/
formatOptions?: FieldFormatOptions;
/**
* An event containing details is triggered when the value of the field is changed.
*/
change?: (oEvent: Field$ChangeEvent) => void;
/**
* An event containing details is triggered when the value of the field is live changed.
* **Note:** Browsing autocomplete suggestions does not fire the event.
*/
liveChange?: (oEvent: Event) => void;
}
/**
* Parameters of the Field#change event.
*/
export interface Field$ChangeEventParameters {
value?: boolean | number | string | undefined;
isValid?: boolean;
}
/**
* Event object of the Field#change event.
*/
export type Field$ChangeEvent = Event;
/**
* Parameters of the Field#liveChange event.
*/
export interface Field$LiveChangeEventParameters {}
/**
* Event object of the Field#liveChange event.
*/
export type Field$LiveChangeEvent = Event<
Field$LiveChangeEventParameters,
Field
>;
}
declare module "sap/fe/macros/field/FieldFormatOptions" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Additional format options for the field.
*/
export default class FieldFormatOptions extends BuildingBlockObjectProperty {}
/**
* Describes the settings that can be provided to the FieldFormatOptions constructor.
*/
export interface $FieldFormatOptionsSettings
extends $BuildingBlockObjectPropertySettings {
/**
* Property for defining a custom pattern for the date, time, or dateTime format.
*
* If a dateTimePattern is defined, the dateTimeStyle is ignored.
*/
dateTimePattern?: string | PropertyBindingInfo;
/**
* Property for defining the display style for the date, time, or dateTime format.
*
* If there is a dateTimePattern defined, dateTimeStyle is ignored.
*/
dateTimeStyle?: string | PropertyBindingInfo;
/**
* Defines how the field value and associated text will be displayed together.
*
* Allowed values are "Value", "Description", "DescriptionValue" and "ValueDescription"
*/
displayMode?: string | PropertyBindingInfo;
/**
* Property for defining if the avatar image can be enlarged.
*/
enableEnlargeImage?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Determines how the field should be rendered, e.g. as radio buttons.
*
* If not all prerequisites are met, the field will default back to the standard rendering.
*/
fieldEditStyle?: string | PropertyBindingInfo;
/**
* Indicates whether the field has a situations indicator.
*/
hasSituationsIndicator?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Property for defining how the avatar image fits within the given dimensions.
*/
imageFitType?: string | PropertyBindingInfo;
/**
* Defines if and how the field measure will be displayed.
*
* Allowed values are "Hidden" and "ReadOnly"
*/
measureDisplayMode?: string | PropertyBindingInfo;
/**
* Specifies if radio buttons should be rendered in a horizontal layout.
*/
radioButtonsHorizontalLayout?:
| boolean
| PropertyBindingInfo
| `{${string}}`;
/**
* When the Field is displayed as a clickable element, it defines the size of the reactive area of the clickable
* element:
* - ReactiveAreaMode.Inline - The link is displayed as part of a sentence.
* - ReactiveAreaMode.Overlay - The link is displayed as an overlay on top of other interactive parts of
* the page.
* Note: It is designed to make the clickable element easier to activate and helps meet the WCAG 2.2 Target
* Size requirement. It is applicable only for the SAP Horizon themes. Note: The size of the reactive area
* is sufficiently large to help users avoid accidentally selecting (clicking or tapping) unintended UI
* elements. UI elements positioned over other parts of the page may need an invisible active touch area.
* This ensures that no elements beneath are activated accidentally when the user tries to interact with
* the overlay element.
*/
reactiveAreaMode?: string | PropertyBindingInfo;
/**
* Defines if the date part of a date time with timezone field is shown.
*
* The dateTimeOffset field must have a timezone annotation.
* The default value is true.
*/
showDate?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines if the time part of a date time with timezone field should be shown.
*
* The dateTimeOffset field must have a timezone annotation.
* The default value is true.
*/
showTime?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines if the timezone part of a date time with timezone field should be shown.
*
* The dateTimeOffset field must have a timezone annotation.
* The default value is true.
*/
showTimezone?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines how the full text is displayed.
*
* Allowed values are "InPlace" and "Popover"
*/
textExpandBehaviorDisplay?: string | PropertyBindingInfo;
/**
* Maximum number of lines for multiline texts in edit mode.
*
* Supports int and string type.
*/
textLinesEdit?: any | PropertyBindingInfo | `{${string}}`;
/**
* Maximum number of characters from the beginning of the text field that are shown initially.
*
* Supports int and string type.
*/
textMaxCharactersDisplay?: any | PropertyBindingInfo | `{${string}}`;
/**
* Defines the maximum number of characters for the multiline text value.
*
* If a multiline text exceeds the maximum number of allowed characters, the counter below the input field
* displays the exact number.
*
* Supports int and string type.
*/
textMaxLength?: any | PropertyBindingInfo | `{${string}}`;
/**
* Maximum number of lines that multiline texts in edit mode can grow to.
*
* Supports int and string type.
*/
textMaxLines?: any | PropertyBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/filterBar/FilterBar" {
import {
default as FilterBar1,
$FilterBarSettings as $FilterBarSettings1,
FilterBar$AfterClearEventParameters as FilterBar$AfterClearEventParameters1,
FilterBar$FilterChangedEventParameters as FilterBar$FilterChangedEventParameters1,
FilterBar$SearchEventParameters as FilterBar$SearchEventParameters1,
} from "sap/fe/macros/FilterBar";
import FilterField from "sap/fe/macros/filterBar/FilterField";
import Event from "sap/ui/base/Event";
import SelectionVariant from "sap/fe/navigation/SelectionVariant";
import {
PropertyBindingInfo,
AggregationBindingInfo,
} from "sap/ui/base/ManagedObject";
import FilterFieldOverride from "sap/fe/macros/filterBar/FilterFieldOverride";
/**
* Usage example:
*
* ```javascript
*
* sap.ui.require(["sap/fe/macros/filterBar/FilterBar"], function(FilterBar) {
* ...
* new FilterBar("MyFilterBar", {metaPath:"@com.sap.vocabularies.UI.v1.SelectionFields"})
* })
* ```
*
* This is an experimental API because the structure of the generated content has changed to be closer to
* the FilterBar that you get from the templates.
* The public method and property has not changed but the internal structure has changed so be careful on
* your usage.
*
*
* @deprecated As of version 1.147. Use {@link sap.fe.macros.FilterBar} instead
*/
export default class FilterBar extends FilterBar1 {
/**
* Adds a filterField to the FilterBar.
* **Note:** When adding a custom filter field that uses a custom operator, ensure you use the correct configuration.
* For more information, see {@link topic :5fb9f57fcf12401bbe39a635e9a32a4e Custom Filters with Custom Operators}.
*
*
* @since 1.147.0
* @experimental As of version 1.147.0.
*
* @returns Reference to this to allow method chaining
*/
addFilterField(
/**
* The filterField to add
*/
filterField: FilterField
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
attachAfterClear(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
attachAfterClear(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
attachFilterChanged(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
attachFilterChanged(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
attachSearch(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
attachSearch(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
detachAfterClear(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
detachFilterChanged(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
detachSearch(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event afterClear to
* attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
fireAfterClear(
/**
* The parameters to pass along with the event.
* See {@link .........types.EventHandler>} for the set
* of parameters that are expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Fires event filterChanged
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
fireFilterChanged(
/**
* The parameters to pass along with the event.
* See {@link .........types.EventHandler> }
* for the set of parameters that are expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Fires event search to attached
* listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.FilterBar
* to allow method chaining
*/
fireSearch(
/**
* The parameters to pass along with the event.
* See {@link .........types.EventHandler>} for the set
* of parameters that are expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Get the Active Filters Text Summary for the filter bar.
*
*
* @returns Active filters summary as text
*/
getActiveFiltersText(): string;
/**
* Gets the key of the current variant in the associated variant management.
*
*
* @returns Key of the currently selected variant. In case the model is not yet set, `null` will be returned.
*/
getCurrentVariantKey(): null | string;
/**
* Determines whether the field is enabled or disabled.
*
*
* @returns Whether the filterField is enabled or disabled.
*/
getFilterFieldEnabled(
/**
* Name of the field.
*/
name: string
): boolean;
/**
* Gets the visibility of a filter field.
*
*
* @returns A {@link Promise} that resolves to check whether the filter field is visible or not.
*/
getFilterFieldVisible(
/**
* The path to the property as a condition path
*/
conditionPath: string
): Promise;
/**
* Provides all the filters that are currently active
* along with the search expression.
*
*
* @returns An array of active filters and the search expression.
*/
getFilters(): object;
/**
* Get the selection variant from the filter bar.
* Note: This method returns all the filter values that are set in the filter bar, including the text from
* the search field (with $search as the property name). However, it doesn't return any filter field condition
* that uses a custom operator.
*
*
* @returns A promise which resolves with a {@link sap.fe.navigation.SelectionVariant}
*/
getSelectionVariant(): Promise;
/**
* Removes a filterField from the FilterBar.
*
* @since 1.147.0
* @experimental As of version 1.147.0.
*
* @returns The removed filterField or null
*/
removeFilterField(
/**
* The filterField to remove, or its index or ID
*/
filterField: number | FilterField | string
): null | FilterField;
/**
* Sets the new selected variant in the associated variant management.
*/
setCurrentVariantKey(
/**
* Key of the variant that should be selected. If the passed key doesn't identify a variant, it will be
* ignored.
*/
key: string
): void;
/**
* Sets the enablement of the field.
*/
setFilterFieldEnabled(
/**
* Name of the field that should be enabled or disabled.
*/
name: string,
/**
* Whether the field should be enabled or disabled.
*/
enabled: boolean
): void;
/**
* Shows or hides any filter field from the filter bar.
* The property will not be hidden inside the adaptation dialog and may be re-added.
*
*
* @returns A {@link Promise} resolving once the change in visibility was applied
*/
setFilterFieldVisible(
/**
* The path to the property as a condition path
*/
conditionPath: string,
/**
* Whether it should be shown or hidden
*/
visible: boolean
): Promise;
/**
* Set the filter values for the given property in the filter bar.
* The filter values can be either a single value or an array of values.
* Each filter value must be represented as a primitive value.
*
*
* @returns A promise for asynchronous handling
*/
setFilterValues(
/**
* The path to the property as a condition path
*/
sConditionPath: string,
/**
* The operator to be used (optional) - if not set, the default operator (EQ) will be used
*/
sOperator: string | undefined,
/**
* The values to be applied
*/
vValues?:
| boolean
| boolean[]
| number
| number[]
| string
| string[]
| undefined
): Promise;
/**
* Sets {@link sap.fe.navigation.SelectionVariant } to the filter bar. Note: setSelectionVariant will clear
* existing filters and then apply the SelectionVariant values.
* Note: This method cannot set the search field text or any filter field condition that relies on a custom
* operator.
*
*
* @returns A promise for asynchronous handling
*/
setSelectionVariant(
/**
* The {@link sap.fe.navigation.SelectionVariant} to apply to the filter bar
*/
selectionVariant: SelectionVariant,
/**
* Optional. If true, we will use the associated text property values (if they're available in the selectionVariant)
* to display the filter value descriptions, instead of loading them from the backend
*/
prefillDescriptions?: boolean
): Promise;
/**
* Triggers the API search on the filter bar.
*
*
* @returns Returns a promise which resolves if the filter is triggered; otherwise it is rejected.
*/
triggerSearch(): Promise;
}
/**
* Describes the settings that can be provided to the FilterBar constructor.
*
* @deprecated As of version 1.147. Use {@link sap.fe.macros.FilterBar} instead
*/
export interface $FilterBarSettings extends $FilterBarSettings1 {
/**
* Defines the path of the context used in the current page or block.
* This setting is defined by the framework.
*/
contextPath?: string | PropertyBindingInfo;
/**
* If true, the search is triggered automatically when a filter value is changed.
*/
liveMode?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines the relative path of the property in the metamodel, based on the current contextPath.
*/
metaPath?: string | PropertyBindingInfo;
/**
* Comma separated list of navigation properties which are considered for filtering.
*/
navigationPropertiesForPersonalization?:
| string[]
| PropertyBindingInfo
| `{${string}}`;
/**
* Handles the visibility of the 'Clear' button on the FilterBar.
*/
showClearButton?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Displays possible errors during the search in a message box
*/
showMessages?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Aggregate filter fields of the FilterBar building block
*/
filterFields?:
| Array
| FilterFieldOverride
| FilterField
| AggregationBindingInfo
| `{${string}}`;
/**
* This event is fired when the 'Clear' button is pressed. This is only possible when the 'Clear' button
* is enabled.
*/
afterClear?: (oEvent: Event) => void;
/**
* This event is fired after either a filter value or the visibility of a filter item has been changed.
* The event contains conditions that are used as filters.
*/
filterChanged?: (oEvent: Event) => void;
/**
* This event is fired when the 'Go' button is pressed or after a condition change.
*/
search?: (oEvent: Event) => void;
}
/**
* Parameters of the FilterBar#afterClear event.
*/
export interface FilterBar$AfterClearEventParameters
extends FilterBar$AfterClearEventParameters1 {}
/**
* Event object of the FilterBar#afterClear event.
*/
export type FilterBar$AfterClearEvent = Event<
FilterBar$AfterClearEventParameters,
FilterBar
>;
/**
* Parameters of the FilterBar#filterChanged event.
*/
export interface FilterBar$FilterChangedEventParameters
extends FilterBar$FilterChangedEventParameters1 {}
/**
* Event object of the FilterBar#filterChanged event.
*/
export type FilterBar$FilterChangedEvent = Event<
FilterBar$FilterChangedEventParameters,
FilterBar
>;
/**
* Parameters of the FilterBar#search event.
*/
export interface FilterBar$SearchEventParameters
extends FilterBar$SearchEventParameters1 {}
/**
* Event object of the FilterBar#search event.
*/
export type FilterBar$SearchEvent = Event<
FilterBar$SearchEventParameters,
FilterBar
>;
}
declare module "sap/fe/macros/filterBar/FilterField" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Definition of a custom filter to be used inside the FilterBar.
* The template for the FilterField has to be provided as the default aggregation
*
* {@link demo:sap/fe/core/fpmExplorer/index.html#/buildingBlocks/filterBar/filterBarCustoms Overview of Building Blocks}
*/
export default class FilterField
extends BuildingBlockObjectProperty
implements /* was: sap.fe.macros.filterBar.IFilterField */ Object
{
__implements__sap_fe_macros_filterBar_IFilterField: boolean;
}
/**
* Describes the settings that can be provided to the FilterField constructor.
*/
export interface $FilterFieldSettings
extends $BuildingBlockObjectPropertySettings {
/**
* Reference to the key of another filter already displayed in the table to properly place this one
*/
anchor?: string | PropertyBindingInfo;
/**
* The filter field availability.
* Allowed values are `Default`, `Adaptation`, and `Hidden`
*/
availability?: string | PropertyBindingInfo;
/**
* The property name of the FilterField
*/
key?: string | PropertyBindingInfo;
/**
* The text that will be displayed for this FilterField
*/
label?: string | PropertyBindingInfo;
/**
* Defines where this filter should be placed relative to the defined anchor
* Allowed values are `Before` and `After`
*/
placement?: string | PropertyBindingInfo;
/**
* Defines which property are influenced by the FilterField.
* This must be a valid property of the entity as this can be used for SAP Companion integration
*/
property?: string | PropertyBindingInfo;
/**
* If set, the FilterField will be marked as a mandatory field.
*/
required?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* This property is not required at filter field level. To achieve the desired behavior, specify the showMessages
* property in the FilterBar building block.
*
* @deprecated As of version 1.135.
*/
showMessages?: boolean | PropertyBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/filterBar/FilterFieldOverride" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Definition of an override for the filter field to be used inside the FilterBar building block.
*/
export default class FilterFieldOverride
extends BuildingBlockObjectProperty
implements /* was: sap.fe.macros.filterBar.IFilterField */ Object
{
__implements__sap_fe_macros_filterBar_IFilterField: boolean;
}
/**
* Describes the settings that can be provided to the FilterFieldOverride constructor.
*/
export interface $FilterFieldOverrideSettings
extends $BuildingBlockObjectPropertySettings {
/**
* Reference to the key of another filter already displayed in the table to properly place this one.
*/
anchor?: string | PropertyBindingInfo;
/**
* The filter field availability.
* Allowed values are `Default`, `Adaptation`, and `Hidden`
*/
availability?: string | PropertyBindingInfo;
/**
* Unique identifier of the filter field to be overridden.
*/
key?: string | PropertyBindingInfo;
/**
* Defines where this filter is placed relative to the defined anchor.
* Allowed values are `Before` and `After`
*/
placement?: string | PropertyBindingInfo;
/**
* If set, the FilterField is marked as a mandatory field.
*/
required?: boolean | PropertyBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/form/Form.block" {
import { default as Control, $ControlSettings } from "sap/ui/core/Control";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Building block for creating a Form based on the metadata provided by OData V4.
*
*
* It is designed to work based on a FieldGroup annotation but can also work if you provide a ReferenceFacet
* or a CollectionFacet
*
* Usage example:
*
* ```javascript
*
*
* ```
*/
export default class Form extends Control {}
/**
* Describes the settings that can be provided to the Form constructor.
*/
export interface $FormSettings extends $ControlSettings {
/**
* Defines the path of the context used in the current page or block.
* This setting is defined by the framework.
*/
contextPath?: string | PropertyBindingInfo;
/**
* Defines the layout to be used within the form.
* It defaults to the ColumnLayout, but you can also use a ResponsiveGridLayout.
* All the properties of the ResponsiveGridLayout can be added to the configuration.
*/
layout?: object | PropertyBindingInfo | `{${string}}`;
/**
* Defines the relative path of the property in the metamodel, based on the current contextPath.
*/
metaPath?: string | PropertyBindingInfo;
/**
* Filters the navigation properties that can be used by flexibility features.
* This property allows you to specify which navigation properties are available
* for flexibility operations such as adding custom fields.
* You can use the asterisk (*) wildcard to include all navigation properties,
* or specify individual navigation property names to restrict the available options.
* Example:
* Allow all navigation properties: navigationPropertiesForAdaptationDialog: ["*"]
* Example:
* Allow only a specific navigation property: navigationPropertiesForAdaptationDialog: ["Customer/Name"]
* Example:
* Allow multiple specific navigation properties based on a wildcard: navigationPropertiesForAdaptationDialog:
* ["Cust*\/Name"]
*/
navigationPropertiesForAdaptationDialog?:
| string[]
| PropertyBindingInfo
| `{${string}}`;
/**
* The title of the form control.
*/
title?: string | PropertyBindingInfo;
/**
* Parameter which sets the visibility of the Form building block
*/
visible?: boolean | PropertyBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/form/FormLayoutOptions" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Configuration options for the Form layout
*/
export default class FormLayoutOptions extends BuildingBlockObjectProperty {}
/**
* Describes the settings that can be provided to the FormLayoutOptions constructor.
*/
export interface $FormLayoutOptionsSettings
extends $BuildingBlockObjectPropertySettings {
/**
* If set, the usage of `labelSpanL` and `labelSpanXL` is dependent on the size of the used column.
* If the space is less than 600px (e.g., 2 columns are used), `labelSpanM` is used instead.
* Applicable for ResponsiveGridLayout type
*/
adjustLabelSpan?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines the background color of the form
*/
backgroundDesign?: string | PropertyBindingInfo;
/**
* The breakpoint (in pixels) between L size and XL size for the ResponsiveGridLayout
* Applicable for ResponsiveGridLayout type
*/
breakpointL?: int | PropertyBindingInfo | `{${string}}`;
/**
* The breakpoint (in pixels) between M size and L size for the ResponsiveGridLayout
* Applicable for ResponsiveGridLayout type
*/
breakpointM?: int | PropertyBindingInfo | `{${string}}`;
/**
* The breakpoint (in pixels) between XL size and XXL size for the ResponsiveGridLayout
* Applicable for ResponsiveGridLayout type
*/
breakpointXL?: int | PropertyBindingInfo | `{${string}}`;
/**
* Number of columns for L size
* Applicable for ColumnLayout type
*/
columnsL?: int | PropertyBindingInfo | `{${string}}`;
/**
* Number of columns for M size
* Applicable for ColumnLayout type
*/
columnsM?: int | PropertyBindingInfo | `{${string}}`;
/**
* Number of columns for XL size
* Applicable for ColumnLayout type
*/
columnsXL?: int | PropertyBindingInfo | `{${string}}`;
/**
* Number of grid cells that are empty at the end of a row in large screen size
* Applicable for ColumnLayout type
*/
emptyCellsLarge?: int | PropertyBindingInfo | `{${string}}`;
/**
* Number of empty grid cells that are added on the end of each line in L size
* Applicable for ResponsiveGridLayout type
*/
emptySpanL?: int | PropertyBindingInfo | `{${string}}`;
/**
* Number of empty grid cells that are added on the end of each line in M size
* Applicable for ResponsiveGridLayout type
*/
emptySpanM?: int | PropertyBindingInfo | `{${string}}`;
/**
* Number of empty grid cells that are added on the end of each line in S size
* Applicable for ResponsiveGridLayout type
*/
emptySpanS?: int | PropertyBindingInfo | `{${string}}`;
/**
* Number of empty grid cells that are added on the end of each line in XL size
* Applicable for ResponsiveGridLayout type
*/
emptySpanXL?: int | PropertyBindingInfo | `{${string}}`;
/**
* Number of grid cells that are reserved for the labels in large screen size
* Applicable for ColumnLayout type
*/
labelCellsLarge?: int | PropertyBindingInfo | `{${string}}`;
/**
* Number of grid cells that are used for the labels in L size
* Applicable for ResponsiveGridLayout type
*/
labelSpanL?: int | PropertyBindingInfo | `{${string}}`;
/**
* Number of grid cells that are used for the labels in M size
* Applicable for ResponsiveGridLayout type
*/
labelSpanM?: int | PropertyBindingInfo | `{${string}}`;
/**
* Number of grid cells that are used for the labels in S size
* Applicable for ResponsiveGridLayout type
*/
labelSpanS?: int | PropertyBindingInfo | `{${string}}`;
/**
* Number of grid cells that are used for the labels in XL size
* Applicable for ResponsiveGridLayout type
*/
labelSpanXL?: int | PropertyBindingInfo | `{${string}}`;
/**
* If set, a single container has the full size of the parent container.
* Otherwise, the container size is determined by the number of columns and the spacing between the columns.
* Applicable for ResponsiveGridLayout type
*/
singleContainerFullSize?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* The layout type to be used for the form
*/
type?: string | PropertyBindingInfo;
}
}
declare module "sap/fe/macros/microchart/MicroChart" {
import {
default as MicroChart1,
$MicroChartSettings as $MicroChartSettings1,
MicroChart$TitlePressEventParameters as MicroChart$TitlePressEventParameters1,
} from "sap/fe/macros/MicroChart";
import Event from "sap/ui/base/Event";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Building block used to create a MicroChart based on the metadata provided by OData V4.
*
*
* Usually, a contextPath and metaPath is expected.
* Usage example:
*
* ```javascript
*
* sap.ui.require(["sap/fe/macros/microchart/MicroChart"], function(MicroChart) {
* ...
* new MicroChart("microChartID", {metaPath:"MyProperty"})
* })
* ```
*
* This is currently an experimental API because the structure of the generated content will change to come
* closer to the MicroChart that you get out of templates.
* The public method and property will not change but the internal structure will so be careful on your
* usage.
*
*
* @deprecated As of version 1.130. Use {@link sap.fe.macros.MicroChart} instead
* @experimental As of version 1.124.
*/
export default class MicroChart extends MicroChart1 {
/**
*
* @returns Reference to sap.fe.macros.MicroChart
* to allow method chaining
*/
attachTitlePress(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.MicroChart
* to allow method chaining
*/
attachTitlePress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.MicroChart
* to allow method chaining
*/
detachTitlePress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event titlePress
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.MicroChart
* to allow method chaining
*/
fireTitlePress(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler>} for the set of parameters that are
* expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Gets current value of property contextPath.
*
*
* @returns Value of property `contextPath`
*/
getContextPath(): string;
/**
* Gets current value of property hideOnNoData.
*
*
* @returns Value of property `hideOnNoData`
*/
getHideOnNoData(): boolean;
/**
* Gets current value of property linkAriaText.
*
*
* @returns Value of property `linkAriaText`
*/
getLinkAriaText(): string;
/**
* Gets current value of property metaPath.
*
*
* @returns Value of property `metaPath`
*/
getMetaPath(): string;
/**
* Gets current value of property showOnlyChart.
*
*
* @returns Value of property `showOnlyChart`
*/
getShowOnlyChart(): boolean;
/**
* Gets current value of property size.
*
*
* @returns Value of property `size`
*/
getSize(): string;
/**
* Gets current value of property titleAsLink.
*
*
* @returns Value of property `titleAsLink`
*/
getTitleAsLink(): boolean;
/**
* Gets current value of property contextPath.
*
*
* @returns Value of property `contextPath`
*/
setContextPath(): string;
/**
* Gets current value of property hideOnNoData.
*
*
* @returns Value of property `hideOnNoData`
*/
setHideOnNoData(): boolean;
/**
* Gets current value of property linkAriaText.
*
*
* @returns Value of property `linkAriaText`
*/
setLinkAriaText(): string;
/**
* Gets current value of property metaPath.
*
*
* @returns Value of property `metaPath`
*/
setMetaPath(): string;
/**
* Gets current value of property showOnlyChart.
*
*
* @returns Value of property `showOnlyChart`
*/
setShowOnlyChart(): boolean;
/**
* Gets current value of property size.
*
*
* @returns Value of property `size`
*/
setSize(): string;
/**
* Gets current value of property titleAsLink.
*
*
* @returns Value of property `titleAsLink`
*/
setTitleAsLink(): boolean;
}
/**
* Describes the settings that can be provided to the MicroChart constructor.
*
* @deprecated As of version 1.130. Use {@link sap.fe.macros.MicroChart} instead
* @experimental As of version 1.124.
*/
export interface $MicroChartSettings extends $MicroChartSettings1 {
/**
* context path to the MicroChart.
*/
contextPath?: string | PropertyBindingInfo;
/**
* Show blank space in case there is no data in the chart
*/
hideOnNoData?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Custom ARIA text for the title link.
* This property is only used when titleAsLink is set to true.
* If not provided, default ARIA text based on the navigationType is used.
*/
linkAriaText?: string | PropertyBindingInfo;
/**
* Metadata path to the MicroChart.
*/
metaPath?: string | PropertyBindingInfo;
/**
* To control the rendering of Title, Subtitle and Currency Labels. When the size is xs then we do
* not see the inner labels of the MicroChart as well.
*/
showOnlyChart?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Size of the MicroChart
*/
size?: string | PropertyBindingInfo;
/**
* Determines whether the micro chart title is displayed as a link or as a text.
* When set to true, the title is rendered as a clickable link.
*/
titleAsLink?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Event fired when the micro chart title link is pressed.
* The event provides the binding context of the micro chart in the event parameters.
* This event is only fired when titleAsLink is set to true.
*/
titlePress?: (oEvent: Event) => void;
}
/**
* Parameters of the MicroChart#titlePress event.
*/
export interface MicroChart$TitlePressEventParameters
extends MicroChart$TitlePressEventParameters1 {}
/**
* Event object of the MicroChart#titlePress event.
*/
export type MicroChart$TitlePressEvent = Event<
MicroChart$TitlePressEventParameters,
MicroChart
>;
}
declare module "sap/fe/macros/richtexteditor/ButtonGroup" {
import { default as UI5Element, $ElementSettings } from "sap/ui/core/Element";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Button configurations for the RichTextEditor.
*/
export default class ButtonGroup extends UI5Element {}
/**
* Describes the settings that can be provided to the ButtonGroup constructor.
*/
export interface $ButtonGroupSettings extends $ElementSettings {
/**
* The buttons to be displayed in the group.
*/
buttons?: string | PropertyBindingInfo;
/**
* The priority of the group in the custom toolbar.
*
* @deprecated As of version now. since 1.136 use priority instead
*/
customToolbarPriority?: int | PropertyBindingInfo | `{${string}}`;
/**
* The name of the group.
*/
name?: string | PropertyBindingInfo;
/**
* The priority of the group.
*/
priority?: int | PropertyBindingInfo | `{${string}}`;
/**
* Row number in which the button should be
*
* @deprecated As of version now. since 1.136 this parameter no longer has any effect
*/
row?: int | PropertyBindingInfo | `{${string}}`;
/**
* Whether the group is visible.
*/
visible?: boolean | PropertyBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/richtexteditor/Plugin" {
import { default as UI5Element, $ElementSettings } from "sap/ui/core/Element";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Represents a TinyMCE plugin.
* Each object has to contain a property "name" which then contains the plugin name/ID.
*/
export default class Plugin extends UI5Element {}
/**
* Describes the settings that can be provided to the Plugin constructor.
*/
export interface $PluginSettings extends $ElementSettings {
/**
* The plugin name.
*/
name?: string | PropertyBindingInfo;
}
}
declare module "sap/fe/macros/share/ShareOptions" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Share Options.
*/
export default class ShareOptions extends BuildingBlockObjectProperty {}
/**
* Describes the settings that can be provided to the ShareOptions constructor.
*/
export interface $ShareOptionsSettings
extends $BuildingBlockObjectPropertySettings {
/**
* Controls visibility of the "Share in SAP Build Work Zone" option.
* This option appears as either "Share in SAP Jam" or "Share in SAP Build Work Zone"
* depending on the customer's deployment. Both labels refer to the same functionality.
*/
showShareInWorkzone?: boolean | PropertyBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/table/Action" {
import {
default as BaseAction,
$BaseActionSettings,
} from "sap/fe/macros/controls/BaseAction";
import { ITableActionOrGroup } from "sap/fe/macros/table/ITableActionOrGroup";
import { ITableAction } from "sap/fe/macros/table/ITableAction";
import Event from "sap/ui/base/Event";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Definition of a custom action to be used inside the table toolbar
*/
export default class Action
extends BaseAction
implements ITableActionOrGroup, ITableAction
{
__implements__sap_fe_macros_table_ITableActionOrGroup: boolean;
__implements__sap_fe_macros_table_ITableAction: boolean;
/**
*
* @returns Reference to sap.fe.macros.table.Action
* to allow method chaining
*/
attachPress(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.table.Action
* to allow method chaining
*/
attachPress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.table.Action
* to allow method chaining
*/
detachPress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event press to attached
* listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.table.Action
* to allow method chaining
*/
firePress(
/**
* The parameters to pass along with the event.
* See {@link .........types.EventHandler>} for the set of parameters that
* are expected by the event handlers.
*/
mParameters?: {}
): this;
}
/**
* Describes the settings that can be provided to the Action constructor.
*/
export interface $ActionSettings extends $BaseActionSettings {
/**
* Determines the shortcut combination to trigger the action
*/
command?: string | PropertyBindingInfo;
/**
* Enables or disables the action
*/
enabled?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Determines whether the action requires selecting one item or multiple items.
* Allowed values are `single` and `multi`
*/
enableOnSelect?: string | PropertyBindingInfo;
/**
* Defines if the action requires a selection.
*/
requiresSelection?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Determines whether the action is visible.
*/
visible?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Event handler to be called when the user chooses the action
*/
press?: (oEvent: Event) => void;
}
/**
* Parameters of the Action#press event.
*/
export interface Action$PressEventParameters {}
/**
* Event object of the Action#press event.
*/
export type Action$PressEvent = Event;
}
declare module "sap/fe/macros/table/ActionGroup" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { ITableActionOrGroup } from "sap/fe/macros/table/ITableActionOrGroup";
import {
PropertyBindingInfo,
AggregationBindingInfo,
} from "sap/ui/base/ManagedObject";
import { ITableAction } from "sap/fe/macros/table/ITableAction";
/**
* Definition of a custom ActionGroup to be used inside the table toolbar
*/
export default class ActionGroup
extends BuildingBlockObjectProperty
implements ITableActionOrGroup
{
__implements__sap_fe_macros_table_ITableActionOrGroup: boolean;
}
/**
* Describes the settings that can be provided to the ActionGroup constructor.
*/
export interface $ActionGroupSettings
extends $BuildingBlockObjectPropertySettings {
/**
* Reference to the key of another action or action group already displayed in the toolbar to properly place
* this one
*/
anchor?: string | PropertyBindingInfo;
/**
* Determines the default action to be executed on the action group.
*/
defaultAction?: string | PropertyBindingInfo;
/**
* Unique identifier of the ActionGroup
*/
key?: string | PropertyBindingInfo;
/**
* Defines the overflow group of the action in the overflow toolbar.
*/
overflowGroup?: int | PropertyBindingInfo | `{${string}}`;
/**
* Determines where this action group should be placed relative to the defined anchor
* Allowed values are `Before` and `After`
*/
placement?: string | PropertyBindingInfo;
/**
* Defines the priority of the action in the overflow toolbar.
*/
priority?: string | PropertyBindingInfo;
/**
* The text that will be displayed for this action group
*/
text?: string | PropertyBindingInfo;
/**
* Determines the nested actions
*/
actions?:
| ITableAction[]
| ITableAction
| AggregationBindingInfo
| `{${string}}`;
}
}
declare module "sap/fe/macros/table/ActionGroupOverride" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { ITableActionOrGroup } from "sap/fe/macros/table/ITableActionOrGroup";
import {
PropertyBindingInfo,
AggregationBindingInfo,
} from "sap/ui/base/ManagedObject";
import { ITableAction } from "sap/fe/macros/table/ITableAction";
/**
* Definition of an action group override to be used inside the Table building block.
*/
export default class ActionGroupOverride
extends BuildingBlockObjectProperty
implements ITableActionOrGroup
{
__implements__sap_fe_macros_table_ITableActionOrGroup: boolean;
}
/**
* Describes the settings that can be provided to the ActionGroupOverride constructor.
*/
export interface $ActionGroupOverrideSettings
extends $BuildingBlockObjectPropertySettings {
/**
* Reference to the key of another action or action group already displayed in the toolbar to properly place
* this one
*/
anchor?: string | PropertyBindingInfo;
/**
* Unique identifier of the ActionGroup to overridden.
*/
key?: string | PropertyBindingInfo;
/**
* Determines where this action group should be placed relative to the defined anchor
* Allowed values are `Before` and `After`
*/
placement?: string | PropertyBindingInfo;
/**
* Determines the nested actions
*/
actions?:
| ITableAction[]
| ITableAction
| AggregationBindingInfo
| `{${string}}`;
}
}
declare module "sap/fe/macros/table/ActionOverride" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { ITableActionOrGroup } from "sap/fe/macros/table/ITableActionOrGroup";
import { ITableAction } from "sap/fe/macros/table/ITableAction";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Definition of an override for the action to be used inside the Table building block.
*/
export default class ActionOverride
extends BuildingBlockObjectProperty
implements ITableActionOrGroup, ITableAction
{
__implements__sap_fe_macros_table_ITableActionOrGroup: boolean;
__implements__sap_fe_macros_table_ITableAction: boolean;
}
/**
* Describes the settings that can be provided to the ActionOverride constructor.
*/
export interface $ActionOverrideSettings
extends $BuildingBlockObjectPropertySettings {
/**
* Reference to the key of another action already displayed in the toolbar to properly place this one
*/
anchor?: string | PropertyBindingInfo;
/**
* Determines the shortcut combination to trigger the action
*/
command?: string | PropertyBindingInfo;
/**
* Determines the function to get the default values of the action.
*/
defaultValuesFunction?: string | PropertyBindingInfo;
/**
* Disables strict handling for this action.
* When true, the action does not use strict message handling.
*/
disableStrictHandling?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Determines if the auto scroll is enabled after executing the action.
*/
enableAutoScroll?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Enables or disables the action
*/
enabled?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Determines whether the action requires selecting one item or multiple items.
* Allowed values are `single` and `multi`
*/
enableOnSelect?: string | PropertyBindingInfo;
/**
* Displays the AI Icon on the action button.
*/
isAIOperation?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Unique identifier of the action to overridden.
*/
key?: string | PropertyBindingInfo;
/**
* Determines whether there is a navigation after executing the action.
*/
navigateToInstance?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines where this action should be placed relative to the defined anchor
* Allowed values are `Before` and `After`
*/
placement?: string | PropertyBindingInfo;
/**
* Determines whether the action is visible.
*/
visible?: boolean | PropertyBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/table/AnalyticalConfiguration" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* A set of options that can be configured to control the aggregation behavior
*/
export default class AnalyticalConfiguration extends BuildingBlockObjectProperty {}
/**
* Describes the settings that can be provided to the AnalyticalConfiguration constructor.
*/
export interface $AnalyticalConfigurationSettings
extends $BuildingBlockObjectPropertySettings {
/**
* True if leaf level rows shall display aggregated data
*/
aggregationOnLeafLevel?: boolean | PropertyBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/table/Column" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { ITableColumn } from "sap/fe/macros/table/ITableColumn";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
import ColumnAINotice from "sap/fe/macros/table/ColumnAINotice";
import ColumnExportSettings from "sap/fe/macros/table/ColumnExportSettings";
/**
* Definition of a custom column to be used inside the table.
* The template for the column must be provided as the default aggregation
*/
export default class Column
extends BuildingBlockObjectProperty
implements ITableColumn
{
__implements__sap_fe_macros_table_ITableColumn: boolean;
}
/**
* Describes the settings that can be provided to the Column constructor.
*/
export interface $ColumnSettings
extends $BuildingBlockObjectPropertySettings {
/**
* Reference to the key of another column already displayed in the table to properly place this one
*/
anchor?: string | PropertyBindingInfo;
/**
* The column availability
* Allowed values are `Default`, `Adaptation`, `Hidden`
*/
availability?: string | PropertyBindingInfo;
/**
* Determines if the column should be excluded from the export.
*/
disableExport?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* The text that will be displayed for this column header
*/
header?: string | PropertyBindingInfo;
/**
* Aligns the header as well as the content horizontally
*/
horizontalAlign?: string | PropertyBindingInfo;
/**
* Defines the column importance.
* You can define which columns should be automatically moved to the pop-in area based on their importance
*/
importance?: string | PropertyBindingInfo;
/**
* Unique identifier of the column
*/
key?: string | PropertyBindingInfo;
/**
* Determines where this column should be placed relative to the defined anchor
* Allowed values are `Before` and `After`
*/
placement?: string | PropertyBindingInfo;
/**
* Determines the properties displayed in the column
* The properties allow to export, sort, group, copy, and paste in the column
*/
properties?: string[] | PropertyBindingInfo | `{${string}}`;
/**
* Determines if the information in the column is required.
*/
required?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Determines the text displayed for the column tooltip
*/
tooltip?: string | PropertyBindingInfo;
/**
* Determines the column's width.
* Allowed values are 'auto', 'value', and 'inherit', according to {@link sap.ui.core.CSSSize }
*/
width?: string | PropertyBindingInfo;
/**
* Indicates if the column header should be a part of the width calculation.
*/
widthIncludingColumnHeader?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Determines the AI notice for the column.
* The AI notice is used to display information related to AI features. This information is rendered as
* an icon in the column header.
*/
aiNotice?: string | ColumnAINotice | PropertyBindingInfo;
/**
* Determines the export settings for the column.
*/
exportSettings?: ColumnExportSettings;
}
}
declare module "sap/fe/macros/table/ColumnAINotice" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import Control from "sap/ui/core/Control";
/**
* Definition of the AINotice applied to a column within the table.
*/
export default class ColumnAINotice extends BuildingBlockObjectProperty {}
/**
* Describes the settings that can be provided to the ColumnAINotice constructor.
*/
export interface $ColumnAINoticeSettings
extends $BuildingBlockObjectPropertySettings {
/**
* Determines the pop-up content of the AINotice to be displayed
*/
content?: Control;
}
}
declare module "sap/fe/macros/table/ColumnExportSettings" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Definition of the export settings applied to a column within the table.
*/
export default class ColumnExportSettings extends BuildingBlockObjectProperty {}
/**
* Describes the settings that can be provided to the ColumnExportSettings constructor.
*/
export interface $ColumnExportSettingsSettings
extends $BuildingBlockObjectPropertySettings {
/**
* Determines the text associated to a Boolean type with 'false' as value.
*/
falseValue?: string | PropertyBindingInfo;
/**
* Determines the column header text.
*/
label?: string | PropertyBindingInfo;
/**
* Determines the properties of the column.
*/
property?: string[] | PropertyBindingInfo | `{${string}}`;
/**
* Determines a formatting template that supports indexed placeholders within curly brackets.
*/
template?: string | PropertyBindingInfo;
/**
* Determines the alignment of the column of the cell contents.
* Available options are:
*
* - Left
*
* - Right
*
* - Center
*
* - Begin
*
* - End
*/
textAlign?: string | PropertyBindingInfo;
/**
* Determines the text associated to a Boolean type with 'true' as value.
*/
trueValue?: string | PropertyBindingInfo;
/**
* Determines the data type of the field
*/
type?: string | PropertyBindingInfo;
/**
* Determines the mapping object holding the values associated with a specific key.
* Enumeration type must be used when valueMap is provided.
*/
valueMap?: object | PropertyBindingInfo | `{${string}}`;
/**
* Determines the width of the column in characters
*/
width?: int | PropertyBindingInfo | `{${string}}`;
/**
* Determines if the content needs to be wrapped.
*/
wrap?: boolean | PropertyBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/table/ColumnOverride" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { ITableColumn } from "sap/fe/macros/table/ITableColumn";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
import ColumnAINotice from "sap/fe/macros/table/ColumnAINotice";
import ColumnExportSettings from "sap/fe/macros/table/ColumnExportSettings";
/**
* Definition of an override for the column to be used inside the Table building block.
*/
export default class ColumnOverride
extends BuildingBlockObjectProperty
implements ITableColumn
{
__implements__sap_fe_macros_table_ITableColumn: boolean;
}
/**
* Describes the settings that can be provided to the ColumnOverride constructor.
*/
export interface $ColumnOverrideSettings
extends $BuildingBlockObjectPropertySettings {
/**
* The column availability
* Allowed values are `Default`, `Adaptation`, `Hidden``
*/
availability?: string | PropertyBindingInfo;
/**
* Determines if the column is excluded from the export.
*/
disableExport?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Aligns the header as well as the content horizontally
*/
horizontalAlign?: string | PropertyBindingInfo;
/**
* Defines the importance of the column.
* You can define which columns should be automatically moved to the pop-in area based on their importance
*/
importance?: string | PropertyBindingInfo;
/**
* Unique identifier of the column to overridden.
*/
key?: string | PropertyBindingInfo;
/**
* Defines if cells with duplicate values in this column are merged in responsive tables (display mode only).
* This overrides the HTML5.RowSpanForDuplicateValues annotation if set.
* Only applicable to annotation-based column overrides. Not supported for custom columns (columns with
* a template).
*/
mergeCells?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* List of property paths used to determine whether adjacent cells are merged.
* The values of the specified properties are concatenated to form a comparison key.
* If not set, the displayed text value is used for comparison.
* Only takes effect when mergeCells is set to true or for annotation-based column overrides.
* Not supported for custom columns (columns with a template).
*/
mergeComparisonProperties?: string[] | PropertyBindingInfo | `{${string}}`;
/**
* Determines the column's width.
* Allowed values are 'auto', 'value', and 'inherit', according to {@link sap.ui.core.CSSSize }
*/
width?: string | PropertyBindingInfo;
/**
* Indicates if the column header should be a part of the width calculation.
*/
widthIncludingColumnHeader?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Determines the AI notice for the column.
* The AI notice is used to display information related to AI features. This information is rendered as
* an icon in the column header.
*/
aiNotice?: string | ColumnAINotice | PropertyBindingInfo;
/**
* Determines the export settings for the column.
*/
exportSettings?: ColumnExportSettings;
}
}
declare module "sap/fe/macros/table/ITableAction" {
/**
* Interface for controls that can be used as actions in a group inside the {@link sap.fe.macros.Table }
* building block.
* This interface is implemented by:
*
* - {@link sap.fe.macros.table.Action }
*
* - {@link sap.fe.macros.table.ActionOverride }
*
*
*
* @since 1.145.0
*/
export interface ITableAction {
__implements__sap_fe_macros_table_ITableAction: boolean;
}
}
declare module "sap/fe/macros/table/ITableActionOrGroup" {
/**
* Interface for controls that can be used as actions or action groups inside the {@link sap.fe.macros.Table }
* building block.
* This interface is implemented by:
*
* - {@link sap.fe.macros.table.Action }
*
* - {@link sap.fe.macros.table.ActionOverride }
*
* - {@link sap.fe.macros.table.ActionGroup }
*
* - {@link sap.fe.macros.table.ActionGroupOverride }
*
*
*
* @since 1.145.0
*/
export interface ITableActionOrGroup {
__implements__sap_fe_macros_table_ITableActionOrGroup: boolean;
}
}
declare module "sap/fe/macros/table/ITableColumn" {
/**
* Interface for controls that can be used as columns inside the {@link sap.fe.macros.Table } building block.
* This interface is implemented by:
*
* - {@link sap.fe.macros.table.Column }
*
* - {@link sap.fe.macros.table.ColumnOverride }
*
*
*
* @since 1.145.0
*/
export interface ITableColumn {
__implements__sap_fe_macros_table_ITableColumn: boolean;
}
}
declare module "sap/fe/macros/table/MassEdit" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
import FormContainer from "sap/ui/layout/form/FormContainer";
/**
* Definition of the mass edit to be used inside the table.
*/
export default class MassEdit extends BuildingBlockObjectProperty {}
/**
* Describes the settings that can be provided to the MassEdit constructor.
*/
export interface $MassEditSettings
extends $BuildingBlockObjectPropertySettings {
/**
* Defines the list of fields that should be ignored in the mass edit dialog
*/
ignoredFields?: string[] | PropertyBindingInfo | `{${string}}`;
/**
* Defines the mode of the operation grouping to save the new values
* Allowed values are `ChangeSet` and `Isolated`
*/
operationGroupingMode?: string | PropertyBindingInfo;
/**
* Defines the list of fields that should be visible in the mass edit dialog
*/
visibleFields?: string[] | PropertyBindingInfo | `{${string}}`;
/**
* The custom form container that can be displayed at the top of the mass edit dialog
*/
customContent?: FormContainer;
}
}
declare module "sap/fe/macros/table/OverflowGroups" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Configuration of toolbar separators to be used inside the table toolbar
*/
export default class OverflowGroup extends BuildingBlockObjectProperty {}
/**
* Describes the settings that can be provided to the OverflowGroup constructor.
*/
export interface $OverflowGroupSettings
extends $BuildingBlockObjectPropertySettings {
/**
* Defines the group of the toolbar separator in the overflow toolbar.
*/
overflowGroup?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines if a toolbar separator should be displayed.
*/
showSeparator?: boolean | PropertyBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/table/QuickVariantSelection" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Definition of the quickVariantSelection to be used inside the table.
*/
export default class QuickVariantSelection extends BuildingBlockObjectProperty {}
/**
* Describes the settings that can be provided to the QuickVariantSelection constructor.
*/
export interface $QuickVariantSelectionSettings
extends $BuildingBlockObjectPropertySettings {
/**
* Defines the list of paths pointing to the selection variants that should be used as quick filters
*/
paths?: string[] | PropertyBindingInfo | `{${string}}`;
/**
* Defines whether the counts should be displayed next to the text
*/
showCounts?: boolean | PropertyBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/table/Table" {
import {
default as Table1,
$TableSettings as $TableSettings1,
Table$BeforeRebindTableEventParameters as Table$BeforeRebindTableEventParameters1,
Table$RowPressEventParameters as Table$RowPressEventParameters1,
Table$SelectionChangeEventParameters as Table$SelectionChangeEventParameters1,
} from "sap/fe/macros/Table";
import Action from "sap/fe/macros/table/Action";
import Column from "sap/fe/macros/table/Column";
import Event from "sap/ui/base/Event";
import Context from "sap/ui/model/odata/v4/Context";
import PresentationVariant from "sap/fe/navigation/PresentationVariant";
import SelectionVariant from "sap/fe/navigation/SelectionVariant";
import {
PropertyBindingInfo,
AggregationBindingInfo,
} from "sap/ui/base/ManagedObject";
import OverflowGroup from "sap/fe/macros/table/OverflowGroups";
import { ITableActionOrGroup } from "sap/fe/macros/table/ITableActionOrGroup";
import AnalyticalConfiguration from "sap/fe/macros/table/AnalyticalConfiguration";
import { ITableColumn } from "sap/fe/macros/table/ITableColumn";
import TableCreationOptions from "sap/fe/macros/table/TableCreationOptions";
import MassEdit from "sap/fe/macros/table/MassEdit";
import Text from "sap/m/Text";
import IllustratedMessage from "sap/m/IllustratedMessage";
import QuickVariantSelection from "sap/fe/macros/table/QuickVariantSelection";
/**
* Building block used to create a table based on the metadata provided by OData V4.
*
*
* Usually, a LineItem, PresentationVariant or SelectionPresentationVariant annotation is expected, but
* the Table building block can also be used to display an EntitySet.
*
*
* If a PresentationVariant is specified, then it must have UI.LineItem as the first property of the Visualizations.
*
*
* If a SelectionPresentationVariant is specified, then it must contain a valid PresentationVariant that
* also has a UI.LineItem as the first property of the Visualizations.
* Usage example:
*
* ```javascript
*
* sap.ui.require(["sap/fe/macros/table/Table"], function(Table) {
* ...
* new Table("myTable", {metaPath:"@com.sap.vocabularies.UI.v1.LineItem"})
* })
* ```
*
* This is currently an experimental API because the structure of the generated content will change to come
* closer to the Table that you get out of templates.
* The public method and property will not change but the internal structure will so be careful on your
* usage.
*
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.Table} instead
*/
export default class Table extends Table1 {
/**
* Adds an action to the table.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.Table.addAction} instead
*
* @returns Reference to this to allow method chaining
*/
addAction(
/**
* The action to add
*/
action: Action
): this;
/**
* Adds a column to the table.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.Table.addColumn} instead
*
* @returns Reference to this to allow method chaining
*/
addColumn(
/**
* The column to add
*/
column: Column
): this;
/**
* Adds a message to the table.
* The message applies to the whole table and not to an individual table row.
*
*
*
* @returns Promise The ID of the message
*/
addMessage(
/**
* The parameters to create the message
*/
parameters: {
/**
* Message description
*/
description?: string;
/**
* Message text
*/
message?: string;
/**
* True if the message is persistent
*/
persistent?: boolean;
/**
* Message type
*/
type?: /* was: sap.ui.core.message.MessageType */ any;
}
): Promise;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachBeforeRebindTable(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Table$BeforeRebindTableEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachBeforeRebindTable(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Table$BeforeRebindTableEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachRowPress(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachRowPress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachSelectionChange(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachSelectionChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Clears the selection.
*
* @since 1.142.0
*/
clearSelection(): void;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
detachBeforeRebindTable(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Table$BeforeRebindTableEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
detachRowPress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
detachSelectionChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event beforeRebindTable
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
fireBeforeRebindTable(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler> }
* for the set of parameters that are expected by the event handlers.
*/
mParameters?: Table$BeforeRebindTableEventParameters
): this;
/**
* Fires event rowPress to attached
* listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
fireRowPress(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler> }
* for the set of parameters that are expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Fires event selectionChange
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
fireSelectionChange(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler>} for the set of parameters that
* are expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Returns all contexts that are loaded in the table.
* See also the {@link sap.ui.model.odata.v4.ODataListBinding#getAllCurrentContexts } method.
*
*
* @since 1.142.0
*
* @returns All contexts of the table's list binding, or undefined if the table data is not yet loaded.
*/
getAllCurrentContexts(): Context[] | undefined;
/**
* Get the count of the row binding of the table.
*
*
* @returns The count of the row binding
*/
getCount(): number | undefined;
/**
* Get the variant management applied to the table.
*
*
* @returns Key of the currently selected variant. In case the model is not yet set, `null` will be returned.
*/
getCurrentVariantKey(): null | string;
/**
* Get the fields that should be ignored when generating the table.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.Table.getIgnoredFields} instead
*
* @returns The value of the ignoredFields property
*/
getIgnoredFields(): string;
/**
* Gets the path to the metadata that should be used to generate the table.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.Table.getMetaPath} instead
*
* @returns The path to the metadata
*/
getMetaPath(): string;
/**
* Get the presentation variant that is currently applied on the table.
*
*
* @returns The presentation variant applied to the table
*/
getPresentationVariant(): Promise;
/**
* Gets contexts from the table that have been selected by the user.
*
*
* @returns Contexts of the rows selected by the user
*/
getSelectedContexts(): Context[];
/**
* Get the selection variant from the table. This function considers only the selection variant applied
* at the control level.
*
*
* @returns A promise which resolves with {@link sap.fe.navigation.SelectionVariant}
*/
getSelectionVariant(): Promise;
/**
* Hide the columns with the given column keys by setting their availability to Default.
*
* @since 1.124.0
* @experimental As of version 1.124.0.
*
* @returns Promise
*/
hideColumns(
/**
* The keys for the columns to hide
*/
columnKeys: string[]
): Promise;
/**
* Requests a refresh of the table.
*/
refresh(): void;
/**
* Removes an action from the table.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.Table.removeAction} instead
*
* @returns The removed action or null
*/
removeAction(
/**
* The action to remove, or its index or ID
*/
action: number | Action | string
): null | Action;
/**
* Removes a column from the table.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.Table.removeColumn} instead
*
* @returns The removed column or null
*/
removeColumn(
/**
* The column to remove, or its index or ID
*/
column: number | Column | string
): null | Column;
/**
* Removes a message from the table.
*/
removeMessage(
/**
* The id of the message
*/
id: string
): void;
/**
* Set a variant management to the table.
*/
setCurrentVariantKey(
/**
* Key of the variant that should be selected. If the passed key doesn't identify a variant, it will be
* ignored.
*/
key: string
): void;
/**
* Sets the fields that should be ignored when generating the table.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.Table.setIgnoredFields} instead
*
* @returns Reference to this to allow method chaining
*/
setIgnoredFields(
/**
* The fields to ignore
*/
ignoredFields: string
): this;
/**
* Sets the path to the metadata that should be used to generate the table.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.Table.setMetaPath} instead
*
* @returns Reference to this to allow method chaining
*/
setMetaPath(
/**
* The path to the metadata
*/
metaPath: string
): this;
/**
* Set a new presentation variant to the table.
*/
setPresentationVariant(
/**
* The new presentation variant that is to be set on the table.
*/
tablePV: PresentationVariant
): Promise;
/**
* Sets {@link sap.fe.navigation.SelectionVariant } to the table. Note: setSelectionVariant will clear existing
* filters and then apply the SelectionVariant values.
*
*
* @returns A promise for asynchronous handling
*/
setSelectionVariant(
/**
* The {@link sap.fe.navigation.SelectionVariant} to apply to the table
*/
selectionVariant: SelectionVariant,
/**
* Optional. If true, we will use the associated text property values (if they're available in the SelectionVariant)
* to display the filter value descriptions, instead of loading them from the backend
*/
prefillDescriptions?: boolean
): Promise;
/**
* Show the columns with the given column keys by setting their availability to Default.
*
* @since 1.124.0
* @experimental As of version 1.124.0.
*
* @returns Promise
*/
showColumns(
/**
* The keys for the columns to show
*/
columnKeys: string[]
): Promise;
}
/**
* Describes the settings that can be provided to the Table constructor.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.Table} instead
*/
export interface $TableSettings extends $TableSettings1 {
/**
* An expression that allows you to control the 'busy' state of the table.
*/
busy?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Determines whether the table adapts to the condensed layout.
*/
condensedTableLayout?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines the path of the context used in the current page or block.
* This setting is defined by the framework.
*/
contextPath?: string | PropertyBindingInfo;
/**
* Determines whether the number of fixed columns can be configured in the Column Settings dialog.
* This property doesn't apply for responsive tables
*/
disableColumnFreeze?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Controls if the copy functionality of the table is disabled or not.
*/
disableCopyToClipboard?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Specifies if the column width is automatically calculated.
*/
enableAutoColumnWidth?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Controls if the export functionality of the table is enabled or not.
*/
enableExport?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Controls whether the table can be opened in full-screen mode or not.
*/
enableFullScreen?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Controls if the paste functionality of the table is enabled or not.
*/
enablePaste?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Determine whether the data copied to the computed columns is sent to the back end.
*/
enablePastingOfComputedProperties?:
| boolean
| PropertyBindingInfo
| `{${string}}`;
/**
* Determines whether the Clear All button is enabled by default.
* To enable the Clear All button by default, you must set this property to false.
*/
enableSelectAll?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Configures the file name of exported table.
* It's limited to 31 characters. If the name is longer, it is truncated.
*/
exportFileName?: string | PropertyBindingInfo;
/**
* Maximum allowed number of records to be exported in one request.
*/
exportRequestSize?: int | PropertyBindingInfo | `{${string}}`;
/**
* Configures the sheet name of exported table.
* It's limited to 31 characters. If the name is longer, it is truncated.
*/
exportSheetName?: string | PropertyBindingInfo;
/**
* ID of the FilterBar building block associated with the table.
*/
filterBar?: string | PropertyBindingInfo;
/**
* Number of columns that are fixed on the left. Only columns which are not fixed can be scrolled horizontally.
* This property is not relevant for responsive tables
*/
frozenColumnCount?: int | PropertyBindingInfo | `{${string}}`;
/**
* Specifies the header text that is shown in the table.
*/
header?: string | PropertyBindingInfo;
/**
* Controls if the header text should be shown or not.
*/
headerVisible?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Comma-separated value of fields that must be ignored in the OData metadata by the Table building block.
*
* The table building block is not going to create built-in columns or offer table personalization for comma-separated
* value of fields that are provided in the ignoredfields.
*
* Any column referencing an ignored field is to be removed.
*/
ignoredFields?: string | PropertyBindingInfo;
/**
* Indicates if the table should load data when initialized.
* This property is used only if a filter bar is associated with the table and doesn't use the liveMode.
* If set to `true`, the table loads data on initialization if the filter bar has no mandatory filters or
* the mandatory filters are filled in.
* If set to `false`, the table waits for the filter bar to be filled in before loading data.
* The default value is `false`.
*/
initialLoad?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines whether to display the search action.
*/
isSearchable?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines the relative path to a LineItem, PresentationVariant, or SelectionPresentationVariant in the
* metamodel, based on the current contextPath.
*/
metaPath?: string | PropertyBindingInfo;
/**
* Changes the size of the IllustratedMessage in the table, or removes it completely.
* Allowed values are `illustratedMessage-Auto`, `illustratedMessage-Base`, `illustratedMessage-Dialog`,
* `illustratedMessage-Dot`, `illustratedMessage-Scene`, `illustratedMessage-Spot` or `text`.
*/
modeForNoDataMessage?: string | PropertyBindingInfo;
/**
* Controls which options should be enabled for the table personalization dialog.
* If it is set to `true`, all possible options for this kind of table are enabled.
*
* If it is set to `false`, personalization is disabled.
*
*
*
* You can also provide a more granular control for the personalization by providing a comma-separated list
* with the options you want to be available.
*
* Available options are:
*
* - Sort
*
* - Column
*
* - Filter
*
* - Group
*
*
*
* The Group option is only applicable to analytical tables and responsive tables.
*/
personalization?: string | PropertyBindingInfo;
/**
* Defines the layout options of the table popins. Only applies to responsive tables.
* Allowed values are `Block`, `GridLarge`, and `GridSmall`.
*
* - `Block`: Sets a block layout for rendering the table popins. The elements inside the popin container
* are rendered one below the other.
*
* - `GridLarge`: Sets a grid layout for rendering the table popins. The grid width for each table popin
* is comparatively larger than GridSmall, so this layout allows less content to be rendered in a single
* popin row.
*
* - `GridSmall`: Sets a grid layout for rendering the table popins. The grid width for each table popin
* is small, so this layout allows more content to be rendered in a single popin row.
*/
popinLayout?: string | PropertyBindingInfo;
/**
* An expression that allows you to control the 'read-only' state of the table.
* If you do not set any expression, SAP Fiori elements hooks into the standard lifecycle to determine the
* current state.
*/
readOnly?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Number of rows to be displayed in the table. Does not apply to responsive tables.
*/
rowCount?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines how the table handles the visible rows. Does not apply to responsive tables.
* Allowed values are `Auto`, `Fixed`, and `Interactive`.
*
* - If set to `Fixed`, the table always has as many rows as defined in the rowCount property.
*
* - If set to `Auto`, the number of rows is changed by the table automatically. The table adjusts the number
* of rows based on the available space, which is limited by the surrounding container. The table cannot
* have fewer rows than defined in the `rowCount` property.
*
* - If set to `Interactive` the table can have as many rows as defined in the rowCount property. The number
* of rows can be modified by dragging the resizer.
*/
rowCountMode?: string | PropertyBindingInfo;
/**
* Defines how many additional data records are requested from the back-end system when the user scrolls
* vertically in the table.
*/
scrollThreshold?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines the maximum number of rows that can be selected at once in the table.
* This property does not apply to responsive tables.
*/
selectionLimit?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines the selection mode to be used by the table.
* Allowed values are `None`, `Single`, `ForceSingle`, `Multi`, `ForceMulti`, or `Auto`.
* If set to `Single`, `Multi`, or `Auto`, SAP Fiori elements hooks into the standard lifecycle to determine
* a consistent selection mode.
* If set to `ForceSingle` or `ForceMulti`, note this may not adhere to the SAP Fiori guidelines.
*/
selectionMode?: string | PropertyBindingInfo;
/**
* Defines the number of records to be initially requested from the back end.
*/
threshold?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines the type of table that is used by the building block to render data.
* Allowed values are `GridTable`, `ResponsiveTable`, and `AnalyticalTable`.
*/
type?: string | PropertyBindingInfo;
/**
* Controls the kind of variant management that should be enabled for the table.
* Allowed value is `Control`.
*
* If set with value `Control`, a variant management control is seen within the table and the table is linked
* to this.
*
* If not set with any value, control level variant management is not available for this table.
*/
variantManagement?: string | PropertyBindingInfo;
/**
* Indicates if the column header should be a part of the width calculation.
*/
widthIncludingColumnHeader?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Aggregate overflowGroups of the table.
*/
actionOverflowGroups?:
| OverflowGroup[]
| OverflowGroup
| AggregationBindingInfo
| `{${string}}`;
/**
* Aggregate actions of the table.
*/
actions?:
| ITableActionOrGroup[]
| ITableActionOrGroup
| AggregationBindingInfo
| `{${string}}`;
/**
* A set of options that can be configured to control the aggregation behavior
*/
analyticalConfiguration?: AnalyticalConfiguration;
/**
* Aggregate columns of the table.
*/
columns?:
| ITableColumn[]
| ITableColumn
| AggregationBindingInfo
| `{${string}}`;
/**
* A set of options that can be configured.
*/
creationMode?: TableCreationOptions;
/**
* Aggregate mass edit of the table.
*/
massEdit?: MassEdit;
/**
* Aggregation to forward the IllustratedMessage control to the mdc control.
*/
noData?: Text | IllustratedMessage | PropertyBindingInfo | `{${string}}`;
/**
* Aggregate quickVariantSelection of the table.
*/
quickVariantSelection?: QuickVariantSelection;
/**
* Before a table rebind, an event is triggered that contains information about the binding.
* The event contains a parameter, `collectionBindingInfo`, which is an instance of `CollectionBindingInfoAPI`.
* It can also contain an optional parameter, `quickFilterKey`, which indicates what is the quick filter
* key (if any) being processed for the table.
* This allows you to manipulate the table's list binding.
* You can use this event to attach event handlers to the table's list binding.
* You can use this event to add selects, and add or read the sorters and filters.
*/
beforeRebindTable?: (oEvent: Table$BeforeRebindTableEvent) => void;
/**
* An event is triggered when the user chooses a row. The event contains information about which row is
* chosen.
* You can set this to handle the navigation manually.
*/
rowPress?: (oEvent: Event) => void;
/**
* An event triggered when the selection in the table changes.
*/
selectionChange?: (oEvent: Event) => void;
}
/**
* Parameters of the Table#beforeRebindTable event.
*/
export interface Table$BeforeRebindTableEventParameters
extends Table$BeforeRebindTableEventParameters1 {}
/**
* Event object of the Table#beforeRebindTable event.
*/
export type Table$BeforeRebindTableEvent = Event<
Table$BeforeRebindTableEventParameters,
Table
>;
/**
* Parameters of the Table#rowPress event.
*/
export interface Table$RowPressEventParameters
extends Table$RowPressEventParameters1 {}
/**
* Event object of the Table#rowPress event.
*/
export type Table$RowPressEvent = Event;
/**
* Parameters of the Table#selectionChange event.
*/
export interface Table$SelectionChangeEventParameters
extends Table$SelectionChangeEventParameters1 {}
/**
* Event object of the Table#selectionChange event.
*/
export type Table$SelectionChangeEvent = Event<
Table$SelectionChangeEventParameters,
Table
>;
}
declare module "sap/fe/macros/table/TableCreationOptions" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Create options for the table.
*/
export default class TableCreationOptions extends BuildingBlockObjectProperty {}
/**
* Describes the settings that can be provided to the TableCreationOptions constructor.
*/
export interface $TableCreationOptionsSettings
extends $BuildingBlockObjectPropertySettings {
/**
* Specifies if the new entry should be created at the top or bottom of a table in case of creationMode
* 'Inline'
*
* The default value is 'false'
*/
createAtEnd?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines the list of properties that will be displayed in the creation dialog, when the creation mode
* is set to 'CreationDialog'.
*
* The value is a comma-separated list of property names.
*/
creationFields?: string | PropertyBindingInfo;
/**
* Specifies if the new entry should be hidden in case of creationMode 'InlineCreationRows'. This only applies
* to responsive tables.
*
* The default value is 'false'
*/
inlineCreationRowsHiddenInEditMode?:
| boolean
| PropertyBindingInfo
| `{${string}}`;
/**
* Defines the creation mode to be used by the table.
* Allowed values are `NewPage`, `Inline`, `InlineCreationsRows`, `External` or `CreationDialog`.
*
*
*
* NewPage - the created document is shown in a new page, depending on whether metadata 'Sync', 'Async'
* or 'Deferred' is used
*
* Inline - The creation is done inline
*
* InlineCreationsRows - The creation is done inline with an empty row
*
* External - The creation is done in a different application specified via the parameter 'outbound'
* CreationDialog - the creation is done in the table, with a dialog allowing to specify some initial property
* values (the properties are listed in `creationFields`).
*
* If not set with any value:
*
* if navigation is defined, the default value is 'NewPage'. Otherwise it is 'Inline'.
*/
name?: string | PropertyBindingInfo;
/**
* The navigation target where the document is created in case of creationMode 'External'
*/
outbound?: string | PropertyBindingInfo;
}
}
declare module "sap/fe/macros/table/TreeTable" {
import {
default as TreeTable1,
$TreeTableSettings as $TreeTableSettings1,
TreeTable$BeforeRebindTableEventParameters as TreeTable$BeforeRebindTableEventParameters1,
TreeTable$RowPressEventParameters as TreeTable$RowPressEventParameters1,
TreeTable$SelectionChangeEventParameters as TreeTable$SelectionChangeEventParameters1,
} from "sap/fe/macros/TreeTable";
import Action from "sap/fe/macros/table/Action";
import Column from "sap/fe/macros/table/Column";
import Event from "sap/ui/base/Event";
import Context from "sap/ui/model/odata/v4/Context";
import PresentationVariant from "sap/fe/navigation/PresentationVariant";
import SelectionVariant from "sap/fe/navigation/SelectionVariant";
import {
PropertyBindingInfo,
AggregationBindingInfo,
} from "sap/ui/base/ManagedObject";
import OverflowGroup from "sap/fe/macros/table/OverflowGroups";
import { ITableActionOrGroup } from "sap/fe/macros/table/ITableActionOrGroup";
import AnalyticalConfiguration from "sap/fe/macros/table/AnalyticalConfiguration";
import { ITableColumn } from "sap/fe/macros/table/ITableColumn";
import TreeTableCreationOptions from "sap/fe/macros/table/TreeTableCreationOptions";
import MassEdit from "sap/fe/macros/table/MassEdit";
import Text from "sap/m/Text";
import IllustratedMessage from "sap/m/IllustratedMessage";
import QuickVariantSelection from "sap/fe/macros/table/QuickVariantSelection";
/**
* Building block used to create a table based on the metadata provided by OData V4.
*
*
* Usually, a LineItem, PresentationVariant or SelectionPresentationVariant annotation is expected, but
* the Table building block can also be used to display an EntitySet.
*
*
* If a PresentationVariant is specified, then it must have UI.LineItem as the first property of the Visualizations.
*
*
* If a SelectionPresentationVariant is specified, then it must contain a valid PresentationVariant that
* also has a UI.LineItem as the first property of the Visualizations.
* Usage example:
*
* ```javascript
*
* sap.ui.require(["sap/fe/macros/table/TreeTable"], function(TreeTable) {
* ...
* new TreeTable("myTable", {metaPath:"@com.sap.vocabularies.UI.v1.LineItem"})
* })
* ```
*
* This is currently an experimental API because the structure of the generated content will change to come
* closer to the Table that you get out of templates.
* The public method and property will not change but the internal structure will so be careful on your
* usage.
*
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.TreeTable} instead
*/
export default class TreeTable extends TreeTable1 {
/**
* Adds an action to the table.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.TreeTable.addAction} instead
*
* @returns Reference to this to allow method chaining
*/
addAction(
/**
* The action to add
*/
action: Action
): this;
/**
* Adds a column to the table.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.TreeTable.addColumn} instead
*
* @returns Reference to this to allow method chaining
*/
addColumn(
/**
* The column to add
*/
column: Column
): this;
/**
* Adds a message to the table.
* The message applies to the whole table and not to an individual table row.
*
*
*
* @returns Promise The ID of the message
*/
addMessage(
/**
* The parameters to create the message
*/
parameters: {
/**
* Message description
*/
description?: string;
/**
* Message text
*/
message?: string;
/**
* True if the message is persistent
*/
persistent?: boolean;
/**
* Message type
*/
type?: /* was: sap.ui.core.message.MessageType */ any;
}
): Promise;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachBeforeRebindTable(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: TreeTable$BeforeRebindTableEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachBeforeRebindTable(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: TreeTable$BeforeRebindTableEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachRowPress(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachRowPress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachSelectionChange(
/**
* An application-specific payload object that will be passed to the event handler along with the event
* object when firing the event
*/
oData: object,
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
attachSelectionChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Clears the selection.
*
* @since 1.142.0
*/
clearSelection(): void;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
detachBeforeRebindTable(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: TreeTable$BeforeRebindTableEvent) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
detachRowPress(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
detachSelectionChange(
/**
* The function to be called when the event occurs
*/
fnFunction: (p1: Event) => void,
/**
* The context object to call the event handler with. Defaults to this `this` control
*/
oListener?: object
): this;
/**
* Fires event beforeRebindTable
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
fireBeforeRebindTable(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler> }
* for the set of parameters that are expected by the event handlers.
*/
mParameters?: TreeTable$BeforeRebindTableEventParameters
): this;
/**
* Fires event rowPress to attached
* listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
fireRowPress(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler> }
* for the set of parameters that are expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Fires event selectionChange
* to attached listeners.
*
* @ui5-protected Do not call from applications (only from related classes in the framework)
*
* @returns Reference to sap.fe.macros.Table to allow
* method chaining
*/
fireSelectionChange(
/**
* The parameters to pass along with the event.
* See {@link types.EventHandler>} for the set of parameters that
* are expected by the event handlers.
*/
mParameters?: {}
): this;
/**
* Returns all contexts that are loaded in the table.
* See also the {@link sap.ui.model.odata.v4.ODataListBinding#getAllCurrentContexts } method.
*
*
* @since 1.142.0
*
* @returns All contexts of the table's list binding, or undefined if the table data is not yet loaded.
*/
getAllCurrentContexts(): Context[] | undefined;
/**
* Get the count of the row binding of the table.
*
*
* @returns The count of the row binding
*/
getCount(): number | undefined;
/**
* Get the variant management applied to the table.
*
*
* @returns Key of the currently selected variant. In case the model is not yet set, `null` will be returned.
*/
getCurrentVariantKey(): null | string;
/**
* Get the fields that should be ignored when generating the table.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.TreeTable.getIgnoredFields} instead
*
* @returns The value of the ignoredFields property
*/
getIgnoredFields(): string;
/**
* Gets the path to the metadata that should be used to generate the table.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.TreeTable.getMetaPath} instead
*
* @returns The path to the metadata
*/
getMetaPath(): string;
/**
* Get the presentation variant that is currently applied on the table.
*
*
* @returns The presentation variant applied to the table
*/
getPresentationVariant(): Promise;
/**
* Gets contexts from the table that have been selected by the user.
*
*
* @returns Contexts of the rows selected by the user
*/
getSelectedContexts(): Context[];
/**
* Get the selection variant from the table. This function considers only the selection variant applied
* at the control level.
*
*
* @returns A promise which resolves with {@link sap.fe.navigation.SelectionVariant}
*/
getSelectionVariant(): Promise;
/**
* Hide the columns with the given column keys by setting their availability to Default.
*
* @since 1.124.0
* @experimental As of version 1.124.0.
*
* @returns Promise
*/
hideColumns(
/**
* The keys for the columns to hide
*/
columnKeys: string[]
): Promise;
/**
* Requests a refresh of the table.
*/
refresh(): void;
/**
* Removes an action from the table.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.TreeTable.removeAction} instead
*
* @returns The removed action or null
*/
removeAction(
/**
* The action to remove, or its index or ID
*/
action: number | Action | string
): null | Action;
/**
* Removes a column from the table.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.TreeTable.removeColumn} instead
*
* @returns The removed column or null
*/
removeColumn(
/**
* The column to remove, or its index or ID
*/
column: number | Column | string
): null | Column;
/**
* Removes a message from the table.
*/
removeMessage(
/**
* The id of the message
*/
id: string
): void;
/**
* Set a variant management to the table.
*/
setCurrentVariantKey(
/**
* Key of the variant that should be selected. If the passed key doesn't identify a variant, it will be
* ignored.
*/
key: string
): void;
/**
* Sets the fields that should be ignored when generating the table.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.TreeTable.setIgnoredFields} instead
*
* @returns Reference to this to allow method chaining
*/
setIgnoredFields(
/**
* The fields to ignore
*/
ignoredFields: string
): this;
/**
* Sets the path to the metadata that should be used to generate the table.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.TreeTable.setMetaPath} instead
*
* @returns Reference to this to allow method chaining
*/
setMetaPath(
/**
* The path to the metadata
*/
metaPath: string
): this;
/**
* Set a new presentation variant to the table.
*/
setPresentationVariant(
/**
* The new presentation variant that is to be set on the table.
*/
tablePV: PresentationVariant
): Promise;
/**
* Sets {@link sap.fe.navigation.SelectionVariant } to the table. Note: setSelectionVariant will clear existing
* filters and then apply the SelectionVariant values.
*
*
* @returns A promise for asynchronous handling
*/
setSelectionVariant(
/**
* The {@link sap.fe.navigation.SelectionVariant} to apply to the table
*/
selectionVariant: SelectionVariant,
/**
* Optional. If true, we will use the associated text property values (if they're available in the SelectionVariant)
* to display the filter value descriptions, instead of loading them from the backend
*/
prefillDescriptions?: boolean
): Promise;
/**
* Show the columns with the given column keys by setting their availability to Default.
*
* @since 1.124.0
* @experimental As of version 1.124.0.
*
* @returns Promise
*/
showColumns(
/**
* The keys for the columns to show
*/
columnKeys: string[]
): Promise;
}
/**
* Describes the settings that can be provided to the TreeTable constructor.
*
* @deprecated As of version 1.145. Use {@link sap.fe.macros.TreeTable} instead
*/
export interface $TreeTableSettings extends $TreeTableSettings1 {
/**
* An expression that allows you to control the 'busy' state of the table.
*/
busy?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Determines whether the table adapts to the condensed layout.
*/
condensedTableLayout?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines the path of the context used in the current page or block.
* This setting is defined by the framework.
*/
contextPath?: string | PropertyBindingInfo;
/**
* Determines whether the number of fixed columns can be configured in the Column Settings dialog.
* This property doesn't apply for responsive tables
*/
disableColumnFreeze?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Controls if the copy functionality of the table is disabled or not.
*/
disableCopyToClipboard?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Specifies if the column width is automatically calculated.
*/
enableAutoColumnWidth?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Controls if the export functionality of the table is enabled or not.
*/
enableExport?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Controls whether the table can be opened in full-screen mode or not.
*/
enableFullScreen?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Controls if the paste functionality of the table is enabled or not.
*/
enablePaste?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Determine whether the data copied to the computed columns is sent to the back end.
*/
enablePastingOfComputedProperties?:
| boolean
| PropertyBindingInfo
| `{${string}}`;
/**
* Determines whether the Clear All button is enabled by default.
* To enable the Clear All button by default, you must set this property to false.
*/
enableSelectAll?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Configures the file name of exported table.
* It's limited to 31 characters. If the name is longer, it is truncated.
*/
exportFileName?: string | PropertyBindingInfo;
/**
* Maximum allowed number of records to be exported in one request.
*/
exportRequestSize?: int | PropertyBindingInfo | `{${string}}`;
/**
* Configures the sheet name of exported table.
* It's limited to 31 characters. If the name is longer, it is truncated.
*/
exportSheetName?: string | PropertyBindingInfo;
/**
* ID of the FilterBar building block associated with the table.
*/
filterBar?: string | PropertyBindingInfo;
/**
* Number of columns that are fixed on the left. Only columns which are not fixed can be scrolled horizontally.
* This property is not relevant for responsive tables
*/
frozenColumnCount?: int | PropertyBindingInfo | `{${string}}`;
/**
* Specifies the header text that is shown in the table.
*/
header?: string | PropertyBindingInfo;
/**
* Controls if the header text should be shown or not.
*/
headerVisible?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* The hierarchy qualifier used in the RecursiveHierarchy annotation.
*/
hierarchyQualifier?: string | PropertyBindingInfo;
/**
* Comma-separated value of fields that must be ignored in the OData metadata by the Table building block.
*
* The table building block is not going to create built-in columns or offer table personalization for comma-separated
* value of fields that are provided in the ignoredfields.
*
* Any column referencing an ignored field is to be removed.
*/
ignoredFields?: string | PropertyBindingInfo;
/**
* Indicates if the table should load data when initialized.
* This property is used only if a filter bar is associated with the table and doesn't use the liveMode.
* If set to `true`, the table loads data on initialization if the filter bar has no mandatory filters or
* the mandatory filters are filled in.
* If set to `false`, the table waits for the filter bar to be filled in before loading data.
* The default value is `false`.
*/
initialLoad?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines the extension point to control whether a source node can be copied to a specific parent node.
*/
isCopyToPositionAllowed?: string | PropertyBindingInfo;
/**
* Defines the extension point to control whether a source node can be dropped on a specific parent node.
*/
isMoveToPositionAllowed?: string | PropertyBindingInfo;
/**
* Defines the extension point to control whether a node can be copied.
*/
isNodeCopyable?: string | PropertyBindingInfo;
/**
* Defines the extension point to control if a node can be dragged.
*/
isNodeMovable?: string | PropertyBindingInfo;
/**
* Defines whether to display the search action.
*/
isSearchable?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines the relative path to a LineItem, PresentationVariant, or SelectionPresentationVariant in the
* metamodel, based on the current contextPath.
*/
metaPath?: string | PropertyBindingInfo;
/**
* Changes the size of the IllustratedMessage in the table, or removes it completely.
* Allowed values are `illustratedMessage-Auto`, `illustratedMessage-Base`, `illustratedMessage-Dialog`,
* `illustratedMessage-Dot`, `illustratedMessage-Scene`, `illustratedMessage-Spot` or `text`.
*/
modeForNoDataMessage?: string | PropertyBindingInfo;
/**
* Controls which options should be enabled for the table personalization dialog.
* If it is set to `true`, all possible options for this kind of table are enabled.
*
* If it is set to `false`, personalization is disabled.
*
*
*
* You can also provide a more granular control for the personalization by providing a comma-separated list
* with the options you want to be available.
*
* Available options are:
*
* - Sort
*
* - Column
*
* - Filter
*
* - Group
*
*
*
* The Group option is only applicable to analytical tables and responsive tables.
*/
personalization?: string | PropertyBindingInfo;
/**
* Defines the layout options of the table popins. Only applies to responsive tables.
* Allowed values are `Block`, `GridLarge`, and `GridSmall`.
*
* - `Block`: Sets a block layout for rendering the table popins. The elements inside the popin container
* are rendered one below the other.
*
* - `GridLarge`: Sets a grid layout for rendering the table popins. The grid width for each table popin
* is comparatively larger than GridSmall, so this layout allows less content to be rendered in a single
* popin row.
*
* - `GridSmall`: Sets a grid layout for rendering the table popins. The grid width for each table popin
* is small, so this layout allows more content to be rendered in a single popin row.
*/
popinLayout?: string | PropertyBindingInfo;
/**
* An expression that allows you to control the 'read-only' state of the table.
* If you do not set any expression, SAP Fiori elements hooks into the standard lifecycle to determine the
* current state.
*/
readOnly?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Number of rows to be displayed in the table. Does not apply to responsive tables.
*/
rowCount?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines how the table handles the visible rows. Does not apply to responsive tables.
* Allowed values are `Auto`, `Fixed`, and `Interactive`.
*
* - If set to `Fixed`, the table always has as many rows as defined in the rowCount property.
*
* - If set to `Auto`, the number of rows is changed by the table automatically. The table adjusts the number
* of rows based on the available space, which is limited by the surrounding container. The table cannot
* have fewer rows than defined in the `rowCount` property.
*
* - If set to `Interactive` the table can have as many rows as defined in the rowCount property. The number
* of rows can be modified by dragging the resizer.
*/
rowCountMode?: string | PropertyBindingInfo;
/**
* Defines how many additional data records are requested from the back-end system when the user scrolls
* vertically in the table.
*/
scrollThreshold?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines the maximum number of rows that can be selected at once in the table.
* This property does not apply to responsive tables.
*/
selectionLimit?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines the selection mode to be used by the table.
* Allowed values are `None`, `Single`, `ForceSingle`, `Multi`, `ForceMulti`, or `Auto`.
* If set to `Single`, `Multi`, or `Auto`, SAP Fiori elements hooks into the standard lifecycle to determine
* a consistent selection mode.
* If set to `ForceSingle` or `ForceMulti`, note this may not adhere to the SAP Fiori guidelines.
*/
selectionMode?: string | PropertyBindingInfo;
/**
* Defines the number of records to be initially requested from the back end.
*/
threshold?: int | PropertyBindingInfo | `{${string}}`;
/**
* Defines the type of table that will be used by the building block to render the data. This setting is
* defined by the framework.
* Allowed value is `TreeTable`.
*/
type?: string | PropertyBindingInfo;
/**
* Controls the kind of variant management that should be enabled for the table.
* Allowed value is `Control`.
*
* If set with value `Control`, a variant management control is seen within the table and the table is linked
* to this.
*
* If not set with any value, control level variant management is not available for this table.
*/
variantManagement?: string | PropertyBindingInfo;
/**
* Indicates if the column header should be a part of the width calculation.
*/
widthIncludingColumnHeader?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Aggregate overflowGroups of the table.
*/
actionOverflowGroups?:
| OverflowGroup[]
| OverflowGroup
| AggregationBindingInfo
| `{${string}}`;
/**
* Aggregate actions of the table.
*/
actions?:
| ITableActionOrGroup[]
| ITableActionOrGroup
| AggregationBindingInfo
| `{${string}}`;
/**
* A set of options that can be configured to control the aggregation behavior
*/
analyticalConfiguration?: AnalyticalConfiguration;
/**
* Aggregate columns of the table.
*/
columns?:
| ITableColumn[]
| ITableColumn
| AggregationBindingInfo
| `{${string}}`;
/**
* A set of options that can be configured.
*/
creationMode?: TreeTableCreationOptions;
/**
* Aggregate mass edit of the table.
*/
massEdit?: MassEdit;
/**
* Aggregation to forward the IllustratedMessage control to the mdc control.
*/
noData?: Text | IllustratedMessage | PropertyBindingInfo | `{${string}}`;
/**
* Aggregate quickVariantSelection of the table.
*/
quickVariantSelection?: QuickVariantSelection;
/**
* Before a table rebind, an event is triggered that contains information about the binding.
* The event contains a parameter, `collectionBindingInfo`, which is an instance of `CollectionBindingInfoAPI`.
* It can also contain an optional parameter, `quickFilterKey`, which indicates what is the quick filter
* key (if any) being processed for the table.
* This allows you to manipulate the table's list binding.
* You can use this event to attach event handlers to the table's list binding.
* You can use this event to add selects, and add or read the sorters and filters.
*/
beforeRebindTable?: (oEvent: TreeTable$BeforeRebindTableEvent) => void;
/**
* An event is triggered when the user chooses a row. The event contains information about which row is
* chosen.
* You can set this to handle the navigation manually.
*/
rowPress?: (oEvent: Event) => void;
/**
* An event triggered when the selection in the table changes.
*/
selectionChange?: (oEvent: Event) => void;
}
/**
* Parameters of the TreeTable#beforeRebindTable event.
*/
export interface TreeTable$BeforeRebindTableEventParameters
extends TreeTable$BeforeRebindTableEventParameters1 {}
/**
* Event object of the TreeTable#beforeRebindTable event.
*/
export type TreeTable$BeforeRebindTableEvent = Event<
TreeTable$BeforeRebindTableEventParameters,
TreeTable
>;
/**
* Parameters of the TreeTable#rowPress event.
*/
export interface TreeTable$RowPressEventParameters
extends TreeTable$RowPressEventParameters1 {}
/**
* Event object of the TreeTable#rowPress event.
*/
export type TreeTable$RowPressEvent = Event<
TreeTable$RowPressEventParameters,
TreeTable
>;
/**
* Parameters of the TreeTable#selectionChange event.
*/
export interface TreeTable$SelectionChangeEventParameters
extends TreeTable$SelectionChangeEventParameters1 {}
/**
* Event object of the TreeTable#selectionChange event.
*/
export type TreeTable$SelectionChangeEvent = Event<
TreeTable$SelectionChangeEventParameters,
TreeTable
>;
}
declare module "sap/fe/macros/table/TreeTableCreationOptions" {
import {
default as BuildingBlockObjectProperty,
$BuildingBlockObjectPropertySettings,
} from "sap/fe/macros/controls/BuildingBlockObjectProperty";
import { PropertyBindingInfo } from "sap/ui/base/ManagedObject";
/**
* Create options for the tree table.
*/
export default class TreeTableCreationOptions extends BuildingBlockObjectProperty {}
/**
* Describes the settings that can be provided to the TreeTableCreationOptions constructor.
*/
export interface $TreeTableCreationOptionsSettings
extends $BuildingBlockObjectPropertySettings {
/**
* Specifies if the new entry should be placed at the position computed by the backend (e.g. taking sorting
* into account).
*
* The default value is 'false' (that is, the new entry is placed as the first child below its parent).
*/
createInPlace?: boolean | PropertyBindingInfo | `{${string}}`;
/**
* Defines the list of properties that will be displayed in the creation dialog, when the creation mode
* is set to 'CreationDialog'.
*
* The value is a comma-separated list of property names.
*/
creationFields?: string | PropertyBindingInfo;
/**
* Defines the extension point to control the enablement of the Create button or Create Menu buttons.
*/
isCreateEnabled?: string | PropertyBindingInfo;
/**
* Defines the creation mode to be used by the tree table.
* Allowed values are `NewPage`, `Inline` or `CreationDialog`.
*
*
*
* NewPage - the created document is shown in a new page, depending on whether metadata 'Sync', 'Async'
* or 'Deferred' is used.
*
* Inline - the creation is done inline.
*
* CreationDialog - the creation is done in the table, with a dialog allowing to specify some initial property
* values (the properties are listed in `creationFields`).
*
* If not set with any value:
*
* if navigation is defined, the default value is 'NewPage'. Otherwise it is 'Inline'.
*/
name?: string | PropertyBindingInfo;
/**
* Defines the nodes to be added on the custom create.
* This object must have the following properties:
* propertyName: the name of the property on the page entity set used to categorize the node type to be
* created within the hierarchy
*
* values: an array of key, label and an optional creationFields that define a value of the property defined
* by the propertyName key, its label, and the specific fields to be shown in the creation dialog.
*/
nodeType?: object | PropertyBindingInfo | `{${string}}`;
}
}
declare module "sap/fe/macros/controls/section/ISingleSectionContributor" {
/**
* This interface should be implemented by controls to define it's behaviour
* when it is the only control in a Fiori Elements Object Page Section.
*
*
*
* The Fiori Elements Object Page Section checks if it has only one control at runtime and then
* calls the relevant methods if the control implements the interface.
*
*
*
* Incase of a composite control or controls placed inside layouts (VBox, HBox, FlexBox) etc. it should
* always be the root/layout control that implements this interface.
* It is upto the root/layout contrl in this case of interact with inner controls.
*
*
*
* Control must implement getSectionContentRole to define whether it is a "provider" or a "consumer".
*
*
* - provider: Building block is the provider of information to the section
*
* - consumer: Building block is the consumer of information provided by the section
*
*
*
* If the control is a "provider" then it should implement the getDataFromProvider method and return ProviderData.
*
*
* If the control is a "consumer" then it should implement the sendDataToConsumer method and consume ConsumerData.
*
*
*
*
* @since 1.126.0
*/
export interface ISingleSectionContributor {
__implements__sap_fe_macros_controls_section_ISingleSectionContributor: boolean;
/**
* When the content role is "provider" this method is called by the section to get the information from
* the the provider.
*
*
* @returns The data from the provider which is needed by the section.
*/
getDataFromProvider(): ProviderData;
/**
* Defines the role of a control when it is the only content in the section. Allowed roles are "provider"
* and "consumer".
*
*
*
* provider: control is the provider of information to the section. Control provides the information and
* section acts on it.
*
*
*
* consumer: control is the consumer of information provided by the section. Section provides the information
* and the control acts on it.
*
*
*
* @returns The role played by the control when it is the only content in the Fiori Elements Object Page
* Section.
*/
getSectionContentRole(): string;
/**
* When the content role is "consumer" this method is called by the section to collect
* and send information from the section to the control.
*/
sendDataToConsumer(
/**
* Data provide by the section to the control.
*/
consumerData: ConsumerData
): void;
}
/**
* Definition of data consumer by section from single control
*/
export type ConsumerData = {
/**
* Defines the title to be used by the single control.
*/
title: string;
};
/**
* Definition of data provided by section to single control
*/
export type ProviderData = {
/**
* Defines the title to be used by the section.
*/
title: string;
};
}
declare module "sap/fe/macros/field/mixin/FieldMixin" {
import Control from "sap/ui/core/Control";
/**
* Mixin providing control access, value getter and setter, enabled state management, and message handling
* for field controls.
* This mixin combines the following functionalities:
* 1. FieldControlAccessor: access to the inner control of field-based building blocks
* 2. FieldValueAccessor: value getter and setter and enablement getter and setter
* 3. FieldMessageHandler: adding and managing validation messages
* This mixin enables building blocks to programmatically read and write values, enabled state,
* and validation messages across different control types (CheckBox, Input, and MDC Field).
*/
export default class FieldMixin
implements /* was: sap.fe.base.ClassSupport.IInterfaceWithMixin */ Object
{
__implements__sap_fe_base_ClassSupport_IInterfaceWithMixin: boolean;
/**
* Adds a validation message to the field.
* This method creates a new message and associates it with the field's binding path,
* making it visible in the field's value state and message popover.
*
*
* @returns The ID of the created message
*/
addMessage(
/**
* The message parameters
*/
parameters: {
/**
* Detailed message description
*/
description?: string;
/**
* Message text to display
*/
message?: string;
/**
* Whether the message persists across refreshes
*/
persistent?: boolean;
/**
* Type of the message, such as Error, Warning, Success, or Information
*/
type?: /* was: sap.ui.core.message.MessageType */ any;
}
): string;
/**
* Gets the current enabled state of the field.
* This method handles various control types and wrappers, returning true for controls
* that are always enabled, such as Text, and checking the enabled property for interactive controls.
*
*
* @returns Boolean value indicating if the field is enabled, or true if control is not found (graceful
* fallback)
*/
getEnabled(): boolean;
/**
* Gets the message manager instance from the UI5 core.
* The message manager is responsible for handling all messages in the application.
*
*
* @returns The Messaging instance
*/
getMessageManager(): /* was: sap.ui.core.Messaging */ any;
/**
* Gets the current value of the field.
* This method handles various control types including CheckBox, Input, Text, MDC Field,
* RatingIndicator, Link, Label, ObjectStatus, ObjectIdentifier, and building blocks.
*
*
* @returns The current value of the field or undefined if control is not found
*/
getValue(): boolean | number | string | undefined;
/**
* Removes a message from the field by its ID.
* This method finds the message in the message model and removes it,
* clearing it from the field's value state.
*/
removeMessage(
/**
* The ID of the message to remove
*/
id: string
): void;
/**
* Sets the current enabled state of the field.
* This method handles various control types, setting the appropriate property,
* such as enabled, active, titleActive, or edit mode based on the control type.
*
*
* @returns The current field reference for chaining
*/
setEnabled(
/**
* The enabled state to set
*/
enabled: boolean
): Control;
/**
* Sets the current value of the field.
* This method handles various control types including CheckBox, Input, Text, and MDC Field.
*
*
* @returns The current field reference for chaining
*/
setValue(
/**
* The value to set
*/
value: boolean | number | string
): Control;
}
}
declare namespace sap {
interface IUI5DefineDependencyNames {
"sap/fe/macros/AINotice": undefined;
"sap/fe/macros/AlwaysEditableField": undefined;
"sap/fe/macros/Chart": undefined;
"sap/fe/macros/chart/Action": undefined;
"sap/fe/macros/chart/ActionGroup": undefined;
"sap/fe/macros/chart/Chart": undefined;
"sap/fe/macros/chart/OverflowGroup": undefined;
"sap/fe/macros/CollaborativeDraftHandler": undefined;
"sap/fe/macros/CollectionBindingInfo": undefined;
"sap/fe/macros/ConditionalSwitch": undefined;
"sap/fe/macros/ConditionalSwitchProperty": undefined;
"sap/fe/macros/controls/BaseAction": undefined;
"sap/fe/macros/controls/BuildingBlockObjectProperty": undefined;
"sap/fe/macros/controls/BuildingBlockWithTemplating": undefined;
"sap/fe/macros/controls/section/ISingleSectionContributor": undefined;
"sap/fe/macros/fcl/FlexibleColumnLayoutActions.block": undefined;
"sap/fe/macros/Field": undefined;
"sap/fe/macros/field/Field": undefined;
"sap/fe/macros/field/FieldFormatOptions": undefined;
"sap/fe/macros/field/mixin/FieldMixin": undefined;
"sap/fe/macros/FilterBar": undefined;
"sap/fe/macros/filterBar/FilterBar": undefined;
"sap/fe/macros/filterBar/FilterField": undefined;
"sap/fe/macros/filterBar/FilterFieldOverride": undefined;
"sap/fe/macros/form/Form.block": undefined;
"sap/fe/macros/form/FormLayoutOptions": undefined;
"sap/fe/macros/FormElement": undefined;
"sap/fe/macros/KPITag": undefined;
"sap/fe/macros/library": undefined;
"sap/fe/macros/MacroAPI": undefined;
"sap/fe/macros/MessageButton": undefined;
"sap/fe/macros/MicroChart": undefined;
"sap/fe/macros/microchart/MicroChart": undefined;
"sap/fe/macros/MultiValueField": undefined;
"sap/fe/macros/Page": undefined;
"sap/fe/macros/Paginator": undefined;
"sap/fe/macros/RichTextEditor": undefined;
"sap/fe/macros/richtexteditor/ButtonGroup": undefined;
"sap/fe/macros/richtexteditor/Plugin": undefined;
"sap/fe/macros/RichTextEditorWithMetadata": undefined;
"sap/fe/macros/Share": undefined;
"sap/fe/macros/share/ShareOptions": undefined;
"sap/fe/macros/Status": undefined;
"sap/fe/macros/Table": undefined;
"sap/fe/macros/table/Action": undefined;
"sap/fe/macros/table/ActionGroup": undefined;
"sap/fe/macros/table/ActionGroupOverride": undefined;
"sap/fe/macros/table/ActionOverride": undefined;
"sap/fe/macros/table/AnalyticalConfiguration": undefined;
"sap/fe/macros/table/Column": undefined;
"sap/fe/macros/table/ColumnAINotice": undefined;
"sap/fe/macros/table/ColumnExportSettings": undefined;
"sap/fe/macros/table/ColumnOverride": undefined;
"sap/fe/macros/table/ITableAction": undefined;
"sap/fe/macros/table/ITableActionOrGroup": undefined;
"sap/fe/macros/table/ITableColumn": undefined;
"sap/fe/macros/table/MassEdit": undefined;
"sap/fe/macros/table/OverflowGroups": undefined;
"sap/fe/macros/table/QuickVariantSelection": undefined;
"sap/fe/macros/table/Table": undefined;
"sap/fe/macros/table/TableCreationOptions": undefined;
"sap/fe/macros/table/TreeTable": undefined;
"sap/fe/macros/table/TreeTableCreationOptions": undefined;
"sap/fe/macros/TreeTable": undefined;
"sap/fe/macros/VariantManagement": undefined;
}
}