UNPKG

@bespunky/angular-zen

Version:

The Angular tools you always wished were there.

16 lines 2.27 kB
import { filter } from 'rxjs'; import { inject } from '@angular/core'; import { Router } from '@angular/router'; /** * Creates an observable which emits only the specified routing event. * * @export * @template T The type of router event to observe. * @param {Type<T>} eventType The type of router event to observe. * @return {Observable<T>} An observable which emits only the specified routing event. */ export function useRouterEvent(eventType) { const router = inject(Router); return router.events.pipe(filter((event) => event instanceof eventType)); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLXJvdXRlci1ldmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci16ZW4vcm91dGVyLXgvdXRpbHMvc3JjL2xpYi91c2Utcm91dGVyLWV2ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDMUMsT0FBTyxFQUFFLE1BQU0sRUFBUSxNQUFNLGVBQWUsQ0FBQztBQUM3QyxPQUFPLEVBQUUsTUFBTSxFQUFlLE1BQU0saUJBQWlCLENBQUM7QUFFdEQ7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSxjQUFjLENBQXdCLFNBQWtCO0lBRXBFLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUU5QixPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNyQixNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQWMsRUFBRSxDQUFDLEtBQUssWUFBWSxTQUFTLENBQUMsQ0FDNUQsQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaWx0ZXIsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGluamVjdCwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyLCBSb3V0ZXJFdmVudCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbi8qKlxuICogQ3JlYXRlcyBhbiBvYnNlcnZhYmxlIHdoaWNoIGVtaXRzIG9ubHkgdGhlIHNwZWNpZmllZCByb3V0aW5nIGV2ZW50LlxuICpcbiAqIEBleHBvcnRcbiAqIEB0ZW1wbGF0ZSBUIFRoZSB0eXBlIG9mIHJvdXRlciBldmVudCB0byBvYnNlcnZlLlxuICogQHBhcmFtIHtUeXBlPFQ+fSBldmVudFR5cGUgVGhlIHR5cGUgb2Ygcm91dGVyIGV2ZW50IHRvIG9ic2VydmUuXG4gKiBAcmV0dXJuIHtPYnNlcnZhYmxlPFQ+fSBBbiBvYnNlcnZhYmxlIHdoaWNoIGVtaXRzIG9ubHkgdGhlIHNwZWNpZmllZCByb3V0aW5nIGV2ZW50LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlUm91dGVyRXZlbnQ8VCBleHRlbmRzIFJvdXRlckV2ZW50PihldmVudFR5cGU6IFR5cGU8VD4pOiBPYnNlcnZhYmxlPFQ+XG57XG4gICAgY29uc3Qgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG5cbiAgICByZXR1cm4gcm91dGVyLmV2ZW50cy5waXBlKFxuICAgICAgICBmaWx0ZXIoKGV2ZW50KTogZXZlbnQgaXMgVCA9PiBldmVudCBpbnN0YW5jZW9mIGV2ZW50VHlwZSksXG4gICAgKTtcbn1cbiJdfQ==