UNPKG

ngx-progressbar

Version:

<p align="center"> <img height="200px" width="200px" style="text-align: center;" src="https://gitcdn.xyz/repo/MurhafSousli/ngx-progressbar/master/projects/ngx-progressbar-demo/src/assets/logo.svg"> <h1 align="center">Angular Progressbar</h1> </p>

1 lines 6.02 kB
{"version":3,"file":"ngx-progressbar-router.mjs","sources":["../../../projects/ngx-progressbar/router/src/ng-progress-router.interface.ts","../../../projects/ngx-progressbar/router/src/ng-progress-router.service.ts","../../../projects/ngx-progressbar/router/src/ng-progress-router.module.ts","../../../projects/ngx-progressbar/router/src/ngx-progressbar-router.ts"],"sourcesContent":["import { InjectionToken, Type } from '@angular/core';\r\nimport { RouterEvent } from '@angular/router';\r\n\r\nexport interface ProgressRouterConfig {\r\n id: string;\r\n delay: number;\r\n startEvents: Type<RouterEvent>[];\r\n completeEvents: Type<RouterEvent>[];\r\n}\r\n\r\nexport type NgProgressRouterConfig = Partial<ProgressRouterConfig>;\r\n\r\nexport const NG_PROGRESS_ROUTER_CONFIG = new InjectionToken<NgProgressRouterConfig>('ngProgressRouterConfig');\r\n","import { Injectable, Optional, Inject, Type } from '@angular/core';\r\nimport { Router, NavigationStart, NavigationEnd, NavigationCancel, NavigationError, RouterEvent, Event } from '@angular/router';\r\nimport { of } from 'rxjs';\r\nimport { tap, delay, switchMap, filter } from 'rxjs/operators';\r\nimport { NgProgress, NgProgressRef } from 'ngx-progressbar';\r\nimport { NgProgressRouterConfig, ProgressRouterConfig, NG_PROGRESS_ROUTER_CONFIG } from './ng-progress-router.interface';\r\n\r\n/**\r\n * Check if a router event type exists in an array of router event types\r\n */\r\nfunction eventExists(routerEvent: Event, events: Type<RouterEvent>[]): boolean {\r\n let res = false;\r\n events.map((event: Type<RouterEvent>) => res = res || routerEvent instanceof event);\r\n return res;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NgProgressRouter {\r\n private readonly _config: ProgressRouterConfig = {\r\n id: 'root',\r\n delay: 0,\r\n startEvents: [NavigationStart],\r\n completeEvents: [NavigationEnd, NavigationCancel, NavigationError]\r\n };\r\n\r\n constructor(progress: NgProgress, router: Router, @Optional() @Inject(NG_PROGRESS_ROUTER_CONFIG) config: NgProgressRouterConfig) {\r\n this._config = config ? {...this._config, ...config} : this._config;\r\n const progressRef: NgProgressRef = progress.ref(this._config.id);\r\n\r\n const startProgress = of({}).pipe(\r\n tap(() => progressRef.start())\r\n );\r\n\r\n const completeProgress = of({}).pipe(\r\n delay(this._config.delay),\r\n tap(() => progressRef.complete())\r\n );\r\n\r\n const filterEvents: Type<RouterEvent>[] = [...this._config.startEvents, ...this._config.completeEvents];\r\n\r\n router.events.pipe(\r\n filter((event: Event) => eventExists(event, filterEvents)),\r\n switchMap((event: Event) => eventExists(event, this._config.startEvents) ? startProgress : completeProgress)\r\n ).subscribe();\r\n }\r\n}\r\n","import { NgModule, ModuleWithProviders } from '@angular/core';\r\nimport { NgProgressRouterConfig, NG_PROGRESS_ROUTER_CONFIG } from './ng-progress-router.interface';\r\nimport { NgProgressRouter } from './ng-progress-router.service';\r\n\r\n@NgModule({})\r\nexport class NgProgressRouterModule {\r\n\r\n // Inject the service to activate it\r\n constructor(ngProgressRouter: NgProgressRouter) {\r\n }\r\n\r\n static withConfig(config: NgProgressRouterConfig): ModuleWithProviders<NgProgressRouterModule> {\r\n return {\r\n ngModule: NgProgressRouterModule,\r\n providers: [\r\n { provide: NG_PROGRESS_ROUTER_CONFIG, useValue: config }\r\n ]\r\n };\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1.NgProgressRouter"],"mappings":"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"}