aboutsummaryrefslogtreecommitdiff
path: root/Timeline/ClientApp/src/app/utilities/debounce-click.directive.ts
diff options
context:
space:
mode:
Diffstat (limited to 'Timeline/ClientApp/src/app/utilities/debounce-click.directive.ts')
-rw-r--r--Timeline/ClientApp/src/app/utilities/debounce-click.directive.ts41
1 files changed, 0 insertions, 41 deletions
diff --git a/Timeline/ClientApp/src/app/utilities/debounce-click.directive.ts b/Timeline/ClientApp/src/app/utilities/debounce-click.directive.ts
deleted file mode 100644
index 1d01b671..00000000
--- a/Timeline/ClientApp/src/app/utilities/debounce-click.directive.ts
+++ /dev/null
@@ -1,41 +0,0 @@
-import { Directive, Output, Input, EventEmitter, ElementRef, OnInit, OnDestroy } from '@angular/core';
-import { fromEvent, Subscription } from 'rxjs';
-import { debounceTime } from 'rxjs/operators';
-
-@Directive({
- selector: '[appDebounceClick]'
-})
-export class DebounceClickDirective implements OnInit, OnDestroy {
-
- private subscription: Subscription | undefined;
-
- @Output('appDebounceClick') clickEvent = new EventEmitter<any>();
-
- // tslint:disable-next-line:no-input-rename
- @Input('appDebounceClickTime')
- set debounceTime(value: number) {
- if (this.subscription) {
- this.subscription.unsubscribe();
- }
- this.subscription = fromEvent(<HTMLElement>this.element.nativeElement, 'click').pipe(
- debounceTime(value)
- ).subscribe(o => this.clickEvent.emit(o));
- }
-
- constructor(private element: ElementRef) {
- }
-
- ngOnInit() {
- if (!this.subscription) {
- this.subscription = fromEvent(<HTMLElement>this.element.nativeElement, 'click').pipe(
- debounceTime(500)
- ).subscribe(o => this.clickEvent.emit(o));
- }
- }
-
- ngOnDestroy() {
- if (this.subscription) {
- this.subscription.unsubscribe();
- }
- }
-}