@ui5/webcomponents-base 1.9.3 → 1.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (609) hide show
  1. package/.eslintignore +1 -0
  2. package/CHANGELOG.md +0 -8
  3. package/bundle.esm.js +4 -1
  4. package/dist/AssetRegistry.d.ts +5 -0
  5. package/dist/AssetRegistry.js +2 -7
  6. package/dist/AssetRegistry.js.map +1 -0
  7. package/dist/Boot.d.ts +8 -0
  8. package/dist/Boot.js +29 -48
  9. package/dist/Boot.js.map +1 -0
  10. package/dist/CSP.d.ts +30 -0
  11. package/dist/CSP.js +16 -24
  12. package/dist/CSP.js.map +1 -0
  13. package/dist/CustomElementsRegistry.d.ts +5 -0
  14. package/dist/CustomElementsRegistry.js +66 -83
  15. package/dist/CustomElementsRegistry.js.map +1 -0
  16. package/dist/CustomElementsScope.d.ts +7 -0
  17. package/dist/CustomElementsScope.js +10 -29
  18. package/dist/CustomElementsScope.js.map +1 -0
  19. package/dist/CustomElementsScopeUtils.d.ts +55 -0
  20. package/dist/CustomElementsScopeUtils.js +34 -52
  21. package/dist/CustomElementsScopeUtils.js.map +1 -0
  22. package/dist/DOMObserver.d.ts +11 -0
  23. package/dist/DOMObserver.js +12 -54
  24. package/dist/DOMObserver.js.map +1 -0
  25. package/dist/Device.d.ts +12 -0
  26. package/dist/Device.js +53 -83
  27. package/dist/Device.js.map +1 -0
  28. package/dist/EventProvider.d.ts +25 -0
  29. package/dist/EventProvider.js +67 -82
  30. package/dist/EventProvider.js.map +1 -0
  31. package/dist/FeaturesRegistry.d.ts +3 -0
  32. package/dist/FeaturesRegistry.js +5 -10
  33. package/dist/FeaturesRegistry.js.map +1 -0
  34. package/dist/FontFace.d.ts +2 -0
  35. package/dist/FontFace.js +14 -19
  36. package/dist/FontFace.js.map +1 -0
  37. package/dist/InitialConfiguration.d.ts +22 -0
  38. package/dist/InitialConfiguration.js +107 -146
  39. package/dist/InitialConfiguration.js.map +1 -0
  40. package/dist/Keys.d.ts +57 -0
  41. package/dist/Keys.js +174 -291
  42. package/dist/Keys.js.map +1 -0
  43. package/dist/ManagedStyles.d.ts +8 -0
  44. package/dist/ManagedStyles.js +62 -68
  45. package/dist/ManagedStyles.js.map +1 -0
  46. package/dist/MarkedEvents.d.ts +9 -0
  47. package/dist/MarkedEvents.js +15 -0
  48. package/dist/MarkedEvents.js.map +1 -0
  49. package/dist/MediaRange.d.ts +37 -0
  50. package/dist/MediaRange.js +54 -65
  51. package/dist/MediaRange.js.map +1 -0
  52. package/dist/PropertiesFileFormat.d.ts +8 -0
  53. package/dist/PropertiesFileFormat.js +72 -82
  54. package/dist/PropertiesFileFormat.js.map +1 -0
  55. package/dist/Render.d.ts +47 -0
  56. package/dist/Render.js +81 -113
  57. package/dist/Render.js.map +1 -0
  58. package/dist/RenderQueue.d.ts +19 -0
  59. package/dist/RenderQueue.js +52 -62
  60. package/dist/RenderQueue.js.map +1 -0
  61. package/dist/Runtimes.d.ts +27 -0
  62. package/dist/Runtimes.js +49 -70
  63. package/dist/Runtimes.js.map +1 -0
  64. package/dist/StaticArea.d.ts +0 -0
  65. package/dist/StaticArea.js +4 -1
  66. package/dist/StaticArea.js.map +1 -0
  67. package/dist/StaticAreaItem.d.ts +36 -0
  68. package/dist/StaticAreaItem.js +84 -94
  69. package/dist/StaticAreaItem.js.map +1 -0
  70. package/dist/SystemCSSVars.d.ts +2 -0
  71. package/dist/SystemCSSVars.js +4 -5
  72. package/dist/SystemCSSVars.js.map +1 -0
  73. package/dist/Theming.d.ts +3 -0
  74. package/dist/Theming.js +1 -1
  75. package/dist/Theming.js.map +1 -0
  76. package/dist/UI5Element.d.ts +373 -0
  77. package/dist/UI5Element.js +928 -1006
  78. package/dist/UI5Element.js.map +1 -0
  79. package/dist/UI5ElementMetadata.d.ts +150 -0
  80. package/dist/UI5ElementMetadata.js +277 -313
  81. package/dist/UI5ElementMetadata.js.map +1 -0
  82. package/dist/animations/AnimationQueue.d.ts +8 -0
  83. package/dist/animations/AnimationQueue.js +31 -38
  84. package/dist/animations/AnimationQueue.js.map +1 -0
  85. package/dist/animations/animate.d.ts +14 -0
  86. package/dist/animations/animate.js +46 -51
  87. package/dist/animations/animate.js.map +1 -0
  88. package/dist/animations/scroll.d.ts +5 -0
  89. package/dist/animations/scroll.js +18 -27
  90. package/dist/animations/scroll.js.map +1 -0
  91. package/dist/animations/slideDown.d.ts +5 -0
  92. package/dist/animations/slideDown.js +53 -78
  93. package/dist/animations/slideDown.js.map +1 -0
  94. package/dist/animations/slideUp.d.ts +5 -0
  95. package/dist/animations/slideUp.js +49 -70
  96. package/dist/animations/slideUp.js.map +1 -0
  97. package/dist/api.json +1 -1
  98. package/dist/asset-registries/Icons.d.ts +30 -0
  99. package/dist/asset-registries/Icons.js +85 -118
  100. package/dist/asset-registries/Icons.js.map +1 -0
  101. package/dist/asset-registries/Illustrations.d.ts +17 -0
  102. package/dist/asset-registries/Illustrations.js +37 -50
  103. package/dist/asset-registries/Illustrations.js.map +1 -0
  104. package/dist/asset-registries/LocaleData.d.ts +7 -0
  105. package/dist/asset-registries/LocaleData.js +104 -126
  106. package/dist/asset-registries/LocaleData.js.map +1 -0
  107. package/dist/asset-registries/Themes.d.ts +10 -0
  108. package/dist/asset-registries/Themes.js +36 -68
  109. package/dist/asset-registries/Themes.js.map +1 -0
  110. package/dist/asset-registries/i18n.d.ts +23 -0
  111. package/dist/asset-registries/i18n.js +52 -80
  112. package/dist/asset-registries/i18n.js.map +1 -0
  113. package/dist/assets/bundle.esm.3d967c4e.js +56 -0
  114. package/dist/assets-meta/IconCollectionsAlias.d.ts +17 -0
  115. package/dist/assets-meta/IconCollectionsAlias.js +4 -4
  116. package/dist/assets-meta/IconCollectionsAlias.js.map +1 -0
  117. package/dist/config/AnimationMode.d.ts +14 -0
  118. package/dist/config/AnimationMode.js +21 -18
  119. package/dist/config/AnimationMode.js.map +1 -0
  120. package/dist/config/CalendarType.d.ts +8 -0
  121. package/dist/config/CalendarType.js +13 -12
  122. package/dist/config/CalendarType.js.map +1 -0
  123. package/dist/config/FormatSettings.d.ts +11 -0
  124. package/dist/config/FormatSettings.js +10 -8
  125. package/dist/config/FormatSettings.js.map +1 -0
  126. package/dist/config/Icons.d.ts +30 -0
  127. package/dist/config/Icons.js +28 -32
  128. package/dist/config/Icons.js.map +1 -0
  129. package/dist/config/Language.d.ts +31 -0
  130. package/dist/config/Language.js +31 -43
  131. package/dist/config/Language.js.map +1 -0
  132. package/dist/config/NoConflict.d.ts +20 -0
  133. package/dist/config/NoConflict.js +40 -41
  134. package/dist/config/NoConflict.js.map +1 -0
  135. package/dist/config/RTL.d.ts +7 -0
  136. package/dist/config/RTL.js +23 -20
  137. package/dist/config/RTL.js.map +1 -0
  138. package/dist/config/Theme.d.ts +28 -0
  139. package/dist/config/Theme.js +34 -36
  140. package/dist/config/Theme.js.map +1 -0
  141. package/dist/config/ThemeRoots.d.ts +4 -0
  142. package/dist/config/ThemeRoots.js +18 -29
  143. package/dist/config/ThemeRoots.js.map +1 -0
  144. package/dist/decorators/customElement.d.ts +8 -0
  145. package/dist/decorators/customElement.js +16 -0
  146. package/dist/decorators/customElement.js.map +1 -0
  147. package/dist/decorators/event.d.ts +10 -0
  148. package/dist/decorators/event.js +24 -0
  149. package/dist/decorators/event.js.map +1 -0
  150. package/dist/decorators/fastNavigation.d.ts +7 -0
  151. package/dist/decorators/fastNavigation.js +13 -0
  152. package/dist/decorators/fastNavigation.js.map +1 -0
  153. package/dist/decorators/languageAware.d.ts +7 -0
  154. package/dist/decorators/languageAware.js +13 -0
  155. package/dist/decorators/languageAware.js.map +1 -0
  156. package/dist/decorators/property.d.ts +9 -0
  157. package/dist/decorators/property.js +24 -0
  158. package/dist/decorators/property.js.map +1 -0
  159. package/dist/decorators/slot.d.ts +9 -0
  160. package/dist/decorators/slot.js +37 -0
  161. package/dist/decorators/slot.js.map +1 -0
  162. package/dist/decorators/themeAware.d.ts +7 -0
  163. package/dist/decorators/themeAware.js +13 -0
  164. package/dist/decorators/themeAware.js.map +1 -0
  165. package/dist/delegate/ItemNavigation.d.ts +113 -0
  166. package/dist/delegate/ItemNavigation.js +277 -317
  167. package/dist/delegate/ItemNavigation.js.map +1 -0
  168. package/dist/delegate/ResizeHandler.d.ts +24 -0
  169. package/dist/delegate/ResizeHandler.js +68 -91
  170. package/dist/delegate/ResizeHandler.js.map +1 -0
  171. package/dist/delegate/ScrollEnablement.d.ts +48 -0
  172. package/dist/delegate/ScrollEnablement.js +157 -180
  173. package/dist/delegate/ScrollEnablement.js.map +1 -0
  174. package/dist/features/F6Navigation.d.ts +16 -0
  175. package/dist/features/F6Navigation.js +105 -109
  176. package/dist/features/F6Navigation.js.map +1 -0
  177. package/dist/features/OpenUI5Element.d.ts +9 -0
  178. package/dist/features/OpenUI5Element.js +5 -0
  179. package/dist/features/OpenUI5Element.js.map +1 -0
  180. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  181. package/dist/features/OpenUI5Enablement.js +89 -112
  182. package/dist/features/OpenUI5Enablement.js.map +1 -0
  183. package/dist/features/OpenUI5Support.d.ts +23 -0
  184. package/dist/features/OpenUI5Support.js +91 -120
  185. package/dist/features/OpenUI5Support.js.map +1 -0
  186. package/dist/generated/VersionInfo.js +4 -4
  187. package/dist/getSharedResource.d.ts +11 -0
  188. package/dist/getSharedResource.js +12 -16
  189. package/dist/getSharedResource.js.map +1 -0
  190. package/dist/i18nBundle.d.ts +43 -0
  191. package/dist/i18nBundle.js +56 -64
  192. package/dist/i18nBundle.js.map +1 -0
  193. package/dist/locale/Locale.d.ts +22 -0
  194. package/dist/locale/Locale.js +75 -87
  195. package/dist/locale/Locale.js.map +1 -0
  196. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  197. package/dist/locale/RTLAwareRegistry.js +6 -11
  198. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  199. package/dist/locale/applyDirection.d.ts +10 -0
  200. package/dist/locale/applyDirection.js +7 -7
  201. package/dist/locale/applyDirection.js.map +1 -0
  202. package/dist/locale/directionChange.d.ts +15 -0
  203. package/dist/locale/directionChange.js +7 -15
  204. package/dist/locale/directionChange.js.map +1 -0
  205. package/dist/locale/getEffectiveDir.d.ts +2 -0
  206. package/dist/locale/getEffectiveDir.js +20 -24
  207. package/dist/locale/getEffectiveDir.js.map +1 -0
  208. package/dist/locale/getLocale.d.ts +7 -0
  209. package/dist/locale/getLocale.js +26 -29
  210. package/dist/locale/getLocale.js.map +1 -0
  211. package/dist/locale/languageChange.d.ts +5 -0
  212. package/dist/locale/languageChange.js +8 -16
  213. package/dist/locale/languageChange.js.map +1 -0
  214. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  215. package/dist/locale/nextFallbackLocale.js +15 -19
  216. package/dist/locale/nextFallbackLocale.js.map +1 -0
  217. package/dist/locale/normalizeLocale.d.ts +7 -0
  218. package/dist/locale/normalizeLocale.js +34 -41
  219. package/dist/locale/normalizeLocale.js.map +1 -0
  220. package/dist/renderer/LitRenderer.d.ts +14 -0
  221. package/dist/renderer/LitRenderer.js +28 -39
  222. package/dist/renderer/LitRenderer.js.map +1 -0
  223. package/dist/renderer/executeTemplate.d.ts +13 -0
  224. package/dist/renderer/executeTemplate.js +12 -16
  225. package/dist/renderer/executeTemplate.js.map +1 -0
  226. package/dist/sap/base/Log.js +28 -29
  227. package/dist/sap/base/assert.js +5 -6
  228. package/dist/sap/base/security/URLListValidator.js +13 -2
  229. package/dist/theming/CustomStyle.d.ts +6 -0
  230. package/dist/theming/CustomStyle.js +29 -43
  231. package/dist/theming/CustomStyle.js.map +1 -0
  232. package/dist/theming/ThemeLoaded.d.ts +5 -0
  233. package/dist/theming/ThemeLoaded.js +8 -16
  234. package/dist/theming/ThemeLoaded.js.map +1 -0
  235. package/dist/theming/applyTheme.d.ts +2 -0
  236. package/dist/theming/applyTheme.js +59 -68
  237. package/dist/theming/applyTheme.js.map +1 -0
  238. package/dist/theming/getConstructableStyle.d.ts +9 -0
  239. package/dist/theming/getConstructableStyle.js +12 -17
  240. package/dist/theming/getConstructableStyle.js.map +1 -0
  241. package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
  242. package/dist/theming/getEffectiveLinksHrefs.js +12 -22
  243. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
  244. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  245. package/dist/theming/getEffectiveStyle.js +24 -31
  246. package/dist/theming/getEffectiveStyle.js.map +1 -0
  247. package/dist/theming/getStylesString.d.ts +3 -0
  248. package/dist/theming/getStylesString.js +9 -13
  249. package/dist/theming/getStylesString.js.map +1 -0
  250. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  251. package/dist/theming/getThemeDesignerTheme.js +72 -79
  252. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  253. package/dist/theming/preloadLinks.d.ts +3 -0
  254. package/dist/theming/preloadLinks.js +13 -17
  255. package/dist/theming/preloadLinks.js.map +1 -0
  256. package/dist/thirdparty/_merge.d.ts +2 -0
  257. package/dist/thirdparty/_merge.js +7 -4
  258. package/dist/thirdparty/_merge.js.map +1 -0
  259. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  260. package/dist/thirdparty/isPlainObject.js +11 -10
  261. package/dist/thirdparty/isPlainObject.js.map +1 -0
  262. package/dist/thirdparty/merge.d.ts +2 -0
  263. package/dist/thirdparty/merge.js +4 -8
  264. package/dist/thirdparty/merge.js.map +1 -0
  265. package/dist/types/AnimationMode.d.ts +32 -0
  266. package/dist/types/AnimationMode.js +33 -6
  267. package/dist/types/AnimationMode.js.map +1 -0
  268. package/dist/types/CSSColor.d.ts +16 -0
  269. package/dist/types/CSSColor.js +6 -7
  270. package/dist/types/CSSColor.js.map +1 -0
  271. package/dist/types/CalendarType.d.ts +37 -0
  272. package/dist/types/CalendarType.js +33 -53
  273. package/dist/types/CalendarType.js.map +1 -0
  274. package/dist/types/DOMReference.d.ts +17 -0
  275. package/dist/types/DOMReference.js +12 -15
  276. package/dist/types/DOMReference.js.map +1 -0
  277. package/dist/types/DataType.d.ts +25 -0
  278. package/dist/types/DataType.js +33 -32
  279. package/dist/types/DataType.js.map +1 -0
  280. package/dist/types/Float.d.ts +18 -0
  281. package/dist/types/Float.js +9 -12
  282. package/dist/types/Float.js.map +1 -0
  283. package/dist/types/Integer.d.ts +18 -0
  284. package/dist/types/Integer.js +9 -11
  285. package/dist/types/Integer.js.map +1 -0
  286. package/dist/types/InvisibleMessageMode.d.ts +25 -0
  287. package/dist/types/InvisibleMessageMode.js +19 -38
  288. package/dist/types/InvisibleMessageMode.js.map +1 -0
  289. package/dist/types/ItemNavigationBehavior.d.ts +24 -0
  290. package/dist/types/ItemNavigationBehavior.js +22 -12
  291. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  292. package/dist/types/NavigationMode.d.ts +32 -0
  293. package/dist/types/NavigationMode.js +33 -6
  294. package/dist/types/NavigationMode.js.map +1 -0
  295. package/dist/types/ValueState.d.ts +42 -0
  296. package/dist/types/ValueState.js +38 -58
  297. package/dist/types/ValueState.js.map +1 -0
  298. package/dist/types.d.ts +18 -0
  299. package/dist/types.js +2 -0
  300. package/dist/types.js.map +1 -0
  301. package/dist/updateShadowRoot.d.ts +8 -0
  302. package/dist/updateShadowRoot.js +21 -16
  303. package/dist/updateShadowRoot.js.map +1 -0
  304. package/dist/util/AriaLabelHelper.d.ts +6 -0
  305. package/dist/util/AriaLabelHelper.js +34 -46
  306. package/dist/util/AriaLabelHelper.js.map +1 -0
  307. package/dist/util/Caret.d.ts +7 -0
  308. package/dist/util/Caret.js +16 -25
  309. package/dist/util/Caret.js.map +1 -0
  310. package/dist/util/ColorConversion.d.ts +30 -0
  311. package/dist/util/ColorConversion.js +311 -372
  312. package/dist/util/ColorConversion.js.map +1 -0
  313. package/dist/util/FetchHelper.d.ts +3 -0
  314. package/dist/util/FetchHelper.js +19 -25
  315. package/dist/util/FetchHelper.js.map +1 -0
  316. package/dist/util/FocusableElements.d.ts +4 -0
  317. package/dist/util/FocusableElements.js +54 -71
  318. package/dist/util/FocusableElements.js.map +1 -0
  319. package/dist/util/HTMLSanitizer.d.ts +3 -0
  320. package/dist/util/HTMLSanitizer.js +4 -5
  321. package/dist/util/HTMLSanitizer.js.map +1 -0
  322. package/dist/util/InvisibleMessage.d.ts +10 -0
  323. package/dist/util/InvisibleMessage.js +40 -53
  324. package/dist/util/InvisibleMessage.js.map +1 -0
  325. package/dist/util/PopupUtils.d.ts +7 -0
  326. package/dist/util/PopupUtils.js +58 -77
  327. package/dist/util/PopupUtils.js.map +1 -0
  328. package/dist/util/SlotsHelper.d.ts +9 -0
  329. package/dist/util/SlotsHelper.js +22 -35
  330. package/dist/util/SlotsHelper.js.map +1 -0
  331. package/dist/util/StringHelper.d.ts +3 -0
  332. package/dist/util/StringHelper.js +17 -20
  333. package/dist/util/StringHelper.js.map +1 -0
  334. package/dist/util/TabbableElements.d.ts +17 -0
  335. package/dist/util/TabbableElements.js +53 -47
  336. package/dist/util/TabbableElements.js.map +1 -0
  337. package/dist/util/arraysAreEqual.d.ts +2 -0
  338. package/dist/util/arraysAreEqual.js +10 -12
  339. package/dist/util/arraysAreEqual.js.map +1 -0
  340. package/dist/util/clamp.d.ts +9 -0
  341. package/dist/util/clamp.js +2 -2
  342. package/dist/util/clamp.js.map +1 -0
  343. package/dist/util/createLinkInHead.d.ts +7 -0
  344. package/dist/util/createLinkInHead.js +14 -17
  345. package/dist/util/createLinkInHead.js.map +1 -0
  346. package/dist/util/createStyleInHead.d.ts +8 -0
  347. package/dist/util/createStyleInHead.js +10 -10
  348. package/dist/util/createStyleInHead.js.map +1 -0
  349. package/dist/util/debounce.d.ts +2 -0
  350. package/dist/util/debounce.js +6 -8
  351. package/dist/util/debounce.js.map +1 -0
  352. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  353. package/dist/util/detectNavigatorLanguage.js +7 -10
  354. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  355. package/dist/util/escapeRegex.d.ts +8 -0
  356. package/dist/util/escapeRegex.js +8 -7
  357. package/dist/util/escapeRegex.js.map +1 -0
  358. package/dist/util/formatMessage.d.ts +2 -0
  359. package/dist/util/formatMessage.js +15 -19
  360. package/dist/util/formatMessage.js.map +1 -0
  361. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  362. package/dist/util/generateHighlightedMarkup.js +26 -27
  363. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  364. package/dist/util/getActiveElement.d.ts +2 -0
  365. package/dist/util/getActiveElement.js +6 -8
  366. package/dist/util/getActiveElement.js.map +1 -0
  367. package/dist/util/getClassCopy.d.ts +400 -0
  368. package/dist/util/getClassCopy.js +7 -7
  369. package/dist/util/getClassCopy.js.map +1 -0
  370. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  371. package/dist/util/getDesigntimePropertyAsArray.js +4 -3
  372. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  373. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  374. package/dist/util/getEffectiveContentDensity.js +2 -3
  375. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  376. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  377. package/dist/util/getEffectiveScrollbarStyle.js +1 -2
  378. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  379. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  380. package/dist/util/getFastNavigationGroups.js +44 -56
  381. package/dist/util/getFastNavigationGroups.js.map +1 -0
  382. package/dist/util/getFileExtension.d.ts +12 -0
  383. package/dist/util/getFileExtension.js +9 -11
  384. package/dist/util/getFileExtension.js.map +1 -0
  385. package/dist/util/getNormalizedTarget.d.ts +7 -0
  386. package/dist/util/getNormalizedTarget.js +7 -9
  387. package/dist/util/getNormalizedTarget.js.map +1 -0
  388. package/dist/util/getSingletonElementInstance.d.ts +2 -0
  389. package/dist/util/getSingletonElementInstance.js +7 -10
  390. package/dist/util/getSingletonElementInstance.js.map +1 -0
  391. package/dist/util/isElementClickable.d.ts +2 -0
  392. package/dist/util/isElementClickable.js +16 -0
  393. package/dist/util/isElementClickable.js.map +1 -0
  394. package/dist/util/isElementHidden.d.ts +2 -0
  395. package/dist/util/isElementHidden.js +8 -0
  396. package/dist/util/isElementHidden.js.map +1 -0
  397. package/dist/util/isElementInView.d.ts +6 -0
  398. package/dist/util/isElementInView.js +6 -9
  399. package/dist/util/isElementInView.js.map +1 -0
  400. package/dist/util/isElementTabbable.d.ts +9 -0
  401. package/dist/util/isElementTabbable.js +30 -0
  402. package/dist/util/isElementTabbable.js.map +1 -0
  403. package/dist/util/isValidPropertyName.d.ts +8 -0
  404. package/dist/util/isValidPropertyName.js +16 -17
  405. package/dist/util/isValidPropertyName.js.map +1 -0
  406. package/dist/util/whenDOMReady.d.ts +2 -0
  407. package/dist/util/whenDOMReady.js +11 -10
  408. package/dist/util/whenDOMReady.js.map +1 -0
  409. package/dist/util/willShowContent.d.ts +2 -0
  410. package/dist/util/willShowContent.js +7 -0
  411. package/dist/util/willShowContent.js.map +1 -0
  412. package/dist/validateThemeRoot.d.ts +2 -0
  413. package/dist/validateThemeRoot.js +41 -52
  414. package/dist/validateThemeRoot.js.map +1 -0
  415. package/global.d.ts +44 -0
  416. package/package-scripts.js +14 -5
  417. package/package.json +4 -4
  418. package/src/{AssetRegistry.js → AssetRegistry.ts} +0 -0
  419. package/src/Boot.ts +61 -0
  420. package/src/{CSP.js → CSP.ts} +14 -7
  421. package/src/{CustomElementsRegistry.js → CustomElementsRegistry.ts} +19 -16
  422. package/src/{CustomElementsScope.js → CustomElementsScope.ts} +8 -5
  423. package/src/{CustomElementsScopeUtils.js → CustomElementsScopeUtils.ts} +14 -7
  424. package/src/DOMObserver.ts +28 -0
  425. package/src/{Device.js → Device.ts} +17 -14
  426. package/src/{EventProvider.js → EventProvider.ts} +9 -7
  427. package/src/FeaturesRegistry.ts +14 -0
  428. package/src/{FontFace.js → FontFace.ts} +3 -2
  429. package/src/{InitialConfiguration.js → InitialConfiguration.ts} +33 -12
  430. package/src/Keys.ts +295 -0
  431. package/src/ManagedStyles.ts +92 -0
  432. package/src/MarkedEvents.ts +20 -0
  433. package/src/{MediaRange.js → MediaRange.ts} +54 -53
  434. package/src/{PropertiesFileFormat.js → PropertiesFileFormat.ts} +8 -8
  435. package/src/{Render.js → Render.ts} +25 -20
  436. package/src/{RenderQueue.js → RenderQueue.ts} +10 -5
  437. package/src/{Runtimes.js → Runtimes.ts} +15 -8
  438. package/src/{StaticArea.js → StaticArea.ts} +0 -0
  439. package/src/{StaticAreaItem.js → StaticAreaItem.ts} +26 -22
  440. package/src/{SystemCSSVars.js → SystemCSSVars.ts} +0 -0
  441. package/src/{Theming.js → Theming.ts} +0 -0
  442. package/src/{UI5Element.js → UI5Element.ts} +263 -153
  443. package/src/{UI5ElementMetadata.js → UI5ElementMetadata.ts} +120 -58
  444. package/src/animations/{AnimationQueue.js → AnimationQueue.ts} +8 -7
  445. package/src/animations/animate.ts +64 -0
  446. package/src/animations/scroll.ts +21 -0
  447. package/src/animations/{slideDown.js → slideDown.ts} +27 -34
  448. package/src/animations/{slideUp.js → slideUp.ts} +28 -32
  449. package/src/asset-registries/{Icons.js → Icons.ts} +63 -38
  450. package/src/asset-registries/Illustrations.ts +75 -0
  451. package/src/asset-registries/{LocaleData.js → LocaleData.ts} +35 -21
  452. package/src/asset-registries/{Themes.js → Themes.ts} +14 -29
  453. package/src/asset-registries/{i18n.js → i18n.ts} +18 -23
  454. package/src/assets-meta/{IconCollectionsAlias.js → IconCollectionsAlias.ts} +0 -0
  455. package/src/config/AnimationMode.ts +33 -0
  456. package/src/config/{CalendarType.js → CalendarType.ts} +8 -3
  457. package/src/config/FormatSettings.ts +21 -0
  458. package/src/config/{Icons.js → Icons.ts} +19 -12
  459. package/src/config/{Language.js → Language.ts} +22 -18
  460. package/src/config/NoConflict.ts +67 -0
  461. package/src/config/{RTL.js → RTL.ts} +14 -4
  462. package/src/config/Theme.ts +64 -0
  463. package/src/config/{ThemeRoots.js → ThemeRoots.ts} +9 -7
  464. package/src/decorators/customElement.ts +17 -0
  465. package/src/decorators/event.ts +28 -0
  466. package/src/decorators/fastNavigation.ts +14 -0
  467. package/src/decorators/languageAware.ts +14 -0
  468. package/src/decorators/property.ts +30 -0
  469. package/src/decorators/slot.ts +49 -0
  470. package/src/decorators/themeAware.ts +14 -0
  471. package/src/delegate/{ItemNavigation.js → ItemNavigation.ts} +56 -19
  472. package/src/delegate/{ResizeHandler.js → ResizeHandler.ts} +25 -36
  473. package/src/delegate/ScrollEnablement.ts +221 -0
  474. package/src/features/{F6Navigation.js → F6Navigation.ts} +50 -25
  475. package/src/features/OpenUI5Element.ts +11 -0
  476. package/src/features/OpenUI5Enablement.ts +117 -0
  477. package/src/features/OpenUI5Support.ts +148 -0
  478. package/src/{getSharedResource.js → getSharedResource.ts} +3 -3
  479. package/src/{i18nBundle.js → i18nBundle.ts} +45 -23
  480. package/src/locale/{Locale.js → Locale.ts} +15 -5
  481. package/src/locale/RTLAwareRegistry.ts +16 -0
  482. package/src/locale/{applyDirection.js → applyDirection.ts} +4 -3
  483. package/src/locale/{directionChange.js → directionChange.ts} +6 -4
  484. package/src/locale/{getEffectiveDir.js → getEffectiveDir.ts} +1 -1
  485. package/src/locale/{getLocale.js → getLocale.ts} +12 -7
  486. package/src/locale/languageChange.ts +24 -0
  487. package/src/locale/{nextFallbackLocale.js → nextFallbackLocale.ts} +1 -1
  488. package/src/locale/{normalizeLocale.js → normalizeLocale.ts} +5 -3
  489. package/src/renderer/LitRenderer.ts +60 -0
  490. package/src/renderer/{executeTemplate.js → executeTemplate.ts} +11 -5
  491. package/src/theming/{CustomStyle.js → CustomStyle.ts} +11 -9
  492. package/src/theming/{ThemeLoaded.js → ThemeLoaded.ts} +6 -4
  493. package/src/theming/{applyTheme.js → applyTheme.ts} +16 -10
  494. package/src/theming/{getConstructableStyle.js → getConstructableStyle.ts} +5 -4
  495. package/src/theming/getEffectiveLinksHrefs.ts +26 -0
  496. package/src/theming/{getEffectiveStyle.js → getEffectiveStyle.ts} +9 -7
  497. package/src/theming/getStylesString.ts +15 -0
  498. package/src/theming/{getThemeDesignerTheme.js → getThemeDesignerTheme.ts} +22 -8
  499. package/src/theming/{preloadLinks.js → preloadLinks.ts} +3 -2
  500. package/src/thirdparty/{_merge.js → _merge.ts} +2 -2
  501. package/src/thirdparty/{isPlainObject.js → isPlainObject.ts} +1 -1
  502. package/src/thirdparty/merge.ts +5 -0
  503. package/src/types/AnimationMode.ts +33 -0
  504. package/src/types/{CSSColor.js → CSSColor.ts} +3 -3
  505. package/src/types/CalendarType.ts +38 -0
  506. package/src/types/{DOMReference.js → DOMReference.ts} +4 -4
  507. package/src/types/DataType.ts +51 -0
  508. package/src/types/{Float.js → Float.ts} +5 -5
  509. package/src/types/{Integer.js → Integer.ts} +5 -4
  510. package/src/types/InvisibleMessageMode.ts +27 -0
  511. package/src/types/ItemNavigationBehavior.ts +26 -0
  512. package/src/types/NavigationMode.ts +33 -0
  513. package/src/types/ValueState.ts +47 -0
  514. package/src/types.ts +30 -0
  515. package/src/updateShadowRoot.ts +37 -0
  516. package/src/util/AriaLabelHelper.ts +63 -0
  517. package/src/util/{Caret.js → Caret.ts} +5 -9
  518. package/src/util/{ColorConversion.js → ColorConversion.ts} +183 -182
  519. package/src/util/{FetchHelper.js → FetchHelper.ts} +7 -7
  520. package/src/util/FocusableElements.ts +82 -0
  521. package/src/util/{HTMLSanitizer.js → HTMLSanitizer.ts} +2 -0
  522. package/src/util/{InvisibleMessage.js → InvisibleMessage.ts} +6 -6
  523. package/src/util/PopupUtils.ts +112 -0
  524. package/src/util/{SlotsHelper.js → SlotsHelper.ts} +9 -13
  525. package/src/util/{StringHelper.js → StringHelper.ts} +7 -7
  526. package/src/util/TabbableElements.ts +70 -0
  527. package/src/util/{arraysAreEqual.js → arraysAreEqual.ts} +1 -1
  528. package/src/util/{clamp.js → clamp.ts} +1 -1
  529. package/src/util/{createLinkInHead.js → createLinkInHead.ts} +6 -5
  530. package/src/util/{createStyleInHead.js → createStyleInHead.ts} +4 -2
  531. package/src/util/{debounce.js → debounce.ts} +5 -4
  532. package/src/util/{detectNavigatorLanguage.js → detectNavigatorLanguage.ts} +1 -1
  533. package/src/util/escapeRegex.ts +11 -0
  534. package/src/util/{formatMessage.js → formatMessage.ts} +4 -3
  535. package/src/util/{generateHighlightedMarkup.js → generateHighlightedMarkup.ts} +7 -6
  536. package/src/util/{getActiveElement.js → getActiveElement.ts} +0 -0
  537. package/src/util/{getClassCopy.js → getClassCopy.ts} +3 -1
  538. package/src/util/{getDesigntimePropertyAsArray.js → getDesigntimePropertyAsArray.ts} +1 -1
  539. package/src/util/getEffectiveContentDensity.ts +5 -0
  540. package/src/util/{getEffectiveScrollbarStyle.js → getEffectiveScrollbarStyle.ts} +0 -0
  541. package/src/util/{getFastNavigationGroups.js → getFastNavigationGroups.ts} +10 -10
  542. package/src/util/{getFileExtension.js → getFileExtension.ts} +3 -3
  543. package/src/util/{getNormalizedTarget.js → getNormalizedTarget.ts} +2 -2
  544. package/src/util/{getSingletonElementInstance.js → getSingletonElementInstance.ts} +1 -1
  545. package/src/util/isElementClickable.ts +19 -0
  546. package/src/util/isElementHidden.ts +9 -0
  547. package/src/util/{isElementInView.js → isElementInView.ts} +1 -1
  548. package/src/util/isElementTabbable.ts +37 -0
  549. package/src/util/{isValidPropertyName.js → isValidPropertyName.ts} +1 -1
  550. package/src/util/{whenDOMReady.js → whenDOMReady.ts} +1 -1
  551. package/src/util/willShowContent.ts +7 -0
  552. package/src/{validateThemeRoot.js → validateThemeRoot.ts} +4 -4
  553. package/tsconfig.json +13 -0
  554. package/dist/RenderScheduler.js +0 -44
  555. package/dist/animations/config.js +0 -5
  556. package/dist/assets/bundle.esm.e2bd78ba.js +0 -55
  557. package/dist/types/CSSSize.js +0 -20
  558. package/dist/types/PopupState.js +0 -57
  559. package/dist/util/isDefaultSlotProvided.js +0 -11
  560. package/dist/util/isDescendantOf.js +0 -15
  561. package/dist/util/isNodeClickable.js +0 -19
  562. package/dist/util/isNodeHidden.js +0 -9
  563. package/dist/util/isNodeTabbable.js +0 -28
  564. package/dist/util/setToArray.js +0 -10
  565. package/src/Boot.js +0 -63
  566. package/src/DOMObserver.js +0 -65
  567. package/src/FeaturesRegistry.js +0 -14
  568. package/src/Keys.js +0 -295
  569. package/src/ManagedStyles.js +0 -83
  570. package/src/RenderScheduler.js +0 -44
  571. package/src/animations/animate.js +0 -53
  572. package/src/animations/config.js +0 -5
  573. package/src/animations/scroll.js +0 -28
  574. package/src/asset-registries/Illustrations.js +0 -59
  575. package/src/config/AnimationMode.js +0 -23
  576. package/src/config/FormatSettings.js +0 -13
  577. package/src/config/NoConflict.js +0 -51
  578. package/src/config/Theme.js +0 -53
  579. package/src/delegate/ScrollEnablement.js +0 -188
  580. package/src/features/OpenUI5Enablement.js +0 -119
  581. package/src/features/OpenUI5Support.js +0 -126
  582. package/src/locale/RTLAwareRegistry.js +0 -14
  583. package/src/locale/languageChange.js +0 -22
  584. package/src/renderer/LitRenderer.js +0 -52
  585. package/src/theming/getEffectiveLinksHrefs.js +0 -27
  586. package/src/theming/getStylesString.js +0 -15
  587. package/src/thirdparty/merge.js +0 -10
  588. package/src/types/AnimationMode.js +0 -7
  589. package/src/types/CSSSize.js +0 -20
  590. package/src/types/CalendarType.js +0 -59
  591. package/src/types/DataType.js +0 -43
  592. package/src/types/InvisibleMessageMode.js +0 -46
  593. package/src/types/ItemNavigationBehavior.js +0 -16
  594. package/src/types/NavigationMode.js +0 -7
  595. package/src/types/PopupState.js +0 -57
  596. package/src/types/ValueState.js +0 -64
  597. package/src/updateShadowRoot.js +0 -29
  598. package/src/util/AriaLabelHelper.js +0 -56
  599. package/src/util/FocusableElements.js +0 -79
  600. package/src/util/PopupUtils.js +0 -93
  601. package/src/util/TabbableElements.js +0 -51
  602. package/src/util/escapeRegex.js +0 -10
  603. package/src/util/getEffectiveContentDensity.js +0 -5
  604. package/src/util/isDefaultSlotProvided.js +0 -11
  605. package/src/util/isDescendantOf.js +0 -15
  606. package/src/util/isNodeClickable.js +0 -19
  607. package/src/util/isNodeHidden.js +0 -9
  608. package/src/util/isNodeTabbable.js +0 -28
  609. package/src/util/setToArray.js +0 -10
@@ -0,0 +1,3 @@
1
+ declare const kebabToCamelCase: (string: string) => string;
2
+ declare const camelToKebabCase: (string: string) => string;
3
+ export { kebabToCamelCase, camelToKebabCase };
@@ -1,26 +1,23 @@
1
1
  const kebabToCamelMap = new Map();
2
2
  const camelToKebabMap = new Map();
3
-
4
- const kebabToCamelCase = string => {
5
- if (!kebabToCamelMap.has(string)) {
6
- const result = toCamelCase(string.split("-"));
7
- kebabToCamelMap.set(string, result);
8
- }
9
- return kebabToCamelMap.get(string);
3
+ const kebabToCamelCase = (string) => {
4
+ if (!kebabToCamelMap.has(string)) {
5
+ const result = toCamelCase(string.split("-"));
6
+ kebabToCamelMap.set(string, result);
7
+ }
8
+ return kebabToCamelMap.get(string);
10
9
  };
11
-
12
- const camelToKebabCase = string => {
13
- if (!camelToKebabMap.has(string)) {
14
- const result = string.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
15
- camelToKebabMap.set(string, result);
16
- }
17
- return camelToKebabMap.get(string);
10
+ const camelToKebabCase = (string) => {
11
+ if (!camelToKebabMap.has(string)) {
12
+ const result = string.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
13
+ camelToKebabMap.set(string, result);
14
+ }
15
+ return camelToKebabMap.get(string);
18
16
  };
19
-
20
- const toCamelCase = parts => {
21
- return parts.map((string, index) => {
22
- return index === 0 ? string.toLowerCase() : string.charAt(0).toUpperCase() + string.slice(1).toLowerCase();
23
- }).join("");
17
+ const toCamelCase = (parts) => {
18
+ return parts.map((string, index) => {
19
+ return index === 0 ? string.toLowerCase() : string.charAt(0).toUpperCase() + string.slice(1).toLowerCase();
20
+ }).join("");
24
21
  };
25
-
26
22
  export { kebabToCamelCase, camelToKebabCase };
23
+ //# sourceMappingURL=StringHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StringHelper.js","sourceRoot":"","sources":["../../src/util/StringHelper.ts"],"names":[],"mappings":"AAAA,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;AAClD,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;AAElD,MAAM,gBAAgB,GAAG,CAAC,MAAc,EAAE,EAAE;IAC3C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;QACjC,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9C,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACpC;IACD,OAAO,eAAe,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC;AACrC,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,MAAc,EAAE,EAAE;IAC3C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;QACjC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QACxE,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACpC;IACD,OAAO,eAAe,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC;AACrC,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,KAAoB,EAAE,EAAE;IAC5C,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QAClC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5G,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACb,CAAC,CAAC;AAEF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Returns the tabbable elements within the provided HTMLElement.
3
+ *
4
+ * @public
5
+ * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)
6
+ * @returns { Array<HTMLElement> } the tabbable elements
7
+ */
8
+ declare const getTabbableElements: (el: HTMLElement) => Array<HTMLElement>;
9
+ /**
10
+ * Returns the last tabbable element within the provided HTMLElement.
11
+ *
12
+ * @public
13
+ * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)
14
+ * @returns { HTMLElement | null } the last tabbable element or "null" if not found
15
+ */
16
+ declare const getLastTabbableElement: (el: HTMLElement) => HTMLElement | null;
17
+ export { getTabbableElements, getLastTabbableElement, };
@@ -1,51 +1,57 @@
1
- import isNodeTabbable from "./isNodeTabbable.js";
2
-
3
- const getTabbableElements = node => {
4
- return getTabbables(node.children);
1
+ import isElementTabbable from "./isElementTabbable.js";
2
+ /**
3
+ * Returns the tabbable elements within the provided HTMLElement.
4
+ *
5
+ * @public
6
+ * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)
7
+ * @returns { Array<HTMLElement> } the tabbable elements
8
+ */
9
+ const getTabbableElements = (el) => {
10
+ return getTabbables([...el.children]);
5
11
  };
6
-
7
- const getLastTabbableElement = node => {
8
- const tabbables = getTabbables(node.children);
9
- return tabbables.length ? tabbables[tabbables.length - 1] : null;
12
+ /**
13
+ * Returns the last tabbable element within the provided HTMLElement.
14
+ *
15
+ * @public
16
+ * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)
17
+ * @returns { HTMLElement | null } the last tabbable element or "null" if not found
18
+ */
19
+ const getLastTabbableElement = (el) => {
20
+ const tabbables = getTabbables([...el.children]);
21
+ return tabbables.length ? tabbables[tabbables.length - 1] : null;
10
22
  };
11
-
12
23
  const getTabbables = (nodes, tabbables) => {
13
- const tabbablesNodes = tabbables || [];
14
-
15
- if (!nodes) {
16
- return tabbablesNodes;
17
- }
18
-
19
- Array.from(nodes).forEach(currentNode => {
20
- if (currentNode.nodeType === Node.TEXT_NODE || currentNode.nodeType === Node.COMMENT_NODE || currentNode.hasAttribute("data-sap-no-tab-ref")) {
21
- return;
22
- }
23
-
24
- if (currentNode.shadowRoot) {
25
- // get the root node of the ShadowDom (1st none style tag)
26
- const children = currentNode.shadowRoot.children;
27
- currentNode = Array.from(children).find(node => node.tagName !== "STYLE");
28
- }
29
-
30
- if (!currentNode) {
31
- return;
32
- }
33
-
34
- if (isNodeTabbable(currentNode)) {
35
- tabbablesNodes.push(currentNode);
36
- }
37
-
38
- if (currentNode.tagName === "SLOT") {
39
- getTabbables(currentNode.assignedNodes(), tabbablesNodes);
40
- } else {
41
- getTabbables(currentNode.children, tabbablesNodes);
42
- }
43
- });
44
-
45
- return tabbablesNodes;
46
- };
47
-
48
- export {
49
- getTabbableElements,
50
- getLastTabbableElement,
24
+ const tabbableElements = tabbables || [];
25
+ if (!nodes) {
26
+ return tabbableElements;
27
+ }
28
+ nodes.forEach(currentNode => {
29
+ if (currentNode.nodeType === Node.TEXT_NODE || currentNode.nodeType === Node.COMMENT_NODE) {
30
+ return;
31
+ }
32
+ let currentElement = currentNode;
33
+ if (currentElement.hasAttribute("data-sap-no-tab-ref")) {
34
+ return;
35
+ }
36
+ if (currentElement.shadowRoot) {
37
+ // get the root node of the ShadowDom (1st none style tag)
38
+ const children = currentElement.shadowRoot.children;
39
+ currentElement = Array.from(children).find(node => node.tagName !== "STYLE");
40
+ }
41
+ if (!currentElement) {
42
+ return;
43
+ }
44
+ if (isElementTabbable(currentElement)) {
45
+ tabbableElements.push(currentElement);
46
+ }
47
+ if (currentElement.tagName === "SLOT") {
48
+ getTabbables(currentElement.assignedNodes(), tabbableElements);
49
+ }
50
+ else {
51
+ getTabbables([...currentElement.children], tabbableElements);
52
+ }
53
+ });
54
+ return tabbableElements;
51
55
  };
56
+ export { getTabbableElements, getLastTabbableElement, };
57
+ //# sourceMappingURL=TabbableElements.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabbableElements.js","sourceRoot":"","sources":["../../src/util/TabbableElements.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,wBAAwB,CAAC;AAEvD;;;;;;GAMG;AACH,MAAM,mBAAmB,GAAG,CAAC,EAAe,EAAsB,EAAE;IACnE,OAAO,YAAY,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;AACvC,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,sBAAsB,GAAG,CAAC,EAAe,EAAsB,EAAE;IACtE,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjD,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAClE,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,KAAkB,EAAE,SAA8B,EAAsB,EAAE;IAC/F,MAAM,gBAAgB,GAAG,SAAS,IAAI,EAAE,CAAC;IAEzC,IAAI,CAAC,KAAK,EAAE;QACX,OAAO,gBAAgB,CAAC;KACxB;IAED,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;QAC3B,IAAI,WAAW,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,IAAI,WAAW,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY,EAAE;YAC1F,OAAO;SACP;QAED,IAAI,cAAc,GAAG,WAA0B,CAAC;QAChD,IAAI,cAAc,CAAC,YAAY,CAAC,qBAAqB,CAAC,EAAE;YACvD,OAAO;SACP;QAED,IAAI,cAAc,CAAC,UAAU,EAAE;YAC9B,0DAA0D;YAC1D,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC;YACpD,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,CAAgB,CAAC;SAC5F;QAED,IAAI,CAAC,cAAc,EAAE;YACpB,OAAO;SACP;QAED,IAAI,iBAAiB,CAAC,cAAc,CAAC,EAAE;YACtC,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SACtC;QAED,IAAI,cAAc,CAAC,OAAO,KAAK,MAAM,EAAE;YACtC,YAAY,CAAE,cAAkC,CAAC,aAAa,EAAwB,EAAE,gBAAgB,CAAC,CAAC;SAC1G;aAAM;YACN,YAAY,CAAC,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC,CAAC;SAC7D;IACF,CAAC,CAAC,CAAC;IAEH,OAAO,gBAAgB,CAAC;AACzB,CAAC,CAAC;AAEF,OAAO,EACN,mBAAmB,EACnB,sBAAsB,GACtB,CAAC"}
@@ -0,0 +1,2 @@
1
+ declare const arraysAreEqual: (arr1: Array<any>, arr2: Array<any>) => boolean;
2
+ export default arraysAreEqual;
@@ -1,15 +1,13 @@
1
1
  const arraysAreEqual = (arr1, arr2) => {
2
- if (arr1.length !== arr2.length) {
3
- return false;
4
- }
5
-
6
- for (let i = 0; i < arr1.length; i++) {
7
- if (arr1[i] !== arr2[i]) {
8
- return false;
9
- }
10
- }
11
-
12
- return true;
2
+ if (arr1.length !== arr2.length) {
3
+ return false;
4
+ }
5
+ for (let i = 0; i < arr1.length; i++) {
6
+ if (arr1[i] !== arr2[i]) {
7
+ return false;
8
+ }
9
+ }
10
+ return true;
13
11
  };
14
-
15
12
  export default arraysAreEqual;
13
+ //# sourceMappingURL=arraysAreEqual.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arraysAreEqual.js","sourceRoot":"","sources":["../../src/util/arraysAreEqual.ts"],"names":[],"mappings":"AAAA,MAAM,cAAc,GAAG,CAAC,IAAgB,EAAE,IAAgB,EAAE,EAAE;IAC7D,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE;QAChC,OAAO,KAAK,CAAC;KACb;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACrC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE;YACxB,OAAO,KAAK,CAAC;SACb;KACD;IAED,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Returns a value clamped between an upper bound 'max' and lower bound 'min'.
3
+ * @param {number} val value
4
+ * @param {number} min lower bound
5
+ * @param {number} max upper bound
6
+ * @returns {number}
7
+ */
8
+ declare const clamp: (val: number, min: number, max: number) => number;
9
+ export default clamp;
@@ -6,7 +6,7 @@
6
6
  * @returns {number}
7
7
  */
8
8
  const clamp = (val, min, max) => {
9
- return Math.min(Math.max(val, min), max);
9
+ return Math.min(Math.max(val, min), max);
10
10
  };
11
-
12
11
  export default clamp;
12
+ //# sourceMappingURL=clamp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clamp.js","sourceRoot":"","sources":["../../src/util/clamp.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,KAAK,GAAG,CAAC,GAAW,EAAE,GAAW,EAAE,GAAW,EAAE,EAAE;IACvD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;AAC1C,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Creates a <link> tag in the <head> tag
3
+ * @param href - the CSS
4
+ * @param attributes - optional attributes to add to the tag
5
+ */
6
+ declare const createLinkInHead: (href: string, attributes?: Record<string, string>) => Promise<Event>;
7
+ export default createLinkInHead;
@@ -2,23 +2,20 @@
2
2
  * Creates a <link> tag in the <head> tag
3
3
  * @param href - the CSS
4
4
  * @param attributes - optional attributes to add to the tag
5
- * @returns {HTMLElement}
6
5
  */
7
- const createLinkInHead = (href, attributes = {}) => {
8
- const link = document.createElement("link");
9
- link.type = "text/css";
10
- link.rel = "stylesheet";
11
-
12
- Object.entries(attributes).forEach(pair => link.setAttribute(...pair));
13
-
14
- link.href = href;
15
-
16
- document.head.appendChild(link);
17
-
18
- return new Promise(resolve => {
19
- link.addEventListener("load", resolve);
20
- link.addEventListener("error", resolve);
21
- });
6
+ const createLinkInHead = (href, attributes) => {
7
+ const link = document.createElement("link");
8
+ link.type = "text/css";
9
+ link.rel = "stylesheet";
10
+ if (attributes) {
11
+ Object.entries(attributes).forEach(pair => link.setAttribute(...pair));
12
+ }
13
+ link.href = href;
14
+ document.head.appendChild(link);
15
+ return new Promise(resolve => {
16
+ link.addEventListener("load", resolve);
17
+ link.addEventListener("error", resolve); // intended
18
+ });
22
19
  };
23
-
24
20
  export default createLinkInHead;
21
+ //# sourceMappingURL=createLinkInHead.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createLinkInHead.js","sourceRoot":"","sources":["../../src/util/createLinkInHead.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,UAAmC,EAAE,EAAE;IAC9E,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;IACvB,IAAI,CAAC,GAAG,GAAG,YAAY,CAAC;IAExB,IAAI,UAAU,EAAE;QACf,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;KACvE;IAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAEjB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEhC,OAAO,IAAI,OAAO,CAAQ,OAAO,CAAC,EAAE;QACnC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,WAAW;IACrD,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Creates a <style> tag in the <head> tag
3
+ * @param cssText - the CSS
4
+ * @param attributes - optional attributes to add to the tag
5
+ * @returns {HTMLElement}
6
+ */
7
+ declare const createStyleInHead: (cssText: string, attributes?: Record<string, string>) => HTMLStyleElement;
8
+ export default createStyleInHead;
@@ -4,15 +4,15 @@
4
4
  * @param attributes - optional attributes to add to the tag
5
5
  * @returns {HTMLElement}
6
6
  */
7
- const createStyleInHead = (cssText, attributes = {}) => {
8
- const style = document.createElement("style");
9
- style.type = "text/css";
10
-
11
- Object.entries(attributes).forEach(pair => style.setAttribute(...pair));
12
-
13
- style.textContent = cssText;
14
- document.head.appendChild(style);
15
- return style;
7
+ const createStyleInHead = (cssText, attributes) => {
8
+ const style = document.createElement("style");
9
+ style.type = "text/css";
10
+ if (attributes) {
11
+ Object.entries(attributes).forEach(pair => style.setAttribute(...pair));
12
+ }
13
+ style.textContent = cssText;
14
+ document.head.appendChild(style);
15
+ return style;
16
16
  };
17
-
18
17
  export default createStyleInHead;
18
+ //# sourceMappingURL=createStyleInHead.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createStyleInHead.js","sourceRoot":"","sources":["../../src/util/createStyleInHead.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,iBAAiB,GAAG,CAAC,OAAe,EAAE,UAAmC,EAAE,EAAE;IAClF,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,GAAG,UAAU,CAAC;IAExB,IAAI,UAAU,EAAE;QACf,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;KACxE;IAED,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACjC,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,2 @@
1
+ declare const debounce: (fn: () => void, delay: number) => void;
2
+ export default debounce;
@@ -3,15 +3,13 @@
3
3
  * @param fn {Function}
4
4
  * @param delay {Integer}
5
5
  */
6
-
7
6
  let debounceInterval = null;
8
-
9
7
  const debounce = (fn, delay) => {
10
- clearTimeout(debounceInterval);
11
- debounceInterval = setTimeout(() => {
12
- debounceInterval = null;
13
- fn();
14
- }, delay);
8
+ debounceInterval && clearTimeout(debounceInterval);
9
+ debounceInterval = setTimeout(() => {
10
+ debounceInterval = null;
11
+ fn();
12
+ }, delay);
15
13
  };
16
-
17
14
  export default debounce;
15
+ //# sourceMappingURL=debounce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debounce.js","sourceRoot":"","sources":["../../src/util/debounce.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,IAAI,gBAAgB,GAAmB,IAAI,CAAC;AAE5C,MAAM,QAAQ,GAAG,CAAC,EAAc,EAAE,KAAa,EAAE,EAAE;IAClD,gBAAgB,IAAI,YAAY,CAAC,gBAAgB,CAAC,CAAC;IACnD,gBAAgB,GAAG,UAAU,CAAC,GAAG,EAAE;QAClC,gBAAgB,GAAG,IAAI,CAAC;QACxB,EAAE,EAAE,CAAC;IACN,CAAC,EAAE,KAAK,CAAC,CAAC;AACX,CAAC,CAAC;AAEF,eAAe,QAAQ,CAAC"}
@@ -0,0 +1,2 @@
1
+ declare const _default: () => string;
2
+ export default _default;
@@ -1,13 +1,10 @@
1
1
  import { DEFAULT_LANGUAGE } from "../generated/AssetParameters.js";
2
-
3
2
  export default () => {
4
- const browserLanguages = navigator.languages;
5
-
6
- const navigatorLanguage = () => {
7
- return navigator.language;
8
- };
9
-
10
- const rawLocale = (browserLanguages && browserLanguages[0]) || navigatorLanguage() || navigator.userLanguage || navigator.browserLanguage;
11
-
12
- return rawLocale || DEFAULT_LANGUAGE;
3
+ const browserLanguages = navigator.languages;
4
+ const navigatorLanguage = () => {
5
+ return navigator.language;
6
+ };
7
+ const rawLocale = (browserLanguages && browserLanguages[0]) || navigatorLanguage();
8
+ return rawLocale || DEFAULT_LANGUAGE;
13
9
  };
10
+ //# sourceMappingURL=detectNavigatorLanguage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detectNavigatorLanguage.js","sourceRoot":"","sources":["../../src/util/detectNavigatorLanguage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,eAAe,GAAG,EAAE;IACnB,MAAM,gBAAgB,GAAG,SAAS,CAAC,SAAS,CAAC;IAE7C,MAAM,iBAAiB,GAAG,GAAG,EAAE;QAC9B,OAAO,SAAS,CAAC,QAAQ,CAAC;IAC3B,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,iBAAiB,EAAE,CAAC;IAEnF,OAAO,SAAS,IAAI,gBAAgB,CAAC;AACtC,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Escapes a regular expression text so that it can be used in a regular expression.
3
+ *
4
+ * @param { string } text the string to be interpreted literally
5
+ * @returns { string } the escaped string
6
+ */
7
+ declare const escapeRegex: (text: string) => string;
8
+ export default escapeRegex;
@@ -1,10 +1,11 @@
1
1
  /**
2
- * Escape a regular expression text so that it can be used in a regular expression.
3
- * @param {string} text The string to be interpreted literally
4
- * @returns Regular expression string to pass to regex
2
+ * Escapes a regular expression text so that it can be used in a regular expression.
3
+ *
4
+ * @param { string } text the string to be interpreted literally
5
+ * @returns { string } the escaped string
5
6
  */
6
- function escapeRegex(text) {
7
- return text.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
8
- }
9
-
7
+ const escapeRegex = (text) => {
8
+ return text.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
9
+ };
10
10
  export default escapeRegex;
11
+ //# sourceMappingURL=escapeRegex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"escapeRegex.js","sourceRoot":"","sources":["../../src/util/escapeRegex.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,EAAE;IACpC,OAAO,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,2 @@
1
+ declare const formatMessage: (text: string, values: Array<number | string>) => string;
2
+ export default formatMessage;
@@ -1,23 +1,19 @@
1
1
  const messageFormatRegEX = /('')|'([^']+(?:''[^']*)*)(?:'|$)|\{([0-9]+(?:\s*,[^{}]*)?)\}|[{}]/g;
2
-
3
2
  const formatMessage = (text, values) => {
4
- values = values || [];
5
-
6
- return text.replace(messageFormatRegEX, ($0, $1, $2, $3, offset) => {
7
- if ($1) {
8
- return '\''; /* eslint-disable-line */
9
- }
10
-
11
- if ($2) {
12
- return $2.replace(/''/g, '\''); /* eslint-disable-line */
13
- }
14
-
15
- if ($3) {
16
- return String(values[parseInt($3)]);
17
- }
18
-
19
- throw new Error(`[i18n]: pattern syntax error at pos ${offset}`);
20
- });
3
+ values = values || [];
4
+ return text.replace(messageFormatRegEX, ($0, $1, $2, $3, offset) => {
5
+ if ($1) {
6
+ return '\''; /* eslint-disable-line */
7
+ }
8
+ if ($2) {
9
+ return $2.replace(/''/g, '\''); /* eslint-disable-line */
10
+ }
11
+ if ($3) {
12
+ const ind = typeof $3 === "string" ? parseInt($3) : $3;
13
+ return String(values[ind]);
14
+ }
15
+ throw new Error(`[i18n]: pattern syntax error at pos ${offset}`);
16
+ });
21
17
  };
22
-
23
18
  export default formatMessage;
19
+ //# sourceMappingURL=formatMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatMessage.js","sourceRoot":"","sources":["../../src/util/formatMessage.ts"],"names":[],"mappings":"AAAA,MAAM,kBAAkB,GAAG,oEAAoE,CAAC;AAEhG,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,MAA8B,EAAE,EAAE;IACtE,MAAM,GAAG,MAAM,IAAI,EAAE,CAAC;IAEtB,OAAO,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAmB,EAAE,MAAc,EAAE,EAAE;QAC3F,IAAI,EAAE,EAAE;YACP,OAAO,IAAI,CAAC,CAAC,yBAAyB;SACtC;QAED,IAAI,EAAE,EAAE;YACP,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,yBAAyB;SACzD;QAED,IAAI,EAAE,EAAE;YACP,MAAM,GAAG,GAAG,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;SAC3B;QAED,MAAM,IAAI,KAAK,CAAC,uCAAuC,MAAM,EAAE,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Generate markup for a raw string where a particular text is wrapped with some tag, by default `<b>` (bold) tag.
3
+ * All inputs to this function are considered literal text, and special characters will always be escaped.
4
+ * @param {string} text The text to add highlighting to
5
+ * @param {string} textToHighlight The text which should be highlighted
6
+ * @return {string} the markup HTML which contains all occurrances of the input text surrounded with a `<b>` tag.
7
+ */
8
+ declare function generateHighlightedMarkup(text: string, textToHighlight: string): string;
9
+ export default generateHighlightedMarkup;
@@ -1,11 +1,10 @@
1
1
  import escapeRegex from "./escapeRegex.js";
2
+ // @ts-ignore
2
3
  import encodeXML from "../sap/base/security/encodeXML.js";
3
-
4
4
  // utility to replace all occurances of a string
5
5
  function replaceAll(text, find, replace, caseInsensitive) {
6
- return text.replace(new RegExp(escapeRegex(find), `${caseInsensitive ? "i" : ""}g`), replace);
6
+ return text.replaceAll(new RegExp(escapeRegex(find), `${caseInsensitive ? "i" : ""}g`), replace);
7
7
  }
8
-
9
8
  /**
10
9
  * Generate markup for a raw string where a particular text is wrapped with some tag, by default `<b>` (bold) tag.
11
10
  * All inputs to this function are considered literal text, and special characters will always be escaped.
@@ -14,29 +13,29 @@ function replaceAll(text, find, replace, caseInsensitive) {
14
13
  * @return {string} the markup HTML which contains all occurrances of the input text surrounded with a `<b>` tag.
15
14
  */
16
15
  function generateHighlightedMarkup(text, textToHighlight) {
17
- if (!text || !textToHighlight) {
18
- return text;
19
- }
20
- // a token is some string that does not appear in either of the input strings
21
- // repeat the token until it does not appear in the string
22
- const makeToken = t => {
23
- const [s, e] = t.split("");
24
- while (text.indexOf(t) >= 0 || textToHighlight.indexOf(t) >= 0) {
25
- t = `${s}${t}${e}`;
26
- }
27
- return t;
28
- };
29
- // It doesn't matter what characters are used as long as all 4 of them are unique
30
- // And also that encodeXML will not change these characters
31
- const openToken = makeToken("12");
32
- const closeToken = makeToken("34");
33
- // wrap every occurance of the textToHighlight using the open/close tokens (instead of markup at this point)
34
- let result = encodeXML(replaceAll(text, textToHighlight, match => `${openToken}${match}${closeToken}`, true));
35
- // now replace the open and close tokens with the markup that we expect
36
- [[openToken, "<b>"], [closeToken, "</b>"]].forEach(([find, replace]) => {
37
- result = replaceAll(result, find, replace);
38
- });
39
- return result;
16
+ if (!text || !textToHighlight) {
17
+ return text;
18
+ }
19
+ // a token is some string that does not appear in either of the input strings
20
+ // repeat the token until it does not appear in the string
21
+ const makeToken = (t) => {
22
+ const [s, e] = t.split("");
23
+ while (text.indexOf(t) >= 0 || textToHighlight.indexOf(t) >= 0) {
24
+ t = `${s}${t}${e}`;
25
+ }
26
+ return t;
27
+ };
28
+ // It doesn't matter what characters are used as long as all 4 of them are unique
29
+ // And also that encodeXML will not change these characters
30
+ const openToken = makeToken("12");
31
+ const closeToken = makeToken("34");
32
+ // wrap every occurance of the textToHighlight using the open/close tokens (instead of markup at this point)
33
+ let result = encodeXML(replaceAll(text, textToHighlight, (match) => `${openToken}${match}${closeToken}`, true));
34
+ // now replace the open and close tokens with the markup that we expect
35
+ [[openToken, "<b>"], [closeToken, "</b>"]].forEach(([find, replace]) => {
36
+ result = replaceAll(result, find, replace, false);
37
+ });
38
+ return result;
40
39
  }
41
-
42
40
  export default generateHighlightedMarkup;
41
+ //# sourceMappingURL=generateHighlightedMarkup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generateHighlightedMarkup.js","sourceRoot":"","sources":["../../src/util/generateHighlightedMarkup.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,aAAa;AACb,OAAO,SAAS,MAAM,mCAAmC,CAAC;AAE1D,gDAAgD;AAChD,SAAS,UAAU,CAAC,IAAY,EAAE,IAAY,EAAE,OAAiE,EAAE,eAAwB;IAC1I,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAiB,CAAC,CAAC;AAC5G,CAAC;AAED;;;;;;GAMG;AACH,SAAS,yBAAyB,CAAC,IAAY,EAAE,eAAuB;IACvE,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE;QAC9B,OAAO,IAAI,CAAC;KACZ;IACD,6EAA6E;IAC7E,0DAA0D;IAC1D,MAAM,SAAS,GAAG,CAAC,CAAS,EAAE,EAAE;QAC/B,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC3B,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;YAC/D,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;SACnB;QACD,OAAO,CAAC,CAAC;IACV,CAAC,CAAC;IACF,iFAAiF;IACjF,2DAA2D;IAC3D,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IACnC,4GAA4G;IAC5G,IAAI,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,eAAe,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,GAAG,SAAS,GAAG,KAAK,GAAG,UAAU,EAAE,EAAE,IAAI,CAAC,CAAW,CAAC;IAClI,uEAAuE;IACvE,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE;QACtE,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AACf,CAAC;AAED,eAAe,yBAAyB,CAAC"}
@@ -0,0 +1,2 @@
1
+ declare const getActiveElement: () => Element | null;
2
+ export default getActiveElement;
@@ -1,11 +1,9 @@
1
1
  const getActiveElement = () => {
2
- let element = document.activeElement;
3
-
4
- while (element && element.shadowRoot && element.shadowRoot.activeElement) {
5
- element = element.shadowRoot.activeElement;
6
- }
7
-
8
- return element;
2
+ let element = document.activeElement;
3
+ while (element && element.shadowRoot && element.shadowRoot.activeElement) {
4
+ element = element.shadowRoot.activeElement;
5
+ }
6
+ return element;
9
7
  };
10
-
11
8
  export default getActiveElement;
9
+ //# sourceMappingURL=getActiveElement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getActiveElement.js","sourceRoot":"","sources":["../../src/util/getActiveElement.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG,GAAG,EAAE;IAC7B,IAAI,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC;IAErC,OAAO,OAAO,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,aAAa,EAAE;QACzE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC;KAC3C;IAED,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC"}