mirror of
https://dev.azure.com/hugendubel/ISA/_git/ISA-Frontend
synced 2025-12-28 22:42:11 +01:00
feat(shared-scanner): Moved to shared/scanner
feat(common-data-access): takeUnitl operators for keydown Refs: #5062
This commit is contained in:
@@ -1 +1,2 @@
|
||||
export * from './take-until-aborted';
|
||||
export * from './take-unitl-keydown';
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
import { filter, fromEvent, Observable, takeUntil } from 'rxjs';
|
||||
|
||||
export const takeUntilKeydown =
|
||||
<T>(key: string) =>
|
||||
(source: Observable<T>): Observable<T> => {
|
||||
const keydownEvent$ = fromEvent<KeyboardEvent>(document, 'keydown').pipe(
|
||||
// Filter for the specific key
|
||||
filter((event) => event.key === key),
|
||||
);
|
||||
|
||||
return source.pipe(takeUntil(keydownEvent$));
|
||||
};
|
||||
|
||||
export const takeUntilKeydownEscape = <T>() => takeUntilKeydown<T>('Escape');
|
||||
@@ -1,4 +1,4 @@
|
||||
import { Observable, fromEvent } from 'rxjs';
|
||||
import { Observable } from 'rxjs';
|
||||
import { takeUntil } from 'rxjs/operators';
|
||||
|
||||
/**
|
||||
@@ -19,7 +19,6 @@ export const fromAbortSignal = (signal: AbortSignal): Observable<void> => {
|
||||
return new Observable<void>((subscriber) => {
|
||||
const abortHandler = () => {
|
||||
subscriber.next();
|
||||
subscriber.complete();
|
||||
};
|
||||
|
||||
// Listen for the 'abort' event
|
||||
|
||||
Reference in New Issue
Block a user