UNPKG

1.35 kBJavaScriptView Raw
1import { Location, LocationStrategy, PathLocationStrategy } from '@angular/common';
2import { ApplicationRef } from '@angular/core';
3import { BaseException } from '../src/facade/exceptions';
4import { ROUTER_PRIMARY_COMPONENT, RouteRegistry } from './route_registry';
5import { RootRouter, Router } from './router';
6/**
7 * The Platform agnostic ROUTER PROVIDERS
8 */
9export const ROUTER_PROVIDERS_COMMON = [
10 RouteRegistry,
11 /* @ts2dart_Provider */ { provide: LocationStrategy, useClass: PathLocationStrategy }, Location, {
12 provide: Router,
13 useFactory: routerFactory,
14 deps: [RouteRegistry, Location, ROUTER_PRIMARY_COMPONENT, ApplicationRef]
15 },
16 {
17 provide: ROUTER_PRIMARY_COMPONENT,
18 useFactory: routerPrimaryComponentFactory,
19 deps: /*@ts2dart_const*/ ([ApplicationRef])
20 }
21];
22function routerFactory(registry, location, primaryComponent, appRef) {
23 var rootRouter = new RootRouter(registry, location, primaryComponent);
24 appRef.registerDisposeListener(() => rootRouter.dispose());
25 return rootRouter;
26}
27function routerPrimaryComponentFactory(app) {
28 if (app.componentTypes.length == 0) {
29 throw new BaseException('Bootstrap at least one component before injecting Router.');
30 }
31 return app.componentTypes[0];
32}
33//# sourceMappingURL=router_providers_common.js.map
\No newline at end of file