@ui5/webcomponents-base 0.0.0-389bdbabc → 0.0.0-453158269

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 (473) hide show
  1. package/.eslintignore +4 -0
  2. package/CHANGELOG.md +407 -0
  3. package/README.md +26 -2
  4. package/bundle.esm.js +18 -12
  5. package/dist/AssetRegistry.js +8 -6
  6. package/dist/Boot.js +59 -0
  7. package/dist/CSP.js +59 -0
  8. package/dist/CustomElementsRegistry.js +95 -0
  9. package/dist/CustomElementsScope.js +30 -0
  10. package/dist/CustomElementsScopeUtils.js +108 -0
  11. package/dist/DOMObserver.js +65 -0
  12. package/dist/Device.js +71 -773
  13. package/dist/EventProvider.js +38 -26
  14. package/dist/FeaturesRegistry.js +4 -1
  15. package/dist/FontFace.js +20 -56
  16. package/dist/InitialConfiguration.js +64 -17
  17. package/dist/Keys.js +295 -0
  18. package/dist/ManagedStyles.js +83 -0
  19. package/dist/MediaRange.js +109 -0
  20. package/dist/PropertiesFileFormat.js +95 -0
  21. package/dist/Render.js +175 -0
  22. package/dist/RenderQueue.js +41 -17
  23. package/dist/RenderScheduler.js +24 -145
  24. package/dist/Runtimes.js +107 -0
  25. package/dist/StaticArea.js +2 -34
  26. package/dist/StaticAreaItem.js +69 -35
  27. package/dist/SystemCSSVars.js +10 -0
  28. package/dist/Theming.js +3 -44
  29. package/dist/UI5Element.js +497 -306
  30. package/dist/UI5ElementMetadata.js +198 -19
  31. package/dist/asset-registries/Icons.js +125 -14
  32. package/dist/asset-registries/Illustrations.js +30 -0
  33. package/dist/asset-registries/LocaleData.js +114 -51
  34. package/dist/asset-registries/Themes.js +37 -30
  35. package/dist/asset-registries/i18n.js +80 -34
  36. package/dist/assets-meta/IconCollectionsAlias.js +18 -0
  37. package/dist/config/AnimationMode.js +16 -2
  38. package/dist/config/CalendarType.js +7 -7
  39. package/dist/config/FormatSettings.js +5 -1
  40. package/dist/config/Icons.js +52 -0
  41. package/dist/config/Language.js +62 -3
  42. package/dist/config/NoConflict.js +10 -3
  43. package/dist/config/Theme.js +32 -3
  44. package/dist/css/BusyIndicator.css +80 -0
  45. package/dist/css/FontFace.css +75 -0
  46. package/dist/css/OverrideFontFace.css +32 -0
  47. package/dist/css/SystemCSSVars.css +17 -0
  48. package/dist/delegate/ItemNavigation.js +245 -168
  49. package/dist/delegate/ResizeHandler.js +78 -38
  50. package/dist/delegate/ScrollEnablement.js +122 -14
  51. package/dist/features/F6Navigation.js +106 -0
  52. package/dist/features/OpenUI5Enablement.js +119 -0
  53. package/dist/features/OpenUI5Support.js +125 -0
  54. package/dist/generated/AssetParameters.js +13 -0
  55. package/dist/generated/VersionInfo.js +10 -0
  56. package/dist/generated/css/BusyIndicator.css.js +5 -0
  57. package/dist/generated/css/FontFace.css.js +5 -0
  58. package/dist/generated/css/OverrideFontFace.css.js +5 -0
  59. package/dist/generated/css/SystemCSSVars.css.js +5 -0
  60. package/dist/getSharedResource.js +30 -0
  61. package/dist/i18nBundle.js +62 -11
  62. package/dist/isLegacyBrowser.js +3 -0
  63. package/dist/{Locale.js → locale/Locale.js} +0 -10
  64. package/dist/locale/RTLAwareRegistry.js +14 -0
  65. package/dist/locale/applyDirection.js +17 -0
  66. package/dist/locale/directionChange.js +32 -0
  67. package/dist/locale/getEffectiveDir.js +28 -0
  68. package/dist/locale/getLocale.js +41 -0
  69. package/dist/locale/languageChange.js +22 -0
  70. package/dist/locale/nextFallbackLocale.js +28 -0
  71. package/{src/util → dist/locale}/normalizeLocale.js +8 -31
  72. package/dist/renderer/LitRenderer.js +44 -7
  73. package/dist/renderer/directives/style-map.js +72 -0
  74. package/dist/renderer/executeTemplate.js +34 -0
  75. package/dist/resources/bundle.esm.js +18 -7436
  76. package/dist/resources/bundle.esm.js.map +1 -1
  77. package/dist/sap/base/Log.js +241 -0
  78. package/dist/sap/base/assert.js +8 -0
  79. package/dist/sap/base/security/URLListValidator.js +148 -0
  80. package/dist/sap/base/security/encodeCSS.js +14 -0
  81. package/dist/sap/base/security/encodeXML.js +23 -0
  82. package/dist/sap/base/security/sanitizeHTML.js +16 -0
  83. package/dist/sap/base/strings/toHex.js +8 -0
  84. package/dist/sap/base/util/now.js +7 -0
  85. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3585 -0
  86. package/dist/test-resources/assets/Themes.js +11 -5
  87. package/dist/test-resources/elements/Generic.js +1 -0
  88. package/dist/test-resources/elements/Parent.js +7 -2
  89. package/dist/test-resources/elements/WithStaticArea.js +77 -0
  90. package/dist/test-resources/pages/AllTestElements.html +5 -5
  91. package/dist/test-resources/pages/Configuration.html +0 -2
  92. package/dist/test-resources/pages/ConfigurationScript.html +1 -3
  93. package/dist/test-resources/pages/assets/messagebundle_de.properties +1 -0
  94. package/dist/test-resources/pages/assets/messagebundle_en.properties +1 -0
  95. package/dist/test-resources/pages/assets/messagebundle_es.properties +1 -0
  96. package/dist/test-resources/pages/assets/messagebundle_fr.properties +1 -0
  97. package/dist/test-resources/pages/i18n.html +33 -0
  98. package/dist/test-resources/specs/ConfigurationChange.spec.js +11 -9
  99. package/dist/test-resources/specs/ConfigurationScript.spec.js +25 -23
  100. package/dist/test-resources/specs/ConfigurationURL.spec.js +65 -17
  101. package/dist/test-resources/specs/CustomTheme.spec.js +9 -7
  102. package/dist/test-resources/specs/EventProvider.spec.js +63 -0
  103. package/dist/test-resources/specs/StaticArea.spec.js +78 -0
  104. package/dist/test-resources/specs/Theming.spec.js +23 -10
  105. package/dist/test-resources/specs/UI5ElementInvalidation.js +54 -70
  106. package/dist/test-resources/specs/UI5ElementLifecycle.js +19 -14
  107. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +25 -51
  108. package/dist/test-resources/specs/UI5ElementMetadataExt.js +9 -7
  109. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +7 -5
  110. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +37 -35
  111. package/dist/test-resources/specs/UI5ElementShadowDOM.js +10 -8
  112. package/dist/test-resources/specs/UI5ElementSlots.js +10 -8
  113. package/dist/theming/CustomStyle.js +47 -6
  114. package/dist/theming/ThemeLoaded.js +22 -0
  115. package/dist/theming/applyTheme.js +79 -0
  116. package/dist/theming/getConstructableStyle.js +30 -0
  117. package/dist/theming/getEffectiveLinksHrefs.js +27 -0
  118. package/dist/theming/getEffectiveStyle.js +39 -0
  119. package/dist/theming/getStylesString.js +15 -0
  120. package/dist/theming/getThemeDesignerTheme.js +87 -0
  121. package/dist/theming/preloadLinks.js +23 -0
  122. package/dist/thirdparty/_merge.js +32 -0
  123. package/dist/thirdparty/isPlainObject.js +18 -0
  124. package/dist/thirdparty/merge.js +10 -0
  125. package/dist/types/CSSColor.js +9 -0
  126. package/{src/dates → dist/types}/CalendarType.js +2 -2
  127. package/dist/types/DataType.js +13 -1
  128. package/dist/types/Float.js +14 -0
  129. package/dist/types/Integer.js +4 -0
  130. package/dist/types/InvisibleMessageMode.js +30 -0
  131. package/dist/types/ItemNavigationBehavior.js +2 -7
  132. package/dist/types/NavigationMode.js +1 -0
  133. package/dist/types/PopupState.js +1 -1
  134. package/dist/types/ValueState.js +2 -1
  135. package/dist/updateShadowRoot.js +30 -0
  136. package/dist/util/AriaLabelHelper.js +41 -0
  137. package/dist/util/Caret.js +45 -0
  138. package/dist/util/ColorConversion.js +370 -0
  139. package/dist/util/FocusableElements.js +30 -11
  140. package/dist/util/HTMLSanitizer.js +7 -0
  141. package/dist/util/InvisibleMessage.js +60 -0
  142. package/dist/util/PopupUtils.js +93 -0
  143. package/dist/util/SlotsHelper.js +43 -0
  144. package/dist/util/StringHelper.js +17 -2
  145. package/dist/util/TabbableElements.js +9 -2
  146. package/dist/util/arraysAreEqual.js +15 -0
  147. package/dist/util/clamp.js +12 -0
  148. package/dist/util/createLinkInHead.js +19 -0
  149. package/dist/util/debounce.js +17 -0
  150. package/dist/util/detectNavigatorLanguage.js +3 -1
  151. package/dist/util/escapeRegex.js +10 -0
  152. package/dist/util/findNodeOwner.js +35 -0
  153. package/dist/util/generateHighlightedMarkup.js +42 -0
  154. package/dist/util/getActiveElement.js +11 -0
  155. package/dist/util/getClassCopy.js +10 -0
  156. package/dist/util/getEffectiveContentDensity.js +5 -0
  157. package/dist/util/getFileExtension.js +21 -0
  158. package/dist/util/getNormalizedTarget.js +16 -0
  159. package/dist/util/getSingletonElementInstance.js +13 -0
  160. package/dist/util/isElementInView.js +15 -0
  161. package/dist/util/isNodeHidden.js +1 -5
  162. package/dist/util/isNodeTabbable.js +4 -4
  163. package/dist/util/isValidPropertyName.js +11 -2
  164. package/dist/util/setToArray.js +10 -0
  165. package/hash.txt +1 -0
  166. package/index.js +1 -1
  167. package/lib/generate-asset-parameters/index.js +25 -0
  168. package/lib/generate-styles/index.js +26 -0
  169. package/lib/generate-version-info/index.js +32 -0
  170. package/package-scripts.js +34 -18
  171. package/package.json +21 -14
  172. package/src/AssetRegistry.js +8 -6
  173. package/src/Boot.js +59 -0
  174. package/src/CSP.js +59 -0
  175. package/src/CustomElementsRegistry.js +95 -0
  176. package/src/CustomElementsScope.js +30 -0
  177. package/src/CustomElementsScopeUtils.js +108 -0
  178. package/src/DOMObserver.js +65 -0
  179. package/src/Device.js +71 -773
  180. package/src/EventProvider.js +38 -26
  181. package/src/FeaturesRegistry.js +4 -1
  182. package/src/FontFace.js +20 -56
  183. package/src/InitialConfiguration.js +64 -17
  184. package/src/Keys.js +295 -0
  185. package/src/ManagedStyles.js +83 -0
  186. package/src/MediaRange.js +109 -0
  187. package/src/PropertiesFileFormat.js +95 -0
  188. package/src/Render.js +175 -0
  189. package/src/RenderQueue.js +41 -17
  190. package/src/RenderScheduler.js +24 -145
  191. package/src/Runtimes.js +107 -0
  192. package/src/StaticArea.js +1 -39
  193. package/src/StaticAreaItem.js +67 -39
  194. package/src/SystemCSSVars.js +10 -0
  195. package/src/Theming.js +3 -44
  196. package/src/UI5Element.js +497 -306
  197. package/src/UI5ElementMetadata.js +198 -19
  198. package/src/asset-registries/Icons.js +125 -14
  199. package/src/asset-registries/Illustrations.js +30 -0
  200. package/src/asset-registries/LocaleData.js +114 -51
  201. package/src/asset-registries/Themes.js +37 -30
  202. package/src/asset-registries/i18n.js +80 -34
  203. package/src/assets-meta/IconCollectionsAlias.js +18 -0
  204. package/src/config/AnimationMode.js +16 -2
  205. package/src/config/CalendarType.js +7 -7
  206. package/src/config/FormatSettings.js +5 -1
  207. package/src/config/Icons.js +52 -0
  208. package/src/config/Language.js +62 -3
  209. package/src/config/NoConflict.js +10 -3
  210. package/src/config/Theme.js +32 -3
  211. package/src/css/BusyIndicator.css +80 -0
  212. package/src/css/FontFace.css +75 -0
  213. package/src/css/OverrideFontFace.css +32 -0
  214. package/src/css/SystemCSSVars.css +17 -0
  215. package/src/delegate/ItemNavigation.js +245 -168
  216. package/src/delegate/ResizeHandler.js +78 -38
  217. package/src/delegate/ScrollEnablement.js +122 -14
  218. package/src/features/F6Navigation.js +106 -0
  219. package/src/features/OpenUI5Enablement.js +119 -0
  220. package/src/features/OpenUI5Support.js +125 -0
  221. package/src/getSharedResource.js +30 -0
  222. package/src/i18nBundle.js +62 -11
  223. package/src/isLegacyBrowser.js +3 -0
  224. package/src/{Locale.js → locale/Locale.js} +0 -10
  225. package/src/locale/RTLAwareRegistry.js +14 -0
  226. package/src/locale/applyDirection.js +17 -0
  227. package/src/locale/directionChange.js +32 -0
  228. package/src/locale/getEffectiveDir.js +28 -0
  229. package/src/locale/getLocale.js +41 -0
  230. package/src/locale/languageChange.js +22 -0
  231. package/src/locale/nextFallbackLocale.js +28 -0
  232. package/{dist/util → src/locale}/normalizeLocale.js +8 -31
  233. package/src/renderer/LitRenderer.js +44 -7
  234. package/src/renderer/directives/style-map.js +72 -0
  235. package/src/renderer/executeTemplate.js +34 -0
  236. package/src/theming/CustomStyle.js +47 -6
  237. package/src/theming/ThemeLoaded.js +22 -0
  238. package/src/theming/applyTheme.js +79 -0
  239. package/src/theming/getConstructableStyle.js +30 -0
  240. package/src/theming/getEffectiveLinksHrefs.js +27 -0
  241. package/src/theming/getEffectiveStyle.js +39 -0
  242. package/src/theming/getStylesString.js +15 -0
  243. package/src/theming/getThemeDesignerTheme.js +87 -0
  244. package/src/theming/preloadLinks.js +23 -0
  245. package/src/thirdparty/_merge.js +32 -0
  246. package/src/thirdparty/isPlainObject.js +18 -0
  247. package/src/thirdparty/merge.js +10 -0
  248. package/src/types/CSSColor.js +9 -0
  249. package/{dist/dates → src/types}/CalendarType.js +2 -2
  250. package/src/types/DataType.js +13 -1
  251. package/src/types/Float.js +14 -0
  252. package/src/types/Integer.js +4 -0
  253. package/src/types/InvisibleMessageMode.js +30 -0
  254. package/src/types/ItemNavigationBehavior.js +2 -7
  255. package/src/types/NavigationMode.js +1 -0
  256. package/src/types/PopupState.js +1 -1
  257. package/src/types/ValueState.js +2 -1
  258. package/src/updateShadowRoot.js +30 -0
  259. package/src/util/AriaLabelHelper.js +41 -0
  260. package/src/util/Caret.js +45 -0
  261. package/src/util/ColorConversion.js +370 -0
  262. package/src/util/FocusableElements.js +30 -11
  263. package/src/util/HTMLSanitizer.js +7 -0
  264. package/src/util/InvisibleMessage.js +60 -0
  265. package/src/util/PopupUtils.js +93 -0
  266. package/src/util/SlotsHelper.js +43 -0
  267. package/src/util/StringHelper.js +17 -2
  268. package/src/util/TabbableElements.js +9 -2
  269. package/src/util/arraysAreEqual.js +15 -0
  270. package/src/util/clamp.js +12 -0
  271. package/src/util/createLinkInHead.js +19 -0
  272. package/src/util/debounce.js +17 -0
  273. package/src/util/detectNavigatorLanguage.js +3 -1
  274. package/src/util/escapeRegex.js +10 -0
  275. package/src/util/findNodeOwner.js +35 -0
  276. package/src/util/generateHighlightedMarkup.js +42 -0
  277. package/src/util/getActiveElement.js +11 -0
  278. package/src/util/getClassCopy.js +10 -0
  279. package/src/util/getEffectiveContentDensity.js +5 -0
  280. package/src/util/getFileExtension.js +21 -0
  281. package/src/util/getNormalizedTarget.js +16 -0
  282. package/src/util/getSingletonElementInstance.js +13 -0
  283. package/src/util/isElementInView.js +15 -0
  284. package/src/util/isNodeHidden.js +1 -5
  285. package/src/util/isNodeTabbable.js +4 -4
  286. package/src/util/isValidPropertyName.js +11 -2
  287. package/src/util/setToArray.js +10 -0
  288. package/used-modules.txt +10 -0
  289. package/bundle.es5.js +0 -28
  290. package/dist/Assets.js +0 -2
  291. package/dist/CSS.js +0 -48
  292. package/dist/FormatSettings.js +0 -31
  293. package/dist/LocaleProvider.js +0 -34
  294. package/dist/ResourceLoaderOverrides.js +0 -38
  295. package/dist/SVGIconRegistry.js +0 -54
  296. package/dist/boot.js +0 -25
  297. package/dist/compatibility/DOMObserver.js +0 -62
  298. package/dist/compatibility/patchNodeValue.js +0 -24
  299. package/dist/compatibility/whenPolyfillLoaded.js +0 -26
  300. package/dist/dates/CalendarDate.js +0 -203
  301. package/dist/dates/CalendarUtils.js +0 -99
  302. package/dist/delegate/CustomResize.js +0 -78
  303. package/dist/delegate/NativeResize.js +0 -44
  304. package/dist/events/PseudoEvents.js +0 -58
  305. package/dist/features/browsersupport/Edge.js +0 -6
  306. package/dist/features/browsersupport/IE11.js +0 -41
  307. package/dist/features/calendar/Buddhist.js +0 -1
  308. package/dist/features/calendar/Islamic.js +0 -1
  309. package/dist/features/calendar/Japanese.js +0 -1
  310. package/dist/features/calendar/Persian.js +0 -1
  311. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar.json +0 -5598
  312. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_EG.json +0 -5598
  313. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_SA.json +0 -5598
  314. package/dist/generated/assets/cldr/sap/ui/core/cldr/bg.json +0 -4789
  315. package/dist/generated/assets/cldr/sap/ui/core/cldr/ca.json +0 -4801
  316. package/dist/generated/assets/cldr/sap/ui/core/cldr/cs.json +0 -5245
  317. package/dist/generated/assets/cldr/sap/ui/core/cldr/da.json +0 -4696
  318. package/dist/generated/assets/cldr/sap/ui/core/cldr/de.json +0 -4797
  319. package/dist/generated/assets/cldr/sap/ui/core/cldr/de_AT.json +0 -4798
  320. package/dist/generated/assets/cldr/sap/ui/core/cldr/de_CH.json +0 -4796
  321. package/dist/generated/assets/cldr/sap/ui/core/cldr/el.json +0 -4694
  322. package/dist/generated/assets/cldr/sap/ui/core/cldr/el_CY.json +0 -4694
  323. package/dist/generated/assets/cldr/sap/ui/core/cldr/en.json +0 -4777
  324. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_AU.json +0 -4769
  325. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_GB.json +0 -4778
  326. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_HK.json +0 -4784
  327. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IE.json +0 -4778
  328. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IN.json +0 -4779
  329. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_NZ.json +0 -4778
  330. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_PG.json +0 -4779
  331. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_SG.json +0 -4780
  332. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_ZA.json +0 -4779
  333. package/dist/generated/assets/cldr/sap/ui/core/cldr/es.json +0 -4719
  334. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_AR.json +0 -4721
  335. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_BO.json +0 -4720
  336. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CL.json +0 -4721
  337. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CO.json +0 -4721
  338. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_MX.json +0 -4722
  339. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_PE.json +0 -4720
  340. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_UY.json +0 -4722
  341. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_VE.json +0 -4721
  342. package/dist/generated/assets/cldr/sap/ui/core/cldr/et.json +0 -4776
  343. package/dist/generated/assets/cldr/sap/ui/core/cldr/fa.json +0 -4704
  344. package/dist/generated/assets/cldr/sap/ui/core/cldr/fi.json +0 -4816
  345. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr.json +0 -4788
  346. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_BE.json +0 -4788
  347. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CA.json +0 -4782
  348. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CH.json +0 -4806
  349. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_LU.json +0 -4788
  350. package/dist/generated/assets/cldr/sap/ui/core/cldr/he.json +0 -5133
  351. package/dist/generated/assets/cldr/sap/ui/core/cldr/hi.json +0 -4680
  352. package/dist/generated/assets/cldr/sap/ui/core/cldr/hr.json +0 -4910
  353. package/dist/generated/assets/cldr/sap/ui/core/cldr/hu.json +0 -4664
  354. package/dist/generated/assets/cldr/sap/ui/core/cldr/id.json +0 -4500
  355. package/dist/generated/assets/cldr/sap/ui/core/cldr/it.json +0 -4757
  356. package/dist/generated/assets/cldr/sap/ui/core/cldr/it_CH.json +0 -4757
  357. package/dist/generated/assets/cldr/sap/ui/core/cldr/ja.json +0 -4599
  358. package/dist/generated/assets/cldr/sap/ui/core/cldr/kk.json +0 -4537
  359. package/dist/generated/assets/cldr/sap/ui/core/cldr/ko.json +0 -4574
  360. package/dist/generated/assets/cldr/sap/ui/core/cldr/lt.json +0 -5234
  361. package/dist/generated/assets/cldr/sap/ui/core/cldr/lv.json +0 -4902
  362. package/dist/generated/assets/cldr/sap/ui/core/cldr/ms.json +0 -4352
  363. package/dist/generated/assets/cldr/sap/ui/core/cldr/nb.json +0 -4784
  364. package/dist/generated/assets/cldr/sap/ui/core/cldr/nl.json +0 -4790
  365. package/dist/generated/assets/cldr/sap/ui/core/cldr/nl_BE.json +0 -4790
  366. package/dist/generated/assets/cldr/sap/ui/core/cldr/pl.json +0 -5223
  367. package/dist/generated/assets/cldr/sap/ui/core/cldr/pt.json +0 -4703
  368. package/dist/generated/assets/cldr/sap/ui/core/cldr/pt_PT.json +0 -4753
  369. package/dist/generated/assets/cldr/sap/ui/core/cldr/ro.json +0 -4881
  370. package/dist/generated/assets/cldr/sap/ui/core/cldr/ru.json +0 -5157
  371. package/dist/generated/assets/cldr/sap/ui/core/cldr/ru_UA.json +0 -5157
  372. package/dist/generated/assets/cldr/sap/ui/core/cldr/sk.json +0 -5125
  373. package/dist/generated/assets/cldr/sap/ui/core/cldr/sl.json +0 -5105
  374. package/dist/generated/assets/cldr/sap/ui/core/cldr/sr.json +0 -4908
  375. package/dist/generated/assets/cldr/sap/ui/core/cldr/sv.json +0 -4818
  376. package/dist/generated/assets/cldr/sap/ui/core/cldr/th.json +0 -4633
  377. package/dist/generated/assets/cldr/sap/ui/core/cldr/tr.json +0 -4791
  378. package/dist/generated/assets/cldr/sap/ui/core/cldr/uk.json +0 -5126
  379. package/dist/generated/assets/cldr/sap/ui/core/cldr/vi.json +0 -4510
  380. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_CN.json +0 -4469
  381. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_HK.json +0 -4479
  382. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_SG.json +0 -4479
  383. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_TW.json +0 -4565
  384. package/dist/json-imports/LocaleData.js +0 -171
  385. package/dist/renderer/ifDefined.js +0 -21
  386. package/dist/resources/bundle.es5.js +0 -12643
  387. package/dist/resources/bundle.es5.js.map +0 -1
  388. package/dist/shims/Core-shim.js +0 -52
  389. package/dist/shims/jquery-shim.js +0 -89
  390. package/dist/theming/StyleInjection.js +0 -67
  391. package/dist/thirdparty/Array.from.js +0 -16
  392. package/dist/thirdparty/Array.prototype.fill.js +0 -44
  393. package/dist/thirdparty/Array.prototype.find.js +0 -46
  394. package/dist/thirdparty/Array.prototype.includes.js +0 -51
  395. package/dist/thirdparty/Element.prototype.closest.js +0 -11
  396. package/dist/thirdparty/Element.prototype.matches.js +0 -6
  397. package/dist/thirdparty/Map.prototype.keys.js +0 -9
  398. package/dist/thirdparty/Number.isInteger.js +0 -5
  399. package/dist/thirdparty/Number.isNaN.js +0 -1
  400. package/dist/thirdparty/Number.parseInt.js +0 -1
  401. package/dist/thirdparty/Object.assign.js +0 -31
  402. package/dist/thirdparty/Object.entries.js +0 -11
  403. package/dist/thirdparty/Symbol.js +0 -2
  404. package/dist/thirdparty/WeakSet.js +0 -27
  405. package/dist/thirdparty/events-polyfills.js +0 -89
  406. package/dist/thirdparty/fetch.js +0 -1
  407. package/dist/thirdparty/template.js +0 -600
  408. package/dist/util/CSSTransformUtils.js +0 -90
  409. package/dist/webcomponentsjs/LICENSE.md +0 -19
  410. package/dist/webcomponentsjs/README.md +0 -229
  411. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +0 -63
  412. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +0 -1
  413. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +0 -297
  414. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +0 -1
  415. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +0 -208
  416. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +0 -1
  417. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +0 -166
  418. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +0 -1
  419. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +0 -15
  420. package/dist/webcomponentsjs/package.json +0 -46
  421. package/dist/webcomponentsjs/src/entrypoints/custom-elements-es5-adapter-index.js +0 -16
  422. package/dist/webcomponentsjs/src/entrypoints/webcomponents-bundle-index.js +0 -53
  423. package/dist/webcomponentsjs/src/entrypoints/webcomponents-ce-index.js +0 -17
  424. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-index.js +0 -19
  425. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-pf-index.js +0 -28
  426. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-index.js +0 -18
  427. package/dist/webcomponentsjs/webcomponents-bundle.js +0 -298
  428. package/dist/webcomponentsjs/webcomponents-bundle.js.map +0 -1
  429. package/dist/webcomponentsjs/webcomponents-loader.js +0 -185
  430. package/src/Assets.js +0 -2
  431. package/src/CSS.js +0 -48
  432. package/src/FormatSettings.js +0 -31
  433. package/src/LocaleProvider.js +0 -34
  434. package/src/ResourceLoaderOverrides.js +0 -38
  435. package/src/SVGIconRegistry.js +0 -54
  436. package/src/boot.js +0 -25
  437. package/src/compatibility/DOMObserver.js +0 -62
  438. package/src/compatibility/patchNodeValue.js +0 -24
  439. package/src/compatibility/whenPolyfillLoaded.js +0 -26
  440. package/src/dates/CalendarDate.js +0 -203
  441. package/src/dates/CalendarUtils.js +0 -99
  442. package/src/delegate/CustomResize.js +0 -78
  443. package/src/delegate/NativeResize.js +0 -44
  444. package/src/events/PseudoEvents.js +0 -58
  445. package/src/features/browsersupport/Edge.js +0 -6
  446. package/src/features/browsersupport/IE11.js +0 -41
  447. package/src/features/calendar/Buddhist.js +0 -1
  448. package/src/features/calendar/Islamic.js +0 -1
  449. package/src/features/calendar/Japanese.js +0 -1
  450. package/src/features/calendar/Persian.js +0 -1
  451. package/src/json-imports/LocaleData.js +0 -171
  452. package/src/renderer/ifDefined.js +0 -21
  453. package/src/shims/Core-shim.js +0 -52
  454. package/src/shims/jquery-shim.js +0 -89
  455. package/src/theming/StyleInjection.js +0 -67
  456. package/src/thirdparty/Array.from.js +0 -16
  457. package/src/thirdparty/Array.prototype.fill.js +0 -44
  458. package/src/thirdparty/Array.prototype.find.js +0 -46
  459. package/src/thirdparty/Array.prototype.includes.js +0 -51
  460. package/src/thirdparty/Element.prototype.closest.js +0 -11
  461. package/src/thirdparty/Element.prototype.matches.js +0 -6
  462. package/src/thirdparty/Map.prototype.keys.js +0 -9
  463. package/src/thirdparty/Number.isInteger.js +0 -5
  464. package/src/thirdparty/Number.isNaN.js +0 -1
  465. package/src/thirdparty/Number.parseInt.js +0 -1
  466. package/src/thirdparty/Object.assign.js +0 -31
  467. package/src/thirdparty/Object.entries.js +0 -11
  468. package/src/thirdparty/Symbol.js +0 -2
  469. package/src/thirdparty/WeakSet.js +0 -27
  470. package/src/thirdparty/events-polyfills.js +0 -89
  471. package/src/thirdparty/fetch.js +0 -1
  472. package/src/thirdparty/template.js +0 -600
  473. package/src/util/CSSTransformUtils.js +0 -90
@@ -1,600 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (c) 2016 The Polymer Project Authors. All rights reserved.
4
- * This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
5
- * The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
6
- * The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
7
- * Code distributed by Google as part of the polymer project is also
8
- * subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
9
- */
10
-
11
- // minimal template polyfill
12
- (function() {
13
- 'use strict';
14
-
15
- var needsTemplate = (typeof HTMLTemplateElement === 'undefined');
16
- var brokenDocFragment = !(document.createDocumentFragment().cloneNode() instanceof DocumentFragment);
17
- var needsDocFrag = false;
18
-
19
- // NOTE: Replace DocumentFragment to work around IE11 bug that
20
- // causes children of a document fragment modified while
21
- // there is a mutation observer to not have a parentNode, or
22
- // have a broken parentNode (!?!)
23
- if (/Trident/.test(navigator.userAgent)) {
24
- (function() {
25
-
26
- needsDocFrag = true;
27
-
28
- var origCloneNode = Node.prototype.cloneNode;
29
- Node.prototype.cloneNode = function cloneNode(deep) {
30
- var newDom = origCloneNode.call(this, deep);
31
- if (this instanceof DocumentFragment) {
32
- newDom.__proto__ = DocumentFragment.prototype;
33
- }
34
- return newDom;
35
- };
36
-
37
- // IE's DocumentFragment querySelector code doesn't work when
38
- // called on an element instance
39
- DocumentFragment.prototype.querySelectorAll = HTMLElement.prototype.querySelectorAll;
40
- DocumentFragment.prototype.querySelector = HTMLElement.prototype.querySelector;
41
-
42
- Object.defineProperties(DocumentFragment.prototype, {
43
- 'nodeType': {
44
- get: function () {
45
- return Node.DOCUMENT_FRAGMENT_NODE;
46
- },
47
- configurable: true
48
- },
49
-
50
- 'localName': {
51
- get: function () {
52
- return undefined;
53
- },
54
- configurable: true
55
- },
56
-
57
- 'nodeName': {
58
- get: function () {
59
- return '#document-fragment';
60
- },
61
- configurable: true
62
- }
63
- });
64
-
65
- var origInsertBefore = Node.prototype.insertBefore;
66
- function insertBefore(newNode, refNode) {
67
- if (newNode instanceof DocumentFragment) {
68
- var child;
69
- while ((child = newNode.firstChild)) {
70
- origInsertBefore.call(this, child, refNode);
71
- }
72
- } else {
73
- origInsertBefore.call(this, newNode, refNode);
74
- }
75
- return newNode;
76
- }
77
- Node.prototype.insertBefore = insertBefore;
78
-
79
- var origAppendChild = Node.prototype.appendChild;
80
- Node.prototype.appendChild = function appendChild(child) {
81
- if (child instanceof DocumentFragment) {
82
- insertBefore.call(this, child, null);
83
- } else {
84
- origAppendChild.call(this, child);
85
- }
86
- return child;
87
- };
88
-
89
- var origRemoveChild = Node.prototype.removeChild;
90
- var origReplaceChild = Node.prototype.replaceChild;
91
- Node.prototype.replaceChild = function replaceChild(newChild, oldChild) {
92
- if (newChild instanceof DocumentFragment) {
93
- insertBefore.call(this, newChild, oldChild);
94
- origRemoveChild.call(this, oldChild);
95
- } else {
96
- origReplaceChild.call(this, newChild, oldChild);
97
- }
98
- return oldChild;
99
- };
100
-
101
- Document.prototype.createDocumentFragment = function createDocumentFragment() {
102
- var frag = this.createElement('df');
103
- frag.__proto__ = DocumentFragment.prototype;
104
- return frag;
105
- };
106
-
107
- var origImportNode = Document.prototype.importNode;
108
- Document.prototype.importNode = function importNode(impNode, deep) {
109
- deep = deep || false;
110
- var newNode = origImportNode.call(this, impNode, deep);
111
- if (impNode instanceof DocumentFragment) {
112
- newNode.__proto__ = DocumentFragment.prototype;
113
- }
114
- return newNode;
115
- };
116
- })();
117
- }
118
-
119
- // NOTE: we rely on this cloneNode not causing element upgrade.
120
- // This means this polyfill must load before the CE polyfill and
121
- // this would need to be re-worked if a browser supports native CE
122
- // but not <template>.
123
- var capturedCloneNode = Node.prototype.cloneNode;
124
- var capturedCreateElement = Document.prototype.createElement;
125
- var capturedImportNode = Document.prototype.importNode;
126
- var capturedRemoveChild = Node.prototype.removeChild;
127
- var capturedAppendChild = Node.prototype.appendChild;
128
- var capturedReplaceChild = Node.prototype.replaceChild;
129
- var capturedParseFromString = DOMParser.prototype.parseFromString;
130
- var capturedHTMLElementInnerHTML = Object.getOwnPropertyDescriptor(window.HTMLElement.prototype, 'innerHTML') || {
131
- /**
132
- * @this {!HTMLElement}
133
- * @return {string}
134
- */
135
- get: function() {
136
- return this.innerHTML;
137
- },
138
- /**
139
- * @this {!HTMLElement}
140
- * @param {string}
141
- */
142
- set: function(text) {
143
- this.innerHTML = text;
144
- }
145
- };
146
- var capturedChildNodes = Object.getOwnPropertyDescriptor(window.Node.prototype, 'childNodes') || {
147
- /**
148
- * @this {!Node}
149
- * @return {!NodeList}
150
- */
151
- get: function() {
152
- return this.childNodes;
153
- }
154
- };
155
-
156
- var elementQuerySelectorAll = Element.prototype.querySelectorAll;
157
- var docQuerySelectorAll = Document.prototype.querySelectorAll;
158
- var fragQuerySelectorAll = DocumentFragment.prototype.querySelectorAll;
159
-
160
- var scriptSelector = 'script:not([type]),script[type="application/javascript"],script[type="text/javascript"]';
161
-
162
- function QSA(node, selector) {
163
- // IE 11 throws a SyntaxError with `scriptSelector` if the node has no children due to the `:not([type])` syntax
164
- if (!node.childNodes.length) {
165
- return [];
166
- }
167
- switch (node.nodeType) {
168
- case Node.DOCUMENT_NODE:
169
- return docQuerySelectorAll.call(node, selector);
170
- case Node.DOCUMENT_FRAGMENT_NODE:
171
- return fragQuerySelectorAll.call(node, selector);
172
- default:
173
- return elementQuerySelectorAll.call(node, selector);
174
- }
175
- }
176
-
177
- // returns true if nested templates cannot be cloned (they cannot be on
178
- // some impl's like Safari 8 and Edge)
179
- // OR if cloning a document fragment does not result in a document fragment
180
- var needsCloning = (function() {
181
- if (!needsTemplate) {
182
- var t = document.createElement('template');
183
- var t2 = document.createElement('template');
184
- t2.content.appendChild(document.createElement('div'));
185
- t.content.appendChild(t2);
186
- var clone = t.cloneNode(true);
187
- return (clone.content.childNodes.length === 0 || clone.content.firstChild.content.childNodes.length === 0
188
- || brokenDocFragment);
189
- }
190
- })();
191
-
192
- var TEMPLATE_TAG = 'template';
193
- var PolyfilledHTMLTemplateElement = function() {};
194
-
195
- if (needsTemplate) {
196
-
197
- var contentDoc = document.implementation.createHTMLDocument('template');
198
- var canDecorate = true;
199
-
200
- var templateStyle = document.createElement('style');
201
- templateStyle.textContent = TEMPLATE_TAG + '{display:none;}';
202
-
203
- var head = document.head;
204
- head.insertBefore(templateStyle, head.firstElementChild);
205
-
206
- /**
207
- Provides a minimal shim for the <template> element.
208
- */
209
- PolyfilledHTMLTemplateElement.prototype = Object.create(HTMLElement.prototype);
210
-
211
-
212
- // if elements do not have `innerHTML` on instances, then
213
- // templates can be patched by swizzling their prototypes.
214
- var canProtoPatch =
215
- !(document.createElement('div').hasOwnProperty('innerHTML'));
216
-
217
- /**
218
- The `decorate` method moves element children to the template's `content`.
219
- NOTE: there is no support for dynamically adding elements to templates.
220
- */
221
- PolyfilledHTMLTemplateElement.decorate = function(template) {
222
- // if the template is decorated or not in HTML namespace, return fast
223
- if (template.content ||
224
- template.namespaceURI !== document.documentElement.namespaceURI) {
225
- return;
226
- }
227
- template.content = contentDoc.createDocumentFragment();
228
- var child;
229
- while ((child = template.firstChild)) {
230
- capturedAppendChild.call(template.content, child);
231
- }
232
- // NOTE: prefer prototype patching for performance and
233
- // because on some browsers (IE11), re-defining `innerHTML`
234
- // can result in intermittent errors.
235
- if (canProtoPatch) {
236
- template.__proto__ = PolyfilledHTMLTemplateElement.prototype;
237
- } else {
238
- template.cloneNode = function(deep) {
239
- return PolyfilledHTMLTemplateElement._cloneNode(this, deep);
240
- };
241
- // add innerHTML to template, if possible
242
- // Note: this throws on Safari 7
243
- if (canDecorate) {
244
- try {
245
- defineInnerHTML(template);
246
- defineOuterHTML(template);
247
- } catch (err) {
248
- canDecorate = false;
249
- }
250
- }
251
- }
252
- // bootstrap recursively
253
- PolyfilledHTMLTemplateElement.bootstrap(template.content);
254
- };
255
-
256
- // Taken from https://github.com/jquery/jquery/blob/73d7e6259c63ac45f42c6593da8c2796c6ce9281/src/manipulation/wrapMap.js
257
- var topLevelWrappingMap = {
258
- 'option': ['select'],
259
- 'thead': ['table'],
260
- 'col': ['colgroup', 'table'],
261
- 'tr': ['tbody', 'table'],
262
- 'th': ['tr', 'tbody', 'table'],
263
- 'td': ['tr', 'tbody', 'table']
264
- };
265
-
266
- var getTagName = function(text) {
267
- // Taken from https://github.com/jquery/jquery/blob/73d7e6259c63ac45f42c6593da8c2796c6ce9281/src/manipulation/var/rtagName.js
268
- return ( /<([a-z][^/\0>\x20\t\r\n\f]+)/i.exec(text) || ['', ''])[1].toLowerCase();
269
- };
270
-
271
- var defineInnerHTML = function defineInnerHTML(obj) {
272
- Object.defineProperty(obj, 'innerHTML', {
273
- get: function() {
274
- return getInnerHTML(this);
275
- },
276
- set: function(text) {
277
- // For IE11, wrap the text in the correct (table) context
278
- var wrap = topLevelWrappingMap[getTagName(text)];
279
- if (wrap) {
280
- for (var i = 0; i < wrap.length; i++) {
281
- text = '<' + wrap[i] + '>' + text + '</' + wrap[i] + '>';
282
- }
283
- }
284
- contentDoc.body.innerHTML = text;
285
- PolyfilledHTMLTemplateElement.bootstrap(contentDoc);
286
- while (this.content.firstChild) {
287
- capturedRemoveChild.call(this.content, this.content.firstChild);
288
- }
289
- var body = contentDoc.body;
290
- // If we had wrapped, get back to the original node
291
- if (wrap) {
292
- for (var j = 0; j < wrap.length; j++) {
293
- body = body.lastChild;
294
- }
295
- }
296
- while (body.firstChild) {
297
- capturedAppendChild.call(this.content, body.firstChild);
298
- }
299
- },
300
- configurable: true
301
- });
302
- };
303
-
304
- var defineOuterHTML = function defineOuterHTML(obj) {
305
- Object.defineProperty(obj, 'outerHTML', {
306
- get: function() {
307
- return '<' + TEMPLATE_TAG + '>' + this.innerHTML + '</' + TEMPLATE_TAG + '>';
308
- },
309
- set: function(innerHTML) {
310
- if (this.parentNode) {
311
- contentDoc.body.innerHTML = innerHTML;
312
- var docFrag = this.ownerDocument.createDocumentFragment();
313
- while (contentDoc.body.firstChild) {
314
- capturedAppendChild.call(docFrag, contentDoc.body.firstChild);
315
- }
316
- capturedReplaceChild.call(this.parentNode, docFrag, this);
317
- } else {
318
- throw new Error("Failed to set the 'outerHTML' property on 'Element': This element has no parent node.");
319
- }
320
- },
321
- configurable: true
322
- });
323
- };
324
-
325
- defineInnerHTML(PolyfilledHTMLTemplateElement.prototype);
326
- defineOuterHTML(PolyfilledHTMLTemplateElement.prototype);
327
-
328
- /**
329
- The `bootstrap` method is called automatically and "fixes" all
330
- <template> elements in the document referenced by the `doc` argument.
331
- */
332
- PolyfilledHTMLTemplateElement.bootstrap = function bootstrap(doc) {
333
- var templates = QSA(doc, TEMPLATE_TAG);
334
- for (var i=0, l=templates.length, t; (i<l) && (t=templates[i]); i++) {
335
- PolyfilledHTMLTemplateElement.decorate(t);
336
- }
337
- };
338
-
339
- // auto-bootstrapping for main document
340
- document.addEventListener('DOMContentLoaded', function() {
341
- PolyfilledHTMLTemplateElement.bootstrap(document);
342
- });
343
-
344
- // Patch document.createElement to ensure newly created templates have content
345
- Document.prototype.createElement = function createElement() {
346
- var el = capturedCreateElement.apply(this, arguments);
347
- if (el.localName === 'template') {
348
- PolyfilledHTMLTemplateElement.decorate(el);
349
- }
350
- return el;
351
- };
352
-
353
- DOMParser.prototype.parseFromString = function() {
354
- var el = capturedParseFromString.apply(this, arguments);
355
- PolyfilledHTMLTemplateElement.bootstrap(el);
356
- return el;
357
- };
358
-
359
- Object.defineProperty(HTMLElement.prototype, 'innerHTML', {
360
- get: function() {
361
- return getInnerHTML(this);
362
- },
363
- set: function(text) {
364
- capturedHTMLElementInnerHTML.set.call(this, text);
365
- PolyfilledHTMLTemplateElement.bootstrap(this);
366
- },
367
- configurable: true,
368
- enumerable: true
369
- });
370
-
371
- // http://www.whatwg.org/specs/web-apps/current-work/multipage/the-end.html#escapingString
372
- var escapeAttrRegExp = /[&\u00A0"]/g;
373
- var escapeDataRegExp = /[&\u00A0<>]/g;
374
-
375
- var escapeReplace = function(c) {
376
- switch (c) {
377
- case '&':
378
- return '&amp;';
379
- case '<':
380
- return '&lt;';
381
- case '>':
382
- return '&gt;';
383
- case '"':
384
- return '&quot;';
385
- case '\u00A0':
386
- return '&nbsp;';
387
- }
388
- };
389
-
390
- var escapeAttr = function(s) {
391
- return s.replace(escapeAttrRegExp, escapeReplace);
392
- };
393
-
394
- var escapeData = function(s) {
395
- return s.replace(escapeDataRegExp, escapeReplace);
396
- };
397
-
398
- var makeSet = function(arr) {
399
- var set = {};
400
- for (var i = 0; i < arr.length; i++) {
401
- set[arr[i]] = true;
402
- }
403
- return set;
404
- };
405
-
406
- // http://www.whatwg.org/specs/web-apps/current-work/#void-elements
407
- var voidElements = makeSet([
408
- 'area',
409
- 'base',
410
- 'br',
411
- 'col',
412
- 'command',
413
- 'embed',
414
- 'hr',
415
- 'img',
416
- 'input',
417
- 'keygen',
418
- 'link',
419
- 'meta',
420
- 'param',
421
- 'source',
422
- 'track',
423
- 'wbr'
424
- ]);
425
-
426
- var plaintextParents = makeSet([
427
- 'style',
428
- 'script',
429
- 'xmp',
430
- 'iframe',
431
- 'noembed',
432
- 'noframes',
433
- 'plaintext',
434
- 'noscript'
435
- ]);
436
-
437
- /**
438
- * @param {Node} node
439
- * @param {Node} parentNode
440
- * @param {Function=} callback
441
- */
442
- var getOuterHTML = function(node, parentNode, callback) {
443
- switch (node.nodeType) {
444
- case Node.ELEMENT_NODE: {
445
- var tagName = node.localName;
446
- var s = '<' + tagName;
447
- var attrs = node.attributes;
448
- for (var i = 0, attr; (attr = attrs[i]); i++) {
449
- s += ' ' + attr.name + '="' + escapeAttr(attr.value) + '"';
450
- }
451
- s += '>';
452
- if (voidElements[tagName]) {
453
- return s;
454
- }
455
- return s + getInnerHTML(node, callback) + '</' + tagName + '>';
456
- }
457
- case Node.TEXT_NODE: {
458
- var data = /** @type {Text} */ (node).data;
459
- if (parentNode && plaintextParents[parentNode.localName]) {
460
- return data;
461
- }
462
- return escapeData(data);
463
- }
464
- case Node.COMMENT_NODE: {
465
- return '<!--' + /** @type {Comment} */ (node).data + '-->';
466
- }
467
- default: {
468
- window.console.error(node);
469
- throw new Error('not implemented');
470
- }
471
- }
472
- };
473
-
474
- /**
475
- * @param {Node} node
476
- * @param {Function=} callback
477
- */
478
- var getInnerHTML = function(node, callback) {
479
- if (node.localName === 'template') {
480
- node = /** @type {HTMLTemplateElement} */ (node).content;
481
- }
482
- var s = '';
483
- var c$ = callback ? callback(node) : capturedChildNodes.get.call(node);
484
- for (var i=0, l=c$.length, child; (i<l) && (child=c$[i]); i++) {
485
- s += getOuterHTML(child, node, callback);
486
- }
487
- return s;
488
- };
489
-
490
- }
491
-
492
- // make cloning/importing work!
493
- if (needsTemplate || needsCloning) {
494
-
495
- PolyfilledHTMLTemplateElement._cloneNode = function _cloneNode(template, deep) {
496
- var clone = capturedCloneNode.call(template, false);
497
- // NOTE: decorate doesn't auto-fix children because they are already
498
- // decorated so they need special clone fixup.
499
- if (this.decorate) {
500
- this.decorate(clone);
501
- }
502
- if (deep) {
503
- // NOTE: use native clone node to make sure CE's wrapped
504
- // cloneNode does not cause elements to upgrade.
505
- capturedAppendChild.call(clone.content, capturedCloneNode.call(template.content, true));
506
- // now ensure nested templates are cloned correctly.
507
- fixClonedDom(clone.content, template.content);
508
- }
509
- return clone;
510
- };
511
-
512
- // Given a source and cloned subtree, find <template>'s in the cloned
513
- // subtree and replace them with cloned <template>'s from source.
514
- // We must do this because only the source templates have proper .content.
515
- var fixClonedDom = function fixClonedDom(clone, source) {
516
- // do nothing if cloned node is not an element
517
- if (!source.querySelectorAll) return;
518
- // these two lists should be coincident
519
- var s$ = QSA(source, TEMPLATE_TAG);
520
- if (s$.length === 0) {
521
- return;
522
- }
523
- var t$ = QSA(clone, TEMPLATE_TAG);
524
- for (var i=0, l=t$.length, t, s; i<l; i++) {
525
- s = s$[i];
526
- t = t$[i];
527
- if (PolyfilledHTMLTemplateElement && PolyfilledHTMLTemplateElement.decorate) {
528
- PolyfilledHTMLTemplateElement.decorate(s);
529
- }
530
- capturedReplaceChild.call(t.parentNode, cloneNode.call(s, true), t);
531
- }
532
- };
533
-
534
- // make sure scripts inside of a cloned template are executable
535
- var fixClonedScripts = function fixClonedScripts(fragment) {
536
- var scripts = QSA(fragment, scriptSelector);
537
- for (var ns, s, i = 0; i < scripts.length; i++) {
538
- s = scripts[i];
539
- ns = capturedCreateElement.call(document, 'script');
540
- ns.textContent = s.textContent;
541
- var attrs = s.attributes;
542
- for (var ai = 0, a; ai < attrs.length; ai++) {
543
- a = attrs[ai];
544
- ns.setAttribute(a.name, a.value);
545
- }
546
- capturedReplaceChild.call(s.parentNode, ns, s);
547
- }
548
- };
549
-
550
- // override all cloning to fix the cloned subtree to contain properly
551
- // cloned templates.
552
- var cloneNode = Node.prototype.cloneNode = function cloneNode(deep) {
553
- var dom;
554
- // workaround for Edge bug cloning documentFragments
555
- // https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/8619646/
556
- if (!needsDocFrag && brokenDocFragment && this instanceof DocumentFragment) {
557
- if (!deep) {
558
- return this.ownerDocument.createDocumentFragment();
559
- } else {
560
- dom = importNode.call(this.ownerDocument, this, true);
561
- }
562
- } else if (this.nodeType === Node.ELEMENT_NODE &&
563
- this.localName === TEMPLATE_TAG &&
564
- this.namespaceURI == document.documentElement.namespaceURI) {
565
- dom = PolyfilledHTMLTemplateElement._cloneNode(this, deep);
566
- } else {
567
- dom = capturedCloneNode.call(this, deep);
568
- }
569
- // template.content is cloned iff `deep`.
570
- if (deep) {
571
- fixClonedDom(dom, this);
572
- }
573
- return dom;
574
- };
575
-
576
- // NOTE: we are cloning instead of importing <template>'s.
577
- // However, the ownerDocument of the cloned template will be correct!
578
- // This is because the native import node creates the right document owned
579
- // subtree and `fixClonedDom` inserts cloned templates into this subtree,
580
- // thus updating the owner doc.
581
- var importNode = Document.prototype.importNode = function importNode(element, deep) {
582
- deep = deep || false;
583
- if (element.localName === TEMPLATE_TAG) {
584
- return PolyfilledHTMLTemplateElement._cloneNode(element, deep);
585
- } else {
586
- var dom = capturedImportNode.call(this, element, deep);
587
- if (deep) {
588
- fixClonedDom(dom, element);
589
- fixClonedScripts(dom);
590
- }
591
- return dom;
592
- }
593
- };
594
- }
595
-
596
- if (needsTemplate) {
597
- window.HTMLTemplateElement = PolyfilledHTMLTemplateElement;
598
- }
599
-
600
- })();
@@ -1,90 +0,0 @@
1
- const findClosingParenthesisPos = (str, openingParenthesisPos) => {
2
- let opened = 1;
3
- for (let pos = openingParenthesisPos + 1; pos < str.length; pos++) {
4
- const char = str.charAt(pos);
5
- if (char === "(") {
6
- opened++;
7
- } else if (char === ")") {
8
- opened--;
9
- }
10
- if (opened === 0) {
11
- return pos;
12
- }
13
- }
14
- };
15
-
16
- const replaceSelector = (str, selector, selectorStartPos, replacement) => {
17
- const charAfterSelectorPos = selectorStartPos + selector.length;
18
- const charAfterSelector = str.charAt(charAfterSelectorPos);
19
-
20
- const upToSelector = str.substring(0, selectorStartPos) + replacement;
21
- if (charAfterSelector === "(") {
22
- const closingParenthesisPos = findClosingParenthesisPos(str, charAfterSelectorPos);
23
- return upToSelector + str.substring(charAfterSelectorPos + 1, closingParenthesisPos) + str.substring(closingParenthesisPos + 1);
24
- }
25
-
26
- return upToSelector + str.substring(charAfterSelectorPos);
27
- };
28
-
29
- /**
30
- * :host => ui5-button
31
- * :host([expr]) => ui5-button[expr]
32
- * ::slotted(expr) => expr
33
- * @param str - source string
34
- * @param selector - :host or ::slotted
35
- * @param replacement - normally tag name
36
- * @returns {*}
37
- */
38
- const replaceSelectors = (str, selector, replacement) => {
39
- let selectorStartPos = str.indexOf(selector);
40
- while (selectorStartPos !== -1) {
41
- str = replaceSelector(str, selector, selectorStartPos, replacement);
42
- selectorStartPos = str.indexOf(selector);
43
- }
44
- return str;
45
- };
46
-
47
- const adaptLinePart = (line, tag) => {
48
- line = line.trim();
49
- line = replaceSelectors(line, "::slotted", ``); // first remove all ::slotted() occurrences
50
-
51
- // Host selector - replace it
52
- if (line.startsWith(":host")) {
53
- return replaceSelector(line, ":host", 0, tag);
54
- }
55
-
56
- // Leave out @keyframes and keyframe values (0%, 100%, etc...)
57
- // csso shortens '100%' -> 'to', make sure to leave it untouched
58
- if (line.match(/^[@0-9]/) || line === "to" || line === "to{") {
59
- return line;
60
- }
61
-
62
- // IE specific selector (directly written with the tag) - keep it
63
- if (line.match(new RegExp(`^${tag}[^a-zA-Z0-9-]`))) {
64
- return line;
65
- }
66
-
67
- // No host and no tag in the beginning of the selector - prepend the tag
68
- return `${tag} ${line}`;
69
- };
70
-
71
- const adaptCSSForIE = (str, tag) => {
72
- str = str.replace(/\n/g, ` `);
73
- str = str.replace(/([{}])/g, `$1\n`);
74
- let result = ``;
75
- const lines = str.split(`\n`);
76
- lines.forEach(line => {
77
- const mustProcess = line.match(/{$/); // Only work on lines that end on {, otherwise just append to result
78
- if (mustProcess) {
79
- const lineParts = line.split(",");
80
- const processedLineParts = lineParts.map(linePart => {
81
- return adaptLinePart(linePart, tag);
82
- });
83
- line = processedLineParts.join(",");
84
- }
85
- result = `${result}${line}`;
86
- });
87
- return result;
88
- };
89
-
90
- export default adaptCSSForIE;
@@ -1,19 +0,0 @@
1
- # License
2
-
3
- Everything in this repo is BSD style license unless otherwise specified.
4
-
5
- Copyright (c) 2015 The Polymer Authors. All rights reserved.
6
-
7
- Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
8
-
9
- * Redistributions of source code must retain the above copyright
10
- notice, this list of conditions and the following disclaimer.
11
- * Redistributions in binary form must reproduce the above
12
- copyright notice, this list of conditions and the following disclaimer
13
- in the documentation and/or other materials provided with the
14
- distribution.
15
- * Neither the name of Google Inc. nor the names of its
16
- contributors may be used to endorse or promote products derived from
17
- this software without specific prior written permission.
18
-
19
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.