summaryrefslogtreecommitdiffstats
path: root/catalog-ui/src/app/filters/graph-resource-name-filter.ts
blob: a4698612f662d492d4f40d880bca8aa7b42760ed (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
export class GraphResourceNameFilter {

    constructor() {
        let filter = <GraphResourceNameFilter>( (name:string) => {
            let context = document.createElement("canvas").getContext("2d");
            context.font = "13px Arial";

            if (67 < context.measureText(name).width) {
                let newLen = name.length - 3;
                let newName = name.substring(0, newLen);

                while (59 < (context.measureText(newName).width)) {
                    newName = newName.substring(0, (--newLen));
                }
                return newName + '...';
            }

            return name;
        });
        return filter;
    }
}