@ui5/webcomponents-base 0.0.0-c41f1b293 → 0.0.0-c48b38fdc

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 (264) hide show
  1. package/.eslintignore +2 -0
  2. package/CHANGELOG.md +647 -0
  3. package/README.md +2 -1
  4. package/bundle.esm.js +1 -2
  5. package/dist/.tsbuildinfo +1 -0
  6. package/dist/AssetRegistry.d.ts +2 -2
  7. package/dist/AssetRegistry.js +2 -2
  8. package/dist/AssetRegistry.js.map +1 -1
  9. package/dist/Boot.d.ts +3 -2
  10. package/dist/Boot.js +7 -4
  11. package/dist/Boot.js.map +1 -1
  12. package/dist/CSP.d.ts +9 -6
  13. package/dist/CSP.js +9 -6
  14. package/dist/CSP.js.map +1 -1
  15. package/dist/CustomElementsScope.d.ts +4 -4
  16. package/dist/CustomElementsScope.js +2 -2
  17. package/dist/CustomElementsScope.js.map +1 -1
  18. package/dist/CustomElementsScopeUtils.d.ts +8 -1
  19. package/dist/CustomElementsScopeUtils.js +13 -1
  20. package/dist/CustomElementsScopeUtils.js.map +1 -1
  21. package/dist/Device.d.ts +2 -1
  22. package/dist/Device.js +10 -1
  23. package/dist/Device.js.map +1 -1
  24. package/dist/FontFace.js +1 -1
  25. package/dist/FontFace.js.map +1 -1
  26. package/dist/IgnoreCustomElements.d.ts +3 -5
  27. package/dist/IgnoreCustomElements.js +3 -5
  28. package/dist/IgnoreCustomElements.js.map +1 -1
  29. package/dist/InitialConfiguration.d.ts +2 -2
  30. package/dist/InitialConfiguration.js +7 -6
  31. package/dist/InitialConfiguration.js.map +1 -1
  32. package/dist/Keys.d.ts +5 -1
  33. package/dist/Keys.js +109 -106
  34. package/dist/Keys.js.map +1 -1
  35. package/dist/ManagedStyles.d.ts +5 -4
  36. package/dist/ManagedStyles.js +96 -23
  37. package/dist/ManagedStyles.js.map +1 -1
  38. package/dist/MediaRange.d.ts +6 -12
  39. package/dist/MediaRange.js +21 -31
  40. package/dist/MediaRange.js.map +1 -1
  41. package/dist/StaticAreaItem.d.ts +3 -4
  42. package/dist/StaticAreaItem.js +10 -12
  43. package/dist/StaticAreaItem.js.map +1 -1
  44. package/dist/UI5Element.d.ts +36 -27
  45. package/dist/UI5Element.js +98 -47
  46. package/dist/UI5Element.js.map +1 -1
  47. package/dist/UI5ElementMetadata.d.ts +6 -13
  48. package/dist/UI5ElementMetadata.js +17 -15
  49. package/dist/UI5ElementMetadata.js.map +1 -1
  50. package/dist/asset-registries/Icons.d.ts +4 -3
  51. package/dist/asset-registries/Icons.js +28 -17
  52. package/dist/asset-registries/Icons.js.map +1 -1
  53. package/dist/asset-registries/Illustrations.d.ts +2 -0
  54. package/dist/asset-registries/Illustrations.js +51 -20
  55. package/dist/asset-registries/Illustrations.js.map +1 -1
  56. package/dist/asset-registries/LocaleData.js +1 -1
  57. package/dist/asset-registries/LocaleData.js.map +1 -1
  58. package/dist/asset-registries/Themes.d.ts +4 -3
  59. package/dist/asset-registries/Themes.js +26 -10
  60. package/dist/asset-registries/Themes.js.map +1 -1
  61. package/dist/asset-registries/i18n.d.ts +2 -2
  62. package/dist/asset-registries/i18n.js +4 -3
  63. package/dist/asset-registries/i18n.js.map +1 -1
  64. package/dist/{assets-meta → asset-registries/util}/IconCollectionsAlias.d.ts +1 -2
  65. package/dist/{assets-meta → asset-registries/util}/IconCollectionsAlias.js +1 -2
  66. package/dist/asset-registries/util/IconCollectionsAlias.js.map +1 -0
  67. package/dist/asset-registries/util/IconCollectionsByTheme.d.ts +20 -0
  68. package/dist/asset-registries/util/IconCollectionsByTheme.js +42 -0
  69. package/dist/asset-registries/util/IconCollectionsByTheme.js.map +1 -0
  70. package/dist/asset-registries/util/getIconCollectionByTheme.d.ts +13 -0
  71. package/dist/asset-registries/util/getIconCollectionByTheme.js +29 -0
  72. package/dist/asset-registries/util/getIconCollectionByTheme.js.map +1 -0
  73. package/dist/config/CalendarType.d.ts +8 -1
  74. package/dist/config/CalendarType.js +18 -2
  75. package/dist/config/CalendarType.js.map +1 -1
  76. package/dist/config/Icons.d.ts +9 -24
  77. package/dist/config/Icons.js +8 -67
  78. package/dist/config/Icons.js.map +1 -1
  79. package/dist/config/Language.d.ts +1 -1
  80. package/dist/config/Language.js +6 -3
  81. package/dist/config/Language.js.map +1 -1
  82. package/dist/config/Theme.d.ts +1 -1
  83. package/dist/config/Theme.js +7 -4
  84. package/dist/config/Theme.js.map +1 -1
  85. package/dist/config/ThemeRoot.d.ts +2 -4
  86. package/dist/config/ThemeRoot.js +2 -4
  87. package/dist/config/ThemeRoot.js.map +1 -1
  88. package/dist/config/Timezone.d.ts +1 -1
  89. package/dist/config/Timezone.js +1 -1
  90. package/dist/config/Timezone.js.map +1 -1
  91. package/dist/connectToComponent.d.ts +9 -0
  92. package/dist/connectToComponent.js +59 -0
  93. package/dist/connectToComponent.js.map +1 -0
  94. package/dist/css/FontFace.css +47 -17
  95. package/dist/css/SystemCSSVars.css +0 -8
  96. package/dist/custom-elements-internal.json +2863 -0
  97. package/dist/custom-elements.json +2593 -0
  98. package/dist/decorators/customElement.d.ts +1 -1
  99. package/dist/decorators/customElement.js +1 -1
  100. package/dist/decorators/customElement.js.map +1 -1
  101. package/dist/decorators/event.d.ts +5 -2
  102. package/dist/decorators/event.js.map +1 -1
  103. package/dist/decorators.d.ts +5 -0
  104. package/dist/decorators.js +6 -0
  105. package/dist/decorators.js.map +1 -0
  106. package/dist/delegate/ItemNavigation.d.ts +9 -8
  107. package/dist/delegate/ItemNavigation.js +13 -14
  108. package/dist/delegate/ItemNavigation.js.map +1 -1
  109. package/dist/delegate/ResizeHandler.d.ts +4 -6
  110. package/dist/delegate/ResizeHandler.js +4 -6
  111. package/dist/delegate/ResizeHandler.js.map +1 -1
  112. package/dist/delegate/ScrollEnablement.js +2 -2
  113. package/dist/delegate/ScrollEnablement.js.map +1 -1
  114. package/dist/features/OpenUI5Enablement.d.ts +1 -1
  115. package/dist/features/OpenUI5Support.d.ts +13 -3
  116. package/dist/features/OpenUI5Support.js +94 -33
  117. package/dist/features/OpenUI5Support.js.map +1 -1
  118. package/dist/features/patchPopup.d.ts +10 -0
  119. package/dist/features/patchPopup.js +15 -0
  120. package/dist/features/patchPopup.js.map +1 -0
  121. package/dist/generated/AssetParameters.d.ts +6 -0
  122. package/dist/generated/AssetParameters.js +3 -10
  123. package/dist/generated/AssetParameters.js.map +1 -0
  124. package/dist/generated/VersionInfo.d.ts +10 -0
  125. package/dist/generated/VersionInfo.js +9 -8
  126. package/dist/generated/VersionInfo.js.map +1 -0
  127. package/dist/generated/css/FontFace.css.js +1 -1
  128. package/dist/generated/css/FontFace.css.js.map +1 -1
  129. package/dist/generated/css/SystemCSSVars.css.js +1 -1
  130. package/dist/generated/css/SystemCSSVars.css.js.map +1 -1
  131. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.d.ts +1 -1
  132. package/dist/i18nBundle.d.ts +2 -4
  133. package/dist/i18nBundle.js +1 -4
  134. package/dist/i18nBundle.js.map +1 -1
  135. package/dist/locale/applyDirection.d.ts +3 -2
  136. package/dist/locale/applyDirection.js +3 -2
  137. package/dist/locale/applyDirection.js.map +1 -1
  138. package/dist/locale/getEffectiveDir.d.ts +1 -1
  139. package/dist/locale/getEffectiveDir.js +3 -19
  140. package/dist/locale/getEffectiveDir.js.map +1 -1
  141. package/dist/renderer/LitRenderer.d.ts +2 -2
  142. package/dist/renderer/directives/style-map.d.ts +13 -0
  143. package/dist/renderer/directives/style-map.js +59 -59
  144. package/dist/renderer/directives/style-map.js.map +1 -0
  145. package/dist/sap/base/Log.js +698 -188
  146. package/dist/sap/base/assert.js +28 -1
  147. package/dist/sap/base/config/MemoryConfigurationProvider.js +20 -0
  148. package/dist/sap/base/security/URLListValidator.js +253 -6
  149. package/dist/sap/base/security/encodeCSS.js +34 -8
  150. package/dist/sap/base/security/encodeXML.js +47 -17
  151. package/dist/sap/base/security/sanitizeHTML.js +35 -13
  152. package/dist/sap/base/strings/toHex.js +27 -2
  153. package/dist/sap/base/util/now.js +24 -3
  154. package/dist/sap/base/util/uid.js +27 -0
  155. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +112 -97
  156. package/dist/ssr-dom-shim.d.ts +1 -0
  157. package/dist/ssr-dom-shim.js +12 -0
  158. package/dist/ssr-dom-shim.js.map +1 -0
  159. package/dist/ssr-dom.d.ts +0 -0
  160. package/dist/ssr-dom.js +3 -0
  161. package/dist/ssr-dom.js.map +1 -0
  162. package/dist/theming/applyTheme.js +5 -5
  163. package/dist/theming/applyTheme.js.map +1 -1
  164. package/dist/types/AnimationMode.d.ts +0 -8
  165. package/dist/types/AnimationMode.js +0 -8
  166. package/dist/types/AnimationMode.js.map +1 -1
  167. package/dist/types/CSSColor.d.ts +0 -4
  168. package/dist/types/CSSColor.js +0 -4
  169. package/dist/types/CSSColor.js.map +1 -1
  170. package/dist/types/CSSSize.d.ts +11 -0
  171. package/dist/types/CSSSize.js +14 -0
  172. package/dist/types/CSSSize.js.map +1 -0
  173. package/dist/types/CalendarType.d.ts +0 -9
  174. package/dist/types/CalendarType.js +0 -9
  175. package/dist/types/CalendarType.js.map +1 -1
  176. package/dist/types/DOMReference.d.ts +1 -5
  177. package/dist/types/DOMReference.js +1 -5
  178. package/dist/types/DOMReference.js.map +1 -1
  179. package/dist/types/DataType.d.ts +1 -6
  180. package/dist/types/DataType.js +1 -6
  181. package/dist/types/DataType.js.map +1 -1
  182. package/dist/types/Float.d.ts +0 -3
  183. package/dist/types/Float.js +0 -3
  184. package/dist/types/Float.js.map +1 -1
  185. package/dist/types/Integer.d.ts +0 -3
  186. package/dist/types/Integer.js +0 -3
  187. package/dist/types/Integer.js.map +1 -1
  188. package/dist/types/InvisibleMessageMode.d.ts +5 -10
  189. package/dist/types/InvisibleMessageMode.js +4 -11
  190. package/dist/types/InvisibleMessageMode.js.map +1 -1
  191. package/dist/types/ItemNavigationBehavior.d.ts +0 -6
  192. package/dist/types/ItemNavigationBehavior.js +0 -6
  193. package/dist/types/ItemNavigationBehavior.js.map +1 -1
  194. package/dist/types/MovePlacement.d.ts +20 -0
  195. package/dist/types/MovePlacement.js +22 -0
  196. package/dist/types/MovePlacement.js.map +1 -0
  197. package/dist/types/NavigationMode.d.ts +0 -8
  198. package/dist/types/NavigationMode.js +0 -8
  199. package/dist/types/NavigationMode.js.map +1 -1
  200. package/dist/types/Orientation.d.ts +16 -0
  201. package/dist/types/Orientation.js +18 -0
  202. package/dist/types/Orientation.js.map +1 -0
  203. package/dist/types/ValueState.d.ts +0 -14
  204. package/dist/types/ValueState.js +0 -14
  205. package/dist/types/ValueState.js.map +1 -1
  206. package/dist/types.d.ts +11 -1
  207. package/dist/types.js.map +1 -1
  208. package/dist/updateShadowRoot.js +2 -1
  209. package/dist/updateShadowRoot.js.map +1 -1
  210. package/dist/util/ColorConversion.js +200 -195
  211. package/dist/util/ColorConversion.js.map +1 -1
  212. package/dist/util/InvisibleMessage.d.ts +1 -1
  213. package/dist/util/InvisibleMessage.js.map +1 -1
  214. package/dist/util/PopupUtils.js +1 -1
  215. package/dist/util/PopupUtils.js.map +1 -1
  216. package/dist/util/clamp.js +2 -1
  217. package/dist/util/clamp.js.map +1 -1
  218. package/dist/util/createLinkInHead.d.ts +1 -1
  219. package/dist/util/createLinkInHead.js +1 -1
  220. package/dist/util/createLinkInHead.js.map +1 -1
  221. package/dist/util/createStyleInHead.d.ts +1 -1
  222. package/dist/util/createStyleInHead.js +1 -1
  223. package/dist/util/createStyleInHead.js.map +1 -1
  224. package/dist/util/detectNavigatorLanguage.d.ts +2 -2
  225. package/dist/util/detectNavigatorLanguage.js +6 -1
  226. package/dist/util/detectNavigatorLanguage.js.map +1 -1
  227. package/dist/util/dragAndDrop/DragRegistry.d.ts +12 -0
  228. package/dist/util/dragAndDrop/DragRegistry.js +66 -0
  229. package/dist/util/dragAndDrop/DragRegistry.js.map +1 -0
  230. package/dist/util/dragAndDrop/findClosestPosition.d.ts +7 -0
  231. package/dist/util/dragAndDrop/findClosestPosition.js +59 -0
  232. package/dist/util/dragAndDrop/findClosestPosition.js.map +1 -0
  233. package/dist/util/dragAndDrop/longDragOverHandler.d.ts +2 -0
  234. package/dist/util/dragAndDrop/longDragOverHandler.js +25 -0
  235. package/dist/util/dragAndDrop/longDragOverHandler.js.map +1 -0
  236. package/dist/util/getClassCopy.d.ts +54 -34
  237. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -2
  238. package/dist/util/getDesigntimePropertyAsArray.js +2 -1
  239. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -1
  240. package/dist/util/getParentElement.d.ts +2 -0
  241. package/dist/util/getParentElement.js +5 -0
  242. package/dist/util/getParentElement.js.map +1 -0
  243. package/dist/util/isElementContainingBlock.d.ts +2 -0
  244. package/dist/util/isElementContainingBlock.js +11 -0
  245. package/dist/util/isElementContainingBlock.js.map +1 -0
  246. package/dist/vscode.html-custom-data.json +22 -0
  247. package/index.js +3 -5
  248. package/lib/generate-asset-parameters/index.js +2 -2
  249. package/lib/generate-version-info/index.js +2 -2
  250. package/package-scripts.cjs +14 -18
  251. package/package.json +14 -6
  252. package/src/css/FontFace.css +47 -17
  253. package/src/css/SystemCSSVars.css +0 -8
  254. package/tsconfig.json +6 -0
  255. package/used-modules.txt +4 -0
  256. package/dist/api.json +0 -1
  257. package/dist/assets/Boot.18e749cb.js +0 -9
  258. package/dist/assets/Boot.34b7cea0.css +0 -1
  259. package/dist/assets/bundle.esm.179dce7c.js +0 -50
  260. package/dist/assets-meta/IconCollectionsAlias.js.map +0 -1
  261. package/dist/config/RTL.d.ts +0 -7
  262. package/dist/config/RTL.js +0 -37
  263. package/dist/config/RTL.js.map +0 -1
  264. package/src/renderer/directives/style-map.js +0 -72
@@ -1 +1 @@
1
- {"version":3,"file":"PopupUtils.js","sourceRoot":"","sources":["../../src/util/PopupUtils.ts"],"names":[],"mappings":"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","sourcesContent":["import getSharedResource from \"../getSharedResource.js\";\nimport { getFeature } from \"../FeaturesRegistry.js\";\nimport getActiveElement from \"./getActiveElement.js\";\nimport type OpenUI5Support from \"../features/OpenUI5Support.js\";\n\ntype PopupUtilsData = {\n\tcurrentZIndex: number\n};\n\nconst popupUtilsData = getSharedResource<PopupUtilsData>(\"PopupUtilsData\", { currentZIndex: 100 });\n\nconst getFocusedElement = () => {\n\tconst element = getActiveElement() as HTMLElement;\n\treturn (element && typeof element.focus === \"function\") ? element : null;\n};\n\nconst isFocusedElementWithinNode = (node: HTMLElement) => {\n\tconst fe = getFocusedElement();\n\n\tif (fe) {\n\t\treturn isNodeContainedWithin(node, fe);\n\t}\n\n\treturn false;\n};\n\nconst isNodeContainedWithin = (parent: HTMLElement, child: HTMLElement): boolean => {\n\tlet currentNode: HTMLElement | undefined = parent;\n\n\tif (currentNode.shadowRoot) {\n\t\tconst children = Array.from(currentNode.shadowRoot.children) as Array<HTMLElement>;\n\t\tcurrentNode = children.find(n => n.localName !== \"style\");\n\n\t\tif (!currentNode) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tif (currentNode === child) {\n\t\treturn true;\n\t}\n\n\tconst childNodes = currentNode.localName === \"slot\" ? (currentNode as HTMLSlotElement).assignedNodes() : currentNode.children;\n\n\tif (childNodes) {\n\t\treturn Array.from(childNodes).some(n => isNodeContainedWithin(n as HTMLElement, child));\n\t}\n\n\treturn false;\n};\n\nconst isPointInRect = (x: number, y: number, rect: DOMRect) => {\n\treturn x >= rect.left && x <= rect.right\n\t\t&& y >= rect.top && y <= rect.bottom;\n};\n\nconst isClickInRect = (e: MouseEvent | TouchEvent, rect: DOMRect) => {\n\tlet x;\n\tlet y;\n\n\tif (e instanceof MouseEvent) {\n\t\tx = e.clientX;\n\t\ty = e.clientY;\n\t} else {\n\t\tconst touch = e.touches[0];\n\t\tx = touch.clientX;\n\t\ty = touch.clientY;\n\t}\n\n\treturn isPointInRect(x, y, rect);\n};\n\ninterface PopupInterface { // Refactor: replace with Popup.js\n\t_show: () => void,\n\topen: boolean,\n}\nfunction instanceOfPopup(object: any): object is PopupInterface {\n\treturn \"isUI5Element\" in object && \"_show\" in object;\n}\n\nconst getClosedPopupParent = (el: HTMLElement): HTMLElement => {\n\tconst parent = el.parentElement || (el.getRootNode && (el.getRootNode() as ShadowRoot).host);\n\n\tif (parent && ((instanceOfPopup(parent) || parent === document.documentElement))) {\n\t\treturn parent as HTMLElement;\n\t}\n\n\treturn getClosedPopupParent(parent as HTMLElement);\n};\n\nconst getNextZIndex = () => {\n\tconst openUI5Support = getFeature<typeof OpenUI5Support>(\"OpenUI5Support\");\n\tif (openUI5Support && openUI5Support.isLoaded()) { // use OpenUI5 for getting z-index values, if loaded\n\t\treturn openUI5Support.getNextZIndex();\n\t}\n\n\tpopupUtilsData.currentZIndex += 2;\n\treturn popupUtilsData.currentZIndex;\n};\n\nconst getCurrentZIndex = () => {\n\treturn popupUtilsData.currentZIndex;\n};\n\nexport {\n\tgetFocusedElement,\n\tisClickInRect,\n\tgetClosedPopupParent,\n\tgetNextZIndex,\n\tgetCurrentZIndex,\n\tisFocusedElementWithinNode,\n};\n"]}
1
+ {"version":3,"file":"PopupUtils.js","sourceRoot":"","sources":["../../src/util/PopupUtils.ts"],"names":[],"mappings":"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","sourcesContent":["import getSharedResource from \"../getSharedResource.js\";\nimport { getFeature } from \"../FeaturesRegistry.js\";\nimport getActiveElement from \"./getActiveElement.js\";\nimport type OpenUI5Support from \"../features/OpenUI5Support.js\";\n\ntype PopupUtilsData = {\n\tcurrentZIndex: number\n};\n\nconst popupUtilsData = getSharedResource<PopupUtilsData>(\"PopupUtilsData\", { currentZIndex: 100 });\n\nconst getFocusedElement = () => {\n\tconst element = getActiveElement() as HTMLElement;\n\treturn (element && typeof element.focus === \"function\") ? element : null;\n};\n\nconst isFocusedElementWithinNode = (node: HTMLElement) => {\n\tconst fe = getFocusedElement();\n\n\tif (fe) {\n\t\treturn isNodeContainedWithin(node, fe);\n\t}\n\n\treturn false;\n};\n\nconst isNodeContainedWithin = (parent: HTMLElement, child: HTMLElement): boolean => {\n\tlet currentNode: HTMLElement | undefined = parent;\n\n\tif (currentNode.shadowRoot) {\n\t\tconst children = Array.from(currentNode.shadowRoot.children) as Array<HTMLElement>;\n\t\tcurrentNode = children.find(n => n.localName !== \"style\");\n\n\t\tif (!currentNode) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tif (currentNode === child) {\n\t\treturn true;\n\t}\n\n\tconst childNodes = currentNode.localName === \"slot\" ? (currentNode as HTMLSlotElement).assignedNodes() : currentNode.children;\n\n\tif (childNodes) {\n\t\treturn Array.from(childNodes).some(n => isNodeContainedWithin(n as HTMLElement, child));\n\t}\n\n\treturn false;\n};\n\nconst isPointInRect = (x: number, y: number, rect: DOMRect) => {\n\treturn x >= rect.left && x <= rect.right\n\t\t&& y >= rect.top && y <= rect.bottom;\n};\n\nconst isClickInRect = (e: MouseEvent | TouchEvent, rect: DOMRect) => {\n\tlet x;\n\tlet y;\n\n\tif (e instanceof MouseEvent) {\n\t\tx = e.clientX;\n\t\ty = e.clientY;\n\t} else {\n\t\tconst touch = e.touches[0];\n\t\tx = touch.clientX;\n\t\ty = touch.clientY;\n\t}\n\n\treturn isPointInRect(x, y, rect);\n};\n\ninterface PopupInterface { // Refactor: replace with Popup.js\n\t_show: () => void,\n\topen: boolean,\n}\nfunction instanceOfPopup(object: any): object is PopupInterface {\n\treturn \"isUI5Element\" in object && \"_show\" in object;\n}\n\nconst getClosedPopupParent = (el: HTMLElement): HTMLElement => {\n\tconst parent = el.parentElement || (el.getRootNode && (el.getRootNode() as ShadowRoot).host);\n\n\tif (parent && ((instanceOfPopup(parent) || parent === document.documentElement))) {\n\t\treturn parent as HTMLElement;\n\t}\n\n\treturn getClosedPopupParent(parent as HTMLElement);\n};\n\nconst getNextZIndex = () => {\n\tconst openUI5Support = getFeature<typeof OpenUI5Support>(\"OpenUI5Support\");\n\tif (openUI5Support && openUI5Support.isOpenUI5Detected()) { // use OpenUI5 for getting z-index values, if loaded\n\t\treturn openUI5Support.getNextZIndex();\n\t}\n\n\tpopupUtilsData.currentZIndex += 2;\n\treturn popupUtilsData.currentZIndex;\n};\n\nconst getCurrentZIndex = () => {\n\treturn popupUtilsData.currentZIndex;\n};\n\nexport {\n\tgetFocusedElement,\n\tisClickInRect,\n\tgetClosedPopupParent,\n\tgetNextZIndex,\n\tgetCurrentZIndex,\n\tisFocusedElementWithinNode,\n};\n"]}
@@ -6,7 +6,8 @@
6
6
  * @returns {number}
7
7
  */
8
8
  const clamp = (val, min, max) => {
9
- return Math.min(Math.max(val, min), max);
9
+ // handles case when max < min
10
+ return Math.min(Math.max(val, min), Math.max(min, max));
10
11
  };
11
12
  export default clamp;
12
13
  //# sourceMappingURL=clamp.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"clamp.js","sourceRoot":"","sources":["../../src/util/clamp.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,KAAK,GAAG,CAAC,GAAW,EAAE,GAAW,EAAE,GAAW,EAAE,EAAE;IACvD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;AAC1C,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC","sourcesContent":["/**\n * Returns a value clamped between an upper bound 'max' and lower bound 'min'.\n * @param {number} val value\n * @param {number} min lower bound\n * @param {number} max upper bound\n * @returns {number}\n */\nconst clamp = (val: number, min: number, max: number) => {\n\treturn Math.min(Math.max(val, min), max);\n};\n\nexport default clamp;\n"]}
1
+ {"version":3,"file":"clamp.js","sourceRoot":"","sources":["../../src/util/clamp.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,KAAK,GAAG,CAAC,GAAW,EAAE,GAAW,EAAE,GAAW,EAAE,EAAE;IACvD,8BAA8B;IAC9B,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC","sourcesContent":["/**\n * Returns a value clamped between an upper bound 'max' and lower bound 'min'.\n * @param {number} val value\n * @param {number} min lower bound\n * @param {number} max upper bound\n * @returns {number}\n */\nconst clamp = (val: number, min: number, max: number) => {\n\t// handles case when max < min\n\treturn Math.min(Math.max(val, min), Math.max(min, max));\n};\n\nexport default clamp;\n"]}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Creates a <link> tag in the <head> tag
2
+ * Creates a `<link>` tag in the `<head>` tag
3
3
  * @param href - the CSS
4
4
  * @param attributes - optional attributes to add to the tag
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Creates a <link> tag in the <head> tag
2
+ * Creates a `<link>` tag in the `<head>` tag
3
3
  * @param href - the CSS
4
4
  * @param attributes - optional attributes to add to the tag
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"createLinkInHead.js","sourceRoot":"","sources":["../../src/util/createLinkInHead.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,UAAmC,EAAE,EAAE;IAC9E,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;IACvB,IAAI,CAAC,GAAG,GAAG,YAAY,CAAC;IAExB,IAAI,UAAU,EAAE;QACf,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;KACvE;IAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAEjB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEhC,OAAO,IAAI,OAAO,CAAQ,OAAO,CAAC,EAAE;QACnC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,WAAW;IACrD,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC","sourcesContent":["/**\n * Creates a <link> tag in the <head> tag\n * @param href - the CSS\n * @param attributes - optional attributes to add to the tag\n */\nconst createLinkInHead = (href: string, attributes?: Record<string, string>) => {\n\tconst link = document.createElement(\"link\");\n\tlink.type = \"text/css\";\n\tlink.rel = \"stylesheet\";\n\n\tif (attributes) {\n\t\tObject.entries(attributes).forEach(pair => link.setAttribute(...pair));\n\t}\n\n\tlink.href = href;\n\n\tdocument.head.appendChild(link);\n\n\treturn new Promise<Event>(resolve => {\n\t\tlink.addEventListener(\"load\", resolve);\n\t\tlink.addEventListener(\"error\", resolve); // intended\n\t});\n};\n\nexport default createLinkInHead;\n"]}
1
+ {"version":3,"file":"createLinkInHead.js","sourceRoot":"","sources":["../../src/util/createLinkInHead.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,UAAmC,EAAE,EAAE;IAC9E,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;IACvB,IAAI,CAAC,GAAG,GAAG,YAAY,CAAC;IAExB,IAAI,UAAU,EAAE;QACf,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;KACvE;IAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAEjB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEhC,OAAO,IAAI,OAAO,CAAQ,OAAO,CAAC,EAAE;QACnC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,WAAW;IACrD,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC","sourcesContent":["/**\n * Creates a `<link>` tag in the `<head>` tag\n * @param href - the CSS\n * @param attributes - optional attributes to add to the tag\n */\nconst createLinkInHead = (href: string, attributes?: Record<string, string>) => {\n\tconst link = document.createElement(\"link\");\n\tlink.type = \"text/css\";\n\tlink.rel = \"stylesheet\";\n\n\tif (attributes) {\n\t\tObject.entries(attributes).forEach(pair => link.setAttribute(...pair));\n\t}\n\n\tlink.href = href;\n\n\tdocument.head.appendChild(link);\n\n\treturn new Promise<Event>(resolve => {\n\t\tlink.addEventListener(\"load\", resolve);\n\t\tlink.addEventListener(\"error\", resolve); // intended\n\t});\n};\n\nexport default createLinkInHead;\n"]}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Creates a <style> tag in the <head> tag
2
+ * Creates a `<style>` tag in the `<head>` tag
3
3
  * @param cssText - the CSS
4
4
  * @param attributes - optional attributes to add to the tag
5
5
  * @returns {HTMLElement}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Creates a <style> tag in the <head> tag
2
+ * Creates a `<style>` tag in the `<head>` tag
3
3
  * @param cssText - the CSS
4
4
  * @param attributes - optional attributes to add to the tag
5
5
  * @returns {HTMLElement}
@@ -1 +1 @@
1
- {"version":3,"file":"createStyleInHead.js","sourceRoot":"","sources":["../../src/util/createStyleInHead.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,iBAAiB,GAAG,CAAC,OAAe,EAAE,UAAmC,EAAE,EAAE;IAClF,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,GAAG,UAAU,CAAC;IAExB,IAAI,UAAU,EAAE;QACf,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;KACxE;IAED,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACjC,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC","sourcesContent":["/**\n * Creates a <style> tag in the <head> tag\n * @param cssText - the CSS\n * @param attributes - optional attributes to add to the tag\n * @returns {HTMLElement}\n */\nconst createStyleInHead = (cssText: string, attributes?: Record<string, string>) => {\n\tconst style = document.createElement(\"style\");\n\tstyle.type = \"text/css\";\n\n\tif (attributes) {\n\t\tObject.entries(attributes).forEach(pair => style.setAttribute(...pair));\n\t}\n\n\tstyle.textContent = cssText;\n\tdocument.head.appendChild(style);\n\treturn style;\n};\n\nexport default createStyleInHead;\n"]}
1
+ {"version":3,"file":"createStyleInHead.js","sourceRoot":"","sources":["../../src/util/createStyleInHead.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,iBAAiB,GAAG,CAAC,OAAe,EAAE,UAAmC,EAAE,EAAE;IAClF,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,GAAG,UAAU,CAAC;IAExB,IAAI,UAAU,EAAE;QACf,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;KACxE;IAED,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACjC,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC","sourcesContent":["/**\n * Creates a `<style>` tag in the `<head>` tag\n * @param cssText - the CSS\n * @param attributes - optional attributes to add to the tag\n * @returns {HTMLElement}\n */\nconst createStyleInHead = (cssText: string, attributes?: Record<string, string>) => {\n\tconst style = document.createElement(\"style\");\n\tstyle.type = \"text/css\";\n\n\tif (attributes) {\n\t\tObject.entries(attributes).forEach(pair => style.setAttribute(...pair));\n\t}\n\n\tstyle.textContent = cssText;\n\tdocument.head.appendChild(style);\n\treturn style;\n};\n\nexport default createStyleInHead;\n"]}
@@ -1,2 +1,2 @@
1
- declare const _default: () => string;
2
- export default _default;
1
+ declare const detectNavigatorLanguage: () => string;
2
+ export default detectNavigatorLanguage;
@@ -1,5 +1,9 @@
1
1
  import { DEFAULT_LANGUAGE } from "../generated/AssetParameters.js";
2
- export default () => {
2
+ const isSSR = typeof document === "undefined";
3
+ const detectNavigatorLanguage = () => {
4
+ if (isSSR) {
5
+ return DEFAULT_LANGUAGE;
6
+ }
3
7
  const browserLanguages = navigator.languages;
4
8
  const navigatorLanguage = () => {
5
9
  return navigator.language;
@@ -7,4 +11,5 @@ export default () => {
7
11
  const rawLocale = (browserLanguages && browserLanguages[0]) || navigatorLanguage();
8
12
  return rawLocale || DEFAULT_LANGUAGE;
9
13
  };
14
+ export default detectNavigatorLanguage;
10
15
  //# sourceMappingURL=detectNavigatorLanguage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"detectNavigatorLanguage.js","sourceRoot":"","sources":["../../src/util/detectNavigatorLanguage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,eAAe,GAAG,EAAE;IACnB,MAAM,gBAAgB,GAAG,SAAS,CAAC,SAAS,CAAC;IAE7C,MAAM,iBAAiB,GAAG,GAAG,EAAE;QAC9B,OAAO,SAAS,CAAC,QAAQ,CAAC;IAC3B,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,iBAAiB,EAAE,CAAC;IAEnF,OAAO,SAAS,IAAI,gBAAgB,CAAC;AACtC,CAAC,CAAC","sourcesContent":["import { DEFAULT_LANGUAGE } from \"../generated/AssetParameters.js\";\n\nexport default () => {\n\tconst browserLanguages = navigator.languages;\n\n\tconst navigatorLanguage = () => {\n\t\treturn navigator.language;\n\t};\n\n\tconst rawLocale = (browserLanguages && browserLanguages[0]) || navigatorLanguage();\n\n\treturn rawLocale || DEFAULT_LANGUAGE;\n};\n"]}
1
+ {"version":3,"file":"detectNavigatorLanguage.js","sourceRoot":"","sources":["../../src/util/detectNavigatorLanguage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,MAAM,KAAK,GAAG,OAAO,QAAQ,KAAK,WAAW,CAAC;AAE9C,MAAM,uBAAuB,GAAG,GAAG,EAAE;IACpC,IAAI,KAAK,EAAE;QACV,OAAO,gBAAgB,CAAC;KACxB;IACD,MAAM,gBAAgB,GAAG,SAAS,CAAC,SAAS,CAAC;IAE7C,MAAM,iBAAiB,GAAG,GAAG,EAAE;QAC9B,OAAO,SAAS,CAAC,QAAQ,CAAC;IAC3B,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,iBAAiB,EAAE,CAAC;IAEnF,OAAO,SAAS,IAAI,gBAAgB,CAAC;AACtC,CAAC,CAAC;AAEF,eAAe,uBAAuB,CAAC","sourcesContent":["import { DEFAULT_LANGUAGE } from \"../generated/AssetParameters.js\";\n\nconst isSSR = typeof document === \"undefined\";\n\nconst detectNavigatorLanguage = () => {\n\tif (isSSR) {\n\t\treturn DEFAULT_LANGUAGE;\n\t}\n\tconst browserLanguages = navigator.languages;\n\n\tconst navigatorLanguage = () => {\n\t\treturn navigator.language;\n\t};\n\n\tconst rawLocale = (browserLanguages && browserLanguages[0]) || navigatorLanguage();\n\n\treturn rawLocale || DEFAULT_LANGUAGE;\n};\n\nexport default detectNavigatorLanguage;\n"]}
@@ -0,0 +1,12 @@
1
+ import type UI5Element from "../../UI5Element";
2
+ declare const setDraggedElement: (element: HTMLElement | null) => void;
3
+ type SetDraggedElementFunction = typeof setDraggedElement;
4
+ declare const DragRegistry: {
5
+ subscribe: (subscriber: UI5Element) => void;
6
+ unsubscribe: (subscriber: UI5Element) => void;
7
+ addSelfManagedArea: (area: HTMLElement | ShadowRoot) => (element: HTMLElement | null) => void;
8
+ removeSelfManagedArea: (area: HTMLElement | ShadowRoot) => void;
9
+ getDraggedElement: () => HTMLElement | null;
10
+ };
11
+ export default DragRegistry;
12
+ export type { SetDraggedElementFunction, };
@@ -0,0 +1,66 @@
1
+ let draggedElement = null;
2
+ let globalHandlersAttached = false;
3
+ const subscribers = new Set();
4
+ const selfManagedDragAreas = new Set();
5
+ const ondragstart = (e) => {
6
+ if (!e.dataTransfer || !(e.target instanceof HTMLElement)) {
7
+ return;
8
+ }
9
+ if (!selfManagedDragAreas.has(e.target)) {
10
+ draggedElement = e.target;
11
+ }
12
+ };
13
+ const ondragend = () => {
14
+ draggedElement = null;
15
+ };
16
+ const ondrop = () => {
17
+ draggedElement = null;
18
+ };
19
+ const setDraggedElement = (element) => {
20
+ draggedElement = element;
21
+ };
22
+ const getDraggedElement = () => {
23
+ return draggedElement;
24
+ };
25
+ const attachGlobalHandlers = () => {
26
+ if (globalHandlersAttached) {
27
+ return;
28
+ }
29
+ document.body.addEventListener("dragstart", ondragstart);
30
+ document.body.addEventListener("dragend", ondragend);
31
+ document.body.addEventListener("drop", ondrop);
32
+ };
33
+ const detachGlobalHandlers = () => {
34
+ document.body.removeEventListener("dragstart", ondragstart);
35
+ document.body.removeEventListener("dragend", ondragend);
36
+ document.body.removeEventListener("drop", ondrop);
37
+ globalHandlersAttached = false;
38
+ };
39
+ const subscribe = (subscriber) => {
40
+ subscribers.add(subscriber);
41
+ if (!globalHandlersAttached) {
42
+ attachGlobalHandlers();
43
+ }
44
+ };
45
+ const unsubscribe = (subscriber) => {
46
+ subscribers.delete(subscriber);
47
+ if (subscribers.size === 0 && globalHandlersAttached) {
48
+ detachGlobalHandlers();
49
+ }
50
+ };
51
+ const addSelfManagedArea = (area) => {
52
+ selfManagedDragAreas.add(area);
53
+ return setDraggedElement;
54
+ };
55
+ const removeSelfManagedArea = (area) => {
56
+ selfManagedDragAreas.delete(area);
57
+ };
58
+ const DragRegistry = {
59
+ subscribe,
60
+ unsubscribe,
61
+ addSelfManagedArea,
62
+ removeSelfManagedArea,
63
+ getDraggedElement,
64
+ };
65
+ export default DragRegistry;
66
+ //# sourceMappingURL=DragRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DragRegistry.js","sourceRoot":"","sources":["../../../src/util/dragAndDrop/DragRegistry.ts"],"names":[],"mappings":"AAEA,IAAI,cAAc,GAAuB,IAAI,CAAC;AAC9C,IAAI,sBAAsB,GAAG,KAAK,CAAC;AACnC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAc,CAAC;AAC1C,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAA4B,CAAC;AAEjE,MAAM,WAAW,GAAG,CAAC,CAAY,EAAE,EAAE;IACpC,IAAI,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,YAAY,WAAW,CAAC,EAAE;QAC1D,OAAO;KACP;IAED,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;QACxC,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;KAC1B;AACF,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,GAAG,EAAE;IACtB,cAAc,GAAG,IAAI,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,GAAG,EAAE;IACnB,cAAc,GAAG,IAAI,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,OAA2B,EAAE,EAAE;IACzD,cAAc,GAAG,OAAO,CAAC;AAC1B,CAAC,CAAC;AAGF,MAAM,iBAAiB,GAAG,GAAG,EAAE;IAC9B,OAAO,cAAc,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACjC,IAAI,sBAAsB,EAAE;QAC3B,OAAO;KACP;IAED,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACzD,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACrD,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAChD,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACjC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAC5D,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACxD,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClD,sBAAsB,GAAG,KAAK,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,UAAsB,EAAE,EAAE;IAC5C,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAE5B,IAAI,CAAC,sBAAsB,EAAE;QAC5B,oBAAoB,EAAE,CAAC;KACvB;AACF,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,UAAsB,EAAE,EAAE;IAC9C,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAE/B,IAAI,WAAW,CAAC,IAAI,KAAK,CAAC,IAAI,sBAAsB,EAAE;QACrD,oBAAoB,EAAE,CAAC;KACvB;AACF,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,IAA8B,EAAE,EAAE;IAC7D,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAE/B,OAAO,iBAAiB,CAAC;AAC1B,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,IAA8B,EAAE,EAAE;IAChE,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG;IACpB,SAAS;IACT,WAAW;IACX,kBAAkB;IAClB,qBAAqB;IACrB,iBAAiB;CACjB,CAAC;AAEF,eAAe,YAAY,CAAC","sourcesContent":["import type UI5Element from \"../../UI5Element\";\n\nlet draggedElement: HTMLElement | null = null;\nlet globalHandlersAttached = false;\nconst subscribers = new Set<UI5Element>();\nconst selfManagedDragAreas = new Set<HTMLElement | ShadowRoot>();\n\nconst ondragstart = (e: DragEvent) => {\n\tif (!e.dataTransfer || !(e.target instanceof HTMLElement)) {\n\t\treturn;\n\t}\n\n\tif (!selfManagedDragAreas.has(e.target)) {\n\t\tdraggedElement = e.target;\n\t}\n};\n\nconst ondragend = () => {\n\tdraggedElement = null;\n};\n\nconst ondrop = () => {\n\tdraggedElement = null;\n};\n\nconst setDraggedElement = (element: HTMLElement | null) => {\n\tdraggedElement = element;\n};\ntype SetDraggedElementFunction = typeof setDraggedElement;\n\nconst getDraggedElement = () => {\n\treturn draggedElement;\n};\n\nconst attachGlobalHandlers = () => {\n\tif (globalHandlersAttached) {\n\t\treturn;\n\t}\n\n\tdocument.body.addEventListener(\"dragstart\", ondragstart);\n\tdocument.body.addEventListener(\"dragend\", ondragend);\n\tdocument.body.addEventListener(\"drop\", ondrop);\n};\n\nconst detachGlobalHandlers = () => {\n\tdocument.body.removeEventListener(\"dragstart\", ondragstart);\n\tdocument.body.removeEventListener(\"dragend\", ondragend);\n\tdocument.body.removeEventListener(\"drop\", ondrop);\n\tglobalHandlersAttached = false;\n};\n\nconst subscribe = (subscriber: UI5Element) => {\n\tsubscribers.add(subscriber);\n\n\tif (!globalHandlersAttached) {\n\t\tattachGlobalHandlers();\n\t}\n};\n\nconst unsubscribe = (subscriber: UI5Element) => {\n\tsubscribers.delete(subscriber);\n\n\tif (subscribers.size === 0 && globalHandlersAttached) {\n\t\tdetachGlobalHandlers();\n\t}\n};\n\nconst addSelfManagedArea = (area: HTMLElement | ShadowRoot) => {\n\tselfManagedDragAreas.add(area);\n\n\treturn setDraggedElement;\n};\n\nconst removeSelfManagedArea = (area: HTMLElement | ShadowRoot) => {\n\tselfManagedDragAreas.delete(area);\n};\n\nconst DragRegistry = {\n\tsubscribe,\n\tunsubscribe,\n\taddSelfManagedArea,\n\tremoveSelfManagedArea,\n\tgetDraggedElement,\n};\n\nexport default DragRegistry;\nexport type {\n\tSetDraggedElementFunction,\n};\n"]}
@@ -0,0 +1,7 @@
1
+ import MovePlacement from "../../types/MovePlacement.js";
2
+ import Orientation from "../../types/Orientation.js";
3
+ declare const findClosestPosition: (elements: Array<HTMLElement>, point: number, layoutOrientation: Orientation) => {
4
+ element: HTMLElement;
5
+ placements: MovePlacement[];
6
+ } | null;
7
+ export default findClosestPosition;
@@ -0,0 +1,59 @@
1
+ import MovePlacement from "../../types/MovePlacement.js";
2
+ import Orientation from "../../types/Orientation.js";
3
+ const closestPlacement = (point, beforePoint, centerPoint, afterPoint) => {
4
+ const distToBeforePoint = Math.abs(point - beforePoint);
5
+ const distToCenterPoint = Math.abs(point - centerPoint);
6
+ const distToAfterPoint = Math.abs(point - afterPoint);
7
+ const closestPoint = Math.min(distToBeforePoint, distToCenterPoint, distToAfterPoint);
8
+ let placements = [];
9
+ switch (closestPoint) {
10
+ case distToBeforePoint:
11
+ placements = [MovePlacement.Before];
12
+ break;
13
+ case distToCenterPoint:
14
+ placements = [MovePlacement.On, distToBeforePoint < distToAfterPoint ? MovePlacement.Before : MovePlacement.After];
15
+ break;
16
+ case distToAfterPoint:
17
+ placements = [MovePlacement.After];
18
+ break;
19
+ }
20
+ return placements;
21
+ };
22
+ const findClosestPosition = (elements, point, layoutOrientation) => {
23
+ let shortestDist = Number.POSITIVE_INFINITY;
24
+ let closestElement = null;
25
+ // determine which element is most closest to the point
26
+ for (let i = 0; i < elements.length; i++) {
27
+ const el = elements[i];
28
+ const { left, width, top, height, } = el.getBoundingClientRect();
29
+ let elemCenter;
30
+ if (layoutOrientation === Orientation.Vertical) {
31
+ elemCenter = top + height / 2;
32
+ }
33
+ else { // Horizontal
34
+ elemCenter = left + width / 2;
35
+ }
36
+ const distanceToCenter = Math.abs(point - elemCenter);
37
+ if (distanceToCenter < shortestDist) {
38
+ shortestDist = distanceToCenter;
39
+ closestElement = el;
40
+ }
41
+ }
42
+ if (!closestElement) {
43
+ return null;
44
+ }
45
+ const { width, height, left, right, top, bottom, } = closestElement.getBoundingClientRect();
46
+ let placements;
47
+ if (layoutOrientation === Orientation.Vertical) {
48
+ placements = closestPlacement(point, top, top + height / 2, bottom);
49
+ }
50
+ else { // Horizontal
51
+ placements = closestPlacement(point, left, left + width / 2, right);
52
+ }
53
+ return {
54
+ element: closestElement,
55
+ placements,
56
+ };
57
+ };
58
+ export default findClosestPosition;
59
+ //# sourceMappingURL=findClosestPosition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"findClosestPosition.js","sourceRoot":"","sources":["../../../src/util/dragAndDrop/findClosestPosition.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,8BAA8B,CAAC;AACzD,OAAO,WAAW,MAAM,4BAA4B,CAAC;AAErD,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAE,WAAmB,EAAE,WAAmB,EAAE,UAAkB,EAAE,EAAE;IACxG,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,CAAC;IACxD,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,CAAC;IACxD,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAC5B,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,CAChB,CAAC;IACF,IAAI,UAAU,GAAyB,EAAE,CAAC;IAE1C,QAAQ,YAAY,EAAE;QACtB,KAAK,iBAAiB;YACrB,UAAU,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YACpC,MAAM;QACP,KAAK,iBAAiB;YACrB,UAAU,GAAG,CAAC,aAAa,CAAC,EAAE,EAAE,iBAAiB,GAAG,gBAAgB,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACnH,MAAM;QACP,KAAK,gBAAgB;YACpB,UAAU,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACnC,MAAM;KACN;IAED,OAAO,UAAU,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,QAA4B,EAAE,KAAa,EAAE,iBAA8B,EAAE,EAAE;IAC3G,IAAI,YAAY,GAAG,MAAM,CAAC,iBAAiB,CAAC;IAC5C,IAAI,cAAc,GAAuB,IAAI,CAAC;IAE9C,uDAAuD;IACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACzC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACvB,MAAM,EACL,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,GACxB,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC;QAE/B,IAAI,UAAU,CAAC;QACf,IAAI,iBAAiB,KAAK,WAAW,CAAC,QAAQ,EAAE;YAC/C,UAAU,GAAG,GAAG,GAAG,MAAM,GAAG,CAAC,CAAC;SAC9B;aAAM,EAAE,aAAa;YACrB,UAAU,GAAG,IAAI,GAAG,KAAK,GAAG,CAAC,CAAC;SAC9B;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC;QAEtD,IAAI,gBAAgB,GAAG,YAAY,EAAE;YACpC,YAAY,GAAG,gBAAgB,CAAC;YAChC,cAAc,GAAG,EAAE,CAAC;SACpB;KACD;IAED,IAAI,CAAC,cAAc,EAAE;QACpB,OAAO,IAAI,CAAC;KACZ;IAED,MAAM,EACL,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,GACvC,GAAG,cAAc,CAAC,qBAAqB,EAAE,CAAC;IAC3C,IAAI,UAAU,CAAC;IAEf,IAAI,iBAAiB,KAAK,WAAW,CAAC,QAAQ,EAAE;QAC/C,UAAU,GAAG,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;KACpE;SAAM,EAAE,aAAa;QACrB,UAAU,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;KACpE;IAED,OAAO;QACN,OAAO,EAAE,cAAc;QACvB,UAAU;KACV,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,mBAAmB,CAAC","sourcesContent":["import MovePlacement from \"../../types/MovePlacement.js\";\nimport Orientation from \"../../types/Orientation.js\";\n\nconst closestPlacement = (point: number, beforePoint: number, centerPoint: number, afterPoint: number) => {\n\tconst distToBeforePoint = Math.abs(point - beforePoint);\n\tconst distToCenterPoint = Math.abs(point - centerPoint);\n\tconst distToAfterPoint = Math.abs(point - afterPoint);\n\tconst closestPoint = Math.min(\n\t\tdistToBeforePoint,\n\t\tdistToCenterPoint,\n\t\tdistToAfterPoint,\n\t);\n\tlet placements: Array<MovePlacement> = [];\n\n\tswitch (closestPoint) {\n\tcase distToBeforePoint:\n\t\tplacements = [MovePlacement.Before];\n\t\tbreak;\n\tcase distToCenterPoint:\n\t\tplacements = [MovePlacement.On, distToBeforePoint < distToAfterPoint ? MovePlacement.Before : MovePlacement.After];\n\t\tbreak;\n\tcase distToAfterPoint:\n\t\tplacements = [MovePlacement.After];\n\t\tbreak;\n\t}\n\n\treturn placements;\n};\n\nconst findClosestPosition = (elements: Array<HTMLElement>, point: number, layoutOrientation: Orientation) => {\n\tlet shortestDist = Number.POSITIVE_INFINITY;\n\tlet closestElement: HTMLElement | null = null;\n\n\t// determine which element is most closest to the point\n\tfor (let i = 0; i < elements.length; i++) {\n\t\tconst el = elements[i];\n\t\tconst {\n\t\t\tleft, width, top, height,\n\t\t} = el.getBoundingClientRect();\n\n\t\tlet elemCenter;\n\t\tif (layoutOrientation === Orientation.Vertical) {\n\t\t\telemCenter = top + height / 2;\n\t\t} else { // Horizontal\n\t\t\telemCenter = left + width / 2;\n\t\t}\n\n\t\tconst distanceToCenter = Math.abs(point - elemCenter);\n\n\t\tif (distanceToCenter < shortestDist) {\n\t\t\tshortestDist = distanceToCenter;\n\t\t\tclosestElement = el;\n\t\t}\n\t}\n\n\tif (!closestElement) {\n\t\treturn null;\n\t}\n\n\tconst {\n\t\twidth, height, left, right, top, bottom,\n\t} = closestElement.getBoundingClientRect();\n\tlet placements;\n\n\tif (layoutOrientation === Orientation.Vertical) {\n\t\tplacements = closestPlacement(point, top, top + height / 2, bottom);\n\t} else { // Horizontal\n\t\tplacements = closestPlacement(point, left, left + width / 2, right);\n\t}\n\n\treturn {\n\t\telement: closestElement,\n\t\tplacements,\n\t};\n};\n\nexport default findClosestPosition;\n"]}
@@ -0,0 +1,2 @@
1
+ declare const longDragOverHandler: (targetsSelector: string) => (target: any, propertyKey: string, descriptor: TypedPropertyDescriptor<(arg0: DragEvent, arg1: boolean) => any>) => TypedPropertyDescriptor<(arg0: DragEvent, arg1: boolean) => any>;
2
+ export default longDragOverHandler;
@@ -0,0 +1,25 @@
1
+ let lastTarget = null;
2
+ let lastTargetDragOverStart = Date.now();
3
+ const LONG_DRAG_OVER_THRESHOLD = 300;
4
+ const longDragOverHandler = (targetsSelector) => {
5
+ return (target, propertyKey, descriptor) => {
6
+ const origHandler = descriptor.value;
7
+ descriptor.value = function handleDragOver(e) {
8
+ let isLongDragOver = false;
9
+ if (e.target instanceof HTMLElement) {
10
+ const currentTarget = e.target.closest(targetsSelector);
11
+ if (currentTarget === lastTarget && Date.now() - lastTargetDragOverStart >= LONG_DRAG_OVER_THRESHOLD) {
12
+ isLongDragOver = true;
13
+ }
14
+ else if (currentTarget !== lastTarget) {
15
+ lastTarget = currentTarget;
16
+ lastTargetDragOverStart = Date.now();
17
+ }
18
+ }
19
+ origHandler.apply(this, [e, isLongDragOver]);
20
+ };
21
+ return descriptor;
22
+ };
23
+ };
24
+ export default longDragOverHandler;
25
+ //# sourceMappingURL=longDragOverHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"longDragOverHandler.js","sourceRoot":"","sources":["../../../src/util/dragAndDrop/longDragOverHandler.ts"],"names":[],"mappings":"AAAA,IAAI,UAAU,GAAuB,IAAI,CAAC;AAC1C,IAAI,uBAAuB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;AACzC,MAAM,wBAAwB,GAAG,GAAG,CAAC;AAErC,MAAM,mBAAmB,GAAG,CAAC,eAAuB,EAAE,EAAE;IACvD,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA4E,EAAE,EAAE;QACzH,MAAM,WAAW,GAAG,UAAU,CAAC,KAAM,CAAC;QAEtC,UAAU,CAAC,KAAK,GAAG,SAAS,cAAc,CAAC,CAAY;YACtD,IAAI,cAAc,GAAG,KAAK,CAAC;YAE3B,IAAI,CAAC,CAAC,MAAM,YAAY,WAAW,EAAE;gBACpC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAc,eAAe,CAAC,CAAC;gBAErE,IAAI,aAAa,KAAK,UAAU,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,uBAAuB,IAAI,wBAAwB,EAAE;oBACrG,cAAc,GAAG,IAAI,CAAC;iBACtB;qBAAM,IAAI,aAAa,KAAK,UAAU,EAAE;oBACxC,UAAU,GAAG,aAAa,CAAC;oBAC3B,uBAAuB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;iBACrC;aACD;YAED,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;QAC9C,CAAC,CAAC;QAEF,OAAO,UAAU,CAAC;IACnB,CAAC,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,mBAAmB,CAAC","sourcesContent":["let lastTarget: HTMLElement | null = null;\nlet lastTargetDragOverStart = Date.now();\nconst LONG_DRAG_OVER_THRESHOLD = 300;\n\nconst longDragOverHandler = (targetsSelector: string) => {\n\treturn (target: any, propertyKey: string, descriptor: TypedPropertyDescriptor<(arg0: DragEvent, arg1: boolean) => any>) => {\n\t\tconst origHandler = descriptor.value!;\n\n\t\tdescriptor.value = function handleDragOver(e: DragEvent) {\n\t\t\tlet isLongDragOver = false;\n\n\t\t\tif (e.target instanceof HTMLElement) {\n\t\t\t\tconst currentTarget = e.target.closest<HTMLElement>(targetsSelector);\n\n\t\t\t\tif (currentTarget === lastTarget && Date.now() - lastTargetDragOverStart >= LONG_DRAG_OVER_THRESHOLD) {\n\t\t\t\t\tisLongDragOver = true;\n\t\t\t\t} else if (currentTarget !== lastTarget) {\n\t\t\t\t\tlastTarget = currentTarget;\n\t\t\t\t\tlastTargetDragOverStart = Date.now();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\torigHandler.apply(this, [e, isLongDragOver]);\n\t\t};\n\n\t\treturn descriptor;\n\t};\n};\n\nexport default longDragOverHandler;\n"]}
@@ -4,9 +4,10 @@ declare const getClassCopy: (klass: typeof UI5Element, constructorCallback: () =
4
4
  __id?: string | undefined;
5
5
  _suppressInvalidation: boolean;
6
6
  _changedState: import("../UI5Element.js").ChangeInfo[];
7
- _eventProvider: import("../EventProvider.js").default<import("../UI5Element.js").ChangeInfo & {
7
+ _invalidationEventProvider: import("../EventProvider.js").default<import("../UI5Element.js").ChangeInfo & {
8
8
  target: UI5Element;
9
9
  }, void>;
10
+ _componentStateFinalizedEventProvider: import("../EventProvider.js").default<void, void>;
10
11
  _inDOM: boolean;
11
12
  _fullyConnected: boolean;
12
13
  _childChangeListeners: Map<string, (param: import("../UI5Element.js").ChangeInfo & {
@@ -18,7 +19,6 @@ declare const getClassCopy: (klass: typeof UI5Element, constructorCallback: () =
18
19
  };
19
20
  _doNotSyncAttributes: Set<string>;
20
21
  _state: import("../UI5ElementMetadata.js").State;
21
- _onComponentStateFinalized?: (() => void) | undefined;
22
22
  _getRealDomRef?: (() => HTMLElement) | undefined;
23
23
  staticAreaItem?: import("../StaticAreaItem.js").default | undefined;
24
24
  readonly _id: string;
@@ -46,9 +46,9 @@ declare const getClassCopy: (klass: typeof UI5Element, constructorCallback: () =
46
46
  _updateAttribute(name: string, newValue: import("../UI5ElementMetadata.js").PropertyValue): void;
47
47
  _upgradeProperty(this: Record<string, any>, propertyName: string): void;
48
48
  _upgradeAllProperties(): void;
49
- _getChildChangeListener(slotName: string): ((param: import("../UI5Element.js").ChangeInfo & {
49
+ _getChildChangeListener(slotName: string): (param: import("../UI5Element.js").ChangeInfo & {
50
50
  target: UI5Element;
51
- }) => void) | undefined;
51
+ }) => void;
52
52
  _getSlotChangeListener(slotName: string): (this: HTMLSlotElement, ev: Event) => void;
53
53
  _attachSlotChange(child: HTMLSlotElement, slotName: string): void;
54
54
  _detachSlotChange(child: HTMLSlotElement, slotName: string): void;
@@ -66,9 +66,12 @@ declare const getClassCopy: (klass: typeof UI5Element, constructorCallback: () =
66
66
  fireEvent<T>(name: string, data?: T | undefined, cancelable?: boolean, bubbles?: boolean): boolean;
67
67
  _fireEvent<T_1>(name: string, data?: T_1 | undefined, cancelable?: boolean, bubbles?: boolean): boolean;
68
68
  getSlottedNodes<T_2 = Node>(slotName: string): T_2[];
69
+ attachComponentStateFinalized(callback: () => void): void;
70
+ detachComponentStateFinalized(callback: () => void): void;
69
71
  readonly effectiveDir: string | undefined;
70
72
  readonly isUI5Element: boolean;
71
73
  readonly classes: import("../types.js").ClassMap;
74
+ readonly accessibilityInfo: import("../types.js").AccessibilityInfo;
72
75
  getStaticAreaItemDomRef(): Promise<ShadowRoot | null>;
73
76
  accessKey: string;
74
77
  readonly accessKeyLabel: string;
@@ -85,11 +88,15 @@ declare const getClassCopy: (klass: typeof UI5Element, constructorCallback: () =
85
88
  readonly offsetTop: number;
86
89
  readonly offsetWidth: number;
87
90
  outerText: string;
91
+ popover: string | null;
88
92
  spellcheck: boolean;
89
93
  title: string;
90
94
  translate: boolean;
91
95
  attachInternals(): ElementInternals;
92
96
  click(): void;
97
+ hidePopover(): void;
98
+ showPopover(): void;
99
+ togglePopover(force?: boolean | undefined): void;
93
100
  addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions | undefined): void;
94
101
  addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions | undefined): void;
95
102
  removeEventListener<K_1 extends keyof HTMLElementEventMap>(type: K_1, listener: (this: HTMLElement, ev: HTMLElementEventMap[K_1]) => any, options?: boolean | EventListenerOptions | undefined): void;
@@ -118,9 +125,12 @@ declare const getClassCopy: (klass: typeof UI5Element, constructorCallback: () =
118
125
  slot: string;
119
126
  readonly tagName: string;
120
127
  attachShadow(init: ShadowRootInit): ShadowRoot;
128
+ checkVisibility(options?: CheckVisibilityOptions | undefined): boolean;
121
129
  closest<K_2 extends keyof HTMLElementTagNameMap>(selector: K_2): HTMLElementTagNameMap[K_2] | null;
122
130
  closest<K_3 extends keyof SVGElementTagNameMap>(selector: K_3): SVGElementTagNameMap[K_3] | null;
131
+ closest<K_4 extends keyof MathMLElementTagNameMap>(selector: K_4): MathMLElementTagNameMap[K_4] | null;
123
132
  closest<E extends Element = Element>(selectors: string): E | null;
133
+ computedStyleMap(): StylePropertyMapReadOnly;
124
134
  getAttribute(qualifiedName: string): string | null;
125
135
  getAttributeNS(namespace: string | null, localName: string): string | null;
126
136
  getAttributeNames(): string[];
@@ -129,11 +139,14 @@ declare const getClassCopy: (klass: typeof UI5Element, constructorCallback: () =
129
139
  getBoundingClientRect(): DOMRect;
130
140
  getClientRects(): DOMRectList;
131
141
  getElementsByClassName(classNames: string): HTMLCollectionOf<Element>;
132
- getElementsByTagName<K_4 extends keyof HTMLElementTagNameMap>(qualifiedName: K_4): HTMLCollectionOf<HTMLElementTagNameMap[K_4]>;
133
- getElementsByTagName<K_5 extends keyof SVGElementTagNameMap>(qualifiedName: K_5): HTMLCollectionOf<SVGElementTagNameMap[K_5]>;
142
+ getElementsByTagName<K_5 extends keyof HTMLElementTagNameMap>(qualifiedName: K_5): HTMLCollectionOf<HTMLElementTagNameMap[K_5]>;
143
+ getElementsByTagName<K_6 extends keyof SVGElementTagNameMap>(qualifiedName: K_6): HTMLCollectionOf<SVGElementTagNameMap[K_6]>;
144
+ getElementsByTagName<K_7 extends keyof MathMLElementTagNameMap>(qualifiedName: K_7): HTMLCollectionOf<MathMLElementTagNameMap[K_7]>;
145
+ getElementsByTagName<K_8 extends keyof HTMLElementDeprecatedTagNameMap>(qualifiedName: K_8): HTMLCollectionOf<HTMLElementDeprecatedTagNameMap[K_8]>;
134
146
  getElementsByTagName(qualifiedName: string): HTMLCollectionOf<Element>;
135
147
  getElementsByTagNameNS(namespaceURI: "http://www.w3.org/1999/xhtml", localName: string): HTMLCollectionOf<HTMLElement>;
136
148
  getElementsByTagNameNS(namespaceURI: "http://www.w3.org/2000/svg", localName: string): HTMLCollectionOf<SVGElement>;
149
+ getElementsByTagNameNS(namespaceURI: "http://www.w3.org/1998/Math/MathML", localName: string): HTMLCollectionOf<MathMLElement>;
137
150
  getElementsByTagNameNS(namespace: string | null, localName: string): HTMLCollectionOf<Element>;
138
151
  hasAttribute(qualifiedName: string): boolean;
139
152
  hasAttributeNS(namespace: string | null, localName: string): boolean;
@@ -191,24 +204,24 @@ declare const getClassCopy: (klass: typeof UI5Element, constructorCallback: () =
191
204
  normalize(): void;
192
205
  removeChild<T_5 extends Node>(child: T_5): T_5;
193
206
  replaceChild<T_6 extends Node>(node: Node, child: T_6): T_6;
194
- readonly ATTRIBUTE_NODE: number;
195
- readonly CDATA_SECTION_NODE: number;
196
- readonly COMMENT_NODE: number;
197
- readonly DOCUMENT_FRAGMENT_NODE: number;
198
- readonly DOCUMENT_NODE: number;
199
- readonly DOCUMENT_POSITION_CONTAINED_BY: number;
200
- readonly DOCUMENT_POSITION_CONTAINS: number;
201
- readonly DOCUMENT_POSITION_DISCONNECTED: number;
202
- readonly DOCUMENT_POSITION_FOLLOWING: number;
203
- readonly DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;
204
- readonly DOCUMENT_POSITION_PRECEDING: number;
205
- readonly DOCUMENT_TYPE_NODE: number;
206
- readonly ELEMENT_NODE: number;
207
- readonly ENTITY_NODE: number;
208
- readonly ENTITY_REFERENCE_NODE: number;
209
- readonly NOTATION_NODE: number;
210
- readonly PROCESSING_INSTRUCTION_NODE: number;
211
- readonly TEXT_NODE: number;
207
+ readonly ELEMENT_NODE: 1;
208
+ readonly ATTRIBUTE_NODE: 2;
209
+ readonly TEXT_NODE: 3;
210
+ readonly CDATA_SECTION_NODE: 4;
211
+ readonly ENTITY_REFERENCE_NODE: 5;
212
+ readonly ENTITY_NODE: 6;
213
+ readonly PROCESSING_INSTRUCTION_NODE: 7;
214
+ readonly COMMENT_NODE: 8;
215
+ readonly DOCUMENT_NODE: 9;
216
+ readonly DOCUMENT_TYPE_NODE: 10;
217
+ readonly DOCUMENT_FRAGMENT_NODE: 11;
218
+ readonly NOTATION_NODE: 12;
219
+ readonly DOCUMENT_POSITION_DISCONNECTED: 1;
220
+ readonly DOCUMENT_POSITION_PRECEDING: 2;
221
+ readonly DOCUMENT_POSITION_FOLLOWING: 4;
222
+ readonly DOCUMENT_POSITION_CONTAINS: 8;
223
+ readonly DOCUMENT_POSITION_CONTAINED_BY: 16;
224
+ readonly DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: 32;
212
225
  dispatchEvent(event: Event): boolean;
213
226
  ariaAtomic: string | null;
214
227
  ariaAutoComplete: string | null;
@@ -216,7 +229,6 @@ declare const getClassCopy: (klass: typeof UI5Element, constructorCallback: () =
216
229
  ariaChecked: string | null;
217
230
  ariaColCount: string | null;
218
231
  ariaColIndex: string | null;
219
- ariaColIndexText: string | null;
220
232
  ariaColSpan: string | null;
221
233
  ariaCurrent: string | null;
222
234
  ariaDisabled: string | null;
@@ -240,7 +252,6 @@ declare const getClassCopy: (klass: typeof UI5Element, constructorCallback: () =
240
252
  ariaRoleDescription: string | null;
241
253
  ariaRowCount: string | null;
242
254
  ariaRowIndex: string | null;
243
- ariaRowIndexText: string | null;
244
255
  ariaRowSpan: string | null;
245
256
  ariaSelected: string | null;
246
257
  ariaSetSize: string | null;
@@ -250,6 +261,9 @@ declare const getClassCopy: (klass: typeof UI5Element, constructorCallback: () =
250
261
  ariaValueNow: string | null;
251
262
  ariaValueText: string | null;
252
263
  role: string | null;
264
+ ariaBraileLabel: string | null;
265
+ ariaBraileRoleDescription: string | null;
266
+ ariaDescription: string | null;
253
267
  animate(keyframes: Keyframe[] | PropertyIndexedKeyframes | null, options?: number | KeyframeAnimationOptions | undefined): Animation;
254
268
  getAnimations(options?: GetAnimationsOptions | undefined): Animation[];
255
269
  after(...nodes: (string | Node)[]): void;
@@ -265,17 +279,19 @@ declare const getClassCopy: (klass: typeof UI5Element, constructorCallback: () =
265
279
  readonly lastElementChild: Element | null;
266
280
  append(...nodes: (string | Node)[]): void;
267
281
  prepend(...nodes: (string | Node)[]): void;
268
- querySelector<K_6 extends keyof HTMLElementTagNameMap>(selectors: K_6): HTMLElementTagNameMap[K_6] | null;
269
- querySelector<K_7 extends keyof SVGElementTagNameMap>(selectors: K_7): SVGElementTagNameMap[K_7] | null;
282
+ querySelector<K_9 extends keyof HTMLElementTagNameMap>(selectors: K_9): HTMLElementTagNameMap[K_9] | null;
283
+ querySelector<K_10 extends keyof SVGElementTagNameMap>(selectors: K_10): SVGElementTagNameMap[K_10] | null;
284
+ querySelector<K_11 extends keyof MathMLElementTagNameMap>(selectors: K_11): MathMLElementTagNameMap[K_11] | null;
285
+ querySelector<K_12 extends keyof HTMLElementDeprecatedTagNameMap>(selectors: K_12): HTMLElementDeprecatedTagNameMap[K_12] | null;
270
286
  querySelector<E_1 extends Element = Element>(selectors: string): E_1 | null;
271
- querySelectorAll<K_8 extends keyof HTMLElementTagNameMap>(selectors: K_8): NodeListOf<HTMLElementTagNameMap[K_8]>;
272
- querySelectorAll<K_9 extends keyof SVGElementTagNameMap>(selectors: K_9): NodeListOf<SVGElementTagNameMap[K_9]>;
287
+ querySelectorAll<K_13 extends keyof HTMLElementTagNameMap>(selectors: K_13): NodeListOf<HTMLElementTagNameMap[K_13]>;
288
+ querySelectorAll<K_14 extends keyof SVGElementTagNameMap>(selectors: K_14): NodeListOf<SVGElementTagNameMap[K_14]>;
289
+ querySelectorAll<K_15 extends keyof MathMLElementTagNameMap>(selectors: K_15): NodeListOf<MathMLElementTagNameMap[K_15]>;
290
+ querySelectorAll<K_16 extends keyof HTMLElementDeprecatedTagNameMap>(selectors: K_16): NodeListOf<HTMLElementDeprecatedTagNameMap[K_16]>;
273
291
  querySelectorAll<E_2 extends Element = Element>(selectors: string): NodeListOf<E_2>;
274
292
  replaceChildren(...nodes: (string | Node)[]): void;
275
293
  readonly assignedSlot: HTMLSlotElement | null;
276
- oncopy: ((this: DocumentAndElementEventHandlers, ev: ClipboardEvent) => any) | null;
277
- oncut: ((this: DocumentAndElementEventHandlers, ev: ClipboardEvent) => any) | null;
278
- onpaste: ((this: DocumentAndElementEventHandlers, ev: ClipboardEvent) => any) | null;
294
+ readonly attributeStyleMap: StylePropertyMap;
279
295
  readonly style: CSSStyleDeclaration;
280
296
  contentEditable: string;
281
297
  enterKeyHint: string;
@@ -296,7 +312,9 @@ declare const getClassCopy: (klass: typeof UI5Element, constructorCallback: () =
296
312
  onclick: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
297
313
  onclose: ((this: GlobalEventHandlers, ev: Event) => any) | null;
298
314
  oncontextmenu: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
315
+ oncopy: ((this: GlobalEventHandlers, ev: ClipboardEvent) => any) | null;
299
316
  oncuechange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
317
+ oncut: ((this: GlobalEventHandlers, ev: ClipboardEvent) => any) | null;
300
318
  ondblclick: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
301
319
  ondrag: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;
302
320
  ondragend: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;
@@ -329,6 +347,7 @@ declare const getClassCopy: (klass: typeof UI5Element, constructorCallback: () =
329
347
  onmouseout: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
330
348
  onmouseover: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
331
349
  onmouseup: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
350
+ onpaste: ((this: GlobalEventHandlers, ev: ClipboardEvent) => any) | null;
332
351
  onpause: ((this: GlobalEventHandlers, ev: Event) => any) | null;
333
352
  onplay: ((this: GlobalEventHandlers, ev: Event) => any) | null;
334
353
  onplaying: ((this: GlobalEventHandlers, ev: Event) => any) | null;
@@ -345,6 +364,7 @@ declare const getClassCopy: (klass: typeof UI5Element, constructorCallback: () =
345
364
  onreset: ((this: GlobalEventHandlers, ev: Event) => any) | null;
346
365
  onresize: ((this: GlobalEventHandlers, ev: UIEvent) => any) | null;
347
366
  onscroll: ((this: GlobalEventHandlers, ev: Event) => any) | null;
367
+ onscrollend: ((this: GlobalEventHandlers, ev: Event) => any) | null;
348
368
  onsecuritypolicyviolation: ((this: GlobalEventHandlers, ev: SecurityPolicyViolationEvent) => any) | null;
349
369
  onseeked: ((this: GlobalEventHandlers, ev: Event) => any) | null;
350
370
  onseeking: ((this: GlobalEventHandlers, ev: Event) => any) | null;
@@ -388,7 +408,7 @@ declare const getClassCopy: (klass: typeof UI5Element, constructorCallback: () =
388
408
  _needsStaticArea(): boolean;
389
409
  _generateAccessors(): void;
390
410
  metadata: import("../UI5ElementMetadata.js").Metadata;
391
- readonly styles: import("../types.js").ComponentStylesData;
411
+ styles: import("../types.js").ComponentStylesData;
392
412
  readonly staticAreaStyles: import("../types.js").ComponentStylesData;
393
413
  readonly dependencies: (typeof UI5Element)[];
394
414
  getUniqueDependencies(this: typeof UI5Element): (typeof UI5Element)[];
@@ -1,2 +1,2 @@
1
- declare const _default: (value: string) => string[] | null;
2
- export default _default;
1
+ declare const designTimePropertyAsArray: (value: string) => string[] | null;
2
+ export default designTimePropertyAsArray;
@@ -1,5 +1,6 @@
1
- export default (value) => {
1
+ const designTimePropertyAsArray = (value) => {
2
2
  const m = /\$([-a-z0-9A-Z._]+)(?::([^$]*))?\$/.exec(value);
3
3
  return m && m[2] ? m[2].split(/,/) : null;
4
4
  };
5
+ export default designTimePropertyAsArray;
5
6
  //# sourceMappingURL=getDesigntimePropertyAsArray.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getDesigntimePropertyAsArray.js","sourceRoot":"","sources":["../../src/util/getDesigntimePropertyAsArray.ts"],"names":[],"mappings":"AAAA,eAAe,CAAC,KAAa,EAAE,EAAE;IAChC,MAAM,CAAC,GAAG,oCAAoC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3C,CAAC,CAAC","sourcesContent":["export default (value: string) => {\n\tconst m = /\\$([-a-z0-9A-Z._]+)(?::([^$]*))?\\$/.exec(value);\n\treturn m && m[2] ? m[2].split(/,/) : null;\n};\n"]}
1
+ {"version":3,"file":"getDesigntimePropertyAsArray.js","sourceRoot":"","sources":["../../src/util/getDesigntimePropertyAsArray.ts"],"names":[],"mappings":"AAAA,MAAM,yBAAyB,GAAG,CAAC,KAAa,EAAE,EAAE;IACnD,MAAM,CAAC,GAAG,oCAAoC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3C,CAAC,CAAC;AAEF,eAAe,yBAAyB,CAAC","sourcesContent":["const designTimePropertyAsArray = (value: string) => {\n\tconst m = /\\$([-a-z0-9A-Z._]+)(?::([^$]*))?\\$/.exec(value);\n\treturn m && m[2] ? m[2].split(/,/) : null;\n};\n\nexport default designTimePropertyAsArray;\n"]}
@@ -0,0 +1,2 @@
1
+ declare const getParentElement: (el: HTMLElement) => HTMLElement;
2
+ export default getParentElement;
@@ -0,0 +1,5 @@
1
+ const getParentElement = (el) => {
2
+ return (el.parentElement ? el.parentNode : el.parentNode.host);
3
+ };
4
+ export default getParentElement;
5
+ //# sourceMappingURL=getParentElement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getParentElement.js","sourceRoot":"","sources":["../../src/util/getParentElement.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG,CAAC,EAAe,EAAE,EAAE;IAC5C,OAAO,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAE,EAAE,CAAC,UAAyB,CAAC,IAAI,CAAgB,CAAC;AAC/F,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC","sourcesContent":["const getParentElement = (el: HTMLElement) => {\n\treturn (el.parentElement ? el.parentNode : (el.parentNode as ShadowRoot).host) as HTMLElement;\n};\n\nexport default getParentElement;\n"]}
@@ -0,0 +1,2 @@
1
+ declare const isElementContainingBlock: (el: HTMLElement) => boolean | "";
2
+ export default isElementContainingBlock;
@@ -0,0 +1,11 @@
1
+ const isElementContainingBlock = (el) => {
2
+ const computedStyle = getComputedStyle(el);
3
+ return ["size", "inline-size"].indexOf(computedStyle.containerType) > -1
4
+ || ["transform", "perspective"].indexOf(computedStyle.willChange) > -1
5
+ || ["layout", "paint", "strict", "content"].indexOf(computedStyle.contain) > -1
6
+ || (computedStyle.transform && computedStyle.transform !== "none")
7
+ || (computedStyle.perspective && computedStyle.perspective !== "none")
8
+ || (computedStyle.backdropFilter && computedStyle.backdropFilter !== "none");
9
+ };
10
+ export default isElementContainingBlock;
11
+ //# sourceMappingURL=isElementContainingBlock.js.map