All files / app/codeCharta/util/pipes attributeDescriptorTooltip.pipe.ts

100% Statements 12/12
100% Branches 15/15
100% Functions 1/1
100% Lines 10/10

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 2313x   13x           13x   93x 73x   20x   20x 20x 20x   20x      
import { Pipe, PipeTransform } from "@angular/core"
import { AttributeDescriptor } from "../../codeCharta.model"
import { metricTitles } from "../metric/metricTitles"
 
@Pipe({
    name: "attributeDescriptorTooltip",
    standalone: true
})
export class AttributeDescriptorTooltipPipe implements PipeTransform {
    transform(attributeDescriptor: AttributeDescriptor, key: string): string {
        if (attributeDescriptor == null) {
            return metricTitles.get(key) ?? ""
        }
        const title: string = attributeDescriptor.title ? `${attributeDescriptor.title} (${key})` : `${key}`
 
        let subtitle: string = attributeDescriptor.description ? `\n${attributeDescriptor.description}` : ""
        subtitle += attributeDescriptor.hintHighValue ? `\nHigh Values: ${attributeDescriptor.hintHighValue}` : ""
        subtitle += attributeDescriptor.hintLowValue ? `\nLow Values: ${attributeDescriptor.hintLowValue}` : ""
 
        return subtitle.length > 0 ? `${title}:${subtitle}` : title
    }
}