@sapui5/sap.ushell 1.138.1 → 1.139.1

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.
Files changed (790) hide show
  1. package/package.json +1 -1
  2. package/src/main/js/sap/ushell/.library +1 -1
  3. package/src/main/js/sap/ushell/ApplicationType/UrlPostProcessing.js +14 -10
  4. package/src/main/js/sap/ushell/ApplicationType/urlTemplateResolution.js +0 -9
  5. package/src/main/js/sap/ushell/ApplicationType/wcfResolution.js +32 -26
  6. package/src/main/js/sap/ushell/Container.js +0 -1
  7. package/src/main/js/sap/ushell/Fiori20Adapter.js +1 -1
  8. package/src/main/js/sap/ushell/Fiori20AdapterTest.js +1 -1
  9. package/src/main/js/sap/ushell/NWBCInterface.js +1 -1
  10. package/src/main/js/sap/ushell/TechnicalParameters.js +1 -1
  11. package/src/main/js/sap/ushell/URLTemplateProcessor/DefinitionParameterSetBuilder.js +1 -1
  12. package/src/main/js/sap/ushell/URLTemplateProcessor/DependencyGraph.js +1 -1
  13. package/src/main/js/sap/ushell/URLTemplateProcessor/Functions.js +1 -1
  14. package/src/main/js/sap/ushell/URLTemplateProcessor/Resolvers.js +1 -1
  15. package/src/main/js/sap/ushell/URLTemplateProcessor/TemplateParameterParser.js +1 -1
  16. package/src/main/js/sap/ushell/URLTemplateProcessor/utils.js +1 -1
  17. package/src/main/js/sap/ushell/URLTemplateProcessor.js +1 -1
  18. package/src/main/js/sap/ushell/Ui5NativeServiceFactory.js +12 -12
  19. package/src/main/js/sap/ushell/Ui5ServiceFactory.js +1 -1
  20. package/src/main/js/sap/ushell/User.js +32 -12
  21. package/src/main/js/sap/ushell/adapters/cdm/ClientSideTargetResolutionAdapter.js +1 -1
  22. package/src/main/js/sap/ushell/adapters/cdm/CommonDataModelAdapter.js +1 -1
  23. package/src/main/js/sap/ushell/adapters/cdm/ConfigurationDefaultsAdapter.js +1 -1
  24. package/src/main/js/sap/ushell/adapters/cdm/ContainerAdapter.js +1 -1
  25. package/src/main/js/sap/ushell/adapters/cdm/LaunchPageAdapter.js +1 -1
  26. package/src/main/js/sap/ushell/adapters/cdm/PagesCommonDataModelAdapter.js +1 -1
  27. package/src/main/js/sap/ushell/adapters/cdm/PersonalizationAdapter.js +1 -1
  28. package/src/main/js/sap/ushell/adapters/cdm/PersonalizationV2Adapter.js +1 -1
  29. package/src/main/js/sap/ushell/adapters/cdm/Ui5ComponentLoaderAdapter.js +1 -1
  30. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/modifyHome.js +1 -1
  31. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readCatalogs.js +1 -1
  32. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readHome.js +1 -1
  33. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/uri.transform.js +1 -1
  34. package/src/main/js/sap/ushell/adapters/cdm/util/AppForInbound.js +1 -1
  35. package/src/main/js/sap/ushell/adapters/cdm/util/cdmSiteUtils.js +1 -1
  36. package/src/main/js/sap/ushell/adapters/cdm/v3/AdapterBase.js +1 -1
  37. package/src/main/js/sap/ushell/adapters/cdm/v3/FlpLaunchPageAdapter.js +1 -1
  38. package/src/main/js/sap/ushell/adapters/cdm/v3/LaunchPageAdapter.js +1 -1
  39. package/src/main/js/sap/ushell/adapters/cdm/v3/StaticGroupsAdapter.js +1 -1
  40. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readApplications.js +1 -1
  41. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readCatalogs.js +1 -1
  42. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readHome.js +1 -1
  43. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readPages.js +1 -1
  44. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readUtils.js +1 -1
  45. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readVisualizations.js +1 -1
  46. package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionAdapter.js +1 -1
  47. package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionInternalAdapter.js +1 -1
  48. package/src/main/js/sap/ushell/adapters/cep/SearchCEPAdapter.js +1 -1
  49. package/src/main/js/sap/ushell/adapters/cflp/UserDefaultParameterPersistenceAdapter.js +1 -1
  50. package/src/main/js/sap/ushell/adapters/local/AdapterContainer.js +1 -1
  51. package/src/main/js/sap/ushell/adapters/local/AppStateAdapter.js +1 -1
  52. package/src/main/js/sap/ushell/adapters/local/ClientSideTargetResolutionAdapter.js +1 -1
  53. package/src/main/js/sap/ushell/adapters/local/ContainerAdapter.js +1 -1
  54. package/src/main/js/sap/ushell/adapters/local/FlpLaunchPageAdapter.js +1 -1
  55. package/src/main/js/sap/ushell/adapters/local/LaunchPageAdapter.js +1 -1
  56. package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionAdapter.js +1 -1
  57. package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionInternalAdapter.js +1 -1
  58. package/src/main/js/sap/ushell/adapters/local/PageBuildingAdapter.js +1 -1
  59. package/src/main/js/sap/ushell/adapters/local/PagePersistenceAdapter.js +1 -1
  60. package/src/main/js/sap/ushell/adapters/local/PersonalizationAdapter.js +1 -1
  61. package/src/main/js/sap/ushell/adapters/local/PersonalizationV2Adapter.js +1 -1
  62. package/src/main/js/sap/ushell/adapters/local/SearchAdapter.js +1 -1
  63. package/src/main/js/sap/ushell/adapters/local/SearchCEPAdapter.js +1 -1
  64. package/src/main/js/sap/ushell/adapters/local/SupportTicketAdapter.js +1 -1
  65. package/src/main/js/sap/ushell/adapters/local/Ui5ComponentLoaderAdapter.js +1 -1
  66. package/src/main/js/sap/ushell/adapters/local/UserDefaultParameterPersistenceAdapter.js +1 -1
  67. package/src/main/js/sap/ushell/adapters/local/UserInfoAdapter.js +1 -1
  68. package/src/main/js/sap/ushell/appIntegration/AppLifeCycle.js +6 -5
  69. package/src/main/js/sap/ushell/appIntegration/ApplicationContainer.js +14 -1
  70. package/src/main/js/sap/ushell/appIntegration/ApplicationHandle.js +8 -3
  71. package/src/main/js/sap/ushell/appIntegration/IframeApplicationContainer.js +8 -8
  72. package/src/main/js/sap/ushell/appIntegration/PostMessageManager/AppruntimeHandler.js +17 -12
  73. package/src/main/js/sap/ushell/appIntegration/PostMessageManager/ExtensionItems.js +6 -23
  74. package/src/main/js/sap/ushell/appIntegration/PostMessageManager/LifecycleHandler.js +114 -91
  75. package/src/main/js/sap/ushell/appIntegration/PostMessageManager/NWBCHandler.js +15 -7
  76. package/src/main/js/sap/ushell/appIntegration/PostMessageManager/ServiceHandler.js +257 -214
  77. package/src/main/js/sap/ushell/appIntegration/PostMessageManager.js +347 -117
  78. package/src/main/js/sap/ushell/appIntegration/UI5ApplicationContainer.js +1 -0
  79. package/src/main/js/sap/ushell/appIntegration/contracts/EmbeddedUI5Handler.js +15 -19
  80. package/src/main/js/sap/ushell/appIntegration/contracts/StatefulContainerV1Handler.js +15 -14
  81. package/src/main/js/sap/ushell/appIntegration/contracts/StatefulContainerV2Handler.js +38 -40
  82. package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/RendererExtensions.js +1 -1
  83. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppConfiguration.js +1 -1
  84. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppLifeCycle.js +1 -1
  85. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppState.js +1 -8
  86. package/src/main/js/sap/ushell/appRuntime/ui5/services/Bookmark.js +1 -1
  87. package/src/main/js/sap/ushell/appRuntime/ui5/services/BookmarkV2.js +1 -1
  88. package/src/main/js/sap/ushell/appRuntime/ui5/services/CommonDataModel.js +1 -1
  89. package/src/main/js/sap/ushell/appRuntime/ui5/services/Container.js +1 -1
  90. package/src/main/js/sap/ushell/appRuntime/ui5/services/CrossApplicationNavigation.js +74 -17
  91. package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension/Item.js +1 -1
  92. package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension.js +25 -1
  93. package/src/main/js/sap/ushell/appRuntime/ui5/services/FlpLaunchPage.js +1 -1
  94. package/src/main/js/sap/ushell/appRuntime/ui5/services/FrameBoundExtension.js +1 -1
  95. package/src/main/js/sap/ushell/appRuntime/ui5/services/LaunchPage.js +1 -1
  96. package/src/main/js/sap/ushell/appRuntime/ui5/services/MessageBroker.js +1 -1
  97. package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolution.js +1 -1
  98. package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolutionInternal.js +1 -1
  99. package/src/main/js/sap/ushell/appRuntime/ui5/services/Navigation.js +17 -21
  100. package/src/main/js/sap/ushell/appRuntime/ui5/services/ReferenceResolver.js +1 -1
  101. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigation.js +1 -1
  102. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigationInternal.js +1 -1
  103. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellUIService.js +4 -4
  104. package/src/main/js/sap/ushell/appRuntime/ui5/services/UserInfo.js +1 -1
  105. package/src/main/js/sap/ushell/appRuntime/ui5/services/adapters/Ui5ComponentLoaderAdapter.js +1 -1
  106. package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/StepConfiguration.json +0 -2
  107. package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/logger.js +1 -1
  108. package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/state.js +1 -1
  109. package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5datetimeformat.js +1 -1
  110. package/src/main/js/sap/ushell/bootstrap/common/common.create.configcontract.core.js +4 -0
  111. package/src/main/js/sap/ushell/bootstrap/sandbox2.js +1 -1
  112. package/src/main/js/sap/ushell/components/CatalogsManager.js +157 -157
  113. package/src/main/js/sap/ushell/components/ComponentKeysHandler.js +180 -187
  114. package/src/main/js/sap/ushell/components/DestroyHelper.js +4 -4
  115. package/src/main/js/sap/ushell/components/GroupsHelper.js +21 -21
  116. package/src/main/js/sap/ushell/components/HomepageManager.js +465 -424
  117. package/src/main/js/sap/ushell/components/MessagingHelper.js +24 -24
  118. package/src/main/js/sap/ushell/components/SharedComponentUtils.js +16 -16
  119. package/src/main/js/sap/ushell/components/_HomepageManager/DashboardLoadingManager.js +43 -43
  120. package/src/main/js/sap/ushell/components/_HomepageManager/PagingManager.js +43 -39
  121. package/src/main/js/sap/ushell/components/_HomepageManager/PersistentPageOperationAdapter.js +166 -175
  122. package/src/main/js/sap/ushell/components/_HomepageManager/TransientPageOperationAdapter.js +57 -57
  123. package/src/main/js/sap/ushell/components/appfinder/AppFinder.controller.js +96 -99
  124. package/src/main/js/sap/ushell/components/appfinder/AppFinderView.js +27 -21
  125. package/src/main/js/sap/ushell/components/appfinder/Catalog.controller.js +180 -178
  126. package/src/main/js/sap/ushell/components/appfinder/CatalogView.js +56 -56
  127. package/src/main/js/sap/ushell/components/appfinder/Component.js +12 -16
  128. package/src/main/js/sap/ushell/components/appfinder/EasyAccess.controller.js +129 -133
  129. package/src/main/js/sap/ushell/components/appfinder/EasyAccessView.js +10 -10
  130. package/src/main/js/sap/ushell/components/appfinder/GroupListPopover.controller.js +22 -22
  131. package/src/main/js/sap/ushell/components/appfinder/GroupListPopoverView.js +14 -14
  132. package/src/main/js/sap/ushell/components/appfinder/HierarchyApps.controller.js +75 -78
  133. package/src/main/js/sap/ushell/components/appfinder/HierarchyAppsView.js +24 -27
  134. package/src/main/js/sap/ushell/components/appfinder/HierarchyFolders.controller.js +44 -46
  135. package/src/main/js/sap/ushell/components/appfinder/HierarchyFoldersView.js +22 -22
  136. package/src/main/js/sap/ushell/components/appfinder/VisualizationOrganizerHelper.js +28 -28
  137. package/src/main/js/sap/ushell/components/appfinder/manifest.json +1 -1
  138. package/src/main/js/sap/ushell/components/cards/Card.controller.js +16 -20
  139. package/src/main/js/sap/ushell/components/cards/Configuration.controller.js +35 -37
  140. package/src/main/js/sap/ushell/components/cards/ManifestPropertyHelper.js +32 -34
  141. package/src/main/js/sap/ushell/components/cepsearchresult/app/Main.controller.js +7 -12
  142. package/src/main/js/sap/ushell/components/cepsearchresult/app/Main.view.xml +2 -9
  143. package/src/main/js/sap/ushell/components/cepsearchresult/app/cards/searchresultwidget/Extension.js +0 -1
  144. package/src/main/js/sap/ushell/components/cepsearchresult/app/css/style.css +58 -0
  145. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/AdvancedFormatters.js +0 -1
  146. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/Edition.js +0 -1
  147. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/EditionAdvanced.js +0 -1
  148. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/appendStyleVars.js +0 -1
  149. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/Category.js +13 -13
  150. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/Highlighter.js +2 -5
  151. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/Paginator.js +0 -2
  152. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/categories/Event.js +4 -3
  153. package/src/main/js/sap/ushell/components/contentFinder/CatalogService.js +8 -9
  154. package/src/main/js/sap/ushell/components/contentFinder/Component.js +2 -2
  155. package/src/main/js/sap/ushell/components/contentFinder/controller/AppSearch.controller.js +1 -3
  156. package/src/main/js/sap/ushell/components/contentFinder/controller/ContentFinderDialog.controller.js +1 -1
  157. package/src/main/js/sap/ushell/components/contentFinder/dialog/Component.js +2 -2
  158. package/src/main/js/sap/ushell/components/contentFinder/dialog/manifest.json +1 -1
  159. package/src/main/js/sap/ushell/components/contentFinder/manifest.json +1 -1
  160. package/src/main/js/sap/ushell/components/contentFinder/model/GraphQLListBinding.js +3 -5
  161. package/src/main/js/sap/ushell/components/contentFinder/model/GraphQLModel.js +2 -2
  162. package/src/main/js/sap/ushell/components/contentFinder/model/formatter.js +13 -6
  163. package/src/main/js/sap/ushell/components/contentFinder/resources/resources.properties +3 -3
  164. package/src/main/js/sap/ushell/components/contentFinder/resources/resources_en_US_saprigi.properties +1 -1
  165. package/src/main/js/sap/ushell/components/contentFinder/view/AppSearch.view.xml +2 -14
  166. package/src/main/js/sap/ushell/components/contentFinder/view/AppSearchCategoryTreeTable.fragment.xml +14 -7
  167. package/src/main/js/sap/ushell/components/contentFinder/view/VisualizationsNoDataIllustratedMessage.fragment.xml +1 -1
  168. package/src/main/js/sap/ushell/components/contentFinderStandalone/Component.js +2 -2
  169. package/src/main/js/sap/ushell/components/contentFinderStandalone/controller/ContentFinderStandalone.controller.js +2 -4
  170. package/src/main/js/sap/ushell/components/contentFinderStandalone/manifest.json +1 -1
  171. package/src/main/js/sap/ushell/components/factsheet/Component.js +13 -8
  172. package/src/main/js/sap/ushell/components/factsheet/annotation/Mapping.js +166 -118
  173. package/src/main/js/sap/ushell/components/factsheet/controls/PictureTile.js +20 -16
  174. package/src/main/js/sap/ushell/components/factsheet/controls/PictureTileRenderer.js +3 -3
  175. package/src/main/js/sap/ushell/components/factsheet/controls/PictureViewer.js +84 -77
  176. package/src/main/js/sap/ushell/components/factsheet/controls/PictureViewerItem.js +4 -4
  177. package/src/main/js/sap/ushell/components/factsheet/controls/PictureViewerRenderer.js +2 -2
  178. package/src/main/js/sap/ushell/components/factsheet/factory/ThingInspector.js +1356 -1139
  179. package/src/main/js/sap/ushell/components/factsheet/tools/ODataUrlTemplating.js +9 -5
  180. package/src/main/js/sap/ushell/components/factsheet/views/ThingViewer.controller.js +1 -1
  181. package/src/main/js/sap/ushell/components/factsheet/views/ThingViewer.view.js +9 -6
  182. package/src/main/js/sap/ushell/components/homeApp/error/Component.js +1 -1
  183. package/src/main/js/sap/ushell/components/homeApp/error/HomeAppError.controller.js +4 -4
  184. package/src/main/js/sap/ushell/components/homepage/ActionMode.js +51 -48
  185. package/src/main/js/sap/ushell/components/homepage/Component.js +11 -11
  186. package/src/main/js/sap/ushell/components/homepage/DashboardContent.controller.js +185 -192
  187. package/src/main/js/sap/ushell/components/homepage/DashboardContent.view.js +60 -50
  188. package/src/main/js/sap/ushell/components/homepage/DashboardGroupsBox.js +199 -202
  189. package/src/main/js/sap/ushell/components/homepage/DashboardUIActions.js +152 -160
  190. package/src/main/js/sap/ushell/components/homepage/manifest.json +1 -1
  191. package/src/main/js/sap/ushell/components/pages/ActionMode.js +72 -74
  192. package/src/main/js/sap/ushell/components/pages/Component.js +7 -32
  193. package/src/main/js/sap/ushell/components/pages/MyHomeImport.js +46 -46
  194. package/src/main/js/sap/ushell/components/pages/StateManager.js +9 -10
  195. package/src/main/js/sap/ushell/components/pages/controller/MyHome.controller.js +4 -4
  196. package/src/main/js/sap/ushell/components/pages/controller/PageRuntime.controller.js +243 -215
  197. package/src/main/js/sap/ushell/components/pages/controller/PagesAndSpaceId.js +23 -24
  198. package/src/main/js/sap/ushell/components/pages/manifest.json +1 -1
  199. package/src/main/js/sap/ushell/components/runtimeSwitcher/Component.js +1 -1
  200. package/src/main/js/sap/ushell/components/runtimeSwitcher/controller/RuntimeSwitcher.controller.js +60 -70
  201. package/src/main/js/sap/ushell/components/runtimeSwitcher/manifest.json +1 -1
  202. package/src/main/js/sap/ushell/components/shell/FloatingContainer/Component.js +0 -5
  203. package/src/main/js/sap/ushell/components/shell/FloatingContainer/controls/FloatingContainer.js +3 -3
  204. package/src/main/js/sap/ushell/components/shell/FloatingContainer/manifest.json +1 -1
  205. package/src/main/js/sap/ushell/components/shell/MenuBar/Component.js +18 -50
  206. package/src/main/js/sap/ushell/components/shell/MenuBar/controller/MenuBar.controller.js +73 -83
  207. package/src/main/js/sap/ushell/components/shell/MenuBar/manifest.json +1 -1
  208. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/Component.js +1 -1
  209. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/controller/NavigationBarMenu.controller.js +49 -50
  210. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/controller/NavigationBarMenuButton.controller.js +5 -5
  211. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/manifest.json +1 -1
  212. package/src/main/js/sap/ushell/components/shell/Notifications/Component.js +35 -33
  213. package/src/main/js/sap/ushell/components/shell/Notifications/Notifications.controller.js +8 -9
  214. package/src/main/js/sap/ushell/components/shell/Notifications/NotificationsList.controller.js +5 -11
  215. package/src/main/js/sap/ushell/components/shell/PostLoadingHeaderEnhancement/Component.js +63 -42
  216. package/src/main/js/sap/ushell/components/shell/ProductSwitch/Component.js +20 -22
  217. package/src/main/js/sap/ushell/components/shell/Search/Component.js +20 -12
  218. package/src/main/js/sap/ushell/components/shell/Search/ESearch.js +18 -21
  219. package/src/main/js/sap/ushell/components/shell/Search/manifest.json +1 -1
  220. package/src/main/js/sap/ushell/components/shell/SearchCEP/Component.js +21 -14
  221. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchCEP.controller.js +204 -250
  222. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/FrequentActivityProvider.js +25 -24
  223. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/RecentSearchProvider.js +9 -9
  224. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchProvider.js +4 -4
  225. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchServiceProvider.js +63 -65
  226. package/src/main/js/sap/ushell/components/shell/SearchCEPNew/Component.js +420 -0
  227. package/src/main/js/sap/ushell/components/shell/SearchCEPNew/SearchProviders/FrequentActivityProvider.js +84 -0
  228. package/src/main/js/sap/ushell/components/shell/SearchCEPNew/SearchProviders/RecentSearchProvider.js +63 -0
  229. package/src/main/js/sap/ushell/components/shell/SearchCEPNew/SearchProviders/SearchProvider.js +141 -0
  230. package/src/main/js/sap/ushell/components/shell/SearchCEPNew/SearchProviders/SearchServiceProvider.js +177 -0
  231. package/src/main/js/sap/ushell/components/shell/SearchCEPNew/manifest.json +43 -0
  232. package/src/main/js/sap/ushell/components/shell/SearchCEPNew/resources/resources.properties +17 -0
  233. package/src/main/js/sap/ushell/components/shell/Settings/Component.js +50 -35
  234. package/src/main/js/sap/ushell/components/shell/Settings/ErrorMessageHelper.js +10 -10
  235. package/src/main/js/sap/ushell/components/shell/Settings/UserSettings.controller.js +150 -150
  236. package/src/main/js/sap/ushell/components/shell/Settings/appearance/Appearance.controller.js +66 -63
  237. package/src/main/js/sap/ushell/components/shell/Settings/appearance/AppearanceEntry.js +12 -15
  238. package/src/main/js/sap/ushell/components/shell/Settings/homepage/HomepageEntry.js +34 -37
  239. package/src/main/js/sap/ushell/components/shell/Settings/notifications/NotificationsEntry.js +6 -7
  240. package/src/main/js/sap/ushell/components/shell/Settings/notifications/NotificationsSetting.controller.js +46 -48
  241. package/src/main/js/sap/ushell/components/shell/Settings/search/Search.controller.js +4 -4
  242. package/src/main/js/sap/ushell/components/shell/Settings/search/SearchEntry.js +13 -13
  243. package/src/main/js/sap/ushell/components/shell/Settings/spaces/SpacesEntry.js +11 -13
  244. package/src/main/js/sap/ushell/components/shell/Settings/spaces/SpacesSetting.controller.js +41 -42
  245. package/src/main/js/sap/ushell/components/shell/Settings/userAccount/UserAccountEntry.js +11 -15
  246. package/src/main/js/sap/ushell/components/shell/Settings/userAccount/UserAccountSelector.controller.js +35 -37
  247. package/src/main/js/sap/ushell/components/shell/Settings/userActivities/UserActivitiesEntry.js +6 -7
  248. package/src/main/js/sap/ushell/components/shell/Settings/userActivities/UserActivitiesSetting.controller.js +7 -8
  249. package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/Component.js +2 -2
  250. package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/UserDefaultsEntry.js +16 -16
  251. package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/UserDefaultsForm.js +17 -17
  252. package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/controller/ExtendedValueDialog.controller.js +21 -24
  253. package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/controller/UserDefaultsSetting.controller.js +136 -137
  254. package/src/main/js/sap/ushell/components/shell/Settings/userLanguageRegion/LanguageRegionSelector.controller.js +73 -78
  255. package/src/main/js/sap/ushell/components/shell/Settings/userLanguageRegion/UserLanguageRegionEntry.js +8 -8
  256. package/src/main/js/sap/ushell/components/shell/ShellBar/Component.js +69 -24
  257. package/src/main/js/sap/ushell/components/shell/ShellBar/controller/ShellBar.controller.js +42 -22
  258. package/src/main/js/sap/ushell/components/shell/ShellBar/manifest.json +1 -1
  259. package/src/main/js/sap/ushell/components/shell/ShellBar/view/ShellBar.view.xml +24 -10
  260. package/src/main/js/sap/ushell/components/shell/SideNavigation/Component.js +7 -11
  261. package/src/main/js/sap/ushell/components/shell/SideNavigation/controller/SideNavigation.controller.js +3 -3
  262. package/src/main/js/sap/ushell/components/shell/SideNavigation/manifest.json +1 -1
  263. package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/AllSpaces.js +3 -4
  264. package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/AppFinder.js +2 -2
  265. package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/Favorites.js +14 -4
  266. package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/GenericFixedNavigationListProvider.js +2 -2
  267. package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/GenericNavigationListProvider.js +2 -2
  268. package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/MyHome.js +2 -2
  269. package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/NavigationHelper.js +4 -4
  270. package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/RecentActivity.js +4 -4
  271. package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/Spaces.js +5 -6
  272. package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/SpacesNavigationListProvider.js +2 -3
  273. package/src/main/js/sap/ushell/components/shell/UserActionsMenu/Component.js +3 -4
  274. package/src/main/js/sap/ushell/components/shell/UserActionsMenu/UserActionsMenu.controller.js +47 -48
  275. package/src/main/js/sap/ushell/components/shell/UserImage/Component.js +27 -30
  276. package/src/main/js/sap/ushell/components/tiles/action/ActionTile.controller.js +55 -55
  277. package/src/main/js/sap/ushell/components/tiles/action/Configuration.controller.js +39 -41
  278. package/src/main/js/sap/ushell/components/tiles/applauncher/Component.js +3 -3
  279. package/src/main/js/sap/ushell/components/tiles/applauncher/Configuration.controller.js +26 -27
  280. package/src/main/js/sap/ushell/components/tiles/applauncher/StaticTile.controller.js +66 -66
  281. package/src/main/js/sap/ushell/components/tiles/applauncher/StaticTile.view.js +5 -5
  282. package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/Component.js +2 -2
  283. package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/Configuration.controller.js +27 -27
  284. package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/DynamicTile.controller.js +107 -107
  285. package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/DynamicTile.view.js +7 -7
  286. package/src/main/js/sap/ushell/components/tiles/cdm/applauncher/Component.js +7 -7
  287. package/src/main/js/sap/ushell/components/tiles/cdm/applauncher/StaticTile.controller.js +31 -31
  288. package/src/main/js/sap/ushell/components/tiles/cdm/applauncher/StaticTile.view.js +2 -2
  289. package/src/main/js/sap/ushell/components/tiles/cdm/applauncherdynamic/Component.js +15 -15
  290. package/src/main/js/sap/ushell/components/tiles/cdm/applauncherdynamic/DynamicTile.controller.js +85 -86
  291. package/src/main/js/sap/ushell/components/tiles/cdm/applauncherdynamic/DynamicTile.view.js +4 -4
  292. package/src/main/js/sap/ushell/components/tiles/generic.js +133 -131
  293. package/src/main/js/sap/ushell/components/tiles/indicatorArea/AreaChartTile.controller.js +71 -71
  294. package/src/main/js/sap/ushell/components/tiles/indicatorArea/AreaChartTile.view.js +17 -17
  295. package/src/main/js/sap/ushell/components/tiles/indicatorDual/DualTile.controller.js +49 -49
  296. package/src/main/js/sap/ushell/components/tiles/indicatorDual/DualTile.view.js +9 -9
  297. package/src/main/js/sap/ushell/components/tiles/indicatorDualComparison/DualComparison.controller.js +80 -80
  298. package/src/main/js/sap/ushell/components/tiles/indicatorDualComparison/DualComparison.view.js +3 -3
  299. package/src/main/js/sap/ushell/components/tiles/indicatorDualContribution/DualContribution.controller.js +74 -75
  300. package/src/main/js/sap/ushell/components/tiles/indicatorDualContribution/DualContribution.view.js +3 -3
  301. package/src/main/js/sap/ushell/components/tiles/indicatorDualDeviation/DualDeviation.controller.js +55 -55
  302. package/src/main/js/sap/ushell/components/tiles/indicatorDualDeviation/DualDeviation.view.js +12 -12
  303. package/src/main/js/sap/ushell/components/tiles/indicatorDualTrend/DualTrend.controller.js +83 -84
  304. package/src/main/js/sap/ushell/components/tiles/indicatorDualTrend/DualTrend.view.js +15 -15
  305. package/src/main/js/sap/ushell/components/tiles/indicatorHarveyBall/HarveyBallTile.controller.js +71 -71
  306. package/src/main/js/sap/ushell/components/tiles/indicatorHarveyBall/HarveyBallTile.view.js +7 -7
  307. package/src/main/js/sap/ushell/components/tiles/indicatorTileUtils/cache.js +4 -4
  308. package/src/main/js/sap/ushell/components/tiles/indicatorTileUtils/indicatorTileHelper.js +4 -4
  309. package/src/main/js/sap/ushell/components/tiles/indicatorTileUtils/oData4Analytics.js +230 -232
  310. package/src/main/js/sap/ushell/components/tiles/indicatorTileUtils/smartBusinessUtil.js +271 -272
  311. package/src/main/js/sap/ushell/components/tiles/indicatorcomparison/ComparisonTile.controller.js +55 -55
  312. package/src/main/js/sap/ushell/components/tiles/indicatorcomparison/ComparisonTile.view.js +4 -4
  313. package/src/main/js/sap/ushell/components/tiles/indicatorcontribution/ContributionTile.controller.js +53 -53
  314. package/src/main/js/sap/ushell/components/tiles/indicatorcontribution/ContributionTile.view.js +5 -5
  315. package/src/main/js/sap/ushell/components/tiles/indicatordeviation/DeviationTile.controller.js +20 -20
  316. package/src/main/js/sap/ushell/components/tiles/indicatordeviation/DeviationTile.view.js +11 -11
  317. package/src/main/js/sap/ushell/components/tiles/indicatornumeric/NumericTile.controller.js +14 -15
  318. package/src/main/js/sap/ushell/components/tiles/indicatornumeric/NumericTile.view.js +10 -10
  319. package/src/main/js/sap/ushell/components/tiles/sbtilecontent.js +6 -6
  320. package/src/main/js/sap/ushell/components/tiles/utils.js +699 -664
  321. package/src/main/js/sap/ushell/components/visualizationOrganizer/Component.js +217 -217
  322. package/src/main/js/sap/ushell/components/workPageBuilder/Component.js +4 -8
  323. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.accessibility.js +40 -42
  324. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.controller.js +257 -262
  325. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.layout.js +19 -20
  326. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPage.js +6 -6
  327. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageButton.js +37 -38
  328. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageCell.js +97 -100
  329. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumn.js +81 -82
  330. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumnRenderer.js +9 -9
  331. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumnResizer.js +38 -39
  332. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRenderer.js +5 -5
  333. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRow.js +8 -9
  334. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRowRenderer.js +9 -9
  335. package/src/main/js/sap/ushell/components/workPageBuilder/manifest.json +1 -1
  336. package/src/main/js/sap/ushell/components/workPageRuntime/Component.js +4 -4
  337. package/src/main/js/sap/ushell/components/workPageRuntime/controller/WorkPageRuntime.controller.js +15 -15
  338. package/src/main/js/sap/ushell/components/workPageRuntime/manifest.json +1 -1
  339. package/src/main/js/sap/ushell/designtime/ApplicationContainer.designtime.js +1 -1
  340. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/Avatar.js +111 -107
  341. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/Button.js +215 -137
  342. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/Label.js +68 -70
  343. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/ListItem.js +81 -80
  344. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/ListItemBase.js +40 -39
  345. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/ListItemGroup.js +152 -0
  346. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/Menu.js +178 -120
  347. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/MenuItem.js +186 -146
  348. package/src/main/js/sap/ushell/gen/ui5/webcomponents-base.js +517 -360
  349. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/NotificationList.js +128 -79
  350. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/NotificationListGroupItem.js +76 -75
  351. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/NotificationListItem.js +119 -99
  352. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/NotificationListItemBase.js +48 -46
  353. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/Search.js +162 -0
  354. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/SearchItem.js +74 -0
  355. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/SearchItemGroup.js +35 -0
  356. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/SearchMessageArea.js +52 -0
  357. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/SearchScope.js +54 -0
  358. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/ShellBar.js +373 -209
  359. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/ShellBarBranding.js +77 -0
  360. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/ShellBarItem.js +81 -64
  361. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/ShellBarSearch.js +156 -0
  362. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/ShellBarSpacer.js +42 -41
  363. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/UserMenu.js +190 -137
  364. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/UserMenuAccount.js +76 -75
  365. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/UserMenuItem.js +35 -34
  366. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori.js +1706 -1307
  367. package/src/main/js/sap/ushell/gen/ui5/webcomponents.js +3011 -2372
  368. package/src/main/js/sap/ushell/library.js +1 -1
  369. package/src/main/js/sap/ushell/navigation/NavigationState.js +126 -0
  370. package/src/main/js/sap/ushell/navigationMode.js +1 -1
  371. package/src/main/js/sap/ushell/performance/ShellAnalytics.js +1 -1
  372. package/src/main/js/sap/ushell/performance/StatisticalRecord.js +1 -1
  373. package/src/main/js/sap/ushell/plugins/appwarmup/Component.js +1 -1
  374. package/src/main/js/sap/ushell/renderer/AccessKeysHandler.js +25 -17
  375. package/src/main/js/sap/ushell/renderer/NavContainer.js +6 -0
  376. package/src/main/js/sap/ushell/renderer/Renderer.js +19 -7
  377. package/src/main/js/sap/ushell/renderer/Shell.controller.js +10 -21
  378. package/src/main/js/sap/ushell/renderer/Shell.view.js +4 -1
  379. package/src/main/js/sap/ushell/renderer/resources/resources_ar.properties +2 -0
  380. package/src/main/js/sap/ushell/renderer/resources/resources_bg.properties +2 -0
  381. package/src/main/js/sap/ushell/renderer/resources/resources_ca.properties +2 -0
  382. package/src/main/js/sap/ushell/renderer/resources/resources_cnr.properties +2 -0
  383. package/src/main/js/sap/ushell/renderer/resources/resources_cs.properties +2 -0
  384. package/src/main/js/sap/ushell/renderer/resources/resources_cy.properties +2 -0
  385. package/src/main/js/sap/ushell/renderer/resources/resources_da.properties +2 -0
  386. package/src/main/js/sap/ushell/renderer/resources/resources_de.properties +2 -0
  387. package/src/main/js/sap/ushell/renderer/resources/resources_el.properties +2 -0
  388. package/src/main/js/sap/ushell/renderer/resources/resources_en.properties +2 -0
  389. package/src/main/js/sap/ushell/renderer/resources/resources_en_GB.properties +2 -0
  390. package/src/main/js/sap/ushell/renderer/resources/resources_en_US_saprigi.properties +2 -0
  391. package/src/main/js/sap/ushell/renderer/resources/resources_es.properties +2 -0
  392. package/src/main/js/sap/ushell/renderer/resources/resources_es_MX.properties +2 -0
  393. package/src/main/js/sap/ushell/renderer/resources/resources_et.properties +2 -0
  394. package/src/main/js/sap/ushell/renderer/resources/resources_fi.properties +2 -0
  395. package/src/main/js/sap/ushell/renderer/resources/resources_fr.properties +2 -0
  396. package/src/main/js/sap/ushell/renderer/resources/resources_fr_CA.properties +2 -0
  397. package/src/main/js/sap/ushell/renderer/resources/resources_hi.properties +2 -0
  398. package/src/main/js/sap/ushell/renderer/resources/resources_hr.properties +2 -0
  399. package/src/main/js/sap/ushell/renderer/resources/resources_hu.properties +3 -1
  400. package/src/main/js/sap/ushell/renderer/resources/resources_id.properties +2 -0
  401. package/src/main/js/sap/ushell/renderer/resources/resources_it.properties +2 -0
  402. package/src/main/js/sap/ushell/renderer/resources/resources_iw.properties +2 -0
  403. package/src/main/js/sap/ushell/renderer/resources/resources_ja.properties +2 -0
  404. package/src/main/js/sap/ushell/renderer/resources/resources_kk.properties +2 -0
  405. package/src/main/js/sap/ushell/renderer/resources/resources_ko.properties +2 -0
  406. package/src/main/js/sap/ushell/renderer/resources/resources_lt.properties +2 -0
  407. package/src/main/js/sap/ushell/renderer/resources/resources_lv.properties +2 -0
  408. package/src/main/js/sap/ushell/renderer/resources/resources_mk.properties +2 -0
  409. package/src/main/js/sap/ushell/renderer/resources/resources_ms.properties +2 -0
  410. package/src/main/js/sap/ushell/renderer/resources/resources_nl.properties +2 -0
  411. package/src/main/js/sap/ushell/renderer/resources/resources_no.properties +2 -0
  412. package/src/main/js/sap/ushell/renderer/resources/resources_pl.properties +2 -0
  413. package/src/main/js/sap/ushell/renderer/resources/resources_pt.properties +2 -0
  414. package/src/main/js/sap/ushell/renderer/resources/resources_pt_PT.properties +2 -0
  415. package/src/main/js/sap/ushell/renderer/resources/resources_ro.properties +2 -0
  416. package/src/main/js/sap/ushell/renderer/resources/resources_ru.properties +2 -0
  417. package/src/main/js/sap/ushell/renderer/resources/resources_sh.properties +2 -0
  418. package/src/main/js/sap/ushell/renderer/resources/resources_sk.properties +2 -0
  419. package/src/main/js/sap/ushell/renderer/resources/resources_sl.properties +3 -1
  420. package/src/main/js/sap/ushell/renderer/resources/resources_sr.properties +2 -0
  421. package/src/main/js/sap/ushell/renderer/resources/resources_sv.properties +2 -0
  422. package/src/main/js/sap/ushell/renderer/resources/resources_th.properties +2 -0
  423. package/src/main/js/sap/ushell/renderer/resources/resources_tr.properties +2 -0
  424. package/src/main/js/sap/ushell/renderer/resources/resources_uk.properties +2 -0
  425. package/src/main/js/sap/ushell/renderer/resources/resources_vi.properties +3 -1
  426. package/src/main/js/sap/ushell/renderer/resources/resources_zh_CN.properties +2 -0
  427. package/src/main/js/sap/ushell/renderer/resources/resources_zh_TW.properties +2 -0
  428. package/src/main/js/sap/ushell/renderer/search/searchComponent/manifest.json +1 -1
  429. package/src/main/js/sap/ushell/services/AllMyApps.js +5 -5
  430. package/src/main/js/sap/ushell/services/AppConfiguration.js +3 -5
  431. package/src/main/js/sap/ushell/services/AppLifeCycle.js +27 -4
  432. package/src/main/js/sap/ushell/services/AppState.js +86 -102
  433. package/src/main/js/sap/ushell/services/AppType.js +2 -2
  434. package/src/main/js/sap/ushell/services/Bookmark.js +156 -164
  435. package/src/main/js/sap/ushell/services/BookmarkV2.js +10 -13
  436. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/Formatter.js +1 -1
  437. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/InboundIndex.js +1 -1
  438. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/InboundProvider.js +1 -1
  439. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/PrelaunchOperations.js +1 -1
  440. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/Search.js +1 -1
  441. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/StagedLogger.js +1 -1
  442. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/SystemContext.js +1 -1
  443. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/Utils.js +1 -1
  444. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/VirtualInbounds.js +1 -1
  445. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/XAppStateProcessing.js +1 -1
  446. package/src/main/js/sap/ushell/services/ClientSideTargetResolution.js +27 -31
  447. package/src/main/js/sap/ushell/services/CommonDataModel/SiteConverter.js +1 -1
  448. package/src/main/js/sap/ushell/services/CommonDataModel/vizTypeDefaults/VizTypeDefaults.js +1 -1
  449. package/src/main/js/sap/ushell/services/CommonDataModel.js +295 -353
  450. package/src/main/js/sap/ushell/services/Configuration.js +14 -12
  451. package/src/main/js/sap/ushell/services/ConfigurationDefaults.js +34 -35
  452. package/src/main/js/sap/ushell/services/Container.js +2 -2
  453. package/src/main/js/sap/ushell/services/ContentExtensionAdapterFactory.js +29 -62
  454. package/src/main/js/sap/ushell/services/CrossApplicationNavigation.js +227 -266
  455. package/src/main/js/sap/ushell/services/DarkModeSupport.js +17 -16
  456. package/src/main/js/sap/ushell/services/EndUserFeedback.js +5 -4
  457. package/src/main/js/sap/ushell/services/Extension/Item.js +7 -12
  458. package/src/main/js/sap/ushell/services/Extension.js +54 -19
  459. package/src/main/js/sap/ushell/services/FlpLaunchPage.js +209 -213
  460. package/src/main/js/sap/ushell/services/FrameBoundExtension/FloatingContainer.js +3 -3
  461. package/src/main/js/sap/ushell/services/FrameBoundExtension/Footer.js +3 -3
  462. package/src/main/js/sap/ushell/services/FrameBoundExtension/Item.js +6 -6
  463. package/src/main/js/sap/ushell/services/FrameBoundExtension/SidePane.js +1 -1
  464. package/src/main/js/sap/ushell/services/FrameBoundExtension/ToolArea.js +1 -1
  465. package/src/main/js/sap/ushell/services/FrameBoundExtension/UserSettingsEntry.js +4 -4
  466. package/src/main/js/sap/ushell/services/FrameBoundExtension.js +3 -3
  467. package/src/main/js/sap/ushell/services/LaunchPage.js +1 -2
  468. package/src/main/js/sap/ushell/services/Menu.js +264 -289
  469. package/src/main/js/sap/ushell/services/Message.js +3 -3
  470. package/src/main/js/sap/ushell/services/MessageBroker/MessageBrokerEngine.js +6 -29
  471. package/src/main/js/sap/ushell/services/MessageBroker.js +14 -10
  472. package/src/main/js/sap/ushell/services/MessageInternal.js +37 -38
  473. package/src/main/js/sap/ushell/services/NavTargetResolution.js +2 -5
  474. package/src/main/js/sap/ushell/services/NavTargetResolutionInternal.js +153 -157
  475. package/src/main/js/sap/ushell/services/Navigation/compatibility.js +4 -6
  476. package/src/main/js/sap/ushell/services/Navigation/utils.js +62 -64
  477. package/src/main/js/sap/ushell/services/Navigation.js +10 -14
  478. package/src/main/js/sap/ushell/services/NavigationDataProvider.js +2 -2
  479. package/src/main/js/sap/ushell/services/Notifications.js +29 -15
  480. package/src/main/js/sap/ushell/services/NotificationsV2.js +86 -98
  481. package/src/main/js/sap/ushell/services/PageBuilding.js +9 -6
  482. package/src/main/js/sap/ushell/services/PagePersistence.js +3 -3
  483. package/src/main/js/sap/ushell/services/PageReferencing.js +4 -2
  484. package/src/main/js/sap/ushell/services/Pages.js +635 -683
  485. package/src/main/js/sap/ushell/services/Personalization.js +103 -134
  486. package/src/main/js/sap/ushell/services/PersonalizationV2/ContextContainer.js +29 -32
  487. package/src/main/js/sap/ushell/services/PersonalizationV2/Personalizer.js +21 -6
  488. package/src/main/js/sap/ushell/services/PersonalizationV2/TransientPersonalizer.js +1 -2
  489. package/src/main/js/sap/ushell/services/PersonalizationV2/Variant.js +5 -1
  490. package/src/main/js/sap/ushell/services/PersonalizationV2/VariantSet.js +5 -8
  491. package/src/main/js/sap/ushell/services/PersonalizationV2/VariantSetAdapter.js +2 -2
  492. package/src/main/js/sap/ushell/services/PersonalizationV2/WindowAdapter.js +10 -11
  493. package/src/main/js/sap/ushell/services/PersonalizationV2/WindowAdapterContainer.js +27 -27
  494. package/src/main/js/sap/ushell/services/PersonalizationV2/constants.js +1 -2
  495. package/src/main/js/sap/ushell/services/PersonalizationV2/constants.private.js +1 -1
  496. package/src/main/js/sap/ushell/services/PersonalizationV2/utils.js +5 -5
  497. package/src/main/js/sap/ushell/services/PersonalizationV2.js +92 -105
  498. package/src/main/js/sap/ushell/services/PluginManager/Extensions.js +9 -9
  499. package/src/main/js/sap/ushell/services/PluginManager/HeaderExtensions.js +2 -2
  500. package/src/main/js/sap/ushell/services/PluginManager/MenuExtensions.js +4 -4
  501. package/src/main/js/sap/ushell/services/PluginManager/SimpleExpression.js +5 -8
  502. package/src/main/js/sap/ushell/services/PluginManager.js +12 -8
  503. package/src/main/js/sap/ushell/services/ReferenceResolver.js +21 -28
  504. package/src/main/js/sap/ushell/services/Search.js +25 -21
  505. package/src/main/js/sap/ushell/services/SearchCEP.js +38 -32
  506. package/src/main/js/sap/ushell/services/SearchableContent.js +203 -223
  507. package/src/main/js/sap/ushell/services/ShellNavigation.js +5 -3
  508. package/src/main/js/sap/ushell/services/ShellNavigationHashChanger.js +160 -164
  509. package/src/main/js/sap/ushell/services/ShellNavigationInternal.js +23 -19
  510. package/src/main/js/sap/ushell/services/SmartNavigation.js +86 -82
  511. package/src/main/js/sap/ushell/services/SpaceContent.js +73 -106
  512. package/src/main/js/sap/ushell/services/SupportTicket.js +1 -1
  513. package/src/main/js/sap/ushell/services/UITracer.js +48 -62
  514. package/src/main/js/sap/ushell/services/URLShortening.js +2 -2
  515. package/src/main/js/sap/ushell/services/URLTemplate.js +7 -8
  516. package/src/main/js/sap/ushell/services/Ui5ComponentHandle.js +5 -5
  517. package/src/main/js/sap/ushell/services/Ui5ComponentLoader.js +1 -1
  518. package/src/main/js/sap/ushell/services/UsageAnalytics.js +2 -3
  519. package/src/main/js/sap/ushell/services/UserDefaultParameterPersistence.js +10 -10
  520. package/src/main/js/sap/ushell/services/UserDefaultParameters.js +12 -13
  521. package/src/main/js/sap/ushell/services/UserInfo.js +27 -15
  522. package/src/main/js/sap/ushell/services/UserRecents/RecentActivity.js +6 -7
  523. package/src/main/js/sap/ushell/services/UserRecents/RecentAppsUsage.js +5 -5
  524. package/src/main/js/sap/ushell/services/UserRecents/RecentsList.js +2 -2
  525. package/src/main/js/sap/ushell/services/UserRecents/UserRecentsBase.js +2 -2
  526. package/src/main/js/sap/ushell/services/UserRecents.js +3 -3
  527. package/src/main/js/sap/ushell/services/VisualizationDataProvider.js +63 -66
  528. package/src/main/js/sap/ushell/services/VisualizationInstantiation.js +11 -11
  529. package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/ContentExtensionAdapterConfig.js +1 -1
  530. package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/FeaturedGroupConfig.js +1 -1
  531. package/src/main/js/sap/ushell/services/_CrossApplicationNavigation/utils.js +1 -1
  532. package/src/main/js/sap/ushell/services/_PageReferencing/PageReferencer.js +1 -1
  533. package/src/main/js/sap/ushell/services/personalization/VariantSetAdapter.js +10 -10
  534. package/src/main/js/sap/ushell/state/BaseState.js +2 -3
  535. package/src/main/js/sap/ushell/state/BindingHelper.js +2 -4
  536. package/src/main/js/sap/ushell/state/ControlManager.js +2 -3
  537. package/src/main/js/sap/ushell/state/CurrentState.js +2 -2
  538. package/src/main/js/sap/ushell/state/KeepAlive.js +2 -2
  539. package/src/main/js/sap/ushell/state/ShellModel.js +2 -3
  540. package/src/main/js/sap/ushell/state/StateManager/LaunchpadState.js +2 -2
  541. package/src/main/js/sap/ushell/state/StateManager/Operation.js +2 -2
  542. package/src/main/js/sap/ushell/state/StateManager/ShellMode.js +2 -2
  543. package/src/main/js/sap/ushell/state/StateManager.js +3 -3
  544. package/src/main/js/sap/ushell/state/StateRules.js +2 -3
  545. package/src/main/js/sap/ushell/state/StrategyFactory/DefaultStrategy.js +2 -3
  546. package/src/main/js/sap/ushell/state/StrategyFactory/FloatingActionsStrategy.js +2 -3
  547. package/src/main/js/sap/ushell/state/StrategyFactory/FloatingContainerStrategy.js +2 -3
  548. package/src/main/js/sap/ushell/state/StrategyFactory/HeadEndItemsStrategy.js +10 -4
  549. package/src/main/js/sap/ushell/state/StrategyFactory/HeadItemsStrategy.js +3 -4
  550. package/src/main/js/sap/ushell/state/StrategyFactory/SidePaneStrategy.js +2 -3
  551. package/src/main/js/sap/ushell/state/StrategyFactory/SubHeaderStrategy.js +2 -3
  552. package/src/main/js/sap/ushell/state/StrategyFactory/UserActionsStrategy.js +3 -4
  553. package/src/main/js/sap/ushell/state/StrategyFactory.js +2 -3
  554. package/src/main/js/sap/ushell/state/modules/BackNavigation.js +2 -5
  555. package/src/main/js/sap/ushell/state/modules/ContentDensity.js +3 -3
  556. package/src/main/js/sap/ushell/state/modules/Favicon.js +3 -3
  557. package/src/main/js/sap/ushell/state/modules/HeaderLogo.js +3 -3
  558. package/src/main/js/sap/ushell/support/plugins/flpConfig/FlpConfigurationPlugin.js +123 -123
  559. package/src/main/js/sap/ushell/themes/base/ShellBar.less +2 -1
  560. package/src/main/js/sap/ushell/themes/base/ShellHeader.less +1 -1
  561. package/src/main/js/sap/ushell/themes/base/ToolAreaItem.less +2 -1
  562. package/src/main/js/sap/ushell/themes/sap_fiori_3/ShellBar.less +9 -0
  563. package/src/main/js/sap/ushell/themes/sap_fiori_3/ShellHeader.less +6 -0
  564. package/src/main/js/sap/ushell/themes/sap_fiori_3/library.source.less +1 -0
  565. package/src/main/js/sap/ushell/themes/sap_fiori_3_dark/ShellBar.less +9 -0
  566. package/src/main/js/sap/ushell/themes/sap_fiori_3_dark/library.source.less +1 -0
  567. package/src/main/js/sap/ushell/themes/sap_fiori_3_hcb/ShellBar.less +9 -0
  568. package/src/main/js/sap/ushell/themes/sap_fiori_3_hcb/library.source.less +1 -0
  569. package/src/main/js/sap/ushell/themes/sap_fiori_3_hcw/ShellBar.less +9 -0
  570. package/src/main/js/sap/ushell/themes/sap_fiori_3_hcw/library.source.less +1 -0
  571. package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellHeader.less +1 -1
  572. package/src/main/js/sap/ushell/thirdparty/Avatar.js +86 -19
  573. package/src/main/js/sap/ushell/thirdparty/BusyIndicator.js +23 -245
  574. package/src/main/js/sap/ushell/thirdparty/Button.js +1 -1
  575. package/src/main/js/sap/ushell/thirdparty/Button2.js +100 -28
  576. package/src/main/js/sap/ushell/thirdparty/FocusableElements.js +10 -0
  577. package/src/main/js/sap/ushell/thirdparty/Icon.js +37 -20
  578. package/src/main/js/sap/ushell/thirdparty/Icons.js +151 -111
  579. package/src/main/js/sap/ushell/thirdparty/Label.js +6 -6
  580. package/src/main/js/sap/ushell/thirdparty/Link.js +14 -13
  581. package/src/main/js/sap/ushell/thirdparty/List.js +76 -549
  582. package/src/main/js/sap/ushell/thirdparty/ListBoxItemGroupTemplate.js +14 -0
  583. package/src/main/js/sap/ushell/thirdparty/ListItemAdditionalText.css.js +10 -0
  584. package/src/main/js/sap/ushell/thirdparty/ListItemBase.js +251 -0
  585. package/src/main/js/sap/ushell/thirdparty/ListItemCustom.js +1685 -91
  586. package/src/main/js/sap/ushell/thirdparty/ListItemGroup.js +637 -0
  587. package/src/main/js/sap/ushell/thirdparty/Menu.js +78 -90
  588. package/src/main/js/sap/ushell/thirdparty/MenuItem.js +1 -1
  589. package/src/main/js/sap/ushell/thirdparty/MenuItem2.js +391 -49
  590. package/src/main/js/sap/ushell/thirdparty/NotificationList.js +10 -10
  591. package/src/main/js/sap/ushell/thirdparty/NotificationListGroupItem.js +21 -21
  592. package/src/main/js/sap/ushell/thirdparty/NotificationListItem.js +520 -517
  593. package/src/main/js/sap/ushell/thirdparty/NotificationListItemBase.js +6 -6
  594. package/src/main/js/sap/ushell/thirdparty/ResponsivePopover.js +2306 -0
  595. package/src/main/js/sap/ushell/thirdparty/SearchItem.js +128 -0
  596. package/src/main/js/sap/ushell/thirdparty/SearchItemGroup.js +44 -0
  597. package/src/main/js/sap/ushell/thirdparty/SearchMessageArea.js +49 -0
  598. package/src/main/js/sap/ushell/thirdparty/SearchScope.js +39 -0
  599. package/src/main/js/sap/ushell/thirdparty/ShellBar.js +226 -185
  600. package/src/main/js/sap/ushell/thirdparty/ShellBarBranding.js +119 -0
  601. package/src/main/js/sap/ushell/thirdparty/ShellBarSearch.js +7 -0
  602. package/src/main/js/sap/ushell/thirdparty/ShellBarSearch2.js +3380 -0
  603. package/src/main/js/sap/ushell/thirdparty/Tag.js +16 -15
  604. package/src/main/js/sap/ushell/thirdparty/Text.js +10 -10
  605. package/src/main/js/sap/ushell/thirdparty/Title.js +167 -0
  606. package/src/main/js/sap/ushell/thirdparty/UserMenu.js +60 -59
  607. package/src/main/js/sap/ushell/thirdparty/UserMenuItem.js +5 -5
  608. package/src/main/js/sap/ushell/thirdparty/ValueState.js +7 -0
  609. package/src/main/js/sap/ushell/thirdparty/WrappingType.js +24 -0
  610. package/src/main/js/sap/ushell/thirdparty/_dynamics/InputSuggestions.js +397 -0
  611. package/src/main/js/sap/ushell/thirdparty/_dynamics/ListItemStandardExpandableTextTemplate.js +8 -8
  612. package/src/main/js/sap/ushell/thirdparty/_dynamics/SAP-icons-TNT.js +202 -178
  613. package/src/main/js/sap/ushell/thirdparty/_dynamics/SAP-icons-TNT2.js +145 -121
  614. package/src/main/js/sap/ushell/thirdparty/_dynamics/SAP-icons.js +2 -1
  615. package/src/main/js/sap/ushell/thirdparty/_dynamics/SAP-icons2.js +2 -1
  616. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ar2.js +183 -18
  617. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ar3.js +32 -8
  618. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_bg2.js +184 -19
  619. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_bg3.js +32 -8
  620. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ca2.js +185 -20
  621. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ca3.js +33 -9
  622. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cnr2.js +182 -17
  623. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cnr3.js +31 -7
  624. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cs2.js +182 -17
  625. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cs3.js +31 -7
  626. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cy2.js +182 -17
  627. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cy3.js +32 -8
  628. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_da2.js +182 -17
  629. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_da3.js +31 -7
  630. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_de2.js +182 -17
  631. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_de3.js +32 -8
  632. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_el2.js +182 -17
  633. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_el3.js +31 -7
  634. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en.js +3 -174
  635. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en2.js +174 -672
  636. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en3.js +837 -564
  637. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en4.js +602 -0
  638. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_GB2.js +182 -17
  639. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_GB3.js +32 -8
  640. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_sappsd.js +3 -174
  641. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_sappsd2.js +174 -672
  642. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_sappsd3.js +837 -564
  643. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_sappsd4.js +596 -0
  644. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saprigi.js +3 -174
  645. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saprigi2.js +174 -672
  646. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saprigi3.js +837 -567
  647. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saprigi4.js +602 -0
  648. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saptrc.js +3 -174
  649. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saptrc2.js +174 -672
  650. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saptrc3.js +837 -564
  651. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saptrc4.js +596 -0
  652. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_es2.js +185 -20
  653. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_es3.js +33 -9
  654. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_es_MX2.js +185 -20
  655. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_es_MX3.js +34 -10
  656. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_et2.js +182 -17
  657. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_et3.js +31 -7
  658. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fi2.js +182 -17
  659. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fi3.js +31 -7
  660. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fr2.js +182 -17
  661. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fr3.js +32 -8
  662. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fr_CA2.js +182 -17
  663. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fr_CA3.js +31 -7
  664. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hi2.js +182 -17
  665. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hi3.js +31 -7
  666. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hr2.js +183 -18
  667. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hr3.js +31 -7
  668. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hu2.js +182 -17
  669. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hu3.js +31 -7
  670. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_id2.js +184 -19
  671. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_id3.js +33 -9
  672. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_it2.js +186 -21
  673. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_it3.js +35 -11
  674. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_iw2.js +182 -17
  675. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_iw3.js +33 -9
  676. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ja2.js +182 -17
  677. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ja3.js +32 -8
  678. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_kk2.js +183 -18
  679. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_kk3.js +32 -8
  680. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ko2.js +182 -17
  681. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ko3.js +31 -7
  682. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_lt2.js +182 -17
  683. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_lt3.js +31 -7
  684. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_lv2.js +184 -19
  685. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_lv3.js +33 -9
  686. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_mk2.js +183 -18
  687. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_mk3.js +31 -7
  688. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ms2.js +183 -18
  689. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ms3.js +33 -9
  690. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_nl2.js +182 -17
  691. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_nl3.js +31 -7
  692. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_no2.js +182 -17
  693. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_no3.js +32 -8
  694. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pl2.js +182 -17
  695. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pl3.js +32 -8
  696. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pt2.js +182 -17
  697. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pt3.js +31 -7
  698. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pt_PT2.js +182 -17
  699. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pt_PT3.js +32 -8
  700. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ro2.js +182 -17
  701. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ro3.js +31 -7
  702. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ru2.js +183 -18
  703. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ru3.js +31 -7
  704. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sh2.js +182 -17
  705. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sh3.js +31 -7
  706. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sk2.js +182 -17
  707. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sk3.js +31 -7
  708. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sl2.js +185 -20
  709. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sl3.js +32 -8
  710. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sr2.js +182 -17
  711. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sr3.js +31 -7
  712. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sv2.js +182 -17
  713. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sv3.js +32 -8
  714. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_th2.js +182 -17
  715. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_th3.js +31 -7
  716. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_tr2.js +182 -17
  717. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_tr3.js +31 -7
  718. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_uk2.js +183 -18
  719. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_uk3.js +31 -7
  720. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_vi2.js +182 -17
  721. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_vi3.js +32 -8
  722. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_zh_CN2.js +182 -17
  723. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_zh_CN3.js +32 -8
  724. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_zh_TW2.js +184 -19
  725. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_zh_TW3.js +31 -7
  726. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css10.js +1 -1
  727. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css11.js +1 -1
  728. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css12.js +1 -1
  729. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css13.js +1 -1
  730. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css14.js +1 -1
  731. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css15.js +1 -1
  732. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css16.js +1 -1
  733. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css17.js +1 -1
  734. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css18.js +1 -1
  735. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css19.js +1 -1
  736. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css20.js +1 -1
  737. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css21.js +1 -1
  738. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css22.js +1 -1
  739. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css23.js +1 -1
  740. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css24.js +1 -1
  741. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css25.js +1 -1
  742. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css26.js +7 -0
  743. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css3.js +1 -1
  744. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css4.js +1 -1
  745. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css5.js +1 -1
  746. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css6.js +1 -1
  747. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css7.js +1 -1
  748. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css8.js +1 -1
  749. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css9.js +1 -1
  750. package/src/main/js/sap/ushell/thirdparty/encodeXML.js +87 -0
  751. package/src/main/js/sap/ushell/thirdparty/generateHighlightedMarkup.js +9 -0
  752. package/src/main/js/sap/ushell/thirdparty/i18n-defaults.js +157 -149
  753. package/src/main/js/sap/ushell/thirdparty/i18n-defaults2.js +18 -0
  754. package/src/main/js/sap/ushell/thirdparty/information.js +10 -13
  755. package/src/main/js/sap/ushell/thirdparty/information2.js +13 -0
  756. package/src/main/js/sap/ushell/thirdparty/overflow.js +16 -36
  757. package/src/main/js/sap/ushell/thirdparty/parameters-bundle.css.js +40 -4
  758. package/src/main/js/sap/ushell/thirdparty/parameters-bundle.css2.js +8 -0
  759. package/src/main/js/sap/ushell/thirdparty/query.js +1 -4
  760. package/src/main/js/sap/ushell/thirdparty/slim-arrow-down.js +44 -0
  761. package/src/main/js/sap/ushell/thirdparty/sys-enter-2.js +7 -0
  762. package/src/main/js/sap/ushell/thirdparty/toLowercaseEnumValue.js +0 -8
  763. package/src/main/js/sap/ushell/thirdparty/ui5/webcomponents-icons/AllIcons.js +2 -2
  764. package/src/main/js/sap/ushell/thirdparty/ui5/webcomponents-icons-business-suite/AllIcons.js +2 -2
  765. package/src/main/js/sap/ushell/thirdparty/ui5/webcomponents-icons-tnt/AllIcons.js +2 -2
  766. package/src/main/js/sap/ushell/thirdparty/webcomponents-base.js +96 -79
  767. package/src/main/js/sap/ushell/thirdparty/webcomponents-fiori.js +14 -14
  768. package/src/main/js/sap/ushell/thirdparty/webcomponents.js +29 -29
  769. package/src/main/js/sap/ushell/thirdparty/willShowContent.js +7 -0
  770. package/src/main/js/sap/ushell/ui/ShellHeader.js +0 -1
  771. package/src/main/js/sap/ushell/ui/cards/RecentActivitiesExtension.js +1 -1
  772. package/src/main/js/sap/ushell/ui/launchpad/ExtendedChangeDetection.js +1 -1
  773. package/src/main/js/sap/ushell/ui/launchpad/Section.js +1 -1
  774. package/src/main/js/sap/ushell/ui/launchpad/VizInstance.js +6 -1
  775. package/src/main/js/sap/ushell/ui/launchpad/section/CompactArea.js +1 -1
  776. package/src/main/js/sap/ushell/ui/shell/ShellAppTitle.js +1 -0
  777. package/src/main/js/sap/ushell/ui/shell/ToolAreaItem.js +5 -2
  778. package/src/main/js/sap/ushell/ui/utils.js +1 -1
  779. package/src/main/js/sap/ushell/ui5service/ShellUIServiceFactory.js +1 -1
  780. package/src/main/js/sap/ushell/ui5service/UserStatus.js +1 -1
  781. package/src/main/js/sap/ushell/utils/UrlShortening.js +1 -1
  782. package/src/main/js/sap/ushell/utils/workpage/WorkPageHost.js +1 -1
  783. package/src/main/js/sap/ushell/utils/workpage/WorkPageService.js +1 -1
  784. package/src/main/js/sap/ushell/utils/workpage/WorkPageVizInstantiation.js +1 -1
  785. package/src/main/js/sap/ushell/utils.js +32 -1
  786. package/src/test/js/sap/ushell/bootstrap/sandbox.js +1 -1
  787. package/ui5.yaml +2 -0
  788. package/src/main/js/sap/ushell/thirdparty/ListItemTemplate.js +0 -3920
  789. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css2.js +0 -7
  790. /package/src/main/js/sap/ushell/components/shell/SearchCEP/{SearchFieldFragment.fragment.xml → SearchField.fragment.xml} +0 -0
@@ -0,0 +1,3380 @@
1
+ sap.ui.define(['require', 'exports', 'sap/ushell/thirdparty/webcomponents-base', 'sap/ushell/thirdparty/webcomponents', 'sap/ushell/thirdparty/webcomponents-fiori', 'sap/ushell/thirdparty/event-strict', 'sap/ushell/thirdparty/Icons', 'sap/ushell/thirdparty/parameters-bundle.css', 'sap/ushell/thirdparty/Button2', 'sap/ushell/thirdparty/Icon', 'sap/ushell/thirdparty/ListItemBase', 'sap/ushell/thirdparty/i18n-defaults', 'sap/ushell/thirdparty/ListItemAdditionalText.css', 'sap/ushell/thirdparty/BusyIndicator', 'sap/ushell/thirdparty/ValueState', 'sap/ushell/thirdparty/information', 'sap/ushell/thirdparty/List', 'sap/ushell/thirdparty/Label', 'sap/ushell/thirdparty/ResponsivePopover', 'sap/ushell/thirdparty/slim-arrow-down', 'sap/ushell/thirdparty/Title', 'sap/ushell/thirdparty/encodeXML', 'sap/ushell/thirdparty/information2', 'sap/ushell/thirdparty/sys-enter-2', 'sap/ushell/thirdparty/parameters-bundle.css2', 'sap/ushell/thirdparty/i18n-defaults2'], (function (require, exports, webcomponentsBase, webcomponents, webcomponentsFiori, eventStrict, Icons, parametersBundle_css, Button, Icon, ListItemBase, i18nDefaults, ListItemAdditionalText_css, BusyIndicator, ValueState, information, List, Label, ResponsivePopover, slimArrowDown, Title, encodeXML, information$1, sysEnter2, parametersBundle_css$1, i18nDefaults$1) { 'use strict';
2
+
3
+ function ListItemBaseTemplate(hooks, injectedProps) {
4
+ const listItemContent = hooks?.listItemContent || defaultListItemContent;
5
+ return (parametersBundle_css.jsx("li", { part: "native-li", "data-sap-focus-ref": true, tabindex: this._effectiveTabIndex, class: this.classes.main, draggable: this.movable, role: injectedProps?.role, title: injectedProps?.title, onFocusIn: this._onfocusin, onKeyUp: this._onkeyup, onKeyDown: this._onkeydown, onClick: this._onclick, children: listItemContent.call(this) }));
6
+ }
7
+ function defaultListItemContent() {
8
+ return parametersBundle_css.jsx("div", { part: "content", id: `${this._id}-content`, class: "ui5-li-content", children: parametersBundle_css.jsx("div", { class: "ui5-li-text-wrapper", children: parametersBundle_css.jsx("span", { part: "title", class: "ui5-li-title", children: parametersBundle_css.jsx("slot", {}) }) }) });
9
+ }
10
+
11
+ function OptionTemplate() {
12
+ return ListItemBaseTemplate.call(this, { listItemContent: listItemContent$1 }, { role: "option", title: this.tooltip });
13
+ }
14
+ function listItemContent$1() {
15
+ return (parametersBundle_css.jsxs("div", { part: "content", id: `${this._id}-content`, class: "ui5-li-content", children: [this.displayIconBegin &&
16
+ parametersBundle_css.jsx(Icon.Icon, { part: "icon", name: this.icon, class: "ui5-li-icon", mode: "Decorative" }), parametersBundle_css.jsxs("div", { class: "ui5-li-text-wrapper", children: [parametersBundle_css.jsx("span", { part: "title", class: "ui5-li-title", children: parametersBundle_css.jsx("slot", {}) }), this.additionalText &&
17
+ parametersBundle_css.jsx("span", { part: "additional-text", class: "ui5-li-additional-text", children: this.additionalText })] })] }));
18
+ }
19
+
20
+ Icons.p("@" + "ui5" + "/" + "webcomponents-theming", "sap_horizon", async () => parametersBundle_css.defaultThemeBase);
21
+ Icons.p("@" + "u" + "i" + "5" + "/" + "w" + "e" + "b" + "c" + "o" + "m" + "p" + "o" + "n" + "e" + "n" + "t" + "s", "sap_horizon", async () => i18nDefaults.defaultTheme);
22
+ var optionBaseCss = `:host{height:var(--_ui5-v2-14-0-rc-7_list_item_dropdown_base_height);--_ui5-v2-14-0-rc-7_list_item_title_size: var(--sapFontSize)}
23
+ `;
24
+
25
+ Icons.p("@" + "ui5" + "/" + "webcomponents-theming", "sap_horizon", async () => parametersBundle_css.defaultThemeBase);
26
+ Icons.p("@" + "u" + "i" + "5" + "/" + "w" + "e" + "b" + "c" + "o" + "m" + "p" + "o" + "n" + "e" + "n" + "t" + "s", "sap_horizon", async () => i18nDefaults.defaultTheme);
27
+ var listItemIconCss = `.ui5-li-icon{color:var(--sapList_TextColor);min-width:var(--_ui5-v2-14-0-rc-7_list_item_icon_size);min-height:var(--_ui5-v2-14-0-rc-7_list_item_icon_size);padding-inline-end:var(--_ui5-v2-14-0-rc-7_list_item_icon_padding-inline-end)}
28
+ `;
29
+
30
+ var __decorate$6 = (this && this.__decorate) || function (decorators, target, key, desc) {
31
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
32
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
33
+ 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;
34
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
35
+ };
36
+ /**
37
+ * @class
38
+ *
39
+ * ### Overview
40
+ *
41
+ * The `ui5-option` component defines the content of an option in the `ui5-select`.
42
+ *
43
+ * ### ES6 Module Import
44
+ *
45
+ * `import "sap/ushell/gen/ui5/webcomponents/dist/Option.js";`
46
+ * @constructor
47
+ * @extends ListItemBase
48
+ * @implements {IOption}
49
+ * @public
50
+ */
51
+ let Option = class Option extends ListItemBase.ListItemBase {
52
+ get displayIconBegin() {
53
+ return !!this.icon;
54
+ }
55
+ get effectiveDisplayText() {
56
+ return this.textContent || "";
57
+ }
58
+ };
59
+ __decorate$6([
60
+ webcomponentsBase.d({ type: Node, "default": true, invalidateOnChildChange: true })
61
+ ], Option.prototype, "text", void 0);
62
+ __decorate$6([
63
+ webcomponentsBase.s()
64
+ ], Option.prototype, "value", void 0);
65
+ __decorate$6([
66
+ webcomponentsBase.s()
67
+ ], Option.prototype, "icon", void 0);
68
+ __decorate$6([
69
+ webcomponentsBase.s()
70
+ ], Option.prototype, "additionalText", void 0);
71
+ __decorate$6([
72
+ webcomponentsBase.s()
73
+ ], Option.prototype, "tooltip", void 0);
74
+ __decorate$6([
75
+ webcomponentsBase.s({ type: Boolean })
76
+ ], Option.prototype, "selected", void 0);
77
+ Option = __decorate$6([
78
+ webcomponentsBase.m({
79
+ tag: "ui5-option",
80
+ template: OptionTemplate,
81
+ styles: [
82
+ ListItemBase.ListItemBase.styles,
83
+ ListItemAdditionalText_css.listItemAdditionalTextCss,
84
+ listItemIconCss,
85
+ optionBaseCss,
86
+ ],
87
+ })
88
+ ], Option);
89
+ Option.define();
90
+ var Option$1 = Option;
91
+
92
+ let t,n$1;const l=e=>{e.style.position="absolute",e.style.clip="rect(1px,1px,1px,1px)",e.style.userSelect="none",e.style.left="-1000px",e.style.top="-1000px",e.style.pointerEvents="none";};Icons.P(()=>{t&&n$1||(t=document.createElement("span"),n$1=document.createElement("span"),t.classList.add("ui5-invisiblemessage-polite"),n$1.classList.add("ui5-invisiblemessage-assertive"),t.setAttribute("aria-live","polite"),n$1.setAttribute("aria-live","assertive"),t.setAttribute("role","alert"),n$1.setAttribute("role","alert"),l(t),l(n$1),Icons.o("ui5-announcement-area").appendChild(t),Icons.o("ui5-announcement-area").appendChild(n$1));});const p=(e,s)=>{const i=t;i.textContent="",i.textContent=e,setTimeout(()=>{i.textContent===e&&(i.textContent="");},3e3);};
93
+
94
+ function SelectPopoverTemplate() {
95
+ return (parametersBundle_css.jsxs(parametersBundle_css.Fragment, { children: [this.options.length > 0 &&
96
+ parametersBundle_css.jsxs(ResponsivePopover.ResponsivePopover, { id: this.responsivePopoverId, class: {
97
+ "ui5-select-popover": true,
98
+ ...this.classes.popover
99
+ }, part: "popover", style: this.styles.responsivePopover, placement: "Bottom", horizontalAlign: "Start", hideArrow: true, preventInitialFocus: true, onOpen: this._afterOpen, onBeforeOpen: this._beforeOpen, onClose: this._afterClose, onKeyDown: this._onkeydown, children: [this._isPhone &&
100
+ parametersBundle_css.jsxs("div", { slot: "header", class: "ui5-responsive-popover-header", children: [parametersBundle_css.jsxs("div", { class: "row", children: [parametersBundle_css.jsx(Title.Title, { children: this._headerTitleText }), parametersBundle_css.jsx(Button.Button, { class: "ui5-responsive-popover-close-btn", icon: information.decline, design: "Transparent", onClick: this._toggleRespPopover })] }), this.hasValueStateText &&
101
+ parametersBundle_css.jsx("div", { class: {
102
+ "row": true,
103
+ "ui5-select-value-state-dialog-header": true,
104
+ ...this.classes.popoverValueState
105
+ }, children: this._isPickerOpen && valueStateMessage$1.call(this) })] }), !this._isPhone && this.hasValueStateText &&
106
+ parametersBundle_css.jsxs("div", { class: this.classes.popoverValueState, style: this.styles.responsivePopoverHeader, children: [parametersBundle_css.jsx(Icon.Icon, { class: "ui5-input-value-state-message-icon", name: this._valueStateMessageInputIcon }), this._isPickerOpen && valueStateMessage$1.call(this)] }), parametersBundle_css.jsx(List.List, { separators: "None", onMouseDown: this._itemMousedown, onItemClick: this._handleItemPress, accessibleRole: "ListBox", children: parametersBundle_css.jsx("slot", {}) })] }), this.shouldOpenValueStateMessagePopover &&
107
+ parametersBundle_css.jsx(ResponsivePopover.Popover, { part: "popover", class: "ui5-valuestatemessage-popover", preventInitialFocus: true, preventFocusRestore: true, hideArrow: true, placement: "Bottom", horizontalAlign: "Start", children: parametersBundle_css.jsxs("div", { class: this.classes.popoverValueState, style: this.styles.popoverHeader, children: [parametersBundle_css.jsx(Icon.Icon, { class: "ui5-input-value-state-message-icon", name: this._valueStateMessageInputIcon }), valueStateMessage$1.call(this)] }) })] }));
108
+ }
109
+ function valueStateMessage$1() {
110
+ return (parametersBundle_css.jsx(parametersBundle_css.Fragment, { children: this.shouldDisplayDefaultValueStateMessage
111
+ ? this.valueStateText
112
+ : parametersBundle_css.jsx("slot", { onClick: this._applyFocus, name: "valueStateMessage" }) }));
113
+ }
114
+
115
+ function SelectTemplate() {
116
+ return (parametersBundle_css.jsxs(parametersBundle_css.Fragment, { children: [parametersBundle_css.jsxs("div", { class: {
117
+ "ui5-select-root": true,
118
+ "ui5-input-focusable-element": true,
119
+ }, id: `${this._id}-select`, onClick: this._onclick, title: this.tooltip, children: [!this.icon && this.selectedOptionIcon &&
120
+ parametersBundle_css.jsx(Icon.Icon, { mode: "Decorative", class: "ui5-select-option-icon", name: this.selectedOptionIcon }), parametersBundle_css.jsx("div", { class: "ui5-select-label-root", "data-sap-focus-ref": true, tabindex: this._effectiveTabIndex, role: "combobox", "aria-haspopup": "listbox", "aria-label": this.ariaLabelText, ...this.ariaDescribedByIds && {
121
+ "aria-describedby": this.ariaDescribedByIds
122
+ }, "aria-disabled": this.isDisabled, "aria-required": this.required, "aria-readonly": this.readonly, "aria-expanded": this._isPickerOpen, "aria-roledescription": this._ariaRoleDescription, onKeyDown: this._onkeydown, onKeyPress: this._handleKeyboardNavigation, onKeyUp: this._onkeyup, onFocusIn: this._onfocusin, onFocusOut: this._onfocusout, "aria-controls": this.responsivePopoverId, children: this.hasCustomLabel
123
+ ? parametersBundle_css.jsx("slot", { name: "label" })
124
+ : this.text }), this.icon &&
125
+ parametersBundle_css.jsx("div", { class: {
126
+ "ui5-select-icon-root": true,
127
+ "inputIcon": true,
128
+ "inputIcon--pressed": this._iconPressed,
129
+ }, children: parametersBundle_css.jsx(Icon.Icon, { name: this.icon, class: {
130
+ "ui5-select-icon": true,
131
+ } }) }), !this.icon && !this.readonly &&
132
+ parametersBundle_css.jsx("div", { part: "icon-wrapper", class: {
133
+ "ui5-select-icon-root": true,
134
+ "inputIcon": true,
135
+ "inputIcon--pressed": this._iconPressed,
136
+ }, children: parametersBundle_css.jsx(Icon.Icon, { part: "icon", name: slimArrowDown.slimArrowDown, class: {
137
+ "ui5-select-icon": true,
138
+ } }) }), this.hasValueState &&
139
+ parametersBundle_css.jsx("span", { id: `${this._id}-valueStateDesc`, class: "ui5-hidden-text", children: this.valueStateText }), this.ariaDescriptionText &&
140
+ parametersBundle_css.jsx("span", { id: "accessibleDescription", class: "ui5-hidden-text", children: this.ariaDescriptionText })] }), SelectPopoverTemplate.call(this)] }));
141
+ }
142
+
143
+ Icons.p("@" + "ui5" + "/" + "webcomponents-theming", "sap_horizon", async () => parametersBundle_css.defaultThemeBase);
144
+ Icons.p("@" + "u" + "i" + "5" + "/" + "w" + "e" + "b" + "c" + "o" + "m" + "p" + "o" + "n" + "e" + "n" + "t" + "s", "sap_horizon", async () => i18nDefaults.defaultTheme);
145
+ var selectCss = `:host{vertical-align:middle}.ui5-hidden-text{position:absolute;clip:rect(1px,1px,1px,1px);user-select:none;left:-1000px;top:-1000px;pointer-events:none;font-size:0}.inputIcon{color:var(--_ui5-v2-14-0-rc-7_input_icon_color);cursor:pointer;outline:none;padding:var(--_ui5-v2-14-0-rc-7_input_icon_padding);border-inline-start:var(--_ui5-v2-14-0-rc-7_input_icon_border);min-width:1rem;min-height:1rem;border-radius:var(--_ui5-v2-14-0-rc-7_input_icon_border_radius)}.inputIcon.inputIcon--pressed{background:var(--_ui5-v2-14-0-rc-7_input_icon_pressed_bg);box-shadow:var(--_ui5-v2-14-0-rc-7_input_icon_box_shadow);border-inline-start:var(--_ui5-v2-14-0-rc-7_select_hover_icon_left_border);color:var(--_ui5-v2-14-0-rc-7_input_icon_pressed_color)}.inputIcon:active{background-color:var(--sapButton_Active_Background);box-shadow:var(--_ui5-v2-14-0-rc-7_input_icon_box_shadow);border-inline-start:var(--_ui5-v2-14-0-rc-7_select_hover_icon_left_border);color:var(--_ui5-v2-14-0-rc-7_input_icon_pressed_color)}.inputIcon:not(.inputIcon--pressed):not(:active):hover{background:var(--_ui5-v2-14-0-rc-7_input_icon_hover_bg);box-shadow:var(--_ui5-v2-14-0-rc-7_input_icon_box_shadow)}.inputIcon:hover{border-inline-start:var(--_ui5-v2-14-0-rc-7_select_hover_icon_left_border);box-shadow:var(--_ui5-v2-14-0-rc-7_input_icon_box_shadow)}:host(:not([hidden])){display:inline-block}:host{width:var(--_ui5-v2-14-0-rc-7_input_width);min-width:calc(var(--_ui5-v2-14-0-rc-7_input_min_width) + (var(--_ui5-v2-14-0-rc-7-input-icons-count)*var(--_ui5-v2-14-0-rc-7_input_icon_width)));margin:var(--_ui5-v2-14-0-rc-7_input_margin_top_bottom) 0;height:var(--_ui5-v2-14-0-rc-7_input_height);color:var(--sapField_TextColor);font-size:var(--sapFontSize);font-family:var(--sapFontFamily);font-style:normal;border:var(--_ui5-v2-14-0-rc-7-input-border);border-radius:var(--_ui5-v2-14-0-rc-7_input_border_radius);box-sizing:border-box;text-align:start;transition:var(--_ui5-v2-14-0-rc-7_input_transition);background:var(--sapField_BackgroundStyle);background-color:var(--_ui5-v2-14-0-rc-7_input_background_color)}:host(:not([readonly])),:host([readonly][disabled]){box-shadow:var(--sapField_Shadow)}:host([focused]:not([opened])){border-color:var(--_ui5-v2-14-0-rc-7_input_focused_border_color);background-color:var(--sapField_Focus_Background)}.ui5-input-focusable-element{position:relative}:host([focused]:not([opened])) .ui5-input-focusable-element:after{content:var(--ui5-v2-14-0-rc-7_input_focus_pseudo_element_content);position:absolute;pointer-events:none;z-index:2;border:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--_ui5-v2-14-0-rc-7_input_focus_outline_color);border-radius:var(--_ui5-v2-14-0-rc-7_input_focus_border_radius);top:var(--_ui5-v2-14-0-rc-7_input_focus_offset);bottom:var(--_ui5-v2-14-0-rc-7_input_focus_offset);left:var(--_ui5-v2-14-0-rc-7_input_focus_offset);right:var(--_ui5-v2-14-0-rc-7_input_focus_offset)}:host([focused][readonly]:not([opened])) .ui5-input-focusable-element:after{top:var(--_ui5-v2-14-0-rc-7_input_readonly_focus_offset);bottom:var(--_ui5-v2-14-0-rc-7_input_readonly_focus_offset);left:var(--_ui5-v2-14-0-rc-7_input_readonly_focus_offset);right:var(--_ui5-v2-14-0-rc-7_input_readonly_focus_offset);border-radius:var(--_ui5-v2-14-0-rc-7_input_readonly_focus_border_radius)}.ui5-input-root:before{content:"";position:absolute;width:calc(100% - 2px);left:1px;bottom:-2px;border-bottom-left-radius:8px;border-bottom-right-radius:8px;height:var(--_ui5-v2-14-0-rc-7_input_bottom_border_height);transition:var(--_ui5-v2-14-0-rc-7_input_transition);background-color:var(--_ui5-v2-14-0-rc-7_input_bottom_border_color)}.ui5-input-root{width:100%;height:100%;position:relative;background:transparent;display:inline-block;outline:none;box-sizing:border-box;color:inherit;transition:border-color .2s ease-in-out;border-radius:var(--_ui5-v2-14-0-rc-7_input_border_radius);overflow:hidden}:host([disabled]){opacity:var(--_ui5-v2-14-0-rc-7_input_disabled_opacity);cursor:default;pointer-events:none;background-color:var(--_ui5-v2-14-0-rc-7-input_disabled_background);border-color:var(--_ui5-v2-14-0-rc-7_input_disabled_border_color)}:host([disabled]) .ui5-input-root:before,:host([readonly]) .ui5-input-root:before{content:none}[inner-input]{background:transparent;color:inherit;border:none;font-style:inherit;-webkit-appearance:none;-moz-appearance:textfield;padding:var(--_ui5-v2-14-0-rc-7_input_inner_padding);box-sizing:border-box;width:100%;text-overflow:ellipsis;flex:1;outline:none;font-size:inherit;font-family:inherit;line-height:inherit;letter-spacing:inherit;word-spacing:inherit;text-align:inherit}[inner-input][inner-input-with-icon]{padding:var(--_ui5-v2-14-0-rc-7_input_inner_padding_with_icon)}[inner-input][type=search]::-webkit-search-decoration,[inner-input][type=search]::-webkit-search-cancel-button,[inner-input][type=search]::-webkit-search-results-button,[inner-input][type=search]::-webkit-search-results-decoration{display:none}[inner-input]::-ms-reveal,[inner-input]::-ms-clear{display:none}.ui5-input-value-state-icon{height:100%;display:var(--_ui5-v2-14-0-rc-7-input-value-state-icon-display);align-items:center}.ui5-input-value-state-icon>svg{margin-right:8px}[inner-input]::selection{background:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}:host([disabled]) [inner-input]::-webkit-input-placeholder{visibility:hidden}:host([readonly]) [inner-input]::-webkit-input-placeholder{visibility:hidden}:host([disabled]) [inner-input]::-moz-placeholder{visibility:hidden}:host([readonly]) [inner-input]::-moz-placeholder{visibility:hidden}[inner-input]::-webkit-input-placeholder{font-weight:400;font-style:var(--_ui5-v2-14-0-rc-7_input_placeholder_style);color:var(--_ui5-v2-14-0-rc-7_input_placeholder_color);padding-right:.125rem}[inner-input]::-moz-placeholder{font-weight:400;font-style:var(--_ui5-v2-14-0-rc-7_input_placeholder_style);color:var(--_ui5-v2-14-0-rc-7_input_placeholder_color);padding-right:.125rem}:host([value-state="Negative"]) [inner-input]::-webkit-input-placeholder{color:var(--_ui5-v2-14-0-rc-7-input_error_placeholder_color);font-weight:var(--_ui5-v2-14-0-rc-7_input_value_state_error_warning_placeholder_font_weight)}:host([value-state="Negative"]) [inner-input]::-moz-placeholder{color:var(--_ui5-v2-14-0-rc-7-input_error_placeholder_color);font-weight:var(--_ui5-v2-14-0-rc-7_input_value_state_error_warning_placeholder_font_weight)}:host([value-state="Critical"]) [inner-input]::-webkit-input-placeholder{font-weight:var(--_ui5-v2-14-0-rc-7_input_value_state_error_warning_placeholder_font_weight)}:host([value-state="Critical"]) [inner-input]::-moz-placeholder{font-weight:var(--_ui5-v2-14-0-rc-7_input_value_state_error_warning_placeholder_font_weight)}:host([value-state="Positive"]) [inner-input]::-webkit-input-placeholder{color:var(--_ui5-v2-14-0-rc-7_input_placeholder_color)}:host([value-state="Positive"]) [inner-input]::-moz-placeholder{color:var(--_ui5-v2-14-0-rc-7_input_placeholder_color)}:host([value-state="Information"]) [inner-input]::-webkit-input-placeholder{color:var(--_ui5-v2-14-0-rc-7_input_placeholder_color)}:host([value-state="Information"]) [inner-input]::-moz-placeholder{color:var(--_ui5-v2-14-0-rc-7_input_placeholder_color)}.ui5-input-content{height:100%;box-sizing:border-box;display:flex;flex-direction:row;justify-content:flex-end;overflow:hidden;outline:none;background:transparent;color:inherit;border-radius:var(--_ui5-v2-14-0-rc-7_input_border_radius)}:host([readonly]:not([disabled])){border:var(--_ui5-v2-14-0-rc-7_input_readonly_border);background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--_ui5-v2-14-0-rc-7_input_readonly_background)}:host([value-state="None"]:not([readonly]):hover),:host(:not([value-state]):not([readonly]):hover){border:var(--_ui5-v2-14-0-rc-7_input_hover_border);border-color:var(--_ui5-v2-14-0-rc-7_input_focused_border_color);box-shadow:var(--sapField_Hover_Shadow);background:var(--sapField_Hover_BackgroundStyle);background-color:var(--sapField_Hover_Background)}:host(:not([value-state]):not([readonly])[focused]:not([opened]):hover),:host([value-state="None"]:not([readonly])[focused]:not([opened]):hover){box-shadow:none}:host([focused]):not([opened]) .ui5-input-root:before{content:none}:host(:not([readonly]):not([disabled])[value-state]:not([value-state="None"])){border-width:var(--_ui5-v2-14-0-rc-7_input_state_border_width)}:host([value-state="Negative"]) [inner-input],:host([value-state="Critical"]) [inner-input]{font-style:var(--_ui5-v2-14-0-rc-7_input_error_warning_font_style);text-indent:var(--_ui5-v2-14-0-rc-7_input_error_warning_text_indent)}:host([value-state="Negative"]) [inner-input]{font-weight:var(--_ui5-v2-14-0-rc-7_input_error_font_weight)}:host([value-state="Critical"]) [inner-input]{font-weight:var(--_ui5-v2-14-0-rc-7_input_warning_font_weight)}:host([value-state="Negative"]:not([readonly]):not([disabled])){background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border-color:var(--_ui5-v2-14-0-rc-7_input_value_state_error_border_color);box-shadow:var(--sapField_InvalidShadow)}:host([value-state="Negative"][focused]:not([opened]):not([readonly])){background-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_error_background);border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_error_border_color)}:host([value-state="Negative"][focused]:not([opened]):not([readonly])) .ui5-input-focusable-element:after{border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_error_focus_outline_color)}:host([value-state="Negative"]:not([readonly])) .ui5-input-root:before{background-color:var(--_ui5-v2-14-0-rc-7-input-value-state-error-border-botom-color)}:host([value-state="Negative"]:not([readonly]):not([focused]):hover),:host([value-state="Negative"]:not([readonly])[focused][opened]:hover){background-color:var(--_ui5-v2-14-0-rc-7_input_value_state_error_hover_background);box-shadow:var(--sapField_Hover_InvalidShadow)}:host([value-state="Negative"]:not([readonly]):not([disabled])),:host([value-state="Critical"]:not([readonly]):not([disabled])),:host([value-state="Information"]:not([readonly]):not([disabled])){border-style:var(--_ui5-v2-14-0-rc-7_input_error_warning_border_style)}:host([value-state="Critical"]:not([readonly]):not([disabled])){background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border-color:var(--_ui5-v2-14-0-rc-7_input_value_state_warning_border_color);box-shadow:var(--sapField_WarningShadow)}:host([value-state="Critical"][focused]:not([opened]):not([readonly])){background-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_warning_background);border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_warning_border_color)}:host([value-state="Critical"][focused]:not([opened]):not([readonly])) .ui5-input-focusable-element:after{border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_warning_focus_outline_color)}:host([value-state="Critical"]:not([readonly])) .ui5-input-root:before{background-color:var(--_ui5-v2-14-0-rc-7_input_value_state_warning_border_botom_color)}:host([value-state="Critical"]:not([readonly]):not([focused]):hover),:host([value-state="Critical"]:not([readonly])[focused][opened]:hover){background-color:var(--sapField_Hover_Background);box-shadow:var(--sapField_Hover_WarningShadow)}:host([value-state="Positive"]:not([readonly]):not([disabled])){background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border-color:var(--_ui5-v2-14-0-rc-7_input_value_state_success_border_color);border-width:var(--_ui5-v2-14-0-rc-7_input_value_state_success_border_width);box-shadow:var(--sapField_SuccessShadow)}:host([value-state="Positive"][focused]:not([opened]):not([readonly])){background-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_success_background);border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_success_border_color)}:host([value-state="Positive"][focused]:not([opened]):not([readonly])) .ui5-input-focusable-element:after{border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_success_focus_outline_color)}:host([value-state="Positive"]:not([readonly])) .ui5-input-root:before{background-color:var(--_ui5-v2-14-0-rc-7_input_value_state_success_border_botom_color)}:host([value-state="Positive"]:not([readonly]):not([focused]):hover),:host([value-state="Positive"]:not([readonly])[focused][opened]:hover){background-color:var(--sapField_Hover_Background);box-shadow:var(--sapField_Hover_SuccessShadow)}:host([value-state="Information"]:not([readonly]):not([disabled])){background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border-color:var(--_ui5-v2-14-0-rc-7_input_value_state_information_border_color);border-width:var(--_ui5-v2-14-0-rc-7_input_information_border_width);box-shadow:var(--sapField_InformationShadow)}:host([value-state="Information"][focused]:not([opened]):not([readonly])){background-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_information_background);border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_information_border_color)}:host([value-state="Information"]:not([readonly])) .ui5-input-root:before{background-color:var(--_ui5-v2-14-0-rc-7_input_value_success_information_border_botom_color)}:host([value-state="Information"]:not([readonly]):not([focused]):hover),:host([value-state="Information"]:not([readonly])[focused][opened]:hover){background-color:var(--sapField_Hover_Background);box-shadow:var(--sapField_Hover_InformationShadow)}.ui5-input-icon-root{min-width:var(--_ui5-v2-14-0-rc-7_input_icon_min_width);height:100%;display:flex;justify-content:center;align-items:center}::slotted([ui5-icon][slot="icon"]){align-self:start;padding:var(--_ui5-v2-14-0-rc-7_input_custom_icon_padding);box-sizing:content-box!important}:host([value-state="Negative"]) .inputIcon,:host([value-state="Critical"]) .inputIcon{padding:var(--_ui5-v2-14-0-rc-7_input_error_warning_icon_padding)}:host([value-state="Negative"][focused]) .inputIcon,:host([value-state="Critical"][focused]) .inputIcon{padding:var(--_ui5-v2-14-0-rc-7_input_error_warning_focused_icon_padding)}:host([value-state="Information"]) .inputIcon{padding:var(--_ui5-v2-14-0-rc-7_input_information_icon_padding)}:host([value-state="Information"][focused]) .inputIcon{padding:var(--_ui5-v2-14-0-rc-7_input_information_focused_icon_padding)}:host([value-state="Negative"]) ::slotted(.inputIcon[ui5-icon]),:host([value-state="Negative"]) ::slotted([ui5-icon][slot="icon"]),:host([value-state="Critical"]) ::slotted([ui5-icon][slot="icon"]){padding:var(--_ui5-v2-14-0-rc-7_input_error_warning_custom_icon_padding)}:host([value-state="Negative"][focused]) ::slotted(.inputIcon[ui5-icon]),:host([value-state="Negative"][focused]) ::slotted([ui5-icon][slot="icon"]),:host([value-state="Critical"][focused]) ::slotted([ui5-icon][slot="icon"]){padding:var(--_ui5-v2-14-0-rc-7_input_error_warning_custom_focused_icon_padding)}:host([value-state="Information"]) ::slotted([ui5-icon][slot="icon"]){padding:var(--_ui5-v2-14-0-rc-7_input_information_custom_icon_padding)}:host([value-state="Information"][focused]) ::slotted([ui5-icon][slot="icon"]){padding:var(--_ui5-v2-14-0-rc-7_input_information_custom_focused_icon_padding)}:host([value-state="Negative"]) .inputIcon:active,:host([value-state="Negative"]) .inputIcon.inputIcon--pressed{box-shadow:var(--_ui5-v2-14-0-rc-7_input_error_icon_box_shadow);color:var(--_ui5-v2-14-0-rc-7_input_icon_error_pressed_color)}:host([value-state="Negative"]) .inputIcon:not(.inputIcon--pressed):not(:active):hover{box-shadow:var(--_ui5-v2-14-0-rc-7_input_error_icon_box_shadow)}:host([value-state="Critical"]) .inputIcon:active,:host([value-state="Critical"]) .inputIcon.inputIcon--pressed{box-shadow:var(--_ui5-v2-14-0-rc-7_input_warning_icon_box_shadow);color:var(--_ui5-v2-14-0-rc-7_input_icon_warning_pressed_color)}:host([value-state="Critical"]) .inputIcon:not(.inputIcon--pressed):not(:active):hover{box-shadow:var(--_ui5-v2-14-0-rc-7_input_warning_icon_box_shadow)}:host([value-state="Information"]) .inputIcon:active,:host([value-state="Information"]) .inputIcon.inputIcon--pressed{box-shadow:var(--_ui5-v2-14-0-rc-7_input_information_icon_box_shadow);color:var(--_ui5-v2-14-0-rc-7_input_icon_information_pressed_color)}:host([value-state="Information"]) .inputIcon:not(.inputIcon--pressed):not(:active):hover{box-shadow:var(--_ui5-v2-14-0-rc-7_input_information_icon_box_shadow)}:host([value-state="Positive"]) .inputIcon:active,:host([value-state="Positive"]) .inputIcon.inputIcon--pressed{box-shadow:var(--_ui5-v2-14-0-rc-7_input_success_icon_box_shadow);color:var(--_ui5-v2-14-0-rc-7_input_icon_success_pressed_color)}:host([value-state="Positive"]) .inputIcon:not(.inputIcon--pressed):not(:active):hover{box-shadow:var(--_ui5-v2-14-0-rc-7_input_success_icon_box_shadow)}.ui5-input-clear-icon-wrapper{height:var(--_ui5-v2-14-0-rc-7_input_icon_wrapper_height);padding:0;width:var(--_ui5-v2-14-0-rc-7_input_icon_width);min-width:var(--_ui5-v2-14-0-rc-7_input_icon_width);display:flex;justify-content:center;align-items:center;box-sizing:border-box}:host([value-state]:not([value-state="None"]):not([value-state="Positive"])) .ui5-input-clear-icon-wrapper{height:var(--_ui5-v2-14-0-rc-7_input_icon_wrapper_state_height);vertical-align:top}:host([value-state="Positive"]) .ui5-input-clear-icon-wrapper{height:var(--_ui5-v2-14-0-rc-7_input_icon_wrapper_success_state_height)}[ui5-icon].ui5-input-clear-icon{padding:0;color:inherit}[inner-input]::-webkit-outer-spin-button,[inner-input]::-webkit-inner-spin-button{-webkit-appearance:inherit;margin:inherit}:host([icon]){min-width:var(--_ui5-v2-14-0-rc-7_button_base_min_width);width:var(--_ui5-v2-14-0-rc-7_button_base_min_width)}:host([icon]) .ui5-select-root{min-width:var(--_ui5-v2-14-0-rc-7_button_base_min_width)}:host([icon]) .ui5-select-label-root{min-width:0;padding-inline-start:0}.ui5-select-root{min-width:calc(var(--_ui5-v2-14-0-rc-7_input_min_width) + (var(--_ui5-v2-14-0-rc-7-input-icons-count)*var(--_ui5-v2-14-0-rc-7_input_icon_width)));width:100%;height:100%;display:flex;outline:none;cursor:pointer;overflow:hidden;border-radius:var(--_ui5-v2-14-0-rc-7_input_border_radius)}.ui5-select-label-root{flex-shrink:1;flex-grow:1;align-self:center;min-width:1rem;padding-inline-start:.5rem;cursor:pointer;outline:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--_ui5-v2-14-0-rc-7_select_label_color);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400}.ui5-select-option-icon{padding-inline-start:.5rem;color:var(--sapField_TextColor);align-self:center}:host(:not([disabled])){cursor:pointer}.ui5-select-icon-root{display:flex;justify-content:center;align-items:center;box-sizing:border-box;width:var(--_ui5-v2-14-0-rc-7_select_icon_width);min-width:var(--_ui5-v2-14-0-rc-7_select_icon_width);height:var(--_ui5-v2-14-0-rc-7_select_icon_wrapper_height);padding:0}.ui5-select-icon{color:inherit}:host([value-state]:not([value-state="None"],[value-state="Positive"])) .ui5-select-icon-root{height:var(--_ui5-v2-14-0-rc-7_select_icon_wrapper_state_height)}
146
+ `;
147
+
148
+ Icons.p("@" + "ui5" + "/" + "webcomponents-theming", "sap_horizon", async () => parametersBundle_css.defaultThemeBase);
149
+ Icons.p("@" + "u" + "i" + "5" + "/" + "w" + "e" + "b" + "c" + "o" + "m" + "p" + "o" + "n" + "e" + "n" + "t" + "s", "sap_horizon", async () => i18nDefaults.defaultTheme);
150
+ var ResponsivePopoverCommonCss = `.input-root-phone{flex:1;position:relative;height:var(--_ui5-v2-14-0-rc-7_input_height);color:var(--sapField_TextColor);font-size:var(--sapFontSize);font-family:var(--sapFontFamily);background:var(--sapField_BackgroundStyle);background-color:var(--_ui5-v2-14-0-rc-7_input_background_color);border:var(--_ui5-v2-14-0-rc-7-input-border);border-radius:var(--_ui5-v2-14-0-rc-7_input_border_radius);box-sizing:border-box}.input-root-phone [inner-input]{padding:0 .5rem;width:100%;height:100%}.input-root-phone [inner-input]:focus{background-color:var(--sapField_Focus_Background)}.input-root-phone:focus-within:before{content:"";position:absolute;pointer-events:none;z-index:2;border:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);border-radius:var(--_ui5-v2-14-0-rc-7_input_focus_border_radius);top:var(--_ui5-v2-14-0-rc-7_input_focus_offset);bottom:var(--_ui5-v2-14-0-rc-7_input_focus_offset);left:var(--_ui5-v2-14-0-rc-7_input_focus_offset);right:var(--_ui5-v2-14-0-rc-7_input_focus_offset)}.input-root-phone [value-state=Negative] .inputIcon[data-ui5-compact-size],.input-root-phone [value-state=Positive] .inputIcon[data-ui5-compact-size],.input-root-phone [value-state=Critical] .inputIcon[data-ui5-compact-size]{padding:.1875rem .5rem}[inner-input]{background:transparent;color:inherit;border:none;font-style:normal;-webkit-appearance:none;-moz-appearance:textfield;line-height:normal;padding:var(--_ui5-v2-14-0-rc-7_input_inner_padding);box-sizing:border-box;min-width:3rem;text-overflow:ellipsis;flex:1;outline:none;font-size:inherit;font-family:inherit;border-radius:var(--_ui5-v2-14-0-rc-7_input_border_radius)}[inner-input]::selection,[inner-input]::-moz-selection{background:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}[inner-input]::-webkit-input-placeholder{font-style:var(--_ui5-v2-14-0-rc-7_input_placeholder_style);color:var(--sapField_PlaceholderTextColor)}[inner-input]::-moz-placeholder{font-style:var(--_ui5-v2-14-0-rc-7_input_placeholder_style);color:var(--sapField_PlaceholderTextColor)}.input-root-phone[value-state]:not([value-state=None]){border-width:var(--_ui5-v2-14-0-rc-7_input_state_border_width)}.input-root-phone[value-state=Negative] [inner-input],.input-root-phone[value-state=Critical] [inner-input]{font-style:var(--_ui5-v2-14-0-rc-7_input_error_warning_font_style)}.input-root-phone[value-state=Negative] [inner-input]{font-weight:var(--_ui5-v2-14-0-rc-7_input_error_font_weight)}.input-root-phone[value-state=Negative]:not([readonly]){background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border-color:var(--_ui5-v2-14-0-rc-7_input_value_state_error_border_color)}.input-root-phone[value-state=Negative]:not([readonly]) [inner-input]:focus{background-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_error_background);border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_error_border_color)}.input-root-phone[value-state=Negative]:not([readonly]):focus-within:before{border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_error_focus_outline_color)}.input-root-phone[value-state=Negative]:not([readonly]):not([disabled]),.input-root-phone[value-state=Critical]:not([readonly]):not([disabled]),.input-root-phone[value-state=Information]:not([readonly]):not([disabled]){border-style:var(--_ui5-v2-14-0-rc-7_input_error_warning_border_style)}.input-root-phone[value-state=Critical]:not([readonly]){background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border-color:var(--_ui5-v2-14-0-rc-7_input_value_state_warning_border_color)}.input-root-phone[value-state=Critical]:not([readonly]) [inner-input]:focus{background-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_warning_background);border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_warning_border_color)}.input-root-phone[value-state=Critical]:not([readonly]):focus-within:before{border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_warning_focus_outline_color)}.input-root-phone[value-state=Positive]:not([readonly]){background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border-color:var(--_ui5-v2-14-0-rc-7_input_value_state_success_border_color);border-width:var(--_ui5-v2-14-0-rc-7_input_value_state_success_border_width)}.input-root-phone[value-state=Positive]:not([readonly]) [inner-input]:focus{background-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_success_background);border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_success_border_color)}.input-root-phone[value-state=Positive]:not([readonly]):focus-within:before{border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_success_focus_outline_color)}.input-root-phone[value-state=Information]:not([readonly]){background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border-color:var(--_ui5-v2-14-0-rc-7_input_value_state_information_border_color);border-width:var(--_ui5-v2-14-0-rc-7_input_information_border_width)}.input-root-phone[value-state=Information]:not([readonly]) [inner-input]:focus{background-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_information_background);border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_information_border_color)}.ui5-multi-combobox-toggle-button{margin-left:.5rem}.ui5-responsive-popover-header{width:100%;min-height:2.5rem;display:flex;flex-direction:column}.ui5-responsive-popover-header-text{width:calc(100% - var(--_ui5-v2-14-0-rc-7_button_base_min_width))}.ui5-responsive-popover-header .row{box-sizing:border-box;padding:.25rem 1rem;min-height:2.5rem;display:flex;justify-content:center;align-items:center;font-size:var(--sapFontHeader5Size)}.ui5-responsive-popover-footer{display:flex;justify-content:flex-end;padding:.25rem 0;width:100%}.ui5-responsive-popover-close-btn{position:absolute;right:1rem}
151
+ `;
152
+
153
+ Icons.p("@" + "ui5" + "/" + "webcomponents-theming", "sap_horizon", async () => parametersBundle_css.defaultThemeBase);
154
+ Icons.p("@" + "u" + "i" + "5" + "/" + "w" + "e" + "b" + "c" + "o" + "m" + "p" + "o" + "n" + "e" + "n" + "t" + "s", "sap_horizon", async () => i18nDefaults.defaultTheme);
155
+ var ValueStateMessageCss = `.ui5-valuestatemessage-popover{border-radius:var(--_ui5-v2-14-0-rc-7_value_state_message_popover_border_radius);box-shadow:var(--_ui5-v2-14-0-rc-7_value_state_message_popover_box_shadow)}.ui5-input-value-state-message-icon{width:var(--_ui5-v2-14-0-rc-7_value_state_message_icon_width);height:var(--_ui5-v2-14-0-rc-7_value_state_message_icon_height);display:var(--_ui5-v2-14-0-rc-7_input_value_state_icon_display);position:absolute;padding-right:.375rem}.ui5-valuestatemessage-root .ui5-input-value-state-message-icon{left:var(--_ui5-v2-14-0-rc-7_input_value_state_icon_offset)}.ui5-input-value-state-message-icon[name=error]{color:var(--sapNegativeElementColor)}.ui5-input-value-state-message-icon[name=alert]{color:var(--sapCriticalElementColor)}.ui5-input-value-state-message-icon[name=success]{color:var(--sapPositiveElementColor)}.ui5-input-value-state-message-icon[name=information]{color:var(--sapInformativeElementColor)}.ui5-valuestatemessage-root{box-sizing:border-box;display:inline-block;color:var(--sapTextColor);font-size:var(--sapFontSmallSize);font-family:var(--sapFontFamily);height:auto;padding:var(--_ui5-v2-14-0-rc-7_value_state_message_padding);overflow:hidden;text-overflow:ellipsis;min-width:6.25rem;border:var(--_ui5-v2-14-0-rc-7_value_state_message_border);line-height:var(--_ui5-v2-14-0-rc-7_value_state_message_line_height)}[ui5-responsive-popover] .ui5-valuestatemessage-header,[ui5-popover] .ui5-valuestatemessage-header{min-height:var(--_ui5-v2-14-0-rc-7_value_state_message_popover_header_min_height);min-width:var(--_ui5-v2-14-0-rc-7_value_state_message_popover_header_min_width);max-width:var(--_ui5-v2-14-0-rc-7_value_state_message_popover_header_max_width);width:var(--_ui5-v2-14-0-rc-7_value_state_message_popover_header_width)}[ui5-responsive-popover] .ui5-valuestatemessage-header{padding:var(--_ui5-v2-14-0-rc-7_value_state_header_padding);border:var(--_ui5-v2-14-0-rc-7_value_state_header_border);border-bottom:var(--_ui5-v2-14-0-rc-7_value_state_header_border_bottom);flex-grow:1;position:relative}.ui5-valuestatemessage--success{background:var(--sapSuccessBackground)}.ui5-valuestatemessage--warning{background:var(--sapWarningBackground)}.ui5-valuestatemessage--error{background:var(--sapErrorBackground)}.ui5-valuestatemessage--information{background:var(--sapInformationBackground)}.ui5-responsive-popover-header:focus{outline-offset:var(--_ui5-v2-14-0-rc-7_value_state_header_offset);outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor)}.ui5-valuestatemessage-popover::part(header),.ui5-valuestatemessage-popover::part(content){padding:0}.ui5-valuestatemessage-popover::part(header),.ui5-valuestatemessage-popover::part(footer){min-height:0}.ui5-valuestatemessage-popover::part(header),.ui5-popover-with-value-state-header::part(header),.ui5-popover-with-value-state-header-phone::part(header){margin-bottom:0}.ui5-popover-with-value-state-header-phone .ui5-valuestatemessage-root{padding:var(--_ui5-v2-14-0-rc-7_value_state_message_padding_phone);width:100%}.ui5-popover-with-value-state-header-phone .ui5-input-value-state-message-icon{left:var(--_ui5-v2-14-0-rc-7_value_state_message_icon_offset_phone)}.ui5-popover-with-value-state-header-phone .ui5-valuestatemessage-header{position:relative;flex:none;top:0;left:0}.ui5-popover-with-value-state-header-phone::part(content){padding:0;overflow:hidden;display:flex;flex-direction:column}.ui5-popover-with-value-state-header-phone [ui5-list]{overflow:auto}[ui5-responsive-popover] .ui5-valuestatemessage--error{box-shadow:var(--_ui5-v2-14-0-rc-7_value_state_header_box_shadow_error)}[ui5-responsive-popover] .ui5-valuestatemessage--information{box-shadow:var(--_ui5-v2-14-0-rc-7_value_state_header_box_shadow_information)}[ui5-responsive-popover] .ui5-valuestatemessage--success{box-shadow:var(--_ui5-v2-14-0-rc-7_value_state_header_box_shadow_success)}[ui5-responsive-popover] .ui5-valuestatemessage--warning{box-shadow:var(--_ui5-v2-14-0-rc-7_value_state_header_box_shadow_warning)}[ui5-responsive-popover].ui5-popover-with-value-state-header .ui5-valuestatemessage-root:has(+[ui5-list]:empty){box-shadow:none}
156
+ `;
157
+
158
+ Icons.p("@" + "ui5" + "/" + "webcomponents-theming", "sap_horizon", async () => parametersBundle_css.defaultThemeBase);
159
+ Icons.p("@" + "u" + "i" + "5" + "/" + "w" + "e" + "b" + "c" + "o" + "m" + "p" + "o" + "n" + "e" + "n" + "t" + "s", "sap_horizon", async () => i18nDefaults.defaultTheme);
160
+ var SelectPopoverCss = `.ui5-select-popover::part(content),.ui5-select-popover::part(header){padding:0}.ui5-select-popover .ui5-responsive-popover-header .row{justify-content:flex-start}
161
+ `;
162
+
163
+ var __decorate$5 = (this && this.__decorate) || function (decorators, target, key, desc) {
164
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
165
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
166
+ 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;
167
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
168
+ };
169
+ var Select_1;
170
+ /**
171
+ * @class
172
+ *
173
+ * ### Overview
174
+ *
175
+ * The `ui5-select` component is used to create a drop-down list.
176
+ *
177
+ * ### Usage
178
+ *
179
+ * There are two main usages of the `ui5-select>`.
180
+ *
181
+ * - With Option (`ui5-option`) web component:
182
+ *
183
+ * The available options of the Select are defined by using the Option component.
184
+ * The Option comes with predefined design and layout, including `icon`, `text` and `additional-text`.
185
+ *
186
+ * - With OptionCustom (`ui5-option-custom`) web component.
187
+ *
188
+ * Options with custom content are defined by using the OptionCustom component.
189
+ * The OptionCustom component comes with no predefined layout and it expects consumers to define it.
190
+ *
191
+ * ### Selection
192
+ *
193
+ * The options can be selected via user interaction (click or with the use of the Space and Enter keys)
194
+ * and programmatically - the Select component supports two distinct selection APIs, though mixing them is not supported:
195
+ * - The "value" property of the Select component
196
+ * - The "selected" property on individual options
197
+ *
198
+ * **Note:** If the "value" property is set but does not match any option,
199
+ * no option will be selected and the Select component will be displayed as empty.
200
+ *
201
+ * **Note:** when both "value" and "selected" are both used (although discouraged),
202
+ * the "value" property will take precedence.
203
+ *
204
+ * ### Keyboard Handling
205
+ *
206
+ * The `ui5-select` provides advanced keyboard handling.
207
+ *
208
+ * - [F4] / [Alt] + [Up] / [Alt] + [Down] / [Space] or [Enter] - Opens/closes the drop-down.
209
+ * - [Up] or [Down] - If the drop-down is closed - changes selection to the next or the previous option. If the drop-down is opened - moves focus to the next or the previous option.
210
+ * - [Space], [Enter] - If the drop-down is opened - selects the focused option.
211
+ * - [Escape] - Closes the drop-down without changing the selection.
212
+ * - [Home] - Navigates to first option
213
+ * - [End] - Navigates to the last option
214
+ *
215
+ * ### ES6 Module Import
216
+ *
217
+ * `import "sap/ushell/gen/ui5/webcomponents/dist/Select";`
218
+ *
219
+ * `import "sap/ushell/gen/ui5/webcomponents/dist/Option";`
220
+ * `import "sap/ushell/gen/ui5/webcomponents/dist/OptionCustom";`
221
+ * @constructor
222
+ * @extends UI5Element
223
+ * @public
224
+ * @csspart popover - Used to style the popover element
225
+ * @since 0.8.0
226
+ */
227
+ let Select = Select_1 = class Select extends webcomponentsBase.b {
228
+ constructor() {
229
+ super(...arguments);
230
+ /**
231
+ * Defines whether the component is in disabled state.
232
+ *
233
+ * **Note:** A disabled component is noninteractive.
234
+ * @default false
235
+ * @public
236
+ */
237
+ this.disabled = false;
238
+ /**
239
+ * Defines the value state of the component.
240
+ * @default "None"
241
+ * @public
242
+ */
243
+ this.valueState = "None";
244
+ /**
245
+ * Defines whether the component is required.
246
+ * @since 1.0.0-rc.9
247
+ * @default false
248
+ * @public
249
+ */
250
+ this.required = false;
251
+ /**
252
+ * Defines whether the component is read-only.
253
+ *
254
+ * **Note:** A read-only component is not editable,
255
+ * but still provides visual feedback upon user interaction.
256
+ * @default false
257
+ * @since 1.21.0
258
+ * @public
259
+ */
260
+ this.readonly = false;
261
+ /**
262
+ * @private
263
+ */
264
+ this._iconPressed = false;
265
+ /**
266
+ * @private
267
+ */
268
+ this.opened = false;
269
+ /**
270
+ * @private
271
+ */
272
+ this._listWidth = 0;
273
+ /**
274
+ * @private
275
+ */
276
+ this.focused = false;
277
+ this._selectedIndexBeforeOpen = -1;
278
+ this._escapePressed = false;
279
+ this._lastSelectedOption = null;
280
+ this._typedChars = "";
281
+ }
282
+ ;
283
+ get formValidityMessage() {
284
+ return Select_1.i18nBundle.getText(i18nDefaults.FORM_SELECTABLE_REQUIRED);
285
+ }
286
+ get formValidity() {
287
+ return { valueMissing: this.required && (this.selectedOption?.getAttribute("value") === "") };
288
+ }
289
+ async formElementAnchor() {
290
+ return this.getFocusDomRefAsync();
291
+ }
292
+ get formFormattedValue() {
293
+ if (this._valueStorage !== undefined) {
294
+ return this._valueStorage;
295
+ }
296
+ const selectedOption = this.selectedOption;
297
+ if (selectedOption) {
298
+ if ("value" in selectedOption && selectedOption.value !== undefined) {
299
+ return selectedOption.value;
300
+ }
301
+ return selectedOption.hasAttribute("value") ? selectedOption.getAttribute("value") : selectedOption.textContent;
302
+ }
303
+ return "";
304
+ }
305
+ onEnterDOM() {
306
+ BusyIndicator.y(this, this._updateAssociatedLabelsTexts.bind(this));
307
+ }
308
+ onExitDOM() {
309
+ BusyIndicator.T(this);
310
+ }
311
+ onBeforeRendering() {
312
+ this._applySelection();
313
+ this.style.setProperty(Icons.d$1("--_ui5-input-icons-count"), `${this.iconsCount}`);
314
+ }
315
+ onAfterRendering() {
316
+ this.toggleValueStatePopover(this.shouldOpenValueStateMessagePopover);
317
+ if (this._isPickerOpen) {
318
+ if (!this._listWidth) {
319
+ this._listWidth = this.responsivePopover.offsetWidth;
320
+ }
321
+ }
322
+ }
323
+ /**
324
+ * Selects an option, based on the Select's "value" property,
325
+ * or the options' "selected" property.
326
+ */
327
+ _applySelection() {
328
+ // Flow 1: "value" has not been used
329
+ if (this._valueStorage === undefined) {
330
+ this._applyAutoSelection();
331
+ return;
332
+ }
333
+ // Flow 2: "value" has been used - select the option by value or apply auto selection
334
+ this._applySelectionByValue(this._valueStorage);
335
+ }
336
+ /**
337
+ * Selects an option by given value.
338
+ */
339
+ _applySelectionByValue(value) {
340
+ if (value !== (this.selectedOption?.value || this.selectedOption?.textContent)) {
341
+ const options = Array.from(this.children);
342
+ options.forEach(option => {
343
+ option.selected = !!((option.getAttribute("value") || option.textContent) === value);
344
+ });
345
+ }
346
+ }
347
+ /**
348
+ * Selects the first option if no option is selected,
349
+ * or selects the last option if multiple options are selected.
350
+ */
351
+ _applyAutoSelection() {
352
+ let selectedIndex = this.options.findLastIndex(option => option.selected);
353
+ selectedIndex = selectedIndex === -1 ? 0 : selectedIndex;
354
+ for (let i = 0; i < this.options.length; i++) {
355
+ this.options[i].selected = selectedIndex === i;
356
+ if (selectedIndex === i) {
357
+ break;
358
+ }
359
+ }
360
+ }
361
+ /**
362
+ * Sets value by given option.
363
+ */
364
+ _setValueByOption(option) {
365
+ this.value = option.value || option.textContent || "";
366
+ }
367
+ _applyFocus() {
368
+ this.focus();
369
+ }
370
+ _onfocusin() {
371
+ this.focused = true;
372
+ }
373
+ _onfocusout() {
374
+ this.focused = false;
375
+ }
376
+ get _isPickerOpen() {
377
+ return !!this.responsivePopover && this.responsivePopover.open;
378
+ }
379
+ _respPopover() {
380
+ return this.shadowRoot.querySelector("[ui5-responsive-popover]");
381
+ }
382
+ /**
383
+ * Defines the value of the component:
384
+ *
385
+ * - when get - returns the value of the component or the value/text content of the selected option.
386
+ * - when set - selects the option with matching `value` property or text content.
387
+ *
388
+ * **Note:** Use either the Select's value or the Options' selected property.
389
+ * Mixed usage could result in unexpected behavior.
390
+ *
391
+ * **Note:** If the given value does not match any existing option,
392
+ * no option will be selected and the Select component will be displayed as empty.
393
+ * @public
394
+ * @default ""
395
+ * @since 1.20.0
396
+ * @formProperty
397
+ * @formEvents change liveChange
398
+ */
399
+ set value(newValue) {
400
+ this._valueStorage = newValue;
401
+ }
402
+ get value() {
403
+ if (this._valueStorage !== undefined) {
404
+ return this._valueStorage;
405
+ }
406
+ return this.selectedOption?.value === undefined ? (this.selectedOption?.textContent || "") : this.selectedOption?.value;
407
+ }
408
+ get _selectedIndex() {
409
+ return this.options.findIndex(option => option.selected);
410
+ }
411
+ /**
412
+ * Currently selected `ui5-option` element.
413
+ * @public
414
+ * @default undefined
415
+ */
416
+ get selectedOption() {
417
+ return this.options.find(option => option.selected);
418
+ }
419
+ get text() {
420
+ return this.selectedOption?.effectiveDisplayText;
421
+ }
422
+ _toggleRespPopover() {
423
+ if (this.disabled || this.readonly) {
424
+ return;
425
+ }
426
+ this._iconPressed = true;
427
+ this.responsivePopover = this._respPopover();
428
+ if (this._isPickerOpen) {
429
+ this.responsivePopover.open = false;
430
+ }
431
+ else {
432
+ this.responsivePopover.opener = this;
433
+ this.responsivePopover.open = true;
434
+ }
435
+ }
436
+ _onkeydown(e) {
437
+ const isTab = (webcomponentsBase.x(e) || webcomponentsBase.V(e));
438
+ if (isTab && this._isPickerOpen) {
439
+ this.responsivePopover.open = false;
440
+ }
441
+ else if (webcomponentsBase.ko(e)) {
442
+ e.preventDefault();
443
+ this._toggleRespPopover();
444
+ }
445
+ else if (webcomponentsBase.A(e)) {
446
+ e.preventDefault();
447
+ }
448
+ else if (webcomponentsBase.m$2(e) && this._isPickerOpen) {
449
+ this._escapePressed = true;
450
+ }
451
+ else if (webcomponentsBase.M(e)) {
452
+ this._handleHomeKey(e);
453
+ }
454
+ else if (webcomponentsBase.n(e)) {
455
+ this._handleEndKey(e);
456
+ }
457
+ else if (webcomponentsBase.b$1(e)) {
458
+ this._handleSelectionChange();
459
+ }
460
+ else if (webcomponentsBase.P(e) || webcomponentsBase._(e)) {
461
+ this._handleArrowNavigation(e);
462
+ }
463
+ }
464
+ _handleKeyboardNavigation(e) {
465
+ if (webcomponentsBase.b$1(e) || this.readonly) {
466
+ return;
467
+ }
468
+ const typedCharacter = e.key.toLowerCase();
469
+ this._typedChars += typedCharacter;
470
+ // We check if we have more than one characters and they are all duplicate, we set the
471
+ // text to be the last input character (typedCharacter). If not, we set the text to be
472
+ // the whole input string.
473
+ const text = (/^(.)\1+$/i).test(this._typedChars) ? typedCharacter : this._typedChars;
474
+ clearTimeout(this._typingTimeoutID);
475
+ this._typingTimeoutID = setTimeout(() => {
476
+ this._typedChars = "";
477
+ this._typingTimeoutID = -1;
478
+ }, 1000);
479
+ this._selectTypedItem(text);
480
+ }
481
+ _selectTypedItem(text) {
482
+ const currentIndex = this._selectedIndex;
483
+ const itemToSelect = this._searchNextItemByText(text);
484
+ if (itemToSelect) {
485
+ const nextIndex = this.options.indexOf(itemToSelect);
486
+ this._changeSelectedItem(this._selectedIndex, nextIndex);
487
+ if (currentIndex !== this._selectedIndex) {
488
+ this.itemSelectionAnnounce();
489
+ this._scrollSelectedItem();
490
+ }
491
+ }
492
+ }
493
+ _searchNextItemByText(text) {
494
+ let orderedOptions = this.options.slice(0);
495
+ const optionsAfterSelected = orderedOptions.splice(this._selectedIndex + 1, orderedOptions.length - this._selectedIndex);
496
+ const optionsBeforeSelected = orderedOptions.splice(0, orderedOptions.length - 1);
497
+ orderedOptions = optionsAfterSelected.concat(optionsBeforeSelected);
498
+ return orderedOptions.find(option => option.effectiveDisplayText.toLowerCase().startsWith(text));
499
+ }
500
+ _handleHomeKey(e) {
501
+ e.preventDefault();
502
+ if (this.readonly) {
503
+ return;
504
+ }
505
+ this._changeSelectedItem(this._selectedIndex, 0);
506
+ }
507
+ _handleEndKey(e) {
508
+ e.preventDefault();
509
+ if (this.readonly) {
510
+ return;
511
+ }
512
+ const lastIndex = this.options.length - 1;
513
+ this._changeSelectedItem(this._selectedIndex, lastIndex);
514
+ }
515
+ _onkeyup(e) {
516
+ if (webcomponentsBase.A(e)) {
517
+ if (this._isPickerOpen) {
518
+ this._handleSelectionChange();
519
+ }
520
+ else {
521
+ this._toggleRespPopover();
522
+ }
523
+ }
524
+ }
525
+ _getItemIndex(item) {
526
+ return this.options.indexOf(item);
527
+ }
528
+ _select(index) {
529
+ const selectedIndex = this._selectedIndex;
530
+ if (index < 0 || index >= this.options.length || this.options.length === 0) {
531
+ return;
532
+ }
533
+ if (this.options[selectedIndex]) {
534
+ this.options[selectedIndex].selected = false;
535
+ }
536
+ const selectedOption = this.options[index];
537
+ if (selectedIndex !== index) {
538
+ this.fireDecoratorEvent("live-change", { selectedOption });
539
+ }
540
+ selectedOption.selected = true;
541
+ if (this._valueStorage !== undefined) {
542
+ this._setValueByOption(selectedOption);
543
+ }
544
+ }
545
+ /**
546
+ * The user clicked on an item from the list
547
+ * @private
548
+ */
549
+ _handleItemPress(e) {
550
+ const listItem = e.detail.item;
551
+ const selectedItemIndex = this._getItemIndex(listItem);
552
+ this._handleSelectionChange(selectedItemIndex);
553
+ }
554
+ _itemMousedown(e) {
555
+ // prevent actual focus of items
556
+ e.preventDefault();
557
+ }
558
+ _onclick() {
559
+ this.getFocusDomRef().focus();
560
+ this._toggleRespPopover();
561
+ }
562
+ /**
563
+ * The user selected an item with Enter or Space
564
+ * @private
565
+ */
566
+ _handleSelectionChange(index = this._selectedIndex) {
567
+ this._typedChars = "";
568
+ this._select(index);
569
+ this._toggleRespPopover();
570
+ }
571
+ _scrollSelectedItem() {
572
+ if (this._isPickerOpen) {
573
+ const itemRef = this._currentlySelectedOption?.getDomRef();
574
+ if (itemRef) {
575
+ itemRef.scrollIntoView({
576
+ behavior: "auto",
577
+ block: "nearest",
578
+ inline: "nearest",
579
+ });
580
+ }
581
+ }
582
+ }
583
+ _handleArrowNavigation(e) {
584
+ e.preventDefault();
585
+ if (this.readonly) {
586
+ return;
587
+ }
588
+ let nextIndex = -1;
589
+ const currentIndex = this._selectedIndex;
590
+ const isDownKey = webcomponentsBase._(e);
591
+ if (isDownKey) {
592
+ nextIndex = this._getNextOptionIndex();
593
+ }
594
+ else {
595
+ nextIndex = this._getPreviousOptionIndex();
596
+ }
597
+ this._changeSelectedItem(this._selectedIndex, nextIndex);
598
+ if (currentIndex !== this._selectedIndex) {
599
+ // Announce new item even if picker is opened.
600
+ // The aria-activedescendents attribute can't be used,
601
+ // because listitem elements are in different shadow dom
602
+ this.itemSelectionAnnounce();
603
+ this._scrollSelectedItem();
604
+ }
605
+ }
606
+ _changeSelectedItem(oldIndex, newIndex) {
607
+ const options = this.options;
608
+ // Normalize: first navigation with Up when nothing selected -> last item
609
+ if (oldIndex === -1 && newIndex < 0 && options.length) {
610
+ newIndex = options.length - 1;
611
+ }
612
+ // Abort on invalid target
613
+ if (newIndex < 0 || newIndex >= options.length) {
614
+ return;
615
+ }
616
+ const previousOption = options[oldIndex];
617
+ const nextOption = options[newIndex];
618
+ if (previousOption === nextOption) {
619
+ return;
620
+ }
621
+ if (previousOption) {
622
+ previousOption.selected = false;
623
+ previousOption.focused = false;
624
+ }
625
+ nextOption.selected = true;
626
+ nextOption.focused = true;
627
+ if (this._valueStorage !== undefined) {
628
+ this._setValueByOption(nextOption);
629
+ }
630
+ this.fireDecoratorEvent("live-change", { selectedOption: nextOption });
631
+ if (!this._isPickerOpen) {
632
+ // arrow pressed on closed picker - do selection change
633
+ this._fireChangeEvent(nextOption);
634
+ }
635
+ }
636
+ _getNextOptionIndex() {
637
+ return this._selectedIndex === (this.options.length - 1) ? this._selectedIndex : (this._selectedIndex + 1);
638
+ }
639
+ _getPreviousOptionIndex() {
640
+ return this._selectedIndex === 0 ? this._selectedIndex : (this._selectedIndex - 1);
641
+ }
642
+ _beforeOpen() {
643
+ this._selectedIndexBeforeOpen = this._selectedIndex;
644
+ this._lastSelectedOption = this.options[this._selectedIndex];
645
+ }
646
+ _afterOpen() {
647
+ this.opened = true;
648
+ this.fireDecoratorEvent("open");
649
+ this.itemSelectionAnnounce();
650
+ this._scrollSelectedItem();
651
+ this._applyFocusToSelectedItem();
652
+ }
653
+ _applyFocusToSelectedItem() {
654
+ this.options.forEach(option => {
655
+ option.focused = option.selected;
656
+ });
657
+ }
658
+ _afterClose() {
659
+ this.opened = false;
660
+ this._iconPressed = false;
661
+ this._listWidth = 0;
662
+ if (this._escapePressed) {
663
+ this._select(this._selectedIndexBeforeOpen);
664
+ this._escapePressed = false;
665
+ }
666
+ else if (this._lastSelectedOption !== this.options[this._selectedIndex]) {
667
+ this._fireChangeEvent(this.options[this._selectedIndex]);
668
+ this._lastSelectedOption = this.options[this._selectedIndex];
669
+ }
670
+ this.fireDecoratorEvent("close");
671
+ }
672
+ get hasCustomLabel() {
673
+ return !!this.label.length;
674
+ }
675
+ _fireChangeEvent(selectedOption) {
676
+ const changePrevented = !this.fireDecoratorEvent("change", { selectedOption });
677
+ // Angular two way data binding
678
+ this.fireDecoratorEvent("selected-item-changed");
679
+ // Fire input event for Vue.js two-way binding
680
+ this.fireDecoratorEvent("input");
681
+ if (changePrevented) {
682
+ this._select(this._selectedIndexBeforeOpen);
683
+ }
684
+ }
685
+ get valueStateTextMappings() {
686
+ return {
687
+ [ValueState.o.Positive]: Select_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_SUCCESS),
688
+ [ValueState.o.Information]: Select_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_INFORMATION),
689
+ [ValueState.o.Negative]: Select_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_ERROR),
690
+ [ValueState.o.Critical]: Select_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_WARNING),
691
+ };
692
+ }
693
+ get valueStateTypeMappings() {
694
+ return {
695
+ [ValueState.o.Positive]: Select_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_TYPE_SUCCESS),
696
+ [ValueState.o.Information]: Select_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_TYPE_INFORMATION),
697
+ [ValueState.o.Negative]: Select_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_TYPE_ERROR),
698
+ [ValueState.o.Critical]: Select_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_TYPE_WARNING),
699
+ };
700
+ }
701
+ get valueStateText() {
702
+ let valueStateText;
703
+ if (this.shouldDisplayDefaultValueStateMessage) {
704
+ valueStateText = this.valueStateDefaultText;
705
+ }
706
+ else {
707
+ valueStateText = this.valueStateMessage.map(el => el.textContent).join(" ");
708
+ }
709
+ return `${this.valueStateTypeText} ${valueStateText}`;
710
+ }
711
+ get valueStateDefaultText() {
712
+ return this.valueState !== ValueState.o.None ? this.valueStateTextMappings[this.valueState] : "";
713
+ }
714
+ get valueStateTypeText() {
715
+ return this.valueState !== ValueState.o.None ? this.valueStateTypeMappings[this.valueState] : "";
716
+ }
717
+ get hasValueState() {
718
+ return this.valueState !== ValueState.o.None;
719
+ }
720
+ get valueStateTextId() {
721
+ return this.hasValueState ? `${this._id}-valueStateDesc` : undefined;
722
+ }
723
+ get responsivePopoverId() {
724
+ return `${this._id}-popover`;
725
+ }
726
+ get isDisabled() {
727
+ return this.disabled || undefined;
728
+ }
729
+ get _headerTitleText() {
730
+ return Select_1.i18nBundle.getText(i18nDefaults.INPUT_SUGGESTIONS_TITLE);
731
+ }
732
+ get _currentlySelectedOption() {
733
+ return this.options[this._selectedIndex];
734
+ }
735
+ get _effectiveTabIndex() {
736
+ return this.disabled
737
+ || (this.responsivePopover // Handles focus on Tab/Shift + Tab when the popover is opened
738
+ && this.responsivePopover.open) ? -1 : 0;
739
+ }
740
+ /**
741
+ * This method is relevant for sap_horizon theme only
742
+ */
743
+ get _valueStateMessageInputIcon() {
744
+ const iconPerValueState = {
745
+ Negative: "error",
746
+ Critical: "alert",
747
+ Positive: "sys-enter-2",
748
+ Information: "information",
749
+ };
750
+ return this.valueState !== ValueState.o.None ? iconPerValueState[this.valueState] : "";
751
+ }
752
+ get iconsCount() {
753
+ return this.selectedOptionIcon ? 2 : 1;
754
+ }
755
+ get classes() {
756
+ return {
757
+ popoverValueState: {
758
+ "ui5-valuestatemessage-root": true,
759
+ "ui5-valuestatemessage--success": this.valueState === ValueState.o.Positive,
760
+ "ui5-valuestatemessage--error": this.valueState === ValueState.o.Negative,
761
+ "ui5-valuestatemessage--warning": this.valueState === ValueState.o.Critical,
762
+ "ui5-valuestatemessage--information": this.valueState === ValueState.o.Information,
763
+ },
764
+ popover: {
765
+ "ui5-select-popover-valuestate": this.hasValueState,
766
+ },
767
+ };
768
+ }
769
+ get styles() {
770
+ return {
771
+ popoverHeader: {
772
+ "max-width": `${this.offsetWidth}px`,
773
+ },
774
+ responsivePopoverHeader: {
775
+ "display": this.options.length && this._listWidth === 0 ? "none" : "inline-block",
776
+ "width": `${this.options.length ? this._listWidth : this.offsetWidth}px`,
777
+ },
778
+ responsivePopover: {
779
+ "min-width": `${this.offsetWidth}px`,
780
+ },
781
+ };
782
+ }
783
+ get ariaLabelText() {
784
+ return BusyIndicator.A(this) || BusyIndicator.M(this);
785
+ }
786
+ get shouldDisplayDefaultValueStateMessage() {
787
+ return !this.valueStateMessage.length && this.hasValueStateText;
788
+ }
789
+ get hasValueStateText() {
790
+ return this.hasValueState && this.valueState !== ValueState.o.Positive;
791
+ }
792
+ get shouldOpenValueStateMessagePopover() {
793
+ return this.focused && this.hasValueStateText && !this._iconPressed
794
+ && !this._isPickerOpen && !this._isPhone;
795
+ }
796
+ get _ariaRoleDescription() {
797
+ return Select_1.i18nBundle.getText(i18nDefaults.SELECT_ROLE_DESCRIPTION);
798
+ }
799
+ get _isPhone() {
800
+ return Icons.d();
801
+ }
802
+ itemSelectionAnnounce() {
803
+ let text;
804
+ const optionsCount = this.options.length;
805
+ const itemPositionText = Select_1.i18nBundle.getText(i18nDefaults.LIST_ITEM_POSITION, this._selectedIndex + 1, optionsCount);
806
+ if (this.focused && this._currentlySelectedOption) {
807
+ text = `${this._currentlySelectedOption.textContent} ${this._isPickerOpen ? itemPositionText : ""}`;
808
+ p(text);
809
+ }
810
+ }
811
+ openValueStatePopover() {
812
+ this.valueStatePopover = this._getPopover();
813
+ if (this.valueStatePopover) {
814
+ this.valueStatePopover.opener = this;
815
+ this.valueStatePopover.open = true;
816
+ }
817
+ }
818
+ closeValueStatePopover() {
819
+ this.valueStatePopover && (this.valueStatePopover.open = false);
820
+ }
821
+ toggleValueStatePopover(open) {
822
+ if (open) {
823
+ this.openValueStatePopover();
824
+ }
825
+ else {
826
+ this.closeValueStatePopover();
827
+ }
828
+ }
829
+ get selectedOptionIcon() {
830
+ return this.selectedOption && this.selectedOption.icon;
831
+ }
832
+ get ariaDescriptionText() {
833
+ return this._associatedDescriptionRefTexts || BusyIndicator.L(this);
834
+ }
835
+ get ariaDescriptionTextId() {
836
+ return this.ariaDescriptionText ? "accessibleDescription" : "";
837
+ }
838
+ get ariaDescribedByIds() {
839
+ const ids = [this.valueStateTextId, this.ariaDescriptionTextId].filter(Boolean);
840
+ return ids.length ? ids.join(" ") : undefined;
841
+ }
842
+ _updateAssociatedLabelsTexts() {
843
+ this._associatedDescriptionRefTexts = BusyIndicator.p(this);
844
+ }
845
+ _getPopover() {
846
+ return this.shadowRoot.querySelector("[ui5-popover]");
847
+ }
848
+ };
849
+ __decorate$5([
850
+ webcomponentsBase.s({ type: Boolean })
851
+ ], Select.prototype, "disabled", void 0);
852
+ __decorate$5([
853
+ webcomponentsBase.s()
854
+ ], Select.prototype, "icon", void 0);
855
+ __decorate$5([
856
+ webcomponentsBase.s()
857
+ ], Select.prototype, "name", void 0);
858
+ __decorate$5([
859
+ webcomponentsBase.s()
860
+ ], Select.prototype, "valueState", void 0);
861
+ __decorate$5([
862
+ webcomponentsBase.s({ type: Boolean })
863
+ ], Select.prototype, "required", void 0);
864
+ __decorate$5([
865
+ webcomponentsBase.s({ type: Boolean })
866
+ ], Select.prototype, "readonly", void 0);
867
+ __decorate$5([
868
+ webcomponentsBase.s()
869
+ ], Select.prototype, "accessibleName", void 0);
870
+ __decorate$5([
871
+ webcomponentsBase.s()
872
+ ], Select.prototype, "accessibleNameRef", void 0);
873
+ __decorate$5([
874
+ webcomponentsBase.s()
875
+ ], Select.prototype, "accessibleDescription", void 0);
876
+ __decorate$5([
877
+ webcomponentsBase.s()
878
+ ], Select.prototype, "accessibleDescriptionRef", void 0);
879
+ __decorate$5([
880
+ webcomponentsBase.s()
881
+ ], Select.prototype, "tooltip", void 0);
882
+ __decorate$5([
883
+ webcomponentsBase.s({ type: String, noAttribute: true })
884
+ ], Select.prototype, "_associatedDescriptionRefTexts", void 0);
885
+ __decorate$5([
886
+ webcomponentsBase.s({ type: Boolean, noAttribute: true })
887
+ ], Select.prototype, "_iconPressed", void 0);
888
+ __decorate$5([
889
+ webcomponentsBase.s({ type: Boolean })
890
+ ], Select.prototype, "opened", void 0);
891
+ __decorate$5([
892
+ webcomponentsBase.s({ type: Number, noAttribute: true })
893
+ ], Select.prototype, "_listWidth", void 0);
894
+ __decorate$5([
895
+ webcomponentsBase.s({ type: Boolean })
896
+ ], Select.prototype, "focused", void 0);
897
+ __decorate$5([
898
+ webcomponentsBase.d({ "default": true, type: HTMLElement, invalidateOnChildChange: true })
899
+ ], Select.prototype, "options", void 0);
900
+ __decorate$5([
901
+ webcomponentsBase.d()
902
+ ], Select.prototype, "valueStateMessage", void 0);
903
+ __decorate$5([
904
+ webcomponentsBase.d()
905
+ ], Select.prototype, "label", void 0);
906
+ __decorate$5([
907
+ webcomponentsBase.s()
908
+ ], Select.prototype, "value", null);
909
+ __decorate$5([
910
+ i18nDefaults.i("sap/ushell/gen/ui5/webcomponents")
911
+ ], Select, "i18nBundle", void 0);
912
+ Select = Select_1 = __decorate$5([
913
+ webcomponentsBase.m({
914
+ tag: "ui5-select",
915
+ languageAware: true,
916
+ formAssociated: true,
917
+ renderer: parametersBundle_css.y,
918
+ template: SelectTemplate,
919
+ styles: [
920
+ selectCss,
921
+ ResponsivePopoverCommonCss,
922
+ ValueStateMessageCss,
923
+ SelectPopoverCss,
924
+ ],
925
+ dependencies: [
926
+ Label,
927
+ ResponsivePopover.ResponsivePopover,
928
+ ResponsivePopover.Popover,
929
+ List.List,
930
+ Icon.Icon,
931
+ Button.Button,
932
+ ],
933
+ })
934
+ /**
935
+ * Fired when the selected option changes.
936
+ * @param {IOption} selectedOption the selected option.
937
+ * @public
938
+ */
939
+ ,
940
+ eventStrict.l("change", {
941
+ bubbles: true,
942
+ cancelable: true,
943
+ })
944
+ /**
945
+ * Fired when the user navigates through the options, but the selection is not finalized,
946
+ * or when pressing the ESC key to revert the current selection.
947
+ * @param {IOption} selectedOption the selected option.
948
+ * @public
949
+ * @since 1.17.0
950
+ */
951
+ ,
952
+ eventStrict.l("live-change", {
953
+ bubbles: true,
954
+ })
955
+ /**
956
+ * Fired after the component's dropdown menu opens.
957
+ * @public
958
+ */
959
+ ,
960
+ eventStrict.l("open")
961
+ /**
962
+ * Fired after the component's dropdown menu closes.
963
+ * @public
964
+ */
965
+ ,
966
+ eventStrict.l("close")
967
+ /**
968
+ * Fired to make Angular two way data binding work properly.
969
+ * @private
970
+ */
971
+ ,
972
+ eventStrict.l("selected-item-changed", {
973
+ bubbles: true,
974
+ })
975
+ /**
976
+ * Fired to make Vue.js two way data binding work properly.
977
+ * @private
978
+ */
979
+ ,
980
+ eventStrict.l("input", {
981
+ bubbles: true,
982
+ })
983
+ ], Select);
984
+ Select.define();
985
+ var Select$1 = Select;
986
+
987
+ function SearchFieldTemplate(options) {
988
+ return (!options?.forceExpanded && this.collapsed ? (parametersBundle_css.jsx(Button.Button, { class: "ui5-shell-search-field-button", icon: slimArrowDown.search, design: Button.ButtonDesign.Transparent, "data-sap-focus-ref": true, onClick: this._handleSearchIconPress, tooltip: this._effectiveIconTooltip, accessibleName: this._effectiveIconTooltip, accessibilityAttributes: this._searchButtonAccessibilityAttributes })) : (parametersBundle_css.jsx("div", { class: "ui5-search-field-root", role: "search", onFocusOut: this._onFocusOutSearch, children: parametersBundle_css.jsxs("div", { class: "ui5-search-field-content", children: [this.scopes?.length ? (parametersBundle_css.jsxs(parametersBundle_css.Fragment, { children: [parametersBundle_css.jsx(Select$1, { onChange: this._handleScopeChange, class: "sapUiSizeCompact ui5-search-field-select", accessibleName: this._translations.scope, tooltip: this._translations.scope, children: this.scopes.map(scopeOption => (parametersBundle_css.jsx(Option$1, { selected: scopeOption.selected, "data-ui5-stable": scopeOption.stableDomRef, ref: this.captureRef.bind(scopeOption), children: scopeOption.text }))) }), parametersBundle_css.jsx("div", { class: "ui5-search-field-separator" })] })) : this.filterButton?.length ? (parametersBundle_css.jsxs(parametersBundle_css.Fragment, { children: [parametersBundle_css.jsx("div", { class: "ui5-filter-wrapper", style: "display: contents", children: parametersBundle_css.jsx("slot", { name: "filterButton" }) }), parametersBundle_css.jsx("div", { class: "ui5-search-field-separator" })] })) : null, parametersBundle_css.jsx("input", { class: "ui5-search-field-inner-input", role: "searchbox", "aria-description": this.accessibleDescription, "aria-label": this.accessibleName || this._translations.searchFieldAriaLabel, value: this.value, placeholder: this.placeholder, "data-sap-focus-ref": true, onInput: this._handleInput, onFocusIn: this._onfocusin, onFocusOut: this._onfocusout, onKeyDown: this._onkeydown, onClick: this._handleInnerClick }), this._effectiveShowClearIcon &&
989
+ parametersBundle_css.jsx(Icon.Icon, { class: "ui5-shell-search-field-icon", name: information.decline, showTooltip: true, accessibleName: this._translations.clearIcon, onClick: this._handleClear }), parametersBundle_css.jsx(Icon.Icon, { class: {
990
+ "ui5-shell-search-field-icon": true,
991
+ "ui5-shell-search-field-search-icon": this._isSearchIcon,
992
+ }, name: slimArrowDown.search, showTooltip: true, accessibleName: this._effectiveIconTooltip, onClick: this._handleSearchIconPress })] }) })));
993
+ }
994
+
995
+ const f=(t,a,e,o)=>{webcomponentsBase.x(t)&&(e!==a.length-1?(t.stopImmediatePropagation(),t.preventDefault(),a[e+1].focus()):(o.closeValueState(),o.focusInput())),webcomponentsBase.V(t)&&(t.preventDefault(),t.stopImmediatePropagation(),e>0?a[e-1].focus():o.focusInput()),webcomponentsBase.P(t)&&(t.preventDefault(),t.stopImmediatePropagation(),o.isPopoverOpen()&&o.focusInput()),webcomponentsBase._(t)&&(t.preventDefault(),t.stopImmediatePropagation(),o.navigateToItem()),webcomponentsBase.m$2(t)&&(t.preventDefault(),t.stopImmediatePropagation());};
996
+
997
+ const n=t=>{let e=0;return (t.selectionStart||t.selectionStart===0)&&(e=t.selectionDirection==="backward"?t.selectionStart:t.selectionEnd),e},o=(t,e)=>{t.selectionStart?(t.focus(),t.setSelectionRange(e,e)):t.focus();};
998
+
999
+ /**
1000
+ * Different input types.
1001
+ * @public
1002
+ */
1003
+ var InputType;
1004
+ (function (InputType) {
1005
+ /**
1006
+ * Defines a one-line text input field:
1007
+ * @public
1008
+ */
1009
+ InputType["Text"] = "Text";
1010
+ /**
1011
+ * Used for input fields that must contain an e-mail address.
1012
+ * @public
1013
+ */
1014
+ InputType["Email"] = "Email";
1015
+ /**
1016
+ * Defines a numeric input field.
1017
+ * @public
1018
+ */
1019
+ InputType["Number"] = "Number";
1020
+ /**
1021
+ * Defines a password field.
1022
+ * @public
1023
+ */
1024
+ InputType["Password"] = "Password";
1025
+ /**
1026
+ * Used for input fields that should contain a telephone number.
1027
+ * @public
1028
+ */
1029
+ InputType["Tel"] = "Tel";
1030
+ /**
1031
+ * Used for input fields that should contain a URL address.
1032
+ * @public
1033
+ */
1034
+ InputType["URL"] = "URL";
1035
+ /**
1036
+ * Used for input fields that should contain a search term.
1037
+ * @since 2.0.0
1038
+ * @public
1039
+ */
1040
+ InputType["Search"] = "Search";
1041
+ })(InputType || (InputType = {}));
1042
+ var InputType$1 = InputType;
1043
+
1044
+ function InputPopoverTemplate(hooks) {
1045
+ const suggestionsList = hooks?.suggestionsList;
1046
+ return (parametersBundle_css.jsxs(parametersBundle_css.Fragment, { children: [this._effectiveShowSuggestions && this.Suggestions?.template.call(this, { suggestionsList, valueStateMessage, valueStateMessageInputIcon }), this.hasValueStateMessage &&
1047
+ parametersBundle_css.jsx(ResponsivePopover.Popover, { preventInitialFocus: true, preventFocusRestore: true, hideArrow: true, class: "ui5-valuestatemessage-popover", placement: "Bottom", tabindex: -1, horizontalAlign: this._valueStatePopoverHorizontalAlign, opener: this, open: this.valueStateOpen, onClose: this._handleValueStatePopoverAfterClose, children: parametersBundle_css.jsxs("div", { slot: "header", class: this.classes.popoverValueState, children: [parametersBundle_css.jsx(Icon.Icon, { class: "ui5-input-value-state-message-icon", name: valueStateMessageInputIcon.call(this) }), this.valueStateOpen && valueStateMessage.call(this)] }) })] }));
1048
+ }
1049
+ function valueStateMessage() {
1050
+ return (parametersBundle_css.jsx(parametersBundle_css.Fragment, { children: this.shouldDisplayDefaultValueStateMessage ? this.valueStateText : parametersBundle_css.jsx("slot", { name: "valueStateMessage" }) }));
1051
+ }
1052
+ function valueStateMessageInputIcon() {
1053
+ const iconPerValueState = {
1054
+ Negative: information$1.error,
1055
+ Critical: information$1.alert,
1056
+ Positive: sysEnter2.selectedAccount,
1057
+ Information: information$1.information,
1058
+ };
1059
+ return this.valueState !== ValueState.o.None ? iconPerValueState[this.valueState] : "";
1060
+ }
1061
+
1062
+ function InputTemplate(hooks) {
1063
+ const suggestionsList = hooks?.suggestionsList;
1064
+ const preContent = hooks?.preContent || defaultPreContent;
1065
+ const postContent = hooks?.postContent || defaultPostContent;
1066
+ return (parametersBundle_css.jsxs(parametersBundle_css.Fragment, { children: [parametersBundle_css.jsx("div", { class: "ui5-input-root ui5-input-focusable-element", part: "root", onFocusIn: this._onfocusin, onFocusOut: this._onfocusout, children: parametersBundle_css.jsxs("div", { class: "ui5-input-content", children: [preContent.call(this), parametersBundle_css.jsx("input", { id: "inner", part: "input", class: "ui5-input-inner", style: this.styles.innerInput, type: this.inputNativeType, "inner-input": true, "inner-input-with-icon": !!this.icon.length, disabled: this.disabled, readonly: this._readonly, value: this._innerValue, placeholder: this._placeholder, maxlength: this.maxlength, role: this.accInfo.role, enterkeyhint: this.hint, "aria-controls": this.accInfo.ariaControls, "aria-invalid": this.accInfo.ariaInvalid, "aria-haspopup": this.accInfo.ariaHasPopup, "aria-describedby": this.accInfo.ariaDescribedBy, "aria-roledescription": this.accInfo.ariaRoledescription, "aria-autocomplete": this.accInfo.ariaAutoComplete, "aria-expanded": this.accInfo.ariaExpanded, "aria-label": this.accInfo.ariaLabel, "aria-required": this.required, autocomplete: "off", "data-sap-focus-ref": true, step: this.nativeInputAttributes.step, min: this.nativeInputAttributes.min, max: this.nativeInputAttributes.max, onInput: this._handleNativeInput, onChange: this._handleChange, onSelect: this._handleSelect, onKeyDown: this._onkeydown, onKeyUp: this._onkeyup, onClick: this._click, onFocusIn: this.innerFocusIn }), this._effectiveShowClearIcon &&
1067
+ parametersBundle_css.jsx("div", { tabindex: -1, class: "ui5-input-clear-icon-wrapper inputIcon", part: "clear-icon-wrapper", onClick: this._clear, onMouseDown: this._iconMouseDown, children: parametersBundle_css.jsx(Icon.Icon, { part: "clear-icon", class: "ui5-input-clear-icon", name: information.decline, tabindex: -1, accessibleName: this.clearIconAccessibleName }) }), this.icon.length > 0 &&
1068
+ parametersBundle_css.jsx("div", { class: "ui5-input-icon-root", tabindex: -1, children: parametersBundle_css.jsx("slot", { name: "icon" }) }), parametersBundle_css.jsx("div", { class: "ui5-input-value-state-icon", children: this._valueStateInputIcon }), postContent.call(this), this._effectiveShowSuggestions &&
1069
+ parametersBundle_css.jsxs(parametersBundle_css.Fragment, { children: [parametersBundle_css.jsx("span", { id: "suggestionsText", class: "ui5-hidden-text", children: this.suggestionsText }), parametersBundle_css.jsx("span", { id: "selectionText", class: "ui5-hidden-text", "aria-live": "polite", role: "status" }), parametersBundle_css.jsx("span", { id: "suggestionsCount", class: "ui5-hidden-text", "aria-live": "polite", children: this.availableSuggestionsCount })] }), this.accInfo.ariaDescription &&
1070
+ parametersBundle_css.jsx("span", { id: "descr", class: "ui5-hidden-text", children: this.accInfo.ariaDescription }), this.accInfo.accessibleDescription &&
1071
+ parametersBundle_css.jsx("span", { id: "accessibleDescription", class: "ui5-hidden-text", children: this.accInfo.accessibleDescription }), this.linksInAriaValueStateHiddenText.length > 0 &&
1072
+ parametersBundle_css.jsx("span", { id: "hiddenText-value-state-link-shortcut", class: "ui5-hidden-text", children: this.valueStateLinksShortcutsTextAcc }), this.hasValueState &&
1073
+ parametersBundle_css.jsx("span", { id: "valueStateDesc", class: "ui5-hidden-text", children: this.ariaValueStateHiddenText })] }) }), InputPopoverTemplate.call(this, { suggestionsList })] }));
1074
+ }
1075
+ function defaultPreContent() { }
1076
+ function defaultPostContent() { }
1077
+
1078
+ const StartsWith = (value, items, propName) => items.filter(item => (item[propName] || "").toLowerCase().startsWith(value.toLowerCase()));
1079
+
1080
+ Icons.p("@" + "ui5" + "/" + "webcomponents-theming", "sap_horizon", async () => parametersBundle_css.defaultThemeBase);
1081
+ Icons.p("@" + "u" + "i" + "5" + "/" + "w" + "e" + "b" + "c" + "o" + "m" + "p" + "o" + "n" + "e" + "n" + "t" + "s", "sap_horizon", async () => i18nDefaults.defaultTheme);
1082
+ var inputStyles = `:host{vertical-align:middle}.ui5-hidden-text{position:absolute;clip:rect(1px,1px,1px,1px);user-select:none;left:-1000px;top:-1000px;pointer-events:none;font-size:0}.inputIcon{color:var(--_ui5-v2-14-0-rc-7_input_icon_color);cursor:pointer;outline:none;padding:var(--_ui5-v2-14-0-rc-7_input_icon_padding);border-inline-start:var(--_ui5-v2-14-0-rc-7_input_icon_border);min-width:1rem;min-height:1rem;border-radius:var(--_ui5-v2-14-0-rc-7_input_icon_border_radius)}.inputIcon.inputIcon--pressed{background:var(--_ui5-v2-14-0-rc-7_input_icon_pressed_bg);box-shadow:var(--_ui5-v2-14-0-rc-7_input_icon_box_shadow);border-inline-start:var(--_ui5-v2-14-0-rc-7_select_hover_icon_left_border);color:var(--_ui5-v2-14-0-rc-7_input_icon_pressed_color)}.inputIcon:active{background-color:var(--sapButton_Active_Background);box-shadow:var(--_ui5-v2-14-0-rc-7_input_icon_box_shadow);border-inline-start:var(--_ui5-v2-14-0-rc-7_select_hover_icon_left_border);color:var(--_ui5-v2-14-0-rc-7_input_icon_pressed_color)}.inputIcon:not(.inputIcon--pressed):not(:active):hover{background:var(--_ui5-v2-14-0-rc-7_input_icon_hover_bg);box-shadow:var(--_ui5-v2-14-0-rc-7_input_icon_box_shadow)}.inputIcon:hover{border-inline-start:var(--_ui5-v2-14-0-rc-7_select_hover_icon_left_border);box-shadow:var(--_ui5-v2-14-0-rc-7_input_icon_box_shadow)}:host(:not([hidden])){display:inline-block}:host{width:var(--_ui5-v2-14-0-rc-7_input_width);min-width:calc(var(--_ui5-v2-14-0-rc-7_input_min_width) + (var(--_ui5-v2-14-0-rc-7-input-icons-count)*var(--_ui5-v2-14-0-rc-7_input_icon_width)));margin:var(--_ui5-v2-14-0-rc-7_input_margin_top_bottom) 0;height:var(--_ui5-v2-14-0-rc-7_input_height);color:var(--sapField_TextColor);font-size:var(--sapFontSize);font-family:var(--sapFontFamily);font-style:normal;border:var(--_ui5-v2-14-0-rc-7-input-border);border-radius:var(--_ui5-v2-14-0-rc-7_input_border_radius);box-sizing:border-box;text-align:start;transition:var(--_ui5-v2-14-0-rc-7_input_transition);background:var(--sapField_BackgroundStyle);background-color:var(--_ui5-v2-14-0-rc-7_input_background_color)}:host(:not([readonly])),:host([readonly][disabled]){box-shadow:var(--sapField_Shadow)}:host([focused]:not([opened])){border-color:var(--_ui5-v2-14-0-rc-7_input_focused_border_color);background-color:var(--sapField_Focus_Background)}.ui5-input-focusable-element{position:relative}:host([focused]:not([opened])) .ui5-input-focusable-element:after{content:var(--ui5-v2-14-0-rc-7_input_focus_pseudo_element_content);position:absolute;pointer-events:none;z-index:2;border:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--_ui5-v2-14-0-rc-7_input_focus_outline_color);border-radius:var(--_ui5-v2-14-0-rc-7_input_focus_border_radius);top:var(--_ui5-v2-14-0-rc-7_input_focus_offset);bottom:var(--_ui5-v2-14-0-rc-7_input_focus_offset);left:var(--_ui5-v2-14-0-rc-7_input_focus_offset);right:var(--_ui5-v2-14-0-rc-7_input_focus_offset)}:host([focused][readonly]:not([opened])) .ui5-input-focusable-element:after{top:var(--_ui5-v2-14-0-rc-7_input_readonly_focus_offset);bottom:var(--_ui5-v2-14-0-rc-7_input_readonly_focus_offset);left:var(--_ui5-v2-14-0-rc-7_input_readonly_focus_offset);right:var(--_ui5-v2-14-0-rc-7_input_readonly_focus_offset);border-radius:var(--_ui5-v2-14-0-rc-7_input_readonly_focus_border_radius)}.ui5-input-root:before{content:"";position:absolute;width:calc(100% - 2px);left:1px;bottom:-2px;border-bottom-left-radius:8px;border-bottom-right-radius:8px;height:var(--_ui5-v2-14-0-rc-7_input_bottom_border_height);transition:var(--_ui5-v2-14-0-rc-7_input_transition);background-color:var(--_ui5-v2-14-0-rc-7_input_bottom_border_color)}.ui5-input-root{width:100%;height:100%;position:relative;background:transparent;display:inline-block;outline:none;box-sizing:border-box;color:inherit;transition:border-color .2s ease-in-out;border-radius:var(--_ui5-v2-14-0-rc-7_input_border_radius);overflow:hidden}:host([disabled]){opacity:var(--_ui5-v2-14-0-rc-7_input_disabled_opacity);cursor:default;pointer-events:none;background-color:var(--_ui5-v2-14-0-rc-7-input_disabled_background);border-color:var(--_ui5-v2-14-0-rc-7_input_disabled_border_color)}:host([disabled]) .ui5-input-root:before,:host([readonly]) .ui5-input-root:before{content:none}[inner-input]{background:transparent;color:inherit;border:none;font-style:inherit;-webkit-appearance:none;-moz-appearance:textfield;padding:var(--_ui5-v2-14-0-rc-7_input_inner_padding);box-sizing:border-box;width:100%;text-overflow:ellipsis;flex:1;outline:none;font-size:inherit;font-family:inherit;line-height:inherit;letter-spacing:inherit;word-spacing:inherit;text-align:inherit}[inner-input][inner-input-with-icon]{padding:var(--_ui5-v2-14-0-rc-7_input_inner_padding_with_icon)}[inner-input][type=search]::-webkit-search-decoration,[inner-input][type=search]::-webkit-search-cancel-button,[inner-input][type=search]::-webkit-search-results-button,[inner-input][type=search]::-webkit-search-results-decoration{display:none}[inner-input]::-ms-reveal,[inner-input]::-ms-clear{display:none}.ui5-input-value-state-icon{height:100%;display:var(--_ui5-v2-14-0-rc-7-input-value-state-icon-display);align-items:center}.ui5-input-value-state-icon>svg{margin-right:8px}[inner-input]::selection{background:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}:host([disabled]) [inner-input]::-webkit-input-placeholder{visibility:hidden}:host([readonly]) [inner-input]::-webkit-input-placeholder{visibility:hidden}:host([disabled]) [inner-input]::-moz-placeholder{visibility:hidden}:host([readonly]) [inner-input]::-moz-placeholder{visibility:hidden}[inner-input]::-webkit-input-placeholder{font-weight:400;font-style:var(--_ui5-v2-14-0-rc-7_input_placeholder_style);color:var(--_ui5-v2-14-0-rc-7_input_placeholder_color);padding-right:.125rem}[inner-input]::-moz-placeholder{font-weight:400;font-style:var(--_ui5-v2-14-0-rc-7_input_placeholder_style);color:var(--_ui5-v2-14-0-rc-7_input_placeholder_color);padding-right:.125rem}:host([value-state="Negative"]) [inner-input]::-webkit-input-placeholder{color:var(--_ui5-v2-14-0-rc-7-input_error_placeholder_color);font-weight:var(--_ui5-v2-14-0-rc-7_input_value_state_error_warning_placeholder_font_weight)}:host([value-state="Negative"]) [inner-input]::-moz-placeholder{color:var(--_ui5-v2-14-0-rc-7-input_error_placeholder_color);font-weight:var(--_ui5-v2-14-0-rc-7_input_value_state_error_warning_placeholder_font_weight)}:host([value-state="Critical"]) [inner-input]::-webkit-input-placeholder{font-weight:var(--_ui5-v2-14-0-rc-7_input_value_state_error_warning_placeholder_font_weight)}:host([value-state="Critical"]) [inner-input]::-moz-placeholder{font-weight:var(--_ui5-v2-14-0-rc-7_input_value_state_error_warning_placeholder_font_weight)}:host([value-state="Positive"]) [inner-input]::-webkit-input-placeholder{color:var(--_ui5-v2-14-0-rc-7_input_placeholder_color)}:host([value-state="Positive"]) [inner-input]::-moz-placeholder{color:var(--_ui5-v2-14-0-rc-7_input_placeholder_color)}:host([value-state="Information"]) [inner-input]::-webkit-input-placeholder{color:var(--_ui5-v2-14-0-rc-7_input_placeholder_color)}:host([value-state="Information"]) [inner-input]::-moz-placeholder{color:var(--_ui5-v2-14-0-rc-7_input_placeholder_color)}.ui5-input-content{height:100%;box-sizing:border-box;display:flex;flex-direction:row;justify-content:flex-end;overflow:hidden;outline:none;background:transparent;color:inherit;border-radius:var(--_ui5-v2-14-0-rc-7_input_border_radius)}:host([readonly]:not([disabled])){border:var(--_ui5-v2-14-0-rc-7_input_readonly_border);background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--_ui5-v2-14-0-rc-7_input_readonly_background)}:host([value-state="None"]:not([readonly]):hover),:host(:not([value-state]):not([readonly]):hover){border:var(--_ui5-v2-14-0-rc-7_input_hover_border);border-color:var(--_ui5-v2-14-0-rc-7_input_focused_border_color);box-shadow:var(--sapField_Hover_Shadow);background:var(--sapField_Hover_BackgroundStyle);background-color:var(--sapField_Hover_Background)}:host(:not([value-state]):not([readonly])[focused]:not([opened]):hover),:host([value-state="None"]:not([readonly])[focused]:not([opened]):hover){box-shadow:none}:host([focused]):not([opened]) .ui5-input-root:before{content:none}:host(:not([readonly]):not([disabled])[value-state]:not([value-state="None"])){border-width:var(--_ui5-v2-14-0-rc-7_input_state_border_width)}:host([value-state="Negative"]) [inner-input],:host([value-state="Critical"]) [inner-input]{font-style:var(--_ui5-v2-14-0-rc-7_input_error_warning_font_style);text-indent:var(--_ui5-v2-14-0-rc-7_input_error_warning_text_indent)}:host([value-state="Negative"]) [inner-input]{font-weight:var(--_ui5-v2-14-0-rc-7_input_error_font_weight)}:host([value-state="Critical"]) [inner-input]{font-weight:var(--_ui5-v2-14-0-rc-7_input_warning_font_weight)}:host([value-state="Negative"]:not([readonly]):not([disabled])){background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border-color:var(--_ui5-v2-14-0-rc-7_input_value_state_error_border_color);box-shadow:var(--sapField_InvalidShadow)}:host([value-state="Negative"][focused]:not([opened]):not([readonly])){background-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_error_background);border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_error_border_color)}:host([value-state="Negative"][focused]:not([opened]):not([readonly])) .ui5-input-focusable-element:after{border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_error_focus_outline_color)}:host([value-state="Negative"]:not([readonly])) .ui5-input-root:before{background-color:var(--_ui5-v2-14-0-rc-7-input-value-state-error-border-botom-color)}:host([value-state="Negative"]:not([readonly]):not([focused]):hover),:host([value-state="Negative"]:not([readonly])[focused][opened]:hover){background-color:var(--_ui5-v2-14-0-rc-7_input_value_state_error_hover_background);box-shadow:var(--sapField_Hover_InvalidShadow)}:host([value-state="Negative"]:not([readonly]):not([disabled])),:host([value-state="Critical"]:not([readonly]):not([disabled])),:host([value-state="Information"]:not([readonly]):not([disabled])){border-style:var(--_ui5-v2-14-0-rc-7_input_error_warning_border_style)}:host([value-state="Critical"]:not([readonly]):not([disabled])){background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border-color:var(--_ui5-v2-14-0-rc-7_input_value_state_warning_border_color);box-shadow:var(--sapField_WarningShadow)}:host([value-state="Critical"][focused]:not([opened]):not([readonly])){background-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_warning_background);border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_warning_border_color)}:host([value-state="Critical"][focused]:not([opened]):not([readonly])) .ui5-input-focusable-element:after{border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_warning_focus_outline_color)}:host([value-state="Critical"]:not([readonly])) .ui5-input-root:before{background-color:var(--_ui5-v2-14-0-rc-7_input_value_state_warning_border_botom_color)}:host([value-state="Critical"]:not([readonly]):not([focused]):hover),:host([value-state="Critical"]:not([readonly])[focused][opened]:hover){background-color:var(--sapField_Hover_Background);box-shadow:var(--sapField_Hover_WarningShadow)}:host([value-state="Positive"]:not([readonly]):not([disabled])){background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border-color:var(--_ui5-v2-14-0-rc-7_input_value_state_success_border_color);border-width:var(--_ui5-v2-14-0-rc-7_input_value_state_success_border_width);box-shadow:var(--sapField_SuccessShadow)}:host([value-state="Positive"][focused]:not([opened]):not([readonly])){background-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_success_background);border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_success_border_color)}:host([value-state="Positive"][focused]:not([opened]):not([readonly])) .ui5-input-focusable-element:after{border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_success_focus_outline_color)}:host([value-state="Positive"]:not([readonly])) .ui5-input-root:before{background-color:var(--_ui5-v2-14-0-rc-7_input_value_state_success_border_botom_color)}:host([value-state="Positive"]:not([readonly]):not([focused]):hover),:host([value-state="Positive"]:not([readonly])[focused][opened]:hover){background-color:var(--sapField_Hover_Background);box-shadow:var(--sapField_Hover_SuccessShadow)}:host([value-state="Information"]:not([readonly]):not([disabled])){background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border-color:var(--_ui5-v2-14-0-rc-7_input_value_state_information_border_color);border-width:var(--_ui5-v2-14-0-rc-7_input_information_border_width);box-shadow:var(--sapField_InformationShadow)}:host([value-state="Information"][focused]:not([opened]):not([readonly])){background-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_information_background);border-color:var(--_ui5-v2-14-0-rc-7_input_focused_value_state_information_border_color)}:host([value-state="Information"]:not([readonly])) .ui5-input-root:before{background-color:var(--_ui5-v2-14-0-rc-7_input_value_success_information_border_botom_color)}:host([value-state="Information"]:not([readonly]):not([focused]):hover),:host([value-state="Information"]:not([readonly])[focused][opened]:hover){background-color:var(--sapField_Hover_Background);box-shadow:var(--sapField_Hover_InformationShadow)}.ui5-input-icon-root{min-width:var(--_ui5-v2-14-0-rc-7_input_icon_min_width);height:100%;display:flex;justify-content:center;align-items:center}::slotted([ui5-icon][slot="icon"]){align-self:start;padding:var(--_ui5-v2-14-0-rc-7_input_custom_icon_padding);box-sizing:content-box!important}:host([value-state="Negative"]) .inputIcon,:host([value-state="Critical"]) .inputIcon{padding:var(--_ui5-v2-14-0-rc-7_input_error_warning_icon_padding)}:host([value-state="Negative"][focused]) .inputIcon,:host([value-state="Critical"][focused]) .inputIcon{padding:var(--_ui5-v2-14-0-rc-7_input_error_warning_focused_icon_padding)}:host([value-state="Information"]) .inputIcon{padding:var(--_ui5-v2-14-0-rc-7_input_information_icon_padding)}:host([value-state="Information"][focused]) .inputIcon{padding:var(--_ui5-v2-14-0-rc-7_input_information_focused_icon_padding)}:host([value-state="Negative"]) ::slotted(.inputIcon[ui5-icon]),:host([value-state="Negative"]) ::slotted([ui5-icon][slot="icon"]),:host([value-state="Critical"]) ::slotted([ui5-icon][slot="icon"]){padding:var(--_ui5-v2-14-0-rc-7_input_error_warning_custom_icon_padding)}:host([value-state="Negative"][focused]) ::slotted(.inputIcon[ui5-icon]),:host([value-state="Negative"][focused]) ::slotted([ui5-icon][slot="icon"]),:host([value-state="Critical"][focused]) ::slotted([ui5-icon][slot="icon"]){padding:var(--_ui5-v2-14-0-rc-7_input_error_warning_custom_focused_icon_padding)}:host([value-state="Information"]) ::slotted([ui5-icon][slot="icon"]){padding:var(--_ui5-v2-14-0-rc-7_input_information_custom_icon_padding)}:host([value-state="Information"][focused]) ::slotted([ui5-icon][slot="icon"]){padding:var(--_ui5-v2-14-0-rc-7_input_information_custom_focused_icon_padding)}:host([value-state="Negative"]) .inputIcon:active,:host([value-state="Negative"]) .inputIcon.inputIcon--pressed{box-shadow:var(--_ui5-v2-14-0-rc-7_input_error_icon_box_shadow);color:var(--_ui5-v2-14-0-rc-7_input_icon_error_pressed_color)}:host([value-state="Negative"]) .inputIcon:not(.inputIcon--pressed):not(:active):hover{box-shadow:var(--_ui5-v2-14-0-rc-7_input_error_icon_box_shadow)}:host([value-state="Critical"]) .inputIcon:active,:host([value-state="Critical"]) .inputIcon.inputIcon--pressed{box-shadow:var(--_ui5-v2-14-0-rc-7_input_warning_icon_box_shadow);color:var(--_ui5-v2-14-0-rc-7_input_icon_warning_pressed_color)}:host([value-state="Critical"]) .inputIcon:not(.inputIcon--pressed):not(:active):hover{box-shadow:var(--_ui5-v2-14-0-rc-7_input_warning_icon_box_shadow)}:host([value-state="Information"]) .inputIcon:active,:host([value-state="Information"]) .inputIcon.inputIcon--pressed{box-shadow:var(--_ui5-v2-14-0-rc-7_input_information_icon_box_shadow);color:var(--_ui5-v2-14-0-rc-7_input_icon_information_pressed_color)}:host([value-state="Information"]) .inputIcon:not(.inputIcon--pressed):not(:active):hover{box-shadow:var(--_ui5-v2-14-0-rc-7_input_information_icon_box_shadow)}:host([value-state="Positive"]) .inputIcon:active,:host([value-state="Positive"]) .inputIcon.inputIcon--pressed{box-shadow:var(--_ui5-v2-14-0-rc-7_input_success_icon_box_shadow);color:var(--_ui5-v2-14-0-rc-7_input_icon_success_pressed_color)}:host([value-state="Positive"]) .inputIcon:not(.inputIcon--pressed):not(:active):hover{box-shadow:var(--_ui5-v2-14-0-rc-7_input_success_icon_box_shadow)}.ui5-input-clear-icon-wrapper{height:var(--_ui5-v2-14-0-rc-7_input_icon_wrapper_height);padding:0;width:var(--_ui5-v2-14-0-rc-7_input_icon_width);min-width:var(--_ui5-v2-14-0-rc-7_input_icon_width);display:flex;justify-content:center;align-items:center;box-sizing:border-box}:host([value-state]:not([value-state="None"]):not([value-state="Positive"])) .ui5-input-clear-icon-wrapper{height:var(--_ui5-v2-14-0-rc-7_input_icon_wrapper_state_height);vertical-align:top}:host([value-state="Positive"]) .ui5-input-clear-icon-wrapper{height:var(--_ui5-v2-14-0-rc-7_input_icon_wrapper_success_state_height)}[ui5-icon].ui5-input-clear-icon{padding:0;color:inherit}[inner-input]::-webkit-outer-spin-button,[inner-input]::-webkit-inner-spin-button{-webkit-appearance:inherit;margin:inherit}
1083
+ `;
1084
+
1085
+ Icons.p("@" + "ui5" + "/" + "webcomponents-theming", "sap_horizon", async () => parametersBundle_css.defaultThemeBase);
1086
+ Icons.p("@" + "u" + "i" + "5" + "/" + "w" + "e" + "b" + "c" + "o" + "m" + "p" + "o" + "n" + "e" + "n" + "t" + "s", "sap_horizon", async () => i18nDefaults.defaultTheme);
1087
+ var SuggestionsCss = `.ui5-suggestions-popover{box-shadow:var(--sapContent_Shadow1)}.ui5-suggestions-popover::part(header),.ui5-suggestions-popover::part(content){padding:0}.ui5-suggestions-popover::part(footer){padding:0 1rem}.input-root-phone.native-input-wrapper{display:contents}.input-root-phone.native-input-wrapper:before{display:none}.native-input-wrapper .ui5-input-inner-phone{margin:0}
1088
+ `;
1089
+
1090
+ var __decorate$4 = (this && this.__decorate) || function (decorators, target, key, desc) {
1091
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1092
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1093
+ 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;
1094
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
1095
+ };
1096
+ var Input_1;
1097
+ // all sementic events
1098
+ var INPUT_EVENTS;
1099
+ (function (INPUT_EVENTS) {
1100
+ INPUT_EVENTS["CHANGE"] = "change";
1101
+ INPUT_EVENTS["INPUT"] = "input";
1102
+ INPUT_EVENTS["SELECTION_CHANGE"] = "selection-change";
1103
+ })(INPUT_EVENTS || (INPUT_EVENTS = {}));
1104
+ // all user interactions
1105
+ var INPUT_ACTIONS;
1106
+ (function (INPUT_ACTIONS) {
1107
+ INPUT_ACTIONS["ACTION_ENTER"] = "enter";
1108
+ INPUT_ACTIONS["ACTION_USER_INPUT"] = "input";
1109
+ })(INPUT_ACTIONS || (INPUT_ACTIONS = {}));
1110
+ /**
1111
+ * @class
1112
+ * ### Overview
1113
+ *
1114
+ * The `ui5-input` component allows the user to enter and edit text or numeric values in one line.
1115
+ *
1116
+ * Additionally, you can provide `suggestionItems`,
1117
+ * that are displayed in a popover right under the input.
1118
+ *
1119
+ * The text field can be editable or read-only (`readonly` property),
1120
+ * and it can be enabled or disabled (`disabled` property).
1121
+ * To visualize semantic states, such as "Negative" or "Critical", the `valueState` property is provided.
1122
+ * When the user makes changes to the text, the change event is fired,
1123
+ * which enables you to react on any text change.
1124
+ *
1125
+ * ### Keyboard Handling
1126
+ * The `ui5-input` provides the following keyboard shortcuts:
1127
+ *
1128
+ * - [Escape] - Closes the suggestion list, if open. If closed or not enabled, cancels changes and reverts to the value which the Input field had when it got the focus.
1129
+ * - [Enter] or [Return] - If suggestion list is open takes over the current matching item and closes it. If value state or group header is focused, does nothing.
1130
+ * - [Down] - Focuses the next matching item in the suggestion list. Selection-change event is fired.
1131
+ * - [Up] - Focuses the previous matching item in the suggestion list. Selection-change event is fired.
1132
+ * - [Home] - If focus is in the text input, moves caret before the first character. If focus is in the list, highlights the first item and updates the input accordingly.
1133
+ * - [End] - If focus is in the text input, moves caret after the last character. If focus is in the list, highlights the last item and updates the input accordingly.
1134
+ * - [Page Up] - If focus is in the list, moves highlight up by page size (10 items by default). If focus is in the input, does nothing.
1135
+ * - [Page Down] - If focus is in the list, moves highlight down by page size (10 items by default). If focus is in the input, does nothing.
1136
+ * - [Ctrl]+[Alt]+[F8] or [Command]+[Option]+[F8] - Focuses the first link in the value state message, if available. Pressing [Tab] moves the focus to the next link in the value state message, or closes the value state message if there are no more links.
1137
+ *
1138
+ * ### ES6 Module Import
1139
+ *
1140
+ * `import "sap/ushell/gen/ui5/webcomponents/dist/Input.js";`
1141
+ *
1142
+ * @constructor
1143
+ * @extends UI5Element
1144
+ * @public
1145
+ * @csspart root - Used to style the root DOM element of the Input component
1146
+ * @csspart input - Used to style the native input element
1147
+ * @csspart clear-icon - Used to style the clear icon, which can be pressed to clear user input text
1148
+ */
1149
+ let Input = Input_1 = class Input extends webcomponentsBase.b {
1150
+ get formValidityMessage() {
1151
+ return Input_1.i18nBundle.getText(i18nDefaults.FORM_TEXTFIELD_REQUIRED);
1152
+ }
1153
+ get _effectiveShowSuggestions() {
1154
+ return !!(this.showSuggestions && this.Suggestions);
1155
+ }
1156
+ get formValidity() {
1157
+ return { valueMissing: this.required && !this.value };
1158
+ }
1159
+ async formElementAnchor() {
1160
+ return this.getFocusDomRefAsync();
1161
+ }
1162
+ get formFormattedValue() {
1163
+ return this.value;
1164
+ }
1165
+ constructor() {
1166
+ super();
1167
+ /**
1168
+ * Defines whether the component is in disabled state.
1169
+ *
1170
+ * **Note:** A disabled component is completely noninteractive.
1171
+ * @default false
1172
+ * @public
1173
+ */
1174
+ this.disabled = false;
1175
+ /**
1176
+ * Defines if characters within the suggestions are to be highlighted
1177
+ * in case the input value matches parts of the suggestions text.
1178
+ *
1179
+ * **Note:** takes effect when `showSuggestions` is set to `true`
1180
+ * @default false
1181
+ * @private
1182
+ * @since 1.0.0-rc.8
1183
+ */
1184
+ this.highlight = false;
1185
+ /**
1186
+ * Defines whether the component is read-only.
1187
+ *
1188
+ * **Note:** A read-only component is not editable,
1189
+ * but still provides visual feedback upon user interaction.
1190
+ * @default false
1191
+ * @public
1192
+ */
1193
+ this.readonly = false;
1194
+ /**
1195
+ * Defines whether the component is required.
1196
+ * @default false
1197
+ * @public
1198
+ * @since 1.0.0-rc.3
1199
+ */
1200
+ this.required = false;
1201
+ /**
1202
+ * Defines whether the value will be autcompleted to match an item
1203
+ * @default false
1204
+ * @public
1205
+ * @since 1.4.0
1206
+ */
1207
+ this.noTypeahead = false;
1208
+ /**
1209
+ * Defines the HTML type of the component.
1210
+ *
1211
+ * **Notes:**
1212
+ *
1213
+ * - The particular effect of this property differs depending on the browser
1214
+ * and the current language settings, especially for type `Number`.
1215
+ * - The property is mostly intended to be used with touch devices
1216
+ * that use different soft keyboard layouts depending on the given input type.
1217
+ * @default "Text"
1218
+ * @public
1219
+ */
1220
+ this.type = "Text";
1221
+ /**
1222
+ * Defines the value of the component.
1223
+ *
1224
+ * **Note:** The property is updated upon typing.
1225
+ * @default ""
1226
+ * @formEvents change input
1227
+ * @formProperty
1228
+ * @public
1229
+ */
1230
+ this.value = "";
1231
+ /**
1232
+ * Defines the inner stored value of the component.
1233
+ *
1234
+ * **Note:** The property is updated upon typing. In some special cases the old value is kept (e.g. deleting the value after the dot in a float)
1235
+ * @default ""
1236
+ * @private
1237
+ */
1238
+ this._innerValue = "";
1239
+ /**
1240
+ * Defines the value state of the component.
1241
+ * @default "None"
1242
+ * @public
1243
+ */
1244
+ this.valueState = "None";
1245
+ /**
1246
+ * Defines whether the component should show suggestions, if such are present.
1247
+ *
1248
+ * @default false
1249
+ * @public
1250
+ */
1251
+ this.showSuggestions = false;
1252
+ /**
1253
+ * Defines whether the clear icon of the input will be shown.
1254
+ * @default false
1255
+ * @public
1256
+ * @since 1.2.0
1257
+ */
1258
+ this.showClearIcon = false;
1259
+ /**
1260
+ * Defines whether the suggestions picker is open.
1261
+ * The picker will not open if the `showSuggestions` property is set to `false`, the input is disabled or the input is readonly.
1262
+ * The picker will close automatically and `close` event will be fired if the input is not in the viewport.
1263
+ * @default false
1264
+ * @public
1265
+ * @since 2.0.0
1266
+ */
1267
+ this.open = false;
1268
+ /**
1269
+ * Defines whether the clear icon is visible.
1270
+ * @default false
1271
+ * @private
1272
+ * @since 1.2.0
1273
+ */
1274
+ this._effectiveShowClearIcon = false;
1275
+ /**
1276
+ * @private
1277
+ */
1278
+ this.focused = false;
1279
+ this.valueStateOpen = false;
1280
+ this._inputAccInfo = {};
1281
+ this._nativeInputAttributes = {};
1282
+ this._inputIconFocused = false;
1283
+ /**
1284
+ * @private
1285
+ */
1286
+ this._linksListenersArray = [];
1287
+ /**
1288
+ * Indicates whether link navigation is being handled.
1289
+ * @default false
1290
+ * @private
1291
+ * @since 2.11.0
1292
+ */
1293
+ this._handleLinkNavigation = false;
1294
+ // Indicates if there is selected suggestionItem.
1295
+ this.hasSuggestionItemSelected = false;
1296
+ // Represents the value before user moves selection from suggestion item to another
1297
+ // and its value is updated after each move.
1298
+ // Note: Used to register and fire "input" event upon [Space] or [Enter].
1299
+ // Note: The property "value" is updated upon selection move and can`t be used.
1300
+ this.valueBeforeItemSelection = "";
1301
+ // Represents the value before user moves selection between the suggestion items
1302
+ // and its value remains the same when the user navigates up or down the list.
1303
+ // Note: Used to cancel selection upon [Escape].
1304
+ this.valueBeforeSelectionStart = "";
1305
+ // tracks the value between focus in and focus out to detect that change event should be fired.
1306
+ this.previousValue = "";
1307
+ // Indicates, if the component is rendering for first time.
1308
+ this.firstRendering = true;
1309
+ // The typed in value.
1310
+ this.typedInValue = "";
1311
+ // The last value confirmed by the user with "ENTER"
1312
+ this.lastConfirmedValue = "";
1313
+ // Indicates, if the user is typing. Gets reset once popup is closed
1314
+ this.isTyping = false;
1315
+ // Indicates whether the value of the input is comming from a suggestion item
1316
+ this._isLatestValueFromSuggestions = false;
1317
+ this._isChangeTriggeredBySuggestion = false;
1318
+ this._indexOfSelectedItem = -1;
1319
+ this._handleResizeBound = this._handleResize.bind(this);
1320
+ this._keepInnerValue = false;
1321
+ this._focusedAfterClear = false;
1322
+ this._valueStateLinks = [];
1323
+ }
1324
+ onEnterDOM() {
1325
+ webcomponentsBase.f.register(this, this._handleResizeBound);
1326
+ BusyIndicator.y(this, this._updateAssociatedLabelsTexts.bind(this));
1327
+ }
1328
+ onExitDOM() {
1329
+ webcomponentsBase.f.deregister(this, this._handleResizeBound);
1330
+ BusyIndicator.T(this);
1331
+ this._removeLinksEventListeners();
1332
+ }
1333
+ _highlightSuggestionItem(item) {
1334
+ item.markupText = this.typedInValue ? this.Suggestions?.hightlightInput((item.text || ""), this.typedInValue) : encodeXML.fnEncodeXML(item.text || "");
1335
+ }
1336
+ _isGroupItem(item) {
1337
+ return item.hasAttribute("ui5-suggestion-item-group");
1338
+ }
1339
+ onBeforeRendering() {
1340
+ if (!this._keepInnerValue) {
1341
+ this._innerValue = this.value === null ? "" : this.value;
1342
+ }
1343
+ if (this.showSuggestions) {
1344
+ this.enableSuggestions();
1345
+ this._flattenItems.forEach(item => {
1346
+ if (item.hasAttribute("ui5-suggestion-item")) {
1347
+ this._highlightSuggestionItem(item);
1348
+ }
1349
+ else if (this._isGroupItem(item)) {
1350
+ item.items?.forEach(nestedItem => {
1351
+ this._highlightSuggestionItem(nestedItem);
1352
+ });
1353
+ }
1354
+ });
1355
+ }
1356
+ this._effectiveShowClearIcon = (this.showClearIcon && !!this.value && !this.readonly && !this.disabled);
1357
+ this.style.setProperty(Icons.d$1("--_ui5-input-icons-count"), `${this.iconsCount}`);
1358
+ const hasItems = !!this._flattenItems.length;
1359
+ const hasValue = !!this.value;
1360
+ const isFocused = this.shadowRoot.querySelector("input") === webcomponentsBase.t();
1361
+ if (this.shouldDisplayOnlyValueStateMessage) {
1362
+ this.openValueStatePopover();
1363
+ }
1364
+ else {
1365
+ this.closeValueStatePopover();
1366
+ }
1367
+ const preventOpenPicker = this.disabled || this.readonly;
1368
+ if (preventOpenPicker) {
1369
+ this.open = false;
1370
+ }
1371
+ else if (!this._isPhone) {
1372
+ this.open = hasItems && (this.open || (hasValue && isFocused && this.isTyping));
1373
+ }
1374
+ const value = this.value;
1375
+ const innerInput = this.getInputDOMRefSync();
1376
+ if (!innerInput || !value) {
1377
+ return;
1378
+ }
1379
+ const autoCompletedChars = innerInput.selectionEnd - innerInput.selectionStart;
1380
+ // Typehead causes issues on Android devices, so we disable it for now
1381
+ // If there is already a selection the autocomplete has already been performed
1382
+ if (this._shouldAutocomplete && !Icons.P$1() && !autoCompletedChars && !this._isKeyNavigation) {
1383
+ const item = this._getFirstMatchingItem(value);
1384
+ if (item) {
1385
+ this._handleTypeAhead(item);
1386
+ this._selectMatchingItem(item);
1387
+ }
1388
+ }
1389
+ }
1390
+ onAfterRendering() {
1391
+ const innerInput = this.getInputDOMRefSync();
1392
+ if (this.showSuggestions && this.Suggestions?._getPicker()) {
1393
+ this._listWidth = this.Suggestions._getListWidth();
1394
+ // disabled ItemNavigation from the list since we are not using it
1395
+ this.Suggestions._getList()._itemNavigation._getItems = () => [];
1396
+ }
1397
+ if (this._performTextSelection) {
1398
+ // this is required to syncronize lit-html input's value and user's input
1399
+ // lit-html does not sync its stored value for the value property when the user is typing
1400
+ if (innerInput.value !== this._innerValue) {
1401
+ innerInput.value = this._innerValue;
1402
+ }
1403
+ if (this.typedInValue.length && this.value.length) {
1404
+ innerInput.setSelectionRange(this.typedInValue.length, this.value.length);
1405
+ }
1406
+ this.fireDecoratorEvent("type-ahead");
1407
+ }
1408
+ this._performTextSelection = false;
1409
+ if (!webcomponentsBase.n$2(this._valueStateLinks, this.linksInAriaValueStateHiddenText)) {
1410
+ this._removeLinksEventListeners();
1411
+ this._addLinksEventListeners();
1412
+ this._valueStateLinks = this.linksInAriaValueStateHiddenText;
1413
+ }
1414
+ }
1415
+ _onkeydown(e) {
1416
+ this._isKeyNavigation = true;
1417
+ this._shouldAutocomplete = !this.noTypeahead && !(webcomponentsBase.Q(e) || webcomponentsBase.X(e) || webcomponentsBase.m$2(e));
1418
+ if (webcomponentsBase.P(e)) {
1419
+ return this._handleUp(e);
1420
+ }
1421
+ if (webcomponentsBase._(e)) {
1422
+ return this._handleDown(e);
1423
+ }
1424
+ if (webcomponentsBase.A(e)) {
1425
+ return this._handleSpace(e);
1426
+ }
1427
+ if (webcomponentsBase.x(e)) {
1428
+ return this._handleTab();
1429
+ }
1430
+ if (webcomponentsBase.b$1(e)) {
1431
+ const isValueUnchanged = this.previousValue === this.getInputDOMRefSync().value;
1432
+ const shouldSubmit = this._internals.form && this._internals.form.querySelectorAll("[ui5-input]").length === 1;
1433
+ this._enterKeyDown = true;
1434
+ if (isValueUnchanged && shouldSubmit) {
1435
+ webcomponentsBase.i$1(this);
1436
+ }
1437
+ return this._handleEnter(e);
1438
+ }
1439
+ if (webcomponentsBase.j(e)) {
1440
+ return this._handlePageUp(e);
1441
+ }
1442
+ if (webcomponentsBase.q(e)) {
1443
+ return this._handlePageDown(e);
1444
+ }
1445
+ if (webcomponentsBase.M(e)) {
1446
+ return this._handleHome(e);
1447
+ }
1448
+ if (webcomponentsBase.n(e)) {
1449
+ return this._handleEnd(e);
1450
+ }
1451
+ if (webcomponentsBase.m$2(e)) {
1452
+ return this._handleEscape();
1453
+ }
1454
+ if (webcomponentsBase.Co(e)) {
1455
+ return this._handleCtrlAltF8();
1456
+ }
1457
+ if (this.showSuggestions) {
1458
+ this._clearPopoverFocusAndSelection();
1459
+ }
1460
+ this._isKeyNavigation = false;
1461
+ }
1462
+ _onkeyup(e) {
1463
+ // The native Delete event does not update the value property "on time".
1464
+ // So, the (native) change event is always fired with the old value
1465
+ if (webcomponentsBase.X(e)) {
1466
+ this.value = e.target.value;
1467
+ }
1468
+ this._enterKeyDown = false;
1469
+ }
1470
+ get currentItemIndex() {
1471
+ const allItems = this.Suggestions?._getItems();
1472
+ const currentItem = allItems.find(item => { return item.selected || item.focused; });
1473
+ const indexOfCurrentItem = currentItem ? allItems.indexOf(currentItem) : -1;
1474
+ return indexOfCurrentItem;
1475
+ }
1476
+ _handleUp(e) {
1477
+ if (this.Suggestions?.isOpened()) {
1478
+ this.Suggestions.onUp(e, this.currentItemIndex);
1479
+ }
1480
+ }
1481
+ _handleDown(e) {
1482
+ if (this.Suggestions?.isOpened()) {
1483
+ this.Suggestions.onDown(e, this.currentItemIndex);
1484
+ }
1485
+ }
1486
+ _handleSpace(e) {
1487
+ if (this.Suggestions) {
1488
+ this.Suggestions.onSpace(e);
1489
+ }
1490
+ }
1491
+ _handleTab() {
1492
+ if (this.Suggestions && (this.previousValue !== this.value)) {
1493
+ this.Suggestions.onTab();
1494
+ }
1495
+ }
1496
+ _handleCtrlAltF8() {
1497
+ this._handleLinkNavigation = true;
1498
+ const links = this.linksInAriaValueStateHiddenText;
1499
+ if (links.length) {
1500
+ links[0].focus();
1501
+ }
1502
+ }
1503
+ _addLinksEventListeners() {
1504
+ const links = this.linksInAriaValueStateHiddenText;
1505
+ links.forEach((link, index) => {
1506
+ this._linksListenersArray.push((e) => {
1507
+ f(e, links, index, {
1508
+ closeValueState: () => {
1509
+ if (this.Suggestions?.isOpened()) {
1510
+ this.Suggestions?.close();
1511
+ }
1512
+ if (this.valueStateOpen) {
1513
+ this.closeValueStatePopover();
1514
+ }
1515
+ },
1516
+ focusInput: () => {
1517
+ this._handleLinkNavigation = false;
1518
+ this.getInputDOMRef().focus();
1519
+ },
1520
+ navigateToItem: () => {
1521
+ if (this._handleLinkNavigation) {
1522
+ this._handleLinkNavigation = false;
1523
+ if (this.Suggestions?.isOpened()) {
1524
+ this.innerFocusIn();
1525
+ (this.getInputDOMRef()).focus();
1526
+ this.Suggestions.onDown(e, this.currentItemIndex);
1527
+ }
1528
+ }
1529
+ else {
1530
+ this._handleDown(e);
1531
+ }
1532
+ },
1533
+ isPopoverOpen: () => { return (this.Suggestions && this.Suggestions?.isOpened()) || false; },
1534
+ });
1535
+ });
1536
+ link.addEventListener("keydown", this._linksListenersArray[index]);
1537
+ });
1538
+ }
1539
+ _removeLinksEventListeners() {
1540
+ const links = this.linksInAriaValueStateHiddenText;
1541
+ links.forEach((link, index) => {
1542
+ link.removeEventListener("keydown", this._linksListenersArray[index]);
1543
+ });
1544
+ this._linksListenersArray = [];
1545
+ this._handleLinkNavigation = false;
1546
+ }
1547
+ _handleEnter(e) {
1548
+ // if a group item is focused, this is false
1549
+ const suggestionItemPressed = !!(this.Suggestions?.onEnter(e));
1550
+ const innerInput = this.getInputDOMRefSync();
1551
+ const matchingItem = this._selectableItems.find(item => {
1552
+ return item.text === this.value;
1553
+ });
1554
+ if (matchingItem) {
1555
+ const itemText = matchingItem.text || "";
1556
+ innerInput.setSelectionRange(itemText.length, itemText.length);
1557
+ if (!suggestionItemPressed) {
1558
+ this.fireSelectionChange(matchingItem, true);
1559
+ this.acceptSuggestion(matchingItem, true);
1560
+ this.open = false;
1561
+ }
1562
+ }
1563
+ if (this._isPhone && !this._flattenItems.length && !this.isTypeNumber) {
1564
+ innerInput.setSelectionRange(this.value.length, this.value.length);
1565
+ }
1566
+ if (!suggestionItemPressed) {
1567
+ this.lastConfirmedValue = this.value;
1568
+ return;
1569
+ }
1570
+ this.focused = true;
1571
+ }
1572
+ _handlePageUp(e) {
1573
+ if (this._isSuggestionsFocused) {
1574
+ this.Suggestions?.onPageUp(e);
1575
+ }
1576
+ else {
1577
+ e.preventDefault();
1578
+ }
1579
+ }
1580
+ _handlePageDown(e) {
1581
+ if (this._isSuggestionsFocused) {
1582
+ this.Suggestions?.onPageDown(e);
1583
+ }
1584
+ else {
1585
+ e.preventDefault();
1586
+ }
1587
+ }
1588
+ _handleHome(e) {
1589
+ if (this._isSuggestionsFocused) {
1590
+ this.Suggestions?.onHome(e);
1591
+ }
1592
+ }
1593
+ _handleEnd(e) {
1594
+ if (this._isSuggestionsFocused) {
1595
+ this.Suggestions?.onEnd(e);
1596
+ }
1597
+ }
1598
+ _handleEscape() {
1599
+ const hasSuggestions = this.showSuggestions && !!this.Suggestions;
1600
+ const isOpen = hasSuggestions && this.open;
1601
+ const innerInput = this.getInputDOMRefSync();
1602
+ const isAutoCompleted = innerInput.selectionEnd - innerInput.selectionStart > 0;
1603
+ this.isTyping = false;
1604
+ if (this.value !== this.previousValue && this.value !== this.lastConfirmedValue && !this.open) {
1605
+ this.value = this.lastConfirmedValue ? this.lastConfirmedValue : this.previousValue;
1606
+ this.fireDecoratorEvent(INPUT_EVENTS.INPUT, { inputType: "" });
1607
+ return;
1608
+ }
1609
+ if (!isOpen) {
1610
+ this.value = this.lastConfirmedValue ? this.lastConfirmedValue : this.previousValue;
1611
+ return;
1612
+ }
1613
+ if (isOpen && this.Suggestions?._isItemOnTarget()) {
1614
+ // Restore the value.
1615
+ this.value = this.typedInValue || this.valueBeforeSelectionStart;
1616
+ this.focused = true;
1617
+ return;
1618
+ }
1619
+ if (isAutoCompleted) {
1620
+ this.value = this.typedInValue;
1621
+ }
1622
+ this.focused = true;
1623
+ }
1624
+ _onfocusin(e) {
1625
+ this.focused = true; // invalidating property
1626
+ if (!this._focusedAfterClear) {
1627
+ this.previousValue = this.value;
1628
+ }
1629
+ this.valueBeforeSelectionStart = this.value;
1630
+ this._inputIconFocused = !!e.target && e.target === this.querySelector("[ui5-icon]");
1631
+ this._focusedAfterClear = false;
1632
+ }
1633
+ /**
1634
+ * Called on "focusin" of the native input HTML Element.
1635
+ * **Note:** implemented in MultiInput, but used in the Input template.
1636
+ */
1637
+ innerFocusIn() { }
1638
+ _onfocusout(e) {
1639
+ const toBeFocused = e.relatedTarget;
1640
+ if (this.Suggestions?._getPicker().contains(toBeFocused) || this.contains(toBeFocused) || this.getSlottedNodes("valueStateMessage").some(el => el.contains(toBeFocused))) {
1641
+ return;
1642
+ }
1643
+ this._keepInnerValue = false;
1644
+ this.focused = false; // invalidating property
1645
+ this._isChangeTriggeredBySuggestion = false;
1646
+ if (this.showClearIcon && !this._effectiveShowClearIcon) {
1647
+ this._clearIconClicked = false;
1648
+ this._handleChange();
1649
+ }
1650
+ this.open = false;
1651
+ this._clearPopoverFocusAndSelection();
1652
+ if (!this._clearIconClicked) {
1653
+ this.previousValue = "";
1654
+ }
1655
+ this.lastConfirmedValue = "";
1656
+ this.isTyping = false;
1657
+ if ((this.value !== this.previousValue) && this.showClearIcon) {
1658
+ this._clearIconClicked = false;
1659
+ }
1660
+ }
1661
+ _clearPopoverFocusAndSelection() {
1662
+ if (!this.showSuggestions || !this.Suggestions) {
1663
+ return;
1664
+ }
1665
+ this.hasSuggestionItemSelected = false;
1666
+ this.Suggestions?._deselectItems();
1667
+ this.Suggestions?._clearItemFocus();
1668
+ }
1669
+ _click() {
1670
+ if (Icons.d() && !this.readonly && this.Suggestions) {
1671
+ this.blur();
1672
+ this.open = true;
1673
+ }
1674
+ }
1675
+ _handleChange() {
1676
+ const shouldSubmit = this._internals.form && this._internals.form.querySelectorAll("[ui5-input]").length === 1;
1677
+ if (this._clearIconClicked) {
1678
+ this._clearIconClicked = false;
1679
+ return;
1680
+ }
1681
+ const fireChange = () => {
1682
+ if (!this._isChangeTriggeredBySuggestion) {
1683
+ this.fireDecoratorEvent(INPUT_EVENTS.CHANGE);
1684
+ }
1685
+ this.previousValue = this.value;
1686
+ this.typedInValue = this.value;
1687
+ this._isChangeTriggeredBySuggestion = false;
1688
+ };
1689
+ if (this.previousValue !== this.getInputDOMRefSync().value) {
1690
+ // if picker is open there might be a selected item, wait next tick to get the value applied
1691
+ if (this.Suggestions?._getPicker().open && this._flattenItems.some(item => item.hasAttribute("ui5-suggestion-item") && item.selected)) {
1692
+ this._changeToBeFired = true;
1693
+ }
1694
+ else {
1695
+ fireChange();
1696
+ if (this._enterKeyDown && shouldSubmit) {
1697
+ webcomponentsBase.i$1(this);
1698
+ }
1699
+ }
1700
+ }
1701
+ }
1702
+ _clear() {
1703
+ const valueBeforeClear = this.value;
1704
+ this.value = "";
1705
+ const prevented = !this.fireDecoratorEvent(INPUT_EVENTS.INPUT, { inputType: "" });
1706
+ if (prevented) {
1707
+ this.value = valueBeforeClear;
1708
+ return;
1709
+ }
1710
+ this.typedInValue = "";
1711
+ if (!this._isPhone) {
1712
+ this.fireResetSelectionChange();
1713
+ this.focus();
1714
+ this._focusedAfterClear = true;
1715
+ }
1716
+ }
1717
+ _iconMouseDown() {
1718
+ this._clearIconClicked = true;
1719
+ }
1720
+ _scroll(e) {
1721
+ this.fireDecoratorEvent("suggestion-scroll", {
1722
+ scrollTop: e.detail.scrollTop,
1723
+ scrollContainer: e.detail.targetRef,
1724
+ });
1725
+ }
1726
+ _handleSelect() {
1727
+ this.fireDecoratorEvent("select");
1728
+ }
1729
+ _handleInput(e) {
1730
+ const eventType = (e.detail && e.detail.inputType) || "";
1731
+ this._input(e, eventType);
1732
+ }
1733
+ _handleNativeInput(e) {
1734
+ const eventType = e.inputType || "";
1735
+ this._input(e, eventType);
1736
+ }
1737
+ _input(e, eventType) {
1738
+ const inputDomRef = this.getInputDOMRefSync();
1739
+ const emptyValueFiredOnNumberInput = this.value && this.isTypeNumber && !inputDomRef.value;
1740
+ this._keepInnerValue = false;
1741
+ const allowedEventTypes = [
1742
+ "deleteWordBackward",
1743
+ "deleteWordForward",
1744
+ "deleteSoftLineBackward",
1745
+ "deleteSoftLineForward",
1746
+ "deleteEntireSoftLine",
1747
+ "deleteHardLineBackward",
1748
+ "deleteHardLineForward",
1749
+ "deleteByDrag",
1750
+ "deleteByCut",
1751
+ "deleteContent",
1752
+ "deleteContentBackward",
1753
+ "deleteContentForward",
1754
+ "historyUndo",
1755
+ ];
1756
+ this._shouldAutocomplete = !allowedEventTypes.includes(eventType) && !this.noTypeahead;
1757
+ if (e instanceof InputEvent) {
1758
+ // ---- Special cases of numeric Input ----
1759
+ // ---------------- Start -----------------
1760
+ // When the last character after the delimiter is removed.
1761
+ // In such cases, we want to skip the re-rendering of the
1762
+ // component as this leads to cursor repositioning and causes user experience issues.
1763
+ // There are few scenarios:
1764
+ // Example: type "123.4" and press BACKSPACE - the native input is firing event with the whole part as value (123).
1765
+ // Pressing BACKSPACE again will remove the delimiter and the native input will fire event with the whole part as value again (123).
1766
+ // Example: type "123.456", select/mark "456" and press BACKSPACE - the native input is firing event with the whole part as value (123).
1767
+ // Example: type "123.456", select/mark "123.456" and press BACKSPACE - the native input is firing event with empty value.
1768
+ const delimiterCase = this.isTypeNumber
1769
+ && (e.inputType === "deleteContentForward" || e.inputType === "deleteContentBackward")
1770
+ && !e.target.value.includes(".")
1771
+ && this.value.includes(".");
1772
+ // Handle special numeric notation with "e", example "12.5e12"
1773
+ const eNotationCase = emptyValueFiredOnNumberInput && e.data === "e";
1774
+ // Handle special numeric notation with "-", example "-3"
1775
+ // When pressing BACKSPACE, the native input fires event with empty value
1776
+ const minusRemovalCase = emptyValueFiredOnNumberInput
1777
+ && this.value.startsWith("-")
1778
+ && this.value.length === 2
1779
+ && (e.inputType === "deleteContentForward" || e.inputType === "deleteContentBackward");
1780
+ if (delimiterCase || eNotationCase || minusRemovalCase) {
1781
+ this.value = e.target.value;
1782
+ this._keepInnerValue = true;
1783
+ }
1784
+ // ----------------- End ------------------
1785
+ }
1786
+ if (e.target === inputDomRef) {
1787
+ this.focused = true;
1788
+ // stop the native event, as the semantic "input" would be fired.
1789
+ e.stopImmediatePropagation();
1790
+ }
1791
+ this.fireEventByAction(INPUT_ACTIONS.ACTION_ENTER, e);
1792
+ this.hasSuggestionItemSelected = false;
1793
+ if (this.Suggestions) {
1794
+ this.Suggestions.updateSelectedItemPosition(-1);
1795
+ }
1796
+ this.isTyping = true;
1797
+ }
1798
+ _startsWithMatchingItems(str) {
1799
+ return StartsWith(str, this._selectableItems, "text");
1800
+ }
1801
+ _getFirstMatchingItem(current) {
1802
+ if (!this._flattenItems.length) {
1803
+ return;
1804
+ }
1805
+ const matchingItems = this._startsWithMatchingItems(current).filter(item => !this._isGroupItem(item));
1806
+ if (matchingItems.length) {
1807
+ return matchingItems[0];
1808
+ }
1809
+ }
1810
+ _handleSelectionChange(e) {
1811
+ this.Suggestions?.onItemPress(e);
1812
+ }
1813
+ _selectMatchingItem(item) {
1814
+ item.selected = true;
1815
+ }
1816
+ _handleTypeAhead(item) {
1817
+ const value = item.text ? item.text : "";
1818
+ this._innerValue = value;
1819
+ this.value = value;
1820
+ this._performTextSelection = true;
1821
+ this._shouldAutocomplete = false;
1822
+ }
1823
+ _handleResize() {
1824
+ this._inputWidth = this.offsetWidth;
1825
+ }
1826
+ _updateAssociatedLabelsTexts() {
1827
+ this._associatedLabelsTexts = BusyIndicator.M(this);
1828
+ this._accessibleLabelsRefTexts = BusyIndicator.E(this);
1829
+ this._associatedDescriptionRefTexts = BusyIndicator.p(this);
1830
+ }
1831
+ _closePicker() {
1832
+ this.open = false;
1833
+ }
1834
+ _afterOpenPicker() {
1835
+ // Set initial focus to the native input
1836
+ if (Icons.d()) {
1837
+ (this.getInputDOMRef()).focus();
1838
+ }
1839
+ this._handlePickerAfterOpen();
1840
+ }
1841
+ _afterClosePicker() {
1842
+ this.announceSelectedItem();
1843
+ // close device's keyboard and prevent further typing
1844
+ if (Icons.d()) {
1845
+ this.blur();
1846
+ this.focused = false;
1847
+ }
1848
+ if (this._changeToBeFired && !this._isChangeTriggeredBySuggestion) {
1849
+ this.previousValue = this.value;
1850
+ this.fireDecoratorEvent(INPUT_EVENTS.CHANGE);
1851
+ }
1852
+ else {
1853
+ this._isChangeTriggeredBySuggestion = false;
1854
+ }
1855
+ this._changeToBeFired = false;
1856
+ this.open = false;
1857
+ this.isTyping = false;
1858
+ if (this.hasSuggestionItemSelected) {
1859
+ this.focus();
1860
+ }
1861
+ this._handlePickerAfterClose();
1862
+ }
1863
+ _handlePickerAfterOpen() {
1864
+ this.fireDecoratorEvent("open");
1865
+ }
1866
+ _handlePickerAfterClose() {
1867
+ this.Suggestions?._onClose();
1868
+ this.fireDecoratorEvent("close");
1869
+ }
1870
+ openValueStatePopover() {
1871
+ this.valueStateOpen = true;
1872
+ }
1873
+ closeValueStatePopover() {
1874
+ this.valueStateOpen = false;
1875
+ }
1876
+ _handleValueStatePopoverAfterClose() {
1877
+ this.valueStateOpen = false;
1878
+ this._handleLinkNavigation = false;
1879
+ }
1880
+ _getValueStatePopover() {
1881
+ return this.shadowRoot.querySelector("[ui5-popover]");
1882
+ }
1883
+ enableSuggestions() {
1884
+ if (this.Suggestions) {
1885
+ return;
1886
+ }
1887
+ const setup = (Suggestions) => {
1888
+ Suggestions.i18nBundle = Input_1.i18nBundle;
1889
+ this.Suggestions = new Suggestions(this, "suggestionItems", true, false);
1890
+ };
1891
+ // If the feature is preloaded (the user manually imported InputSuggestions.js), it is already available on the constructor
1892
+ if (Input_1.SuggestionsClass) {
1893
+ setup(Input_1.SuggestionsClass);
1894
+ // If feature is not preloaded, load it dynamically
1895
+ }
1896
+ else {
1897
+ new Promise(function (resolve, reject) { require(['sap/ushell/thirdparty/_dynamics/InputSuggestions'], resolve, reject); }).then(SuggestionsModule => {
1898
+ setup(SuggestionsModule.default);
1899
+ });
1900
+ }
1901
+ }
1902
+ acceptSuggestion(item, keyboardUsed) {
1903
+ if (this._isGroupItem(item)) {
1904
+ return;
1905
+ }
1906
+ const itemText = item.text || "";
1907
+ const fireChange = keyboardUsed
1908
+ ? this.valueBeforeItemSelection !== itemText : this.previousValue !== itemText;
1909
+ this.hasSuggestionItemSelected = true;
1910
+ this.value = itemText;
1911
+ if (fireChange && (this.previousValue !== itemText)) {
1912
+ this.valueBeforeItemSelection = itemText;
1913
+ this.lastConfirmedValue = itemText;
1914
+ this._performTextSelection = true;
1915
+ this.fireDecoratorEvent(INPUT_EVENTS.CHANGE);
1916
+ this._isChangeTriggeredBySuggestion = true;
1917
+ // value might change in the change event handler
1918
+ this.typedInValue = this.value;
1919
+ this.previousValue = this.value;
1920
+ }
1921
+ this.valueBeforeSelectionStart = "";
1922
+ this.isTyping = false;
1923
+ this.open = false;
1924
+ }
1925
+ /**
1926
+ * Updates the input value on item select.
1927
+ * @param item The item that is on select
1928
+ */
1929
+ updateValueOnSelect(item) {
1930
+ const itemValue = this._isGroupItem(item) ? this.valueBeforeSelectionStart : item.text;
1931
+ this.value = itemValue || "";
1932
+ this._performTextSelection = true;
1933
+ }
1934
+ fireEventByAction(action, e) {
1935
+ const valueBeforeInput = this.value;
1936
+ const inputRef = this.getInputDOMRefSync();
1937
+ if (this.disabled || this.readonly) {
1938
+ return;
1939
+ }
1940
+ const inputValue = this.getInputValue();
1941
+ const isUserInput = action === INPUT_ACTIONS.ACTION_ENTER;
1942
+ this.value = inputValue;
1943
+ this.typedInValue = inputValue;
1944
+ this.valueBeforeSelectionStart = inputValue;
1945
+ const valueAfterInput = this.value;
1946
+ if (isUserInput) { // input
1947
+ const inputType = e.inputType || "";
1948
+ const prevented = !this.fireDecoratorEvent(INPUT_EVENTS.INPUT, { inputType });
1949
+ if (prevented) {
1950
+ // if the value is not changed after preventing the input event, revert the value
1951
+ if (valueAfterInput === this.value) {
1952
+ this.value = valueBeforeInput;
1953
+ }
1954
+ inputRef && (inputRef.value = this.value);
1955
+ }
1956
+ this.fireResetSelectionChange();
1957
+ }
1958
+ }
1959
+ getInputValue() {
1960
+ const domRef = this.getDomRef();
1961
+ if (domRef) {
1962
+ return (this.getInputDOMRef()).value;
1963
+ }
1964
+ return "";
1965
+ }
1966
+ getInputDOMRef() {
1967
+ if (Icons.d() && this.Suggestions) {
1968
+ return this.Suggestions._getPicker().querySelector(".ui5-input-inner-phone");
1969
+ }
1970
+ return this.nativeInput;
1971
+ }
1972
+ getInputDOMRefSync() {
1973
+ if (Icons.d() && this.Suggestions?._getPicker()) {
1974
+ return this.Suggestions._getPicker().querySelector(".ui5-input-inner-phone").shadowRoot.querySelector("input");
1975
+ }
1976
+ return this.nativeInput;
1977
+ }
1978
+ /**
1979
+ * Returns a reference to the native input element
1980
+ * @protected
1981
+ */
1982
+ get nativeInput() {
1983
+ const domRef = this.getDomRef();
1984
+ return domRef ? domRef.querySelector(`input`) : null;
1985
+ }
1986
+ get nativeInputWidth() {
1987
+ return this.nativeInput ? this.nativeInput.offsetWidth : 0;
1988
+ }
1989
+ /**
1990
+ * Returns if the suggestions popover is scrollable.
1991
+ * The method returns `Promise` that resolves to true,
1992
+ * if the popup is scrollable and false otherwise.
1993
+ */
1994
+ isSuggestionsScrollable() {
1995
+ if (!this.Suggestions) {
1996
+ return Promise.resolve(false);
1997
+ }
1998
+ return this.Suggestions?._isScrollable();
1999
+ }
2000
+ onItemMouseDown(e) {
2001
+ e.preventDefault();
2002
+ }
2003
+ onItemSelected(suggestionItem, keyboardUsed) {
2004
+ const shouldFireSelectionChange = !keyboardUsed && !suggestionItem?.focused && this.valueBeforeItemSelection !== suggestionItem.text;
2005
+ if (shouldFireSelectionChange) {
2006
+ this.fireSelectionChange(suggestionItem, true);
2007
+ }
2008
+ this.acceptSuggestion(suggestionItem, keyboardUsed);
2009
+ }
2010
+ _handleSuggestionItemPress(e) {
2011
+ this.Suggestions?.onItemPress(e);
2012
+ }
2013
+ onItemSelect(item) {
2014
+ this.valueBeforeItemSelection = this.value;
2015
+ this.updateValueOnSelect(item);
2016
+ this.announceSelectedItem();
2017
+ this.fireSelectionChange(item, true);
2018
+ }
2019
+ get _flattenItems() {
2020
+ return this.getSlottedNodes("suggestionItems").flatMap(item => {
2021
+ return this._isGroupItem(item) ? [item, ...item.items] : [item];
2022
+ });
2023
+ }
2024
+ get _selectableItems() {
2025
+ return this._flattenItems.filter(item => !this._isGroupItem(item));
2026
+ }
2027
+ get valueStateTypeMappings() {
2028
+ return {
2029
+ "Positive": Input_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_TYPE_SUCCESS),
2030
+ "Information": Input_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_TYPE_INFORMATION),
2031
+ "Negative": Input_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_TYPE_ERROR),
2032
+ "Critical": Input_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_TYPE_WARNING),
2033
+ };
2034
+ }
2035
+ valueStateTextMappings() {
2036
+ return {
2037
+ "Positive": Input_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_SUCCESS),
2038
+ "Information": Input_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_INFORMATION),
2039
+ "Negative": Input_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_ERROR),
2040
+ "Critical": Input_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_WARNING),
2041
+ };
2042
+ }
2043
+ announceSelectedItem() {
2044
+ const invisibleText = this.shadowRoot.querySelector(`#selectionText`);
2045
+ if (invisibleText) {
2046
+ invisibleText.textContent = this.itemSelectionAnnounce;
2047
+ }
2048
+ }
2049
+ fireSelectionChange(item, isValueFromSuggestions) {
2050
+ if (this.Suggestions) {
2051
+ this.fireDecoratorEvent(INPUT_EVENTS.SELECTION_CHANGE, { item });
2052
+ this._isLatestValueFromSuggestions = isValueFromSuggestions;
2053
+ }
2054
+ }
2055
+ fireResetSelectionChange() {
2056
+ if (this._isLatestValueFromSuggestions) {
2057
+ this.fireSelectionChange(null, false);
2058
+ this.valueBeforeItemSelection = this.value;
2059
+ }
2060
+ }
2061
+ get _readonly() {
2062
+ return this.readonly && !this.disabled;
2063
+ }
2064
+ get _headerTitleText() {
2065
+ return Input_1.i18nBundle.getText(i18nDefaults.INPUT_SUGGESTIONS_TITLE);
2066
+ }
2067
+ get _suggestionsOkButtonText() {
2068
+ return Input_1.i18nBundle.getText(i18nDefaults.INPUT_SUGGESTIONS_OK_BUTTON);
2069
+ }
2070
+ get clearIconAccessibleName() {
2071
+ return Input_1.i18nBundle.getText(i18nDefaults.INPUT_CLEAR_ICON_ACC_NAME);
2072
+ }
2073
+ get _popupLabel() {
2074
+ return Input_1.i18nBundle.getText(i18nDefaults.INPUT_AVALIABLE_VALUES);
2075
+ }
2076
+ get inputType() {
2077
+ return this.type;
2078
+ }
2079
+ get inputNativeType() {
2080
+ return this.type.toLowerCase();
2081
+ }
2082
+ get isTypeNumber() {
2083
+ return this.type === InputType$1.Number;
2084
+ }
2085
+ get suggestionsTextId() {
2086
+ return this.showSuggestions ? `suggestionsText` : "";
2087
+ }
2088
+ get valueStateTextId() {
2089
+ return this.hasValueState ? `valueStateDesc` : "";
2090
+ }
2091
+ get _accInfoAriaDescription() {
2092
+ return (this._inputAccInfo && this._inputAccInfo.ariaDescription) || "";
2093
+ }
2094
+ get _accInfoAriaDescriptionId() {
2095
+ const hasAriaDescription = this._accInfoAriaDescription !== "";
2096
+ return hasAriaDescription ? "descr" : "";
2097
+ }
2098
+ get ariaDescriptionText() {
2099
+ return this._associatedDescriptionRefTexts || BusyIndicator.L(this);
2100
+ }
2101
+ get ariaDescriptionTextId() {
2102
+ return this.ariaDescriptionText ? "accessibleDescription" : "";
2103
+ }
2104
+ get ariaDescribedByIds() {
2105
+ return [
2106
+ this.suggestionsTextId,
2107
+ this.valueStateTextId,
2108
+ this._valueStateLinksShortcutsTextAccId,
2109
+ this._inputAccInfo.ariaDescribedBy,
2110
+ this._accInfoAriaDescriptionId,
2111
+ this.ariaDescriptionTextId,
2112
+ ].filter(Boolean).join(" ");
2113
+ }
2114
+ get accInfo() {
2115
+ const ariaHasPopupDefault = this.showSuggestions ? "dialog" : undefined;
2116
+ const ariaAutoCompleteDefault = this.showSuggestions ? "list" : undefined;
2117
+ return {
2118
+ "ariaRoledescription": this._inputAccInfo && (this._inputAccInfo.ariaRoledescription || undefined),
2119
+ "ariaDescribedBy": this.ariaDescribedByIds || undefined,
2120
+ "ariaInvalid": this.valueState === ValueState.o.Negative ? true : undefined,
2121
+ "ariaHasPopup": this._inputAccInfo.ariaHasPopup ? this._inputAccInfo.ariaHasPopup : ariaHasPopupDefault,
2122
+ "ariaAutoComplete": this._inputAccInfo.ariaAutoComplete ? this._inputAccInfo.ariaAutoComplete : ariaAutoCompleteDefault,
2123
+ "role": this._inputAccInfo && this._inputAccInfo.role,
2124
+ "ariaControls": this._inputAccInfo && this._inputAccInfo.ariaControls,
2125
+ "ariaExpanded": this._inputAccInfo && this._inputAccInfo.ariaExpanded,
2126
+ "ariaDescription": this._accInfoAriaDescription,
2127
+ "accessibleDescription": this.ariaDescriptionText,
2128
+ "ariaLabel": (this._inputAccInfo && this._inputAccInfo.ariaLabel) || this._accessibleLabelsRefTexts || this.accessibleName || this._associatedLabelsTexts || undefined,
2129
+ };
2130
+ }
2131
+ get nativeInputAttributes() {
2132
+ return {
2133
+ "min": this.isTypeNumber ? this._nativeInputAttributes.min : undefined,
2134
+ "max": this.isTypeNumber ? this._nativeInputAttributes.max : undefined,
2135
+ "step": this.isTypeNumber ? (this._nativeInputAttributes.step || "any") : undefined,
2136
+ };
2137
+ }
2138
+ get ariaValueStateHiddenText() {
2139
+ if (!this.hasValueState) {
2140
+ return;
2141
+ }
2142
+ const valueState = this.valueState !== ValueState.o.None ? this.valueStateTypeMappings[this.valueState] : "";
2143
+ if (this.shouldDisplayDefaultValueStateMessage) {
2144
+ return this.valueStateText ? `${valueState} ${this.valueStateText}` : valueState;
2145
+ }
2146
+ return this.valueStateMessage.length ? `${valueState} ${this.valueStateMessage.map(el => el.textContent).join(" ")}` : valueState;
2147
+ }
2148
+ get itemSelectionAnnounce() {
2149
+ return this.Suggestions ? this.Suggestions.itemSelectionAnnounce : "";
2150
+ }
2151
+ get linksInAriaValueStateHiddenText() {
2152
+ const links = [];
2153
+ if (this.valueStateMessage) {
2154
+ this.valueStateMessage.forEach(element => {
2155
+ if (element.children.length) {
2156
+ element.querySelectorAll("ui5-link").forEach(link => {
2157
+ links.push(link);
2158
+ });
2159
+ }
2160
+ });
2161
+ }
2162
+ return links;
2163
+ }
2164
+ get valueStateLinksShortcutsTextAcc() {
2165
+ const links = this.linksInAriaValueStateHiddenText;
2166
+ if (!links.length) {
2167
+ return "";
2168
+ }
2169
+ if (Icons.A$1()) {
2170
+ return links.length === 1
2171
+ ? Input_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_LINK_MAC)
2172
+ : Input_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_LINKS_MAC);
2173
+ }
2174
+ return links.length === 1
2175
+ ? Input_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_LINK)
2176
+ : Input_1.i18nBundle.getText(i18nDefaults.VALUE_STATE_LINKS);
2177
+ }
2178
+ get _valueStateLinksShortcutsTextAccId() {
2179
+ return this.linksInAriaValueStateHiddenText.length > 0 ? `hiddenText-value-state-link-shortcut` : "";
2180
+ }
2181
+ get iconsCount() {
2182
+ const slottedIconsCount = this.icon ? this.icon.length : 0;
2183
+ const clearIconCount = Number(this._effectiveShowClearIcon) ?? 0;
2184
+ return slottedIconsCount + clearIconCount;
2185
+ }
2186
+ get classes() {
2187
+ return {
2188
+ popover: {
2189
+ "ui5-suggestions-popover": this.showSuggestions,
2190
+ "ui5-popover-with-value-state-header-phone": this._isPhone && this.showSuggestions && this.hasValueStateMessage,
2191
+ "ui5-popover-with-value-state-header": !this._isPhone && this.showSuggestions && this.hasValueStateMessage,
2192
+ },
2193
+ popoverValueState: {
2194
+ "ui5-valuestatemessage-root": true,
2195
+ "ui5-valuestatemessage-header": true,
2196
+ "ui5-valuestatemessage--success": this.valueState === ValueState.o.Positive,
2197
+ "ui5-valuestatemessage--error": this.valueState === ValueState.o.Negative,
2198
+ "ui5-valuestatemessage--warning": this.valueState === ValueState.o.Critical,
2199
+ "ui5-valuestatemessage--information": this.valueState === ValueState.o.Information,
2200
+ },
2201
+ };
2202
+ }
2203
+ get styles() {
2204
+ const remSizeInPx = parseInt(getComputedStyle(document.documentElement).fontSize);
2205
+ const stylesObject = {
2206
+ suggestionPopoverHeader: {
2207
+ "display": this._listWidth === 0 ? "none" : "inline-block",
2208
+ "width": this._listWidth ? `${this._listWidth}px` : "",
2209
+ "max-width": "inherit",
2210
+ },
2211
+ suggestionsPopover: {
2212
+ "min-width": this._inputWidth ? `${this._inputWidth}px` : "",
2213
+ "max-width": this._inputWidth && (this._inputWidth / remSizeInPx) > 40 ? `${this._inputWidth}px` : "40rem",
2214
+ },
2215
+ innerInput: {
2216
+ "padding": "",
2217
+ },
2218
+ };
2219
+ return stylesObject;
2220
+ }
2221
+ get suggestionSeparators() {
2222
+ return "None";
2223
+ }
2224
+ get shouldDisplayOnlyValueStateMessage() {
2225
+ return this.hasValueStateMessage && !this.readonly && !this.open && this.focused;
2226
+ }
2227
+ get shouldDisplayDefaultValueStateMessage() {
2228
+ return !this.valueStateMessage.length && this.hasValueStateMessage;
2229
+ }
2230
+ get hasValueState() {
2231
+ return this.valueState !== ValueState.o.None;
2232
+ }
2233
+ get hasValueStateMessage() {
2234
+ return this.hasValueState && this.valueState !== ValueState.o.Positive
2235
+ && (!this._inputIconFocused // Handles the cases when valueStateMessage is forwarded (from datepicker e.g.)
2236
+ || !!(this._isPhone && this.Suggestions)); // Handles Input with suggestions on mobile
2237
+ }
2238
+ get valueStateText() {
2239
+ return this.valueState !== ValueState.o.None ? this.valueStateTextMappings()[this.valueState] : undefined;
2240
+ }
2241
+ get suggestionsText() {
2242
+ return Input_1.i18nBundle.getText(i18nDefaults.INPUT_SUGGESTIONS);
2243
+ }
2244
+ get availableSuggestionsCount() {
2245
+ if (this.showSuggestions && (this.value || this.Suggestions?.isOpened())) {
2246
+ const nonGroupItems = this._selectableItems;
2247
+ switch (nonGroupItems.length) {
2248
+ case 0:
2249
+ return Input_1.i18nBundle.getText(i18nDefaults.INPUT_SUGGESTIONS_NO_HIT);
2250
+ case 1:
2251
+ return Input_1.i18nBundle.getText(i18nDefaults.INPUT_SUGGESTIONS_ONE_HIT);
2252
+ default:
2253
+ return Input_1.i18nBundle.getText(i18nDefaults.INPUT_SUGGESTIONS_MORE_HITS, nonGroupItems.length);
2254
+ }
2255
+ }
2256
+ return undefined;
2257
+ }
2258
+ get step() {
2259
+ return this.isTypeNumber ? "any" : undefined;
2260
+ }
2261
+ get _isPhone() {
2262
+ return Icons.d();
2263
+ }
2264
+ get _isSuggestionsFocused() {
2265
+ return !this.focused && this.Suggestions?.isOpened();
2266
+ }
2267
+ /**
2268
+ * Returns the placeholder value.
2269
+ * @protected
2270
+ */
2271
+ get _placeholder() {
2272
+ return this.placeholder;
2273
+ }
2274
+ /**
2275
+ * This method is relevant for sap_horizon theme only
2276
+ */
2277
+ get _valueStateInputIcon() {
2278
+ const iconPerValueState = {
2279
+ Negative: `<path xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" d="M10 20C4.47715 20 0 15.5228 0 10C0 4.47715 4.47715 0 10 0C15.5228 0 20 4.47715 20 10C20 15.5228 15.5228 20 10 20ZM7.70711 13.7071C7.31658 14.0976 6.68342 14.0976 6.29289 13.7071C5.90237 13.3166 5.90237 12.6834 6.29289 12.2929L8.58579 10L6.29289 7.70711C5.90237 7.31658 5.90237 6.68342 6.29289 6.29289C6.68342 5.90237 7.31658 5.90237 7.70711 6.29289L10 8.58579L12.2929 6.29289C12.6834 5.90237 13.3166 5.90237 13.7071 6.29289C14.0976 6.68342 14.0976 7.31658 13.7071 7.70711L11.4142 10L13.7071 12.2929C14.0976 12.6834 14.0976 13.3166 13.7071 13.7071C13.3166 14.0976 12.6834 14.0976 12.2929 13.7071L10 11.4142L7.70711 13.7071Z" fill="#EE3939"/>`,
2280
+ Critical: `<path xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" d="M11.8619 0.49298C11.6823 0.187541 11.3544 0 11 0C10.6456 0 10.3177 0.187541 10.1381 0.49298L0.138066 17.493C-0.0438112 17.8022 -0.0461447 18.1851 0.13195 18.4965C0.310046 18.8079 0.641283 19 1 19H21C21.3587 19 21.69 18.8079 21.868 18.4965C22.0461 18.1851 22.0438 17.8022 21.8619 17.493L11.8619 0.49298ZM11 6C11.5523 6 12 6.44772 12 7V10C12 10.5523 11.5523 11 11 11C10.4477 11 10 10.5523 10 10V7C10 6.44772 10.4477 6 11 6ZM11 16C11.8284 16 12.5 15.3284 12.5 14.5C12.5 13.6716 11.8284 13 11 13C10.1716 13 9.5 13.6716 9.5 14.5C9.5 15.3284 10.1716 16 11 16Z" fill="#F58B00"/>`,
2281
+ Positive: `<path xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" d="M0 10C0 15.5228 4.47715 20 10 20C15.5228 20 20 15.5228 20 10C20 4.47715 15.5228 0 10 0C4.47715 0 0 4.47715 0 10ZM14.7071 6.29289C14.3166 5.90237 13.6834 5.90237 13.2929 6.29289L8 11.5858L6.70711 10.2929C6.31658 9.90237 5.68342 9.90237 5.29289 10.2929C4.90237 10.6834 4.90237 11.3166 5.29289 11.7071L7.29289 13.7071C7.68342 14.0976 8.31658 14.0976 8.70711 13.7071L14.7071 7.70711C15.0976 7.31658 15.0976 6.68342 14.7071 6.29289Z" fill="#36A41D"/>`,
2282
+ Information: `<path xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" d="M3 0C1.34315 0 0 1.34315 0 3V15C0 16.6569 1.34315 18 3 18H15C16.6569 18 18 16.6569 18 15V3C18 1.34315 16.6569 0 15 0H3ZM9 6.5C9.82843 6.5 10.5 5.82843 10.5 5C10.5 4.17157 9.82843 3.5 9 3.5C8.17157 3.5 7.5 4.17157 7.5 5C7.5 5.82843 8.17157 6.5 9 6.5ZM9 8.5C9.55228 8.5 10 8.94772 10 9.5V13.5C10 14.0523 9.55228 14.5 9 14.5C8.44771 14.5 8 14.0523 8 13.5V9.5C8 8.94772 8.44771 8.5 9 8.5Z" fill="#1B90FF"/>`,
2283
+ };
2284
+ if (this.valueState !== ValueState.o.None) {
2285
+ return `
2286
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="20" viewBox="0 0 20 20" fill="none">
2287
+ ${iconPerValueState[this.valueState]};
2288
+ </svg>
2289
+ `;
2290
+ }
2291
+ return "";
2292
+ }
2293
+ get _valueStatePopoverHorizontalAlign() {
2294
+ return this.effectiveDir !== "rtl" ? "Start" : "End";
2295
+ }
2296
+ /**
2297
+ * This method is relevant for sap_horizon theme only
2298
+ */
2299
+ get _valueStateMessageInputIcon() {
2300
+ const iconPerValueState = {
2301
+ Negative: "error",
2302
+ Critical: "alert",
2303
+ Positive: "sys-enter-2",
2304
+ Information: "information",
2305
+ };
2306
+ return this.valueState !== ValueState.o.None ? iconPerValueState[this.valueState] : "";
2307
+ }
2308
+ /**
2309
+ * Returns the caret position inside the native input
2310
+ * @protected
2311
+ */
2312
+ getCaretPosition() {
2313
+ return n(this.nativeInput);
2314
+ }
2315
+ /**
2316
+ * Sets the caret to a certain position inside the native input
2317
+ * @protected
2318
+ */
2319
+ setCaretPosition(pos) {
2320
+ o(this.nativeInput, pos);
2321
+ }
2322
+ /**
2323
+ * Removes the fractional part of floating-point number.
2324
+ * @param value the numeric value of Input of type "Number"
2325
+ */
2326
+ removeFractionalPart(value) {
2327
+ if (value.includes(".")) {
2328
+ return value.slice(0, value.indexOf("."));
2329
+ }
2330
+ if (value.includes(",")) {
2331
+ return value.slice(0, value.indexOf(","));
2332
+ }
2333
+ return value;
2334
+ }
2335
+ };
2336
+ __decorate$4([
2337
+ webcomponentsBase.s({ type: Boolean })
2338
+ ], Input.prototype, "disabled", void 0);
2339
+ __decorate$4([
2340
+ webcomponentsBase.s({ type: Boolean })
2341
+ ], Input.prototype, "highlight", void 0);
2342
+ __decorate$4([
2343
+ webcomponentsBase.s()
2344
+ ], Input.prototype, "placeholder", void 0);
2345
+ __decorate$4([
2346
+ webcomponentsBase.s({ type: Boolean })
2347
+ ], Input.prototype, "readonly", void 0);
2348
+ __decorate$4([
2349
+ webcomponentsBase.s({ type: Boolean })
2350
+ ], Input.prototype, "required", void 0);
2351
+ __decorate$4([
2352
+ webcomponentsBase.s({ type: Boolean })
2353
+ ], Input.prototype, "noTypeahead", void 0);
2354
+ __decorate$4([
2355
+ webcomponentsBase.s()
2356
+ ], Input.prototype, "type", void 0);
2357
+ __decorate$4([
2358
+ webcomponentsBase.s()
2359
+ ], Input.prototype, "value", void 0);
2360
+ __decorate$4([
2361
+ webcomponentsBase.s({ noAttribute: true })
2362
+ ], Input.prototype, "_innerValue", void 0);
2363
+ __decorate$4([
2364
+ webcomponentsBase.s()
2365
+ ], Input.prototype, "valueState", void 0);
2366
+ __decorate$4([
2367
+ webcomponentsBase.s()
2368
+ ], Input.prototype, "name", void 0);
2369
+ __decorate$4([
2370
+ webcomponentsBase.s({ type: Boolean })
2371
+ ], Input.prototype, "showSuggestions", void 0);
2372
+ __decorate$4([
2373
+ webcomponentsBase.s({ type: Number })
2374
+ ], Input.prototype, "maxlength", void 0);
2375
+ __decorate$4([
2376
+ webcomponentsBase.s()
2377
+ ], Input.prototype, "accessibleName", void 0);
2378
+ __decorate$4([
2379
+ webcomponentsBase.s()
2380
+ ], Input.prototype, "accessibleNameRef", void 0);
2381
+ __decorate$4([
2382
+ webcomponentsBase.s()
2383
+ ], Input.prototype, "accessibleDescription", void 0);
2384
+ __decorate$4([
2385
+ webcomponentsBase.s()
2386
+ ], Input.prototype, "accessibleDescriptionRef", void 0);
2387
+ __decorate$4([
2388
+ webcomponentsBase.s({ type: Boolean })
2389
+ ], Input.prototype, "showClearIcon", void 0);
2390
+ __decorate$4([
2391
+ webcomponentsBase.s({ type: Boolean })
2392
+ ], Input.prototype, "open", void 0);
2393
+ __decorate$4([
2394
+ webcomponentsBase.s({ type: Boolean })
2395
+ ], Input.prototype, "_effectiveShowClearIcon", void 0);
2396
+ __decorate$4([
2397
+ webcomponentsBase.s({ type: Boolean })
2398
+ ], Input.prototype, "focused", void 0);
2399
+ __decorate$4([
2400
+ webcomponentsBase.s()
2401
+ ], Input.prototype, "hint", void 0);
2402
+ __decorate$4([
2403
+ webcomponentsBase.s({ type: Boolean })
2404
+ ], Input.prototype, "valueStateOpen", void 0);
2405
+ __decorate$4([
2406
+ webcomponentsBase.s({ type: Object })
2407
+ ], Input.prototype, "_inputAccInfo", void 0);
2408
+ __decorate$4([
2409
+ webcomponentsBase.s({ type: Object })
2410
+ ], Input.prototype, "_nativeInputAttributes", void 0);
2411
+ __decorate$4([
2412
+ webcomponentsBase.s({ type: Number })
2413
+ ], Input.prototype, "_inputWidth", void 0);
2414
+ __decorate$4([
2415
+ webcomponentsBase.s({ type: Number })
2416
+ ], Input.prototype, "_listWidth", void 0);
2417
+ __decorate$4([
2418
+ webcomponentsBase.s({ type: Boolean, noAttribute: true })
2419
+ ], Input.prototype, "_inputIconFocused", void 0);
2420
+ __decorate$4([
2421
+ webcomponentsBase.s({ noAttribute: true })
2422
+ ], Input.prototype, "_associatedLabelsTexts", void 0);
2423
+ __decorate$4([
2424
+ webcomponentsBase.s({ noAttribute: true })
2425
+ ], Input.prototype, "_accessibleLabelsRefTexts", void 0);
2426
+ __decorate$4([
2427
+ webcomponentsBase.s({ noAttribute: true })
2428
+ ], Input.prototype, "_associatedDescriptionRefTexts", void 0);
2429
+ __decorate$4([
2430
+ webcomponentsBase.s({ type: Object })
2431
+ ], Input.prototype, "Suggestions", void 0);
2432
+ __decorate$4([
2433
+ webcomponentsBase.s({ type: Array })
2434
+ ], Input.prototype, "_linksListenersArray", void 0);
2435
+ __decorate$4([
2436
+ webcomponentsBase.d({ type: HTMLElement, "default": true })
2437
+ ], Input.prototype, "suggestionItems", void 0);
2438
+ __decorate$4([
2439
+ webcomponentsBase.d()
2440
+ ], Input.prototype, "icon", void 0);
2441
+ __decorate$4([
2442
+ webcomponentsBase.d({
2443
+ type: HTMLElement,
2444
+ invalidateOnChildChange: true,
2445
+ })
2446
+ ], Input.prototype, "valueStateMessage", void 0);
2447
+ __decorate$4([
2448
+ i18nDefaults.i("sap/ushell/gen/ui5/webcomponents")
2449
+ ], Input, "i18nBundle", void 0);
2450
+ Input = Input_1 = __decorate$4([
2451
+ webcomponentsBase.m({
2452
+ tag: "ui5-input",
2453
+ languageAware: true,
2454
+ formAssociated: true,
2455
+ renderer: parametersBundle_css.y,
2456
+ template: InputTemplate,
2457
+ styles: [
2458
+ inputStyles,
2459
+ ResponsivePopoverCommonCss,
2460
+ ValueStateMessageCss,
2461
+ SuggestionsCss,
2462
+ ],
2463
+ })
2464
+ /**
2465
+ * Fired when the input operation has finished by pressing Enter or on focusout.
2466
+ * @public
2467
+ */
2468
+ ,
2469
+ eventStrict.l("change", {
2470
+ bubbles: true,
2471
+ })
2472
+ /**
2473
+ * Fired when the value of the component changes at each keystroke,
2474
+ * and when a suggestion item has been selected.
2475
+ * @public
2476
+ */
2477
+ ,
2478
+ eventStrict.l("input", {
2479
+ bubbles: true,
2480
+ cancelable: true,
2481
+ })
2482
+ /**
2483
+ * Fired when some text has been selected.
2484
+ *
2485
+ * @since 2.0.0
2486
+ * @public
2487
+ */
2488
+ ,
2489
+ eventStrict.l("select", {
2490
+ bubbles: true,
2491
+ })
2492
+ /**
2493
+ * Fired when the user navigates to a suggestion item via the ARROW keys,
2494
+ * as a preview, before the final selection.
2495
+ * @param {HTMLElement} item The previewed suggestion item.
2496
+ * @public
2497
+ * @since 2.0.0
2498
+ */
2499
+ ,
2500
+ eventStrict.l("selection-change", {
2501
+ bubbles: true,
2502
+ })
2503
+ /**
2504
+ * Fires when a suggestion item is autocompleted in the input.
2505
+ *
2506
+ * @private
2507
+ */
2508
+ ,
2509
+ eventStrict.l("type-ahead", {
2510
+ bubbles: true,
2511
+ })
2512
+ /**
2513
+ * Fired when the user scrolls the suggestion popover.
2514
+ * @param {Integer} scrollTop The current scroll position.
2515
+ * @param {HTMLElement} scrollContainer The scroll container.
2516
+ * @protected
2517
+ * @since 1.0.0-rc.8
2518
+ */
2519
+ ,
2520
+ eventStrict.l("suggestion-scroll", {
2521
+ bubbles: true,
2522
+ })
2523
+ /**
2524
+ * Fired when the suggestions picker is open.
2525
+ * @public
2526
+ * @since 2.0.0
2527
+ */
2528
+ ,
2529
+ eventStrict.l("open", {
2530
+ bubbles: true,
2531
+ })
2532
+ /**
2533
+ * Fired when the suggestions picker is closed.
2534
+ * @public
2535
+ * @since 2.0.0
2536
+ */
2537
+ ,
2538
+ eventStrict.l("close")
2539
+ ], Input);
2540
+ Input.define();
2541
+ var Input$1 = Input;
2542
+
2543
+ function SuggestionItemTemplate() {
2544
+ return [ListItemBaseTemplate.call(this, { listItemContent }, { role: "option" })];
2545
+ }
2546
+ function listItemContent() {
2547
+ return parametersBundle_css.jsx("div", { part: "content", id: "content", class: "ui5-li-content", children: parametersBundle_css.jsxs("div", { class: "ui5-li-text-wrapper", children: [parametersBundle_css.jsx("span", { part: "title", className: "ui5-li-title", dangerouslySetInnerHTML: { __html: this.markupText } }), this.additionalText &&
2548
+ parametersBundle_css.jsx("span", { part: "additional-text", class: "ui5-li-additional-text", children: this.additionalText })] }) });
2549
+ }
2550
+
2551
+ Icons.p("@" + "ui5" + "/" + "webcomponents-theming", "sap_horizon", async () => parametersBundle_css.defaultThemeBase);
2552
+ Icons.p("@" + "u" + "i" + "5" + "/" + "w" + "e" + "b" + "c" + "o" + "m" + "p" + "o" + "n" + "e" + "n" + "t" + "s", "sap_horizon", async () => i18nDefaults.defaultTheme);
2553
+ var styles = `:host([ui5-suggestion-item]){height:auto;min-height:var(--_ui5-v2-14-0-rc-7_list_item_base_height)}:host([ui5-suggestion-item]) .ui5-li-root{min-height:var(--_ui5-v2-14-0-rc-7_list_item_base_height)}:host([ui5-suggestion-item]) .ui5-li-content{padding-bottom:.5rem;padding-top:.5rem;box-sizing:border-box}
2554
+ `;
2555
+
2556
+ var __decorate$3 = (this && this.__decorate) || function (decorators, target, key, desc) {
2557
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2558
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2559
+ 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;
2560
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
2561
+ };
2562
+ /**
2563
+ * @class
2564
+ * The `ui5-suggestion-item` represents the suggestion item of the `ui5-input`.
2565
+ * @constructor
2566
+ * @extends ListItemBase
2567
+ * @abstract
2568
+ * @implements { IInputSuggestionItemSelectable }
2569
+ * @public
2570
+ */
2571
+ let SuggestionItem = class SuggestionItem extends ListItemBase.ListItemBase {
2572
+ constructor() {
2573
+ super(...arguments);
2574
+ /**
2575
+ * Defines the markup text that will be displayed as suggestion.
2576
+ * Used for highlighting the matching parts of the text.
2577
+ *
2578
+ * @since 2.0.0
2579
+ * @private
2580
+ */
2581
+ this.markupText = "";
2582
+ }
2583
+ onEnterDOM() {
2584
+ if (Icons.f()) {
2585
+ this.setAttribute("desktop", "");
2586
+ }
2587
+ }
2588
+ get _effectiveTabIndex() {
2589
+ return -1;
2590
+ }
2591
+ };
2592
+ __decorate$3([
2593
+ webcomponentsBase.s()
2594
+ ], SuggestionItem.prototype, "text", void 0);
2595
+ __decorate$3([
2596
+ webcomponentsBase.s()
2597
+ ], SuggestionItem.prototype, "additionalText", void 0);
2598
+ __decorate$3([
2599
+ webcomponentsBase.s()
2600
+ ], SuggestionItem.prototype, "markupText", void 0);
2601
+ SuggestionItem = __decorate$3([
2602
+ webcomponentsBase.m({
2603
+ tag: "ui5-suggestion-item",
2604
+ template: SuggestionItemTemplate,
2605
+ styles: [ListItemBase.ListItemBase.styles, styles],
2606
+ })
2607
+ ], SuggestionItem);
2608
+ SuggestionItem.define();
2609
+ var SuggestionItem$1 = SuggestionItem;
2610
+
2611
+ /**
2612
+ * Different input key hints.
2613
+ * https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/enterkeyhint
2614
+ *
2615
+ * @private
2616
+ */
2617
+ var InputKeyHint;
2618
+ (function (InputKeyHint) {
2619
+ InputKeyHint["Search"] = "search";
2620
+ InputKeyHint["Go"] = "go";
2621
+ InputKeyHint["Next"] = "next";
2622
+ InputKeyHint["Enter"] = "enter";
2623
+ InputKeyHint["Done"] = "done";
2624
+ InputKeyHint["Previous"] = "previous";
2625
+ InputKeyHint["Send"] = "send";
2626
+ })(InputKeyHint || (InputKeyHint = {}));
2627
+ var InputKeyHint$1 = InputKeyHint;
2628
+
2629
+ function SearchPopoverTemplate(headerTemplate) {
2630
+ return (parametersBundle_css.jsxs(ResponsivePopover.ResponsivePopover, { hideArrow: true, preventFocusRestore: true, preventInitialFocus: !Icons.d(), accessibleNameRef: "suggestions-speech-output message-area-text message-area-description", placement: ResponsivePopover.PopoverPlacement.Bottom, horizontalAlign: ResponsivePopover.PopoverHorizontalAlign.Start, open: this.open, opener: this, onOpen: this._handleOpen, onClose: this._handleClose, onBeforeClose: this._handleBeforeClose, onBeforeOpen: this._handleBeforeOpen, class: {
2631
+ "ui5-search-popover": true,
2632
+ "ui5-search-popover-phone": Icons.d(),
2633
+ }, children: [Icons.d() ? (headerTemplate ? headerTemplate.call(this) : (parametersBundle_css.jsx(parametersBundle_css.Fragment, { children: parametersBundle_css.jsxs("header", { slot: "header", class: "ui5-search-popup-searching-header", children: [parametersBundle_css.jsx(Input$1, { class: "ui5-search-popover-search-field", onInput: this._handleMobileInput, showClearIcon: this.showClearIcon, noTypeahead: this.noTypeahead, hint: InputKeyHint$1.Search, onKeyDown: this._onMobileInputKeydown, children: this._flattenItems.map(item => {
2634
+ return (parametersBundle_css.jsx(SuggestionItem$1, { text: item.text }));
2635
+ }) }), parametersBundle_css.jsx(Button.Button, { design: Button.ButtonDesign.Transparent, onClick: this._handleCancel, children: this.cancelButtonText })] }) }))) : null, parametersBundle_css.jsxs("main", { class: "ui5-search-popover-content", children: [parametersBundle_css.jsx("slot", { name: "messageArea" }), parametersBundle_css.jsx("div", { class: "search-popover-busy-wrapper", children: parametersBundle_css.jsx(BusyIndicator.BusyIndicator, { active: true }) }), this.items.length ?
2636
+ parametersBundle_css.jsx(List.List, { class: "ui5-search-list", separators: List.ListSeparator.None, onKeyDown: this._onItemKeydown, accessibleRole: List.ListAccessibleRole.ListBox, onItemClick: this._onItemClick, children: parametersBundle_css.jsx("slot", {}) })
2637
+ : (parametersBundle_css.jsx("slot", { name: "illustration" })), parametersBundle_css.jsx("span", { class: "ui5-hidden-text", id: "suggestions-speech-output", children: this.suggestionsText }), this.messageArea[0]?.text ? (parametersBundle_css.jsx("span", { class: "ui5-hidden-text", id: "message-area-text", children: this.messageArea[0].text })) : null, this.messageArea[0]?.description ? (parametersBundle_css.jsx("span", { class: "ui5-hidden-text", id: "message-area-description", children: this.messageArea[0].description })) : null] }), this.action.length ? (parametersBundle_css.jsx("slot", { onKeyDown: this._handleActionKeydown, name: "action", slot: "footer" })) : null] }));
2638
+ }
2639
+
2640
+ function SearchTemplate() {
2641
+ return (parametersBundle_css.jsxs(parametersBundle_css.Fragment, { children: [SearchFieldTemplate.call(this), SearchPopoverTemplate.call(this)] }));
2642
+ }
2643
+
2644
+ Icons.p("@" + "ui5" + "/" + "webcomponents-theming", "sap_horizon", async () => parametersBundle_css.defaultThemeBase);
2645
+ Icons.p("@" + "u" + "i" + "5" + "/" + "w" + "e" + "b" + "c" + "o" + "m" + "p" + "o" + "n" + "e" + "n" + "t" + "s" + "-" + "f" + "i" + "o" + "r" + "i", "sap_horizon", async () => parametersBundle_css$1.defaultTheme);
2646
+ var SearchCss = `.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-search-popover{width:var(--search_width);margin-top:.25rem;box-sizing:border-box}.ui5-search-popup-searching-header{display:flex;gap:.5rem;width:100%;align-items:center}.ui5-search-popover::part(header){padding:.5rem 1rem;box-shadow:none;box-sizing:border-box}.ui5-search-popover::part(header):before{display:none}.ui5-search-popover::part(content){padding:0;box-shadow:none}:host([loading]) .ui5-search-popover main{min-height:2rem}.ui5-search-popover-search-field{flex:1;height:2.25rem;border-radius:var(--_ui5-v2-14-0-rc-7_search_input_border_radius)}.ui5-search-popover-search-field::part(root):after{border-radius:var(--_ui5-v2-14-0-rc-7_search_input_border_radius)}.ui5-search-popover-search-field::part(input){padding-inline-start:.875rem}.ui5-search-popover-search-field::part(clear-icon-wrapper){margin-inline-end:.5rem}.ui5-search-popover-loading-bi{width:100%;height:100%}::slotted([slot="action"]){width:100%;margin-top:.5rem;margin-bottom:.5rem}.search-popover-busy-wrapper{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:42;width:100%;height:100%;display:none;justify-content:center;align-items:center;pointer-events:all}:host([loading]) .search-popover-busy-wrapper{display:flex;width:100%;height:100%}.search-popover-busy-wrapper [ui5-busy-indicator]{z-index:1}.search-popover-busy-wrapper:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--_ui5-v2-14-0-rc-7-search-loading-overlay-background);opacity:var(--_ui5-v2-14-0-rc-7-search-loading-overlay-transparency);border-radius:var(--_ui5-v2-14-0-rc-7_popup_border_radius)}.ui5-search-popover-phone .ui5-search-popover-content{position:relative;width:100%;height:100%;display:flex;flex-direction:column}.ui5-search-popover-phone .search-popover-busy-wrapper:after{border-radius:0}
2647
+ `;
2648
+
2649
+ Icons.p("@" + "ui5" + "/" + "webcomponents-theming", "sap_horizon", async () => parametersBundle_css.defaultThemeBase);
2650
+ Icons.p("@" + "u" + "i" + "5" + "/" + "w" + "e" + "b" + "c" + "o" + "m" + "p" + "o" + "n" + "e" + "n" + "t" + "s" + "-" + "f" + "i" + "o" + "r" + "i", "sap_horizon", async () => parametersBundle_css$1.defaultTheme);
2651
+ var SearchFieldCss = `:host,.ui5-shellbar-search-field-wrapper{height:2.25rem;display:flex;align-items:center}:host(:not([collapsed])),.ui5-shellbar-search-field-wrapper{min-width:18rem;max-width:36rem;margin:0;height:2.25rem;color:var(--sapShell_TextColor);font-size:var(--sapFontSize);font-family:var(--sapFontFamily);font-style:normal;box-shadow:var(--sapField_Shadow);border-radius:var(--_ui5-v2-14-0-rc-7_search_input_border_radius);box-sizing:border-box;text-align:start;background:var(--sapField_BackgroundStyle);background-color:var(--_ui5-v2-14-0-rc-7-search-wrapper-background);position:relative}.ui5-shellbar-search-field-wrapper{flex:1;min-width:auto}:host(:not([collapsed]):hover),:host(:not([collapsed]):focus-within),.ui5-shellbar-search-field-wrapper:focus-within{box-shadow:var(--sapField_Hover_Shadow);background:var(--_ui5-v2-14-0-rc-7-search-wrapper-hover-background);background-color:var(--_ui5-v2-14-0-rc-7-search-wrapper-hover-background-color)}:host([focused-inner-input]) .ui5-search-field-root{outline:var(--_ui5-v2-14-0-rc-7_search_wrapper_outline);border-radius:var(--_ui5-v2-14-0-rc-7_search_input_border_radius);outline-offset:-.125rem}.ui5-search-field-root{width:100%;height:100%;position:relative;background:transparent;display:inline-block;outline:none;box-sizing:border-box;color:inherit;transition:border-color .2s ease-in-out;border-radius:var(--_ui5-v2-14-0-rc-7_search_input_border_radius);overflow:hidden}.ui5-search-field-content{height:100%;display:flex;flex-direction:row;justify-content:flex-end;align-items:center;overflow:hidden}[ui5-select]{--_ui5-v2-14-0-rc-7_content_density: compact;outline:none;margin:var(--_ui5-v2-14-0-rc-7_search_input_scope_margin);max-width:10rem;border-radius:var(--_ui5-v2-14-0-rc-7_search_input_border_radius);border:var(--_ui5-v2-14-0-rc-7-search-border);box-shadow:none;background:unset;background-color:var(--_ui5-v2-14-0-rc-7-search-elements-background);height:var(--_ui5-v2-14-0-rc-7-search-select-height);--_ui5-v2-14-0-rc-7_select_label_color: var(--sapShell_TextColor)}[ui5-select]:hover{box-shadow:var(--sapField_Hover_Shadow)}[ui5-select]::part(icon){display:flex;justify-content:center;align-items:stretch;height:100%;padding:0 .5rem;align-self:center;border-radius:var(--_ui5-v2-14-0-rc-7_search_input_border_radius);color:var(--sapShell_InteractiveTextColor)}[ui5-select]::part(popover){background-color:var(--sapShellColor)}.ui5-filter-wrapper{--_ui5-v2-14-0-rc-7_button_focused_border_radius: var(--_ui5-v2-14-0-rc-7_search_filter_button_border_radius)}::slotted([slot="filterButton"]){min-width:var(--_ui5-v2-14-0-rc-7_search_icon_size);height:var(--_ui5-v2-14-0-rc-7_search_icon_size);border:var(--_ui5-v2-14-0-rc-7_search_filter_button_border);border-radius:var(--_ui5-v2-14-0-rc-7_search_filter_button_border_radius);color:var(--sapShell_InteractiveTextColor);outline:none;background:var(--_ui5-v2-14-0-rc-7-search-filter_button_background_color);box-sizing:border-box;margin-inline-end:.1875rem;margin-inline-start:.25rem}::slotted([slot="filterButton"]:focus-within){background-color:var(--ui5-v2-14-0-rc-7_search_filter_button_background_active);border:var(--_ui5-v2-14-0-rc-7_search_filter_button_border)}::slotted([slot="filterButton"]:hover){background-color:var(--sapShell_Hover_Background);border:var(--_ui5-v2-14-0-rc-7_seach_filter_button_border_hover)}.ui5-search-field-inner-input{font-size:var(--sapFontSize);font-family:var(--sapFontFamily);font-style:normal;padding:.5rem 0;height:100%;width:100%;box-sizing:border-box;background-color:var(--_ui5-v2-14-0-rc-7-search-elements-background);border:var(--_ui5-v2-14-0-rc-7-search-border);outline:none;color:inherit;padding-inline-start:var(--_ui5-v2-14-0-rc-7-search-input-start-padding);padding-inline-end:var(--_ui5-v2-14-0-rc-7_search_input_end_padding)}:host([focused-inner-input]) .ui5-search-field-inner-input{outline:var(--_ui5-v2-14-0-rc-7_search_input_outline);border-radius:var(--_ui5-v2-14-0-rc-7_search_input_border_radius);outline-offset:-.3125rem}:host(:not([mode="Scoped"])) .ui5-search-field-inner-input{padding-inline-start:.875rem}[ui5-select]:hover,.ui5-search-field-inner-input:hover{background-color:var(--_ui5-v2-14-0-rc-7-search-elements-hover-background)}[ui5-select]:focus-within,.ui5-search-field-inner-input:focus-within{background-color:var(--_ui5-v2-14-0-rc-7-search-elements-active-background)}.ui5-search-field-inner-input::placeholder{font-weight:400;font-style:italic;color:var(--sapField_PlaceholderTextColor);padding-inline-start:.125rem}:host([mode="Scoped"]) .ui5-search-field-inner-input{margin-inline-start:var(--_ui5-v2-14-0-rc-7_search_input_start_margin)}.ui5-search-field-separator{height:1.5rem;width:.0625rem;background:var(--_ui5-v2-14-0-rc-7_search_separator_background);box-sizing:border-box}.ui5-shell-search-field-button{outline:none;min-width:var(--_ui5-v2-14-0-rc-7_search_icon_size);height:var(--_ui5-v2-14-0-rc-7_search_icon_size);border-radius:var(--_ui5-v2-14-0-rc-7_search_icon_border_radius);box-sizing:border-box;cursor:pointer}.ui5-shell-search-field-button:not([design=Emphasized]){color:var(--sapShell_InteractiveTextColor);background-color:var(--_ui5-v2-14-0-rc-7-search-elements-background);min-width:var(--_ui5-v2-14-0-rc-7_search_icon_size_default);height:var(--_ui5-v2-14-0-rc-7_search_icon_size_default);border-radius:var(--_ui5-v2-14-0-rc-7_shellbar_button_border_radius)}.ui5-shell-search-field-button:not([design=Emphasized]):hover{background-color:var(--sapShell_Hover_Background);border-color:var(--sapButton_Lite_Hover_BorderColor);border-radius:var(--_ui5-v2-14-0-rc-7_shellbar_button_border_radius)}.ui5-shell-search-field-button[desktop]:not([active])::part(button):after,.ui5-shell-search-field-button:not([active])::part(button):focus-visible:after,.ui5-shell-search-field-button[desktop][active][design=Emphasized]::part(button):focus-within:after,.ui5-shell-search-field-button[active][design=Emphasized]::part(button):focus-visible:after,.ui5-shell-search-field-button[desktop][active]::part(button):focus-within:before,.ui5-shell-search-field-button[active]::part(button):focus-visible:before,.ui5-shell-search-field-button[design=Emphasized][desktop]::part(button):focus-within:before,.ui5-shell-search-field-button[design=Emphasized]::part(button):focus-visible:before{border-radius:var(--_ui5-v2-14-0-rc-7_shellbar_button_border_radius)}.ui5-shell-search-field-icon{display:flex;justify-content:center;align-items:stretch;cursor:pointer;outline:none;min-width:var(--_ui5-v2-14-0-rc-7_search_icon_size);height:var(--_ui5-v2-14-0-rc-7_search_icon_size);border-radius:var(--_ui5-v2-14-0-rc-7_search_icon_border_radius);margin-inline-end:.25rem;margin-inline-start:.1875rem;box-sizing:border-box;color:var(--sapShell_InteractiveTextColor);background-color:var(--_ui5-v2-14-0-rc-7-search-elements-background);border:var(--_ui5-v2-14-0-rc-7-search-icon-border)}.ui5-shell-search-field-icon::part(root){padding:var(--_ui5-v2-14-0-rc-7_search_icon_padding);width:1rem;height:1rem;outline-offset:-.125rem}.ui5-shell-search-field-icon:hover::part(root){padding:var(--_ui5-v2-14-0-rc-7_search_icon_hover_padding);outline-offset:-.1875rem}.ui5-shell-search-field-icon:focus::part(root){border-radius:var(--_ui5-v2-14-0-rc-7_search_icon_border_radius)}.ui5-shell-search-field-icon:hover,.ui5-shell-search-field-input-button:hover{background:var(--sapShell_Hover_Background);border:1px solid var(--sapButton_Lite_Hover_BorderColor);color:var(--sapShell_InteractiveTextColor)}.ui5-shell-search-field-search-icon{background-color:var(--sapButton_Emphasized_Background);border-color:var(--sapButton_Emphasized_BorderColor);color:var(--sapButton_Emphasized_TextColor)}.ui5-search-field-select{--_ui5-v2-14-0-rc-7_input_focus_border_radius: var(--_ui5-v2-14-0-rc-7_search_input_border_radius)}.ui5-search-field-select:hover,.ui5-search-field-select[focused]{background:var(--_ui5-v2-14-0-rc-7-search-wrapper-hover-background-color)}.ui5-search-field-select::part(icon-wrapper){border-radius:var(--_ui5-v2-14-0-rc-7_search_input_border_radius);height:100%}.ui5-search-field-select[focused]::part(icon-wrapper){box-shadow:var(--sapField_Hover_Shadow)}:host(:not([collapsed]):hover):has([ui5-select]:hover){background:var(--_ui5-v2-14-0-rc-7-search-wrapper-background)}:host(:not([collapsed])):has([ui5-select][focused]){background:var(--_ui5-v2-14-0-rc-7-search-wrapper-background)}.ui5-search-field-inner-input::selection{background:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}
2652
+ `;
2653
+
2654
+ var __decorate$2 = (this && this.__decorate) || function (decorators, target, key, desc) {
2655
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2656
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2657
+ 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;
2658
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
2659
+ };
2660
+ var SearchField_1;
2661
+ /**
2662
+ * @class
2663
+ *
2664
+ * ### Overview
2665
+ *
2666
+ * A `ui5-search-field` is an input field, used for user search.
2667
+ *
2668
+ * The `ui5-search-field` consists of several elements parts:
2669
+ * - Scope - displays a select in the beggining of the component, used for filtering results by their scope.
2670
+ * - Input field - for user input value
2671
+ * - Clear button - gives the possibility for deleting the entered value
2672
+ * - Search button - a primary button for performing search, when the user has entered a search term
2673
+ *
2674
+ * ### ES6 Module Import
2675
+ *
2676
+ * `import "sap/ushell/gen/ui5/webcomponents-fiori/dist/SearchField.js";`
2677
+ *
2678
+ * @constructor
2679
+ * @extends UI5Element
2680
+ * @private
2681
+ */
2682
+ let SearchField = SearchField_1 = class SearchField extends webcomponentsBase.b {
2683
+ constructor() {
2684
+ super(...arguments);
2685
+ /**
2686
+ * Defines whether the clear icon of the search will be shown.
2687
+ * @default false
2688
+ * @public
2689
+ */
2690
+ this.showClearIcon = false;
2691
+ /**
2692
+ * Defines whether the component is collapsed.
2693
+ *
2694
+ * @default false
2695
+ * @private
2696
+ */
2697
+ this.collapsed = false;
2698
+ /**
2699
+ * Defines the value of the component.
2700
+ *
2701
+ * **Note:** The property is updated upon typing.
2702
+ * @default ""
2703
+ * @public
2704
+ */
2705
+ this.value = "";
2706
+ /**
2707
+ * @private
2708
+ */
2709
+ this.focusedInnerInput = false;
2710
+ /**
2711
+ * @private
2712
+ */
2713
+ this._effectiveShowClearIcon = false;
2714
+ }
2715
+ onBeforeRendering() {
2716
+ this._effectiveShowClearIcon = (this.showClearIcon && !!this.value);
2717
+ }
2718
+ _onkeydown(e) {
2719
+ if (webcomponentsBase.b$1(e)) {
2720
+ return this._handleEnter();
2721
+ }
2722
+ }
2723
+ _onfocusin() {
2724
+ this.focusedInnerInput = true;
2725
+ }
2726
+ _onfocusout() {
2727
+ this.focusedInnerInput = false;
2728
+ }
2729
+ _onFocusOutSearch(e) { } // eslint-disable-line
2730
+ _handleEnter() {
2731
+ if (this.value.length) {
2732
+ this._handleSearchEvent();
2733
+ }
2734
+ }
2735
+ _handleInnerClick() { } // eslint-disable-line
2736
+ _handleSearchIconPress() {
2737
+ this._handleSearchEvent();
2738
+ setTimeout(() => {
2739
+ this.focus();
2740
+ }, 0);
2741
+ }
2742
+ _handleSearchEvent() {
2743
+ this.fireDecoratorEvent("search");
2744
+ }
2745
+ _handleInput(e) {
2746
+ this.value = e.target.value;
2747
+ this.fireDecoratorEvent("input");
2748
+ }
2749
+ _handleClear() {
2750
+ this.value = "";
2751
+ this.fireDecoratorEvent("input");
2752
+ this.focus();
2753
+ }
2754
+ _handleScopeChange(e) {
2755
+ const item = e.detail.selectedOption;
2756
+ this.fireDecoratorEvent("scope-change", {
2757
+ scope: item.scopeOption,
2758
+ });
2759
+ }
2760
+ get _isSearchIcon() {
2761
+ return this.value.length && this.focusedInnerInput;
2762
+ }
2763
+ get _searchButtonAccessibilityAttributes() {
2764
+ return {
2765
+ expanded: !this.collapsed,
2766
+ };
2767
+ }
2768
+ get _translations() {
2769
+ return {
2770
+ scope: SearchField_1.i18nBundle.getText(i18nDefaults$1.SEARCH_FIELD_SCOPE_SELECT_LABEL),
2771
+ searchIcon: SearchField_1.i18nBundle.getText(i18nDefaults$1.SEARCH_FIELD_SEARCH_ICON),
2772
+ clearIcon: SearchField_1.i18nBundle.getText(i18nDefaults$1.SEARCH_FIELD_CLEAR_ICON),
2773
+ searchFieldAriaLabel: SearchField_1.i18nBundle.getText(i18nDefaults$1.SEARCH_FIELD_LABEL),
2774
+ };
2775
+ }
2776
+ get _effectiveIconTooltip() {
2777
+ return this._translations.searchIcon;
2778
+ }
2779
+ captureRef(ref) {
2780
+ if (ref) {
2781
+ ref.scopeOption = this;
2782
+ }
2783
+ }
2784
+ };
2785
+ __decorate$2([
2786
+ webcomponentsBase.s({ type: Boolean })
2787
+ ], SearchField.prototype, "showClearIcon", void 0);
2788
+ __decorate$2([
2789
+ webcomponentsBase.s({ type: Boolean })
2790
+ ], SearchField.prototype, "collapsed", void 0);
2791
+ __decorate$2([
2792
+ webcomponentsBase.s()
2793
+ ], SearchField.prototype, "value", void 0);
2794
+ __decorate$2([
2795
+ webcomponentsBase.s()
2796
+ ], SearchField.prototype, "placeholder", void 0);
2797
+ __decorate$2([
2798
+ webcomponentsBase.s()
2799
+ ], SearchField.prototype, "accessibleName", void 0);
2800
+ __decorate$2([
2801
+ webcomponentsBase.s()
2802
+ ], SearchField.prototype, "accessibleDescription", void 0);
2803
+ __decorate$2([
2804
+ webcomponentsBase.d({ type: HTMLElement, individualSlots: true, invalidateOnChildChange: true })
2805
+ ], SearchField.prototype, "scopes", void 0);
2806
+ __decorate$2([
2807
+ webcomponentsBase.d()
2808
+ ], SearchField.prototype, "filterButton", void 0);
2809
+ __decorate$2([
2810
+ webcomponentsBase.s({ type: Boolean })
2811
+ ], SearchField.prototype, "focusedInnerInput", void 0);
2812
+ __decorate$2([
2813
+ webcomponentsBase.s({ type: Boolean })
2814
+ ], SearchField.prototype, "_effectiveShowClearIcon", void 0);
2815
+ __decorate$2([
2816
+ i18nDefaults.i("sap/ushell/gen/ui5/webcomponents-fiori")
2817
+ ], SearchField, "i18nBundle", void 0);
2818
+ SearchField = SearchField_1 = __decorate$2([
2819
+ webcomponentsBase.m({
2820
+ tag: "ui5-search-field",
2821
+ languageAware: true,
2822
+ renderer: parametersBundle_css.y,
2823
+ template: SearchFieldTemplate,
2824
+ styles: [
2825
+ SearchFieldCss,
2826
+ ],
2827
+ })
2828
+ /**
2829
+ * Fired when typing in input or clear icon is pressed.
2830
+ *
2831
+ * @public
2832
+ */
2833
+ ,
2834
+ eventStrict.l("input", {
2835
+ bubbles: true,
2836
+ })
2837
+ /**
2838
+ * Fired when the scope has changed.
2839
+ * @public
2840
+ * @param {HTMLElement} scope The newly selected scope
2841
+ */
2842
+ ,
2843
+ eventStrict.l("scope-change", {
2844
+ bubbles: true,
2845
+ })
2846
+ /**
2847
+ * Fired when the user has triggered search with Enter key or Search Button press.
2848
+ * @public
2849
+ */
2850
+ ,
2851
+ eventStrict.l("search", {
2852
+ bubbles: true,
2853
+ cancelable: true,
2854
+ })
2855
+ ], SearchField);
2856
+ SearchField.define();
2857
+ var SearchField$1 = SearchField;
2858
+
2859
+ var __decorate$1 = (this && this.__decorate) || function (decorators, target, key, desc) {
2860
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2861
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2862
+ 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;
2863
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
2864
+ };
2865
+ var Search_1;
2866
+ /**
2867
+ * @class
2868
+ *
2869
+ * ### Overview
2870
+ *
2871
+ * A `ui5-search` is an input with suggestions, used for user search.
2872
+ *
2873
+ * The `ui5-search` consists of several elements parts:
2874
+ * - Scope - displays a select in the beggining of the component, used for filtering results by their scope.
2875
+ * - Input field - for user input value
2876
+ * - Clear button - gives the possibility for deleting the entered value
2877
+ * - Search button - a primary button for performing search, when the user has entered a search term
2878
+ * - Suggestions - a list with available search suggestions
2879
+ *
2880
+ * ### ES6 Module Import
2881
+ *
2882
+ * `import "sap/ushell/gen/ui5/webcomponents-fiori/dist/Search.js";`
2883
+ *
2884
+ * @constructor
2885
+ * @extends SearchField
2886
+ * @public
2887
+ * @since 2.9.0
2888
+ * @experimental
2889
+ */
2890
+ let Search = Search_1 = class Search extends SearchField$1 {
2891
+ constructor() {
2892
+ super();
2893
+ /**
2894
+ * Indicates whether a loading indicator should be shown in the popup.
2895
+ * @default false
2896
+ * @public
2897
+ */
2898
+ this.loading = false;
2899
+ /**
2900
+ * Defines whether the value will be autcompleted to match an item.
2901
+ * @default false
2902
+ * @public
2903
+ */
2904
+ this.noTypeahead = false;
2905
+ /**
2906
+ * Indicates whether the items picker is open.
2907
+ * @public
2908
+ */
2909
+ this.open = false;
2910
+ // The typed in value.
2911
+ this._typedInValue = "";
2912
+ this._valueBeforeOpen = this.getAttribute("value") || "";
2913
+ }
2914
+ onBeforeRendering() {
2915
+ super.onBeforeRendering();
2916
+ const innerInput = this.nativeInput;
2917
+ const autoCompletedChars = innerInput && (innerInput.selectionEnd - innerInput.selectionStart);
2918
+ // If there is already a selection the autocomplete has already been performed
2919
+ if (this._shouldAutocomplete && !autoCompletedChars) {
2920
+ const item = this._getFirstMatchingItem(this.value);
2921
+ this._proposedItem = item;
2922
+ if (!Icons.d()) {
2923
+ this.open = this._popoupHasAnyContent();
2924
+ }
2925
+ if (item) {
2926
+ this._handleTypeAhead(item);
2927
+ this._selectMatchingItem(item);
2928
+ }
2929
+ }
2930
+ if (Icons.d() && this.open) {
2931
+ const item = this._getFirstMatchingItem(this.value);
2932
+ this._proposedItem = item;
2933
+ if (item && this._performItemSelectionOnMobile) {
2934
+ this._selectMatchingItem(item);
2935
+ }
2936
+ }
2937
+ this._flattenItems.forEach(item => {
2938
+ item.highlightText = this._typedInValue;
2939
+ });
2940
+ }
2941
+ onAfterRendering() {
2942
+ const innerInput = this.nativeInput;
2943
+ if (this._performTextSelection && innerInput && innerInput.value !== this._innerValue) {
2944
+ innerInput.value = this._innerValue || "";
2945
+ }
2946
+ if (this._performTextSelection && this._typedInValue.length && this.value.length) {
2947
+ innerInput?.setSelectionRange(this._typedInValue.length, this.value.length);
2948
+ }
2949
+ this._performTextSelection = false;
2950
+ if (!this.collapsed) {
2951
+ this.style.setProperty("--search_width", `${this.getBoundingClientRect().width}px`);
2952
+ }
2953
+ }
2954
+ _handleMobileInput(e) {
2955
+ this.value = e.target.value;
2956
+ this._performItemSelectionOnMobile = this._shouldPerformSelectionOnMobile(e.detail.inputType);
2957
+ this.fireDecoratorEvent("input");
2958
+ }
2959
+ _shouldPerformSelectionOnMobile(inputType) {
2960
+ const allowedEventTypes = [
2961
+ "deleteWordBackward",
2962
+ "deleteWordForward",
2963
+ "deleteSoftLineBackward",
2964
+ "deleteSoftLineForward",
2965
+ "deleteEntireSoftLine",
2966
+ "deleteHardLineBackward",
2967
+ "deleteHardLineForward",
2968
+ "deleteByDrag",
2969
+ "deleteByCut",
2970
+ "deleteContent",
2971
+ "deleteContentBackward",
2972
+ "deleteContentForward",
2973
+ "historyUndo",
2974
+ ];
2975
+ return !this.noTypeahead && !allowedEventTypes.includes(inputType || "");
2976
+ }
2977
+ _handleTypeAhead(item) {
2978
+ const originalValue = item.text || "";
2979
+ this._typedInValue = this.value;
2980
+ this._innerValue = originalValue;
2981
+ this._performTextSelection = true;
2982
+ this.value = originalValue;
2983
+ this._shouldAutocomplete = false;
2984
+ }
2985
+ _startsWithMatchingItems(str) {
2986
+ return StartsWith(str, this._flattenItems.filter(item => !this._isGroupItem(item) && !this._isShowMoreItem(item)), "text");
2987
+ }
2988
+ _isGroupItem(item) {
2989
+ return item.hasAttribute("ui5-search-item-group");
2990
+ }
2991
+ _isShowMoreItem(item) {
2992
+ return item.hasAttribute("ui5-search-item-show-more");
2993
+ }
2994
+ _deselectItems() {
2995
+ this._flattenItems.forEach(item => {
2996
+ item.selected = false;
2997
+ });
2998
+ }
2999
+ _selectMatchingItem(item) {
3000
+ this._deselectItems();
3001
+ item.selected = true;
3002
+ }
3003
+ _handleDown(e) {
3004
+ if (this.open) {
3005
+ e.preventDefault();
3006
+ this._handleArrowDown();
3007
+ }
3008
+ }
3009
+ _handleArrowDown() {
3010
+ const focusableItems = this._getItemsList().listItems;
3011
+ const firstListItem = focusableItems.at(0);
3012
+ if (this.open) {
3013
+ this._deselectItems();
3014
+ this.value = this._typedInValue || this.value;
3015
+ this._innerValue = this.value;
3016
+ firstListItem?.focus();
3017
+ }
3018
+ }
3019
+ _handleInnerClick() {
3020
+ if (Icons.d()) {
3021
+ this.open = true;
3022
+ }
3023
+ }
3024
+ _handleSearchIconPress() {
3025
+ if (Icons.d()) {
3026
+ this.open = true;
3027
+ }
3028
+ else {
3029
+ super._handleSearchIconPress();
3030
+ }
3031
+ }
3032
+ _handleEnter() {
3033
+ const prevented = !this.fireDecoratorEvent("search", { item: this._proposedItem });
3034
+ if (prevented) {
3035
+ return;
3036
+ }
3037
+ const innerInput = this.nativeInput;
3038
+ innerInput.setSelectionRange(this.value.length, this.value.length);
3039
+ this.open = false;
3040
+ }
3041
+ _onMobileInputKeydown(e) {
3042
+ if (webcomponentsBase.b$1(e)) {
3043
+ this.value = this.mobileInput?.value || this.value;
3044
+ this._handleEnter();
3045
+ this.blur();
3046
+ }
3047
+ }
3048
+ _handleSearchEvent() {
3049
+ this.fireDecoratorEvent("search", { item: this._proposedItem });
3050
+ }
3051
+ _handleEscape() {
3052
+ this.value = this._typedInValue || this.value;
3053
+ this._innerValue = this.value;
3054
+ }
3055
+ _handleInput(e) {
3056
+ super._handleInput(e);
3057
+ this._typedInValue = this.value;
3058
+ if (Icons.d()) {
3059
+ return;
3060
+ }
3061
+ this.open = (e.currentTarget.value.length > 0) && this._popoupHasAnyContent();
3062
+ }
3063
+ _popoupHasAnyContent() {
3064
+ return this.items.length > 0 || this.illustration.length > 0 || this.messageArea.length > 0 || this.loading || this.action.length > 0;
3065
+ }
3066
+ _onFooterButtonKeyDown(e) {
3067
+ if (webcomponentsBase.P(e)) {
3068
+ this._flattenItems[this._flattenItems.length - 1].focus();
3069
+ }
3070
+ if (webcomponentsBase.V(e)) {
3071
+ this._getItemsList().focus();
3072
+ }
3073
+ }
3074
+ _onItemKeydown(e) {
3075
+ const target = e.target;
3076
+ // if focus is on the group header (in group's shadow dom) the target is the group itself,
3077
+ // if so using getFocusDomRef ensures the actual focused element is used
3078
+ const focusedItem = this._isGroupItem(target) ? target?.getFocusDomRef() : target;
3079
+ const focusableItems = this._getItemsList().listItems;
3080
+ const isFirstItem = focusableItems.at(0) === focusedItem;
3081
+ const isLastItem = focusableItems.at(-1) === focusedItem;
3082
+ const isArrowUp = webcomponentsBase.P(e);
3083
+ const isArrowDown = webcomponentsBase._(e);
3084
+ const isTab = webcomponentsBase.x(e);
3085
+ e.preventDefault();
3086
+ if (isFirstItem && isArrowUp) {
3087
+ this.nativeInput?.focus();
3088
+ this._shouldAutocomplete = true;
3089
+ }
3090
+ if ((isLastItem && isArrowDown) || isTab) {
3091
+ this._getFooterButton()?.focus();
3092
+ }
3093
+ }
3094
+ _onItemClick(e) {
3095
+ const item = e.detail.item;
3096
+ const prevented = !this.fireDecoratorEvent("search", { item });
3097
+ if (prevented) {
3098
+ if (Icons.d()) {
3099
+ this.open = false;
3100
+ }
3101
+ return;
3102
+ }
3103
+ this.value = item.text;
3104
+ this._innerValue = this.value;
3105
+ this._typedInValue = this.value;
3106
+ this.open = false;
3107
+ this.focus();
3108
+ }
3109
+ _onkeydown(e) {
3110
+ super._onkeydown(e);
3111
+ if (this.loading) {
3112
+ return;
3113
+ }
3114
+ this._shouldAutocomplete = !this.noTypeahead
3115
+ && !(webcomponentsBase.Q(e) || webcomponentsBase.X(e) || webcomponentsBase.m$2(e) || webcomponentsBase.P(e) || webcomponentsBase._(e) || webcomponentsBase.x(e) || webcomponentsBase.b$1(e) || webcomponentsBase.j(e) || webcomponentsBase.q(e) || webcomponentsBase.M(e) || webcomponentsBase.n(e) || webcomponentsBase.m$2(e));
3116
+ if (webcomponentsBase._(e)) {
3117
+ this._handleDown(e);
3118
+ }
3119
+ if (webcomponentsBase.m$2(e)) {
3120
+ this._handleEscape();
3121
+ }
3122
+ // deselect item on backspace or delete
3123
+ if (webcomponentsBase.Q(e) || webcomponentsBase.X(e)) {
3124
+ this._deselectItems();
3125
+ }
3126
+ }
3127
+ _onFocusOutSearch(e) {
3128
+ const target = e.relatedTarget;
3129
+ if (this._getPicker().contains(target) || this.contains(target)) {
3130
+ return;
3131
+ }
3132
+ this.open = false;
3133
+ }
3134
+ _handleBeforeClose(e) {
3135
+ if (e.detail.escPressed) {
3136
+ this.focus();
3137
+ }
3138
+ }
3139
+ _handleCancel() {
3140
+ this._handleClose();
3141
+ this.value = this._valueBeforeOpen;
3142
+ this.fireDecoratorEvent("input");
3143
+ }
3144
+ _handleClose() {
3145
+ this.open = false;
3146
+ this.fireDecoratorEvent("close");
3147
+ }
3148
+ _handleBeforeOpen() {
3149
+ this._valueBeforeOpen = this.value;
3150
+ if (Icons.d() && this.mobileInput) {
3151
+ this.mobileInput.value = this.value;
3152
+ }
3153
+ }
3154
+ _handleOpen() {
3155
+ this.fireDecoratorEvent("open");
3156
+ }
3157
+ _handleActionKeydown(e) {
3158
+ if (webcomponentsBase.P(e)) {
3159
+ this._flattenItems[this._flattenItems.length - 1].focus();
3160
+ }
3161
+ }
3162
+ _onFooterButtonClick() {
3163
+ this.fireDecoratorEvent("popup-action-press");
3164
+ }
3165
+ _getFirstMatchingItem(current) {
3166
+ if (!this._flattenItems.length || !current) {
3167
+ return;
3168
+ }
3169
+ const startsWithMatches = this._startsWithMatchingItems(current);
3170
+ if (!startsWithMatches.length) {
3171
+ return undefined;
3172
+ }
3173
+ return startsWithMatches[0];
3174
+ }
3175
+ _getPicker() {
3176
+ return this.shadowRoot.querySelector("[ui5-responsive-popover]");
3177
+ }
3178
+ _getItemsList() {
3179
+ return this._getPicker().querySelector(".ui5-search-list");
3180
+ }
3181
+ _getFooterButton() {
3182
+ return this.action[0];
3183
+ }
3184
+ get _flattenItems() {
3185
+ return this.getSlottedNodes("items").flatMap(item => {
3186
+ return this._isGroupItem(item) ? [item, ...item.items] : [item];
3187
+ });
3188
+ }
3189
+ get nativeInput() {
3190
+ const domRef = this.getDomRef();
3191
+ return domRef?.querySelector(`input`);
3192
+ }
3193
+ get mobileInput() {
3194
+ const domRef = this.shadowRoot;
3195
+ return domRef ? domRef.querySelector(`[ui5-input]`) : null;
3196
+ }
3197
+ get cancelButtonText() {
3198
+ return Search_1.i18nBundle.getText(i18nDefaults$1.SEARCH_CANCEL_BUTTON);
3199
+ }
3200
+ get suggestionsText() {
3201
+ return Search_1.i18nBundle.getText(i18nDefaults$1.SEARCH_SUGGESTIONS);
3202
+ }
3203
+ get scopeSelect() {
3204
+ const domRef = this.shadowRoot;
3205
+ return domRef ? domRef.querySelector(`[ui5-select]`) : null;
3206
+ }
3207
+ };
3208
+ __decorate$1([
3209
+ webcomponentsBase.s({ type: Boolean })
3210
+ ], Search.prototype, "loading", void 0);
3211
+ __decorate$1([
3212
+ webcomponentsBase.s({ type: Boolean })
3213
+ ], Search.prototype, "noTypeahead", void 0);
3214
+ __decorate$1([
3215
+ webcomponentsBase.d({
3216
+ type: HTMLElement,
3217
+ "default": true,
3218
+ invalidateOnChildChange: true,
3219
+ })
3220
+ ], Search.prototype, "items", void 0);
3221
+ __decorate$1([
3222
+ webcomponentsBase.d()
3223
+ ], Search.prototype, "action", void 0);
3224
+ __decorate$1([
3225
+ webcomponentsBase.d()
3226
+ ], Search.prototype, "illustration", void 0);
3227
+ __decorate$1([
3228
+ webcomponentsBase.d()
3229
+ ], Search.prototype, "messageArea", void 0);
3230
+ __decorate$1([
3231
+ webcomponentsBase.s({ type: Boolean })
3232
+ ], Search.prototype, "open", void 0);
3233
+ __decorate$1([
3234
+ webcomponentsBase.s({ noAttribute: true })
3235
+ ], Search.prototype, "_innerValue", void 0);
3236
+ __decorate$1([
3237
+ webcomponentsBase.s({ type: Boolean })
3238
+ ], Search.prototype, "_performItemSelectionOnMobile", void 0);
3239
+ __decorate$1([
3240
+ i18nDefaults.i("sap/ushell/gen/ui5/webcomponents-fiori")
3241
+ ], Search, "i18nBundle", void 0);
3242
+ Search = Search_1 = __decorate$1([
3243
+ webcomponentsBase.m({
3244
+ tag: "ui5-search",
3245
+ languageAware: true,
3246
+ renderer: parametersBundle_css.y,
3247
+ template: SearchTemplate,
3248
+ styles: [
3249
+ SearchField$1.styles,
3250
+ SearchCss,
3251
+ ],
3252
+ })
3253
+ /**
3254
+ * Fired when the popup is opened.
3255
+ *
3256
+ * @public
3257
+ */
3258
+ ,
3259
+ eventStrict.l("open")
3260
+ /**
3261
+ * Fired when the popup is closed.
3262
+ *
3263
+ * @public
3264
+ */
3265
+ ,
3266
+ eventStrict.l("close")
3267
+ ], Search);
3268
+ Search.define();
3269
+ var Search$1 = Search;
3270
+
3271
+ function ShellBarSearchPopoverTemplate() {
3272
+ return (SearchPopoverTemplate.call(this, ShellBarSearchDialogHeader));
3273
+ }
3274
+ function ShellBarSearchDialogHeader() {
3275
+ return (parametersBundle_css.jsx(parametersBundle_css.Fragment, { children: parametersBundle_css.jsxs("header", { slot: "header", class: "ui5-search-popup-searching-header", children: [parametersBundle_css.jsx("div", { class: "ui5-shellbar-search-field-wrapper", children: SearchFieldTemplate.call(this, { forceExpanded: true }) }), parametersBundle_css.jsx(Button.Button, { design: Button.ButtonDesign.Transparent, onClick: this._handleCancel, children: this.cancelButtonText })] }) }));
3276
+ }
3277
+
3278
+ function ShellBarSearchTemplate() {
3279
+ return (parametersBundle_css.jsxs(parametersBundle_css.Fragment, { children: [SearchFieldTemplate.call(this), ShellBarSearchPopoverTemplate.call(this)] }));
3280
+ }
3281
+
3282
+ Icons.p("@" + "ui5" + "/" + "webcomponents-theming", "sap_horizon", async () => parametersBundle_css.defaultThemeBase);
3283
+ Icons.p("@" + "u" + "i" + "5" + "/" + "w" + "e" + "b" + "c" + "o" + "m" + "p" + "o" + "n" + "e" + "n" + "t" + "s" + "-" + "f" + "i" + "o" + "r" + "i", "sap_horizon", async () => parametersBundle_css$1.defaultTheme);
3284
+ var ShellBarSearchCss = `:host(:not([collapsed])){min-width:13rem}
3285
+ `;
3286
+
3287
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3288
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3289
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
3290
+ 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;
3291
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
3292
+ };
3293
+ var ShellBarSearch_1;
3294
+ /**
3295
+ * @class
3296
+ * Search field for the ShellBar component.
3297
+ * @constructor
3298
+ * @extends Search
3299
+ * @public
3300
+ * @since 2.10.0
3301
+ * @experimental
3302
+ */
3303
+ let ShellBarSearch = ShellBarSearch_1 = class ShellBarSearch extends Search$1 {
3304
+ constructor() {
3305
+ super(...arguments);
3306
+ /**
3307
+ * Indicates whether the suggestions popover should be opened on focus.
3308
+ * @default false
3309
+ * @public
3310
+ */
3311
+ this.autoOpen = false;
3312
+ }
3313
+ _handleSearchIconPress() {
3314
+ super._handleSearchIconPress();
3315
+ if (this.collapsed) {
3316
+ this.collapsed = false;
3317
+ }
3318
+ else if (!this.value) {
3319
+ this.collapsed = true;
3320
+ }
3321
+ }
3322
+ _onFocusOutSearch(e) {
3323
+ if (Icons.d()) {
3324
+ return;
3325
+ }
3326
+ super._onFocusOutSearch(e);
3327
+ }
3328
+ _handleInput(e) {
3329
+ super._handleInput(e);
3330
+ if (Icons.d()) {
3331
+ this._performItemSelectionOnMobile = this._shouldPerformSelectionOnMobile(e.inputType);
3332
+ }
3333
+ }
3334
+ get _effectiveIconTooltip() {
3335
+ if (this.collapsed) {
3336
+ return ShellBarSearch_1.i18nBundle.getText(i18nDefaults$1.SHELLBAR_SEARCH_COLLAPSED);
3337
+ }
3338
+ if (this.value) {
3339
+ return ShellBarSearch_1.i18nBundle.getText(i18nDefaults$1.SEARCH_FIELD_SEARCH_ICON);
3340
+ }
3341
+ return ShellBarSearch_1.i18nBundle.getText(i18nDefaults$1.SHELLBAR_SEARCH_EXPANDED);
3342
+ }
3343
+ get nativeInput() {
3344
+ const domRef = this.shadowRoot;
3345
+ return Icons.d() ? domRef?.querySelector(`[ui5-responsive-popover] input`) : super.nativeInput;
3346
+ }
3347
+ _onfocusin() {
3348
+ super._onfocusin();
3349
+ if (this.autoOpen) {
3350
+ this.open = true;
3351
+ this.fireDecoratorEvent("open");
3352
+ }
3353
+ }
3354
+ onBeforeRendering() {
3355
+ super.onBeforeRendering();
3356
+ if (Icons.d()) {
3357
+ this.collapsed = true;
3358
+ }
3359
+ }
3360
+ };
3361
+ __decorate([
3362
+ webcomponentsBase.s({ type: Boolean })
3363
+ ], ShellBarSearch.prototype, "autoOpen", void 0);
3364
+ ShellBarSearch = ShellBarSearch_1 = __decorate([
3365
+ webcomponentsBase.m({
3366
+ tag: "ui5-shellbar-search",
3367
+ template: ShellBarSearchTemplate,
3368
+ styles: [
3369
+ Search$1.styles,
3370
+ ShellBarSearchCss,
3371
+ ],
3372
+ })
3373
+ ], ShellBarSearch);
3374
+ ShellBarSearch.define();
3375
+ var ShellBarSearch$1 = ShellBarSearch;
3376
+
3377
+ exports.Input = Input$1;
3378
+ exports.ShellBarSearch = ShellBarSearch$1;
3379
+
3380
+ }));