diff --git a/app/src/app/pages/clear-water/clear-water.component.html b/app/src/app/pages/clear-water/clear-water.component.html index 7cfe341296..afd750d1df 100644 --- a/app/src/app/pages/clear-water/clear-water.component.html +++ b/app/src/app/pages/clear-water/clear-water.component.html @@ -1,131 +1,150 @@
-
-
-
- -
-
CLEARWATER SCORE
-
{{cw_score.current}}
-
- -
-
    -
  • -
    Organization
    goal
    -
    {{cw_score.organizationGoal}}
    -
  • -
  • -
    Organization
    Average
    -
    {{cw_score.organizationAverage}}
    -
  • -
  • -
    Total
    warnings
    -
    {{cw_obj.warnings}}
    -
  • -
  • -
    Total
    errors
    -
    {{cw_obj.errors}}
    -
  • -
  • -
    Description
    -
    {{cw_message}}
    -
  • - -
-
- -
- - - -
-
+
+ +
+
+
+ + +
+
+
+
Creation
+
+ +
+
+
+
Completion
+
+ +
+ +
+ Done. Please check your e-mail for PR details. + + Current Status: {{statusInfo}} + . + . + . +
-
+
+ +
+
+
+
+
CLEARWATER SCORE
+
+
{{cw_score.current}}
+
+
-
+
+
    +
  • +
    Organization
    goal
    +
    {{cw_score.organizationGoal}}
    +
  • +
  • +
    Organization
    Average
    +
    {{cw_score.organizationAverage}}
    +
  • +
  • +
    Total
    warnings
    +
    {{cw_obj.warnings}}
    +
  • +
  • +
    Total
    errors
    +
    {{cw_obj.errors}}
    +
  • +
  • +
    Description
    +
    {{cw_message}}
    +
  • -
    - - -
    Hide Warnings
    +
-
- - - + +
+ +
-
- -
-
-
{{row.heading}} - {{row.status}} {{row.issues.length}} issues -
-
-
-
-
{{row.description}}
-
Reduces your score by {{row.score}}
-
- - - - - - - - - - - - -
MESSAGELOCATION
- {{each.message}} - - {{each.location}} -
- VIEW DETAILS +
-
-
- +
+
+ + + +
+ +
+ + +
Hide Warnings
-
-
- Congratulations! This API has no issues -
-
-
- - - Back - - +
+ + + +
+
+
+
+ Clearwater Score Trend +
+
+
+
+
+
+
+ +
+
+
+
-
{{oneObject.heading}} - {{oneObject.status}} {{oneObject.issues.length}} issues +
+ +
+
+
{{row.heading}} + {{row.status}} {{row.issues.length}} issues +
-
+
-
{{oneObject.description}}
-
Reduces your score by {{oneObject.score}}
+
{{row.description}}
+
Reduces your score by {{row.score}}
- + + - - + + @@ -135,28 +154,79 @@
MESSAGELOCATIONMESSAGELOCATION
{{each.message}}
+ VIEW + DETAILS +
+
+
+
+ +
+ Congratulations! This API has no issues +
+ +
+
+ + + Back + + +
+ + +
{{oneObject.heading}} + {{oneObject.status}} {{oneObject.issues.length}} + issues +
+
+
+
{{oneObject.description}}
+
Reduces your score by {{oneObject.score}}
+
+ + + + + + + + + + + + + +
MESSAGELOCATION
+ {{each.message}} + + {{each.location}} +
+
+
-
-
-
+
+
+
- +
-
-
- -
-
Oops!

-
Something went wrong while fetching your data
REFRESH to give it another try.
-
If the problem persists, contact us.
+
+
+ +
+
Oops!

+
Something went wrong while fetching your data
REFRESH to give it another try.
+
+
If the problem persists, contact us.
- - diff --git a/app/src/app/pages/clear-water/clear-water.component.scss b/app/src/app/pages/clear-water/clear-water.component.scss index a7e2350dcb..7711fd37eb 100644 --- a/app/src/app/pages/clear-water/clear-water.component.scss +++ b/app/src/app/pages/clear-water/clear-water.component.scss @@ -204,18 +204,23 @@ margin-bottom: 1rem; color: #666666; font-weight: bold; text-align: center; - margin-bottom: 1rem; + margin-bottom: 1.5rem; } .score-val{ background: #EB9508; border-radius: 50%; - padding: 1rem; - width: 4rem; - height: 4rem; + width: 5rem; + height: 5rem; margin: auto; color: white; - font-size: 1.5rem; + font-size: 2.5rem; + display:flex; + justify-content: center; + align-items: center; + div{ + align-self: center; + } } .loadingpage{ @@ -272,9 +277,12 @@ search-box{ position: fixed; transform: translateX(100%); transition: 0.6s transform ease-in-out ; - + right: 0; top:0; + overflow-y: scroll !important; + height: 100vh; + overflow-x: hidden; } .slide-in{ transform: translateX(0%); @@ -299,4 +307,242 @@ search-box{ margin-left:2rem; } -} \ No newline at end of file +} + + +// ################################## + +.current-meter-bar{ + .status-result{ + top:-1.5px; + position: absolute; + z-index: 2; + border-radius: 50%; + width: 1.5rem; + height: 1.5rem; + background-color: #d8d8d8; + box-shadow: 0 2px 4px 0 rgba(143, 143, 143, 0.5); + border: 2px solid #fff; + // left:0; + &:nth-child(2){ + left: calc(0% - 0.75rem); + } + // &:nth-child(3){ + // left: calc(25% - 1rem); + // .status-lable{ + // right:-1.5rem; + // } + // } + // &:nth-child(4){ + // left: calc(50% - 1rem); + // .status-lable{ + // right:-4rem; + // } + // } + // &:nth-child(5){ + // left: calc(75% - 1rem); + // .status-lable{ + // right:-2rem; + // } + // } + &:nth-child(3){ + left: calc(100% - 1rem); + .status-lable{ + right:0rem; + } + } + } + .status-result-delete{ + top:-1.5px; + position: absolute; + z-index: 2; + border-radius: 50%; + width: 1.5rem; + height: 1.5rem; + background-color: #d8d8d8; + box-shadow: 0 2px 4px 0 rgba(143, 143, 143, 0.5); + border: 2px solid #fff; + // left:0; + // &:nth-child(2){ + // left: calc(0% - 0.75rem); + // } + // &:nth-child(3){ + // left: calc(33% - 1rem); + // .status-lable{ + // right: -3rem; + // } + // } + // &:nth-child(4){ + // left: calc(66% - 1rem); + // .status-lable{ + // right: -3rem; + // } + // } + &:nth-child(2){ + left: calc(100% - 1rem); + .status-lable{ + right:0rem; + } + } + } + .status-lable{ + position: absolute; + top: 2rem; + font-size: 12px; + white-space: nowrap; + } + .status-icon{ + display: inline-block; + width: 100%; + text-align: center; + font-size: 10px; + } + .icon-icon-confirmcheck:before{ + color: #fff; + font-size: 0.5rem; + position: relative; + bottom: 0.35rem; + } + .icon-icon-close:before { + color: #fff; + font-size: 0.5rem; + position: relative; + bottom: 0.35rem; + } +} +.under-progress{ + color: #999; +} +.under-progress-bar{ + background-color: #26D5C2 !important; + box-shadow: 0px 0px 3px 1px #26D5C2!important; + .status-lable{ + color: #26D5C2; + } +} +.completed{ + color:#5cae01; +} +.completed-bar{ + background-color: #5cae01 !important; + box-shadow: 0px 0px 3px 1px #5cae01!important; + .status-lable{ + color:#5cae01; + } +} +.deletion-bar{ + background-color: red !important; + box-shadow: 0px 0px 3px 1px red!important; + width: 100%!important; + // background-image: -webkit-gradient( linear, left bottom, left top, color-stop(0, rgb(88,99,34)), color-stop(1, rgb(79,98,43)) ); + .status-lable{ + color:red!important; + } +} +.current-status-wrap{ + z-index: 101!important; + margin-bottom: 2rem; + padding:2rem 3rem; + background-color: #fff; + text-align: center; + position: relative; + border-radius: 3px; + box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.11); + .current-meter-bar{ + height: 16px; + position: relative; + margin: 1rem 0 1rem 0; + background: #d8d8d8; + -webkit-box-shadow: inset 0 -1px 1px rgba(255,255,255,0.3); + -moz-box-shadow: inset 0 -1px 1px rgba(255,255,255,0.3); + box-shadow: inset 0 -1px 1px rgba(255,255,255,0.3); + span{ + display: block; + height: inherit; + background-color: #5cae01; + background-image: -webkit-gradient( linear, left bottom, left top, color-stop(0, rgb(88,99,34)), color-stop(1, rgb(79,98,43)) ); + background-image: -moz-linear-gradient( center bottom, rgb(88,99,34) 37%, rgb(79,98,43) 69% ); + -webkit-box-shadow: inset 0 2px 9px rgba(255,255,255,0.3), inset 0 -2px 6px rgba(0,0,0,0.4); + -moz-box-shadow: inset 0 2px 9px rgba(255,255,255,0.3), inset 0 -2px 6px rgba(0,0,0,0.4); + box-shadow: inset 0 2px 9px rgba(255,255,255,0.3), inset 0 -2px 6px rgba(0,0,0,0.4); + position: relative; + overflow: hidden; + width:0%; + } + span:after{ + content: ""; + position: absolute; + top: 0; + left: 0; + bottom: 0; + right: 0; + background-image: -moz-linear-gradient( -45deg, rgba(255, 255, 255, .2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .2) 50%, rgba(255, 255, 255, .2) 75%, transparent 75%, transparent ); + z-index: 1; + -webkit-background-size: 4px 4px; + -moz-background-size: 4px 4px; + -webkit-animation: move 3s linear infinite; + -moz-animation: move 3s linear infinite; + border-radius: 8px; + overflow: hidden; + background-size: 35px 35px; + background-image: repeating-linear-gradient(135deg, rgba(255,255,255,0.2) 0px, rgba(255,255,255,0.35) 1px, transparent 0, transparent 5px); + } + } +} +@keyframes move { + 0% { + background-position: 0 0; + } + 100% { + background-position: 50px 50px; + } +} +.progress-bar-section{ + .closeicon{ + position: absolute; + top: 8px; + right: 8px; + color: #999; + cursor: pointer; + font-size: 1rem; + cursor: pointer; + &:hover{ + color:#333; + transform: rotate(90deg); + transition: 0.1s transform; + } + } +} + +.graph-cover { + background-color: white; + margin: 1rem; + position: relative; + width: 65%; + box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.11); + border-radius: 3px; + + @media(max-width: $screen-sm) { + width: 100%; + } +} + +.jz-chart-content { + position: relative; +} + +.graph-title { + padding: 1.6rem 0; +} +.jz-chart{ +min-height: 22rem; +padding:0rem 0.5rem 2.5rem 0.5rem; +} + +.graph-section-cover{ + /deep/.chartjs-render-monitor{ + height: 25rem !important; + } +} + + diff --git a/app/src/app/pages/clear-water/clear-water.component.ts b/app/src/app/pages/clear-water/clear-water.component.ts index 7644cccbef..c28c57a2d0 100644 --- a/app/src/app/pages/clear-water/clear-water.component.ts +++ b/app/src/app/pages/clear-water/clear-water.component.ts @@ -1,7 +1,13 @@ -import { Component, OnInit ,Input,Output,EventEmitter} from '@angular/core'; +import { Component, OnInit ,Input,Output,EventEmitter, ViewChild} from '@angular/core'; import { RequestService ,MessageService} from "../../core/services"; import { Router, ActivatedRoute } from '@angular/router'; - +import { Observable } from 'rxjs/Rx'; +import { Subscription } from 'rxjs/Subscription'; +import * as _ from "lodash"; +import * as moment from 'moment'; +import { environment } from './../../../environments/environment'; +import { DataService } from '../data-service/data.service'; +import { SwaggerSidebarComponent } from './../../secondary-components/swagger-sidebar/swagger-sidebar.component'; @Component({ selector: 'clear-water', @@ -10,40 +16,121 @@ import { Router, ActivatedRoute } from '@angular/router'; }) export class ClearWaterComponent implements OnInit { -@Output() open_sidebar:EventEmitter = new EventEmitter(); -@Input() service: any = {}; -env:string; -swagger_json; -error:boolean=true; -cw_score:any = {}; -cw_message:any = ''; -cw_keysList; -cw_results; -oneObject:any; -isloaded:boolean = false; -expandText: string = 'Expand all'; -tableHeader = []; -errMessage; -search_text:string; -loadingState:string='default'; -paginationSelected: Boolean = false; -warningSelected:boolean; -search_bar:string; -searchDetail_bar:string; -detailView:boolean = true; -slideSidebar:boolean = false; -cw_obj:any={}; -private subscription:any; -private http:any; -obj:any = {}; -congratulations:boolean = false; -close: boolean = false; -closed: boolean = false; + @Output() open_sidebar: EventEmitter = new EventEmitter(); + @Input() service: any = {}; + @ViewChild('swaggerSidebar') swaggerSidebar : SwaggerSidebarComponent; + env: string; + swagger_json; + error: boolean = true; + cw_score: any = {}; + cw_message: any = ''; + cw_keysList; + cw_results; + oneObject: any; + isloaded: boolean = false; + expandText: string = 'Expand all'; + evaluatePublish:string = 'EVALUATE'; + tableHeader = []; + errMessage; + search_text: string; + loadingState: string = 'default'; + paginationSelected: Boolean = false; + warningSelected: boolean; + search_bar: string; + reqJson:any; + searchDetail_bar: string; + detailView: boolean = true; + slideSidebar: boolean = false; + cw_obj: any = {}; + private subscription: any; + private http: any; + obj: any = {}; + congratulations: boolean = false; + close: boolean = false; + closed: boolean = false; + hidden:boolean = true; + options: any = { + "fromDateISO": "2018-09-19T11:26:32.065Z", + "fromDateValue": 1537356392065, + "stepSize": 900000, + "toDateISO": "2018-09-20T11:26:34.543Z", + "toDateValue": 1537442794543, + "tooltipXFormat": "MMM DD YYYY, h:mm a", + "xAxisFormat": "h:mm a", + "yMax": 100, + "yMin": 0, + } + public graphData; + historicalChangeTrendURI: string; + isSlidebarLoading:boolean = false; + isGraphloaded:boolean = false; + graphError:boolean = false; + +datasets; + +graphPointsata = [{ + + "Timestamp": "2018-06-22T17:03:18.239Z", + "Sum": 0, +}, +{ + "Timestamp": "2018-06-22T17:18:37.707Z", + "Sum": 67, +}, +{ + "Timestamp": "2018-06-27T15:15:23.985Z", + "Sum": 62, +}, +{ + "Timestamp": "2018-06-28T21:07:05.160Z", + "Sum": 62, +}, +{ + "Timestamp": "2018-07-02T16:14:47.094Z", + "Sum": 48, +}, +{ + "Timestamp": "2018-07-05T14:53:43.135Z", + "Sum": 48, +}, +{ + "Timestamp": "2018-07-06T17:33:59.536Z", + "Sum": 48, +}, +{ + "Timestamp": "2018-07-17T21:36:29.604Z", + "Sum": 50, +}, +{ + "Timestamp": "2018-07-25T21:29:25.983Z", + "Sum": 50, +}, +{ + "Timestamp": "2018-07-28T19:37:29.123Z", + "Sum": 46, +}, +{ + "Timestamp": "2018-07-31T18:28:17.367Z", + "Sum": 48, +}, +{ + "Timestamp": "2018-08-02T14:43:01.762Z", + "Sum": 46, +}, +{ + "Timestamp": "2018-08-14T21:55:38.705Z", + "Sum": 50, +}, +{ + "Timestamp": "2018-08-17T18:25:08.614Z", + "Sum": 50, +}]; constructor( - private request:RequestService, + private request: RequestService, private route: ActivatedRoute, private router: Router, + private data : DataService ) { this.http = request; @@ -51,102 +138,171 @@ closed: boolean = false; -viewDetails(obj){ - this.search_bar=''; - this.searchDetail_bar=""; - var index=this.cw_results.indexOf(obj) - this.oneObject = this.cw_results[index]; - this.oneObject['heading']=this.cw_keysList[index]; -} - -expandall(){ - for(var i=0;i { + return moment(pointA.dateTimeGMT).diff(moment(pointB.dateTimeGMT)); + }) + .map((dataPoint) => { + return { + x: moment(dataPoint.dateTimeGMT).valueOf(), + y: parseInt(dataPoint[valueProperty]) + }; + }); + + let timeRange = { + format: 'h: mm a', + range: moment().subtract(1, 'day').toISOString() // setting from date as 24hrs + }; + let options = { + tooltipXFormat: 'MM DD YYYY, h:mm a', + fromDateISO: timeRange.range, + fromDateValue: moment(timeRange.range).valueOf(), + toDateISO: moment().toISOString(), + s: moment().valueOf(), + xAxisFormat: timeRange.format, + stepSize: 1000, + yMin: values.length ? + .9 * (values.map((point) => { + return point.y; + }) + .reduce((a, b) => { + return Math.min(a, b); + })) : 0, + yMax: 100 + }; + + return { + datasets: [values], + options: options + }; + } + + openSidebar() { + this.slideSidebar = true; + this.isGraphloaded = false; + setTimeout(() => { + this.isGraphloaded = true; + },600) + document.getElementsByClassName('view-container')[0].classList.add('set-width'); + + } + closeSidebar() { + this.slideSidebar = false; + this.isGraphloaded = false; + setTimeout(() => { + this.isGraphloaded = true; + },600) + let item = document.getElementsByClassName('view-container')[0]; + if (item) { item.classList.remove('set-width'); + } + + } + callapi(event) { + this.isloaded = false; + // this.getData(event); + this.getGraphData(event, 'sidebar'); + } + onCWDetailsearch(data) { + this.searchDetail_bar = data.searchString; } -} -callapi(event){ - this.isloaded=false; - this.getData(event); -} -onCWDetailsearch(data){ - this.searchDetail_bar = data.searchString; -} + onCWsearch(data) { + this.search_bar = data.searchString; + } -onCWsearch(data){ - this.search_bar = data.searchString; -} + onRequestId(requestID){ + this.servicePublishStatus(requestID); + } -getData(payload?){ - var body; - if(!payload){ - var swaggerAsset = this.service.assets.find((asset) => { - return asset.type === 'swagger_url'; - }); + + getSwaggerUrl(serviceAssets) { + const swaggerAsset = serviceAssets.find((asset) => { + return asset.type === 'swagger_url'; + }); + if (swaggerAsset) { this.http.get(swaggerAsset.provider_id).subscribe( (response) => { - this.swagger_json=response; + this.swagger_json = response; + this.getGraphData(this.swagger_json); }, - (error) =>{ - console.log('error',error) - + (error) => { + console.log('error', error); + this.isloaded = true; + this.error = true; + } ); - - body = { - "url": swaggerAsset && swaggerAsset.provider_id + } + } + + getGraphData(swagger_json , sidebar?) { + let swaggerLintPayload; + if(sidebar === "sidebar"){ + swaggerLintPayload = { + 'swaggerDoc': swagger_json, }; } else{ - body = payload; + swaggerLintPayload ={ + 'swaggerDoc': swagger_json, + 'ntid': 'jazz', + 'swaggerId': `${this.service.domain}_${this.service.name}_${this.env}` + }; } - this.subscription = this.http.post('/jazz/apilinter',body).subscribe( - (response) => { - this.obj=response; - if(this.obj.results.errors == 0 && this.obj.results.warnings == 0){ - this.congratulations=true; + + this.subscription = this.http.post(environment.urls.swaggerApiUrl, swaggerLintPayload) + .subscribe( + (response) => { + this.obj = response; + if (this.obj.results.errors == 0 && this.obj.results.warnings == 0) { + this.congratulations = true; } this.cw_obj = response.results; - this.cw_score=response.results.score; - this.cw_message=response.results.message; + this.cw_score = response.results.score; + this.cw_message = response.results.message; var arr = response.results.details; - this.isloaded=true; + this.isloaded = true; this.error = false; this.cw_keysList = Object.keys(arr).map(key => { return key; @@ -154,30 +310,176 @@ getData(payload?){ this.cw_results = Object.keys(arr).map(key => { return arr[key]; }); - for(var i=0;i { + this.graphData = this.formatGraphData(response.changeHistory); + setTimeout(() => { + this.isGraphloaded = true; + },1000) + + }, + (error) => { + console.log('error', error) + this.graphError = true; + }); + } + else{ + this.swaggerSidebar.enableButton(true); + } }, (error) => { - this.isloaded=true; + this.isloaded = true; this.error = true; - }); - + }); } - - refresh(){ - this.isloaded=false; - this.getData(); + refresh() { + this.isloaded = false; + this.getSwaggerUrl(this.service.assets); } ngOnInit() { - this.env=this.route.snapshot.params['env']; - this.getData(); + + this.env = this.route.snapshot.params['env']; + this.getSwaggerUrl(this.service.assets); + if(this.env == 'prod'){ + this.evaluatePublish = 'EVALUATE / PUBLISH'; + try{ + this.reqJson = JSON.parse(localStorage.getItem('cw_request_id'+"_"+this.service.name+"_"+this.service.domain)); + if(this.reqJson){ + this.servicePublishStatus(this.reqJson.request_id); + } + } + catch(e){ + console.log(e) + } + } } - ngOnDestroy(){ + + ngOnDestroy() { this.closeSidebar(); + this.hidden=true; + this.env=this.route.snapshot.params['env']; } + + + + progressCompleted: boolean = true; + creating: boolean = true; + statusprogress: number = 5; + animatingDots: any; + deleting: boolean = false; + private intervalSubscription: Subscription; + service_request_id: any; + statusCompleted: boolean = true; + serviceStatusCompleted: boolean = false; + serviceStatusCompletedD: boolean = false; + serviceStatusPermissionD: boolean = false; + serviceStatusRepoD: boolean = false; + serviceStatusValidateD: boolean = false; + serviceStatusStarted: boolean = true; + serviceStatusStartedD: boolean = false; + statusFailed: boolean = false; + statusInfo: string = 'Starting'; + service_error: boolean = true; + + servicePublishStatus(message) { + this.statusCompleted = false; + this.statusInfo = "Starting"; + this.serviceStatusCompleted = false; + this.statusCompleted = false; + this.progressCompleted = false; + this.service_error = true; + this.statusFailed = false; + if(message || message===null){ + this.statusprogress = 5; + this.hidden = false; + this.intervalSubscription = Observable.interval(3000) + .switchMap((response) => this.http.get('/jazz/request-status?id='+message)) + .subscribe( + response => { + let dataResponse = {}; + dataResponse.list = response; + var respStatus = dataResponse.list.data; + let currentStatus = respStatus.events[respStatus.events.length - 1].name; + if (respStatus.status.toLowerCase() === 'completed' && currentStatus === 'CLEARWATER_SEND_NOTIFICATION') { + this.serviceStatusCompleted = true; + this.serviceStatusPermissionD = true; + this.serviceStatusRepoD = true; + this.serviceStatusValidateD = true; + this.statusInfo = 'Wrapping things up'; + this.statusprogress = 100; + this.hidden = true; + this.intervalSubscription.unsubscribe(); + this.statusInfo = "Completed"; + localStorage.removeItem('cw_request_id_' + this.service.name + '_' + this.service.domain); + setTimeout(() => { + this.service_error = false; + this.statusCompleted = true; + this.swaggerSidebar.enableButton(true); + }, 5000); + } else if (respStatus.status.toLowerCase() === 'failed') { + this.statusFailed = true; + this.service_error = true; + this.serviceStatusStarted = false; + this.serviceStatusStartedD = true; + this.serviceStatusCompletedD = true; + this.serviceStatusPermissionD = true; + this.serviceStatusRepoD = true; + this.serviceStatusValidateD = true; + this.statusInfo = 'Creation failed'; + localStorage.removeItem('cw_request_id_' + this.service.name + '_' + this.service.domain); + setTimeout(() => { + this.statusCompleted = true; + }, 5000); + + } else { + this.statusCompleted = false; + + if (currentStatus === 'CLEARWATER_SEND_NOTIFICATION') { + // this.serviceStatusCompleted = true; + this.statusInfo = 'Sending Notification'; + this.statusprogress = 93; + localStorage.removeItem('cw_request_id_' + this.service.name + '_' + this.service.domain); + } else if (currentStatus === 'CLEARWATER_RAISE_PR') { + this.serviceStatusPermissionD = true; + this.statusInfo = 'Raising PR'; + this.statusprogress = 85; + } else if (currentStatus === 'CLEARWATER_FORK_REPO') { + this.serviceStatusRepoD = true; + this.statusInfo = 'Forking Repository'; + this.statusprogress = 60; + } else if (currentStatus === 'CLEARWATER_GET_ARTIFACTS') { + this.serviceStatusValidateD = true; + this.statusInfo = 'Getting Artifacts'; + this.statusprogress = 35; + } else if (currentStatus === 'CLEARWATER_INITIALIZATION') { + this.serviceStatusStartedD = true; + this.statusInfo = 'Initializing Clear Water'; + this.statusprogress = 20; + }else if (currentStatus === 'CALL_CLEARWATER_PUBLISH_WORKFLOW') { + this.serviceStatusStartedD = true; + this.statusInfo = 'Publishing Service'; + this.statusprogress = 10; + } + } + document.getElementById('current-status-val').setAttribute("style", "width:" + this.statusprogress + '%'); + }, + error => { + + this.service_error = false; + this.servicePublishStatus(undefined); + } + ) + } +} + + + } diff --git a/app/src/app/pages/environment-codequality/env-codequality-section.component.ts b/app/src/app/pages/environment-codequality/env-codequality-section.component.ts index d353fd8dfe..0e5de88afa 100644 --- a/app/src/app/pages/environment-codequality/env-codequality-section.component.ts +++ b/app/src/app/pages/environment-codequality/env-codequality-section.component.ts @@ -98,6 +98,7 @@ export class EnvCodequalitySectionComponent implements OnInit { selectMetric(index) { this.metricsIndex = index; this.selectedMetric = this.graphDataRaw.metrics[index]; + // debugger this.selectedMetricGraphData = this.formatGraphData(this.selectedMetric, this.filterData); } diff --git a/app/src/app/pages/environment-detail/environment-detail.component.scss b/app/src/app/pages/environment-detail/environment-detail.component.scss index 21fa073381..4efadcdf7d 100644 --- a/app/src/app/pages/environment-detail/environment-detail.component.scss +++ b/app/src/app/pages/environment-detail/environment-detail.component.scss @@ -161,7 +161,7 @@ .refresh-button { position: absolute; cursor: pointer; - top: .8rem; + top: 2rem; right: 12px; font-size: 1rem; text-transform: uppercase; @@ -184,5 +184,5 @@ /deep/.sidebar-wrp .sidebar-inr{ overflow-y:auto !important; } - -} \ No newline at end of file + +} diff --git a/app/src/app/pages/environment-detail/environment-detail.component.ts b/app/src/app/pages/environment-detail/environment-detail.component.ts index 205337181a..8ce0e77d6e 100644 --- a/app/src/app/pages/environment-detail/environment-detail.component.ts +++ b/app/src/app/pages/environment-detail/environment-detail.component.ts @@ -35,7 +35,7 @@ export class EnvironmentDetailComponent implements OnInit { status_inactive: boolean = false; swagger_error: boolean = false; - tabData = ['overview', 'deployments', 'code quality', 'assets', 'logs', 'clear water']; + tabData = ['overview', 'deployments', 'code quality', 'assets', 'logs', 'clearwater']; envSelected: string = ''; endpoint_env: string = ''; environment = { @@ -108,15 +108,17 @@ export class EnvironmentDetailComponent implements OnInit { if (service === undefined) { return {}; } else { - return { + let _service = { id: service.id, name: service.service, serviceType: service.type, runtime: service.runtime, status: service.status, domain: service.domain, - repository: service.repository + repository: service.repository, + created_by: service.created_by } + return _service; } }; @@ -173,7 +175,7 @@ export class EnvironmentDetailComponent implements OnInit { setTabs() { if (this.service.serviceType === 'api' || this.service.type === 'api') { - this.tabData = ['overview', 'deployments', 'assets', 'metrics', 'code quality', 'logs', 'clear water']; + this.tabData = ['overview', 'deployments', 'assets', 'metrics', 'code quality', 'logs', 'clearwater']; } else if (this.service.serviceType === 'function' || this.service.type === 'function') { this.tabData = ['overview', 'deployments', 'assets', 'metrics', 'code quality', 'logs']; } else if (this.service.serviceType === 'website' || this.service.type === 'website') { diff --git a/app/src/app/pages/service-overview/internal/service-overview.component.html b/app/src/app/pages/service-overview/internal/service-overview.component.html index d205802dfe..328cc0251a 100644 --- a/app/src/app/pages/service-overview/internal/service-overview.component.html +++ b/app/src/app/pages/service-overview/internal/service-overview.component.html @@ -174,7 +174,7 @@