@c8y/ngx-components 1021.78.2 → 1021.78.5
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/branding/shared/shared-branding.module.d.ts.map +1 -1
- package/esm2022/branding/shared/shared-branding.module.mjs +7 -2
- package/esm2022/messaging-management/messaging-management-preview.factory.mjs +33 -0
- package/esm2022/messaging-management/messaging-management.module.mjs +5 -18
- package/fesm2022/c8y-ngx-components-branding-shared.mjs +6 -1
- package/fesm2022/c8y-ngx-components-branding-shared.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-messaging-management.mjs +31 -16
- package/fesm2022/c8y-ngx-components-messaging-management.mjs.map +1 -1
- package/messaging-management/messaging-management-preview.factory.d.ts +16 -0
- package/messaging-management/messaging-management-preview.factory.d.ts.map +1 -0
- package/messaging-management/messaging-management.module.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared-branding.module.d.ts","sourceRoot":"","sources":["../../../branding/shared/shared-branding.module.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,EAIL,MAAM,EACP,MAAM,iBAAiB,CAAC;;;AAUzB,eAAO,MAAM,0BAA0B,EAAE,KAAK,EAsB7C,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"shared-branding.module.d.ts","sourceRoot":"","sources":["../../../branding/shared/shared-branding.module.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,EAIL,MAAM,EACP,MAAM,iBAAiB,CAAC;;;AAUzB,eAAO,MAAM,0BAA0B,EAAE,KAAK,EAsB7C,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,MAsE9B,CAAC;AAEF,qBAQa,oBAAoB;yCAApB,oBAAoB;0CAApB,oBAAoB;0CAApB,oBAAoB;CAAG"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { NgModule, inject } from '@angular/core';
|
|
2
2
|
import { RouterModule } from '@angular/router';
|
|
3
3
|
import { SupportsBrandingService } from './supports-branding.service';
|
|
4
|
-
import { hookNavigator, HookProviderTypes, hookTab } from '@c8y/ngx-components';
|
|
4
|
+
import { AppStateService, hookNavigator, HookProviderTypes, hookTab } from '@c8y/ngx-components';
|
|
5
5
|
import { BrandingTabFactory, lightThemeTabName, genericTabName } from './branding-tab.factory';
|
|
6
6
|
import { StoreBrandingService } from '@c8y/ngx-components/branding/shared/data';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
@@ -51,6 +51,11 @@ export const BRANDING_ROUTING = [
|
|
|
51
51
|
fallbackBranding: (async (_route, _state) => {
|
|
52
52
|
try {
|
|
53
53
|
const store = inject(StoreBrandingService);
|
|
54
|
+
const appState = inject(AppStateService);
|
|
55
|
+
// management tenant should be free to change what every they want, so we do not provide a fallback branding
|
|
56
|
+
if (appState.currentTenant.value?.name === 'management') {
|
|
57
|
+
return {};
|
|
58
|
+
}
|
|
54
59
|
const fallbackBranding = await store.getBrandingOptionsForVersion('fallback');
|
|
55
60
|
return fallbackBranding;
|
|
56
61
|
}
|
|
@@ -107,4 +112,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
107
112
|
]
|
|
108
113
|
}]
|
|
109
114
|
}] });
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLWJyYW5kaW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2JyYW5kaW5nL3NoYXJlZC9zaGFyZWQtYnJhbmRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFDTCxZQUFZLEVBTWIsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDL0YsT0FBTyxFQUdMLG9CQUFvQixFQUNyQixNQUFNLDBDQUEwQyxDQUFDOzs7QUFFbEQsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQVk7SUFDakQ7UUFDRSxJQUFJLEVBQUUsRUFBRTtRQUNSLFNBQVMsRUFBRSxNQUFNO1FBQ2pCLFVBQVUsRUFBRSxTQUFTO0tBQ3RCO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsU0FBUztRQUNmLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FDbEIsTUFBTSxDQUFDLDBDQUEwQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDO1FBQ3ZGLElBQUksRUFBRTtZQUNKLE9BQU8sRUFBRSxjQUFjO1NBQ3hCO0tBQ0Y7SUFDRDtRQUNFLElBQUksRUFBRSxPQUFPO1FBQ2IsYUFBYSxFQUFFLEdBQUcsRUFBRSxDQUNsQixNQUFNLENBQUMsMENBQTBDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsMEJBQTBC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QUFDO0FBVUYsTUFBTSxPQUFPLG9CQUFvQjsrR0FBcEIsb0JBQW9CO2dIQUFwQixvQkFBb0I7Z0hBQXBCLG9CQUFvQixhQU5wQjtZQUNULHNKQUFzSjtZQUN0SixhQUFhLENBQUMsdUJBQXVCLEVBQUUsRUFBRSxZQUFZLEVBQUUsaUJBQWlCLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUM1RixPQUFPLENBQUMsa0JBQWtCLENBQUM7U0FDNUIsWUFMUyxZQUFZLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDOzs0RkFPdEMsb0JBQW9CO2tCQVJoQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztvQkFDbEQsU0FBUyxFQUFFO3dCQUNULHNKQUFzSjt3QkFDdEosYUFBYSxDQUFDLHVCQUF1QixFQUFFLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixDQUFDLGdCQUFnQixFQUFFLENBQUM7d0JBQzVGLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQztxQkFDNUI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBSb3V0ZXJNb2R1bGUsXG4gIFJvdXRlLFxuICBSb3V0ZXJTdGF0ZVNuYXBzaG90LFxuICBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LFxuICBSZXNvbHZlRm4sXG4gIFJvdXRlc1xufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU3VwcG9ydHNCcmFuZGluZ1NlcnZpY2UgfSBmcm9tICcuL3N1cHBvcnRzLWJyYW5kaW5nLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBwU3RhdGVTZXJ2aWNlLCBob29rTmF2aWdhdG9yLCBIb29rUHJvdmlkZXJUeXBlcywgaG9va1RhYiB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgQnJhbmRpbmdUYWJGYWN0b3J5LCBsaWdodFRoZW1lVGFiTmFtZSwgZ2VuZXJpY1RhYk5hbWUgfSBmcm9tICcuL2JyYW5kaW5nLXRhYi5mYWN0b3J5JztcbmltcG9ydCB7XG4gIEJyYW5kaW5nRmlsZURldGFpbHMsXG4gIEJyYW5kaW5nT3B0aW9uc0pzb24sXG4gIFN0b3JlQnJhbmRpbmdTZXJ2aWNlXG59IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvYnJhbmRpbmcvc2hhcmVkL2RhdGEnO1xuXG5leHBvcnQgY29uc3QgQlJBTkRJTkdfRURJVF9DSElMRF9ST1VURVM6IFJvdXRlW10gPSBbXG4gIHtcbiAgICBwYXRoOiAnJyxcbiAgICBwYXRoTWF0Y2g6ICdmdWxsJyxcbiAgICByZWRpcmVjdFRvOiAnZ2VuZXJpYydcbiAgfSxcbiAge1xuICAgIHBhdGg6ICdnZW5lcmljJyxcbiAgICBsb2FkQ29tcG9uZW50OiAoKSA9PlxuICAgICAgaW1wb3J0KCdAYzh5L25neC1jb21wb25lbnRzL2JyYW5kaW5nL3NoYXJlZC9sYXp5JykudGhlbihtID0+IG0uQnJhbmRpbmdGb3JtQ29tcG9uZW50KSxcbiAgICBkYXRhOiB7XG4gICAgICB0YWJOYW1lOiBnZW5lcmljVGFiTmFtZVxuICAgIH1cbiAgfSxcbiAge1xuICAgIHBhdGg6ICdsaWdodCcsXG4gICAgbG9hZENvbXBvbmVudDogKCkgPT5cbiAgICAgIGltcG9ydCgnQGM4eS9uZ3gtY29tcG9uZW50cy9icmFuZGluZy9zaGFyZWQvbGF6eScpLnRoZW4obSA9PiBtLkJyYW5kaW5nVGhlbWVGb3JtQ29tcG9uZW50KSxcbiAgICBkYXRhOiB7XG4gICAgICB0YWJOYW1lOiBsaWdodFRoZW1lVGFiTmFtZVxuICAgIH1cbiAgfVxuXTtcblxuZXhwb3J0IGNvbnN0IEJSQU5ESU5HX1JPVVRJTkc6IFJvdXRlcyA9IFtcbiAge1xuICAgIHBhdGg6ICdicmFuZGluZy1lZGl0b3InLFxuICAgIGNhbkFjdGl2YXRlOiBbU3VwcG9ydHNCcmFuZGluZ1NlcnZpY2VdLFxuICAgIGNoaWxkcmVuOiBbXG4gICAgICB7XG4gICAgICAgIHBhdGg6ICcnLFxuICAgICAgICBwYXRoTWF0Y2g6ICdmdWxsJyxcbiAgICAgICAgbG9hZENvbXBvbmVudDogKCkgPT5cbiAgICAgICAgICBpbXBvcnQoJ0BjOHkvbmd4LWNvbXBvbmVudHMvYnJhbmRpbmcvc2hhcmVkL2xhenknKS50aGVuKG0gPT4gbS5CcmFuZGluZ0NvbXBvbmVudClcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHBhdGg6ICc6bmFtZScsXG4gICAgICAgIHJlc29sdmU6IHtcbiAgICAgICAgICBicmFuZGluZzogKChyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgX3N0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90KSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gaW5qZWN0KFN0b3JlQnJhbmRpbmdTZXJ2aWNlKS5nZXRCcmFuZGluZ09wdGlvbnNGb3JWZXJzaW9uKHJvdXRlLnBhcmFtcy5uYW1lKTtcbiAgICAgICAgICB9KSBhcyBSZXNvbHZlRm48QnJhbmRpbmdGaWxlRGV0YWlsc1tdPixcbiAgICAgICAgICB0YWdzOiAoYXN5bmMgKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBfc3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHN0b3JlID0gaW5qZWN0KFN0b3JlQnJhbmRpbmdTZXJ2aWNlKTtcbiAgICAgICAgICAgIGNvbnN0IHsgdmFyaWFudHMgfSA9IGF3YWl0IHN0b3JlLmxvYWRCcmFuZGluZ1ZhcmlhbnRzKCk7XG4gICAgICAgICAgICByZXR1cm4gdmFyaWFudHMuZmluZCh2ID0+IHY/LnRhZ3M/LmluY2x1ZGVzKHJvdXRlLnBhcmFtcy5uYW1lKSk/LnRhZ3M7XG4gICAgICAgICAgfSkgYXMgUmVzb2x2ZUZuPHN0cmluZ1tdPixcbiAgICAgICAgICBmYWxsYmFja0JyYW5kaW5nOiAoYXN5bmMgKFxuICAgICAgICAgICAgX3JvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LFxuICAgICAgICAgICAgX3N0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90XG4gICAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICBjb25zdCBzdG9yZSA9IGluamVjdChTdG9yZUJyYW5kaW5nU2VydmljZSk7XG4gICAgICAgICAgICAgIGNvbnN0IGFwcFN0YXRlID0gaW5qZWN0KEFwcFN0YXRlU2VydmljZSk7XG4gICAgICAgICAgICAgIC8vIG1hbmFnZW1lbnQgdGVuYW50IHNob3VsZCBiZSBmcmVlIHRvIGNoYW5nZSB3aGF0IGV2ZXJ5IHRoZXkgd2FudCwgc28gd2UgZG8gbm90IHByb3ZpZGUgYSBmYWxsYmFjayBicmFuZGluZ1xuICAgICAgICAgICAgICBpZiAoYXBwU3RhdGUuY3VycmVudFRlbmFudC52YWx1ZT8ubmFtZSA9PT0gJ21hbmFnZW1lbnQnKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt9O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGNvbnN0IGZhbGxiYWNrQnJhbmRpbmcgPSBhd2FpdCBzdG9yZS5nZXRCcmFuZGluZ09wdGlvbnNGb3JWZXJzaW9uKCdmYWxsYmFjaycpO1xuICAgICAgICAgICAgICByZXR1cm4gZmFsbGJhY2tCcmFuZGluZztcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHt9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pIGFzIFJlc29sdmVGbjxCcmFuZGluZ09wdGlvbnNKc29uPlxuICAgICAgICB9LFxuICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHBhdGg6ICcnLFxuICAgICAgICAgICAgcGF0aE1hdGNoOiAnZnVsbCcsXG4gICAgICAgICAgICByZWRpcmVjdFRvOiAnZWRpdCdcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHBhdGg6ICdlZGl0JyxcbiAgICAgICAgICAgIGxvYWRDb21wb25lbnQ6ICgpID0+XG4gICAgICAgICAgICAgIGltcG9ydCgnQGM4eS9uZ3gtY29tcG9uZW50cy9icmFuZGluZy9zaGFyZWQvbGF6eScpLnRoZW4oXG4gICAgICAgICAgICAgICAgbSA9PiBtLkVkaXRCcmFuZGluZ1JvdXRlck91dGxldENvbXBvbmVudFxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgY2hpbGRyZW46IEJSQU5ESU5HX0VESVRfQ0hJTERfUk9VVEVTXG4gICAgICAgICAgfVxuICAgICAgICBdXG4gICAgICB9XG4gICAgXVxuICB9LFxuICAvLyBSZWRpcmVjdHMgZm9yIGxlZ2FjeSBwYXRocyBmcm9tIG9sZCBhbmd1bGFySlMgaW1wbGVtZW50YXRpb25cbiAgLy8gYWxsb3dzIHRvIGtlZXAgb2xkIGxpbmtzIHdvcmtpbmcgYW5kIHRvIHVzZSB0aGUgb2xkIGJyYW5kaW5nIG1hbmFnZXIgKGFzIGxvbmcgYXMgd2Ugc3RpbGwgc2hpcCBpdCkgd2hlbiB0aGUgbmV3IHBsdWdpbnMgYXJlIHJlbW92ZWQgZnJvbSBhZG1pbiBhcHBcbiAge1xuICAgIHBhdGg6ICdlbnRlcnByaXNlL2JyYW5kaW5nJyxcbiAgICBwYXRoTWF0Y2g6ICdmdWxsJyxcbiAgICByZWRpcmVjdFRvOiAnYnJhbmRpbmctZWRpdG9yJ1xuICB9LFxuICB7XG4gICAgcGF0aDogJ2JyYW5kaW5nJyxcbiAgICBwYXRoTWF0Y2g6ICdmdWxsJyxcbiAgICByZWRpcmVjdFRvOiAnYnJhbmRpbmctZWRpdG9yJ1xuICB9XG5dO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbUm91dGVyTW9kdWxlLmZvckNoaWxkKEJSQU5ESU5HX1JPVVRJTkcpXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgLy8gcHJvdmlkZXJUeXBlOiBIb29rUHJvdmlkZXJUeXBlcy5FeGlzdGluZ1Byb3ZpZGVyIGlzIHVzZWQgdG8gZW5zdXJlIHRoYXQgdGhlIGhvb2sgaXMgb25seSBhcHBsaWVkIG9uY2UgZXZlbiBpZiB0aGUgbW9kdWxlIGlzIGltcG9ydGVkIG11bHRpcGxlIHRpbWVzXG4gICAgaG9va05hdmlnYXRvcihTdXBwb3J0c0JyYW5kaW5nU2VydmljZSwgeyBwcm92aWRlclR5cGU6IEhvb2tQcm92aWRlclR5cGVzLkV4aXN0aW5nUHJvdmlkZXIgfSksXG4gICAgaG9va1RhYihCcmFuZGluZ1RhYkZhY3RvcnkpXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgU2hhcmVkQnJhbmRpbmdNb2R1bGUge31cbiJdfQ==
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { inject, Injectable } from '@angular/core';
|
|
2
|
+
import { ApplicationService } from '@c8y/client';
|
|
3
|
+
import { MESSAGING_MANAGEMENT_FEATURE_KEY, MESSAGING_MANAGEMENT_MICROSERVICE_NAME } from './constants';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class MessagingManagementPreviewFactory {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.applicationService = inject(ApplicationService);
|
|
8
|
+
}
|
|
9
|
+
async get() {
|
|
10
|
+
const microserviceSubscribed = await this.applicationService
|
|
11
|
+
.isAvailable(MESSAGING_MANAGEMENT_MICROSERVICE_NAME)
|
|
12
|
+
.then(({ data: subscribed }) => subscribed)
|
|
13
|
+
.catch(() => false);
|
|
14
|
+
if (!microserviceSubscribed) {
|
|
15
|
+
return null;
|
|
16
|
+
}
|
|
17
|
+
return {
|
|
18
|
+
key: MESSAGING_MANAGEMENT_FEATURE_KEY,
|
|
19
|
+
label: 'Messaging service - monitoring & management',
|
|
20
|
+
description: () => import('@c8y/style/markdown-files/messaging-management-preview.md').then(m => m.default),
|
|
21
|
+
settings: {
|
|
22
|
+
reload: true
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MessagingManagementPreviewFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
27
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MessagingManagementPreviewFactory, providedIn: 'root' }); }
|
|
28
|
+
}
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MessagingManagementPreviewFactory, decorators: [{
|
|
30
|
+
type: Injectable,
|
|
31
|
+
args: [{ providedIn: 'root' }]
|
|
32
|
+
}] });
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnaW5nLW1hbmFnZW1lbnQtcHJldmlldy5mYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbWVzc2FnaW5nLW1hbmFnZW1lbnQvbWVzc2FnaW5nLW1hbmFnZW1lbnQtcHJldmlldy5mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNqRCxPQUFPLEVBQ0wsZ0NBQWdDLEVBQ2hDLHNDQUFzQyxFQUN2QyxNQUFNLGFBQWEsQ0FBQzs7QUFHckIsTUFBTSxPQUFPLGlDQUFpQztJQUQ5QztRQUVtQix1QkFBa0IsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztLQXNCbEU7SUFwQkMsS0FBSyxDQUFDLEdBQUc7UUFDUCxNQUFNLHNCQUFzQixHQUFHLE1BQU0sSUFBSSxDQUFDLGtCQUFrQjthQUN6RCxXQUFXLENBQUMsc0NBQXNDLENBQUM7YUFDbkQsSUFBSSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQzthQUMxQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFdEIsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7WUFDNUIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsT0FBTztZQUNMLEdBQUcsRUFBRSxnQ0FBZ0M7WUFDckMsS0FBSyxFQUFFLDZDQUE2QztZQUNwRCxXQUFXLEVBQUUsR0FBRyxFQUFFLENBQ2hCLE1BQU0sQ0FBQywyREFBMkQsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7WUFDMUYsUUFBUSxFQUFFO2dCQUNSLE1BQU0sRUFBRSxJQUFJO2FBQ2I7U0FDRixDQUFDO0lBQ0osQ0FBQzsrR0F0QlUsaUNBQWlDO21IQUFqQyxpQ0FBaUMsY0FEcEIsTUFBTTs7NEZBQ25CLGlDQUFpQztrQkFEN0MsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJldGFGZWF0dXJlLCBFeHRlbnNpb25GYWN0b3J5IH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvblNlcnZpY2UgfSBmcm9tICdAYzh5L2NsaWVudCc7XG5pbXBvcnQge1xuICBNRVNTQUdJTkdfTUFOQUdFTUVOVF9GRUFUVVJFX0tFWSxcbiAgTUVTU0FHSU5HX01BTkFHRU1FTlRfTUlDUk9TRVJWSUNFX05BTUVcbn0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIE1lc3NhZ2luZ01hbmFnZW1lbnRQcmV2aWV3RmFjdG9yeSBpbXBsZW1lbnRzIEV4dGVuc2lvbkZhY3Rvcnk8QmV0YUZlYXR1cmU+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBhcHBsaWNhdGlvblNlcnZpY2UgPSBpbmplY3QoQXBwbGljYXRpb25TZXJ2aWNlKTtcblxuICBhc3luYyBnZXQoKSB7XG4gICAgY29uc3QgbWljcm9zZXJ2aWNlU3Vic2NyaWJlZCA9IGF3YWl0IHRoaXMuYXBwbGljYXRpb25TZXJ2aWNlXG4gICAgICAuaXNBdmFpbGFibGUoTUVTU0FHSU5HX01BTkFHRU1FTlRfTUlDUk9TRVJWSUNFX05BTUUpXG4gICAgICAudGhlbigoeyBkYXRhOiBzdWJzY3JpYmVkIH0pID0+IHN1YnNjcmliZWQpXG4gICAgICAuY2F0Y2goKCkgPT4gZmFsc2UpO1xuXG4gICAgaWYgKCFtaWNyb3NlcnZpY2VTdWJzY3JpYmVkKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAga2V5OiBNRVNTQUdJTkdfTUFOQUdFTUVOVF9GRUFUVVJFX0tFWSxcbiAgICAgIGxhYmVsOiAnTWVzc2FnaW5nIHNlcnZpY2UgLSBtb25pdG9yaW5nICYgbWFuYWdlbWVudCcsXG4gICAgICBkZXNjcmlwdGlvbjogKCkgPT5cbiAgICAgICAgaW1wb3J0KCdAYzh5L3N0eWxlL21hcmtkb3duLWZpbGVzL21lc3NhZ2luZy1tYW5hZ2VtZW50LXByZXZpZXcubWQnKS50aGVuKG0gPT4gbS5kZWZhdWx0KSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIHJlbG9hZDogdHJ1ZVxuICAgICAgfVxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
|
@@ -5,8 +5,9 @@ import { NamespaceListComponent } from './messaging/namespace-list/namespace-lis
|
|
|
5
5
|
import { TopicListViewComponent } from './messaging/topic/topic-list-view.component';
|
|
6
6
|
import { TopicSubscribersViewComponent } from './messaging/topic/topic-subscribers-view/topic-subscribers-view.component';
|
|
7
7
|
import { TopicDetailsTabFactory } from './navigator/topic-details-tab.factory';
|
|
8
|
-
import { basePath
|
|
8
|
+
import { basePath } from './constants';
|
|
9
9
|
import { MessagingManagementGuard } from './messaging-management.guard';
|
|
10
|
+
import { MessagingManagementPreviewFactory } from './messaging-management-preview.factory';
|
|
10
11
|
import * as i0 from "@angular/core";
|
|
11
12
|
export class MessagingManagementModule {
|
|
12
13
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MessagingManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
@@ -36,14 +37,7 @@ export class MessagingManagementModule {
|
|
|
36
37
|
]),
|
|
37
38
|
hookTab(TopicDetailsTabFactory),
|
|
38
39
|
hookNavigator(MessagingNavigatorNodeFactory),
|
|
39
|
-
hookPreview(
|
|
40
|
-
key: MESSAGING_MANAGEMENT_FEATURE_KEY,
|
|
41
|
-
label: 'Messaging service - monitoring & management',
|
|
42
|
-
description: () => import('@c8y/style/markdown-files/messaging-management-preview.md').then(m => m.default),
|
|
43
|
-
settings: {
|
|
44
|
-
reload: true
|
|
45
|
-
}
|
|
46
|
-
})
|
|
40
|
+
hookPreview(MessagingManagementPreviewFactory)
|
|
47
41
|
] }); }
|
|
48
42
|
}
|
|
49
43
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MessagingManagementModule, decorators: [{
|
|
@@ -74,15 +68,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
74
68
|
]),
|
|
75
69
|
hookTab(TopicDetailsTabFactory),
|
|
76
70
|
hookNavigator(MessagingNavigatorNodeFactory),
|
|
77
|
-
hookPreview(
|
|
78
|
-
key: MESSAGING_MANAGEMENT_FEATURE_KEY,
|
|
79
|
-
label: 'Messaging service - monitoring & management',
|
|
80
|
-
description: () => import('@c8y/style/markdown-files/messaging-management-preview.md').then(m => m.default),
|
|
81
|
-
settings: {
|
|
82
|
-
reload: true
|
|
83
|
-
}
|
|
84
|
-
})
|
|
71
|
+
hookPreview(MessagingManagementPreviewFactory)
|
|
85
72
|
]
|
|
86
73
|
}]
|
|
87
74
|
}] });
|
|
88
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnaW5nLW1hbmFnZW1lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbWVzc2FnaW5nLW1hbmFnZW1lbnQvbWVzc2FnaW5nLW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJFQUEyRSxDQUFDO0FBQzFILE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDeEUsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7O0FBK0IzRixNQUFNLE9BQU8seUJBQXlCOytHQUF6Qix5QkFBeUI7Z0hBQXpCLHlCQUF5QjtnSEFBekIseUJBQXlCLGFBNUJ6QjtZQUNULFNBQVMsQ0FBQztnQkFDUjtvQkFDRSxJQUFJLEVBQUUsUUFBUTtvQkFDZCxTQUFTLEVBQUUsc0JBQXNCO29CQUNqQyxXQUFXLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztpQkFDeEM7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLFFBQVEsR0FBRyx1QkFBdUI7b0JBQ3hDLFNBQVMsRUFBRSxzQkFBc0I7b0JBQ2pDLFdBQVcsRUFBRSxDQUFDLHdCQUF3QixDQUFDO2lCQUN4QztnQkFDRDtvQkFDRSxJQUFJLEVBQUUsUUFBUSxHQUFHLG9DQUFvQztvQkFDckQsVUFBVSxFQUFFLFFBQVEsR0FBRyxnREFBZ0Q7b0JBQ3ZFLFNBQVMsRUFBRSxNQUFNO2lCQUNsQjtnQkFDRDtvQkFDRSxJQUFJLEVBQUUsUUFBUSxHQUFHLGdEQUFnRDtvQkFDakUsU0FBUyxFQUFFLDZCQUE2QjtvQkFDeEMsV0FBVyxFQUFFLENBQUMsd0JBQXdCLENBQUM7aUJBQ3hDO2FBQ0YsQ0FBQztZQUNGLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQztZQUMvQixhQUFhLENBQUMsNkJBQTZCLENBQUM7WUFDNUMsV0FBVyxDQUFDLGlDQUFpQyxDQUFDO1NBQy9DOzs0RkFFVSx5QkFBeUI7a0JBN0JyQyxRQUFRO21CQUFDO29CQUNSLFNBQVMsRUFBRTt3QkFDVCxTQUFTLENBQUM7NEJBQ1I7Z0NBQ0UsSUFBSSxFQUFFLFFBQVE7Z0NBQ2QsU0FBUyxFQUFFLHNCQUFzQjtnQ0FDakMsV0FBVyxFQUFFLENBQUMsd0JBQXdCLENBQUM7NkJBQ3hDOzRCQUNEO2dDQUNFLElBQUksRUFBRSxRQUFRLEdBQUcsdUJBQXVCO2dDQUN4QyxTQUFTLEVBQUUsc0JBQXNCO2dDQUNqQyxXQUFXLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQzs2QkFDeEM7NEJBQ0Q7Z0NBQ0UsSUFBSSxFQUFFLFFBQVEsR0FBRyxvQ0FBb0M7Z0NBQ3JELFVBQVUsRUFBRSxRQUFRLEdBQUcsZ0RBQWdEO2dDQUN2RSxTQUFTLEVBQUUsTUFBTTs2QkFDbEI7NEJBQ0Q7Z0NBQ0UsSUFBSSxFQUFFLFFBQVEsR0FBRyxnREFBZ0Q7Z0NBQ2pFLFNBQVMsRUFBRSw2QkFBNkI7Z0NBQ3hDLFdBQVcsRUFBRSxDQUFDLHdCQUF3QixDQUFDOzZCQUN4Qzt5QkFDRixDQUFDO3dCQUNGLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQzt3QkFDL0IsYUFBYSxDQUFDLDZCQUE2QixDQUFDO3dCQUM1QyxXQUFXLENBQUMsaUNBQWlDLENBQUM7cUJBQy9DO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGhvb2tOYXZpZ2F0b3IsIGhvb2tQcmV2aWV3LCBob29rUm91dGUsIGhvb2tUYWIgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcbmltcG9ydCB7IE1lc3NhZ2luZ05hdmlnYXRvck5vZGVGYWN0b3J5IH0gZnJvbSAnLi9uYXZpZ2F0b3IvbWVzc2FnaW5nLW5hdmlnYXRvci1mYWN0b3J5JztcbmltcG9ydCB7IE5hbWVzcGFjZUxpc3RDb21wb25lbnQgfSBmcm9tICcuL21lc3NhZ2luZy9uYW1lc3BhY2UtbGlzdC9uYW1lc3BhY2UtbGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9waWNMaXN0Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vbWVzc2FnaW5nL3RvcGljL3RvcGljLWxpc3Qtdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9waWNTdWJzY3JpYmVyc1ZpZXdDb21wb25lbnQgfSBmcm9tICcuL21lc3NhZ2luZy90b3BpYy90b3BpYy1zdWJzY3JpYmVycy12aWV3L3RvcGljLXN1YnNjcmliZXJzLXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IFRvcGljRGV0YWlsc1RhYkZhY3RvcnkgfSBmcm9tICcuL25hdmlnYXRvci90b3BpYy1kZXRhaWxzLXRhYi5mYWN0b3J5JztcbmltcG9ydCB7IGJhc2VQYXRoIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgTWVzc2FnaW5nTWFuYWdlbWVudEd1YXJkIH0gZnJvbSAnLi9tZXNzYWdpbmctbWFuYWdlbWVudC5ndWFyZCc7XG5pbXBvcnQgeyBNZXNzYWdpbmdNYW5hZ2VtZW50UHJldmlld0ZhY3RvcnkgfSBmcm9tICcuL21lc3NhZ2luZy1tYW5hZ2VtZW50LXByZXZpZXcuZmFjdG9yeSc7XG5cbkBOZ01vZHVsZSh7XG4gIHByb3ZpZGVyczogW1xuICAgIGhvb2tSb3V0ZShbXG4gICAgICB7XG4gICAgICAgIHBhdGg6IGJhc2VQYXRoLFxuICAgICAgICBjb21wb25lbnQ6IE5hbWVzcGFjZUxpc3RDb21wb25lbnQsXG4gICAgICAgIGNhbkFjdGl2YXRlOiBbTWVzc2FnaW5nTWFuYWdlbWVudEd1YXJkXVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcGF0aDogYmFzZVBhdGggKyAnL25hbWVzcGFjZS86bmFtZXNwYWNlJyxcbiAgICAgICAgY29tcG9uZW50OiBUb3BpY0xpc3RWaWV3Q29tcG9uZW50LFxuICAgICAgICBjYW5BY3RpdmF0ZTogW01lc3NhZ2luZ01hbmFnZW1lbnRHdWFyZF1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHBhdGg6IGJhc2VQYXRoICsgJy9uYW1lc3BhY2UvOm5hbWVzcGFjZS90b3BpYy86dG9waWMnLFxuICAgICAgICByZWRpcmVjdFRvOiBiYXNlUGF0aCArICcvbmFtZXNwYWNlLzpuYW1lc3BhY2UvdG9waWMvOnRvcGljL3N1YnNjcmliZXJzJyxcbiAgICAgICAgcGF0aE1hdGNoOiAnZnVsbCdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHBhdGg6IGJhc2VQYXRoICsgJy9uYW1lc3BhY2UvOm5hbWVzcGFjZS90b3BpYy86dG9waWMvc3Vic2NyaWJlcnMnLFxuICAgICAgICBjb21wb25lbnQ6IFRvcGljU3Vic2NyaWJlcnNWaWV3Q29tcG9uZW50LFxuICAgICAgICBjYW5BY3RpdmF0ZTogW01lc3NhZ2luZ01hbmFnZW1lbnRHdWFyZF1cbiAgICAgIH1cbiAgICBdKSxcbiAgICBob29rVGFiKFRvcGljRGV0YWlsc1RhYkZhY3RvcnkpLFxuICAgIGhvb2tOYXZpZ2F0b3IoTWVzc2FnaW5nTmF2aWdhdG9yTm9kZUZhY3RvcnkpLFxuICAgIGhvb2tQcmV2aWV3KE1lc3NhZ2luZ01hbmFnZW1lbnRQcmV2aWV3RmFjdG9yeSlcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBNZXNzYWdpbmdNYW5hZ2VtZW50TW9kdWxlIHt9XG4iXX0=
|
|
@@ -3,7 +3,7 @@ import { Injectable, inject, NgModule } from '@angular/core';
|
|
|
3
3
|
import * as i1$1 from '@angular/router';
|
|
4
4
|
import { RouterModule } from '@angular/router';
|
|
5
5
|
import * as i1 from '@c8y/ngx-components';
|
|
6
|
-
import { NavigatorNode, gettext, hookNavigator, HookProviderTypes, hookTab } from '@c8y/ngx-components';
|
|
6
|
+
import { NavigatorNode, gettext, AppStateService, hookNavigator, HookProviderTypes, hookTab } from '@c8y/ngx-components';
|
|
7
7
|
import { map, shareReplay, distinctUntilChanged, switchMap, filter } from 'rxjs/operators';
|
|
8
8
|
import { of, merge } from 'rxjs';
|
|
9
9
|
import { StoreBrandingService } from '@c8y/ngx-components/branding/shared/data';
|
|
@@ -133,6 +133,11 @@ const BRANDING_ROUTING = [
|
|
|
133
133
|
fallbackBranding: (async (_route, _state) => {
|
|
134
134
|
try {
|
|
135
135
|
const store = inject(StoreBrandingService);
|
|
136
|
+
const appState = inject(AppStateService);
|
|
137
|
+
// management tenant should be free to change what every they want, so we do not provide a fallback branding
|
|
138
|
+
if (appState.currentTenant.value?.name === 'management') {
|
|
139
|
+
return {};
|
|
140
|
+
}
|
|
136
141
|
const fallbackBranding = await store.getBrandingOptionsForVersion('fallback');
|
|
137
142
|
return fallbackBranding;
|
|
138
143
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"c8y-ngx-components-branding-shared.mjs","sources":["../../branding/shared/supports-branding.service.ts","../../branding/shared/branding-tab.factory.ts","../../branding/shared/shared-branding.module.ts","../../branding/shared/c8y-ngx-components-branding-shared.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { CanActivate, UrlTree } from '@angular/router';\nimport { AppStateService, ExtensionFactory, NavigatorNode } from '@c8y/ngx-components';\nimport { Observable } from 'rxjs';\nimport { map, shareReplay } from 'rxjs/operators';\n\n@Injectable({ providedIn: 'root' })\nexport class SupportsBrandingService implements CanActivate, ExtensionFactory<NavigatorNode> {\n private supportsBranding$: Observable<boolean>;\n private node: NavigatorNode;\n constructor(private appState: AppStateService) {\n this.supportsBranding$ = this.appState.currentAppsOfUser.pipe(\n map(apps => {\n const brandingFeatureApp = apps.find(\n app => app.name === 'feature-branding' && app.owner?.tenant?.id === 'management'\n );\n return !!brandingFeatureApp;\n }),\n shareReplay(1)\n );\n this.node = new NavigatorNode({\n featureId: 'branding-editor',\n label: 'Branding',\n // will be redirected to the branding-editor route\n // TODO: change back to branding-editor when angular JS implementation is removed (1022.0.0)\n path: 'branding',\n icon: 'palette',\n parent: 'Settings',\n routerLinkExact: false,\n preventDuplicates: true\n });\n }\n\n get(): Observable<NavigatorNode | NavigatorNode[]> {\n return this.supportsBranding$.pipe(\n map(supported => {\n if (supported) {\n return this.node;\n }\n return [];\n })\n );\n }\n\n canActivate(): boolean | UrlTree | Observable<boolean | UrlTree> | Promise<boolean | UrlTree> {\n return this.supportsBranding$;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { ExtensionFactory, Tab, gettext } from '@c8y/ngx-components';\nimport { Observable, merge, of } from 'rxjs';\nimport { distinctUntilChanged, map, filter, switchMap } from 'rxjs/operators';\n\nexport const lightThemeTabName = gettext('Light theme');\nexport const genericTabName = gettext('Generic');\n\n@Injectable({ providedIn: 'root' })\nexport class BrandingTabFactory implements ExtensionFactory<Tab> {\n get(activatedRoute?: ActivatedRoute): Observable<Tab | Tab[]> {\n const routes = activatedRoute.pathFromRoot.map(route => route.url);\n return this.shouldShowTab$().pipe(\n distinctUntilChanged(),\n switchMap(value => {\n if (!value) {\n return of([]);\n }\n return merge(...routes).pipe(\n filter(urlSegments =>\n urlSegments.some(urlSegment => urlSegment.path === 'branding-editor')\n ),\n switchMap(() => this.shouldShowTab$()),\n filter(shouldShow => !!shouldShow),\n switchMap(() =>\n activatedRoute.parent?.params.pipe(\n map(params => params.name),\n distinctUntilChanged(),\n filter(name => !!name),\n map(name => this.getTabsForVersion(name))\n )\n )\n );\n })\n );\n }\n\n protected shouldShowTab$(): Observable<boolean> {\n return of(true);\n }\n\n protected getPathForBranding<T extends string>(brandingName: string, subPath: T) {\n return `branding-editor/${brandingName}/edit/${subPath}` as const;\n }\n\n protected getTabsForVersion(name: string): Tab[] {\n return [\n {\n path: this.getPathForBranding(name, 'generic'),\n label: genericTabName,\n icon: 'palette',\n priority: 600\n },\n {\n path: this.getPathForBranding(name, 'light'),\n label: lightThemeTabName,\n icon: 'sun',\n priority: 500\n }\n ];\n }\n}\n","import { NgModule, inject } from '@angular/core';\nimport {\n RouterModule,\n Route,\n RouterStateSnapshot,\n ActivatedRouteSnapshot,\n ResolveFn,\n Routes\n} from '@angular/router';\nimport { SupportsBrandingService } from './supports-branding.service';\nimport { hookNavigator, HookProviderTypes, hookTab } from '@c8y/ngx-components';\nimport { BrandingTabFactory, lightThemeTabName, genericTabName } from './branding-tab.factory';\nimport {\n BrandingFileDetails,\n BrandingOptionsJson,\n StoreBrandingService\n} from '@c8y/ngx-components/branding/shared/data';\n\nexport const BRANDING_EDIT_CHILD_ROUTES: Route[] = [\n {\n path: '',\n pathMatch: 'full',\n redirectTo: 'generic'\n },\n {\n path: 'generic',\n loadComponent: () =>\n import('@c8y/ngx-components/branding/shared/lazy').then(m => m.BrandingFormComponent),\n data: {\n tabName: genericTabName\n }\n },\n {\n path: 'light',\n loadComponent: () =>\n import('@c8y/ngx-components/branding/shared/lazy').then(m => m.BrandingThemeFormComponent),\n data: {\n tabName: lightThemeTabName\n }\n }\n];\n\nexport const BRANDING_ROUTING: Routes = [\n {\n path: 'branding-editor',\n canActivate: [SupportsBrandingService],\n children: [\n {\n path: '',\n pathMatch: 'full',\n loadComponent: () =>\n import('@c8y/ngx-components/branding/shared/lazy').then(m => m.BrandingComponent)\n },\n {\n path: ':name',\n resolve: {\n branding: ((route: ActivatedRouteSnapshot, _state: RouterStateSnapshot) => {\n return inject(StoreBrandingService).getBrandingOptionsForVersion(route.params.name);\n }) as ResolveFn<BrandingFileDetails[]>,\n tags: (async (route: ActivatedRouteSnapshot, _state: RouterStateSnapshot) => {\n const store = inject(StoreBrandingService);\n const { variants } = await store.loadBrandingVariants();\n return variants.find(v => v?.tags?.includes(route.params.name))?.tags;\n }) as ResolveFn<string[]>,\n fallbackBranding: (async (\n _route: ActivatedRouteSnapshot,\n _state: RouterStateSnapshot\n ) => {\n try {\n const store = inject(StoreBrandingService);\n const fallbackBranding = await store.getBrandingOptionsForVersion('fallback');\n return fallbackBranding;\n } catch (e) {\n return {};\n }\n }) as ResolveFn<BrandingOptionsJson>\n },\n children: [\n {\n path: '',\n pathMatch: 'full',\n redirectTo: 'edit'\n },\n {\n path: 'edit',\n loadComponent: () =>\n import('@c8y/ngx-components/branding/shared/lazy').then(\n m => m.EditBrandingRouterOutletComponent\n ),\n children: BRANDING_EDIT_CHILD_ROUTES\n }\n ]\n }\n ]\n },\n // Redirects for legacy paths from old angularJS implementation\n // allows to keep old links working and to use the old branding manager (as long as we still ship it) when the new plugins are removed from admin app\n {\n path: 'enterprise/branding',\n pathMatch: 'full',\n redirectTo: 'branding-editor'\n },\n {\n path: 'branding',\n pathMatch: 'full',\n redirectTo: 'branding-editor'\n }\n];\n\n@NgModule({\n imports: [RouterModule.forChild(BRANDING_ROUTING)],\n providers: [\n // providerType: HookProviderTypes.ExistingProvider is used to ensure that the hook is only applied once even if the module is imported multiple times\n hookNavigator(SupportsBrandingService, { providerType: HookProviderTypes.ExistingProvider }),\n hookTab(BrandingTabFactory)\n ]\n})\nexport class SharedBrandingModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"c8y-ngx-components-branding-shared.mjs","sources":["../../branding/shared/supports-branding.service.ts","../../branding/shared/branding-tab.factory.ts","../../branding/shared/shared-branding.module.ts","../../branding/shared/c8y-ngx-components-branding-shared.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { CanActivate, UrlTree } from '@angular/router';\nimport { AppStateService, ExtensionFactory, NavigatorNode } from '@c8y/ngx-components';\nimport { Observable } from 'rxjs';\nimport { map, shareReplay } from 'rxjs/operators';\n\n@Injectable({ providedIn: 'root' })\nexport class SupportsBrandingService implements CanActivate, ExtensionFactory<NavigatorNode> {\n private supportsBranding$: Observable<boolean>;\n private node: NavigatorNode;\n constructor(private appState: AppStateService) {\n this.supportsBranding$ = this.appState.currentAppsOfUser.pipe(\n map(apps => {\n const brandingFeatureApp = apps.find(\n app => app.name === 'feature-branding' && app.owner?.tenant?.id === 'management'\n );\n return !!brandingFeatureApp;\n }),\n shareReplay(1)\n );\n this.node = new NavigatorNode({\n featureId: 'branding-editor',\n label: 'Branding',\n // will be redirected to the branding-editor route\n // TODO: change back to branding-editor when angular JS implementation is removed (1022.0.0)\n path: 'branding',\n icon: 'palette',\n parent: 'Settings',\n routerLinkExact: false,\n preventDuplicates: true\n });\n }\n\n get(): Observable<NavigatorNode | NavigatorNode[]> {\n return this.supportsBranding$.pipe(\n map(supported => {\n if (supported) {\n return this.node;\n }\n return [];\n })\n );\n }\n\n canActivate(): boolean | UrlTree | Observable<boolean | UrlTree> | Promise<boolean | UrlTree> {\n return this.supportsBranding$;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { ExtensionFactory, Tab, gettext } from '@c8y/ngx-components';\nimport { Observable, merge, of } from 'rxjs';\nimport { distinctUntilChanged, map, filter, switchMap } from 'rxjs/operators';\n\nexport const lightThemeTabName = gettext('Light theme');\nexport const genericTabName = gettext('Generic');\n\n@Injectable({ providedIn: 'root' })\nexport class BrandingTabFactory implements ExtensionFactory<Tab> {\n get(activatedRoute?: ActivatedRoute): Observable<Tab | Tab[]> {\n const routes = activatedRoute.pathFromRoot.map(route => route.url);\n return this.shouldShowTab$().pipe(\n distinctUntilChanged(),\n switchMap(value => {\n if (!value) {\n return of([]);\n }\n return merge(...routes).pipe(\n filter(urlSegments =>\n urlSegments.some(urlSegment => urlSegment.path === 'branding-editor')\n ),\n switchMap(() => this.shouldShowTab$()),\n filter(shouldShow => !!shouldShow),\n switchMap(() =>\n activatedRoute.parent?.params.pipe(\n map(params => params.name),\n distinctUntilChanged(),\n filter(name => !!name),\n map(name => this.getTabsForVersion(name))\n )\n )\n );\n })\n );\n }\n\n protected shouldShowTab$(): Observable<boolean> {\n return of(true);\n }\n\n protected getPathForBranding<T extends string>(brandingName: string, subPath: T) {\n return `branding-editor/${brandingName}/edit/${subPath}` as const;\n }\n\n protected getTabsForVersion(name: string): Tab[] {\n return [\n {\n path: this.getPathForBranding(name, 'generic'),\n label: genericTabName,\n icon: 'palette',\n priority: 600\n },\n {\n path: this.getPathForBranding(name, 'light'),\n label: lightThemeTabName,\n icon: 'sun',\n priority: 500\n }\n ];\n }\n}\n","import { NgModule, inject } from '@angular/core';\nimport {\n RouterModule,\n Route,\n RouterStateSnapshot,\n ActivatedRouteSnapshot,\n ResolveFn,\n Routes\n} from '@angular/router';\nimport { SupportsBrandingService } from './supports-branding.service';\nimport { AppStateService, hookNavigator, HookProviderTypes, hookTab } from '@c8y/ngx-components';\nimport { BrandingTabFactory, lightThemeTabName, genericTabName } from './branding-tab.factory';\nimport {\n BrandingFileDetails,\n BrandingOptionsJson,\n StoreBrandingService\n} from '@c8y/ngx-components/branding/shared/data';\n\nexport const BRANDING_EDIT_CHILD_ROUTES: Route[] = [\n {\n path: '',\n pathMatch: 'full',\n redirectTo: 'generic'\n },\n {\n path: 'generic',\n loadComponent: () =>\n import('@c8y/ngx-components/branding/shared/lazy').then(m => m.BrandingFormComponent),\n data: {\n tabName: genericTabName\n }\n },\n {\n path: 'light',\n loadComponent: () =>\n import('@c8y/ngx-components/branding/shared/lazy').then(m => m.BrandingThemeFormComponent),\n data: {\n tabName: lightThemeTabName\n }\n }\n];\n\nexport const BRANDING_ROUTING: Routes = [\n {\n path: 'branding-editor',\n canActivate: [SupportsBrandingService],\n children: [\n {\n path: '',\n pathMatch: 'full',\n loadComponent: () =>\n import('@c8y/ngx-components/branding/shared/lazy').then(m => m.BrandingComponent)\n },\n {\n path: ':name',\n resolve: {\n branding: ((route: ActivatedRouteSnapshot, _state: RouterStateSnapshot) => {\n return inject(StoreBrandingService).getBrandingOptionsForVersion(route.params.name);\n }) as ResolveFn<BrandingFileDetails[]>,\n tags: (async (route: ActivatedRouteSnapshot, _state: RouterStateSnapshot) => {\n const store = inject(StoreBrandingService);\n const { variants } = await store.loadBrandingVariants();\n return variants.find(v => v?.tags?.includes(route.params.name))?.tags;\n }) as ResolveFn<string[]>,\n fallbackBranding: (async (\n _route: ActivatedRouteSnapshot,\n _state: RouterStateSnapshot\n ) => {\n try {\n const store = inject(StoreBrandingService);\n const appState = inject(AppStateService);\n // management tenant should be free to change what every they want, so we do not provide a fallback branding\n if (appState.currentTenant.value?.name === 'management') {\n return {};\n }\n const fallbackBranding = await store.getBrandingOptionsForVersion('fallback');\n return fallbackBranding;\n } catch (e) {\n return {};\n }\n }) as ResolveFn<BrandingOptionsJson>\n },\n children: [\n {\n path: '',\n pathMatch: 'full',\n redirectTo: 'edit'\n },\n {\n path: 'edit',\n loadComponent: () =>\n import('@c8y/ngx-components/branding/shared/lazy').then(\n m => m.EditBrandingRouterOutletComponent\n ),\n children: BRANDING_EDIT_CHILD_ROUTES\n }\n ]\n }\n ]\n },\n // Redirects for legacy paths from old angularJS implementation\n // allows to keep old links working and to use the old branding manager (as long as we still ship it) when the new plugins are removed from admin app\n {\n path: 'enterprise/branding',\n pathMatch: 'full',\n redirectTo: 'branding-editor'\n },\n {\n path: 'branding',\n pathMatch: 'full',\n redirectTo: 'branding-editor'\n }\n];\n\n@NgModule({\n imports: [RouterModule.forChild(BRANDING_ROUTING)],\n providers: [\n // providerType: HookProviderTypes.ExistingProvider is used to ensure that the hook is only applied once even if the module is imported multiple times\n hookNavigator(SupportsBrandingService, { providerType: HookProviderTypes.ExistingProvider }),\n hookTab(BrandingTabFactory)\n ]\n})\nexport class SharedBrandingModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":";;;;;;;;;;MAOa,uBAAuB,CAAA;AAGlC,IAAA,WAAA,CAAoB,QAAyB,EAAA;QAAzB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAiB;AAC3C,QAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAC3D,GAAG,CAAC,IAAI,IAAG;YACT,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAClC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB,IAAI,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,YAAY,CACjF,CAAC;YACF,OAAO,CAAC,CAAC,kBAAkB,CAAC;AAC9B,SAAC,CAAC,EACF,WAAW,CAAC,CAAC,CAAC,CACf,CAAC;AACF,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI,aAAa,CAAC;AAC5B,YAAA,SAAS,EAAE,iBAAiB;AAC5B,YAAA,KAAK,EAAE,UAAU;;;AAGjB,YAAA,IAAI,EAAE,UAAU;AAChB,YAAA,IAAI,EAAE,SAAS;AACf,YAAA,MAAM,EAAE,UAAU;AAClB,YAAA,eAAe,EAAE,KAAK;AACtB,YAAA,iBAAiB,EAAE,IAAI;AACxB,SAAA,CAAC,CAAC;KACJ;IAED,GAAG,GAAA;QACD,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAChC,GAAG,CAAC,SAAS,IAAG;YACd,IAAI,SAAS,EAAE;gBACb,OAAO,IAAI,CAAC,IAAI,CAAC;aAClB;AACD,YAAA,OAAO,EAAE,CAAC;SACX,CAAC,CACH,CAAC;KACH;IAED,WAAW,GAAA;QACT,OAAO,IAAI,CAAC,iBAAiB,CAAC;KAC/B;+GAvCU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,eAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,cADV,MAAM,EAAA,CAAA,CAAA,EAAA;;4FACnB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBADnC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;;;MCArB,iBAAiB,GAAG,OAAO,CAAC,aAAa,EAAE;MAC3C,cAAc,GAAG,OAAO,CAAC,SAAS,EAAE;MAGpC,kBAAkB,CAAA;AAC7B,IAAA,GAAG,CAAC,cAA+B,EAAA;AACjC,QAAA,MAAM,MAAM,GAAG,cAAc,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACnE,QAAA,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC,IAAI,CAC/B,oBAAoB,EAAE,EACtB,SAAS,CAAC,KAAK,IAAG;YAChB,IAAI,CAAC,KAAK,EAAE;AACV,gBAAA,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;aACf;YACD,OAAO,KAAK,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CAC1B,MAAM,CAAC,WAAW,IAChB,WAAW,CAAC,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,IAAI,KAAK,iBAAiB,CAAC,CACtE,EACD,SAAS,CAAC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,EACtC,MAAM,CAAC,UAAU,IAAI,CAAC,CAAC,UAAU,CAAC,EAClC,SAAS,CAAC,MACR,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAChC,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,EAC1B,oBAAoB,EAAE,EACtB,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,EACtB,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAC1C,CACF,CACF,CAAC;SACH,CAAC,CACH,CAAC;KACH;IAES,cAAc,GAAA;AACtB,QAAA,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;KACjB;IAES,kBAAkB,CAAmB,YAAoB,EAAE,OAAU,EAAA;AAC7E,QAAA,OAAO,CAAmB,gBAAA,EAAA,YAAY,CAAS,MAAA,EAAA,OAAO,EAAW,CAAC;KACnE;AAES,IAAA,iBAAiB,CAAC,IAAY,EAAA;QACtC,OAAO;AACL,YAAA;gBACE,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,SAAS,CAAC;AAC9C,gBAAA,KAAK,EAAE,cAAc;AACrB,gBAAA,IAAI,EAAE,SAAS;AACf,gBAAA,QAAQ,EAAE,GAAG;AACd,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC;AAC5C,gBAAA,KAAK,EAAE,iBAAiB;AACxB,gBAAA,IAAI,EAAE,KAAK;AACX,gBAAA,QAAQ,EAAE,GAAG;AACd,aAAA;SACF,CAAC;KACH;+GAnDU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,cADL,MAAM,EAAA,CAAA,CAAA,EAAA;;4FACnB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAD9B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;;;ACSrB,MAAA,0BAA0B,GAAY;AACjD,IAAA;AACE,QAAA,IAAI,EAAE,EAAE;AACR,QAAA,SAAS,EAAE,MAAM;AACjB,QAAA,UAAU,EAAE,SAAS;AACtB,KAAA;AACD,IAAA;AACE,QAAA,IAAI,EAAE,SAAS;AACf,QAAA,aAAa,EAAE,MACb,OAAO,0CAA0C,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,qBAAqB,CAAC;AACvF,QAAA,IAAI,EAAE;AACJ,YAAA,OAAO,EAAE,cAAc;AACxB,SAAA;AACF,KAAA;AACD,IAAA;AACE,QAAA,IAAI,EAAE,OAAO;AACb,QAAA,aAAa,EAAE,MACb,OAAO,0CAA0C,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,0BAA0B,CAAC;AAC5F,QAAA,IAAI,EAAE;AACJ,YAAA,OAAO,EAAE,iBAAiB;AAC3B,SAAA;AACF,KAAA;EACD;AAEW,MAAA,gBAAgB,GAAW;AACtC,IAAA;AACE,QAAA,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,CAAC,uBAAuB,CAAC;AACtC,QAAA,QAAQ,EAAE;AACR,YAAA;AACE,gBAAA,IAAI,EAAE,EAAE;AACR,gBAAA,SAAS,EAAE,MAAM;AACjB,gBAAA,aAAa,EAAE,MACb,OAAO,0CAA0C,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC;AACpF,aAAA;AACD,YAAA;AACE,gBAAA,IAAI,EAAE,OAAO;AACb,gBAAA,OAAO,EAAE;AACP,oBAAA,QAAQ,GAAG,CAAC,KAA6B,EAAE,MAA2B,KAAI;AACxE,wBAAA,OAAO,MAAM,CAAC,oBAAoB,CAAC,CAAC,4BAA4B,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACtF,qBAAC,CAAqC;oBACtC,IAAI,GAAG,OAAO,KAA6B,EAAE,MAA2B,KAAI;AAC1E,wBAAA,MAAM,KAAK,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;wBAC3C,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,KAAK,CAAC,oBAAoB,EAAE,CAAC;wBACxD,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AACxE,qBAAC,CAAwB;oBACzB,gBAAgB,GAAG,OACjB,MAA8B,EAC9B,MAA2B,KACzB;AACF,wBAAA,IAAI;AACF,4BAAA,MAAM,KAAK,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAC3C,4BAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;;4BAEzC,IAAI,QAAQ,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,KAAK,YAAY,EAAE;AACvD,gCAAA,OAAO,EAAE,CAAC;6BACX;4BACD,MAAM,gBAAgB,GAAG,MAAM,KAAK,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAC;AAC9E,4BAAA,OAAO,gBAAgB,CAAC;yBACzB;wBAAC,OAAO,CAAC,EAAE;AACV,4BAAA,OAAO,EAAE,CAAC;yBACX;AACH,qBAAC,CAAmC;AACrC,iBAAA;AACD,gBAAA,QAAQ,EAAE;AACR,oBAAA;AACE,wBAAA,IAAI,EAAE,EAAE;AACR,wBAAA,SAAS,EAAE,MAAM;AACjB,wBAAA,UAAU,EAAE,MAAM;AACnB,qBAAA;AACD,oBAAA;AACE,wBAAA,IAAI,EAAE,MAAM;AACZ,wBAAA,aAAa,EAAE,MACb,OAAO,0CAA0C,CAAC,CAAC,IAAI,CACrD,CAAC,IAAI,CAAC,CAAC,iCAAiC,CACzC;AACH,wBAAA,QAAQ,EAAE,0BAA0B;AACrC,qBAAA;AACF,iBAAA;AACF,aAAA;AACF,SAAA;AACF,KAAA;;;AAGD,IAAA;AACE,QAAA,IAAI,EAAE,qBAAqB;AAC3B,QAAA,SAAS,EAAE,MAAM;AACjB,QAAA,UAAU,EAAE,iBAAiB;AAC9B,KAAA;AACD,IAAA;AACE,QAAA,IAAI,EAAE,UAAU;AAChB,QAAA,SAAS,EAAE,MAAM;AACjB,QAAA,UAAU,EAAE,iBAAiB;AAC9B,KAAA;EACD;MAUW,oBAAoB,CAAA;+GAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;gHAApB,oBAAoB,EAAA,OAAA,EAAA,CAAAA,IAAA,CAAA,YAAA,CAAA,EAAA,CAAA,CAAA,EAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,EANpB,SAAA,EAAA;;YAET,aAAa,CAAC,uBAAuB,EAAE,EAAE,YAAY,EAAE,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;YAC5F,OAAO,CAAC,kBAAkB,CAAC;AAC5B,SAAA,EAAA,OAAA,EAAA,CALS,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA,EAAA,CAAA,CAAA,EAAA;;4FAOtC,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBARhC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;AAClD,oBAAA,SAAS,EAAE;;wBAET,aAAa,CAAC,uBAAuB,EAAE,EAAE,YAAY,EAAE,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;wBAC5F,OAAO,CAAC,kBAAkB,CAAC;AAC5B,qBAAA;AACF,iBAAA,CAAA;;;ACzHD;;AAEG;;;;"}
|
|
@@ -1155,6 +1155,35 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
1155
1155
|
type: Injectable
|
|
1156
1156
|
}], ctorParameters: () => [{ type: i1$3.Router }] });
|
|
1157
1157
|
|
|
1158
|
+
class MessagingManagementPreviewFactory {
|
|
1159
|
+
constructor() {
|
|
1160
|
+
this.applicationService = inject(ApplicationService);
|
|
1161
|
+
}
|
|
1162
|
+
async get() {
|
|
1163
|
+
const microserviceSubscribed = await this.applicationService
|
|
1164
|
+
.isAvailable(MESSAGING_MANAGEMENT_MICROSERVICE_NAME)
|
|
1165
|
+
.then(({ data: subscribed }) => subscribed)
|
|
1166
|
+
.catch(() => false);
|
|
1167
|
+
if (!microserviceSubscribed) {
|
|
1168
|
+
return null;
|
|
1169
|
+
}
|
|
1170
|
+
return {
|
|
1171
|
+
key: MESSAGING_MANAGEMENT_FEATURE_KEY,
|
|
1172
|
+
label: 'Messaging service - monitoring & management',
|
|
1173
|
+
description: () => import('@c8y/style/markdown-files/messaging-management-preview.md').then(m => m.default),
|
|
1174
|
+
settings: {
|
|
1175
|
+
reload: true
|
|
1176
|
+
}
|
|
1177
|
+
};
|
|
1178
|
+
}
|
|
1179
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MessagingManagementPreviewFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1180
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MessagingManagementPreviewFactory, providedIn: 'root' }); }
|
|
1181
|
+
}
|
|
1182
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MessagingManagementPreviewFactory, decorators: [{
|
|
1183
|
+
type: Injectable,
|
|
1184
|
+
args: [{ providedIn: 'root' }]
|
|
1185
|
+
}] });
|
|
1186
|
+
|
|
1158
1187
|
class MessagingManagementModule {
|
|
1159
1188
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MessagingManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
1160
1189
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: MessagingManagementModule }); }
|
|
@@ -1183,14 +1212,7 @@ class MessagingManagementModule {
|
|
|
1183
1212
|
]),
|
|
1184
1213
|
hookTab(TopicDetailsTabFactory),
|
|
1185
1214
|
hookNavigator(MessagingNavigatorNodeFactory),
|
|
1186
|
-
hookPreview(
|
|
1187
|
-
key: MESSAGING_MANAGEMENT_FEATURE_KEY,
|
|
1188
|
-
label: 'Messaging service - monitoring & management',
|
|
1189
|
-
description: () => import('@c8y/style/markdown-files/messaging-management-preview.md').then(m => m.default),
|
|
1190
|
-
settings: {
|
|
1191
|
-
reload: true
|
|
1192
|
-
}
|
|
1193
|
-
})
|
|
1215
|
+
hookPreview(MessagingManagementPreviewFactory)
|
|
1194
1216
|
] }); }
|
|
1195
1217
|
}
|
|
1196
1218
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MessagingManagementModule, decorators: [{
|
|
@@ -1221,14 +1243,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
1221
1243
|
]),
|
|
1222
1244
|
hookTab(TopicDetailsTabFactory),
|
|
1223
1245
|
hookNavigator(MessagingNavigatorNodeFactory),
|
|
1224
|
-
hookPreview(
|
|
1225
|
-
key: MESSAGING_MANAGEMENT_FEATURE_KEY,
|
|
1226
|
-
label: 'Messaging service - monitoring & management',
|
|
1227
|
-
description: () => import('@c8y/style/markdown-files/messaging-management-preview.md').then(m => m.default),
|
|
1228
|
-
settings: {
|
|
1229
|
-
reload: true
|
|
1230
|
-
}
|
|
1231
|
-
})
|
|
1246
|
+
hookPreview(MessagingManagementPreviewFactory)
|
|
1232
1247
|
]
|
|
1233
1248
|
}]
|
|
1234
1249
|
}] });
|