@ui5/webcomponents-base 0.0.0-a8e886a07 → 0.0.0-acc6fea96

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 (647) hide show
  1. package/.npsrc.json +3 -0
  2. package/CHANGELOG.md +1812 -0
  3. package/README.md +6 -12
  4. package/cypress/specs/Accessor.cy.ts +79 -0
  5. package/cypress/specs/Boot.cy.ts +19 -0
  6. package/cypress/specs/ConfigurationChange.cy.ts +41 -0
  7. package/cypress/specs/ConfigurationScript.cy.ts +116 -0
  8. package/cypress/specs/ConfigurationURL.cy.ts +182 -0
  9. package/cypress/specs/CustomMount.cy.ts +34 -0
  10. package/cypress/specs/CustomTheme.cy.ts +36 -0
  11. package/cypress/specs/EventProvider.cy.ts +59 -0
  12. package/cypress/specs/SystemDOMElements.cy.ts +8 -0
  13. package/cypress/specs/Theming.cy.ts +74 -0
  14. package/cypress/specs/UI5ElementInvalidation.cy.ts +207 -0
  15. package/cypress/specs/UI5ElementLifecycle.cy.ts +82 -0
  16. package/cypress/specs/UI5ElementListenForChildPropChanges.cy.ts +62 -0
  17. package/cypress/specs/UI5ElementMetadataExt.cy.ts +42 -0
  18. package/cypress/specs/UI5ElementPropertyValidation.cy.ts +16 -0
  19. package/cypress/specs/UI5ElementPropsAndAttrs.cy.ts +113 -0
  20. package/cypress/specs/UI5ElementShadowDOM.cy.ts +30 -0
  21. package/cypress/specs/UI5ElementSlots.cy.ts +116 -0
  22. package/cypress/specs/WithComplexTemplate.cy.ts +32 -0
  23. package/cypress/tsconfig.json +20 -0
  24. package/cypress.config.js +3 -0
  25. package/dist/.tsbuildinfobuild +1 -0
  26. package/dist/AssetRegistry.d.ts +2 -2
  27. package/dist/AssetRegistry.js +2 -2
  28. package/dist/AssetRegistry.js.map +1 -1
  29. package/dist/Boot.d.ts +6 -4
  30. package/dist/Boot.js +37 -6
  31. package/dist/Boot.js.map +1 -1
  32. package/dist/CustomElementsRegistry.js +1 -1
  33. package/dist/CustomElementsRegistry.js.map +1 -1
  34. package/dist/CustomElementsScope.d.ts +4 -4
  35. package/dist/CustomElementsScope.js +2 -2
  36. package/dist/CustomElementsScope.js.map +1 -1
  37. package/dist/CustomElementsScopeUtils.d.ts +8 -1
  38. package/dist/CustomElementsScopeUtils.js +13 -1
  39. package/dist/CustomElementsScopeUtils.js.map +1 -1
  40. package/dist/DOMObserver.js.map +1 -1
  41. package/dist/Device.d.ts +17 -2
  42. package/dist/Device.js +116 -36
  43. package/dist/Device.js.map +1 -1
  44. package/dist/EventProvider.js +1 -1
  45. package/dist/EventProvider.js.map +1 -1
  46. package/dist/FeaturesRegistry.d.ts +16 -1
  47. package/dist/FeaturesRegistry.js +37 -1
  48. package/dist/FeaturesRegistry.js.map +1 -1
  49. package/dist/FontFace.js +6 -1
  50. package/dist/FontFace.js.map +1 -1
  51. package/dist/IgnoreCustomElements.d.ts +25 -0
  52. package/dist/IgnoreCustomElements.js +37 -0
  53. package/dist/IgnoreCustomElements.js.map +1 -0
  54. package/dist/InitialConfiguration.d.ts +15 -3
  55. package/dist/InitialConfiguration.js +42 -10
  56. package/dist/InitialConfiguration.js.map +1 -1
  57. package/dist/Keys.d.ts +8 -1
  58. package/dist/Keys.js +114 -106
  59. package/dist/Keys.js.map +1 -1
  60. package/dist/Location.d.ts +11 -0
  61. package/dist/Location.js +49 -0
  62. package/dist/Location.js.map +1 -0
  63. package/dist/ManagedStyles.d.ts +5 -6
  64. package/dist/ManagedStyles.js +45 -53
  65. package/dist/ManagedStyles.js.map +1 -1
  66. package/dist/MediaRange.d.ts +6 -12
  67. package/dist/MediaRange.js +21 -31
  68. package/dist/MediaRange.js.map +1 -1
  69. package/dist/PropertiesFileFormat.js.map +1 -1
  70. package/dist/Render.js.map +1 -1
  71. package/dist/RenderQueue.js.map +1 -1
  72. package/dist/Runtimes.js +11 -0
  73. package/dist/Runtimes.js.map +1 -1
  74. package/dist/SystemCSSVars.js.map +1 -1
  75. package/dist/Theming.js.map +1 -1
  76. package/dist/UI5Element.d.ts +114 -73
  77. package/dist/UI5Element.js +404 -251
  78. package/dist/UI5Element.js.map +1 -1
  79. package/dist/UI5ElementMetadata.d.ts +41 -27
  80. package/dist/UI5ElementMetadata.js +34 -72
  81. package/dist/UI5ElementMetadata.js.map +1 -1
  82. package/dist/animations/AnimationQueue.js.map +1 -1
  83. package/dist/animations/animate.js.map +1 -1
  84. package/dist/animations/scroll.js.map +1 -1
  85. package/dist/animations/slideDown.js.map +1 -1
  86. package/dist/animations/slideUp.js.map +1 -1
  87. package/dist/asset-registries/Icons.d.ts +22 -13
  88. package/dist/asset-registries/Icons.js +63 -31
  89. package/dist/asset-registries/Icons.js.map +1 -1
  90. package/dist/asset-registries/Illustrations.d.ts +3 -1
  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 +6 -7
  96. package/dist/asset-registries/Themes.js +29 -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 +12 -5
  100. package/dist/asset-registries/i18n.js.map +1 -1
  101. package/dist/asset-registries/util/IconCollectionsAlias.d.ts +30 -0
  102. package/dist/asset-registries/util/IconCollectionsAlias.js +37 -0
  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.d.ts +5 -1
  123. package/dist/config/FormatSettings.js +9 -1
  124. package/dist/config/FormatSettings.js.map +1 -1
  125. package/dist/config/Icons.d.ts +31 -21
  126. package/dist/config/Icons.js +28 -32
  127. package/dist/config/Icons.js.map +1 -1
  128. package/dist/config/Language.d.ts +11 -2
  129. package/dist/config/Language.js +24 -4
  130. package/dist/config/Language.js.map +1 -1
  131. package/dist/config/NoConflict.js +5 -0
  132. package/dist/config/NoConflict.js.map +1 -1
  133. package/dist/config/Theme.d.ts +16 -5
  134. package/dist/config/Theme.js +39 -9
  135. package/dist/config/Theme.js.map +1 -1
  136. package/dist/config/ThemeRoot.d.ts +27 -0
  137. package/dist/config/ThemeRoot.js +61 -0
  138. package/dist/config/ThemeRoot.js.map +1 -0
  139. package/dist/config/Timezone.d.ts +17 -0
  140. package/dist/config/Timezone.js +34 -0
  141. package/dist/config/Timezone.js.map +1 -0
  142. package/dist/config/Tooltips.d.ts +19 -0
  143. package/dist/config/Tooltips.js +29 -0
  144. package/dist/config/Tooltips.js.map +1 -0
  145. package/dist/connectToComponent.d.ts +9 -0
  146. package/dist/connectToComponent.js +59 -0
  147. package/dist/connectToComponent.js.map +1 -0
  148. package/dist/converters/DOMReference.d.ts +5 -0
  149. package/dist/converters/DOMReference.js +13 -0
  150. package/dist/converters/DOMReference.js.map +1 -0
  151. package/dist/css/FontFace.css +47 -17
  152. package/dist/css/SystemCSSVars.css +0 -8
  153. package/dist/decorators/bound.d.ts +1 -0
  154. package/dist/decorators/bound.js +34 -0
  155. package/dist/decorators/bound.js.map +1 -0
  156. package/dist/decorators/customElement.d.ts +56 -2
  157. package/dist/decorators/customElement.js +37 -5
  158. package/dist/decorators/customElement.js.map +1 -1
  159. package/dist/decorators/event-strict.d.ts +15 -0
  160. package/dist/decorators/event-strict.js +26 -0
  161. package/dist/decorators/event-strict.js.map +1 -0
  162. package/dist/decorators/event.d.ts +8 -2
  163. package/dist/decorators/event.js +9 -6
  164. package/dist/decorators/event.js.map +1 -1
  165. package/dist/decorators/i18n.d.ts +17 -0
  166. package/dist/decorators/i18n.js +26 -0
  167. package/dist/decorators/i18n.js.map +1 -0
  168. package/dist/decorators/property.d.ts +1 -1
  169. package/dist/decorators/property.js +7 -7
  170. package/dist/decorators/property.js.map +1 -1
  171. package/dist/decorators/query.d.ts +25 -0
  172. package/dist/decorators/query.js +32 -0
  173. package/dist/decorators/query.js.map +1 -0
  174. package/dist/decorators/queryAll.d.ts +27 -0
  175. package/dist/decorators/queryAll.js +34 -0
  176. package/dist/decorators/queryAll.js.map +1 -0
  177. package/dist/decorators/slot.d.ts +1 -1
  178. package/dist/decorators/slot.js +9 -9
  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 +6 -7
  187. package/dist/delegate/ResizeHandler.js +11 -9
  188. package/dist/delegate/ResizeHandler.js.map +1 -1
  189. package/dist/delegate/ScrollEnablement.d.ts +4 -3
  190. package/dist/delegate/ScrollEnablement.js +2 -2
  191. package/dist/delegate/ScrollEnablement.js.map +1 -1
  192. package/dist/features/F6Navigation.d.ts +6 -3
  193. package/dist/features/F6Navigation.js +102 -44
  194. package/dist/features/F6Navigation.js.map +1 -1
  195. package/dist/features/InputElementsFormSupport.d.ts +15 -0
  196. package/dist/features/InputElementsFormSupport.js +39 -0
  197. package/dist/features/InputElementsFormSupport.js.map +1 -0
  198. package/dist/features/LegacyDateFormats.d.ts +18 -0
  199. package/dist/features/LegacyDateFormats.js +20 -0
  200. package/dist/features/LegacyDateFormats.js.map +1 -0
  201. package/dist/features/OpenUI5Element.js.map +1 -1
  202. package/dist/features/OpenUI5Enablement.d.ts +3 -3
  203. package/dist/features/OpenUI5Enablement.js.map +1 -1
  204. package/dist/features/OpenUI5Support.d.ts +17 -6
  205. package/dist/features/OpenUI5Support.js +92 -46
  206. package/dist/features/OpenUI5Support.js.map +1 -1
  207. package/dist/features/patchPatcher.d.ts +11 -0
  208. package/dist/features/patchPatcher.js +11 -0
  209. package/dist/features/patchPatcher.js.map +1 -0
  210. package/dist/features/patchPopup.d.ts +15 -0
  211. package/dist/features/patchPopup.js +61 -0
  212. package/dist/features/patchPopup.js.map +1 -0
  213. package/dist/generated/AssetParameters.d.ts +6 -0
  214. package/dist/generated/AssetParameters.js +4 -9
  215. package/dist/generated/AssetParameters.js.map +1 -0
  216. package/dist/generated/VersionInfo.d.ts +10 -0
  217. package/dist/generated/VersionInfo.js +9 -8
  218. package/dist/generated/VersionInfo.js.map +1 -0
  219. package/dist/generated/css/BusyIndicator.css.d.ts +2 -0
  220. package/dist/generated/css/BusyIndicator.css.js +2 -5
  221. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  222. package/dist/generated/css/FontFace.css.d.ts +2 -0
  223. package/dist/generated/css/FontFace.css.js +2 -5
  224. package/dist/generated/css/FontFace.css.js.map +1 -0
  225. package/dist/generated/css/OverrideFontFace.css.d.ts +2 -0
  226. package/dist/generated/css/OverrideFontFace.css.js +2 -5
  227. package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
  228. package/dist/generated/css/SystemCSSVars.css.d.ts +2 -0
  229. package/dist/generated/css/SystemCSSVars.css.js +2 -5
  230. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  231. package/dist/getSharedResource.d.ts +1 -1
  232. package/dist/getSharedResource.js +16 -2
  233. package/dist/getSharedResource.js.map +1 -1
  234. package/{global.d.ts → dist/global.d.ts} +2 -6
  235. package/dist/i18nBundle.d.ts +2 -4
  236. package/dist/i18nBundle.js +3 -5
  237. package/dist/i18nBundle.js.map +1 -1
  238. package/dist/index.d.ts +8 -0
  239. package/dist/jsx-dev-runtime.d.ts +4 -0
  240. package/dist/jsx-dev-runtime.js +43 -0
  241. package/dist/jsx-dev-runtime.js.map +1 -0
  242. package/dist/jsx-runtime.d.ts +50 -0
  243. package/dist/jsx-runtime.js +27 -0
  244. package/dist/jsx-runtime.js.map +1 -0
  245. package/dist/jsx-utils.d.ts +3 -0
  246. package/dist/jsx-utils.js +39 -0
  247. package/dist/jsx-utils.js.map +1 -0
  248. package/dist/locale/Locale.js.map +1 -1
  249. package/dist/locale/RTLAwareRegistry.d.ts +1 -1
  250. package/dist/locale/RTLAwareRegistry.js.map +1 -1
  251. package/dist/locale/applyDirection.d.ts +3 -2
  252. package/dist/locale/applyDirection.js +3 -2
  253. package/dist/locale/applyDirection.js.map +1 -1
  254. package/dist/locale/directionChange.js.map +1 -1
  255. package/dist/locale/getEffectiveDir.d.ts +1 -1
  256. package/dist/locale/getEffectiveDir.js +3 -19
  257. package/dist/locale/getEffectiveDir.js.map +1 -1
  258. package/dist/locale/getLocale.js.map +1 -1
  259. package/dist/locale/languageChange.js.map +1 -1
  260. package/dist/locale/nextFallbackLocale.js.map +1 -1
  261. package/dist/locale/normalizeLocale.js.map +1 -1
  262. package/dist/renderer/JsxRenderer.d.ts +3 -0
  263. package/dist/renderer/JsxRenderer.js +16 -0
  264. package/dist/renderer/JsxRenderer.js.map +1 -0
  265. package/dist/renderer/LitRenderer.d.ts +5 -5
  266. package/dist/renderer/LitRenderer.js +5 -10
  267. package/dist/renderer/LitRenderer.js.map +1 -1
  268. package/dist/renderer/directives/style-map.d.ts +13 -0
  269. package/dist/renderer/directives/style-map.js +59 -59
  270. package/dist/renderer/directives/style-map.js.map +1 -0
  271. package/dist/renderer/executeTemplate.d.ts +3 -4
  272. package/dist/renderer/executeTemplate.js +1 -19
  273. package/dist/renderer/executeTemplate.js.map +1 -1
  274. package/dist/sap/base/Log.js +698 -188
  275. package/dist/sap/base/assert.js +28 -1
  276. package/dist/sap/base/config/MemoryConfigurationProvider.js +20 -0
  277. package/dist/sap/base/security/URLListValidator.js +253 -6
  278. package/dist/sap/base/security/encodeCSS.js +34 -8
  279. package/dist/sap/base/security/encodeXML.js +47 -17
  280. package/dist/sap/base/security/sanitizeHTML.js +35 -13
  281. package/dist/sap/base/strings/toHex.js +27 -2
  282. package/dist/sap/base/util/now.js +24 -3
  283. package/dist/sap/base/util/uid.js +27 -0
  284. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +113 -98
  285. package/dist/ssr-dom-shim.d.ts +1 -0
  286. package/dist/ssr-dom-shim.js +12 -0
  287. package/dist/ssr-dom-shim.js.map +1 -0
  288. package/dist/ssr-dom.d.ts +1 -0
  289. package/dist/ssr-dom.js +3 -0
  290. package/dist/ssr-dom.js.map +1 -0
  291. package/dist/theming/CustomStyle.js +7 -5
  292. package/dist/theming/CustomStyle.js.map +1 -1
  293. package/dist/theming/ThemeLoaded.js.map +1 -1
  294. package/dist/theming/ThemeRegistered.d.ts +4 -0
  295. package/dist/theming/ThemeRegistered.js +11 -0
  296. package/dist/theming/ThemeRegistered.js.map +1 -0
  297. package/dist/theming/applyTheme.js +9 -8
  298. package/dist/theming/applyTheme.js.map +1 -1
  299. package/dist/theming/getConstructableStyle.d.ts +2 -2
  300. package/dist/theming/getConstructableStyle.js +3 -3
  301. package/dist/theming/getConstructableStyle.js.map +1 -1
  302. package/dist/theming/getEffectiveStyle.d.ts +1 -1
  303. package/dist/theming/getEffectiveStyle.js +5 -12
  304. package/dist/theming/getEffectiveStyle.js.map +1 -1
  305. package/dist/theming/getStylesString.d.ts +1 -1
  306. package/dist/theming/getStylesString.js +2 -4
  307. package/dist/theming/getStylesString.js.map +1 -1
  308. package/dist/theming/getThemeDesignerTheme.js +2 -1
  309. package/dist/theming/getThemeDesignerTheme.js.map +1 -1
  310. package/dist/thirdparty/_merge.js.map +1 -1
  311. package/dist/thirdparty/isPlainObject.js.map +1 -1
  312. package/dist/thirdparty/merge.js.map +1 -1
  313. package/dist/thirdparty/preact/jsx.d.ts +2616 -0
  314. package/dist/thirdparty/preact/jsxRuntime.module.d.ts +62 -0
  315. package/dist/thirdparty/preact/jsxRuntime.module.js +2 -0
  316. package/dist/thirdparty/preact/preact.module.d.ts +398 -0
  317. package/dist/thirdparty/preact/preact.module.js +2 -0
  318. package/dist/types/AnimationMode.d.ts +0 -8
  319. package/dist/types/AnimationMode.js +0 -8
  320. package/dist/types/AnimationMode.js.map +1 -1
  321. package/dist/types/CalendarType.d.ts +0 -9
  322. package/dist/types/CalendarType.js +0 -9
  323. package/dist/types/CalendarType.js.map +1 -1
  324. package/dist/types/InvisibleMessageMode.d.ts +5 -10
  325. package/dist/types/InvisibleMessageMode.js +4 -11
  326. package/dist/types/InvisibleMessageMode.js.map +1 -1
  327. package/dist/types/ItemNavigationBehavior.d.ts +0 -6
  328. package/dist/types/ItemNavigationBehavior.js +0 -6
  329. package/dist/types/ItemNavigationBehavior.js.map +1 -1
  330. package/dist/types/MovePlacement.d.ts +20 -0
  331. package/dist/types/MovePlacement.js +22 -0
  332. package/dist/types/MovePlacement.js.map +1 -0
  333. package/dist/types/NavigationMode.d.ts +0 -8
  334. package/dist/types/NavigationMode.js +0 -8
  335. package/dist/types/NavigationMode.js.map +1 -1
  336. package/dist/types/Orientation.d.ts +16 -0
  337. package/dist/types/Orientation.js +18 -0
  338. package/dist/types/Orientation.js.map +1 -0
  339. package/dist/types/ValueState.d.ts +3 -17
  340. package/dist/types/ValueState.js +3 -17
  341. package/dist/types/ValueState.js.map +1 -1
  342. package/dist/types.d.ts +37 -14
  343. package/dist/types.js.map +1 -1
  344. package/dist/updateShadowRoot.d.ts +1 -2
  345. package/dist/updateShadowRoot.js +4 -21
  346. package/dist/updateShadowRoot.js.map +1 -1
  347. package/dist/util/AccessibilityTextsHelper.d.ts +17 -0
  348. package/dist/util/AccessibilityTextsHelper.js +199 -0
  349. package/dist/util/AccessibilityTextsHelper.js.map +1 -0
  350. package/dist/util/Caret.js.map +1 -1
  351. package/dist/util/ColorConversion.d.ts +2 -1
  352. package/dist/util/ColorConversion.js +212 -197
  353. package/dist/util/ColorConversion.js.map +1 -1
  354. package/dist/util/FetchHelper.js.map +1 -1
  355. package/dist/util/FocusableElements.js +26 -14
  356. package/dist/util/FocusableElements.js.map +1 -1
  357. package/dist/util/HTMLSanitizer.js.map +1 -1
  358. package/dist/util/InvisibleMessage.js +2 -2
  359. package/dist/util/InvisibleMessage.js.map +1 -1
  360. package/dist/util/PopupUtils.d.ts +1 -3
  361. package/dist/util/PopupUtils.js +1 -15
  362. package/dist/util/PopupUtils.js.map +1 -1
  363. package/dist/util/SelectionAssistant.d.ts +12 -0
  364. package/dist/util/SelectionAssistant.js +79 -0
  365. package/dist/util/SelectionAssistant.js.map +1 -0
  366. package/dist/util/SlotsHelper.js.map +1 -1
  367. package/dist/util/StringHelper.d.ts +3 -1
  368. package/dist/util/StringHelper.js +15 -1
  369. package/dist/util/StringHelper.js.map +1 -1
  370. package/dist/util/TabbableElements.js +3 -10
  371. package/dist/util/TabbableElements.js.map +1 -1
  372. package/dist/util/arraysAreEqual.js.map +1 -1
  373. package/dist/util/clamp.js +2 -1
  374. package/dist/util/clamp.js.map +1 -1
  375. package/dist/util/createLinkInHead.d.ts +1 -1
  376. package/dist/util/createLinkInHead.js +1 -1
  377. package/dist/util/createLinkInHead.js.map +1 -1
  378. package/dist/util/debounce.js.map +1 -1
  379. package/dist/util/detectNavigatorLanguage.d.ts +2 -2
  380. package/dist/util/detectNavigatorLanguage.js +6 -1
  381. package/dist/util/detectNavigatorLanguage.js.map +1 -1
  382. package/dist/util/dragAndDrop/DragRegistry.d.ts +33 -0
  383. package/dist/util/dragAndDrop/DragRegistry.js +66 -0
  384. package/dist/util/dragAndDrop/DragRegistry.js.map +1 -0
  385. package/dist/util/dragAndDrop/findClosestPosition.d.ts +11 -0
  386. package/dist/util/dragAndDrop/findClosestPosition.js +102 -0
  387. package/dist/util/dragAndDrop/findClosestPosition.js.map +1 -0
  388. package/dist/util/dragAndDrop/handleDragOver.d.ts +16 -0
  389. package/dist/util/dragAndDrop/handleDragOver.js +42 -0
  390. package/dist/util/dragAndDrop/handleDragOver.js.map +1 -0
  391. package/dist/util/dragAndDrop/handleDrop.d.ts +5 -0
  392. package/dist/util/dragAndDrop/handleDrop.js +22 -0
  393. package/dist/util/dragAndDrop/handleDrop.js.map +1 -0
  394. package/dist/util/dragAndDrop/longDragOverHandler.d.ts +2 -0
  395. package/dist/util/dragAndDrop/longDragOverHandler.js +25 -0
  396. package/dist/util/dragAndDrop/longDragOverHandler.js.map +1 -0
  397. package/dist/util/escapeRegex.js.map +1 -1
  398. package/dist/util/fixSafariActiveState.d.ts +2 -0
  399. package/dist/util/fixSafariActiveState.js +11 -0
  400. package/dist/util/fixSafariActiveState.js.map +1 -0
  401. package/dist/util/formatMessage.js.map +1 -1
  402. package/dist/util/generateHighlightedMarkup.js.map +1 -1
  403. package/dist/util/getActiveElement.js.map +1 -1
  404. package/dist/util/getClassCopy.d.ts +142 -104
  405. package/dist/util/getClassCopy.js.map +1 -1
  406. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -2
  407. package/dist/util/getDesigntimePropertyAsArray.js +2 -1
  408. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -1
  409. package/dist/util/getEffectiveContentDensity.js.map +1 -1
  410. package/dist/util/getEffectiveScrollbarStyle.d.ts +1 -1
  411. package/dist/util/getEffectiveScrollbarStyle.js +31 -1
  412. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -1
  413. package/dist/util/getFastNavigationGroups.js.map +1 -1
  414. package/dist/util/getFileExtension.js.map +1 -1
  415. package/dist/util/getNormalizedTarget.js.map +1 -1
  416. package/dist/util/getSingletonElementInstance.d.ts +10 -1
  417. package/dist/util/getSingletonElementInstance.js +11 -2
  418. package/dist/util/getSingletonElementInstance.js.map +1 -1
  419. package/dist/util/hash2str.d.ts +1 -0
  420. package/dist/util/hash2str.js +14 -0
  421. package/dist/util/hash2str.js.map +1 -0
  422. package/dist/util/isElementClickable.js.map +1 -1
  423. package/dist/util/isElementHidden.js.map +1 -1
  424. package/dist/util/isElementInView.js.map +1 -1
  425. package/dist/util/isElementTabbable.js +2 -2
  426. package/dist/util/isElementTabbable.js.map +1 -1
  427. package/dist/util/isValidPropertyName.js.map +1 -1
  428. package/dist/util/toLowercaseEnumValue.d.ts +3 -0
  429. package/dist/util/toLowercaseEnumValue.js +4 -0
  430. package/dist/util/toLowercaseEnumValue.js.map +1 -0
  431. package/dist/util/whenDOMReady.js.map +1 -1
  432. package/dist/util/willShowContent.js.map +1 -1
  433. package/dist/validateThemeRoot.js +15 -13
  434. package/dist/validateThemeRoot.js.map +1 -1
  435. package/index.js +205 -1
  436. package/package-scripts.cjs +74 -0
  437. package/package.json +31 -9
  438. package/src/css/FontFace.css +47 -17
  439. package/src/css/SystemCSSVars.css +0 -8
  440. package/src/thirdparty/preact/jsxRuntime.module.js +2 -0
  441. package/src/thirdparty/preact/preact.module.js +2 -0
  442. package/src/thirdparty/preact/version.txt +1 -0
  443. package/tsconfig.json +19 -12
  444. package/.eslintignore +0 -15
  445. package/bundle.esm.js +0 -60
  446. package/config/wdio.conf.js +0 -1
  447. package/dist/CSP.d.ts +0 -30
  448. package/dist/CSP.js +0 -51
  449. package/dist/CSP.js.map +0 -1
  450. package/dist/MarkedEvents.d.ts +0 -9
  451. package/dist/MarkedEvents.js +0 -15
  452. package/dist/MarkedEvents.js.map +0 -1
  453. package/dist/StaticArea.d.ts +0 -0
  454. package/dist/StaticArea.js +0 -6
  455. package/dist/StaticArea.js.map +0 -1
  456. package/dist/StaticAreaItem.d.ts +0 -36
  457. package/dist/StaticAreaItem.js +0 -99
  458. package/dist/StaticAreaItem.js.map +0 -1
  459. package/dist/api.json +0 -1
  460. package/dist/assets/bundle.esm.07cba5ff.js +0 -56
  461. package/dist/assets-meta/IconCollectionsAlias.d.ts +0 -17
  462. package/dist/assets-meta/IconCollectionsAlias.js +0 -18
  463. package/dist/assets-meta/IconCollectionsAlias.js.map +0 -1
  464. package/dist/config/RTL.d.ts +0 -7
  465. package/dist/config/RTL.js +0 -34
  466. package/dist/config/RTL.js.map +0 -1
  467. package/dist/config/ThemeRoots.d.ts +0 -4
  468. package/dist/config/ThemeRoots.js +0 -28
  469. package/dist/config/ThemeRoots.js.map +0 -1
  470. package/dist/decorators/fastNavigation.d.ts +0 -7
  471. package/dist/decorators/fastNavigation.js +0 -13
  472. package/dist/decorators/fastNavigation.js.map +0 -1
  473. package/dist/decorators/languageAware.d.ts +0 -7
  474. package/dist/decorators/languageAware.js +0 -13
  475. package/dist/decorators/languageAware.js.map +0 -1
  476. package/dist/decorators/themeAware.d.ts +0 -7
  477. package/dist/decorators/themeAware.js +0 -13
  478. package/dist/decorators/themeAware.js.map +0 -1
  479. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +0 -11
  480. package/dist/theming/getEffectiveLinksHrefs.d.ts +0 -3
  481. package/dist/theming/getEffectiveLinksHrefs.js +0 -17
  482. package/dist/theming/getEffectiveLinksHrefs.js.map +0 -1
  483. package/dist/theming/preloadLinks.d.ts +0 -3
  484. package/dist/theming/preloadLinks.js +0 -19
  485. package/dist/theming/preloadLinks.js.map +0 -1
  486. package/dist/types/CSSColor.d.ts +0 -16
  487. package/dist/types/CSSColor.js +0 -19
  488. package/dist/types/CSSColor.js.map +0 -1
  489. package/dist/types/DOMReference.d.ts +0 -17
  490. package/dist/types/DOMReference.js +0 -25
  491. package/dist/types/DOMReference.js.map +0 -1
  492. package/dist/types/DataType.d.ts +0 -25
  493. package/dist/types/DataType.js +0 -44
  494. package/dist/types/DataType.js.map +0 -1
  495. package/dist/types/Float.d.ts +0 -18
  496. package/dist/types/Float.js +0 -22
  497. package/dist/types/Float.js.map +0 -1
  498. package/dist/types/Integer.d.ts +0 -18
  499. package/dist/types/Integer.js +0 -22
  500. package/dist/types/Integer.js.map +0 -1
  501. package/dist/util/AriaLabelHelper.d.ts +0 -6
  502. package/dist/util/AriaLabelHelper.js +0 -44
  503. package/dist/util/AriaLabelHelper.js.map +0 -1
  504. package/dist/util/createStyleInHead.d.ts +0 -8
  505. package/dist/util/createStyleInHead.js +0 -18
  506. package/dist/util/createStyleInHead.js.map +0 -1
  507. package/lib/generate-asset-parameters/index.js +0 -25
  508. package/lib/generate-styles/index.js +0 -26
  509. package/lib/generate-version-info/index.js +0 -32
  510. package/package-scripts.js +0 -67
  511. package/src/AssetRegistry.ts +0 -11
  512. package/src/Boot.ts +0 -61
  513. package/src/CSP.ts +0 -66
  514. package/src/CustomElementsRegistry.ts +0 -98
  515. package/src/CustomElementsScope.ts +0 -33
  516. package/src/CustomElementsScopeUtils.ts +0 -115
  517. package/src/DOMObserver.ts +0 -28
  518. package/src/Device.ts +0 -124
  519. package/src/EventProvider.ts +0 -87
  520. package/src/FeaturesRegistry.ts +0 -14
  521. package/src/FontFace.ts +0 -31
  522. package/src/InitialConfiguration.ts +0 -207
  523. package/src/Keys.ts +0 -295
  524. package/src/ManagedStyles.ts +0 -92
  525. package/src/MarkedEvents.ts +0 -20
  526. package/src/MediaRange.ts +0 -110
  527. package/src/PropertiesFileFormat.ts +0 -95
  528. package/src/Render.ts +0 -180
  529. package/src/RenderQueue.ts +0 -71
  530. package/src/Runtimes.ts +0 -114
  531. package/src/StaticArea.ts +0 -3
  532. package/src/StaticAreaItem.ts +0 -113
  533. package/src/SystemCSSVars.ts +0 -10
  534. package/src/Theming.ts +0 -4
  535. package/src/UI5Element.ts +0 -1155
  536. package/src/UI5ElementMetadata.ts +0 -389
  537. package/src/animations/AnimationQueue.ts +0 -43
  538. package/src/animations/animate.ts +0 -64
  539. package/src/animations/scroll.ts +0 -21
  540. package/src/animations/slideDown.ts +0 -72
  541. package/src/animations/slideUp.ts +0 -67
  542. package/src/asset-registries/Icons.ts +0 -162
  543. package/src/asset-registries/Illustrations.ts +0 -75
  544. package/src/asset-registries/LocaleData.ts +0 -172
  545. package/src/asset-registries/Themes.ts +0 -67
  546. package/src/asset-registries/i18n.ts +0 -118
  547. package/src/assets-meta/IconCollectionsAlias.ts +0 -18
  548. package/src/config/AnimationMode.ts +0 -33
  549. package/src/config/CalendarType.ts +0 -23
  550. package/src/config/FormatSettings.ts +0 -21
  551. package/src/config/Icons.ts +0 -59
  552. package/src/config/Language.ts +0 -72
  553. package/src/config/NoConflict.ts +0 -67
  554. package/src/config/RTL.ts +0 -41
  555. package/src/config/Theme.ts +0 -64
  556. package/src/config/ThemeRoots.ts +0 -41
  557. package/src/decorators/customElement.ts +0 -17
  558. package/src/decorators/event.ts +0 -28
  559. package/src/decorators/fastNavigation.ts +0 -14
  560. package/src/decorators/languageAware.ts +0 -14
  561. package/src/decorators/property.ts +0 -30
  562. package/src/decorators/slot.ts +0 -49
  563. package/src/decorators/themeAware.ts +0 -14
  564. package/src/delegate/ItemNavigation.ts +0 -393
  565. package/src/delegate/ResizeHandler.ts +0 -95
  566. package/src/delegate/ScrollEnablement.ts +0 -221
  567. package/src/features/F6Navigation.ts +0 -141
  568. package/src/features/OpenUI5Element.ts +0 -11
  569. package/src/features/OpenUI5Enablement.ts +0 -117
  570. package/src/features/OpenUI5Support.ts +0 -148
  571. package/src/getSharedResource.ts +0 -30
  572. package/src/i18nBundle.ts +0 -108
  573. package/src/locale/Locale.ts +0 -101
  574. package/src/locale/RTLAwareRegistry.ts +0 -16
  575. package/src/locale/applyDirection.ts +0 -18
  576. package/src/locale/directionChange.ts +0 -34
  577. package/src/locale/getEffectiveDir.ts +0 -28
  578. package/src/locale/getLocale.ts +0 -46
  579. package/src/locale/languageChange.ts +0 -24
  580. package/src/locale/nextFallbackLocale.ts +0 -28
  581. package/src/locale/normalizeLocale.ts +0 -56
  582. package/src/renderer/LitRenderer.ts +0 -60
  583. package/src/renderer/directives/style-map.js +0 -72
  584. package/src/renderer/executeTemplate.ts +0 -40
  585. package/src/theming/CustomStyle.ts +0 -62
  586. package/src/theming/ThemeLoaded.ts +0 -24
  587. package/src/theming/applyTheme.ts +0 -90
  588. package/src/theming/getConstructableStyle.ts +0 -31
  589. package/src/theming/getEffectiveLinksHrefs.ts +0 -26
  590. package/src/theming/getEffectiveStyle.ts +0 -41
  591. package/src/theming/getStylesString.ts +0 -15
  592. package/src/theming/getThemeDesignerTheme.ts +0 -101
  593. package/src/theming/preloadLinks.ts +0 -24
  594. package/src/thirdparty/_merge.ts +0 -32
  595. package/src/thirdparty/isPlainObject.ts +0 -18
  596. package/src/thirdparty/merge.ts +0 -5
  597. package/src/types/AnimationMode.ts +0 -33
  598. package/src/types/CSSColor.ts +0 -20
  599. package/src/types/CalendarType.ts +0 -38
  600. package/src/types/DOMReference.ts +0 -28
  601. package/src/types/DataType.ts +0 -51
  602. package/src/types/Float.ts +0 -25
  603. package/src/types/Integer.ts +0 -25
  604. package/src/types/InvisibleMessageMode.ts +0 -27
  605. package/src/types/ItemNavigationBehavior.ts +0 -26
  606. package/src/types/NavigationMode.ts +0 -33
  607. package/src/types/ValueState.ts +0 -47
  608. package/src/types.ts +0 -30
  609. package/src/updateShadowRoot.ts +0 -37
  610. package/src/util/AriaLabelHelper.ts +0 -63
  611. package/src/util/Caret.ts +0 -28
  612. package/src/util/ColorConversion.ts +0 -399
  613. package/src/util/FetchHelper.ts +0 -31
  614. package/src/util/FocusableElements.ts +0 -82
  615. package/src/util/HTMLSanitizer.ts +0 -9
  616. package/src/util/InvisibleMessage.ts +0 -69
  617. package/src/util/PopupUtils.ts +0 -112
  618. package/src/util/SlotsHelper.ts +0 -39
  619. package/src/util/StringHelper.ts +0 -26
  620. package/src/util/TabbableElements.ts +0 -70
  621. package/src/util/arraysAreEqual.ts +0 -15
  622. package/src/util/clamp.ts +0 -12
  623. package/src/util/createLinkInHead.ts +0 -25
  624. package/src/util/createStyleInHead.ts +0 -20
  625. package/src/util/debounce.ts +0 -18
  626. package/src/util/detectNavigatorLanguage.ts +0 -13
  627. package/src/util/escapeRegex.ts +0 -11
  628. package/src/util/formatMessage.ts +0 -24
  629. package/src/util/generateHighlightedMarkup.ts +0 -43
  630. package/src/util/getActiveElement.ts +0 -11
  631. package/src/util/getClassCopy.ts +0 -12
  632. package/src/util/getDesigntimePropertyAsArray.ts +0 -4
  633. package/src/util/getEffectiveContentDensity.ts +0 -5
  634. package/src/util/getEffectiveScrollbarStyle.ts +0 -5
  635. package/src/util/getFastNavigationGroups.ts +0 -63
  636. package/src/util/getFileExtension.ts +0 -21
  637. package/src/util/getNormalizedTarget.ts +0 -16
  638. package/src/util/getSingletonElementInstance.ts +0 -13
  639. package/src/util/isElementClickable.ts +0 -19
  640. package/src/util/isElementHidden.ts +0 -9
  641. package/src/util/isElementInView.ts +0 -15
  642. package/src/util/isElementTabbable.ts +0 -37
  643. package/src/util/isValidPropertyName.ts +0 -29
  644. package/src/util/whenDOMReady.ts +0 -13
  645. package/src/util/willShowContent.ts +0 -7
  646. package/src/validateThemeRoot.ts +0 -58
  647. package/used-modules.txt +0 -10
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsx-dev-runtime.js","sourceRoot":"","sources":["../src/jsx-dev-runtime.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,QAAQ,IAAI,SAAS,EAAE,MAAM,0CAA0C,CAAC;AACpG,OAAO,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAG/D,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,6DAA6D;AAC7D,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC;AAE1B,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,EAAE;IACvB,MAAM,KAAK,GAAwB,KAAK,CAAC,KAAK,CAAC;IAC/C,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACjD,IAAI,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACpD,uEAAuE;QACxE,CAAC;IACF,CAAC;IACD,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;AACnB,CAAC,CAAC;AAEF,wDAAwD;AACxD,SAAS,cAAc,CAAC,IAAc;IACrC,8CAA8C;IAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACzE,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAgC,EAAE,KAA0B;IACxF,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,OAAO;IACR,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,CAAC;IACxC,MAAM,mBAAmB,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,iBAAiB,EAAE,CAAC;IACnE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACjC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9D,sCAAsC;YACtC,OAAO,CAAC,IAAI,CAAC,mDAAmD,IAAI,UAAU,gBAAgB,CAAC,IAAI,CAAC,eAAe,GAAG,gJAAgJ,CAAC,CAAC;QACzQ,CAAC;IACF,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAA0B,EAAE,OAAa;IACjE,OAAO,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,IAAgC,EAAE,KAA0B,EAAE,GAAW;IAC/F,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAEzC,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAEjC,OAAO,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAe,CAAC;AAC/C,CAAC","sourcesContent":["// eslint-disable-next-line import/extensions\nimport { jsxDEV as _jsxDEV, Fragment as _Fragment } from \"./thirdparty/preact/jsxRuntime.module.js\";\nimport { options } from \"./thirdparty/preact/preact.module.js\";\nimport { type VNode } from \"./jsx-runtime.js\";\nimport type UI5Element from \"./UI5Element.js\";\nimport { isUI5ElementClass, preprocess } from \"./jsx-utils.js\";\nimport { kebabToCamelCase } from \"./util/StringHelper.js\";\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nconst old = options.vnode;\n\noptions.vnode = vnode => {\n\tconst props: Record<string, any> = vnode.props;\n\tif (props !== null && typeof props === \"object\") {\n\t\tif (props.class && typeof props.class === \"object\") {\n\t\t\t// props.class = classObjToStr(props.class as Record<string, boolean>);\n\t\t}\n\t}\n\told && old(vnode);\n};\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nfunction isBoundOrArrow(func: Function): boolean {\n\t// TODO improve => detection after func params\n\treturn func.name.startsWith(\"bound \") || func.toString().includes(\"=>\");\n}\n\nfunction checkAttributeUsage(type: string | typeof UI5Element, props: Record<string, any>) {\n\tif (!isUI5ElementClass(type)) {\n\t\treturn;\n\t}\n\n\tconst tag = type.getMetadata().getTag();\n\tconst componentAttributes = type.getMetadata().getAttributesList();\n\tObject.keys(props).forEach(prop => {\n\t\tif (prop.includes(\"-\") && componentAttributes.includes(prop)) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.warn(`Avoid attribute usage in favour of properties ['${prop}' --> '${kebabToCamelCase(prop)}'] for tag [${tag}]. Check stack trace to find out which template causes this. Attributes are not type-checked and boolean conversion is manual and error-prone.`);\n\t\t}\n\t});\n}\n\nexport function Fragment(props: Record<string, any>, context?: any) {\n\treturn _Fragment(props, context);\n}\n\nexport function jsxDEV(type: string | typeof UI5Element, props: Record<string, any>, key: string): VNode<any> {\n\tconst tag = preprocess(type, props, key);\n\n\tcheckAttributeUsage(type, props);\n\n\treturn _jsxDEV(tag, props, key) as VNode<any>;\n}\n"]}
@@ -0,0 +1,50 @@
1
+ import type { JSX as _JSX } from "./thirdparty/preact/jsxRuntime.module.d.ts";
2
+ import { type VNode as _VNode } from "./thirdparty/preact/preact.module.js";
3
+ import type UI5Element from "./UI5Element.js";
4
+ import { jsxDEV } from "./jsx-dev-runtime.js";
5
+ declare namespace JSX {
6
+ type JSXWithClassObj = {
7
+ [K in keyof _JSX.IntrinsicElements]: Omit<_JSX.IntrinsicElements[K], "class"> & {
8
+ class?: object | string | undefined;
9
+ };
10
+ };
11
+ type AllHTMLAttributesWithClassObj<T extends EventTarget> = Omit<_JSX.AllHTMLAttributes<T>, "class"> & {
12
+ class?: object | string | undefined;
13
+ };
14
+ type HTMLAttributesWithClassObj<T extends EventTarget> = Omit<_JSX.HTMLAttributes<T>, "class"> & {
15
+ class?: object | string | undefined;
16
+ };
17
+ interface IntrinsicElements extends JSXWithClassObj {
18
+ }
19
+ type ElementClass = UI5Element;
20
+ interface Element extends VNode<any> {
21
+ }
22
+ interface ElementAttributesProperty<T extends EventTarget> {
23
+ _jsxProps: HTMLAttributes<T>;
24
+ }
25
+ interface AllHTMLAttributes<T extends EventTarget> extends AllHTMLAttributesWithClassObj<T> {
26
+ }
27
+ interface HTMLAttributes<T extends EventTarget> extends HTMLAttributesWithClassObj<T> {
28
+ }
29
+ interface DOMAttributes<T extends EventTarget> extends _JSX.DOMAttributes<T> {
30
+ }
31
+ interface SVGAttributes extends _JSX.SVGAttributes {
32
+ }
33
+ type AriaRole = _JSX.AriaRole;
34
+ type MouseEventHandler<T extends EventTarget> = _JSX.MouseEventHandler<T>;
35
+ type TargetedMouseEvent<Target extends EventTarget> = _JSX.TargetedMouseEvent<Target>;
36
+ type TargetedInputEvent<Target extends EventTarget> = _JSX.TargetedInputEvent<Target>;
37
+ }
38
+ export declare function Fragment(props: Record<string, any>, context?: any): import("./thirdparty/preact/preact.module.js").ComponentChildren;
39
+ export declare function jsx(type: string | typeof UI5Element, props: Record<string, any>, key: string): VNode<any>;
40
+ export declare function jsxs(type: string | typeof UI5Element, props: Record<string, any>, key: string): VNode<any>;
41
+ export { type jsxDEV };
42
+ export type ComponentChild = VNode<any> | object | string | number | bigint | boolean | null | undefined;
43
+ export type ComponentChildren = ComponentChild[] | ComponentChild;
44
+ export type VNode<T = {}> = Omit<_VNode<T>, "type" | "props"> & {
45
+ type: string | typeof UI5Element;
46
+ props: T & {
47
+ children: ComponentChildren;
48
+ };
49
+ };
50
+ export { JSX };
@@ -0,0 +1,27 @@
1
+ // eslint-disable-next-line import/extensions
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "./thirdparty/preact/jsxRuntime.module.js";
3
+ import { options } from "./thirdparty/preact/preact.module.js";
4
+ import { preprocess } from "./jsx-utils.js";
5
+ // eslint-disable-next-line @typescript-eslint/unbound-method
6
+ const old = options.vnode;
7
+ options.vnode = vnode => {
8
+ const props = vnode.props;
9
+ if (props !== null && typeof props === "object") {
10
+ if (props.class && typeof props.class === "object") {
11
+ // props.class = classObjToStr(props.class as Record<string, boolean>);
12
+ }
13
+ }
14
+ old && old(vnode);
15
+ };
16
+ export function Fragment(props, context) {
17
+ return _Fragment(props, context);
18
+ }
19
+ export function jsx(type, props, key) {
20
+ const tag = preprocess(type, props, key);
21
+ return _jsx(tag, props, key);
22
+ }
23
+ export function jsxs(type, props, key) {
24
+ const tag = preprocess(type, props, key);
25
+ return _jsxs(tag, props, key);
26
+ }
27
+ //# sourceMappingURL=jsx-runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsx-runtime.js","sourceRoot":"","sources":["../src/jsx-runtime.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,OAAO,EAAE,GAAG,IAAI,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,QAAQ,IAAI,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAE7G,OAAO,EAAE,OAAO,EAAwB,MAAM,sCAAsC,CAAC;AAErF,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAwB5C,6DAA6D;AAC7D,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC;AAE1B,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,EAAE;IACvB,MAAM,KAAK,GAAwB,KAAK,CAAC,KAAK,CAAC;IAC/C,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACjD,IAAI,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACpD,uEAAuE;QACxE,CAAC;IACF,CAAC;IACD,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,KAA0B,EAAE,OAAa;IACjE,OAAO,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAClC,CAAC;AACD,MAAM,UAAU,GAAG,CAAC,IAAgC,EAAE,KAA0B,EAAE,GAAW;IAC5F,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAe,CAAC;AAC5C,CAAC;AACD,MAAM,UAAU,IAAI,CAAC,IAAgC,EAAE,KAA0B,EAAE,GAAW;IAC7F,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAEzC,OAAO,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAe,CAAC;AAC7C,CAAC","sourcesContent":["// eslint-disable-next-line import/extensions\nimport { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"./thirdparty/preact/jsxRuntime.module.js\";\nimport type { JSX as _JSX } from \"./thirdparty/preact/jsxRuntime.module.d.ts\";\nimport { options, type VNode as _VNode } from \"./thirdparty/preact/preact.module.js\";\nimport type UI5Element from \"./UI5Element.js\";\nimport { preprocess } from \"./jsx-utils.js\";\nimport { jsxDEV } from \"./jsx-dev-runtime.js\";\n\n// eslint-disable-next-line @typescript-eslint/no-namespace\ndeclare namespace JSX {\n\ttype JSXWithClassObj = { [K in keyof _JSX.IntrinsicElements]: Omit<_JSX.IntrinsicElements[K], \"class\"> & { class?: object | string | undefined } };\n\ttype AllHTMLAttributesWithClassObj<T extends EventTarget> = Omit<_JSX.AllHTMLAttributes<T>, \"class\"> & { class?: object | string | undefined }\n\ttype HTMLAttributesWithClassObj<T extends EventTarget> = Omit<_JSX.HTMLAttributes<T>, \"class\"> & { class?: object | string | undefined }\n export interface IntrinsicElements extends JSXWithClassObj {}\n export type ElementClass = UI5Element;\n\texport interface Element extends VNode<any> {}\n export interface ElementAttributesProperty<T extends EventTarget> {\n\t\t_jsxProps: HTMLAttributes<T>;\n\t}\n\texport interface AllHTMLAttributes<T extends EventTarget> extends AllHTMLAttributesWithClassObj<T> {}\n\texport interface HTMLAttributes<T extends EventTarget> extends HTMLAttributesWithClassObj<T> {}\n\texport interface DOMAttributes<T extends EventTarget> extends _JSX.DOMAttributes<T> {}\n\texport interface SVGAttributes extends _JSX.SVGAttributes {}\n\texport type AriaRole = _JSX.AriaRole;\n\texport type MouseEventHandler<T extends EventTarget> = _JSX.MouseEventHandler<T>;\n\texport type TargetedMouseEvent<Target extends EventTarget> = _JSX.TargetedMouseEvent<Target>;\n\texport type TargetedInputEvent<Target extends EventTarget> = _JSX.TargetedInputEvent<Target>;\n}\n\n// eslint-disable-next-line @typescript-eslint/unbound-method\nconst old = options.vnode;\n\noptions.vnode = vnode => {\n\tconst props: Record<string, any> = vnode.props;\n\tif (props !== null && typeof props === \"object\") {\n\t\tif (props.class && typeof props.class === \"object\") {\n\t\t\t// props.class = classObjToStr(props.class as Record<string, boolean>);\n\t\t}\n\t}\n\told && old(vnode);\n};\n\nexport function Fragment(props: Record<string, any>, context?: any) {\n\treturn _Fragment(props, context);\n}\nexport function jsx(type: string | typeof UI5Element, props: Record<string, any>, key: string): VNode<any> {\n\tconst tag = preprocess(type, props, key);\n\n\treturn _jsx(tag, props, key) as VNode<any>;\n}\nexport function jsxs(type: string | typeof UI5Element, props: Record<string, any>, key: string): VNode<any> {\n\tconst tag = preprocess(type, props, key);\n\n\treturn _jsxs(tag, props, key) as VNode<any>;\n}\nexport { type jsxDEV };\n\nexport type ComponentChild =\n\t| VNode<any>\n\t| object\n\t| string\n\t| number\n\t| bigint\n\t| boolean\n\t| null\n\t| undefined;\nexport type ComponentChildren = ComponentChild[] | ComponentChild;\n\nexport type VNode<T = {}> = Omit<_VNode<T>, \"type\" | \"props\"> & { type: string | typeof UI5Element, props: T & { children: ComponentChildren } };\n\nexport { JSX };\n"]}
@@ -0,0 +1,3 @@
1
+ import type UI5Element from "./UI5Element.js";
2
+ export declare function isUI5ElementClass(type: string | typeof UI5Element): type is typeof UI5Element;
3
+ export declare function preprocess(type: string | typeof UI5Element, props: Record<string, any>, key: string): string;
@@ -0,0 +1,39 @@
1
+ import hash2str from "./util/hash2str.js";
2
+ import { pascalToKebabCase } from "./util/StringHelper.js";
3
+ function convertEventScoping(type, props, key) {
4
+ const events = type.getMetadata().getEvents();
5
+ Object.keys(props).forEach(prop => {
6
+ if (prop.startsWith("on")) {
7
+ // Exteract the kebab-case event: onChange - change, onSelectionChange - selection-change, etc.
8
+ const pascalEvent = prop.slice("on".length);
9
+ const kebabCaseEvent = pascalToKebabCase(pascalEvent);
10
+ // Attach for the "ui5-" preffixed event
11
+ if (kebabCaseEvent in events) {
12
+ if ((prop !== "onClick")) {
13
+ props[`onui5-${kebabCaseEvent}`] = props[prop];
14
+ // TODO keep native events for now, find a way to mark them for runtime
15
+ delete props[prop];
16
+ }
17
+ }
18
+ }
19
+ });
20
+ }
21
+ export function isUI5ElementClass(type) {
22
+ return typeof type === "function" && "getMetadata" in type;
23
+ }
24
+ export function preprocess(type, props, key) {
25
+ let tag;
26
+ if (isUI5ElementClass(type)) {
27
+ tag = type.getMetadata().getTag();
28
+ convertEventScoping(type, props, key);
29
+ }
30
+ else {
31
+ tag = type;
32
+ }
33
+ // convert class object to string
34
+ if (typeof props.class === "object") {
35
+ props.class = hash2str(props.class);
36
+ }
37
+ return tag;
38
+ }
39
+ //# sourceMappingURL=jsx-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsx-utils.js","sourceRoot":"","sources":["../src/jsx-utils.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,SAAS,mBAAmB,CAAC,IAAuB,EAAE,KAA0B,EAAE,GAAW;IAC5F,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,SAAS,EAAE,CAAC;IAE9C,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACjC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,+FAA+F;YAC/F,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC5C,MAAM,cAAc,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;YAEtD,wCAAwC;YACxC,IAAI,cAAc,IAAI,MAAM,EAAE,CAAC;gBAC9B,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC;oBAC1B,KAAK,CAAC,SAAS,cAAc,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC/C,uEAAuE;oBACvE,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC;gBACpB,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAgC;IACjE,OAAO,OAAO,IAAI,KAAK,UAAU,IAAI,aAAa,IAAI,IAAI,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAgC,EAAE,KAA0B,EAAE,GAAW;IACnG,IAAI,GAAW,CAAC;IAChB,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,CAAC;QAClC,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IACvC,CAAC;SAAM,CAAC;QACP,GAAG,GAAG,IAAI,CAAC;IACZ,CAAC;IAED,iCAAiC;IACjC,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,GAAG,CAAC;AACZ,CAAC","sourcesContent":["import type UI5Element from \"./UI5Element.js\";\nimport hash2str from \"./util/hash2str.js\";\nimport { pascalToKebabCase } from \"./util/StringHelper.js\";\n\nfunction convertEventScoping(type: typeof UI5Element, props: Record<string, any>, key: string) {\n\tconst events = type.getMetadata().getEvents();\n\n\tObject.keys(props).forEach(prop => {\n\t\tif (prop.startsWith(\"on\")) {\n\t\t\t// Exteract the kebab-case event: onChange - change, onSelectionChange - selection-change, etc.\n\t\t\tconst pascalEvent = prop.slice(\"on\".length);\n\t\t\tconst kebabCaseEvent = pascalToKebabCase(pascalEvent);\n\n\t\t\t// Attach for the \"ui5-\" preffixed event\n\t\t\tif (kebabCaseEvent in events) {\n\t\t\t\tif ((prop !== \"onClick\")) {\n\t\t\t\t\tprops[`onui5-${kebabCaseEvent}`] = props[prop];\n\t\t\t\t\t// TODO keep native events for now, find a way to mark them for runtime\n\t\t\t\t\tdelete props[prop];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n}\n\nexport function isUI5ElementClass(type: string | typeof UI5Element): type is typeof UI5Element {\n\treturn typeof type === \"function\" && \"getMetadata\" in type;\n}\n\nexport function preprocess(type: string | typeof UI5Element, props: Record<string, any>, key: string) {\n\tlet tag: string;\n\tif (isUI5ElementClass(type)) {\n\t\ttag = type.getMetadata().getTag();\n\t\tconvertEventScoping(type, props, key);\n\t} else {\n\t\ttag = type;\n\t}\n\n\t// convert class object to string\n\tif (typeof props.class === \"object\") {\n\t\tprops.class = hash2str(props.class);\n\t}\n\n\treturn tag;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Locale.js","sourceRoot":"","sources":["../../src/locale/Locale.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Locale.js","sourceRoot":"","sources":["../../src/locale/Locale.ts"],"names":[],"mappings":"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","sourcesContent":["import { DEFAULT_LANGUAGE } from \"../generated/AssetParameters.js\";\n\nconst rLocale = /^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i;\n\nclass Locale {\n\tsLocaleId: string;\n\tsLanguage: string;\n\tsScript: string;\n\tsRegion: string;\n\tsVariant: string | null;\n\tsExtension: string | null;\n\tsPrivateUse: string | null;\n\n\tconstructor(sLocaleId: string) {\n\t\tconst aResult = rLocale.exec(sLocaleId.replace(/_/g, \"-\"));\n\t\tif (aResult === null) {\n\t\t\tthrow new Error(`The given language ${sLocaleId} does not adhere to BCP-47.`);\n\t\t}\n\t\tthis.sLocaleId = sLocaleId;\n\t\tthis.sLanguage = aResult[1] || DEFAULT_LANGUAGE;\n\t\tthis.sScript = aResult[2] || \"\";\n\t\tthis.sRegion = aResult[3] || \"\";\n\t\tthis.sVariant = (aResult[4] && aResult[4].slice(1)) || null;\n\t\tthis.sExtension = (aResult[5] && aResult[5].slice(1)) || null;\n\t\tthis.sPrivateUse = aResult[6] || null;\n\t\tif (this.sLanguage) {\n\t\t\tthis.sLanguage = this.sLanguage.toLowerCase();\n\t\t}\n\t\tif (this.sScript) {\n\t\t\tthis.sScript = this.sScript.toLowerCase().replace(/^[a-z]/, s => {\n\t\t\t\treturn s.toUpperCase();\n\t\t\t});\n\t\t}\n\t\tif (this.sRegion) {\n\t\t\tthis.sRegion = this.sRegion.toUpperCase();\n\t\t}\n\t}\n\n\tgetLanguage() {\n\t\treturn this.sLanguage;\n\t}\n\n\tgetScript() {\n\t\treturn this.sScript;\n\t}\n\n\tgetRegion() {\n\t\treturn this.sRegion;\n\t}\n\n\tgetVariant() {\n\t\treturn this.sVariant;\n\t}\n\n\tgetVariantSubtags() {\n\t\treturn this.sVariant ? this.sVariant.split(\"-\") : [];\n\t}\n\n\tgetExtension() {\n\t\treturn this.sExtension;\n\t}\n\n\tgetExtensionSubtags() {\n\t\treturn this.sExtension ? this.sExtension.slice(2).split(\"-\") : [];\n\t}\n\n\tgetPrivateUse() {\n\t\treturn this.sPrivateUse;\n\t}\n\n\tgetPrivateUseSubtags() {\n\t\treturn this.sPrivateUse ? this.sPrivateUse.slice(2).split(\"-\") : [];\n\t}\n\n\thasPrivateUseSubtag(sSubtag: string) {\n\t\treturn this.getPrivateUseSubtags().indexOf(sSubtag) >= 0;\n\t}\n\n\ttoString() {\n\t\tconst r = [this.sLanguage];\n\n\t\tif (this.sScript) {\n\t\t\tr.push(this.sScript);\n\t\t}\n\t\tif (this.sRegion) {\n\t\t\tr.push(this.sRegion);\n\t\t}\n\t\tif (this.sVariant) {\n\t\t\tr.push(this.sVariant);\n\t\t}\n\t\tif (this.sExtension) {\n\t\t\tr.push(this.sExtension);\n\t\t}\n\t\tif (this.sPrivateUse) {\n\t\t\tr.push(this.sPrivateUse);\n\t\t}\n\t\treturn r.join(\"-\");\n\t}\n}\n\nexport default Locale;\n"]}
@@ -1,4 +1,4 @@
1
- import type UI5Element from "../UI5Element";
1
+ import type UI5Element from "../UI5Element.js";
2
2
  declare const markAsRtlAware: (klass: typeof UI5Element) => void;
3
3
  declare const isRtlAware: (klass: typeof UI5Element) => boolean;
4
4
  export { markAsRtlAware, isRtlAware, };
@@ -1 +1 @@
1
- {"version":3,"file":"RTLAwareRegistry.js","sourceRoot":"","sources":["../../src/locale/RTLAwareRegistry.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,GAAG,IAAI,GAAG,EAAqB,CAAC;AAEjD,MAAM,cAAc,GAAG,CAAC,KAAwB,EAAE,EAAE;IACnD,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACxB,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,KAAwB,EAAE,EAAE;IAC/C,OAAO,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,OAAO,EACN,cAAc,EACd,UAAU,GACV,CAAC"}
1
+ {"version":3,"file":"RTLAwareRegistry.js","sourceRoot":"","sources":["../../src/locale/RTLAwareRegistry.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,GAAG,IAAI,GAAG,EAAqB,CAAC;AAEjD,MAAM,cAAc,GAAG,CAAC,KAAwB,EAAE,EAAE;IACnD,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACxB,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,KAAwB,EAAE,EAAE;IAC/C,OAAO,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,OAAO,EACN,cAAc,EACd,UAAU,GACV,CAAC","sourcesContent":["import type UI5Element from \"../UI5Element.js\";\n\nconst rtlAwareSet = new Set<typeof UI5Element>();\n\nconst markAsRtlAware = (klass: typeof UI5Element) => {\n\trtlAwareSet.add(klass);\n};\n\nconst isRtlAware = (klass: typeof UI5Element) => {\n\treturn rtlAwareSet.has(klass);\n};\n\nexport {\n\tmarkAsRtlAware,\n\tisRtlAware,\n};\n"]}
@@ -1,8 +1,9 @@
1
1
  /**
2
2
  * Re-renders all RTL-aware UI5 Elements.
3
3
  *
4
- * <b>Note:</b> Call this method whenever you change the "dir" property anywhere in your HTML page.
5
- * <b>Example:</b> <code>document.body.dir = "rtl"; applyDirection();</code>
4
+ * **Note:** Call this method whenever you change the "dir" property anywhere in your HTML page.
5
+ *
6
+ * **Example:** `document.body.dir = "rtl"; applyDirection();`
6
7
  * @public
7
8
  * @returns {Promise<void>}
8
9
  */
@@ -3,8 +3,9 @@ import { fireDirectionChange } from "./directionChange.js";
3
3
  /**
4
4
  * Re-renders all RTL-aware UI5 Elements.
5
5
  *
6
- * <b>Note:</b> Call this method whenever you change the "dir" property anywhere in your HTML page.
7
- * <b>Example:</b> <code>document.body.dir = "rtl"; applyDirection();</code>
6
+ * **Note:** Call this method whenever you change the "dir" property anywhere in your HTML page.
7
+ *
8
+ * **Example:** `document.body.dir = "rtl"; applyDirection();`
8
9
  * @public
9
10
  * @returns {Promise<void>}
10
11
  */
@@ -1 +1 @@
1
- {"version":3,"file":"applyDirection.js","sourceRoot":"","sources":["../../src/locale/applyDirection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;;;;GAOG;AACH,MAAM,cAAc,GAAG,KAAK,IAAmB,EAAE;IAChD,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAC/C,MAAM,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACpC,MAAM,sBAAsB,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"applyDirection.js","sourceRoot":"","sources":["../../src/locale/applyDirection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;;;;;GAQG;AACH,MAAM,cAAc,GAAG,KAAK,IAAmB,EAAE;IAChD,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAC/C,MAAM,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACpC,MAAM,sBAAsB,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC","sourcesContent":["import { reRenderAllUI5Elements } from \"../Render.js\";\nimport { fireDirectionChange } from \"./directionChange.js\";\n\n/**\n * Re-renders all RTL-aware UI5 Elements.\n *\n * **Note:** Call this method whenever you change the \"dir\" property anywhere in your HTML page.\n *\n * **Example:** `document.body.dir = \"rtl\"; applyDirection();`\n * @public\n * @returns {Promise<void>}\n */\nconst applyDirection = async (): Promise<void> => {\n\tconst listenersResults = fireDirectionChange();\n\tawait Promise.all(listenersResults);\n\tawait reRenderAllUI5Elements({ rtlAware: true });\n};\n\nexport default applyDirection;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"directionChange.js","sourceRoot":"","sources":["../../src/locale/directionChange.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAIhD,MAAM,aAAa,GAAG,IAAI,aAAa,EAAmB,CAAC;AAC3D,MAAM,UAAU,GAAG,iBAAiB,CAAC;AAErC;;;;GAIG;AACH,MAAM,qBAAqB,GAAG,CAAC,QAAiC,EAAE,EAAE;IACnE,aAAa,CAAC,WAAW,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;AACjD,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,qBAAqB,GAAG,CAAC,QAAiC,EAAE,EAAE;IACnE,aAAa,CAAC,WAAW,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;AACjD,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,GAAG,EAAE;IAChC,OAAO,aAAa,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;AACvD,CAAC,CAAC;AAEF,OAAO,EACN,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,GACnB,CAAC"}
1
+ {"version":3,"file":"directionChange.js","sourceRoot":"","sources":["../../src/locale/directionChange.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAIhD,MAAM,aAAa,GAAG,IAAI,aAAa,EAAmB,CAAC;AAC3D,MAAM,UAAU,GAAG,iBAAiB,CAAC;AAErC;;;;GAIG;AACH,MAAM,qBAAqB,GAAG,CAAC,QAAiC,EAAE,EAAE;IACnE,aAAa,CAAC,WAAW,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;AACjD,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,qBAAqB,GAAG,CAAC,QAAiC,EAAE,EAAE;IACnE,aAAa,CAAC,WAAW,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;AACjD,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,GAAG,EAAE;IAChC,OAAO,aAAa,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;AACvD,CAAC,CAAC;AAEF,OAAO,EACN,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,GACnB,CAAC","sourcesContent":["import EventProvider from \"../EventProvider.js\";\n\ntype DirectionChangeCallback = () => void;\n\nconst eventProvider = new EventProvider<undefined, void>();\nconst DIR_CHANGE = \"directionChange\";\n\n/**\n * Attach a callback that will be executed whenever the application calls the \"applyDirection\" function\n * @public\n * @param listener\n */\nconst attachDirectionChange = (listener: DirectionChangeCallback) => {\n\teventProvider.attachEvent(DIR_CHANGE, listener);\n};\n\n/**\n * Detach a callback that was passed with \"attachDirectionChange\"\n * @public\n * @param listener\n */\nconst detachDirectionChange = (listener: DirectionChangeCallback) => {\n\teventProvider.detachEvent(DIR_CHANGE, listener);\n};\n\nconst fireDirectionChange = () => {\n\treturn eventProvider.fireEvent(DIR_CHANGE, undefined);\n};\n\nexport {\n\tattachDirectionChange,\n\tdetachDirectionChange,\n\tfireDirectionChange,\n};\n"]}
@@ -1,2 +1,2 @@
1
- declare const getEffectiveDir: (element: HTMLElement) => string | undefined;
1
+ declare const getEffectiveDir: (element: HTMLElement) => "rtl" | "ltr";
2
2
  export default getEffectiveDir;
@@ -1,24 +1,8 @@
1
- import { getRTL } from "../config/RTL.js";
2
- const GLOBAL_DIR_CSS_VAR = "--_ui5_dir";
3
1
  const getEffectiveDir = (element) => {
4
- const doc = window.document;
5
- const dirValues = ["ltr", "rtl"]; // exclude "auto" and "" from all calculations
6
- const locallyAppliedDir = getComputedStyle(element).getPropertyValue(GLOBAL_DIR_CSS_VAR);
7
- // In that order, inspect the CSS Var (for modern browsers), the element itself, html and body (for IE fallback)
8
- if (dirValues.includes(locallyAppliedDir)) {
9
- return locallyAppliedDir;
2
+ if (element.matches(":dir(rtl)")) {
3
+ return "rtl";
10
4
  }
11
- if (dirValues.includes(element.dir)) {
12
- return element.dir;
13
- }
14
- if (dirValues.includes(doc.documentElement.dir)) {
15
- return doc.documentElement.dir;
16
- }
17
- if (dirValues.includes(doc.body.dir)) {
18
- return doc.body.dir;
19
- }
20
- // Finally, check the configuration for explicitly set RTL or language-implied RTL
21
- return getRTL() ? "rtl" : undefined;
5
+ return "ltr";
22
6
  };
23
7
  export default getEffectiveDir;
24
8
  //# sourceMappingURL=getEffectiveDir.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getEffectiveDir.js","sourceRoot":"","sources":["../../src/locale/getEffectiveDir.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,MAAM,kBAAkB,GAAG,YAAY,CAAC;AAExC,MAAM,eAAe,GAAG,CAAC,OAAoB,EAAE,EAAE;IAChD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC5B,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,8CAA8C;IAChF,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;IAEzF,gHAAgH;IAChH,IAAI,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;QAC1C,OAAO,iBAAiB,CAAC;KACzB;IACD,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACpC,OAAO,OAAO,CAAC,GAAG,CAAC;KACnB;IACD,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE;QAChD,OAAO,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC;KAC/B;IACD,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;QACrC,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;KACpB;IAED,kFAAkF;IAClF,OAAO,MAAM,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACrC,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"getEffectiveDir.js","sourceRoot":"","sources":["../../src/locale/getEffectiveDir.ts"],"names":[],"mappings":"AAAA,MAAM,eAAe,GAAG,CAAC,OAAoB,EAAiB,EAAE;IAC/D,IAAI,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QAClC,OAAO,KAAK,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC","sourcesContent":["const getEffectiveDir = (element: HTMLElement): \"rtl\" | \"ltr\" => {\n\tif (element.matches(\":dir(rtl)\")) {\n\t\treturn \"rtl\";\n\t}\n\n\treturn \"ltr\";\n};\n\nexport default getEffectiveDir;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"getLocale.js","sourceRoot":"","sources":["../../src/locale/getLocale.ts"],"names":[],"mappings":"AAAA,OAAO,uBAAuB,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;AAExC,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAE,EAAE;IAC1C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QACrB,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;KAClC;IAED,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC;AACzB,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,IAAY,EAAE,EAAE;IAC9C,IAAI;QACH,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YACrC,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;SAC/B;KACD;IAAC,OAAO,CAAC,EAAE;QACX,SAAS;KACT;IAED,OAAO,IAAI,MAAM,CAAC,cAAc,CAAC,CAAC;AACnC,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,SAAS,GAAG,CAAC,IAAa,EAAU,EAAE;IAC3C,IAAI,IAAI,EAAE;QACT,OAAO,qBAAqB,CAAC,IAAI,CAAC,CAAC;KACnC;IAED,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAE3C,IAAI,cAAc,EAAE;QACnB,OAAO,iBAAiB,CAAC,cAAc,CAAC,CAAC;KACzC;IAED,OAAO,qBAAqB,CAAC,uBAAuB,EAAE,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"getLocale.js","sourceRoot":"","sources":["../../src/locale/getLocale.ts"],"names":[],"mappings":"AAAA,OAAO,uBAAuB,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;AAExC,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAE,EAAE;IAC1C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACnC,CAAC;IAED,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC;AACzB,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,IAAY,EAAE,EAAE;IAC9C,IAAI,CAAC;QACJ,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtC,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;IACF,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,SAAS;IACV,CAAC;IAED,OAAO,IAAI,MAAM,CAAC,cAAc,CAAC,CAAC;AACnC,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,SAAS,GAAG,CAAC,IAAa,EAAU,EAAE;IAC3C,IAAI,IAAI,EAAE,CAAC;QACV,OAAO,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAE3C,IAAI,cAAc,EAAE,CAAC;QACpB,OAAO,iBAAiB,CAAC,cAAc,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,qBAAqB,CAAC,uBAAuB,EAAE,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF,eAAe,SAAS,CAAC","sourcesContent":["import detectNavigatorLanguage from \"../util/detectNavigatorLanguage.js\";\nimport { getLanguage as getConfigLanguage } from \"../config/Language.js\";\nimport Locale from \"./Locale.js\";\nimport { DEFAULT_LOCALE } from \"../generated/AssetParameters.js\";\n\nconst cache = new Map<string, Locale>();\n\nconst getLocaleInstance = (lang: string) => {\n\tif (!cache.has(lang)) {\n\t\tcache.set(lang, new Locale(lang));\n\t}\n\n\treturn cache.get(lang)!;\n};\n\nconst convertToLocaleOrNull = (lang: string) => {\n\ttry {\n\t\tif (lang && typeof lang === \"string\") {\n\t\t\treturn getLocaleInstance(lang);\n\t\t}\n\t} catch (e) {\n\t\t// ignore\n\t}\n\n\treturn new Locale(DEFAULT_LOCALE);\n};\n\n/**\n * Returns the locale based on the parameter or configured language Configuration#getLanguage\n * If no language has been configured - a new locale based on browser language is returned\n */\nconst getLocale = (lang?: string): Locale => {\n\tif (lang) {\n\t\treturn convertToLocaleOrNull(lang);\n\t}\n\n\tconst configLanguage = getConfigLanguage();\n\n\tif (configLanguage) {\n\t\treturn getLocaleInstance(configLanguage);\n\t}\n\n\treturn convertToLocaleOrNull(detectNavigatorLanguage());\n};\n\nexport default getLocale;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"languageChange.js","sourceRoot":"","sources":["../../src/locale/languageChange.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAIhD,MAAM,aAAa,GAAG,IAAI,aAAa,EAAuC,CAAC;AAC/E,MAAM,WAAW,GAAG,gBAAgB,CAAC;AAErC,MAAM,oBAAoB,GAAG,CAAC,QAAgC,EAAE,EAAE;IACjE,aAAa,CAAC,WAAW,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,QAAgC,EAAE,EAAE;IACjE,aAAa,CAAC,WAAW,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,EAAE;IAC3C,OAAO,aAAa,CAAC,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;AACxD,CAAC,CAAC;AAEF,OAAO,EACN,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,GAClB,CAAC"}
1
+ {"version":3,"file":"languageChange.js","sourceRoot":"","sources":["../../src/locale/languageChange.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAIhD,MAAM,aAAa,GAAG,IAAI,aAAa,EAAuC,CAAC;AAC/E,MAAM,WAAW,GAAG,gBAAgB,CAAC;AAErC,MAAM,oBAAoB,GAAG,CAAC,QAAgC,EAAE,EAAE;IACjE,aAAa,CAAC,WAAW,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,QAAgC,EAAE,EAAE;IACjE,aAAa,CAAC,WAAW,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,EAAE;IAC3C,OAAO,aAAa,CAAC,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;AACxD,CAAC,CAAC;AAEF,OAAO,EACN,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,GAClB,CAAC","sourcesContent":["import EventProvider from \"../EventProvider.js\";\n\ntype LanguageChangeCallback = (lang: string) => Promise<void | Array<void>>;\n\nconst eventProvider = new EventProvider<string, Promise<void | Array<void>>>();\nconst LANG_CHANGE = \"languageChange\";\n\nconst attachLanguageChange = (listener: LanguageChangeCallback) => {\n\teventProvider.attachEvent(LANG_CHANGE, listener);\n};\n\nconst detachLanguageChange = (listener: LanguageChangeCallback) => {\n\teventProvider.detachEvent(LANG_CHANGE, listener);\n};\n\nconst fireLanguageChange = (lang: string) => {\n\treturn eventProvider.fireEventAsync(LANG_CHANGE, lang);\n};\n\nexport {\n\tattachLanguageChange,\n\tdetachLanguageChange,\n\tfireLanguageChange,\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"nextFallbackLocale.js","sourceRoot":"","sources":["../../src/locale/nextFallbackLocale.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE;;;;;GAKG;AACH,MAAM,kBAAkB,GAAG,CAAC,MAAc,EAAE,EAAE;IAC7C,IAAI,CAAC,MAAM,EAAE;QACZ,OAAO,cAAc,CAAC;KACtB;IAED,IAAI,MAAM,KAAK,OAAO,EAAE;QACvB,OAAO,OAAO,CAAC;KACf;IAED,iFAAiF;IACjF,MAAM,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,CAAC,IAAI,CAAC,EAAE;QACX,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;KAC1B;IAED,2HAA2H;IAC3H,OAAO,MAAM,KAAK,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;AACxD,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"nextFallbackLocale.js","sourceRoot":"","sources":["../../src/locale/nextFallbackLocale.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE;;;;;GAKG;AACH,MAAM,kBAAkB,GAAG,CAAC,MAAc,EAAE,EAAE;IAC7C,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,OAAO,cAAc,CAAC;IACvB,CAAC;IAED,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QACxB,OAAO,OAAO,CAAC;IAChB,CAAC;IAED,iFAAiF;IACjF,MAAM,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACZ,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED,2HAA2H;IAC3H,OAAO,MAAM,KAAK,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;AACxD,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC","sourcesContent":["import { DEFAULT_LOCALE } from \"../generated/AssetParameters.js\";\n\n/**\n * Calculates the next fallback locale for the given locale.\n *\n * @param {string} locale Locale string in Java format (underscores) or null\n * @returns {string} Next fallback Locale or \"en\" if no fallbacks found.\n */\nconst nextFallbackLocale = (locale: string) => {\n\tif (!locale) {\n\t\treturn DEFAULT_LOCALE;\n\t}\n\n\tif (locale === \"zh_HK\") {\n\t\treturn \"zh_TW\";\n\t}\n\n\t// if there are multiple segments (separated by underscores), remove the last one\n\tconst p = locale.lastIndexOf(\"_\");\n\tif (p >= 0) {\n\t\treturn locale.slice(0, p);\n\t}\n\n\t// for any language but the default, fallback to the default first before falling back to the 'raw' language (empty string)\n\treturn locale !== DEFAULT_LOCALE ? DEFAULT_LOCALE : \"\";\n};\n\nexport default nextFallbackLocale;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"normalizeLocale.js","sourceRoot":"","sources":["../../src/locale/normalizeLocale.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE,MAAM,WAAW,GAAG,4MAA4M,CAAC;AACjO,MAAM,wBAAwB,GAAG,gCAAgC,CAAC;AAElE,wDAAwD;AACxD,MAAM,mBAAmB,GAAG;IAC3B,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;CACV,CAAC;AAEF;;;;GAIG;AACH,MAAM,eAAe,GAAG,CAAC,MAAc,EAAE,EAAE;IAC1C,IAAI,CAAC,CAAC;IAEN,IAAI,CAAC,MAAM,EAAE;QACZ,OAAO,cAAc,CAAC;KACtB;IAED,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAC,yBAAyB;QAC9G,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACnD,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACrD,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAClD,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAEvB,QAAQ,GAAG,mBAAmB,CAAC,QAA4C,CAAC,IAAI,QAAQ,CAAC;QAEzF,6EAA6E;QAC7E,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,yBAAyB;YAC1F,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,wBAAwB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAC,yBAAyB;YACvF,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,8CAA8C;SACpF;QAED,wFAAwF;QACxF,IAAI,QAAQ,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;YACjC,IAAI,MAAM,KAAK,MAAM,EAAE;gBACtB,MAAM,GAAG,IAAI,CAAC;aACd;iBAAM,IAAI,MAAM,KAAK,MAAM,EAAE;gBAC7B,MAAM,GAAG,IAAI,CAAC;aACd;SACD;QAED,OAAO,QAAQ,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,yBAAyB;KAC9H;IAED,OAAO,cAAc,CAAC;AACvB,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"normalizeLocale.js","sourceRoot":"","sources":["../../src/locale/normalizeLocale.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE,MAAM,WAAW,GAAG,4MAA4M,CAAC;AACjO,MAAM,wBAAwB,GAAG,gCAAgC,CAAC;AAElE,wDAAwD;AACxD,MAAM,mBAAmB,GAAG;IAC3B,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;CACV,CAAC;AAEF;;;;GAIG;AACH,MAAM,eAAe,GAAG,CAAC,MAAc,EAAE,EAAE;IAC1C,IAAI,CAAC,CAAC;IAEN,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,OAAO,cAAc,CAAC;IACvB,CAAC;IAED,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA,yBAAyB;QAC9G,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACnD,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACrD,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAClD,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAEvB,QAAQ,GAAG,mBAAmB,CAAC,QAA4C,CAAC,IAAI,QAAQ,CAAC;QAEzF,6EAA6E;QAC7E,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,yBAAyB;YAC1F,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,wBAAwB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA,yBAAyB;YACvF,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,8CAA8C;QACrF,CAAC;QAED,wFAAwF;QACxF,IAAI,QAAQ,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAClC,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;gBACvB,MAAM,GAAG,IAAI,CAAC;YACf,CAAC;iBAAM,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC9B,MAAM,GAAG,IAAI,CAAC;YACf,CAAC;QACF,CAAC;QAED,OAAO,QAAQ,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,yBAAyB;IAC/H,CAAC;IAED,OAAO,cAAc,CAAC;AACvB,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC","sourcesContent":["import { DEFAULT_LOCALE } from \"../generated/AssetParameters.js\";\n\nconst localeRegEX = /^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i;\nconst SAPSupportabilityLocales = /(?:^|-)(saptrc|sappsd)(?:-|$)/i;\n\n/* Map for old language names for a few ISO639 codes. */\nconst M_ISO639_NEW_TO_OLD = {\n\t\"he\": \"iw\",\n\t\"yi\": \"ji\",\n\t\"nb\": \"no\",\n\t\"sr\": \"sh\",\n};\n\n/**\n * Normalizes the given locale in BCP-47 syntax.\n * @param {string} locale locale to normalize\n * @returns {string} Normalized locale, \"undefined\" if the locale can't be normalized or the default locale, if no locale provided.\n */\nconst normalizeLocale = (locale: string) => {\n\tlet m;\n\n\tif (!locale) {\n\t\treturn DEFAULT_LOCALE;\n\t}\n\n\tif (typeof locale === \"string\" && (m = localeRegEX.exec(locale.replace(/_/g, \"-\")))) {/* eslint-disable-line */\n\t\tlet language = m[1].toLowerCase();\n\t\tlet region = m[3] ? m[3].toUpperCase() : undefined;\n\t\tconst script = m[2] ? m[2].toLowerCase() : undefined;\n\t\tconst variants = m[4] ? m[4].slice(1) : undefined;\n\t\tconst isPrivate = m[6];\n\n\t\tlanguage = M_ISO639_NEW_TO_OLD[language as keyof typeof M_ISO639_NEW_TO_OLD] || language;\n\n\t\t// recognize and convert special SAP supportability locales (overwrites m[]!)\n\t\tif ((isPrivate && (m = SAPSupportabilityLocales.exec(isPrivate))) /* eslint-disable-line */ ||\n\t\t\t(variants && (m = SAPSupportabilityLocales.exec(variants)))) {/* eslint-disable-line */\n\t\t\treturn `en_US_${m[1].toLowerCase()}`; // for now enforce en_US (agreed with SAP SLS)\n\t\t}\n\n\t\t// Chinese: when no region but a script is specified, use default region for each script\n\t\tif (language === \"zh\" && !region) {\n\t\t\tif (script === \"hans\") {\n\t\t\t\tregion = \"CN\";\n\t\t\t} else if (script === \"hant\") {\n\t\t\t\tregion = \"TW\";\n\t\t\t}\n\t\t}\n\n\t\treturn language + (region ? \"_\" + region + (variants ? \"_\" + variants.replace(\"-\", \"_\") : \"\") : \"\"); /* eslint-disable-line */\n\t}\n\n\treturn DEFAULT_LOCALE;\n};\n\nexport default normalizeLocale;\n"]}
@@ -0,0 +1,3 @@
1
+ import type { Renderer } from "../UI5Element.js";
2
+ declare const jsxRenderer: Renderer;
3
+ export default jsxRenderer;
@@ -0,0 +1,16 @@
1
+ import { render, createContext } from "../thirdparty/preact/preact.module.js";
2
+ import { jsx } from "../thirdparty/preact/jsxRuntime.module.js";
3
+ const instanceToContextMap = new WeakMap();
4
+ const jsxRenderer = (instance, container) => {
5
+ let ctx = instanceToContextMap.get(instance);
6
+ if (!ctx) {
7
+ // create a context holding the element that is being rendered
8
+ // this contect will be used when adding event listeners - they all will be bound to this element
9
+ ctx = createContext(instance);
10
+ instanceToContextMap.set(instance, ctx);
11
+ }
12
+ const templateResult = instance.render();
13
+ render(jsx(ctx.Provider, { value: instance, children: templateResult }), container);
14
+ };
15
+ export default jsxRenderer;
16
+ //# sourceMappingURL=JsxRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsxRenderer.js","sourceRoot":"","sources":["../../src/renderer/JsxRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,GAAG,EAAE,MAAM,2CAA2C,CAAC;AAIhE,MAAM,oBAAoB,GAAG,IAAI,OAAO,EAA4D,CAAC;AAErG,MAAM,WAAW,GAAa,CAAC,QAAoB,EAAE,SAAyC,EAAE,EAAE;IACjG,IAAI,GAAG,GAAG,oBAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,CAAC,GAAG,EAAE,CAAC;QACV,8DAA8D;QAC9D,iGAAiG;QACjG,GAAG,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC9B,oBAAoB,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACzC,CAAC;IACD,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;IACzC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;AACrF,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC","sourcesContent":["import { render, createContext } from \"../thirdparty/preact/preact.module.js\";\nimport { jsx } from \"../thirdparty/preact/jsxRuntime.module.js\";\nimport type UI5Element from \"../UI5Element.js\";\nimport type { Renderer } from \"../UI5Element.js\";\n\nconst instanceToContextMap = new WeakMap<UI5Element, ReturnType<typeof createContext<UI5Element>>>();\n\nconst jsxRenderer: Renderer = (instance: UI5Element, container: HTMLElement | DocumentFragment) => {\n\tlet ctx = instanceToContextMap.get(instance);\n\tif (!ctx) {\n\t\t// create a context holding the element that is being rendered\n\t\t// this contect will be used when adding event listeners - they all will be bound to this element\n\t\tctx = createContext(instance);\n\t\tinstanceToContextMap.set(instance, ctx);\n\t}\n\tconst templateResult = instance.render();\n\trender(jsx(ctx.Provider, { value: instance, children: templateResult }), container);\n};\n\nexport default jsxRenderer;\n"]}
@@ -1,8 +1,8 @@
1
- import { TemplateResult, RenderOptions } from "lit-html";
2
- import { TemplateFunctionResult } from "./executeTemplate.js";
3
- declare const effectiveHtml: (strings: TemplateStringsArray, ...values: Array<unknown>) => TemplateResult<1 | 2>;
4
- declare const effectiveSvg: (strings: TemplateStringsArray, ...values: Array<unknown>) => TemplateResult<1 | 2>;
5
- declare const litRender: (templateResult: TemplateFunctionResult, container: HTMLElement | DocumentFragment, styleStrOrHrefsArr: string | Array<string> | undefined, forStaticArea: boolean, options: RenderOptions) => void;
1
+ import type { TemplateResult } from "lit-html";
2
+ import type { Renderer } from "../UI5Element.js";
3
+ declare const effectiveHtml: (strings: TemplateStringsArray, ...values: Array<unknown>) => TemplateResult;
4
+ declare const effectiveSvg: (strings: TemplateStringsArray, ...values: Array<unknown>) => TemplateResult;
5
+ declare const litRender: Renderer;
6
6
  declare const scopeTag: (tag: string, tags: Array<string>, suffix: string) => object | undefined;
7
7
  export { effectiveHtml as html, effectiveSvg as svg, };
8
8
  export { scopeTag };
@@ -10,18 +10,13 @@ const effectiveSvg = (strings, ...values) => {
10
10
  const fn = litStatic ? litStatic.svg : svg;
11
11
  return fn(strings, ...values);
12
12
  };
13
- const litRender = (templateResult, container, styleStrOrHrefsArr, forStaticArea, options) => {
13
+ const litRender = (instance, container) => {
14
+ let templateResult = instance.render();
14
15
  const openUI5Enablement = getFeature("OpenUI5Enablement");
15
- if (openUI5Enablement && !forStaticArea) {
16
- templateResult = openUI5Enablement.wrapTemplateResultInBusyMarkup(effectiveHtml, options.host, templateResult);
16
+ if (openUI5Enablement) {
17
+ templateResult = openUI5Enablement.wrapTemplateResultInBusyMarkup(effectiveHtml, instance, templateResult);
17
18
  }
18
- if (typeof styleStrOrHrefsArr === "string") {
19
- templateResult = effectiveHtml `<style>${styleStrOrHrefsArr}</style>${templateResult}`;
20
- }
21
- else if (Array.isArray(styleStrOrHrefsArr) && styleStrOrHrefsArr.length) {
22
- templateResult = effectiveHtml `${styleStrOrHrefsArr.map(href => effectiveHtml `<link type="text/css" rel="stylesheet" href="${href}">`)}${templateResult}`;
23
- }
24
- render(templateResult, container, options);
19
+ render(templateResult, container, { host: instance });
25
20
  };
26
21
  const scopeTag = (tag, tags, suffix) => {
27
22
  const litStatic = getFeature("LitStatic");
@@ -1 +1 @@
1
- {"version":3,"file":"LitRenderer.js","sourceRoot":"","sources":["../../src/renderer/LitRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,MAAM,EACN,IAAI,EACJ,GAAG,GAGH,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAMpD,MAAM,aAAa,GAAG,CAAC,OAA6B,EAAE,GAAG,MAAsB,EAAE,EAAE;IAClF,MAAM,SAAS,GAAG,UAAU,CAAmB,WAAW,CAAC,CAAC;IAC5D,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7C,OAAO,EAAE,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,OAA6B,EAAE,GAAG,MAAsB,EAAE,EAAE;IACjF,MAAM,SAAS,GAAG,UAAU,CAAmB,WAAW,CAAC,CAAC;IAC5D,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3C,OAAO,EAAE,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,cAAsC,EAAE,SAAyC,EAAE,kBAAsD,EAAE,aAAsB,EAAE,OAAsB,EAAE,EAAE;IAC/M,MAAM,iBAAiB,GAAG,UAAU,CAA2B,mBAAmB,CAAC,CAAC;IACpF,IAAI,iBAAiB,IAAI,CAAC,aAAa,EAAE;QACxC,cAAc,GAAG,iBAAiB,CAAC,8BAA8B,CAAC,aAAa,EAAE,OAAO,CAAC,IAAkB,EAAE,cAAgC,CAAC,CAAC;KAC/I;IAED,IAAI,OAAO,kBAAkB,KAAK,QAAQ,EAAE;QAC3C,cAAc,GAAG,aAAa,CAAA,UAAU,kBAAkB,WAAW,cAAc,EAAE,CAAC;KACtF;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,kBAAkB,CAAC,MAAM,EAAE;QAC1E,cAAc,GAAG,aAAa,CAAA,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAA,gDAAgD,IAAI,IAAI,CAAC,GAAG,cAAc,EAAE,CAAC;KAC1J;IACD,MAAM,CAAC,cAAgC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAC9D,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,IAAmB,EAAE,MAAc,EAAE,EAAE;IACrE,MAAM,SAAS,GAAG,UAAU,CAAmB,WAAW,CAAC,CAAC;IAC5D,IAAI,SAAS,EAAE;QACd,OAAO,SAAS,CAAC,YAAY,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;KACrF;AACF,CAAC,CAAC;AAEF,OAAO,EACN,aAAa,IAAI,IAAI,EACrB,YAAY,IAAI,GAAG,GACnB,CAAC;AACF,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAC5D,oCAAoC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAEhE,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"LitRenderer.js","sourceRoot":"","sources":["../../src/renderer/LitRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,MAAM,EACN,IAAI,EACJ,GAAG,GACH,MAAM,UAAU,CAAC;AAIlB,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAMpD,MAAM,aAAa,GAAG,CAAC,OAA6B,EAAE,GAAG,MAAsB,EAAE,EAAE;IAClF,MAAM,SAAS,GAAG,UAAU,CAAmB,WAAW,CAAC,CAAC;IAC5D,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7C,OAAO,EAAE,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,OAA6B,EAAE,GAAG,MAAsB,EAAE,EAAE;IACjF,MAAM,SAAS,GAAG,UAAU,CAAmB,WAAW,CAAC,CAAC;IAC5D,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3C,OAAO,EAAE,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,SAAS,GAAa,CAAC,QAAoB,EAAE,SAAyC,EAAE,EAAE;IAC/F,IAAI,cAAc,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;IACvC,MAAM,iBAAiB,GAAG,UAAU,CAA2B,mBAAmB,CAAC,CAAC;IACpF,IAAI,iBAAiB,EAAE,CAAC;QACvB,cAAc,GAAG,iBAAiB,CAAC,8BAA8B,CAAC,aAAa,EAAE,QAAQ,EAAE,cAAgC,CAAC,CAAC;IAC9H,CAAC;IAED,MAAM,CAAC,cAAgC,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;AACzE,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,IAAmB,EAAE,MAAc,EAAE,EAAE;IACrE,MAAM,SAAS,GAAG,UAAU,CAAmB,WAAW,CAAC,CAAC;IAC5D,IAAI,SAAS,EAAE,CAAC;QACf,OAAO,SAAS,CAAC,YAAY,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACtF,CAAC;AACF,CAAC,CAAC;AAEF,OAAO,EACN,aAAa,IAAI,IAAI,EACrB,YAAY,IAAI,GAAG,GACnB,CAAC;AACF,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAC5D,oCAAoC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAEhE,eAAe,SAAS,CAAC","sourcesContent":["import {\n\trender,\n\thtml,\n\tsvg,\n} from \"lit-html\";\n\nimport type { TemplateResult } from \"lit-html\";\n\nimport { getFeature } from \"../FeaturesRegistry.js\";\nimport type { LitStatic } from \"../CustomElementsScope.js\";\nimport type OpenUI5Enablement from \"../features/OpenUI5Enablement.js\";\nimport type UI5Element from \"../UI5Element.js\";\nimport type { Renderer } from \"../UI5Element.js\";\n\nconst effectiveHtml = (strings: TemplateStringsArray, ...values: Array<unknown>) => {\n\tconst litStatic = getFeature<typeof LitStatic>(\"LitStatic\");\n\tconst fn = litStatic ? litStatic.html : html;\n\treturn fn(strings, ...values);\n};\n\nconst effectiveSvg = (strings: TemplateStringsArray, ...values: Array<unknown>) => {\n\tconst litStatic = getFeature<typeof LitStatic>(\"LitStatic\");\n\tconst fn = litStatic ? litStatic.svg : svg;\n\treturn fn(strings, ...values);\n};\n\nconst litRender: Renderer = (instance: UI5Element, container: HTMLElement | DocumentFragment) => {\n\tlet templateResult = instance.render();\n\tconst openUI5Enablement = getFeature<typeof OpenUI5Enablement>(\"OpenUI5Enablement\");\n\tif (openUI5Enablement) {\n\t\ttemplateResult = openUI5Enablement.wrapTemplateResultInBusyMarkup(effectiveHtml, instance, templateResult as TemplateResult);\n\t}\n\n\trender(templateResult as TemplateResult, container, { host: instance });\n};\n\nconst scopeTag = (tag: string, tags: Array<string>, suffix: string) => {\n\tconst litStatic = getFeature<typeof LitStatic>(\"LitStatic\");\n\tif (litStatic) {\n\t\treturn litStatic.unsafeStatic((tags || []).includes(tag) ? `${tag}-${suffix}` : tag);\n\t}\n};\n\nexport {\n\teffectiveHtml as html,\n\teffectiveSvg as svg,\n};\nexport { scopeTag };\nexport { repeat } from \"lit-html/directives/repeat.js\";\nexport { classMap } from \"lit-html/directives/class-map.js\";\n// @ts-ignore style-map is a JS file\nexport { styleMap } from \"./directives/style-map.js\";\nexport { ifDefined } from \"lit-html/directives/if-defined.js\";\nexport { unsafeHTML } from \"lit-html/directives/unsafe-html.js\";\n\nexport default litRender;\n"]}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2018 Google LLC
4
+ * SPDX-License-Identifier: BSD-3-Clause
5
+ */
6
+ import { Directive } from 'lit-html/directive.js';
7
+ declare class StyleMapDirective extends Directive {
8
+ constructor(partInfo: any);
9
+ render(styleInfo: any): string;
10
+ update(part: any, [styleInfo]: [any]): symbol;
11
+ }
12
+ export declare const styleMap: (styleInfo: any) => import("lit-html/directive.js").DirectiveResult<typeof StyleMapDirective>;
13
+ export {};
@@ -1,72 +1,72 @@
1
+ // @ts-nocheck
2
+ /* eslint-disable */
1
3
  /**
2
4
  * @license
3
5
  * Copyright 2018 Google LLC
4
6
  * SPDX-License-Identifier: BSD-3-Clause
5
7
  */
6
-
7
8
  /**
8
9
  * This is the original style-map.js directive from lit-html 2 with the only difference that "render" is not called even for the first rendering (update is used instead)
9
10
  */
10
-
11
11
  import { noChange } from 'lit-html';
12
12
  import { directive, Directive, PartType, } from 'lit-html/directive.js';
13
13
  class StyleMapDirective extends Directive {
14
- constructor(partInfo) {
15
- var _a;
16
- super(partInfo);
17
- if (partInfo.type !== PartType.ATTRIBUTE ||
18
- partInfo.name !== 'style' ||
19
- ((_a = partInfo.strings) === null || _a === void 0 ? void 0 : _a.length) > 2) {
20
- throw new Error('The `styleMap` directive must be used in the `style` attribute ' +
21
- 'and must be the only part in the attribute.');
22
- }
23
- }
24
- render(styleInfo) {
25
- return "";
26
- }
27
- update(part, [styleInfo]) {
28
- const { style } = part.element;
29
- if (this._previousStyleProperties === undefined) {
30
- this._previousStyleProperties = new Set();
31
- for (const name in styleInfo) {
32
- this._previousStyleProperties.add(name);
33
- }
34
- // return this.render(styleInfo);
35
- }
36
- // Remove old properties that no longer exist in styleInfo
37
- // We use forEach() instead of for-of so that re don't require down-level
38
- // iteration.
39
- this._previousStyleProperties.forEach((name) => {
40
- // If the name isn't in styleInfo or it's null/undefined
41
- if (styleInfo[name] == null) {
42
- this._previousStyleProperties.delete(name);
43
- if (name.includes('-')) {
44
- style.removeProperty(name);
45
- }
46
- else {
47
- // Note reset using empty string (vs null) as IE11 does not always
48
- // reset via null (https://developer.mozilla.org/en-US/docs/Web/API/ElementCSSInlineStyle/style#setting_styles)
49
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
50
- style[name] = '';
51
- }
52
- }
53
- });
54
- // Add or update properties
55
- for (const name in styleInfo) {
56
- const value = styleInfo[name];
57
- if (value != null) {
58
- this._previousStyleProperties.add(name);
59
- if (name.includes('-')) {
60
- style.setProperty(name, value);
61
- }
62
- else {
63
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
64
- style[name] = value;
65
- }
66
- }
67
- }
68
- return noChange;
69
- }
14
+ constructor(partInfo) {
15
+ var _a;
16
+ super(partInfo);
17
+ if (partInfo.type !== PartType.ATTRIBUTE ||
18
+ partInfo.name !== 'style' ||
19
+ ((_a = partInfo.strings) === null || _a === void 0 ? void 0 : _a.length) > 2) {
20
+ throw new Error('The `styleMap` directive must be used in the `style` attribute ' +
21
+ 'and must be the only part in the attribute.');
22
+ }
23
+ }
24
+ render(styleInfo) {
25
+ return "";
26
+ }
27
+ update(part, [styleInfo]) {
28
+ const { style } = part.element;
29
+ if (this._previousStyleProperties === undefined) {
30
+ this._previousStyleProperties = new Set();
31
+ for (const name in styleInfo) {
32
+ this._previousStyleProperties.add(name);
33
+ }
34
+ // return this.render(styleInfo);
35
+ }
36
+ // Remove old properties that no longer exist in styleInfo
37
+ // We use forEach() instead of for-of so that re don't require down-level
38
+ // iteration.
39
+ this._previousStyleProperties.forEach((name) => {
40
+ // If the name isn't in styleInfo or it's null/undefined
41
+ if (styleInfo[name] == null) {
42
+ this._previousStyleProperties.delete(name);
43
+ if (name.includes('-')) {
44
+ style.removeProperty(name);
45
+ }
46
+ else {
47
+ // Note reset using empty string (vs null) as IE11 does not always
48
+ // reset via null (https://developer.mozilla.org/en-US/docs/Web/API/ElementCSSInlineStyle/style#setting_styles)
49
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
50
+ style[name] = '';
51
+ }
52
+ }
53
+ });
54
+ // Add or update properties
55
+ for (const name in styleInfo) {
56
+ const value = styleInfo[name];
57
+ if (value != null) {
58
+ this._previousStyleProperties.add(name);
59
+ if (name.includes('-')) {
60
+ style.setProperty(name, value);
61
+ }
62
+ else {
63
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
64
+ style[name] = value;
65
+ }
66
+ }
67
+ }
68
+ return noChange;
69
+ }
70
70
  }
71
-
72
71
  export const styleMap = directive(StyleMapDirective);
72
+ //# sourceMappingURL=style-map.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"style-map.js","sourceRoot":"","sources":["../../../src/renderer/directives/style-map.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,oBAAoB;AACpB;;;;GAIG;AAEH;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,GAAG,MAAM,uBAAuB,CAAC;AACxE,MAAM,iBAAkB,SAAQ,SAAS;IACxC,YAAY,QAAQ;QACnB,IAAI,EAAE,CAAC;QACP,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,SAAS;YACvC,QAAQ,CAAC,IAAI,KAAK,OAAO;YACzB,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/E,MAAM,IAAI,KAAK,CAAC,iEAAiE;gBAChF,6CAA6C,CAAC,CAAC;QACjD,CAAC;IACF,CAAC;IACD,MAAM,CAAC,SAAS;QACf,OAAO,EAAE,CAAC;IACX,CAAC;IACD,MAAM,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC;QACvB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QAC/B,IAAI,IAAI,CAAC,wBAAwB,KAAK,SAAS,EAAE,CAAC;YACjD,IAAI,CAAC,wBAAwB,GAAG,IAAI,GAAG,EAAE,CAAC;YAC1C,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;gBAC9B,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACzC,CAAC;YACD,iCAAiC;QAClC,CAAC;QACD,0DAA0D;QAC1D,yEAAyE;QACzE,aAAa;QACb,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC9C,wDAAwD;YACxD,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;gBAC7B,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC3C,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBACxB,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBAC5B,CAAC;qBACI,CAAC;oBACL,kEAAkE;oBAClE,+GAA+G;oBAC/G,8DAA8D;oBAC9D,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;gBAClB,CAAC;YACF,CAAC;QACF,CAAC,CAAC,CAAC;QACH,2BAA2B;QAC3B,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;YAC9B,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;gBACnB,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACxC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBACxB,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAChC,CAAC;qBACI,CAAC;oBACL,8DAA8D;oBAC9D,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;gBACrB,CAAC;YACF,CAAC;QACF,CAAC;QACD,OAAO,QAAQ,CAAC;IACjB,CAAC;CACD;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,SAAS,CAAC,iBAAiB,CAAC,CAAC","sourcesContent":["// @ts-nocheck\n/* eslint-disable */\n/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/**\n * This is the original style-map.js directive from lit-html 2 with the only difference that \"render\" is not called even for the first rendering (update is used instead)\n */\n\nimport { noChange } from 'lit-html';\nimport { directive, Directive, PartType, } from 'lit-html/directive.js';\nclass StyleMapDirective extends Directive {\n\tconstructor(partInfo) {\n\t\tvar _a;\n\t\tsuper(partInfo);\n\t\tif (partInfo.type !== PartType.ATTRIBUTE ||\n\t\t\tpartInfo.name !== 'style' ||\n\t\t\t((_a = partInfo.strings) === null || _a === void 0 ? void 0 : _a.length) > 2) {\n\t\t\tthrow new Error('The `styleMap` directive must be used in the `style` attribute ' +\n\t\t\t\t'and must be the only part in the attribute.');\n\t\t}\n\t}\n\trender(styleInfo) {\n\t\treturn \"\";\n\t}\n\tupdate(part, [styleInfo]) {\n\t\tconst { style } = part.element;\n\t\tif (this._previousStyleProperties === undefined) {\n\t\t\tthis._previousStyleProperties = new Set();\n\t\t\tfor (const name in styleInfo) {\n\t\t\t\tthis._previousStyleProperties.add(name);\n\t\t\t}\n\t\t\t// return this.render(styleInfo);\n\t\t}\n\t\t// Remove old properties that no longer exist in styleInfo\n\t\t// We use forEach() instead of for-of so that re don't require down-level\n\t\t// iteration.\n\t\tthis._previousStyleProperties.forEach((name) => {\n\t\t\t// If the name isn't in styleInfo or it's null/undefined\n\t\t\tif (styleInfo[name] == null) {\n\t\t\t\tthis._previousStyleProperties.delete(name);\n\t\t\t\tif (name.includes('-')) {\n\t\t\t\t\tstyle.removeProperty(name);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\t// Note reset using empty string (vs null) as IE11 does not always\n\t\t\t\t\t// reset via null (https://developer.mozilla.org/en-US/docs/Web/API/ElementCSSInlineStyle/style#setting_styles)\n\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t\t\tstyle[name] = '';\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\t// Add or update properties\n\t\tfor (const name in styleInfo) {\n\t\t\tconst value = styleInfo[name];\n\t\t\tif (value != null) {\n\t\t\t\tthis._previousStyleProperties.add(name);\n\t\t\t\tif (name.includes('-')) {\n\t\t\t\t\tstyle.setProperty(name, value);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t\t\tstyle[name] = value;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn noChange;\n\t}\n}\n\nexport const styleMap = directive(StyleMapDirective);\n"]}
@@ -1,6 +1,5 @@
1
1
  import type UI5Element from "../UI5Element.js";
2
- type TemplateFunctionResult = object;
3
- type TemplateFunction = (component: UI5Element, tagsToScope: Array<string>, scope: string | undefined) => TemplateFunctionResult;
2
+ type TemplateFunction = () => object;
4
3
  /**
5
4
  * Runs a component's template with the component's current state, while also scoping HTML
6
5
  *
@@ -8,6 +7,6 @@ type TemplateFunction = (component: UI5Element, tagsToScope: Array<string>, scop
8
7
  * @param component - the component
9
8
  * @public
10
9
  */
11
- declare const executeTemplate: (template: TemplateFunction, component: UI5Element) => TemplateFunctionResult;
10
+ declare const executeTemplate: (template: TemplateFunction, component: UI5Element) => object;
12
11
  export default executeTemplate;
13
- export type { TemplateFunction, TemplateFunctionResult };
12
+ export type { TemplateFunction };