Skip to content

Commit b71e37e

Browse files
authored
Merge pull request #125 from 0x41head/angular-ui
Added YAML download button with CSS
2 parents e9d2854 + d54db2d commit b71e37e

3 files changed

Lines changed: 32 additions & 20 deletions

File tree

src/app/component/circular-heatmap/circular-heatmap.component.css

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,9 @@
1717
padding: 20px;
1818
}
1919
.buttonClass{
20-
float: right;
21-
margin: 5%;
20+
position: absolute;
21+
padding: 10px;
22+
bottom: 12%;
23+
right: 5%;
2224
}
25+

src/app/component/circular-heatmap/circular-heatmap.component.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
<div id="chart" class="heatmapClass">
77
<mat-card class="example-card" *ngIf="showTaskCard">
88
<mat-card-title-group>
9-
<mat-card-title>{{taskHeader}}</mat-card-title>
10-
<mat-card-subtitle>{{taskSubheader}}</mat-card-subtitle>
9+
<mat-card-title>{{cardHeader}}</mat-card-title>
10+
<mat-card-subtitle>{{cardSubheader}}</mat-card-subtitle>
1111
</mat-card-title-group>
1212
<mat-card-content *ngFor="let task of tasksData;index as i">
1313
<div *ngIf="task.ifTaskDone; then trueBlock else falseBlock"></div>
@@ -25,7 +25,7 @@
2525
</p>
2626
</mat-card-content>
2727
</mat-card>
28-
<button class="buttonClass" (click)="SaveDemo()">Save As</button>
28+
<button mat-raised-button class="buttonClass" (click)="SaveEditedYAMLfile()">Download edited YAML file</button>
2929
</div>
3030
</div>
3131
<div class="col-md-3">

src/app/component/circular-heatmap/circular-heatmap.component.ts

Lines changed: 24 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@ export interface cardSchema{
2323
export class CircularHeatmapComponent implements OnInit {
2424
maxLevelOfTasks:number=-1
2525
showTaskCard:boolean=false
26-
taskHeader:string=''
27-
taskSubheader:string=''
26+
cardHeader:string=''
27+
cardSubheader:string=''
2828
tasksData:any[]=[]
2929
ALL_CARD_DATA:cardSchema[] =[];
3030
radial_labels:string[]= [];
@@ -58,30 +58,30 @@ export class CircularHeatmapComponent implements OnInit {
5858
}
5959
for(var l=0 ; l<this.maxLevelOfTasks; l++){
6060
for(var x in this.YamlObject['dimension']){
61-
var tempdata:cardSchema={
61+
var tempData:cardSchema={
6262
"Name": "",
6363
"Level": "",
6464
"Done%":-1,
6565
"Task":[]
6666
}
6767
var totalImplemented:number=0
6868
try{
69-
tempdata["Name"]=this.YamlObject['dimension'][x]['subdimension']['name']
70-
tempdata["Level"]="Level "+(l+1)
69+
tempData["Name"]=this.YamlObject['dimension'][x]['subdimension']['name']
70+
tempData["Level"]="Level "+(l+1)
7171
for(var i=0;i<this.YamlObject['dimension'][x]['subdimension']['level-'+(l+1)].length;i++){
72-
var nameOfTask=this.YamlObject['dimension'][x]['subdimension']['level-'+(l+1)][i]['name']
72+
var nameOfTask:string=this.YamlObject['dimension'][x]['subdimension']['level-'+(l+1)][i]['name']
7373
var Status:boolean=this.YamlObject['dimension'][x]['subdimension']['level-'+(l+1)][i]['isImplemented']
7474
if(Status){
7575
totalImplemented+=1
7676
}
77-
tempdata["Task"].push({"taskName":nameOfTask,"ifTaskDone":Status})
77+
tempData["Task"].push({"taskName":nameOfTask,"ifTaskDone":Status})
7878
}
79-
tempdata["Done%"]=totalImplemented/this.YamlObject['dimension'][x]['subdimension']['level-'+(l+1)].length
79+
tempData["Done%"]=totalImplemented/this.YamlObject['dimension'][x]['subdimension']['level-'+(l+1)].length
8080
}
8181
catch{
82-
tempdata["Done%"]=-1
82+
tempData["Done%"]=-1
8383
}
84-
this.ALL_CARD_DATA.push(tempdata)
84+
this.ALL_CARD_DATA.push(tempData)
8585
}
8686
}
8787
console.log(this.ALL_CARD_DATA)
@@ -96,7 +96,7 @@ export class CircularHeatmapComponent implements OnInit {
9696
var index=0;
9797
var cnt=0;
9898
for(var i=0;i<this.ALL_CARD_DATA.length;i++){
99-
if(this.ALL_CARD_DATA[i]["Name"]===this.taskHeader&&this.ALL_CARD_DATA[i]["Level"]===this.taskSubheader){
99+
if(this.ALL_CARD_DATA[i]["Name"]===this.cardHeader&&this.ALL_CARD_DATA[i]["Level"]===this.cardSubheader){
100100
index=i
101101
break;
102102
}
@@ -114,6 +114,14 @@ export class CircularHeatmapComponent implements OnInit {
114114
cnt+=1
115115
}
116116
}
117+
for(var i=0; i<this.YamlObject['dimension'].length;i++){
118+
if(this.YamlObject['dimension'][i]['subdimension']['name']===this.cardHeader){
119+
var lvlString=this.cardSubheader.toLowerCase().replace(" ","-")
120+
this.YamlObject['dimension'][i]['subdimension'][lvlString][taskIndex]["isImplemented"]=this.ALL_CARD_DATA[index]["Task"][i]["ifTaskDone"]
121+
break
122+
}
123+
124+
}
117125
this.ALL_CARD_DATA[index]['Done%']=cnt/this.ALL_CARD_DATA[index]["Task"].length
118126
//console.log(this.data[index]['Done%'],cnt)
119127
var color = d3.scaleLinear<string,string>().domain([0,1]).range(["white", "green"]);
@@ -125,12 +133,13 @@ export class CircularHeatmapComponent implements OnInit {
125133

126134
}
127135

128-
SaveDemo() {
136+
SaveEditedYAMLfile() {
137+
console.log(this.YamlObject)
129138
let yamlStr = yaml.dump(this.YamlObject);
130139
let file = new Blob([yamlStr], { type: 'text/csv;charset=utf-8' });
131140
var link = document.createElement('a');
132141
link.href = window.URL.createObjectURL(file);
133-
link.download = './hlll.txt'
142+
link.download = 'generated.yaml'
134143
link.click();
135144
link.remove();
136145
}
@@ -188,9 +197,9 @@ export class CircularHeatmapComponent implements OnInit {
188197

189198
svg.selectAll("path")
190199
.on('click', function(d) {
191-
_self.taskSubheader=d.explicitOriginalTarget.__data__.Level
200+
_self.cardSubheader=d.explicitOriginalTarget.__data__.Level
192201
_self.tasksData=d.explicitOriginalTarget.__data__.Task;
193-
_self.taskHeader=d.explicitOriginalTarget.__data__.Name
202+
_self.cardHeader=d.explicitOriginalTarget.__data__.Name
194203
_self.showTaskCard=true
195204
console.log(_self.tasksData)
196205
})

0 commit comments

Comments
 (0)