From 6f900cc45d7dd7f97430812b86b5c1d1693c8ae3 Mon Sep 17 00:00:00 2001 From: Ittay Stern Date: Wed, 29 Aug 2018 17:01:32 +0300 Subject: merge from ecomp a88f0072 - Modern UI Issue-ID: VID-378 Change-Id: Ibcb23dd27f550cf32ce2fe0239f0f496ae014ff6 Signed-off-by: Ittay Stern --- .../shared/components/spinner/spinner.component.ts | 50 ++++++++++++++++++---- 1 file changed, 41 insertions(+), 9 deletions(-) (limited to 'vid-webpack-master/src/app/shared/components/spinner/spinner.component.ts') diff --git a/vid-webpack-master/src/app/shared/components/spinner/spinner.component.ts b/vid-webpack-master/src/app/shared/components/spinner/spinner.component.ts index 0ce5d2074..94a0e1c52 100644 --- a/vid-webpack-master/src/app/shared/components/spinner/spinner.component.ts +++ b/vid-webpack-master/src/app/shared/components/spinner/spinner.component.ts @@ -1,18 +1,50 @@ -import { Component, Input } from '@angular/core'; -import { Subject } from 'rxjs/Subject'; +import {Component} from '@angular/core'; +import {Subject} from 'rxjs/Subject'; +import * as _ from 'lodash'; @Component({ selector : 'spinner-component', - templateUrl : './spinner.component.html', - styleUrls : ['./spinner.component.scss'] + templateUrl: './spinner.component.html', + styleUrls : ['./spinner.component.scss'], + providers : [] + }) -export class SpinnerComponent { - show : boolean = false; - static showSpinner: Subject = new Subject(); +export class SpinnerComponent{ + show : boolean; + size = "large"; + global = true; + + requestMap = {}; + + static showSpinner: Subject = new Subject(); constructor(){ - SpinnerComponent.showSpinner.subscribe((status) => { - this.show = status; + SpinnerComponent.showSpinner.subscribe((spinnerInfo) => { + let status = spinnerInfo['status']; + let requestType = spinnerInfo['requestType']; + let requestUrl = spinnerInfo['requestUrl']; + + if(status && requestType === 'json'){ + this.requestMap[requestUrl] = true; + }else { + delete this.requestMap[requestUrl] + } + console.log(this.requestMap); + this.show = !_.isEmpty(this.requestMap) && this.requestMap !== undefined; + }) } } + + +export class SpinnerInfo { + status : boolean; + requestUrl : string; + requestType : string; + + constructor(status : boolean, requestUrl : string, requestType : string){ + this.status = status; + this.requestUrl = requestUrl; + this.requestType = requestType; + } +} -- cgit 1.2.3-korg