-import { Directive, ElementRef, HostListener, Output, EventEmitter } from '@angular/core'
-import { Router } from '@angular/router'
-import { ElementEvent } from '@app/shared/misc/utils'
+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
-// Thanks: https://stackoverflow.com/questions/901115/how-can-i-get-query-string-values-in-javascript
-
import { DatePipe } from '@angular/common'
import { environment } from '../../../environments/environment'
import { AuthService } from '../../core/auth'
-type ElementEvent = Omit<Event, 'target'> & {
- target: HTMLElement
-}
-
+// Thanks: https://stackoverflow.com/questions/901115/how-can-i-get-query-string-values-in-javascript
function getParameterByName (name: string, url: string) {
if (!url) url = window.location.href
name = name.replace(/[\[\]]/g, '\\$&')
}
export {
- ElementEvent,
sortBy,
durationToString,
lineFeedToHtml,