@ui5/webcomponents-base 0.0.0-a289c53b5 → 0.0.0-a3b95fa49

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 (848) hide show
  1. package/CHANGELOG.md +1723 -0
  2. package/README.md +6 -12
  3. package/cypress/specs/Accessor.cy.tsx +79 -0
  4. package/cypress/specs/Boot.cy.tsx +19 -0
  5. package/cypress/specs/ConfigurationChange.cy.tsx +41 -0
  6. package/cypress/specs/ConfigurationScript.cy.tsx +133 -0
  7. package/cypress/specs/ConfigurationURL.cy.tsx +201 -0
  8. package/cypress/specs/CustomMount.cy.tsx +9 -0
  9. package/cypress/specs/CustomTheme.cy.tsx +36 -0
  10. package/cypress/specs/EventProvider.cy.tsx +59 -0
  11. package/cypress/specs/Events.cy.tsx +28 -0
  12. package/cypress/specs/SystemDOMElements.cy.tsx +8 -0
  13. package/cypress/specs/Theming.cy.tsx +74 -0
  14. package/cypress/specs/UI5ElementInvalidation.cy.tsx +252 -0
  15. package/cypress/specs/UI5ElementLifecycle.cy.tsx +82 -0
  16. package/cypress/specs/UI5ElementListenForChildPropChanges.cy.tsx +83 -0
  17. package/cypress/specs/UI5ElementMetadataExt.cy.tsx +42 -0
  18. package/cypress/specs/UI5ElementPropertyValidation.cy.tsx +16 -0
  19. package/cypress/specs/UI5ElementPropsAndAttrs.cy.tsx +113 -0
  20. package/cypress/specs/UI5ElementShadowDOM.cy.tsx +30 -0
  21. package/cypress/specs/UI5ElementSlots.cy.tsx +136 -0
  22. package/cypress/specs/WithComplexTemplate.cy.tsx +32 -0
  23. package/cypress/specs/i18n_texts.cy.tsx +129 -0
  24. package/cypress/specs/util/FocusableElements.cy.tsx +48 -0
  25. package/cypress/support/commands.ts +39 -0
  26. package/cypress/support/component-index.html +12 -0
  27. package/cypress/support/component.ts +36 -0
  28. package/cypress/tsconfig.json +21 -0
  29. package/cypress.config.js +3 -0
  30. package/dist/.tsbuildinfobuild +1 -0
  31. package/dist/AssetRegistry.d.ts +2 -2
  32. package/dist/AssetRegistry.js +2 -2
  33. package/dist/AssetRegistry.js.map +1 -1
  34. package/dist/Boot.d.ts +3 -2
  35. package/dist/Boot.js +12 -8
  36. package/dist/Boot.js.map +1 -1
  37. package/dist/CustomElementsRegistry.d.ts +2 -1
  38. package/dist/CustomElementsRegistry.js +5 -2
  39. package/dist/CustomElementsRegistry.js.map +1 -1
  40. package/dist/CustomElementsScope.d.ts +4 -4
  41. package/dist/CustomElementsScope.js +2 -2
  42. package/dist/CustomElementsScope.js.map +1 -1
  43. package/dist/CustomElementsScopeUtils.d.ts +11 -2
  44. package/dist/CustomElementsScopeUtils.js +21 -2
  45. package/dist/CustomElementsScopeUtils.js.map +1 -1
  46. package/dist/DOMObserver.js.map +1 -1
  47. package/dist/Device.d.ts +17 -2
  48. package/dist/Device.js +19 -14
  49. package/dist/Device.js.map +1 -1
  50. package/dist/EventProvider.js +1 -1
  51. package/dist/EventProvider.js.map +1 -1
  52. package/dist/FontFace.js +6 -1
  53. package/dist/FontFace.js.map +1 -1
  54. package/dist/IgnoreCustomElements.d.ts +25 -0
  55. package/dist/IgnoreCustomElements.js +37 -0
  56. package/dist/IgnoreCustomElements.js.map +1 -0
  57. package/dist/InitialConfiguration.d.ts +10 -3
  58. package/dist/InitialConfiguration.js +32 -9
  59. package/dist/InitialConfiguration.js.map +1 -1
  60. package/dist/Keys.d.ts +8 -1
  61. package/dist/Keys.js +114 -106
  62. package/dist/Keys.js.map +1 -1
  63. package/dist/Location.d.ts +11 -0
  64. package/dist/Location.js +49 -0
  65. package/dist/Location.js.map +1 -0
  66. package/dist/ManagedStyles.d.ts +5 -6
  67. package/dist/ManagedStyles.js +45 -53
  68. package/dist/ManagedStyles.js.map +1 -1
  69. package/dist/MediaRange.d.ts +6 -12
  70. package/dist/MediaRange.js +21 -31
  71. package/dist/MediaRange.js.map +1 -1
  72. package/dist/PropertiesFileFormat.js.map +1 -1
  73. package/dist/Render.js.map +1 -1
  74. package/dist/RenderQueue.js.map +1 -1
  75. package/dist/Runtimes.js +11 -0
  76. package/dist/Runtimes.js.map +1 -1
  77. package/dist/SystemCSSVars.js.map +1 -1
  78. package/dist/UI5Element.d.ts +121 -75
  79. package/dist/UI5Element.js +396 -229
  80. package/dist/UI5Element.js.map +1 -1
  81. package/dist/UI5ElementMetadata.d.ts +36 -27
  82. package/dist/UI5ElementMetadata.js +27 -72
  83. package/dist/UI5ElementMetadata.js.map +1 -1
  84. package/dist/animations/AnimationQueue.js.map +1 -1
  85. package/dist/animations/animate.js.map +1 -1
  86. package/dist/animations/slideUp.js.map +1 -1
  87. package/dist/asset-registries/Icons.d.ts +5 -4
  88. package/dist/asset-registries/Icons.js +28 -17
  89. package/dist/asset-registries/Icons.js.map +1 -1
  90. package/dist/asset-registries/Illustrations.d.ts +2 -0
  91. package/dist/asset-registries/Illustrations.js +51 -20
  92. package/dist/asset-registries/Illustrations.js.map +1 -1
  93. package/dist/asset-registries/LocaleData.js +1 -1
  94. package/dist/asset-registries/LocaleData.js.map +1 -1
  95. package/dist/asset-registries/Themes.d.ts +5 -7
  96. package/dist/asset-registries/Themes.js +27 -12
  97. package/dist/asset-registries/Themes.js.map +1 -1
  98. package/dist/asset-registries/i18n.d.ts +2 -2
  99. package/dist/asset-registries/i18n.js +4 -3
  100. package/dist/asset-registries/i18n.js.map +1 -1
  101. package/dist/{assets-meta → asset-registries/util}/IconCollectionsAlias.d.ts +1 -2
  102. package/dist/{assets-meta → asset-registries/util}/IconCollectionsAlias.js +1 -2
  103. package/dist/asset-registries/util/IconCollectionsAlias.js.map +1 -0
  104. package/dist/asset-registries/util/IconCollectionsByTheme.d.ts +20 -0
  105. package/dist/asset-registries/util/IconCollectionsByTheme.js +42 -0
  106. package/dist/asset-registries/util/IconCollectionsByTheme.js.map +1 -0
  107. package/dist/asset-registries/util/getIconCollectionByTheme.d.ts +13 -0
  108. package/dist/asset-registries/util/getIconCollectionByTheme.js +29 -0
  109. package/dist/asset-registries/util/getIconCollectionByTheme.js.map +1 -0
  110. package/dist/config/AnimationMode.d.ts +2 -2
  111. package/dist/config/AnimationMode.js +6 -1
  112. package/dist/config/AnimationMode.js.map +1 -1
  113. package/dist/config/CalendarType.d.ts +8 -1
  114. package/dist/config/CalendarType.js +23 -2
  115. package/dist/config/CalendarType.js.map +1 -1
  116. package/dist/config/ConfigurationReset.d.ts +4 -0
  117. package/dist/config/ConfigurationReset.js +11 -0
  118. package/dist/config/ConfigurationReset.js.map +1 -0
  119. package/dist/config/Fonts.d.ts +16 -0
  120. package/dist/config/Fonts.js +30 -0
  121. package/dist/config/Fonts.js.map +1 -0
  122. package/dist/config/FormatSettings.js +4 -0
  123. package/dist/config/FormatSettings.js.map +1 -1
  124. package/dist/config/Icons.d.ts +9 -24
  125. package/dist/config/Icons.js +8 -67
  126. package/dist/config/Icons.js.map +1 -1
  127. package/dist/config/Language.d.ts +1 -1
  128. package/dist/config/Language.js +11 -3
  129. package/dist/config/Language.js.map +1 -1
  130. package/dist/config/NoConflict.js +4 -0
  131. package/dist/config/NoConflict.js.map +1 -1
  132. package/dist/config/Theme.d.ts +4 -3
  133. package/dist/config/Theme.js +18 -8
  134. package/dist/config/Theme.js.map +1 -1
  135. package/dist/config/ThemeRoot.d.ts +27 -0
  136. package/dist/config/ThemeRoot.js +61 -0
  137. package/dist/config/ThemeRoot.js.map +1 -0
  138. package/dist/config/Timezone.d.ts +1 -1
  139. package/dist/config/Timezone.js +5 -1
  140. package/dist/config/Timezone.js.map +1 -1
  141. package/dist/config/Tooltips.d.ts +19 -0
  142. package/dist/config/Tooltips.js +29 -0
  143. package/dist/config/Tooltips.js.map +1 -0
  144. package/dist/connectToComponent.d.ts +9 -0
  145. package/dist/connectToComponent.js +59 -0
  146. package/dist/connectToComponent.js.map +1 -0
  147. package/dist/converters/DOMReference.d.ts +5 -0
  148. package/dist/converters/DOMReference.js +13 -0
  149. package/dist/converters/DOMReference.js.map +1 -0
  150. package/dist/css/FontFace.css +47 -17
  151. package/dist/css/SystemCSSVars.css +0 -8
  152. package/dist/custom-elements-internal.json +2803 -0
  153. package/dist/custom-elements.json +2500 -0
  154. package/dist/decorators/bound.d.ts +1 -0
  155. package/dist/decorators/bound.js +34 -0
  156. package/dist/decorators/bound.js.map +1 -0
  157. package/dist/decorators/customElement.d.ts +43 -3
  158. package/dist/decorators/customElement.js +14 -6
  159. package/dist/decorators/customElement.js.map +1 -1
  160. package/dist/decorators/event-strict.d.ts +15 -0
  161. package/dist/decorators/event-strict.js +26 -0
  162. package/dist/decorators/event-strict.js.map +1 -0
  163. package/dist/decorators/event.d.ts +8 -2
  164. package/dist/decorators/event.js +3 -0
  165. package/dist/decorators/event.js.map +1 -1
  166. package/dist/decorators/i18n.d.ts +17 -0
  167. package/dist/decorators/i18n.js +32 -0
  168. package/dist/decorators/i18n.js.map +1 -0
  169. package/dist/decorators/property.d.ts +1 -1
  170. package/dist/decorators/property.js +1 -1
  171. package/dist/decorators/property.js.map +1 -1
  172. package/dist/decorators/query.d.ts +25 -0
  173. package/dist/decorators/query.js +32 -0
  174. package/dist/decorators/query.js.map +1 -0
  175. package/dist/decorators/queryAll.d.ts +27 -0
  176. package/dist/decorators/queryAll.js +34 -0
  177. package/dist/decorators/queryAll.js.map +1 -0
  178. package/dist/decorators/slot.d.ts +1 -1
  179. package/dist/decorators/slot.js.map +1 -1
  180. package/dist/decorators.d.ts +8 -0
  181. package/dist/decorators.js +9 -0
  182. package/dist/decorators.js.map +1 -0
  183. package/dist/delegate/ItemNavigation.d.ts +9 -8
  184. package/dist/delegate/ItemNavigation.js +13 -14
  185. package/dist/delegate/ItemNavigation.js.map +1 -1
  186. package/dist/delegate/ResizeHandler.d.ts +4 -6
  187. package/dist/delegate/ResizeHandler.js +4 -6
  188. package/dist/delegate/ResizeHandler.js.map +1 -1
  189. package/dist/delegate/ScrollEnablement.js +2 -2
  190. package/dist/delegate/ScrollEnablement.js.map +1 -1
  191. package/dist/features/F6Navigation.d.ts +4 -3
  192. package/dist/features/F6Navigation.js +41 -9
  193. package/dist/features/F6Navigation.js.map +1 -1
  194. package/dist/features/InputElementsFormSupport.d.ts +15 -0
  195. package/dist/features/InputElementsFormSupport.js +39 -0
  196. package/dist/features/InputElementsFormSupport.js.map +1 -0
  197. package/dist/features/LegacyDateFormats.js.map +1 -1
  198. package/dist/features/OpenUI5Enablement.d.ts +3 -3
  199. package/dist/features/OpenUI5Enablement.js.map +1 -1
  200. package/dist/features/OpenUI5Support.d.ts +14 -6
  201. package/dist/features/OpenUI5Support.js +90 -46
  202. package/dist/features/OpenUI5Support.js.map +1 -1
  203. package/dist/features/patchPatcher.d.ts +11 -0
  204. package/dist/features/patchPatcher.js +11 -0
  205. package/dist/features/patchPatcher.js.map +1 -0
  206. package/dist/features/patchPopup.d.ts +15 -0
  207. package/dist/features/patchPopup.js +70 -0
  208. package/dist/features/patchPopup.js.map +1 -0
  209. package/dist/generated/AssetParameters.d.ts +6 -0
  210. package/dist/generated/AssetParameters.js +3 -10
  211. package/dist/generated/AssetParameters.js.map +1 -0
  212. package/dist/generated/VersionInfo.d.ts +10 -0
  213. package/dist/generated/VersionInfo.js +9 -8
  214. package/dist/generated/VersionInfo.js.map +1 -0
  215. package/dist/generated/css/BusyIndicator.css.d.ts +2 -3
  216. package/dist/generated/css/BusyIndicator.css.js +1 -6
  217. package/dist/generated/css/BusyIndicator.css.js.map +1 -1
  218. package/dist/generated/css/FontFace.css.d.ts +2 -3
  219. package/dist/generated/css/FontFace.css.js +1 -6
  220. package/dist/generated/css/FontFace.css.js.map +1 -1
  221. package/dist/generated/css/OverrideFontFace.css.d.ts +2 -3
  222. package/dist/generated/css/OverrideFontFace.css.js +1 -6
  223. package/dist/generated/css/OverrideFontFace.css.js.map +1 -1
  224. package/dist/generated/css/SystemCSSVars.css.d.ts +2 -3
  225. package/dist/generated/css/SystemCSSVars.css.js +1 -6
  226. package/dist/generated/css/SystemCSSVars.css.js.map +1 -1
  227. package/dist/getSharedResource.js +7 -1
  228. package/dist/getSharedResource.js.map +1 -1
  229. package/dist/i18nBundle.d.ts +2 -4
  230. package/dist/i18nBundle.js +3 -5
  231. package/dist/i18nBundle.js.map +1 -1
  232. package/dist/index.d.ts +48 -0
  233. package/dist/index.js +88 -0
  234. package/dist/index.js.map +1 -0
  235. package/dist/jsx-dev-runtime.d.ts +4 -0
  236. package/dist/jsx-dev-runtime.js +43 -0
  237. package/dist/jsx-dev-runtime.js.map +1 -0
  238. package/dist/jsx-runtime.d.ts +50 -0
  239. package/dist/jsx-runtime.js +27 -0
  240. package/dist/jsx-runtime.js.map +1 -0
  241. package/dist/jsx-utils.d.ts +3 -0
  242. package/dist/jsx-utils.js +48 -0
  243. package/dist/jsx-utils.js.map +1 -0
  244. package/dist/locale/Locale.js.map +1 -1
  245. package/dist/locale/RTLAwareRegistry.d.ts +1 -1
  246. package/dist/locale/RTLAwareRegistry.js.map +1 -1
  247. package/dist/locale/applyDirection.d.ts +3 -2
  248. package/dist/locale/applyDirection.js +3 -2
  249. package/dist/locale/applyDirection.js.map +1 -1
  250. package/dist/locale/getEffectiveDir.d.ts +1 -1
  251. package/dist/locale/getEffectiveDir.js +3 -19
  252. package/dist/locale/getEffectiveDir.js.map +1 -1
  253. package/dist/locale/getLocale.js.map +1 -1
  254. package/dist/locale/nextFallbackLocale.js.map +1 -1
  255. package/dist/locale/normalizeLocale.js.map +1 -1
  256. package/dist/prod/AssetRegistry.js +2 -0
  257. package/dist/prod/AssetRegistry.js.map +7 -0
  258. package/dist/prod/Boot.js +2 -0
  259. package/dist/prod/Boot.js.map +7 -0
  260. package/dist/prod/CustomElementsRegistry.js +10 -0
  261. package/dist/prod/CustomElementsRegistry.js.map +7 -0
  262. package/dist/prod/CustomElementsScope.js +2 -0
  263. package/dist/prod/CustomElementsScope.js.map +7 -0
  264. package/dist/prod/CustomElementsScopeUtils.js +2 -0
  265. package/dist/prod/CustomElementsScopeUtils.js.map +7 -0
  266. package/dist/prod/DOMObserver.js +2 -0
  267. package/dist/prod/DOMObserver.js.map +7 -0
  268. package/dist/prod/Device.js +2 -0
  269. package/dist/prod/Device.js.map +7 -0
  270. package/dist/prod/EventProvider.js +2 -0
  271. package/dist/prod/EventProvider.js.map +7 -0
  272. package/dist/prod/FeaturesRegistry.js +2 -0
  273. package/dist/prod/FeaturesRegistry.js.map +7 -0
  274. package/dist/prod/FontFace.js +2 -0
  275. package/dist/prod/FontFace.js.map +7 -0
  276. package/dist/prod/IgnoreCustomElements.js +2 -0
  277. package/dist/prod/IgnoreCustomElements.js.map +7 -0
  278. package/dist/prod/InitialConfiguration.js +2 -0
  279. package/dist/prod/InitialConfiguration.js.map +7 -0
  280. package/dist/prod/Keys.js +2 -0
  281. package/dist/prod/Keys.js.map +7 -0
  282. package/dist/prod/Location.js +2 -0
  283. package/dist/prod/Location.js.map +7 -0
  284. package/dist/prod/ManagedStyles.js +2 -0
  285. package/dist/prod/ManagedStyles.js.map +7 -0
  286. package/dist/prod/MediaRange.js +2 -0
  287. package/dist/prod/MediaRange.js.map +7 -0
  288. package/dist/prod/PropertiesFileFormat.js +3 -0
  289. package/dist/prod/PropertiesFileFormat.js.map +7 -0
  290. package/dist/prod/Render.js +2 -0
  291. package/dist/prod/Render.js.map +7 -0
  292. package/dist/prod/RenderQueue.js +2 -0
  293. package/dist/prod/RenderQueue.js.map +7 -0
  294. package/dist/prod/Runtimes.js +2 -0
  295. package/dist/prod/Runtimes.js.map +7 -0
  296. package/dist/prod/SystemCSSVars.js +2 -0
  297. package/dist/prod/SystemCSSVars.js.map +7 -0
  298. package/dist/prod/Theming.js +2 -0
  299. package/dist/prod/Theming.js.map +7 -0
  300. package/dist/prod/UI5Element.js +2 -0
  301. package/dist/prod/UI5Element.js.map +7 -0
  302. package/dist/prod/UI5ElementMetadata.js +2 -0
  303. package/dist/prod/UI5ElementMetadata.js.map +7 -0
  304. package/dist/prod/animations/AnimationQueue.js +2 -0
  305. package/dist/prod/animations/AnimationQueue.js.map +7 -0
  306. package/dist/prod/animations/animate.js +2 -0
  307. package/dist/prod/animations/animate.js.map +7 -0
  308. package/dist/prod/animations/scroll.js +2 -0
  309. package/dist/prod/animations/scroll.js.map +7 -0
  310. package/dist/prod/animations/slideDown.js +2 -0
  311. package/dist/prod/animations/slideDown.js.map +7 -0
  312. package/dist/prod/animations/slideUp.js +2 -0
  313. package/dist/prod/animations/slideUp.js.map +7 -0
  314. package/dist/prod/asset-registries/Icons.js +2 -0
  315. package/dist/prod/asset-registries/Icons.js.map +7 -0
  316. package/dist/prod/asset-registries/Illustrations.js +2 -0
  317. package/dist/prod/asset-registries/Illustrations.js.map +7 -0
  318. package/dist/prod/asset-registries/LocaleData.js +2 -0
  319. package/dist/prod/asset-registries/LocaleData.js.map +7 -0
  320. package/dist/prod/asset-registries/Themes.js +2 -0
  321. package/dist/prod/asset-registries/Themes.js.map +7 -0
  322. package/dist/prod/asset-registries/i18n.js +2 -0
  323. package/dist/prod/asset-registries/i18n.js.map +7 -0
  324. package/dist/prod/asset-registries/util/IconCollectionsAlias.js +2 -0
  325. package/dist/prod/asset-registries/util/IconCollectionsAlias.js.map +7 -0
  326. package/dist/prod/asset-registries/util/IconCollectionsByTheme.js +2 -0
  327. package/dist/prod/asset-registries/util/IconCollectionsByTheme.js.map +7 -0
  328. package/dist/prod/asset-registries/util/getIconCollectionByTheme.js +2 -0
  329. package/dist/prod/asset-registries/util/getIconCollectionByTheme.js.map +7 -0
  330. package/dist/prod/config/AnimationMode.js +2 -0
  331. package/dist/prod/config/AnimationMode.js.map +7 -0
  332. package/dist/prod/config/CalendarType.js +2 -0
  333. package/dist/prod/config/CalendarType.js.map +7 -0
  334. package/dist/prod/config/ConfigurationReset.js +2 -0
  335. package/dist/prod/config/ConfigurationReset.js.map +7 -0
  336. package/dist/prod/config/Fonts.js +2 -0
  337. package/dist/prod/config/Fonts.js.map +7 -0
  338. package/dist/prod/config/FormatSettings.js +2 -0
  339. package/dist/prod/config/FormatSettings.js.map +7 -0
  340. package/dist/prod/config/Icons.js +2 -0
  341. package/dist/prod/config/Icons.js.map +7 -0
  342. package/dist/prod/config/Language.js +2 -0
  343. package/dist/prod/config/Language.js.map +7 -0
  344. package/dist/prod/config/NoConflict.js +2 -0
  345. package/dist/prod/config/NoConflict.js.map +7 -0
  346. package/dist/prod/config/Theme.js +2 -0
  347. package/dist/prod/config/Theme.js.map +7 -0
  348. package/dist/prod/config/ThemeRoot.js +2 -0
  349. package/dist/prod/config/ThemeRoot.js.map +7 -0
  350. package/dist/prod/config/Timezone.js +2 -0
  351. package/dist/prod/config/Timezone.js.map +7 -0
  352. package/dist/prod/config/Tooltips.js +2 -0
  353. package/dist/prod/config/Tooltips.js.map +7 -0
  354. package/dist/prod/connectToComponent.js +2 -0
  355. package/dist/prod/connectToComponent.js.map +7 -0
  356. package/dist/prod/converters/DOMReference.js +2 -0
  357. package/dist/prod/converters/DOMReference.js.map +7 -0
  358. package/dist/prod/decorators/bound.js +2 -0
  359. package/dist/prod/decorators/bound.js.map +7 -0
  360. package/dist/prod/decorators/customElement.js +2 -0
  361. package/dist/prod/decorators/customElement.js.map +7 -0
  362. package/dist/prod/decorators/event-strict.js +2 -0
  363. package/dist/prod/decorators/event-strict.js.map +7 -0
  364. package/dist/prod/decorators/event.js +2 -0
  365. package/dist/prod/decorators/event.js.map +7 -0
  366. package/dist/prod/decorators/i18n.js +2 -0
  367. package/dist/prod/decorators/i18n.js.map +7 -0
  368. package/dist/prod/decorators/property.js +2 -0
  369. package/dist/prod/decorators/property.js.map +7 -0
  370. package/dist/prod/decorators/query.js +2 -0
  371. package/dist/prod/decorators/query.js.map +7 -0
  372. package/dist/prod/decorators/queryAll.js +2 -0
  373. package/dist/prod/decorators/queryAll.js.map +7 -0
  374. package/dist/prod/decorators/slot.js +2 -0
  375. package/dist/prod/decorators/slot.js.map +7 -0
  376. package/dist/prod/decorators.js +2 -0
  377. package/dist/prod/decorators.js.map +7 -0
  378. package/dist/prod/delegate/ItemNavigation.js +2 -0
  379. package/dist/prod/delegate/ItemNavigation.js.map +7 -0
  380. package/dist/prod/delegate/ResizeHandler.js +2 -0
  381. package/dist/prod/delegate/ResizeHandler.js.map +7 -0
  382. package/dist/prod/delegate/ScrollEnablement.js +2 -0
  383. package/dist/prod/delegate/ScrollEnablement.js.map +7 -0
  384. package/dist/prod/features/F6Navigation.js +2 -0
  385. package/dist/prod/features/F6Navigation.js.map +7 -0
  386. package/dist/prod/features/InputElementsFormSupport.js +2 -0
  387. package/dist/prod/features/InputElementsFormSupport.js.map +7 -0
  388. package/dist/prod/features/LegacyDateFormats.js +2 -0
  389. package/dist/prod/features/LegacyDateFormats.js.map +7 -0
  390. package/dist/prod/features/OpenUI5Element.js +2 -0
  391. package/dist/prod/features/OpenUI5Element.js.map +7 -0
  392. package/dist/prod/features/OpenUI5Enablement.js +21 -0
  393. package/dist/prod/features/OpenUI5Enablement.js.map +7 -0
  394. package/dist/prod/features/OpenUI5Support.js +2 -0
  395. package/dist/prod/features/OpenUI5Support.js.map +7 -0
  396. package/dist/prod/features/patchPatcher.js +2 -0
  397. package/dist/prod/features/patchPatcher.js.map +7 -0
  398. package/dist/prod/features/patchPopup.js +2 -0
  399. package/dist/prod/features/patchPopup.js.map +7 -0
  400. package/dist/prod/generated/AssetParameters.js +2 -0
  401. package/dist/prod/generated/AssetParameters.js.map +7 -0
  402. package/dist/prod/generated/VersionInfo.js +2 -0
  403. package/dist/prod/generated/VersionInfo.js.map +7 -0
  404. package/dist/prod/generated/css/BusyIndicator.css.js +2 -0
  405. package/dist/prod/generated/css/BusyIndicator.css.js.map +7 -0
  406. package/dist/prod/generated/css/FontFace.css.js +2 -0
  407. package/dist/prod/generated/css/FontFace.css.js.map +7 -0
  408. package/dist/prod/generated/css/OverrideFontFace.css.js +2 -0
  409. package/dist/prod/generated/css/OverrideFontFace.css.js.map +7 -0
  410. package/dist/prod/generated/css/SystemCSSVars.css.js +2 -0
  411. package/dist/prod/generated/css/SystemCSSVars.css.js.map +7 -0
  412. package/dist/prod/getSharedResource.js +2 -0
  413. package/dist/prod/getSharedResource.js.map +7 -0
  414. package/dist/prod/global.d.js +2 -0
  415. package/dist/prod/global.d.js.map +7 -0
  416. package/dist/prod/i18nBundle.js +2 -0
  417. package/dist/prod/i18nBundle.js.map +7 -0
  418. package/dist/prod/index.js +2 -0
  419. package/dist/prod/index.js.map +7 -0
  420. package/dist/prod/jsx-dev-runtime.js +2 -0
  421. package/dist/prod/jsx-dev-runtime.js.map +7 -0
  422. package/dist/prod/jsx-runtime.js +2 -0
  423. package/dist/prod/jsx-runtime.js.map +7 -0
  424. package/dist/prod/jsx-utils.js +2 -0
  425. package/dist/prod/jsx-utils.js.map +7 -0
  426. package/dist/prod/locale/Locale.js +2 -0
  427. package/dist/prod/locale/Locale.js.map +7 -0
  428. package/dist/prod/locale/RTLAwareRegistry.js +2 -0
  429. package/dist/prod/locale/RTLAwareRegistry.js.map +7 -0
  430. package/dist/prod/locale/applyDirection.js +2 -0
  431. package/dist/prod/locale/applyDirection.js.map +7 -0
  432. package/dist/prod/locale/directionChange.js +2 -0
  433. package/dist/prod/locale/directionChange.js.map +7 -0
  434. package/dist/prod/locale/getEffectiveDir.js +2 -0
  435. package/dist/prod/locale/getEffectiveDir.js.map +7 -0
  436. package/dist/prod/locale/getLocale.js +2 -0
  437. package/dist/prod/locale/getLocale.js.map +7 -0
  438. package/dist/prod/locale/languageChange.js +2 -0
  439. package/dist/prod/locale/languageChange.js.map +7 -0
  440. package/dist/prod/locale/nextFallbackLocale.js +2 -0
  441. package/dist/prod/locale/nextFallbackLocale.js.map +7 -0
  442. package/dist/prod/locale/normalizeLocale.js +2 -0
  443. package/dist/prod/locale/normalizeLocale.js.map +7 -0
  444. package/dist/prod/renderer/JsxRenderer.js +2 -0
  445. package/dist/prod/renderer/JsxRenderer.js.map +7 -0
  446. package/dist/prod/renderer/LitRenderer.js +2 -0
  447. package/dist/prod/renderer/LitRenderer.js.map +7 -0
  448. package/dist/prod/renderer/directives/style-map.js +6 -0
  449. package/dist/prod/renderer/directives/style-map.js.map +7 -0
  450. package/dist/prod/renderer/executeTemplate.js +2 -0
  451. package/dist/prod/renderer/executeTemplate.js.map +7 -0
  452. package/dist/prod/sap/base/Log.js +750 -0
  453. package/dist/prod/sap/base/assert.js +34 -0
  454. package/dist/prod/sap/base/config/MemoryConfigurationProvider.js +20 -0
  455. package/dist/prod/sap/base/security/URLListValidator.js +406 -0
  456. package/dist/prod/sap/base/security/encodeCSS.js +40 -0
  457. package/dist/prod/sap/base/security/encodeXML.js +53 -0
  458. package/dist/prod/sap/base/security/sanitizeHTML.js +38 -0
  459. package/dist/prod/sap/base/strings/toHex.js +33 -0
  460. package/dist/prod/sap/base/util/now.js +28 -0
  461. package/dist/prod/sap/base/util/uid.js +27 -0
  462. package/dist/prod/sap/ui/thirdparty/caja-html-sanitizer.js +3600 -0
  463. package/dist/prod/ssr-dom-shim.js +2 -0
  464. package/dist/prod/ssr-dom-shim.js.map +7 -0
  465. package/dist/prod/ssr-dom.js +2 -0
  466. package/dist/prod/ssr-dom.js.map +7 -0
  467. package/dist/prod/theming/CustomStyle.js +2 -0
  468. package/dist/prod/theming/CustomStyle.js.map +7 -0
  469. package/dist/prod/theming/ThemeLoaded.js +2 -0
  470. package/dist/prod/theming/ThemeLoaded.js.map +7 -0
  471. package/dist/prod/theming/ThemeRegistered.js +2 -0
  472. package/dist/prod/theming/ThemeRegistered.js.map +7 -0
  473. package/dist/prod/theming/applyTheme.js +2 -0
  474. package/dist/prod/theming/applyTheme.js.map +7 -0
  475. package/dist/prod/theming/getConstructableStyle.js +2 -0
  476. package/dist/prod/theming/getConstructableStyle.js.map +7 -0
  477. package/dist/prod/theming/getEffectiveStyle.js +2 -0
  478. package/dist/prod/theming/getEffectiveStyle.js.map +7 -0
  479. package/dist/prod/theming/getStylesString.js +2 -0
  480. package/dist/prod/theming/getStylesString.js.map +7 -0
  481. package/dist/prod/theming/getThemeDesignerTheme.js +2 -0
  482. package/dist/prod/theming/getThemeDesignerTheme.js.map +7 -0
  483. package/dist/prod/thirdparty/_merge.js +2 -0
  484. package/dist/prod/thirdparty/_merge.js.map +7 -0
  485. package/dist/prod/thirdparty/isPlainObject.js +2 -0
  486. package/dist/prod/thirdparty/isPlainObject.js.map +7 -0
  487. package/dist/prod/thirdparty/merge.js +2 -0
  488. package/dist/prod/thirdparty/merge.js.map +7 -0
  489. package/dist/prod/thirdparty/preact/jsx.d.js +2 -0
  490. package/dist/prod/thirdparty/preact/jsx.d.js.map +7 -0
  491. package/dist/prod/thirdparty/preact/jsxRuntime.module.d.js +2 -0
  492. package/dist/prod/thirdparty/preact/jsxRuntime.module.d.js.map +7 -0
  493. package/dist/prod/thirdparty/preact/jsxRuntime.module.js +1 -0
  494. package/dist/prod/thirdparty/preact/preact.module.d.js +2 -0
  495. package/dist/prod/thirdparty/preact/preact.module.d.js.map +7 -0
  496. package/dist/prod/thirdparty/preact/preact.module.js +1 -0
  497. package/dist/prod/types/AnimationMode.js +2 -0
  498. package/dist/prod/types/AnimationMode.js.map +7 -0
  499. package/dist/prod/types/CalendarType.js +2 -0
  500. package/dist/prod/types/CalendarType.js.map +7 -0
  501. package/dist/prod/types/InvisibleMessageMode.js +2 -0
  502. package/dist/prod/types/InvisibleMessageMode.js.map +7 -0
  503. package/dist/prod/types/ItemNavigationBehavior.js +2 -0
  504. package/dist/prod/types/ItemNavigationBehavior.js.map +7 -0
  505. package/dist/prod/types/MovePlacement.js +2 -0
  506. package/dist/prod/types/MovePlacement.js.map +7 -0
  507. package/dist/prod/types/NavigationMode.js +2 -0
  508. package/dist/prod/types/NavigationMode.js.map +7 -0
  509. package/dist/prod/types/Orientation.js +2 -0
  510. package/dist/prod/types/Orientation.js.map +7 -0
  511. package/dist/prod/types/SortOrder.js +2 -0
  512. package/dist/prod/types/SortOrder.js.map +7 -0
  513. package/dist/prod/types/ValueState.js +2 -0
  514. package/dist/prod/types/ValueState.js.map +7 -0
  515. package/dist/prod/types.js +2 -0
  516. package/dist/prod/types.js.map +7 -0
  517. package/dist/prod/updateShadowRoot.js +2 -0
  518. package/dist/prod/updateShadowRoot.js.map +7 -0
  519. package/dist/prod/util/AccessibilityTextsHelper.js +2 -0
  520. package/dist/prod/util/AccessibilityTextsHelper.js.map +7 -0
  521. package/dist/prod/util/Caret.js +2 -0
  522. package/dist/prod/util/Caret.js.map +7 -0
  523. package/dist/prod/util/ColorConversion.js +2 -0
  524. package/dist/prod/util/ColorConversion.js.map +7 -0
  525. package/dist/prod/util/FetchHelper.js +2 -0
  526. package/dist/prod/util/FetchHelper.js.map +7 -0
  527. package/dist/prod/util/FocusableElements.js +2 -0
  528. package/dist/prod/util/FocusableElements.js.map +7 -0
  529. package/dist/prod/util/HTMLSanitizer.js +2 -0
  530. package/dist/prod/util/HTMLSanitizer.js.map +7 -0
  531. package/dist/prod/util/InvisibleMessage.js +2 -0
  532. package/dist/prod/util/InvisibleMessage.js.map +7 -0
  533. package/dist/prod/util/PopupUtils.js +2 -0
  534. package/dist/prod/util/PopupUtils.js.map +7 -0
  535. package/dist/prod/util/SelectionAssistant.js +2 -0
  536. package/dist/prod/util/SelectionAssistant.js.map +7 -0
  537. package/dist/prod/util/SlotsHelper.js +2 -0
  538. package/dist/prod/util/SlotsHelper.js.map +7 -0
  539. package/dist/prod/util/StringHelper.js +2 -0
  540. package/dist/prod/util/StringHelper.js.map +7 -0
  541. package/dist/prod/util/TabbableElements.js +2 -0
  542. package/dist/prod/util/TabbableElements.js.map +7 -0
  543. package/dist/prod/util/arraysAreEqual.js +2 -0
  544. package/dist/prod/util/arraysAreEqual.js.map +7 -0
  545. package/dist/prod/util/clamp.js +2 -0
  546. package/dist/prod/util/clamp.js.map +7 -0
  547. package/dist/prod/util/createLinkInHead.js +2 -0
  548. package/dist/prod/util/createLinkInHead.js.map +7 -0
  549. package/dist/prod/util/debounce.js +2 -0
  550. package/dist/prod/util/debounce.js.map +7 -0
  551. package/dist/prod/util/detectNavigatorLanguage.js +2 -0
  552. package/dist/prod/util/detectNavigatorLanguage.js.map +7 -0
  553. package/dist/prod/util/dragAndDrop/DragRegistry.js +2 -0
  554. package/dist/prod/util/dragAndDrop/DragRegistry.js.map +7 -0
  555. package/dist/prod/util/dragAndDrop/findClosestPosition.js +2 -0
  556. package/dist/prod/util/dragAndDrop/findClosestPosition.js.map +7 -0
  557. package/dist/prod/util/dragAndDrop/handleDragOver.js +2 -0
  558. package/dist/prod/util/dragAndDrop/handleDragOver.js.map +7 -0
  559. package/dist/prod/util/dragAndDrop/handleDrop.js +2 -0
  560. package/dist/prod/util/dragAndDrop/handleDrop.js.map +7 -0
  561. package/dist/prod/util/dragAndDrop/longDragOverHandler.js +2 -0
  562. package/dist/prod/util/dragAndDrop/longDragOverHandler.js.map +7 -0
  563. package/dist/prod/util/escapeRegex.js +2 -0
  564. package/dist/prod/util/escapeRegex.js.map +7 -0
  565. package/dist/prod/util/fixSafariActiveState.js +2 -0
  566. package/dist/prod/util/fixSafariActiveState.js.map +7 -0
  567. package/dist/prod/util/formatMessage.js +2 -0
  568. package/dist/prod/util/formatMessage.js.map +7 -0
  569. package/dist/prod/util/generateHighlightedMarkup.js +2 -0
  570. package/dist/prod/util/generateHighlightedMarkup.js.map +7 -0
  571. package/dist/prod/util/getActiveElement.js +2 -0
  572. package/dist/prod/util/getActiveElement.js.map +7 -0
  573. package/dist/prod/util/getClassCopy.js +2 -0
  574. package/dist/prod/util/getClassCopy.js.map +7 -0
  575. package/dist/prod/util/getDesigntimePropertyAsArray.js +2 -0
  576. package/dist/prod/util/getDesigntimePropertyAsArray.js.map +7 -0
  577. package/dist/prod/util/getEffectiveContentDensity.js +2 -0
  578. package/dist/prod/util/getEffectiveContentDensity.js.map +7 -0
  579. package/dist/prod/util/getEffectiveScrollbarStyle.js +26 -0
  580. package/dist/prod/util/getEffectiveScrollbarStyle.js.map +7 -0
  581. package/dist/prod/util/getFastNavigationGroups.js +2 -0
  582. package/dist/prod/util/getFastNavigationGroups.js.map +7 -0
  583. package/dist/prod/util/getFileExtension.js +2 -0
  584. package/dist/prod/util/getFileExtension.js.map +7 -0
  585. package/dist/prod/util/getNormalizedTarget.js +2 -0
  586. package/dist/prod/util/getNormalizedTarget.js.map +7 -0
  587. package/dist/prod/util/getSingletonElementInstance.js +2 -0
  588. package/dist/prod/util/getSingletonElementInstance.js.map +7 -0
  589. package/dist/prod/util/hash2str.js +2 -0
  590. package/dist/prod/util/hash2str.js.map +7 -0
  591. package/dist/prod/util/isElementClickable.js +2 -0
  592. package/dist/prod/util/isElementClickable.js.map +7 -0
  593. package/dist/prod/util/isElementHidden.js +2 -0
  594. package/dist/prod/util/isElementHidden.js.map +7 -0
  595. package/dist/prod/util/isElementInView.js +2 -0
  596. package/dist/prod/util/isElementInView.js.map +7 -0
  597. package/dist/prod/util/isElementTabbable.js +2 -0
  598. package/dist/prod/util/isElementTabbable.js.map +7 -0
  599. package/dist/prod/util/isValidPropertyName.js +2 -0
  600. package/dist/prod/util/isValidPropertyName.js.map +7 -0
  601. package/dist/prod/util/throttle.js +2 -0
  602. package/dist/prod/util/throttle.js.map +7 -0
  603. package/dist/prod/util/toLowercaseEnumValue.js +2 -0
  604. package/dist/prod/util/toLowercaseEnumValue.js.map +7 -0
  605. package/dist/prod/util/whenDOMReady.js +2 -0
  606. package/dist/prod/util/whenDOMReady.js.map +7 -0
  607. package/dist/prod/util/willShowContent.js +2 -0
  608. package/dist/prod/util/willShowContent.js.map +7 -0
  609. package/dist/prod/validateThemeRoot.js +2 -0
  610. package/dist/prod/validateThemeRoot.js.map +7 -0
  611. package/dist/renderer/JsxRenderer.d.ts +3 -0
  612. package/dist/renderer/JsxRenderer.js +16 -0
  613. package/dist/renderer/JsxRenderer.js.map +1 -0
  614. package/dist/renderer/LitRenderer.d.ts +3 -3
  615. package/dist/renderer/LitRenderer.js +5 -10
  616. package/dist/renderer/LitRenderer.js.map +1 -1
  617. package/dist/renderer/directives/style-map.d.ts +13 -0
  618. package/dist/renderer/directives/style-map.js +59 -59
  619. package/dist/renderer/directives/style-map.js.map +1 -0
  620. package/dist/renderer/executeTemplate.d.ts +3 -4
  621. package/dist/renderer/executeTemplate.js +1 -19
  622. package/dist/renderer/executeTemplate.js.map +1 -1
  623. package/dist/sap/base/Log.js +698 -188
  624. package/dist/sap/base/assert.js +28 -1
  625. package/dist/sap/base/config/MemoryConfigurationProvider.js +20 -0
  626. package/dist/sap/base/security/URLListValidator.js +253 -6
  627. package/dist/sap/base/security/encodeCSS.js +34 -8
  628. package/dist/sap/base/security/encodeXML.js +47 -17
  629. package/dist/sap/base/security/sanitizeHTML.js +35 -13
  630. package/dist/sap/base/strings/toHex.js +27 -2
  631. package/dist/sap/base/util/now.js +24 -3
  632. package/dist/sap/base/util/uid.js +27 -0
  633. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +113 -98
  634. package/dist/ssr-dom-shim.d.ts +1 -0
  635. package/dist/ssr-dom-shim.js +62 -0
  636. package/dist/ssr-dom-shim.js.map +1 -0
  637. package/dist/ssr-dom.d.ts +1 -0
  638. package/dist/ssr-dom.js +3 -0
  639. package/dist/ssr-dom.js.map +1 -0
  640. package/dist/theming/CustomStyle.js.map +1 -1
  641. package/dist/theming/applyTheme.js +9 -8
  642. package/dist/theming/applyTheme.js.map +1 -1
  643. package/dist/theming/getConstructableStyle.d.ts +2 -2
  644. package/dist/theming/getConstructableStyle.js +3 -3
  645. package/dist/theming/getConstructableStyle.js.map +1 -1
  646. package/dist/theming/getEffectiveStyle.d.ts +1 -1
  647. package/dist/theming/getEffectiveStyle.js +5 -12
  648. package/dist/theming/getEffectiveStyle.js.map +1 -1
  649. package/dist/theming/getStylesString.js +2 -4
  650. package/dist/theming/getStylesString.js.map +1 -1
  651. package/dist/theming/getThemeDesignerTheme.js +2 -1
  652. package/dist/theming/getThemeDesignerTheme.js.map +1 -1
  653. package/dist/thirdparty/_merge.js.map +1 -1
  654. package/dist/thirdparty/isPlainObject.js.map +1 -1
  655. package/dist/thirdparty/preact/jsx.d.ts +2616 -0
  656. package/dist/thirdparty/preact/jsxRuntime.module.d.ts +62 -0
  657. package/dist/thirdparty/preact/jsxRuntime.module.js +1 -0
  658. package/dist/thirdparty/preact/preact.module.d.ts +398 -0
  659. package/dist/thirdparty/preact/preact.module.js +1 -0
  660. package/dist/types/AnimationMode.d.ts +0 -8
  661. package/dist/types/AnimationMode.js +0 -8
  662. package/dist/types/AnimationMode.js.map +1 -1
  663. package/dist/types/CalendarType.d.ts +0 -9
  664. package/dist/types/CalendarType.js +0 -9
  665. package/dist/types/CalendarType.js.map +1 -1
  666. package/dist/types/InvisibleMessageMode.d.ts +5 -10
  667. package/dist/types/InvisibleMessageMode.js +4 -11
  668. package/dist/types/InvisibleMessageMode.js.map +1 -1
  669. package/dist/types/ItemNavigationBehavior.d.ts +0 -6
  670. package/dist/types/ItemNavigationBehavior.js +0 -6
  671. package/dist/types/ItemNavigationBehavior.js.map +1 -1
  672. package/dist/types/MovePlacement.d.ts +20 -0
  673. package/dist/types/MovePlacement.js +22 -0
  674. package/dist/types/MovePlacement.js.map +1 -0
  675. package/dist/types/NavigationMode.d.ts +0 -8
  676. package/dist/types/NavigationMode.js +0 -8
  677. package/dist/types/NavigationMode.js.map +1 -1
  678. package/dist/types/Orientation.d.ts +16 -0
  679. package/dist/types/Orientation.js +18 -0
  680. package/dist/types/Orientation.js.map +1 -0
  681. package/dist/types/SortOrder.d.ts +24 -0
  682. package/dist/types/SortOrder.js +26 -0
  683. package/dist/types/SortOrder.js.map +1 -0
  684. package/dist/types/ValueState.d.ts +3 -17
  685. package/dist/types/ValueState.js +3 -17
  686. package/dist/types/ValueState.js.map +1 -1
  687. package/dist/types.d.ts +37 -14
  688. package/dist/types.js.map +1 -1
  689. package/dist/updateShadowRoot.d.ts +1 -2
  690. package/dist/updateShadowRoot.js +4 -25
  691. package/dist/updateShadowRoot.js.map +1 -1
  692. package/dist/util/{AriaLabelHelper.d.ts → AccessibilityTextsHelper.d.ts} +4 -2
  693. package/dist/util/{AriaLabelHelper.js → AccessibilityTextsHelper.js} +36 -8
  694. package/dist/util/AccessibilityTextsHelper.js.map +1 -0
  695. package/dist/util/Caret.js.map +1 -1
  696. package/dist/util/ColorConversion.d.ts +2 -1
  697. package/dist/util/ColorConversion.js +233 -216
  698. package/dist/util/ColorConversion.js.map +1 -1
  699. package/dist/util/FetchHelper.js.map +1 -1
  700. package/dist/util/FocusableElements.js +40 -12
  701. package/dist/util/FocusableElements.js.map +1 -1
  702. package/dist/util/HTMLSanitizer.d.ts +2 -0
  703. package/dist/util/HTMLSanitizer.js +2 -2
  704. package/dist/util/HTMLSanitizer.js.map +1 -1
  705. package/dist/util/InvisibleMessage.js +2 -2
  706. package/dist/util/InvisibleMessage.js.map +1 -1
  707. package/dist/util/PopupUtils.d.ts +1 -3
  708. package/dist/util/PopupUtils.js +1 -15
  709. package/dist/util/PopupUtils.js.map +1 -1
  710. package/dist/util/SelectionAssistant.d.ts +12 -0
  711. package/dist/util/SelectionAssistant.js +79 -0
  712. package/dist/util/SelectionAssistant.js.map +1 -0
  713. package/dist/util/SlotsHelper.js.map +1 -1
  714. package/dist/util/StringHelper.d.ts +3 -1
  715. package/dist/util/StringHelper.js +15 -1
  716. package/dist/util/StringHelper.js.map +1 -1
  717. package/dist/util/TabbableElements.js +3 -10
  718. package/dist/util/TabbableElements.js.map +1 -1
  719. package/dist/util/arraysAreEqual.js.map +1 -1
  720. package/dist/util/clamp.js +2 -1
  721. package/dist/util/clamp.js.map +1 -1
  722. package/dist/util/createLinkInHead.d.ts +1 -1
  723. package/dist/util/createLinkInHead.js +1 -1
  724. package/dist/util/createLinkInHead.js.map +1 -1
  725. package/dist/util/debounce.js.map +1 -1
  726. package/dist/util/detectNavigatorLanguage.d.ts +2 -2
  727. package/dist/util/detectNavigatorLanguage.js +6 -1
  728. package/dist/util/detectNavigatorLanguage.js.map +1 -1
  729. package/dist/util/dragAndDrop/DragRegistry.d.ts +33 -0
  730. package/dist/util/dragAndDrop/DragRegistry.js +66 -0
  731. package/dist/util/dragAndDrop/DragRegistry.js.map +1 -0
  732. package/dist/util/dragAndDrop/findClosestPosition.d.ts +12 -0
  733. package/dist/util/dragAndDrop/findClosestPosition.js +106 -0
  734. package/dist/util/dragAndDrop/findClosestPosition.js.map +1 -0
  735. package/dist/util/dragAndDrop/handleDragOver.d.ts +16 -0
  736. package/dist/util/dragAndDrop/handleDragOver.js +42 -0
  737. package/dist/util/dragAndDrop/handleDragOver.js.map +1 -0
  738. package/dist/util/dragAndDrop/handleDrop.d.ts +5 -0
  739. package/dist/util/dragAndDrop/handleDrop.js +22 -0
  740. package/dist/util/dragAndDrop/handleDrop.js.map +1 -0
  741. package/dist/util/dragAndDrop/longDragOverHandler.d.ts +2 -0
  742. package/dist/util/dragAndDrop/longDragOverHandler.js +25 -0
  743. package/dist/util/dragAndDrop/longDragOverHandler.js.map +1 -0
  744. package/dist/util/fixSafariActiveState.d.ts +2 -0
  745. package/dist/util/fixSafariActiveState.js +11 -0
  746. package/dist/util/fixSafariActiveState.js.map +1 -0
  747. package/dist/util/formatMessage.js.map +1 -1
  748. package/dist/util/generateHighlightedMarkup.js.map +1 -1
  749. package/dist/util/getActiveElement.js.map +1 -1
  750. package/dist/util/getClassCopy.d.ts +145 -102
  751. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -2
  752. package/dist/util/getDesigntimePropertyAsArray.js +2 -1
  753. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -1
  754. package/dist/util/getEffectiveScrollbarStyle.d.ts +1 -1
  755. package/dist/util/getEffectiveScrollbarStyle.js +31 -1
  756. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -1
  757. package/dist/util/getFastNavigationGroups.js +6 -1
  758. package/dist/util/getFastNavigationGroups.js.map +1 -1
  759. package/dist/util/getFileExtension.js.map +1 -1
  760. package/dist/util/getNormalizedTarget.js.map +1 -1
  761. package/dist/util/getSingletonElementInstance.d.ts +10 -1
  762. package/dist/util/getSingletonElementInstance.js +11 -2
  763. package/dist/util/getSingletonElementInstance.js.map +1 -1
  764. package/dist/util/hash2str.d.ts +1 -0
  765. package/dist/util/hash2str.js +14 -0
  766. package/dist/util/hash2str.js.map +1 -0
  767. package/dist/util/isElementClickable.js.map +1 -1
  768. package/dist/util/isElementHidden.js.map +1 -1
  769. package/dist/util/isElementTabbable.js +2 -2
  770. package/dist/util/isElementTabbable.js.map +1 -1
  771. package/dist/util/isValidPropertyName.js.map +1 -1
  772. package/dist/util/throttle.d.ts +2 -0
  773. package/dist/util/throttle.js +20 -0
  774. package/dist/util/throttle.js.map +1 -0
  775. package/dist/util/toLowercaseEnumValue.d.ts +3 -0
  776. package/dist/util/toLowercaseEnumValue.js +4 -0
  777. package/dist/util/toLowercaseEnumValue.js.map +1 -0
  778. package/dist/util/whenDOMReady.js.map +1 -1
  779. package/dist/validateThemeRoot.js +3 -2
  780. package/dist/validateThemeRoot.js.map +1 -1
  781. package/dist/vscode.html-custom-data.json +22 -0
  782. package/package-scripts.cjs +26 -23
  783. package/package.json +37 -11
  784. package/src/css/FontFace.css +47 -17
  785. package/src/css/SystemCSSVars.css +0 -8
  786. package/src/thirdparty/preact/jsxRuntime.module.js +1 -0
  787. package/src/thirdparty/preact/preact.module.js +1 -0
  788. package/src/thirdparty/preact/version.txt +1 -0
  789. package/tsconfig.json +18 -13
  790. package/.eslintignore +0 -16
  791. package/.eslintrc.cjs +0 -3
  792. package/bundle.esm.js +0 -64
  793. package/config/wdio.conf.cjs +0 -400
  794. package/dist/CSP.d.ts +0 -30
  795. package/dist/CSP.js +0 -51
  796. package/dist/CSP.js.map +0 -1
  797. package/dist/MarkedEvents.d.ts +0 -9
  798. package/dist/MarkedEvents.js +0 -15
  799. package/dist/MarkedEvents.js.map +0 -1
  800. package/dist/StaticArea.d.ts +0 -3
  801. package/dist/StaticArea.js +0 -7
  802. package/dist/StaticArea.js.map +0 -1
  803. package/dist/StaticAreaItem.d.ts +0 -36
  804. package/dist/StaticAreaItem.js +0 -99
  805. package/dist/StaticAreaItem.js.map +0 -1
  806. package/dist/api.json +0 -1
  807. package/dist/assets/Boot.34b7cea0.css +0 -1
  808. package/dist/assets/Boot.650535e2.js +0 -9
  809. package/dist/assets/bundle.esm.ceb1b6b8.js +0 -50
  810. package/dist/assets-meta/IconCollectionsAlias.js.map +0 -1
  811. package/dist/config/RTL.d.ts +0 -7
  812. package/dist/config/RTL.js +0 -37
  813. package/dist/config/RTL.js.map +0 -1
  814. package/dist/config/ThemeRoots.d.ts +0 -4
  815. package/dist/config/ThemeRoots.js +0 -28
  816. package/dist/config/ThemeRoots.js.map +0 -1
  817. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +0 -11
  818. package/dist/theming/getEffectiveLinksHrefs.d.ts +0 -3
  819. package/dist/theming/getEffectiveLinksHrefs.js +0 -17
  820. package/dist/theming/getEffectiveLinksHrefs.js.map +0 -1
  821. package/dist/theming/preloadLinks.d.ts +0 -3
  822. package/dist/theming/preloadLinks.js +0 -19
  823. package/dist/theming/preloadLinks.js.map +0 -1
  824. package/dist/types/CSSColor.d.ts +0 -15
  825. package/dist/types/CSSColor.js +0 -18
  826. package/dist/types/CSSColor.js.map +0 -1
  827. package/dist/types/DOMReference.d.ts +0 -17
  828. package/dist/types/DOMReference.js +0 -25
  829. package/dist/types/DOMReference.js.map +0 -1
  830. package/dist/types/DataType.d.ts +0 -25
  831. package/dist/types/DataType.js +0 -44
  832. package/dist/types/DataType.js.map +0 -1
  833. package/dist/types/Float.d.ts +0 -17
  834. package/dist/types/Float.js +0 -21
  835. package/dist/types/Float.js.map +0 -1
  836. package/dist/types/Integer.d.ts +0 -17
  837. package/dist/types/Integer.js +0 -21
  838. package/dist/types/Integer.js.map +0 -1
  839. package/dist/util/AriaLabelHelper.js.map +0 -1
  840. package/dist/util/createStyleInHead.d.ts +0 -8
  841. package/dist/util/createStyleInHead.js +0 -18
  842. package/dist/util/createStyleInHead.js.map +0 -1
  843. package/index.js +0 -230
  844. package/lib/generate-asset-parameters/index.js +0 -27
  845. package/lib/generate-styles/index.js +0 -31
  846. package/lib/generate-version-info/index.js +0 -32
  847. package/src/renderer/directives/style-map.js +0 -72
  848. package/used-modules.txt +0 -10
@@ -1 +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","sourcesContent":["import isElementTabbable from \"./isElementTabbable.js\";\n\n/**\n * Returns the tabbable elements within the provided HTMLElement.\n *\n * @public\n * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)\n * @returns { Array<HTMLElement> } the tabbable elements\n */\nconst getTabbableElements = (el: HTMLElement): Array<HTMLElement> => {\n\treturn getTabbables([...el.children]);\n};\n\n/**\n * Returns the last tabbable element within the provided HTMLElement.\n *\n * @public\n * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)\n * @returns { HTMLElement | null } the last tabbable element or \"null\" if not found\n */\nconst getLastTabbableElement = (el: HTMLElement): HTMLElement | null => {\n\tconst tabbables = getTabbables([...el.children]);\n\treturn tabbables.length ? tabbables[tabbables.length - 1] : null;\n};\n\nconst getTabbables = (nodes: Array<Node>, tabbables?: Array<HTMLElement>): Array<HTMLElement> => {\n\tconst tabbableElements = tabbables || [];\n\n\tif (!nodes) {\n\t\treturn tabbableElements;\n\t}\n\n\tnodes.forEach(currentNode => {\n\t\tif (currentNode.nodeType === Node.TEXT_NODE || currentNode.nodeType === Node.COMMENT_NODE) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet currentElement = currentNode as HTMLElement;\n\t\tif (currentElement.hasAttribute(\"data-sap-no-tab-ref\")) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (currentElement.shadowRoot) {\n\t\t\t// get the root node of the ShadowDom (1st none style tag)\n\t\t\tconst children = currentElement.shadowRoot.children;\n\t\t\tcurrentElement = Array.from(children).find(node => node.tagName !== \"STYLE\") as HTMLElement;\n\t\t}\n\n\t\tif (!currentElement) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isElementTabbable(currentElement)) {\n\t\t\ttabbableElements.push(currentElement);\n\t\t}\n\n\t\tif (currentElement.tagName === \"SLOT\") {\n\t\t\tgetTabbables((currentElement as HTMLSlotElement).assignedNodes() as Array<HTMLElement>, tabbableElements);\n\t\t} else {\n\t\t\tgetTabbables([...currentElement.children], tabbableElements);\n\t\t}\n\t});\n\n\treturn tabbableElements;\n};\n\nexport {\n\tgetTabbableElements,\n\tgetLastTabbableElement,\n};\n"]}
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,CAAC;QACZ,OAAO,gBAAgB,CAAC;IACzB,CAAC;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,CAAC;YAC3F,OAAO;QACR,CAAC;QAED,MAAM,cAAc,GAAG,WAA0B,CAAC;QAClD,IAAI,cAAc,CAAC,YAAY,CAAC,qBAAqB,CAAC,EAAE,CAAC;YACxD,OAAO;QACR,CAAC;QAED,IAAI,iBAAiB,CAAC,cAAc,CAAC,EAAE,CAAC;YACvC,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACvC,CAAC;QAED,IAAI,cAAc,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;YACvC,YAAY,CAAE,cAAkC,CAAC,aAAa,EAAwB,EAAE,gBAAgB,CAAC,CAAC;QAC3G,CAAC;aAAM,CAAC;YACP,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC;YAC1G,YAAY,CAAC,CAAC,GAAG,QAAQ,CAAC,EAAE,gBAAgB,CAAC,CAAC;QAC/C,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,OAAO,gBAAgB,CAAC;AACzB,CAAC,CAAC;AAEF,OAAO,EACN,mBAAmB,EACnB,sBAAsB,GACtB,CAAC","sourcesContent":["import isElementTabbable from \"./isElementTabbable.js\";\n\n/**\n * Returns the tabbable elements within the provided HTMLElement.\n *\n * @public\n * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)\n * @returns { Array<HTMLElement> } the tabbable elements\n */\nconst getTabbableElements = (el: HTMLElement): Array<HTMLElement> => {\n\treturn getTabbables([...el.children]);\n};\n\n/**\n * Returns the last tabbable element within the provided HTMLElement.\n *\n * @public\n * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)\n * @returns { HTMLElement | null } the last tabbable element or \"null\" if not found\n */\nconst getLastTabbableElement = (el: HTMLElement): HTMLElement | null => {\n\tconst tabbables = getTabbables([...el.children]);\n\treturn tabbables.length ? tabbables[tabbables.length - 1] : null;\n};\n\nconst getTabbables = (nodes: Array<Node>, tabbables?: Array<HTMLElement>): Array<HTMLElement> => {\n\tconst tabbableElements = tabbables || [];\n\n\tif (!nodes) {\n\t\treturn tabbableElements;\n\t}\n\n\tnodes.forEach(currentNode => {\n\t\tif (currentNode.nodeType === Node.TEXT_NODE || currentNode.nodeType === Node.COMMENT_NODE) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst currentElement = currentNode as HTMLElement;\n\t\tif (currentElement.hasAttribute(\"data-sap-no-tab-ref\")) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isElementTabbable(currentElement)) {\n\t\t\ttabbableElements.push(currentElement);\n\t\t}\n\n\t\tif (currentElement.tagName === \"SLOT\") {\n\t\t\tgetTabbables((currentElement as HTMLSlotElement).assignedNodes() as Array<HTMLElement>, tabbableElements);\n\t\t} else {\n\t\t\tconst children = currentElement.shadowRoot ? currentElement.shadowRoot.children : currentElement.children;\n\t\t\tgetTabbables([...children], tabbableElements);\n\t\t}\n\t});\n\n\treturn tabbableElements;\n};\n\nexport {\n\tgetTabbableElements,\n\tgetLastTabbableElement,\n};\n"]}
@@ -1 +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","sourcesContent":["const arraysAreEqual = (arr1: Array<any>, arr2: Array<any>) => {\n\tif (arr1.length !== arr2.length) {\n\t\treturn false;\n\t}\n\n\tfor (let i = 0; i < arr1.length; i++) {\n\t\tif (arr1[i] !== arr2[i]) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\treturn true;\n};\n\nexport default arraysAreEqual;\n"]}
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,CAAC;QACjC,OAAO,KAAK,CAAC;IACd,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC","sourcesContent":["const arraysAreEqual = (arr1: Array<any>, arr2: Array<any>) => {\n\tif (arr1.length !== arr2.length) {\n\t\treturn false;\n\t}\n\n\tfor (let i = 0; i < arr1.length; i++) {\n\t\tif (arr1[i] !== arr2[i]) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\treturn true;\n};\n\nexport default arraysAreEqual;\n"]}
@@ -6,7 +6,8 @@
6
6
  * @returns {number}
7
7
  */
8
8
  const clamp = (val, min, max) => {
9
- return Math.min(Math.max(val, min), max);
9
+ // handles case when max < min
10
+ return Math.min(Math.max(val, min), Math.max(min, max));
10
11
  };
11
12
  export default clamp;
12
13
  //# sourceMappingURL=clamp.js.map
@@ -1 +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","sourcesContent":["/**\n * Returns a value clamped between an upper bound 'max' and lower bound 'min'.\n * @param {number} val value\n * @param {number} min lower bound\n * @param {number} max upper bound\n * @returns {number}\n */\nconst clamp = (val: number, min: number, max: number) => {\n\treturn Math.min(Math.max(val, min), max);\n};\n\nexport default clamp;\n"]}
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,8BAA8B;IAC9B,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC","sourcesContent":["/**\n * Returns a value clamped between an upper bound 'max' and lower bound 'min'.\n * @param {number} val value\n * @param {number} min lower bound\n * @param {number} max upper bound\n * @returns {number}\n */\nconst clamp = (val: number, min: number, max: number) => {\n\t// handles case when max < min\n\treturn Math.min(Math.max(val, min), Math.max(min, max));\n};\n\nexport default clamp;\n"]}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Creates a <link> tag in the <head> tag
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
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Creates a <link> tag in the <head> tag
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
5
  */
@@ -1 +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","sourcesContent":["/**\n * Creates a <link> tag in the <head> tag\n * @param href - the CSS\n * @param attributes - optional attributes to add to the tag\n */\nconst createLinkInHead = (href: string, attributes?: Record<string, string>) => {\n\tconst link = document.createElement(\"link\");\n\tlink.type = \"text/css\";\n\tlink.rel = \"stylesheet\";\n\n\tif (attributes) {\n\t\tObject.entries(attributes).forEach(pair => link.setAttribute(...pair));\n\t}\n\n\tlink.href = href;\n\n\tdocument.head.appendChild(link);\n\n\treturn new Promise<Event>(resolve => {\n\t\tlink.addEventListener(\"load\", resolve);\n\t\tlink.addEventListener(\"error\", resolve); // intended\n\t});\n};\n\nexport default createLinkInHead;\n"]}
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,CAAC;QAChB,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IACxE,CAAC;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","sourcesContent":["/**\n * Creates a `<link>` tag in the `<head>` tag\n * @param href - the CSS\n * @param attributes - optional attributes to add to the tag\n */\nconst createLinkInHead = (href: string, attributes?: Record<string, string>) => {\n\tconst link = document.createElement(\"link\");\n\tlink.type = \"text/css\";\n\tlink.rel = \"stylesheet\";\n\n\tif (attributes) {\n\t\tObject.entries(attributes).forEach(pair => link.setAttribute(...pair));\n\t}\n\n\tlink.href = href;\n\n\tdocument.head.appendChild(link);\n\n\treturn new Promise<Event>(resolve => {\n\t\tlink.addEventListener(\"load\", resolve);\n\t\tlink.addEventListener(\"error\", resolve); // intended\n\t});\n};\n\nexport default createLinkInHead;\n"]}
@@ -1 +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","sourcesContent":["import { Timeout } from \"../types.js\";\n\n/**\n * Delays function execution by given threshold.\n * @param fn {Function}\n * @param delay {Integer}\n */\nlet debounceInterval: Timeout | null = null;\n\nconst debounce = (fn: () => void, delay: number) => {\n\tdebounceInterval && clearTimeout(debounceInterval);\n\tdebounceInterval = setTimeout(() => {\n\t\tdebounceInterval = null;\n\t\tfn();\n\t}, delay);\n};\n\nexport default debounce;\n"]}
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","sourcesContent":["import type { Timeout } from \"../types.js\";\n\n/**\n * Delays function execution by given threshold.\n * @param fn {Function}\n * @param delay {Integer}\n */\nlet debounceInterval: Timeout | null = null;\n\nconst debounce = (fn: () => void, delay: number) => {\n\tdebounceInterval && clearTimeout(debounceInterval);\n\tdebounceInterval = setTimeout(() => {\n\t\tdebounceInterval = null;\n\t\tfn();\n\t}, delay);\n};\n\nexport default debounce;\n"]}
@@ -1,2 +1,2 @@
1
- declare const _default: () => string;
2
- export default _default;
1
+ declare const detectNavigatorLanguage: () => string;
2
+ export default detectNavigatorLanguage;
@@ -1,5 +1,9 @@
1
1
  import { DEFAULT_LANGUAGE } from "../generated/AssetParameters.js";
2
- export default () => {
2
+ const isSSR = typeof document === "undefined";
3
+ const detectNavigatorLanguage = () => {
4
+ if (isSSR) {
5
+ return DEFAULT_LANGUAGE;
6
+ }
3
7
  const browserLanguages = navigator.languages;
4
8
  const navigatorLanguage = () => {
5
9
  return navigator.language;
@@ -7,4 +11,5 @@ export default () => {
7
11
  const rawLocale = (browserLanguages && browserLanguages[0]) || navigatorLanguage();
8
12
  return rawLocale || DEFAULT_LANGUAGE;
9
13
  };
14
+ export default detectNavigatorLanguage;
10
15
  //# sourceMappingURL=detectNavigatorLanguage.js.map
@@ -1 +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","sourcesContent":["import { DEFAULT_LANGUAGE } from \"../generated/AssetParameters.js\";\n\nexport default () => {\n\tconst browserLanguages = navigator.languages;\n\n\tconst navigatorLanguage = () => {\n\t\treturn navigator.language;\n\t};\n\n\tconst rawLocale = (browserLanguages && browserLanguages[0]) || navigatorLanguage();\n\n\treturn rawLocale || DEFAULT_LANGUAGE;\n};\n"]}
1
+ {"version":3,"file":"detectNavigatorLanguage.js","sourceRoot":"","sources":["../../src/util/detectNavigatorLanguage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,MAAM,KAAK,GAAG,OAAO,QAAQ,KAAK,WAAW,CAAC;AAE9C,MAAM,uBAAuB,GAAG,GAAG,EAAE;IACpC,IAAI,KAAK,EAAE,CAAC;QACX,OAAO,gBAAgB,CAAC;IACzB,CAAC;IACD,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;AAEF,eAAe,uBAAuB,CAAC","sourcesContent":["import { DEFAULT_LANGUAGE } from \"../generated/AssetParameters.js\";\n\nconst isSSR = typeof document === \"undefined\";\n\nconst detectNavigatorLanguage = () => {\n\tif (isSSR) {\n\t\treturn DEFAULT_LANGUAGE;\n\t}\n\tconst browserLanguages = navigator.languages;\n\n\tconst navigatorLanguage = () => {\n\t\treturn navigator.language;\n\t};\n\n\tconst rawLocale = (browserLanguages && browserLanguages[0]) || navigatorLanguage();\n\n\treturn rawLocale || DEFAULT_LANGUAGE;\n};\n\nexport default detectNavigatorLanguage;\n"]}
@@ -0,0 +1,33 @@
1
+ import type UI5Element from "../../UI5Element.js";
2
+ import type MovePlacement from "../../types/MovePlacement.js";
3
+ declare const setDraggedElement: (element: HTMLElement | null) => void;
4
+ type SetDraggedElementFunction = typeof setDraggedElement;
5
+ type DragAndDropSettings = {
6
+ /**
7
+ * Allow cross-browser and file drag and drop.
8
+ */
9
+ crossDnD?: boolean;
10
+ /**
11
+ * Pass the original event in the event parameters.
12
+ */
13
+ originalEvent?: boolean;
14
+ };
15
+ type MoveEventDetail = {
16
+ originalEvent: Event;
17
+ source: {
18
+ element: HTMLElement;
19
+ };
20
+ destination: {
21
+ element: HTMLElement;
22
+ placement: `${MovePlacement}`;
23
+ };
24
+ };
25
+ declare const DragRegistry: {
26
+ subscribe: (subscriber: UI5Element) => void;
27
+ unsubscribe: (subscriber: UI5Element) => void;
28
+ addSelfManagedArea: (area: HTMLElement | ShadowRoot) => (element: HTMLElement | null) => void;
29
+ removeSelfManagedArea: (area: HTMLElement | ShadowRoot) => void;
30
+ getDraggedElement: () => HTMLElement | null;
31
+ };
32
+ export default DragRegistry;
33
+ export type { SetDraggedElementFunction, DragAndDropSettings, MoveEventDetail, };
@@ -0,0 +1,66 @@
1
+ let draggedElement = null;
2
+ let globalHandlersAttached = false;
3
+ const subscribers = new Set();
4
+ const selfManagedDragAreas = new Set();
5
+ const ondragstart = (e) => {
6
+ if (!e.dataTransfer || !(e.target instanceof HTMLElement)) {
7
+ return;
8
+ }
9
+ if (!selfManagedDragAreas.has(e.target)) {
10
+ draggedElement = e.target;
11
+ }
12
+ };
13
+ const ondragend = () => {
14
+ draggedElement = null;
15
+ };
16
+ const ondrop = () => {
17
+ draggedElement = null;
18
+ };
19
+ const setDraggedElement = (element) => {
20
+ draggedElement = element;
21
+ };
22
+ const getDraggedElement = () => {
23
+ return draggedElement;
24
+ };
25
+ const attachGlobalHandlers = () => {
26
+ if (globalHandlersAttached) {
27
+ return;
28
+ }
29
+ document.body.addEventListener("dragstart", ondragstart);
30
+ document.body.addEventListener("dragend", ondragend);
31
+ document.body.addEventListener("drop", ondrop);
32
+ };
33
+ const detachGlobalHandlers = () => {
34
+ document.body.removeEventListener("dragstart", ondragstart);
35
+ document.body.removeEventListener("dragend", ondragend);
36
+ document.body.removeEventListener("drop", ondrop);
37
+ globalHandlersAttached = false;
38
+ };
39
+ const subscribe = (subscriber) => {
40
+ subscribers.add(subscriber);
41
+ if (!globalHandlersAttached) {
42
+ attachGlobalHandlers();
43
+ }
44
+ };
45
+ const unsubscribe = (subscriber) => {
46
+ subscribers.delete(subscriber);
47
+ if (subscribers.size === 0 && globalHandlersAttached) {
48
+ detachGlobalHandlers();
49
+ }
50
+ };
51
+ const addSelfManagedArea = (area) => {
52
+ selfManagedDragAreas.add(area);
53
+ return setDraggedElement;
54
+ };
55
+ const removeSelfManagedArea = (area) => {
56
+ selfManagedDragAreas.delete(area);
57
+ };
58
+ const DragRegistry = {
59
+ subscribe,
60
+ unsubscribe,
61
+ addSelfManagedArea,
62
+ removeSelfManagedArea,
63
+ getDraggedElement,
64
+ };
65
+ export default DragRegistry;
66
+ //# sourceMappingURL=DragRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DragRegistry.js","sourceRoot":"","sources":["../../../src/util/dragAndDrop/DragRegistry.ts"],"names":[],"mappings":"AAGA,IAAI,cAAc,GAAuB,IAAI,CAAC;AAC9C,IAAI,sBAAsB,GAAG,KAAK,CAAC;AACnC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAc,CAAC;AAC1C,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAA4B,CAAC;AAEjE,MAAM,WAAW,GAAG,CAAC,CAAY,EAAE,EAAE;IACpC,IAAI,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,YAAY,WAAW,CAAC,EAAE,CAAC;QAC3D,OAAO;IACR,CAAC;IAED,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;QACzC,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3B,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,GAAG,EAAE;IACtB,cAAc,GAAG,IAAI,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,GAAG,EAAE;IACnB,cAAc,GAAG,IAAI,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,OAA2B,EAAE,EAAE;IACzD,cAAc,GAAG,OAAO,CAAC;AAC1B,CAAC,CAAC;AAGF,MAAM,iBAAiB,GAAG,GAAG,EAAE;IAC9B,OAAO,cAAc,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACjC,IAAI,sBAAsB,EAAE,CAAC;QAC5B,OAAO;IACR,CAAC;IAED,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACzD,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACrD,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAChD,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACjC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAC5D,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACxD,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClD,sBAAsB,GAAG,KAAK,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,UAAsB,EAAE,EAAE;IAC5C,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAE5B,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC7B,oBAAoB,EAAE,CAAC;IACxB,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,UAAsB,EAAE,EAAE;IAC9C,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAE/B,IAAI,WAAW,CAAC,IAAI,KAAK,CAAC,IAAI,sBAAsB,EAAE,CAAC;QACtD,oBAAoB,EAAE,CAAC;IACxB,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,IAA8B,EAAE,EAAE;IAC7D,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAE/B,OAAO,iBAAiB,CAAC;AAC1B,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,IAA8B,EAAE,EAAE;IAChE,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC,CAAC;AAwBF,MAAM,YAAY,GAAG;IACpB,SAAS;IACT,WAAW;IACX,kBAAkB;IAClB,qBAAqB;IACrB,iBAAiB;CACjB,CAAC;AAEF,eAAe,YAAY,CAAC","sourcesContent":["import type UI5Element from \"../../UI5Element.js\";\nimport type MovePlacement from \"../../types/MovePlacement.js\";\n\nlet draggedElement: HTMLElement | null = null;\nlet globalHandlersAttached = false;\nconst subscribers = new Set<UI5Element>();\nconst selfManagedDragAreas = new Set<HTMLElement | ShadowRoot>();\n\nconst ondragstart = (e: DragEvent) => {\n\tif (!e.dataTransfer || !(e.target instanceof HTMLElement)) {\n\t\treturn;\n\t}\n\n\tif (!selfManagedDragAreas.has(e.target)) {\n\t\tdraggedElement = e.target;\n\t}\n};\n\nconst ondragend = () => {\n\tdraggedElement = null;\n};\n\nconst ondrop = () => {\n\tdraggedElement = null;\n};\n\nconst setDraggedElement = (element: HTMLElement | null) => {\n\tdraggedElement = element;\n};\ntype SetDraggedElementFunction = typeof setDraggedElement;\n\nconst getDraggedElement = () => {\n\treturn draggedElement;\n};\n\nconst attachGlobalHandlers = () => {\n\tif (globalHandlersAttached) {\n\t\treturn;\n\t}\n\n\tdocument.body.addEventListener(\"dragstart\", ondragstart);\n\tdocument.body.addEventListener(\"dragend\", ondragend);\n\tdocument.body.addEventListener(\"drop\", ondrop);\n};\n\nconst detachGlobalHandlers = () => {\n\tdocument.body.removeEventListener(\"dragstart\", ondragstart);\n\tdocument.body.removeEventListener(\"dragend\", ondragend);\n\tdocument.body.removeEventListener(\"drop\", ondrop);\n\tglobalHandlersAttached = false;\n};\n\nconst subscribe = (subscriber: UI5Element) => {\n\tsubscribers.add(subscriber);\n\n\tif (!globalHandlersAttached) {\n\t\tattachGlobalHandlers();\n\t}\n};\n\nconst unsubscribe = (subscriber: UI5Element) => {\n\tsubscribers.delete(subscriber);\n\n\tif (subscribers.size === 0 && globalHandlersAttached) {\n\t\tdetachGlobalHandlers();\n\t}\n};\n\nconst addSelfManagedArea = (area: HTMLElement | ShadowRoot) => {\n\tselfManagedDragAreas.add(area);\n\n\treturn setDraggedElement;\n};\n\nconst removeSelfManagedArea = (area: HTMLElement | ShadowRoot) => {\n\tselfManagedDragAreas.delete(area);\n};\n\ntype DragAndDropSettings = {\n\t/**\n\t * Allow cross-browser and file drag and drop.\n\t */\n\tcrossDnD?: boolean;\n\t/**\n\t * Pass the original event in the event parameters.\n\t */\n\toriginalEvent?: boolean;\n};\n\ntype MoveEventDetail = {\n\toriginalEvent: Event,\n\tsource: {\n\t\telement: HTMLElement,\n\t},\n\tdestination: {\n\t\telement: HTMLElement,\n\t\tplacement: `${MovePlacement}`,\n\t}\n};\n\nconst DragRegistry = {\n\tsubscribe,\n\tunsubscribe,\n\taddSelfManagedArea,\n\tremoveSelfManagedArea,\n\tgetDraggedElement,\n};\n\nexport default DragRegistry;\nexport type {\n\tSetDraggedElementFunction,\n\tDragAndDropSettings,\n\tMoveEventDetail,\n};\n"]}
@@ -0,0 +1,12 @@
1
+ import MovePlacement from "../../types/MovePlacement.js";
2
+ import Orientation from "../../types/Orientation.js";
3
+ declare const findClosestPosition: (elements: Array<HTMLElement>, point: number, layoutOrientation: Orientation) => {
4
+ element: HTMLElement;
5
+ placements: MovePlacement[];
6
+ } | null;
7
+ declare const findClosestPositionsByKey: (elements: Array<HTMLElement>, element: HTMLElement, e: KeyboardEvent) => {
8
+ element: HTMLElement;
9
+ placement: MovePlacement;
10
+ }[];
11
+ declare const isMovingKey: (key: string) => boolean;
12
+ export { findClosestPosition, findClosestPositionsByKey, isMovingKey, };
@@ -0,0 +1,106 @@
1
+ import MovePlacement from "../../types/MovePlacement.js";
2
+ import Orientation from "../../types/Orientation.js";
3
+ const closestPlacement = (point, beforePoint, centerPoint, afterPoint) => {
4
+ const distToBeforePoint = Math.abs(point - beforePoint);
5
+ const distToCenterPoint = Math.abs(point - centerPoint);
6
+ const distToAfterPoint = Math.abs(point - afterPoint);
7
+ const closestPoint = Math.min(distToBeforePoint, distToCenterPoint, distToAfterPoint);
8
+ let placements = [];
9
+ switch (closestPoint) {
10
+ case distToBeforePoint:
11
+ placements = [MovePlacement.Before];
12
+ break;
13
+ case distToCenterPoint:
14
+ placements = [MovePlacement.On, distToBeforePoint < distToAfterPoint ? MovePlacement.Before : MovePlacement.After];
15
+ break;
16
+ case distToAfterPoint:
17
+ placements = [MovePlacement.After];
18
+ break;
19
+ }
20
+ return placements;
21
+ };
22
+ const findClosestPosition = (elements, point, layoutOrientation) => {
23
+ let shortestDist = Number.POSITIVE_INFINITY;
24
+ let closestElement = null;
25
+ // determine which element is most closest to the point
26
+ for (let i = 0; i < elements.length; i++) {
27
+ const el = elements[i];
28
+ const { left, width, top, height, } = el.getBoundingClientRect();
29
+ let elemCenter;
30
+ if (layoutOrientation === Orientation.Vertical) {
31
+ elemCenter = top + height / 2;
32
+ }
33
+ else { // Horizontal
34
+ elemCenter = left + width / 2;
35
+ }
36
+ const distanceToCenter = Math.abs(point - elemCenter);
37
+ if (distanceToCenter < shortestDist) {
38
+ shortestDist = distanceToCenter;
39
+ closestElement = el;
40
+ }
41
+ }
42
+ if (!closestElement) {
43
+ return null;
44
+ }
45
+ const { width, height, left, right, top, bottom, } = closestElement.getBoundingClientRect();
46
+ let placements;
47
+ if (layoutOrientation === Orientation.Vertical) {
48
+ placements = closestPlacement(point, top, top + height / 2, bottom);
49
+ }
50
+ else { // Horizontal
51
+ placements = closestPlacement(point, left, left + width / 2, right);
52
+ }
53
+ return {
54
+ element: closestElement,
55
+ placements,
56
+ };
57
+ };
58
+ const _moveBackward = (elements, index) => {
59
+ index--;
60
+ if (index < 0) {
61
+ return [];
62
+ }
63
+ return [{
64
+ element: elements[index],
65
+ placement: MovePlacement.Before,
66
+ }];
67
+ };
68
+ const _moveForward = (elements, index) => {
69
+ index++;
70
+ if (index >= elements.length) {
71
+ return [];
72
+ }
73
+ return [{
74
+ element: elements[index],
75
+ placement: MovePlacement.After,
76
+ }];
77
+ };
78
+ const keyToPlacement = {
79
+ ArrowLeft: _moveBackward,
80
+ ArrowUp: _moveBackward,
81
+ ArrowRight: _moveForward,
82
+ ArrowDown: _moveForward,
83
+ Home: (elements, index) => {
84
+ return elements.slice(0, index).map(el => ({
85
+ element: el,
86
+ placement: MovePlacement.Before,
87
+ }));
88
+ },
89
+ End: (elements, index) => {
90
+ return elements.slice(index + 1, elements.length).reverse().map(el => ({
91
+ element: el,
92
+ placement: MovePlacement.After,
93
+ }));
94
+ },
95
+ };
96
+ const findClosestPositionsByKey = (elements, element, e) => {
97
+ if (isMovingKey(e.key)) {
98
+ return keyToPlacement[e.key](elements, elements.indexOf(element));
99
+ }
100
+ return [];
101
+ };
102
+ const isMovingKey = (key) => {
103
+ return key in keyToPlacement;
104
+ };
105
+ export { findClosestPosition, findClosestPositionsByKey, isMovingKey, };
106
+ //# sourceMappingURL=findClosestPosition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"findClosestPosition.js","sourceRoot":"","sources":["../../../src/util/dragAndDrop/findClosestPosition.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,8BAA8B,CAAC;AACzD,OAAO,WAAW,MAAM,4BAA4B,CAAC;AAErD,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAE,WAAmB,EAAE,WAAmB,EAAE,UAAkB,EAAE,EAAE;IACxG,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,CAAC;IACxD,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,CAAC;IACxD,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAC5B,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,CAChB,CAAC;IACF,IAAI,UAAU,GAAyB,EAAE,CAAC;IAE1C,QAAQ,YAAY,EAAE,CAAC;QACvB,KAAK,iBAAiB;YACrB,UAAU,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YACpC,MAAM;QACP,KAAK,iBAAiB;YACrB,UAAU,GAAG,CAAC,aAAa,CAAC,EAAE,EAAE,iBAAiB,GAAG,gBAAgB,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACnH,MAAM;QACP,KAAK,gBAAgB;YACpB,UAAU,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACnC,MAAM;IACP,CAAC;IAED,OAAO,UAAU,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,QAA4B,EAAE,KAAa,EAAE,iBAA8B,EAAE,EAAE;IAC3G,IAAI,YAAY,GAAG,MAAM,CAAC,iBAAiB,CAAC;IAC5C,IAAI,cAAc,GAAuB,IAAI,CAAC;IAE9C,uDAAuD;IACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACvB,MAAM,EACL,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,GACxB,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC;QAE/B,IAAI,UAAU,CAAC;QACf,IAAI,iBAAiB,KAAK,WAAW,CAAC,QAAQ,EAAE,CAAC;YAChD,UAAU,GAAG,GAAG,GAAG,MAAM,GAAG,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC,CAAC,aAAa;YACrB,UAAU,GAAG,IAAI,GAAG,KAAK,GAAG,CAAC,CAAC;QAC/B,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC;QAEtD,IAAI,gBAAgB,GAAG,YAAY,EAAE,CAAC;YACrC,YAAY,GAAG,gBAAgB,CAAC;YAChC,cAAc,GAAG,EAAE,CAAC;QACrB,CAAC;IACF,CAAC;IAED,IAAI,CAAC,cAAc,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,EACL,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,GACvC,GAAG,cAAc,CAAC,qBAAqB,EAAE,CAAC;IAC3C,IAAI,UAAU,CAAC;IAEf,IAAI,iBAAiB,KAAK,WAAW,CAAC,QAAQ,EAAE,CAAC;QAChD,UAAU,GAAG,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;IACrE,CAAC;SAAM,CAAC,CAAC,aAAa;QACrB,UAAU,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;IACrE,CAAC;IAED,OAAO;QACN,OAAO,EAAE,cAAc;QACvB,UAAU;KACV,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,QAA4B,EAAE,KAAa,EAAE,EAAE;IACrE,KAAK,EAAE,CAAC;IAER,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACf,OAAO,EAAE,CAAC;IACX,CAAC;IAED,OAAO,CAAC;YACP,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC;YACxB,SAAS,EAAE,aAAa,CAAC,MAAM;SAC/B,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,QAA4B,EAAE,KAAa,EAAE,EAAE;IACpE,KAAK,EAAE,CAAC;IAER,IAAI,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC9B,OAAO,EAAE,CAAC;IACX,CAAC;IAED,OAAO,CAAC;YACP,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC;YACxB,SAAS,EAAE,aAAa,CAAC,KAAK;SAC9B,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,cAAc,GAA0H;IAC7I,SAAS,EAAE,aAAa;IACxB,OAAO,EAAE,aAAa;IACtB,UAAU,EAAE,YAAY;IACxB,SAAS,EAAE,YAAY;IACvB,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;QACzB,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CACzC;YACC,OAAO,EAAE,EAAE;YACX,SAAS,EAAE,aAAa,CAAC,MAAM;SAC/B,CACD,CAAC,CAAC;IACJ,CAAC;IACD,GAAG,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;QACxB,OAAO,QAAQ,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CACrE;YACC,OAAO,EAAE,EAAE;YACX,SAAS,EAAE,aAAa,CAAC,KAAK;SAC9B,CACD,CAAC,CAAC;IACJ,CAAC;CACD,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAAC,QAA4B,EAAE,OAAoB,EAAE,CAAgB,EAAE,EAAE;IAC1G,IAAI,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,EAAE,CAAC;AACX,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAE;IACnC,OAAO,GAAG,IAAI,cAAc,CAAC;AAC9B,CAAC,CAAC;AAEF,OAAO,EACN,mBAAmB,EACnB,yBAAyB,EACzB,WAAW,GACX,CAAC","sourcesContent":["import MovePlacement from \"../../types/MovePlacement.js\";\nimport Orientation from \"../../types/Orientation.js\";\n\nconst closestPlacement = (point: number, beforePoint: number, centerPoint: number, afterPoint: number) => {\n\tconst distToBeforePoint = Math.abs(point - beforePoint);\n\tconst distToCenterPoint = Math.abs(point - centerPoint);\n\tconst distToAfterPoint = Math.abs(point - afterPoint);\n\tconst closestPoint = Math.min(\n\t\tdistToBeforePoint,\n\t\tdistToCenterPoint,\n\t\tdistToAfterPoint,\n\t);\n\tlet placements: Array<MovePlacement> = [];\n\n\tswitch (closestPoint) {\n\tcase distToBeforePoint:\n\t\tplacements = [MovePlacement.Before];\n\t\tbreak;\n\tcase distToCenterPoint:\n\t\tplacements = [MovePlacement.On, distToBeforePoint < distToAfterPoint ? MovePlacement.Before : MovePlacement.After];\n\t\tbreak;\n\tcase distToAfterPoint:\n\t\tplacements = [MovePlacement.After];\n\t\tbreak;\n\t}\n\n\treturn placements;\n};\n\nconst findClosestPosition = (elements: Array<HTMLElement>, point: number, layoutOrientation: Orientation) => {\n\tlet shortestDist = Number.POSITIVE_INFINITY;\n\tlet closestElement: HTMLElement | null = null;\n\n\t// determine which element is most closest to the point\n\tfor (let i = 0; i < elements.length; i++) {\n\t\tconst el = elements[i];\n\t\tconst {\n\t\t\tleft, width, top, height,\n\t\t} = el.getBoundingClientRect();\n\n\t\tlet elemCenter;\n\t\tif (layoutOrientation === Orientation.Vertical) {\n\t\t\telemCenter = top + height / 2;\n\t\t} else { // Horizontal\n\t\t\telemCenter = left + width / 2;\n\t\t}\n\n\t\tconst distanceToCenter = Math.abs(point - elemCenter);\n\n\t\tif (distanceToCenter < shortestDist) {\n\t\t\tshortestDist = distanceToCenter;\n\t\t\tclosestElement = el;\n\t\t}\n\t}\n\n\tif (!closestElement) {\n\t\treturn null;\n\t}\n\n\tconst {\n\t\twidth, height, left, right, top, bottom,\n\t} = closestElement.getBoundingClientRect();\n\tlet placements;\n\n\tif (layoutOrientation === Orientation.Vertical) {\n\t\tplacements = closestPlacement(point, top, top + height / 2, bottom);\n\t} else { // Horizontal\n\t\tplacements = closestPlacement(point, left, left + width / 2, right);\n\t}\n\n\treturn {\n\t\telement: closestElement,\n\t\tplacements,\n\t};\n};\n\nconst _moveBackward = (elements: Array<HTMLElement>, index: number) => {\n\tindex--;\n\n\tif (index < 0) {\n\t\treturn [];\n\t}\n\n\treturn [{\n\t\telement: elements[index],\n\t\tplacement: MovePlacement.Before,\n\t}];\n};\n\nconst _moveForward = (elements: Array<HTMLElement>, index: number) => {\n\tindex++;\n\n\tif (index >= elements.length) {\n\t\treturn [];\n\t}\n\n\treturn [{\n\t\telement: elements[index],\n\t\tplacement: MovePlacement.After,\n\t}];\n};\n\nconst keyToPlacement: { [key: string]: (arg1: Array<HTMLElement>, arg2: number) => Array<{element: HTMLElement, placement: MovePlacement}>} = {\n\tArrowLeft: _moveBackward,\n\tArrowUp: _moveBackward,\n\tArrowRight: _moveForward,\n\tArrowDown: _moveForward,\n\tHome: (elements, index) => {\n\t\treturn elements.slice(0, index).map(el => (\n\t\t\t{\n\t\t\t\telement: el,\n\t\t\t\tplacement: MovePlacement.Before,\n\t\t\t}\n\t\t));\n\t},\n\tEnd: (elements, index) => {\n\t\treturn elements.slice(index + 1, elements.length).reverse().map(el => (\n\t\t\t{\n\t\t\t\telement: el,\n\t\t\t\tplacement: MovePlacement.After,\n\t\t\t}\n\t\t));\n\t},\n};\n\nconst findClosestPositionsByKey = (elements: Array<HTMLElement>, element: HTMLElement, e: KeyboardEvent) => {\n\tif (isMovingKey(e.key)) {\n\t\treturn keyToPlacement[e.key](elements, elements.indexOf(element));\n\t}\n\n\treturn [];\n};\n\nconst isMovingKey = (key: string) => {\n\treturn key in keyToPlacement;\n};\n\nexport {\n\tfindClosestPosition,\n\tfindClosestPositionsByKey,\n\tisMovingKey,\n};\n"]}
@@ -0,0 +1,16 @@
1
+ import type UI5Element from "../../UI5Element.js";
2
+ import type MovePlacement from "../../types/MovePlacement.js";
3
+ import type { DragAndDropSettings } from "./DragRegistry.js";
4
+ type DragOverResult = {
5
+ targetReference: HTMLElement | null;
6
+ placement: any;
7
+ };
8
+ type DragPosition = {
9
+ element: HTMLElement;
10
+ placements: MovePlacement[];
11
+ };
12
+ /**
13
+ * Handles the dragover event.
14
+ */
15
+ declare function handleDragOver<T extends UI5Element>(e: DragEvent, component: T, position: DragPosition, target: HTMLElement, settings?: DragAndDropSettings): DragOverResult;
16
+ export default handleDragOver;
@@ -0,0 +1,42 @@
1
+ import DragRegistry from "./DragRegistry.js";
2
+ /**
3
+ * Handles the dragover event.
4
+ */
5
+ function handleDragOver(e, component, position, target, settings = {}) {
6
+ const draggedElement = DragRegistry.getDraggedElement();
7
+ const dragOverResult = {
8
+ targetReference: null,
9
+ placement: null,
10
+ };
11
+ if (!draggedElement && !settings?.crossDnD) {
12
+ return dragOverResult;
13
+ }
14
+ const placements = position.placements;
15
+ dragOverResult.targetReference = e.target;
16
+ const placementAccepted = placements.some(placement => {
17
+ const originalEvent = settings.originalEvent ? { originalEvent: e } : {};
18
+ const beforeItemMovePrevented = !component.fireDecoratorEvent("move-over", {
19
+ ...originalEvent,
20
+ source: {
21
+ element: draggedElement,
22
+ },
23
+ destination: {
24
+ element: target,
25
+ placement,
26
+ },
27
+ });
28
+ if (beforeItemMovePrevented) {
29
+ e.preventDefault();
30
+ dragOverResult.targetReference = position.element;
31
+ dragOverResult.placement = placement;
32
+ return true;
33
+ }
34
+ return false;
35
+ });
36
+ if (!placementAccepted) {
37
+ dragOverResult.targetReference = null;
38
+ }
39
+ return dragOverResult;
40
+ }
41
+ export default handleDragOver;
42
+ //# sourceMappingURL=handleDragOver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleDragOver.js","sourceRoot":"","sources":["../../../src/util/dragAndDrop/handleDragOver.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAY7C;;GAEG;AACH,SAAS,cAAc,CAAuB,CAAY,EAAE,SAAY,EAAE,QAAsB,EAAE,MAAmB,EAAE,WAAgC,EAAE;IACxJ,MAAM,cAAc,GAAG,YAAY,CAAC,iBAAiB,EAAE,CAAC;IACxD,MAAM,cAAc,GAAmB;QACtC,eAAe,EAAE,IAAI;QACrB,SAAS,EAAE,IAAI;KACf,CAAC;IAEF,IAAI,CAAC,cAAc,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC;QAC5C,OAAO,cAAc,CAAC;IACvB,CAAC;IAED,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;IACvC,cAAc,CAAC,eAAe,GAAG,CAAC,CAAC,MAAqB,CAAC;IAEzD,MAAM,iBAAiB,GAAG,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;QACrD,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,MAAM,uBAAuB,GAAG,CAAC,SAAS,CAAC,kBAAkB,CAAC,WAAsC,EAAE;YACrG,GAAG,aAAa;YAChB,MAAM,EAAE;gBACP,OAAO,EAAE,cAAc;aACvB;YACD,WAAW,EAAE;gBACZ,OAAO,EAAE,MAAM;gBACf,SAAS;aACT;SAC6C,CAAC,CAAC;QAEjD,IAAI,uBAAuB,EAAE,CAAC;YAC7B,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,cAAc,CAAC,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC;YAClD,cAAc,CAAC,SAAS,GAAG,SAAS,CAAC;YACrC,OAAO,IAAI,CAAC;QACb,CAAC;QAED,OAAO,KAAK,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACxB,cAAc,CAAC,eAAe,GAAG,IAAI,CAAC;IACvC,CAAC;IAED,OAAO,cAAc,CAAC;AACvB,CAAC;AAED,eAAe,cAAc,CAAC","sourcesContent":["import type UI5Element from \"../../UI5Element.js\";\nimport type MovePlacement from \"../../types/MovePlacement.js\";\nimport type { DragAndDropSettings } from \"./DragRegistry.js\";\nimport DragRegistry from \"./DragRegistry.js\";\n\ntype DragOverResult = {\n\ttargetReference: HTMLElement | null;\n\tplacement: any;\n}\n\ntype DragPosition = {\n\telement: HTMLElement;\n\tplacements: MovePlacement[];\n};\n\n/**\n * Handles the dragover event.\n */\nfunction handleDragOver<T extends UI5Element>(e: DragEvent, component: T, position: DragPosition, target: HTMLElement, settings: DragAndDropSettings = {}): DragOverResult {\n\tconst draggedElement = DragRegistry.getDraggedElement();\n\tconst dragOverResult: DragOverResult = {\n\t\ttargetReference: null,\n\t\tplacement: null,\n\t};\n\n\tif (!draggedElement && !settings?.crossDnD) {\n\t\treturn dragOverResult;\n\t}\n\n\tconst placements = position.placements;\n\tdragOverResult.targetReference = e.target as HTMLElement;\n\n\tconst placementAccepted = placements.some(placement => {\n\t\tconst originalEvent = settings.originalEvent ? { originalEvent: e } : {};\n\t\tconst beforeItemMovePrevented = !component.fireDecoratorEvent(\"move-over\" as keyof T[\"eventDetails\"], {\n\t\t\t...originalEvent,\n\t\t\tsource: {\n\t\t\t\telement: draggedElement,\n\t\t\t},\n\t\t\tdestination: {\n\t\t\t\telement: target,\n\t\t\t\tplacement,\n\t\t\t},\n\t\t} as T[\"eventDetails\"][keyof T[\"eventDetails\"]]);\n\n\t\tif (beforeItemMovePrevented) {\n\t\t\te.preventDefault();\n\t\t\tdragOverResult.targetReference = position.element;\n\t\t\tdragOverResult.placement = placement;\n\t\t\treturn true;\n\t\t}\n\n\t\treturn false;\n\t});\n\n\tif (!placementAccepted) {\n\t\tdragOverResult.targetReference = null;\n\t}\n\n\treturn dragOverResult;\n}\n\nexport default handleDragOver;\n"]}
@@ -0,0 +1,5 @@
1
+ import type UI5Element from "../../UI5Element.js";
2
+ import type MovePlacement from "../../types/MovePlacement.js";
3
+ import type { DragAndDropSettings } from "./DragRegistry.js";
4
+ declare function handleDrop<T extends UI5Element>(e: DragEvent, component: T, target: HTMLElement, placement: `${MovePlacement}`, settings?: DragAndDropSettings): void;
5
+ export default handleDrop;
@@ -0,0 +1,22 @@
1
+ import DragRegistry from "./DragRegistry.js";
2
+ function handleDrop(e, component, target, placement, settings = {}) {
3
+ e.preventDefault();
4
+ const draggedElement = DragRegistry.getDraggedElement();
5
+ if (!draggedElement && settings?.crossDnD) {
6
+ return;
7
+ }
8
+ const originalEvent = settings.originalEvent ? { originalEvent: e } : {};
9
+ component.fireDecoratorEvent("move", {
10
+ ...originalEvent,
11
+ source: {
12
+ element: draggedElement,
13
+ },
14
+ destination: {
15
+ element: target,
16
+ placement,
17
+ },
18
+ });
19
+ draggedElement?.focus();
20
+ }
21
+ export default handleDrop;
22
+ //# sourceMappingURL=handleDrop.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleDrop.js","sourceRoot":"","sources":["../../../src/util/dragAndDrop/handleDrop.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAE7C,SAAS,UAAU,CAAuB,CAAY,EAAE,SAAY,EAAE,MAAmB,EAAE,SAA6B,EAAE,WAAgC,EAAE;IAC3J,CAAC,CAAC,cAAc,EAAE,CAAC;IACnB,MAAM,cAAc,GAAG,YAAY,CAAC,iBAAiB,EAAE,CAAC;IAExD,IAAI,CAAC,cAAc,IAAI,QAAQ,EAAE,QAAQ,EAAE,CAAC;QAC3C,OAAO;IACR,CAAC;IAED,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACzE,SAAS,CAAC,kBAAkB,CAAC,MAAiC,EAAE;QAC/D,GAAG,aAAa;QAChB,MAAM,EAAE;YACP,OAAO,EAAE,cAAc;SACvB;QACD,WAAW,EAAE;YACZ,OAAO,EAAE,MAAM;YACf,SAAS;SACT;KAC6C,CAAC,CAAC;IAEjD,cAAc,EAAE,KAAK,EAAE,CAAC;AACzB,CAAC;AAED,eAAe,UAAU,CAAC","sourcesContent":["import type UI5Element from \"../../UI5Element.js\";\nimport type MovePlacement from \"../../types/MovePlacement.js\";\nimport type { DragAndDropSettings } from \"./DragRegistry.js\";\nimport DragRegistry from \"./DragRegistry.js\";\n\nfunction handleDrop<T extends UI5Element>(e: DragEvent, component: T, target: HTMLElement, placement: `${MovePlacement}`, settings: DragAndDropSettings = {}): void {\n\te.preventDefault();\n\tconst draggedElement = DragRegistry.getDraggedElement();\n\n\tif (!draggedElement && settings?.crossDnD) {\n\t\treturn;\n\t}\n\n\tconst originalEvent = settings.originalEvent ? { originalEvent: e } : {};\n\tcomponent.fireDecoratorEvent(\"move\" as keyof T[\"eventDetails\"], {\n\t\t...originalEvent,\n\t\tsource: {\n\t\t\telement: draggedElement,\n\t\t},\n\t\tdestination: {\n\t\t\telement: target,\n\t\t\tplacement,\n\t\t},\n\t} as T[\"eventDetails\"][keyof T[\"eventDetails\"]]);\n\n\tdraggedElement?.focus();\n}\n\nexport default handleDrop;\n"]}
@@ -0,0 +1,2 @@
1
+ declare const longDragOverHandler: (targetsSelector: string) => (target: any, propertyKey: string, descriptor: TypedPropertyDescriptor<(arg0: DragEvent, arg1: boolean) => any>) => TypedPropertyDescriptor<(arg0: DragEvent, arg1: boolean) => any>;
2
+ export default longDragOverHandler;
@@ -0,0 +1,25 @@
1
+ let lastTarget = null;
2
+ let lastTargetDragOverStart = Date.now();
3
+ const LONG_DRAG_OVER_THRESHOLD = 300;
4
+ const longDragOverHandler = (targetsSelector) => {
5
+ return (target, propertyKey, descriptor) => {
6
+ const origHandler = descriptor.value;
7
+ descriptor.value = function handleDragOver(e) {
8
+ let isLongDragOver = false;
9
+ if (e.target instanceof HTMLElement) {
10
+ const currentTarget = e.target.closest(targetsSelector);
11
+ if (currentTarget === lastTarget && Date.now() - lastTargetDragOverStart >= LONG_DRAG_OVER_THRESHOLD) {
12
+ isLongDragOver = true;
13
+ }
14
+ else if (currentTarget !== lastTarget) {
15
+ lastTarget = currentTarget;
16
+ lastTargetDragOverStart = Date.now();
17
+ }
18
+ }
19
+ origHandler.apply(this, [e, isLongDragOver]);
20
+ };
21
+ return descriptor;
22
+ };
23
+ };
24
+ export default longDragOverHandler;
25
+ //# sourceMappingURL=longDragOverHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"longDragOverHandler.js","sourceRoot":"","sources":["../../../src/util/dragAndDrop/longDragOverHandler.ts"],"names":[],"mappings":"AAAA,IAAI,UAAU,GAAuB,IAAI,CAAC;AAC1C,IAAI,uBAAuB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;AACzC,MAAM,wBAAwB,GAAG,GAAG,CAAC;AAErC,MAAM,mBAAmB,GAAG,CAAC,eAAuB,EAAE,EAAE;IACvD,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA4E,EAAE,EAAE;QACzH,MAAM,WAAW,GAAG,UAAU,CAAC,KAAM,CAAC;QAEtC,UAAU,CAAC,KAAK,GAAG,SAAS,cAAc,CAAC,CAAY;YACtD,IAAI,cAAc,GAAG,KAAK,CAAC;YAE3B,IAAI,CAAC,CAAC,MAAM,YAAY,WAAW,EAAE,CAAC;gBACrC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAc,eAAe,CAAC,CAAC;gBAErE,IAAI,aAAa,KAAK,UAAU,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,uBAAuB,IAAI,wBAAwB,EAAE,CAAC;oBACtG,cAAc,GAAG,IAAI,CAAC;gBACvB,CAAC;qBAAM,IAAI,aAAa,KAAK,UAAU,EAAE,CAAC;oBACzC,UAAU,GAAG,aAAa,CAAC;oBAC3B,uBAAuB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACtC,CAAC;YACF,CAAC;YAED,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;QAC9C,CAAC,CAAC;QAEF,OAAO,UAAU,CAAC;IACnB,CAAC,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,mBAAmB,CAAC","sourcesContent":["let lastTarget: HTMLElement | null = null;\nlet lastTargetDragOverStart = Date.now();\nconst LONG_DRAG_OVER_THRESHOLD = 300;\n\nconst longDragOverHandler = (targetsSelector: string) => {\n\treturn (target: any, propertyKey: string, descriptor: TypedPropertyDescriptor<(arg0: DragEvent, arg1: boolean) => any>) => {\n\t\tconst origHandler = descriptor.value!;\n\n\t\tdescriptor.value = function handleDragOver(e: DragEvent) {\n\t\t\tlet isLongDragOver = false;\n\n\t\t\tif (e.target instanceof HTMLElement) {\n\t\t\t\tconst currentTarget = e.target.closest<HTMLElement>(targetsSelector);\n\n\t\t\t\tif (currentTarget === lastTarget && Date.now() - lastTargetDragOverStart >= LONG_DRAG_OVER_THRESHOLD) {\n\t\t\t\t\tisLongDragOver = true;\n\t\t\t\t} else if (currentTarget !== lastTarget) {\n\t\t\t\t\tlastTarget = currentTarget;\n\t\t\t\t\tlastTargetDragOverStart = Date.now();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\torigHandler.apply(this, [e, isLongDragOver]);\n\t\t};\n\n\t\treturn descriptor;\n\t};\n};\n\nexport default longDragOverHandler;\n"]}
@@ -0,0 +1,2 @@
1
+ declare const fixSafariActiveState: () => void;
2
+ export default fixSafariActiveState;
@@ -0,0 +1,11 @@
1
+ import { isIOS, isSafari } from "../Device.js";
2
+ let listenerAttached = false;
3
+ const fixSafariActiveState = () => {
4
+ if (isSafari() && isIOS() && !listenerAttached) {
5
+ // Safari on iOS does not use the :active state unless there is a touchstart event handler on the <body> element
6
+ document.body.addEventListener("touchstart", () => { });
7
+ listenerAttached = true;
8
+ }
9
+ };
10
+ export default fixSafariActiveState;
11
+ //# sourceMappingURL=fixSafariActiveState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fixSafariActiveState.js","sourceRoot":"","sources":["../../src/util/fixSafariActiveState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE/C,IAAI,gBAAgB,GAAG,KAAK,CAAC;AAE7B,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACjC,IAAI,QAAQ,EAAE,IAAI,KAAK,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAChD,gHAAgH;QAChH,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACvD,gBAAgB,GAAG,IAAI,CAAC;IACzB,CAAC;AACF,CAAC,CAAC;AAEF,eAAe,oBAAoB,CAAC","sourcesContent":["import { isIOS, isSafari } from \"../Device.js\";\n\nlet listenerAttached = false;\n\nconst fixSafariActiveState = () => {\n\tif (isSafari() && isIOS() && !listenerAttached) {\n\t\t// Safari on iOS does not use the :active state unless there is a touchstart event handler on the <body> element\n\t\tdocument.body.addEventListener(\"touchstart\", () => {});\n\t\tlistenerAttached = true;\n\t}\n};\n\nexport default fixSafariActiveState;\n"]}
@@ -1 +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","sourcesContent":["const messageFormatRegEX = /('')|'([^']+(?:''[^']*)*)(?:'|$)|\\{([0-9]+(?:\\s*,[^{}]*)?)\\}|[{}]/g;\n\nconst formatMessage = (text: string, values: Array<number | string>) => {\n\tvalues = values || [];\n\n\treturn text.replace(messageFormatRegEX, ($0, $1, $2, $3: string | number, offset: number) => {\n\t\tif ($1) {\n\t\t\treturn '\\''; /* eslint-disable-line */\n\t\t}\n\n\t\tif ($2) {\n\t\t\treturn $2.replace(/''/g, '\\''); /* eslint-disable-line */\n\t\t}\n\n\t\tif ($3) {\n\t\t\tconst ind = typeof $3 === \"string\" ? parseInt($3) : $3;\n\t\t\treturn String(values[ind]);\n\t\t}\n\n\t\tthrow new Error(`[i18n]: pattern syntax error at pos ${offset}`);\n\t});\n};\n\nexport default formatMessage;\n"]}
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,CAAC;YACR,OAAO,IAAI,CAAC,CAAC,yBAAyB;QACvC,CAAC;QAED,IAAI,EAAE,EAAE,CAAC;YACR,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,yBAAyB;QAC1D,CAAC;QAED,IAAI,EAAE,EAAE,CAAC;YACR,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;QAC5B,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,uCAAuC,MAAM,EAAE,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,aAAa,CAAC","sourcesContent":["const messageFormatRegEX = /('')|'([^']+(?:''[^']*)*)(?:'|$)|\\{([0-9]+(?:\\s*,[^{}]*)?)\\}|[{}]/g;\n\nconst formatMessage = (text: string, values: Array<number | string>) => {\n\tvalues = values || [];\n\n\treturn text.replace(messageFormatRegEX, ($0, $1, $2, $3: string | number, offset: number) => {\n\t\tif ($1) {\n\t\t\treturn '\\''; /* eslint-disable-line */\n\t\t}\n\n\t\tif ($2) {\n\t\t\treturn $2.replace(/''/g, '\\''); /* eslint-disable-line */\n\t\t}\n\n\t\tif ($3) {\n\t\t\tconst ind = typeof $3 === \"string\" ? parseInt($3) : $3;\n\t\t\treturn String(values[ind]);\n\t\t}\n\n\t\tthrow new Error(`[i18n]: pattern syntax error at pos ${offset}`);\n\t});\n};\n\nexport default formatMessage;\n"]}
@@ -1 +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","sourcesContent":["import escapeRegex from \"./escapeRegex.js\";\n// @ts-ignore\nimport encodeXML from \"../sap/base/security/encodeXML.js\";\n\n// utility to replace all occurances of a string\nfunction replaceAll(text: string, find: string, replace: string | ((substring: string, ...args: any[]) => string), caseInsensitive: boolean) {\n\treturn text.replaceAll(new RegExp(escapeRegex(find), `${caseInsensitive ? \"i\" : \"\"}g`), replace as string);\n}\n\n/**\n * Generate markup for a raw string where a particular text is wrapped with some tag, by default `<b>` (bold) tag.\n * All inputs to this function are considered literal text, and special characters will always be escaped.\n * @param {string} text The text to add highlighting to\n * @param {string} textToHighlight The text which should be highlighted\n * @return {string} the markup HTML which contains all occurrances of the input text surrounded with a `<b>` tag.\n */\nfunction generateHighlightedMarkup(text: string, textToHighlight: string) {\n\tif (!text || !textToHighlight) {\n\t\treturn text;\n\t}\n\t// a token is some string that does not appear in either of the input strings\n\t// repeat the token until it does not appear in the string\n\tconst makeToken = (t: string) => {\n\t\tconst [s, e] = t.split(\"\");\n\t\twhile (text.indexOf(t) >= 0 || textToHighlight.indexOf(t) >= 0) {\n\t\t\tt = `${s}${t}${e}`;\n\t\t}\n\t\treturn t;\n\t};\n\t// It doesn't matter what characters are used as long as all 4 of them are unique\n\t// And also that encodeXML will not change these characters\n\tconst openToken = makeToken(\"12\");\n\tconst closeToken = makeToken(\"34\");\n\t// wrap every occurance of the textToHighlight using the open/close tokens (instead of markup at this point)\n\tlet result = encodeXML(replaceAll(text, textToHighlight, (match: string) => `${openToken}${match}${closeToken}`, true)) as string;\n\t// now replace the open and close tokens with the markup that we expect\n\t[[openToken, \"<b>\"], [closeToken, \"</b>\"]].forEach(([find, replace]) => {\n\t\tresult = replaceAll(result, find, replace, false);\n\t});\n\treturn result;\n}\n\nexport default generateHighlightedMarkup;\n"]}
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,CAAC;QAC/B,OAAO,IAAI,CAAC;IACb,CAAC;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,CAAC;YAChE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QACpB,CAAC;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","sourcesContent":["import escapeRegex from \"./escapeRegex.js\";\n// @ts-ignore\nimport encodeXML from \"../sap/base/security/encodeXML.js\";\n\n// utility to replace all occurances of a string\nfunction replaceAll(text: string, find: string, replace: string | ((substring: string, ...args: any[]) => string), caseInsensitive: boolean) {\n\treturn text.replaceAll(new RegExp(escapeRegex(find), `${caseInsensitive ? \"i\" : \"\"}g`), replace as string);\n}\n\n/**\n * Generate markup for a raw string where a particular text is wrapped with some tag, by default `<b>` (bold) tag.\n * All inputs to this function are considered literal text, and special characters will always be escaped.\n * @param {string} text The text to add highlighting to\n * @param {string} textToHighlight The text which should be highlighted\n * @return {string} the markup HTML which contains all occurrances of the input text surrounded with a `<b>` tag.\n */\nfunction generateHighlightedMarkup(text: string, textToHighlight: string) {\n\tif (!text || !textToHighlight) {\n\t\treturn text;\n\t}\n\t// a token is some string that does not appear in either of the input strings\n\t// repeat the token until it does not appear in the string\n\tconst makeToken = (t: string) => {\n\t\tconst [s, e] = t.split(\"\");\n\t\twhile (text.indexOf(t) >= 0 || textToHighlight.indexOf(t) >= 0) {\n\t\t\tt = `${s}${t}${e}`;\n\t\t}\n\t\treturn t;\n\t};\n\t// It doesn't matter what characters are used as long as all 4 of them are unique\n\t// And also that encodeXML will not change these characters\n\tconst openToken = makeToken(\"12\");\n\tconst closeToken = makeToken(\"34\");\n\t// wrap every occurance of the textToHighlight using the open/close tokens (instead of markup at this point)\n\tlet result = encodeXML(replaceAll(text, textToHighlight, (match: string) => `${openToken}${match}${closeToken}`, true)) as string;\n\t// now replace the open and close tokens with the markup that we expect\n\t[[openToken, \"<b>\"], [closeToken, \"</b>\"]].forEach(([find, replace]) => {\n\t\tresult = replaceAll(result, find, replace, false);\n\t});\n\treturn result;\n}\n\nexport default generateHighlightedMarkup;\n"]}
@@ -1 +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","sourcesContent":["const getActiveElement = () => {\n\tlet element = document.activeElement;\n\n\twhile (element && element.shadowRoot && element.shadowRoot.activeElement) {\n\t\telement = element.shadowRoot.activeElement;\n\t}\n\n\treturn element;\n};\n\nexport default getActiveElement;\n"]}
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,CAAC;QAC1E,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC;IAC5C,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC","sourcesContent":["const getActiveElement = () => {\n\tlet element = document.activeElement;\n\n\twhile (element && element.shadowRoot && element.shadowRoot.activeElement) {\n\t\telement = element.shadowRoot.activeElement;\n\t}\n\n\treturn element;\n};\n\nexport default getActiveElement;\n"]}