UNPKG

@hpe/angular-toolkit

Version:

Hewlett-Packard Enterprise : Angular toolkit for rapid project development

120 lines (119 loc) 11.1 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes} checked by tsc */ //============================================================================= //=== //=== (C) Copyright 2018 Hewlett Packard Enterprise Development LP. //=== //=== Use of this source code is governed by an MIT-style license that can be //=== found in the LICENSE file //============================================================================= import { Injectable } from '@angular/core'; import { AppEvent } from "@hpe/angular-toolkit/model"; import { AbstractSubscriber } from "./abstract-subscriber"; import { EventBusService } from "./eventbus-service"; /** @enum {number} */ const Status = { LOGIN: 0, LOADING: 1, READY: 2, }; Status[Status.LOGIN] = "LOGIN"; Status[Status.LOADING] = "LOADING"; Status[Status.READY] = "READY"; export class ApplicationService extends AbstractSubscriber { /** * @param {?} eventBusService */ constructor(eventBusService) { super(eventBusService); this.status = Status.LOGIN; super.subscribeToApp(AppEvent.LOGIN_SUCCESS, (event) => this.onLoginSuccess(event)); super.subscribeToApp(AppEvent.LOGIN_FAILED, (event) => this.onLoginFailed(event)); super.subscribeToApp(AppEvent.LOGOUT_SUCCESS, (event) => this.onLogoutSuccess(event)); super.subscribeToApp(AppEvent.LOGOUT_FAILED, (event) => this.onLogoutFailed(event)); super.subscribeToApp(AppEvent.INVALID_TOKEN, (event) => this.onInvalidToken(event)); super.subscribeToApp(AppEvent.APPLICATION_READY, (event) => this.onApplicationReady(event)); } /** * @return {?} */ isStatusLogin() { return this.status == Status.LOGIN; } /** * @return {?} */ isStatusLoading() { return this.status == Status.LOADING; } /** * @return {?} */ isStatusReady() { return this.status == Status.READY; } /** * @param {?} event * @return {?} */ onLoginSuccess(event) { this.status = Status.LOADING; } /** * @param {?} event * @return {?} */ onLoginFailed(event) { this.status = Status.LOGIN; } /** * @param {?} event * @return {?} */ onLogoutSuccess(event) { this.status = Status.LOGIN; } /** * @param {?} event * @return {?} */ onLogoutFailed(event) { this.status = Status.LOGIN; } /** * @param {?} event * @return {?} */ onInvalidToken(event) { this.status = Status.LOGIN; } /** * @param {?} event * @return {?} */ onApplicationReady(event) { this.status = Status.READY; } } ApplicationService.decorators = [ { type: Injectable }, ]; /** @nocollapse */ ApplicationService.ctorParameters = () => [ { type: EventBusService, }, ]; function ApplicationService_tsickle_Closure_declarations() { /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */ ApplicationService.decorators; /** * @nocollapse * @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>} */ ApplicationService.ctorParameters; /** @type {?} */ ApplicationService.prototype.status; } //============================================================================= //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24tc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BocGUvYW5ndWxhci10b29sa2l0L3NlcnZpY2UvIiwic291cmNlcyI6WyJhcHBsaWNhdGlvbi1zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBUUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFjLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQWdCLDRCQUE0QixDQUFDO0FBRTlELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBUyxvQkFBb0IsQ0FBQzs7Ozs7Ozs7OztBQWF0RCxNQUFNLHlCQUEwQixTQUFRLGtCQUFrQjs7OztJQWdCekQsWUFBWSxlQUFnQztRQUUzQyxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7c0JBVkUsTUFBTSxDQUFDLEtBQUs7UUFZckMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFNLENBQUMsS0FBZ0IsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3ZHLEtBQUssQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBTyxDQUFDLEtBQWdCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQU0sS0FBSyxDQUFDLENBQUMsQ0FBQztRQUN2RyxLQUFLLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQUssQ0FBQyxLQUFnQixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFJLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDdkcsS0FBSyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFNLENBQUMsS0FBZ0IsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3ZHLEtBQUssQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBTSxDQUFDLEtBQWdCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUssS0FBSyxDQUFDLENBQUMsQ0FBQztRQUN2RyxLQUFLLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLEtBQWdCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0tBQ3ZHOzs7O0lBUU0sYUFBYTtRQUNuQixNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDOzs7OztJQUs3QixlQUFlO1FBQ3JCLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUM7Ozs7O0lBSy9CLGFBQWE7UUFDbkIsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQzs7Ozs7O0lBUzVCLGNBQWMsQ0FBQyxLQUFnQjtRQUN0QyxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7Ozs7OztJQUt0QixhQUFhLENBQUMsS0FBZ0I7UUFDckMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDOzs7Ozs7SUFLcEIsZUFBZSxDQUFDLEtBQWdCO1FBQ3ZDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQzs7Ozs7O0lBS3BCLGNBQWMsQ0FBQyxLQUFnQjtRQUN0QyxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7Ozs7OztJQUtwQixjQUFjLENBQUMsS0FBZ0I7UUFDdEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDOzs7Ozs7SUFLcEIsa0JBQWtCLENBQUMsS0FBZ0I7UUFDMUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDOzs7O1lBeEY1QixVQUFVOzs7O1lBWkgsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbIi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vPT09XG4vLz09PSAoQykgQ29weXJpZ2h0IDIwMTggSGV3bGV0dCBQYWNrYXJkIEVudGVycHJpc2UgRGV2ZWxvcG1lbnQgTFAuXG4vLz09PVxuLy89PT0gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbi8vPT09IGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGVcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuaW1wb3J0IHtJbmplY3RhYmxlfSAgICAgICAgIGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBcHBFdmVudH0gICAgICAgICAgIGZyb20gXCJAaHBlL2FuZ3VsYXItdG9vbGtpdC9tb2RlbFwiO1xuXG5pbXBvcnQge0Fic3RyYWN0U3Vic2NyaWJlcn0gZnJvbSBcIi4vYWJzdHJhY3Qtc3Vic2NyaWJlclwiO1xuaW1wb3J0IHtFdmVudEJ1c1NlcnZpY2V9ICAgIGZyb20gXCIuL2V2ZW50YnVzLXNlcnZpY2VcIjtcblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5lbnVtIFN0YXR1cyB7XG5cdExPR0lOLFxuXHRMT0FESU5HLFxuXHRSRUFEWVxufVxuXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvblNlcnZpY2UgZXh0ZW5kcyBBYnN0cmFjdFN1YnNjcmliZXIge1xuXG5cdC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHQvLy0tLVxuXHQvLy0tLSBWYXJpYWJsZXNcblx0Ly8tLS1cblx0Ly8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0cHJpdmF0ZSBzdGF0dXMgOiBTdGF0dXMgPSBTdGF0dXMuTE9HSU47XG5cblx0Ly8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdC8vLS0tXG5cdC8vLS0tIENvbnN0cnVjdG9yXG5cdC8vLS0tXG5cdC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdGNvbnN0cnVjdG9yKGV2ZW50QnVzU2VydmljZTogRXZlbnRCdXNTZXJ2aWNlKSB7XG5cblx0XHRzdXBlcihldmVudEJ1c1NlcnZpY2UpO1xuXG5cdFx0c3VwZXIuc3Vic2NyaWJlVG9BcHAoQXBwRXZlbnQuTE9HSU5fU1VDQ0VTUywgICAgIChldmVudCA6IEFwcEV2ZW50KSA9PiB0aGlzLm9uTG9naW5TdWNjZXNzICAgIChldmVudCkpO1xuXHRcdHN1cGVyLnN1YnNjcmliZVRvQXBwKEFwcEV2ZW50LkxPR0lOX0ZBSUxFRCwgICAgICAoZXZlbnQgOiBBcHBFdmVudCkgPT4gdGhpcy5vbkxvZ2luRmFpbGVkICAgICAoZXZlbnQpKTtcblx0XHRzdXBlci5zdWJzY3JpYmVUb0FwcChBcHBFdmVudC5MT0dPVVRfU1VDQ0VTUywgICAgKGV2ZW50IDogQXBwRXZlbnQpID0+IHRoaXMub25Mb2dvdXRTdWNjZXNzICAgKGV2ZW50KSk7XG5cdFx0c3VwZXIuc3Vic2NyaWJlVG9BcHAoQXBwRXZlbnQuTE9HT1VUX0ZBSUxFRCwgICAgIChldmVudCA6IEFwcEV2ZW50KSA9PiB0aGlzLm9uTG9nb3V0RmFpbGVkICAgIChldmVudCkpO1xuXHRcdHN1cGVyLnN1YnNjcmliZVRvQXBwKEFwcEV2ZW50LklOVkFMSURfVE9LRU4sICAgICAoZXZlbnQgOiBBcHBFdmVudCkgPT4gdGhpcy5vbkludmFsaWRUb2tlbiAgICAoZXZlbnQpKTtcblx0XHRzdXBlci5zdWJzY3JpYmVUb0FwcChBcHBFdmVudC5BUFBMSUNBVElPTl9SRUFEWSwgKGV2ZW50IDogQXBwRXZlbnQpID0+IHRoaXMub25BcHBsaWNhdGlvblJlYWR5KGV2ZW50KSk7XG5cdH1cblxuXHQvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0Ly8tLS1cblx0Ly8tLS0gQVBJIG1ldGhvZHNcblx0Ly8tLS1cblx0Ly8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0cHVibGljIGlzU3RhdHVzTG9naW4oKSA6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0aGlzLnN0YXR1cyA9PSBTdGF0dXMuTE9HSU47XG5cdH1cblxuXHQvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRwdWJsaWMgaXNTdGF0dXNMb2FkaW5nKCkgOiBib29sZWFuIHtcblx0XHRyZXR1cm4gdGhpcy5zdGF0dXMgPT0gU3RhdHVzLkxPQURJTkc7XG5cdH1cblxuXHQvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRwdWJsaWMgaXNTdGF0dXNSZWFkeSgpIDogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIHRoaXMuc3RhdHVzID09IFN0YXR1cy5SRUFEWTtcblx0fVxuXG5cdC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHQvLy0tLVxuXHQvLy0tLSBFdmVudHNcblx0Ly8tLS1cblx0Ly8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0cHJpdmF0ZSBvbkxvZ2luU3VjY2VzcyhldmVudCA6IEFwcEV2ZW50KSB7XG5cdFx0dGhpcy5zdGF0dXMgPSBTdGF0dXMuTE9BRElORztcblx0fVxuXG5cdC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdHByaXZhdGUgb25Mb2dpbkZhaWxlZChldmVudCA6IEFwcEV2ZW50KSB7XG5cdFx0dGhpcy5zdGF0dXMgPSBTdGF0dXMuTE9HSU47XG5cdH1cblxuXHQvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRwcml2YXRlIG9uTG9nb3V0U3VjY2VzcyhldmVudCA6IEFwcEV2ZW50KSB7XG5cdFx0dGhpcy5zdGF0dXMgPSBTdGF0dXMuTE9HSU47XG5cdH1cblxuXHQvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRwcml2YXRlIG9uTG9nb3V0RmFpbGVkKGV2ZW50IDogQXBwRXZlbnQpIHtcblx0XHR0aGlzLnN0YXR1cyA9IFN0YXR1cy5MT0dJTjtcblx0fVxuXG5cdC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdHByaXZhdGUgb25JbnZhbGlkVG9rZW4oZXZlbnQgOiBBcHBFdmVudCkge1xuXHRcdHRoaXMuc3RhdHVzID0gU3RhdHVzLkxPR0lOO1xuXHR9XG5cblx0Ly8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0cHJpdmF0ZSBvbkFwcGxpY2F0aW9uUmVhZHkoZXZlbnQgOiBBcHBFdmVudCkge1xuXHRcdHRoaXMuc3RhdHVzID0gU3RhdHVzLlJFQURZO1xuXHR9XG59XG5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiJdfQ==