diff --git a/src/webcomponents/clinical/clinical-analysis-grid.js b/src/webcomponents/clinical/clinical-analysis-grid.js
index a996ee611..7b57558de 100644
--- a/src/webcomponents/clinical/clinical-analysis-grid.js
+++ b/src/webcomponents/clinical/clinical-analysis-grid.js
@@ -19,10 +19,11 @@ import OpencgaCatalogUtils from "../../core/clients/opencga/opencga-catalog-util
import UtilsNew from "../../core/utils-new.js";
import GridCommons from "../commons/grid-commons.js";
import CatalogGridFormatter from "../commons/catalog-grid-formatter.js";
-import "../commons/opencb-grid-toolbar.js";
import LitUtils from "../commons/utils/lit-utils.js";
import NotificationUtils from "../commons/utils/notification-utils.js";
import ModalUtils from "../commons/modal/modal-utils.js";
+import WebUtils from "../commons/utils/web-utils.js";
+import "../commons/opencb-grid-toolbar.js";
export default class ClinicalAnalysisGrid extends LitElement {
@@ -304,22 +305,6 @@ export default class ClinicalAnalysisGrid extends LitElement {
// TODO remove this code as soon as new OpenCGA configuration is in place
const _priorities = this.opencgaSession?.study?.internal?.configuration?.clinical?.priorities || [];
- // Priorities classes
- const priorityMap = {
- URGENT: "text-bg-danger",
- HIGH: "text-bg-warning",
- MEDIUM: "text-bg-primary",
- LOW: "text-bg-info"
- };
- const priorityRankToColor = [
- "text-bg-danger",
- "text-bg-warning",
- "text-bg-primary",
- "text-bg-info",
- "text-bg-success",
- "text-bg-light"
- ];
-
const hasWriteAccess = OpencgaCatalogUtils.checkPermissions(this.opencgaSession.study, this.opencgaSession.user.id, "WRITE_CLINICAL_ANALYSIS");
const isEditable = !this._config.readOnlyMode && hasWriteAccess && !row.locked; // priority is editable
@@ -329,12 +314,12 @@ export default class ClinicalAnalysisGrid extends LitElement {
// Current priority
const currentPriorityText = value?.id ?? value ?? "-";
- const currentPriorityLabel = priorityRankToColor[value?.rank ?? ""] ?? priorityMap[value ?? ""] ?? "";
+ const currentPriorityColor = WebUtils.getClinicalAnalysisPriorityColour(value?.rank);
return `
@@ -344,8 +329,8 @@ export default class ClinicalAnalysisGrid extends LitElement {
-
-
+
+
${priority.id}
diff --git a/src/webcomponents/clinical/clinical-analysis-view.js b/src/webcomponents/clinical/clinical-analysis-view.js
index 30aaedbb8..dd820fdd2 100644
--- a/src/webcomponents/clinical/clinical-analysis-view.js
+++ b/src/webcomponents/clinical/clinical-analysis-view.js
@@ -14,13 +14,14 @@
* limitations under the License.
*/
-import {LitElement, html, nothing} from "lit";
+import {LitElement, html} from "lit";
import UtilsNew from "../../core/utils-new.js";
import LitUtils from "../commons/utils/lit-utils";
import CatalogGridFormatter from "../commons/catalog-grid-formatter.js";
+import BioinfoUtils from "../../core/bioinfo/bioinfo-utils.js";
+import WebUtils from "../commons/utils/web-utils.js";
import "../commons/forms/data-form.js";
import "../commons/image-viewer.js";
-import BioinfoUtils from "../../core/bioinfo/bioinfo-utils";
export default class ClinicalAnalysisView extends LitElement {
@@ -157,23 +158,6 @@ export default class ClinicalAnalysisView extends LitElement {
}
}
- #priorityFormatter(id, data) {
- const priorityRankToColor = [
- "text-bg-danger",
- "text-bg-warning",
- "text-bg-primary",
- "text-bg-info",
- "text-bg-success",
- "text-bg-light"
- ];
-
- if (typeof data?.priority?.rank === "number") {
- return priorityRankToColor[data?.priority?.rank - 1] || "";
- } else {
- return "";
- }
- }
-
#setLoading(value) {
this.isLoading = value;
this.requestUpdate();
@@ -296,7 +280,7 @@ export default class ClinicalAnalysisView extends LitElement {
display: {
template: "${priority.id}",
className: {
- "priority.id": (id, data) => `badge ${this.#priorityFormatter(id, data)}`,
+ "priority.id": (id, data) => `badge ${WebUtils.getClinicalAnalysisPriorityColour(data?.priority?.rank)}`,
},
}
},
diff --git a/src/webcomponents/commons/utils/web-utils.js b/src/webcomponents/commons/utils/web-utils.js
index 769a3d61a..be02cff79 100644
--- a/src/webcomponents/commons/utils/web-utils.js
+++ b/src/webcomponents/commons/utils/web-utils.js
@@ -97,4 +97,16 @@ export default class WebUtils {
return "-";
}
+ static getClinicalAnalysisPriorityColour(rank) {
+ const priorityRankToColor = {
+ 1: "bg-danger", // URGENT
+ 2: "bg-warning", // HIGH
+ 3: "bg-primary", // NORMAL
+ 4: "bg-info", // LOW
+ 5: "bg-light text-dark", // UNKNOWN
+ };
+
+ return priorityRankToColor[rank] ?? "";
+ }
+
}