@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
51 lines • 5.54 kB
JavaScript
const rootComponent = {
template: `
<c8y-bootstrap>
<div id="c8y-legacy-view">
<div ng-view ng-if="vm.widthSet && vm.authState.hasAuth"></div>
</div>
</c8y-bootstrap>`,
controller: c8yUiRootController,
controllerAs: 'vm'
};
function c8yUiRootController($rootScope, $timeout, c8yBase, c8yNavigator, c8yApplication, c8yHeaderService) {
'ngInject';
// eslint-disable-next-line @typescript-eslint/no-this-alias
const vm = this;
Object.assign(vm, {
$onInit,
navOpen: false
});
////////////
function $onInit() {
c8yHeaderService
.map(states => states.nav.open)
.subscribe(isOpen => {
vm.navOpen = isOpen;
});
c8yHeaderService.configNavigator({ canToggle: true });
$rootScope.$on('authStateChange', onAuthStateChange);
vm.rootNodes = c8yNavigator.rootNodes;
c8yApplication.currentAppCached().then(onAppInfo);
vm.navHiddenOnStartup = c8yBase.appOption('hide_navigator');
checkReady();
}
function onAuthStateChange(evt, data) {
vm.authState = data;
}
function onAppInfo() {
vm.tabsHorizontal = c8yBase.appOption('tabsHorizontal');
}
function checkReady() {
const element = document.querySelector('#c8y-legacy-view');
const hasWidth = element && element.clientWidth;
if (hasWidth) {
vm.widthSet = true;
}
else {
$timeout(checkReady);
}
}
}
export { rootComponent };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi91cGdyYWRlL25nMS9yb290LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLGFBQWEsR0FBRztJQUNwQixRQUFRLEVBQUU7Ozs7O21CQUtPO0lBQ2pCLFVBQVUsRUFBRSxtQkFBbUI7SUFDL0IsWUFBWSxFQUFFLElBQUk7Q0FDbkIsQ0FBQztBQUVGLFNBQVMsbUJBQW1CLENBQzFCLFVBQVUsRUFDVixRQUFRLEVBQ1IsT0FBTyxFQUNQLFlBQVksRUFDWixjQUFjLEVBQ2QsZ0JBQWdCO0lBRWhCLFVBQVUsQ0FBQztJQUNYLDREQUE0RDtJQUM1RCxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUM7SUFFaEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUU7UUFDaEIsT0FBTztRQUNQLE9BQU8sRUFBRSxLQUFLO0tBQ2YsQ0FBQyxDQUFDO0lBRUgsWUFBWTtJQUVaLFNBQVMsT0FBTztRQUNkLGdCQUFnQjthQUNiLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDO2FBQzlCLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNsQixFQUFFLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FBQztRQUNMLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3RELFVBQVUsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztRQUNyRCxFQUFFLENBQUMsU0FBUyxHQUFHLFlBQVksQ0FBQyxTQUFTLENBQUM7UUFDdEMsY0FBYyxDQUFDLGdCQUFnQixFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2xELEVBQUUsQ0FBQyxrQkFBa0IsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDNUQsVUFBVSxFQUFFLENBQUM7SUFDZixDQUFDO0lBRUQsU0FBUyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUUsSUFBSTtRQUNsQyxFQUFFLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztJQUN0QixDQUFDO0lBRUQsU0FBUyxTQUFTO1FBQ2hCLEVBQUUsQ0FBQyxjQUFjLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxTQUFTLFVBQVU7UUFDakIsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQzNELE1BQU0sUUFBUSxHQUFHLE9BQU8sSUFBSSxPQUFPLENBQUMsV0FBVyxDQUFDO1FBQ2hELElBQUksUUFBUSxFQUFFLENBQUM7WUFDYixFQUFFLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztRQUNyQixDQUFDO2FBQU0sQ0FBQztZQUNOLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN2QixDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUM7QUFDRCxPQUFPLEVBQUUsYUFBYSxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCByb290Q29tcG9uZW50ID0ge1xuICB0ZW1wbGF0ZTogYFxuICA8Yzh5LWJvb3RzdHJhcD5cbiAgICA8ZGl2IGlkPVwiYzh5LWxlZ2FjeS12aWV3XCI+XG4gICAgICA8ZGl2IG5nLXZpZXcgbmctaWY9XCJ2bS53aWR0aFNldCAmJiB2bS5hdXRoU3RhdGUuaGFzQXV0aFwiPjwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2M4eS1ib290c3RyYXA+YCxcbiAgY29udHJvbGxlcjogYzh5VWlSb290Q29udHJvbGxlcixcbiAgY29udHJvbGxlckFzOiAndm0nXG59O1xuXG5mdW5jdGlvbiBjOHlVaVJvb3RDb250cm9sbGVyKFxuICAkcm9vdFNjb3BlLFxuICAkdGltZW91dCxcbiAgYzh5QmFzZSxcbiAgYzh5TmF2aWdhdG9yLFxuICBjOHlBcHBsaWNhdGlvbixcbiAgYzh5SGVhZGVyU2VydmljZVxuKSB7XG4gICduZ0luamVjdCc7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdGhpcy1hbGlhc1xuICBjb25zdCB2bSA9IHRoaXM7XG5cbiAgT2JqZWN0LmFzc2lnbih2bSwge1xuICAgICRvbkluaXQsXG4gICAgbmF2T3BlbjogZmFsc2VcbiAgfSk7XG5cbiAgLy8vLy8vLy8vLy8vXG5cbiAgZnVuY3Rpb24gJG9uSW5pdCgpIHtcbiAgICBjOHlIZWFkZXJTZXJ2aWNlXG4gICAgICAubWFwKHN0YXRlcyA9PiBzdGF0ZXMubmF2Lm9wZW4pXG4gICAgICAuc3Vic2NyaWJlKGlzT3BlbiA9PiB7XG4gICAgICAgIHZtLm5hdk9wZW4gPSBpc09wZW47XG4gICAgICB9KTtcbiAgICBjOHlIZWFkZXJTZXJ2aWNlLmNvbmZpZ05hdmlnYXRvcih7IGNhblRvZ2dsZTogdHJ1ZSB9KTtcbiAgICAkcm9vdFNjb3BlLiRvbignYXV0aFN0YXRlQ2hhbmdlJywgb25BdXRoU3RhdGVDaGFuZ2UpO1xuICAgIHZtLnJvb3ROb2RlcyA9IGM4eU5hdmlnYXRvci5yb290Tm9kZXM7XG4gICAgYzh5QXBwbGljYXRpb24uY3VycmVudEFwcENhY2hlZCgpLnRoZW4ob25BcHBJbmZvKTtcbiAgICB2bS5uYXZIaWRkZW5PblN0YXJ0dXAgPSBjOHlCYXNlLmFwcE9wdGlvbignaGlkZV9uYXZpZ2F0b3InKTtcbiAgICBjaGVja1JlYWR5KCk7XG4gIH1cblxuICBmdW5jdGlvbiBvbkF1dGhTdGF0ZUNoYW5nZShldnQsIGRhdGEpIHtcbiAgICB2bS5hdXRoU3RhdGUgPSBkYXRhO1xuICB9XG5cbiAgZnVuY3Rpb24gb25BcHBJbmZvKCkge1xuICAgIHZtLnRhYnNIb3Jpem9udGFsID0gYzh5QmFzZS5hcHBPcHRpb24oJ3RhYnNIb3Jpem9udGFsJyk7XG4gIH1cblxuICBmdW5jdGlvbiBjaGVja1JlYWR5KCkge1xuICAgIGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjYzh5LWxlZ2FjeS12aWV3Jyk7XG4gICAgY29uc3QgaGFzV2lkdGggPSBlbGVtZW50ICYmIGVsZW1lbnQuY2xpZW50V2lkdGg7XG4gICAgaWYgKGhhc1dpZHRoKSB7XG4gICAgICB2bS53aWR0aFNldCA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgICR0aW1lb3V0KGNoZWNrUmVhZHkpO1xuICAgIH1cbiAgfVxufVxuZXhwb3J0IHsgcm9vdENvbXBvbmVudCB9O1xuIl19