@ui5/webcomponents-base 2.24.0-rc.0 → 2.24.0-rc.1

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.
@@ -1,3 +1,4 @@
1
1
  declare const registerFeature: (name: string, feature: object) => void;
2
2
  declare const getFeature: <T>(name: string) => T;
3
- export { registerFeature, getFeature, };
3
+ declare const getRegisteredFeatures: () => Array<string>;
4
+ export { registerFeature, getFeature, getRegisteredFeatures, };
@@ -5,5 +5,8 @@ const registerFeature = (name, feature) => {
5
5
  const getFeature = (name) => {
6
6
  return features.get(name);
7
7
  };
8
- export { registerFeature, getFeature, };
8
+ const getRegisteredFeatures = () => {
9
+ return [...features.keys()];
10
+ };
11
+ export { registerFeature, getFeature, getRegisteredFeatures, };
9
12
  //# sourceMappingURL=FeaturesRegistry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FeaturesRegistry.js","sourceRoot":"","sources":["../src/FeaturesRegistry.ts"],"names":[],"mappings":"AAAA,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAe,CAAC;AAExC,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,EAAE;IACzD,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAI,IAAY,EAAK,EAAE;IACzC,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAM,CAAC;AAChC,CAAC,CAAC;AAEF,OAAO,EACN,eAAe,EACf,UAAU,GACV,CAAC","sourcesContent":["const features = new Map<string, any>();\n\nconst registerFeature = (name: string, feature: object) => {\n\tfeatures.set(name, feature);\n};\n\nconst getFeature = <T>(name: string): T => {\n\treturn features.get(name) as T;\n};\n\nexport {\n\tregisterFeature,\n\tgetFeature,\n};\n"]}
1
+ {"version":3,"file":"FeaturesRegistry.js","sourceRoot":"","sources":["../src/FeaturesRegistry.ts"],"names":[],"mappings":"AAAA,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAe,CAAC;AAExC,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,EAAE;IACzD,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAI,IAAY,EAAK,EAAE;IACzC,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAM,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,GAAkB,EAAE;IACjD,OAAO,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEF,OAAO,EACN,eAAe,EACf,UAAU,EACV,qBAAqB,GACrB,CAAC","sourcesContent":["const features = new Map<string, any>();\n\nconst registerFeature = (name: string, feature: object) => {\n\tfeatures.set(name, feature);\n};\n\nconst getFeature = <T>(name: string): T => {\n\treturn features.get(name) as T;\n};\n\nconst getRegisteredFeatures = (): Array<string> => {\n\treturn [...features.keys()];\n};\n\nexport {\n\tregisterFeature,\n\tgetFeature,\n\tgetRegisteredFeatures,\n};\n"]}
package/dist/Runtimes.js CHANGED
@@ -1,5 +1,17 @@
1
1
  import { getAllRegisteredTags } from "./CustomElementsRegistry.js";
2
2
  import { getCustomElementsScopingRules, getCustomElementsScopingSuffix } from "./CustomElementsScopeUtils.js";
3
+ import { getRegisteredFeatures, getFeature } from "./FeaturesRegistry.js";
4
+ import { getAnimationMode } from "./config/AnimationMode.js";
5
+ import { getCalendarType, getSecondaryCalendarType } from "./config/CalendarType.js";
6
+ import { getDefaultFontLoading } from "./config/Fonts.js";
7
+ import { getFirstDayOfWeek, getLegacyDateCalendarCustomizing } from "./config/FormatSettings.js";
8
+ import { getLanguage, getFetchDefaultLanguage } from "./config/Language.js";
9
+ import { getNoConflict } from "./config/NoConflict.js";
10
+ import { getTheme, getBaseTheme } from "./config/Theme.js";
11
+ import { getThemeRoot } from "./config/ThemeRoot.js";
12
+ import { getTimezone } from "./config/Timezone.js";
13
+ import { getEnableDefaultTooltips } from "./config/Tooltips.js";
14
+ import { getIgnoreUrlParams } from "./config/UrlParams.js";
3
15
  import VersionInfo from "./generated/VersionInfo.js";
4
16
  import getSharedResource from "./getSharedResource.js";
5
17
  let currentRuntimeIndex;
@@ -26,9 +38,38 @@ const registerCurrentRuntime = () => {
26
38
  get registeredTags() {
27
39
  return getAllRegisteredTags();
28
40
  },
41
+ get registeredFeatures() {
42
+ return getRegisteredFeatures();
43
+ },
44
+ get configuration() {
45
+ return {
46
+ theme: getTheme(),
47
+ themeRoot: getThemeRoot(),
48
+ baseTheme: getBaseTheme(),
49
+ language: getLanguage(),
50
+ fetchDefaultLanguage: getFetchDefaultLanguage(),
51
+ timezone: getTimezone(),
52
+ animationMode: getAnimationMode(),
53
+ calendarType: getCalendarType(),
54
+ secondaryCalendarType: getSecondaryCalendarType(),
55
+ noConflict: getNoConflict(),
56
+ defaultFontLoading: getDefaultFontLoading(),
57
+ enableDefaultTooltips: getEnableDefaultTooltips(),
58
+ firstDayOfWeek: getFirstDayOfWeek(),
59
+ legacyDateCalendarCustomizing: getLegacyDateCalendarCustomizing(),
60
+ ignoreUrlParams: getIgnoreUrlParams(),
61
+ };
62
+ },
29
63
  get scopingRules() {
30
64
  return getCustomElementsScopingRules();
31
65
  },
66
+ get openUI5Detected() {
67
+ return getFeature("OpenUI5Support")?.isOpenUI5Detected() ?? false;
68
+ },
69
+ get openUI5LoadedFirst() {
70
+ const openUI5Support = getFeature("OpenUI5Support");
71
+ return openUI5Support ? openUI5Support.isOpenUI5LoadedFirst() : undefined;
72
+ },
32
73
  alias: currentRuntimeAlias,
33
74
  description: `Runtime ${currentRuntimeIndex} - ver ${versionInfo.version}${currentRuntimeAlias ? ` (${currentRuntimeAlias})` : ""}`,
34
75
  importMetaUrl: import.meta.url,
@@ -1 +1 @@
1
- {"version":3,"file":"Runtimes.js","sourceRoot":"","sources":["../src/Runtimes.ts"],"names":[],"mappings":"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","sourcesContent":["import { getAllRegisteredTags } from \"./CustomElementsRegistry.js\";\nimport { getCustomElementsScopingRules, getCustomElementsScopingSuffix } from \"./CustomElementsScopeUtils.js\";\nimport VersionInfo from \"./generated/VersionInfo.js\";\nimport getSharedResource from \"./getSharedResource.js\";\n\ntype RuntimeData = VersionInfo & {\n\talias: string,\n\tdescription: string,\n\timportMetaUrl: string,\n};\n\nlet currentRuntimeIndex: number;\nlet currentRuntimeAlias = \"\";\n\nconst compareCache = new Map<string, number>();\n\n/**\n * Central registry where all runtimes register themselves by pushing an object.\n * The index in the registry servers as an ID for the runtime.\n * @type {*}\n */\nconst Runtimes = getSharedResource<Array<RuntimeData>>(\"Runtimes\", []);\n\n/**\n * Registers the current runtime in the shared runtimes resource registry\n */\nconst registerCurrentRuntime = () => {\n\tif (currentRuntimeIndex === undefined) {\n\t\tcurrentRuntimeIndex = Runtimes.length;\n\t\tconst versionInfo = VersionInfo;\n\n\t\tRuntimes.push({\n\t\t\t...versionInfo,\n\t\t\tget scopingSuffix() {\n\t\t\t\treturn getCustomElementsScopingSuffix();\n\t\t\t},\n\t\t\tget registeredTags() {\n\t\t\t\treturn getAllRegisteredTags();\n\t\t\t},\n\t\t\tget scopingRules() {\n\t\t\t\treturn getCustomElementsScopingRules();\n\t\t\t},\n\t\t\talias: currentRuntimeAlias,\n\t\t\tdescription: `Runtime ${currentRuntimeIndex} - ver ${versionInfo.version}${currentRuntimeAlias ? ` (${currentRuntimeAlias})` : \"\"}`,\n\t\t\timportMetaUrl: import.meta.url,\n\t\t});\n\t}\n};\n\n/**\n * Returns the index of the current runtime's object in the shared runtimes resource registry\n * @returns {*}\n */\nconst getCurrentRuntimeIndex = () => {\n\treturn currentRuntimeIndex;\n};\n\n/**\n * Compares two VersionInfo objects and returns 1 if the first is bigger, -1 if the second is bigger, and 0 if equal.\n */\nconst compareVersions = (v1: VersionInfo, v2: VersionInfo): number => {\n\tif (v1.isNext || v2.isNext) {\n\t\treturn v1.buildTime - v2.buildTime;\n\t}\n\n\tconst majorDiff = v1.major - v2.major;\n\tif (majorDiff) {\n\t\treturn majorDiff;\n\t}\n\n\tconst minorDiff = v1.minor - v2.minor;\n\tif (minorDiff) {\n\t\treturn minorDiff;\n\t}\n\n\tconst patchDiff = v1.patch - v2.patch;\n\tif (patchDiff) {\n\t\treturn patchDiff;\n\t}\n\n\tconst collator = new Intl.Collator(undefined, { numeric: true, sensitivity: \"base\" });\n\treturn collator.compare(v1.suffix, v2.suffix);\n};\n\n/**\n * Compares two runtimes and returns 1 if the first is of a bigger version, -1 if the second is of a bigger version, and 0 if equal\n * @param index1 The index of the first runtime to compare\n * @param index2 The index of the second runtime to compare\n * @returns {number}\n */\nconst compareRuntimes = (index1: number, index2: number) => {\n\tconst cacheIndex = `${index1},${index2}`;\n\tif (compareCache.has(cacheIndex)) {\n\t\treturn compareCache.get(cacheIndex)!;\n\t}\n\n\tconst runtime1 = Runtimes[index1];\n\tconst runtime2 = Runtimes[index2];\n\n\tif (!runtime1 || !runtime2) {\n\t\tthrow new Error(\"Invalid runtime index supplied\");\n\t}\n\n\tconst result = compareVersions(runtime1, runtime2);\n\n\tcompareCache.set(cacheIndex, result);\n\treturn result;\n};\n\n/**\n * Set an alias for the the current app/library/microfrontend which will appear in debug messages and console warnings\n * @param alias\n */\nconst setRuntimeAlias = (alias: string) => {\n\tcurrentRuntimeAlias = alias;\n};\n\nconst getAllRuntimes = () => {\n\treturn Runtimes;\n};\n\nexport {\n\tgetCurrentRuntimeIndex,\n\tregisterCurrentRuntime,\n\tcompareRuntimes,\n\tcompareVersions,\n\tsetRuntimeAlias,\n\tgetAllRuntimes,\n};\n"]}
1
+ {"version":3,"file":"Runtimes.js","sourceRoot":"","sources":["../src/Runtimes.ts"],"names":[],"mappings":"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","sourcesContent":["import { getAllRegisteredTags } from \"./CustomElementsRegistry.js\";\nimport { getCustomElementsScopingRules, getCustomElementsScopingSuffix } from \"./CustomElementsScopeUtils.js\";\nimport { getRegisteredFeatures, getFeature } from \"./FeaturesRegistry.js\";\nimport type OpenUI5Support from \"./features/OpenUI5Support.js\";\nimport { getAnimationMode } from \"./config/AnimationMode.js\";\nimport { getCalendarType, getSecondaryCalendarType } from \"./config/CalendarType.js\";\nimport { getDefaultFontLoading } from \"./config/Fonts.js\";\nimport { getFirstDayOfWeek, getLegacyDateCalendarCustomizing } from \"./config/FormatSettings.js\";\nimport { getLanguage, getFetchDefaultLanguage } from \"./config/Language.js\";\nimport { getNoConflict } from \"./config/NoConflict.js\";\nimport { getTheme, getBaseTheme } from \"./config/Theme.js\";\nimport { getThemeRoot } from \"./config/ThemeRoot.js\";\nimport { getTimezone } from \"./config/Timezone.js\";\nimport { getEnableDefaultTooltips } from \"./config/Tooltips.js\";\nimport { getIgnoreUrlParams } from \"./config/UrlParams.js\";\nimport VersionInfo from \"./generated/VersionInfo.js\";\nimport getSharedResource from \"./getSharedResource.js\";\n\ntype RuntimeData = VersionInfo & {\n\talias: string,\n\tdescription: string,\n\timportMetaUrl: string,\n};\n\nlet currentRuntimeIndex: number;\nlet currentRuntimeAlias = \"\";\n\nconst compareCache = new Map<string, number>();\n\n/**\n * Central registry where all runtimes register themselves by pushing an object.\n * The index in the registry servers as an ID for the runtime.\n * @type {*}\n */\nconst Runtimes = getSharedResource<Array<RuntimeData>>(\"Runtimes\", []);\n\n/**\n * Registers the current runtime in the shared runtimes resource registry\n */\nconst registerCurrentRuntime = () => {\n\tif (currentRuntimeIndex === undefined) {\n\t\tcurrentRuntimeIndex = Runtimes.length;\n\t\tconst versionInfo = VersionInfo;\n\n\t\tRuntimes.push({\n\t\t\t...versionInfo,\n\t\t\tget scopingSuffix() {\n\t\t\t\treturn getCustomElementsScopingSuffix();\n\t\t\t},\n\t\t\tget registeredTags() {\n\t\t\t\treturn getAllRegisteredTags();\n\t\t\t},\n\t\t\tget registeredFeatures() {\n\t\t\t\treturn getRegisteredFeatures();\n\t\t\t},\n\t\t\tget configuration() {\n\t\t\t\treturn {\n\t\t\t\t\ttheme: getTheme(),\n\t\t\t\t\tthemeRoot: getThemeRoot(),\n\t\t\t\t\tbaseTheme: getBaseTheme(),\n\t\t\t\t\tlanguage: getLanguage(),\n\t\t\t\t\tfetchDefaultLanguage: getFetchDefaultLanguage(),\n\t\t\t\t\ttimezone: getTimezone(),\n\t\t\t\t\tanimationMode: getAnimationMode(),\n\t\t\t\t\tcalendarType: getCalendarType(),\n\t\t\t\t\tsecondaryCalendarType: getSecondaryCalendarType(),\n\t\t\t\t\tnoConflict: getNoConflict(),\n\t\t\t\t\tdefaultFontLoading: getDefaultFontLoading(),\n\t\t\t\t\tenableDefaultTooltips: getEnableDefaultTooltips(),\n\t\t\t\t\tfirstDayOfWeek: getFirstDayOfWeek(),\n\t\t\t\t\tlegacyDateCalendarCustomizing: getLegacyDateCalendarCustomizing(),\n\t\t\t\t\tignoreUrlParams: getIgnoreUrlParams(),\n\t\t\t\t};\n\t\t\t},\n\t\t\tget scopingRules() {\n\t\t\t\treturn getCustomElementsScopingRules();\n\t\t\t},\n\t\t\tget openUI5Detected() {\n\t\t\t\treturn getFeature<typeof OpenUI5Support>(\"OpenUI5Support\")?.isOpenUI5Detected() ?? false;\n\t\t\t},\n\t\t\tget openUI5LoadedFirst() {\n\t\t\t\tconst openUI5Support = getFeature<typeof OpenUI5Support>(\"OpenUI5Support\");\n\t\t\t\treturn openUI5Support ? openUI5Support.isOpenUI5LoadedFirst() : undefined;\n\t\t\t},\n\t\t\talias: currentRuntimeAlias,\n\t\t\tdescription: `Runtime ${currentRuntimeIndex} - ver ${versionInfo.version}${currentRuntimeAlias ? ` (${currentRuntimeAlias})` : \"\"}`,\n\t\t\timportMetaUrl: import.meta.url,\n\t\t});\n\t}\n};\n\n/**\n * Returns the index of the current runtime's object in the shared runtimes resource registry\n * @returns {*}\n */\nconst getCurrentRuntimeIndex = () => {\n\treturn currentRuntimeIndex;\n};\n\n/**\n * Compares two VersionInfo objects and returns 1 if the first is bigger, -1 if the second is bigger, and 0 if equal.\n */\nconst compareVersions = (v1: VersionInfo, v2: VersionInfo): number => {\n\tif (v1.isNext || v2.isNext) {\n\t\treturn v1.buildTime - v2.buildTime;\n\t}\n\n\tconst majorDiff = v1.major - v2.major;\n\tif (majorDiff) {\n\t\treturn majorDiff;\n\t}\n\n\tconst minorDiff = v1.minor - v2.minor;\n\tif (minorDiff) {\n\t\treturn minorDiff;\n\t}\n\n\tconst patchDiff = v1.patch - v2.patch;\n\tif (patchDiff) {\n\t\treturn patchDiff;\n\t}\n\n\tconst collator = new Intl.Collator(undefined, { numeric: true, sensitivity: \"base\" });\n\treturn collator.compare(v1.suffix, v2.suffix);\n};\n\n/**\n * Compares two runtimes and returns 1 if the first is of a bigger version, -1 if the second is of a bigger version, and 0 if equal\n * @param index1 The index of the first runtime to compare\n * @param index2 The index of the second runtime to compare\n * @returns {number}\n */\nconst compareRuntimes = (index1: number, index2: number) => {\n\tconst cacheIndex = `${index1},${index2}`;\n\tif (compareCache.has(cacheIndex)) {\n\t\treturn compareCache.get(cacheIndex)!;\n\t}\n\n\tconst runtime1 = Runtimes[index1];\n\tconst runtime2 = Runtimes[index2];\n\n\tif (!runtime1 || !runtime2) {\n\t\tthrow new Error(\"Invalid runtime index supplied\");\n\t}\n\n\tconst result = compareVersions(runtime1, runtime2);\n\n\tcompareCache.set(cacheIndex, result);\n\treturn result;\n};\n\n/**\n * Set an alias for the the current app/library/microfrontend which will appear in debug messages and console warnings\n * @param alias\n */\nconst setRuntimeAlias = (alias: string) => {\n\tcurrentRuntimeAlias = alias;\n};\n\nconst getAllRuntimes = () => {\n\treturn Runtimes;\n};\n\nexport {\n\tgetCurrentRuntimeIndex,\n\tregisterCurrentRuntime,\n\tcompareRuntimes,\n\tcompareVersions,\n\tsetRuntimeAlias,\n\tgetAllRuntimes,\n};\n"]}
@@ -1096,115 +1096,115 @@
1096
1096
  },
1097
1097
  {
1098
1098
  "kind": "javascript-module",
1099
- "path": "dist/asset-registries/Icons.js",
1099
+ "path": "dist/config/AnimationMode.js",
1100
1100
  "declarations": [],
1101
1101
  "exports": []
1102
1102
  },
1103
1103
  {
1104
1104
  "kind": "javascript-module",
1105
- "path": "dist/asset-registries/Illustrations.js",
1105
+ "path": "dist/config/CalendarType.js",
1106
1106
  "declarations": [],
1107
1107
  "exports": []
1108
1108
  },
1109
1109
  {
1110
1110
  "kind": "javascript-module",
1111
- "path": "dist/asset-registries/LocaleData.js",
1111
+ "path": "dist/config/ConfigurationReset.js",
1112
1112
  "declarations": [],
1113
1113
  "exports": []
1114
1114
  },
1115
1115
  {
1116
1116
  "kind": "javascript-module",
1117
- "path": "dist/asset-registries/Themes.js",
1117
+ "path": "dist/config/ConfigurationSync.js",
1118
1118
  "declarations": [],
1119
1119
  "exports": []
1120
1120
  },
1121
1121
  {
1122
1122
  "kind": "javascript-module",
1123
- "path": "dist/asset-registries/i18n.js",
1123
+ "path": "dist/config/Fonts.js",
1124
1124
  "declarations": [],
1125
1125
  "exports": []
1126
1126
  },
1127
1127
  {
1128
1128
  "kind": "javascript-module",
1129
- "path": "dist/config/AnimationMode.js",
1129
+ "path": "dist/config/FormatSettings.js",
1130
1130
  "declarations": [],
1131
1131
  "exports": []
1132
1132
  },
1133
1133
  {
1134
1134
  "kind": "javascript-module",
1135
- "path": "dist/config/CalendarType.js",
1135
+ "path": "dist/config/Icons.js",
1136
1136
  "declarations": [],
1137
1137
  "exports": []
1138
1138
  },
1139
1139
  {
1140
1140
  "kind": "javascript-module",
1141
- "path": "dist/config/ConfigurationReset.js",
1141
+ "path": "dist/config/Language.js",
1142
1142
  "declarations": [],
1143
1143
  "exports": []
1144
1144
  },
1145
1145
  {
1146
1146
  "kind": "javascript-module",
1147
- "path": "dist/config/ConfigurationSync.js",
1147
+ "path": "dist/config/NoConflict.js",
1148
1148
  "declarations": [],
1149
1149
  "exports": []
1150
1150
  },
1151
1151
  {
1152
1152
  "kind": "javascript-module",
1153
- "path": "dist/config/Fonts.js",
1153
+ "path": "dist/config/Theme.js",
1154
1154
  "declarations": [],
1155
1155
  "exports": []
1156
1156
  },
1157
1157
  {
1158
1158
  "kind": "javascript-module",
1159
- "path": "dist/config/FormatSettings.js",
1159
+ "path": "dist/config/ThemeRoot.js",
1160
1160
  "declarations": [],
1161
1161
  "exports": []
1162
1162
  },
1163
1163
  {
1164
1164
  "kind": "javascript-module",
1165
- "path": "dist/config/Icons.js",
1165
+ "path": "dist/config/Timezone.js",
1166
1166
  "declarations": [],
1167
1167
  "exports": []
1168
1168
  },
1169
1169
  {
1170
1170
  "kind": "javascript-module",
1171
- "path": "dist/config/Language.js",
1171
+ "path": "dist/config/Tooltips.js",
1172
1172
  "declarations": [],
1173
1173
  "exports": []
1174
1174
  },
1175
1175
  {
1176
1176
  "kind": "javascript-module",
1177
- "path": "dist/config/NoConflict.js",
1177
+ "path": "dist/config/UrlParams.js",
1178
1178
  "declarations": [],
1179
1179
  "exports": []
1180
1180
  },
1181
1181
  {
1182
1182
  "kind": "javascript-module",
1183
- "path": "dist/config/Theme.js",
1183
+ "path": "dist/asset-registries/Icons.js",
1184
1184
  "declarations": [],
1185
1185
  "exports": []
1186
1186
  },
1187
1187
  {
1188
1188
  "kind": "javascript-module",
1189
- "path": "dist/config/ThemeRoot.js",
1189
+ "path": "dist/asset-registries/Illustrations.js",
1190
1190
  "declarations": [],
1191
1191
  "exports": []
1192
1192
  },
1193
1193
  {
1194
1194
  "kind": "javascript-module",
1195
- "path": "dist/config/Timezone.js",
1195
+ "path": "dist/asset-registries/LocaleData.js",
1196
1196
  "declarations": [],
1197
1197
  "exports": []
1198
1198
  },
1199
1199
  {
1200
1200
  "kind": "javascript-module",
1201
- "path": "dist/config/Tooltips.js",
1201
+ "path": "dist/asset-registries/Themes.js",
1202
1202
  "declarations": [],
1203
1203
  "exports": []
1204
1204
  },
1205
1205
  {
1206
1206
  "kind": "javascript-module",
1207
- "path": "dist/config/UrlParams.js",
1207
+ "path": "dist/asset-registries/i18n.js",
1208
1208
  "declarations": [],
1209
1209
  "exports": []
1210
1210
  },
@@ -1078,115 +1078,115 @@
1078
1078
  },
1079
1079
  {
1080
1080
  "kind": "javascript-module",
1081
- "path": "dist/asset-registries/Icons.js",
1081
+ "path": "dist/config/AnimationMode.js",
1082
1082
  "declarations": [],
1083
1083
  "exports": []
1084
1084
  },
1085
1085
  {
1086
1086
  "kind": "javascript-module",
1087
- "path": "dist/asset-registries/Illustrations.js",
1087
+ "path": "dist/config/CalendarType.js",
1088
1088
  "declarations": [],
1089
1089
  "exports": []
1090
1090
  },
1091
1091
  {
1092
1092
  "kind": "javascript-module",
1093
- "path": "dist/asset-registries/LocaleData.js",
1093
+ "path": "dist/config/ConfigurationReset.js",
1094
1094
  "declarations": [],
1095
1095
  "exports": []
1096
1096
  },
1097
1097
  {
1098
1098
  "kind": "javascript-module",
1099
- "path": "dist/asset-registries/Themes.js",
1099
+ "path": "dist/config/ConfigurationSync.js",
1100
1100
  "declarations": [],
1101
1101
  "exports": []
1102
1102
  },
1103
1103
  {
1104
1104
  "kind": "javascript-module",
1105
- "path": "dist/asset-registries/i18n.js",
1105
+ "path": "dist/config/Fonts.js",
1106
1106
  "declarations": [],
1107
1107
  "exports": []
1108
1108
  },
1109
1109
  {
1110
1110
  "kind": "javascript-module",
1111
- "path": "dist/config/AnimationMode.js",
1111
+ "path": "dist/config/FormatSettings.js",
1112
1112
  "declarations": [],
1113
1113
  "exports": []
1114
1114
  },
1115
1115
  {
1116
1116
  "kind": "javascript-module",
1117
- "path": "dist/config/CalendarType.js",
1117
+ "path": "dist/config/Icons.js",
1118
1118
  "declarations": [],
1119
1119
  "exports": []
1120
1120
  },
1121
1121
  {
1122
1122
  "kind": "javascript-module",
1123
- "path": "dist/config/ConfigurationReset.js",
1123
+ "path": "dist/config/Language.js",
1124
1124
  "declarations": [],
1125
1125
  "exports": []
1126
1126
  },
1127
1127
  {
1128
1128
  "kind": "javascript-module",
1129
- "path": "dist/config/ConfigurationSync.js",
1129
+ "path": "dist/config/NoConflict.js",
1130
1130
  "declarations": [],
1131
1131
  "exports": []
1132
1132
  },
1133
1133
  {
1134
1134
  "kind": "javascript-module",
1135
- "path": "dist/config/Fonts.js",
1135
+ "path": "dist/config/Theme.js",
1136
1136
  "declarations": [],
1137
1137
  "exports": []
1138
1138
  },
1139
1139
  {
1140
1140
  "kind": "javascript-module",
1141
- "path": "dist/config/FormatSettings.js",
1141
+ "path": "dist/config/ThemeRoot.js",
1142
1142
  "declarations": [],
1143
1143
  "exports": []
1144
1144
  },
1145
1145
  {
1146
1146
  "kind": "javascript-module",
1147
- "path": "dist/config/Icons.js",
1147
+ "path": "dist/config/Timezone.js",
1148
1148
  "declarations": [],
1149
1149
  "exports": []
1150
1150
  },
1151
1151
  {
1152
1152
  "kind": "javascript-module",
1153
- "path": "dist/config/Language.js",
1153
+ "path": "dist/config/Tooltips.js",
1154
1154
  "declarations": [],
1155
1155
  "exports": []
1156
1156
  },
1157
1157
  {
1158
1158
  "kind": "javascript-module",
1159
- "path": "dist/config/NoConflict.js",
1159
+ "path": "dist/config/UrlParams.js",
1160
1160
  "declarations": [],
1161
1161
  "exports": []
1162
1162
  },
1163
1163
  {
1164
1164
  "kind": "javascript-module",
1165
- "path": "dist/config/Theme.js",
1165
+ "path": "dist/asset-registries/Icons.js",
1166
1166
  "declarations": [],
1167
1167
  "exports": []
1168
1168
  },
1169
1169
  {
1170
1170
  "kind": "javascript-module",
1171
- "path": "dist/config/ThemeRoot.js",
1171
+ "path": "dist/asset-registries/Illustrations.js",
1172
1172
  "declarations": [],
1173
1173
  "exports": []
1174
1174
  },
1175
1175
  {
1176
1176
  "kind": "javascript-module",
1177
- "path": "dist/config/Timezone.js",
1177
+ "path": "dist/asset-registries/LocaleData.js",
1178
1178
  "declarations": [],
1179
1179
  "exports": []
1180
1180
  },
1181
1181
  {
1182
1182
  "kind": "javascript-module",
1183
- "path": "dist/config/Tooltips.js",
1183
+ "path": "dist/asset-registries/Themes.js",
1184
1184
  "declarations": [],
1185
1185
  "exports": []
1186
1186
  },
1187
1187
  {
1188
1188
  "kind": "javascript-module",
1189
- "path": "dist/config/UrlParams.js",
1189
+ "path": "dist/asset-registries/i18n.js",
1190
1190
  "declarations": [],
1191
1191
  "exports": []
1192
1192
  },
@@ -3,8 +3,10 @@ import type { CLDRData } from "../asset-registries/LocaleData.js";
3
3
  import type { LegacyDateCalendarCustomizing } from "../features/LegacyDateFormats.js";
4
4
  declare class OpenUI5Support {
5
5
  static enablePolling: boolean;
6
+ static _loadedFirst: boolean | undefined;
6
7
  static isAtLeastVersion(minor: number): boolean;
7
8
  static isOpenUI5Detected(): boolean;
9
+ static isOpenUI5LoadedFirst(): boolean | undefined;
8
10
  static initPromise?: Promise<void>;
9
11
  /**
10
12
  * Important - if OpenUI5 is loaded after UI5 Web Components, configuration is not synchronized and it's up to the app to initialize OpenUI5 with the same settings as UI5 Web Components for consistency.
@@ -20,6 +20,9 @@ class OpenUI5Support {
20
20
  static isOpenUI5Detected() {
21
21
  return typeof window.sap?.ui?.require === "function";
22
22
  }
23
+ static isOpenUI5LoadedFirst() {
24
+ return _a._loadedFirst;
25
+ }
23
26
  static awaitForOpenUI5() {
24
27
  if (_a.enablePolling) {
25
28
  const interval = setInterval(() => {
@@ -39,6 +42,7 @@ class OpenUI5Support {
39
42
  if (!_a.isOpenUI5Detected()) {
40
43
  return _a.awaitForOpenUI5();
41
44
  }
45
+ _a._loadedFirst ??= true;
42
46
  if (!_a.initPromise) {
43
47
  _a.initPromise = new Promise(resolve => {
44
48
  window.sap.ui.require(["sap/ui/core/Core"], async (Core) => {
@@ -179,6 +183,7 @@ OpenUI5Support.enablePolling = false; // set to true for old OpenUI5 versions
179
183
  * Important - if OpenUI5 is loaded after UI5 Web Components, configuration is not synchronized and it's up to the app to initialize OpenUI5 with the same settings as UI5 Web Components for consistency.
180
184
  */
181
185
  OpenUI5Support.OpenUI5DelayedInit = async () => {
186
+ _a._loadedFirst = false;
182
187
  _a.init(); // This ensures patchPopover and patchPatcher are called; and from this point OpenUI5 CSS vars start being detected
183
188
  await secondaryBoot(); // Re-run the parts of boot that were skipped due to OpenUI5 not having been loaded
184
189
  };
@@ -1 +1 @@
1
- {"version":3,"file":"OpenUI5Support.js","sourceRoot":"","sources":["../../src/features/OpenUI5Support.ts"],"names":[],"mappings":"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","sourcesContent":["import patchPatcher from \"./patchPatcher.js\";\nimport type { OpenUI5Patcher } from \"./patchPatcher.js\";\nimport {\n\tpatchPopup,\n\taddOpenedPopup,\n\tremoveOpenedPopup,\n\tgetTopmostPopup,\n} from \"./patchPopup.js\";\nimport type { OpenUI5PopupClass, OpenUI5DialogClass, PopupInfo } from \"./patchPopup.js\";\nimport { registerFeature } from \"../FeaturesRegistry.js\";\nimport { setTheme } from \"../config/Theme.js\";\nimport type { CLDRData } from \"../asset-registries/LocaleData.js\";\nimport type { LegacyDateCalendarCustomizing } from \"../features/LegacyDateFormats.js\";\nimport { secondaryBoot } from \"../Boot.js\";\n\ntype OpenUI5Core = {\n\tattachInit: (callback: () => void) => void,\n\tready: () => Promise<void>,\n\tattachThemeChanged: (callback: () => void) => void,\n\tgetConfiguration: () => OpenUI5CoreConfiguration,\n};\n\ntype OpenUI5CoreConfiguration = {\n\tgetAnimationMode: () => string,\n\tgetLanguage: () => string,\n\tgetTheme: () => string,\n\tgetThemeRoot: () => string,\n\tgetRTL: () => string,\n\tgetTimezone: () => string,\n\tgetCalendarType: () => string,\n\tgetLocale: () => string,\n\tgetFormatSettings: () => {\n\t\tgetLegacyDateCalendarCustomizing: () => LegacyDateCalendarCustomizing;\n\t}\n};\n\ntype ControlBehavior = {\n\tgetAnimationMode: () => string,\n}\n\ntype Localization = {\n\tgetLanguage: () => string,\n\tgetLanguageTag: () => string,\n\tgetRTL: () => string,\n\tgetTimezone: () => string,\n}\n\ntype LocaleData = {\n\tgetInstance: (locale: string) => Locale,\n}\n\ntype Theming = {\n\tgetThemeRoot: () => string,\n\tgetTheme: () => string,\n\tattachApplied: (callback: () => void) => void,\n}\n\ntype Formatting = {\n\tgetCalendarType: () => string,\n\tgetLegacyDateCalendarCustomizing: () => LegacyDateCalendarCustomizing,\n\tgetCustomIslamicCalendarData?: () => LegacyDateCalendarCustomizing,\n}\n\ntype CalendarUtils = {\n\tgetWeekConfigurationValues: () => {\n\t\tfirstDayOfWeek: number | undefined,\n\t},\n}\n\ntype Locale = {\n\tgetFirstDayOfWeek: () => number,\n\t_get: () => CLDRData,\n};\n\nconst OPENUI5_POLLING_INTERVAL = 100;\n\nclass OpenUI5Support {\n\tstatic enablePolling = false; // set to true for old OpenUI5 versions\n\n\tstatic isAtLeastVersion(minor: number) {\n\t\tif (!window.sap.ui!.version) {\n\t\t\treturn true; // sap.ui.version will be removed in newer OpenUI5 versions\n\t\t}\n\t\tconst version = window.sap.ui!.version as string;\n\t\tconst parts = version.split(\".\");\n\t\tif (!parts || parts.length < 2) {\n\t\t\treturn false;\n\t\t}\n\t\treturn parseInt(parts[0]) > 1 || parseInt(parts[1]) >= minor;\n\t}\n\n\tstatic isOpenUI5Detected() {\n\t\treturn typeof window.sap?.ui?.require === \"function\";\n\t}\n\n\tstatic initPromise?: Promise<void>;\n\n\t/**\n\t * Important - if OpenUI5 is loaded after UI5 Web Components, configuration is not synchronized and it's up to the app to initialize OpenUI5 with the same settings as UI5 Web Components for consistency.\n\t */\n\tstatic OpenUI5DelayedInit = async () => {\n\t\tOpenUI5Support.init(); // This ensures patchPopover and patchPatcher are called; and from this point OpenUI5 CSS vars start being detected\n\t\tawait secondaryBoot(); // Re-run the parts of boot that were skipped due to OpenUI5 not having been loaded\n\t}\n\n\tstatic awaitForOpenUI5() {\n\t\tif (OpenUI5Support.enablePolling) {\n\t\t\tconst interval = setInterval(() => {\n\t\t\t\tif (OpenUI5Support.isOpenUI5Detected()) {\n\t\t\t\t\tclearInterval(interval);\n\t\t\t\t\tOpenUI5Support.OpenUI5DelayedInit();\n\t\t\t\t}\n\t\t\t}, OPENUI5_POLLING_INTERVAL);\n\t\t} else {\n\t\t\tdocument.addEventListener(\"sap-ui-core-ready\", () => {\n\t\t\t\tOpenUI5Support.OpenUI5DelayedInit();\n\t\t\t});\n\t\t}\n\t}\n\n\tstatic init() {\n\t\tif (!OpenUI5Support.isOpenUI5Detected()) {\n\t\t\treturn OpenUI5Support.awaitForOpenUI5();\n\t\t}\n\n\t\tif (!OpenUI5Support.initPromise) {\n\t\t\tOpenUI5Support.initPromise = new Promise<void>(resolve => {\n\t\t\t\twindow.sap.ui.require([\"sap/ui/core/Core\"], async (Core: OpenUI5Core) => {\n\t\t\t\t\tconst callback = () => {\n\t\t\t\t\t\tlet deps: Array<string> = [\"sap/ui/core/Popup\", \"sap/m/Dialog\", \"sap/ui/core/Patcher\", \"sap/ui/core/LocaleData\"];\n\t\t\t\t\t\tif (OpenUI5Support.isAtLeastVersion(116)) { // for versions since 1.116.0 and onward, use the modular core\n\t\t\t\t\t\t\tdeps = [\n\t\t\t\t\t\t\t\t...deps,\n\t\t\t\t\t\t\t\t\"sap/base/i18n/Formatting\",\n\t\t\t\t\t\t\t\t\"sap/base/i18n/Localization\",\n\t\t\t\t\t\t\t\t\"sap/ui/core/ControlBehavior\",\n\t\t\t\t\t\t\t\t\"sap/ui/core/Theming\",\n\t\t\t\t\t\t\t\t\"sap/ui/core/date/CalendarUtils\",\n\t\t\t\t\t\t\t];\n\t\t\t\t\t\t}\n\t\t\t\t\t\twindow.sap.ui.require(deps, (Popup: OpenUI5PopupClass, Dialog: OpenUI5DialogClass, Patcher: OpenUI5Patcher) => {\n\t\t\t\t\t\t\tpatchPatcher(Patcher);\n\t\t\t\t\t\t\tpatchPopup(Popup, Dialog);\n\t\t\t\t\t\t\tresolve();\n\t\t\t\t\t\t});\n\t\t\t\t\t};\n\t\t\t\t\tif (OpenUI5Support.isAtLeastVersion(116)) {\n\t\t\t\t\t\tawait Core.ready();\n\t\t\t\t\t\tcallback();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tCore.attachInit(callback);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\n\t\treturn OpenUI5Support.initPromise;\n\t}\n\n\tstatic getConfigurationSettingsObject() {\n\t\tif (!OpenUI5Support.isOpenUI5Detected()) {\n\t\t\treturn {};\n\t\t}\n\n\t\tif (OpenUI5Support.isAtLeastVersion(116)) {\n\t\t\tconst ControlBehavior = window.sap.ui.require(\"sap/ui/core/ControlBehavior\") as ControlBehavior;\n\t\t\tconst Localization = window.sap.ui.require(\"sap/base/i18n/Localization\") as Localization;\n\t\t\tconst Theming = window.sap.ui.require(\"sap/ui/core/Theming\") as Theming;\n\t\t\tconst Formatting = window.sap.ui.require(\"sap/base/i18n/Formatting\") as Formatting;\n\t\t\tconst CalendarUtils = window.sap.ui.require(\"sap/ui/core/date/CalendarUtils\") as CalendarUtils;\n\n\t\t\treturn {\n\t\t\t\tanimationMode: ControlBehavior.getAnimationMode(),\n\t\t\t\tlanguage: Localization.getLanguage(),\n\t\t\t\ttheme: Theming.getTheme(),\n\t\t\t\tthemeRoot: Theming.getThemeRoot(),\n\t\t\t\trtl: Localization.getRTL(),\n\t\t\t\ttimezone: Localization.getTimezone(),\n\t\t\t\tcalendarType: Formatting.getCalendarType(),\n\t\t\t\tformatSettings: {\n\t\t\t\t\tfirstDayOfWeek: CalendarUtils.getWeekConfigurationValues().firstDayOfWeek,\n\t\t\t\t\tlegacyDateCalendarCustomizing: Formatting.getCustomIslamicCalendarData?.()\n\t\t\t\t\t\t?? Formatting.getLegacyDateCalendarCustomizing?.(),\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\n\t\tconst Core = window.sap.ui.require(\"sap/ui/core/Core\") as OpenUI5Core;\n\t\tconst config = Core.getConfiguration();\n\t\tconst LocaleData = window.sap.ui.require(\"sap/ui/core/LocaleData\") as LocaleData;\n\n\t\treturn {\n\t\t\tanimationMode: config.getAnimationMode(),\n\t\t\tlanguage: config.getLanguage(),\n\t\t\ttheme: config.getTheme(),\n\t\t\tthemeRoot: typeof config.getThemeRoot === \"function\" ? config.getThemeRoot() : undefined,\n\t\t\trtl: config.getRTL(),\n\t\t\ttimezone: typeof config.getTimezone === \"function\" ? config.getTimezone() : undefined,\n\t\t\tcalendarType: config.getCalendarType(),\n\t\t\tformatSettings: {\n\t\t\t\tfirstDayOfWeek: LocaleData ? LocaleData.getInstance(config.getLocale()).getFirstDayOfWeek() : undefined,\n\t\t\t\tlegacyDateCalendarCustomizing: config.getFormatSettings().getLegacyDateCalendarCustomizing(),\n\t\t\t},\n\t\t};\n\t}\n\n\tstatic getLocaleDataObject() {\n\t\tif (!OpenUI5Support.isOpenUI5Detected()) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst LocaleData = window.sap.ui.require(\"sap/ui/core/LocaleData\") as LocaleData;\n\n\t\tif (OpenUI5Support.isAtLeastVersion(116)) {\n\t\t\tconst Localization = window.sap.ui.require(\"sap/base/i18n/Localization\") as Localization;\n\t\t\treturn LocaleData.getInstance(Localization.getLanguageTag())._get();\n\t\t}\n\n\t\tconst Core = window.sap.ui.require(\"sap/ui/core/Core\") as OpenUI5Core;\n\t\tconst config = Core.getConfiguration();\n\t\treturn LocaleData.getInstance(config.getLocale())._get();\n\t}\n\n\tstatic _listenForThemeChange() {\n\t\tif (OpenUI5Support.isAtLeastVersion(116)) {\n\t\t\tconst Theming: Theming = window.sap.ui.require(\"sap/ui/core/Theming\");\n\t\t\tTheming.attachApplied(() => {\n\t\t\t\tsetTheme(Theming.getTheme());\n\t\t\t});\n\t\t} else {\n\t\t\tconst Core = window.sap.ui.require(\"sap/ui/core/Core\") as OpenUI5Core;\n\t\t\tconst config = Core.getConfiguration();\n\t\t\tCore.attachThemeChanged(() => {\n\t\t\t\tsetTheme(config.getTheme());\n\t\t\t});\n\t\t}\n\t}\n\n\tstatic attachListeners() {\n\t\tif (!OpenUI5Support.isOpenUI5Detected()) {\n\t\t\treturn false;\n\t\t}\n\n\t\tOpenUI5Support._listenForThemeChange();\n\t\treturn true;\n\t}\n\n\tstatic cssVariablesLoaded() {\n\t\tif (!OpenUI5Support.isOpenUI5Detected()) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst link = [...document.head.children].find(el => el.id === \"sap-ui-theme-sap.ui.core\") as HTMLLinkElement; // more reliable than querySelector early\n\t\tif (!link) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// The file name is \"css_variables.css\" until 1.127 and \"library.css\" from 1.127 onwards\n\t\tif (OpenUI5Support.isAtLeastVersion(127)) {\n\t\t\treturn !!link.href.match(/\\/css(-|_)variables\\.css/) || !!link.href.match(/\\/library\\.css/);\n\t\t}\n\n\t\treturn !!link.href.match(/\\/css(-|_)variables\\.css/);\n\t}\n\n\tstatic addOpenedPopup(popupInfo: PopupInfo) {\n\t\taddOpenedPopup(popupInfo);\n\t}\n\n\tstatic removeOpenedPopup(popup: object) {\n\t\tremoveOpenedPopup(popup);\n\t}\n\n\tstatic getTopmostPopup() {\n\t\treturn getTopmostPopup();\n\t}\n}\n\nregisterFeature(\"OpenUI5Support\", OpenUI5Support);\n\nexport default OpenUI5Support;\n"]}
1
+ {"version":3,"file":"OpenUI5Support.js","sourceRoot":"","sources":["../../src/features/OpenUI5Support.ts"],"names":[],"mappings":"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","sourcesContent":["import patchPatcher from \"./patchPatcher.js\";\nimport type { OpenUI5Patcher } from \"./patchPatcher.js\";\nimport {\n\tpatchPopup,\n\taddOpenedPopup,\n\tremoveOpenedPopup,\n\tgetTopmostPopup,\n} from \"./patchPopup.js\";\nimport type { OpenUI5PopupClass, OpenUI5DialogClass, PopupInfo } from \"./patchPopup.js\";\nimport { registerFeature } from \"../FeaturesRegistry.js\";\nimport { setTheme } from \"../config/Theme.js\";\nimport type { CLDRData } from \"../asset-registries/LocaleData.js\";\nimport type { LegacyDateCalendarCustomizing } from \"../features/LegacyDateFormats.js\";\nimport { secondaryBoot } from \"../Boot.js\";\n\ntype OpenUI5Core = {\n\tattachInit: (callback: () => void) => void,\n\tready: () => Promise<void>,\n\tattachThemeChanged: (callback: () => void) => void,\n\tgetConfiguration: () => OpenUI5CoreConfiguration,\n};\n\ntype OpenUI5CoreConfiguration = {\n\tgetAnimationMode: () => string,\n\tgetLanguage: () => string,\n\tgetTheme: () => string,\n\tgetThemeRoot: () => string,\n\tgetRTL: () => string,\n\tgetTimezone: () => string,\n\tgetCalendarType: () => string,\n\tgetLocale: () => string,\n\tgetFormatSettings: () => {\n\t\tgetLegacyDateCalendarCustomizing: () => LegacyDateCalendarCustomizing;\n\t}\n};\n\ntype ControlBehavior = {\n\tgetAnimationMode: () => string,\n}\n\ntype Localization = {\n\tgetLanguage: () => string,\n\tgetLanguageTag: () => string,\n\tgetRTL: () => string,\n\tgetTimezone: () => string,\n}\n\ntype LocaleData = {\n\tgetInstance: (locale: string) => Locale,\n}\n\ntype Theming = {\n\tgetThemeRoot: () => string,\n\tgetTheme: () => string,\n\tattachApplied: (callback: () => void) => void,\n}\n\ntype Formatting = {\n\tgetCalendarType: () => string,\n\tgetLegacyDateCalendarCustomizing: () => LegacyDateCalendarCustomizing,\n\tgetCustomIslamicCalendarData?: () => LegacyDateCalendarCustomizing,\n}\n\ntype CalendarUtils = {\n\tgetWeekConfigurationValues: () => {\n\t\tfirstDayOfWeek: number | undefined,\n\t},\n}\n\ntype Locale = {\n\tgetFirstDayOfWeek: () => number,\n\t_get: () => CLDRData,\n};\n\nconst OPENUI5_POLLING_INTERVAL = 100;\n\nclass OpenUI5Support {\n\tstatic enablePolling = false; // set to true for old OpenUI5 versions\n\tstatic _loadedFirst: boolean | undefined;\n\n\tstatic isAtLeastVersion(minor: number) {\n\t\tif (!window.sap.ui!.version) {\n\t\t\treturn true; // sap.ui.version will be removed in newer OpenUI5 versions\n\t\t}\n\t\tconst version = window.sap.ui!.version as string;\n\t\tconst parts = version.split(\".\");\n\t\tif (!parts || parts.length < 2) {\n\t\t\treturn false;\n\t\t}\n\t\treturn parseInt(parts[0]) > 1 || parseInt(parts[1]) >= minor;\n\t}\n\n\tstatic isOpenUI5Detected() {\n\t\treturn typeof window.sap?.ui?.require === \"function\";\n\t}\n\n\tstatic isOpenUI5LoadedFirst() {\n\t\treturn OpenUI5Support._loadedFirst;\n\t}\n\n\tstatic initPromise?: Promise<void>;\n\n\t/**\n\t * Important - if OpenUI5 is loaded after UI5 Web Components, configuration is not synchronized and it's up to the app to initialize OpenUI5 with the same settings as UI5 Web Components for consistency.\n\t */\n\tstatic OpenUI5DelayedInit = async () => {\n\t\tOpenUI5Support._loadedFirst = false;\n\t\tOpenUI5Support.init(); // This ensures patchPopover and patchPatcher are called; and from this point OpenUI5 CSS vars start being detected\n\t\tawait secondaryBoot(); // Re-run the parts of boot that were skipped due to OpenUI5 not having been loaded\n\t}\n\n\tstatic awaitForOpenUI5() {\n\t\tif (OpenUI5Support.enablePolling) {\n\t\t\tconst interval = setInterval(() => {\n\t\t\t\tif (OpenUI5Support.isOpenUI5Detected()) {\n\t\t\t\t\tclearInterval(interval);\n\t\t\t\t\tOpenUI5Support.OpenUI5DelayedInit();\n\t\t\t\t}\n\t\t\t}, OPENUI5_POLLING_INTERVAL);\n\t\t} else {\n\t\t\tdocument.addEventListener(\"sap-ui-core-ready\", () => {\n\t\t\t\tOpenUI5Support.OpenUI5DelayedInit();\n\t\t\t});\n\t\t}\n\t}\n\n\tstatic init() {\n\t\tif (!OpenUI5Support.isOpenUI5Detected()) {\n\t\t\treturn OpenUI5Support.awaitForOpenUI5();\n\t\t}\n\n\t\tOpenUI5Support._loadedFirst ??= true;\n\n\t\tif (!OpenUI5Support.initPromise) {\n\t\t\tOpenUI5Support.initPromise = new Promise<void>(resolve => {\n\t\t\t\twindow.sap.ui.require([\"sap/ui/core/Core\"], async (Core: OpenUI5Core) => {\n\t\t\t\t\tconst callback = () => {\n\t\t\t\t\t\tlet deps: Array<string> = [\"sap/ui/core/Popup\", \"sap/m/Dialog\", \"sap/ui/core/Patcher\", \"sap/ui/core/LocaleData\"];\n\t\t\t\t\t\tif (OpenUI5Support.isAtLeastVersion(116)) { // for versions since 1.116.0 and onward, use the modular core\n\t\t\t\t\t\t\tdeps = [\n\t\t\t\t\t\t\t\t...deps,\n\t\t\t\t\t\t\t\t\"sap/base/i18n/Formatting\",\n\t\t\t\t\t\t\t\t\"sap/base/i18n/Localization\",\n\t\t\t\t\t\t\t\t\"sap/ui/core/ControlBehavior\",\n\t\t\t\t\t\t\t\t\"sap/ui/core/Theming\",\n\t\t\t\t\t\t\t\t\"sap/ui/core/date/CalendarUtils\",\n\t\t\t\t\t\t\t];\n\t\t\t\t\t\t}\n\t\t\t\t\t\twindow.sap.ui.require(deps, (Popup: OpenUI5PopupClass, Dialog: OpenUI5DialogClass, Patcher: OpenUI5Patcher) => {\n\t\t\t\t\t\t\tpatchPatcher(Patcher);\n\t\t\t\t\t\t\tpatchPopup(Popup, Dialog);\n\t\t\t\t\t\t\tresolve();\n\t\t\t\t\t\t});\n\t\t\t\t\t};\n\t\t\t\t\tif (OpenUI5Support.isAtLeastVersion(116)) {\n\t\t\t\t\t\tawait Core.ready();\n\t\t\t\t\t\tcallback();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tCore.attachInit(callback);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\n\t\treturn OpenUI5Support.initPromise;\n\t}\n\n\tstatic getConfigurationSettingsObject() {\n\t\tif (!OpenUI5Support.isOpenUI5Detected()) {\n\t\t\treturn {};\n\t\t}\n\n\t\tif (OpenUI5Support.isAtLeastVersion(116)) {\n\t\t\tconst ControlBehavior = window.sap.ui.require(\"sap/ui/core/ControlBehavior\") as ControlBehavior;\n\t\t\tconst Localization = window.sap.ui.require(\"sap/base/i18n/Localization\") as Localization;\n\t\t\tconst Theming = window.sap.ui.require(\"sap/ui/core/Theming\") as Theming;\n\t\t\tconst Formatting = window.sap.ui.require(\"sap/base/i18n/Formatting\") as Formatting;\n\t\t\tconst CalendarUtils = window.sap.ui.require(\"sap/ui/core/date/CalendarUtils\") as CalendarUtils;\n\n\t\t\treturn {\n\t\t\t\tanimationMode: ControlBehavior.getAnimationMode(),\n\t\t\t\tlanguage: Localization.getLanguage(),\n\t\t\t\ttheme: Theming.getTheme(),\n\t\t\t\tthemeRoot: Theming.getThemeRoot(),\n\t\t\t\trtl: Localization.getRTL(),\n\t\t\t\ttimezone: Localization.getTimezone(),\n\t\t\t\tcalendarType: Formatting.getCalendarType(),\n\t\t\t\tformatSettings: {\n\t\t\t\t\tfirstDayOfWeek: CalendarUtils.getWeekConfigurationValues().firstDayOfWeek,\n\t\t\t\t\tlegacyDateCalendarCustomizing: Formatting.getCustomIslamicCalendarData?.()\n\t\t\t\t\t\t?? Formatting.getLegacyDateCalendarCustomizing?.(),\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\n\t\tconst Core = window.sap.ui.require(\"sap/ui/core/Core\") as OpenUI5Core;\n\t\tconst config = Core.getConfiguration();\n\t\tconst LocaleData = window.sap.ui.require(\"sap/ui/core/LocaleData\") as LocaleData;\n\n\t\treturn {\n\t\t\tanimationMode: config.getAnimationMode(),\n\t\t\tlanguage: config.getLanguage(),\n\t\t\ttheme: config.getTheme(),\n\t\t\tthemeRoot: typeof config.getThemeRoot === \"function\" ? config.getThemeRoot() : undefined,\n\t\t\trtl: config.getRTL(),\n\t\t\ttimezone: typeof config.getTimezone === \"function\" ? config.getTimezone() : undefined,\n\t\t\tcalendarType: config.getCalendarType(),\n\t\t\tformatSettings: {\n\t\t\t\tfirstDayOfWeek: LocaleData ? LocaleData.getInstance(config.getLocale()).getFirstDayOfWeek() : undefined,\n\t\t\t\tlegacyDateCalendarCustomizing: config.getFormatSettings().getLegacyDateCalendarCustomizing(),\n\t\t\t},\n\t\t};\n\t}\n\n\tstatic getLocaleDataObject() {\n\t\tif (!OpenUI5Support.isOpenUI5Detected()) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst LocaleData = window.sap.ui.require(\"sap/ui/core/LocaleData\") as LocaleData;\n\n\t\tif (OpenUI5Support.isAtLeastVersion(116)) {\n\t\t\tconst Localization = window.sap.ui.require(\"sap/base/i18n/Localization\") as Localization;\n\t\t\treturn LocaleData.getInstance(Localization.getLanguageTag())._get();\n\t\t}\n\n\t\tconst Core = window.sap.ui.require(\"sap/ui/core/Core\") as OpenUI5Core;\n\t\tconst config = Core.getConfiguration();\n\t\treturn LocaleData.getInstance(config.getLocale())._get();\n\t}\n\n\tstatic _listenForThemeChange() {\n\t\tif (OpenUI5Support.isAtLeastVersion(116)) {\n\t\t\tconst Theming: Theming = window.sap.ui.require(\"sap/ui/core/Theming\");\n\t\t\tTheming.attachApplied(() => {\n\t\t\t\tsetTheme(Theming.getTheme());\n\t\t\t});\n\t\t} else {\n\t\t\tconst Core = window.sap.ui.require(\"sap/ui/core/Core\") as OpenUI5Core;\n\t\t\tconst config = Core.getConfiguration();\n\t\t\tCore.attachThemeChanged(() => {\n\t\t\t\tsetTheme(config.getTheme());\n\t\t\t});\n\t\t}\n\t}\n\n\tstatic attachListeners() {\n\t\tif (!OpenUI5Support.isOpenUI5Detected()) {\n\t\t\treturn false;\n\t\t}\n\n\t\tOpenUI5Support._listenForThemeChange();\n\t\treturn true;\n\t}\n\n\tstatic cssVariablesLoaded() {\n\t\tif (!OpenUI5Support.isOpenUI5Detected()) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst link = [...document.head.children].find(el => el.id === \"sap-ui-theme-sap.ui.core\") as HTMLLinkElement; // more reliable than querySelector early\n\t\tif (!link) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// The file name is \"css_variables.css\" until 1.127 and \"library.css\" from 1.127 onwards\n\t\tif (OpenUI5Support.isAtLeastVersion(127)) {\n\t\t\treturn !!link.href.match(/\\/css(-|_)variables\\.css/) || !!link.href.match(/\\/library\\.css/);\n\t\t}\n\n\t\treturn !!link.href.match(/\\/css(-|_)variables\\.css/);\n\t}\n\n\tstatic addOpenedPopup(popupInfo: PopupInfo) {\n\t\taddOpenedPopup(popupInfo);\n\t}\n\n\tstatic removeOpenedPopup(popup: object) {\n\t\tremoveOpenedPopup(popup);\n\t}\n\n\tstatic getTopmostPopup() {\n\t\treturn getTopmostPopup();\n\t}\n}\n\nregisterFeature(\"OpenUI5Support\", OpenUI5Support);\n\nexport default OpenUI5Support;\n"]}
@@ -1,11 +1,11 @@
1
1
  const VersionInfo = {
2
- version: "2.24.0-rc.0",
2
+ version: "2.24.0-rc.1",
3
3
  major: 2,
4
4
  minor: 24,
5
5
  patch: 0,
6
- suffix: "-rc.0",
6
+ suffix: "-rc.1",
7
7
  isNext: false,
8
- buildTime: 1781190542,
8
+ buildTime: 1781779000,
9
9
  };
10
10
  export default VersionInfo;
11
11
  //# sourceMappingURL=VersionInfo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VersionInfo.js","sourceRoot":"","sources":["../../src/generated/VersionInfo.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG;IACnB,OAAO,EAAE,aAAa;IACtB,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,OAAO;IACf,MAAM,EAAE,KAAK;IACb,SAAS,EAAE,UAAU;CACrB,CAAC;AACF,eAAe,WAAW,CAAC","sourcesContent":["const VersionInfo = {\n\tversion: \"2.24.0-rc.0\",\n\tmajor: 2,\n\tminor: 24,\n\tpatch: 0,\n\tsuffix: \"-rc.0\",\n\tisNext: false,\n\tbuildTime: 1781190542,\n};\nexport default VersionInfo;"]}
1
+ {"version":3,"file":"VersionInfo.js","sourceRoot":"","sources":["../../src/generated/VersionInfo.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG;IACnB,OAAO,EAAE,aAAa;IACtB,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,OAAO;IACf,MAAM,EAAE,KAAK;IACb,SAAS,EAAE,UAAU;CACrB,CAAC;AACF,eAAe,WAAW,CAAC","sourcesContent":["const VersionInfo = {\n\tversion: \"2.24.0-rc.1\",\n\tmajor: 2,\n\tminor: 24,\n\tpatch: 0,\n\tsuffix: \"-rc.1\",\n\tisNext: false,\n\tbuildTime: 1781779000,\n};\nexport default VersionInfo;"]}
package/dist/prod/Boot.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";import d from"./util/whenDOMReady.js";import v from"./EventProvider.js";import y from"./FontFace.js";import S from"./SystemCSSVars.js";import g from"./ScrollbarStyles.js";import{getTheme as s,getBaseTheme as h}from"./config/Theme.js";import a from"./theming/applyTheme.js";import{registerCurrentRuntime as l}from"./Runtimes.js";import{getFeature as n}from"./FeaturesRegistry.js";import{attachThemeRegistered as I}from"./theming/ThemeRegistered.js";import U from"./util/fixSafariActiveState.js";let r=!1,i,p=!1;const m=new v,O=()=>r,P=t=>{if(!r){m.attachEvent("boot",t);return}t()},f=async()=>{const t=n("OpenUI5Support"),e=t?t.isOpenUI5Detected():!1,o=n("F6Navigation");t&&(o&&o.destroy(),await t.init()),o&&!e&&o.init()},c=()=>{if(p)return;const t=n("OpenUI5Support");t&&(p=t.attachListeners())},u=async()=>{if(i!==void 0)return i;const t=async e=>{if(l(),typeof document>"u"){e();return}I(b),await f(),await d(),await a(s()),c(),y(),S(),g(),U(),e(),r=!0,m.fireEvent("boot")};return i=new Promise(t),i},w=async()=>{await u(),await f(),c()},b=t=>{if(!r)return;const e=s(),o=h();(t===e||t===o)&&a(e)};export{u as boot,w as secondaryBoot,P as attachBoot,O as isBooted};
1
+ "use strict";import d from"./util/whenDOMReady.js";import v from"./EventProvider.js";import y from"./FontFace.js";import S from"./SystemCSSVars.js";import g from"./ScrollbarStyles.js";import{getTheme as n,getBaseTheme as h}from"./config/Theme.js";import s from"./theming/applyTheme.js";import{registerCurrentRuntime as l}from"./Runtimes.js";import{getFeature as a}from"./FeaturesRegistry.js";import{attachThemeRegistered as I}from"./theming/ThemeRegistered.js";import U from"./util/fixSafariActiveState.js";let r=!1,i,p=!1;const m=new v,w=()=>r,O=t=>{if(!r){m.attachEvent("boot",t);return}t()},f=async()=>{const t=a("OpenUI5Support"),e=t?t.isOpenUI5Detected():!1,o=a("F6Navigation");t&&(o&&o.destroy(),await t.init()),o&&!e&&o.init()},c=()=>{if(p)return;const t=a("OpenUI5Support");t&&(p=t.attachListeners())},u=async()=>{if(i!==void 0)return i;const t=async e=>{if(l(),typeof document>"u"){e();return}I(b),await f(),await d(),await s(n()),c(),y(),S(),g(),U(),e(),r=!0,m.fireEvent("boot")};return i=new Promise(t),i},P=async()=>{await u(),await f(),c(),await s(n())},b=t=>{if(!r)return;const e=n(),o=h();(t===e||t===o)&&s(e)};export{u as boot,P as secondaryBoot,O as attachBoot,w as isBooted};
2
2
  //# sourceMappingURL=Boot.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Boot.ts"],
4
- "sourcesContent": ["import whenDOMReady from \"./util/whenDOMReady.js\";\nimport EventProvider from \"./EventProvider.js\";\nimport insertFontFace from \"./FontFace.js\";\nimport insertSystemCSSVars from \"./SystemCSSVars.js\";\nimport insertScrollbarStyles from \"./ScrollbarStyles.js\";\nimport { getTheme, getBaseTheme } from \"./config/Theme.js\";\nimport applyTheme from \"./theming/applyTheme.js\";\nimport { registerCurrentRuntime } from \"./Runtimes.js\";\nimport { getFeature } from \"./FeaturesRegistry.js\";\nimport type OpenUI5Support from \"./features/OpenUI5Support.js\";\nimport type F6Navigation from \"./features/F6Navigation.js\";\nimport type { PromiseResolve } from \"./types.js\";\nimport { attachThemeRegistered } from \"./theming/ThemeRegistered.js\";\nimport fixSafariActiveState from \"./util/fixSafariActiveState.js\";\n\nlet booted = false;\nlet bootPromise: Promise<void>;\nlet openUI5ListenersAttached = false;\nconst eventProvider = new EventProvider<void, void>();\n\nconst isBooted = (): boolean => {\n\treturn booted;\n};\n\n/**\n * Attaches a callback that will be executed after boot finishes.\n * **Note:** If the framework already booted, the callback will be immediately executed.\n * @public\n * @param { Function } listener\n */\nconst attachBoot = (listener: () => void) => {\n\tif (!booted) {\n\t\teventProvider.attachEvent(\"boot\", listener);\n\t\treturn;\n\t}\n\n\tlistener();\n};\n\n/**\n * This function may now be called twice - once without OpenUI5Support, and then later again, when OpenUI5 is loaded dynamically\n * In this case, deregister the UI5 Web Components listener\n */\nconst initF6Navigation = async () => {\n\tconst openUI5Support = getFeature<typeof OpenUI5Support>(\"OpenUI5Support\");\n\tconst isOpenUI5Loaded = openUI5Support ? openUI5Support.isOpenUI5Detected() : false;\n\tconst f6Navigation = getFeature<typeof F6Navigation>(\"F6Navigation\");\n\n\tif (openUI5Support) {\n\t\tf6Navigation && f6Navigation.destroy(); // F6Navigation is not needed when OpenUI5 is used\n\t\tawait openUI5Support.init();\n\t}\n\n\tif (f6Navigation && !isOpenUI5Loaded) {\n\t\tf6Navigation.init();\n\t}\n};\n\nconst attachOpenUI5SupportListeners = () => {\n\tif (openUI5ListenersAttached) {\n\t\treturn;\n\t}\n\n\tconst openUI5Support = getFeature<typeof OpenUI5Support>(\"OpenUI5Support\");\n\tif (openUI5Support) {\n\t\topenUI5ListenersAttached = openUI5Support.attachListeners(); // listeners will be attached (return true) only if OpenUI5 is loaded\n\t}\n};\n\nconst boot = async (): Promise<void> => {\n\tif (bootPromise !== undefined) {\n\t\treturn bootPromise;\n\t}\n\n\tconst bootExecutor = async (resolve: PromiseResolve) => {\n\t\tregisterCurrentRuntime();\n\n\t\tif (typeof document === \"undefined\") {\n\t\t\tresolve();\n\t\t\treturn;\n\t\t}\n\n\t\tattachThemeRegistered(onThemeRegistered);\n\n\t\tawait initF6Navigation(); // depends on OpenUI5Support\n\t\tawait whenDOMReady();\n\t\tawait applyTheme(getTheme());\n\t\tattachOpenUI5SupportListeners(); // depends on OpenUI5Support\n\t\tinsertFontFace();\n\t\tinsertSystemCSSVars();\n\t\tinsertScrollbarStyles();\n\t\tfixSafariActiveState();\n\n\t\tresolve();\n\n\t\tbooted = true;\n\t\teventProvider.fireEvent(\"boot\");\n\t};\n\n\tbootPromise = new Promise(bootExecutor as (resolve: PromiseResolve) => void);\n\treturn bootPromise;\n};\n\nconst secondaryBoot = async (): Promise<void> => {\n\tawait boot(); // make sure we're not in the middle of boot before re-running the skipped parts\n\tawait initF6Navigation();\n\tattachOpenUI5SupportListeners();\n};\n\n/**\n * Callback, executed after theme properties registration\n * to apply the newly registered theme.\n * @private\n * @param { string } theme\n */\nconst onThemeRegistered = (theme: string) => {\n\tif (!booted) {\n\t\treturn;\n\t}\n\n\tconst currentTheme = getTheme();\n\tconst currentBaseTheme = getBaseTheme();\n\n\tif (theme === currentTheme || theme === currentBaseTheme) {\n\t\tapplyTheme(currentTheme);\n\t}\n};\n\nexport {\n\tboot,\n\tsecondaryBoot,\n\tattachBoot,\n\tisBooted,\n};\n"],
5
- "mappings": "aAAA,OAAOA,MAAkB,yBACzB,OAAOC,MAAmB,qBAC1B,OAAOC,MAAoB,gBAC3B,OAAOC,MAAyB,qBAChC,OAAOC,MAA2B,uBAClC,OAAS,YAAAC,EAAU,gBAAAC,MAAoB,oBACvC,OAAOC,MAAgB,0BACvB,OAAS,0BAAAC,MAA8B,gBACvC,OAAS,cAAAC,MAAkB,wBAI3B,OAAS,yBAAAC,MAA6B,+BACtC,OAAOC,MAA0B,iCAEjC,IAAIC,EAAS,GACTC,EACAC,EAA2B,GAC/B,MAAMC,EAAgB,IAAId,EAEpBe,EAAW,IACTJ,EASFK,EAAcC,GAAyB,CAC5C,GAAI,CAACN,EAAQ,CACZG,EAAc,YAAY,OAAQG,CAAQ,EAC1C,MACD,CAEAA,EAAS,CACV,EAMMC,EAAmB,SAAY,CACpC,MAAMC,EAAiBX,EAAkC,gBAAgB,EACnEY,EAAkBD,EAAiBA,EAAe,kBAAkB,EAAI,GACxEE,EAAeb,EAAgC,cAAc,EAE/DW,IACHE,GAAgBA,EAAa,QAAQ,EACrC,MAAMF,EAAe,KAAK,GAGvBE,GAAgB,CAACD,GACpBC,EAAa,KAAK,CAEpB,EAEMC,EAAgC,IAAM,CAC3C,GAAIT,EACH,OAGD,MAAMM,EAAiBX,EAAkC,gBAAgB,EACrEW,IACHN,EAA2BM,EAAe,gBAAgB,EAE5D,EAEMI,EAAO,SAA2B,CACvC,GAAIX,IAAgB,OACnB,OAAOA,EAGR,MAAMY,EAAe,MAAOC,GAA4B,CAGvD,GAFAlB,EAAuB,EAEnB,OAAO,SAAa,IAAa,CACpCkB,EAAQ,EACR,MACD,CAEAhB,EAAsBiB,CAAiB,EAEvC,MAAMR,EAAiB,EACvB,MAAMnB,EAAa,EACnB,MAAMO,EAAWF,EAAS,CAAC,EAC3BkB,EAA8B,EAC9BrB,EAAe,EACfC,EAAoB,EACpBC,EAAsB,EACtBO,EAAqB,EAErBe,EAAQ,EAERd,EAAS,GACTG,EAAc,UAAU,MAAM,CAC/B,EAEA,OAAAF,EAAc,IAAI,QAAQY,CAAiD,EACpEZ,CACR,EAEMe,EAAgB,SAA2B,CAChD,MAAMJ,EAAK,EACX,MAAML,EAAiB,EACvBI,EAA8B,CAC/B,EAQMI,EAAqBE,GAAkB,CAC5C,GAAI,CAACjB,EACJ,OAGD,MAAMkB,EAAezB,EAAS,EACxB0B,EAAmBzB,EAAa,GAElCuB,IAAUC,GAAgBD,IAAUE,IACvCxB,EAAWuB,CAAY,CAEzB,EAEA,OACCN,KAAA,KACAI,KAAA,cACAX,KAAA,WACAD,KAAA",
4
+ "sourcesContent": ["import whenDOMReady from \"./util/whenDOMReady.js\";\nimport EventProvider from \"./EventProvider.js\";\nimport insertFontFace from \"./FontFace.js\";\nimport insertSystemCSSVars from \"./SystemCSSVars.js\";\nimport insertScrollbarStyles from \"./ScrollbarStyles.js\";\nimport { getTheme, getBaseTheme } from \"./config/Theme.js\";\nimport applyTheme from \"./theming/applyTheme.js\";\nimport { registerCurrentRuntime } from \"./Runtimes.js\";\nimport { getFeature } from \"./FeaturesRegistry.js\";\nimport type OpenUI5Support from \"./features/OpenUI5Support.js\";\nimport type F6Navigation from \"./features/F6Navigation.js\";\nimport type { PromiseResolve } from \"./types.js\";\nimport { attachThemeRegistered } from \"./theming/ThemeRegistered.js\";\nimport fixSafariActiveState from \"./util/fixSafariActiveState.js\";\n\nlet booted = false;\nlet bootPromise: Promise<void>;\nlet openUI5ListenersAttached = false;\nconst eventProvider = new EventProvider<void, void>();\n\nconst isBooted = (): boolean => {\n\treturn booted;\n};\n\n/**\n * Attaches a callback that will be executed after boot finishes.\n * **Note:** If the framework already booted, the callback will be immediately executed.\n * @public\n * @param { Function } listener\n */\nconst attachBoot = (listener: () => void) => {\n\tif (!booted) {\n\t\teventProvider.attachEvent(\"boot\", listener);\n\t\treturn;\n\t}\n\n\tlistener();\n};\n\n/**\n * This function may now be called twice - once without OpenUI5Support, and then later again, when OpenUI5 is loaded dynamically\n * In this case, deregister the UI5 Web Components listener\n */\nconst initF6Navigation = async () => {\n\tconst openUI5Support = getFeature<typeof OpenUI5Support>(\"OpenUI5Support\");\n\tconst isOpenUI5Loaded = openUI5Support ? openUI5Support.isOpenUI5Detected() : false;\n\tconst f6Navigation = getFeature<typeof F6Navigation>(\"F6Navigation\");\n\n\tif (openUI5Support) {\n\t\tf6Navigation && f6Navigation.destroy(); // F6Navigation is not needed when OpenUI5 is used\n\t\tawait openUI5Support.init();\n\t}\n\n\tif (f6Navigation && !isOpenUI5Loaded) {\n\t\tf6Navigation.init();\n\t}\n};\n\nconst attachOpenUI5SupportListeners = () => {\n\tif (openUI5ListenersAttached) {\n\t\treturn;\n\t}\n\n\tconst openUI5Support = getFeature<typeof OpenUI5Support>(\"OpenUI5Support\");\n\tif (openUI5Support) {\n\t\topenUI5ListenersAttached = openUI5Support.attachListeners(); // listeners will be attached (return true) only if OpenUI5 is loaded\n\t}\n};\n\nconst boot = async (): Promise<void> => {\n\tif (bootPromise !== undefined) {\n\t\treturn bootPromise;\n\t}\n\n\tconst bootExecutor = async (resolve: PromiseResolve) => {\n\t\tregisterCurrentRuntime();\n\n\t\tif (typeof document === \"undefined\") {\n\t\t\tresolve();\n\t\t\treturn;\n\t\t}\n\n\t\tattachThemeRegistered(onThemeRegistered);\n\n\t\tawait initF6Navigation(); // depends on OpenUI5Support\n\t\tawait whenDOMReady();\n\t\tawait applyTheme(getTheme());\n\t\tattachOpenUI5SupportListeners(); // depends on OpenUI5Support\n\t\tinsertFontFace();\n\t\tinsertSystemCSSVars();\n\t\tinsertScrollbarStyles();\n\t\tfixSafariActiveState();\n\n\t\tresolve();\n\n\t\tbooted = true;\n\t\teventProvider.fireEvent(\"boot\");\n\t};\n\n\tbootPromise = new Promise(bootExecutor as (resolve: PromiseResolve) => void);\n\treturn bootPromise;\n};\n\nconst secondaryBoot = async (): Promise<void> => {\n\tawait boot(); // make sure we're not in the middle of boot before re-running the skipped parts\n\tawait initF6Navigation();\n\tattachOpenUI5SupportListeners();\n\tawait applyTheme(getTheme()); // Re-apply theme to detect external theme from OpenUI5 and clean up\n};\n\n/**\n * Callback, executed after theme properties registration\n * to apply the newly registered theme.\n * @private\n * @param { string } theme\n */\nconst onThemeRegistered = (theme: string) => {\n\tif (!booted) {\n\t\treturn;\n\t}\n\n\tconst currentTheme = getTheme();\n\tconst currentBaseTheme = getBaseTheme();\n\n\tif (theme === currentTheme || theme === currentBaseTheme) {\n\t\tapplyTheme(currentTheme);\n\t}\n};\n\nexport {\n\tboot,\n\tsecondaryBoot,\n\tattachBoot,\n\tisBooted,\n};\n"],
5
+ "mappings": "aAAA,OAAOA,MAAkB,yBACzB,OAAOC,MAAmB,qBAC1B,OAAOC,MAAoB,gBAC3B,OAAOC,MAAyB,qBAChC,OAAOC,MAA2B,uBAClC,OAAS,YAAAC,EAAU,gBAAAC,MAAoB,oBACvC,OAAOC,MAAgB,0BACvB,OAAS,0BAAAC,MAA8B,gBACvC,OAAS,cAAAC,MAAkB,wBAI3B,OAAS,yBAAAC,MAA6B,+BACtC,OAAOC,MAA0B,iCAEjC,IAAIC,EAAS,GACTC,EACAC,EAA2B,GAC/B,MAAMC,EAAgB,IAAId,EAEpBe,EAAW,IACTJ,EASFK,EAAcC,GAAyB,CAC5C,GAAI,CAACN,EAAQ,CACZG,EAAc,YAAY,OAAQG,CAAQ,EAC1C,MACD,CAEAA,EAAS,CACV,EAMMC,EAAmB,SAAY,CACpC,MAAMC,EAAiBX,EAAkC,gBAAgB,EACnEY,EAAkBD,EAAiBA,EAAe,kBAAkB,EAAI,GACxEE,EAAeb,EAAgC,cAAc,EAE/DW,IACHE,GAAgBA,EAAa,QAAQ,EACrC,MAAMF,EAAe,KAAK,GAGvBE,GAAgB,CAACD,GACpBC,EAAa,KAAK,CAEpB,EAEMC,EAAgC,IAAM,CAC3C,GAAIT,EACH,OAGD,MAAMM,EAAiBX,EAAkC,gBAAgB,EACrEW,IACHN,EAA2BM,EAAe,gBAAgB,EAE5D,EAEMI,EAAO,SAA2B,CACvC,GAAIX,IAAgB,OACnB,OAAOA,EAGR,MAAMY,EAAe,MAAOC,GAA4B,CAGvD,GAFAlB,EAAuB,EAEnB,OAAO,SAAa,IAAa,CACpCkB,EAAQ,EACR,MACD,CAEAhB,EAAsBiB,CAAiB,EAEvC,MAAMR,EAAiB,EACvB,MAAMnB,EAAa,EACnB,MAAMO,EAAWF,EAAS,CAAC,EAC3BkB,EAA8B,EAC9BrB,EAAe,EACfC,EAAoB,EACpBC,EAAsB,EACtBO,EAAqB,EAErBe,EAAQ,EAERd,EAAS,GACTG,EAAc,UAAU,MAAM,CAC/B,EAEA,OAAAF,EAAc,IAAI,QAAQY,CAAiD,EACpEZ,CACR,EAEMe,EAAgB,SAA2B,CAChD,MAAMJ,EAAK,EACX,MAAML,EAAiB,EACvBI,EAA8B,EAC9B,MAAMhB,EAAWF,EAAS,CAAC,CAC5B,EAQMsB,EAAqBE,GAAkB,CAC5C,GAAI,CAACjB,EACJ,OAGD,MAAMkB,EAAezB,EAAS,EACxB0B,EAAmBzB,EAAa,GAElCuB,IAAUC,GAAgBD,IAAUE,IACvCxB,EAAWuB,CAAY,CAEzB,EAEA,OACCN,KAAA,KACAI,KAAA,cACAX,KAAA,WACAD,KAAA",
6
6
  "names": ["whenDOMReady", "EventProvider", "insertFontFace", "insertSystemCSSVars", "insertScrollbarStyles", "getTheme", "getBaseTheme", "applyTheme", "registerCurrentRuntime", "getFeature", "attachThemeRegistered", "fixSafariActiveState", "booted", "bootPromise", "openUI5ListenersAttached", "eventProvider", "isBooted", "attachBoot", "listener", "initF6Navigation", "openUI5Support", "isOpenUI5Loaded", "f6Navigation", "attachOpenUI5SupportListeners", "boot", "bootExecutor", "resolve", "onThemeRegistered", "secondaryBoot", "theme", "currentTheme", "currentBaseTheme"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";const e=new Map,s=(t,r)=>{e.set(t,r)},n=t=>e.get(t);export{s as registerFeature,n as getFeature};
1
+ "use strict";const t=new Map,s=(e,r)=>{t.set(e,r)},n=e=>t.get(e),g=()=>[...t.keys()];export{s as registerFeature,n as getFeature,g as getRegisteredFeatures};
2
2
  //# sourceMappingURL=FeaturesRegistry.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/FeaturesRegistry.ts"],
4
- "sourcesContent": ["const features = new Map<string, any>();\n\nconst registerFeature = (name: string, feature: object) => {\n\tfeatures.set(name, feature);\n};\n\nconst getFeature = <T>(name: string): T => {\n\treturn features.get(name) as T;\n};\n\nexport {\n\tregisterFeature,\n\tgetFeature,\n};\n"],
5
- "mappings": "aAAA,MAAMA,EAAW,IAAI,IAEfC,EAAkB,CAACC,EAAcC,IAAoB,CAC1DH,EAAS,IAAIE,EAAMC,CAAO,CAC3B,EAEMC,EAAiBF,GACfF,EAAS,IAAIE,CAAI,EAGzB,OACCD,KAAA,gBACAG,KAAA",
6
- "names": ["features", "registerFeature", "name", "feature", "getFeature"]
4
+ "sourcesContent": ["const features = new Map<string, any>();\n\nconst registerFeature = (name: string, feature: object) => {\n\tfeatures.set(name, feature);\n};\n\nconst getFeature = <T>(name: string): T => {\n\treturn features.get(name) as T;\n};\n\nconst getRegisteredFeatures = (): Array<string> => {\n\treturn [...features.keys()];\n};\n\nexport {\n\tregisterFeature,\n\tgetFeature,\n\tgetRegisteredFeatures,\n};\n"],
5
+ "mappings": "aAAA,MAAMA,EAAW,IAAI,IAEfC,EAAkB,CAACC,EAAcC,IAAoB,CAC1DH,EAAS,IAAIE,EAAMC,CAAO,CAC3B,EAEMC,EAAiBF,GACfF,EAAS,IAAIE,CAAI,EAGnBG,EAAwB,IACtB,CAAC,GAAGL,EAAS,KAAK,CAAC,EAG3B,OACCC,KAAA,gBACAG,KAAA,WACAC,KAAA",
6
+ "names": ["features", "registerFeature", "name", "feature", "getFeature", "getRegisteredFeatures"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";import{getAllRegisteredTags as f}from"./CustomElementsRegistry.js";import{getCustomElementsScopingRules as l,getCustomElementsScopingSuffix as p}from"./CustomElementsScopeUtils.js";import g from"./generated/VersionInfo.js";import R from"./getSharedResource.js";let s,u="";const c=new Map,o=R("Runtimes",[]),d=()=>{if(s===void 0){s=o.length;const e=g;o.push({...e,get scopingSuffix(){return p()},get registeredTags(){return f()},get scopingRules(){return l()},alias:u,description:`Runtime ${s} - ver ${e.version}${u?` (${u})`:""}`,importMetaUrl:import.meta.url})}},h=()=>s,a=(e,t)=>{if(e.isNext||t.isNext)return e.buildTime-t.buildTime;const r=e.major-t.major;if(r)return r;const n=e.minor-t.minor;if(n)return n;const i=e.patch-t.patch;return i||new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"}).compare(e.suffix,t.suffix)},I=(e,t)=>{const r=`${e},${t}`;if(c.has(r))return c.get(r);const n=o[e],i=o[t];if(!n||!i)throw new Error("Invalid runtime index supplied");const m=a(n,i);return c.set(r,m),m},x=e=>{u=e},b=()=>o;export{h as getCurrentRuntimeIndex,d as registerCurrentRuntime,I as compareRuntimes,a as compareVersions,x as setRuntimeAlias,b as getAllRuntimes};
1
+ "use strict";import{getAllRegisteredTags as f}from"./CustomElementsRegistry.js";import{getCustomElementsScopingRules as l,getCustomElementsScopingSuffix as c}from"./CustomElementsScopeUtils.js";import{getRegisteredFeatures as d,getFeature as p}from"./FeaturesRegistry.js";import{getAnimationMode as I}from"./config/AnimationMode.js";import{getCalendarType as R,getSecondaryCalendarType as h}from"./config/CalendarType.js";import{getDefaultFontLoading as y}from"./config/Fonts.js";import{getFirstDayOfWeek as D,getLegacyDateCalendarCustomizing as C}from"./config/FormatSettings.js";import{getLanguage as T,getFetchDefaultLanguage as U}from"./config/Language.js";import{getNoConflict as S}from"./config/NoConflict.js";import{getTheme as b,getBaseTheme as O}from"./config/Theme.js";import{getThemeRoot as x}from"./config/ThemeRoot.js";import{getTimezone as F}from"./config/Timezone.js";import{getEnableDefaultTooltips as L}from"./config/Tooltips.js";import{getIgnoreUrlParams as A}from"./config/UrlParams.js";import $ from"./generated/VersionInfo.js";import M from"./getSharedResource.js";let a,s="";const u=new Map,i=M("Runtimes",[]),V=()=>{if(a===void 0){a=i.length;const e=$;i.push({...e,get scopingSuffix(){return c()},get registeredTags(){return f()},get registeredFeatures(){return d()},get configuration(){return{theme:b(),themeRoot:x(),baseTheme:O(),language:T(),fetchDefaultLanguage:U(),timezone:F(),animationMode:I(),calendarType:R(),secondaryCalendarType:h(),noConflict:S(),defaultFontLoading:y(),enableDefaultTooltips:L(),firstDayOfWeek:D(),legacyDateCalendarCustomizing:C(),ignoreUrlParams:A()}},get scopingRules(){return l()},get openUI5Detected(){return p("OpenUI5Support")?.isOpenUI5Detected()??!1},get openUI5LoadedFirst(){const t=p("OpenUI5Support");return t?t.isOpenUI5LoadedFirst():void 0},alias:s,description:`Runtime ${a} - ver ${e.version}${s?` (${s})`:""}`,importMetaUrl:import.meta.url})}},j=()=>a,g=(e,t)=>{if(e.isNext||t.isNext)return e.buildTime-t.buildTime;const r=e.major-t.major;if(r)return r;const n=e.minor-t.minor;if(n)return n;const o=e.patch-t.patch;return o||new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"}).compare(e.suffix,t.suffix)},w=(e,t)=>{const r=`${e},${t}`;if(u.has(r))return u.get(r);const n=i[e],o=i[t];if(!n||!o)throw new Error("Invalid runtime index supplied");const m=g(n,o);return u.set(r,m),m},z=e=>{s=e},E=()=>i;export{j as getCurrentRuntimeIndex,V as registerCurrentRuntime,w as compareRuntimes,g as compareVersions,z as setRuntimeAlias,E as getAllRuntimes};
2
2
  //# sourceMappingURL=Runtimes.js.map