From eb7ebd07452547ae0369b928c9b5df1a84d9a781 Mon Sep 17 00:00:00 2001 From: AndiMajore <andi.majore@googlemail.com> Date: Thu, 25 Aug 2022 04:02:56 +0200 Subject: [PATCH] made eventlistener for tasks also expose quick analysis and connect all tasks --- .../quick-drug-target.component.html | 4 ++-- .../quick-drug-target.component.ts | 16 ++++++++++++---- .../quick-drug/quick-drug.component.html | 4 ++-- .../quick-drug/quick-drug.component.ts | 9 ++++++++- .../explorer-page/explorer-page.component.html | 4 ++-- src/app/services/analysis/analysis.service.ts | 1 + src/index.html | 2 +- src/index_static.html | 2 +- 8 files changed, 29 insertions(+), 13 deletions(-) diff --git a/src/app/components/quick-drug-target/quick-drug-target.component.html b/src/app/components/quick-drug-target/quick-drug-target.component.html index f42186f0..d5ccda51 100644 --- a/src/app/components/quick-drug-target/quick-drug-target.component.html +++ b/src/app/components/quick-drug-target/quick-drug-target.component.html @@ -32,7 +32,7 @@ <div class="control"> <div style="display: flex; justify-content: center"> <button - (click)="analysis.startQuickAnalysis(true, 'connect')" + (click)="runQuickAnalysis(true, 'connect')" [disabled]="analysis.isLaunchingQuick()" [ngClass]="{ 'text-small': drugstoneConfig.smallStyle @@ -64,7 +64,7 @@ </div> <div style="display: flex; justify-content: center"> <button - (click)="analysis.startQuickAnalysis(false, 'connectSelected')" + (click)="runQuickAnalysis(false, 'connectSelected')" [disabled]=" analysis.getCount() === 0 || analysis.isLaunchingQuick() " diff --git a/src/app/components/quick-drug-target/quick-drug-target.component.ts b/src/app/components/quick-drug-target/quick-drug-target.component.ts index a0f65ce2..82186a91 100644 --- a/src/app/components/quick-drug-target/quick-drug-target.component.ts +++ b/src/app/components/quick-drug-target/quick-drug-target.component.ts @@ -1,6 +1,6 @@ -import { Component, OnInit } from '@angular/core'; -import { AnalysisService } from 'src/app/services/analysis/analysis.service'; -import { DrugstoneConfigService } from 'src/app/services/drugstone-config/drugstone-config.service'; +import {Component, EventEmitter, OnInit, Output} from '@angular/core'; +import {AnalysisService} from 'src/app/services/analysis/analysis.service'; +import {DrugstoneConfigService} from 'src/app/services/drugstone-config/drugstone-config.service'; @Component({ selector: 'app-quick-drug-target', @@ -8,14 +8,22 @@ import { DrugstoneConfigService } from 'src/app/services/drugstone-config/drugst styleUrls: ['./quick-drug-target.component.scss'] }) export class QuickDrugTargetComponent implements OnInit { + @Output() + public taskEvent = new EventEmitter<object>(); constructor( public drugstoneConfig: DrugstoneConfigService, - public analysis: AnalysisService) { } + public analysis: AnalysisService) { + } public collapseQuickConnect = false; ngOnInit(): void { } + public async runQuickAnalysis(isSuper, algorithm) { + const object = await this.analysis.startQuickAnalysis(isSuper, algorithm); + this.taskEvent.emit(object); + } + } diff --git a/src/app/components/quick-drug/quick-drug.component.html b/src/app/components/quick-drug/quick-drug.component.html index 356077c0..29224841 100644 --- a/src/app/components/quick-drug/quick-drug.component.html +++ b/src/app/components/quick-drug/quick-drug.component.html @@ -32,7 +32,7 @@ <div class="control"> <div style="display: flex; justify-content: center"> <button - (click)="analysis.startQuickAnalysis(true, 'super')" + (click)="runQuickAnalysis(true, 'super')" [disabled]="analysis.isLaunchingQuick()" [ngClass]="{ 'text-small': drugstoneConfig.smallStyle @@ -68,7 +68,7 @@ <div style="display: flex; justify-content: center"> <button - (click)="analysis.startQuickAnalysis(false, 'quick')" + (click)="runQuickAnalysis(false, 'quick')" [disabled]=" analysis.getCount() === 0 || analysis.isLaunchingQuick() " diff --git a/src/app/components/quick-drug/quick-drug.component.ts b/src/app/components/quick-drug/quick-drug.component.ts index 185e0e21..f3eda0b7 100644 --- a/src/app/components/quick-drug/quick-drug.component.ts +++ b/src/app/components/quick-drug/quick-drug.component.ts @@ -1,4 +1,4 @@ -import { Component, OnInit } from '@angular/core'; +import {Component, EventEmitter, OnInit, Output} from '@angular/core'; import { AnalysisService } from 'src/app/services/analysis/analysis.service'; import { DrugstoneConfigService } from 'src/app/services/drugstone-config/drugstone-config.service'; @@ -8,6 +8,8 @@ import { DrugstoneConfigService } from 'src/app/services/drugstone-config/drugst styleUrls: ['./quick-drug.component.scss'] }) export class QuickDrugComponent implements OnInit { + @Output() + public taskEvent = new EventEmitter<object>(); constructor( public drugstoneConfig: DrugstoneConfigService, @@ -17,4 +19,9 @@ export class QuickDrugComponent implements OnInit { ngOnInit(): void { } + + public async runQuickAnalysis(isSuper, algorithm) { + const object = await this.analysis.startQuickAnalysis(isSuper, algorithm); + this.taskEvent.emit(object); + } } diff --git a/src/app/pages/explorer-page/explorer-page.component.html b/src/app/pages/explorer-page/explorer-page.component.html index 87d08bad..16ad5120 100644 --- a/src/app/pages/explorer-page/explorer-page.component.html +++ b/src/app/pages/explorer-page/explorer-page.component.html @@ -190,9 +190,9 @@ </div> </div> - <app-quick-drug-target *ngIf="drugstoneConfig.config.showConnectGenes"></app-quick-drug-target> + <app-quick-drug-target *ngIf="drugstoneConfig.config.showConnectGenes" (taskEvent)="emitTaskEvent($event)"></app-quick-drug-target> - <app-quick-drug *ngIf="drugstoneConfig.config.showSimpleAnalysis"></app-quick-drug> + <app-quick-drug *ngIf="drugstoneConfig.config.showSimpleAnalysis" (taskEvent)="emitTaskEvent($event)"></app-quick-drug> <div *ngIf="drugstoneConfig.config.showAdvAnalysis" diff --git a/src/app/services/analysis/analysis.service.ts b/src/app/services/analysis/analysis.service.ts index 6dc4122a..0b7e0315 100644 --- a/src/app/services/analysis/analysis.service.ts +++ b/src/app/services/analysis/analysis.service.ts @@ -274,6 +274,7 @@ export class AnalysisService { position: 'top-center', animate: {in: 'fadeIn', out: 'fadeOut'} }); + return { taskId: resp.token, algorithm: algorithm, target: target, params: parameters } } async startAnalysis(algorithm, target: 'drug' | 'drug-target', parameters) { diff --git a/src/index.html b/src/index.html index 698f3752..7569b4e2 100644 --- a/src/index.html +++ b/src/index.html @@ -146,7 +146,7 @@ } function initTaskEventListener(){ - document.getElementsByTagName("network-expander")[0].addEventListener("taskEvent",(event)=>{console.log(event.detail)}) + document.getElementsByTagName("drugst-one")[0].addEventListener("taskEvent",(event)=>{console.log(event.detail)}) } diff --git a/src/index_static.html b/src/index_static.html index 414593ae..0288fe37 100644 --- a/src/index_static.html +++ b/src/index_static.html @@ -143,7 +143,7 @@ } function initTaskEventListener(){ - document.getElementsByTagName("network-expander")[0].addEventListener("taskEvent",(event)=>{console.log(event.detail)}) + document.getElementsByTagName("drugst-one")[0].addEventListener("taskEvent",(event)=>{console.log(event.detail)}) } function applyDataset(){ -- GitLab