@fundamental-ngx/ui5-webcomponents-base 0.58.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.
- package/README.md +3 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-base-theming.mjs +186 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-base-theming.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-base-types.mjs +12 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-base-types.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-base.mjs +12 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-base.mjs.map +1 -0
- package/index.d.ts +7 -0
- package/package.json +55 -0
- package/theming/index.d.ts +109 -0
- package/types/index.d.ts +7 -0
package/README.md
ADDED
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { InjectionToken, computed, inject, signal, effect, isDevMode, Injectable } from '@angular/core';
|
|
3
|
+
import { setTheme } from '@ui5/webcomponents-base/dist/config/Theme.js';
|
|
4
|
+
|
|
5
|
+
const UI5_THEMING_CONFIGURATION = new InjectionToken('Ui5 global theming configuration.');
|
|
6
|
+
|
|
7
|
+
// ui5-theming.service.ts
|
|
8
|
+
class Ui5ThemingService {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.availableThemes = computed(() => {
|
|
11
|
+
const providers = this._providers();
|
|
12
|
+
const uniqueThemes = new Set();
|
|
13
|
+
// Using a normal loop to handle synchronous and asynchronous results
|
|
14
|
+
for (const provider of providers) {
|
|
15
|
+
const themes = provider.getAvailableThemes();
|
|
16
|
+
if (Array.isArray(themes)) {
|
|
17
|
+
themes.forEach(theme => uniqueThemes.add(theme));
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
// TODO Since providers now return a promise, we'd need to handle this asynchronously
|
|
21
|
+
// For simplicity, we'll assume a `Promise` is returned and handle it inside the effect
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return [...uniqueThemes.values()];
|
|
25
|
+
}, ...(ngDevMode ? [{ debugName: "availableThemes" }] : []));
|
|
26
|
+
this._config = inject(UI5_THEMING_CONFIGURATION, { optional: true });
|
|
27
|
+
this._providers = signal([], ...(ngDevMode ? [{ debugName: "_providers" }] : []));
|
|
28
|
+
this._currentTheme = signal(this._config?.defaultTheme || 'sap_fiori_3', ...(ngDevMode ? [{ debugName: "_currentTheme" }] : []));
|
|
29
|
+
effect(async () => {
|
|
30
|
+
const newTheme = this._currentTheme();
|
|
31
|
+
const providers = this._providers();
|
|
32
|
+
if (providers.length === 0) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
const results = await Promise.all(providers.map(async (provider) => {
|
|
36
|
+
const isSupported = await provider.supportsTheme(newTheme);
|
|
37
|
+
return { provider, isSupported };
|
|
38
|
+
}));
|
|
39
|
+
const unsupportedProviders = results.filter(r => !r.isSupported);
|
|
40
|
+
if (unsupportedProviders.length > 0 && isDevMode()) {
|
|
41
|
+
console.warn(`The following providers do not support the theme "${newTheme}":`, unsupportedProviders.map(({ provider }) => provider.name));
|
|
42
|
+
}
|
|
43
|
+
await Promise.all(results.filter(r => r.isSupported).map(({ provider }) => provider.setTheme(newTheme)));
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
getAvailableThemes() {
|
|
47
|
+
return this.availableThemes();
|
|
48
|
+
}
|
|
49
|
+
supportsTheme(themeName) {
|
|
50
|
+
return Promise.resolve(this.availableThemes().includes(themeName));
|
|
51
|
+
}
|
|
52
|
+
registerProvider(provider) {
|
|
53
|
+
const providers = this._providers();
|
|
54
|
+
if (!providers.includes(provider)) {
|
|
55
|
+
this._providers.update(currentProviders => [...currentProviders, provider]);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
unregisterProvider(provider) {
|
|
59
|
+
this._providers.update(currentProviders => currentProviders.filter(p => p !== provider));
|
|
60
|
+
}
|
|
61
|
+
setTheme(theme) {
|
|
62
|
+
this._currentTheme.set(theme);
|
|
63
|
+
return Promise.resolve(true);
|
|
64
|
+
}
|
|
65
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: Ui5ThemingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
66
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: Ui5ThemingService, providedIn: 'root' }); }
|
|
67
|
+
}
|
|
68
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: Ui5ThemingService, decorators: [{
|
|
69
|
+
type: Injectable,
|
|
70
|
+
args: [{
|
|
71
|
+
providedIn: 'root'
|
|
72
|
+
}]
|
|
73
|
+
}], ctorParameters: () => [] });
|
|
74
|
+
|
|
75
|
+
var supportedThemes = ["node_modules/@ui5/webcomponents-theming/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json", "node_modules/@ui5/webcomponents-theming/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json", "node_modules/@ui5/webcomponents-theming/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json", "node_modules/@ui5/webcomponents-theming/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json", "node_modules/@ui5/webcomponents-theming/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json", "node_modules/@ui5/webcomponents-theming/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json", "node_modules/@ui5/webcomponents-theming/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json", "node_modules/@ui5/webcomponents-theming/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json"];
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* @file Defines the abstract base class for theming providers in Angular,
|
|
79
|
+
* designed to integrate with UI5 Web Components' theme management.
|
|
80
|
+
*
|
|
81
|
+
* This provider registers itself with a global theming service (if available) and
|
|
82
|
+
* manages a list of supported themes, allowing other parts of the application
|
|
83
|
+
* to query theme support and apply themes to the underlying UI5 Web Components.
|
|
84
|
+
*/
|
|
85
|
+
// base-webcomponents-theming-provider.ts
|
|
86
|
+
/**
|
|
87
|
+
* @description
|
|
88
|
+
* Abstract base class for UI5 Web Components theming providers.
|
|
89
|
+
*
|
|
90
|
+
* Components extending this class are responsible for providing the necessary theme resources
|
|
91
|
+
* (via the `registerThemes` callback) and exposing the supported themes. It integrates
|
|
92
|
+
* with the global {@link Ui5ThemingService} to make its themes available application-wide.
|
|
93
|
+
*
|
|
94
|
+
* @implements {Ui5ThemingProvider}
|
|
95
|
+
* @implements {OnDestroy}
|
|
96
|
+
*/
|
|
97
|
+
class WebcomponentsThemingProvider {
|
|
98
|
+
/** @hidden */
|
|
99
|
+
constructor(registerThemes) {
|
|
100
|
+
this.registerThemes = registerThemes;
|
|
101
|
+
/**
|
|
102
|
+
* @description
|
|
103
|
+
* A signal containing the list of themes supported by this provider.
|
|
104
|
+
* It is initialized with the themes loaded from the `supported-themes` file.
|
|
105
|
+
*/
|
|
106
|
+
this.availableThemes = signal(supportedThemes, ...(ngDevMode ? [{ debugName: "availableThemes" }] : []));
|
|
107
|
+
/**
|
|
108
|
+
* @description
|
|
109
|
+
* Reference to the global {@link Ui5ThemingService}, injected optionally.
|
|
110
|
+
* The provider registers itself here if the global service is available.
|
|
111
|
+
*/
|
|
112
|
+
this._globalThemingService = inject(Ui5ThemingService, { optional: true });
|
|
113
|
+
this.registerThemes().then(() => {
|
|
114
|
+
this._globalThemingService?.registerProvider(this);
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
/** @hidden */
|
|
118
|
+
ngOnDestroy() {
|
|
119
|
+
this._globalThemingService?.unregisterProvider(this);
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* @description
|
|
123
|
+
* Checks if a specific theme name is supported by this provider.
|
|
124
|
+
* @param theme The name of the theme to check (e.g., 'sap_horizon').
|
|
125
|
+
* @returns `true` if the theme is supported, `false` otherwise.
|
|
126
|
+
*/
|
|
127
|
+
supportsTheme(theme) {
|
|
128
|
+
return this.availableThemes().includes(theme);
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* @description
|
|
132
|
+
* Retrieves the list of theme names supported by this provider.
|
|
133
|
+
* @returns An array of supported theme names.
|
|
134
|
+
*/
|
|
135
|
+
getAvailableThemes() {
|
|
136
|
+
return this.availableThemes();
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* @description
|
|
140
|
+
* Attempts to set the given theme globally for all UI5 Web Components.
|
|
141
|
+
*
|
|
142
|
+
* The theme is only applied if it is included in the list of available themes
|
|
143
|
+
* managed by this provider.
|
|
144
|
+
*
|
|
145
|
+
* @param theme The name of the theme to apply.
|
|
146
|
+
* @returns A promise that resolves to `true` if the theme was applied, or `false` if the theme is not supported.
|
|
147
|
+
*/
|
|
148
|
+
async setTheme(theme) {
|
|
149
|
+
const supported = this.availableThemes().includes(theme);
|
|
150
|
+
if (supported) {
|
|
151
|
+
setTheme(theme);
|
|
152
|
+
}
|
|
153
|
+
return supported;
|
|
154
|
+
}
|
|
155
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: WebcomponentsThemingProvider, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
156
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: WebcomponentsThemingProvider }); }
|
|
157
|
+
}
|
|
158
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: WebcomponentsThemingProvider, decorators: [{
|
|
159
|
+
type: Injectable
|
|
160
|
+
}], ctorParameters: () => [{ type: undefined }] });
|
|
161
|
+
|
|
162
|
+
/**
|
|
163
|
+
* Theming service specifically for the ui5/webcomponents-ngx components.
|
|
164
|
+
*/
|
|
165
|
+
class Ui5WebcomponentsThemingService extends WebcomponentsThemingProvider {
|
|
166
|
+
/** @hidden */
|
|
167
|
+
constructor() {
|
|
168
|
+
super(() => import('@ui5/webcomponents-theming/dist/generated/json-imports/Themes.js'));
|
|
169
|
+
this.name = 'ui5-webcomponents-theming-service';
|
|
170
|
+
}
|
|
171
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: Ui5WebcomponentsThemingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
172
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: Ui5WebcomponentsThemingService, providedIn: 'root' }); }
|
|
173
|
+
}
|
|
174
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: Ui5WebcomponentsThemingService, decorators: [{
|
|
175
|
+
type: Injectable,
|
|
176
|
+
args: [{
|
|
177
|
+
providedIn: 'root'
|
|
178
|
+
}]
|
|
179
|
+
}], ctorParameters: () => [] });
|
|
180
|
+
|
|
181
|
+
/**
|
|
182
|
+
* Generated bundle index. Do not edit.
|
|
183
|
+
*/
|
|
184
|
+
|
|
185
|
+
export { UI5_THEMING_CONFIGURATION, Ui5ThemingService, Ui5WebcomponentsThemingService, WebcomponentsThemingProvider };
|
|
186
|
+
//# sourceMappingURL=fundamental-ngx-ui5-webcomponents-base-theming.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-base-theming.mjs","sources":["../tmp-esm2022/theming/ui5-theming.models.js","../tmp-esm2022/theming/ui5-theming-api.js","../tmp-esm2022/theming/supported-themes.js","../tmp-esm2022/theming/base-webcomponents-theming-provider.js","../tmp-esm2022/theming/theming-api.js","../tmp-esm2022/theming/fundamental-ngx-ui5-webcomponents-base-theming.js"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nexport const UI5_THEMING_CONFIGURATION = new InjectionToken('Ui5 global theming configuration.');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWk1LXRoZW1pbmcubW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy91aTUtd2ViY29tcG9uZW50cy1iYXNlL3RoZW1pbmcvdWk1LXRoZW1pbmcubW9kZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFNL0MsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsSUFBSSxjQUFjLENBQ3pELG1DQUFtQyxDQUNwQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBUaGVtaW5nQ29uZmlnIHtcbiAgZGVmYXVsdFRoZW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCBVSTVfVEhFTUlOR19DT05GSUdVUkFUSU9OID0gbmV3IEluamVjdGlvblRva2VuPFRoZW1pbmdDb25maWc+KFxuICAnVWk1IGdsb2JhbCB0aGVtaW5nIGNvbmZpZ3VyYXRpb24uJ1xuKTtcblxuZXhwb3J0IGludGVyZmFjZSBVaTVUaGVtaW5nUHJvdmlkZXIge1xuICBuYW1lOiBzdHJpbmc7XG4gIGdldEF2YWlsYWJsZVRoZW1lcygpOiBzdHJpbmdbXSB8IFByb21pc2U8c3RyaW5nW10+O1xuICBzdXBwb3J0c1RoZW1lKHRoZW1lTmFtZTogc3RyaW5nKTogYm9vbGVhbiB8IFByb21pc2U8Ym9vbGVhbj47XG4gIHNldFRoZW1lKHRoZW1lTmFtZTogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVaTVUaGVtaW5nQ29uc3VtZXIgZXh0ZW5kcyBPbWl0PFVpNVRoZW1pbmdQcm92aWRlciwgJ25hbWUnPiB7XG4gIHJlZ2lzdGVyUHJvdmlkZXIocHJvdmlkZXI6IFVpNVRoZW1pbmdQcm92aWRlcik6IHZvaWQ7XG4gIHVucmVnaXN0ZXJQcm92aWRlcihwcm92aWRlcjogVWk1VGhlbWluZ1Byb3ZpZGVyKTogdm9pZDtcbn1cbiJdfQ==","// ui5-theming.service.ts\nimport { inject, Injectable, isDevMode, signal, computed, effect } from '@angular/core';\nimport { UI5_THEMING_CONFIGURATION, } from './ui5-theming.models';\nimport * as i0 from \"@angular/core\";\nexport class Ui5ThemingService {\n constructor() {\n this.availableThemes = computed(() => {\n const providers = this._providers();\n const uniqueThemes = new Set();\n // Using a normal loop to handle synchronous and asynchronous results\n for (const provider of providers) {\n const themes = provider.getAvailableThemes();\n if (Array.isArray(themes)) {\n themes.forEach(theme => uniqueThemes.add(theme));\n }\n else {\n // TODO Since providers now return a promise, we'd need to handle this asynchronously\n // For simplicity, we'll assume a `Promise` is returned and handle it inside the effect\n }\n }\n return [...uniqueThemes.values()];\n }, ...(ngDevMode ? [{ debugName: \"availableThemes\" }] : []));\n this._config = inject(UI5_THEMING_CONFIGURATION, { optional: true });\n this._providers = signal([], ...(ngDevMode ? [{ debugName: \"_providers\" }] : []));\n this._currentTheme = signal(this._config?.defaultTheme || 'sap_fiori_3', ...(ngDevMode ? [{ debugName: \"_currentTheme\" }] : []));\n effect(async () => {\n const newTheme = this._currentTheme();\n const providers = this._providers();\n if (providers.length === 0) {\n return;\n }\n const results = await Promise.all(providers.map(async (provider) => {\n const isSupported = await provider.supportsTheme(newTheme);\n return { provider, isSupported };\n }));\n const unsupportedProviders = results.filter(r => !r.isSupported);\n if (unsupportedProviders.length > 0 && isDevMode()) {\n console.warn(`The following providers do not support the theme \"${newTheme}\":`, unsupportedProviders.map(({ provider }) => provider.name));\n }\n await Promise.all(results.filter(r => r.isSupported).map(({ provider }) => provider.setTheme(newTheme)));\n });\n }\n getAvailableThemes() {\n return this.availableThemes();\n }\n supportsTheme(themeName) {\n return Promise.resolve(this.availableThemes().includes(themeName));\n }\n registerProvider(provider) {\n const providers = this._providers();\n if (!providers.includes(provider)) {\n this._providers.update(currentProviders => [...currentProviders, provider]);\n }\n }\n unregisterProvider(provider) {\n this._providers.update(currentProviders => currentProviders.filter(p => p !== provider));\n }\n setTheme(theme) {\n this._currentTheme.set(theme);\n return Promise.resolve(true);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: Ui5ThemingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: Ui5ThemingService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: Ui5ThemingService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root'\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWk1LXRoZW1pbmctYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy91aTUtd2ViY29tcG9uZW50cy1iYXNlL3RoZW1pbmcvdWk1LXRoZW1pbmctYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHlCQUF5QjtBQUN6QixPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUNMLHlCQUF5QixHQUcxQixNQUFNLHNCQUFzQixDQUFDOztBQUs5QixNQUFNLE9BQU8saUJBQWlCO0lBd0I1QjtRQXRCUyxvQkFBZSxHQUFHLFFBQVEsQ0FBVyxHQUFHLEVBQUU7WUFDakQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sWUFBWSxHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7WUFFdkMscUVBQXFFO1lBQ3JFLEtBQUssTUFBTSxRQUFRLElBQUksU0FBUyxFQUFFLENBQUM7Z0JBQ2pDLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO2dCQUM3QyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztvQkFDMUIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDbkQsQ0FBQztxQkFBTSxDQUFDO29CQUNOLHFGQUFxRjtvQkFDckYsdUZBQXVGO2dCQUN6RixDQUFDO1lBQ0gsQ0FBQztZQUNELE9BQU8sQ0FBQyxHQUFHLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQ3BDLENBQUMsMkRBQUMsQ0FBQztRQUVjLFlBQU8sR0FBRyxNQUFNLENBQUMseUJBQXlCLEVBQUUsRUFBRSxRQUFR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QWlCO2tIQUFqQixpQkFBaUIsY0FGaEIsTUFBTTs7MkZBRVAsaUJBQWlCO2tCQUg3QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIHVpNS10aGVtaW5nLnNlcnZpY2UudHNcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSwgaXNEZXZNb2RlLCBzaWduYWwsIGNvbXB1dGVkLCBlZmZlY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFVJNV9USEVNSU5HX0NPTkZJR1VSQVRJT04sXG4gIFVpNVRoZW1pbmdQcm92aWRlcixcbiAgVWk1VGhlbWluZ0NvbnN1bWVyLFxufSBmcm9tICcuL3VpNS10aGVtaW5nLm1vZGVscyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFVpNVRoZW1pbmdTZXJ2aWNlIGltcGxlbWVudHMgVWk1VGhlbWluZ0NvbnN1bWVyIHtcblxuICByZWFkb25seSBhdmFpbGFibGVUaGVtZXMgPSBjb21wdXRlZDxzdHJpbmdbXT4oKCkgPT4ge1xuICAgIGNvbnN0IHByb3ZpZGVycyA9IHRoaXMuX3Byb3ZpZGVycygpO1xuICAgIGNvbnN0IHVuaXF1ZVRoZW1lcyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICAgIFxuICAgIC8vIFVzaW5nIGEgbm9ybWFsIGxvb3AgdG8gaGFuZGxlIHN5bmNocm9ub3VzIGFuZCBhc3luY2hyb25vdXMgcmVzdWx0c1xuICAgIGZvciAoY29uc3QgcHJvdmlkZXIgb2YgcHJvdmlkZXJzKSB7XG4gICAgICBjb25zdCB0aGVtZXMgPSBwcm92aWRlci5nZXRBdmFpbGFibGVUaGVtZXMoKTtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHRoZW1lcykpIHtcbiAgICAgICAgdGhlbWVzLmZvckVhY2godGhlbWUgPT4gdW5pcXVlVGhlbWVzLmFkZCh0aGVtZSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gVE9ETyBTaW5jZSBwcm92aWRlcnMgbm93IHJldHVybiBhIHByb21pc2UsIHdlJ2QgbmVlZCB0byBoYW5kbGUgdGhpcyBhc3luY2hyb25vdXNseVxuICAgICAgICAvLyBGb3Igc2ltcGxpY2l0eSwgd2UnbGwgYXNzdW1lIGEgYFByb21pc2VgIGlzIHJldHVybmVkIGFuZCBoYW5kbGUgaXQgaW5zaWRlIHRoZSBlZmZlY3RcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIFsuLi51bmlxdWVUaGVtZXMudmFsdWVzKCldO1xuICB9KTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9jb25maWcgPSBpbmplY3QoVUk1X1RIRU1JTkdfQ09ORklHVVJBVElPTiwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcbiAgcHJpdmF0ZSByZWFkb25seSBfcHJvdmlkZXJzID0gc2lnbmFsPFVpNVRoZW1pbmdQcm92aWRlcltdPihbXSk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfY3VycmVudFRoZW1lID0gc2lnbmFsKHRoaXMuX2NvbmZpZz8uZGVmYXVsdFRoZW1lIHx8ICdzYXBfZmlvcmlfMycpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGVmZmVjdChhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBuZXdUaGVtZSA9IHRoaXMuX2N1cnJlbnRUaGVtZSgpO1xuICAgICAgY29uc3QgcHJvdmlkZXJzID0gdGhpcy5fcHJvdmlkZXJzKCk7XG5cbiAgICAgIGlmIChwcm92aWRlcnMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgcmVzdWx0cyA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICBwcm92aWRlcnMubWFwKGFzeW5jIChwcm92aWRlcikgPT4ge1xuICAgICAgICAgIGNvbnN0IGlzU3VwcG9ydGVkID0gYXdhaXQgcHJvdmlkZXIuc3VwcG9ydHNUaGVtZShuZXdUaGVtZSk7XG4gICAgICAgICAgcmV0dXJuIHsgcHJvdmlkZXIsIGlzU3VwcG9ydGVkIH07XG4gICAgICAgIH0pXG4gICAgICApO1xuXG4gICAgICBjb25zdCB1bnN1cHBvcnRlZFByb3ZpZGVycyA9IHJlc3VsdHMuZmlsdGVyKHIgPT4gIXIuaXNTdXBwb3J0ZWQpO1xuICAgICAgaWYgKHVuc3VwcG9ydGVkUHJvdmlkZXJzLmxlbmd0aCA+IDAgJiYgaXNEZXZNb2RlKCkpIHtcbiAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgIGBUaGUgZm9sbG93aW5nIHByb3ZpZGVycyBkbyBub3Qgc3VwcG9ydCB0aGUgdGhlbWUgXCIke25ld1RoZW1lfVwiOmAsXG4gICAgICAgICAgdW5zdXBwb3J0ZWRQcm92aWRlcnMubWFwKCh7IHByb3ZpZGVyIH0pID0+IHByb3ZpZGVyLm5hbWUpXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICByZXN1bHRzLmZpbHRlcihyID0+IHIuaXNTdXBwb3J0ZWQpLm1hcCgoeyBwcm92aWRlciB9KSA9PlxuICAgICAgICAgIHByb3ZpZGVyLnNldFRoZW1lKG5ld1RoZW1lKVxuICAgICAgICApXG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cblxuICBnZXRBdmFpbGFibGVUaGVtZXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLmF2YWlsYWJsZVRoZW1lcygpO1xuICB9XG5cbiAgc3VwcG9ydHNUaGVtZSh0aGVtZU5hbWU6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5hdmFpbGFibGVUaGVtZXMoKS5pbmNsdWRlcyh0aGVtZU5hbWUpKTtcbiAgfVxuXG4gIHJlZ2lzdGVyUHJvdmlkZXIocHJvdmlkZXI6IFVpNVRoZW1pbmdQcm92aWRlcik6IHZvaWQge1xuICAgIGNvbnN0IHByb3ZpZGVycyA9IHRoaXMuX3Byb3ZpZGVycygpO1xuICAgIGlmICghcHJvdmlkZXJzLmluY2x1ZGVzKHByb3ZpZGVyKSkge1xuICAgICAgdGhpcy5fcHJvdmlkZXJzLnVwZGF0ZShjdXJyZW50UHJvdmlkZXJzID0+IFsuLi5jdXJyZW50UHJvdmlkZXJzLCBwcm92aWRlcl0pO1xuICAgIH1cbiAgfVxuXG4gIHVucmVnaXN0ZXJQcm92aWRlcihwcm92aWRlcjogVWk1VGhlbWluZ1Byb3ZpZGVyKTogdm9pZCB7XG4gICAgdGhpcy5fcHJvdmlkZXJzLnVwZGF0ZShjdXJyZW50UHJvdmlkZXJzID0+XG4gICAgICBjdXJyZW50UHJvdmlkZXJzLmZpbHRlcihwID0+IHAgIT09IHByb3ZpZGVyKVxuICAgICk7XG4gIH1cblxuICBzZXRUaGVtZSh0aGVtZTogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgdGhpcy5fY3VycmVudFRoZW1lLnNldCh0aGVtZSk7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh0cnVlKTtcbiAgfVxufVxuIl19","export default [\"node_modules/@ui5/webcomponents-theming/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json\", \"node_modules/@ui5/webcomponents-theming/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json\", \"node_modules/@ui5/webcomponents-theming/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json\", \"node_modules/@ui5/webcomponents-theming/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json\", \"node_modules/@ui5/webcomponents-theming/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json\", \"node_modules/@ui5/webcomponents-theming/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json\", \"node_modules/@ui5/webcomponents-theming/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json\", \"node_modules/@ui5/webcomponents-theming/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json\"];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcG9ydGVkLXRoZW1lcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvdWk1LXdlYmNvbXBvbmVudHMtYmFzZS90aGVtaW5nL3N1cHBvcnRlZC10aGVtZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZUFBZSxDQUFDLDZHQUE2RyxFQUFDLGtIQUFrSCxFQUFDLGlIQUFpSCxFQUFDLGlIQUFpSCxFQUFDLDZHQUE2RyxFQUFDLGtIQUFrSCxFQUFDLGlIQUFpSCxFQUFDLGlIQUFpSCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBbXCJub2RlX21vZHVsZXMvQHVpNS93ZWJjb21wb25lbnRzLXRoZW1pbmcvZGlzdC9nZW5lcmF0ZWQvYXNzZXRzL3RoZW1lcy9zYXBfZmlvcmlfMy9wYXJhbWV0ZXJzLWJ1bmRsZS5jc3MuanNvblwiLFwibm9kZV9tb2R1bGVzL0B1aTUvd2ViY29tcG9uZW50cy10aGVtaW5nL2Rpc3QvZ2VuZXJhdGVkL2Fzc2V0cy90aGVtZXMvc2FwX2Zpb3JpXzNfZGFyay9wYXJhbWV0ZXJzLWJ1bmRsZS5jc3MuanNvblwiLFwibm9kZV9tb2R1bGVzL0B1aTUvd2ViY29tcG9uZW50cy10aGVtaW5nL2Rpc3QvZ2VuZXJhdGVkL2Fzc2V0cy90aGVtZXMvc2FwX2Zpb3JpXzNfaGNiL3BhcmFtZXRlcnMtYnVuZGxlLmNzcy5qc29uXCIsXCJub2RlX21vZHVsZXMvQHVpNS93ZWJjb21wb25lbnRzLXRoZW1pbmcvZGlzdC9nZW5lcmF0ZWQvYXNzZXRzL3RoZW1lcy9zYXBfZmlvcmlfM19oY3cvcGFyYW1ldGVycy1idW5kbGUuY3NzLmpzb25cIixcIm5vZGVfbW9kdWxlcy9AdWk1L3dlYmNvbXBvbmVudHMtdGhlbWluZy9kaXN0L2dlbmVyYXRlZC9hc3NldHMvdGhlbWVzL3NhcF9ob3Jpem9uL3BhcmFtZXRlcnMtYnVuZGxlLmNzcy5qc29uXCIsXCJub2RlX21vZHVsZXMvQHVpNS93ZWJjb21wb25lbnRzLXRoZW1pbmcvZGlzdC9nZW5lcmF0ZWQvYXNzZXRzL3RoZW1lcy9zYXBfaG9yaXpvbl9kYXJrL3BhcmFtZXRlcnMtYnVuZGxlLmNzcy5qc29uXCIsXCJub2RlX21vZHVsZXMvQHVpNS93ZWJjb21wb25lbnRzLXRoZW1pbmcvZGlzdC9nZW5lcmF0ZWQvYXNzZXRzL3RoZW1lcy9zYXBfaG9yaXpvbl9oY2IvcGFyYW1ldGVycy1idW5kbGUuY3NzLmpzb25cIixcIm5vZGVfbW9kdWxlcy9AdWk1L3dlYmNvbXBvbmVudHMtdGhlbWluZy9kaXN0L2dlbmVyYXRlZC9hc3NldHMvdGhlbWVzL3NhcF9ob3Jpem9uX2hjdy9wYXJhbWV0ZXJzLWJ1bmRsZS5jc3MuanNvblwiXTtcbiJdfQ==","/**\n * @file Defines the abstract base class for theming providers in Angular,\n * designed to integrate with UI5 Web Components' theme management.\n *\n * This provider registers itself with a global theming service (if available) and\n * manages a list of supported themes, allowing other parts of the application\n * to query theme support and apply themes to the underlying UI5 Web Components.\n */\n// base-webcomponents-theming-provider.ts\nimport { inject, Injectable, signal } from \"@angular/core\";\nimport { Ui5ThemingService } from \"./ui5-theming-api\";\nimport supportedThemes from './supported-themes';\nimport { setTheme } from '@ui5/webcomponents-base/dist/config/Theme.js';\nimport * as i0 from \"@angular/core\";\n/**\n * @description\n * Abstract base class for UI5 Web Components theming providers.\n *\n * Components extending this class are responsible for providing the necessary theme resources\n * (via the `registerThemes` callback) and exposing the supported themes. It integrates\n * with the global {@link Ui5ThemingService} to make its themes available application-wide.\n *\n * @implements {Ui5ThemingProvider}\n * @implements {OnDestroy}\n */\nexport class WebcomponentsThemingProvider {\n /** @hidden */\n constructor(registerThemes) {\n this.registerThemes = registerThemes;\n /**\n * @description\n * A signal containing the list of themes supported by this provider.\n * It is initialized with the themes loaded from the `supported-themes` file.\n */\n this.availableThemes = signal(supportedThemes, ...(ngDevMode ? [{ debugName: \"availableThemes\" }] : []));\n /**\n * @description\n * Reference to the global {@link Ui5ThemingService}, injected optionally.\n * The provider registers itself here if the global service is available.\n */\n this._globalThemingService = inject(Ui5ThemingService, { optional: true });\n this.registerThemes().then(() => {\n this._globalThemingService?.registerProvider(this);\n });\n }\n /** @hidden */\n ngOnDestroy() {\n this._globalThemingService?.unregisterProvider(this);\n }\n /**\n * @description\n * Checks if a specific theme name is supported by this provider.\n * @param theme The name of the theme to check (e.g., 'sap_horizon').\n * @returns `true` if the theme is supported, `false` otherwise.\n */\n supportsTheme(theme) {\n return this.availableThemes().includes(theme);\n }\n /**\n * @description\n * Retrieves the list of theme names supported by this provider.\n * @returns An array of supported theme names.\n */\n getAvailableThemes() {\n return this.availableThemes();\n }\n /**\n * @description\n * Attempts to set the given theme globally for all UI5 Web Components.\n *\n * The theme is only applied if it is included in the list of available themes\n * managed by this provider.\n *\n * @param theme The name of the theme to apply.\n * @returns A promise that resolves to `true` if the theme was applied, or `false` if the theme is not supported.\n */\n async setTheme(theme) {\n const supported = this.availableThemes().includes(theme);\n if (supported) {\n setTheme(theme);\n }\n return supported;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: WebcomponentsThemingProvider, deps: \"invalid\", target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: WebcomponentsThemingProvider }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: WebcomponentsThemingProvider, decorators: [{\n type: Injectable\n }], ctorParameters: () => [{ type: undefined }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS13ZWJjb21wb25lbnRzLXRoZW1pbmctcHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3VpNS13ZWJjb21wb25lbnRzLWJhc2UvdGhlbWluZy9iYXNlLXdlYmNvbXBvbmVudHMtdGhlbWluZy1wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztHQU9HO0FBRUgseUNBQXlDO0FBQ3pDLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFhLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV0RCxPQUFPLGVBQWUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sOENBQThDLENBQUM7O0FBRXhFOzs7Ozs7Ozs7O0dBVUc7QUFFSCxNQUFNLE9BQWdCLDRCQUE0QjtJQXNCaEQsY0FBYztJQUNkLFlBQ1ksY0FBa0M7UUFBbEMsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBaEI5Qzs7OztXQUlHO1FBQ08sb0JBQWUsR0FBRyxNQUFNLENBQVcsZUFBZSwyREFBQyxDQUFDO1FBRTlEOzs7O1dBSUc7UUFDTywwQkFBcUIsR0FBNkIsTUFBTSxDQUFDLGlCQUFpQixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFNeEcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDOUIsSUFBSSxDQUFDLHFCQUFxQixFQUFFLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3JELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGNBQWM7SUFDZCxXQUFXO1FBQ1QsSUFBSSxDQUFDLHFCQUFxQixFQUFFLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGFBQWEsQ0FBQyxLQUFhO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGtCQUFrQjtRQUNoQixPQUFPLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0gsS0FBSyxDQUFDLFFBQVEsQ0FBQyxLQUFhO1FBQzFCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekQsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNkLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQixDQUFDO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzs4R0F2RW1CLDRCQUE0QjtrSEFBNUIsNEJBQTRCOzsyRkFBNUIsNEJBQTRCO2tCQURqRCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZmlsZSBEZWZpbmVzIHRoZSBhYnN0cmFjdCBiYXNlIGNsYXNzIGZvciB0aGVtaW5nIHByb3ZpZGVycyBpbiBBbmd1bGFyLFxuICogZGVzaWduZWQgdG8gaW50ZWdyYXRlIHdpdGggVUk1IFdlYiBDb21wb25lbnRzJyB0aGVtZSBtYW5hZ2VtZW50LlxuICpcbiAqIFRoaXMgcHJvdmlkZXIgcmVnaXN0ZXJzIGl0c2VsZiB3aXRoIGEgZ2xvYmFsIHRoZW1pbmcgc2VydmljZSAoaWYgYXZhaWxhYmxlKSBhbmRcbiAqIG1hbmFnZXMgYSBsaXN0IG9mIHN1cHBvcnRlZCB0aGVtZXMsIGFsbG93aW5nIG90aGVyIHBhcnRzIG9mIHRoZSBhcHBsaWNhdGlvblxuICogdG8gcXVlcnkgdGhlbWUgc3VwcG9ydCBhbmQgYXBwbHkgdGhlbWVzIHRvIHRoZSB1bmRlcmx5aW5nIFVJNSBXZWIgQ29tcG9uZW50cy5cbiAqL1xuXG4vLyBiYXNlLXdlYmNvbXBvbmVudHMtdGhlbWluZy1wcm92aWRlci50c1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlLCBPbkRlc3Ryb3ksIHNpZ25hbCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBVaTVUaGVtaW5nU2VydmljZSB9IGZyb20gXCIuL3VpNS10aGVtaW5nLWFwaVwiO1xuaW1wb3J0IHsgVWk1VGhlbWluZ1Byb3ZpZGVyIH0gZnJvbSBcIi4vdWk1LXRoZW1pbmcubW9kZWxzXCI7XG5pbXBvcnQgc3VwcG9ydGVkVGhlbWVzIGZyb20gJy4vc3VwcG9ydGVkLXRoZW1lcyc7XG5pbXBvcnQgeyBzZXRUaGVtZSB9IGZyb20gJ0B1aTUvd2ViY29tcG9uZW50cy1iYXNlL2Rpc3QvY29uZmlnL1RoZW1lLmpzJztcblxuLyoqXG4gKiBAZGVzY3JpcHRpb25cbiAqIEFic3RyYWN0IGJhc2UgY2xhc3MgZm9yIFVJNSBXZWIgQ29tcG9uZW50cyB0aGVtaW5nIHByb3ZpZGVycy5cbiAqXG4gKiBDb21wb25lbnRzIGV4dGVuZGluZyB0aGlzIGNsYXNzIGFyZSByZXNwb25zaWJsZSBmb3IgcHJvdmlkaW5nIHRoZSBuZWNlc3NhcnkgdGhlbWUgcmVzb3VyY2VzXG4gKiAodmlhIHRoZSBgcmVnaXN0ZXJUaGVtZXNgIGNhbGxiYWNrKSBhbmQgZXhwb3NpbmcgdGhlIHN1cHBvcnRlZCB0aGVtZXMuIEl0IGludGVncmF0ZXNcbiAqIHdpdGggdGhlIGdsb2JhbCB7QGxpbmsgVWk1VGhlbWluZ1NlcnZpY2V9IHRvIG1ha2UgaXRzIHRoZW1lcyBhdmFpbGFibGUgYXBwbGljYXRpb24td2lkZS5cbiAqXG4gKiBAaW1wbGVtZW50cyB7VWk1VGhlbWluZ1Byb3ZpZGVyfVxuICogQGltcGxlbWVudHMge09uRGVzdHJveX1cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFdlYmNvbXBvbmVudHNUaGVtaW5nUHJvdmlkZXIgaW1wbGVtZW50cyBVaTVUaGVtaW5nUHJvdmlkZXIsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogVGhlIHVuaXF1ZSBuYW1lIGZvciB0aGlzIHRoZW1pbmcgcHJvdmlkZXIsIHdoaWNoIG11c3QgYmUgaW1wbGVtZW50ZWQgYnkgc3ViY2xhc3Nlcy5cbiAgICogVGhpcyBpcyB1c2VkIGJ5IHRoZSBnbG9iYWwge0BsaW5rIFVpNVRoZW1pbmdTZXJ2aWNlfSBmb3IgcmVnaXN0cmF0aW9uIGFuZCBpZGVudGlmaWNhdGlvbi5cbiAgICovXG4gIGFic3RyYWN0IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEEgc2lnbmFsIGNvbnRhaW5pbmcgdGhlIGxpc3Qgb2YgdGhlbWVzIHN1cHBvcnRlZCBieSB0aGlzIHByb3ZpZGVyLlxuICAgKiBJdCBpcyBpbml0aWFsaXplZCB3aXRoIHRoZSB0aGVtZXMgbG9hZGVkIGZyb20gdGhlIGBzdXBwb3J0ZWQtdGhlbWVzYCBmaWxlLlxuICAgKi9cbiAgcHJvdGVjdGVkIGF2YWlsYWJsZVRoZW1lcyA9IHNpZ25hbDxzdHJpbmdbXT4oc3VwcG9ydGVkVGhlbWVzKTtcbiAgXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogUmVmZXJlbmNlIHRvIHRoZSBnbG9iYWwge0BsaW5rIFVpNVRoZW1pbmdTZXJ2aWNlfSwgaW5qZWN0ZWQgb3B0aW9uYWxseS5cbiAgICogVGhlIHByb3ZpZGVyIHJlZ2lzdGVycyBpdHNlbGYgaGVyZSBpZiB0aGUgZ2xvYmFsIHNlcnZpY2UgaXMgYXZhaWxhYmxlLlxuICAgKi9cbiAgcHJvdGVjdGVkIF9nbG9iYWxUaGVtaW5nU2VydmljZTogVWk1VGhlbWluZ1NlcnZpY2UgfCBudWxsID0gaW5qZWN0KFVpNVRoZW1pbmdTZXJ2aWNlLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gIC8qKiBAaGlkZGVuICovXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgcmVnaXN0ZXJUaGVtZXM6ICgpID0+IFByb21pc2U8YW55PlxuICApIHtcbiAgICB0aGlzLnJlZ2lzdGVyVGhlbWVzKCkudGhlbigoKSA9PiB7XG4gICAgICB0aGlzLl9nbG9iYWxUaGVtaW5nU2VydmljZT8ucmVnaXN0ZXJQcm92aWRlcih0aGlzKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBAaGlkZGVuICovXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2dsb2JhbFRoZW1pbmdTZXJ2aWNlPy51bnJlZ2lzdGVyUHJvdmlkZXIodGhpcyk7XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIENoZWNrcyBpZiBhIHNwZWNpZmljIHRoZW1lIG5hbWUgaXMgc3VwcG9ydGVkIGJ5IHRoaXMgcHJvdmlkZXIuXG4gICAqIEBwYXJhbSB0aGVtZSBUaGUgbmFtZSBvZiB0aGUgdGhlbWUgdG8gY2hlY2sgKGUuZy4sICdzYXBfaG9yaXpvbicpLlxuICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHRoZW1lIGlzIHN1cHBvcnRlZCwgYGZhbHNlYCBvdGhlcndpc2UuXG4gICAqL1xuICBzdXBwb3J0c1RoZW1lKHRoZW1lOiBzdHJpbmcpOiBib29sZWFuIHwgUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuYXZhaWxhYmxlVGhlbWVzKCkuaW5jbHVkZXModGhlbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBSZXRyaWV2ZXMgdGhlIGxpc3Qgb2YgdGhlbWUgbmFtZXMgc3VwcG9ydGVkIGJ5IHRoaXMgcHJvdmlkZXIuXG4gICAqIEByZXR1cm5zIEFuIGFycmF5IG9mIHN1cHBvcnRlZCB0aGVtZSBuYW1lcy5cbiAgICovXG4gIGdldEF2YWlsYWJsZVRoZW1lcygpOiBzdHJpbmdbXSB8IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICByZXR1cm4gdGhpcy5hdmFpbGFibGVUaGVtZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQXR0ZW1wdHMgdG8gc2V0IHRoZSBnaXZlbiB0aGVtZSBnbG9iYWxseSBmb3IgYWxsIFVJNSBXZWIgQ29tcG9uZW50cy5cbiAgICpcbiAgICogVGhlIHRoZW1lIGlzIG9ubHkgYXBwbGllZCBpZiBpdCBpcyBpbmNsdWRlZCBpbiB0aGUgbGlzdCBvZiBhdmFpbGFibGUgdGhlbWVzXG4gICAqIG1hbmFnZWQgYnkgdGhpcyBwcm92aWRlci5cbiAgICpcbiAgICogQHBhcmFtIHRoZW1lIFRoZSBuYW1lIG9mIHRoZSB0aGVtZSB0byBhcHBseS5cbiAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gYHRydWVgIGlmIHRoZSB0aGVtZSB3YXMgYXBwbGllZCwgb3IgYGZhbHNlYCBpZiB0aGUgdGhlbWUgaXMgbm90IHN1cHBvcnRlZC5cbiAgICovXG4gIGFzeW5jIHNldFRoZW1lKHRoZW1lOiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBzdXBwb3J0ZWQgPSB0aGlzLmF2YWlsYWJsZVRoZW1lcygpLmluY2x1ZGVzKHRoZW1lKTtcbiAgICBpZiAoc3VwcG9ydGVkKSB7XG4gICAgICBzZXRUaGVtZSh0aGVtZSk7XG4gICAgfVxuICAgIHJldHVybiBzdXBwb3J0ZWQ7XG4gIH1cbn1cbiJdfQ==","import { Injectable } from \"@angular/core\";\nimport { WebcomponentsThemingProvider } from \"./base-webcomponents-theming-provider\";\nimport * as i0 from \"@angular/core\";\n/**\n * Theming service specifically for the ui5/webcomponents-ngx components.\n */\nexport class Ui5WebcomponentsThemingService extends WebcomponentsThemingProvider {\n /** @hidden */\n constructor() {\n super(() => import('@ui5/webcomponents-theming/dist/generated/json-imports/Themes.js'));\n this.name = 'ui5-webcomponents-theming-service';\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: Ui5WebcomponentsThemingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: Ui5WebcomponentsThemingService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: Ui5WebcomponentsThemingService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root'\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWluZy1hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3VpNS13ZWJjb21wb25lbnRzLWJhc2UvdGhlbWluZy90aGVtaW5nLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDOztBQUVyRjs7R0FFRztBQUlILE1BQU0sT0FBTyw4QkFBK0IsU0FBUSw0QkFBNEI7SUFHOUUsY0FBYztJQUNkO1FBQ0UsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxrRUFBa0UsQ0FBQyxDQUFDLENBQUM7UUFKMUYsU0FBSSxHQUFHLG1DQUFtQyxDQUFDO0lBSzNDLENBQUM7OEdBTlUsOEJBQThCO2tIQUE5Qiw4QkFBOEIsY0FGN0IsTUFBTTs7MkZBRVAsOEJBQThCO2tCQUgxQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgV2ViY29tcG9uZW50c1RoZW1pbmdQcm92aWRlciB9IGZyb20gXCIuL2Jhc2Utd2ViY29tcG9uZW50cy10aGVtaW5nLXByb3ZpZGVyXCI7XG5cbi8qKlxuICogVGhlbWluZyBzZXJ2aWNlIHNwZWNpZmljYWxseSBmb3IgdGhlIHVpNS93ZWJjb21wb25lbnRzLW5neCBjb21wb25lbnRzLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBVaTVXZWJjb21wb25lbnRzVGhlbWluZ1NlcnZpY2UgZXh0ZW5kcyBXZWJjb21wb25lbnRzVGhlbWluZ1Byb3ZpZGVyIHtcbiAgbmFtZSA9ICd1aTUtd2ViY29tcG9uZW50cy10aGVtaW5nLXNlcnZpY2UnO1xuXG4gIC8qKiBAaGlkZGVuICovXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCgpID0+IGltcG9ydCgnQHVpNS93ZWJjb21wb25lbnRzLXRoZW1pbmcvZGlzdC9nZW5lcmF0ZWQvanNvbi1pbXBvcnRzL1RoZW1lcy5qcycpKTtcbiAgfVxufVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuZGFtZW50YWwtbmd4LXVpNS13ZWJjb21wb25lbnRzLWJhc2UtdGhlbWluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvdWk1LXdlYmNvbXBvbmVudHMtYmFzZS90aGVtaW5nL2Z1bmRhbWVudGFsLW5neC11aTUtd2ViY29tcG9uZW50cy1iYXNlLXRoZW1pbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0="],"names":[],"mappings":";;;;AACY,MAAC,yBAAyB,GAAG,IAAI,cAAc,CAAC,mCAAmC;;ACD/F;AAIO,MAAM,iBAAiB,CAAC;AAC/B,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,MAAM;AAC9C,YAAY,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE;AAC/C,YAAY,MAAM,YAAY,GAAG,IAAI,GAAG,EAAE;AAC1C;AACA,YAAY,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;AAC9C,gBAAgB,MAAM,MAAM,GAAG,QAAQ,CAAC,kBAAkB,EAAE;AAC5D,gBAAgB,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;AAC3C,oBAAoB,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACpE,gBAAgB;AAChB,qBAAqB;AACrB;AACA;AACA,gBAAgB;AAChB,YAAY;AACZ,YAAY,OAAO,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;AAC7C,QAAQ,CAAC,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACpE,QAAQ,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,yBAAyB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5E,QAAQ,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,EAAE,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACzF,QAAQ,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,IAAI,aAAa,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACxI,QAAQ,MAAM,CAAC,YAAY;AAC3B,YAAY,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE;AACjD,YAAY,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE;AAC/C,YAAY,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;AACxC,gBAAgB;AAChB,YAAY;AACZ,YAAY,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,QAAQ,KAAK;AAChF,gBAAgB,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;AAC1E,gBAAgB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE;AAChD,YAAY,CAAC,CAAC,CAAC;AACf,YAAY,MAAM,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC;AAC5E,YAAY,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,EAAE,EAAE;AAChE,gBAAgB,OAAO,CAAC,IAAI,CAAC,CAAC,kDAAkD,EAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,oBAAoB,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC1J,YAAY;AACZ,YAAY,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;AACpH,QAAQ,CAAC,CAAC;AACV,IAAI;AACJ,IAAI,kBAAkB,GAAG;AACzB,QAAQ,OAAO,IAAI,CAAC,eAAe,EAAE;AACrC,IAAI;AACJ,IAAI,aAAa,CAAC,SAAS,EAAE;AAC7B,QAAQ,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AAC1E,IAAI;AACJ,IAAI,gBAAgB,CAAC,QAAQ,EAAE;AAC/B,QAAQ,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE;AAC3C,QAAQ,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;AAC3C,YAAY,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,gBAAgB,IAAI,CAAC,GAAG,gBAAgB,EAAE,QAAQ,CAAC,CAAC;AACvF,QAAQ;AACR,IAAI;AACJ,IAAI,kBAAkB,CAAC,QAAQ,EAAE;AACjC,QAAQ,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,CAAC;AAChG,IAAI;AACJ,IAAI,QAAQ,CAAC,KAAK,EAAE;AACpB,QAAQ,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC;AACrC,QAAQ,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;AACpC,IAAI;AACJ,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC;AACpL,IAAI,SAAS,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;AAC3J;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC;AAC3H,YAAY,IAAI,EAAE,UAAU;AAC5B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,UAAU,EAAE;AAChC,iBAAiB;AACjB,SAAS,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,CAAC;;ACrEvC,sBAAe,CAAC,6GAA6G,EAAE,kHAAkH,EAAE,iHAAiH,EAAE,iHAAiH,EAAE,6GAA6G,EAAE,kHAAkH,EAAE,iHAAiH,EAAE,iHAAiH,CAAC;;ACAj6B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAM,4BAA4B,CAAC;AAC1C;AACA,IAAI,WAAW,CAAC,cAAc,EAAE;AAChC,QAAQ,IAAI,CAAC,cAAc,GAAG,cAAc;AAC5C;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAChH;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAI,CAAC,qBAAqB,GAAG,MAAM,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAClF,QAAQ,IAAI,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,MAAM;AACzC,YAAY,IAAI,CAAC,qBAAqB,EAAE,gBAAgB,CAAC,IAAI,CAAC;AAC9D,QAAQ,CAAC,CAAC;AACV,IAAI;AACJ;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,qBAAqB,EAAE,kBAAkB,CAAC,IAAI,CAAC;AAC5D,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,aAAa,CAAC,KAAK,EAAE;AACzB,QAAQ,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC;AACrD,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA,IAAI,kBAAkB,GAAG;AACzB,QAAQ,OAAO,IAAI,CAAC,eAAe,EAAE;AACrC,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,MAAM,QAAQ,CAAC,KAAK,EAAE;AAC1B,QAAQ,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC;AAChE,QAAQ,IAAI,SAAS,EAAE;AACvB,YAAY,QAAQ,CAAC,KAAK,CAAC;AAC3B,QAAQ;AACR,QAAQ,OAAO,SAAS;AACxB,IAAI;AACJ,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC;AACtM,IAAI,SAAS,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE,CAAC,CAAC;AAClJ;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE,UAAU,EAAE,CAAC;AACtI,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;;ACrF1D;AACA;AACA;AACO,MAAM,8BAA8B,SAAS,4BAA4B,CAAC;AACjF;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,KAAK,CAAC,MAAM,OAAO,kEAAkE,CAAC,CAAC;AAC/F,QAAQ,IAAI,CAAC,IAAI,GAAG,mCAAmC;AACvD,IAAI;AACJ,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,8BAA8B,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC;AACjM,IAAI,SAAS,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,8BAA8B,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;AACxK;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,8BAA8B,EAAE,UAAU,EAAE,CAAC;AACxI,YAAY,IAAI,EAAE,UAAU;AAC5B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,UAAU,EAAE;AAChC,iBAAiB;AACjB,SAAS,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,CAAC;;ACpBvC;AACA;AACA;;;;"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export { default as AnimationMode } from '@ui5/webcomponents-base/dist/types/AnimationMode.js';
|
|
2
|
+
export { default as CalendarType } from '@ui5/webcomponents-base/dist/types/CalendarType.js';
|
|
3
|
+
export { default as ItemNavigationBehavior } from '@ui5/webcomponents-base/dist/types/ItemNavigationBehavior.js';
|
|
4
|
+
export { default as MovePlacement } from '@ui5/webcomponents-base/dist/types/MovePlacement.js';
|
|
5
|
+
export { default as NavigationMode } from '@ui5/webcomponents-base/dist/types/NavigationMode.js';
|
|
6
|
+
export { default as SortOrder } from '@ui5/webcomponents-base/dist/types/SortOrder.js';
|
|
7
|
+
export { default as ValueState } from '@ui5/webcomponents-base/dist/types/ValueState.js';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Generated bundle index. Do not edit.
|
|
11
|
+
*/
|
|
12
|
+
//# sourceMappingURL=fundamental-ngx-ui5-webcomponents-base-types.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-base-types.mjs","sources":["../tmp-esm2022/types/fundamental-ngx-ui5-webcomponents-base-types.js"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuZGFtZW50YWwtbmd4LXVpNS13ZWJjb21wb25lbnRzLWJhc2UtdHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3VpNS13ZWJjb21wb25lbnRzLWJhc2UvdHlwZXMvZnVuZGFtZW50YWwtbmd4LXVpNS13ZWJjb21wb25lbnRzLWJhc2UtdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0="],"names":[],"mappings":";;;;;;;;AAAA;AACA;AACA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export { default as AnimationMode } from '@ui5/webcomponents-base/dist/types/AnimationMode.js';
|
|
2
|
+
export { default as CalendarType } from '@ui5/webcomponents-base/dist/types/CalendarType.js';
|
|
3
|
+
export { default as ItemNavigationBehavior } from '@ui5/webcomponents-base/dist/types/ItemNavigationBehavior.js';
|
|
4
|
+
export { default as MovePlacement } from '@ui5/webcomponents-base/dist/types/MovePlacement.js';
|
|
5
|
+
export { default as NavigationMode } from '@ui5/webcomponents-base/dist/types/NavigationMode.js';
|
|
6
|
+
export { default as SortOrder } from '@ui5/webcomponents-base/dist/types/SortOrder.js';
|
|
7
|
+
export { default as ValueState } from '@ui5/webcomponents-base/dist/types/ValueState.js';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Generated bundle index. Do not edit.
|
|
11
|
+
*/
|
|
12
|
+
//# sourceMappingURL=fundamental-ngx-ui5-webcomponents-base.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-base.mjs","sources":["../tmp-esm2022/fundamental-ngx-ui5-webcomponents-base.js"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuZGFtZW50YWwtbmd4LXVpNS13ZWJjb21wb25lbnRzLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL3VpNS13ZWJjb21wb25lbnRzLWJhc2UvZnVuZGFtZW50YWwtbmd4LXVpNS13ZWJjb21wb25lbnRzLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0="],"names":[],"mappings":";;;;;;;;AAAA;AACA;AACA"}
|
package/index.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { default as AnimationMode } from '@ui5/webcomponents-base/dist/types/AnimationMode.js';
|
|
2
|
+
export { default as CalendarType } from '@ui5/webcomponents-base/dist/types/CalendarType.js';
|
|
3
|
+
export { default as ItemNavigationBehavior } from '@ui5/webcomponents-base/dist/types/ItemNavigationBehavior.js';
|
|
4
|
+
export { default as MovePlacement } from '@ui5/webcomponents-base/dist/types/MovePlacement.js';
|
|
5
|
+
export { default as NavigationMode } from '@ui5/webcomponents-base/dist/types/NavigationMode.js';
|
|
6
|
+
export { default as SortOrder } from '@ui5/webcomponents-base/dist/types/SortOrder.js';
|
|
7
|
+
export { default as ValueState } from '@ui5/webcomponents-base/dist/types/ValueState.js';
|
package/package.json
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@fundamental-ngx/ui5-webcomponents-base",
|
|
3
|
+
"version": "0.58.0-rc.1",
|
|
4
|
+
"schematics": "./schematics/collection.json",
|
|
5
|
+
"description": "Fundamental Library for Angular - UI5 Webcomponents Base",
|
|
6
|
+
"license": "Apache-2.0",
|
|
7
|
+
"homepage": "https://sap.github.io/fundamental-ngx",
|
|
8
|
+
"repository": {
|
|
9
|
+
"type": "git",
|
|
10
|
+
"url": "https://github.com/SAP/fundamental-ngx"
|
|
11
|
+
},
|
|
12
|
+
"engine": {
|
|
13
|
+
"node": ">= 10"
|
|
14
|
+
},
|
|
15
|
+
"peerDependencies": {
|
|
16
|
+
"@angular/animations": "^20.0.0",
|
|
17
|
+
"@angular/cdk": "^20.0.0",
|
|
18
|
+
"@angular/common": "^20.0.0",
|
|
19
|
+
"@angular/core": "^20.0.0",
|
|
20
|
+
"@angular/forms": "^20.0.0",
|
|
21
|
+
"@angular/platform-browser": "^20.0.0",
|
|
22
|
+
"@angular/router": "^20.0.0",
|
|
23
|
+
"fundamental-styles": "0.40.1",
|
|
24
|
+
"rxjs": "^7.8.0"
|
|
25
|
+
},
|
|
26
|
+
"dependencies": {
|
|
27
|
+
"compare-versions": "^6.1.0",
|
|
28
|
+
"fast-deep-equal": "3.1.3",
|
|
29
|
+
"lodash-es": "^4.17.0",
|
|
30
|
+
"tslib": "^2.0.0"
|
|
31
|
+
},
|
|
32
|
+
"ng-add": {
|
|
33
|
+
"save": "dependencies"
|
|
34
|
+
},
|
|
35
|
+
"module": "fesm2022/fundamental-ngx-ui5-webcomponents-base.mjs",
|
|
36
|
+
"typings": "index.d.ts",
|
|
37
|
+
"exports": {
|
|
38
|
+
"./package.json": {
|
|
39
|
+
"default": "./package.json"
|
|
40
|
+
},
|
|
41
|
+
".": {
|
|
42
|
+
"types": "./index.d.ts",
|
|
43
|
+
"default": "./fesm2022/fundamental-ngx-ui5-webcomponents-base.mjs"
|
|
44
|
+
},
|
|
45
|
+
"./theming": {
|
|
46
|
+
"types": "./theming/index.d.ts",
|
|
47
|
+
"default": "./fesm2022/fundamental-ngx-ui5-webcomponents-base-theming.mjs"
|
|
48
|
+
},
|
|
49
|
+
"./types": {
|
|
50
|
+
"types": "./types/index.d.ts",
|
|
51
|
+
"default": "./fesm2022/fundamental-ngx-ui5-webcomponents-base-types.mjs"
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
"sideEffects": false
|
|
55
|
+
}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { InjectionToken, OnDestroy } from '@angular/core';
|
|
3
|
+
|
|
4
|
+
interface ThemingConfig {
|
|
5
|
+
defaultTheme: string;
|
|
6
|
+
}
|
|
7
|
+
declare const UI5_THEMING_CONFIGURATION: InjectionToken<ThemingConfig>;
|
|
8
|
+
interface Ui5ThemingProvider {
|
|
9
|
+
name: string;
|
|
10
|
+
getAvailableThemes(): string[] | Promise<string[]>;
|
|
11
|
+
supportsTheme(themeName: string): boolean | Promise<boolean>;
|
|
12
|
+
setTheme(themeName: string): Promise<boolean>;
|
|
13
|
+
}
|
|
14
|
+
interface Ui5ThemingConsumer extends Omit<Ui5ThemingProvider, 'name'> {
|
|
15
|
+
registerProvider(provider: Ui5ThemingProvider): void;
|
|
16
|
+
unregisterProvider(provider: Ui5ThemingProvider): void;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
declare class Ui5ThemingService implements Ui5ThemingConsumer {
|
|
20
|
+
readonly availableThemes: i0.Signal<string[]>;
|
|
21
|
+
private readonly _config;
|
|
22
|
+
private readonly _providers;
|
|
23
|
+
private readonly _currentTheme;
|
|
24
|
+
constructor();
|
|
25
|
+
getAvailableThemes(): string[];
|
|
26
|
+
supportsTheme(themeName: string): Promise<boolean>;
|
|
27
|
+
registerProvider(provider: Ui5ThemingProvider): void;
|
|
28
|
+
unregisterProvider(provider: Ui5ThemingProvider): void;
|
|
29
|
+
setTheme(theme: string): Promise<boolean>;
|
|
30
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<Ui5ThemingService, never>;
|
|
31
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<Ui5ThemingService>;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* @description
|
|
36
|
+
* Abstract base class for UI5 Web Components theming providers.
|
|
37
|
+
*
|
|
38
|
+
* Components extending this class are responsible for providing the necessary theme resources
|
|
39
|
+
* (via the `registerThemes` callback) and exposing the supported themes. It integrates
|
|
40
|
+
* with the global {@link Ui5ThemingService} to make its themes available application-wide.
|
|
41
|
+
*
|
|
42
|
+
* @implements {Ui5ThemingProvider}
|
|
43
|
+
* @implements {OnDestroy}
|
|
44
|
+
*/
|
|
45
|
+
declare abstract class WebcomponentsThemingProvider implements Ui5ThemingProvider, OnDestroy {
|
|
46
|
+
protected registerThemes: () => Promise<any>;
|
|
47
|
+
/**
|
|
48
|
+
* @description
|
|
49
|
+
* The unique name for this theming provider, which must be implemented by subclasses.
|
|
50
|
+
* This is used by the global {@link Ui5ThemingService} for registration and identification.
|
|
51
|
+
*/
|
|
52
|
+
abstract name: string;
|
|
53
|
+
/**
|
|
54
|
+
* @description
|
|
55
|
+
* A signal containing the list of themes supported by this provider.
|
|
56
|
+
* It is initialized with the themes loaded from the `supported-themes` file.
|
|
57
|
+
*/
|
|
58
|
+
protected availableThemes: i0.WritableSignal<string[]>;
|
|
59
|
+
/**
|
|
60
|
+
* @description
|
|
61
|
+
* Reference to the global {@link Ui5ThemingService}, injected optionally.
|
|
62
|
+
* The provider registers itself here if the global service is available.
|
|
63
|
+
*/
|
|
64
|
+
protected _globalThemingService: Ui5ThemingService | null;
|
|
65
|
+
/** @hidden */
|
|
66
|
+
protected constructor(registerThemes: () => Promise<any>);
|
|
67
|
+
/** @hidden */
|
|
68
|
+
ngOnDestroy(): void;
|
|
69
|
+
/**
|
|
70
|
+
* @description
|
|
71
|
+
* Checks if a specific theme name is supported by this provider.
|
|
72
|
+
* @param theme The name of the theme to check (e.g., 'sap_horizon').
|
|
73
|
+
* @returns `true` if the theme is supported, `false` otherwise.
|
|
74
|
+
*/
|
|
75
|
+
supportsTheme(theme: string): boolean | Promise<boolean>;
|
|
76
|
+
/**
|
|
77
|
+
* @description
|
|
78
|
+
* Retrieves the list of theme names supported by this provider.
|
|
79
|
+
* @returns An array of supported theme names.
|
|
80
|
+
*/
|
|
81
|
+
getAvailableThemes(): string[] | Promise<string[]>;
|
|
82
|
+
/**
|
|
83
|
+
* @description
|
|
84
|
+
* Attempts to set the given theme globally for all UI5 Web Components.
|
|
85
|
+
*
|
|
86
|
+
* The theme is only applied if it is included in the list of available themes
|
|
87
|
+
* managed by this provider.
|
|
88
|
+
*
|
|
89
|
+
* @param theme The name of the theme to apply.
|
|
90
|
+
* @returns A promise that resolves to `true` if the theme was applied, or `false` if the theme is not supported.
|
|
91
|
+
*/
|
|
92
|
+
setTheme(theme: string): Promise<boolean>;
|
|
93
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<WebcomponentsThemingProvider, never>;
|
|
94
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<WebcomponentsThemingProvider>;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Theming service specifically for the ui5/webcomponents-ngx components.
|
|
99
|
+
*/
|
|
100
|
+
declare class Ui5WebcomponentsThemingService extends WebcomponentsThemingProvider {
|
|
101
|
+
name: string;
|
|
102
|
+
/** @hidden */
|
|
103
|
+
constructor();
|
|
104
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<Ui5WebcomponentsThemingService, never>;
|
|
105
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<Ui5WebcomponentsThemingService>;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
export { UI5_THEMING_CONFIGURATION, Ui5ThemingService, Ui5WebcomponentsThemingService, WebcomponentsThemingProvider };
|
|
109
|
+
export type { ThemingConfig, Ui5ThemingConsumer, Ui5ThemingProvider };
|
package/types/index.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { default as AnimationMode } from '@ui5/webcomponents-base/dist/types/AnimationMode.js';
|
|
2
|
+
export { default as CalendarType } from '@ui5/webcomponents-base/dist/types/CalendarType.js';
|
|
3
|
+
export { default as ItemNavigationBehavior } from '@ui5/webcomponents-base/dist/types/ItemNavigationBehavior.js';
|
|
4
|
+
export { default as MovePlacement } from '@ui5/webcomponents-base/dist/types/MovePlacement.js';
|
|
5
|
+
export { default as NavigationMode } from '@ui5/webcomponents-base/dist/types/NavigationMode.js';
|
|
6
|
+
export { default as SortOrder } from '@ui5/webcomponents-base/dist/types/SortOrder.js';
|
|
7
|
+
export { default as ValueState } from '@ui5/webcomponents-base/dist/types/ValueState.js';
|