@openui5/sap.f 1.141.2 → 1.142.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/REUSE.toml +38 -0
- package/THIRDPARTY.txt +34 -1
- package/package.json +19 -4
- package/src/sap/f/.library +34 -3
- package/src/sap/f/Avatar.js +1 -1
- package/src/sap/f/AvatarGroup.js +1 -1
- package/src/sap/f/AvatarGroupItem.js +1 -1
- package/src/sap/f/CalendarAppointmentInCard.js +1 -1
- package/src/sap/f/CalendarInCard.js +1 -1
- package/src/sap/f/Card.js +1 -1
- package/src/sap/f/CardBase.js +1 -1
- package/src/sap/f/DynamicPage.js +3 -4
- package/src/sap/f/DynamicPageAccessibleLandmarkInfo.js +1 -1
- package/src/sap/f/DynamicPageHeader.js +1 -1
- package/src/sap/f/DynamicPageTitle.js +1 -1
- package/src/sap/f/FlexibleColumnLayout.js +1 -1
- package/src/sap/f/FlexibleColumnLayoutAccessibleLandmarkInfo.js +1 -1
- package/src/sap/f/FlexibleColumnLayoutData.js +1 -1
- package/src/sap/f/FlexibleColumnLayoutDataForDesktop.js +1 -1
- package/src/sap/f/FlexibleColumnLayoutDataForTablet.js +1 -1
- package/src/sap/f/FlexibleColumnLayoutRenderer.js +2 -0
- package/src/sap/f/FlexibleColumnLayoutSemanticHelper.js +1 -1
- package/src/sap/f/GridContainer.js +1 -1
- package/src/sap/f/GridContainerItemLayoutData.js +1 -1
- package/src/sap/f/GridContainerSettings.js +2 -2
- package/src/sap/f/GridList.js +1 -1
- package/src/sap/f/GridListItem.js +1 -1
- package/src/sap/f/IllustratedMessage.js +1 -1
- package/src/sap/f/Illustration.js +1 -1
- package/src/sap/f/PlanningCalendarInCardLegend.js +1 -1
- package/src/sap/f/ProductSwitch.js +1 -1
- package/src/sap/f/ProductSwitchItem.js +1 -1
- package/src/sap/f/SearchManager.js +1 -1
- package/src/sap/f/ShellBar.js +1 -1
- package/src/sap/f/SidePanel.js +1 -1
- package/src/sap/f/SidePanelItem.js +1 -1
- package/src/sap/f/cards/BaseHeader.js +1 -1
- package/src/sap/f/cards/Header.js +1 -1
- package/src/sap/f/cards/NumericHeader.js +1 -1
- package/src/sap/f/cards/NumericIndicators.js +1 -1
- package/src/sap/f/cards/NumericSideIndicator.js +1 -1
- package/src/sap/f/cards/loading/AnalyticalPlaceholder.js +1 -1
- package/src/sap/f/cards/loading/CalendarPlaceholder.js +1 -1
- package/src/sap/f/cards/loading/GenericPlaceholder.js +1 -1
- package/src/sap/f/cards/loading/ListPlaceholder.js +1 -1
- package/src/sap/f/cards/loading/ObjectPlaceholder.js +1 -1
- package/src/sap/f/cards/loading/PlaceholderBase.js +1 -1
- package/src/sap/f/cards/loading/TablePlaceholder.js +1 -1
- package/src/sap/f/cards/loading/TimelinePlaceholder.js +1 -1
- package/src/sap/f/changeHandler/MoveDynamicPageTitleActions.js +1 -1
- package/src/sap/f/delegate/GridContainerItemNavigation.js +1 -1
- package/src/sap/f/delegate/GridItemNavigation.js +1 -1
- package/src/sap/f/dnd/GridDragOver.js +1 -1
- package/src/sap/f/dnd/GridDropInfo.js +1 -1
- package/src/sap/f/gen/ui5/webcomponents/dist/Avatar.js +238 -0
- package/src/sap/f/gen/ui5/webcomponents/dist/Button.js +339 -0
- package/src/sap/f/gen/ui5/webcomponents/dist/Label.js +125 -0
- package/src/sap/f/gen/ui5/webcomponents/dist/ListItem.js +140 -0
- package/src/sap/f/gen/ui5/webcomponents/dist/ListItemBase.js +64 -0
- package/src/sap/f/gen/ui5/webcomponents/dist/ListItemGroup.js +207 -0
- package/src/sap/f/gen/ui5/webcomponents/dist/Menu.js +280 -0
- package/src/sap/f/gen/ui5/webcomponents/dist/MenuItem.js +347 -0
- package/src/sap/f/gen/ui5/webcomponents.js +2825 -0
- package/src/sap/f/gen/ui5/webcomponents_base.js +578 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/IllustratedMessage.js +211 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/NotificationList.js +204 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/NotificationListGroupItem.js +164 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/NotificationListItem.js +243 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/NotificationListItemBase.js +87 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/Search.js +248 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/SearchItem.js +125 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/SearchItemGroup.js +60 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/SearchItemShowMore.js +88 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/SearchMessageArea.js +76 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/SearchScope.js +81 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/ShellBar.js +655 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/ShellBarBranding.js +122 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/ShellBarItem.js +139 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/ShellBarSearch.js +232 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/ShellBarSpacer.js +74 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/UserMenu.js +279 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/UserMenuAccount.js +129 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori/dist/UserMenuItem.js +83 -0
- package/src/sap/f/gen/ui5/webcomponents_fiori.js +1654 -0
- package/src/sap/f/library.js +2 -2
- package/src/sap/f/semantic/AddAction.js +1 -1
- package/src/sap/f/semantic/CloseAction.js +1 -1
- package/src/sap/f/semantic/CopyAction.js +1 -1
- package/src/sap/f/semantic/DeleteAction.js +1 -1
- package/src/sap/f/semantic/DiscussInJamAction.js +1 -1
- package/src/sap/f/semantic/EditAction.js +1 -1
- package/src/sap/f/semantic/ExitFullScreenAction.js +1 -1
- package/src/sap/f/semantic/FavoriteAction.js +1 -1
- package/src/sap/f/semantic/FlagAction.js +1 -1
- package/src/sap/f/semantic/FooterMainAction.js +1 -1
- package/src/sap/f/semantic/FullScreenAction.js +1 -1
- package/src/sap/f/semantic/MainAction.js +1 -1
- package/src/sap/f/semantic/MessagesIndicator.js +1 -1
- package/src/sap/f/semantic/NegativeAction.js +1 -1
- package/src/sap/f/semantic/PositiveAction.js +1 -1
- package/src/sap/f/semantic/PrintAction.js +1 -1
- package/src/sap/f/semantic/SemanticButton.js +1 -1
- package/src/sap/f/semantic/SemanticConfiguration.js +1 -1
- package/src/sap/f/semantic/SemanticControl.js +1 -1
- package/src/sap/f/semantic/SemanticPage.js +1 -1
- package/src/sap/f/semantic/SemanticToggleButton.js +1 -1
- package/src/sap/f/semantic/SendEmailAction.js +1 -1
- package/src/sap/f/semantic/SendMessageAction.js +1 -1
- package/src/sap/f/semantic/ShareInJamAction.js +1 -1
- package/src/sap/f/semantic/TitleMainAction.js +1 -1
- package/src/sap/f/shellBar/AdditionalContentSupport.js +1 -1
- package/src/sap/f/shellBar/CoPilot.js +1 -1
- package/src/sap/f/shellBar/ControlSpacer.js +1 -1
- package/src/sap/f/shellBar/Search.js +1 -1
- package/src/sap/f/themes/base/Card.less +8 -2
- package/src/sap/f/themes/base/CardHeaders.less +25 -3
- package/src/sap/f/themes/base/DynamicPage.less +6 -1
- package/src/sap/f/thirdparty/AccessibilityTextsHelper.js +13 -0
- package/src/sap/f/thirdparty/Avatar.js +453 -0
- package/src/sap/f/thirdparty/BusyIndicator.js +233 -0
- package/src/sap/f/thirdparty/Button.js +7 -0
- package/src/sap/f/thirdparty/Button2.js +656 -0
- package/src/sap/f/thirdparty/FocusableElements.js +10 -0
- package/src/sap/f/thirdparty/Icon.js +313 -0
- package/src/sap/f/thirdparty/Icons.js +234 -0
- package/src/sap/f/thirdparty/IllustratedMessage.js +1297 -0
- package/src/sap/f/thirdparty/Label.js +115 -0
- package/src/sap/f/thirdparty/Link.js +316 -0
- package/src/sap/f/thirdparty/List.js +1253 -0
- package/src/sap/f/thirdparty/ListBoxItemGroupTemplate.js +14 -0
- package/src/sap/f/thirdparty/ListItemAdditionalText.css.js +10 -0
- package/src/sap/f/thirdparty/ListItemBase.js +251 -0
- package/src/sap/f/thirdparty/ListItemCustom.js +1689 -0
- package/src/sap/f/thirdparty/ListItemGroup.js +637 -0
- package/src/sap/f/thirdparty/Menu.js +389 -0
- package/src/sap/f/thirdparty/MenuItem.js +10 -0
- package/src/sap/f/thirdparty/MenuItem2.js +762 -0
- package/src/sap/f/thirdparty/NotificationList.js +291 -0
- package/src/sap/f/thirdparty/NotificationListGroupItem.js +310 -0
- package/src/sap/f/thirdparty/NotificationListItem.js +534 -0
- package/src/sap/f/thirdparty/NotificationListItemBase.js +98 -0
- package/src/sap/f/thirdparty/ResponsivePopover.js +2312 -0
- package/src/sap/f/thirdparty/SearchItem.css.js +10 -0
- package/src/sap/f/thirdparty/SearchItem.js +152 -0
- package/src/sap/f/thirdparty/SearchItemGroup.js +44 -0
- package/src/sap/f/thirdparty/SearchItemShowMore.js +86 -0
- package/src/sap/f/thirdparty/SearchMessageArea.js +49 -0
- package/src/sap/f/thirdparty/SearchScope.js +39 -0
- package/src/sap/f/thirdparty/ShellBar.js +1809 -0
- package/src/sap/f/thirdparty/ShellBarBranding.js +119 -0
- package/src/sap/f/thirdparty/ShellBarItem.js +89 -0
- package/src/sap/f/thirdparty/ShellBarSearch.js +7 -0
- package/src/sap/f/thirdparty/ShellBarSearch2.js +3453 -0
- package/src/sap/f/thirdparty/ShellBarSpacer.js +40 -0
- package/src/sap/f/thirdparty/Tag.js +302 -0
- package/src/sap/f/thirdparty/Text.js +127 -0
- package/src/sap/f/thirdparty/Title.js +167 -0
- package/src/sap/f/thirdparty/UserMenu.js +950 -0
- package/src/sap/f/thirdparty/UserMenuAccount.js +114 -0
- package/src/sap/f/thirdparty/UserMenuItem.js +61 -0
- package/src/sap/f/thirdparty/ValueState.js +7 -0
- package/src/sap/f/thirdparty/WrappingType.js +24 -0
- package/src/sap/f/thirdparty/_dynamics/InputComposition.js +35 -0
- package/src/sap/f/thirdparty/_dynamics/InputSuggestions.js +397 -0
- package/src/sap/f/thirdparty/_dynamics/ListItemStandardExpandableTextTemplate.js +193 -0
- package/src/sap/f/thirdparty/_dynamics/SAP-icons-TNT.js +585 -0
- package/src/sap/f/thirdparty/_dynamics/SAP-icons-TNT2.js +585 -0
- package/src/sap/f/thirdparty/_dynamics/SAP-icons-business-suite.js +1194 -0
- package/src/sap/f/thirdparty/_dynamics/SAP-icons-business-suite2.js +1194 -0
- package/src/sap/f/thirdparty/_dynamics/SAP-icons.js +2509 -0
- package/src/sap/f/thirdparty/_dynamics/SAP-icons2.js +2509 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_ar.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_ar2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_bg.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_bg2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_ca.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_ca2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_cnr.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_cnr2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_cs.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_cs2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_cy.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_cy2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_da.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_da2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_de.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_de2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_el.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_el2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_en.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_en2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_en_GB.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_en_GB2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_en_US_sappsd.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_en_US_sappsd2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_en_US_saprigi.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_en_US_saprigi2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_en_US_saptrc.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_en_US_saptrc2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_es.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_es2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_es_MX.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_es_MX2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_et.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_et2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_fi.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_fi2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_fr.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_fr2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_fr_CA.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_fr_CA2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_hi.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_hi2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_hr.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_hr2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_hu.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_hu2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_id.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_id2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_it.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_it2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_iw.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_iw2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_ja.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_ja2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_kk.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_kk2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_ko.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_ko2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_lt.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_lt2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_lv.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_lv2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_mk.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_mk2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_ms.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_ms2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_nl.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_nl2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_no.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_no2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_pl.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_pl2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_pt.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_pt2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_pt_PT.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_pt_PT2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_ro.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_ro2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_ru.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_ru2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_sh.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_sh2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_sk.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_sk2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_sl.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_sl2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_sr.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_sr2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_sv.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_sv2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_th.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_th2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_tr.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_tr2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_uk.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_uk2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_vi.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_vi2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_zh_CN.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_zh_CN2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_zh_TW.js +866 -0
- package/src/sap/f/thirdparty/_dynamics/messagebundle_zh_TW2.js +611 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css10.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css11.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css12.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css13.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css14.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css15.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css16.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css17.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css18.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css19.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css20.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css21.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css22.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css23.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css24.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css25.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css26.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css27.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css4.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css5.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css6.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css7.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css8.js +7 -0
- package/src/sap/f/thirdparty/_dynamics/parameters-bundle.css9.js +7 -0
- package/src/sap/f/thirdparty/encodeXML.js +87 -0
- package/src/sap/f/thirdparty/event-strict.js +7 -0
- package/src/sap/f/thirdparty/generateHighlightedMarkup.js +9 -0
- package/src/sap/f/thirdparty/i18n-defaults.js +119 -0
- package/src/sap/f/thirdparty/i18n-defaults2.js +159 -0
- package/src/sap/f/thirdparty/information.js +100 -0
- package/src/sap/f/thirdparty/information2.js +13 -0
- package/src/sap/f/thirdparty/overflow.js +25 -0
- package/src/sap/f/thirdparty/parameters-bundle.css.js +11 -0
- package/src/sap/f/thirdparty/parameters-bundle.css2.js +44 -0
- package/src/sap/f/thirdparty/parameters-bundle.css3.js +8 -0
- package/src/sap/f/thirdparty/query.js +7 -0
- package/src/sap/f/thirdparty/slim-arrow-down.js +44 -0
- package/src/sap/f/thirdparty/sys-enter-2.js +7 -0
- package/src/sap/f/thirdparty/toLowercaseEnumValue.js +7 -0
- package/src/sap/f/thirdparty/ui5/webcomponents_icons/AllIcons.js +26 -0
- package/src/sap/f/thirdparty/ui5/webcomponents_icons_business_suite/AllIcons.js +26 -0
- package/src/sap/f/thirdparty/ui5/webcomponents_icons_tnt/AllIcons.js +26 -0
- package/src/sap/f/thirdparty/webcomponents-base.js +4301 -0
- package/src/sap/f/thirdparty/webcomponents-base2.js +7 -0
- package/src/sap/f/thirdparty/webcomponents-fiori.js +146 -0
- package/src/sap/f/thirdparty/webcomponents.js +170 -0
- package/src/sap/f/thirdparty/willShowContent.js +7 -0
- package/ui5-build.yaml +54 -0
- package/ui5.yaml +46 -0
|
@@ -0,0 +1,1253 @@
|
|
|
1
|
+
sap.ui.define(['exports', 'sap/f/thirdparty/webcomponents-base', 'sap/f/thirdparty/parameters-bundle.css2', 'sap/f/thirdparty/toLowercaseEnumValue', 'sap/f/thirdparty/event-strict', 'sap/f/thirdparty/parameters-bundle.css', 'sap/f/thirdparty/Icons', 'sap/f/thirdparty/ListItemGroup', 'sap/f/thirdparty/AccessibilityTextsHelper', 'sap/f/thirdparty/BusyIndicator', 'sap/f/thirdparty/i18n-defaults2'], (function (exports, webcomponentsBase, parametersBundle_css, toLowercaseEnumValue, eventStrict, parametersBundle_css$1, Icons, ListItemGroup, AccessibilityTextsHelper, BusyIndicator, i18nDefaults) { 'use strict';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Different list selection modes.
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
var ListSelectionMode;
|
|
8
|
+
(function (ListSelectionMode) {
|
|
9
|
+
/**
|
|
10
|
+
* Default mode (no selection).
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
ListSelectionMode["None"] = "None";
|
|
14
|
+
/**
|
|
15
|
+
* Right-positioned single selection mode (only one list item can be selected).
|
|
16
|
+
* @public
|
|
17
|
+
*/
|
|
18
|
+
ListSelectionMode["Single"] = "Single";
|
|
19
|
+
/**
|
|
20
|
+
* Left-positioned single selection mode (only one list item can be selected).
|
|
21
|
+
* @public
|
|
22
|
+
*/
|
|
23
|
+
ListSelectionMode["SingleStart"] = "SingleStart";
|
|
24
|
+
/**
|
|
25
|
+
* Selected item is highlighted but no selection element is visible
|
|
26
|
+
* (only one list item can be selected).
|
|
27
|
+
* @public
|
|
28
|
+
*/
|
|
29
|
+
ListSelectionMode["SingleEnd"] = "SingleEnd";
|
|
30
|
+
/**
|
|
31
|
+
* Selected item is highlighted and selection is changed upon arrow navigation
|
|
32
|
+
* (only one list item can be selected - this is always the focused item).
|
|
33
|
+
* @public
|
|
34
|
+
*/
|
|
35
|
+
ListSelectionMode["SingleAuto"] = "SingleAuto";
|
|
36
|
+
/**
|
|
37
|
+
* Multi selection mode (more than one list item can be selected).
|
|
38
|
+
* @public
|
|
39
|
+
*/
|
|
40
|
+
ListSelectionMode["Multiple"] = "Multiple";
|
|
41
|
+
/**
|
|
42
|
+
* Delete mode (only one list item can be deleted via provided delete button)
|
|
43
|
+
* @public
|
|
44
|
+
*/
|
|
45
|
+
ListSelectionMode["Delete"] = "Delete";
|
|
46
|
+
})(ListSelectionMode || (ListSelectionMode = {}));
|
|
47
|
+
var ListSelectionMode$1 = ListSelectionMode;
|
|
48
|
+
|
|
49
|
+
const t=e=>{let o=e;return e.shadowRoot&&e.shadowRoot.activeElement&&(o=e.shadowRoot.activeElement),o};
|
|
50
|
+
|
|
51
|
+
let e=null;const u=(t,o)=>{e&&clearTimeout(e),e=setTimeout(()=>{e=null,t();},o);};
|
|
52
|
+
|
|
53
|
+
const n=e=>{const t=e.getBoundingClientRect();return t.top>=0&&t.left>=0&&t.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&t.right<=(window.innerWidth||document.documentElement.clientWidth)};
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Different list growing modes.
|
|
57
|
+
* @public
|
|
58
|
+
*/
|
|
59
|
+
var ListGrowingMode;
|
|
60
|
+
(function (ListGrowingMode) {
|
|
61
|
+
/**
|
|
62
|
+
* Component's "load-more" is fired upon pressing a "More" button.
|
|
63
|
+
* at the bottom.
|
|
64
|
+
* @public
|
|
65
|
+
*/
|
|
66
|
+
ListGrowingMode["Button"] = "Button";
|
|
67
|
+
/**
|
|
68
|
+
* Component's "load-more" is fired upon scroll.
|
|
69
|
+
* @public
|
|
70
|
+
*/
|
|
71
|
+
ListGrowingMode["Scroll"] = "Scroll";
|
|
72
|
+
/**
|
|
73
|
+
* Component's growing is not enabled.
|
|
74
|
+
* @public
|
|
75
|
+
*/
|
|
76
|
+
ListGrowingMode["None"] = "None";
|
|
77
|
+
})(ListGrowingMode || (ListGrowingMode = {}));
|
|
78
|
+
var ListGrowingMode$1 = ListGrowingMode;
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* List accessible roles.
|
|
82
|
+
* @public
|
|
83
|
+
* @since 2.0.0
|
|
84
|
+
*/
|
|
85
|
+
var ListAccessibleRole;
|
|
86
|
+
(function (ListAccessibleRole) {
|
|
87
|
+
/**
|
|
88
|
+
* Represents the ARIA role "list". (by default)
|
|
89
|
+
* @public
|
|
90
|
+
*/
|
|
91
|
+
ListAccessibleRole["List"] = "List";
|
|
92
|
+
/**
|
|
93
|
+
* Represents the ARIA role "menu".
|
|
94
|
+
* @public
|
|
95
|
+
*/
|
|
96
|
+
ListAccessibleRole["Menu"] = "Menu";
|
|
97
|
+
/**
|
|
98
|
+
* Represents the ARIA role "tree".
|
|
99
|
+
* @public
|
|
100
|
+
*/
|
|
101
|
+
ListAccessibleRole["Tree"] = "Tree";
|
|
102
|
+
/**
|
|
103
|
+
* Represents the ARIA role "listbox".
|
|
104
|
+
* @public
|
|
105
|
+
*/
|
|
106
|
+
ListAccessibleRole["ListBox"] = "ListBox";
|
|
107
|
+
})(ListAccessibleRole || (ListAccessibleRole = {}));
|
|
108
|
+
var ListAccessibleRole$1 = ListAccessibleRole;
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Different types of list items separators.
|
|
112
|
+
* @public
|
|
113
|
+
* @since 2.0.0
|
|
114
|
+
*/
|
|
115
|
+
var ListSeparator;
|
|
116
|
+
(function (ListSeparator) {
|
|
117
|
+
/**
|
|
118
|
+
* Separators between the items including the last and the first one.
|
|
119
|
+
* @public
|
|
120
|
+
*/
|
|
121
|
+
ListSeparator["All"] = "All";
|
|
122
|
+
/**
|
|
123
|
+
* Separators between the items.
|
|
124
|
+
* Note: This enumeration depends on the theme.
|
|
125
|
+
* @public
|
|
126
|
+
*/
|
|
127
|
+
ListSeparator["Inner"] = "Inner";
|
|
128
|
+
/**
|
|
129
|
+
* No item separators.
|
|
130
|
+
* @public
|
|
131
|
+
*/
|
|
132
|
+
ListSeparator["None"] = "None";
|
|
133
|
+
})(ListSeparator || (ListSeparator = {}));
|
|
134
|
+
var ListSeparator$1 = ListSeparator;
|
|
135
|
+
|
|
136
|
+
function ListTemplate() {
|
|
137
|
+
return (parametersBundle_css.jsx("div", { class: "ui5-list-root", onFocusIn: this._onfocusin, onKeyDown: this._onkeydown, onDragEnter: this._ondragenter, onDragOver: this._ondragover, onDrop: this._ondrop, onDragLeave: this._ondragleave, "onui5-_close": this.onItemClose, "onui5-toggle": this.onItemToggle, "onui5-request-tabindex-change": this.onItemTabIndexChange, "onui5-_focused": this.onItemFocused, "onui5-forward-after": this.onForwardAfter, "onui5-forward-before": this.onForwardBefore, "onui5-selection-requested": this.onSelectionRequested, "onui5-focus-requested": this.onFocusRequested, "onui5-_press": this.onItemPress, children: parametersBundle_css.jsxs(BusyIndicator.BusyIndicator, { id: `${this._id}-busyIndicator`, delay: this.loadingDelay, active: this.showBusyIndicatorOverlay, class: "ui5-list-busy-indicator", children: [parametersBundle_css.jsxs("div", { class: "ui5-list-scroll-container", children: [parametersBundle_css.jsx("span", { tabindex: -1, "aria-hidden": "true", class: "ui5-list-start-marker" }), this.header.length > 0 && parametersBundle_css.jsx("slot", { name: "header" }), this.shouldRenderH1 &&
|
|
138
|
+
parametersBundle_css.jsx("header", { id: this.headerID, class: "ui5-list-header", children: this.headerText }), this.hasData &&
|
|
139
|
+
parametersBundle_css.jsx("div", { id: `${this._id}-before`, tabindex: 0, role: "none", class: "ui5-list-focusarea" }), parametersBundle_css.jsx("span", { id: `${this._id}-modeLabel`, class: "ui5-hidden-text", children: this.ariaLabelModeText }), parametersBundle_css.jsxs("ul", { id: `${this._id}-listUl`, class: "ui5-list-ul", role: this.listAccessibleRole, "aria-label": this.ariaLabelTxt, "aria-labelledby": this.ariaLabelledBy, "aria-description": this.ariaDescriptionText, children: [parametersBundle_css.jsx("slot", {}), this.showNoDataText &&
|
|
140
|
+
parametersBundle_css.jsx("li", { tabindex: 0, id: `${this._id}-nodata`, class: "ui5-list-nodata", role: "listitem", children: parametersBundle_css.jsx("div", { id: `${this._id}-nodata-text`, class: "ui5-list-nodata-text", children: this.noDataText }) })] }), this.growsWithButton && moreRow.call(this), this.footerText &&
|
|
141
|
+
parametersBundle_css.jsx("footer", { id: `${this._id}-footer`, class: "ui5-list-footer", children: this.footerText }), this.hasData &&
|
|
142
|
+
parametersBundle_css.jsx("div", { id: `${this._id}-after`, tabindex: 0, role: "none", class: "ui5-list-focusarea" }), parametersBundle_css.jsx("span", { tabindex: -1, "aria-hidden": "true", class: "ui5-list-end-marker" })] }), parametersBundle_css.jsx(ListItemGroup.DropIndicator, { orientation: "Horizontal", ownerReference: this })] }) }));
|
|
143
|
+
}
|
|
144
|
+
function moreRow() {
|
|
145
|
+
return (parametersBundle_css.jsx("div", { class: "ui5-growing-button", part: "growing-button", children: parametersBundle_css.jsxs("div", { id: `${this._id}-growing-btn`, role: "button", tabindex: 0, part: "growing-button-inner", class: {
|
|
146
|
+
"ui5-growing-button-inner": true,
|
|
147
|
+
"ui5-growing-button-inner-active": this._loadMoreActive,
|
|
148
|
+
}, "aria-label": this.growingButtonAriaLabel, "aria-labelledby": this.growingButtonAriaLabelledBy, onClick: this._onLoadMoreClick, onKeyDown: this._onLoadMoreKeydown, onKeyUp: this._onLoadMoreKeyup, onMouseDown: this._onLoadMoreMousedown, onMouseUp: this._onLoadMoreMouseup, children: [this.loading &&
|
|
149
|
+
parametersBundle_css.jsx(BusyIndicator.BusyIndicator, { delay: this.loadingDelay, part: "growing-button-busy-indicator", class: "ui5-list-growing-button-busy-indicator", active: true }), parametersBundle_css.jsx("span", { id: `${this._id}-growingButton-text`, class: "ui5-growing-button-text", "growing-button-text": true, children: this._growingButtonText })] }) }));
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
Icons.p("@" + "ui5" + "/" + "sap/f/thirdparty/webcomponents-theming", "sap_horizon", async () => parametersBundle_css.defaultThemeBase);
|
|
153
|
+
Icons.p("@" + "u" + "i" + "5" + "/" + "w" + "e" + "b" + "c" + "o" + "m" + "p" + "o" + "n" + "e" + "n" + "t" + "s", "sap_horizon", async () => parametersBundle_css$1.defaultTheme);
|
|
154
|
+
var listCss = `.ui5-hidden-text{position:absolute;clip:rect(1px,1px,1px,1px);user-select:none;left:-1000px;top:-1000px;pointer-events:none;font-size:0}.ui5-growing-button{display:flex;align-items:center;padding:var(--_ui5-v2-15-0_load_more_padding);border-top:1px solid var(--sapList_BorderColor);border-bottom:var(--_ui5-v2-15-0_load_more_border-bottom);box-sizing:border-box;cursor:pointer;outline:none}.ui5-growing-button-inner{display:flex;align-items:center;justify-content:center;flex-direction:row;min-height:var(--_ui5-v2-15-0_load_more_text_height);width:100%;color:var(--sapButton_TextColor);background-color:var(--sapList_Background);border:var(--_ui5-v2-15-0_load_more_border);border-radius:var(--_ui5-v2-15-0_load_more_border_radius);box-sizing:border-box}.ui5-growing-button-inner:focus-visible{outline:var(--_ui5-v2-15-0_load_more_outline_width) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);outline-offset:-.125rem;border-color:transparent}.ui5-growing-button-inner:hover{background-color:var(--sapList_Hover_Background)}.ui5-growing-button-inner:active,.ui5-growing-button-inner.ui5-growing-button-inner--active{background-color:var(--sapList_Active_Background);border-color:var(--sapList_Active_Background)}.ui5-growing-button-inner:active>*,.ui5-growing-button-inner.ui5-growing-button-inner--active>*{color:var(--sapList_Active_TextColor)}.ui5-growing-button-text{text-align:center;font-family:var(--sapFontFamily);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}.ui5-growing-button-text{height:var(--_ui5-v2-15-0_load_more_text_height);padding:.875rem 1rem 1rem;font-size:var(--_ui5-v2-15-0_load_more_text_font_size);font-weight:700}:host([loading]) .ui5-list-growing-button-busy-indicator:not([_is-busy]){display:none}:host([loading]) .ui5-list-growing-button-busy-indicator[_is-busy]+.ui5-growing-button-text{padding-left:.5rem}:host(:not([hidden])){display:block;max-width:100%;width:100%;-webkit-tap-highlight-color:transparent}:host([indent]) .ui5-list-root{padding:2rem}:host([separators="None"]) .ui5-list-nodata{border-bottom:0}.ui5-list-root,.ui5-list-busy-indicator{width:100%;height:100%;position:relative;box-sizing:border-box}.ui5-list-scroll-container{overflow:auto;height:100%;width:100%}.ui5-list-ul{list-style-type:none;padding:0;margin:0}.ui5-list-ul:focus{outline:none}.ui5-list-focusarea{position:fixed}.ui5-list-header{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;box-sizing:border-box;font-size:var(--sapFontHeader4Size);font-family:var(--sapFontFamily);color:var(--sapGroup_TitleTextColor);height:3rem;line-height:3rem;padding:0 1rem;background-color:var(--sapGroup_TitleBackground);border-bottom:1px solid var(--sapGroup_TitleBorderColor)}.ui5-list-footer{height:2rem;box-sizing:border-box;-webkit-text-size-adjust:none;font-size:var(--sapFontSize);font-family:var(--sapFontFamily);line-height:2rem;background-color:var(--sapList_FooterBackground);color:var(--ui5-v2-15-0_list_footer_text_color);padding:0 1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui5-list-nodata{list-style-type:none;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;color:var(--sapTextColor);background-color:var(--sapList_Background);border-bottom:1px solid var(--sapList_BorderColor);padding:0 1rem!important;outline:none;min-height:var(--_ui5-v2-15-0_list_no_data_height);font-size:var(--_ui5-v2-15-0_list_no_data_font_size);font-family:var(--sapFontFamily);position:relative}.ui5-list-nodata:focus:after{content:"";border:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);position:absolute;inset:.125rem;pointer-events:none}.ui5-list-nodata-text{overflow:hidden;text-overflow:ellipsis;white-space:normal;margin:var(--_ui5-v2-15-0_list_item_content_vertical_offset) 0}:host([growing="Scroll"]) .ui5-list-end-marker{display:inline-block}
|
|
155
|
+
`;
|
|
156
|
+
|
|
157
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
158
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
159
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
160
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
161
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
162
|
+
};
|
|
163
|
+
var List_1;
|
|
164
|
+
const INFINITE_SCROLL_DEBOUNCE_RATE = 250; // ms
|
|
165
|
+
const PAGE_UP_DOWN_SIZE = 10;
|
|
166
|
+
/**
|
|
167
|
+
* @class
|
|
168
|
+
*
|
|
169
|
+
* ### Overview
|
|
170
|
+
*
|
|
171
|
+
* The `ui5-list` component allows displaying a list of items, advanced keyboard
|
|
172
|
+
* handling support for navigating between items, and predefined modes to improve the development efficiency.
|
|
173
|
+
*
|
|
174
|
+
* The `ui5-list` is a container for the available list items:
|
|
175
|
+
*
|
|
176
|
+
* - `ui5-li`
|
|
177
|
+
* - `ui5-li-custom`
|
|
178
|
+
* - `ui5-li-group`
|
|
179
|
+
*
|
|
180
|
+
* To benefit from the built-in selection mechanism, you can use the available
|
|
181
|
+
* selection modes, such as
|
|
182
|
+
* `Single`, `Multiple` and `Delete`.
|
|
183
|
+
*
|
|
184
|
+
* Additionally, the `ui5-list` provides header, footer, and customization for the list item separators.
|
|
185
|
+
*
|
|
186
|
+
* ### Keyboard Handling
|
|
187
|
+
*
|
|
188
|
+
* #### Basic Navigation
|
|
189
|
+
* The `ui5-list` provides advanced keyboard handling.
|
|
190
|
+
* When a list is focused the user can use the following keyboard
|
|
191
|
+
* shortcuts in order to perform a navigation:
|
|
192
|
+
*
|
|
193
|
+
* - [Up] or [Down] - Navigates up and down the items
|
|
194
|
+
* - [Home] - Navigates to first item
|
|
195
|
+
* - [End] - Navigates to the last item
|
|
196
|
+
*
|
|
197
|
+
* The user can use the following keyboard shortcuts to perform actions (such as select, delete),
|
|
198
|
+
* when the `selectionMode` property is in use:
|
|
199
|
+
*
|
|
200
|
+
* - [Space] - Select an item (if `type` is 'Active') when `selectionMode` is selection
|
|
201
|
+
* - [Delete] - Delete an item if `selectionMode` property is `Delete`
|
|
202
|
+
*
|
|
203
|
+
* #### Fast Navigation
|
|
204
|
+
* This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].
|
|
205
|
+
* In order to use this functionality, you need to import the following module:
|
|
206
|
+
* `import "sap/f/gen/ui5/webcomponents_base/dist/features/F6Navigation.js"`
|
|
207
|
+
*
|
|
208
|
+
* ### ES6 Module Import
|
|
209
|
+
*
|
|
210
|
+
* `import "sap/f/gen/ui5/webcomponents/dist/List.js";`
|
|
211
|
+
*
|
|
212
|
+
* `import "sap/f/gen/ui5/webcomponents/dist/ListItemStandard.js";` (for `ui5-li`)
|
|
213
|
+
*
|
|
214
|
+
* `import "sap/f/gen/ui5/webcomponents/dist/ListItemCustom.js";` (for `ui5-li-custom`)
|
|
215
|
+
*
|
|
216
|
+
* `import "sap/f/gen/ui5/webcomponents/dist/ListItemGroup.js";` (for `ui5-li-group`)
|
|
217
|
+
* @constructor
|
|
218
|
+
* @extends UI5Element
|
|
219
|
+
* @public
|
|
220
|
+
* @csspart growing-button - Used to style the button, that is used for growing of the component
|
|
221
|
+
* @csspart growing-button-inner - Used to style the button inner element
|
|
222
|
+
*/
|
|
223
|
+
let List = List_1 = class List extends webcomponentsBase.b {
|
|
224
|
+
constructor() {
|
|
225
|
+
super();
|
|
226
|
+
/**
|
|
227
|
+
* Determines whether the component is indented.
|
|
228
|
+
* @default false
|
|
229
|
+
* @public
|
|
230
|
+
*/
|
|
231
|
+
this.indent = false;
|
|
232
|
+
/**
|
|
233
|
+
* Defines the selection mode of the component.
|
|
234
|
+
* @default "None"
|
|
235
|
+
* @public
|
|
236
|
+
*/
|
|
237
|
+
this.selectionMode = "None";
|
|
238
|
+
/**
|
|
239
|
+
* Defines the item separator style that is used.
|
|
240
|
+
* @default "All"
|
|
241
|
+
* @public
|
|
242
|
+
*/
|
|
243
|
+
this.separators = "All";
|
|
244
|
+
/**
|
|
245
|
+
* Defines whether the component will have growing capability either by pressing a `More` button,
|
|
246
|
+
* or via user scroll. In both cases `load-more` event is fired.
|
|
247
|
+
*
|
|
248
|
+
* **Restrictions:** `growing="Scroll"` is not supported for Internet Explorer,
|
|
249
|
+
* on IE the component will fallback to `growing="Button"`.
|
|
250
|
+
* @default "None"
|
|
251
|
+
* @since 1.0.0-rc.13
|
|
252
|
+
* @public
|
|
253
|
+
*/
|
|
254
|
+
this.growing = "None";
|
|
255
|
+
/**
|
|
256
|
+
* Defines if the component would display a loading indicator over the list.
|
|
257
|
+
* @default false
|
|
258
|
+
* @public
|
|
259
|
+
* @since 1.0.0-rc.6
|
|
260
|
+
*/
|
|
261
|
+
this.loading = false;
|
|
262
|
+
/**
|
|
263
|
+
* Defines the delay in milliseconds, after which the loading indicator will show up for this component.
|
|
264
|
+
* @default 1000
|
|
265
|
+
* @public
|
|
266
|
+
*/
|
|
267
|
+
this.loadingDelay = 1000;
|
|
268
|
+
/**
|
|
269
|
+
* Defines additional accessibility attributes on different areas of the component.
|
|
270
|
+
*
|
|
271
|
+
* The accessibilityAttributes object has the following field:
|
|
272
|
+
*
|
|
273
|
+
* - **growingButton**: `growingButton.name`.
|
|
274
|
+
*
|
|
275
|
+
* The accessibility attributes support the following values:
|
|
276
|
+
*
|
|
277
|
+
* - **name**: Defines the accessible ARIA name of the growing button.
|
|
278
|
+
* Accepts any string.
|
|
279
|
+
*
|
|
280
|
+
* **Note:** The `accessibilityAttributes` property is in an experimental state and is a subject to change.
|
|
281
|
+
* @default {}
|
|
282
|
+
* @public
|
|
283
|
+
* @since 2.13.0
|
|
284
|
+
*/
|
|
285
|
+
this.accessibilityAttributes = {};
|
|
286
|
+
/**
|
|
287
|
+
* Defines the accessible role of the component.
|
|
288
|
+
* @public
|
|
289
|
+
* @default "List"
|
|
290
|
+
* @since 1.0.0-rc.15
|
|
291
|
+
*/
|
|
292
|
+
this.accessibleRole = "List";
|
|
293
|
+
/**
|
|
294
|
+
* Defines if the entire list is in view port.
|
|
295
|
+
* @private
|
|
296
|
+
*/
|
|
297
|
+
this._inViewport = false;
|
|
298
|
+
/**
|
|
299
|
+
* Defines the active state of the `More` button.
|
|
300
|
+
* @private
|
|
301
|
+
*/
|
|
302
|
+
this._loadMoreActive = false;
|
|
303
|
+
/**
|
|
304
|
+
* Defines the current media query size.
|
|
305
|
+
* @default "S"
|
|
306
|
+
* @private
|
|
307
|
+
*/
|
|
308
|
+
this.mediaRange = "S";
|
|
309
|
+
this._startMarkerOutOfView = false;
|
|
310
|
+
this._previouslyFocusedItem = null;
|
|
311
|
+
// Indicates that the List is forwarding the focus before or after the internal ul.
|
|
312
|
+
this._forwardingFocus = false;
|
|
313
|
+
this._itemNavigation = new webcomponentsBase.f$1(this, {
|
|
314
|
+
skipItemsSize: PAGE_UP_DOWN_SIZE, // PAGE_UP and PAGE_DOWN will skip trough 10 items
|
|
315
|
+
navigationMode: webcomponentsBase.r.Vertical,
|
|
316
|
+
getItemsCallback: () => this.getEnabledItems(),
|
|
317
|
+
});
|
|
318
|
+
this.handleResizeCallback = this._handleResize.bind(this);
|
|
319
|
+
this._groupCount = 0;
|
|
320
|
+
this._groupItemCount = 0;
|
|
321
|
+
this.onItemFocusedBound = this.onItemFocused.bind(this);
|
|
322
|
+
this.onForwardAfterBound = this.onForwardAfter.bind(this);
|
|
323
|
+
this.onForwardBeforeBound = this.onForwardBefore.bind(this);
|
|
324
|
+
this.onItemTabIndexChangeBound = this.onItemTabIndexChange.bind(this);
|
|
325
|
+
// Initialize the DragAndDropHandler with the necessary configurations
|
|
326
|
+
// The handler will manage the drag and drop operations for the list items.
|
|
327
|
+
this._dragAndDropHandler = new ListItemGroup.DragAndDropHandler(this, {
|
|
328
|
+
getItems: () => this.items,
|
|
329
|
+
getDropIndicator: () => this.dropIndicatorDOM,
|
|
330
|
+
useOriginalEvent: true,
|
|
331
|
+
});
|
|
332
|
+
}
|
|
333
|
+
/**
|
|
334
|
+
* Returns an array containing the list item instances without the groups in a flat structure.
|
|
335
|
+
* @default []
|
|
336
|
+
* @since 2.0.0
|
|
337
|
+
* @public
|
|
338
|
+
*/
|
|
339
|
+
get listItems() {
|
|
340
|
+
return this.getItems();
|
|
341
|
+
}
|
|
342
|
+
_updateAssociatedLabelsTexts() {
|
|
343
|
+
this._associatedDescriptionRefTexts = AccessibilityTextsHelper.p(this);
|
|
344
|
+
this._associatedLabelsRefTexts = AccessibilityTextsHelper.E(this);
|
|
345
|
+
}
|
|
346
|
+
onEnterDOM() {
|
|
347
|
+
AccessibilityTextsHelper.y(this, this._updateAssociatedLabelsTexts.bind(this));
|
|
348
|
+
webcomponentsBase.f.register(this.getDomRef(), this.handleResizeCallback);
|
|
349
|
+
}
|
|
350
|
+
onExitDOM() {
|
|
351
|
+
AccessibilityTextsHelper.T(this);
|
|
352
|
+
this.unobserveListEnd();
|
|
353
|
+
this.unobserveListStart();
|
|
354
|
+
webcomponentsBase.f.deregister(this.getDomRef(), this.handleResizeCallback);
|
|
355
|
+
}
|
|
356
|
+
onBeforeRendering() {
|
|
357
|
+
this.detachGroupHeaderEvents();
|
|
358
|
+
this.prepareListItems();
|
|
359
|
+
}
|
|
360
|
+
onAfterRendering() {
|
|
361
|
+
this.attachGroupHeaderEvents();
|
|
362
|
+
if (this.growsOnScroll) {
|
|
363
|
+
this.observeListEnd();
|
|
364
|
+
this.observeListStart();
|
|
365
|
+
}
|
|
366
|
+
else {
|
|
367
|
+
this.unobserveListEnd();
|
|
368
|
+
this.unobserveListStart();
|
|
369
|
+
}
|
|
370
|
+
if (this.grows) {
|
|
371
|
+
this.checkListInViewport();
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
attachGroupHeaderEvents() {
|
|
375
|
+
// events fired by the group headers are not bubbling through the shadow
|
|
376
|
+
// dom of the groups because of capture: false of the custom events
|
|
377
|
+
this.getItems().forEach(item => {
|
|
378
|
+
if (item.hasAttribute("ui5-li-group-header")) {
|
|
379
|
+
item.addEventListener("ui5-_focused", this.onItemFocusedBound);
|
|
380
|
+
item.addEventListener("ui5-forward-after", this.onForwardAfterBound);
|
|
381
|
+
item.addEventListener("ui5-forward-before", this.onForwardBeforeBound);
|
|
382
|
+
}
|
|
383
|
+
});
|
|
384
|
+
}
|
|
385
|
+
detachGroupHeaderEvents() {
|
|
386
|
+
this.getItems().forEach(item => {
|
|
387
|
+
if (item.hasAttribute("ui5-li-group-header")) {
|
|
388
|
+
item.removeEventListener("ui5-_focused", this.onItemFocusedBound);
|
|
389
|
+
item.removeEventListener("ui5-forward-after", this.onForwardAfterBound);
|
|
390
|
+
item.removeEventListener("ui5-forward-before", this.onForwardBeforeBound);
|
|
391
|
+
}
|
|
392
|
+
});
|
|
393
|
+
}
|
|
394
|
+
getFocusDomRef() {
|
|
395
|
+
return this._itemNavigation._getCurrentItem();
|
|
396
|
+
}
|
|
397
|
+
get shouldRenderH1() {
|
|
398
|
+
return !this.header.length && this.headerText;
|
|
399
|
+
}
|
|
400
|
+
get headerID() {
|
|
401
|
+
return `${this._id}-header`;
|
|
402
|
+
}
|
|
403
|
+
get modeLabelID() {
|
|
404
|
+
return `${this._id}-modeLabel`;
|
|
405
|
+
}
|
|
406
|
+
get listEndDOM() {
|
|
407
|
+
return this.shadowRoot.querySelector(".ui5-list-end-marker");
|
|
408
|
+
}
|
|
409
|
+
get listStartDOM() {
|
|
410
|
+
return this.shadowRoot.querySelector(".ui5-list-start-marker");
|
|
411
|
+
}
|
|
412
|
+
get dropIndicatorDOM() {
|
|
413
|
+
return this.shadowRoot.querySelector("[ui5-drop-indicator]");
|
|
414
|
+
}
|
|
415
|
+
get hasData() {
|
|
416
|
+
return this.getItems().length !== 0;
|
|
417
|
+
}
|
|
418
|
+
get showBusyIndicatorOverlay() {
|
|
419
|
+
return !this.growsWithButton && this.loading;
|
|
420
|
+
}
|
|
421
|
+
get showNoDataText() {
|
|
422
|
+
return !this.hasData && this.noDataText;
|
|
423
|
+
}
|
|
424
|
+
get isDelete() {
|
|
425
|
+
return this.selectionMode === ListSelectionMode$1.Delete;
|
|
426
|
+
}
|
|
427
|
+
get isSingleSelect() {
|
|
428
|
+
return [
|
|
429
|
+
ListSelectionMode$1.Single,
|
|
430
|
+
ListSelectionMode$1.SingleStart,
|
|
431
|
+
ListSelectionMode$1.SingleEnd,
|
|
432
|
+
ListSelectionMode$1.SingleAuto,
|
|
433
|
+
].includes(this.selectionMode);
|
|
434
|
+
}
|
|
435
|
+
get isMultiple() {
|
|
436
|
+
return this.selectionMode === ListSelectionMode$1.Multiple;
|
|
437
|
+
}
|
|
438
|
+
get ariaLabelledBy() {
|
|
439
|
+
if (this.accessibleNameRef || this.accessibleName) {
|
|
440
|
+
return undefined;
|
|
441
|
+
}
|
|
442
|
+
const ids = [];
|
|
443
|
+
if (this.isMultiple || this.isSingleSelect || this.isDelete) {
|
|
444
|
+
ids.push(this.modeLabelID);
|
|
445
|
+
}
|
|
446
|
+
if (this.shouldRenderH1) {
|
|
447
|
+
ids.push(this.headerID);
|
|
448
|
+
}
|
|
449
|
+
return ids.length ? ids.join(" ") : undefined;
|
|
450
|
+
}
|
|
451
|
+
get ariaLabelTxt() {
|
|
452
|
+
return this._associatedLabelsRefTexts || AccessibilityTextsHelper.A(this);
|
|
453
|
+
}
|
|
454
|
+
get ariaDescriptionText() {
|
|
455
|
+
return this._associatedDescriptionRefTexts || AccessibilityTextsHelper.L(this) || this._getDescriptionForGroups();
|
|
456
|
+
}
|
|
457
|
+
get growingButtonAriaLabel() {
|
|
458
|
+
return this.accessibilityAttributes.growingButton?.name;
|
|
459
|
+
}
|
|
460
|
+
get growingButtonAriaLabelledBy() {
|
|
461
|
+
return this.accessibilityAttributes.growingButton?.name ? undefined : `${this._id}-growingButton-text`;
|
|
462
|
+
}
|
|
463
|
+
hasGrowingComponent() {
|
|
464
|
+
if (this.growsOnScroll) {
|
|
465
|
+
return this._startMarkerOutOfView;
|
|
466
|
+
}
|
|
467
|
+
return this.growsWithButton;
|
|
468
|
+
}
|
|
469
|
+
_getDescriptionForGroups() {
|
|
470
|
+
let description = "";
|
|
471
|
+
if (this._groupCount > 0) {
|
|
472
|
+
if (this.accessibleRole === ListAccessibleRole$1.List) {
|
|
473
|
+
description = List_1.i18nBundle.getText(i18nDefaults.LIST_ROLE_LIST_GROUP_DESCRIPTION, this._groupCount, this._groupItemCount);
|
|
474
|
+
}
|
|
475
|
+
else if (this.accessibleRole === ListAccessibleRole$1.ListBox) {
|
|
476
|
+
description = List_1.i18nBundle.getText(i18nDefaults.LIST_ROLE_LISTBOX_GROUP_DESCRIPTION, this._groupCount);
|
|
477
|
+
}
|
|
478
|
+
}
|
|
479
|
+
return description;
|
|
480
|
+
}
|
|
481
|
+
get ariaLabelModeText() {
|
|
482
|
+
if (this.hasData) {
|
|
483
|
+
if (this.isMultiple) {
|
|
484
|
+
return List_1.i18nBundle.getText(i18nDefaults.ARIA_LABEL_LIST_MULTISELECTABLE);
|
|
485
|
+
}
|
|
486
|
+
if (this.isSingleSelect) {
|
|
487
|
+
return List_1.i18nBundle.getText(i18nDefaults.ARIA_LABEL_LIST_SELECTABLE);
|
|
488
|
+
}
|
|
489
|
+
if (this.isDelete) {
|
|
490
|
+
return List_1.i18nBundle.getText(i18nDefaults.ARIA_LABEL_LIST_DELETABLE);
|
|
491
|
+
}
|
|
492
|
+
}
|
|
493
|
+
return "";
|
|
494
|
+
}
|
|
495
|
+
get grows() {
|
|
496
|
+
return this.growing !== ListGrowingMode$1.None;
|
|
497
|
+
}
|
|
498
|
+
get growsOnScroll() {
|
|
499
|
+
return this.growing === ListGrowingMode$1.Scroll;
|
|
500
|
+
}
|
|
501
|
+
get growsWithButton() {
|
|
502
|
+
return this.growing === ListGrowingMode$1.Button;
|
|
503
|
+
}
|
|
504
|
+
get _growingButtonText() {
|
|
505
|
+
return this.growingButtonText || List_1.i18nBundle.getText(i18nDefaults.LOAD_MORE_TEXT);
|
|
506
|
+
}
|
|
507
|
+
get listAccessibleRole() {
|
|
508
|
+
return toLowercaseEnumValue.n(this.accessibleRole);
|
|
509
|
+
}
|
|
510
|
+
get classes() {
|
|
511
|
+
return {
|
|
512
|
+
root: {
|
|
513
|
+
"ui5-list-root": true,
|
|
514
|
+
},
|
|
515
|
+
};
|
|
516
|
+
}
|
|
517
|
+
prepareListItems() {
|
|
518
|
+
const slottedItems = this.getItemsForProcessing();
|
|
519
|
+
slottedItems.forEach((item, key) => {
|
|
520
|
+
const isLastChild = key === slottedItems.length - 1;
|
|
521
|
+
const showBottomBorder = this.separators === ListSeparator$1.All
|
|
522
|
+
|| (this.separators === ListSeparator$1.Inner && !isLastChild);
|
|
523
|
+
if (item.hasConfigurableMode) {
|
|
524
|
+
item._selectionMode = this.selectionMode;
|
|
525
|
+
}
|
|
526
|
+
item.hasBorder = showBottomBorder;
|
|
527
|
+
item.mediaRange = this.mediaRange;
|
|
528
|
+
});
|
|
529
|
+
}
|
|
530
|
+
async observeListEnd() {
|
|
531
|
+
await Icons.f$1();
|
|
532
|
+
this.getEndIntersectionObserver().observe(this.listEndDOM);
|
|
533
|
+
}
|
|
534
|
+
unobserveListEnd() {
|
|
535
|
+
if (this._endIntersectionObserver) {
|
|
536
|
+
this._endIntersectionObserver.disconnect();
|
|
537
|
+
this._endIntersectionObserver = null;
|
|
538
|
+
}
|
|
539
|
+
}
|
|
540
|
+
async observeListStart() {
|
|
541
|
+
await Icons.f$1();
|
|
542
|
+
this.getStartIntersectionObserver().observe(this.listStartDOM);
|
|
543
|
+
}
|
|
544
|
+
unobserveListStart() {
|
|
545
|
+
if (this._startIntersectionObserver) {
|
|
546
|
+
this._startIntersectionObserver.disconnect();
|
|
547
|
+
this._startIntersectionObserver = null;
|
|
548
|
+
}
|
|
549
|
+
}
|
|
550
|
+
onEndIntersection(entries) {
|
|
551
|
+
entries.forEach(entry => {
|
|
552
|
+
if (entry.isIntersecting) {
|
|
553
|
+
u(this.loadMore.bind(this), INFINITE_SCROLL_DEBOUNCE_RATE);
|
|
554
|
+
}
|
|
555
|
+
});
|
|
556
|
+
}
|
|
557
|
+
onStartIntersection(entries) {
|
|
558
|
+
entries.forEach(entry => {
|
|
559
|
+
this._startMarkerOutOfView = !entry.isIntersecting;
|
|
560
|
+
});
|
|
561
|
+
}
|
|
562
|
+
/*
|
|
563
|
+
* ITEM SELECTION BASED ON THE CURRENT MODE
|
|
564
|
+
*/
|
|
565
|
+
onSelectionRequested(e) {
|
|
566
|
+
const previouslySelectedItems = this.getSelectedItems();
|
|
567
|
+
let selectionChange = false;
|
|
568
|
+
if (this.selectionMode !== ListSelectionMode$1.None && this[`handle${this.selectionMode}`]) {
|
|
569
|
+
selectionChange = this[`handle${this.selectionMode}`](e.detail.item, !!e.detail.selected);
|
|
570
|
+
}
|
|
571
|
+
if (selectionChange) {
|
|
572
|
+
const changePrevented = !this.fireDecoratorEvent("selection-change", {
|
|
573
|
+
selectedItems: this.getSelectedItems(),
|
|
574
|
+
previouslySelectedItems,
|
|
575
|
+
selectionComponentPressed: e.detail.selectionComponentPressed,
|
|
576
|
+
targetItem: e.detail.item,
|
|
577
|
+
key: e.detail.key,
|
|
578
|
+
});
|
|
579
|
+
if (changePrevented) {
|
|
580
|
+
this._revertSelection(previouslySelectedItems);
|
|
581
|
+
}
|
|
582
|
+
}
|
|
583
|
+
}
|
|
584
|
+
handleSingle(item) {
|
|
585
|
+
if (item.selected) {
|
|
586
|
+
return false;
|
|
587
|
+
}
|
|
588
|
+
this.deselectSelectedItems();
|
|
589
|
+
item.selected = true;
|
|
590
|
+
return true;
|
|
591
|
+
}
|
|
592
|
+
handleSingleStart(item) {
|
|
593
|
+
return this.handleSingle(item);
|
|
594
|
+
}
|
|
595
|
+
handleSingleEnd(item) {
|
|
596
|
+
return this.handleSingle(item);
|
|
597
|
+
}
|
|
598
|
+
handleSingleAuto(item) {
|
|
599
|
+
return this.handleSingle(item);
|
|
600
|
+
}
|
|
601
|
+
handleMultiple(item, selected) {
|
|
602
|
+
item.selected = selected;
|
|
603
|
+
return true;
|
|
604
|
+
}
|
|
605
|
+
handleDelete(item) {
|
|
606
|
+
this.fireDecoratorEvent("item-delete", { item });
|
|
607
|
+
return true;
|
|
608
|
+
}
|
|
609
|
+
deselectSelectedItems() {
|
|
610
|
+
this.getSelectedItems().forEach(item => { item.selected = false; });
|
|
611
|
+
}
|
|
612
|
+
getSelectedItems() {
|
|
613
|
+
return this.getItems().filter(item => item.selected);
|
|
614
|
+
}
|
|
615
|
+
getEnabledItems() {
|
|
616
|
+
return this.getItems().filter(item => item._focusable);
|
|
617
|
+
}
|
|
618
|
+
getItems() {
|
|
619
|
+
// drill down when we see ui5-li-group and get the items
|
|
620
|
+
const items = [];
|
|
621
|
+
const slottedItems = this.getSlottedNodes("items");
|
|
622
|
+
let groupCount = 0;
|
|
623
|
+
let groupItemCount = 0;
|
|
624
|
+
slottedItems.forEach(item => {
|
|
625
|
+
if (ListItemGroup.isInstanceOfListItemGroup(item)) {
|
|
626
|
+
const groupItems = [item.groupHeaderItem, ...item.items.filter(listItem => listItem.assignedSlot)].filter(Boolean);
|
|
627
|
+
items.push(...groupItems);
|
|
628
|
+
groupCount++;
|
|
629
|
+
// subtract group itself for proper group header item count
|
|
630
|
+
groupItemCount += groupItems.length - 1;
|
|
631
|
+
}
|
|
632
|
+
else {
|
|
633
|
+
item.assignedSlot && items.push(item);
|
|
634
|
+
}
|
|
635
|
+
});
|
|
636
|
+
this._groupCount = groupCount;
|
|
637
|
+
this._groupItemCount = groupItemCount;
|
|
638
|
+
return items;
|
|
639
|
+
}
|
|
640
|
+
getItemsForProcessing() {
|
|
641
|
+
return this.getItems();
|
|
642
|
+
}
|
|
643
|
+
_revertSelection(previouslySelectedItems) {
|
|
644
|
+
this.getItems().forEach((item) => {
|
|
645
|
+
const oldSelection = previouslySelectedItems.indexOf(item) !== -1;
|
|
646
|
+
const multiSelectCheckBox = item.shadowRoot.querySelector(".ui5-li-multisel-cb");
|
|
647
|
+
const singleSelectRadioButton = item.shadowRoot.querySelector(".ui5-li-singlesel-radiobtn");
|
|
648
|
+
item.selected = oldSelection;
|
|
649
|
+
if (multiSelectCheckBox) {
|
|
650
|
+
multiSelectCheckBox.checked = oldSelection;
|
|
651
|
+
}
|
|
652
|
+
else if (singleSelectRadioButton) {
|
|
653
|
+
singleSelectRadioButton.checked = oldSelection;
|
|
654
|
+
}
|
|
655
|
+
});
|
|
656
|
+
}
|
|
657
|
+
_onkeydown(e) {
|
|
658
|
+
if (webcomponentsBase.n(e)) {
|
|
659
|
+
this._handleEnd();
|
|
660
|
+
e.preventDefault();
|
|
661
|
+
return;
|
|
662
|
+
}
|
|
663
|
+
if (webcomponentsBase.M(e)) {
|
|
664
|
+
this._handleHome();
|
|
665
|
+
return;
|
|
666
|
+
}
|
|
667
|
+
if (webcomponentsBase._(e)) {
|
|
668
|
+
this._handleDown();
|
|
669
|
+
e.preventDefault();
|
|
670
|
+
return;
|
|
671
|
+
}
|
|
672
|
+
if (webcomponentsBase.C(e)) {
|
|
673
|
+
this._moveItem(e.target, e);
|
|
674
|
+
return;
|
|
675
|
+
}
|
|
676
|
+
if (webcomponentsBase.x(e)) {
|
|
677
|
+
this._handleTabNext(e);
|
|
678
|
+
}
|
|
679
|
+
}
|
|
680
|
+
_moveItem(item, e) {
|
|
681
|
+
if (!item || !item.movable) {
|
|
682
|
+
return;
|
|
683
|
+
}
|
|
684
|
+
const closestPositions = ListItemGroup.k(this.items, item, e);
|
|
685
|
+
if (!closestPositions.length) {
|
|
686
|
+
return;
|
|
687
|
+
}
|
|
688
|
+
e.preventDefault();
|
|
689
|
+
const acceptedPosition = closestPositions.find(({ element, placement }) => {
|
|
690
|
+
return !this.fireDecoratorEvent("move-over", {
|
|
691
|
+
originalEvent: e,
|
|
692
|
+
source: {
|
|
693
|
+
element: item,
|
|
694
|
+
},
|
|
695
|
+
destination: {
|
|
696
|
+
element,
|
|
697
|
+
placement,
|
|
698
|
+
},
|
|
699
|
+
});
|
|
700
|
+
});
|
|
701
|
+
if (acceptedPosition) {
|
|
702
|
+
this.fireDecoratorEvent("move", {
|
|
703
|
+
originalEvent: e,
|
|
704
|
+
source: {
|
|
705
|
+
element: item,
|
|
706
|
+
},
|
|
707
|
+
destination: {
|
|
708
|
+
element: acceptedPosition.element,
|
|
709
|
+
placement: acceptedPosition.placement,
|
|
710
|
+
},
|
|
711
|
+
});
|
|
712
|
+
item.focus();
|
|
713
|
+
}
|
|
714
|
+
}
|
|
715
|
+
_onLoadMoreKeydown(e) {
|
|
716
|
+
if (webcomponentsBase.A(e)) {
|
|
717
|
+
e.preventDefault();
|
|
718
|
+
this._loadMoreActive = true;
|
|
719
|
+
}
|
|
720
|
+
if (webcomponentsBase.b$1(e)) {
|
|
721
|
+
this._onLoadMoreClick();
|
|
722
|
+
this._loadMoreActive = true;
|
|
723
|
+
}
|
|
724
|
+
if (webcomponentsBase.x(e)) {
|
|
725
|
+
this.focusAfterElement();
|
|
726
|
+
}
|
|
727
|
+
if (webcomponentsBase.P(e)) {
|
|
728
|
+
this._handleLodeMoreUp(e);
|
|
729
|
+
return;
|
|
730
|
+
}
|
|
731
|
+
if (webcomponentsBase.V(e)) {
|
|
732
|
+
if (this.getPreviouslyFocusedItem()) {
|
|
733
|
+
this.focusPreviouslyFocusedItem();
|
|
734
|
+
}
|
|
735
|
+
else {
|
|
736
|
+
this.focusFirstItem();
|
|
737
|
+
}
|
|
738
|
+
e.preventDefault();
|
|
739
|
+
}
|
|
740
|
+
}
|
|
741
|
+
_onLoadMoreKeyup(e) {
|
|
742
|
+
if (webcomponentsBase.A(e)) {
|
|
743
|
+
this._onLoadMoreClick();
|
|
744
|
+
}
|
|
745
|
+
this._loadMoreActive = false;
|
|
746
|
+
}
|
|
747
|
+
_onLoadMoreMousedown() {
|
|
748
|
+
this._loadMoreActive = true;
|
|
749
|
+
}
|
|
750
|
+
_onLoadMoreMouseup() {
|
|
751
|
+
this._loadMoreActive = false;
|
|
752
|
+
}
|
|
753
|
+
_onLoadMoreClick() {
|
|
754
|
+
this.loadMore();
|
|
755
|
+
}
|
|
756
|
+
_handleLodeMoreUp(e) {
|
|
757
|
+
const growingButton = this.getGrowingButton();
|
|
758
|
+
if (growingButton === e.target) {
|
|
759
|
+
const items = this.getItems();
|
|
760
|
+
const lastItem = items[items.length - 1];
|
|
761
|
+
this.focusItem(lastItem);
|
|
762
|
+
e.preventDefault();
|
|
763
|
+
e.stopImmediatePropagation();
|
|
764
|
+
}
|
|
765
|
+
}
|
|
766
|
+
checkListInViewport() {
|
|
767
|
+
this._inViewport = n(this.getDomRef());
|
|
768
|
+
}
|
|
769
|
+
loadMore() {
|
|
770
|
+
if (this.hasGrowingComponent()) {
|
|
771
|
+
this.fireDecoratorEvent("load-more");
|
|
772
|
+
}
|
|
773
|
+
}
|
|
774
|
+
_handleResize() {
|
|
775
|
+
this.checkListInViewport();
|
|
776
|
+
const width = this.getBoundingClientRect().width;
|
|
777
|
+
this.mediaRange = webcomponentsBase.i$2.getCurrentRange(webcomponentsBase.i$2.RANGESETS.RANGE_4STEPS, width);
|
|
778
|
+
}
|
|
779
|
+
/*
|
|
780
|
+
* KEYBOARD SUPPORT
|
|
781
|
+
*/
|
|
782
|
+
_handleTabNext(e) {
|
|
783
|
+
t(e.target);
|
|
784
|
+
{
|
|
785
|
+
return;
|
|
786
|
+
}
|
|
787
|
+
}
|
|
788
|
+
_handleHome() {
|
|
789
|
+
if (!this.growsWithButton) {
|
|
790
|
+
return;
|
|
791
|
+
}
|
|
792
|
+
this.focusFirstItem();
|
|
793
|
+
}
|
|
794
|
+
_handleEnd() {
|
|
795
|
+
if (!this.growsWithButton) {
|
|
796
|
+
return;
|
|
797
|
+
}
|
|
798
|
+
this._shouldFocusGrowingButton();
|
|
799
|
+
}
|
|
800
|
+
_handleDown() {
|
|
801
|
+
if (!this.growsWithButton) {
|
|
802
|
+
return;
|
|
803
|
+
}
|
|
804
|
+
this._shouldFocusGrowingButton();
|
|
805
|
+
}
|
|
806
|
+
_onfocusin(e) {
|
|
807
|
+
const target = t(e.target);
|
|
808
|
+
// If the focusin event does not origin from one of the 'triggers' - ignore it.
|
|
809
|
+
if (!this.isForwardElement(target)) {
|
|
810
|
+
return;
|
|
811
|
+
}
|
|
812
|
+
// The focus arrives in the List for the first time.
|
|
813
|
+
// If there is selected item - focus it or focus the first item.
|
|
814
|
+
if (!this.getPreviouslyFocusedItem()) {
|
|
815
|
+
if (this.growsWithButton && this.isForwardAfterElement(target)) {
|
|
816
|
+
this.focusGrowingButton();
|
|
817
|
+
}
|
|
818
|
+
else {
|
|
819
|
+
this.focusFirstItem();
|
|
820
|
+
}
|
|
821
|
+
e.stopImmediatePropagation();
|
|
822
|
+
return;
|
|
823
|
+
}
|
|
824
|
+
// The focus returns to the List,
|
|
825
|
+
// focus the first selected item or the previously focused element.
|
|
826
|
+
if (!this.getForwardingFocus()) {
|
|
827
|
+
if (this.growsWithButton && this.isForwardAfterElement(target)) {
|
|
828
|
+
this.focusGrowingButton();
|
|
829
|
+
e.stopImmediatePropagation();
|
|
830
|
+
return;
|
|
831
|
+
}
|
|
832
|
+
this.focusPreviouslyFocusedItem();
|
|
833
|
+
}
|
|
834
|
+
e.stopImmediatePropagation();
|
|
835
|
+
this.setForwardingFocus(false);
|
|
836
|
+
}
|
|
837
|
+
_ondragenter(e) {
|
|
838
|
+
this._dragAndDropHandler.ondragenter(e);
|
|
839
|
+
}
|
|
840
|
+
_ondragleave(e) {
|
|
841
|
+
this._dragAndDropHandler.ondragleave(e);
|
|
842
|
+
}
|
|
843
|
+
_ondragover(e) {
|
|
844
|
+
this._dragAndDropHandler.ondragover(e);
|
|
845
|
+
}
|
|
846
|
+
_ondrop(e) {
|
|
847
|
+
this._dragAndDropHandler.ondrop(e);
|
|
848
|
+
}
|
|
849
|
+
isForwardElement(element) {
|
|
850
|
+
const elementId = element.id;
|
|
851
|
+
const beforeElement = this.getBeforeElement();
|
|
852
|
+
if (this._id === elementId || (beforeElement && beforeElement.id === elementId)) {
|
|
853
|
+
return true;
|
|
854
|
+
}
|
|
855
|
+
return this.isForwardAfterElement(element);
|
|
856
|
+
}
|
|
857
|
+
isForwardAfterElement(element) {
|
|
858
|
+
const elementId = element.id;
|
|
859
|
+
const afterElement = this.getAfterElement();
|
|
860
|
+
return afterElement && afterElement.id === elementId;
|
|
861
|
+
}
|
|
862
|
+
onItemTabIndexChange(e) {
|
|
863
|
+
e.stopPropagation();
|
|
864
|
+
const target = e.target;
|
|
865
|
+
this._itemNavigation.setCurrentItem(target);
|
|
866
|
+
}
|
|
867
|
+
onItemFocused(e) {
|
|
868
|
+
const target = e.target;
|
|
869
|
+
e.stopPropagation();
|
|
870
|
+
this._itemNavigation.setCurrentItem(target);
|
|
871
|
+
this.fireDecoratorEvent("item-focused", { item: target });
|
|
872
|
+
if (this.selectionMode === ListSelectionMode$1.SingleAuto) {
|
|
873
|
+
const detail = {
|
|
874
|
+
item: target,
|
|
875
|
+
selectionComponentPressed: false,
|
|
876
|
+
selected: true,
|
|
877
|
+
key: e.detail.key,
|
|
878
|
+
};
|
|
879
|
+
this.onSelectionRequested({ detail });
|
|
880
|
+
}
|
|
881
|
+
}
|
|
882
|
+
onItemPress(e) {
|
|
883
|
+
const pressedItem = e.detail.item;
|
|
884
|
+
if (!this.fireDecoratorEvent("item-click", { item: pressedItem })) {
|
|
885
|
+
return;
|
|
886
|
+
}
|
|
887
|
+
if (this.selectionMode !== ListSelectionMode$1.Delete) {
|
|
888
|
+
const detail = {
|
|
889
|
+
item: pressedItem,
|
|
890
|
+
selectionComponentPressed: false,
|
|
891
|
+
selected: !pressedItem.selected,
|
|
892
|
+
key: e.detail.key,
|
|
893
|
+
};
|
|
894
|
+
this.onSelectionRequested({ detail });
|
|
895
|
+
}
|
|
896
|
+
}
|
|
897
|
+
// This is applicable to NotificationListItem
|
|
898
|
+
onItemClose(e) {
|
|
899
|
+
const target = e.target;
|
|
900
|
+
const shouldFireItemClose = target?.hasAttribute("ui5-li-notification") || target?.hasAttribute("ui5-li-notification-group");
|
|
901
|
+
if (shouldFireItemClose) {
|
|
902
|
+
this.fireDecoratorEvent("item-close", { item: e.detail?.item });
|
|
903
|
+
}
|
|
904
|
+
}
|
|
905
|
+
onItemToggle(e) {
|
|
906
|
+
if (!e.target?.isListItemBase) {
|
|
907
|
+
return;
|
|
908
|
+
}
|
|
909
|
+
this.fireDecoratorEvent("item-toggle", { item: e.detail.item });
|
|
910
|
+
}
|
|
911
|
+
onForwardBefore(e) {
|
|
912
|
+
this.setPreviouslyFocusedItem(e.target);
|
|
913
|
+
this.focusBeforeElement();
|
|
914
|
+
e.stopPropagation();
|
|
915
|
+
}
|
|
916
|
+
onForwardAfter(e) {
|
|
917
|
+
this.setPreviouslyFocusedItem(e.target);
|
|
918
|
+
if (!this.growsWithButton) {
|
|
919
|
+
this.focusAfterElement();
|
|
920
|
+
}
|
|
921
|
+
else {
|
|
922
|
+
this.focusGrowingButton();
|
|
923
|
+
e.preventDefault();
|
|
924
|
+
}
|
|
925
|
+
e.stopPropagation();
|
|
926
|
+
}
|
|
927
|
+
focusBeforeElement() {
|
|
928
|
+
this.setForwardingFocus(true);
|
|
929
|
+
this.getBeforeElement().focus();
|
|
930
|
+
}
|
|
931
|
+
focusAfterElement() {
|
|
932
|
+
this.setForwardingFocus(true);
|
|
933
|
+
this.getAfterElement().focus();
|
|
934
|
+
}
|
|
935
|
+
focusGrowingButton() {
|
|
936
|
+
const growingBtn = this.getGrowingButton();
|
|
937
|
+
if (growingBtn) {
|
|
938
|
+
growingBtn.focus();
|
|
939
|
+
}
|
|
940
|
+
}
|
|
941
|
+
_shouldFocusGrowingButton() {
|
|
942
|
+
const items = this.getItems();
|
|
943
|
+
const lastIndex = items.length - 1;
|
|
944
|
+
const currentIndex = this._itemNavigation._currentIndex;
|
|
945
|
+
if (currentIndex !== -1 && currentIndex === lastIndex) {
|
|
946
|
+
this.focusGrowingButton();
|
|
947
|
+
}
|
|
948
|
+
}
|
|
949
|
+
getGrowingButton() {
|
|
950
|
+
return this.shadowRoot.querySelector(`[id="${this._id}-growing-btn"]`);
|
|
951
|
+
}
|
|
952
|
+
/**
|
|
953
|
+
* Focuses the first list item and sets its tabindex to "0" via the ItemNavigation
|
|
954
|
+
* @protected
|
|
955
|
+
*/
|
|
956
|
+
focusFirstItem() {
|
|
957
|
+
// only enabled items are focusable
|
|
958
|
+
const firstItem = this.getFirstItem(x => x._focusable);
|
|
959
|
+
if (firstItem) {
|
|
960
|
+
firstItem.focus();
|
|
961
|
+
}
|
|
962
|
+
}
|
|
963
|
+
focusPreviouslyFocusedItem() {
|
|
964
|
+
const previouslyFocusedItem = this.getPreviouslyFocusedItem();
|
|
965
|
+
if (previouslyFocusedItem) {
|
|
966
|
+
previouslyFocusedItem.focus();
|
|
967
|
+
}
|
|
968
|
+
}
|
|
969
|
+
focusFirstSelectedItem() {
|
|
970
|
+
// only enabled items are focusable
|
|
971
|
+
const firstSelectedItem = this.getFirstItem(x => x.selected && x._focusable);
|
|
972
|
+
if (firstSelectedItem) {
|
|
973
|
+
firstSelectedItem.focus();
|
|
974
|
+
}
|
|
975
|
+
}
|
|
976
|
+
/**
|
|
977
|
+
* Focuses a list item and sets its tabindex to "0" via the ItemNavigation
|
|
978
|
+
* @protected
|
|
979
|
+
* @param item
|
|
980
|
+
*/
|
|
981
|
+
focusItem(item) {
|
|
982
|
+
this._itemNavigation.setCurrentItem(item);
|
|
983
|
+
item.focus();
|
|
984
|
+
}
|
|
985
|
+
onFocusRequested(e) {
|
|
986
|
+
setTimeout(() => {
|
|
987
|
+
this.setPreviouslyFocusedItem(e.target);
|
|
988
|
+
this.focusPreviouslyFocusedItem();
|
|
989
|
+
}, 0);
|
|
990
|
+
}
|
|
991
|
+
setForwardingFocus(forwardingFocus) {
|
|
992
|
+
this._forwardingFocus = forwardingFocus;
|
|
993
|
+
}
|
|
994
|
+
getForwardingFocus() {
|
|
995
|
+
return this._forwardingFocus;
|
|
996
|
+
}
|
|
997
|
+
setPreviouslyFocusedItem(item) {
|
|
998
|
+
this._previouslyFocusedItem = item;
|
|
999
|
+
}
|
|
1000
|
+
getPreviouslyFocusedItem() {
|
|
1001
|
+
return this._previouslyFocusedItem;
|
|
1002
|
+
}
|
|
1003
|
+
getFirstItem(filter) {
|
|
1004
|
+
const slottedItems = this.getItems();
|
|
1005
|
+
let firstItem = null;
|
|
1006
|
+
if (!filter) {
|
|
1007
|
+
return slottedItems.length ? slottedItems[0] : null;
|
|
1008
|
+
}
|
|
1009
|
+
for (let i = 0; i < slottedItems.length; i++) {
|
|
1010
|
+
if (filter(slottedItems[i])) {
|
|
1011
|
+
firstItem = slottedItems[i];
|
|
1012
|
+
break;
|
|
1013
|
+
}
|
|
1014
|
+
}
|
|
1015
|
+
return firstItem;
|
|
1016
|
+
}
|
|
1017
|
+
getAfterElement() {
|
|
1018
|
+
if (!this._afterElement) {
|
|
1019
|
+
this._afterElement = this.shadowRoot.querySelector(`[id="${this._id}-after"]`);
|
|
1020
|
+
}
|
|
1021
|
+
return this._afterElement;
|
|
1022
|
+
}
|
|
1023
|
+
getBeforeElement() {
|
|
1024
|
+
if (!this._beforeElement) {
|
|
1025
|
+
this._beforeElement = this.shadowRoot.querySelector(`[id="${this._id}-before"]`);
|
|
1026
|
+
}
|
|
1027
|
+
return this._beforeElement;
|
|
1028
|
+
}
|
|
1029
|
+
getEndIntersectionObserver() {
|
|
1030
|
+
if (!this._endIntersectionObserver) {
|
|
1031
|
+
this._endIntersectionObserver = new IntersectionObserver(this.onEndIntersection.bind(this), {
|
|
1032
|
+
root: null, // null means the viewport
|
|
1033
|
+
rootMargin: "0px",
|
|
1034
|
+
threshold: 1.0,
|
|
1035
|
+
});
|
|
1036
|
+
}
|
|
1037
|
+
return this._endIntersectionObserver;
|
|
1038
|
+
}
|
|
1039
|
+
getStartIntersectionObserver() {
|
|
1040
|
+
if (!this._startIntersectionObserver) {
|
|
1041
|
+
this._startIntersectionObserver = new IntersectionObserver(this.onStartIntersection.bind(this), {
|
|
1042
|
+
root: null, // null means the viewport
|
|
1043
|
+
rootMargin: "0px",
|
|
1044
|
+
threshold: 1.0,
|
|
1045
|
+
});
|
|
1046
|
+
}
|
|
1047
|
+
return this._startIntersectionObserver;
|
|
1048
|
+
}
|
|
1049
|
+
};
|
|
1050
|
+
__decorate([
|
|
1051
|
+
webcomponentsBase.s()
|
|
1052
|
+
], List.prototype, "headerText", void 0);
|
|
1053
|
+
__decorate([
|
|
1054
|
+
webcomponentsBase.s()
|
|
1055
|
+
], List.prototype, "footerText", void 0);
|
|
1056
|
+
__decorate([
|
|
1057
|
+
webcomponentsBase.s({ type: Boolean })
|
|
1058
|
+
], List.prototype, "indent", void 0);
|
|
1059
|
+
__decorate([
|
|
1060
|
+
webcomponentsBase.s()
|
|
1061
|
+
], List.prototype, "selectionMode", void 0);
|
|
1062
|
+
__decorate([
|
|
1063
|
+
webcomponentsBase.s()
|
|
1064
|
+
], List.prototype, "noDataText", void 0);
|
|
1065
|
+
__decorate([
|
|
1066
|
+
webcomponentsBase.s()
|
|
1067
|
+
], List.prototype, "separators", void 0);
|
|
1068
|
+
__decorate([
|
|
1069
|
+
webcomponentsBase.s()
|
|
1070
|
+
], List.prototype, "growing", void 0);
|
|
1071
|
+
__decorate([
|
|
1072
|
+
webcomponentsBase.s()
|
|
1073
|
+
], List.prototype, "growingButtonText", void 0);
|
|
1074
|
+
__decorate([
|
|
1075
|
+
webcomponentsBase.s({ type: Boolean })
|
|
1076
|
+
], List.prototype, "loading", void 0);
|
|
1077
|
+
__decorate([
|
|
1078
|
+
webcomponentsBase.s({ type: Number })
|
|
1079
|
+
], List.prototype, "loadingDelay", void 0);
|
|
1080
|
+
__decorate([
|
|
1081
|
+
webcomponentsBase.s()
|
|
1082
|
+
], List.prototype, "accessibleName", void 0);
|
|
1083
|
+
__decorate([
|
|
1084
|
+
webcomponentsBase.s({ type: Object })
|
|
1085
|
+
], List.prototype, "accessibilityAttributes", void 0);
|
|
1086
|
+
__decorate([
|
|
1087
|
+
webcomponentsBase.s()
|
|
1088
|
+
], List.prototype, "accessibleNameRef", void 0);
|
|
1089
|
+
__decorate([
|
|
1090
|
+
webcomponentsBase.s()
|
|
1091
|
+
], List.prototype, "accessibleDescription", void 0);
|
|
1092
|
+
__decorate([
|
|
1093
|
+
webcomponentsBase.s()
|
|
1094
|
+
], List.prototype, "accessibleDescriptionRef", void 0);
|
|
1095
|
+
__decorate([
|
|
1096
|
+
webcomponentsBase.s({ noAttribute: true })
|
|
1097
|
+
], List.prototype, "_associatedDescriptionRefTexts", void 0);
|
|
1098
|
+
__decorate([
|
|
1099
|
+
webcomponentsBase.s({ noAttribute: true })
|
|
1100
|
+
], List.prototype, "_associatedLabelsRefTexts", void 0);
|
|
1101
|
+
__decorate([
|
|
1102
|
+
webcomponentsBase.s()
|
|
1103
|
+
], List.prototype, "accessibleRole", void 0);
|
|
1104
|
+
__decorate([
|
|
1105
|
+
webcomponentsBase.s({ type: Boolean })
|
|
1106
|
+
], List.prototype, "_inViewport", void 0);
|
|
1107
|
+
__decorate([
|
|
1108
|
+
webcomponentsBase.s({ type: Boolean })
|
|
1109
|
+
], List.prototype, "_loadMoreActive", void 0);
|
|
1110
|
+
__decorate([
|
|
1111
|
+
webcomponentsBase.s()
|
|
1112
|
+
], List.prototype, "mediaRange", void 0);
|
|
1113
|
+
__decorate([
|
|
1114
|
+
webcomponentsBase.d({
|
|
1115
|
+
type: HTMLElement,
|
|
1116
|
+
"default": true,
|
|
1117
|
+
invalidateOnChildChange: true,
|
|
1118
|
+
})
|
|
1119
|
+
], List.prototype, "items", void 0);
|
|
1120
|
+
__decorate([
|
|
1121
|
+
webcomponentsBase.d()
|
|
1122
|
+
], List.prototype, "header", void 0);
|
|
1123
|
+
__decorate([
|
|
1124
|
+
parametersBundle_css$1.i("sap/f/gen/ui5/webcomponents")
|
|
1125
|
+
], List, "i18nBundle", void 0);
|
|
1126
|
+
List = List_1 = __decorate([
|
|
1127
|
+
webcomponentsBase.m({
|
|
1128
|
+
tag: "ui5-list",
|
|
1129
|
+
fastNavigation: true,
|
|
1130
|
+
renderer: parametersBundle_css.y,
|
|
1131
|
+
template: ListTemplate,
|
|
1132
|
+
styles: [
|
|
1133
|
+
listCss,
|
|
1134
|
+
],
|
|
1135
|
+
})
|
|
1136
|
+
/**
|
|
1137
|
+
* Fired when an item is activated, unless the item's `type` property
|
|
1138
|
+
* is set to `Inactive`.
|
|
1139
|
+
*
|
|
1140
|
+
* **Note**: This event is not triggered by interactions with selection components such as the checkboxes and radio buttons,
|
|
1141
|
+
* associated with non-default `selectionMode` values, or if any other **interactive** component
|
|
1142
|
+
* (such as a button or input) within the list item is directly clicked.
|
|
1143
|
+
* @param {HTMLElement} item The clicked item.
|
|
1144
|
+
* @public
|
|
1145
|
+
*/
|
|
1146
|
+
,
|
|
1147
|
+
eventStrict.l("item-click", {
|
|
1148
|
+
bubbles: true,
|
|
1149
|
+
cancelable: true,
|
|
1150
|
+
})
|
|
1151
|
+
/**
|
|
1152
|
+
* Fired when the `Close` button of any item is clicked
|
|
1153
|
+
*
|
|
1154
|
+
* **Note:** This event is only applicable to list items that can be closed (such as notification list items),
|
|
1155
|
+
* not to be confused with `item-delete`.
|
|
1156
|
+
* @param {HTMLElement} item the item about to be closed.
|
|
1157
|
+
* @public
|
|
1158
|
+
* @since 1.0.0-rc.8
|
|
1159
|
+
*/
|
|
1160
|
+
,
|
|
1161
|
+
eventStrict.l("item-close", {
|
|
1162
|
+
bubbles: true,
|
|
1163
|
+
})
|
|
1164
|
+
/**
|
|
1165
|
+
* Fired when the `Toggle` button of any item is clicked.
|
|
1166
|
+
*
|
|
1167
|
+
* **Note:** This event is only applicable to list items that can be toggled (such as notification group list items).
|
|
1168
|
+
* @param {HTMLElement} item the toggled item.
|
|
1169
|
+
* @public
|
|
1170
|
+
* @since 1.0.0-rc.8
|
|
1171
|
+
*/
|
|
1172
|
+
,
|
|
1173
|
+
eventStrict.l("item-toggle", {
|
|
1174
|
+
bubbles: true,
|
|
1175
|
+
})
|
|
1176
|
+
/**
|
|
1177
|
+
* Fired when the Delete button of any item is pressed.
|
|
1178
|
+
*
|
|
1179
|
+
* **Note:** A Delete button is displayed on each item,
|
|
1180
|
+
* when the component `selectionMode` property is set to `Delete`.
|
|
1181
|
+
* @param {HTMLElement} item the deleted item.
|
|
1182
|
+
* @public
|
|
1183
|
+
*/
|
|
1184
|
+
,
|
|
1185
|
+
eventStrict.l("item-delete", {
|
|
1186
|
+
bubbles: true,
|
|
1187
|
+
})
|
|
1188
|
+
/**
|
|
1189
|
+
* Fired when selection is changed by user interaction
|
|
1190
|
+
* in `Single`, `SingleStart`, `SingleEnd` and `Multiple` selection modes.
|
|
1191
|
+
* @param {Array<ListItemBase>} selectedItems An array of the selected items.
|
|
1192
|
+
* @param {Array<ListItemBase>} previouslySelectedItems An array of the previously selected items.
|
|
1193
|
+
* @public
|
|
1194
|
+
*/
|
|
1195
|
+
,
|
|
1196
|
+
eventStrict.l("selection-change", {
|
|
1197
|
+
bubbles: true,
|
|
1198
|
+
cancelable: true,
|
|
1199
|
+
})
|
|
1200
|
+
/**
|
|
1201
|
+
* Fired when the user scrolls to the bottom of the list.
|
|
1202
|
+
*
|
|
1203
|
+
* **Note:** The event is fired when the `growing='Scroll'` property is enabled.
|
|
1204
|
+
* @public
|
|
1205
|
+
* @since 1.0.0-rc.6
|
|
1206
|
+
*/
|
|
1207
|
+
,
|
|
1208
|
+
eventStrict.l("load-more", {
|
|
1209
|
+
bubbles: true,
|
|
1210
|
+
})
|
|
1211
|
+
/**
|
|
1212
|
+
* @private
|
|
1213
|
+
*/
|
|
1214
|
+
,
|
|
1215
|
+
eventStrict.l("item-focused", {
|
|
1216
|
+
bubbles: true,
|
|
1217
|
+
})
|
|
1218
|
+
/**
|
|
1219
|
+
* Fired when a movable list item is moved over a potential drop target during a dragging operation.
|
|
1220
|
+
*
|
|
1221
|
+
* If the new position is valid, prevent the default action of the event using `preventDefault()`.
|
|
1222
|
+
* @param {object} source Contains information about the moved element under `element` property.
|
|
1223
|
+
* @param {object} destination Contains information about the destination of the moved element. Has `element` and `placement` properties.
|
|
1224
|
+
* @public
|
|
1225
|
+
* @since 2.0.0
|
|
1226
|
+
*/
|
|
1227
|
+
,
|
|
1228
|
+
eventStrict.l("move-over", {
|
|
1229
|
+
bubbles: true,
|
|
1230
|
+
cancelable: true,
|
|
1231
|
+
})
|
|
1232
|
+
/**
|
|
1233
|
+
* Fired when a movable list item is dropped onto a drop target.
|
|
1234
|
+
*
|
|
1235
|
+
* **Note:** `move` event is fired only if there was a preceding `move-over` with prevented default action.
|
|
1236
|
+
* @param {object} source Contains information about the moved element under `element` property.
|
|
1237
|
+
* @param {object} destination Contains information about the destination of the moved element. Has `element` and `placement` properties.
|
|
1238
|
+
* @public
|
|
1239
|
+
*/
|
|
1240
|
+
,
|
|
1241
|
+
eventStrict.l("move", {
|
|
1242
|
+
bubbles: true,
|
|
1243
|
+
})
|
|
1244
|
+
], List);
|
|
1245
|
+
List.define();
|
|
1246
|
+
var List$1 = List;
|
|
1247
|
+
|
|
1248
|
+
exports.List = List$1;
|
|
1249
|
+
exports.ListAccessibleRole = ListAccessibleRole$1;
|
|
1250
|
+
exports.ListSelectionMode = ListSelectionMode$1;
|
|
1251
|
+
exports.ListSeparator = ListSeparator$1;
|
|
1252
|
+
|
|
1253
|
+
}));
|