UNPKG

@openui5/sap.m

Version:

OpenUI5 UI Library sap.m

1,958 lines (1,735 loc) 125 kB
/*! * UI development toolkit for HTML5 (OpenUI5) * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company. * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. */ /** * Initialization Code and shared classes of library sap.m. */ sap.ui.define([ 'sap/ui/Device', 'sap/ui/base/DataType', 'sap/ui/base/EventProvider', 'sap/ui/core/Control', 'sap/base/util/ObjectPath', // library dependency 'sap/ui/core/library', "sap/base/strings/capitalize", "sap/ui/thirdparty/jquery", "sap/base/assert", "sap/base/Log", "sap/base/util/defineLazyProperty", "sap/base/security/encodeXML", // referenced here to enable the Support feature './Support' ], function( Device, DataType, EventProvider, Control, ObjectPath, CoreLibrary, capitalize, jQuery, assert, Log, defineLazyProperty, encodeXML ) { "use strict"; // delegate further initialization of this library to the Core sap.ui.getCore().initLibrary({ name : "sap.m", version: "1.60.39", dependencies : ["sap.ui.core"], designtime: "sap/m/designtime/library.designtime", types: [ "sap.m.BackgroundDesign", "sap.m.BarDesign", "sap.m.ButtonType", "sap.m.CarouselArrowsPlacement", "sap.m.DateTimeInputType", "sap.m.DialogType", "sap.m.DialogRoleType", "sap.m.DeviationIndicator", "sap.m.DraftIndicatorState", "sap.m.FacetFilterListDataType", "sap.m.FacetFilterType", "sap.m.FlexAlignItems", "sap.m.FlexAlignSelf", "sap.m.FlexDirection", "sap.m.FlexWrap", "sap.m.FlexJustifyContent", "sap.m.FlexRendertype", "sap.m.FrameType", "sap.m.GenericTileMode", "sap.m.GenericTileScope", "sap.m.HeaderLevel", "sap.m.IBarHTMLTag", "sap.m.IconTabFilterDesign", "sap.m.ImageMode", "sap.m.Size", "sap.m.ValueColor", "sap.m.ValueCSSColor", "sap.m.InputType", "sap.m.LabelDesign", "sap.m.LinkConversion", "sap.m.ListGrowingDirection", "sap.m.ListHeaderDesign", "sap.m.ListKeyboardMode", "sap.m.ListMode", "sap.m.ListSeparators", "sap.m.ListType", "sap.m.LoadState", "sap.m.MenuButtonMode", "sap.m.OverflowToolbarPriority", "sap.m.P13nPanelType", "sap.m.PageBackgroundDesign", "sap.m.PanelAccessibleRole", "sap.m.PDFViewerDisplayType", "sap.m.PlacementType", "sap.m.PopinDisplay", "sap.m.PopinLayout", "sap.m.QuickViewGroupElementType", "sap.m.RatingIndicatorVisualMode", "sap.m.ScreenSize", "sap.m.SelectionDetailsActionLevel", "sap.m.SelectListKeyboardNavigationMode", "sap.m.SelectType", "sap.m.SplitAppMode", "sap.m.StandardTileType", "sap.m.StringFilterOperator", "sap.m.SwipeDirection", "sap.m.SwitchType", "sap.m.TimePickerMaskMode", "sap.m.TileSizeBehavior", "sap.m.ToolbarDesign", "sap.m.VerticalPlacementType", "sap.m.semantic.SemanticRuleSetType" ], interfaces: [ "sap.m.IBar", "sap.m.IBreadcrumbs", "sap.m.IconTab", "sap.m.IScale", "sap.m.semantic.IGroup", "sap.m.semantic.IFilter", "sap.m.semantic.ISort", "sap.m.ObjectHeaderContainer", "sap.m.IOverflowToolbarContent", "sap.m.IHyphenation" ], controls: [ "sap.m.ActionListItem", "sap.m.ActionSelect", "sap.m.ActionSheet", "sap.m.App", "sap.m.Bar", "sap.m.BusyDialog", "sap.m.BusyIndicator", "sap.m.Button", "sap.m.Breadcrumbs", "sap.m.Carousel", "sap.m.CheckBox", "sap.m.ColumnListItem", "sap.m.ColorPalette", "sap.m.ColorPalettePopover", "sap.m.ComboBox", "sap.m.ComboBoxTextField", "sap.m.ComboBoxBase", "sap.m.CustomListItem", "sap.m.CustomTile", "sap.m.CustomTreeItem", "sap.m.ColumnHeader", "sap.m.DatePicker", "sap.m.DateRangeSelection", "sap.m.DateTimeField", "sap.m.DateTimeInput", "sap.m.DateTimePicker", "sap.m.Dialog", "sap.m.DisplayListItem", "sap.m.DraftIndicator", "sap.m.FacetFilter", "sap.m.FacetFilterItem", "sap.m.FacetFilterList", "sap.m.FeedContent", "sap.m.FeedInput", "sap.m.FeedListItem", "sap.m.FlexBox", "sap.m.FormattedText", "sap.m.GenericTile", "sap.m.GroupHeaderListItem", "sap.m.GrowingList", "sap.m.HBox", "sap.m.HeaderContainer", "sap.m.IconTabBar", "sap.m.IconTabBarSelectList", "sap.m.IconTabHeader", "sap.m.Image", "sap.m.ImageContent", "sap.m.Input", "sap.m.InputBase", "sap.m.InputListItem", "sap.m.Label", "sap.m.LightBox", "sap.m.Link", "sap.m.List", "sap.m.ListBase", "sap.m.ListItemBase", "sap.m.MaskInput", "sap.m.Menu", "sap.m.MenuButton", "sap.m.MessagePage", "sap.m.MessagePopover", "sap.m.MessageView", "sap.m.MessageStrip", "sap.m.MultiComboBox", "sap.m.MultiEditField", "sap.m.MultiInput", "sap.m.NavContainer", "sap.m.NewsContent", "sap.m.NumericContent", "sap.m.NotificationListBase", "sap.m.NotificationListItem", "sap.m.NotificationListGroup", "sap.m.PagingButton", "sap.m.PlanningCalendarLegend", "sap.m.ObjectAttribute", "sap.m.ObjectHeader", "sap.m.ObjectIdentifier", "sap.m.ObjectListItem", "sap.m.ObjectMarker", "sap.m.ObjectNumber", "sap.m.ObjectStatus", "sap.m.OnePersonCalendar", "sap.m.OnePersonGrid", "sap.m.OnePersonHeader", "sap.m.OverflowToolbar", "sap.m.OverflowToolbarButton", "sap.m.OverflowToolbarToggleButton", "sap.m.P13nColumnsPanel", "sap.m.P13nSelectionPanel", "sap.m.P13nDimMeasurePanel", "sap.m.P13nConditionPanel", "sap.m.P13nDialog", "sap.m.P13nFilterPanel", "sap.m.P13nPanel", "sap.m.P13nSortPanel", "sap.m.Page", "sap.m.Panel", "sap.m.PDFViewer", "sap.m.PlanningCalendar", "sap.m.Popover", "sap.m.ProgressIndicator", "sap.m.PullToRefresh", "sap.m.QuickView", "sap.m.QuickViewCard", "sap.m.QuickViewPage", "sap.m.RadioButton", "sap.m.RadioButtonGroup", "sap.m.RangeSlider", "sap.m.RatingIndicator", "sap.m.ResponsivePopover", "sap.m.ScrollContainer", "sap.m.SearchField", "sap.m.SegmentedButton", "sap.m.Select", "sap.m.SelectDialog", "sap.m.SelectList", "sap.m.SelectionDetails", "sap.m.Shell", "sap.m.Slider", "sap.m.SliderTooltip", "sap.m.SliderTooltipContainer", "sap.m.SlideTile", "sap.m.StepInput", "sap.m.SplitApp", "sap.m.SplitContainer", "sap.m.StandardListItem", "sap.m.StandardTreeItem", "sap.m.StandardTile", "sap.m.Switch", "sap.m.Table", "sap.m.TableSelectDialog", "sap.m.TabContainer", "sap.m.TabStrip", "sap.m.Text", "sap.m.TextArea", "sap.m.Tile", "sap.m.TileContainer", "sap.m.TileContent", "sap.m.TimePicker", "sap.m.TimePickerSliders", "sap.m.Title", "sap.m.ToggleButton", "sap.m.Token", "sap.m.Tokenizer", "sap.m.Toolbar", "sap.m.ToolbarSpacer", "sap.m.ToolbarSeparator", "sap.m.Tree", "sap.m.TreeItemBase", "sap.m.UploadCollection", "sap.m.UploadCollectionToolbarPlaceholder", "sap.m.VBox", "sap.m.ViewSettingsDialog", "sap.m.ViewSettingsPopover", "sap.m.semantic.DetailPage", "sap.m.semantic.SemanticPage", "sap.m.semantic.ShareMenuPage", "sap.m.semantic.FullscreenPage", "sap.m.semantic.MasterPage", "sap.m.Wizard", "sap.m.WizardStep" ], elements: [ "sap.m.CalendarAppointment", "sap.m.Column", "sap.m.FlexItemData", "sap.m.FeedListItemAction", "sap.m.IconTabFilter", "sap.m.IconTabSeparator", "sap.m.LightBoxItem", "sap.m.OnePersonView", "sap.m.OverflowToolbarLayoutData", "sap.m.MaskInputRule", "sap.m.MenuItem", "sap.m.MessageItem", "sap.m.MessagePopoverItem", "sap.m.PageAccessibleLandmarkInfo", "sap.m.P13nFilterItem", "sap.m.P13nItem", "sap.m.PlanningCalendarRow", "sap.m.PlanningCalendarView", "sap.m.P13nColumnsItem", "sap.m.P13nDimMeasureItem", "sap.m.P13nSortItem", "sap.m.QuickViewGroup", "sap.m.QuickViewGroupElement", "sap.m.ResponsiveScale", "sap.m.SegmentedButtonItem", "sap.m.SelectionDetailsItem", "sap.m.SelectionDetailsItemLine", "sap.m.SuggestionItem", "sap.m.TabContainerItem", "sap.m.TabStripItem", "sap.m.ToolbarLayoutData", "sap.m.UploadCollectionItem", "sap.m.UploadCollectionParameter", "sap.m.ViewSettingsCustomItem", "sap.m.ViewSettingsCustomTab", "sap.m.ViewSettingsFilterItem", "sap.m.ViewSettingsItem", "sap.m.semantic.SemanticButton", "sap.m.semantic.SemanticSelect", "sap.m.semantic.AddAction", "sap.m.semantic.CancelAction", "sap.m.semantic.DeleteAction", "sap.m.semantic.DiscussInJamAction", "sap.m.semantic.EditAction", "sap.m.semantic.FavoriteAction", "sap.m.semantic.FilterAction", "sap.m.semantic.FilterSelect", "sap.m.semantic.FlagAction", "sap.m.semantic.ForwardAction", "sap.m.semantic.GroupAction", "sap.m.semantic.GroupSelect", "sap.m.semantic.MainAction", "sap.m.semantic.MessagesIndicator", "sap.m.semantic.MultiSelectAction", "sap.m.semantic.NegativeAction", "sap.m.semantic.OpenInAction", "sap.m.semantic.PositiveAction", "sap.m.semantic.PrintAction", "sap.m.semantic.SaveAction", "sap.m.semantic.SendEmailAction", "sap.m.semantic.SendMessageAction", "sap.m.semantic.ShareInJamAction", "sap.m.semantic.SortAction", "sap.m.semantic.SortSelect" ], extensions: { flChangeHandlers: { "sap.m.ActionSheet": { "moveControls": "default" }, "sap.m.Bar": "sap/m/flexibility/Bar", "sap.m.Button": "sap/m/flexibility/Button", "sap.m.CheckBox": "sap/m/flexibility/CheckBox", "sap.m.ColumnListItem": { "hideControl": "default", "unhideControl": "default" }, "sap.m.CustomListItem": { "hideControl": "default", "unhideControl": "default", "moveControls": "default" }, "sap.m.DatePicker": { "hideControl": "default", "unhideControl": "default" }, "sap.m.Dialog": "sap/m/flexibility/Dialog", "sap.m.FlexBox": { "hideControl": "default", "unhideControl": "default", "moveControls": "default" }, "sap.m.HBox": { "hideControl": "default", "unhideControl": "default", "moveControls": "default" }, "sap.m.IconTabBar": { "moveControls": "default" }, "sap.m.IconTabFilter": "sap/m/flexibility/IconTabFilter", "sap.m.Image": { "hideControl": "default", "unhideControl": "default" }, "sap.m.Input": { "hideControl": "default", "unhideControl": "default" }, "sap.m.InputBase": { "hideControl": "default", "unhideControl": "default" }, "sap.m.InputListItem": "sap/m/flexibility/InputListItem", "sap.m.Label": "sap/m/flexibility/Label", "sap.m.MultiInput": { "hideControl": "default", "unhideControl": "default" }, "sap.m.ListItemBase": { "hideControl": "default", "unhideControl": "default" }, "sap.m.Link": { "hideControl": "default", "unhideControl": "default" }, "sap.m.List": { "hideControl": "default", "unhideControl": "default", "moveControls": "default" }, "sap.m.ListBase": { "hideControl": "default", "unhideControl": "default", "moveControls": "default" }, "sap.m.MaskInput": { "hideControl": "default", "unhideControl": "default" }, "sap.m.MenuButton": "sap/m/flexibility/MenuButton", "sap.m.OverflowToolbar":"sap/m/flexibility/OverflowToolbar", "sap.m.OverflowToolbarButton": "sap/m/flexibility/OverflowToolbarButton", "sap.m.Page": "sap/m/flexibility/Page", "sap.m.Panel": "sap/m/flexibility/Panel", "sap.m.Popover": "sap/m/flexibility/Popover", "sap.m.RadioButton": "sap/m/flexibility/RadioButton", "sap.m.RatingIndicator": { "hideControl": "default", "unhideControl": "default" }, "sap.m.RangeSlider": { "hideControl": "default", "unhideControl": "default" }, "sap.m.ScrollContainer": { "hideControl": "default", "moveControls": "default", "unhideControl": "default" }, "sap.m.Slider": { "hideControl": "default", "unhideControl": "default" }, "sap.m.StandardListItem":"sap/m/flexibility/StandardListItem", "sap.m.Table": "sap/m/flexibility/Table", "sap.m.Column": { "hideControl": "default", "unhideControl": "default" }, "sap.m.Text": "sap/m/flexibility/Text", "sap.m.Title": "sap/m/flexibility/Title", "sap.m.Toolbar": "sap/m/flexibility/Toolbar", "sap.m.VBox": { "hideControl": "default", "unhideControl": "default", "moveControls": "default" } }, //Configuration used for rule loading of Support Assistant "sap.ui.support": { publicRules:true, internalRules:true } } }); /* eslint-disable no-undef */ /** * The main UI5 control library, with responsive controls that can be used in touch devices as well as desktop browsers. * * @namespace * @alias sap.m * @author SAP SE * @version 1.60.39 * @public */ var thisLib = sap.m; /* eslint-disable no-undef */ /** * Available Background Design. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.BackgroundDesign = { /** * A solid background color dependent on the theme. * @public */ Solid : "Solid", /** * Transparent background. * @public */ Transparent : "Transparent", /** * A translucent background depending on the opacity value of the theme. * @public */ Translucent : "Translucent" }; /** * Types of the Bar design. * * @enum {string} * @public * @since 1.20 * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.BarDesign = { /** * The Bar can be inserted into other controls and if the design is "Auto" then it inherits the design from parent control. * @public */ Auto : "Auto", /** * The bar will be styled like a header of the page. * @public */ Header : "Header", /** * The bar will be styled like a subheader of the page. * @public */ SubHeader : "SubHeader", /** * The bar will be styled like a footer of the page. * @public */ Footer : "Footer" }; /** * Different types for a button (predefined types). * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.ButtonType = { /** * default type (no special styling) * @public */ Default : "Default", /** * back type (back navigation button for header) * @public */ Back : "Back", /** * accept type (green button) * @public */ Accept : "Accept", /** * reject style (red button) * @public */ Reject : "Reject", /** * transparent type * @public */ Transparent : "Transparent", /** * ghost type * @public */ Ghost : "Ghost", /** * up type (up navigation button for header) * @public */ Up : "Up", /** * Unstyled type (no styling) * @public */ Unstyled : "Unstyled", /** * emphasized type * @public */ Emphasized : "Emphasized" }; /** * Carousel arrows align. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.CarouselArrowsPlacement = { /** * Carousel arrows are placed on the sides of the current Carousel page. * @public */ Content : "Content", /** * Carousel arrows are placed on the sides of the page indicator of the Carousel. * @public */ PageIndicator : "PageIndicator" }; /** * A list of the default built-in views in a {@link sap.m.PlanningCalendar}, described by their keys. * * @enum {string} * @public * @since 1.50 * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.PlanningCalendarBuiltInView = { /** * Represents the key of the built-in view, in which the intervals have the size of one hour. * @public */ Hour : "Hour", /** * Represents the key of the built-in view, in which the intervals have the size of one day. * @public */ Day : "Day", /** * Represents the key of the built-in view, in which the intervals have the size of one month. * @public */ Month : "Month", /** * Represents the key of the built-in view, in which the intervals have the size of one day * where 7 days are displayed, starting with the first day of the week. * @public */ Week : "Week", /** * Represents the key of the built-in view, in which the intervals have the size of one day * where 31 days are displayed, starting with the first day of the month. * @public */ OneMonth : "One Month" }; /** * A list of the default built-in views in a {@link sap.m.OnePersonCalendar}, described by their keys. * Disclaimer: this control is in beta state - incompatible API changes may be done before its official public release. Use at your own discretion. * * @enum {string} * @private * @since 1.58.0 * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.OnePersonCalendarView = { /** * Represents the key of the built-in view, in which the intervals have the size of one day. * @private */ Day : "Day", /** * Represents the key of the built-in view, in which the intervals have the size of one day * where 5 days are displayed, starting with the first working day of the week. * @private */ WorkWeek : "Work Week", /** * Represents the key of the built-in view, in which the intervals have the size of one day * where 7 days are displayed, starting with the first day of the week. * @private */ Week : "Week" }; /** * A subset of DateTimeInput types that fit to a simple API returning one string. * * @enum {string} * @public * @deprecated Since version 1.32.8. Instead, use dedicated <code>sap.m.DatePicker</code> and/or <code>sap.m.TimePicker</code> controls. * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.DateTimeInputType = { /** * An input control for specifying a date value. The user can select a month, day of the month, and year. * @public * @deprecated Since version 1.22.0. Instead, use dedicated <code>sap.m.DatePicker</code> control. */ Date : "Date", /** * An input control for specifying a date and time value. The user can select a month, day of the month, year, and time of day. * @public * @deprecated Since version 1.32.8. Instead, use dedicated <code>sap.m.DatePicker</code> and <code>sap.m.TimePicker</code> controls. */ DateTime : "DateTime", /** * An input control for specifying a time value. The user can select the hour, minute, and optionally AM or PM. * @public * @deprecated Since version 1.32.8. Instead, use dedicated <code>sap.m.TimePicker</code> control. */ Time : "Time" }; /** * Enum for the type of {@link sap.m.Dialog} control. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.DialogType = { /** * This is the default value for Dialog type. * * The Standard Dialog in iOS has a header on the top. The Left and the Right buttons are put inside the header. * In Android, the Left and the Right buttons are put at the bottom of the Dialog. * @public */ Standard : "Standard", /** * Dialog with type Message looks the same as the Standard Dialog in Android. * It puts the Left and the Right buttons at the bottom of the Dialog in iOS. * @public */ Message : "Message" }; /** * Enum for the ARIA role of {@link sap.m.Dialog} control. * * @enum {string} * @since 1.65 * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.DialogRoleType = { /** * Represents the ARIA role <code>dialog</code>. */ Dialog : "dialog", /** * Represents the ARIA role <code>alertdialog</code>. */ AlertDialog : "alertdialog" }; /** * Enum of the available deviation markers for the NumericContent control. * * @enum {string} * @public * @since 1.34 * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.DeviationIndicator = { /** * The actual value is more than the target value. * @public */ Up : "Up", /** * The actual value is less than the target value. * @public */ Down : "Down", /** * No value. * @public */ None : "None" }; /** * Enum for the state of {@link sap.m.DraftIndicator} control. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.DraftIndicatorState = { /** * This is the default value for DraftIndicatorState type. This state has no visual information displayed. * @public */ Clear: "Clear", /** * Indicates that the draft currently is being saved * @public */ Saving: "Saving", /** * Indicates that the draft is already saved * @public */ Saved: "Saved" }; /** * FacetFilterList data types. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.FacetFilterListDataType = { /** * An input control for specifying a date value. The user can select a month, day of the month, and year. * @public */ Date : "Date", /** * An input control for specifying a date and time value. The user can select a month, day of the month, year, and time of day. * @public */ DateTime : "DateTime", /** * An input control for specifying a time value. The user can select the hour, minute, and optionally AM or PM. * @public */ Time : "Time", /** * >An input control for specifying an Integer value * @public */ Integer : "Integer", /** * An input control for specifying a Float value * @public */ Float : "Float", /** * An input control for specifying a String value * @public */ String : "String", /** * An input control for specifying a Boolean value * @public */ Boolean : "Boolean" }; /** * Used by the FacetFilter control to adapt its design according to type. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.FacetFilterType = { /** * Forces FacetFilter to display facet lists as a row of buttons, one button per facet. * * The FacetFilter will automatically adapt to the Light type when it detects smart phone sized displays. * @public */ Simple : "Simple", /** * Forces FacetFilter to display in light mode. * @public */ Light : "Light" }; /** * Available options for the layout of all elements along the cross axis of the flexbox layout. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.FlexAlignItems = { /** * The cross-start margin edges of the flex items are placed flush with the cross-start edge of the line. * @public */ Start : "Start", /** * The cross-start margin edges of the flex items are placed flush with the cross-end edge of the line. * @public */ End : "End", /** * The flex item's margin boxes are centered in the cross axis within the line. * @public */ Center : "Center", /** * If the flex item's inline axes are the same as the cross axis, this value is identical to "Start". * * Otherwise, it participates in baseline alignment: all participating box items on the line are aligned * such that their baselines align, and the item with the largest distance between its baseline and * its cross-start margin edge is placed flush against the cross-start edge of the line. * @public */ Baseline : "Baseline", /** * Make the cross size of the item's margin boxes as close to the same size as the line as possible. * @public */ Stretch : "Stretch", /** * Inherits the value from its parent. * @public */ Inherit : "Inherit" }; /** * Available options for the layout of individual elements along the cross axis of the flexbox layout overriding the default alignment. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.FlexAlignSelf = { /** * Takes up the value of alignItems from the parent FlexBox * @public */ Auto : "Auto", /** * The cross-start margin edges of the flex item is placed flush with the cross-start edge of the line. * @public */ Start : "Start", /** * The cross-start margin edges of the flex item is placed flush with the cross-end edge of the line. * @public */ End : "End", /** * The flex item's margin box is centered in the cross axis within the line. * @public */ Center : "Center", /** * If the flex item's inline axis is the same as the cross axis, this value is identical to "Start". * * Otherwise, it participates in baseline alignment: all participating box items on the line are aligned * such that their baselines align, and the item with the largest distance between its baseline and * its cross-start margin edge is placed flush against the cross-start edge of the line. * @public */ Baseline : "Baseline", /** * Make the cross size of the item's margin box as close to the same size as the line as possible. * @public */ Stretch : "Stretch", /** * Inherits the value from its parent. * @public */ Inherit : "Inherit" }; /** * Available directions for flex layouts. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.FlexDirection = { /** * Flex items are laid out along the direction of the inline axis (text direction). * @public */ Row : "Row", /** * Flex items are laid out along the direction of the block axis (usually top to bottom). * @public */ Column : "Column", /** * Flex items are laid out along the reverse direction of the inline axis (against the text direction). * @public */ RowReverse : "RowReverse", /** * Flex items are laid out along the reverse direction of the block axis (usually bottom to top). * @public */ ColumnReverse : "ColumnReverse", /** * Inherits the value from its parent. * @public */ Inherit : "Inherit" }; /** * Available options for the layout of elements along the main axis of the flexbox layout. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.FlexJustifyContent = { /** * Flex items are packed toward the start of the line. * @public */ Start : "Start", /** * Flex items are packed toward the end of the line. * @public */ End : "End", /** * Flex items are packed toward the center of the line. * @public */ Center : "Center", /** * Flex items are evenly distributed in the line. * @public */ SpaceBetween : "SpaceBetween", /** * Flex items are evenly distributed in the line, with half-size spaces on either end. * <b>Note:</b> This value behaves like SpaceBetween in Internet Explorer 10. * @public */ SpaceAround : "SpaceAround", /** * Inherits the value from its parent. * @public */ Inherit : "Inherit" }; /** * Available options for the wrapping behavior of a flex container. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.FlexWrap = { /** * The flex container is single-line. * @public */ NoWrap : "NoWrap", /** * The flex container is multi-line. * @public */ Wrap : "Wrap", /** * The flex container is multi-line with the cross-axis start and end being swapped. * @public */ WrapReverse : "WrapReverse" }; /** * Available options for the layout of container lines along the cross axis of the flexbox layout. * * <b>Note:</b> This property has no effect in Internet Explorer 10. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.FlexAlignContent = { /** * Lines are packed toward the start of the line. * @public */ Start : "Start", /** * Lines are packed toward the end of the line. * @public */ End : "End", /** * Line are packed toward the center of the line. * @public */ Center : "Center", /** * Lines are evenly distributed in the line. * @public */ SpaceBetween : "SpaceBetween", /** * Lines are evenly distributed in the line, with half-size spaces on either end. * <b>Note:</b> This value behaves like SpaceBetween in Internet Explorer 10. * @public */ SpaceAround : "SpaceAround", /** * Lines stretch to take up the remaining space. * @public */ Stretch : "Stretch", /** * Inherits the value from its parent. * @public */ Inherit : "Inherit" }; /** * Determines the type of HTML elements used for rendering controls. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.FlexRendertype = { /** * The UI5 controls are wrapped in DIV elements. * @public */ Div : "Div", /** * The UI5 controls are wrapped in LI elements, the surrounding Flex Box is an unordered list (UL). * @public */ List : "List", /** * The UI5 controls are not wrapped in an additional HTML element, the surrounding Flex Box is a DIV element. * @public * @since 1.42.1 */ Bare : "Bare" }; /** * Enum for possible frame size types for sap.m.TileContent and sap.m.GenericTile control. * * @enum {string} * @public * @since 1.34.0 * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.FrameType = { /** * The 1x1 frame type. * @public */ OneByOne : "OneByOne", /** * The 2x1 frame type. * @public */ TwoByOne : "TwoByOne", /** * The 2/3 frame type. * @deprecated since 1.48.0 * @protected */ TwoThirds : "TwoThirds", /** * The Auto frame type that adjusts the size of the control to the content. * Support for this type in sap.m.GenericTile is deprecated since 1.48.0. * @protected */ Auto : "Auto" }; /** * Enumeration for possible link-to-anchor conversion strategy. * * @enum {string} * @public * @since 1.45.5 * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.LinkConversion = { /** * Default mode (no conversion). * @public */ None: "None", /** * Valid links with protocols, such as http, https, ftp. * @public */ ProtocolOnly: "ProtocolOnly", /** * Valid links with protocols, such as http, https, ftp and those starting with the string "www". * @public */ All: "All" }; /** * Defines how the input display text should be formatted. * * @enum {string} * @public * @since 1.44.0 * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.InputTextFormatMode = { /** * Text * @public */ Value: "Value", /** * Key * @public */ Key: "Key", /** * A value-key pair formatted like "text (key)" * @public */ ValueKey: "ValueKey", /** * A key-value pair formatted like "(key) text" * @public */ KeyValue: "KeyValue" }; /** * Defines the mode of GenericTile. * * @enum {string} * @public * @since 1.38.0 * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.GenericTileMode = { /** * Default mode (Two lines for the header and one line for the subtitle). * @public */ ContentMode : "ContentMode", /** * Header mode (Four lines for the header and one line for the subtitle). * @public */ HeaderMode : "HeaderMode", /** * Line mode (Implemented for both, cozy and compact densities). * * Generic Tile is displayed as in-line element, header and subheader are displayed in one line. * In case the texts need more than one line, the representation depends on the used density. * <b>Cozy:</b> The text will be truncated and the full text is shown in a tooltip as soon as the tile is hovered (desktop only). * <b>Compact:</b> Header and subheader are rendered continuously spanning multiple lines, no tooltip is provided). * @since 1.44.0 * @public */ LineMode : "LineMode" }; /** * Defines the scopes of GenericTile enabling the developer to implement different "flavors" of tiles. * * @enum {string} * @since 1.46.0 * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel * @public */ thisLib.GenericTileScope = { /** * Default scope (The default scope of the tile, no action icons are rendered). * @public */ Display: "Display", /** * Action scope (Possible footer and Error State information is overlaid, "Remove" and "More" icons are added to the tile). * @public */ Actions: "Actions" }; /** * Describes the behavior of tiles when displayed on a small-screened phone (374px wide and lower). * * @enum {string} * @since 1.56.0 * @ui5-metamodel This enumeration will also be described in the SAPUI5 (legacy) designtime metamodel * @public */ thisLib.TileSizeBehavior = { /** * Default behavior: Tiles adapt to the size of the screen, getting smaller on small screens. * @public */ Responsive: "Responsive", /** * Tiles are small all the time, regardless of the actual screen size. * @public */ Small: "Small" }; /** * Different levels for headers. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.HeaderLevel = { /** * Header level 1 * @public */ H1 : "H1", /** * Header level 2 * @public */ H2 : "H2", /** * Header level 3 * @public */ H3 : "H3", /** * Header level 4 * @public */ H4 : "H4", /** * Header level 5 * @public */ H5 : "H5", /** * Header level 6 * @public */ H6 : "H6" }; /** * * Interface for controls which are suitable as a Header, Subheader or Footer of a Page. * If the control does not want to get a context base style class, it has to implement the isContextSensitive method and return false * * * @since 1.22 * @name sap.m.IBar * @interface * @public * @ui5-metamodel This interface also will be described in the UI5 (legacy) designtime metamodel */ /** * Interface for controls which have the meaning of a breadcrumbs navigation. * * @since 1.52 * @name sap.m.IBreadcrumbs * @interface * @public * @ui5-metamodel This interface also will be described in the UI5 (legacy) designtime metamodel */ /** * * Interface for controls which are suitable as a Scale for the Slider/RangeSlider. * Implementation of this interface should implement the following methods: * <ul> * <li><code>getTickmarksBetweenLabels</code></li> * <li><code>calcNumberOfTickmarks</code></li> * <li><code>handleResize</code></li> * <li><code>getLabel</code></li> * </ul> * * @since 1.46 * @name sap.m.IScale * @interface * @public * @ui5-metamodel This interface also will be described in the UI5 (legacy) designtime metamodel */ /** * Returns the number of tickmarks, which should be placed between labels. * * <b>Note:</b> There would always be a tickmark in the beginning and in the end of the slider, * regardless of the value that this method returns. * * @param {object} mOptions The option array * @returns {integer} The number of tickmarks * * @function * @name sap.m.IScale.getTickmarksBetweenLabels * @public */ /** * Returns How many tickmarks would be drawn on the screen. * * <b>Note:</b> There would always be a tickmark in the beginning and in the end of the slider, * regardless of the value this method returns. The start and the end tickmark are taken into account * for the later calculations. * * @param {object} mOptions The option array * @returns {integer} The number of tickmarks * * @function * @name sap.m.IScale.calcNumberOfTickmarks * @public */ /** * Called, when the slider is getting resized. * The Slider/RangeSlider control, could be accessed via the oEvent.control parameter. * @param {jQuery.Event} oEvent The event object passed. * * @function * @name sap.m.IScale.handleResize * @public */ /** * Provides a custom tickmark label. * This method is optional. If it is not provided, the slider values will be placed as labels. * If provided, the value of the tickmark labels and accessibility attributes * (aria-valuenow and aria-valuetext) of the slider are changed accordingly. * * @returns {string | number} The label that should be placed in the current position. * * @function * @name sap.m.IScale.getLabel * @public */ /** * Allowed tags for the implementation of the IBar interface. * * @enum {string} * @public * @since 1.22 * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.IBarHTMLTag = { /** * Renders as a div element. * @public */ Div : "Div", /** * Renders as a header element. * @public */ Header : "Header", /** * Renders as a footer element. * @public */ Footer : "Footer" }; /** * * Represents an interface for controls, which are suitable as items for the sap.m.IconTabBar. * * @name sap.m.IconTab * @interface * @public * @ui5-metamodel This interface also will be described in the UI5 (legacy) designtime metamodel */ /** * Marker interface for controls which are suitable as items of the group aggregation of sap.m.Semantic.MasterPage. * * @name sap.m.semantic.IGroup * @interface * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ /** * Marker interface for controls which are suitable as items of the filter aggregation of sap.m.Semantic.MasterPage. * * @name sap.m.semantic.IFilter * @interface * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ /** * Marker interface for controls which are suitable as items of the sort aggregation of sap.m.Semantic.MasterPage. * * @name sap.m.semantic.ISort * @interface * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ /** * * Interface for controls which can have special behavior inside <code>sap.m.OverflowToolbar</code>. * Controls that implement this interface must provide a <code>getOverflowToolbarConfig</code> method * that accepts no arguments and returns an object with the following fields: * <ul> * <li><code>canOverflow</code> - A boolean that tells whether the control can move to the overflow menu or not. * * <b>Note:</b> Even if <code>canOverflow</code> is set to <code>false</code>, the <code>propsUnrelatedToSize</code> field is taken into account, * allowing to optimize the behavior of controls that do not need to overflow, but are used in an <code>sap.m.OverflowToolbar</code> regardless.</li> * * <li><code>autoCloseEvents</code> - An array of strings, listing all of the control's events that should trigger the closing of the overflow menu, when fired.</li> * * <li><code>invalidationEvents</code> - An array of strings, listing all of the control's events that should trigger the invalidation of the <code>sap.m.OverflowToolbar</code>, when fired.</li> * * <li><code>propsUnrelatedToSize</code> - An array of strings, listing all of the control's properties that, when changed, should not cause the overflow toolbar to invalidate. * * <b>Note:</b> By default <code>sap.m.OverflowToolbar</code> invalidates whenever any property of a child control changes. This is to ensure that whenever the size of a child control changes, the overflow toolbar's layout is recalculated. * Some properties however do not affect control size, making it unnecessary to invalidate the overflow toolbar when they change. You can list them here for optimization purposes.</li> * * <li><code>onBeforeEnterOverflow(oControl)</code> - A callback function that will be invoked before moving the control into the overflow menu. The control instance will be passed as an argument. * * <b>Note:</b> The context of the function is not the control instance (use the <code>oControl</code> parameter for this purpose), but rather an internal helper object, associated with the current <code>sap.m.OverflowToolbar</code> instance. * This object only needs to be manipulated in special cases (e.g. when you want to store state on it, rather than on the control instance).</li> * * <li><code>onAfterExitOverflow(oControl)</code> - A callback function that will be invoked after taking the control out of the overflow menu (before moving it back to the toolbar itself). The control instance will be passed as an argument. * * <b>Note:</b> See: <code>onBeforeEnterOverflow</code> for details about the function's context.</li> * * <li><code>getCustomImportance()</code> - A function that, if provided, will be called to determine the priority of the control. * This function must return a value of type <code>sap.m.OverflowToolbarPriority</code>. The string "Medium" is also accepted and interpreted as priority between <code>Low</code> and <code>High<code>. * * <b>Note:</b> Normally priority in <code>sap.m.OverflowToolbar</code> is managed with the <code>priority</code> property of <code>sap.m.OverflowToolbarLayoutData</code>. * However, some controls may have other means of defining priority, such as dedicated properties or other types of layout data for that purpose. * In summary, implementing this function allows a control to override the default priority logic (<code>sap.m.OverflowToolbarLayoutData</code>) by providing its own.</li> * </ul> * * <b>Important:</b> In addition, the control can implement a CSS class, scoped with the <code>.sapMOverflowToolbarMenu-CTX</code> context selector, that will be applied whenever the control is inside the overflow menu. * For example, to make your control take up the whole width of the overflow menu, you can add a context class to your control's base CSS file like this: * * <pre> * .sapMOverflowToolbarMenu-CTX .sapMyControlClass { * width: 100%; * } * </pre> * * @since 1.52 * @name sap.m.IOverflowToolbarContent * @interface * @public * @ui5-metamodel This interface also will be described in the UI5 (legacy) designtime metamodel */ /** * Represents an Interface for controls that can have their text hyphenated. * Those controls can use <code>HyphenationSupport</code> mixin. * * @name sap.m.IHyphenation * @interface * @private * @ui5-metamodel This interface also will be described in the UI5 (legacy) designtime metamodel */ /** * Checks if the control should wrap. * * @returns {boolean} True if the control should wrap * * @function * @name sap.m.IHyphenation.getWrapping * @private */ /** * Checks how the control should wrap. * * @returns {sap.m.WrappingType} What is the text wrapping type. * * @function * @name sap.m.IHyphenation.getWrappingType * @private */ /** * Gets the map of texts to be hyphenated and rendered. * For example, for <code>sap.m.Text</code> this would be the <code>text</code> property. * * @returns {map} The texts map which should be hyphenated * * @function * @name sap.m.IHyphenation.getTextsToBeHyphenated * @private */ /** * Gets the DOM element reference map where the hyphenated texts should be placed. * This is used to optimize performance and prevent flickering for hyphenated controls during the initial loading of hyphenation. * For example, for <code>sap.m.Text</code> this would be the inner DOM element. * * If a DOM ref is not returned, the control will be invalidated. * * @returns {map|null} The map of dom refs for each corresponding hyphenated text * * @function * @name sap.m.IHyphenation.getDomRefsForHyphenatedTexts * @private */ /** * Specifies <code>IconTabBar</code> header mode. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.IconTabHeaderMode = { /** * Standard. In this mode when the <code>count</code> and the <code>text</code> are set, they are displayed in two separate lines. * @public */ Standard : "Standard", /** * Inline. In this mode when the <code>count</code> and the <code>text</code> are set, they are displayed in one line. * @public */ Inline : "Inline" }; /** * Specifies <code>IconTabBar</code> tab density mode. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.IconTabDensityMode = { /** * Inherit. In this mode the global configuration of the density mode will be applied. * @public */ Inherit : "Inherit", /** * Compact. In this mode the tabs will be set explicitly to compact mode independent of what mode is applied globally. * @public */ Compact : "Compact", /** * Cozy. In this mode the tabs will be set explicitly to compact mode independent of what mode is applied globally. * @public */ Cozy : "Cozy" }; /** * Available Filter Item Design. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.IconTabFilterDesign = { /** * A horizontally layouted design providing more space for texts. * @public */ Horizontal : "Horizontal", /** * A vertically layouted design using minimum horizontal space. * @public */ Vertical : "Vertical" }; /** * Determines how the source image is used on the output DOM element. * * @enum {string} * @public * @since 1.30.0 * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.ImageMode = { /** * The image is rendered with 'img' tag and the 'src' property is set to the src attribute on the output DOM element. * @public */ Image: "Image", /** * The image is rendered with 'span' tag and the 'src' property is set to the 'background-image' CSS style on the output DOM element * @public */ Background: "Background" }; /** * Enumeration of possible size settings. * * @enum {string} * @public * @since 1.34.0 * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.Size = { /** * Extra small size. * @public */ XS : "XS", /** * Small size. * @public */ S : "S", /** * Medium size. * @public */ M : "M", /** * Large size. * @public */ L : "L", /** * The size depends on the device it is running on. It is medium size for desktop and tablet and small size for phone. * @public */ Auto : "Auto", /** * The width and height of the control are determined by the width and height of the container the control is placed in. * Please note: it is decided by the control whether or not sap.m.Size.Responsive is supported. * @public * @since 1.44.0 */ Responsive : "Responsive" }; /** * Enumeration of possible value color settings. * * @enum {string} * @public * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel */ thisLib.ValueColor = { /** * Neutral value color. * @public */ Neutral : "Neutral", /** * Good value color. * @public */ Good : "Good", /** * Critical value color. * @public */ Critical : "Critical", /** * Error value color. * @public */ Error : "Error" }; /** * @classdesc A string type that represents CSS color values, sap.m.ValueColor or less parameter values. * * Allowed values are {@link sap.ui.core.CSSColor}, {@link sap.m.ValueColor} or a less parameter name (string). * In case the less parameter color cannot be determined, the validation fails. You need to check if less parameters are supported on control level. * An empty string is also allowed and has the same effect as setting no color. * * @final * @namespace * @public * @ui5-metamodel This simple type also will be described in the UI5 (legacy) designtime metamodel */ thisLib.ValueCSSColor = DataType.createType('sap.m.ValueCSSColor', { isValid : function (vValue) { var bResult = thisLib.ValueColor.hasOwnProperty(vValue); if (bResult) { return bResult; } else { // seems to be a less parameter or sap.ui.c