1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-16 08:13:42 +00:00
Files
browser/src/angular/directives/a11y-title.directive.ts
Kyle Spearrin 6ac679355d a11y title
2019-04-01 22:36:07 -04:00

29 lines
700 B
TypeScript

import {
Directive,
ElementRef,
Input,
Renderer2,
} from '@angular/core';
@Directive({
selector: '[appA11yTitle]',
})
export class A11yTitleDirective {
@Input() set appA11yTitle(title: string) {
this.title = title;
}
private title: string;
constructor(private el: ElementRef, private renderer: Renderer2) { }
ngOnInit() {
if (!this.el.nativeElement.hasAttribute('title')) {
this.renderer.setAttribute(this.el.nativeElement, 'title', this.title);
}
if (!this.el.nativeElement.hasAttribute('aria-label')) {
this.renderer.setAttribute(this.el.nativeElement, 'aria-label', this.title);
}
}
}