@ui5/webcomponents-base 0.0.0-4a28ecb24 → 0.0.0-4b9b0ab7c

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 (147) hide show
  1. package/CHANGELOG.md +64 -0
  2. package/bundle.esm.js +3 -1
  3. package/dist/Boot.d.ts +4 -3
  4. package/dist/Boot.js +25 -4
  5. package/dist/Boot.js.map +1 -1
  6. package/dist/Device.js +109 -34
  7. package/dist/Device.js.map +1 -1
  8. package/dist/InitialConfiguration.js +1 -1
  9. package/dist/InitialConfiguration.js.map +1 -1
  10. package/dist/UI5Element.d.ts +18 -14
  11. package/dist/UI5Element.js +7 -20
  12. package/dist/UI5Element.js.map +1 -1
  13. package/dist/api.json +1 -1
  14. package/dist/asset-registries/Icons.d.ts +1 -1
  15. package/dist/asset-registries/Icons.js +21 -21
  16. package/dist/asset-registries/Icons.js.map +1 -1
  17. package/dist/asset-registries/Illustrations.d.ts +1 -1
  18. package/dist/asset-registries/Themes.d.ts +1 -0
  19. package/dist/asset-registries/Themes.js +2 -0
  20. package/dist/asset-registries/Themes.js.map +1 -1
  21. package/dist/assets/Boot.6335ce08.css +1 -0
  22. package/dist/assets/Boot.e74b2a49.js +9 -0
  23. package/dist/assets/bundle.esm.abaf0306.js +52 -0
  24. package/dist/assets-meta/IconCollectionsAlias.d.ts +24 -10
  25. package/dist/assets-meta/IconCollectionsAlias.js +29 -9
  26. package/dist/assets-meta/IconCollectionsAlias.js.map +1 -1
  27. package/dist/config/FormatSettings.d.ts +5 -1
  28. package/dist/config/FormatSettings.js +5 -1
  29. package/dist/config/FormatSettings.js.map +1 -1
  30. package/dist/config/Icons.d.ts +43 -18
  31. package/dist/config/Icons.js +80 -25
  32. package/dist/config/Icons.js.map +1 -1
  33. package/dist/config/RTL.js +3 -0
  34. package/dist/config/RTL.js.map +1 -1
  35. package/dist/decorators/customElement.d.ts +17 -2
  36. package/dist/decorators/customElement.js +20 -5
  37. package/dist/decorators/customElement.js.map +1 -1
  38. package/dist/decorators/event.js +6 -6
  39. package/dist/decorators/event.js.map +1 -1
  40. package/dist/decorators/property.js +6 -6
  41. package/dist/decorators/property.js.map +1 -1
  42. package/dist/decorators/slot.js +7 -7
  43. package/dist/decorators/slot.js.map +1 -1
  44. package/dist/delegate/ResizeHandler.d.ts +2 -1
  45. package/dist/delegate/ResizeHandler.js +3 -1
  46. package/dist/delegate/ResizeHandler.js.map +1 -1
  47. package/dist/features/F6Navigation.d.ts +3 -0
  48. package/dist/features/F6Navigation.js +77 -38
  49. package/dist/features/F6Navigation.js.map +1 -1
  50. package/dist/features/LegacyDateFormats.d.ts +18 -0
  51. package/dist/features/LegacyDateFormats.js +20 -0
  52. package/dist/features/LegacyDateFormats.js.map +1 -0
  53. package/dist/features/OpenUI5Support.d.ts +2 -0
  54. package/dist/features/OpenUI5Support.js +1 -0
  55. package/dist/features/OpenUI5Support.js.map +1 -1
  56. package/dist/generated/VersionInfo.js +3 -3
  57. package/dist/getSharedResource.js +9 -1
  58. package/dist/getSharedResource.js.map +1 -1
  59. package/dist/renderer/LitRenderer.d.ts +3 -3
  60. package/dist/renderer/LitRenderer.js.map +1 -1
  61. package/dist/theming/CustomStyle.js +7 -5
  62. package/dist/theming/CustomStyle.js.map +1 -1
  63. package/dist/theming/ThemeRegistered.d.ts +5 -0
  64. package/dist/theming/ThemeRegistered.js +14 -0
  65. package/dist/theming/ThemeRegistered.js.map +1 -0
  66. package/dist/theming/applyTheme.js +1 -0
  67. package/dist/theming/applyTheme.js.map +1 -1
  68. package/dist/theming/getStylesString.d.ts +1 -1
  69. package/dist/types/AnimationMode.d.ts +1 -1
  70. package/dist/types/AnimationMode.js +1 -1
  71. package/dist/types/CSSColor.d.ts +0 -1
  72. package/dist/types/CSSColor.js +0 -1
  73. package/dist/types/CSSColor.js.map +1 -1
  74. package/dist/types/CalendarType.d.ts +1 -1
  75. package/dist/types/CalendarType.js +1 -1
  76. package/dist/types/Float.d.ts +0 -1
  77. package/dist/types/Float.js +0 -1
  78. package/dist/types/Float.js.map +1 -1
  79. package/dist/types/Integer.d.ts +0 -1
  80. package/dist/types/Integer.js +0 -1
  81. package/dist/types/Integer.js.map +1 -1
  82. package/dist/types/InvisibleMessageMode.d.ts +1 -1
  83. package/dist/types/InvisibleMessageMode.js +1 -1
  84. package/dist/types/ItemNavigationBehavior.d.ts +1 -1
  85. package/dist/types/ItemNavigationBehavior.js +1 -1
  86. package/dist/types/NavigationMode.d.ts +1 -1
  87. package/dist/types/NavigationMode.js +1 -1
  88. package/dist/types/ValueState.d.ts +1 -1
  89. package/dist/types/ValueState.js +1 -1
  90. package/dist/updateShadowRoot.js +4 -0
  91. package/dist/updateShadowRoot.js.map +1 -1
  92. package/dist/util/AriaLabelHelper.d.ts +10 -1
  93. package/dist/util/AriaLabelHelper.js +135 -8
  94. package/dist/util/AriaLabelHelper.js.map +1 -1
  95. package/dist/util/getClassCopy.d.ts +7 -9
  96. package/package-scripts.js +6 -2
  97. package/package.json +2 -2
  98. package/src/Boot.ts +29 -5
  99. package/src/Device.ts +113 -34
  100. package/src/InitialConfiguration.ts +1 -1
  101. package/src/UI5Element.ts +28 -25
  102. package/src/asset-registries/Icons.ts +26 -27
  103. package/src/asset-registries/Illustrations.ts +1 -1
  104. package/src/asset-registries/Themes.ts +7 -0
  105. package/src/assets-meta/IconCollectionsAlias.ts +32 -9
  106. package/src/config/FormatSettings.ts +16 -2
  107. package/src/config/Icons.ts +92 -25
  108. package/src/config/RTL.ts +4 -0
  109. package/src/decorators/customElement.ts +45 -5
  110. package/src/decorators/event.ts +6 -6
  111. package/src/decorators/property.ts +6 -6
  112. package/src/decorators/slot.ts +7 -7
  113. package/src/delegate/ResizeHandler.ts +7 -2
  114. package/src/features/F6Navigation.ts +98 -44
  115. package/src/features/LegacyDateFormats.ts +40 -0
  116. package/src/features/OpenUI5Support.ts +5 -0
  117. package/src/getSharedResource.ts +10 -1
  118. package/src/renderer/LitRenderer.ts +2 -2
  119. package/src/theming/CustomStyle.ts +7 -5
  120. package/src/theming/ThemeRegistered.ts +24 -0
  121. package/src/theming/applyTheme.ts +2 -0
  122. package/src/theming/getEffectiveLinksHrefs.ts +1 -1
  123. package/src/theming/getStylesString.ts +1 -1
  124. package/src/types/AnimationMode.ts +1 -1
  125. package/src/types/CSSColor.ts +0 -1
  126. package/src/types/CalendarType.ts +1 -1
  127. package/src/types/Float.ts +0 -1
  128. package/src/types/Integer.ts +0 -1
  129. package/src/types/InvisibleMessageMode.ts +1 -1
  130. package/src/types/ItemNavigationBehavior.ts +1 -1
  131. package/src/types/NavigationMode.ts +1 -1
  132. package/src/types/ValueState.ts +1 -1
  133. package/src/updateShadowRoot.ts +5 -0
  134. package/src/util/AriaLabelHelper.ts +167 -12
  135. package/dist/assets/bundle.esm.2e322362.js +0 -56
  136. package/dist/decorators/fastNavigation.d.ts +0 -7
  137. package/dist/decorators/fastNavigation.js +0 -13
  138. package/dist/decorators/fastNavigation.js.map +0 -1
  139. package/dist/decorators/languageAware.d.ts +0 -7
  140. package/dist/decorators/languageAware.js +0 -13
  141. package/dist/decorators/languageAware.js.map +0 -1
  142. package/dist/decorators/themeAware.d.ts +0 -7
  143. package/dist/decorators/themeAware.js +0 -13
  144. package/dist/decorators/themeAware.js.map +0 -1
  145. package/src/decorators/fastNavigation.ts +0 -14
  146. package/src/decorators/languageAware.ts +0 -14
  147. package/src/decorators/themeAware.ts +0 -14
package/CHANGELOG.md CHANGED
@@ -3,6 +3,70 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [1.12.0-rc.0](https://github.com/SAP/ui5-webcomponents/compare/v1.11.0...v1.12.0-rc.0) (2023-03-09)
7
+
8
+ **Note:** Version bump only for package @ui5/webcomponents-base
9
+
10
+
11
+
12
+
13
+
14
+ # [1.11.0](https://github.com/SAP/ui5-webcomponents/compare/v1.11.0-rc.4...v1.11.0) (2023-03-06)
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * **framework:** fix boot, interfering theme load ([#6616](https://github.com/SAP/ui5-webcomponents/issues/6616)) ([d4d4332](https://github.com/SAP/ui5-webcomponents/commit/d4d43327a1a88bfa62ed717120e396913d29e026))
20
+
21
+
22
+
23
+
24
+
25
+ # [1.11.0-rc.4](https://github.com/SAP/ui5-webcomponents/compare/v1.11.0-rc.3...v1.11.0-rc.4) (2023-03-02)
26
+
27
+
28
+ ### Features
29
+
30
+ * **framework:** use decorators for all static getters to define a custom element ([#6538](https://github.com/SAP/ui5-webcomponents/issues/6538)) ([c90cf0c](https://github.com/SAP/ui5-webcomponents/commit/c90cf0c2521cdbf063ba55706c25006a9f13e68a))
31
+
32
+
33
+
34
+
35
+
36
+ # [1.11.0-rc.3](https://github.com/SAP/ui5-webcomponents/compare/v1.11.0-rc.2...v1.11.0-rc.3) (2023-02-23)
37
+
38
+
39
+ ### Features
40
+
41
+ * **framework:** support legacy date calendar customizing ([#6462](https://github.com/SAP/ui5-webcomponents/issues/6462)) ([27df89b](https://github.com/SAP/ui5-webcomponents/commit/27df89bc62aaccbfbec5f4d36c520dbd762dab34))
42
+ * support SAPBusinessSuite icons v1 and v2 font ( Horizon ) ([#6535](https://github.com/SAP/ui5-webcomponents/issues/6535)) ([38233b9](https://github.com/SAP/ui5-webcomponents/commit/38233b94543a94c9915cf1d8c8937a834cd6c87d))
43
+
44
+
45
+
46
+
47
+
48
+ # [1.11.0-rc.2](https://github.com/SAP/ui5-webcomponents/compare/v1.11.0-rc.1...v1.11.0-rc.2) (2023-02-16)
49
+
50
+
51
+ ### Features
52
+
53
+ * **ui5-input:** reflect dynamic changes of labels ([#6364](https://github.com/SAP/ui5-webcomponents/issues/6364)) ([b75e958](https://github.com/SAP/ui5-webcomponents/commit/b75e958fdc651b60913310bf1645f05e6df726ec))
54
+
55
+
56
+
57
+
58
+
59
+ # [1.11.0-rc.1](https://github.com/SAP/ui5-webcomponents/compare/v1.11.0-rc.0...v1.11.0-rc.1) (2023-02-09)
60
+
61
+
62
+ ### Bug Fixes
63
+
64
+ * **f6-navigation:** skip empty groups ([#6397](https://github.com/SAP/ui5-webcomponents/issues/6397)) ([f49c593](https://github.com/SAP/ui5-webcomponents/commit/f49c5930f9a9d4e55a614c9b7125a951005335bd))
65
+
66
+
67
+
68
+
69
+
6
70
  # [1.11.0-rc.0](https://github.com/SAP/ui5-webcomponents/compare/v1.10.4-rc.0...v1.11.0-rc.0) (2023-02-02)
7
71
 
8
72
 
package/bundle.esm.js CHANGED
@@ -33,9 +33,10 @@ import { getCalendarType } from "./dist/config/CalendarType.js";
33
33
  import { getTheme, setTheme } from "./dist/config/Theme.js";
34
34
  import { getNoConflict, setNoConflict } from "./dist/config/NoConflict.js";
35
35
  import { getRTL } from "./dist/config/RTL.js";
36
- import { getFirstDayOfWeek } from "./dist/config/FormatSettings.js";
36
+ import { getFirstDayOfWeek, getLegacyDateCalendarCustomizing } from "./dist/config/FormatSettings.js";
37
37
  import { _getRegisteredNames as getIconNames } from "./dist/asset-registries/Icons.js"
38
38
  import applyDirection from "./dist/locale/applyDirection.js";
39
+ import LegacyDateFormats from "./dist/features/LegacyDateFormats.js";
39
40
 
40
41
  window["sap-ui-webcomponents-bundle"] = {
41
42
  configuration : {
@@ -49,6 +50,7 @@ window["sap-ui-webcomponents-bundle"] = {
49
50
  getCalendarType,
50
51
  getRTL,
51
52
  getFirstDayOfWeek,
53
+ getLegacyDateCalendarCustomizing,
52
54
  },
53
55
  getIconNames,
54
56
  parseProperties,
package/dist/Boot.d.ts CHANGED
@@ -1,8 +1,9 @@
1
1
  /**
2
- * Attach a callback that will be executed on boot
2
+ * Attaches a callback that will be executed after boot finishes.
3
+ * <b>Note:</b> If the framework already booted, the callback will be immediately executed.
3
4
  * @public
4
- * @param listener
5
+ * @param { Function } listener
5
6
  */
6
- declare const attachBoot: (listener: () => void) => Promise<void>;
7
+ declare const attachBoot: (listener: () => void) => void;
7
8
  declare const boot: () => Promise<void>;
8
9
  export { boot, attachBoot, };
package/dist/Boot.js CHANGED
@@ -1,18 +1,26 @@
1
1
  import whenDOMReady from "./util/whenDOMReady.js";
2
+ import EventProvider from "./EventProvider.js";
2
3
  import insertFontFace from "./FontFace.js";
3
4
  import insertSystemCSSVars from "./SystemCSSVars.js";
4
5
  import { getTheme } from "./config/Theme.js";
5
6
  import applyTheme from "./theming/applyTheme.js";
6
7
  import { registerCurrentRuntime } from "./Runtimes.js";
7
8
  import { getFeature } from "./FeaturesRegistry.js";
9
+ import { attachThemeRegistered } from "./theming/ThemeRegistered.js";
10
+ let booted = false;
8
11
  let bootPromise;
12
+ const eventProvider = new EventProvider();
9
13
  /**
10
- * Attach a callback that will be executed on boot
14
+ * Attaches a callback that will be executed after boot finishes.
15
+ * <b>Note:</b> If the framework already booted, the callback will be immediately executed.
11
16
  * @public
12
- * @param listener
17
+ * @param { Function } listener
13
18
  */
14
- const attachBoot = async (listener) => {
15
- await boot();
19
+ const attachBoot = (listener) => {
20
+ if (!booted) {
21
+ eventProvider.attachEvent("boot", listener);
22
+ return;
23
+ }
16
24
  listener();
17
25
  };
18
26
  const boot = async () => {
@@ -20,6 +28,17 @@ const boot = async () => {
20
28
  return bootPromise;
21
29
  }
22
30
  const bootExecutor = async (resolve) => {
31
+ if (typeof document === "undefined") {
32
+ resolve();
33
+ return;
34
+ }
35
+ attachThemeRegistered(() => {
36
+ if (!booted) {
37
+ return;
38
+ }
39
+ console.log("apply theme when theme registered after boot"); // eslint-disable-line
40
+ applyTheme(getTheme());
41
+ });
23
42
  registerCurrentRuntime();
24
43
  const openUI5Support = getFeature("OpenUI5Support");
25
44
  const isOpenUI5Loaded = openUI5Support ? openUI5Support.isLoaded() : false;
@@ -36,6 +55,8 @@ const boot = async () => {
36
55
  insertFontFace();
37
56
  insertSystemCSSVars();
38
57
  resolve();
58
+ booted = true;
59
+ await eventProvider.fireEventAsync("boot");
39
60
  };
40
61
  bootPromise = new Promise(bootExecutor);
41
62
  return bootPromise;
package/dist/Boot.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Boot.js","sourceRoot":"","sources":["../src/Boot.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,wBAAwB,CAAC;AAClD,OAAO,cAAc,MAAM,eAAe,CAAC;AAC3C,OAAO,mBAAmB,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,UAAU,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAKnD,IAAI,WAA0B,CAAC;AAE/B;;;;GAIG;AACH,MAAM,UAAU,GAAG,KAAK,EAAE,QAAoB,EAAE,EAAE;IACjD,MAAM,IAAI,EAAE,CAAC;IACb,QAAQ,EAAE,CAAC;AACZ,CAAC,CAAC;AAEF,MAAM,IAAI,GAAG,KAAK,IAAmB,EAAE;IACtC,IAAI,WAAW,KAAK,SAAS,EAAE;QAC9B,OAAO,WAAW,CAAC;KACnB;IAED,MAAM,YAAY,GAAG,KAAK,EAAE,OAAuB,EAAE,EAAE;QACtD,sBAAsB,EAAE,CAAC;QAEzB,MAAM,cAAc,GAAG,UAAU,CAAwB,gBAAgB,CAAC,CAAC;QAC3E,MAAM,eAAe,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QAC3E,MAAM,YAAY,GAAG,UAAU,CAAsB,cAAc,CAAC,CAAC;QAErE,IAAI,cAAc,EAAE;YACnB,MAAM,cAAc,CAAC,IAAI,EAAE,CAAC;SAC5B;QAED,IAAI,YAAY,IAAI,CAAC,eAAe,EAAE;YACrC,YAAY,CAAC,IAAI,EAAE,CAAC;SACpB;QAED,MAAM,YAAY,EAAE,CAAC;QACrB,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC7B,cAAc,IAAI,cAAc,CAAC,eAAe,EAAE,CAAC;QACnD,cAAc,EAAE,CAAC;QACjB,mBAAmB,EAAE,CAAC;QAEtB,OAAO,EAAE,CAAC;IACX,CAAC,CAAC;IAEF,WAAW,GAAG,IAAI,OAAO,CAAC,YAAiD,CAAC,CAAC;IAE7E,OAAO,WAAW,CAAC;AACpB,CAAC,CAAC;AAEF,OAAO,EACN,IAAI,EACJ,UAAU,GACV,CAAC"}
1
+ {"version":3,"file":"Boot.js","sourceRoot":"","sources":["../src/Boot.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,wBAAwB,CAAC;AAClD,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,cAAc,MAAM,eAAe,CAAC;AAC3C,OAAO,mBAAmB,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,UAAU,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAInD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,IAAI,MAAM,GAAG,KAAK,CAAC;AACnB,IAAI,WAA0B,CAAC;AAC/B,MAAM,aAAa,GAAG,IAAI,aAAa,EAAc,CAAC;AAEtD;;;;;GAKG;AACH,MAAM,UAAU,GAAG,CAAC,QAAoB,EAAE,EAAE;IAC3C,IAAI,CAAC,MAAM,EAAE;QACZ,aAAa,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC5C,OAAO;KACP;IAED,QAAQ,EAAE,CAAC;AACZ,CAAC,CAAC;AAEF,MAAM,IAAI,GAAG,KAAK,IAAmB,EAAE;IACtC,IAAI,WAAW,KAAK,SAAS,EAAE;QAC9B,OAAO,WAAW,CAAC;KACnB;IAED,MAAM,YAAY,GAAG,KAAK,EAAE,OAAuB,EAAE,EAAE;QACtD,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;YACpC,OAAO,EAAE,CAAC;YACV,OAAO;SACP;QAED,qBAAqB,CAAC,GAAG,EAAE;YAC1B,IAAI,CAAC,MAAM,EAAE;gBACZ,OAAO;aACP;YACD,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC,CAAC,sBAAsB;YACnF,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;QAEH,sBAAsB,EAAE,CAAC;QAEzB,MAAM,cAAc,GAAG,UAAU,CAAwB,gBAAgB,CAAC,CAAC;QAC3E,MAAM,eAAe,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QAC3E,MAAM,YAAY,GAAG,UAAU,CAAsB,cAAc,CAAC,CAAC;QAErE,IAAI,cAAc,EAAE;YACnB,MAAM,cAAc,CAAC,IAAI,EAAE,CAAC;SAC5B;QAED,IAAI,YAAY,IAAI,CAAC,eAAe,EAAE;YACrC,YAAY,CAAC,IAAI,EAAE,CAAC;SACpB;QAED,MAAM,YAAY,EAAE,CAAC;QACrB,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC7B,cAAc,IAAI,cAAc,CAAC,eAAe,EAAE,CAAC;QACnD,cAAc,EAAE,CAAC;QACjB,mBAAmB,EAAE,CAAC;QAEtB,OAAO,EAAE,CAAC;QAEV,MAAM,GAAG,IAAI,CAAC;QACd,MAAM,aAAa,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC,CAAC;IAEF,WAAW,GAAG,IAAI,OAAO,CAAC,YAAiD,CAAC,CAAC;IAC7E,OAAO,WAAW,CAAC;AACpB,CAAC,CAAC;AAEF,OAAO,EACN,IAAI,EACJ,UAAU,GACV,CAAC"}
package/dist/Device.js CHANGED
@@ -1,91 +1,166 @@
1
- const ua = navigator.userAgent;
2
- const touch = "ontouchstart" in window || navigator.maxTouchPoints > 0;
3
- const ie = /(msie|trident)/i.test(ua);
4
- const chrome = !ie && /(Chrome|CriOS)/.test(ua);
5
- const firefox = /Firefox/.test(ua);
6
- const safari = !ie && !chrome && /(Version|PhantomJS)\/(\d+\.\d+).*Safari/.test(ua);
7
- const webkit = !ie && /webkit/.test(ua);
8
- const windows = navigator.platform.indexOf("Win") !== -1;
9
- const iOS = !!(navigator.platform.match(/iPhone|iPad|iPod/)) || !!(navigator.userAgent.match(/Mac/) && "ontouchend" in document);
10
- const android = !windows && /Android/.test(ua);
11
- const androidPhone = android && /(?=android)(?=.*mobile)/i.test(ua);
12
- const ipad = /ipad/i.test(ua) || (/Macintosh/i.test(ua) && "ontouchend" in document);
13
- // With iOS 13 the string 'iPad' was removed from the user agent string through a browser setting, which is applied on all sites by default:
14
- // "Request Desktop Website -> All websites" (for more infos see: https://forums.developer.apple.com/thread/119186).
15
- // Therefore the OS is detected as MACINTOSH instead of iOS and the device is a tablet if the Device.support.touch is true.
1
+ const isSSR = typeof document === "undefined";
2
+ const internals = {
3
+ get userAgent() {
4
+ if (isSSR) {
5
+ return "";
6
+ }
7
+ return navigator.userAgent;
8
+ },
9
+ get touch() {
10
+ if (isSSR) {
11
+ return false;
12
+ }
13
+ return "ontouchstart" in window || navigator.maxTouchPoints > 0;
14
+ },
15
+ get ie() {
16
+ if (isSSR) {
17
+ return false;
18
+ }
19
+ return /(msie|trident)/i.test(internals.userAgent);
20
+ },
21
+ get chrome() {
22
+ if (isSSR) {
23
+ return false;
24
+ }
25
+ return !internals.ie && /(Chrome|CriOS)/.test(internals.userAgent);
26
+ },
27
+ get firefox() {
28
+ if (isSSR) {
29
+ return false;
30
+ }
31
+ return /Firefox/.test(internals.userAgent);
32
+ },
33
+ get safari() {
34
+ if (isSSR) {
35
+ return false;
36
+ }
37
+ return !internals.ie && !internals.chrome && /(Version|PhantomJS)\/(\d+\.\d+).*Safari/.test(internals.userAgent);
38
+ },
39
+ get webkit() {
40
+ if (isSSR) {
41
+ return false;
42
+ }
43
+ return !internals.ie && /webkit/.test(internals.userAgent);
44
+ },
45
+ get windows() {
46
+ if (isSSR) {
47
+ return false;
48
+ }
49
+ return navigator.platform.indexOf("Win") !== -1;
50
+ },
51
+ get iOS() {
52
+ if (isSSR) {
53
+ return false;
54
+ }
55
+ return !!(navigator.platform.match(/iPhone|iPad|iPod/)) || !!(internals.userAgent.match(/Mac/) && "ontouchend" in document);
56
+ },
57
+ get android() {
58
+ if (isSSR) {
59
+ return false;
60
+ }
61
+ return !internals.windows && /Android/.test(internals.userAgent);
62
+ },
63
+ get androidPhone() {
64
+ if (isSSR) {
65
+ return false;
66
+ }
67
+ return internals.android && /(?=android)(?=.*mobile)/i.test(internals.userAgent);
68
+ },
69
+ get ipad() {
70
+ if (isSSR) {
71
+ return false;
72
+ }
73
+ // With iOS 13 the string 'iPad' was removed from the user agent string through a browser setting, which is applied on all sites by default:
74
+ // "Request Desktop Website -> All websites" (for more infos see: https://forums.developer.apple.com/thread/119186).
75
+ // Therefore the OS is detected as MACINTOSH instead of iOS and the device is a tablet if the Device.support.touch is true.
76
+ return /ipad/i.test(internals.userAgent) || (/Macintosh/i.test(internals.userAgent) && "ontouchend" in document);
77
+ },
78
+ };
16
79
  let windowsVersion;
17
80
  let webkitVersion;
18
81
  let tablet;
19
82
  const isWindows8OrAbove = () => {
20
- if (!windows) {
83
+ if (isSSR) {
84
+ return false;
85
+ }
86
+ if (!internals.windows) {
21
87
  return false;
22
88
  }
23
89
  if (windowsVersion === undefined) {
24
- const matches = ua.match(/Windows NT (\d+).(\d)/);
90
+ const matches = internals.userAgent.match(/Windows NT (\d+).(\d)/);
25
91
  windowsVersion = matches ? parseFloat(matches[1]) : 0;
26
92
  }
27
93
  return windowsVersion >= 8;
28
94
  };
29
95
  const isWebkit537OrAbove = () => {
30
- if (!webkit) {
96
+ if (isSSR) {
97
+ return false;
98
+ }
99
+ if (!internals.webkit) {
31
100
  return false;
32
101
  }
33
102
  if (webkitVersion === undefined) {
34
- const matches = ua.match(/(webkit)[ /]([\w.]+)/);
103
+ const matches = internals.userAgent.match(/(webkit)[ /]([\w.]+)/);
35
104
  webkitVersion = matches ? parseFloat(matches[1]) : 0;
36
105
  }
37
106
  return webkitVersion >= 537.10;
38
107
  };
39
108
  const detectTablet = () => {
109
+ if (isSSR) {
110
+ return false;
111
+ }
40
112
  if (tablet !== undefined) {
41
113
  return;
42
114
  }
43
- if (ipad) {
115
+ if (internals.ipad) {
44
116
  tablet = true;
45
117
  return;
46
118
  }
47
- if (touch) {
119
+ if (internals.touch) {
48
120
  if (isWindows8OrAbove()) {
49
121
  tablet = true;
50
122
  return;
51
123
  }
52
- if (chrome && android) {
53
- tablet = !/Mobile Safari\/[.0-9]+/.test(ua);
124
+ if (internals.chrome && internals.android) {
125
+ tablet = !/Mobile Safari\/[.0-9]+/.test(internals.userAgent);
54
126
  return;
55
127
  }
56
128
  let densityFactor = window.devicePixelRatio ? window.devicePixelRatio : 1; // may be undefined in Windows Phone devices
57
- if (android && isWebkit537OrAbove()) {
129
+ if (internals.android && isWebkit537OrAbove()) {
58
130
  densityFactor = 1;
59
131
  }
60
132
  tablet = (Math.min(window.screen.width / densityFactor, window.screen.height / densityFactor) >= 600);
61
133
  return;
62
134
  }
63
- tablet = (ie && ua.indexOf("Touch") !== -1) || (android && !androidPhone);
135
+ tablet = (internals.ie && internals.userAgent.indexOf("Touch") !== -1) || (internals.android && !internals.androidPhone);
64
136
  };
65
- const supportsTouch = () => touch;
66
- const isIE = () => ie;
67
- const isSafari = () => safari;
68
- const isChrome = () => chrome;
69
- const isFirefox = () => firefox;
137
+ const supportsTouch = () => internals.touch;
138
+ const isIE = () => internals.ie;
139
+ const isSafari = () => internals.safari;
140
+ const isChrome = () => internals.chrome;
141
+ const isFirefox = () => internals.firefox;
70
142
  const isTablet = () => {
71
143
  detectTablet();
72
- return (touch || isWindows8OrAbove()) && tablet;
144
+ return (internals.touch || isWindows8OrAbove()) && tablet;
73
145
  };
74
146
  const isPhone = () => {
75
147
  detectTablet();
76
- return touch && !tablet;
148
+ return internals.touch && !tablet;
77
149
  };
78
150
  const isDesktop = () => {
151
+ if (isSSR) {
152
+ return false;
153
+ }
79
154
  return (!isTablet() && !isPhone()) || isWindows8OrAbove();
80
155
  };
81
156
  const isCombi = () => {
82
157
  return isTablet() && isDesktop();
83
158
  };
84
159
  const isIOS = () => {
85
- return iOS;
160
+ return internals.iOS;
86
161
  };
87
162
  const isAndroid = () => {
88
- return android || androidPhone;
163
+ return internals.android || internals.androidPhone;
89
164
  };
90
165
  export { supportsTouch, isIE, isSafari, isChrome, isFirefox, isPhone, isTablet, isDesktop, isCombi, isIOS, isAndroid, };
91
166
  //# sourceMappingURL=Device.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Device.js","sourceRoot":"","sources":["../src/Device.ts"],"names":[],"mappings":"AAAA,MAAM,EAAE,GAAG,SAAS,CAAC,SAAS,CAAC;AAC/B,MAAM,KAAK,GAAG,cAAc,IAAI,MAAM,IAAI,SAAS,CAAC,cAAc,GAAG,CAAC,CAAC;AACvE,MAAM,EAAE,GAAG,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACtC,MAAM,MAAM,GAAG,CAAC,EAAE,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAChD,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACnC,MAAM,MAAM,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,IAAI,yCAAyC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACpF,MAAM,MAAM,GAAG,CAAC,EAAE,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxC,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;AACzD,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,YAAY,IAAI,QAAQ,CAAC,CAAC;AACjI,MAAM,OAAO,GAAG,CAAC,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC/C,MAAM,YAAY,GAAG,OAAO,IAAI,0BAA0B,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACpE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,YAAY,IAAI,QAAQ,CAAC,CAAC;AACrF,4IAA4I;AAC5I,oHAAoH;AACpH,2HAA2H;AAE3H,IAAI,cAAsB,CAAC;AAC3B,IAAI,aAAqB,CAAC;AAC1B,IAAI,MAAe,CAAC;AAEpB,MAAM,iBAAiB,GAAG,GAAG,EAAE;IAC9B,IAAI,CAAC,OAAO,EAAE;QACb,OAAO,KAAK,CAAC;KACb;IAED,IAAI,cAAc,KAAK,SAAS,EAAE;QACjC,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAClD,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACtD;IAED,OAAO,cAAc,IAAI,CAAC,CAAC;AAC5B,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,GAAG,EAAE;IAC/B,IAAI,CAAC,MAAM,EAAE;QACZ,OAAO,KAAK,CAAC;KACb;IAED,IAAI,aAAa,KAAK,SAAS,EAAE;QAChC,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACjD,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACrD;IAED,OAAO,aAAa,IAAI,MAAM,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,GAAG,EAAE;IACzB,IAAI,MAAM,KAAK,SAAS,EAAE;QACzB,OAAO;KACP;IAED,IAAI,IAAI,EAAE;QACT,MAAM,GAAG,IAAI,CAAC;QACd,OAAO;KACP;IAED,IAAI,KAAK,EAAE;QACV,IAAI,iBAAiB,EAAE,EAAE;YACxB,MAAM,GAAG,IAAI,CAAC;YACd,OAAO;SACP;QAED,IAAI,MAAM,IAAI,OAAO,EAAE;YACtB,MAAM,GAAG,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC5C,OAAO;SACP;QAED,IAAI,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,4CAA4C;QACvH,IAAI,OAAO,IAAI,kBAAkB,EAAE,EAAE;YACpC,aAAa,GAAG,CAAC,CAAC;SAClB;QAED,MAAM,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,GAAG,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,CAAC;QACtG,OAAO;KACP;IAED,MAAM,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC;AAC3E,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,GAAY,EAAE,CAAC,KAAK,CAAC;AAC3C,MAAM,IAAI,GAAG,GAAY,EAAE,CAAC,EAAE,CAAC;AAC/B,MAAM,QAAQ,GAAG,GAAY,EAAE,CAAC,MAAM,CAAC;AACvC,MAAM,QAAQ,GAAG,GAAY,EAAE,CAAC,MAAM,CAAC;AACvC,MAAM,SAAS,GAAG,GAAY,EAAE,CAAC,OAAO,CAAC;AAEzC,MAAM,QAAQ,GAAG,GAAY,EAAE;IAC9B,YAAY,EAAE,CAAC;IACf,OAAO,CAAC,KAAK,IAAI,iBAAiB,EAAE,CAAC,IAAI,MAAM,CAAC;AACjD,CAAC,CAAC;AAEF,MAAM,OAAO,GAAG,GAAY,EAAE;IAC7B,YAAY,EAAE,CAAC;IACf,OAAO,KAAK,IAAI,CAAC,MAAM,CAAC;AACzB,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,GAAY,EAAE;IAC/B,OAAO,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,iBAAiB,EAAE,CAAC;AAC3D,CAAC,CAAC;AAEF,MAAM,OAAO,GAAG,GAAY,EAAE;IAC7B,OAAO,QAAQ,EAAE,IAAI,SAAS,EAAE,CAAC;AAClC,CAAC,CAAC;AAEF,MAAM,KAAK,GAAG,GAAY,EAAE;IAC3B,OAAO,GAAG,CAAC;AACZ,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,GAAY,EAAE;IAC/B,OAAO,OAAO,IAAI,YAAY,CAAC;AAChC,CAAC,CAAC;AAEF,OAAO,EACN,aAAa,EACb,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,OAAO,EACP,QAAQ,EACR,SAAS,EACT,OAAO,EACP,KAAK,EACL,SAAS,GACT,CAAC"}
1
+ {"version":3,"file":"Device.js","sourceRoot":"","sources":["../src/Device.ts"],"names":[],"mappings":"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"}
@@ -132,7 +132,7 @@ const applyOpenUI5Configuration = () => {
132
132
  initialConfig = merge(initialConfig, OpenUI5Config);
133
133
  };
134
134
  const initConfiguration = () => {
135
- if (initialized) {
135
+ if (typeof document === "undefined" || initialized) {
136
136
  return;
137
137
  }
138
138
  // 1. Lowest priority - configuration script
@@ -1 +1 @@
1
- {"version":3,"file":"InitialConfiguration.js","sourceRoot":"","sources":["../src/InitialConfiguration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InitialConfiguration.js","sourceRoot":"","sources":["../src/InitialConfiguration.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,16 @@
1
1
  import UI5ElementMetadata, { Slot, SlotValue, State, PropertyValue, Metadata } from "./UI5ElementMetadata.js";
2
2
  import EventProvider from "./EventProvider.js";
3
3
  import StaticAreaItem from "./StaticAreaItem.js";
4
- import { TemplateFunction, TemplateFunctionResult } from "./renderer/executeTemplate.js";
5
- import { PromiseResolve, ComponentStylesData, ClassMap } from "./types.js";
4
+ import type { TemplateFunction, TemplateFunctionResult } from "./renderer/executeTemplate.js";
5
+ import type { PromiseResolve, ComponentStylesData, ClassMap } from "./types.js";
6
+ type Renderer = (templateResult: TemplateFunctionResult, container: HTMLElement | DocumentFragment, styleStrOrHrefsArr: string | Array<string> | undefined, forStaticArea: boolean, options: RendererOptions) => void;
7
+ type RendererOptions = {
8
+ /**
9
+ * An object to use as the `this` value for event listeners. It's often
10
+ * useful to set this to the host component rendering a template.
11
+ */
12
+ host?: object;
13
+ };
6
14
  type ChangeInfo = {
7
15
  type: "property" | "slot";
8
16
  name: string;
@@ -47,9 +55,11 @@ declare abstract class UI5Element extends HTMLElement {
47
55
  static template?: TemplateFunction;
48
56
  static staticAreaTemplate?: TemplateFunction;
49
57
  static _metadata: UI5ElementMetadata;
50
- static render: (templateFunctionResult: TemplateFunctionResult, container: HTMLElement | DocumentFragment, styleStrOrHrefsArr: string | Array<string> | undefined, forStaticArea: boolean, options: {
51
- host: HTMLElement;
52
- }) => void;
58
+ /**
59
+ * @deprecated
60
+ */
61
+ static render: Renderer;
62
+ static renderer?: Renderer;
53
63
  constructor();
54
64
  /**
55
65
  * Returns a unique ID for this UI5 Element
@@ -265,7 +275,7 @@ declare abstract class UI5Element extends HTMLElement {
265
275
  * Useful when there are transitive slots in nested component scenarios and you don't want to get a list of the slots, but rather of their content.
266
276
  * @public
267
277
  */
268
- getSlottedNodes(slotName: string): Node[];
278
+ getSlottedNodes<T = Node>(slotName: string): T[];
269
279
  /**
270
280
  * Determines whether the component should be rendered in RTL mode or not.
271
281
  * Returns: "rtl", "ltr" or undefined
@@ -306,12 +316,7 @@ declare abstract class UI5Element extends HTMLElement {
306
316
  * Returns the metadata object for this UI5 Web Component Class
307
317
  * @protected
308
318
  */
309
- static get metadata(): Metadata;
310
- /**
311
- * Sets a new metadata object for this UI5 Web Component Class
312
- * @protected
313
- */
314
- static set metadata(newMetadata: Metadata);
319
+ static metadata: Metadata;
315
320
  /**
316
321
  * Returns the CSS for this UI5 Web Component Class
317
322
  * @protected
@@ -362,7 +367,6 @@ declare abstract class UI5Element extends HTMLElement {
362
367
  * @returns {UI5ElementMetadata}
363
368
  */
364
369
  static getMetadata(): UI5ElementMetadata;
365
- static decoratorMetadata: Metadata;
366
370
  }
367
371
  /**
368
372
  * Always use duck-typing to cover all runtimes on the page.
@@ -371,4 +375,4 @@ declare abstract class UI5Element extends HTMLElement {
371
375
  declare const instanceOfUI5Element: (object: any) => object is UI5Element;
372
376
  export default UI5Element;
373
377
  export { instanceOfUI5Element };
374
- export type { ChangeInfo };
378
+ export type { ChangeInfo, Renderer, RendererOptions, };
@@ -36,7 +36,6 @@ function _invalidate(changeInfo) {
36
36
  renderDeferred(this);
37
37
  this._eventProvider.fireEvent("invalidate", { ...changeInfo, target: this });
38
38
  }
39
- let metadata = {};
40
39
  /**
41
40
  * Base class for all UI5 Web Components
42
41
  *
@@ -840,20 +839,6 @@ class UI5Element extends HTMLElement {
840
839
  }
841
840
  }
842
841
  }
843
- /**
844
- * Returns the metadata object for this UI5 Web Component Class
845
- * @protected
846
- */
847
- static get metadata() {
848
- return metadata;
849
- }
850
- /**
851
- * Sets a new metadata object for this UI5 Web Component Class
852
- * @protected
853
- */
854
- static set metadata(newMetadata) {
855
- metadata = newMetadata;
856
- }
857
842
  /**
858
843
  * Returns the CSS for this UI5 Web Component Class
859
844
  * @protected
@@ -942,20 +927,22 @@ class UI5Element extends HTMLElement {
942
927
  if (this.hasOwnProperty("_metadata")) { // eslint-disable-line
943
928
  return this._metadata;
944
929
  }
945
- const effectiveMetadata = Object.keys(this.metadata).length ? this.metadata : this.decoratorMetadata;
946
- const metadataObjects = [effectiveMetadata];
930
+ const metadataObjects = [this.metadata];
947
931
  let klass = this; // eslint-disable-line
948
932
  while (klass !== UI5Element) {
949
933
  klass = Object.getPrototypeOf(klass);
950
- const effectiveKlassMetadata = Object.keys(klass.metadata).length ? klass.metadata : klass.decoratorMetadata;
951
- metadataObjects.unshift(effectiveKlassMetadata);
934
+ metadataObjects.unshift(klass.metadata);
952
935
  }
953
936
  const mergedMetadata = merge({}, ...metadataObjects);
954
937
  this._metadata = new UI5ElementMetadata(mergedMetadata);
955
938
  return this._metadata;
956
939
  }
957
940
  }
958
- UI5Element.decoratorMetadata = {};
941
+ /**
942
+ * Returns the metadata object for this UI5 Web Component Class
943
+ * @protected
944
+ */
945
+ UI5Element.metadata = {};
959
946
  /**
960
947
  * Always use duck-typing to cover all runtimes on the page.
961
948
  * @returns {boolean}