@ui5/webcomponents-base 2.21.0-rc.0 → 2.21.0-rc.2
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.
- package/CHANGELOG.md +19 -0
- package/dist/.tsbuildinfobuild +1 -1
- package/dist/config/ConfigurationSync.d.ts +16 -0
- package/dist/config/ConfigurationSync.js +42 -0
- package/dist/config/ConfigurationSync.js.map +1 -0
- package/dist/config/Language.js +13 -1
- package/dist/config/Language.js.map +1 -1
- package/dist/config/Theme.js +9 -1
- package/dist/config/Theme.js.map +1 -1
- package/dist/custom-elements-internal.json +123 -117
- package/dist/custom-elements.json +123 -117
- package/dist/generated/AssetParameters.js +1 -1
- package/dist/generated/AssetParameters.js.map +1 -1
- package/dist/generated/VersionInfo.js +3 -3
- package/dist/generated/VersionInfo.js.map +1 -1
- package/dist/prod/config/ConfigurationSync.js +2 -0
- package/dist/prod/config/ConfigurationSync.js.map +7 -0
- package/dist/prod/config/Language.js +1 -1
- package/dist/prod/config/Language.js.map +3 -3
- package/dist/prod/config/Theme.js +1 -1
- package/dist/prod/config/Theme.js.map +3 -3
- package/dist/prod/generated/AssetParameters.js +1 -1
- package/dist/prod/generated/AssetParameters.js.map +2 -2
- package/dist/prod/generated/VersionInfo.js +1 -1
- package/dist/prod/generated/VersionInfo.js.map +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Stores value in shared map and fires a cross-runtime config change event.
|
|
3
|
+
* The firing runtime's own handler is skipped via the skip-guard pattern.
|
|
4
|
+
*/
|
|
5
|
+
declare const fireConfigChange: (name: string, value: unknown) => void;
|
|
6
|
+
/**
|
|
7
|
+
* Registers a per-setting cross-runtime listener.
|
|
8
|
+
* The handler is only called when another runtime fires the change.
|
|
9
|
+
*/
|
|
10
|
+
declare const attachConfigChange: (name: string, handler: (value: any) => void) => void;
|
|
11
|
+
/**
|
|
12
|
+
* Reads the last-set value from the shared values map.
|
|
13
|
+
* Used by late-booting runtimes to pick up values already set by others.
|
|
14
|
+
*/
|
|
15
|
+
declare const getSharedValue: <T>(name: string) => T | undefined;
|
|
16
|
+
export { fireConfigChange, attachConfigChange, getSharedValue };
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import getSharedResource from "../getSharedResource.js";
|
|
2
|
+
import EventProvider from "../EventProvider.js";
|
|
3
|
+
const getEventProvider = () => getSharedResource("ConfigChange.eventProvider", new EventProvider());
|
|
4
|
+
const getSharedValues = () => getSharedResource("ConfigChange.values", {});
|
|
5
|
+
const CONFIG_CHANGE = "configChange";
|
|
6
|
+
// Module-level skip flags — each runtime copy has its own Set,
|
|
7
|
+
// so a runtime's own handler correctly skips when it fires.
|
|
8
|
+
const skipFlags = new Set();
|
|
9
|
+
/**
|
|
10
|
+
* Stores value in shared map and fires a cross-runtime config change event.
|
|
11
|
+
* The firing runtime's own handler is skipped via the skip-guard pattern.
|
|
12
|
+
*/
|
|
13
|
+
const fireConfigChange = (name, value) => {
|
|
14
|
+
getSharedValues()[name] = value;
|
|
15
|
+
skipFlags.add(name);
|
|
16
|
+
try {
|
|
17
|
+
getEventProvider().fireEvent(CONFIG_CHANGE, { name, value });
|
|
18
|
+
}
|
|
19
|
+
finally {
|
|
20
|
+
skipFlags.delete(name);
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Registers a per-setting cross-runtime listener.
|
|
25
|
+
* The handler is only called when another runtime fires the change.
|
|
26
|
+
*/
|
|
27
|
+
const attachConfigChange = (name, handler) => {
|
|
28
|
+
getEventProvider().attachEvent(CONFIG_CHANGE, (detail) => {
|
|
29
|
+
if (detail.name === name && !skipFlags.has(name)) {
|
|
30
|
+
handler(detail.value);
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Reads the last-set value from the shared values map.
|
|
36
|
+
* Used by late-booting runtimes to pick up values already set by others.
|
|
37
|
+
*/
|
|
38
|
+
const getSharedValue = (name) => {
|
|
39
|
+
return getSharedValues()[name];
|
|
40
|
+
};
|
|
41
|
+
export { fireConfigChange, attachConfigChange, getSharedValue };
|
|
42
|
+
//# sourceMappingURL=ConfigurationSync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConfigurationSync.js","sourceRoot":"","sources":["../../src/config/ConfigurationSync.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;AACxD,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAIhD,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,iBAAiB,CAAC,4BAA4B,EAAE,IAAI,aAAa,EAA4B,CAAC,CAAC;AAC9H,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,iBAAiB,CAA0B,qBAAqB,EAAE,EAAE,CAAC,CAAC;AAEpG,MAAM,aAAa,GAAG,cAAc,CAAC;AAErC,+DAA+D;AAC/D,4DAA4D;AAC5D,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;AAEpC;;;GAGG;AACH,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,KAAc,EAAQ,EAAE;IAC/D,eAAe,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;IAEhC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACpB,IAAI,CAAC;QACJ,gBAAgB,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9D,CAAC;YAAS,CAAC;QACV,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;AACF,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,OAA6B,EAAQ,EAAE;IAChF,gBAAgB,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,MAA0B,EAAE,EAAE;QAC5E,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAClD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;IACF,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,cAAc,GAAG,CAAI,IAAY,EAAiB,EAAE;IACzD,OAAO,eAAe,EAAE,CAAC,IAAI,CAAkB,CAAC;AACjD,CAAC,CAAC;AAEF,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,cAAc,EAAE,CAAC","sourcesContent":["import getSharedResource from \"../getSharedResource.js\";\nimport EventProvider from \"../EventProvider.js\";\n\ntype ConfigChangeDetail = { name: string; value: unknown };\n\nconst getEventProvider = () => getSharedResource(\"ConfigChange.eventProvider\", new EventProvider<ConfigChangeDetail, void>());\nconst getSharedValues = () => getSharedResource<Record<string, unknown>>(\"ConfigChange.values\", {});\n\nconst CONFIG_CHANGE = \"configChange\";\n\n// Module-level skip flags — each runtime copy has its own Set,\n// so a runtime's own handler correctly skips when it fires.\nconst skipFlags = new Set<string>();\n\n/**\n * Stores value in shared map and fires a cross-runtime config change event.\n * The firing runtime's own handler is skipped via the skip-guard pattern.\n */\nconst fireConfigChange = (name: string, value: unknown): void => {\n\tgetSharedValues()[name] = value;\n\n\tskipFlags.add(name);\n\ttry {\n\t\tgetEventProvider().fireEvent(CONFIG_CHANGE, { name, value });\n\t} finally {\n\t\tskipFlags.delete(name);\n\t}\n};\n\n/**\n * Registers a per-setting cross-runtime listener.\n * The handler is only called when another runtime fires the change.\n */\nconst attachConfigChange = (name: string, handler: (value: any) => void): void => { // eslint-disable-line\n\tgetEventProvider().attachEvent(CONFIG_CHANGE, (detail: ConfigChangeDetail) => {\n\t\tif (detail.name === name && !skipFlags.has(name)) {\n\t\t\thandler(detail.value);\n\t\t}\n\t});\n};\n\n/**\n * Reads the last-set value from the shared values map.\n * Used by late-booting runtimes to pick up values already set by others.\n */\nconst getSharedValue = <T>(name: string): T | undefined => {\n\treturn getSharedValues()[name] as T | undefined;\n};\n\nexport { fireConfigChange, attachConfigChange, getSharedValue };\n"]}
|
package/dist/config/Language.js
CHANGED
|
@@ -4,6 +4,7 @@ import { reRenderAllUI5Elements } from "../Render.js";
|
|
|
4
4
|
import { DEFAULT_LANGUAGE } from "../generated/AssetParameters.js";
|
|
5
5
|
import { isBooted } from "../Boot.js";
|
|
6
6
|
import { attachConfigurationReset } from "./ConfigurationReset.js";
|
|
7
|
+
import { fireConfigChange, attachConfigChange, getSharedValue } from "./ConfigurationSync.js";
|
|
7
8
|
let curLanguage;
|
|
8
9
|
let fetchDefaultLanguage;
|
|
9
10
|
attachConfigurationReset(() => {
|
|
@@ -18,6 +19,16 @@ attachConfigurationReset(() => {
|
|
|
18
19
|
// Once all necessary language data has been loaded, the language change
|
|
19
20
|
// will trigger a re-render of all language-aware components.
|
|
20
21
|
let languageChangePending = false;
|
|
22
|
+
attachConfigChange("language", (language) => {
|
|
23
|
+
curLanguage = language;
|
|
24
|
+
languageChangePending = true;
|
|
25
|
+
fireLanguageChange(language).then(() => {
|
|
26
|
+
languageChangePending = false;
|
|
27
|
+
if (isBooted()) {
|
|
28
|
+
reRenderAllUI5Elements({ languageAware: true });
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
});
|
|
21
32
|
const getLanguageChangePending = () => languageChangePending;
|
|
22
33
|
/**
|
|
23
34
|
* Returns the currently configured language, or the browser language as a fallback.
|
|
@@ -26,7 +37,7 @@ const getLanguageChangePending = () => languageChangePending;
|
|
|
26
37
|
*/
|
|
27
38
|
const getLanguage = () => {
|
|
28
39
|
if (curLanguage === undefined) {
|
|
29
|
-
curLanguage = getConfiguredLanguage();
|
|
40
|
+
curLanguage = getSharedValue("language") ?? getConfiguredLanguage();
|
|
30
41
|
}
|
|
31
42
|
return curLanguage;
|
|
32
43
|
};
|
|
@@ -44,6 +55,7 @@ const setLanguage = async (language) => {
|
|
|
44
55
|
}
|
|
45
56
|
languageChangePending = true;
|
|
46
57
|
curLanguage = language;
|
|
58
|
+
fireConfigChange("language", language);
|
|
47
59
|
await fireLanguageChange(language);
|
|
48
60
|
languageChangePending = false;
|
|
49
61
|
if (isBooted()) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Language.js","sourceRoot":"","sources":["../../src/config/Language.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,WAAW,IAAI,qBAAqB,EACpC,uBAAuB,IAAI,iCAAiC,GAC5D,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"Language.js","sourceRoot":"","sources":["../../src/config/Language.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n\tgetLanguage as getConfiguredLanguage,\n\tgetFetchDefaultLanguage as getConfiguredFetchDefaultLanguage,\n} from \"../InitialConfiguration.js\";\nimport { fireLanguageChange } from \"../locale/languageChange.js\";\nimport { reRenderAllUI5Elements } from \"../Render.js\";\nimport { DEFAULT_LANGUAGE } from \"../generated/AssetParameters.js\";\nimport { isBooted } from \"../Boot.js\";\nimport { attachConfigurationReset } from \"./ConfigurationReset.js\";\nimport { fireConfigChange, attachConfigChange, getSharedValue } from \"./ConfigurationSync.js\";\n\nlet curLanguage: string | undefined;\nlet fetchDefaultLanguage: boolean | undefined;\n\nattachConfigurationReset(() => {\n\tcurLanguage = undefined;\n\tfetchDefaultLanguage = undefined;\n});\n\n// Flag indicating that a language change is in progress and not yet complete.\n// While this flag is true, language-aware components will not re-render.\n// These components may rely on language-specific data (e.g., CLDR, language bundles),\n// which might be unavailable during the loading phase.\n// During this phase, all re-rendering is postponed.\n// Once all necessary language data has been loaded, the language change\n// will trigger a re-render of all language-aware components.\nlet languageChangePending = false;\n\nattachConfigChange(\"language\", (language: string) => {\n\tcurLanguage = language;\n\tlanguageChangePending = true;\n\tfireLanguageChange(language).then(() => {\n\t\tlanguageChangePending = false;\n\t\tif (isBooted()) {\n\t\t\treRenderAllUI5Elements({ languageAware: true });\n\t\t}\n\t});\n});\n\nconst getLanguageChangePending = () => languageChangePending;\n\n/**\n * Returns the currently configured language, or the browser language as a fallback.\n * @public\n * @returns {string}\n */\nconst getLanguage = (): string | undefined => {\n\tif (curLanguage === undefined) {\n\t\tcurLanguage = getSharedValue<string>(\"language\") ?? getConfiguredLanguage();\n\t}\n\treturn curLanguage;\n};\n\n/**\n * Changes the current language, re-fetches all message bundles, updates all language-aware components\n * and returns a promise that resolves when all rendering is done.\n *\n * @param {string} language\n * @public\n * @returns {Promise<void>}\n */\nconst setLanguage = async (language: string): Promise<void> => {\n\tif (curLanguage === language) {\n\t\treturn;\n\t}\n\n\tlanguageChangePending = true;\n\tcurLanguage = language;\n\n\tfireConfigChange(\"language\", language);\n\n\tawait fireLanguageChange(language);\n\n\tlanguageChangePending = false;\n\n\tif (isBooted()) {\n\t\tawait reRenderAllUI5Elements({ languageAware: true });\n\t}\n};\n\n/**\n * Returns the default languague.\n *\n * Note: Default language might be different than the configurated one.\n *\n * @public\n * @returns {string}\n */\nconst getDefaultLanguage = (): string => {\n\treturn DEFAULT_LANGUAGE;\n};\n\n/**\n * Defines if the default language, that is inlined, should be\n * fetched over the network instead of using the inlined one.\n * **Note:** By default the language will not be fetched.\n *\n * @public\n * @param {boolean} fetchDefaultLang\n */\nconst setFetchDefaultLanguage = (fetchDefaultLang: boolean) => {\n\tfetchDefaultLanguage = fetchDefaultLang;\n};\n\n/**\n * Returns if the default language, that is inlined, should be fetched over the network.\n * @public\n * @returns {boolean}\n */\nconst getFetchDefaultLanguage = (): boolean => {\n\tif (fetchDefaultLanguage === undefined) {\n\t\tfetchDefaultLanguage = getConfiguredFetchDefaultLanguage();\n\t}\n\n\treturn fetchDefaultLanguage;\n};\n\nexport {\n\tgetLanguage,\n\tsetLanguage,\n\tgetDefaultLanguage,\n\tsetFetchDefaultLanguage,\n\tgetFetchDefaultLanguage,\n\tgetLanguageChangePending,\n};\n"]}
|
package/dist/config/Theme.js
CHANGED
|
@@ -5,11 +5,18 @@ import getThemeDesignerTheme from "../theming/getThemeDesignerTheme.js";
|
|
|
5
5
|
import { DEFAULT_THEME, SUPPORTED_THEMES } from "../generated/AssetParameters.js";
|
|
6
6
|
import { boot, isBooted } from "../Boot.js";
|
|
7
7
|
import { attachConfigurationReset } from "./ConfigurationReset.js";
|
|
8
|
+
import { fireConfigChange, attachConfigChange, getSharedValue } from "./ConfigurationSync.js";
|
|
8
9
|
let curTheme;
|
|
9
10
|
let curBaseTheme;
|
|
10
11
|
attachConfigurationReset(() => {
|
|
11
12
|
curTheme = undefined;
|
|
12
13
|
});
|
|
14
|
+
attachConfigChange("theme", (theme) => {
|
|
15
|
+
curTheme = theme;
|
|
16
|
+
if (isBooted()) {
|
|
17
|
+
applyTheme(curTheme).then(() => reRenderAllUI5Elements({ themeAware: true }));
|
|
18
|
+
}
|
|
19
|
+
});
|
|
13
20
|
/**
|
|
14
21
|
* Returns the current theme.
|
|
15
22
|
* @public
|
|
@@ -17,7 +24,7 @@ attachConfigurationReset(() => {
|
|
|
17
24
|
*/
|
|
18
25
|
const getTheme = () => {
|
|
19
26
|
if (curTheme === undefined) {
|
|
20
|
-
curTheme = getConfiguredTheme();
|
|
27
|
+
curTheme = getSharedValue("theme") ?? getConfiguredTheme();
|
|
21
28
|
}
|
|
22
29
|
return curTheme;
|
|
23
30
|
};
|
|
@@ -32,6 +39,7 @@ const setTheme = async (theme) => {
|
|
|
32
39
|
return;
|
|
33
40
|
}
|
|
34
41
|
curTheme = theme;
|
|
42
|
+
fireConfigChange("theme", theme);
|
|
35
43
|
if (isBooted()) {
|
|
36
44
|
// Update CSS Custom Properties
|
|
37
45
|
await applyTheme(curTheme);
|
package/dist/config/Theme.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Theme.js","sourceRoot":"","sources":["../../src/config/Theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,qBAAqB,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAClF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"Theme.js","sourceRoot":"","sources":["../../src/config/Theme.ts"],"names":[],"mappings":"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","sourcesContent":["import { getTheme as getConfiguredTheme } from \"../InitialConfiguration.js\";\nimport { reRenderAllUI5Elements } from \"../Render.js\";\nimport applyTheme from \"../theming/applyTheme.js\";\nimport getThemeDesignerTheme from \"../theming/getThemeDesignerTheme.js\";\nimport { DEFAULT_THEME, SUPPORTED_THEMES } from \"../generated/AssetParameters.js\";\nimport { boot, isBooted } from \"../Boot.js\";\nimport { attachConfigurationReset } from \"./ConfigurationReset.js\";\nimport { fireConfigChange, attachConfigChange, getSharedValue } from \"./ConfigurationSync.js\";\n\nlet curTheme: string | undefined;\nlet curBaseTheme: string | undefined;\n\nattachConfigurationReset(() => {\n\tcurTheme = undefined;\n});\n\nattachConfigChange(\"theme\", (theme: string) => {\n\tcurTheme = theme;\n\tif (isBooted()) {\n\t\tapplyTheme(curTheme).then(() => reRenderAllUI5Elements({ themeAware: true }));\n\t}\n});\n\n/**\n * Returns the current theme.\n * @public\n * @returns {string} the current theme name\n */\nconst getTheme = (): string => {\n\tif (curTheme === undefined) {\n\t\tcurTheme = getSharedValue<string>(\"theme\") ?? getConfiguredTheme();\n\t}\n\n\treturn curTheme;\n};\n\n/**\n * Applies a new theme after fetching its assets from the network.\n * @public\n * @param {string} theme the name of the new theme\n * @returns {Promise<void>} a promise that is resolved when the new theme assets have been fetched and applied to the DOM\n */\nconst setTheme = async (theme: string): Promise<void> => {\n\tif (curTheme === theme) {\n\t\treturn;\n\t}\n\n\tcurTheme = theme;\n\n\tfireConfigChange(\"theme\", theme);\n\n\tif (isBooted()) {\n\t\t// Update CSS Custom Properties\n\t\tawait applyTheme(curTheme);\n\t\tawait reRenderAllUI5Elements({ themeAware: true });\n\t}\n};\n\n/**\n * Returns the default theme.\n *\n * Note: Default theme might be different than the configurated one.\n *\n * @public\n * @returns {string}\n */\nconst getDefaultTheme = (): string => {\n\treturn DEFAULT_THEME;\n};\n\n/**\n * Returns if the given theme name is the one currently applied.\n * @private\n * @param {string} theme\n * @returns {boolean}\n */\nconst isTheme = (theme: string) => {\n\treturn getTheme() === theme;\n};\n\n/**\n * Returns if the currently set theme is part of legacy theme families (\"sap_fiori_3\").\n * **Note**: in addition, the method checks the base theme of a custom theme, built via the ThemeDesigner.\n *\n * @private\n * @returns { boolean }\n */\nconst isLegacyThemeFamily = () => {\n\tconst currentTheme = getTheme();\n\n\tif (!isKnownTheme(currentTheme)) {\n\t\treturn !getThemeDesignerTheme()?.baseThemeName?.startsWith(\"sap_horizon\");\n\t}\n\n\treturn !currentTheme.startsWith(\"sap_horizon\");\n};\n\nconst isLegacyThemeFamilyAsync = async () => {\n\tawait boot();\n\treturn isLegacyThemeFamily();\n};\n\nconst isKnownTheme = (theme: string) => SUPPORTED_THEMES.includes(theme);\n\n/**\n * Returns the base theme of external theme.\n * @private\n * @returns {string | undefined} the base theme name\n */\nconst getBaseTheme = (): string | undefined => {\n\treturn curBaseTheme;\n};\n\n/**\n * Sets the base theme of the current external theme.\n * @param { string | undefined } theme the name of the new base theme\n * @private\n */\nconst setBaseTheme = (theme: string | undefined): void => {\n\tcurBaseTheme = theme;\n};\n\nexport {\n\tgetTheme,\n\tsetTheme,\n\tisTheme,\n\tisLegacyThemeFamily,\n\tisLegacyThemeFamilyAsync,\n\tgetDefaultTheme,\n\tgetBaseTheme,\n\tsetBaseTheme,\n};\n"]}
|
|
@@ -1142,6 +1142,12 @@
|
|
|
1142
1142
|
"declarations": [],
|
|
1143
1143
|
"exports": []
|
|
1144
1144
|
},
|
|
1145
|
+
{
|
|
1146
|
+
"kind": "javascript-module",
|
|
1147
|
+
"path": "dist/config/ConfigurationSync.js",
|
|
1148
|
+
"declarations": [],
|
|
1149
|
+
"exports": []
|
|
1150
|
+
},
|
|
1145
1151
|
{
|
|
1146
1152
|
"kind": "javascript-module",
|
|
1147
1153
|
"path": "dist/config/Fonts.js",
|
|
@@ -1361,6 +1367,123 @@
|
|
|
1361
1367
|
}
|
|
1362
1368
|
]
|
|
1363
1369
|
},
|
|
1370
|
+
{
|
|
1371
|
+
"kind": "javascript-module",
|
|
1372
|
+
"path": "dist/features/F6Navigation.js",
|
|
1373
|
+
"declarations": [],
|
|
1374
|
+
"exports": [
|
|
1375
|
+
{
|
|
1376
|
+
"kind": "js",
|
|
1377
|
+
"name": "default",
|
|
1378
|
+
"declaration": {
|
|
1379
|
+
"name": "F6Navigation",
|
|
1380
|
+
"module": "dist/features/F6Navigation.js"
|
|
1381
|
+
}
|
|
1382
|
+
}
|
|
1383
|
+
]
|
|
1384
|
+
},
|
|
1385
|
+
{
|
|
1386
|
+
"kind": "javascript-module",
|
|
1387
|
+
"path": "dist/features/InputElementsFormSupport.js",
|
|
1388
|
+
"declarations": [],
|
|
1389
|
+
"exports": []
|
|
1390
|
+
},
|
|
1391
|
+
{
|
|
1392
|
+
"kind": "javascript-module",
|
|
1393
|
+
"path": "dist/features/LegacyDateFormats.js",
|
|
1394
|
+
"declarations": [],
|
|
1395
|
+
"exports": [
|
|
1396
|
+
{
|
|
1397
|
+
"kind": "js",
|
|
1398
|
+
"name": "default",
|
|
1399
|
+
"declaration": {
|
|
1400
|
+
"name": "LegacyDateFormats",
|
|
1401
|
+
"module": "dist/features/LegacyDateFormats.js"
|
|
1402
|
+
}
|
|
1403
|
+
}
|
|
1404
|
+
]
|
|
1405
|
+
},
|
|
1406
|
+
{
|
|
1407
|
+
"kind": "javascript-module",
|
|
1408
|
+
"path": "dist/features/OpenUI5Element.js",
|
|
1409
|
+
"declarations": [],
|
|
1410
|
+
"exports": [
|
|
1411
|
+
{
|
|
1412
|
+
"kind": "js",
|
|
1413
|
+
"name": "default",
|
|
1414
|
+
"declaration": {
|
|
1415
|
+
"name": "OpenUI5Element",
|
|
1416
|
+
"module": "dist/features/OpenUI5Element.js"
|
|
1417
|
+
}
|
|
1418
|
+
}
|
|
1419
|
+
]
|
|
1420
|
+
},
|
|
1421
|
+
{
|
|
1422
|
+
"kind": "javascript-module",
|
|
1423
|
+
"path": "dist/features/OpenUI5Enablement.js",
|
|
1424
|
+
"declarations": [],
|
|
1425
|
+
"exports": [
|
|
1426
|
+
{
|
|
1427
|
+
"kind": "js",
|
|
1428
|
+
"name": "default",
|
|
1429
|
+
"declaration": {
|
|
1430
|
+
"name": "OpenUI5Enablement",
|
|
1431
|
+
"module": "dist/features/OpenUI5Enablement.js"
|
|
1432
|
+
}
|
|
1433
|
+
}
|
|
1434
|
+
]
|
|
1435
|
+
},
|
|
1436
|
+
{
|
|
1437
|
+
"kind": "javascript-module",
|
|
1438
|
+
"path": "dist/features/OpenUI5Support.js",
|
|
1439
|
+
"declarations": [],
|
|
1440
|
+
"exports": [
|
|
1441
|
+
{
|
|
1442
|
+
"kind": "js",
|
|
1443
|
+
"name": "default",
|
|
1444
|
+
"declaration": {
|
|
1445
|
+
"name": "OpenUI5Support",
|
|
1446
|
+
"module": "dist/features/OpenUI5Support.js"
|
|
1447
|
+
}
|
|
1448
|
+
}
|
|
1449
|
+
]
|
|
1450
|
+
},
|
|
1451
|
+
{
|
|
1452
|
+
"kind": "javascript-module",
|
|
1453
|
+
"path": "dist/features/insertOpenUI5PopupStyles.js",
|
|
1454
|
+
"declarations": [],
|
|
1455
|
+
"exports": [
|
|
1456
|
+
{
|
|
1457
|
+
"kind": "js",
|
|
1458
|
+
"name": "default",
|
|
1459
|
+
"declaration": {
|
|
1460
|
+
"name": "insertOpenUI5PopupStyles",
|
|
1461
|
+
"module": "dist/features/insertOpenUI5PopupStyles.js"
|
|
1462
|
+
}
|
|
1463
|
+
}
|
|
1464
|
+
]
|
|
1465
|
+
},
|
|
1466
|
+
{
|
|
1467
|
+
"kind": "javascript-module",
|
|
1468
|
+
"path": "dist/features/patchPatcher.js",
|
|
1469
|
+
"declarations": [],
|
|
1470
|
+
"exports": [
|
|
1471
|
+
{
|
|
1472
|
+
"kind": "js",
|
|
1473
|
+
"name": "default",
|
|
1474
|
+
"declaration": {
|
|
1475
|
+
"name": "patchPatcher",
|
|
1476
|
+
"module": "dist/features/patchPatcher.js"
|
|
1477
|
+
}
|
|
1478
|
+
}
|
|
1479
|
+
]
|
|
1480
|
+
},
|
|
1481
|
+
{
|
|
1482
|
+
"kind": "javascript-module",
|
|
1483
|
+
"path": "dist/features/patchPopup.js",
|
|
1484
|
+
"declarations": [],
|
|
1485
|
+
"exports": []
|
|
1486
|
+
},
|
|
1364
1487
|
{
|
|
1365
1488
|
"kind": "javascript-module",
|
|
1366
1489
|
"path": "dist/delegate/ItemNavigation.js",
|
|
@@ -1544,123 +1667,6 @@
|
|
|
1544
1667
|
}
|
|
1545
1668
|
]
|
|
1546
1669
|
},
|
|
1547
|
-
{
|
|
1548
|
-
"kind": "javascript-module",
|
|
1549
|
-
"path": "dist/features/F6Navigation.js",
|
|
1550
|
-
"declarations": [],
|
|
1551
|
-
"exports": [
|
|
1552
|
-
{
|
|
1553
|
-
"kind": "js",
|
|
1554
|
-
"name": "default",
|
|
1555
|
-
"declaration": {
|
|
1556
|
-
"name": "F6Navigation",
|
|
1557
|
-
"module": "dist/features/F6Navigation.js"
|
|
1558
|
-
}
|
|
1559
|
-
}
|
|
1560
|
-
]
|
|
1561
|
-
},
|
|
1562
|
-
{
|
|
1563
|
-
"kind": "javascript-module",
|
|
1564
|
-
"path": "dist/features/InputElementsFormSupport.js",
|
|
1565
|
-
"declarations": [],
|
|
1566
|
-
"exports": []
|
|
1567
|
-
},
|
|
1568
|
-
{
|
|
1569
|
-
"kind": "javascript-module",
|
|
1570
|
-
"path": "dist/features/LegacyDateFormats.js",
|
|
1571
|
-
"declarations": [],
|
|
1572
|
-
"exports": [
|
|
1573
|
-
{
|
|
1574
|
-
"kind": "js",
|
|
1575
|
-
"name": "default",
|
|
1576
|
-
"declaration": {
|
|
1577
|
-
"name": "LegacyDateFormats",
|
|
1578
|
-
"module": "dist/features/LegacyDateFormats.js"
|
|
1579
|
-
}
|
|
1580
|
-
}
|
|
1581
|
-
]
|
|
1582
|
-
},
|
|
1583
|
-
{
|
|
1584
|
-
"kind": "javascript-module",
|
|
1585
|
-
"path": "dist/features/OpenUI5Element.js",
|
|
1586
|
-
"declarations": [],
|
|
1587
|
-
"exports": [
|
|
1588
|
-
{
|
|
1589
|
-
"kind": "js",
|
|
1590
|
-
"name": "default",
|
|
1591
|
-
"declaration": {
|
|
1592
|
-
"name": "OpenUI5Element",
|
|
1593
|
-
"module": "dist/features/OpenUI5Element.js"
|
|
1594
|
-
}
|
|
1595
|
-
}
|
|
1596
|
-
]
|
|
1597
|
-
},
|
|
1598
|
-
{
|
|
1599
|
-
"kind": "javascript-module",
|
|
1600
|
-
"path": "dist/features/OpenUI5Enablement.js",
|
|
1601
|
-
"declarations": [],
|
|
1602
|
-
"exports": [
|
|
1603
|
-
{
|
|
1604
|
-
"kind": "js",
|
|
1605
|
-
"name": "default",
|
|
1606
|
-
"declaration": {
|
|
1607
|
-
"name": "OpenUI5Enablement",
|
|
1608
|
-
"module": "dist/features/OpenUI5Enablement.js"
|
|
1609
|
-
}
|
|
1610
|
-
}
|
|
1611
|
-
]
|
|
1612
|
-
},
|
|
1613
|
-
{
|
|
1614
|
-
"kind": "javascript-module",
|
|
1615
|
-
"path": "dist/features/OpenUI5Support.js",
|
|
1616
|
-
"declarations": [],
|
|
1617
|
-
"exports": [
|
|
1618
|
-
{
|
|
1619
|
-
"kind": "js",
|
|
1620
|
-
"name": "default",
|
|
1621
|
-
"declaration": {
|
|
1622
|
-
"name": "OpenUI5Support",
|
|
1623
|
-
"module": "dist/features/OpenUI5Support.js"
|
|
1624
|
-
}
|
|
1625
|
-
}
|
|
1626
|
-
]
|
|
1627
|
-
},
|
|
1628
|
-
{
|
|
1629
|
-
"kind": "javascript-module",
|
|
1630
|
-
"path": "dist/features/insertOpenUI5PopupStyles.js",
|
|
1631
|
-
"declarations": [],
|
|
1632
|
-
"exports": [
|
|
1633
|
-
{
|
|
1634
|
-
"kind": "js",
|
|
1635
|
-
"name": "default",
|
|
1636
|
-
"declaration": {
|
|
1637
|
-
"name": "insertOpenUI5PopupStyles",
|
|
1638
|
-
"module": "dist/features/insertOpenUI5PopupStyles.js"
|
|
1639
|
-
}
|
|
1640
|
-
}
|
|
1641
|
-
]
|
|
1642
|
-
},
|
|
1643
|
-
{
|
|
1644
|
-
"kind": "javascript-module",
|
|
1645
|
-
"path": "dist/features/patchPatcher.js",
|
|
1646
|
-
"declarations": [],
|
|
1647
|
-
"exports": [
|
|
1648
|
-
{
|
|
1649
|
-
"kind": "js",
|
|
1650
|
-
"name": "default",
|
|
1651
|
-
"declaration": {
|
|
1652
|
-
"name": "patchPatcher",
|
|
1653
|
-
"module": "dist/features/patchPatcher.js"
|
|
1654
|
-
}
|
|
1655
|
-
}
|
|
1656
|
-
]
|
|
1657
|
-
},
|
|
1658
|
-
{
|
|
1659
|
-
"kind": "javascript-module",
|
|
1660
|
-
"path": "dist/features/patchPopup.js",
|
|
1661
|
-
"declarations": [],
|
|
1662
|
-
"exports": []
|
|
1663
|
-
},
|
|
1664
1670
|
{
|
|
1665
1671
|
"kind": "javascript-module",
|
|
1666
1672
|
"path": "dist/locale/Locale.js",
|