New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@ngx-loading-bar/core

Package Overview
Dependencies
Maintainers
1
Versions
61
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@ngx-loading-bar/core - npm Package Compare versions

Comparing version 4.2.0 to 5.0.0-alpha.0

esm2015/loading-bar.state.js

717

bundles/ngx-loading-bar-core.umd.js
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('rxjs'), require('rxjs/operators'), require('@angular/common')) :
typeof define === 'function' && define.amd ? define('@ngx-loading-bar/core', ['exports', '@angular/core', 'rxjs', 'rxjs/operators', '@angular/common'], factory) :
(factory((global['ngx-loading-bar'] = global['ngx-loading-bar'] || {}, global['ngx-loading-bar'].core = {}),global.ng.core,global.rxjs,global.rxjs.operators,global.ng.common));
}(this, (function (exports,i0,rxjs,operators,common) { 'use strict';
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('rxjs'), require('rxjs/operators')) :
typeof define === 'function' && define.amd ? define('@ngx-loading-bar/core', ['exports', '@angular/core', '@angular/common', 'rxjs', 'rxjs/operators'], factory) :
(global = global || self, factory((global['ngx-loading-bar'] = global['ngx-loading-bar'] || {}, global['ngx-loading-bar'].core = {}), global.ng.core, global.ng.common, global.rxjs, global.rxjs.operators));
}(this, (function (exports, core, common, rxjs, operators) { 'use strict';
/*! *****************************************************************************
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at http://www.apache.org/licenses/LICENSE-2.0
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
MERCHANTABLITY OR NON-INFRINGEMENT.
See the Apache Version 2.0 License for specific language governing permissions
and limitations under the License.
***************************************************************************** */
/* global Reflect, Promise */
var extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
function __extends(d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
}
var __assign = Object.assign || function __assign(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
}
return t;
};
function __rest(s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)
t[p[i]] = s[p[i]];
return t;
}
function __decorate(decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
}
function __param(paramIndex, decorator) {
return function (target, key) { decorator(target, key, paramIndex); }
}
function __metadata(metadataKey, metadataValue) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
}
function __awaiter(thisArg, _arguments, P, generator) {
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
}
function __generator(thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
if (f = 1, y && (t = y[op[0] & 2 ? "return" : op[0] ? "throw" : "next"]) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [0, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
}
function __exportStar(m, exports) {
for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
}
function __values(o) {
var m = typeof Symbol === "function" && o[Symbol.iterator], i = 0;
if (m) return m.call(o);
return {
next: function () {
if (o && i >= o.length) o = void 0;
return { value: o && o[i++], done: !o };
}
};
}
function __read(o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
}
function __spread() {
for (var ar = [], i = 0; i < arguments.length; i++)
ar = ar.concat(__read(arguments[i]));
return ar;
}
function __await(v) {
return this instanceof __await ? (this.v = v, this) : new __await(v);
}
function __asyncGenerator(thisArg, _arguments, generator) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var g = generator.apply(thisArg, _arguments || []), i, q = [];
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
function fulfill(value) { resume("next", value); }
function reject(value) { resume("throw", value); }
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
}
function __asyncDelegator(o) {
var i, p;
return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
function verb(n, f) { if (o[n]) i[n] = function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; }; }
}
function __asyncValues(o) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var m = o[Symbol.asyncIterator];
return m ? m.call(o) : typeof __values === "function" ? __values(o) : o[Symbol.iterator]();
}
function __makeTemplateObject(cooked, raw) {
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
return cooked;
};
function __importStar(mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
result.default = mod;
return result;
}
function __importDefault(mod) {
return (mod && mod.__esModule) ? mod : { default: mod };
}
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: loading-bar.state.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var LoadingBarService = /** @class */ (function () {
function LoadingBarService(platformId) {
this.platformId = platformId;
this.progress$ = ( /** @type {?} */((new rxjs.Subject()).pipe(operators.debounceTime(0))));
this._pendingRequests = 0;
this._value = 0;
/**
* @record
*/
function ILoadingBarState() { }
if (false) {
/** @type {?} */
ILoadingBarState.prototype.action;
/** @type {?} */
ILoadingBarState.prototype.value;
/** @type {?} */
ILoadingBarState.prototype.initialValue;
}
var LoadingBarState = /** @class */ (function () {
function LoadingBarState() {
var _this = this;
this.state = {
action: null,
value: 0,
initialValue: 0,
};
this.requests = null;
this.disabled = false;
this.stream$ = new rxjs.Subject();
this.value$ = this.stream$.asObservable().pipe(operators.switchMap((/**
* @param {?} s
* @return {?}
*/
function (s) { return _this.timer$(s); })), operators.startWith({ action: null, value: 0 }), operators.shareReplay(), operators.map((/**
* @param {?} s
* @return {?}
*/
function (s) { return s.value; })));
this.timer$ = (/**
* @param {?} s
* @return {?}
*/
function (s) {
/** @type {?} */
var state$ = rxjs.of(s);
switch (s.action) {
case 'start':
case 'increment':
case 'set': {
if (_this.requests > 0) {
state$ = rxjs.timer(0, 250).pipe(operators.map((/**
* @param {?} t
* @return {?}
*/
function (t) { return t === 0
? __assign({}, s, { value: _this.state.value || s.initialValue }) : __assign({}, s, { value: _this._increment() }); })));
}
break;
}
case 'complete':
case 'stop': {
// Attempt to aggregate any start/complete calls within 500ms:
state$ = s.value === 0 ? rxjs.of(__assign({}, s)) : rxjs.timer(0, 500).pipe(operators.take(2), operators.map((/**
* @param {?} t
* @return {?}
*/
function (t) { return ({ value: t === 0 ? 100 : 0 }); })));
break;
}
}
return state$.pipe(operators.map((/**
* @param {?} next
* @return {?}
*/
function (next) { return (/** @type {?} */ ((__assign({}, next, { action: 'set' })))); })), operators.tap((/**
* @param {?} next
* @return {?}
*/
function (next) { return _this.next(next, false); })));
});
}

@@ -22,114 +270,121 @@ /**

*/
LoadingBarService.prototype.start = /**
LoadingBarState.prototype.start = /**
* @param {?=} initialValue
* @return {?}
*/
function (initialValue) {
if (initialValue === void 0) {
initialValue = 2;
}
++this._pendingRequests;
if (this._value === 0 || this._pendingRequests === 1) {
// Inserts the loading bar element into the dom, and sets it to 2%
this.set(this._pendingRequests === 1 && this._value > 0 ? this._value : initialValue);
}
};
function (initialValue) {
if (initialValue === void 0) { initialValue = 2; }
if (this.disabled) {
return;
}
this.next({ action: 'start', initialValue: initialValue });
};
/**
* @return {?}
*/
LoadingBarService.prototype.stop = /**
LoadingBarState.prototype.stop = /**
* @return {?}
*/
function () {
this.complete();
while (this._pendingRequests > 0) {
this.complete();
}
};
function () {
this.next({ action: 'stop' });
};
/**
* @return {?}
*/
LoadingBarService.prototype.complete = /**
LoadingBarState.prototype.complete = /**
* @return {?}
*/
function () {
var _this = this;
if (this._pendingRequests === 0 && this._value === 0) {
return;
}
if (this._pendingRequests > 0) {
--this._pendingRequests;
}
if (this._pendingRequests === 0 || (this._pendingRequests === 0 && this._value > 0)) {
if (this._value !== 100) {
this.set(100);
}
// Attempt to aggregate any start/complete calls within 500ms:
setTimeout(function () { return _this.set(0); }, 500);
}
};
function () {
this.next({ action: 'complete' });
};
/**
* Set the loading bar's width to a certain percent.
*
* @param n any value between 0 and 100
* @return {?}
*/
LoadingBarState.prototype.disable = /**
* @return {?}
*/
function () {
this.disabled = true;
};
/**
* Set the loading bar's width to a certain percent.
*
* @param {?} n any value between 0 and 100
* @param {?} value
* @return {?}
*/
LoadingBarService.prototype.set = /**
* Set the loading bar's width to a certain percent.
*
* @param {?} n any value between 0 and 100
LoadingBarState.prototype.set = /**
* @param {?} value
* @return {?}
*/
function (n) {
var _this = this;
if (!common.isPlatformBrowser(this.platformId)) {
this._pendingRequests = 0;
return;
}
if (n === 0 && this._pendingRequests > 0) {
n = 2;
}
this._value = n;
this.progress$.next(n);
if (this._pendingRequests === 0) {
return;
}
// increment loadingbar to give the illusion that there is always
// progress but make sure to cancel the previous timeouts so we don't
// have multiple incs running at the same time.
clearTimeout(this._incTimeout);
if (this._value > 0 && this._value < 100) {
this._incTimeout = setTimeout(function () { return _this.increment(); }, 250);
}
};
function (value) {
this.next({ action: 'set', value: value });
};
/**
* Increments the loading bar by a random amount
* but slows down as it progresses
* @param {?=} value
* @return {?}
*/
LoadingBarState.prototype.increment = /**
* @param {?=} value
* @return {?}
*/
function (value) {
if (value === void 0) { value = 0; }
this.next({ action: 'increment', value: value });
};
/**
* Increments the loading bar by a random amount
* but slows down as it progresses
* @private
* @param {?} state
* @param {?=} emitEvent
* @return {?}
*/
LoadingBarState.prototype.next = /**
* @private
* @param {?} state
* @param {?=} emitEvent
* @return {?}
*/
function (state, emitEvent) {
if (emitEvent === void 0) { emitEvent = true; }
switch (state.action) {
case 'start':
this.requests = (this.requests || 0) + 1;
break;
case 'complete':
this.requests = (this.requests || 1) - 1;
if (this.requests > 0) {
return;
}
break;
case 'stop':
this.requests = 0;
break;
default:
if (state.action === 'increment') {
state.value = this._increment(state.value);
}
break;
}
/** @type {?} */
var newState = __assign({}, this.state, { action: null }, state);
this.state = newState;
if (emitEvent) {
this.stream$.next(this.state);
}
};
/**
* @private
* @param {?=} rnd
* @return {?}
*/
LoadingBarService.prototype.increment = /**
* Increments the loading bar by a random amount
* but slows down as it progresses
LoadingBarState.prototype._increment = /**
* @private
* @param {?=} rnd
* @return {?}
*/
function (rnd) {
if (rnd === void 0) {
rnd = 0;
}
if (rnd > 0) {
this.set(this._value + rnd);
}
/** @type {?} */
var stat = this._value;
function (rnd) {
if (rnd === void 0) { rnd = 0; }
/** @type {?} */
var stat = this.state.value;
if (stat >= 99) {
rnd = 0;
}
if (rnd === 0) {
if (stat >= 0 && stat < 25) {

@@ -155,29 +410,185 @@ // Start out between 3 - 6% increments

}
this.set(this._value + rnd);
};
}
return rnd + stat;
};
return LoadingBarState;
}());
if (false) {
/**
* @type {?}
* @private
*/
LoadingBarState.prototype.state;
/**
* @type {?}
* @private
*/
LoadingBarState.prototype.requests;
/**
* @type {?}
* @private
*/
LoadingBarState.prototype.disabled;
/**
* @type {?}
* @private
*/
LoadingBarState.prototype.stream$;
/** @type {?} */
LoadingBarState.prototype.value$;
/**
* @type {?}
* @private
*/
LoadingBarState.prototype.timer$;
}
/**
* @fileoverview added by tsickle
* Generated from: loading-bar.service.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var LoadingBarService = /** @class */ (function () {
function LoadingBarService(platformId) {
this.platformId = platformId;
this.refs = {};
this.streams$ = (new rxjs.Subject());
this.value$ = this.streams$.pipe(operators.switchMap((/**
* @param {?} s
* @return {?}
*/
function (s) { return rxjs.combineLatest.apply(void 0, __spread(s)); })), operators.map((/**
* @param {?} v
* @return {?}
*/
function (v) { return Math.max.apply(Math, __spread(v)); })));
}
Object.defineProperty(LoadingBarService.prototype, "progress$", {
/** @deprecated use `value$` instead. */
get: /**
* @deprecated use `value$` instead.
* @return {?}
*/
function () { return this.value$; },
enumerable: true,
configurable: true
});
/** @deprecated use `useRef` instead. */
/**
* @deprecated use `useRef` instead.
* @param {?=} initialValue
* @return {?}
*/
LoadingBarService.prototype.ngOnDestroy = /**
LoadingBarService.prototype.start = /**
* @deprecated use `useRef` instead.
* @param {?=} initialValue
* @return {?}
*/
function () {
this.progress$.complete();
};
function (initialValue) {
if (initialValue === void 0) { initialValue = 2; }
this.useRef().start(initialValue);
};
/** @deprecated use `useRef` instead. */
/**
* @deprecated use `useRef` instead.
* @param {?} value
* @return {?}
*/
LoadingBarService.prototype.set = /**
* @deprecated use `useRef` instead.
* @param {?} value
* @return {?}
*/
function (value) { this.useRef().set(value); };
/** @deprecated use `useRef` instead. */
/**
* @deprecated use `useRef` instead.
* @param {?=} value
* @return {?}
*/
LoadingBarService.prototype.increment = /**
* @deprecated use `useRef` instead.
* @param {?=} value
* @return {?}
*/
function (value) { this.useRef().increment(value); };
/** @deprecated use `useRef` instead. */
/**
* @deprecated use `useRef` instead.
* @return {?}
*/
LoadingBarService.prototype.complete = /**
* @deprecated use `useRef` instead.
* @return {?}
*/
function () { this.useRef().complete(); };
/** @deprecated use `useRef` instead. */
/**
* @deprecated use `useRef` instead.
* @return {?}
*/
LoadingBarService.prototype.stop = /**
* @deprecated use `useRef` instead.
* @return {?}
*/
function () { this.useRef().stop(); };
/**
* @param {?=} id
* @return {?}
*/
LoadingBarService.prototype.useRef = /**
* @param {?=} id
* @return {?}
*/
function (id) {
var _this = this;
if (id === void 0) { id = 'default'; }
if (!this.refs[id]) {
this.refs[id] = new LoadingBarState();
this.streams$.next(Object.keys(this.refs)
.map((/**
* @param {?} s
* @return {?}
*/
function (s) { return _this.refs[s].value$; })));
if (!common.isPlatformBrowser(this.platformId)) {
this.refs[id].disable();
}
}
return this.refs[id];
};
LoadingBarService.decorators = [
{ type: i0.Injectable, args: [{ providedIn: 'root' },] }
{ type: core.Injectable, args: [{ providedIn: 'root' },] }
];
/** @nocollapse */
LoadingBarService.ctorParameters = function () {
return [
{ type: Object, decorators: [{ type: i0.Inject, args: [i0.PLATFORM_ID,] }] }
];
};
/** @nocollapse */ LoadingBarService.ngInjectableDef = i0.defineInjectable({ factory: function LoadingBarService_Factory() { return new LoadingBarService(i0.inject(i0.PLATFORM_ID)); }, token: LoadingBarService, providedIn: "root" });
LoadingBarService.ctorParameters = function () { return [
{ type: Object, decorators: [{ type: core.Inject, args: [core.PLATFORM_ID,] }] }
]; };
/** @nocollapse */ LoadingBarService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function LoadingBarService_Factory() { return new LoadingBarService(core.ɵɵinject(core.PLATFORM_ID)); }, token: LoadingBarService, providedIn: "root" });
return LoadingBarService;
}());
if (false) {
/**
* @type {?}
* @private
*/
LoadingBarService.prototype.refs;
/**
* @type {?}
* @private
*/
LoadingBarService.prototype.streams$;
/** @type {?} */
LoadingBarService.prototype.value$;
/**
* @type {?}
* @private
*/
LoadingBarService.prototype.platformId;
}
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: loading-bar.component.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -190,37 +601,74 @@ var LoadingBarComponent = /** @class */ (function () {

this.fixed = true;
this.value = null;
this.value$ = this.loader.progress$;
}
/**
* @param {?} changes
* @return {?}
*/
LoadingBarComponent.prototype.ngOnChanges = /**
* @param {?} changes
* @return {?}
*/
function (changes) {
if (changes.ref) {
this.value$ = this.ref
? this.loader.useRef(this.ref).value$
: this.loader.value$;
}
};
LoadingBarComponent.decorators = [
{ type: i0.Component, args: [{
{ type: core.Component, args: [{
selector: 'ngx-loading-bar',
template: "\n <ng-container *ngIf=\"(value !== null ? value : loader.progress$|async) as progress\">\n <div id=\"loading-bar-spinner\" *ngIf=\"includeSpinner\" [style.color]=\"color\">\n <div [style.width]=\"diameter\" [style.height]=\"diameter\" class=\"spinner-icon\"></div>\n </div>\n <div id=\"loading-bar\" *ngIf=\"includeBar\" [style.color]=\"color\">\n <div class=\"bar\" [style.background]=\"color\" [style.height]=\"height\" [style.width]=\"progress + '%'\">\n <div class=\"peg\" [style.height]=\"height\"></div>\n </div>\n </div>\n </ng-container>\n ",
template: "\n <ng-container *ngIf=\"(value != null ? value : value$|async) as progress\">\n <div id=\"loading-bar-spinner\" *ngIf=\"includeSpinner\" [style.color]=\"color\">\n <div [style.width]=\"diameter\" [style.height]=\"diameter\" class=\"spinner-icon\"></div>\n </div>\n <div id=\"loading-bar\" *ngIf=\"includeBar\" [style.color]=\"color\">\n <div class=\"bar\" [style.background]=\"color\" [style.height]=\"height\" [style.width]=\"progress + '%'\">\n <div class=\"peg\" [style.height]=\"height\"></div>\n </div>\n </div>\n </ng-container>\n ",
preserveWhitespaces: false,
encapsulation: i0.ViewEncapsulation.Emulated,
encapsulation: core.ViewEncapsulation.Emulated,
host: {
'[class.loading-bar-fixed]': 'fixed',
},
styles: [":host{position:relative;display:block}:host.loading-bar-fixed>div .bar{position:fixed}:host.loading-bar-fixed>div#loading-bar-spinner{position:fixed;top:10px;left:10px}[dir=rtl] :host.loading-bar-fixed>div#loading-bar-spinner{right:10px;left:unset}:host.loading-bar-fixed>div .peg{display:block}:host>div{pointer-events:none;transition:350ms linear;color:#29d}:host>div .bar{transition:width 350ms;background:#29d;position:absolute;z-index:10002;top:0;left:0;width:100%;height:2px;border-bottom-right-radius:1px;border-top-right-radius:1px}[dir=rtl] :host>div .bar{right:0;left:unset}:host>div .peg{display:none;position:absolute;width:70px;right:0;top:0;height:2px;opacity:.45;box-shadow:1px 0 6px 1px;color:inherit;border-radius:100%}:host>div#loading-bar-spinner{display:block;position:absolute;z-index:10002;top:5px;left:0}:host>div#loading-bar-spinner .spinner-icon{width:14px;height:14px;border:2px solid transparent;border-top-color:inherit;border-left-color:inherit;border-radius:50%;-webkit-animation:.4s linear infinite loading-bar-spinner;animation:.4s linear infinite loading-bar-spinner}@-webkit-keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}"]
styles: [":host{position:relative;display:block}:host.loading-bar-fixed>div .bar{position:fixed}:host.loading-bar-fixed>div#loading-bar-spinner{position:fixed;top:10px;left:10px}[dir=rtl] :host.loading-bar-fixed>div#loading-bar-spinner{right:10px;left:unset}:host.loading-bar-fixed>div .peg{display:block}:host>div{pointer-events:none;-webkit-transition:350ms linear;transition:350ms linear;color:#29d}:host>div .bar{-webkit-transition:width 350ms;transition:width 350ms;background:#29d;position:absolute;z-index:10002;top:0;left:0;width:100%;height:2px;border-bottom-right-radius:1px;border-top-right-radius:1px}[dir=rtl] :host>div .bar{right:0;left:unset}:host>div .peg{display:none;position:absolute;width:70px;right:0;top:0;height:2px;opacity:.45;box-shadow:1px 0 6px 1px;color:inherit;border-radius:100%}:host>div#loading-bar-spinner{display:block;position:absolute;z-index:10002;top:5px;left:0}:host>div#loading-bar-spinner .spinner-icon{width:14px;height:14px;border:2px solid transparent;border-top-color:inherit;border-left-color:inherit;border-radius:50%;-webkit-animation:.4s linear infinite loading-bar-spinner;animation:.4s linear infinite loading-bar-spinner}@-webkit-keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}"]
}] }
];
/** @nocollapse */
LoadingBarComponent.ctorParameters = function () {
return [
{ type: LoadingBarService }
];
};
LoadingBarComponent.ctorParameters = function () { return [
{ type: LoadingBarService }
]; };
LoadingBarComponent.propDecorators = {
includeSpinner: [{ type: i0.Input }],
includeBar: [{ type: i0.Input }],
fixed: [{ type: i0.Input }],
color: [{ type: i0.Input }],
height: [{ type: i0.Input }],
diameter: [{ type: i0.Input }],
value: [{ type: i0.Input }]
includeSpinner: [{ type: core.Input }],
includeBar: [{ type: core.Input }],
fixed: [{ type: core.Input }],
color: [{ type: core.Input }],
value: [{ type: core.Input }],
ref: [{ type: core.Input }],
height: [{ type: core.Input }],
diameter: [{ type: core.Input }]
};
return LoadingBarComponent;
}());
if (false) {
/** @type {?} */
LoadingBarComponent.prototype.includeSpinner;
/** @type {?} */
LoadingBarComponent.prototype.includeBar;
/** @type {?} */
LoadingBarComponent.prototype.fixed;
/** @type {?} */
LoadingBarComponent.prototype.color;
/** @type {?} */
LoadingBarComponent.prototype.value;
/** @type {?} */
LoadingBarComponent.prototype.ref;
/** @type {?} */
LoadingBarComponent.prototype.height;
/** @type {?} */
LoadingBarComponent.prototype.diameter;
/** @type {?} */
LoadingBarComponent.prototype.value$;
/** @type {?} */
LoadingBarComponent.prototype.loader;
}
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: core.module.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -231,3 +679,3 @@ var LoadingBarModule = /** @class */ (function () {

LoadingBarModule.decorators = [
{ type: i0.NgModule, args: [{
{ type: core.NgModule, args: [{
imports: [common.CommonModule],

@@ -241,14 +689,4 @@ declarations: [LoadingBarComponent],

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
exports.LoadingBarComponent = LoadingBarComponent;
exports.LoadingBarModule = LoadingBarModule;
exports.LoadingBarComponent = LoadingBarComponent;
exports.LoadingBarService = LoadingBarService;

@@ -259,3 +697,2 @@

})));
//# sourceMappingURL=ngx-loading-bar-core.umd.js.map
//# sourceMappingURL=ngx-loading-bar-core.umd.js.map

@@ -1,2 +0,16 @@

!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("rxjs"),require("rxjs/operators"),require("@angular/common")):"function"==typeof define&&define.amd?define("@ngx-loading-bar/core",["exports","@angular/core","rxjs","rxjs/operators","@angular/common"],t):t((e["ngx-loading-bar"]=e["ngx-loading-bar"]||{},e["ngx-loading-bar"].core={}),e.ng.core,e.rxjs,e.rxjs.operators,e.ng.common)}(this,function(e,t,i,n,r){"use strict";var o=function(){function e(e){this.platformId=e,this.progress$=(new i.Subject).pipe(n.debounceTime(0)),this._pendingRequests=0,this._value=0}return e.prototype.start=function(e){void 0===e&&(e=2),++this._pendingRequests,0!==this._value&&1!==this._pendingRequests||this.set(1===this._pendingRequests&&0<this._value?this._value:e)},e.prototype.stop=function(){for(this.complete();0<this._pendingRequests;)this.complete()},e.prototype.complete=function(){var e=this;0===this._pendingRequests&&0===this._value||(0<this._pendingRequests&&--this._pendingRequests,(0===this._pendingRequests||0===this._pendingRequests&&0<this._value)&&(100!==this._value&&this.set(100),setTimeout(function(){return e.set(0)},500)))},e.prototype.set=function(e){var t=this;r.isPlatformBrowser(this.platformId)?(0===e&&0<this._pendingRequests&&(e=2),this._value=e,this.progress$.next(e),0!==this._pendingRequests&&(clearTimeout(this._incTimeout),0<this._value&&this._value<100&&(this._incTimeout=setTimeout(function(){return t.increment()},250)))):this._pendingRequests=0},e.prototype.increment=function(e){void 0===e&&(e=0),0<e&&this.set(this._value+e);var t=this._value;e=0<=t&&t<25?3*Math.random()+3:25<=t&&t<65?3*Math.random():65<=t&&t<90?2*Math.random():90<=t&&t<99?.5:0,this.set(this._value+e)},e.prototype.ngOnDestroy=function(){this.progress$.complete()},e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[{type:Object,decorators:[{type:t.Inject,args:[t.PLATFORM_ID]}]}]},e.ngInjectableDef=t.defineInjectable({factory:function(){return new e(t.inject(t.PLATFORM_ID))},token:e,providedIn:"root"}),e}(),s=function(){function e(e){this.loader=e,this.includeSpinner=!0,this.includeBar=!0,this.fixed=!0,this.value=null}return e.decorators=[{type:t.Component,args:[{selector:"ngx-loading-bar",template:'\n <ng-container *ngIf="(value !== null ? value : loader.progress$|async) as progress">\n <div id="loading-bar-spinner" *ngIf="includeSpinner" [style.color]="color">\n <div [style.width]="diameter" [style.height]="diameter" class="spinner-icon"></div>\n </div>\n <div id="loading-bar" *ngIf="includeBar" [style.color]="color">\n <div class="bar" [style.background]="color" [style.height]="height" [style.width]="progress + \'%\'">\n <div class="peg" [style.height]="height"></div>\n </div>\n </div>\n </ng-container>\n ',preserveWhitespaces:!1,encapsulation:t.ViewEncapsulation.Emulated,host:{"[class.loading-bar-fixed]":"fixed"},styles:[":host{position:relative;display:block}:host.loading-bar-fixed>div .bar{position:fixed}:host.loading-bar-fixed>div#loading-bar-spinner{position:fixed;top:10px;left:10px}[dir=rtl] :host.loading-bar-fixed>div#loading-bar-spinner{right:10px;left:unset}:host.loading-bar-fixed>div .peg{display:block}:host>div{pointer-events:none;transition:350ms linear;color:#29d}:host>div .bar{transition:width 350ms;background:#29d;position:absolute;z-index:10002;top:0;left:0;width:100%;height:2px;border-bottom-right-radius:1px;border-top-right-radius:1px}[dir=rtl] :host>div .bar{right:0;left:unset}:host>div .peg{display:none;position:absolute;width:70px;right:0;top:0;height:2px;opacity:.45;box-shadow:1px 0 6px 1px;color:inherit;border-radius:100%}:host>div#loading-bar-spinner{display:block;position:absolute;z-index:10002;top:5px;left:0}:host>div#loading-bar-spinner .spinner-icon{width:14px;height:14px;border:2px solid transparent;border-top-color:inherit;border-left-color:inherit;border-radius:50%;-webkit-animation:.4s linear infinite loading-bar-spinner;animation:.4s linear infinite loading-bar-spinner}@-webkit-keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}"]}]}],e.ctorParameters=function(){return[{type:o}]},e.propDecorators={includeSpinner:[{type:t.Input}],includeBar:[{type:t.Input}],fixed:[{type:t.Input}],color:[{type:t.Input}],height:[{type:t.Input}],diameter:[{type:t.Input}],value:[{type:t.Input}]},e}(),a=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[r.CommonModule],declarations:[s],exports:[s]}]}],e}();e.LoadingBarModule=a,e.LoadingBarComponent=s,e.LoadingBarService=o,Object.defineProperty(e,"__esModule",{value:!0})});
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/common"),require("rxjs"),require("rxjs/operators")):"function"==typeof define&&define.amd?define("@ngx-loading-bar/core",["exports","@angular/core","@angular/common","rxjs","rxjs/operators"],e):e(((t=t||self)["ngx-loading-bar"]=t["ngx-loading-bar"]||{},t["ngx-loading-bar"].core={}),t.ng.core,t.ng.common,t.rxjs,t.rxjs.operators)}(this,(function(t,e,r,n,i){"use strict";
/*! *****************************************************************************
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at http://www.apache.org/licenses/LICENSE-2.0
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
MERCHANTABLITY OR NON-INFRINGEMENT.
See the Apache Version 2.0 License for specific language governing permissions
and limitations under the License.
***************************************************************************** */Object.setPrototypeOf;var o=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var i in e=arguments[r])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t};function a(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a}function s(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(a(arguments[e]));return t}var p=function(){function t(){var t=this;this.state={action:null,value:0,initialValue:0},this.requests=null,this.disabled=!1,this.stream$=new n.Subject,this.value$=this.stream$.asObservable().pipe(i.switchMap((function(e){return t.timer$(e)})),i.startWith({action:null,value:0}),i.shareReplay(),i.map((function(t){return t.value}))),this.timer$=function(e){var r=n.of(e);switch(e.action){case"start":case"increment":case"set":t.requests>0&&(r=n.timer(0,250).pipe(i.map((function(r){return o({},e,0===r?{value:t.state.value||e.initialValue}:{value:t._increment()})}))));break;case"complete":case"stop":r=0===e.value?n.of(o({},e)):n.timer(0,500).pipe(i.take(2),i.map((function(t){return{value:0===t?100:0}})))}return r.pipe(i.map((function(t){return o({},t,{action:"set"})})),i.tap((function(e){return t.next(e,!1)})))}}return t.prototype.start=function(t){void 0===t&&(t=2),this.disabled||this.next({action:"start",initialValue:t})},t.prototype.stop=function(){this.next({action:"stop"})},t.prototype.complete=function(){this.next({action:"complete"})},t.prototype.disable=function(){this.disabled=!0},t.prototype.set=function(t){this.next({action:"set",value:t})},t.prototype.increment=function(t){void 0===t&&(t=0),this.next({action:"increment",value:t})},t.prototype.next=function(t,e){switch(void 0===e&&(e=!0),t.action){case"start":this.requests=(this.requests||0)+1;break;case"complete":if(this.requests=(this.requests||1)-1,this.requests>0)return;break;case"stop":this.requests=0;break;default:"increment"===t.action&&(t.value=this._increment(t.value))}var r=o({},this.state,{action:null},t);this.state=r,e&&this.stream$.next(this.state)},t.prototype._increment=function(t){void 0===t&&(t=0);var e=this.state.value;return e>=99&&(t=0),0===t&&(t=e>=0&&e<25?3*Math.random()+3:e>=25&&e<65?3*Math.random():e>=65&&e<90?2*Math.random():e>=90&&e<99?.5:0),t+e},t}();var l=function(){function t(t){this.platformId=t,this.refs={},this.streams$=new n.Subject,this.value$=this.streams$.pipe(i.switchMap((function(t){return n.combineLatest.apply(void 0,s(t))})),i.map((function(t){return Math.max.apply(Math,s(t))})))}return Object.defineProperty(t.prototype,"progress$",{get:function(){return this.value$},enumerable:!0,configurable:!0}),t.prototype.start=function(t){void 0===t&&(t=2),this.useRef().start(t)},t.prototype.set=function(t){this.useRef().set(t)},t.prototype.increment=function(t){this.useRef().increment(t)},t.prototype.complete=function(){this.useRef().complete()},t.prototype.stop=function(){this.useRef().stop()},t.prototype.useRef=function(t){var e=this;return void 0===t&&(t="default"),this.refs[t]||(this.refs[t]=new p,this.streams$.next(Object.keys(this.refs).map((function(t){return e.refs[t].value$}))),r.isPlatformBrowser(this.platformId)||this.refs[t].disable()),this.refs[t]},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:Object,decorators:[{type:e.Inject,args:[e.PLATFORM_ID]}]}]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t(e.ɵɵinject(e.PLATFORM_ID))},token:t,providedIn:"root"}),t}();var u=function(){function t(t){this.loader=t,this.includeSpinner=!0,this.includeBar=!0,this.fixed=!0,this.value$=this.loader.progress$}return t.prototype.ngOnChanges=function(t){t.ref&&(this.value$=this.ref?this.loader.useRef(this.ref).value$:this.loader.value$)},t.decorators=[{type:e.Component,args:[{selector:"ngx-loading-bar",template:'\n <ng-container *ngIf="(value != null ? value : value$|async) as progress">\n <div id="loading-bar-spinner" *ngIf="includeSpinner" [style.color]="color">\n <div [style.width]="diameter" [style.height]="diameter" class="spinner-icon"></div>\n </div>\n <div id="loading-bar" *ngIf="includeBar" [style.color]="color">\n <div class="bar" [style.background]="color" [style.height]="height" [style.width]="progress + \'%\'">\n <div class="peg" [style.height]="height"></div>\n </div>\n </div>\n </ng-container>\n ',preserveWhitespaces:!1,encapsulation:e.ViewEncapsulation.Emulated,host:{"[class.loading-bar-fixed]":"fixed"},styles:[":host{position:relative;display:block}:host.loading-bar-fixed>div .bar{position:fixed}:host.loading-bar-fixed>div#loading-bar-spinner{position:fixed;top:10px;left:10px}[dir=rtl] :host.loading-bar-fixed>div#loading-bar-spinner{right:10px;left:unset}:host.loading-bar-fixed>div .peg{display:block}:host>div{pointer-events:none;-webkit-transition:350ms linear;transition:350ms linear;color:#29d}:host>div .bar{-webkit-transition:width 350ms;transition:width 350ms;background:#29d;position:absolute;z-index:10002;top:0;left:0;width:100%;height:2px;border-bottom-right-radius:1px;border-top-right-radius:1px}[dir=rtl] :host>div .bar{right:0;left:unset}:host>div .peg{display:none;position:absolute;width:70px;right:0;top:0;height:2px;opacity:.45;box-shadow:1px 0 6px 1px;color:inherit;border-radius:100%}:host>div#loading-bar-spinner{display:block;position:absolute;z-index:10002;top:5px;left:0}:host>div#loading-bar-spinner .spinner-icon{width:14px;height:14px;border:2px solid transparent;border-top-color:inherit;border-left-color:inherit;border-radius:50%;-webkit-animation:.4s linear infinite loading-bar-spinner;animation:.4s linear infinite loading-bar-spinner}@-webkit-keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}"]}]}],t.ctorParameters=function(){return[{type:l}]},t.propDecorators={includeSpinner:[{type:e.Input}],includeBar:[{type:e.Input}],fixed:[{type:e.Input}],color:[{type:e.Input}],value:[{type:e.Input}],ref:[{type:e.Input}],height:[{type:e.Input}],diameter:[{type:e.Input}]},t}();var c=function(){function t(){}return t.decorators=[{type:e.NgModule,args:[{imports:[r.CommonModule],declarations:[u],exports:[u]}]}],t}();t.LoadingBarComponent=u,t.LoadingBarModule=c,t.LoadingBarService=l,Object.defineProperty(t,"__esModule",{value:!0})}));
//# sourceMappingURL=ngx-loading-bar-core.umd.min.js.map

5

esm2015/core.module.js
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: core.module.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -17,2 +18,2 @@ import { NgModule } from '@angular/core';

];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4LWxvYWRpbmctYmFyL2NvcmUvIiwic291cmNlcyI6WyJjb3JlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFPOUQsTUFBTSxPQUFPLGdCQUFnQjs7O1lBTDVCLFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7Z0JBQ3ZCLFlBQVksRUFBRSxDQUFDLG1CQUFtQixDQUFDO2dCQUNuQyxPQUFPLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQzthQUMvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTG9hZGluZ0JhckNvbXBvbmVudCB9IGZyb20gJy4vbG9hZGluZy1iYXIuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogW0xvYWRpbmdCYXJDb21wb25lbnRdLFxuICBleHBvcnRzOiBbTG9hZGluZ0JhckNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIExvYWRpbmdCYXJNb2R1bGUge31cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4LWxvYWRpbmctYmFyL2NvcmUvIiwic291cmNlcyI6WyJjb3JlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBTzlELE1BQU0sT0FBTyxnQkFBZ0I7OztZQUw1QixRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO2dCQUN2QixZQUFZLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztnQkFDbkMsT0FBTyxFQUFFLENBQUMsbUJBQW1CLENBQUM7YUFDL0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IExvYWRpbmdCYXJDb21wb25lbnQgfSBmcm9tICcuL2xvYWRpbmctYmFyLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtMb2FkaW5nQmFyQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW0xvYWRpbmdCYXJDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBMb2FkaW5nQmFyTW9kdWxlIHt9XG4iXX0=
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: loading-bar.component.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -16,4 +17,15 @@ import { Component, Input, ViewEncapsulation } from '@angular/core';

this.fixed = true;
this.value = null;
this.value$ = this.loader.progress$;
}
/**
* @param {?} changes
* @return {?}
*/
ngOnChanges(changes) {
if (changes.ref) {
this.value$ = this.ref
? this.loader.useRef(this.ref).value$
: this.loader.value$;
}
}
}

@@ -24,3 +36,3 @@ LoadingBarComponent.decorators = [

template: `
<ng-container *ngIf="(value !== null ? value : loader.progress$|async) as progress">
<ng-container *ngIf="(value != null ? value : value$|async) as progress">
<div id="loading-bar-spinner" *ngIf="includeSpinner" [style.color]="color">

@@ -41,3 +53,3 @@ <div [style.width]="diameter" [style.height]="diameter" class="spinner-icon"></div>

},
styles: [":host{position:relative;display:block}:host.loading-bar-fixed>div .bar{position:fixed}:host.loading-bar-fixed>div#loading-bar-spinner{position:fixed;top:10px;left:10px}[dir=rtl] :host.loading-bar-fixed>div#loading-bar-spinner{right:10px;left:unset}:host.loading-bar-fixed>div .peg{display:block}:host>div{pointer-events:none;transition:350ms linear;color:#29d}:host>div .bar{transition:width 350ms;background:#29d;position:absolute;z-index:10002;top:0;left:0;width:100%;height:2px;border-bottom-right-radius:1px;border-top-right-radius:1px}[dir=rtl] :host>div .bar{right:0;left:unset}:host>div .peg{display:none;position:absolute;width:70px;right:0;top:0;height:2px;opacity:.45;box-shadow:1px 0 6px 1px;color:inherit;border-radius:100%}:host>div#loading-bar-spinner{display:block;position:absolute;z-index:10002;top:5px;left:0}:host>div#loading-bar-spinner .spinner-icon{width:14px;height:14px;border:2px solid transparent;border-top-color:inherit;border-left-color:inherit;border-radius:50%;-webkit-animation:.4s linear infinite loading-bar-spinner;animation:.4s linear infinite loading-bar-spinner}@-webkit-keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}"]
styles: [":host{position:relative;display:block}:host.loading-bar-fixed>div .bar{position:fixed}:host.loading-bar-fixed>div#loading-bar-spinner{position:fixed;top:10px;left:10px}[dir=rtl] :host.loading-bar-fixed>div#loading-bar-spinner{right:10px;left:unset}:host.loading-bar-fixed>div .peg{display:block}:host>div{pointer-events:none;-webkit-transition:350ms linear;transition:350ms linear;color:#29d}:host>div .bar{-webkit-transition:width 350ms;transition:width 350ms;background:#29d;position:absolute;z-index:10002;top:0;left:0;width:100%;height:2px;border-bottom-right-radius:1px;border-top-right-radius:1px}[dir=rtl] :host>div .bar{right:0;left:unset}:host>div .peg{display:none;position:absolute;width:70px;right:0;top:0;height:2px;opacity:.45;box-shadow:1px 0 6px 1px;color:inherit;border-radius:100%}:host>div#loading-bar-spinner{display:block;position:absolute;z-index:10002;top:5px;left:0}:host>div#loading-bar-spinner .spinner-icon{width:14px;height:14px;border:2px solid transparent;border-top-color:inherit;border-left-color:inherit;border-radius:50%;-webkit-animation:.4s linear infinite loading-bar-spinner;animation:.4s linear infinite loading-bar-spinner}@-webkit-keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}"]
}] }

@@ -54,5 +66,6 @@ ];

color: [{ type: Input }],
value: [{ type: Input }],
ref: [{ type: Input }],
height: [{ type: Input }],
diameter: [{ type: Input }],
value: [{ type: Input }]
diameter: [{ type: Input }]
};

@@ -69,2 +82,6 @@ if (false) {

/** @type {?} */
LoadingBarComponent.prototype.value;
/** @type {?} */
LoadingBarComponent.prototype.ref;
/** @type {?} */
LoadingBarComponent.prototype.height;

@@ -74,6 +91,6 @@ /** @type {?} */

/** @type {?} */
LoadingBarComponent.prototype.value;
LoadingBarComponent.prototype.value$;
/** @type {?} */
LoadingBarComponent.prototype.loader;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neC1sb2FkaW5nLWJhci9jb3JlLyIsInNvdXJjZXMiOlsibG9hZGluZy1iYXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBMkIsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUF1QjFELE1BQU0sT0FBTyxtQkFBbUI7Ozs7SUFTOUIsWUFBbUIsTUFBeUI7UUFBekIsV0FBTSxHQUFOLE1BQU0sQ0FBbUI7UUFSbkMsbUJBQWMsR0FBRyxJQUFJLENBQUM7UUFDdEIsZUFBVSxHQUFHLElBQUksQ0FBQztRQUNsQixVQUFLLEdBQUcsSUFBSSxDQUFDO1FBSWIsVUFBSyxHQUFHLElBQUksQ0FBQztJQUV5QixDQUFDOzs7WUE5QmpELFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsaUJBQWlCO2dCQUMzQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7O0dBV1Q7Z0JBQ0QsbUJBQW1CLEVBQUUsS0FBSztnQkFDMUIsYUFBYSxFQUFFLGlCQUFpQixDQUFDLFFBQVE7Z0JBRXpDLElBQUksRUFBRTtvQkFDSiwyQkFBMkIsRUFBRSxPQUFPO2lCQUNyQzs7YUFDRjs7OztZQXRCUSxpQkFBaUI7Ozs2QkF3QnZCLEtBQUs7eUJBQ0wsS0FBSztvQkFDTCxLQUFLO29CQUNMLEtBQUs7cUJBQ0wsS0FBSzt1QkFDTCxLQUFLO29CQUNMLEtBQUs7Ozs7SUFOTiw2Q0FBK0I7O0lBQy9CLHlDQUEyQjs7SUFDM0Isb0NBQXNCOztJQUN0QixvQ0FBZTs7SUFDZixxQ0FBZ0I7O0lBQ2hCLHVDQUFrQjs7SUFDbEIsb0NBQXNCOztJQUVWLHFDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTG9hZGluZ0JhclNlcnZpY2UgfSBmcm9tICcuL2xvYWRpbmctYmFyLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3gtbG9hZGluZy1iYXInLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIodmFsdWUgIT09IG51bGwgPyB2YWx1ZSA6IGxvYWRlci5wcm9ncmVzcyR8YXN5bmMpIGFzIHByb2dyZXNzXCI+XG4gICAgICA8ZGl2IGlkPVwibG9hZGluZy1iYXItc3Bpbm5lclwiICpuZ0lmPVwiaW5jbHVkZVNwaW5uZXJcIiBbc3R5bGUuY29sb3JdPVwiY29sb3JcIj5cbiAgICAgICAgPGRpdiBbc3R5bGUud2lkdGhdPVwiZGlhbWV0ZXJcIiBbc3R5bGUuaGVpZ2h0XT1cImRpYW1ldGVyXCIgY2xhc3M9XCJzcGlubmVyLWljb25cIj48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBpZD1cImxvYWRpbmctYmFyXCIgKm5nSWY9XCJpbmNsdWRlQmFyXCIgW3N0eWxlLmNvbG9yXT1cImNvbG9yXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJiYXJcIiBbc3R5bGUuYmFja2dyb3VuZF09XCJjb2xvclwiIFtzdHlsZS5oZWlnaHRdPVwiaGVpZ2h0XCIgW3N0eWxlLndpZHRoXT1cInByb2dyZXNzICsgJyUnXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInBlZ1wiIFtzdHlsZS5oZWlnaHRdPVwiaGVpZ2h0XCI+PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIGAsXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5FbXVsYXRlZCxcbiAgc3R5bGVVcmxzOiBbJy4vbG9hZGluZy1iYXIuY29tcG9uZW50LnNjc3MnXSxcbiAgaG9zdDoge1xuICAgICdbY2xhc3MubG9hZGluZy1iYXItZml4ZWRdJzogJ2ZpeGVkJyxcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBMb2FkaW5nQmFyQ29tcG9uZW50IHtcbiAgQElucHV0KCkgaW5jbHVkZVNwaW5uZXIgPSB0cnVlO1xuICBASW5wdXQoKSBpbmNsdWRlQmFyID0gdHJ1ZTtcbiAgQElucHV0KCkgZml4ZWQgPSB0cnVlO1xuICBASW5wdXQoKSBjb2xvcjtcbiAgQElucHV0KCkgaGVpZ2h0O1xuICBASW5wdXQoKSBkaWFtZXRlcjtcbiAgQElucHV0KCkgdmFsdWUgPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBsb2FkZXI6IExvYWRpbmdCYXJTZXJ2aWNlKSB7fVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neC1sb2FkaW5nLWJhci9jb3JlLyIsInNvdXJjZXMiOlsibG9hZGluZy1iYXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBdUIxRCxNQUFNLE9BQU8sbUJBQW1COzs7O0lBWTlCLFlBQW1CLE1BQXlCO1FBQXpCLFdBQU0sR0FBTixNQUFNLENBQW1CO1FBWG5DLG1CQUFjLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLGVBQVUsR0FBRyxJQUFJLENBQUM7UUFDbEIsVUFBSyxHQUFHLElBQUksQ0FBQztRQU90QixXQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7SUFFZ0IsQ0FBQzs7Ozs7SUFFaEQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLEdBQUcsRUFBRTtZQUNmLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUc7Z0JBQ3BCLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTTtnQkFDckMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO1NBQ3hCO0lBQ0gsQ0FBQzs7O1lBekNGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsaUJBQWlCO2dCQUMzQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7O0dBV1Q7Z0JBQ0QsbUJBQW1CLEVBQUUsS0FBSztnQkFDMUIsYUFBYSxFQUFFLGlCQUFpQixDQUFDLFFBQVE7Z0JBRXpDLElBQUksRUFBRTtvQkFDSiwyQkFBMkIsRUFBRSxPQUFPO2lCQUNyQzs7YUFDRjs7OztZQXRCUSxpQkFBaUI7Ozs2QkF3QnZCLEtBQUs7eUJBQ0wsS0FBSztvQkFDTCxLQUFLO29CQUNMLEtBQUs7b0JBQ0wsS0FBSztrQkFDTCxLQUFLO3FCQUNMLEtBQUs7dUJBQ0wsS0FBSzs7OztJQVBOLDZDQUErQjs7SUFDL0IseUNBQTJCOztJQUMzQixvQ0FBc0I7O0lBQ3RCLG9DQUF1Qjs7SUFDdkIsb0NBQXVCOztJQUN2QixrQ0FBcUI7O0lBQ3JCLHFDQUF3Qjs7SUFDeEIsdUNBQTBCOztJQUUxQixxQ0FBK0I7O0lBRW5CLHFDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uLCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExvYWRpbmdCYXJTZXJ2aWNlIH0gZnJvbSAnLi9sb2FkaW5nLWJhci5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmd4LWxvYWRpbmctYmFyJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiKHZhbHVlICE9IG51bGwgPyB2YWx1ZSA6IHZhbHVlJHxhc3luYykgYXMgcHJvZ3Jlc3NcIj5cbiAgICAgIDxkaXYgaWQ9XCJsb2FkaW5nLWJhci1zcGlubmVyXCIgKm5nSWY9XCJpbmNsdWRlU3Bpbm5lclwiIFtzdHlsZS5jb2xvcl09XCJjb2xvclwiPlxuICAgICAgICA8ZGl2IFtzdHlsZS53aWR0aF09XCJkaWFtZXRlclwiIFtzdHlsZS5oZWlnaHRdPVwiZGlhbWV0ZXJcIiBjbGFzcz1cInNwaW5uZXItaWNvblwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGlkPVwibG9hZGluZy1iYXJcIiAqbmdJZj1cImluY2x1ZGVCYXJcIiBbc3R5bGUuY29sb3JdPVwiY29sb3JcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJhclwiIFtzdHlsZS5iYWNrZ3JvdW5kXT1cImNvbG9yXCIgW3N0eWxlLmhlaWdodF09XCJoZWlnaHRcIiBbc3R5bGUud2lkdGhdPVwicHJvZ3Jlc3MgKyAnJSdcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicGVnXCIgW3N0eWxlLmhlaWdodF09XCJoZWlnaHRcIj48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgYCxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLkVtdWxhdGVkLFxuICBzdHlsZVVybHM6IFsnLi9sb2FkaW5nLWJhci5jb21wb25lbnQuc2NzcyddLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5sb2FkaW5nLWJhci1maXhlZF0nOiAnZml4ZWQnLFxuICB9XG59KVxuZXhwb3J0IGNsYXNzIExvYWRpbmdCYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBpbmNsdWRlU3Bpbm5lciA9IHRydWU7XG4gIEBJbnB1dCgpIGluY2x1ZGVCYXIgPSB0cnVlO1xuICBASW5wdXQoKSBmaXhlZCA9IHRydWU7XG4gIEBJbnB1dCgpIGNvbG9yOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHZhbHVlOiBudW1iZXI7XG4gIEBJbnB1dCgpIHJlZjogc3RyaW5nO1xuICBASW5wdXQoKSBoZWlnaHQ6IHN0cmluZztcbiAgQElucHV0KCkgZGlhbWV0ZXI6IHN0cmluZztcblxuICB2YWx1ZSQgPSB0aGlzLmxvYWRlci5wcm9ncmVzcyQ7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGxvYWRlcjogTG9hZGluZ0JhclNlcnZpY2UpIHt9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzLnJlZikge1xuICAgICAgdGhpcy52YWx1ZSQgPSB0aGlzLnJlZlxuICAgICAgICA/IHRoaXMubG9hZGVyLnVzZVJlZih0aGlzLnJlZikudmFsdWUkXG4gICAgICAgIDogdGhpcy5sb2FkZXIudmFsdWUkO1xuICAgIH1cbiAgfVxufVxuIl19
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: loading-bar.service.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Injectable } from '@angular/core';
import { Subject } from 'rxjs';
import { debounceTime } from 'rxjs/operators';
import { PLATFORM_ID, Inject } from '@angular/core';
import { isPlatformBrowser } from '@angular/common';
import { LoadingBarState } from './loading-bar.state';
import { Subject, combineLatest } from 'rxjs';
import { switchMap, map } from 'rxjs/operators';
import * as i0 from "@angular/core";

@@ -17,110 +19,65 @@ export class LoadingBarService {

this.platformId = platformId;
this.progress$ = (/** @type {?} */ ((new Subject()).pipe(debounceTime(0))));
this._pendingRequests = 0;
this._value = 0;
this.refs = {};
this.streams$ = (new Subject());
this.value$ = this.streams$.pipe(switchMap((/**
* @param {?} s
* @return {?}
*/
s => combineLatest(...s))), map((/**
* @param {?} v
* @return {?}
*/
v => Math.max(...v))));
}
/**
* @deprecated use `value$` instead.
* @return {?}
*/
get progress$() { return this.value$; }
/**
* @deprecated use `useRef` instead.
* @param {?=} initialValue
* @return {?}
*/
start(initialValue = 2) {
++this._pendingRequests;
if (this._value === 0 || this._pendingRequests === 1) {
// Inserts the loading bar element into the dom, and sets it to 2%
this.set(this._pendingRequests === 1 && this._value > 0 ? this._value : initialValue);
}
}
start(initialValue = 2) { this.useRef().start(initialValue); }
/**
* @deprecated use `useRef` instead.
* @param {?} value
* @return {?}
*/
stop() {
this.complete();
while (this._pendingRequests > 0) {
this.complete();
}
}
set(value) { this.useRef().set(value); }
/**
* @deprecated use `useRef` instead.
* @param {?=} value
* @return {?}
*/
complete() {
if (this._pendingRequests === 0 && this._value === 0) {
return;
}
if (this._pendingRequests > 0) {
--this._pendingRequests;
}
if (this._pendingRequests === 0 || (this._pendingRequests === 0 && this._value > 0)) {
if (this._value !== 100) {
this.set(100);
}
// Attempt to aggregate any start/complete calls within 500ms:
setTimeout(() => this.set(0), 500);
}
}
increment(value) { this.useRef().increment(value); }
/**
* Set the loading bar's width to a certain percent.
*
* @param {?} n any value between 0 and 100
* @deprecated use `useRef` instead.
* @return {?}
*/
set(n) {
if (!isPlatformBrowser(this.platformId)) {
this._pendingRequests = 0;
return;
}
if (n === 0 && this._pendingRequests > 0) {
n = 2;
}
this._value = n;
this.progress$.next(n);
if (this._pendingRequests === 0) {
return;
}
// increment loadingbar to give the illusion that there is always
// progress but make sure to cancel the previous timeouts so we don't
// have multiple incs running at the same time.
clearTimeout(this._incTimeout);
if (this._value > 0 && this._value < 100) {
this._incTimeout = setTimeout(() => this.increment(), 250);
}
}
complete() { this.useRef().complete(); }
/**
* Increments the loading bar by a random amount
* but slows down as it progresses
* @param {?=} rnd
* @deprecated use `useRef` instead.
* @return {?}
*/
increment(rnd = 0) {
if (rnd > 0) {
this.set(this._value + rnd);
}
/** @type {?} */
const stat = this._value;
if (stat >= 0 && stat < 25) {
// Start out between 3 - 6% increments
rnd = (Math.random() * (5 - 3 + 1) + 3);
}
else if (stat >= 25 && stat < 65) {
// increment between 0 - 3%
rnd = (Math.random() * 3);
}
else if (stat >= 65 && stat < 90) {
// increment between 0 - 2%
rnd = (Math.random() * 2);
}
else if (stat >= 90 && stat < 99) {
// finally, increment it .5 %
rnd = 0.5;
}
else {
// after 99%, don't increment:
rnd = 0;
}
this.set(this._value + rnd);
}
stop() { this.useRef().stop(); }
/**
* @param {?=} id
* @return {?}
*/
ngOnDestroy() {
this.progress$.complete();
useRef(id = 'default') {
if (!this.refs[id]) {
this.refs[id] = new LoadingBarState();
this.streams$.next(Object.keys(this.refs)
.map((/**
* @param {?} s
* @return {?}
*/
s => this.refs[s].value$)));
if (!isPlatformBrowser(this.platformId)) {
this.refs[id].disable();
}
}
return this.refs[id];
}

@@ -135,6 +92,4 @@ }

];
/** @nocollapse */ LoadingBarService.ngInjectableDef = i0.defineInjectable({ factory: function LoadingBarService_Factory() { return new LoadingBarService(i0.inject(i0.PLATFORM_ID)); }, token: LoadingBarService, providedIn: "root" });
/** @nocollapse */ LoadingBarService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function LoadingBarService_Factory() { return new LoadingBarService(i0.ɵɵinject(i0.PLATFORM_ID)); }, token: LoadingBarService, providedIn: "root" });
if (false) {
/** @type {?} */
LoadingBarService.prototype.progress$;
/**

@@ -144,3 +99,3 @@ * @type {?}

*/
LoadingBarService.prototype._pendingRequests;
LoadingBarService.prototype.refs;
/**

@@ -150,3 +105,5 @@ * @type {?}

*/
LoadingBarService.prototype._value;
LoadingBarService.prototype.streams$;
/** @type {?} */
LoadingBarService.prototype.value$;
/**

@@ -156,9 +113,4 @@ * @type {?}

*/
LoadingBarService.prototype._incTimeout;
/**
* @type {?}
* @private
*/
LoadingBarService.prototype.platformId;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy1iYXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3gtbG9hZGluZy1iYXIvY29yZS8iLCJzb3VyY2VzIjpbImxvYWRpbmctYmFyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDdEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBR3BELE1BQU0sT0FBTyxpQkFBaUI7Ozs7SUFPNUIsWUFBeUMsVUFBa0I7UUFBbEIsZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQU5sRCxjQUFTLEdBQUcsbUJBQUEsQ0FBQyxJQUFJLE9BQU8sRUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFtQixDQUFDO1FBRTlFLHFCQUFnQixHQUFHLENBQUMsQ0FBQztRQUNyQixXQUFNLEdBQUcsQ0FBQyxDQUFDO0lBRzJDLENBQUM7Ozs7O0lBRS9ELEtBQUssQ0FBQyxZQUFZLEdBQUcsQ0FBQztRQUNwQixFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztRQUN4QixJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsS0FBSyxDQUFDLEVBQUU7WUFDcEQsa0VBQWtFO1lBQ2xFLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUM7U0FDdkY7SUFDSCxDQUFDOzs7O0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNoQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLEVBQUU7WUFDaEMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQzs7OztJQUVELFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDcEQsT0FBTztTQUNSO1FBRUQsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsQ0FBQyxFQUFFO1lBQzdCLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1NBQ3pCO1FBRUQsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQ25GLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxHQUFHLEVBQUU7Z0JBQ3ZCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDZjtZQUVELDhEQUE4RDtZQUM5RCxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztTQUNwQztJQUNILENBQUM7Ozs7Ozs7SUFPRCxHQUFHLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDdkMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQUMsQ0FBQztZQUMxQixPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQUMsRUFBRTtZQUN4QyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ1A7UUFFRCxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUNoQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV2QixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsS0FBSyxDQUFDLEVBQUU7WUFDL0IsT0FBTztTQUNSO1FBRUQsaUVBQWlFO1FBQ2pFLHFFQUFxRTtRQUNyRSwrQ0FBK0M7UUFDL0MsWUFBWSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMvQixJQUFJLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxFQUFFO1lBQ3hDLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztTQUM1RDtJQUNILENBQUM7Ozs7Ozs7SUFNRCxTQUFTLENBQUMsR0FBRyxHQUFHLENBQUM7UUFDZixJQUFJLEdBQUcsR0FBRyxDQUFDLEVBQUU7WUFDWCxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLENBQUM7U0FDN0I7O2NBRUssSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNO1FBQ3hCLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLEdBQUcsRUFBRSxFQUFFO1lBQzFCLHNDQUFzQztZQUN0QyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ3pDO2FBQU0sSUFBSSxJQUFJLElBQUksRUFBRSxJQUFJLElBQUksR0FBRyxFQUFFLEVBQUU7WUFDbEMsMkJBQTJCO1lBQzNCLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztTQUMzQjthQUFNLElBQUksSUFBSSxJQUFJLEVBQUUsSUFBSSxJQUFJLEdBQUcsRUFBRSxFQUFFO1lBQ2xDLDJCQUEyQjtZQUMzQixHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDM0I7YUFBTSxJQUFJLElBQUksSUFBSSxFQUFFLElBQUksSUFBSSxHQUFHLEVBQUUsRUFBRTtZQUNsQyw2QkFBNkI7WUFDN0IsR0FBRyxHQUFHLEdBQUcsQ0FBQztTQUNYO2FBQU07WUFDTCw4QkFBOEI7WUFDOUIsR0FBRyxHQUFHLENBQUMsQ0FBQztTQUNUO1FBRUQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7Ozs7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM1QixDQUFDOzs7WUEzR0YsVUFBVSxTQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7OztZQVFxQixNQUFNLHVCQUE5QyxNQUFNLFNBQUMsV0FBVzs7Ozs7SUFOL0Isc0NBQXNGOzs7OztJQUV0Riw2Q0FBNkI7Ozs7O0lBQzdCLG1DQUFtQjs7Ozs7SUFDbkIsd0NBQXlCOzs7OztJQUViLHVDQUErQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgUExBVEZPUk1fSUQsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIExvYWRpbmdCYXJTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcmVhZG9ubHkgcHJvZ3Jlc3MkID0gKG5ldyBTdWJqZWN0PG51bWJlcj4oKSkucGlwZShkZWJvdW5jZVRpbWUoMCkpIGFzIFN1YmplY3Q8bnVtYmVyPjtcblxuICBwcml2YXRlIF9wZW5kaW5nUmVxdWVzdHMgPSAwO1xuICBwcml2YXRlIF92YWx1ZSA9IDA7XG4gIHByaXZhdGUgX2luY1RpbWVvdXQ6IGFueTtcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KFBMQVRGT1JNX0lEKSBwcml2YXRlIHBsYXRmb3JtSWQ6IE9iamVjdCkge31cblxuICBzdGFydChpbml0aWFsVmFsdWUgPSAyKSB7XG4gICAgKyt0aGlzLl9wZW5kaW5nUmVxdWVzdHM7XG4gICAgaWYgKHRoaXMuX3ZhbHVlID09PSAwIHx8IHRoaXMuX3BlbmRpbmdSZXF1ZXN0cyA9PT0gMSkge1xuICAgICAgLy8gSW5zZXJ0cyB0aGUgbG9hZGluZyBiYXIgZWxlbWVudCBpbnRvIHRoZSBkb20sIGFuZCBzZXRzIGl0IHRvIDIlXG4gICAgICB0aGlzLnNldCh0aGlzLl9wZW5kaW5nUmVxdWVzdHMgPT09IDEgJiYgdGhpcy5fdmFsdWUgPiAwID8gdGhpcy5fdmFsdWUgOiBpbml0aWFsVmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIHN0b3AoKSB7XG4gICAgdGhpcy5jb21wbGV0ZSgpO1xuICAgIHdoaWxlICh0aGlzLl9wZW5kaW5nUmVxdWVzdHMgPiAwKSB7XG4gICAgICB0aGlzLmNvbXBsZXRlKCk7XG4gICAgfVxuICB9XG5cbiAgY29tcGxldGUoKSB7XG4gICAgaWYgKHRoaXMuX3BlbmRpbmdSZXF1ZXN0cyA9PT0gMCAmJiB0aGlzLl92YWx1ZSA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9wZW5kaW5nUmVxdWVzdHMgPiAwKSB7XG4gICAgICAtLXRoaXMuX3BlbmRpbmdSZXF1ZXN0cztcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fcGVuZGluZ1JlcXVlc3RzID09PSAwIHx8ICh0aGlzLl9wZW5kaW5nUmVxdWVzdHMgPT09IDAgJiYgdGhpcy5fdmFsdWUgPiAwKSkge1xuICAgICAgaWYgKHRoaXMuX3ZhbHVlICE9PSAxMDApIHtcbiAgICAgICAgdGhpcy5zZXQoMTAwKTtcbiAgICAgIH1cblxuICAgICAgLy8gQXR0ZW1wdCB0byBhZ2dyZWdhdGUgYW55IHN0YXJ0L2NvbXBsZXRlIGNhbGxzIHdpdGhpbiA1MDBtczpcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5zZXQoMCksIDUwMCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgbG9hZGluZyBiYXIncyB3aWR0aCB0byBhIGNlcnRhaW4gcGVyY2VudC5cbiAgICpcbiAgICogQHBhcmFtIG4gYW55IHZhbHVlIGJldHdlZW4gMCBhbmQgMTAwXG4gICAqL1xuICBzZXQobikge1xuICAgIGlmICghaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgdGhpcy5fcGVuZGluZ1JlcXVlc3RzID0gMDtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAobiA9PT0gMCAmJiB0aGlzLl9wZW5kaW5nUmVxdWVzdHMgPiAwKSB7XG4gICAgICBuID0gMjtcbiAgICB9XG5cbiAgICB0aGlzLl92YWx1ZSA9IG47XG4gICAgdGhpcy5wcm9ncmVzcyQubmV4dChuKTtcblxuICAgIGlmICh0aGlzLl9wZW5kaW5nUmVxdWVzdHMgPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBpbmNyZW1lbnQgbG9hZGluZ2JhciB0byBnaXZlIHRoZSBpbGx1c2lvbiB0aGF0IHRoZXJlIGlzIGFsd2F5c1xuICAgIC8vIHByb2dyZXNzIGJ1dCBtYWtlIHN1cmUgdG8gY2FuY2VsIHRoZSBwcmV2aW91cyB0aW1lb3V0cyBzbyB3ZSBkb24ndFxuICAgIC8vIGhhdmUgbXVsdGlwbGUgaW5jcyBydW5uaW5nIGF0IHRoZSBzYW1lIHRpbWUuXG4gICAgY2xlYXJUaW1lb3V0KHRoaXMuX2luY1RpbWVvdXQpO1xuICAgIGlmICh0aGlzLl92YWx1ZSA+IDAgJiYgdGhpcy5fdmFsdWUgPCAxMDApIHtcbiAgICAgIHRoaXMuX2luY1RpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHRoaXMuaW5jcmVtZW50KCksIDI1MCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEluY3JlbWVudHMgdGhlIGxvYWRpbmcgYmFyIGJ5IGEgcmFuZG9tIGFtb3VudFxuICAgKiBidXQgc2xvd3MgZG93biBhcyBpdCBwcm9ncmVzc2VzXG4gICAqL1xuICBpbmNyZW1lbnQocm5kID0gMCkge1xuICAgIGlmIChybmQgPiAwKSB7XG4gICAgICB0aGlzLnNldCh0aGlzLl92YWx1ZSArIHJuZCk7XG4gICAgfVxuXG4gICAgY29uc3Qgc3RhdCA9IHRoaXMuX3ZhbHVlO1xuICAgIGlmIChzdGF0ID49IDAgJiYgc3RhdCA8IDI1KSB7XG4gICAgICAvLyBTdGFydCBvdXQgYmV0d2VlbiAzIC0gNiUgaW5jcmVtZW50c1xuICAgICAgcm5kID0gKE1hdGgucmFuZG9tKCkgKiAoNSAtIDMgKyAxKSArIDMpO1xuICAgIH0gZWxzZSBpZiAoc3RhdCA+PSAyNSAmJiBzdGF0IDwgNjUpIHtcbiAgICAgIC8vIGluY3JlbWVudCBiZXR3ZWVuIDAgLSAzJVxuICAgICAgcm5kID0gKE1hdGgucmFuZG9tKCkgKiAzKTtcbiAgICB9IGVsc2UgaWYgKHN0YXQgPj0gNjUgJiYgc3RhdCA8IDkwKSB7XG4gICAgICAvLyBpbmNyZW1lbnQgYmV0d2VlbiAwIC0gMiVcbiAgICAgIHJuZCA9IChNYXRoLnJhbmRvbSgpICogMik7XG4gICAgfSBlbHNlIGlmIChzdGF0ID49IDkwICYmIHN0YXQgPCA5OSkge1xuICAgICAgLy8gZmluYWxseSwgaW5jcmVtZW50IGl0IC41ICVcbiAgICAgIHJuZCA9IDAuNTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gYWZ0ZXIgOTklLCBkb24ndCBpbmNyZW1lbnQ6XG4gICAgICBybmQgPSAwO1xuICAgIH1cblxuICAgIHRoaXMuc2V0KHRoaXMuX3ZhbHVlICsgcm5kKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMucHJvZ3Jlc3MkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy1iYXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3gtbG9hZGluZy1iYXIvY29yZS8iLCJzb3VyY2VzIjpbImxvYWRpbmctYmFyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQWMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUdoRCxNQUFNLE9BQU8saUJBQWlCOzs7O0lBVzVCLFlBQXlDLFVBQWtCO1FBQWxCLGVBQVUsR0FBVixVQUFVLENBQVE7UUFWbkQsU0FBSSxHQUFzQyxFQUFFLENBQUM7UUFDN0MsYUFBUSxHQUFHLENBQUMsSUFBSSxPQUFPLEVBQXdCLENBQUMsQ0FBQztRQUNoRCxXQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2xDLFNBQVM7Ozs7UUFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFDLEVBQ25DLEdBQUc7Ozs7UUFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBQyxDQUN6QixDQUFDO0lBSzRELENBQUM7Ozs7O0lBRi9ELElBQUksU0FBUyxLQUFLLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7Ozs7OztJQUt2QyxLQUFLLENBQUMsWUFBWSxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQzs7Ozs7O0lBRzlELEdBQUcsQ0FBQyxLQUFhLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Ozs7OztJQUdoRCxTQUFTLENBQUMsS0FBYyxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDOzs7OztJQUc3RCxRQUFRLEtBQUssSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQzs7Ozs7SUFHeEMsSUFBSSxLQUFLLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7Ozs7O0lBRWhDLE1BQU0sQ0FBQyxLQUFhLFNBQVM7UUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUU7WUFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO1lBQ3RDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNoQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7aUJBQ3JCLEdBQUc7Ozs7WUFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFDLENBQy9CLENBQUM7WUFFRixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFO2dCQUN2QyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO2FBQ3pCO1NBQ0Y7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDdkIsQ0FBQzs7O1lBM0NGLFVBQVUsU0FBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7Ozs7WUFZcUIsTUFBTSx1QkFBOUMsTUFBTSxTQUFDLFdBQVc7Ozs7Ozs7O0lBVi9CLGlDQUFxRDs7Ozs7SUFDckQscUNBQXlEOztJQUN6RCxtQ0FHRTs7Ozs7SUFLVSx1Q0FBK0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQTEFURk9STV9JRCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBMb2FkaW5nQmFyU3RhdGUgfSBmcm9tICcuL2xvYWRpbmctYmFyLnN0YXRlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHN3aXRjaE1hcCwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIExvYWRpbmdCYXJTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWZzOiB7IFtpZDogc3RyaW5nXTogTG9hZGluZ0JhclN0YXRlIH0gPSB7fTtcbiAgcHJpdmF0ZSBzdHJlYW1zJCA9IChuZXcgU3ViamVjdDxPYnNlcnZhYmxlPG51bWJlcj5bXT4oKSk7XG4gIHJlYWRvbmx5IHZhbHVlJCA9IHRoaXMuc3RyZWFtcyQucGlwZShcbiAgICBzd2l0Y2hNYXAocyA9PiBjb21iaW5lTGF0ZXN0KC4uLnMpKSxcbiAgICBtYXAodiA9PiBNYXRoLm1heCguLi52KSlcbiAgKTtcblxuICAvKiogQGRlcHJlY2F0ZWQgdXNlIGB2YWx1ZSRgIGluc3RlYWQuICovXG4gIGdldCBwcm9ncmVzcyQoKSB7IHJldHVybiB0aGlzLnZhbHVlJDsgfVxuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoUExBVEZPUk1fSUQpIHByaXZhdGUgcGxhdGZvcm1JZDogT2JqZWN0KSB7fVxuXG4gIC8qKiBAZGVwcmVjYXRlZCB1c2UgYHVzZVJlZmAgaW5zdGVhZC4gKi9cbiAgc3RhcnQoaW5pdGlhbFZhbHVlID0gMikgeyB0aGlzLnVzZVJlZigpLnN0YXJ0KGluaXRpYWxWYWx1ZSk7IH1cblxuICAvKiogQGRlcHJlY2F0ZWQgdXNlIGB1c2VSZWZgIGluc3RlYWQuICovXG4gIHNldCh2YWx1ZTogbnVtYmVyKSB7IHRoaXMudXNlUmVmKCkuc2V0KHZhbHVlKTsgfVxuXG4gIC8qKiBAZGVwcmVjYXRlZCB1c2UgYHVzZVJlZmAgaW5zdGVhZC4gKi9cbiAgaW5jcmVtZW50KHZhbHVlPzogbnVtYmVyKSB7IHRoaXMudXNlUmVmKCkuaW5jcmVtZW50KHZhbHVlKTsgfVxuXG4gIC8qKiBAZGVwcmVjYXRlZCB1c2UgYHVzZVJlZmAgaW5zdGVhZC4gKi9cbiAgY29tcGxldGUoKSB7IHRoaXMudXNlUmVmKCkuY29tcGxldGUoKTsgfVxuXG4gIC8qKiBAZGVwcmVjYXRlZCB1c2UgYHVzZVJlZmAgaW5zdGVhZC4gKi9cbiAgc3RvcCgpIHsgdGhpcy51c2VSZWYoKS5zdG9wKCk7IH1cblxuICB1c2VSZWYoaWQ6IHN0cmluZyA9ICdkZWZhdWx0Jyk6IExvYWRpbmdCYXJTdGF0ZSB7XG4gICAgaWYgKCF0aGlzLnJlZnNbaWRdKSB7XG4gICAgICB0aGlzLnJlZnNbaWRdID0gbmV3IExvYWRpbmdCYXJTdGF0ZSgpO1xuICAgICAgdGhpcy5zdHJlYW1zJC5uZXh0KFxuICAgICAgICBPYmplY3Qua2V5cyh0aGlzLnJlZnMpXG4gICAgICAgIC5tYXAocyA9PiB0aGlzLnJlZnNbc10udmFsdWUkKVxuICAgICAgKTtcblxuICAgICAgaWYgKCFpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICAgIHRoaXMucmVmc1tpZF0uZGlzYWJsZSgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnJlZnNbaWRdO1xuICB9XG59XG4iXX0=
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: ngx-loading-bar-core.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -9,2 +10,2 @@ /**

export { LoadingBarModule, LoadingBarComponent, LoadingBarService } from './public_api';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWxvYWRpbmctYmFyLWNvcmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4LWxvYWRpbmctYmFyL2NvcmUvIiwic291cmNlcyI6WyJuZ3gtbG9hZGluZy1iYXItY29yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEseUVBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWxvYWRpbmctYmFyLWNvcmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4LWxvYWRpbmctYmFyL2NvcmUvIiwic291cmNlcyI6WyJuZ3gtbG9hZGluZy1iYXItY29yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUlBLHlFQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWNfYXBpJztcbiJdfQ==
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: public_api.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -8,2 +9,2 @@ export { LoadingBarModule } from './core.module';

export { LoadingBarService } from './loading-bar.service';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3gtbG9hZGluZy1iYXIvY29yZS8iLCJzb3VyY2VzIjpbInB1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IExvYWRpbmdCYXJNb2R1bGUgfSBmcm9tICcuL2NvcmUubW9kdWxlJztcbmV4cG9ydCB7IExvYWRpbmdCYXJDb21wb25lbnQgfSBmcm9tICcuL2xvYWRpbmctYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgeyBMb2FkaW5nQmFyU2VydmljZSB9IGZyb20gJy4vbG9hZGluZy1iYXIuc2VydmljZSc7XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3gtbG9hZGluZy1iYXIvY29yZS8iLCJzb3VyY2VzIjpbInB1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBMb2FkaW5nQmFyTW9kdWxlIH0gZnJvbSAnLi9jb3JlLm1vZHVsZSc7XG5leHBvcnQgeyBMb2FkaW5nQmFyQ29tcG9uZW50IH0gZnJvbSAnLi9sb2FkaW5nLWJhci5jb21wb25lbnQnO1xuZXhwb3J0IHsgTG9hZGluZ0JhclNlcnZpY2UgfSBmcm9tICcuL2xvYWRpbmctYmFyLnNlcnZpY2UnO1xuIl19
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: core.module.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -21,2 +22,2 @@ import { NgModule } from '@angular/core';

export { LoadingBarModule };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4LWxvYWRpbmctYmFyL2NvcmUvIiwic291cmNlcyI6WyJjb3JlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFOUQ7SUFBQTtJQUsrQixDQUFDOztnQkFML0IsUUFBUSxTQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsWUFBWSxFQUFFLENBQUMsbUJBQW1CLENBQUM7b0JBQ25DLE9BQU8sRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUMvQjs7SUFDOEIsdUJBQUM7Q0FBQSxBQUxoQyxJQUtnQztTQUFuQixnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IExvYWRpbmdCYXJDb21wb25lbnQgfSBmcm9tICcuL2xvYWRpbmctYmFyLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtMb2FkaW5nQmFyQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW0xvYWRpbmdCYXJDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBMb2FkaW5nQmFyTW9kdWxlIHt9XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4LWxvYWRpbmctYmFyL2NvcmUvIiwic291cmNlcyI6WyJjb3JlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTlEO0lBQUE7SUFLK0IsQ0FBQzs7Z0JBTC9CLFFBQVEsU0FBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLFlBQVksRUFBRSxDQUFDLG1CQUFtQixDQUFDO29CQUNuQyxPQUFPLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztpQkFDL0I7O0lBQzhCLHVCQUFDO0NBQUEsQUFMaEMsSUFLZ0M7U0FBbkIsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBMb2FkaW5nQmFyQ29tcG9uZW50IH0gZnJvbSAnLi9sb2FkaW5nLWJhci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgZGVjbGFyYXRpb25zOiBbTG9hZGluZ0JhckNvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtMb2FkaW5nQmFyQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgTG9hZGluZ0Jhck1vZHVsZSB7fVxuIl19
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: loading-bar.component.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -13,8 +14,23 @@ import { Component, Input, ViewEncapsulation } from '@angular/core';

this.fixed = true;
this.value = null;
this.value$ = this.loader.progress$;
}
/**
* @param {?} changes
* @return {?}
*/
LoadingBarComponent.prototype.ngOnChanges = /**
* @param {?} changes
* @return {?}
*/
function (changes) {
if (changes.ref) {
this.value$ = this.ref
? this.loader.useRef(this.ref).value$
: this.loader.value$;
}
};
LoadingBarComponent.decorators = [
{ type: Component, args: [{
selector: 'ngx-loading-bar',
template: "\n <ng-container *ngIf=\"(value !== null ? value : loader.progress$|async) as progress\">\n <div id=\"loading-bar-spinner\" *ngIf=\"includeSpinner\" [style.color]=\"color\">\n <div [style.width]=\"diameter\" [style.height]=\"diameter\" class=\"spinner-icon\"></div>\n </div>\n <div id=\"loading-bar\" *ngIf=\"includeBar\" [style.color]=\"color\">\n <div class=\"bar\" [style.background]=\"color\" [style.height]=\"height\" [style.width]=\"progress + '%'\">\n <div class=\"peg\" [style.height]=\"height\"></div>\n </div>\n </div>\n </ng-container>\n ",
template: "\n <ng-container *ngIf=\"(value != null ? value : value$|async) as progress\">\n <div id=\"loading-bar-spinner\" *ngIf=\"includeSpinner\" [style.color]=\"color\">\n <div [style.width]=\"diameter\" [style.height]=\"diameter\" class=\"spinner-icon\"></div>\n </div>\n <div id=\"loading-bar\" *ngIf=\"includeBar\" [style.color]=\"color\">\n <div class=\"bar\" [style.background]=\"color\" [style.height]=\"height\" [style.width]=\"progress + '%'\">\n <div class=\"peg\" [style.height]=\"height\"></div>\n </div>\n </div>\n </ng-container>\n ",
preserveWhitespaces: false,

@@ -25,3 +41,3 @@ encapsulation: ViewEncapsulation.Emulated,

},
styles: [":host{position:relative;display:block}:host.loading-bar-fixed>div .bar{position:fixed}:host.loading-bar-fixed>div#loading-bar-spinner{position:fixed;top:10px;left:10px}[dir=rtl] :host.loading-bar-fixed>div#loading-bar-spinner{right:10px;left:unset}:host.loading-bar-fixed>div .peg{display:block}:host>div{pointer-events:none;transition:350ms linear;color:#29d}:host>div .bar{transition:width 350ms;background:#29d;position:absolute;z-index:10002;top:0;left:0;width:100%;height:2px;border-bottom-right-radius:1px;border-top-right-radius:1px}[dir=rtl] :host>div .bar{right:0;left:unset}:host>div .peg{display:none;position:absolute;width:70px;right:0;top:0;height:2px;opacity:.45;box-shadow:1px 0 6px 1px;color:inherit;border-radius:100%}:host>div#loading-bar-spinner{display:block;position:absolute;z-index:10002;top:5px;left:0}:host>div#loading-bar-spinner .spinner-icon{width:14px;height:14px;border:2px solid transparent;border-top-color:inherit;border-left-color:inherit;border-radius:50%;-webkit-animation:.4s linear infinite loading-bar-spinner;animation:.4s linear infinite loading-bar-spinner}@-webkit-keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}"]
styles: [":host{position:relative;display:block}:host.loading-bar-fixed>div .bar{position:fixed}:host.loading-bar-fixed>div#loading-bar-spinner{position:fixed;top:10px;left:10px}[dir=rtl] :host.loading-bar-fixed>div#loading-bar-spinner{right:10px;left:unset}:host.loading-bar-fixed>div .peg{display:block}:host>div{pointer-events:none;-webkit-transition:350ms linear;transition:350ms linear;color:#29d}:host>div .bar{-webkit-transition:width 350ms;transition:width 350ms;background:#29d;position:absolute;z-index:10002;top:0;left:0;width:100%;height:2px;border-bottom-right-radius:1px;border-top-right-radius:1px}[dir=rtl] :host>div .bar{right:0;left:unset}:host>div .peg{display:none;position:absolute;width:70px;right:0;top:0;height:2px;opacity:.45;box-shadow:1px 0 6px 1px;color:inherit;border-radius:100%}:host>div#loading-bar-spinner{display:block;position:absolute;z-index:10002;top:5px;left:0}:host>div#loading-bar-spinner .spinner-icon{width:14px;height:14px;border:2px solid transparent;border-top-color:inherit;border-left-color:inherit;border-radius:50%;-webkit-animation:.4s linear infinite loading-bar-spinner;animation:.4s linear infinite loading-bar-spinner}@-webkit-keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}"]
}] }

@@ -38,5 +54,6 @@ ];

color: [{ type: Input }],
value: [{ type: Input }],
ref: [{ type: Input }],
height: [{ type: Input }],
diameter: [{ type: Input }],
value: [{ type: Input }]
diameter: [{ type: Input }]
};

@@ -56,2 +73,6 @@ return LoadingBarComponent;

/** @type {?} */
LoadingBarComponent.prototype.value;
/** @type {?} */
LoadingBarComponent.prototype.ref;
/** @type {?} */
LoadingBarComponent.prototype.height;

@@ -61,6 +82,6 @@ /** @type {?} */

/** @type {?} */
LoadingBarComponent.prototype.value;
LoadingBarComponent.prototype.value$;
/** @type {?} */
LoadingBarComponent.prototype.loader;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neC1sb2FkaW5nLWJhci9jb3JlLyIsInNvdXJjZXMiOlsibG9hZGluZy1iYXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBMkIsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFMUQ7SUE4QkUsNkJBQW1CLE1BQXlCO1FBQXpCLFdBQU0sR0FBTixNQUFNLENBQW1CO1FBUm5DLG1CQUFjLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLGVBQVUsR0FBRyxJQUFJLENBQUM7UUFDbEIsVUFBSyxHQUFHLElBQUksQ0FBQztRQUliLFVBQUssR0FBRyxJQUFJLENBQUM7SUFFeUIsQ0FBQzs7Z0JBOUJqRCxTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsUUFBUSxFQUFFLGdtQkFXVDtvQkFDRCxtQkFBbUIsRUFBRSxLQUFLO29CQUMxQixhQUFhLEVBQUUsaUJBQWlCLENBQUMsUUFBUTtvQkFFekMsSUFBSSxFQUFFO3dCQUNKLDJCQUEyQixFQUFFLE9BQU87cUJBQ3JDOztpQkFDRjs7OztnQkF0QlEsaUJBQWlCOzs7aUNBd0J2QixLQUFLOzZCQUNMLEtBQUs7d0JBQ0wsS0FBSzt3QkFDTCxLQUFLO3lCQUNMLEtBQUs7MkJBQ0wsS0FBSzt3QkFDTCxLQUFLOztJQUdSLDBCQUFDO0NBQUEsQUEvQkQsSUErQkM7U0FWWSxtQkFBbUI7OztJQUM5Qiw2Q0FBK0I7O0lBQy9CLHlDQUEyQjs7SUFDM0Isb0NBQXNCOztJQUN0QixvQ0FBZTs7SUFDZixxQ0FBZ0I7O0lBQ2hCLHVDQUFrQjs7SUFDbEIsb0NBQXNCOztJQUVWLHFDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTG9hZGluZ0JhclNlcnZpY2UgfSBmcm9tICcuL2xvYWRpbmctYmFyLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3gtbG9hZGluZy1iYXInLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIodmFsdWUgIT09IG51bGwgPyB2YWx1ZSA6IGxvYWRlci5wcm9ncmVzcyR8YXN5bmMpIGFzIHByb2dyZXNzXCI+XG4gICAgICA8ZGl2IGlkPVwibG9hZGluZy1iYXItc3Bpbm5lclwiICpuZ0lmPVwiaW5jbHVkZVNwaW5uZXJcIiBbc3R5bGUuY29sb3JdPVwiY29sb3JcIj5cbiAgICAgICAgPGRpdiBbc3R5bGUud2lkdGhdPVwiZGlhbWV0ZXJcIiBbc3R5bGUuaGVpZ2h0XT1cImRpYW1ldGVyXCIgY2xhc3M9XCJzcGlubmVyLWljb25cIj48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBpZD1cImxvYWRpbmctYmFyXCIgKm5nSWY9XCJpbmNsdWRlQmFyXCIgW3N0eWxlLmNvbG9yXT1cImNvbG9yXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJiYXJcIiBbc3R5bGUuYmFja2dyb3VuZF09XCJjb2xvclwiIFtzdHlsZS5oZWlnaHRdPVwiaGVpZ2h0XCIgW3N0eWxlLndpZHRoXT1cInByb2dyZXNzICsgJyUnXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInBlZ1wiIFtzdHlsZS5oZWlnaHRdPVwiaGVpZ2h0XCI+PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIGAsXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5FbXVsYXRlZCxcbiAgc3R5bGVVcmxzOiBbJy4vbG9hZGluZy1iYXIuY29tcG9uZW50LnNjc3MnXSxcbiAgaG9zdDoge1xuICAgICdbY2xhc3MubG9hZGluZy1iYXItZml4ZWRdJzogJ2ZpeGVkJyxcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBMb2FkaW5nQmFyQ29tcG9uZW50IHtcbiAgQElucHV0KCkgaW5jbHVkZVNwaW5uZXIgPSB0cnVlO1xuICBASW5wdXQoKSBpbmNsdWRlQmFyID0gdHJ1ZTtcbiAgQElucHV0KCkgZml4ZWQgPSB0cnVlO1xuICBASW5wdXQoKSBjb2xvcjtcbiAgQElucHV0KCkgaGVpZ2h0O1xuICBASW5wdXQoKSBkaWFtZXRlcjtcbiAgQElucHV0KCkgdmFsdWUgPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBsb2FkZXI6IExvYWRpbmdCYXJTZXJ2aWNlKSB7fVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neC1sb2FkaW5nLWJhci9jb3JlLyIsInNvdXJjZXMiOlsibG9hZGluZy1iYXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTFEO0lBaUNFLDZCQUFtQixNQUF5QjtRQUF6QixXQUFNLEdBQU4sTUFBTSxDQUFtQjtRQVhuQyxtQkFBYyxHQUFHLElBQUksQ0FBQztRQUN0QixlQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLFVBQUssR0FBRyxJQUFJLENBQUM7UUFPdEIsV0FBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDO0lBRWdCLENBQUM7Ozs7O0lBRWhELHlDQUFXOzs7O0lBQVgsVUFBWSxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUU7WUFDZixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxHQUFHO2dCQUNwQixDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU07Z0JBQ3JDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztTQUN4QjtJQUNILENBQUM7O2dCQXpDRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsUUFBUSxFQUFFLHFsQkFXVDtvQkFDRCxtQkFBbUIsRUFBRSxLQUFLO29CQUMxQixhQUFhLEVBQUUsaUJBQWlCLENBQUMsUUFBUTtvQkFFekMsSUFBSSxFQUFFO3dCQUNKLDJCQUEyQixFQUFFLE9BQU87cUJBQ3JDOztpQkFDRjs7OztnQkF0QlEsaUJBQWlCOzs7aUNBd0J2QixLQUFLOzZCQUNMLEtBQUs7d0JBQ0wsS0FBSzt3QkFDTCxLQUFLO3dCQUNMLEtBQUs7c0JBQ0wsS0FBSzt5QkFDTCxLQUFLOzJCQUNMLEtBQUs7O0lBYVIsMEJBQUM7Q0FBQSxBQTFDRCxJQTBDQztTQXJCWSxtQkFBbUI7OztJQUM5Qiw2Q0FBK0I7O0lBQy9CLHlDQUEyQjs7SUFDM0Isb0NBQXNCOztJQUN0QixvQ0FBdUI7O0lBQ3ZCLG9DQUF1Qjs7SUFDdkIsa0NBQXFCOztJQUNyQixxQ0FBd0I7O0lBQ3hCLHVDQUEwQjs7SUFFMUIscUNBQStCOztJQUVuQixxQ0FBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMb2FkaW5nQmFyU2VydmljZSB9IGZyb20gJy4vbG9hZGluZy1iYXIuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25neC1sb2FkaW5nLWJhcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIih2YWx1ZSAhPSBudWxsID8gdmFsdWUgOiB2YWx1ZSR8YXN5bmMpIGFzIHByb2dyZXNzXCI+XG4gICAgICA8ZGl2IGlkPVwibG9hZGluZy1iYXItc3Bpbm5lclwiICpuZ0lmPVwiaW5jbHVkZVNwaW5uZXJcIiBbc3R5bGUuY29sb3JdPVwiY29sb3JcIj5cbiAgICAgICAgPGRpdiBbc3R5bGUud2lkdGhdPVwiZGlhbWV0ZXJcIiBbc3R5bGUuaGVpZ2h0XT1cImRpYW1ldGVyXCIgY2xhc3M9XCJzcGlubmVyLWljb25cIj48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBpZD1cImxvYWRpbmctYmFyXCIgKm5nSWY9XCJpbmNsdWRlQmFyXCIgW3N0eWxlLmNvbG9yXT1cImNvbG9yXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJiYXJcIiBbc3R5bGUuYmFja2dyb3VuZF09XCJjb2xvclwiIFtzdHlsZS5oZWlnaHRdPVwiaGVpZ2h0XCIgW3N0eWxlLndpZHRoXT1cInByb2dyZXNzICsgJyUnXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInBlZ1wiIFtzdHlsZS5oZWlnaHRdPVwiaGVpZ2h0XCI+PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIGAsXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5FbXVsYXRlZCxcbiAgc3R5bGVVcmxzOiBbJy4vbG9hZGluZy1iYXIuY29tcG9uZW50LnNjc3MnXSxcbiAgaG9zdDoge1xuICAgICdbY2xhc3MubG9hZGluZy1iYXItZml4ZWRdJzogJ2ZpeGVkJyxcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBMb2FkaW5nQmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgaW5jbHVkZVNwaW5uZXIgPSB0cnVlO1xuICBASW5wdXQoKSBpbmNsdWRlQmFyID0gdHJ1ZTtcbiAgQElucHV0KCkgZml4ZWQgPSB0cnVlO1xuICBASW5wdXQoKSBjb2xvcjogc3RyaW5nO1xuICBASW5wdXQoKSB2YWx1ZTogbnVtYmVyO1xuICBASW5wdXQoKSByZWY6IHN0cmluZztcbiAgQElucHV0KCkgaGVpZ2h0OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRpYW1ldGVyOiBzdHJpbmc7XG5cbiAgdmFsdWUkID0gdGhpcy5sb2FkZXIucHJvZ3Jlc3MkO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBsb2FkZXI6IExvYWRpbmdCYXJTZXJ2aWNlKSB7fVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlcy5yZWYpIHtcbiAgICAgIHRoaXMudmFsdWUkID0gdGhpcy5yZWZcbiAgICAgICAgPyB0aGlzLmxvYWRlci51c2VSZWYodGhpcy5yZWYpLnZhbHVlJFxuICAgICAgICA6IHRoaXMubG9hZGVyLnZhbHVlJDtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: loading-bar.service.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import * as tslib_1 from "tslib";
import { Injectable } from '@angular/core';
import { Subject } from 'rxjs';
import { debounceTime } from 'rxjs/operators';
import { PLATFORM_ID, Inject } from '@angular/core';
import { isPlatformBrowser } from '@angular/common';
import { LoadingBarState } from './loading-bar.state';
import { Subject, combineLatest } from 'rxjs';
import { switchMap, map } from 'rxjs/operators';
import * as i0 from "@angular/core";

@@ -14,7 +17,27 @@ var LoadingBarService = /** @class */ (function () {

this.platformId = platformId;
this.progress$ = (/** @type {?} */ ((new Subject()).pipe(debounceTime(0))));
this._pendingRequests = 0;
this._value = 0;
this.refs = {};
this.streams$ = (new Subject());
this.value$ = this.streams$.pipe(switchMap((/**
* @param {?} s
* @return {?}
*/
function (s) { return combineLatest.apply(void 0, tslib_1.__spread(s)); })), map((/**
* @param {?} v
* @return {?}
*/
function (v) { return Math.max.apply(Math, tslib_1.__spread(v)); })));
}
Object.defineProperty(LoadingBarService.prototype, "progress$", {
/** @deprecated use `value$` instead. */
get: /**
* @deprecated use `value$` instead.
* @return {?}
*/
function () { return this.value$; },
enumerable: true,
configurable: true
});
/** @deprecated use `useRef` instead. */
/**
* @deprecated use `useRef` instead.
* @param {?=} initialValue

@@ -24,2 +47,3 @@ * @return {?}

LoadingBarService.prototype.start = /**
* @deprecated use `useRef` instead.
* @param {?=} initialValue

@@ -30,134 +54,72 @@ * @return {?}

if (initialValue === void 0) { initialValue = 2; }
++this._pendingRequests;
if (this._value === 0 || this._pendingRequests === 1) {
// Inserts the loading bar element into the dom, and sets it to 2%
this.set(this._pendingRequests === 1 && this._value > 0 ? this._value : initialValue);
}
this.useRef().start(initialValue);
};
/** @deprecated use `useRef` instead. */
/**
* @deprecated use `useRef` instead.
* @param {?} value
* @return {?}
*/
LoadingBarService.prototype.stop = /**
LoadingBarService.prototype.set = /**
* @deprecated use `useRef` instead.
* @param {?} value
* @return {?}
*/
function () {
this.complete();
while (this._pendingRequests > 0) {
this.complete();
}
};
function (value) { this.useRef().set(value); };
/** @deprecated use `useRef` instead. */
/**
* @deprecated use `useRef` instead.
* @param {?=} value
* @return {?}
*/
LoadingBarService.prototype.complete = /**
LoadingBarService.prototype.increment = /**
* @deprecated use `useRef` instead.
* @param {?=} value
* @return {?}
*/
function () {
var _this = this;
if (this._pendingRequests === 0 && this._value === 0) {
return;
}
if (this._pendingRequests > 0) {
--this._pendingRequests;
}
if (this._pendingRequests === 0 || (this._pendingRequests === 0 && this._value > 0)) {
if (this._value !== 100) {
this.set(100);
}
// Attempt to aggregate any start/complete calls within 500ms:
setTimeout(function () { return _this.set(0); }, 500);
}
};
function (value) { this.useRef().increment(value); };
/** @deprecated use `useRef` instead. */
/**
* Set the loading bar's width to a certain percent.
*
* @param n any value between 0 and 100
*/
/**
* Set the loading bar's width to a certain percent.
*
* @param {?} n any value between 0 and 100
* @deprecated use `useRef` instead.
* @return {?}
*/
LoadingBarService.prototype.set = /**
* Set the loading bar's width to a certain percent.
*
* @param {?} n any value between 0 and 100
LoadingBarService.prototype.complete = /**
* @deprecated use `useRef` instead.
* @return {?}
*/
function (n) {
var _this = this;
if (!isPlatformBrowser(this.platformId)) {
this._pendingRequests = 0;
return;
}
if (n === 0 && this._pendingRequests > 0) {
n = 2;
}
this._value = n;
this.progress$.next(n);
if (this._pendingRequests === 0) {
return;
}
// increment loadingbar to give the illusion that there is always
// progress but make sure to cancel the previous timeouts so we don't
// have multiple incs running at the same time.
clearTimeout(this._incTimeout);
if (this._value > 0 && this._value < 100) {
this._incTimeout = setTimeout(function () { return _this.increment(); }, 250);
}
};
function () { this.useRef().complete(); };
/** @deprecated use `useRef` instead. */
/**
* Increments the loading bar by a random amount
* but slows down as it progresses
*/
/**
* Increments the loading bar by a random amount
* but slows down as it progresses
* @param {?=} rnd
* @deprecated use `useRef` instead.
* @return {?}
*/
LoadingBarService.prototype.increment = /**
* Increments the loading bar by a random amount
* but slows down as it progresses
* @param {?=} rnd
LoadingBarService.prototype.stop = /**
* @deprecated use `useRef` instead.
* @return {?}
*/
function (rnd) {
if (rnd === void 0) { rnd = 0; }
if (rnd > 0) {
this.set(this._value + rnd);
}
/** @type {?} */
var stat = this._value;
if (stat >= 0 && stat < 25) {
// Start out between 3 - 6% increments
rnd = (Math.random() * (5 - 3 + 1) + 3);
}
else if (stat >= 25 && stat < 65) {
// increment between 0 - 3%
rnd = (Math.random() * 3);
}
else if (stat >= 65 && stat < 90) {
// increment between 0 - 2%
rnd = (Math.random() * 2);
}
else if (stat >= 90 && stat < 99) {
// finally, increment it .5 %
rnd = 0.5;
}
else {
// after 99%, don't increment:
rnd = 0;
}
this.set(this._value + rnd);
};
function () { this.useRef().stop(); };
/**
* @param {?=} id
* @return {?}
*/
LoadingBarService.prototype.ngOnDestroy = /**
LoadingBarService.prototype.useRef = /**
* @param {?=} id
* @return {?}
*/
function () {
this.progress$.complete();
function (id) {
var _this = this;
if (id === void 0) { id = 'default'; }
if (!this.refs[id]) {
this.refs[id] = new LoadingBarState();
this.streams$.next(Object.keys(this.refs)
.map((/**
* @param {?} s
* @return {?}
*/
function (s) { return _this.refs[s].value$; })));
if (!isPlatformBrowser(this.platformId)) {
this.refs[id].disable();
}
}
return this.refs[id];
};

@@ -171,3 +133,3 @@ LoadingBarService.decorators = [

]; };
/** @nocollapse */ LoadingBarService.ngInjectableDef = i0.defineInjectable({ factory: function LoadingBarService_Factory() { return new LoadingBarService(i0.inject(i0.PLATFORM_ID)); }, token: LoadingBarService, providedIn: "root" });
/** @nocollapse */ LoadingBarService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function LoadingBarService_Factory() { return new LoadingBarService(i0.ɵɵinject(i0.PLATFORM_ID)); }, token: LoadingBarService, providedIn: "root" });
return LoadingBarService;

@@ -177,4 +139,2 @@ }());

if (false) {
/** @type {?} */
LoadingBarService.prototype.progress$;
/**

@@ -184,3 +144,3 @@ * @type {?}

*/
LoadingBarService.prototype._pendingRequests;
LoadingBarService.prototype.refs;
/**

@@ -190,3 +150,5 @@ * @type {?}

*/
LoadingBarService.prototype._value;
LoadingBarService.prototype.streams$;
/** @type {?} */
LoadingBarService.prototype.value$;
/**

@@ -196,9 +158,4 @@ * @type {?}

*/
LoadingBarService.prototype._incTimeout;
/**
* @type {?}
* @private
*/
LoadingBarService.prototype.platformId;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy1iYXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3gtbG9hZGluZy1iYXIvY29yZS8iLCJzb3VyY2VzIjpbImxvYWRpbmctYmFyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDdEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBRXBEO0lBUUUsMkJBQXlDLFVBQWtCO1FBQWxCLGVBQVUsR0FBVixVQUFVLENBQVE7UUFObEQsY0FBUyxHQUFHLG1CQUFBLENBQUMsSUFBSSxPQUFPLEVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBbUIsQ0FBQztRQUU5RSxxQkFBZ0IsR0FBRyxDQUFDLENBQUM7UUFDckIsV0FBTSxHQUFHLENBQUMsQ0FBQztJQUcyQyxDQUFDOzs7OztJQUUvRCxpQ0FBSzs7OztJQUFMLFVBQU0sWUFBZ0I7UUFBaEIsNkJBQUEsRUFBQSxnQkFBZ0I7UUFDcEIsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFDeEIsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEtBQUssQ0FBQyxFQUFFO1lBQ3BELGtFQUFrRTtZQUNsRSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQ3ZGO0lBQ0gsQ0FBQzs7OztJQUVELGdDQUFJOzs7SUFBSjtRQUNFLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNoQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLEVBQUU7WUFDaEMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQzs7OztJQUVELG9DQUFROzs7SUFBUjtRQUFBLGlCQWlCQztRQWhCQyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDcEQsT0FBTztTQUNSO1FBRUQsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsQ0FBQyxFQUFFO1lBQzdCLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1NBQ3pCO1FBRUQsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQ25GLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxHQUFHLEVBQUU7Z0JBQ3ZCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDZjtZQUVELDhEQUE4RDtZQUM5RCxVQUFVLENBQUMsY0FBTSxPQUFBLEtBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQVgsQ0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7Ozs7Ozs7SUFDSCwrQkFBRzs7Ozs7O0lBQUgsVUFBSSxDQUFDO1FBQUwsaUJBd0JDO1FBdkJDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDdkMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQUMsQ0FBQztZQUMxQixPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQUMsRUFBRTtZQUN4QyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ1A7UUFFRCxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUNoQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV2QixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsS0FBSyxDQUFDLEVBQUU7WUFDL0IsT0FBTztTQUNSO1FBRUQsaUVBQWlFO1FBQ2pFLHFFQUFxRTtRQUNyRSwrQ0FBK0M7UUFDL0MsWUFBWSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMvQixJQUFJLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxFQUFFO1lBQ3hDLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDLGNBQU0sT0FBQSxLQUFJLENBQUMsU0FBUyxFQUFFLEVBQWhCLENBQWdCLEVBQUUsR0FBRyxDQUFDLENBQUM7U0FDNUQ7SUFDSCxDQUFDO0lBRUQ7OztPQUdHOzs7Ozs7O0lBQ0gscUNBQVM7Ozs7OztJQUFULFVBQVUsR0FBTztRQUFQLG9CQUFBLEVBQUEsT0FBTztRQUNmLElBQUksR0FBRyxHQUFHLENBQUMsRUFBRTtZQUNYLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsQ0FBQztTQUM3Qjs7WUFFSyxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU07UUFDeEIsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksR0FBRyxFQUFFLEVBQUU7WUFDMUIsc0NBQXNDO1lBQ3RDLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDekM7YUFBTSxJQUFJLElBQUksSUFBSSxFQUFFLElBQUksSUFBSSxHQUFHLEVBQUUsRUFBRTtZQUNsQywyQkFBMkI7WUFDM0IsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQzNCO2FBQU0sSUFBSSxJQUFJLElBQUksRUFBRSxJQUFJLElBQUksR0FBRyxFQUFFLEVBQUU7WUFDbEMsMkJBQTJCO1lBQzNCLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztTQUMzQjthQUFNLElBQUksSUFBSSxJQUFJLEVBQUUsSUFBSSxJQUFJLEdBQUcsRUFBRSxFQUFFO1lBQ2xDLDZCQUE2QjtZQUM3QixHQUFHLEdBQUcsR0FBRyxDQUFDO1NBQ1g7YUFBTTtZQUNMLDhCQUE4QjtZQUM5QixHQUFHLEdBQUcsQ0FBQyxDQUFDO1NBQ1Q7UUFFRCxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLENBQUM7SUFDOUIsQ0FBQzs7OztJQUVELHVDQUFXOzs7SUFBWDtRQUNFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQzs7Z0JBM0dGLFVBQVUsU0FBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7Ozs7Z0JBUXFCLE1BQU0sdUJBQTlDLE1BQU0sU0FBQyxXQUFXOzs7NEJBZGpDO0NBa0hDLEFBNUdELElBNEdDO1NBM0dZLGlCQUFpQjs7O0lBQzVCLHNDQUFzRjs7Ozs7SUFFdEYsNkNBQTZCOzs7OztJQUM3QixtQ0FBbUI7Ozs7O0lBQ25CLHdDQUF5Qjs7Ozs7SUFFYix1Q0FBK0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFBMQVRGT1JNX0lELCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBMb2FkaW5nQmFyU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHJlYWRvbmx5IHByb2dyZXNzJCA9IChuZXcgU3ViamVjdDxudW1iZXI+KCkpLnBpcGUoZGVib3VuY2VUaW1lKDApKSBhcyBTdWJqZWN0PG51bWJlcj47XG5cbiAgcHJpdmF0ZSBfcGVuZGluZ1JlcXVlc3RzID0gMDtcbiAgcHJpdmF0ZSBfdmFsdWUgPSAwO1xuICBwcml2YXRlIF9pbmNUaW1lb3V0OiBhbnk7XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBPYmplY3QpIHt9XG5cbiAgc3RhcnQoaW5pdGlhbFZhbHVlID0gMikge1xuICAgICsrdGhpcy5fcGVuZGluZ1JlcXVlc3RzO1xuICAgIGlmICh0aGlzLl92YWx1ZSA9PT0gMCB8fCB0aGlzLl9wZW5kaW5nUmVxdWVzdHMgPT09IDEpIHtcbiAgICAgIC8vIEluc2VydHMgdGhlIGxvYWRpbmcgYmFyIGVsZW1lbnQgaW50byB0aGUgZG9tLCBhbmQgc2V0cyBpdCB0byAyJVxuICAgICAgdGhpcy5zZXQodGhpcy5fcGVuZGluZ1JlcXVlc3RzID09PSAxICYmIHRoaXMuX3ZhbHVlID4gMCA/IHRoaXMuX3ZhbHVlIDogaW5pdGlhbFZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBzdG9wKCkge1xuICAgIHRoaXMuY29tcGxldGUoKTtcbiAgICB3aGlsZSAodGhpcy5fcGVuZGluZ1JlcXVlc3RzID4gMCkge1xuICAgICAgdGhpcy5jb21wbGV0ZSgpO1xuICAgIH1cbiAgfVxuXG4gIGNvbXBsZXRlKCkge1xuICAgIGlmICh0aGlzLl9wZW5kaW5nUmVxdWVzdHMgPT09IDAgJiYgdGhpcy5fdmFsdWUgPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fcGVuZGluZ1JlcXVlc3RzID4gMCkge1xuICAgICAgLS10aGlzLl9wZW5kaW5nUmVxdWVzdHM7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX3BlbmRpbmdSZXF1ZXN0cyA9PT0gMCB8fCAodGhpcy5fcGVuZGluZ1JlcXVlc3RzID09PSAwICYmIHRoaXMuX3ZhbHVlID4gMCkpIHtcbiAgICAgIGlmICh0aGlzLl92YWx1ZSAhPT0gMTAwKSB7XG4gICAgICAgIHRoaXMuc2V0KDEwMCk7XG4gICAgICB9XG5cbiAgICAgIC8vIEF0dGVtcHQgdG8gYWdncmVnYXRlIGFueSBzdGFydC9jb21wbGV0ZSBjYWxscyB3aXRoaW4gNTAwbXM6XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2V0KDApLCA1MDApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIGxvYWRpbmcgYmFyJ3Mgd2lkdGggdG8gYSBjZXJ0YWluIHBlcmNlbnQuXG4gICAqXG4gICAqIEBwYXJhbSBuIGFueSB2YWx1ZSBiZXR3ZWVuIDAgYW5kIDEwMFxuICAgKi9cbiAgc2V0KG4pIHtcbiAgICBpZiAoIWlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgIHRoaXMuX3BlbmRpbmdSZXF1ZXN0cyA9IDA7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKG4gPT09IDAgJiYgdGhpcy5fcGVuZGluZ1JlcXVlc3RzID4gMCkge1xuICAgICAgbiA9IDI7XG4gICAgfVxuXG4gICAgdGhpcy5fdmFsdWUgPSBuO1xuICAgIHRoaXMucHJvZ3Jlc3MkLm5leHQobik7XG5cbiAgICBpZiAodGhpcy5fcGVuZGluZ1JlcXVlc3RzID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gaW5jcmVtZW50IGxvYWRpbmdiYXIgdG8gZ2l2ZSB0aGUgaWxsdXNpb24gdGhhdCB0aGVyZSBpcyBhbHdheXNcbiAgICAvLyBwcm9ncmVzcyBidXQgbWFrZSBzdXJlIHRvIGNhbmNlbCB0aGUgcHJldmlvdXMgdGltZW91dHMgc28gd2UgZG9uJ3RcbiAgICAvLyBoYXZlIG11bHRpcGxlIGluY3MgcnVubmluZyBhdCB0aGUgc2FtZSB0aW1lLlxuICAgIGNsZWFyVGltZW91dCh0aGlzLl9pbmNUaW1lb3V0KTtcbiAgICBpZiAodGhpcy5fdmFsdWUgPiAwICYmIHRoaXMuX3ZhbHVlIDwgMTAwKSB7XG4gICAgICB0aGlzLl9pbmNUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB0aGlzLmluY3JlbWVudCgpLCAyNTApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBJbmNyZW1lbnRzIHRoZSBsb2FkaW5nIGJhciBieSBhIHJhbmRvbSBhbW91bnRcbiAgICogYnV0IHNsb3dzIGRvd24gYXMgaXQgcHJvZ3Jlc3Nlc1xuICAgKi9cbiAgaW5jcmVtZW50KHJuZCA9IDApIHtcbiAgICBpZiAocm5kID4gMCkge1xuICAgICAgdGhpcy5zZXQodGhpcy5fdmFsdWUgKyBybmQpO1xuICAgIH1cblxuICAgIGNvbnN0IHN0YXQgPSB0aGlzLl92YWx1ZTtcbiAgICBpZiAoc3RhdCA+PSAwICYmIHN0YXQgPCAyNSkge1xuICAgICAgLy8gU3RhcnQgb3V0IGJldHdlZW4gMyAtIDYlIGluY3JlbWVudHNcbiAgICAgIHJuZCA9IChNYXRoLnJhbmRvbSgpICogKDUgLSAzICsgMSkgKyAzKTtcbiAgICB9IGVsc2UgaWYgKHN0YXQgPj0gMjUgJiYgc3RhdCA8IDY1KSB7XG4gICAgICAvLyBpbmNyZW1lbnQgYmV0d2VlbiAwIC0gMyVcbiAgICAgIHJuZCA9IChNYXRoLnJhbmRvbSgpICogMyk7XG4gICAgfSBlbHNlIGlmIChzdGF0ID49IDY1ICYmIHN0YXQgPCA5MCkge1xuICAgICAgLy8gaW5jcmVtZW50IGJldHdlZW4gMCAtIDIlXG4gICAgICBybmQgPSAoTWF0aC5yYW5kb20oKSAqIDIpO1xuICAgIH0gZWxzZSBpZiAoc3RhdCA+PSA5MCAmJiBzdGF0IDwgOTkpIHtcbiAgICAgIC8vIGZpbmFsbHksIGluY3JlbWVudCBpdCAuNSAlXG4gICAgICBybmQgPSAwLjU7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIGFmdGVyIDk5JSwgZG9uJ3QgaW5jcmVtZW50OlxuICAgICAgcm5kID0gMDtcbiAgICB9XG5cbiAgICB0aGlzLnNldCh0aGlzLl92YWx1ZSArIHJuZCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnByb2dyZXNzJC5jb21wbGV0ZSgpO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy1iYXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3gtbG9hZGluZy1iYXIvY29yZS8iLCJzb3VyY2VzIjpbImxvYWRpbmctYmFyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFjLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFFaEQ7SUFZRSwyQkFBeUMsVUFBa0I7UUFBbEIsZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQVZuRCxTQUFJLEdBQXNDLEVBQUUsQ0FBQztRQUM3QyxhQUFRLEdBQUcsQ0FBQyxJQUFJLE9BQU8sRUFBd0IsQ0FBQyxDQUFDO1FBQ2hELFdBQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDbEMsU0FBUzs7OztRQUFDLFVBQUEsQ0FBQyxJQUFJLE9BQUEsYUFBYSxnQ0FBSSxDQUFDLElBQWxCLENBQW1CLEVBQUMsRUFDbkMsR0FBRzs7OztRQUFDLFVBQUEsQ0FBQyxJQUFJLE9BQUEsSUFBSSxDQUFDLEdBQUcsT0FBUixJQUFJLG1CQUFRLENBQUMsSUFBYixDQUFjLEVBQUMsQ0FDekIsQ0FBQztJQUs0RCxDQUFDO0lBRi9ELHNCQUFJLHdDQUFTO1FBRGIsd0NBQXdDOzs7OztRQUN4QyxjQUFrQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDOzs7T0FBQTtJQUl2Qyx3Q0FBd0M7Ozs7OztJQUN4QyxpQ0FBSzs7Ozs7SUFBTCxVQUFNLFlBQWdCO1FBQWhCLDZCQUFBLEVBQUEsZ0JBQWdCO1FBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUFDLENBQUM7SUFFOUQsd0NBQXdDOzs7Ozs7SUFDeEMsK0JBQUc7Ozs7O0lBQUgsVUFBSSxLQUFhLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFaEQsd0NBQXdDOzs7Ozs7SUFDeEMscUNBQVM7Ozs7O0lBQVQsVUFBVSxLQUFjLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFN0Qsd0NBQXdDOzs7OztJQUN4QyxvQ0FBUTs7OztJQUFSLGNBQWEsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUV4Qyx3Q0FBd0M7Ozs7O0lBQ3hDLGdDQUFJOzs7O0lBQUosY0FBUyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDOzs7OztJQUVoQyxrQ0FBTTs7OztJQUFOLFVBQU8sRUFBc0I7UUFBN0IsaUJBY0M7UUFkTSxtQkFBQSxFQUFBLGNBQXNCO1FBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztZQUN0QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO2lCQUNyQixHQUFHOzs7O1lBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxLQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBbkIsQ0FBbUIsRUFBQyxDQUMvQixDQUFDO1lBRUYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRTtnQkFDdkMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQzthQUN6QjtTQUNGO1FBRUQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7O2dCQTNDRixVQUFVLFNBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzs7O2dCQVlxQixNQUFNLHVCQUE5QyxNQUFNLFNBQUMsV0FBVzs7OzRCQW5CakM7Q0FtREMsQUE1Q0QsSUE0Q0M7U0EzQ1ksaUJBQWlCOzs7Ozs7SUFDNUIsaUNBQXFEOzs7OztJQUNyRCxxQ0FBeUQ7O0lBQ3pELG1DQUdFOzs7OztJQUtVLHVDQUErQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBMQVRGT1JNX0lELCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IExvYWRpbmdCYXJTdGF0ZSB9IGZyb20gJy4vbG9hZGluZy1iYXIuc3RhdGUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCwgY29tYmluZUxhdGVzdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgc3dpdGNoTWFwLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgTG9hZGluZ0JhclNlcnZpY2Uge1xuICBwcml2YXRlIHJlZnM6IHsgW2lkOiBzdHJpbmddOiBMb2FkaW5nQmFyU3RhdGUgfSA9IHt9O1xuICBwcml2YXRlIHN0cmVhbXMkID0gKG5ldyBTdWJqZWN0PE9ic2VydmFibGU8bnVtYmVyPltdPigpKTtcbiAgcmVhZG9ubHkgdmFsdWUkID0gdGhpcy5zdHJlYW1zJC5waXBlKFxuICAgIHN3aXRjaE1hcChzID0+IGNvbWJpbmVMYXRlc3QoLi4ucykpLFxuICAgIG1hcCh2ID0+IE1hdGgubWF4KC4uLnYpKVxuICApO1xuXG4gIC8qKiBAZGVwcmVjYXRlZCB1c2UgYHZhbHVlJGAgaW5zdGVhZC4gKi9cbiAgZ2V0IHByb2dyZXNzJCgpIHsgcmV0dXJuIHRoaXMudmFsdWUkOyB9XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBPYmplY3QpIHt9XG5cbiAgLyoqIEBkZXByZWNhdGVkIHVzZSBgdXNlUmVmYCBpbnN0ZWFkLiAqL1xuICBzdGFydChpbml0aWFsVmFsdWUgPSAyKSB7IHRoaXMudXNlUmVmKCkuc3RhcnQoaW5pdGlhbFZhbHVlKTsgfVxuXG4gIC8qKiBAZGVwcmVjYXRlZCB1c2UgYHVzZVJlZmAgaW5zdGVhZC4gKi9cbiAgc2V0KHZhbHVlOiBudW1iZXIpIHsgdGhpcy51c2VSZWYoKS5zZXQodmFsdWUpOyB9XG5cbiAgLyoqIEBkZXByZWNhdGVkIHVzZSBgdXNlUmVmYCBpbnN0ZWFkLiAqL1xuICBpbmNyZW1lbnQodmFsdWU/OiBudW1iZXIpIHsgdGhpcy51c2VSZWYoKS5pbmNyZW1lbnQodmFsdWUpOyB9XG5cbiAgLyoqIEBkZXByZWNhdGVkIHVzZSBgdXNlUmVmYCBpbnN0ZWFkLiAqL1xuICBjb21wbGV0ZSgpIHsgdGhpcy51c2VSZWYoKS5jb21wbGV0ZSgpOyB9XG5cbiAgLyoqIEBkZXByZWNhdGVkIHVzZSBgdXNlUmVmYCBpbnN0ZWFkLiAqL1xuICBzdG9wKCkgeyB0aGlzLnVzZVJlZigpLnN0b3AoKTsgfVxuXG4gIHVzZVJlZihpZDogc3RyaW5nID0gJ2RlZmF1bHQnKTogTG9hZGluZ0JhclN0YXRlIHtcbiAgICBpZiAoIXRoaXMucmVmc1tpZF0pIHtcbiAgICAgIHRoaXMucmVmc1tpZF0gPSBuZXcgTG9hZGluZ0JhclN0YXRlKCk7XG4gICAgICB0aGlzLnN0cmVhbXMkLm5leHQoXG4gICAgICAgIE9iamVjdC5rZXlzKHRoaXMucmVmcylcbiAgICAgICAgLm1hcChzID0+IHRoaXMucmVmc1tzXS52YWx1ZSQpXG4gICAgICApO1xuXG4gICAgICBpZiAoIWlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgICAgdGhpcy5yZWZzW2lkXS5kaXNhYmxlKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMucmVmc1tpZF07XG4gIH1cbn1cbiJdfQ==
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: ngx-loading-bar-core.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -9,2 +10,2 @@ /**

export { LoadingBarModule, LoadingBarComponent, LoadingBarService } from './public_api';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWxvYWRpbmctYmFyLWNvcmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4LWxvYWRpbmctYmFyL2NvcmUvIiwic291cmNlcyI6WyJuZ3gtbG9hZGluZy1iYXItY29yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEseUVBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWxvYWRpbmctYmFyLWNvcmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4LWxvYWRpbmctYmFyL2NvcmUvIiwic291cmNlcyI6WyJuZ3gtbG9hZGluZy1iYXItY29yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUlBLHlFQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWNfYXBpJztcbiJdfQ==
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: public_api.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -8,2 +9,2 @@ export { LoadingBarModule } from './core.module';

export { LoadingBarService } from './loading-bar.service';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3gtbG9hZGluZy1iYXIvY29yZS8iLCJzb3VyY2VzIjpbInB1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IExvYWRpbmdCYXJNb2R1bGUgfSBmcm9tICcuL2NvcmUubW9kdWxlJztcbmV4cG9ydCB7IExvYWRpbmdCYXJDb21wb25lbnQgfSBmcm9tICcuL2xvYWRpbmctYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgeyBMb2FkaW5nQmFyU2VydmljZSB9IGZyb20gJy4vbG9hZGluZy1iYXIuc2VydmljZSc7XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3gtbG9hZGluZy1iYXIvY29yZS8iLCJzb3VyY2VzIjpbInB1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBMb2FkaW5nQmFyTW9kdWxlIH0gZnJvbSAnLi9jb3JlLm1vZHVsZSc7XG5leHBvcnQgeyBMb2FkaW5nQmFyQ29tcG9uZW50IH0gZnJvbSAnLi9sb2FkaW5nLWJhci5jb21wb25lbnQnO1xuZXhwb3J0IHsgTG9hZGluZ0JhclNlcnZpY2UgfSBmcm9tICcuL2xvYWRpbmctYmFyLnNlcnZpY2UnO1xuIl19

@@ -1,19 +0,84 @@

import { Injectable, PLATFORM_ID, Inject, NgModule, Component, Input, ViewEncapsulation, defineInjectable, inject } from '@angular/core';
import { Subject } from 'rxjs';
import { debounceTime } from 'rxjs/operators';
import { Injectable, Inject, PLATFORM_ID, ɵɵdefineInjectable, ɵɵinject, Component, ViewEncapsulation, Input, NgModule } from '@angular/core';
import { isPlatformBrowser, CommonModule } from '@angular/common';
import { Subject, of, timer, combineLatest } from 'rxjs';
import { switchMap, startWith, shareReplay, map, take, tap } from 'rxjs/operators';
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: loading-bar.state.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
class LoadingBarService {
/**
* @param {?} platformId
*/
constructor(platformId) {
this.platformId = platformId;
this.progress$ = (/** @type {?} */ ((new Subject()).pipe(debounceTime(0))));
this._pendingRequests = 0;
this._value = 0;
/**
* @record
*/
function ILoadingBarState() { }
if (false) {
/** @type {?} */
ILoadingBarState.prototype.action;
/** @type {?} */
ILoadingBarState.prototype.value;
/** @type {?} */
ILoadingBarState.prototype.initialValue;
}
class LoadingBarState {
constructor() {
this.state = {
action: null,
value: 0,
initialValue: 0,
};
this.requests = null;
this.disabled = false;
this.stream$ = new Subject();
this.value$ = this.stream$.asObservable().pipe(switchMap((/**
* @param {?} s
* @return {?}
*/
(s) => this.timer$(s))), startWith({ action: null, value: 0 }), shareReplay(), map((/**
* @param {?} s
* @return {?}
*/
s => s.value)));
this.timer$ = (/**
* @param {?} s
* @return {?}
*/
(s) => {
/** @type {?} */
let state$ = of(s);
switch (s.action) {
case 'start':
case 'increment':
case 'set': {
if (this.requests > 0) {
state$ = timer(0, 250).pipe(map((/**
* @param {?} t
* @return {?}
*/
t => t === 0
? Object.assign({}, s, { value: this.state.value || s.initialValue }) : Object.assign({}, s, { value: this._increment() }))));
}
break;
}
case 'complete':
case 'stop': {
// Attempt to aggregate any start/complete calls within 500ms:
state$ = s.value === 0 ? of(Object.assign({}, s)) : timer(0, 500).pipe(take(2), map((/**
* @param {?} t
* @return {?}
*/
t => ({ value: t === 0 ? 100 : 0 }))));
break;
}
}
return state$.pipe(map((/**
* @param {?} next
* @return {?}
*/
next => (/** @type {?} */ ((Object.assign({}, next, { action: 'set' })))))), tap((/**
* @param {?} next
* @return {?}
*/
(next) => this.next(next, false))));
});
}

@@ -25,7 +90,6 @@ /**

start(initialValue = 2) {
++this._pendingRequests;
if (this._value === 0 || this._pendingRequests === 1) {
// Inserts the loading bar element into the dom, and sets it to 2%
this.set(this._pendingRequests === 1 && this._value > 0 ? this._value : initialValue);
if (this.disabled) {
return;
}
this.next({ action: 'start', initialValue });
}

@@ -36,6 +100,3 @@ /**

stop() {
this.complete();
while (this._pendingRequests > 0) {
this.complete();
}
this.next({ action: 'stop' });
}

@@ -46,82 +107,197 @@ /**

complete() {
if (this._pendingRequests === 0 && this._value === 0) {
return;
}
if (this._pendingRequests > 0) {
--this._pendingRequests;
}
if (this._pendingRequests === 0 || (this._pendingRequests === 0 && this._value > 0)) {
if (this._value !== 100) {
this.set(100);
}
// Attempt to aggregate any start/complete calls within 500ms:
setTimeout(() => this.set(0), 500);
}
this.next({ action: 'complete' });
}
/**
* Set the loading bar's width to a certain percent.
*
* @param {?} n any value between 0 and 100
* @return {?}
*/
set(n) {
if (!isPlatformBrowser(this.platformId)) {
this._pendingRequests = 0;
return;
disable() {
this.disabled = true;
}
/**
* @param {?} value
* @return {?}
*/
set(value) {
this.next({ action: 'set', value });
}
/**
* @param {?=} value
* @return {?}
*/
increment(value = 0) {
this.next({ action: 'increment', value });
}
/**
* @private
* @param {?} state
* @param {?=} emitEvent
* @return {?}
*/
next(state, emitEvent = true) {
switch (state.action) {
case 'start':
this.requests = (this.requests || 0) + 1;
break;
case 'complete':
this.requests = (this.requests || 1) - 1;
if (this.requests > 0) {
return;
}
break;
case 'stop':
this.requests = 0;
break;
default:
if (state.action === 'increment') {
state.value = this._increment(state.value);
}
break;
}
if (n === 0 && this._pendingRequests > 0) {
n = 2;
/** @type {?} */
const newState = Object.assign({}, this.state, { action: null }, state);
this.state = newState;
if (emitEvent) {
this.stream$.next(this.state);
}
this._value = n;
this.progress$.next(n);
if (this._pendingRequests === 0) {
return;
}
// increment loadingbar to give the illusion that there is always
// progress but make sure to cancel the previous timeouts so we don't
// have multiple incs running at the same time.
clearTimeout(this._incTimeout);
if (this._value > 0 && this._value < 100) {
this._incTimeout = setTimeout(() => this.increment(), 250);
}
}
/**
* Increments the loading bar by a random amount
* but slows down as it progresses
* @private
* @param {?=} rnd
* @return {?}
*/
increment(rnd = 0) {
if (rnd > 0) {
this.set(this._value + rnd);
}
_increment(rnd = 0) {
/** @type {?} */
const stat = this._value;
if (stat >= 0 && stat < 25) {
// Start out between 3 - 6% increments
rnd = (Math.random() * (5 - 3 + 1) + 3);
const stat = this.state.value;
if (stat >= 99) {
rnd = 0;
}
else if (stat >= 25 && stat < 65) {
// increment between 0 - 3%
rnd = (Math.random() * 3);
if (rnd === 0) {
if (stat >= 0 && stat < 25) {
// Start out between 3 - 6% increments
rnd = (Math.random() * (5 - 3 + 1) + 3);
}
else if (stat >= 25 && stat < 65) {
// increment between 0 - 3%
rnd = (Math.random() * 3);
}
else if (stat >= 65 && stat < 90) {
// increment between 0 - 2%
rnd = (Math.random() * 2);
}
else if (stat >= 90 && stat < 99) {
// finally, increment it .5 %
rnd = 0.5;
}
else {
// after 99%, don't increment:
rnd = 0;
}
}
else if (stat >= 65 && stat < 90) {
// increment between 0 - 2%
rnd = (Math.random() * 2);
}
else if (stat >= 90 && stat < 99) {
// finally, increment it .5 %
rnd = 0.5;
}
else {
// after 99%, don't increment:
rnd = 0;
}
this.set(this._value + rnd);
return rnd + stat;
}
}
if (false) {
/**
* @type {?}
* @private
*/
LoadingBarState.prototype.state;
/**
* @type {?}
* @private
*/
LoadingBarState.prototype.requests;
/**
* @type {?}
* @private
*/
LoadingBarState.prototype.disabled;
/**
* @type {?}
* @private
*/
LoadingBarState.prototype.stream$;
/** @type {?} */
LoadingBarState.prototype.value$;
/**
* @type {?}
* @private
*/
LoadingBarState.prototype.timer$;
}
/**
* @fileoverview added by tsickle
* Generated from: loading-bar.service.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
class LoadingBarService {
/**
* @param {?} platformId
*/
constructor(platformId) {
this.platformId = platformId;
this.refs = {};
this.streams$ = (new Subject());
this.value$ = this.streams$.pipe(switchMap((/**
* @param {?} s
* @return {?}
*/
s => combineLatest(...s))), map((/**
* @param {?} v
* @return {?}
*/
v => Math.max(...v))));
}
/**
* @deprecated use `value$` instead.
* @return {?}
*/
ngOnDestroy() {
this.progress$.complete();
get progress$() { return this.value$; }
/**
* @deprecated use `useRef` instead.
* @param {?=} initialValue
* @return {?}
*/
start(initialValue = 2) { this.useRef().start(initialValue); }
/**
* @deprecated use `useRef` instead.
* @param {?} value
* @return {?}
*/
set(value) { this.useRef().set(value); }
/**
* @deprecated use `useRef` instead.
* @param {?=} value
* @return {?}
*/
increment(value) { this.useRef().increment(value); }
/**
* @deprecated use `useRef` instead.
* @return {?}
*/
complete() { this.useRef().complete(); }
/**
* @deprecated use `useRef` instead.
* @return {?}
*/
stop() { this.useRef().stop(); }
/**
* @param {?=} id
* @return {?}
*/
useRef(id = 'default') {
if (!this.refs[id]) {
this.refs[id] = new LoadingBarState();
this.streams$.next(Object.keys(this.refs)
.map((/**
* @param {?} s
* @return {?}
*/
s => this.refs[s].value$)));
if (!isPlatformBrowser(this.platformId)) {
this.refs[id].disable();
}
}
return this.refs[id];
}

@@ -136,7 +312,27 @@ }

];
/** @nocollapse */ LoadingBarService.ngInjectableDef = defineInjectable({ factory: function LoadingBarService_Factory() { return new LoadingBarService(inject(PLATFORM_ID)); }, token: LoadingBarService, providedIn: "root" });
/** @nocollapse */ LoadingBarService.ngInjectableDef = ɵɵdefineInjectable({ factory: function LoadingBarService_Factory() { return new LoadingBarService(ɵɵinject(PLATFORM_ID)); }, token: LoadingBarService, providedIn: "root" });
if (false) {
/**
* @type {?}
* @private
*/
LoadingBarService.prototype.refs;
/**
* @type {?}
* @private
*/
LoadingBarService.prototype.streams$;
/** @type {?} */
LoadingBarService.prototype.value$;
/**
* @type {?}
* @private
*/
LoadingBarService.prototype.platformId;
}
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: loading-bar.component.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -152,4 +348,15 @@ class LoadingBarComponent {

this.fixed = true;
this.value = null;
this.value$ = this.loader.progress$;
}
/**
* @param {?} changes
* @return {?}
*/
ngOnChanges(changes) {
if (changes.ref) {
this.value$ = this.ref
? this.loader.useRef(this.ref).value$
: this.loader.value$;
}
}
}

@@ -160,3 +367,3 @@ LoadingBarComponent.decorators = [

template: `
<ng-container *ngIf="(value !== null ? value : loader.progress$|async) as progress">
<ng-container *ngIf="(value != null ? value : value$|async) as progress">
<div id="loading-bar-spinner" *ngIf="includeSpinner" [style.color]="color">

@@ -177,3 +384,3 @@ <div [style.width]="diameter" [style.height]="diameter" class="spinner-icon"></div>

},
styles: [":host{position:relative;display:block}:host.loading-bar-fixed>div .bar{position:fixed}:host.loading-bar-fixed>div#loading-bar-spinner{position:fixed;top:10px;left:10px}[dir=rtl] :host.loading-bar-fixed>div#loading-bar-spinner{right:10px;left:unset}:host.loading-bar-fixed>div .peg{display:block}:host>div{pointer-events:none;transition:350ms linear;color:#29d}:host>div .bar{transition:width 350ms;background:#29d;position:absolute;z-index:10002;top:0;left:0;width:100%;height:2px;border-bottom-right-radius:1px;border-top-right-radius:1px}[dir=rtl] :host>div .bar{right:0;left:unset}:host>div .peg{display:none;position:absolute;width:70px;right:0;top:0;height:2px;opacity:.45;box-shadow:1px 0 6px 1px;color:inherit;border-radius:100%}:host>div#loading-bar-spinner{display:block;position:absolute;z-index:10002;top:5px;left:0}:host>div#loading-bar-spinner .spinner-icon{width:14px;height:14px;border:2px solid transparent;border-top-color:inherit;border-left-color:inherit;border-radius:50%;-webkit-animation:.4s linear infinite loading-bar-spinner;animation:.4s linear infinite loading-bar-spinner}@-webkit-keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}"]
styles: [":host{position:relative;display:block}:host.loading-bar-fixed>div .bar{position:fixed}:host.loading-bar-fixed>div#loading-bar-spinner{position:fixed;top:10px;left:10px}[dir=rtl] :host.loading-bar-fixed>div#loading-bar-spinner{right:10px;left:unset}:host.loading-bar-fixed>div .peg{display:block}:host>div{pointer-events:none;-webkit-transition:350ms linear;transition:350ms linear;color:#29d}:host>div .bar{-webkit-transition:width 350ms;transition:width 350ms;background:#29d;position:absolute;z-index:10002;top:0;left:0;width:100%;height:2px;border-bottom-right-radius:1px;border-top-right-radius:1px}[dir=rtl] :host>div .bar{right:0;left:unset}:host>div .peg{display:none;position:absolute;width:70px;right:0;top:0;height:2px;opacity:.45;box-shadow:1px 0 6px 1px;color:inherit;border-radius:100%}:host>div#loading-bar-spinner{display:block;position:absolute;z-index:10002;top:5px;left:0}:host>div#loading-bar-spinner .spinner-icon{width:14px;height:14px;border:2px solid transparent;border-top-color:inherit;border-left-color:inherit;border-radius:50%;-webkit-animation:.4s linear infinite loading-bar-spinner;animation:.4s linear infinite loading-bar-spinner}@-webkit-keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}"]
}] }

@@ -190,10 +397,34 @@ ];

color: [{ type: Input }],
value: [{ type: Input }],
ref: [{ type: Input }],
height: [{ type: Input }],
diameter: [{ type: Input }],
value: [{ type: Input }]
diameter: [{ type: Input }]
};
if (false) {
/** @type {?} */
LoadingBarComponent.prototype.includeSpinner;
/** @type {?} */
LoadingBarComponent.prototype.includeBar;
/** @type {?} */
LoadingBarComponent.prototype.fixed;
/** @type {?} */
LoadingBarComponent.prototype.color;
/** @type {?} */
LoadingBarComponent.prototype.value;
/** @type {?} */
LoadingBarComponent.prototype.ref;
/** @type {?} */
LoadingBarComponent.prototype.height;
/** @type {?} */
LoadingBarComponent.prototype.diameter;
/** @type {?} */
LoadingBarComponent.prototype.value$;
/** @type {?} */
LoadingBarComponent.prototype.loader;
}
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: core.module.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -212,3 +443,4 @@ class LoadingBarModule {

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: public_api.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -218,7 +450,7 @@

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: ngx-loading-bar-core.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
export { LoadingBarModule, LoadingBarComponent, LoadingBarService };
//# sourceMappingURL=ngx-loading-bar-core.js.map
export { LoadingBarComponent, LoadingBarModule, LoadingBarService };
//# sourceMappingURL=ngx-loading-bar-core.js.map

@@ -1,16 +0,86 @@

import { Injectable, PLATFORM_ID, Inject, NgModule, Component, Input, ViewEncapsulation, defineInjectable, inject } from '@angular/core';
import { Subject } from 'rxjs';
import { debounceTime } from 'rxjs/operators';
import { Injectable, Inject, PLATFORM_ID, ɵɵdefineInjectable, ɵɵinject, Component, ViewEncapsulation, Input, NgModule } from '@angular/core';
import { isPlatformBrowser, CommonModule } from '@angular/common';
import { __assign, __spread } from 'tslib';
import { Subject, of, timer, combineLatest } from 'rxjs';
import { switchMap, startWith, shareReplay, map, take, tap } from 'rxjs/operators';
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: loading-bar.state.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var LoadingBarService = /** @class */ (function () {
function LoadingBarService(platformId) {
this.platformId = platformId;
this.progress$ = (/** @type {?} */ ((new Subject()).pipe(debounceTime(0))));
this._pendingRequests = 0;
this._value = 0;
/**
* @record
*/
function ILoadingBarState() { }
if (false) {
/** @type {?} */
ILoadingBarState.prototype.action;
/** @type {?} */
ILoadingBarState.prototype.value;
/** @type {?} */
ILoadingBarState.prototype.initialValue;
}
var LoadingBarState = /** @class */ (function () {
function LoadingBarState() {
var _this = this;
this.state = {
action: null,
value: 0,
initialValue: 0,
};
this.requests = null;
this.disabled = false;
this.stream$ = new Subject();
this.value$ = this.stream$.asObservable().pipe(switchMap((/**
* @param {?} s
* @return {?}
*/
function (s) { return _this.timer$(s); })), startWith({ action: null, value: 0 }), shareReplay(), map((/**
* @param {?} s
* @return {?}
*/
function (s) { return s.value; })));
this.timer$ = (/**
* @param {?} s
* @return {?}
*/
function (s) {
/** @type {?} */
var state$ = of(s);
switch (s.action) {
case 'start':
case 'increment':
case 'set': {
if (_this.requests > 0) {
state$ = timer(0, 250).pipe(map((/**
* @param {?} t
* @return {?}
*/
function (t) { return t === 0
? __assign({}, s, { value: _this.state.value || s.initialValue }) : __assign({}, s, { value: _this._increment() }); })));
}
break;
}
case 'complete':
case 'stop': {
// Attempt to aggregate any start/complete calls within 500ms:
state$ = s.value === 0 ? of(__assign({}, s)) : timer(0, 500).pipe(take(2), map((/**
* @param {?} t
* @return {?}
*/
function (t) { return ({ value: t === 0 ? 100 : 0 }); })));
break;
}
}
return state$.pipe(map((/**
* @param {?} next
* @return {?}
*/
function (next) { return (/** @type {?} */ ((__assign({}, next, { action: 'set' })))); })), tap((/**
* @param {?} next
* @return {?}
*/
function (next) { return _this.next(next, false); })));
});
}

@@ -21,3 +91,3 @@ /**

*/
LoadingBarService.prototype.start = /**
LoadingBarState.prototype.start = /**
* @param {?=} initialValue

@@ -28,7 +98,6 @@ * @return {?}

if (initialValue === void 0) { initialValue = 2; }
++this._pendingRequests;
if (this._value === 0 || this._pendingRequests === 1) {
// Inserts the loading bar element into the dom, and sets it to 2%
this.set(this._pendingRequests === 1 && this._value > 0 ? this._value : initialValue);
if (this.disabled) {
return;
}
this.next({ action: 'start', initialValue: initialValue });
};

@@ -38,10 +107,7 @@ /**

*/
LoadingBarService.prototype.stop = /**
LoadingBarState.prototype.stop = /**
* @return {?}
*/
function () {
this.complete();
while (this._pendingRequests > 0) {
this.complete();
}
this.next({ action: 'stop' });
};

@@ -51,73 +117,87 @@ /**

*/
LoadingBarService.prototype.complete = /**
LoadingBarState.prototype.complete = /**
* @return {?}
*/
function () {
var _this = this;
if (this._pendingRequests === 0 && this._value === 0) {
return;
}
if (this._pendingRequests > 0) {
--this._pendingRequests;
}
if (this._pendingRequests === 0 || (this._pendingRequests === 0 && this._value > 0)) {
if (this._value !== 100) {
this.set(100);
}
// Attempt to aggregate any start/complete calls within 500ms:
setTimeout(function () { return _this.set(0); }, 500);
}
this.next({ action: 'complete' });
};
/**
* Set the loading bar's width to a certain percent.
*
* @param n any value between 0 and 100
* @return {?}
*/
LoadingBarState.prototype.disable = /**
* @return {?}
*/
function () {
this.disabled = true;
};
/**
* Set the loading bar's width to a certain percent.
*
* @param {?} n any value between 0 and 100
* @param {?} value
* @return {?}
*/
LoadingBarService.prototype.set = /**
* Set the loading bar's width to a certain percent.
*
* @param {?} n any value between 0 and 100
LoadingBarState.prototype.set = /**
* @param {?} value
* @return {?}
*/
function (n) {
var _this = this;
if (!isPlatformBrowser(this.platformId)) {
this._pendingRequests = 0;
return;
function (value) {
this.next({ action: 'set', value: value });
};
/**
* @param {?=} value
* @return {?}
*/
LoadingBarState.prototype.increment = /**
* @param {?=} value
* @return {?}
*/
function (value) {
if (value === void 0) { value = 0; }
this.next({ action: 'increment', value: value });
};
/**
* @private
* @param {?} state
* @param {?=} emitEvent
* @return {?}
*/
LoadingBarState.prototype.next = /**
* @private
* @param {?} state
* @param {?=} emitEvent
* @return {?}
*/
function (state, emitEvent) {
if (emitEvent === void 0) { emitEvent = true; }
switch (state.action) {
case 'start':
this.requests = (this.requests || 0) + 1;
break;
case 'complete':
this.requests = (this.requests || 1) - 1;
if (this.requests > 0) {
return;
}
break;
case 'stop':
this.requests = 0;
break;
default:
if (state.action === 'increment') {
state.value = this._increment(state.value);
}
break;
}
if (n === 0 && this._pendingRequests > 0) {
n = 2;
/** @type {?} */
var newState = __assign({}, this.state, { action: null }, state);
this.state = newState;
if (emitEvent) {
this.stream$.next(this.state);
}
this._value = n;
this.progress$.next(n);
if (this._pendingRequests === 0) {
return;
}
// increment loadingbar to give the illusion that there is always
// progress but make sure to cancel the previous timeouts so we don't
// have multiple incs running at the same time.
clearTimeout(this._incTimeout);
if (this._value > 0 && this._value < 100) {
this._incTimeout = setTimeout(function () { return _this.increment(); }, 250);
}
};
/**
* Increments the loading bar by a random amount
* but slows down as it progresses
*/
/**
* Increments the loading bar by a random amount
* but slows down as it progresses
* @private
* @param {?=} rnd
* @return {?}
*/
LoadingBarService.prototype.increment = /**
* Increments the loading bar by a random amount
* but slows down as it progresses
LoadingBarState.prototype._increment = /**
* @private
* @param {?=} rnd

@@ -128,38 +208,177 @@ * @return {?}

if (rnd === void 0) { rnd = 0; }
if (rnd > 0) {
this.set(this._value + rnd);
}
/** @type {?} */
var stat = this._value;
if (stat >= 0 && stat < 25) {
// Start out between 3 - 6% increments
rnd = (Math.random() * (5 - 3 + 1) + 3);
var stat = this.state.value;
if (stat >= 99) {
rnd = 0;
}
else if (stat >= 25 && stat < 65) {
// increment between 0 - 3%
rnd = (Math.random() * 3);
if (rnd === 0) {
if (stat >= 0 && stat < 25) {
// Start out between 3 - 6% increments
rnd = (Math.random() * (5 - 3 + 1) + 3);
}
else if (stat >= 25 && stat < 65) {
// increment between 0 - 3%
rnd = (Math.random() * 3);
}
else if (stat >= 65 && stat < 90) {
// increment between 0 - 2%
rnd = (Math.random() * 2);
}
else if (stat >= 90 && stat < 99) {
// finally, increment it .5 %
rnd = 0.5;
}
else {
// after 99%, don't increment:
rnd = 0;
}
}
else if (stat >= 65 && stat < 90) {
// increment between 0 - 2%
rnd = (Math.random() * 2);
}
else if (stat >= 90 && stat < 99) {
// finally, increment it .5 %
rnd = 0.5;
}
else {
// after 99%, don't increment:
rnd = 0;
}
this.set(this._value + rnd);
return rnd + stat;
};
return LoadingBarState;
}());
if (false) {
/**
* @type {?}
* @private
*/
LoadingBarState.prototype.state;
/**
* @type {?}
* @private
*/
LoadingBarState.prototype.requests;
/**
* @type {?}
* @private
*/
LoadingBarState.prototype.disabled;
/**
* @type {?}
* @private
*/
LoadingBarState.prototype.stream$;
/** @type {?} */
LoadingBarState.prototype.value$;
/**
* @type {?}
* @private
*/
LoadingBarState.prototype.timer$;
}
/**
* @fileoverview added by tsickle
* Generated from: loading-bar.service.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var LoadingBarService = /** @class */ (function () {
function LoadingBarService(platformId) {
this.platformId = platformId;
this.refs = {};
this.streams$ = (new Subject());
this.value$ = this.streams$.pipe(switchMap((/**
* @param {?} s
* @return {?}
*/
function (s) { return combineLatest.apply(void 0, __spread(s)); })), map((/**
* @param {?} v
* @return {?}
*/
function (v) { return Math.max.apply(Math, __spread(v)); })));
}
Object.defineProperty(LoadingBarService.prototype, "progress$", {
/** @deprecated use `value$` instead. */
get: /**
* @deprecated use `value$` instead.
* @return {?}
*/
function () { return this.value$; },
enumerable: true,
configurable: true
});
/** @deprecated use `useRef` instead. */
/**
* @deprecated use `useRef` instead.
* @param {?=} initialValue
* @return {?}
*/
LoadingBarService.prototype.ngOnDestroy = /**
LoadingBarService.prototype.start = /**
* @deprecated use `useRef` instead.
* @param {?=} initialValue
* @return {?}
*/
function () {
this.progress$.complete();
function (initialValue) {
if (initialValue === void 0) { initialValue = 2; }
this.useRef().start(initialValue);
};
/** @deprecated use `useRef` instead. */
/**
* @deprecated use `useRef` instead.
* @param {?} value
* @return {?}
*/
LoadingBarService.prototype.set = /**
* @deprecated use `useRef` instead.
* @param {?} value
* @return {?}
*/
function (value) { this.useRef().set(value); };
/** @deprecated use `useRef` instead. */
/**
* @deprecated use `useRef` instead.
* @param {?=} value
* @return {?}
*/
LoadingBarService.prototype.increment = /**
* @deprecated use `useRef` instead.
* @param {?=} value
* @return {?}
*/
function (value) { this.useRef().increment(value); };
/** @deprecated use `useRef` instead. */
/**
* @deprecated use `useRef` instead.
* @return {?}
*/
LoadingBarService.prototype.complete = /**
* @deprecated use `useRef` instead.
* @return {?}
*/
function () { this.useRef().complete(); };
/** @deprecated use `useRef` instead. */
/**
* @deprecated use `useRef` instead.
* @return {?}
*/
LoadingBarService.prototype.stop = /**
* @deprecated use `useRef` instead.
* @return {?}
*/
function () { this.useRef().stop(); };
/**
* @param {?=} id
* @return {?}
*/
LoadingBarService.prototype.useRef = /**
* @param {?=} id
* @return {?}
*/
function (id) {
var _this = this;
if (id === void 0) { id = 'default'; }
if (!this.refs[id]) {
this.refs[id] = new LoadingBarState();
this.streams$.next(Object.keys(this.refs)
.map((/**
* @param {?} s
* @return {?}
*/
function (s) { return _this.refs[s].value$; })));
if (!isPlatformBrowser(this.platformId)) {
this.refs[id].disable();
}
}
return this.refs[id];
};
LoadingBarService.decorators = [

@@ -172,9 +391,29 @@ { type: Injectable, args: [{ providedIn: 'root' },] }

]; };
/** @nocollapse */ LoadingBarService.ngInjectableDef = defineInjectable({ factory: function LoadingBarService_Factory() { return new LoadingBarService(inject(PLATFORM_ID)); }, token: LoadingBarService, providedIn: "root" });
/** @nocollapse */ LoadingBarService.ngInjectableDef = ɵɵdefineInjectable({ factory: function LoadingBarService_Factory() { return new LoadingBarService(ɵɵinject(PLATFORM_ID)); }, token: LoadingBarService, providedIn: "root" });
return LoadingBarService;
}());
if (false) {
/**
* @type {?}
* @private
*/
LoadingBarService.prototype.refs;
/**
* @type {?}
* @private
*/
LoadingBarService.prototype.streams$;
/** @type {?} */
LoadingBarService.prototype.value$;
/**
* @type {?}
* @private
*/
LoadingBarService.prototype.platformId;
}
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: loading-bar.component.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -187,8 +426,23 @@ var LoadingBarComponent = /** @class */ (function () {

this.fixed = true;
this.value = null;
this.value$ = this.loader.progress$;
}
/**
* @param {?} changes
* @return {?}
*/
LoadingBarComponent.prototype.ngOnChanges = /**
* @param {?} changes
* @return {?}
*/
function (changes) {
if (changes.ref) {
this.value$ = this.ref
? this.loader.useRef(this.ref).value$
: this.loader.value$;
}
};
LoadingBarComponent.decorators = [
{ type: Component, args: [{
selector: 'ngx-loading-bar',
template: "\n <ng-container *ngIf=\"(value !== null ? value : loader.progress$|async) as progress\">\n <div id=\"loading-bar-spinner\" *ngIf=\"includeSpinner\" [style.color]=\"color\">\n <div [style.width]=\"diameter\" [style.height]=\"diameter\" class=\"spinner-icon\"></div>\n </div>\n <div id=\"loading-bar\" *ngIf=\"includeBar\" [style.color]=\"color\">\n <div class=\"bar\" [style.background]=\"color\" [style.height]=\"height\" [style.width]=\"progress + '%'\">\n <div class=\"peg\" [style.height]=\"height\"></div>\n </div>\n </div>\n </ng-container>\n ",
template: "\n <ng-container *ngIf=\"(value != null ? value : value$|async) as progress\">\n <div id=\"loading-bar-spinner\" *ngIf=\"includeSpinner\" [style.color]=\"color\">\n <div [style.width]=\"diameter\" [style.height]=\"diameter\" class=\"spinner-icon\"></div>\n </div>\n <div id=\"loading-bar\" *ngIf=\"includeBar\" [style.color]=\"color\">\n <div class=\"bar\" [style.background]=\"color\" [style.height]=\"height\" [style.width]=\"progress + '%'\">\n <div class=\"peg\" [style.height]=\"height\"></div>\n </div>\n </div>\n </ng-container>\n ",
preserveWhitespaces: false,

@@ -199,3 +453,3 @@ encapsulation: ViewEncapsulation.Emulated,

},
styles: [":host{position:relative;display:block}:host.loading-bar-fixed>div .bar{position:fixed}:host.loading-bar-fixed>div#loading-bar-spinner{position:fixed;top:10px;left:10px}[dir=rtl] :host.loading-bar-fixed>div#loading-bar-spinner{right:10px;left:unset}:host.loading-bar-fixed>div .peg{display:block}:host>div{pointer-events:none;transition:350ms linear;color:#29d}:host>div .bar{transition:width 350ms;background:#29d;position:absolute;z-index:10002;top:0;left:0;width:100%;height:2px;border-bottom-right-radius:1px;border-top-right-radius:1px}[dir=rtl] :host>div .bar{right:0;left:unset}:host>div .peg{display:none;position:absolute;width:70px;right:0;top:0;height:2px;opacity:.45;box-shadow:1px 0 6px 1px;color:inherit;border-radius:100%}:host>div#loading-bar-spinner{display:block;position:absolute;z-index:10002;top:5px;left:0}:host>div#loading-bar-spinner .spinner-icon{width:14px;height:14px;border:2px solid transparent;border-top-color:inherit;border-left-color:inherit;border-radius:50%;-webkit-animation:.4s linear infinite loading-bar-spinner;animation:.4s linear infinite loading-bar-spinner}@-webkit-keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}"]
styles: [":host{position:relative;display:block}:host.loading-bar-fixed>div .bar{position:fixed}:host.loading-bar-fixed>div#loading-bar-spinner{position:fixed;top:10px;left:10px}[dir=rtl] :host.loading-bar-fixed>div#loading-bar-spinner{right:10px;left:unset}:host.loading-bar-fixed>div .peg{display:block}:host>div{pointer-events:none;-webkit-transition:350ms linear;transition:350ms linear;color:#29d}:host>div .bar{-webkit-transition:width 350ms;transition:width 350ms;background:#29d;position:absolute;z-index:10002;top:0;left:0;width:100%;height:2px;border-bottom-right-radius:1px;border-top-right-radius:1px}[dir=rtl] :host>div .bar{right:0;left:unset}:host>div .peg{display:none;position:absolute;width:70px;right:0;top:0;height:2px;opacity:.45;box-shadow:1px 0 6px 1px;color:inherit;border-radius:100%}:host>div#loading-bar-spinner{display:block;position:absolute;z-index:10002;top:5px;left:0}:host>div#loading-bar-spinner .spinner-icon{width:14px;height:14px;border:2px solid transparent;border-top-color:inherit;border-left-color:inherit;border-radius:50%;-webkit-animation:.4s linear infinite loading-bar-spinner;animation:.4s linear infinite loading-bar-spinner}@-webkit-keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}"]
}] }

@@ -212,12 +466,36 @@ ];

color: [{ type: Input }],
value: [{ type: Input }],
ref: [{ type: Input }],
height: [{ type: Input }],
diameter: [{ type: Input }],
value: [{ type: Input }]
diameter: [{ type: Input }]
};
return LoadingBarComponent;
}());
if (false) {
/** @type {?} */
LoadingBarComponent.prototype.includeSpinner;
/** @type {?} */
LoadingBarComponent.prototype.includeBar;
/** @type {?} */
LoadingBarComponent.prototype.fixed;
/** @type {?} */
LoadingBarComponent.prototype.color;
/** @type {?} */
LoadingBarComponent.prototype.value;
/** @type {?} */
LoadingBarComponent.prototype.ref;
/** @type {?} */
LoadingBarComponent.prototype.height;
/** @type {?} */
LoadingBarComponent.prototype.diameter;
/** @type {?} */
LoadingBarComponent.prototype.value$;
/** @type {?} */
LoadingBarComponent.prototype.loader;
}
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: core.module.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -239,3 +517,4 @@ var LoadingBarModule = /** @class */ (function () {

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: public_api.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -245,7 +524,7 @@

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* Generated from: ngx-loading-bar-core.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
export { LoadingBarModule, LoadingBarComponent, LoadingBarService };
//# sourceMappingURL=ngx-loading-bar-core.js.map
export { LoadingBarComponent, LoadingBarModule, LoadingBarService };
//# sourceMappingURL=ngx-loading-bar-core.js.map

@@ -0,3 +1,4 @@

import { OnChanges, SimpleChanges } from '@angular/core';
import { LoadingBarService } from './loading-bar.service';
export declare class LoadingBarComponent {
export declare class LoadingBarComponent implements OnChanges {
loader: LoadingBarService;

@@ -7,7 +8,10 @@ includeSpinner: boolean;

fixed: boolean;
color: any;
height: any;
diameter: any;
value: any;
color: string;
value: number;
ref: string;
height: string;
diameter: string;
value$: import("rxjs").Observable<number>;
constructor(loader: LoadingBarService);
ngOnChanges(changes: SimpleChanges): void;
}

@@ -1,25 +0,22 @@

import { OnDestroy } from '@angular/core';
import { Subject } from 'rxjs';
export declare class LoadingBarService implements OnDestroy {
import { LoadingBarState } from './loading-bar.state';
import { Observable } from 'rxjs';
export declare class LoadingBarService {
private platformId;
readonly progress$: Subject<number>;
private _pendingRequests;
private _value;
private _incTimeout;
private refs;
private streams$;
readonly value$: Observable<number>;
/** @deprecated use `value$` instead. */
readonly progress$: Observable<number>;
constructor(platformId: Object);
/** @deprecated use `useRef` instead. */
start(initialValue?: number): void;
/** @deprecated use `useRef` instead. */
set(value: number): void;
/** @deprecated use `useRef` instead. */
increment(value?: number): void;
/** @deprecated use `useRef` instead. */
complete(): void;
/** @deprecated use `useRef` instead. */
stop(): void;
complete(): void;
/**
* Set the loading bar's width to a certain percent.
*
* @param n any value between 0 and 100
*/
set(n: any): void;
/**
* Increments the loading bar by a random amount
* but slows down as it progresses
*/
increment(rnd?: number): void;
ngOnDestroy(): void;
useRef(id?: string): LoadingBarState;
}

@@ -1,1 +0,1 @@

{"__symbolic":"module","version":4,"metadata":{"LoadingBarModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":4,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":5,"character":12}],"declarations":[{"__symbolic":"reference","name":"LoadingBarComponent"}],"exports":[{"__symbolic":"reference","name":"LoadingBarComponent"}]}]}],"members":{}},"LoadingBarComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"ngx-loading-bar","template":"\n <ng-container *ngIf=\"(value !== null ? value : loader.progress$|async) as progress\">\n <div id=\"loading-bar-spinner\" *ngIf=\"includeSpinner\" [style.color]=\"color\">\n <div [style.width]=\"diameter\" [style.height]=\"diameter\" class=\"spinner-icon\"></div>\n </div>\n <div id=\"loading-bar\" *ngIf=\"includeBar\" [style.color]=\"color\">\n <div class=\"bar\" [style.background]=\"color\" [style.height]=\"height\" [style.width]=\"progress + '%'\">\n <div class=\"peg\" [style.height]=\"height\"></div>\n </div>\n </div>\n </ng-container>\n ","preserveWhitespaces":false,"encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":18,"character":17},"member":"Emulated"},"host":{"[class.loading-bar-fixed]":"fixed","$quoted$":["[class.loading-bar-fixed]"]},"styles":[":host{position:relative;display:block}:host.loading-bar-fixed>div .bar{position:fixed}:host.loading-bar-fixed>div#loading-bar-spinner{position:fixed;top:10px;left:10px}[dir=rtl] :host.loading-bar-fixed>div#loading-bar-spinner{right:10px;left:unset}:host.loading-bar-fixed>div .peg{display:block}:host>div{pointer-events:none;transition:350ms linear;color:#29d}:host>div .bar{transition:width 350ms;background:#29d;position:absolute;z-index:10002;top:0;left:0;width:100%;height:2px;border-bottom-right-radius:1px;border-top-right-radius:1px}[dir=rtl] :host>div .bar{right:0;left:unset}:host>div .peg{display:none;position:absolute;width:70px;right:0;top:0;height:2px;opacity:.45;box-shadow:1px 0 6px 1px;color:inherit;border-radius:100%}:host>div#loading-bar-spinner{display:block;position:absolute;z-index:10002;top:5px;left:0}:host>div#loading-bar-spinner .spinner-icon{width:14px;height:14px;border:2px solid transparent;border-top-color:inherit;border-left-color:inherit;border-radius:50%;-webkit-animation:.4s linear infinite loading-bar-spinner;animation:.4s linear infinite loading-bar-spinner}@-webkit-keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}"]}]}],"members":{"includeSpinner":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3}}]}],"includeBar":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":3}}]}],"fixed":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":3}}]}],"color":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"height":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":3}}]}],"diameter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":3}}]}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":31,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"LoadingBarService"}]}]}},"LoadingBarService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":14,"character":15},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"PLATFORM_ID","line":14,"character":22}]}]],"parameters":[{"__symbolic":"reference","name":"Object"}]}],"start":[{"__symbolic":"method"}],"stop":[{"__symbolic":"method"}],"complete":[{"__symbolic":"method"}],"set":[{"__symbolic":"method"}],"increment":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}}},"origins":{"LoadingBarModule":"./core.module","LoadingBarComponent":"./loading-bar.component","LoadingBarService":"./loading-bar.service"},"importAs":"@ngx-loading-bar/core"}
{"__symbolic":"module","version":4,"metadata":{"LoadingBarModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":4,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":5,"character":12}],"declarations":[{"__symbolic":"reference","name":"LoadingBarComponent"}],"exports":[{"__symbolic":"reference","name":"LoadingBarComponent"}]}]}],"members":{}},"LoadingBarComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"ngx-loading-bar","template":"\n <ng-container *ngIf=\"(value != null ? value : value$|async) as progress\">\n <div id=\"loading-bar-spinner\" *ngIf=\"includeSpinner\" [style.color]=\"color\">\n <div [style.width]=\"diameter\" [style.height]=\"diameter\" class=\"spinner-icon\"></div>\n </div>\n <div id=\"loading-bar\" *ngIf=\"includeBar\" [style.color]=\"color\">\n <div class=\"bar\" [style.background]=\"color\" [style.height]=\"height\" [style.width]=\"progress + '%'\">\n <div class=\"peg\" [style.height]=\"height\"></div>\n </div>\n </div>\n </ng-container>\n ","preserveWhitespaces":false,"encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":18,"character":17},"member":"Emulated"},"host":{"[class.loading-bar-fixed]":"fixed","$quoted$":["[class.loading-bar-fixed]"]},"styles":[":host{position:relative;display:block}:host.loading-bar-fixed>div .bar{position:fixed}:host.loading-bar-fixed>div#loading-bar-spinner{position:fixed;top:10px;left:10px}[dir=rtl] :host.loading-bar-fixed>div#loading-bar-spinner{right:10px;left:unset}:host.loading-bar-fixed>div .peg{display:block}:host>div{pointer-events:none;-webkit-transition:350ms linear;transition:350ms linear;color:#29d}:host>div .bar{-webkit-transition:width 350ms;transition:width 350ms;background:#29d;position:absolute;z-index:10002;top:0;left:0;width:100%;height:2px;border-bottom-right-radius:1px;border-top-right-radius:1px}[dir=rtl] :host>div .bar{right:0;left:unset}:host>div .peg{display:none;position:absolute;width:70px;right:0;top:0;height:2px;opacity:.45;box-shadow:1px 0 6px 1px;color:inherit;border-radius:100%}:host>div#loading-bar-spinner{display:block;position:absolute;z-index:10002;top:5px;left:0}:host>div#loading-bar-spinner .spinner-icon{width:14px;height:14px;border:2px solid transparent;border-top-color:inherit;border-left-color:inherit;border-radius:50%;-webkit-animation:.4s linear infinite loading-bar-spinner;animation:.4s linear infinite loading-bar-spinner}@-webkit-keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loading-bar-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}"]}]}],"members":{"includeSpinner":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3}}]}],"includeBar":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":3}}]}],"fixed":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":3}}]}],"color":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":3}}]}],"ref":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":3}}]}],"height":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":31,"character":3}}]}],"diameter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"LoadingBarService"}]}],"ngOnChanges":[{"__symbolic":"method"}]}},"LoadingBarService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":19,"character":15},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"PLATFORM_ID","line":19,"character":22}]}]],"parameters":[{"__symbolic":"reference","name":"Object"}]}],"start":[{"__symbolic":"method"}],"set":[{"__symbolic":"method"}],"increment":[{"__symbolic":"method"}],"complete":[{"__symbolic":"method"}],"stop":[{"__symbolic":"method"}],"useRef":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}}},"origins":{"LoadingBarModule":"./core.module","LoadingBarComponent":"./loading-bar.component","LoadingBarService":"./loading-bar.service"},"importAs":"@ngx-loading-bar/core"}
{
"name": "@ngx-loading-bar/core",
"version": "4.2.0",
"version": "5.0.0-alpha.0",
"description": "Automatic page loading / progress bar for Angular",

@@ -5,0 +5,0 @@ "keywords": [

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc