@hpe/angular-toolkit
Version:
Hewlett-Packard Enterprise : Angular toolkit for rapid project development
99 lines (98 loc) • 10.1 kB
JavaScript
/**
* @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 * as tslib_1 from "tslib";
import { ChangeDetectorRef, Component } from '@angular/core';
import { AppEvent } from "@hpe/angular-toolkit/model";
import { AbstractSubscriber } from "@hpe/angular-toolkit/service";
import { EventBusService } from "@hpe/angular-toolkit/service";
var LoadingSpinner = /** @class */ (function (_super) {
tslib_1.__extends(LoadingSpinner, _super);
//-------------------------------------------------------------------------
//---
//--- Constructor
//---
//-------------------------------------------------------------------------
function LoadingSpinner(eventBusService, changeDetectorRef) {
var _this = _super.call(this, eventBusService) || this;
_this.changeDetectorRef = changeDetectorRef;
//-------------------------------------------------------------------------
//---
//--- Variables
//---
//-------------------------------------------------------------------------
_this.state = "loaded";
//-------------------------------------------------------------------------
_this.classes = {
loading: "fa-pulse",
loaded: "loaded",
};
//--- Local Fat Arrow is mandatory in order to preserve 'this'
_super.prototype.subscribeToApp.call(_this, AppEvent.SUBMIT_START, function (event) { return _this.onSubmitStart(event); });
_super.prototype.subscribeToApp.call(_this, AppEvent.SUBMIT_END, function (event) { return _this.onSubmitEnd(event); });
return _this;
}
/**
* @param {?} event
* @return {?}
*/
LoadingSpinner.prototype.onSubmitStart = /**
* @param {?} event
* @return {?}
*/
function (event) {
this.state = "loading";
this.changeDetectorRef.detectChanges();
};
/**
* @param {?} event
* @return {?}
*/
LoadingSpinner.prototype.onSubmitEnd = /**
* @param {?} event
* @return {?}
*/
function (event) {
this.state = "loaded";
this.changeDetectorRef.detectChanges();
};
LoadingSpinner.decorators = [
{ type: Component, args: [{
selector: 'hpe-loading-spinner',
template: "<!--\n=============================================================================\n===\n=== (C) Copyright 2018 Hewlett Packard Enterprise Development LP.\n===\n=== Use of this source code is governed by an MIT-style license that can be\n=== found in the LICENSE file\n=============================================================================\n-->\n\n<div class=\"loadingContainer\" >\n\t<i class=\"fa fa-circle-o-notch fa-2x\" [ngClass]=\"classes[state]\"></i>\n</div>\n",
styles: [".loadingContainer{height:100%;display:flex;align-items:center}.loaded{display:none}"]
},] },
];
/** @nocollapse */
LoadingSpinner.ctorParameters = function () { return [
{ type: EventBusService, },
{ type: ChangeDetectorRef, },
]; };
return LoadingSpinner;
}(AbstractSubscriber));
export { LoadingSpinner };
function LoadingSpinner_tsickle_Closure_declarations() {
/** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
LoadingSpinner.decorators;
/**
* @nocollapse
* @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>}
*/
LoadingSpinner.ctorParameters;
/** @type {?} */
LoadingSpinner.prototype.state;
/** @type {?} */
LoadingSpinner.prototype.classes;
/** @type {?} */
LoadingSpinner.prototype.changeDetectorRef;
}
//=============================================================================
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy1zcGlubmVyLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGhwZS9hbmd1bGFyLXRvb2xraXQvZ3VpL3BhbmVsLyIsInNvdXJjZXMiOlsidG9vbGJhci9sb2FkaW5nLXNwaW5uZXIvbG9hZGluZy1zcGlubmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQVFBLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFNUQsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFnQiw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQVMsOEJBQThCLENBQUM7O0lBMEI1QiwwQ0FBa0I7SUFpQnJELDJFQUEyRTtJQUMzRSxLQUFLO0lBQ0wsaUJBQWlCO0lBQ2pCLEtBQUs7SUFDTCwyRUFBMkU7SUFFM0Usd0JBQVksZUFBaUMsRUFBVSxpQkFBcUM7UUFBNUYsWUFFQyxrQkFBTSxlQUFlLENBQUMsU0FLdEI7UUFQc0QsdUJBQWlCLEdBQWpCLGlCQUFpQixDQUFvQjs7Ozs7O3NCQWYzRSxRQUFROzt3QkFJVDtZQUNmLE9BQU8sRUFBRyxVQUFVO1lBQ3BCLE1BQU0sRUFBSSxRQUFRO1NBQ2xCOztRQWFBLGlCQUFNLGNBQWMsYUFBQyxRQUFRLENBQUMsWUFBWSxFQUFFLFVBQUEsS0FBSyxJQUFJLE9BQUEsS0FBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsRUFBekIsQ0FBeUIsQ0FBQyxDQUFDO1FBQ2hGLGlCQUFNLGNBQWMsYUFBQyxRQUFRLENBQUMsVUFBVSxFQUFJLFVBQUEsS0FBSyxJQUFJLE9BQUEsS0FBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBdkIsQ0FBdUIsQ0FBQyxDQUFDOztLQUM5RTs7Ozs7SUFRTyxzQ0FBYTs7OztjQUFDLEtBQWU7UUFDcEMsSUFBSSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUM7UUFDdkIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxDQUFDOzs7Ozs7SUFLaEMsb0NBQVc7Ozs7Y0FBQyxLQUFlO1FBQ2xDLElBQUksQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQzs7O2dCQXBFeEMsU0FBUyxTQUFDO29CQUNWLFFBQVEsRUFBWSxxQkFBcUI7b0JBQ3pDLFFBQVEsRUFBRSw4ZEFhVjtvQkFDQSxNQUFNLEVBQUUsQ0FBQyxxRkFBcUYsQ0FBQztpQkFDL0Y7Ozs7Z0JBdEJPLGVBQWU7Z0JBSmYsaUJBQWlCOzt5QkFSekI7RUFzQ29DLGtCQUFrQjtTQUF6QyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy89PT1cbi8vPT09IChDKSBDb3B5cmlnaHQgMjAxOCBIZXdsZXR0IFBhY2thcmQgRW50ZXJwcmlzZSBEZXZlbG9wbWVudCBMUC5cbi8vPT09XG4vLz09PSBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuLy89PT0gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZVxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5pbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtBcHBFdmVudH0gICAgICAgICAgIGZyb20gXCJAaHBlL2FuZ3VsYXItdG9vbGtpdC9tb2RlbFwiO1xuaW1wb3J0IHtBYnN0cmFjdFN1YnNjcmliZXJ9IGZyb20gXCJAaHBlL2FuZ3VsYXItdG9vbGtpdC9zZXJ2aWNlXCI7XG5pbXBvcnQge0V2ZW50QnVzU2VydmljZX0gICAgZnJvbSBcIkBocGUvYW5ndWxhci10b29sa2l0L3NlcnZpY2VcIjtcbmltcG9ydCB7SHR0cFNlcnZpY2V9ICAgICAgICBmcm9tIFwiQGhwZS9hbmd1bGFyLXRvb2xraXQvc2VydmljZVwiO1xuXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvciAgICAgIDogICAgICdocGUtbG9hZGluZy1zcGlubmVyJyxcblx0dGVtcGxhdGU6IGA8IS0tXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuPT09XG49PT0gKEMpIENvcHlyaWdodCAyMDE4IEhld2xldHQgUGFja2FyZCBFbnRlcnByaXNlIERldmVsb3BtZW50IExQLlxuPT09XG49PT0gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbj09PSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLS0+XG5cbjxkaXYgY2xhc3M9XCJsb2FkaW5nQ29udGFpbmVyXCIgPlxuXHQ8aSBjbGFzcz1cImZhIGZhLWNpcmNsZS1vLW5vdGNoIGZhLTJ4XCIgW25nQ2xhc3NdPVwiY2xhc3Nlc1tzdGF0ZV1cIj48L2k+XG48L2Rpdj5cbmAsXG5cdHN0eWxlczogW2AubG9hZGluZ0NvbnRhaW5lcntoZWlnaHQ6MTAwJTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyfS5sb2FkZWR7ZGlzcGxheTpub25lfWBdXG59KVxuXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCBjbGFzcyBMb2FkaW5nU3Bpbm5lciBleHRlbmRzIEFic3RyYWN0U3Vic2NyaWJlciB7XG5cblx0Ly8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdC8vLS0tXG5cdC8vLS0tIFZhcmlhYmxlc1xuXHQvLy0tLVxuXHQvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRzdGF0ZSA6IHN0cmluZyA9IFwibG9hZGVkXCI7XG5cblx0Ly8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0Y2xhc3NlcyA6IGFueSA9IHtcblx0XHRsb2FkaW5nIDogXCJmYS1wdWxzZVwiLFxuXHRcdGxvYWRlZCAgOiBcImxvYWRlZFwiLFxuXHR9O1xuXG5cdC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHQvLy0tLVxuXHQvLy0tLSBDb25zdHJ1Y3RvclxuXHQvLy0tLVxuXHQvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRjb25zdHJ1Y3RvcihldmVudEJ1c1NlcnZpY2UgOiBFdmVudEJ1c1NlcnZpY2UsIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWYgOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuXG5cdFx0c3VwZXIoZXZlbnRCdXNTZXJ2aWNlKTtcblxuXHRcdC8vLS0tIExvY2FsIEZhdCBBcnJvdyBpcyBtYW5kYXRvcnkgaW4gb3JkZXIgdG8gcHJlc2VydmUgJ3RoaXMnXG5cdFx0c3VwZXIuc3Vic2NyaWJlVG9BcHAoQXBwRXZlbnQuU1VCTUlUX1NUQVJULCBldmVudCA9PiB0aGlzLm9uU3VibWl0U3RhcnQoZXZlbnQpKTtcblx0XHRzdXBlci5zdWJzY3JpYmVUb0FwcChBcHBFdmVudC5TVUJNSVRfRU5ELCAgIGV2ZW50ID0+IHRoaXMub25TdWJtaXRFbmQoZXZlbnQpKTtcblx0fVxuXG5cdC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHQvLy0tLVxuXHQvLy0tLSBFdmVudCBtZXRob2RzXG5cdC8vLS0tXG5cdC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cdHByaXZhdGUgb25TdWJtaXRTdGFydChldmVudDogQXBwRXZlbnQpIHtcblx0XHR0aGlzLnN0YXRlID0gXCJsb2FkaW5nXCI7XG5cdFx0dGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG5cdH1cblxuXHQvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRwcml2YXRlIG9uU3VibWl0RW5kKGV2ZW50OiBBcHBFdmVudCkge1xuXHRcdHRoaXMuc3RhdGUgPSBcImxvYWRlZFwiO1xuXHRcdHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuXHR9XG59XG5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiJdfQ==