-import { Directive, ElementRef, HostListener, Output, EventEmitter } from '@angular/core'
-import { Router } from '@angular/router'
-
-type ElementEvent = Omit<Event, 'target'> & {
- target: HTMLInputElement
-}
+import { Directive, EventEmitter, HostListener, Output } from '@angular/core'
@Directive({
selector: '[timestampRouteTransformer]'
export class TimestampRouteTransformerDirective {
@Output() timestampClicked = new EventEmitter<number>()
- constructor (private el: ElementRef, private router: Router) { }
-
@HostListener('click', ['$event'])
- public onClick ($event: ElementEvent) {
- if ($event.target.hasAttribute('href')) {
+ public onClick ($event: Event) {
+ const target = $event.target as HTMLLinkElement
+
+ if (target.hasAttribute('href')) {
const ngxLink = document.createElement('a')
- ngxLink.href = $event.target.getAttribute('href')
+ ngxLink.href = target.getAttribute('href')
// we only care about reflective links
if (ngxLink.host !== window.location.host) return