From c1720c4fc911f58fb9233ae88f182f2256a19d67 Mon Sep 17 00:00:00 2001 From: EisenbergEffect Date: Mon, 15 Jan 2018 02:02:53 -0800 Subject: [PATCH] chore(all): prepare release 1.5.0 --- bower.json | 2 +- dist/amd/aurelia-router.js | 76 ++++++++++++--- dist/aurelia-router.d.ts | 61 +++++++++++- dist/aurelia-router.js | 132 +++++++++++++++++++++++--- dist/commonjs/aurelia-router.js | 76 ++++++++++++--- dist/es2015/aurelia-router.js | 76 ++++++++++++--- dist/native-modules/aurelia-router.js | 76 ++++++++++++--- dist/system/aurelia-router.js | 76 ++++++++++++--- doc/CHANGELOG.md | 18 ++++ doc/api.json | 2 +- package.json | 2 +- 11 files changed, 520 insertions(+), 77 deletions(-) diff --git a/bower.json b/bower.json index 691e4caf..38b868e9 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "aurelia-router", - "version": "1.4.0", + "version": "1.5.0", "description": "A powerful client-side router.", "keywords": [ "aurelia", diff --git a/dist/amd/aurelia-router.js b/dist/amd/aurelia-router.js index 53dc9a12..c3c03792 100644 --- a/dist/amd/aurelia-router.js +++ b/dist/amd/aurelia-router.js @@ -349,17 +349,15 @@ define(['exports', 'aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depen if (viewPortInstruction.strategy === activationStrategy.replace) { if (viewPortInstruction.childNavigationInstruction && viewPortInstruction.childNavigationInstruction.parentCatchHandler) { - loads.push(viewPortInstruction.childNavigationInstruction._commitChanges()); + loads.push(viewPortInstruction.childNavigationInstruction._commitChanges(waitToSwap)); } else { if (waitToSwap) { delaySwaps.push({ viewPort: viewPort, viewPortInstruction: viewPortInstruction }); } loads.push(viewPort.process(viewPortInstruction, waitToSwap).then(function (x) { if (viewPortInstruction.childNavigationInstruction) { - return viewPortInstruction.childNavigationInstruction._commitChanges(); + return viewPortInstruction.childNavigationInstruction._commitChanges(waitToSwap); } - - return undefined; })); } } else { @@ -552,6 +550,11 @@ define(['exports', 'aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depen return this.mapRoute(route); }; + RouterConfiguration.prototype.useViewPortDefaults = function useViewPortDefaults(viewPortConfig) { + this.viewPortDefaults = viewPortConfig; + return this; + }; + RouterConfiguration.prototype.mapRoute = function mapRoute(config) { this.instructions.push(function (router) { var routeConfigs = []; @@ -604,6 +607,10 @@ define(['exports', 'aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depen router.fallbackRoute = this._fallbackRoute; } + if (this.viewPortDefaults) { + router.useViewPortDefaults(this.viewPortDefaults); + } + router.options = this.options; var pipelineSteps = this.pipelineSteps; @@ -648,9 +655,7 @@ define(['exports', 'aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depen }(); function _buildNavigationPlan(instruction, forceLifecycleMinimum) { - var prev = instruction.previousInstruction; var config = instruction.config; - var plan = {}; if ('redirect' in config) { var redirectLocation = _resolveUrl(config.redirect, getInstructionBaseUrl(instruction)); @@ -661,15 +666,20 @@ define(['exports', 'aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depen return Promise.reject(new Redirect(redirectLocation)); } + var prev = instruction.previousInstruction; + var plan = {}; + var defaults = instruction.router.viewPortDefaults; + if (prev) { var newParams = hasDifferentParameterValues(prev, instruction); var pending = []; var _loop2 = function _loop2(viewPortName) { var prevViewPortInstruction = prev.viewPortInstructions[viewPortName]; - var nextViewPortConfig = config.viewPorts[viewPortName]; - - if (!nextViewPortConfig) throw new Error('Invalid Route Config: Configuration for viewPort "' + viewPortName + '" was not found for route: "' + instruction.config.route + '."'); + var nextViewPortConfig = viewPortName in config.viewPorts ? config.viewPorts[viewPortName] : prevViewPortInstruction; + if (nextViewPortConfig.moduleId === null && viewPortName in instruction.router.viewPortDefaults) { + nextViewPortConfig = defaults[viewPortName]; + } var viewPortPlan = plan[viewPortName] = { name: viewPortName, @@ -716,10 +726,14 @@ define(['exports', 'aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depen } for (var viewPortName in config.viewPorts) { + var viewPortConfig = config.viewPorts[viewPortName]; + if (viewPortConfig.moduleId === null && viewPortName in instruction.router.viewPortDefaults) { + viewPortConfig = defaults[viewPortName]; + } plan[viewPortName] = { name: viewPortName, strategy: activationStrategy.replace, - config: instruction.config.viewPorts[viewPortName] + config: viewPortConfig }; } @@ -793,6 +807,7 @@ define(['exports', 'aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depen this.parent = null; this.options = {}; + this.viewPortDefaults = {}; this.transformTitle = function (title) { if (_this3.parent) { @@ -816,8 +831,14 @@ define(['exports', 'aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depen this.isNavigating = false; this.isExplicitNavigation = false; this.isExplicitNavigationBack = false; + this.isNavigatingFirst = false; + this.isNavigatingNew = false; + this.isNavigatingRefresh = false; + this.isNavigatingForward = false; + this.isNavigatingBack = false; this.navigation = []; this.currentInstruction = null; + this.viewPortDefaults = {}; this._fallbackOrder = 100; this._recognizer = new _aureliaRouteRecognizer.RouteRecognizer(); this._childRecognizer = new _aureliaRouteRecognizer.RouteRecognizer(); @@ -1019,6 +1040,15 @@ define(['exports', 'aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depen } }; + Router.prototype.useViewPortDefaults = function useViewPortDefaults(viewPortDefaults) { + for (var viewPortName in viewPortDefaults) { + var viewPortConfig = viewPortDefaults[viewPortName]; + this.viewPortDefaults[viewPortName] = { + moduleId: viewPortConfig.moduleId + }; + } + }; + Router.prototype._refreshBaseUrl = function _refreshBaseUrl() { if (this.parent) { var baseUrl = this.parent.currentInstruction.getBaseUrl(); @@ -1519,7 +1549,7 @@ define(['exports', 'aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depen } function loadRoute(routeLoader, navigationInstruction, viewPortPlan) { - var moduleId = viewPortPlan.config.moduleId; + var moduleId = viewPortPlan.config ? viewPortPlan.config.moduleId : null; return loadComponent(routeLoader, navigationInstruction, viewPortPlan.config).then(function (component) { var viewPortInstruction = navigationInstruction.addViewPortInstruction(viewPortPlan.name, viewPortPlan.strategy, moduleId, component); @@ -1773,6 +1803,25 @@ define(['exports', 'aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depen } _this14.isNavigating = true; + + var navtracker = _this14.history.getState('NavigationTracker'); + if (!navtracker && !_this14.currentNavigationTracker) { + _this14.isNavigatingFirst = true; + _this14.isNavigatingNew = true; + } else if (!navtracker) { + _this14.isNavigatingNew = true; + } else if (!_this14.currentNavigationTracker) { + _this14.isNavigatingRefresh = true; + } else if (_this14.currentNavigationTracker < navtracker) { + _this14.isNavigatingForward = true; + } else if (_this14.currentNavigationTracker > navtracker) { + _this14.isNavigatingBack = true; + }if (!navtracker) { + navtracker = Date.now(); + _this14.history.setState('NavigationTracker', navtracker); + } + _this14.currentNavigationTracker = navtracker; + instruction.previousInstruction = _this14.currentInstruction; if (!instructionCount) { @@ -1855,6 +1904,11 @@ define(['exports', 'aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depen router.isNavigating = false; router.isExplicitNavigation = false; router.isExplicitNavigationBack = false; + router.isNavigatingFirst = false; + router.isNavigatingNew = false; + router.isNavigatingRefresh = false; + router.isNavigatingForward = false; + router.isNavigatingBack = false; var eventName = void 0; diff --git a/dist/aurelia-router.d.ts b/dist/aurelia-router.d.ts index 4dd9e3e4..68225f59 100644 --- a/dist/aurelia-router.d.ts +++ b/dist/aurelia-router.d.ts @@ -182,7 +182,7 @@ export declare interface RouteConfig { /** * specifies the model parameter to pass to the layout view model's `activate` function. */ - layoutModel?: string; + layoutModel?: any; [x: string]: any; } @@ -491,7 +491,7 @@ export declare class NavModel { config: RouteConfig; /** - * The router associated with this navitation model. + * The router associated with this navigation model. */ router: Router; constructor(router: Router, relativeHref: string); @@ -584,6 +584,7 @@ export declare class RouterConfiguration { pipelineSteps: Array; title: string; unknownRouteConfig: any; + viewPortDefaults: any; /** * Adds a step to be run during the [[Router]]'s navigation pipeline. @@ -642,6 +643,15 @@ export declare class RouterConfiguration { */ map(route: RouteConfig | RouteConfig[]): RouterConfiguration; + /** + * Configures defaults to use for any view ports. + * + * @param viewPortConfig a view port configuration object to use as a + * default, of the form { viewPortName: { moduleId } }. + * @chainable + */ + useViewPortDefaults(viewPortConfig: any): any; + /** * Maps a single route to be registered with the router. * @@ -712,6 +722,36 @@ export declare class Router { */ isExplicitNavigationBack: boolean; + /** + * True if the [[Router]] is navigating into the app for the first time in the browser session. + */ + isNavigatingFirst: boolean; + + /** + * True if the [[Router]] is navigating to a page instance not in the browser session history. + */ + isNavigatingNew: boolean; + + /** + * True if the [[Router]] is navigating forward in the browser session history. + */ + isNavigatingForward: boolean; + + /** + * True if the [[Router]] is navigating back in the browser session history. + */ + isNavigatingBack: boolean; + + /** + * True if the [[Router]] is navigating due to a browser refresh. + */ + isNavigatingRefresh: boolean; + + /** + * The currently active navigation tracker. + */ + currentNavigationTracker: number; + /** * The navigation models for routes that specified [[RouteConfig.nav]]. */ @@ -728,6 +768,11 @@ export declare class Router { parent: Router; options: any; + /** + * The defaults used when a viewport lacks specified content + */ + viewPortDefaults: any; + /** * Extension point to transform the document title before it is built and displayed. * By default, child routers delegate to the parent router, and the app router @@ -776,7 +821,7 @@ export declare class Router { * Navigates to a new location. * * @param fragment The URL fragment to use as the navigation destination. - * @param options The navigation options. + * @param options The navigation options. See [[History.NavigationOptions]] for all available options. */ navigate(fragment: string, options?: any): boolean; @@ -786,7 +831,7 @@ export declare class Router { * * @param route The name of the route to use when generating the navigation location. * @param params The route parameters to be used when populating the route pattern. - * @param options The navigation options. + * @param options The navigation options. See [[History.NavigationOptions]] for all available options. */ navigateToRoute(route: string, params?: any, options?: any): boolean; @@ -808,6 +853,7 @@ export declare class Router { * * @param name The name of the route whose pattern should be used to generate the fragment. * @param params The route params to be used to populate the route pattern. + * @param options If options.absolute = true, then absolute url will be generated; otherwise, it will be relative url. * @returns {string} A string containing the generated URL fragment. */ generate(name: string, params?: any, options?: any): string; @@ -858,6 +904,13 @@ export declare class Router { * Note: This method will likely move to a plugin in a future release. */ refreshNavigation(): void; + + /** + * Sets the default configuration for the view ports. This specifies how to + * populate a view port for which no module is specified. The default is + * an empty view/view-model pair. + */ + useViewPortDefaults(viewPortDefaults: any): any; } export declare class CanDeactivatePreviousStep { run(navigationInstruction: NavigationInstruction, next: Function): any; diff --git a/dist/aurelia-router.js b/dist/aurelia-router.js index 9c70030d..ee5d59a7 100644 --- a/dist/aurelia-router.js +++ b/dist/aurelia-router.js @@ -401,17 +401,15 @@ export class NavigationInstruction { if (viewPortInstruction.strategy === activationStrategy.replace) { if (viewPortInstruction.childNavigationInstruction && viewPortInstruction.childNavigationInstruction.parentCatchHandler) { - loads.push(viewPortInstruction.childNavigationInstruction._commitChanges()); + loads.push(viewPortInstruction.childNavigationInstruction._commitChanges(waitToSwap)); } else { if (waitToSwap) { delaySwaps.push({viewPort, viewPortInstruction}); } loads.push(viewPort.process(viewPortInstruction, waitToSwap).then((x) => { if (viewPortInstruction.childNavigationInstruction) { - return viewPortInstruction.childNavigationInstruction._commitChanges(); + return viewPortInstruction.childNavigationInstruction._commitChanges(waitToSwap); } - - return undefined; })); } } else { @@ -506,7 +504,7 @@ export class NavModel { config: RouteConfig = null; /** - * The router associated with this navitation model. + * The router associated with this navigation model. */ router: Router; @@ -631,7 +629,7 @@ interface RouteConfig { /** * specifies the model parameter to pass to the layout view model's `activate` function. */ - layoutModel?: string; + layoutModel?: any; [x: string]: any; } @@ -822,6 +820,7 @@ export class RouterConfiguration { pipelineSteps: Array = []; title: string; unknownRouteConfig: any; + viewPortDefaults: any; /** * Adds a step to be run during the [[Router]]'s navigation pipeline. @@ -901,6 +900,18 @@ export class RouterConfiguration { return this.mapRoute(route); } + /** + * Configures defaults to use for any view ports. + * + * @param viewPortConfig a view port configuration object to use as a + * default, of the form { viewPortName: { moduleId } }. + * @chainable + */ + useViewPortDefaults(viewPortConfig: any) { + this.viewPortDefaults = viewPortConfig; + return this; + } + /** * Maps a single route to be registered with the router. * @@ -971,6 +982,10 @@ export class RouterConfiguration { router.fallbackRoute = this._fallbackRoute; } + if (this.viewPortDefaults) { + router.useViewPortDefaults(this.viewPortDefaults); + } + router.options = this.options; let pipelineSteps = this.pipelineSteps; @@ -1008,9 +1023,7 @@ export class BuildNavigationPlanStep { } export function _buildNavigationPlan(instruction: NavigationInstruction, forceLifecycleMinimum): Promise { - let prev = instruction.previousInstruction; let config = instruction.config; - let plan = {}; if ('redirect' in config) { let redirectLocation = _resolveUrl(config.redirect, getInstructionBaseUrl(instruction)); @@ -1021,15 +1034,20 @@ export function _buildNavigationPlan(instruction: NavigationInstruction, forceLi return Promise.reject(new Redirect(redirectLocation)); } + let prev = instruction.previousInstruction; + let plan = {}; + let defaults = instruction.router.viewPortDefaults; + if (prev) { let newParams = hasDifferentParameterValues(prev, instruction); let pending = []; for (let viewPortName in prev.viewPortInstructions) { let prevViewPortInstruction = prev.viewPortInstructions[viewPortName]; - let nextViewPortConfig = config.viewPorts[viewPortName]; - - if (!nextViewPortConfig) throw new Error(`Invalid Route Config: Configuration for viewPort "${viewPortName}" was not found for route: "${instruction.config.route}."`); + let nextViewPortConfig = viewPortName in config.viewPorts ? config.viewPorts[viewPortName] : prevViewPortInstruction; + if (nextViewPortConfig.moduleId === null && viewPortName in instruction.router.viewPortDefaults) { + nextViewPortConfig = defaults[viewPortName]; + } let viewPortPlan = plan[viewPortName] = { name: viewPortName, @@ -1073,10 +1091,14 @@ export function _buildNavigationPlan(instruction: NavigationInstruction, forceLi } for (let viewPortName in config.viewPorts) { + let viewPortConfig = config.viewPorts[viewPortName]; + if (viewPortConfig.moduleId === null && viewPortName in instruction.router.viewPortDefaults) { + viewPortConfig = defaults[viewPortName]; + } plan[viewPortName] = { name: viewPortName, strategy: activationStrategy.replace, - config: instruction.config.viewPorts[viewPortName] + config: viewPortConfig }; } @@ -1179,6 +1201,36 @@ export class Router { */ isExplicitNavigationBack: boolean; + /** + * True if the [[Router]] is navigating into the app for the first time in the browser session. + */ + isNavigatingFirst: boolean; + + /** + * True if the [[Router]] is navigating to a page instance not in the browser session history. + */ + isNavigatingNew: boolean; + + /** + * True if the [[Router]] is navigating forward in the browser session history. + */ + isNavigatingForward: boolean; + + /** + * True if the [[Router]] is navigating back in the browser session history. + */ + isNavigatingBack: boolean; + + /** + * True if the [[Router]] is navigating due to a browser refresh. + */ + isNavigatingRefresh: boolean; + + /** + * The currently active navigation tracker. + */ + currentNavigationTracker: number; + /** * The navigation models for routes that specified [[RouteConfig.nav]]. */ @@ -1196,6 +1248,11 @@ export class Router { options: any = {}; + /** + * The defaults used when a viewport lacks specified content + */ + viewPortDefaults: any = {}; + /** * Extension point to transform the document title before it is built and displayed. * By default, child routers delegate to the parent router, and the app router @@ -1230,8 +1287,14 @@ export class Router { this.isNavigating = false; this.isExplicitNavigation = false; this.isExplicitNavigationBack = false; + this.isNavigatingFirst = false; + this.isNavigatingNew = false; + this.isNavigatingRefresh = false; + this.isNavigatingForward = false; + this.isNavigatingBack = false; this.navigation = []; this.currentInstruction = null; + this.viewPortDefaults = {}; this._fallbackOrder = 100; this._recognizer = new RouteRecognizer(); this._childRecognizer = new RouteRecognizer(); @@ -1295,7 +1358,7 @@ export class Router { * Navigates to a new location. * * @param fragment The URL fragment to use as the navigation destination. - * @param options The navigation options. + * @param options The navigation options. See [[History.NavigationOptions]] for all available options. */ navigate(fragment: string, options?: any): boolean { if (!this.isConfigured && this.parent) { @@ -1312,7 +1375,7 @@ export class Router { * * @param route The name of the route to use when generating the navigation location. * @param params The route parameters to be used when populating the route pattern. - * @param options The navigation options. + * @param options The navigation options. See [[History.NavigationOptions]] for all available options. */ navigateToRoute(route: string, params?: any, options?: any): boolean { let path = this.generate(route, params); @@ -1344,6 +1407,7 @@ export class Router { * * @param name The name of the route whose pattern should be used to generate the fragment. * @param params The route params to be used to populate the route pattern. + * @param options If options.absolute = true, then absolute url will be generated; otherwise, it will be relative url. * @returns {string} A string containing the generated URL fragment. */ generate(name: string, params?: any, options?: any = {}): string { @@ -1510,6 +1574,20 @@ export class Router { } } + /** + * Sets the default configuration for the view ports. This specifies how to + * populate a view port for which no module is specified. The default is + * an empty view/view-model pair. + */ + useViewPortDefaults(viewPortDefaults: any) { + for (let viewPortName in viewPortDefaults) { + let viewPortConfig = viewPortDefaults[viewPortName]; + this.viewPortDefaults[viewPortName] = { + moduleId: viewPortConfig.moduleId + }; + } + } + _refreshBaseUrl(): void { if (this.parent) { let baseUrl = this.parent.currentInstruction.getBaseUrl(); @@ -1979,7 +2057,7 @@ function determineWhatToLoad(navigationInstruction: NavigationInstruction, toLoa } function loadRoute(routeLoader: RouteLoader, navigationInstruction: NavigationInstruction, viewPortPlan: any) { - let moduleId = viewPortPlan.config.moduleId; + let moduleId = viewPortPlan.config ? viewPortPlan.config.moduleId : null; return loadComponent(routeLoader, navigationInstruction, viewPortPlan.config).then((component) => { let viewPortInstruction = navigationInstruction.addViewPortInstruction( @@ -2250,6 +2328,25 @@ export class AppRouter extends Router { } this.isNavigating = true; + + let navtracker: number = this.history.getState('NavigationTracker'); + if (!navtracker && !this.currentNavigationTracker) { + this.isNavigatingFirst = true; + this.isNavigatingNew = true; + } else if (!navtracker) { + this.isNavigatingNew = true; + } else if (!this.currentNavigationTracker) { + this.isNavigatingRefresh = true; + } else if (this.currentNavigationTracker < navtracker) { + this.isNavigatingForward = true; + } else if (this.currentNavigationTracker > navtracker) { + this.isNavigatingBack = true; + } if (!navtracker) { + navtracker = Date.now(); + this.history.setState('NavigationTracker', navtracker); + } + this.currentNavigationTracker = navtracker; + instruction.previousInstruction = this.currentInstruction; if (!instructionCount) { @@ -2329,6 +2426,11 @@ function resolveInstruction(instruction, result, isInnerInstruction, router) { router.isNavigating = false; router.isExplicitNavigation = false; router.isExplicitNavigationBack = false; + router.isNavigatingFirst = false; + router.isNavigatingNew = false; + router.isNavigatingRefresh = false; + router.isNavigatingForward = false; + router.isNavigatingBack = false; let eventName; diff --git a/dist/commonjs/aurelia-router.js b/dist/commonjs/aurelia-router.js index 02d39a4d..01a87d2f 100644 --- a/dist/commonjs/aurelia-router.js +++ b/dist/commonjs/aurelia-router.js @@ -304,17 +304,15 @@ var NavigationInstruction = exports.NavigationInstruction = function () { if (viewPortInstruction.strategy === activationStrategy.replace) { if (viewPortInstruction.childNavigationInstruction && viewPortInstruction.childNavigationInstruction.parentCatchHandler) { - loads.push(viewPortInstruction.childNavigationInstruction._commitChanges()); + loads.push(viewPortInstruction.childNavigationInstruction._commitChanges(waitToSwap)); } else { if (waitToSwap) { delaySwaps.push({ viewPort: viewPort, viewPortInstruction: viewPortInstruction }); } loads.push(viewPort.process(viewPortInstruction, waitToSwap).then(function (x) { if (viewPortInstruction.childNavigationInstruction) { - return viewPortInstruction.childNavigationInstruction._commitChanges(); + return viewPortInstruction.childNavigationInstruction._commitChanges(waitToSwap); } - - return undefined; })); } } else { @@ -507,6 +505,11 @@ var RouterConfiguration = exports.RouterConfiguration = function () { return this.mapRoute(route); }; + RouterConfiguration.prototype.useViewPortDefaults = function useViewPortDefaults(viewPortConfig) { + this.viewPortDefaults = viewPortConfig; + return this; + }; + RouterConfiguration.prototype.mapRoute = function mapRoute(config) { this.instructions.push(function (router) { var routeConfigs = []; @@ -559,6 +562,10 @@ var RouterConfiguration = exports.RouterConfiguration = function () { router.fallbackRoute = this._fallbackRoute; } + if (this.viewPortDefaults) { + router.useViewPortDefaults(this.viewPortDefaults); + } + router.options = this.options; var pipelineSteps = this.pipelineSteps; @@ -603,9 +610,7 @@ var BuildNavigationPlanStep = exports.BuildNavigationPlanStep = function () { }(); function _buildNavigationPlan(instruction, forceLifecycleMinimum) { - var prev = instruction.previousInstruction; var config = instruction.config; - var plan = {}; if ('redirect' in config) { var redirectLocation = _resolveUrl(config.redirect, getInstructionBaseUrl(instruction)); @@ -616,15 +621,20 @@ function _buildNavigationPlan(instruction, forceLifecycleMinimum) { return Promise.reject(new Redirect(redirectLocation)); } + var prev = instruction.previousInstruction; + var plan = {}; + var defaults = instruction.router.viewPortDefaults; + if (prev) { var newParams = hasDifferentParameterValues(prev, instruction); var pending = []; var _loop2 = function _loop2(viewPortName) { var prevViewPortInstruction = prev.viewPortInstructions[viewPortName]; - var nextViewPortConfig = config.viewPorts[viewPortName]; - - if (!nextViewPortConfig) throw new Error('Invalid Route Config: Configuration for viewPort "' + viewPortName + '" was not found for route: "' + instruction.config.route + '."'); + var nextViewPortConfig = viewPortName in config.viewPorts ? config.viewPorts[viewPortName] : prevViewPortInstruction; + if (nextViewPortConfig.moduleId === null && viewPortName in instruction.router.viewPortDefaults) { + nextViewPortConfig = defaults[viewPortName]; + } var viewPortPlan = plan[viewPortName] = { name: viewPortName, @@ -671,10 +681,14 @@ function _buildNavigationPlan(instruction, forceLifecycleMinimum) { } for (var viewPortName in config.viewPorts) { + var viewPortConfig = config.viewPorts[viewPortName]; + if (viewPortConfig.moduleId === null && viewPortName in instruction.router.viewPortDefaults) { + viewPortConfig = defaults[viewPortName]; + } plan[viewPortName] = { name: viewPortName, strategy: activationStrategy.replace, - config: instruction.config.viewPorts[viewPortName] + config: viewPortConfig }; } @@ -748,6 +762,7 @@ var Router = exports.Router = function () { this.parent = null; this.options = {}; + this.viewPortDefaults = {}; this.transformTitle = function (title) { if (_this3.parent) { @@ -771,8 +786,14 @@ var Router = exports.Router = function () { this.isNavigating = false; this.isExplicitNavigation = false; this.isExplicitNavigationBack = false; + this.isNavigatingFirst = false; + this.isNavigatingNew = false; + this.isNavigatingRefresh = false; + this.isNavigatingForward = false; + this.isNavigatingBack = false; this.navigation = []; this.currentInstruction = null; + this.viewPortDefaults = {}; this._fallbackOrder = 100; this._recognizer = new _aureliaRouteRecognizer.RouteRecognizer(); this._childRecognizer = new _aureliaRouteRecognizer.RouteRecognizer(); @@ -974,6 +995,15 @@ var Router = exports.Router = function () { } }; + Router.prototype.useViewPortDefaults = function useViewPortDefaults(viewPortDefaults) { + for (var viewPortName in viewPortDefaults) { + var viewPortConfig = viewPortDefaults[viewPortName]; + this.viewPortDefaults[viewPortName] = { + moduleId: viewPortConfig.moduleId + }; + } + }; + Router.prototype._refreshBaseUrl = function _refreshBaseUrl() { if (this.parent) { var baseUrl = this.parent.currentInstruction.getBaseUrl(); @@ -1474,7 +1504,7 @@ function determineWhatToLoad(navigationInstruction) { } function loadRoute(routeLoader, navigationInstruction, viewPortPlan) { - var moduleId = viewPortPlan.config.moduleId; + var moduleId = viewPortPlan.config ? viewPortPlan.config.moduleId : null; return loadComponent(routeLoader, navigationInstruction, viewPortPlan.config).then(function (component) { var viewPortInstruction = navigationInstruction.addViewPortInstruction(viewPortPlan.name, viewPortPlan.strategy, moduleId, component); @@ -1728,6 +1758,25 @@ var AppRouter = exports.AppRouter = function (_Router) { } _this14.isNavigating = true; + + var navtracker = _this14.history.getState('NavigationTracker'); + if (!navtracker && !_this14.currentNavigationTracker) { + _this14.isNavigatingFirst = true; + _this14.isNavigatingNew = true; + } else if (!navtracker) { + _this14.isNavigatingNew = true; + } else if (!_this14.currentNavigationTracker) { + _this14.isNavigatingRefresh = true; + } else if (_this14.currentNavigationTracker < navtracker) { + _this14.isNavigatingForward = true; + } else if (_this14.currentNavigationTracker > navtracker) { + _this14.isNavigatingBack = true; + }if (!navtracker) { + navtracker = Date.now(); + _this14.history.setState('NavigationTracker', navtracker); + } + _this14.currentNavigationTracker = navtracker; + instruction.previousInstruction = _this14.currentInstruction; if (!instructionCount) { @@ -1810,6 +1859,11 @@ function resolveInstruction(instruction, result, isInnerInstruction, router) { router.isNavigating = false; router.isExplicitNavigation = false; router.isExplicitNavigationBack = false; + router.isNavigatingFirst = false; + router.isNavigatingNew = false; + router.isNavigatingRefresh = false; + router.isNavigatingForward = false; + router.isNavigatingBack = false; var eventName = void 0; diff --git a/dist/es2015/aurelia-router.js b/dist/es2015/aurelia-router.js index 0ad5a318..a25220b0 100644 --- a/dist/es2015/aurelia-router.js +++ b/dist/es2015/aurelia-router.js @@ -252,17 +252,15 @@ export let NavigationInstruction = class NavigationInstruction { if (viewPortInstruction.strategy === activationStrategy.replace) { if (viewPortInstruction.childNavigationInstruction && viewPortInstruction.childNavigationInstruction.parentCatchHandler) { - loads.push(viewPortInstruction.childNavigationInstruction._commitChanges()); + loads.push(viewPortInstruction.childNavigationInstruction._commitChanges(waitToSwap)); } else { if (waitToSwap) { delaySwaps.push({ viewPort, viewPortInstruction }); } loads.push(viewPort.process(viewPortInstruction, waitToSwap).then(x => { if (viewPortInstruction.childNavigationInstruction) { - return viewPortInstruction.childNavigationInstruction._commitChanges(); + return viewPortInstruction.childNavigationInstruction._commitChanges(waitToSwap); } - - return undefined; })); } } else { @@ -425,6 +423,11 @@ export let RouterConfiguration = class RouterConfiguration { return this.mapRoute(route); } + useViewPortDefaults(viewPortConfig) { + this.viewPortDefaults = viewPortConfig; + return this; + } + mapRoute(config) { this.instructions.push(router => { let routeConfigs = []; @@ -477,6 +480,10 @@ export let RouterConfiguration = class RouterConfiguration { router.fallbackRoute = this._fallbackRoute; } + if (this.viewPortDefaults) { + router.useViewPortDefaults(this.viewPortDefaults); + } + router.options = this.options; let pipelineSteps = this.pipelineSteps; @@ -510,9 +517,7 @@ export let BuildNavigationPlanStep = class BuildNavigationPlanStep { }; export function _buildNavigationPlan(instruction, forceLifecycleMinimum) { - let prev = instruction.previousInstruction; let config = instruction.config; - let plan = {}; if ('redirect' in config) { let redirectLocation = _resolveUrl(config.redirect, getInstructionBaseUrl(instruction)); @@ -523,15 +528,20 @@ export function _buildNavigationPlan(instruction, forceLifecycleMinimum) { return Promise.reject(new Redirect(redirectLocation)); } + let prev = instruction.previousInstruction; + let plan = {}; + let defaults = instruction.router.viewPortDefaults; + if (prev) { let newParams = hasDifferentParameterValues(prev, instruction); let pending = []; for (let viewPortName in prev.viewPortInstructions) { let prevViewPortInstruction = prev.viewPortInstructions[viewPortName]; - let nextViewPortConfig = config.viewPorts[viewPortName]; - - if (!nextViewPortConfig) throw new Error(`Invalid Route Config: Configuration for viewPort "${viewPortName}" was not found for route: "${instruction.config.route}."`); + let nextViewPortConfig = viewPortName in config.viewPorts ? config.viewPorts[viewPortName] : prevViewPortInstruction; + if (nextViewPortConfig.moduleId === null && viewPortName in instruction.router.viewPortDefaults) { + nextViewPortConfig = defaults[viewPortName]; + } let viewPortPlan = plan[viewPortName] = { name: viewPortName, @@ -570,10 +580,14 @@ export function _buildNavigationPlan(instruction, forceLifecycleMinimum) { } for (let viewPortName in config.viewPorts) { + let viewPortConfig = config.viewPorts[viewPortName]; + if (viewPortConfig.moduleId === null && viewPortName in instruction.router.viewPortDefaults) { + viewPortConfig = defaults[viewPortName]; + } plan[viewPortName] = { name: viewPortName, strategy: activationStrategy.replace, - config: instruction.config.viewPorts[viewPortName] + config: viewPortConfig }; } @@ -643,6 +657,7 @@ export let Router = class Router { constructor(container, history) { this.parent = null; this.options = {}; + this.viewPortDefaults = {}; this.transformTitle = title => { if (this.parent) { @@ -664,8 +679,14 @@ export let Router = class Router { this.isNavigating = false; this.isExplicitNavigation = false; this.isExplicitNavigationBack = false; + this.isNavigatingFirst = false; + this.isNavigatingNew = false; + this.isNavigatingRefresh = false; + this.isNavigatingForward = false; + this.isNavigatingBack = false; this.navigation = []; this.currentInstruction = null; + this.viewPortDefaults = {}; this._fallbackOrder = 100; this._recognizer = new RouteRecognizer(); this._childRecognizer = new RouteRecognizer(); @@ -863,6 +884,15 @@ export let Router = class Router { } } + useViewPortDefaults(viewPortDefaults) { + for (let viewPortName in viewPortDefaults) { + let viewPortConfig = viewPortDefaults[viewPortName]; + this.viewPortDefaults[viewPortName] = { + moduleId: viewPortConfig.moduleId + }; + } + } + _refreshBaseUrl() { if (this.parent) { let baseUrl = this.parent.currentInstruction.getBaseUrl(); @@ -1292,7 +1322,7 @@ function determineWhatToLoad(navigationInstruction, toLoad = []) { } function loadRoute(routeLoader, navigationInstruction, viewPortPlan) { - let moduleId = viewPortPlan.config.moduleId; + let moduleId = viewPortPlan.config ? viewPortPlan.config.moduleId : null; return loadComponent(routeLoader, navigationInstruction, viewPortPlan.config).then(component => { let viewPortInstruction = navigationInstruction.addViewPortInstruction(viewPortPlan.name, viewPortPlan.strategy, moduleId, component); @@ -1501,6 +1531,25 @@ export let AppRouter = class AppRouter extends Router { } this.isNavigating = true; + + let navtracker = this.history.getState('NavigationTracker'); + if (!navtracker && !this.currentNavigationTracker) { + this.isNavigatingFirst = true; + this.isNavigatingNew = true; + } else if (!navtracker) { + this.isNavigatingNew = true; + } else if (!this.currentNavigationTracker) { + this.isNavigatingRefresh = true; + } else if (this.currentNavigationTracker < navtracker) { + this.isNavigatingForward = true; + } else if (this.currentNavigationTracker > navtracker) { + this.isNavigatingBack = true; + }if (!navtracker) { + navtracker = Date.now(); + this.history.setState('NavigationTracker', navtracker); + } + this.currentNavigationTracker = navtracker; + instruction.previousInstruction = this.currentInstruction; if (!instructionCount) { @@ -1575,6 +1624,11 @@ function resolveInstruction(instruction, result, isInnerInstruction, router) { router.isNavigating = false; router.isExplicitNavigation = false; router.isExplicitNavigationBack = false; + router.isNavigatingFirst = false; + router.isNavigatingNew = false; + router.isNavigatingRefresh = false; + router.isNavigatingForward = false; + router.isNavigatingBack = false; let eventName; diff --git a/dist/native-modules/aurelia-router.js b/dist/native-modules/aurelia-router.js index 3fa5f8e1..9b46dd22 100644 --- a/dist/native-modules/aurelia-router.js +++ b/dist/native-modules/aurelia-router.js @@ -283,17 +283,15 @@ export var NavigationInstruction = function () { if (viewPortInstruction.strategy === activationStrategy.replace) { if (viewPortInstruction.childNavigationInstruction && viewPortInstruction.childNavigationInstruction.parentCatchHandler) { - loads.push(viewPortInstruction.childNavigationInstruction._commitChanges()); + loads.push(viewPortInstruction.childNavigationInstruction._commitChanges(waitToSwap)); } else { if (waitToSwap) { delaySwaps.push({ viewPort: viewPort, viewPortInstruction: viewPortInstruction }); } loads.push(viewPort.process(viewPortInstruction, waitToSwap).then(function (x) { if (viewPortInstruction.childNavigationInstruction) { - return viewPortInstruction.childNavigationInstruction._commitChanges(); + return viewPortInstruction.childNavigationInstruction._commitChanges(waitToSwap); } - - return undefined; })); } } else { @@ -486,6 +484,11 @@ export var RouterConfiguration = function () { return this.mapRoute(route); }; + RouterConfiguration.prototype.useViewPortDefaults = function useViewPortDefaults(viewPortConfig) { + this.viewPortDefaults = viewPortConfig; + return this; + }; + RouterConfiguration.prototype.mapRoute = function mapRoute(config) { this.instructions.push(function (router) { var routeConfigs = []; @@ -538,6 +541,10 @@ export var RouterConfiguration = function () { router.fallbackRoute = this._fallbackRoute; } + if (this.viewPortDefaults) { + router.useViewPortDefaults(this.viewPortDefaults); + } + router.options = this.options; var pipelineSteps = this.pipelineSteps; @@ -582,9 +589,7 @@ export var BuildNavigationPlanStep = function () { }(); export function _buildNavigationPlan(instruction, forceLifecycleMinimum) { - var prev = instruction.previousInstruction; var config = instruction.config; - var plan = {}; if ('redirect' in config) { var redirectLocation = _resolveUrl(config.redirect, getInstructionBaseUrl(instruction)); @@ -595,15 +600,20 @@ export function _buildNavigationPlan(instruction, forceLifecycleMinimum) { return Promise.reject(new Redirect(redirectLocation)); } + var prev = instruction.previousInstruction; + var plan = {}; + var defaults = instruction.router.viewPortDefaults; + if (prev) { var newParams = hasDifferentParameterValues(prev, instruction); var pending = []; var _loop2 = function _loop2(viewPortName) { var prevViewPortInstruction = prev.viewPortInstructions[viewPortName]; - var nextViewPortConfig = config.viewPorts[viewPortName]; - - if (!nextViewPortConfig) throw new Error('Invalid Route Config: Configuration for viewPort "' + viewPortName + '" was not found for route: "' + instruction.config.route + '."'); + var nextViewPortConfig = viewPortName in config.viewPorts ? config.viewPorts[viewPortName] : prevViewPortInstruction; + if (nextViewPortConfig.moduleId === null && viewPortName in instruction.router.viewPortDefaults) { + nextViewPortConfig = defaults[viewPortName]; + } var viewPortPlan = plan[viewPortName] = { name: viewPortName, @@ -650,10 +660,14 @@ export function _buildNavigationPlan(instruction, forceLifecycleMinimum) { } for (var viewPortName in config.viewPorts) { + var viewPortConfig = config.viewPorts[viewPortName]; + if (viewPortConfig.moduleId === null && viewPortName in instruction.router.viewPortDefaults) { + viewPortConfig = defaults[viewPortName]; + } plan[viewPortName] = { name: viewPortName, strategy: activationStrategy.replace, - config: instruction.config.viewPorts[viewPortName] + config: viewPortConfig }; } @@ -727,6 +741,7 @@ export var Router = function () { this.parent = null; this.options = {}; + this.viewPortDefaults = {}; this.transformTitle = function (title) { if (_this3.parent) { @@ -750,8 +765,14 @@ export var Router = function () { this.isNavigating = false; this.isExplicitNavigation = false; this.isExplicitNavigationBack = false; + this.isNavigatingFirst = false; + this.isNavigatingNew = false; + this.isNavigatingRefresh = false; + this.isNavigatingForward = false; + this.isNavigatingBack = false; this.navigation = []; this.currentInstruction = null; + this.viewPortDefaults = {}; this._fallbackOrder = 100; this._recognizer = new RouteRecognizer(); this._childRecognizer = new RouteRecognizer(); @@ -953,6 +974,15 @@ export var Router = function () { } }; + Router.prototype.useViewPortDefaults = function useViewPortDefaults(viewPortDefaults) { + for (var viewPortName in viewPortDefaults) { + var viewPortConfig = viewPortDefaults[viewPortName]; + this.viewPortDefaults[viewPortName] = { + moduleId: viewPortConfig.moduleId + }; + } + }; + Router.prototype._refreshBaseUrl = function _refreshBaseUrl() { if (this.parent) { var baseUrl = this.parent.currentInstruction.getBaseUrl(); @@ -1453,7 +1483,7 @@ function determineWhatToLoad(navigationInstruction) { } function loadRoute(routeLoader, navigationInstruction, viewPortPlan) { - var moduleId = viewPortPlan.config.moduleId; + var moduleId = viewPortPlan.config ? viewPortPlan.config.moduleId : null; return loadComponent(routeLoader, navigationInstruction, viewPortPlan.config).then(function (component) { var viewPortInstruction = navigationInstruction.addViewPortInstruction(viewPortPlan.name, viewPortPlan.strategy, moduleId, component); @@ -1707,6 +1737,25 @@ export var AppRouter = function (_Router) { } _this14.isNavigating = true; + + var navtracker = _this14.history.getState('NavigationTracker'); + if (!navtracker && !_this14.currentNavigationTracker) { + _this14.isNavigatingFirst = true; + _this14.isNavigatingNew = true; + } else if (!navtracker) { + _this14.isNavigatingNew = true; + } else if (!_this14.currentNavigationTracker) { + _this14.isNavigatingRefresh = true; + } else if (_this14.currentNavigationTracker < navtracker) { + _this14.isNavigatingForward = true; + } else if (_this14.currentNavigationTracker > navtracker) { + _this14.isNavigatingBack = true; + }if (!navtracker) { + navtracker = Date.now(); + _this14.history.setState('NavigationTracker', navtracker); + } + _this14.currentNavigationTracker = navtracker; + instruction.previousInstruction = _this14.currentInstruction; if (!instructionCount) { @@ -1789,6 +1838,11 @@ function resolveInstruction(instruction, result, isInnerInstruction, router) { router.isNavigating = false; router.isExplicitNavigation = false; router.isExplicitNavigationBack = false; + router.isNavigatingFirst = false; + router.isNavigatingNew = false; + router.isNavigatingRefresh = false; + router.isNavigatingForward = false; + router.isNavigatingBack = false; var eventName = void 0; diff --git a/dist/system/aurelia-router.js b/dist/system/aurelia-router.js index 307864c1..5d12e1e0 100644 --- a/dist/system/aurelia-router.js +++ b/dist/system/aurelia-router.js @@ -101,9 +101,7 @@ System.register(['aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depende _export('isNavigationCommand', isNavigationCommand); function _buildNavigationPlan(instruction, forceLifecycleMinimum) { - var prev = instruction.previousInstruction; var config = instruction.config; - var plan = {}; if ('redirect' in config) { var redirectLocation = _resolveUrl(config.redirect, getInstructionBaseUrl(instruction)); @@ -114,15 +112,20 @@ System.register(['aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depende return Promise.reject(new Redirect(redirectLocation)); } + var prev = instruction.previousInstruction; + var plan = {}; + var defaults = instruction.router.viewPortDefaults; + if (prev) { var newParams = hasDifferentParameterValues(prev, instruction); var pending = []; var _loop2 = function _loop2(viewPortName) { var prevViewPortInstruction = prev.viewPortInstructions[viewPortName]; - var nextViewPortConfig = config.viewPorts[viewPortName]; - - if (!nextViewPortConfig) throw new Error('Invalid Route Config: Configuration for viewPort "' + viewPortName + '" was not found for route: "' + instruction.config.route + '."'); + var nextViewPortConfig = viewPortName in config.viewPorts ? config.viewPorts[viewPortName] : prevViewPortInstruction; + if (nextViewPortConfig.moduleId === null && viewPortName in instruction.router.viewPortDefaults) { + nextViewPortConfig = defaults[viewPortName]; + } var viewPortPlan = plan[viewPortName] = { name: viewPortName, @@ -169,10 +172,14 @@ System.register(['aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depende } for (var viewPortName in config.viewPorts) { + var viewPortConfig = config.viewPorts[viewPortName]; + if (viewPortConfig.moduleId === null && viewPortName in instruction.router.viewPortDefaults) { + viewPortConfig = defaults[viewPortName]; + } plan[viewPortName] = { name: viewPortName, strategy: activationStrategy.replace, - config: instruction.config.viewPorts[viewPortName] + config: viewPortConfig }; } @@ -502,7 +509,7 @@ System.register(['aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depende } function loadRoute(routeLoader, navigationInstruction, viewPortPlan) { - var moduleId = viewPortPlan.config.moduleId; + var moduleId = viewPortPlan.config ? viewPortPlan.config.moduleId : null; return loadComponent(routeLoader, navigationInstruction, viewPortPlan.config).then(function (component) { var viewPortInstruction = navigationInstruction.addViewPortInstruction(viewPortPlan.name, viewPortPlan.strategy, moduleId, component); @@ -587,6 +594,11 @@ System.register(['aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depende router.isNavigating = false; router.isExplicitNavigation = false; router.isExplicitNavigationBack = false; + router.isNavigatingFirst = false; + router.isNavigatingNew = false; + router.isNavigatingRefresh = false; + router.isNavigatingForward = false; + router.isNavigatingBack = false; var eventName = void 0; @@ -879,17 +891,15 @@ System.register(['aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depende if (viewPortInstruction.strategy === activationStrategy.replace) { if (viewPortInstruction.childNavigationInstruction && viewPortInstruction.childNavigationInstruction.parentCatchHandler) { - loads.push(viewPortInstruction.childNavigationInstruction._commitChanges()); + loads.push(viewPortInstruction.childNavigationInstruction._commitChanges(waitToSwap)); } else { if (waitToSwap) { delaySwaps.push({ viewPort: viewPort, viewPortInstruction: viewPortInstruction }); } loads.push(viewPort.process(viewPortInstruction, waitToSwap).then(function (x) { if (viewPortInstruction.childNavigationInstruction) { - return viewPortInstruction.childNavigationInstruction._commitChanges(); + return viewPortInstruction.childNavigationInstruction._commitChanges(waitToSwap); } - - return undefined; })); } } else { @@ -1081,6 +1091,11 @@ System.register(['aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depende return this.mapRoute(route); }; + RouterConfiguration.prototype.useViewPortDefaults = function useViewPortDefaults(viewPortConfig) { + this.viewPortDefaults = viewPortConfig; + return this; + }; + RouterConfiguration.prototype.mapRoute = function mapRoute(config) { this.instructions.push(function (router) { var routeConfigs = []; @@ -1133,6 +1148,10 @@ System.register(['aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depende router.fallbackRoute = this._fallbackRoute; } + if (this.viewPortDefaults) { + router.useViewPortDefaults(this.viewPortDefaults); + } + router.options = this.options; var pipelineSteps = this.pipelineSteps; @@ -1190,6 +1209,7 @@ System.register(['aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depende this.parent = null; this.options = {}; + this.viewPortDefaults = {}; this.transformTitle = function (title) { if (_this3.parent) { @@ -1213,8 +1233,14 @@ System.register(['aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depende this.isNavigating = false; this.isExplicitNavigation = false; this.isExplicitNavigationBack = false; + this.isNavigatingFirst = false; + this.isNavigatingNew = false; + this.isNavigatingRefresh = false; + this.isNavigatingForward = false; + this.isNavigatingBack = false; this.navigation = []; this.currentInstruction = null; + this.viewPortDefaults = {}; this._fallbackOrder = 100; this._recognizer = new RouteRecognizer(); this._childRecognizer = new RouteRecognizer(); @@ -1416,6 +1442,15 @@ System.register(['aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depende } }; + Router.prototype.useViewPortDefaults = function useViewPortDefaults(viewPortDefaults) { + for (var viewPortName in viewPortDefaults) { + var viewPortConfig = viewPortDefaults[viewPortName]; + this.viewPortDefaults[viewPortName] = { + moduleId: viewPortConfig.moduleId + }; + } + }; + Router.prototype._refreshBaseUrl = function _refreshBaseUrl() { if (this.parent) { var baseUrl = this.parent.currentInstruction.getBaseUrl(); @@ -1873,6 +1908,25 @@ System.register(['aurelia-logging', 'aurelia-route-recognizer', 'aurelia-depende } _this14.isNavigating = true; + + var navtracker = _this14.history.getState('NavigationTracker'); + if (!navtracker && !_this14.currentNavigationTracker) { + _this14.isNavigatingFirst = true; + _this14.isNavigatingNew = true; + } else if (!navtracker) { + _this14.isNavigatingNew = true; + } else if (!_this14.currentNavigationTracker) { + _this14.isNavigatingRefresh = true; + } else if (_this14.currentNavigationTracker < navtracker) { + _this14.isNavigatingForward = true; + } else if (_this14.currentNavigationTracker > navtracker) { + _this14.isNavigatingBack = true; + }if (!navtracker) { + navtracker = Date.now(); + _this14.history.setState('NavigationTracker', navtracker); + } + _this14.currentNavigationTracker = navtracker; + instruction.previousInstruction = _this14.currentInstruction; if (!instructionCount) { diff --git a/doc/CHANGELOG.md b/doc/CHANGELOG.md index 826f3050..953d49ef 100644 --- a/doc/CHANGELOG.md +++ b/doc/CHANGELOG.md @@ -1,3 +1,21 @@ + +# [1.5.0](https://github.com/aurelia/router/compare/1.4.0...1.5.0) (2018-01-15) + + +### Bug Fixes + +* **navigation-instruction:** Wait to swap child routes ([1432234](https://github.com/aurelia/router/commit/1432234)) + + +### Features + +* **router:** Enhance optional view port feature ([bcf4e33](https://github.com/aurelia/router/commit/bcf4e33)) +* **router:** optional viewports ([8878b45](https://github.com/aurelia/router/commit/8878b45)) +* **router:** viewport defaults ([0bfc4bc](https://github.com/aurelia/router/commit/0bfc4bc)), closes [aurelia/router#482](https://github.com/aurelia/router/issues/482) +* **router config:** ignoreUnknownRoutes option ([811959b](https://github.com/aurelia/router/commit/811959b)) + + + # [1.4.0](https://github.com/aurelia/router/compare/1.3.0...1.4.0) (2017-10-02) diff --git a/doc/api.json b/doc/api.json index 43e0f85c..9198fd44 100644 --- a/doc/api.json +++ b/doc/api.json @@ -1 +1 @@ -{"name":"aurelia-router","children":[{"id":317,"name":"ActivateNextStep","kind":128,"kindString":"Class","flags":{"isExported":true},"children":[{"id":318,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":319,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":320,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":321,"name":"next","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Function"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":872,"character":5}]}],"groups":[{"title":"Methods","kind":2048,"children":[318]}],"sources":[{"fileName":"aurelia-router.d.ts","line":871,"character":37}]},{"id":356,"name":"AppRouter","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"The main application router."},"children":[{"id":359,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"signatures":[{"id":360,"name":"new AppRouter","kind":16384,"kindString":"Constructor signature","flags":{},"parameters":[{"id":361,"name":"container","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Container"}},{"id":362,"name":"history","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"History"}},{"id":363,"name":"pipelineProvider","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"PipelineProvider","id":338}},{"id":364,"name":"events","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"EventAggregator"}}],"type":{"type":"reference","name":"AppRouter","id":356},"overwrites":{"type":"reference","name":"Router.__constructor","id":244}}],"sources":[{"fileName":"aurelia-router.d.ts","line":915,"character":23}],"overwrites":{"type":"reference","name":"Router.__constructor","id":244}},{"id":383,"name":"baseUrl","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The [[Router]]'s current base URL, typically based on the [[Router.currentInstruction]]."},"sources":[{"fileName":"aurelia-router.d.ts","line":693,"character":9}],"type":{"type":"intrinsic","name":"string"},"inheritedFrom":{"type":"reference","name":"Router.baseUrl","id":231}},{"id":379,"name":"container","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":685,"character":11}],"type":{"type":"reference","name":"Container"},"inheritedFrom":{"type":"reference","name":"Router.container","id":227}},{"id":389,"name":"currentInstruction","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The currently active navigation instruction."},"sources":[{"fileName":"aurelia-router.d.ts","line":723,"character":20}],"type":{"type":"reference","name":"NavigationInstruction","id":112},"inheritedFrom":{"type":"reference","name":"Router.currentInstruction","id":237}},{"id":380,"name":"history","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":686,"character":9}],"type":{"type":"reference","name":"History"},"inheritedFrom":{"type":"reference","name":"Router.history","id":228}},{"id":384,"name":"isConfigured","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] has been configured."},"sources":[{"fileName":"aurelia-router.d.ts","line":698,"character":14}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.isConfigured","id":232}},{"id":386,"name":"isExplicitNavigation","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating due to explicit call to navigate function(s)."},"sources":[{"fileName":"aurelia-router.d.ts","line":708,"character":22}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.isExplicitNavigation","id":234}},{"id":387,"name":"isExplicitNavigationBack","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating due to explicit call to navigateBack function."},"sources":[{"fileName":"aurelia-router.d.ts","line":713,"character":26}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.isExplicitNavigationBack","id":235}},{"id":385,"name":"isNavigating","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is currently processing a navigation."},"sources":[{"fileName":"aurelia-router.d.ts","line":703,"character":14}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.isNavigating","id":233}},{"id":396,"name":"isRoot","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Gets a value indicating whether or not this [[Router]] is the root in the router tree. I.e., it has no parent."},"sources":[{"fileName":"aurelia-router.d.ts","line":753,"character":8}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.isRoot","id":250}},{"id":388,"name":"navigation","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The navigation models for routes that specified [[RouteConfig.nav]]."},"sources":[{"fileName":"aurelia-router.d.ts","line":718,"character":12}],"type":{"type":"array","elementType":{"type":"reference","name":"NavModel","id":143}},"inheritedFrom":{"type":"reference","name":"Router.navigation","id":236}},{"id":391,"name":"options","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":729,"character":9}],"type":{"type":"intrinsic","name":"any"},"inheritedFrom":{"type":"reference","name":"Router.options","id":239}},{"id":390,"name":"parent","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The parent router, or null if this instance is not a child router."},"sources":[{"fileName":"aurelia-router.d.ts","line":728,"character":8}],"type":{"type":"reference","name":"Router","id":226},"inheritedFrom":{"type":"reference","name":"Router.parent","id":238}},{"id":382,"name":"routes","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":688,"character":8}],"type":{"type":"array","elementType":{"type":"reference","name":"RouteConfig","id":33}},"inheritedFrom":{"type":"reference","name":"Router.routes","id":230}},{"id":392,"name":"transformTitle","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Extension point to transform the document title before it is built and displayed.\nBy default, child routers delegate to the parent router, and the app router\nreturns the title unchanged."},"sources":[{"fileName":"aurelia-router.d.ts","line":736,"character":16}],"type":{"type":"reflection","declaration":{"id":393,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":394,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":395,"name":"title","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"string"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":736,"character":17}]}},"inheritedFrom":{"type":"reference","name":"Router.transformTitle","id":240}},{"id":381,"name":"viewPorts","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":687,"character":11}],"type":{"type":"reference","name":"Object"},"inheritedFrom":{"type":"reference","name":"Router.viewPorts","id":229}},{"id":374,"name":"activate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":375,"name":"activate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Activates the router. This instructs the router to begin listening for history changes and processing instructions.","tags":[{"tag":"params","text":"options The set of options to activate the router with.\n"}]},"parameters":[{"id":376,"name":"options","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Object"}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":944,"character":10}]},{"id":427,"name":"addRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":428,"name":"addRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Registers a new route with the router."},"parameters":[{"id":429,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The [[RouteConfig]]."},"type":{"type":"reference","name":"RouteConfig","id":33}},{"id":430,"name":"navModel","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The [[NavModel]] to use for the route. May be omitted for single-pattern routes.\n"},"type":{"type":"reference","name":"NavModel","id":143}}],"type":{"type":"intrinsic","name":"void"},"inheritedFrom":{"type":"reference","name":"Router.addRoute","id":285}}],"sources":[{"fileName":"aurelia-router.d.ts","line":828,"character":10}],"inheritedFrom":{"type":"reference","name":"Router.addRoute","id":285}},{"id":399,"name":"configure","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":400,"name":"configure","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Configures the router."},"parameters":[{"id":401,"name":"callbackOrConfig","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The [[RouterConfiguration]] or a callback that takes a [[RouterConfiguration]].\n"},"type":{"type":"union","types":[{"type":"reference","name":"RouterConfiguration","id":181},{"type":"reflection","declaration":{"id":402,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":403,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":404,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":773,"character":51}]}}]}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"void"}]},"inheritedFrom":{"type":"reference","name":"Router.configure","id":257}}],"sources":[{"fileName":"aurelia-router.d.ts","line":773,"character":11}],"inheritedFrom":{"type":"reference","name":"Router.configure","id":257}},{"id":416,"name":"createChild","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":417,"name":"createChild","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Creates a child router of the current router.","returns":"The new child Router.\n"},"parameters":[{"id":418,"name":"container","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The [[Container]] to provide to the child router. Uses the current [[Router]]'s [[Container]] if unspecified."},"type":{"type":"reference","name":"Container"}}],"type":{"type":"reference","name":"Router","id":226},"inheritedFrom":{"type":"reference","name":"Router.createChild","id":274}}],"sources":[{"fileName":"aurelia-router.d.ts","line":804,"character":13}],"inheritedFrom":{"type":"reference","name":"Router.createChild","id":274}},{"id":424,"name":"createNavModel","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":425,"name":"createNavModel","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Creates a [[NavModel]] for the specified route config."},"parameters":[{"id":426,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The route config.\n"},"type":{"type":"reference","name":"RouteConfig","id":33}}],"type":{"type":"reference","name":"NavModel","id":143},"inheritedFrom":{"type":"reference","name":"Router.createNavModel","id":282}}],"sources":[{"fileName":"aurelia-router.d.ts","line":820,"character":16}],"inheritedFrom":{"type":"reference","name":"Router.createNavModel","id":282}},{"id":377,"name":"deactivate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":378,"name":"deactivate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Deactivates the router."},"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":949,"character":12}]},{"id":397,"name":"ensureConfigured","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":398,"name":"ensureConfigured","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Returns a Promise that resolves when the router is configured."},"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"void"}]},"inheritedFrom":{"type":"reference","name":"Router.ensureConfigured","id":255}}],"sources":[{"fileName":"aurelia-router.d.ts","line":766,"character":18}],"inheritedFrom":{"type":"reference","name":"Router.ensureConfigured","id":255}},{"id":419,"name":"generate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":420,"name":"generate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Generates a URL fragment matching the specified route pattern.","returns":"A string containing the generated URL fragment.\n"},"parameters":[{"id":421,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the route whose pattern should be used to generate the fragment."},"type":{"type":"intrinsic","name":"string"}},{"id":422,"name":"params","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The route params to be used to populate the route pattern."},"type":{"type":"intrinsic","name":"any"}},{"id":423,"name":"options","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"string"},"inheritedFrom":{"type":"reference","name":"Router.generate","id":277}}],"sources":[{"fileName":"aurelia-router.d.ts","line":813,"character":10}],"inheritedFrom":{"type":"reference","name":"Router.generate","id":277}},{"id":437,"name":"handleUnknownRoutes","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":438,"name":"handleUnknownRoutes","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Register a handler to use when the incoming URL fragment doesn't match any registered routes."},"parameters":[{"id":439,"name":"config","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The moduleId, or a function that selects the moduleId, or a [[RouteConfig]].\n"},"type":{"type":"union","types":[{"type":"intrinsic","name":"string"},{"type":"reference","name":"Function"},{"type":"reference","name":"RouteConfig","id":33}]}}],"type":{"type":"intrinsic","name":"void"},"inheritedFrom":{"type":"reference","name":"Router.handleUnknownRoutes","id":295}}],"sources":[{"fileName":"aurelia-router.d.ts","line":849,"character":21}],"inheritedFrom":{"type":"reference","name":"Router.handleUnknownRoutes","id":295}},{"id":434,"name":"hasOwnRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":435,"name":"hasOwnRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets a value indicating whether or not this [[Router]] has a route registered with the specified name."},"parameters":[{"id":436,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the route to check.\n"},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.hasOwnRoute","id":292}}],"sources":[{"fileName":"aurelia-router.d.ts","line":842,"character":13}],"inheritedFrom":{"type":"reference","name":"Router.hasOwnRoute","id":292}},{"id":431,"name":"hasRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":432,"name":"hasRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets a value indicating whether or not this [[Router]] or one of its ancestors has a route registered with the specified name."},"parameters":[{"id":433,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the route to check.\n"},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.hasRoute","id":289}}],"sources":[{"fileName":"aurelia-router.d.ts","line":835,"character":10}],"inheritedFrom":{"type":"reference","name":"Router.hasRoute","id":289}},{"id":367,"name":"loadUrl","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":368,"name":"loadUrl","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Loads the specified URL."},"parameters":[{"id":369,"name":"url","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The URL fragment to load.\n"},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"reference","name":"NavigationInstruction","id":112}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":929,"character":9}]},{"id":405,"name":"navigate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":406,"name":"navigate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Navigates to a new location."},"parameters":[{"id":407,"name":"fragment","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The URL fragment to use as the navigation destination."},"type":{"type":"intrinsic","name":"string"}},{"id":408,"name":"options","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The navigation options.\n"},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.navigate","id":263}}],"sources":[{"fileName":"aurelia-router.d.ts","line":781,"character":10}],"inheritedFrom":{"type":"reference","name":"Router.navigate","id":263}},{"id":414,"name":"navigateBack","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":415,"name":"navigateBack","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Navigates back to the most recent location in history."},"type":{"type":"intrinsic","name":"void"},"inheritedFrom":{"type":"reference","name":"Router.navigateBack","id":272}}],"sources":[{"fileName":"aurelia-router.d.ts","line":796,"character":14}],"inheritedFrom":{"type":"reference","name":"Router.navigateBack","id":272}},{"id":409,"name":"navigateToRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":410,"name":"navigateToRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Navigates to a new location corresponding to the route and params specified. Equivallent to [[Router.generate]] followed\nby [[Router.navigate]]."},"parameters":[{"id":411,"name":"route","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the route to use when generating the navigation location."},"type":{"type":"intrinsic","name":"string"}},{"id":412,"name":"params","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The route parameters to be used when populating the route pattern."},"type":{"type":"intrinsic","name":"any"}},{"id":413,"name":"options","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The navigation options.\n"},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.navigateToRoute","id":267}}],"sources":[{"fileName":"aurelia-router.d.ts","line":791,"character":17}],"inheritedFrom":{"type":"reference","name":"Router.navigateToRoute","id":267}},{"id":442,"name":"refreshNavigation","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":443,"name":"refreshNavigation","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Updates the navigation routes with hrefs relative to the current location.\nNote: This method will likely move to a plugin in a future release."},"type":{"type":"intrinsic","name":"void"},"inheritedFrom":{"type":"reference","name":"Router.refreshNavigation","id":300}}],"sources":[{"fileName":"aurelia-router.d.ts","line":860,"character":19}],"inheritedFrom":{"type":"reference","name":"Router.refreshNavigation","id":300}},{"id":370,"name":"registerViewPort","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":371,"name":"registerViewPort","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Registers a viewPort to be used as a rendering target for activated routes."},"parameters":[{"id":372,"name":"viewPort","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The viewPort."},"type":{"type":"intrinsic","name":"any"}},{"id":373,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the viewPort. 'default' if unspecified.\n"},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"any"}]},"overwrites":{"type":"reference","name":"Router.registerViewPort","id":251}}],"sources":[{"fileName":"aurelia-router.d.ts","line":937,"character":18}],"overwrites":{"type":"reference","name":"Router.registerViewPort","id":251}},{"id":365,"name":"reset","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":366,"name":"reset","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Fully resets the router's internal state. Primarily used internally by the framework when multiple calls to setRoot are made.\nUse with caution (actually, avoid using this). Do not use this to simply change your navigation model."},"type":{"type":"intrinsic","name":"any"},"overwrites":{"type":"reference","name":"Router.reset","id":248}}],"sources":[{"fileName":"aurelia-router.d.ts","line":922,"character":7}],"overwrites":{"type":"reference","name":"Router.reset","id":248}},{"id":440,"name":"updateTitle","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":441,"name":"updateTitle","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Updates the document title using the current navigation instruction."},"type":{"type":"intrinsic","name":"void"},"inheritedFrom":{"type":"reference","name":"Router.updateTitle","id":298}}],"sources":[{"fileName":"aurelia-router.d.ts","line":854,"character":13}],"inheritedFrom":{"type":"reference","name":"Router.updateTitle","id":298}},{"id":357,"name":"inject","kind":2048,"kindString":"Method","flags":{"isStatic":true,"isExported":true},"signatures":[{"id":358,"name":"inject","kind":4096,"kindString":"Call signature","flags":{},"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":915,"character":15}]}],"groups":[{"title":"Constructors","kind":512,"children":[359]},{"title":"Properties","kind":1024,"children":[383,379,389,380,384,386,387,385,396,388,391,390,382,392,381]},{"title":"Methods","kind":2048,"children":[374,427,399,416,424,377,397,419,437,434,431,367,405,414,409,442,370,365,440,357]}],"sources":[{"fileName":"aurelia-router.d.ts","line":914,"character":30}],"extendedTypes":[{"type":"reference","name":"Router","id":226}]},{"id":221,"name":"BuildNavigationPlanStep","kind":128,"kindString":"Class","flags":{"isExported":true},"children":[{"id":222,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":223,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":224,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":225,"name":"next","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Function"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":675,"character":5}]}],"groups":[{"title":"Methods","kind":2048,"children":[222]}],"sources":[{"fileName":"aurelia-router.d.ts","line":674,"character":44}]},{"id":307,"name":"CanActivateNextStep","kind":128,"kindString":"Class","flags":{"isExported":true},"children":[{"id":308,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":309,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":310,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":311,"name":"next","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Function"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":866,"character":5}]}],"groups":[{"title":"Methods","kind":2048,"children":[308]}],"sources":[{"fileName":"aurelia-router.d.ts","line":865,"character":40}]},{"id":302,"name":"CanDeactivatePreviousStep","kind":128,"kindString":"Class","flags":{"isExported":true},"children":[{"id":303,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":304,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":305,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":306,"name":"next","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Function"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":863,"character":5}]}],"groups":[{"title":"Methods","kind":2048,"children":[303]}],"sources":[{"fileName":"aurelia-router.d.ts","line":862,"character":46}]},{"id":107,"name":"CommitChangesStep","kind":128,"kindString":"Class","flags":{"isExported":true},"children":[{"id":108,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":109,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":110,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":111,"name":"next","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Function"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":369,"character":5}]}],"groups":[{"title":"Methods","kind":2048,"children":[108]}],"sources":[{"fileName":"aurelia-router.d.ts","line":368,"character":38}]},{"id":312,"name":"DeactivatePreviousStep","kind":128,"kindString":"Class","flags":{"isExported":true},"children":[{"id":313,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":314,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":315,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":316,"name":"next","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Function"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":869,"character":5}]}],"groups":[{"title":"Methods","kind":2048,"children":[313]}],"sources":[{"fileName":"aurelia-router.d.ts","line":868,"character":43}]},{"id":328,"name":"LoadRouteStep","kind":128,"kindString":"Class","flags":{"isExported":true},"children":[{"id":331,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"signatures":[{"id":332,"name":"new LoadRouteStep","kind":16384,"kindString":"Constructor signature","flags":{},"parameters":[{"id":333,"name":"routeLoader","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"RouteLoader","id":322}}],"type":{"type":"reference","name":"LoadRouteStep","id":328}}],"sources":[{"fileName":"aurelia-router.d.ts","line":878,"character":23}]},{"id":334,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":335,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":336,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":337,"name":"next","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Function"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":880,"character":5}]},{"id":329,"name":"inject","kind":2048,"kindString":"Method","flags":{"isStatic":true,"isExported":true},"signatures":[{"id":330,"name":"inject","kind":4096,"kindString":"Call signature","flags":{},"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":878,"character":15}]}],"groups":[{"title":"Constructors","kind":512,"children":[331]},{"title":"Methods","kind":2048,"children":[334,329]}],"sources":[{"fileName":"aurelia-router.d.ts","line":877,"character":34}]},{"id":143,"name":"NavModel","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Class for storing and interacting with a route's navigation settings."},"children":[{"id":151,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"signatures":[{"id":152,"name":"new NavModel","kind":16384,"kindString":"Constructor signature","flags":{},"parameters":[{"id":153,"name":"router","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Router","id":226}},{"id":154,"name":"relativeHref","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"reference","name":"NavModel","id":143}}],"sources":[{"fileName":"aurelia-router.d.ts","line":496,"character":17}]},{"id":149,"name":"config","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The route config."},"sources":[{"fileName":"aurelia-router.d.ts","line":491,"character":8}],"type":{"type":"reference","name":"RouteConfig","id":33}},{"id":146,"name":"href","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"This nav item's absolute href."},"sources":[{"fileName":"aurelia-router.d.ts","line":476,"character":6}],"type":{"type":"intrinsic","name":"string"}},{"id":144,"name":"isActive","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if this nav item is currently active."},"sources":[{"fileName":"aurelia-router.d.ts","line":466,"character":10}],"type":{"type":"intrinsic","name":"boolean"}},{"id":147,"name":"relativeHref","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"This nav item's relative href."},"sources":[{"fileName":"aurelia-router.d.ts","line":481,"character":14}],"type":{"type":"intrinsic","name":"string"}},{"id":150,"name":"router","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The router associated with this navitation model."},"sources":[{"fileName":"aurelia-router.d.ts","line":496,"character":8}],"type":{"type":"reference","name":"Router","id":226}},{"id":148,"name":"settings","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Data attached to the route at configuration time."},"sources":[{"fileName":"aurelia-router.d.ts","line":486,"character":10}],"type":{"type":"intrinsic","name":"any"}},{"id":145,"name":"title","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The title."},"sources":[{"fileName":"aurelia-router.d.ts","line":471,"character":7}],"type":{"type":"intrinsic","name":"string"}},{"id":155,"name":"setTitle","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":156,"name":"setTitle","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Sets the route's title and updates document.title.\n If the a navigation is in progress, the change will be applied\n to document.title when the navigation completes."},"parameters":[{"id":157,"name":"title","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The new title.\n"},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":506,"character":10}]}],"groups":[{"title":"Constructors","kind":512,"children":[151]},{"title":"Properties","kind":1024,"children":[149,146,144,147,150,148,145]},{"title":"Methods","kind":2048,"children":[155]}],"sources":[{"fileName":"aurelia-router.d.ts","line":461,"character":29}]},{"id":112,"name":"NavigationInstruction","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Class used to represent an instruction during a navigation."},"children":[{"id":124,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"signatures":[{"id":125,"name":"new NavigationInstruction","kind":16384,"kindString":"Constructor signature","flags":{},"parameters":[{"id":126,"name":"init","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstructionInit","id":23}}],"type":{"type":"reference","name":"NavigationInstruction","id":112}}],"sources":[{"fileName":"aurelia-router.d.ts","line":422,"character":18}]},{"id":117,"name":"config","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The route config for the route matching this instruction."},"sources":[{"fileName":"aurelia-router.d.ts","line":400,"character":8}],"type":{"type":"reference","name":"RouteConfig","id":33}},{"id":113,"name":"fragment","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The URL fragment."},"sources":[{"fileName":"aurelia-router.d.ts","line":380,"character":10}],"type":{"type":"intrinsic","name":"string"}},{"id":123,"name":"options","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":422,"character":9}],"type":{"type":"reference","name":"Object"}},{"id":115,"name":"params","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Parameters extracted from the route pattern."},"sources":[{"fileName":"aurelia-router.d.ts","line":390,"character":8}],"type":{"type":"intrinsic","name":"any"}},{"id":118,"name":"parentInstruction","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The parent instruction, if this instruction was created by a child router."},"sources":[{"fileName":"aurelia-router.d.ts","line":405,"character":19}],"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":122,"name":"plan","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":421,"character":6}],"type":{"type":"reference","name":"Object"}},{"id":119,"name":"previousInstruction","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The instruction being replaced by this instruction in the current router."},"sources":[{"fileName":"aurelia-router.d.ts","line":410,"character":21}],"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":116,"name":"queryParams","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Parameters extracted from the query string."},"sources":[{"fileName":"aurelia-router.d.ts","line":395,"character":13}],"type":{"type":"intrinsic","name":"any"}},{"id":114,"name":"queryString","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The query string."},"sources":[{"fileName":"aurelia-router.d.ts","line":385,"character":13}],"type":{"type":"intrinsic","name":"string"}},{"id":121,"name":"router","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The router instance."},"sources":[{"fileName":"aurelia-router.d.ts","line":420,"character":8}],"type":{"type":"reference","name":"Router","id":226}},{"id":120,"name":"viewPortInstructions","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"viewPort instructions to used activation."},"sources":[{"fileName":"aurelia-router.d.ts","line":415,"character":22}],"type":{"type":"intrinsic","name":"any"}},{"id":131,"name":"addViewPortInstruction","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":132,"name":"addViewPortInstruction","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a viewPort instruction."},"parameters":[{"id":133,"name":"viewPortName","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}},{"id":134,"name":"strategy","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}},{"id":135,"name":"moduleId","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}},{"id":136,"name":"component","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":439,"character":24}]},{"id":127,"name":"getAllInstructions","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":128,"name":"getAllInstructions","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets an array containing this instruction and all child instructions for the current navigation."},"type":{"type":"reference","name":"Array","typeArguments":[{"type":"reference","name":"NavigationInstruction","id":112}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":428,"character":20}]},{"id":129,"name":"getAllPreviousInstructions","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":130,"name":"getAllPreviousInstructions","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets an array containing the instruction and all child instructions for the previous navigation.\nPrevious instructions are no longer available after navigation completes."},"type":{"type":"reference","name":"Array","typeArguments":[{"type":"reference","name":"NavigationInstruction","id":112}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":434,"character":28}]},{"id":141,"name":"getBaseUrl","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":142,"name":"getBaseUrl","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets the instruction's base URL, accounting for wildcard route parameters."},"type":{"type":"intrinsic","name":"string"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":455,"character":12}]},{"id":137,"name":"getWildCardName","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":138,"name":"getWildCardName","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets the name of the route pattern's wildcard parameter, if applicable."},"type":{"type":"intrinsic","name":"string"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":444,"character":17}]},{"id":139,"name":"getWildcardPath","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":140,"name":"getWildcardPath","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets the path and query string created by filling the route\npattern's wildcard parameter with the matching param."},"type":{"type":"intrinsic","name":"string"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":450,"character":17}]}],"groups":[{"title":"Constructors","kind":512,"children":[124]},{"title":"Properties","kind":1024,"children":[117,113,123,115,118,122,119,116,114,121,120]},{"title":"Methods","kind":2048,"children":[131,127,129,141,137,139]}],"sources":[{"fileName":"aurelia-router.d.ts","line":375,"character":42}]},{"id":99,"name":"Pipeline","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"The class responsible for managing and processing the navigation pipeline."},"children":[{"id":100,"name":"steps","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The pipeline steps."},"sources":[{"fileName":"aurelia-router.d.ts","line":352,"character":7}],"type":{"type":"reference","name":"Array","typeArguments":[{"type":"union","types":[{"type":"reference","name":"Function"},{"type":"reference","name":"PipelineStep","id":13}]}]}},{"id":101,"name":"addStep","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":102,"name":"addStep","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a step to the pipeline."},"parameters":[{"id":103,"name":"step","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The pipeline step.\n"},"type":{"type":"reference","name":"PipelineStep","id":13}}],"type":{"type":"reference","name":"Pipeline","id":99}}],"sources":[{"fileName":"aurelia-router.d.ts","line":359,"character":9}]},{"id":104,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":105,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Runs the pipeline."},"parameters":[{"id":106,"name":"instruction","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The navigation instruction to process.\n"},"type":{"type":"reference","name":"NavigationInstruction","id":112}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"reference","name":"PipelineResult","id":18}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":366,"character":5}]}],"groups":[{"title":"Properties","kind":1024,"children":[100]},{"title":"Methods","kind":2048,"children":[101,104]}],"sources":[{"fileName":"aurelia-router.d.ts","line":347,"character":29}]},{"id":338,"name":"PipelineProvider","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Class responsible for creating the navigation pipeline."},"children":[{"id":341,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"signatures":[{"id":342,"name":"new PipelineProvider","kind":16384,"kindString":"Constructor signature","flags":{},"parameters":[{"id":343,"name":"container","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Container"}}],"type":{"type":"reference","name":"PipelineProvider","id":338}}],"sources":[{"fileName":"aurelia-router.d.ts","line":887,"character":23}]},{"id":346,"name":"addStep","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":347,"name":"addStep","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a step into the pipeline at a known slot location."},"parameters":[{"id":348,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}},{"id":349,"name":"step","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"PipelineStep","id":13}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":898,"character":9}]},{"id":344,"name":"createPipeline","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":345,"name":"createPipeline","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Create the navigation pipeline."},"type":{"type":"reference","name":"Pipeline","id":99}}],"sources":[{"fileName":"aurelia-router.d.ts","line":893,"character":16}]},{"id":350,"name":"removeStep","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":351,"name":"removeStep","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Removes a step from a slot in the pipeline"},"parameters":[{"id":352,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}},{"id":353,"name":"step","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"PipelineStep","id":13}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":903,"character":12}]},{"id":354,"name":"reset","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":355,"name":"reset","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Resets all pipeline slots"},"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":908,"character":7}]},{"id":339,"name":"inject","kind":2048,"kindString":"Method","flags":{"isStatic":true,"isExported":true},"signatures":[{"id":340,"name":"inject","kind":4096,"kindString":"Call signature","flags":{},"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":887,"character":15}]}],"groups":[{"title":"Constructors","kind":512,"children":[341]},{"title":"Methods","kind":2048,"children":[346,344,350,354,339]}],"sources":[{"fileName":"aurelia-router.d.ts","line":886,"character":37}]},{"id":158,"name":"Redirect","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Used during the activation lifecycle to cause a redirect."},"children":[{"id":159,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"comment":{},"signatures":[{"id":160,"name":"new Redirect","kind":16384,"kindString":"Constructor signature","flags":{},"comment":{},"parameters":[{"id":161,"name":"url","kind":32768,"kindString":"Parameter","flags":{},"comment":{"shortText":"The URL fragment to use as the navigation destination."},"type":{"type":"intrinsic","name":"string"}},{"id":162,"name":"options","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"shortText":"The navigation options.\n"},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"reference","name":"Redirect","id":158}}],"sources":[{"fileName":"aurelia-router.d.ts","line":526,"character":31}]},{"id":166,"name":"navigate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":167,"name":"navigate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Called by the navigation pipeline to navigate."},"parameters":[{"id":168,"name":"appRouter","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The router to be redirected.\n"},"type":{"type":"reference","name":"Router","id":226}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":546,"character":10}]},{"id":163,"name":"setRouter","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":164,"name":"setRouter","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Called by the activation system to set the child router."},"parameters":[{"id":165,"name":"router","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The router.\n"},"type":{"type":"reference","name":"Router","id":226}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":539,"character":11}]}],"groups":[{"title":"Constructors","kind":512,"children":[159]},{"title":"Methods","kind":2048,"children":[166,163]}],"sources":[{"fileName":"aurelia-router.d.ts","line":526,"character":29}]},{"id":169,"name":"RedirectToRoute","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Used during the activation lifecycle to cause a redirect to a named route."},"children":[{"id":170,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"comment":{},"signatures":[{"id":171,"name":"new RedirectToRoute","kind":16384,"kindString":"Constructor signature","flags":{},"comment":{},"parameters":[{"id":172,"name":"route","kind":32768,"kindString":"Parameter","flags":{},"comment":{"shortText":"The name of the route."},"type":{"type":"intrinsic","name":"string"}},{"id":173,"name":"params","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"shortText":"The parameters to be sent to the activation method."},"type":{"type":"intrinsic","name":"any"}},{"id":174,"name":"options","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"shortText":"The options to use for navigation.\n"},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"reference","name":"RedirectToRoute","id":169}}],"sources":[{"fileName":"aurelia-router.d.ts","line":552,"character":38}]},{"id":178,"name":"navigate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":179,"name":"navigate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Called by the navigation pipeline to navigate."},"parameters":[{"id":180,"name":"appRouter","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The router to be redirected.\n"},"type":{"type":"reference","name":"Router","id":226}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":573,"character":10}]},{"id":175,"name":"setRouter","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":176,"name":"setRouter","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Called by the activation system to set the child router."},"parameters":[{"id":177,"name":"router","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The router.\n"},"type":{"type":"reference","name":"Router","id":226}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":566,"character":11}]}],"groups":[{"title":"Constructors","kind":512,"children":[170]},{"title":"Methods","kind":2048,"children":[178,175]}],"sources":[{"fileName":"aurelia-router.d.ts","line":552,"character":36}]},{"id":322,"name":"RouteLoader","kind":128,"kindString":"Class","flags":{"isExported":true},"children":[{"id":323,"name":"loadRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":324,"name":"loadRoute","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":325,"name":"router","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"any"}},{"id":326,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"any"}},{"id":327,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":875,"character":11}]}],"groups":[{"title":"Methods","kind":2048,"children":[323]}],"sources":[{"fileName":"aurelia-router.d.ts","line":874,"character":32}]},{"id":226,"name":"Router","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"The primary class responsible for handling routing and navigation.","tags":[{"tag":"class","text":"Router"},{"tag":"constructor","text":"\n"}]},"children":[{"id":244,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"comment":{},"signatures":[{"id":245,"name":"new Router","kind":16384,"kindString":"Constructor signature","flags":{},"comment":{},"parameters":[{"id":246,"name":"container","kind":32768,"kindString":"Parameter","flags":{},"comment":{"shortText":"The [[Container]] to use when child routers."},"type":{"type":"reference","name":"Container"}},{"id":247,"name":"history","kind":32768,"kindString":"Parameter","flags":{},"comment":{"shortText":"The [[History]] implementation to delegate navigation requests to.\n"},"type":{"type":"reference","name":"History"}}],"type":{"type":"reference","name":"Router","id":226}}],"sources":[{"fileName":"aurelia-router.d.ts","line":736,"character":46}]},{"id":231,"name":"baseUrl","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The [[Router]]'s current base URL, typically based on the [[Router.currentInstruction]]."},"sources":[{"fileName":"aurelia-router.d.ts","line":693,"character":9}],"type":{"type":"intrinsic","name":"string"}},{"id":227,"name":"container","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":685,"character":11}],"type":{"type":"reference","name":"Container"}},{"id":237,"name":"currentInstruction","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The currently active navigation instruction."},"sources":[{"fileName":"aurelia-router.d.ts","line":723,"character":20}],"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":228,"name":"history","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":686,"character":9}],"type":{"type":"reference","name":"History"}},{"id":232,"name":"isConfigured","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] has been configured."},"sources":[{"fileName":"aurelia-router.d.ts","line":698,"character":14}],"type":{"type":"intrinsic","name":"boolean"}},{"id":234,"name":"isExplicitNavigation","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating due to explicit call to navigate function(s)."},"sources":[{"fileName":"aurelia-router.d.ts","line":708,"character":22}],"type":{"type":"intrinsic","name":"boolean"}},{"id":235,"name":"isExplicitNavigationBack","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating due to explicit call to navigateBack function."},"sources":[{"fileName":"aurelia-router.d.ts","line":713,"character":26}],"type":{"type":"intrinsic","name":"boolean"}},{"id":233,"name":"isNavigating","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is currently processing a navigation."},"sources":[{"fileName":"aurelia-router.d.ts","line":703,"character":14}],"type":{"type":"intrinsic","name":"boolean"}},{"id":250,"name":"isRoot","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Gets a value indicating whether or not this [[Router]] is the root in the router tree. I.e., it has no parent."},"sources":[{"fileName":"aurelia-router.d.ts","line":753,"character":8}],"type":{"type":"intrinsic","name":"boolean"}},{"id":236,"name":"navigation","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The navigation models for routes that specified [[RouteConfig.nav]]."},"sources":[{"fileName":"aurelia-router.d.ts","line":718,"character":12}],"type":{"type":"array","elementType":{"type":"reference","name":"NavModel","id":143}}},{"id":239,"name":"options","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":729,"character":9}],"type":{"type":"intrinsic","name":"any"}},{"id":238,"name":"parent","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The parent router, or null if this instance is not a child router."},"sources":[{"fileName":"aurelia-router.d.ts","line":728,"character":8}],"type":{"type":"reference","name":"Router","id":226}},{"id":230,"name":"routes","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":688,"character":8}],"type":{"type":"array","elementType":{"type":"reference","name":"RouteConfig","id":33}}},{"id":240,"name":"transformTitle","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Extension point to transform the document title before it is built and displayed.\nBy default, child routers delegate to the parent router, and the app router\nreturns the title unchanged."},"sources":[{"fileName":"aurelia-router.d.ts","line":736,"character":16}],"type":{"type":"reflection","declaration":{"id":241,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":242,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":243,"name":"title","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"string"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":736,"character":17}]}}},{"id":229,"name":"viewPorts","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":687,"character":11}],"type":{"type":"reference","name":"Object"}},{"id":285,"name":"addRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":286,"name":"addRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Registers a new route with the router."},"parameters":[{"id":287,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The [[RouteConfig]]."},"type":{"type":"reference","name":"RouteConfig","id":33}},{"id":288,"name":"navModel","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The [[NavModel]] to use for the route. May be omitted for single-pattern routes.\n"},"type":{"type":"reference","name":"NavModel","id":143}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":828,"character":10}]},{"id":257,"name":"configure","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":258,"name":"configure","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Configures the router."},"parameters":[{"id":259,"name":"callbackOrConfig","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The [[RouterConfiguration]] or a callback that takes a [[RouterConfiguration]].\n"},"type":{"type":"union","types":[{"type":"reference","name":"RouterConfiguration","id":181},{"type":"reflection","declaration":{"id":260,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":261,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":262,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":773,"character":51}]}}]}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"void"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":773,"character":11}]},{"id":274,"name":"createChild","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":275,"name":"createChild","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Creates a child router of the current router.","returns":"The new child Router.\n"},"parameters":[{"id":276,"name":"container","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The [[Container]] to provide to the child router. Uses the current [[Router]]'s [[Container]] if unspecified."},"type":{"type":"reference","name":"Container"}}],"type":{"type":"reference","name":"Router","id":226}}],"sources":[{"fileName":"aurelia-router.d.ts","line":804,"character":13}]},{"id":282,"name":"createNavModel","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":283,"name":"createNavModel","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Creates a [[NavModel]] for the specified route config."},"parameters":[{"id":284,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The route config.\n"},"type":{"type":"reference","name":"RouteConfig","id":33}}],"type":{"type":"reference","name":"NavModel","id":143}}],"sources":[{"fileName":"aurelia-router.d.ts","line":820,"character":16}]},{"id":255,"name":"ensureConfigured","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":256,"name":"ensureConfigured","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Returns a Promise that resolves when the router is configured."},"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"void"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":766,"character":18}]},{"id":277,"name":"generate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":278,"name":"generate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Generates a URL fragment matching the specified route pattern.","returns":"A string containing the generated URL fragment.\n"},"parameters":[{"id":279,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the route whose pattern should be used to generate the fragment."},"type":{"type":"intrinsic","name":"string"}},{"id":280,"name":"params","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The route params to be used to populate the route pattern."},"type":{"type":"intrinsic","name":"any"}},{"id":281,"name":"options","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"string"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":813,"character":10}]},{"id":295,"name":"handleUnknownRoutes","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":296,"name":"handleUnknownRoutes","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Register a handler to use when the incoming URL fragment doesn't match any registered routes."},"parameters":[{"id":297,"name":"config","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The moduleId, or a function that selects the moduleId, or a [[RouteConfig]].\n"},"type":{"type":"union","types":[{"type":"intrinsic","name":"string"},{"type":"reference","name":"Function"},{"type":"reference","name":"RouteConfig","id":33}]}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":849,"character":21}]},{"id":292,"name":"hasOwnRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":293,"name":"hasOwnRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets a value indicating whether or not this [[Router]] has a route registered with the specified name."},"parameters":[{"id":294,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the route to check.\n"},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"boolean"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":842,"character":13}]},{"id":289,"name":"hasRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":290,"name":"hasRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets a value indicating whether or not this [[Router]] or one of its ancestors has a route registered with the specified name."},"parameters":[{"id":291,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the route to check.\n"},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"boolean"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":835,"character":10}]},{"id":263,"name":"navigate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":264,"name":"navigate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Navigates to a new location."},"parameters":[{"id":265,"name":"fragment","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The URL fragment to use as the navigation destination."},"type":{"type":"intrinsic","name":"string"}},{"id":266,"name":"options","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The navigation options.\n"},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"boolean"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":781,"character":10}]},{"id":272,"name":"navigateBack","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":273,"name":"navigateBack","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Navigates back to the most recent location in history."},"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":796,"character":14}]},{"id":267,"name":"navigateToRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":268,"name":"navigateToRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Navigates to a new location corresponding to the route and params specified. Equivallent to [[Router.generate]] followed\nby [[Router.navigate]]."},"parameters":[{"id":269,"name":"route","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the route to use when generating the navigation location."},"type":{"type":"intrinsic","name":"string"}},{"id":270,"name":"params","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The route parameters to be used when populating the route pattern."},"type":{"type":"intrinsic","name":"any"}},{"id":271,"name":"options","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The navigation options.\n"},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"boolean"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":791,"character":17}]},{"id":300,"name":"refreshNavigation","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":301,"name":"refreshNavigation","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Updates the navigation routes with hrefs relative to the current location.\nNote: This method will likely move to a plugin in a future release."},"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":860,"character":19}]},{"id":251,"name":"registerViewPort","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":252,"name":"registerViewPort","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Registers a viewPort to be used as a rendering target for activated routes."},"parameters":[{"id":253,"name":"viewPort","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The viewPort."},"type":{"type":"intrinsic","name":"any"}},{"id":254,"name":"name","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The name of the viewPort. 'default' if unspecified.\n"},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":761,"character":18}]},{"id":248,"name":"reset","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":249,"name":"reset","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Fully resets the router's internal state. Primarily used internally by the framework when multiple calls to setRoot are made.\nUse with caution (actually, avoid using this). Do not use this to simply change your navigation model."},"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":748,"character":7}]},{"id":298,"name":"updateTitle","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":299,"name":"updateTitle","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Updates the document title using the current navigation instruction."},"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":854,"character":13}]}],"groups":[{"title":"Constructors","kind":512,"children":[244]},{"title":"Properties","kind":1024,"children":[231,227,237,228,232,234,235,233,250,236,239,238,230,240,229]},{"title":"Methods","kind":2048,"children":[285,257,274,282,255,277,295,292,289,263,272,267,300,251,248,298]}],"sources":[{"fileName":"aurelia-router.d.ts","line":684,"character":27}],"extendedBy":[{"type":"reference","name":"AppRouter","id":356}]},{"id":181,"name":"RouterConfiguration","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Class used to configure a [[Router]] instance.","tags":[{"tag":"constructor","text":"\n"}]},"children":[{"id":182,"name":"instructions","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":582,"character":14}],"type":{"type":"intrinsic","name":"any"}},{"id":183,"name":"options","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":583,"character":9}],"type":{"type":"intrinsic","name":"any"}},{"id":184,"name":"pipelineSteps","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":584,"character":15}],"type":{"type":"reference","name":"Array","typeArguments":[{"type":"union","types":[{"type":"reference","name":"Function"},{"type":"reference","name":"PipelineStep","id":13}]}]}},{"id":185,"name":"title","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":585,"character":7}],"type":{"type":"intrinsic","name":"string"}},{"id":186,"name":"unknownRouteConfig","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":586,"character":20}],"type":{"type":"intrinsic","name":"any"}},{"id":191,"name":"addAuthorizeStep","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":192,"name":"addAuthorizeStep","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a step to be run during the [[Router]]'s authorize pipeline slot.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":193,"name":"step","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The pipeline step."},"type":{"type":"union","types":[{"type":"reference","name":"Function"},{"type":"reference","name":"PipelineStep","id":13}]}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":603,"character":18}]},{"id":187,"name":"addPipelineStep","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":188,"name":"addPipelineStep","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a step to be run during the [[Router]]'s navigation pipeline.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":189,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the pipeline slot to insert the step into."},"type":{"type":"intrinsic","name":"string"}},{"id":190,"name":"step","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The pipeline step."},"type":{"type":"union","types":[{"type":"reference","name":"Function"},{"type":"reference","name":"PipelineStep","id":13}]}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":595,"character":17}]},{"id":200,"name":"addPostRenderStep","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":201,"name":"addPostRenderStep","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a step to be run during the [[Router]]'s postRender pipeline slot.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":202,"name":"step","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The pipeline step."},"type":{"type":"union","types":[{"type":"reference","name":"Function"},{"type":"reference","name":"PipelineStep","id":13}]}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":627,"character":19}]},{"id":194,"name":"addPreActivateStep","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":195,"name":"addPreActivateStep","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a step to be run during the [[Router]]'s preActivate pipeline slot.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":196,"name":"step","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The pipeline step."},"type":{"type":"union","types":[{"type":"reference","name":"Function"},{"type":"reference","name":"PipelineStep","id":13}]}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":611,"character":20}]},{"id":197,"name":"addPreRenderStep","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":198,"name":"addPreRenderStep","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a step to be run during the [[Router]]'s preRender pipeline slot.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":199,"name":"step","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The pipeline step."},"type":{"type":"union","types":[{"type":"reference","name":"Function"},{"type":"reference","name":"PipelineStep","id":13}]}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":619,"character":18}]},{"id":218,"name":"exportToRouter","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":219,"name":"exportToRouter","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Applies the current configuration to the specified [[Router]]."},"parameters":[{"id":220,"name":"router","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The [[Router]] to apply the configuration to.\n"},"type":{"type":"reference","name":"Router","id":226}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":667,"character":16}]},{"id":203,"name":"fallbackRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":204,"name":"fallbackRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Configures a route that will be used if there is no previous location available on navigation cancellation.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":205,"name":"fragment","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The URL fragment to use as the navigation destination."},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":635,"character":15}]},{"id":206,"name":"map","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":207,"name":"map","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Maps one or more routes to be registered with the router.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":208,"name":"route","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The [[RouteConfig]] to map, or an array of [[RouteConfig]] to map."},"type":{"type":"union","types":[{"type":"reference","name":"RouteConfig","id":33},{"type":"array","elementType":{"type":"reference","name":"RouteConfig","id":33}}]}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":643,"character":5}]},{"id":209,"name":"mapRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":210,"name":"mapRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Maps a single route to be registered with the router.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":211,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"RouteConfig","id":33}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":651,"character":10}]},{"id":212,"name":"mapUnknownRoutes","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":213,"name":"mapUnknownRoutes","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Registers an unknown route handler to be run when the URL fragment doesn't match any registered routes.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":214,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A string containing a moduleId to load, or a [[RouteConfig]], or a function that takes the\n [[NavigationInstruction]] and selects a moduleId to load."},"type":{"type":"union","types":[{"type":"intrinsic","name":"string"},{"type":"reference","name":"RouteConfig","id":33},{"type":"reflection","declaration":{"id":215,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":216,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":217,"name":"instruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}}],"type":{"type":"union","types":[{"type":"intrinsic","name":"string"},{"type":"reference","name":"RouteConfig","id":33},{"type":"reference","name":"Promise","typeArguments":[{"type":"union","types":[{"type":"intrinsic","name":"string"},{"type":"reference","name":"RouteConfig","id":33}]}]}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":660,"character":49}]}}]}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":660,"character":18}]}],"groups":[{"title":"Properties","kind":1024,"children":[182,183,184,185,186]},{"title":"Methods","kind":2048,"children":[191,187,200,194,197,218,203,206,209,212]}],"sources":[{"fileName":"aurelia-router.d.ts","line":581,"character":40}]},{"id":85,"name":"ActivationStrategy","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"An optional interface describing the available activation strategies."},"children":[{"id":87,"name":"invokeLifecycle","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Reuse the existing view model, invoking Router lifecycle hooks."},"sources":[{"fileName":"aurelia-router.d.ts","line":297,"character":17}],"type":{"type":"stringLiteral","value":"invoke-lifecycle"}},{"id":86,"name":"noChange","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Reuse the existing view model, without invoking Router lifecycle hooks."},"sources":[{"fileName":"aurelia-router.d.ts","line":292,"character":10}],"type":{"type":"stringLiteral","value":"no-change"}},{"id":88,"name":"replace","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Replace the existing view model, invoking Router lifecycle hooks."},"sources":[{"fileName":"aurelia-router.d.ts","line":302,"character":9}],"type":{"type":"stringLiteral","value":"replace"}}],"groups":[{"title":"Properties","kind":1024,"children":[87,86,88]}],"sources":[{"fileName":"aurelia-router.d.ts","line":287,"character":43}]},{"id":80,"name":"ConfiguresRouter","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"An optional interface describing the router configuration convention."},"children":[{"id":81,"name":"configureRouter","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":82,"name":"configureRouter","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Implement this hook if you want to configure a router."},"parameters":[{"id":83,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"RouterConfiguration","id":181}},{"id":84,"name":"router","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Router","id":226}}],"type":{"type":"union","types":[{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"void"}]},{"type":"reference","name":"PromiseLike","typeArguments":[{"type":"intrinsic","name":"void"}]},{"type":"intrinsic","name":"void"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":278,"character":17}]}],"groups":[{"title":"Methods","kind":2048,"children":[81]}],"sources":[{"fileName":"aurelia-router.d.ts","line":273,"character":41}]},{"id":93,"name":"IObservable","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A basic interface for an Observable type"},"children":[{"id":94,"name":"subscribe","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":95,"name":"subscribe","kind":4096,"kindString":"Call signature","flags":{},"type":{"type":"reference","name":"ISubscription","id":96}}],"sources":[{"fileName":"aurelia-router.d.ts","line":323,"character":11}]}],"groups":[{"title":"Methods","kind":2048,"children":[94]}],"sources":[{"fileName":"aurelia-router.d.ts","line":322,"character":36}]},{"id":96,"name":"ISubscription","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A basic interface for a Subscription to an Observable"},"children":[{"id":97,"name":"unsubscribe","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":98,"name":"unsubscribe","kind":4096,"kindString":"Call signature","flags":{},"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":333,"character":13}]}],"groups":[{"title":"Methods","kind":2048,"children":[97]}],"sources":[{"fileName":"aurelia-router.d.ts","line":332,"character":38}]},{"id":89,"name":"NavigationCommand","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"When a navigation command is encountered, the current navigation\nwill be cancelled and control will be passed to the navigation\ncommand so it can determine the correct action."},"children":[{"id":90,"name":"navigate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":91,"name":"navigate","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":92,"name":"router","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Router","id":226}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":316,"character":10}]}],"groups":[{"title":"Methods","kind":2048,"children":[90]}],"sources":[{"fileName":"aurelia-router.d.ts","line":315,"character":42}]},{"id":23,"name":"NavigationInstructionInit","kind":256,"kindString":"Interface","flags":{"isExported":true},"children":[{"id":28,"name":"config","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":77,"character":8}],"type":{"type":"reference","name":"RouteConfig","id":33}},{"id":24,"name":"fragment","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":73,"character":10}],"type":{"type":"intrinsic","name":"string"}},{"id":32,"name":"options","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":81,"character":9}],"type":{"type":"reference","name":"Object"}},{"id":26,"name":"params","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":75,"character":8}],"type":{"type":"reference","name":"Object"}},{"id":29,"name":"parentInstruction","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":78,"character":19}],"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":30,"name":"previousInstruction","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":79,"character":21}],"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":27,"name":"queryParams","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":76,"character":13}],"type":{"type":"reference","name":"Object"}},{"id":25,"name":"queryString","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":74,"character":13}],"type":{"type":"intrinsic","name":"string"}},{"id":31,"name":"router","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":80,"character":8}],"type":{"type":"reference","name":"Router","id":226}}],"groups":[{"title":"Properties","kind":1024,"children":[28,24,32,26,29,30,27,25,31]}],"sources":[{"fileName":"aurelia-router.d.ts","line":72,"character":50}]},{"id":2,"name":"Next","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A callback to indicate when pipeline processing should advance to the next step\nor be aborted."},"signatures":[{"id":12,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Indicates the successful completion of the pipeline step."},"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"any"}]}}],"children":[{"id":6,"name":"cancel","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":7,"name":"cancel","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Indicates that the pipeline should cancel processing."},"parameters":[{"id":8,"name":"result","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"any"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":29,"character":8}]},{"id":3,"name":"complete","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":4,"name":"complete","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Indicates the successful completion of the entire pipeline."},"parameters":[{"id":5,"name":"result","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"any"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":24,"character":10}]},{"id":9,"name":"reject","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":10,"name":"reject","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Indicates that pipeline processing has failed and should be stopped."},"parameters":[{"id":11,"name":"result","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"any"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":34,"character":8}]}],"groups":[{"title":"Methods","kind":2048,"children":[6,3,9]}],"sources":[{"fileName":"aurelia-router.d.ts","line":19,"character":29}]},{"id":18,"name":"PipelineResult","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"The result of a pipeline run."},"children":[{"id":22,"name":"completed","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":70,"character":11}],"type":{"type":"intrinsic","name":"boolean"}},{"id":20,"name":"instruction","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":68,"character":13}],"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":21,"name":"output","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":69,"character":8}],"type":{"type":"intrinsic","name":"any"}},{"id":19,"name":"status","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":67,"character":8}],"type":{"type":"intrinsic","name":"string"}}],"groups":[{"title":"Properties","kind":1024,"children":[22,20,21,19]}],"sources":[{"fileName":"aurelia-router.d.ts","line":66,"character":39}]},{"id":13,"name":"PipelineStep","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A step to be run during processing of the pipeline."},"children":[{"id":14,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":15,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Execute the pipeline step. The step should invoke next(), next.complete(),\nnext.cancel(), or next.reject() to allow the pipeline to continue."},"parameters":[{"id":16,"name":"instruction","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The navigation instruction."},"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":17,"name":"next","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The next step in the pipeline.\n"},"type":{"type":"reference","name":"Next","id":2}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"any"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":57,"character":5}]}],"groups":[{"title":"Methods","kind":2048,"children":[14]}],"sources":[{"fileName":"aurelia-router.d.ts","line":48,"character":37}]},{"id":62,"name":"RoutableComponentActivate","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"An optional interface describing the activate convention."},"children":[{"id":63,"name":"activate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":64,"name":"activate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Implement this hook if you want to perform custom logic just before your view-model is displayed.\nYou can optionally return a promise to tell the router to wait to bind and attach the view until\nafter you finish your work."},"parameters":[{"id":65,"name":"params","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"any"}},{"id":66,"name":"routeConfig","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"RouteConfig","id":33}},{"id":67,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}}],"type":{"type":"union","types":[{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"void"}]},{"type":"reference","name":"PromiseLike","typeArguments":[{"type":"intrinsic","name":"void"}]},{"type":"reference","name":"IObservable","id":93},{"type":"intrinsic","name":"void"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":217,"character":10}]}],"groups":[{"title":"Methods","kind":2048,"children":[63]}],"sources":[{"fileName":"aurelia-router.d.ts","line":210,"character":50}]},{"id":56,"name":"RoutableComponentCanActivate","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"An optional interface describing the canActivate convention."},"children":[{"id":57,"name":"canActivate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":58,"name":"canActivate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Implement this hook if you want to control whether or not your view-model can be navigated to.\nReturn a boolean value, a promise for a boolean value, or a navigation command."},"parameters":[{"id":59,"name":"params","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"any"}},{"id":60,"name":"routeConfig","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"RouteConfig","id":33}},{"id":61,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}}],"type":{"type":"union","types":[{"type":"intrinsic","name":"boolean"},{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"boolean"}]},{"type":"reference","name":"PromiseLike","typeArguments":[{"type":"intrinsic","name":"boolean"}]},{"type":"reference","name":"NavigationCommand","id":89},{"type":"reference","name":"Promise","typeArguments":[{"type":"reference","name":"NavigationCommand","id":89}]},{"type":"reference","name":"PromiseLike","typeArguments":[{"type":"reference","name":"NavigationCommand","id":89}]}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":201,"character":13}]}],"groups":[{"title":"Methods","kind":2048,"children":[57]}],"sources":[{"fileName":"aurelia-router.d.ts","line":195,"character":53}]},{"id":68,"name":"RoutableComponentCanDeactivate","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"An optional interface describing the canDeactivate convention."},"children":[{"id":69,"name":"canDeactivate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":70,"name":"canDeactivate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Implement this hook if you want to control whether or not the router can navigate away from your\nview-model when moving to a new route. Return a boolean value, a promise for a boolean value,\nor a navigation command."},"type":{"type":"union","types":[{"type":"intrinsic","name":"boolean"},{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"boolean"}]},{"type":"reference","name":"PromiseLike","typeArguments":[{"type":"intrinsic","name":"boolean"}]},{"type":"reference","name":"NavigationCommand","id":89}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":233,"character":15}]}],"groups":[{"title":"Methods","kind":2048,"children":[69]}],"sources":[{"fileName":"aurelia-router.d.ts","line":226,"character":55}]},{"id":71,"name":"RoutableComponentDeactivate","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"An optional interface describing the deactivate convention."},"children":[{"id":72,"name":"deactivate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":73,"name":"deactivate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Implement this hook if you want to perform custom logic when your view-model is being\nnavigated away from. You can optionally return a promise to tell the router to wait until\nafter you finish your work."},"type":{"type":"union","types":[{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"void"}]},{"type":"reference","name":"PromiseLike","typeArguments":[{"type":"intrinsic","name":"void"}]},{"type":"reference","name":"IObservable","id":93},{"type":"intrinsic","name":"void"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":249,"character":12}]}],"groups":[{"title":"Methods","kind":2048,"children":[72]}],"sources":[{"fileName":"aurelia-router.d.ts","line":242,"character":52}]},{"id":74,"name":"RoutableComponentDetermineActivationStrategy","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"An optional interface describing the determineActivationStrategy convention."},"children":[{"id":75,"name":"determineActivationStrategy","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":76,"name":"determineActivationStrategy","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Implement this hook if you want to give hints to the router about the activation strategy, when reusing\na view model for different routes. Available values are 'replace' and 'invoke-lifecycle'."},"parameters":[{"id":77,"name":"params","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"any"}},{"id":78,"name":"routeConfig","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"RouteConfig","id":33}},{"id":79,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}}],"type":{"type":"union","types":[{"type":"stringLiteral","value":"no-change"},{"type":"stringLiteral","value":"invoke-lifecycle"},{"type":"stringLiteral","value":"replace"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":264,"character":29}]}],"groups":[{"title":"Methods","kind":2048,"children":[75]}],"sources":[{"fileName":"aurelia-router.d.ts","line":258,"character":69}]},{"id":33,"name":"RouteConfig","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A configuration object that describes a route."},"indexSignature":[{"id":54,"name":"__index","kind":8192,"kindString":"Index signature","flags":{},"comment":{"shortText":"A configuration object that describes a route."},"parameters":[{"id":55,"name":"x","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"any"}}],"children":[{"id":50,"name":"activationStrategy","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"Add to specify an activation strategy if it is always the same and you do not want that\nto be in your view-model code. Available values are 'replace' and 'invoke-lifecycle'."},"sources":[{"fileName":"aurelia-router.d.ts","line":170,"character":20}],"type":{"type":"union","types":[{"type":"stringLiteral","value":"no-change"},{"type":"stringLiteral","value":"invoke-lifecycle"},{"type":"stringLiteral","value":"replace"}]}},{"id":49,"name":"caseSensitive","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"When true is specified, this route will be case sensitive."},"sources":[{"fileName":"aurelia-router.d.ts","line":164,"character":15}],"type":{"type":"intrinsic","name":"boolean"}},{"id":45,"name":"generationUsesHref","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"Indicates that when route generation is done for this route, it should just take the literal value of the href property."},"sources":[{"fileName":"aurelia-router.d.ts","line":143,"character":20}],"type":{"type":"intrinsic","name":"boolean"}},{"id":44,"name":"href","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"The URL fragment to use in nav models. If unspecified, the [[RouteConfig.route]] will be used.\nHowever, if the [[RouteConfig.route]] contains dynamic segments, this property must be specified."},"sources":[{"fileName":"aurelia-router.d.ts","line":138,"character":6}],"type":{"type":"intrinsic","name":"string"}},{"id":53,"name":"layoutModel","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"specifies the model parameter to pass to the layout view model's `activate` function."},"sources":[{"fileName":"aurelia-router.d.ts","line":185,"character":13}],"type":{"type":"intrinsic","name":"string"}},{"id":51,"name":"layoutView","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"specifies the file name of a layout view to use."},"sources":[{"fileName":"aurelia-router.d.ts","line":175,"character":12}],"type":{"type":"intrinsic","name":"string"}},{"id":52,"name":"layoutViewModel","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"specifies the moduleId of the view model to use with the layout view."},"sources":[{"fileName":"aurelia-router.d.ts","line":180,"character":17}],"type":{"type":"intrinsic","name":"string"}},{"id":36,"name":"moduleId","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"The moduleId of the view model that should be activated for this route."},"sources":[{"fileName":"aurelia-router.d.ts","line":104,"character":10}],"type":{"type":"intrinsic","name":"string"}},{"id":35,"name":"name","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"A unique name for the route that may be used to identify the route when generating URL fragments.\nRequired when this route should support URL generation, such as with [[Router.generate]] or\nthe route-href custom attribute."},"sources":[{"fileName":"aurelia-router.d.ts","line":99,"character":6}],"type":{"type":"intrinsic","name":"string"}},{"id":43,"name":"nav","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"When specified, this route will be included in the [[Router.navigation]] nav model. Useful for\ndynamically generating menus or other navigation elements. When a number is specified, that value\nwill be used as a sort order."},"sources":[{"fileName":"aurelia-router.d.ts","line":132,"character":5}],"type":{"type":"union","types":[{"type":"intrinsic","name":"boolean"},{"type":"intrinsic","name":"number"}]}},{"id":48,"name":"navModel","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"The navigation model for storing and interacting with the route's navigation settings."},"sources":[{"fileName":"aurelia-router.d.ts","line":159,"character":10}],"type":{"type":"reference","name":"NavModel","id":143}},{"id":38,"name":"navigationStrategy","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"A function that can be used to dynamically select the module or modules to activate.\nThe function is passed the current [[NavigationInstruction]], and should configure\ninstruction.config with the desired moduleId, viewPorts, or redirect."},"sources":[{"fileName":"aurelia-router.d.ts","line":116,"character":20}],"type":{"type":"reflection","declaration":{"id":39,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":40,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":41,"name":"instruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}}],"type":{"type":"union","types":[{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"void"}]},{"type":"intrinsic","name":"void"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":116,"character":22}]}}},{"id":37,"name":"redirect","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"A URL fragment to redirect to when this route is matched."},"sources":[{"fileName":"aurelia-router.d.ts","line":109,"character":10}],"type":{"type":"intrinsic","name":"string"}},{"id":34,"name":"route","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The route pattern to match against incoming URL fragments, or an array of patterns."},"sources":[{"fileName":"aurelia-router.d.ts","line":92,"character":7}],"type":{"type":"union","types":[{"type":"intrinsic","name":"string"},{"type":"array","elementType":{"type":"intrinsic","name":"string"}}]}},{"id":47,"name":"settings","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"Arbitrary data to attach to the route. This can be used to attached custom data needed by components\nlike pipeline steps and activated modules."},"sources":[{"fileName":"aurelia-router.d.ts","line":154,"character":10}],"type":{"type":"intrinsic","name":"any"}},{"id":46,"name":"title","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"The document title to set when this route is active."},"sources":[{"fileName":"aurelia-router.d.ts","line":148,"character":7}],"type":{"type":"intrinsic","name":"string"}},{"id":42,"name":"viewPorts","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"The view ports to target when activating this route. If unspecified, the target moduleId is loaded\ninto the default viewPort (the viewPort with name 'default'). The viewPorts object should have keys\nwhose property names correspond to names used by elements. The values should be objects\nspecifying the moduleId to load into that viewPort. The values may optionally include properties related to layout:\n`layoutView`, `layoutViewModel` and `layoutModel`."},"sources":[{"fileName":"aurelia-router.d.ts","line":125,"character":11}],"type":{"type":"intrinsic","name":"any"}}],"groups":[{"title":"Properties","kind":1024,"children":[50,49,45,44,53,51,52,36,35,43,48,38,37,34,47,46,42]}],"sources":[{"fileName":"aurelia-router.d.ts","line":87,"character":36}]},{"id":448,"name":"activationStrategy","kind":32,"kindString":"Variable","flags":{"isExported":true},"comment":{"shortText":"The strategy to use when activating modules during navigation."},"sources":[{"fileName":"aurelia-router.d.ts","line":673,"character":39}],"type":{"type":"reference","name":"ActivationStrategy","id":85}},{"id":444,"name":"pipelineStatus","kind":32,"kindString":"Variable","flags":{"isExported":true},"comment":{"shortText":"The status of a Pipeline."},"sources":[{"fileName":"aurelia-router.d.ts","line":339,"character":35}],"type":{"type":"intrinsic","name":"any"}},{"id":445,"name":"isNavigationCommand","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":446,"name":"isNavigationCommand","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Determines if the provided object is a navigation command.\nA navigation command is anything with a navigate method."},"parameters":[{"id":447,"name":"obj","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The object to check.\n"},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"boolean"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":521,"character":43}]}],"groups":[{"title":"Classes","kind":128,"children":[317,356,221,307,302,107,312,328,143,112,99,338,158,169,322,226,181]},{"title":"Interfaces","kind":256,"children":[85,80,93,96,89,23,2,18,13,62,56,68,71,74,33]},{"title":"Variables","kind":32,"children":[448,444]},{"title":"Functions","kind":64,"children":[445]}]} \ No newline at end of file +{"name":"aurelia-router","children":[{"id":331,"name":"ActivateNextStep","kind":128,"kindString":"Class","flags":{"isExported":true},"children":[{"id":332,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":333,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":334,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":335,"name":"next","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Function"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":925,"character":5}]}],"groups":[{"title":"Methods","kind":2048,"children":[332]}],"sources":[{"fileName":"aurelia-router.d.ts","line":924,"character":37}]},{"id":370,"name":"AppRouter","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"The main application router."},"children":[{"id":373,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"signatures":[{"id":374,"name":"new AppRouter","kind":16384,"kindString":"Constructor signature","flags":{},"parameters":[{"id":375,"name":"container","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Container"}},{"id":376,"name":"history","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"History"}},{"id":377,"name":"pipelineProvider","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"PipelineProvider","id":352}},{"id":378,"name":"events","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"EventAggregator"}}],"type":{"type":"reference","name":"AppRouter","id":370},"overwrites":{"type":"reference","name":"Router.__constructor","id":255}}],"sources":[{"fileName":"aurelia-router.d.ts","line":968,"character":23}],"overwrites":{"type":"reference","name":"Router.__constructor","id":255}},{"id":397,"name":"baseUrl","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The [[Router]]'s current base URL, typically based on the [[Router.currentInstruction]]."},"sources":[{"fileName":"aurelia-router.d.ts","line":703,"character":9}],"type":{"type":"intrinsic","name":"string"},"inheritedFrom":{"type":"reference","name":"Router.baseUrl","id":235}},{"id":393,"name":"container","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":695,"character":11}],"type":{"type":"reference","name":"Container"},"inheritedFrom":{"type":"reference","name":"Router.container","id":231}},{"id":409,"name":"currentInstruction","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The currently active navigation instruction."},"sources":[{"fileName":"aurelia-router.d.ts","line":763,"character":20}],"type":{"type":"reference","name":"NavigationInstruction","id":112},"inheritedFrom":{"type":"reference","name":"Router.currentInstruction","id":247}},{"id":407,"name":"currentNavigationTracker","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The currently active navigation tracker."},"sources":[{"fileName":"aurelia-router.d.ts","line":753,"character":26}],"type":{"type":"intrinsic","name":"number"},"inheritedFrom":{"type":"reference","name":"Router.currentNavigationTracker","id":245}},{"id":394,"name":"history","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":696,"character":9}],"type":{"type":"reference","name":"History"},"inheritedFrom":{"type":"reference","name":"Router.history","id":232}},{"id":398,"name":"isConfigured","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] has been configured."},"sources":[{"fileName":"aurelia-router.d.ts","line":708,"character":14}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.isConfigured","id":236}},{"id":400,"name":"isExplicitNavigation","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating due to explicit call to navigate function(s)."},"sources":[{"fileName":"aurelia-router.d.ts","line":718,"character":22}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.isExplicitNavigation","id":238}},{"id":401,"name":"isExplicitNavigationBack","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating due to explicit call to navigateBack function."},"sources":[{"fileName":"aurelia-router.d.ts","line":723,"character":26}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.isExplicitNavigationBack","id":239}},{"id":399,"name":"isNavigating","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is currently processing a navigation."},"sources":[{"fileName":"aurelia-router.d.ts","line":713,"character":14}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.isNavigating","id":237}},{"id":405,"name":"isNavigatingBack","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating back in the browser session history."},"sources":[{"fileName":"aurelia-router.d.ts","line":743,"character":18}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.isNavigatingBack","id":243}},{"id":402,"name":"isNavigatingFirst","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating into the app for the first time in the browser session."},"sources":[{"fileName":"aurelia-router.d.ts","line":728,"character":19}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.isNavigatingFirst","id":240}},{"id":404,"name":"isNavigatingForward","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating forward in the browser session history."},"sources":[{"fileName":"aurelia-router.d.ts","line":738,"character":21}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.isNavigatingForward","id":242}},{"id":403,"name":"isNavigatingNew","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating to a page instance not in the browser session history."},"sources":[{"fileName":"aurelia-router.d.ts","line":733,"character":17}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.isNavigatingNew","id":241}},{"id":406,"name":"isNavigatingRefresh","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating due to a browser refresh."},"sources":[{"fileName":"aurelia-router.d.ts","line":748,"character":21}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.isNavigatingRefresh","id":244}},{"id":417,"name":"isRoot","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Gets a value indicating whether or not this [[Router]] is the root in the router tree. I.e., it has no parent."},"sources":[{"fileName":"aurelia-router.d.ts","line":798,"character":8}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.isRoot","id":261}},{"id":408,"name":"navigation","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The navigation models for routes that specified [[RouteConfig.nav]]."},"sources":[{"fileName":"aurelia-router.d.ts","line":758,"character":12}],"type":{"type":"array","elementType":{"type":"reference","name":"NavModel","id":143}},"inheritedFrom":{"type":"reference","name":"Router.navigation","id":246}},{"id":411,"name":"options","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":769,"character":9}],"type":{"type":"intrinsic","name":"any"},"inheritedFrom":{"type":"reference","name":"Router.options","id":249}},{"id":410,"name":"parent","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The parent router, or null if this instance is not a child router."},"sources":[{"fileName":"aurelia-router.d.ts","line":768,"character":8}],"type":{"type":"reference","name":"Router","id":230},"inheritedFrom":{"type":"reference","name":"Router.parent","id":248}},{"id":396,"name":"routes","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":698,"character":8}],"type":{"type":"array","elementType":{"type":"reference","name":"RouteConfig","id":33}},"inheritedFrom":{"type":"reference","name":"Router.routes","id":234}},{"id":413,"name":"transformTitle","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Extension point to transform the document title before it is built and displayed.\nBy default, child routers delegate to the parent router, and the app router\nreturns the title unchanged."},"sources":[{"fileName":"aurelia-router.d.ts","line":781,"character":16}],"type":{"type":"reflection","declaration":{"id":414,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":415,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":416,"name":"title","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"string"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":781,"character":17}]}},"inheritedFrom":{"type":"reference","name":"Router.transformTitle","id":251}},{"id":412,"name":"viewPortDefaults","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The defaults used when a viewport lacks specified content"},"sources":[{"fileName":"aurelia-router.d.ts","line":774,"character":18}],"type":{"type":"intrinsic","name":"any"},"inheritedFrom":{"type":"reference","name":"Router.viewPortDefaults","id":250}},{"id":395,"name":"viewPorts","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":697,"character":11}],"type":{"type":"reference","name":"Object"},"inheritedFrom":{"type":"reference","name":"Router.viewPorts","id":233}},{"id":388,"name":"activate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":389,"name":"activate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Activates the router. This instructs the router to begin listening for history changes and processing instructions.","tags":[{"tag":"params","text":"options The set of options to activate the router with.\n"}]},"parameters":[{"id":390,"name":"options","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Object"}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":997,"character":10}]},{"id":448,"name":"addRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":449,"name":"addRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Registers a new route with the router."},"parameters":[{"id":450,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The [[RouteConfig]]."},"type":{"type":"reference","name":"RouteConfig","id":33}},{"id":451,"name":"navModel","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The [[NavModel]] to use for the route. May be omitted for single-pattern routes.\n"},"type":{"type":"reference","name":"NavModel","id":143}}],"type":{"type":"intrinsic","name":"void"},"inheritedFrom":{"type":"reference","name":"Router.addRoute","id":296}}],"sources":[{"fileName":"aurelia-router.d.ts","line":874,"character":10}],"inheritedFrom":{"type":"reference","name":"Router.addRoute","id":296}},{"id":420,"name":"configure","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":421,"name":"configure","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Configures the router."},"parameters":[{"id":422,"name":"callbackOrConfig","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The [[RouterConfiguration]] or a callback that takes a [[RouterConfiguration]].\n"},"type":{"type":"union","types":[{"type":"reference","name":"RouterConfiguration","id":181},{"type":"reflection","declaration":{"id":423,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":424,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":425,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":818,"character":51}]}}]}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"void"}]},"inheritedFrom":{"type":"reference","name":"Router.configure","id":268}}],"sources":[{"fileName":"aurelia-router.d.ts","line":818,"character":11}],"inheritedFrom":{"type":"reference","name":"Router.configure","id":268}},{"id":437,"name":"createChild","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":438,"name":"createChild","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Creates a child router of the current router.","returns":"The new child Router.\n"},"parameters":[{"id":439,"name":"container","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The [[Container]] to provide to the child router. Uses the current [[Router]]'s [[Container]] if unspecified."},"type":{"type":"reference","name":"Container"}}],"type":{"type":"reference","name":"Router","id":230},"inheritedFrom":{"type":"reference","name":"Router.createChild","id":285}}],"sources":[{"fileName":"aurelia-router.d.ts","line":849,"character":13}],"inheritedFrom":{"type":"reference","name":"Router.createChild","id":285}},{"id":445,"name":"createNavModel","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":446,"name":"createNavModel","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Creates a [[NavModel]] for the specified route config."},"parameters":[{"id":447,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The route config.\n"},"type":{"type":"reference","name":"RouteConfig","id":33}}],"type":{"type":"reference","name":"NavModel","id":143},"inheritedFrom":{"type":"reference","name":"Router.createNavModel","id":293}}],"sources":[{"fileName":"aurelia-router.d.ts","line":866,"character":16}],"inheritedFrom":{"type":"reference","name":"Router.createNavModel","id":293}},{"id":391,"name":"deactivate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":392,"name":"deactivate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Deactivates the router."},"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":1002,"character":12}]},{"id":418,"name":"ensureConfigured","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":419,"name":"ensureConfigured","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Returns a Promise that resolves when the router is configured."},"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"void"}]},"inheritedFrom":{"type":"reference","name":"Router.ensureConfigured","id":266}}],"sources":[{"fileName":"aurelia-router.d.ts","line":811,"character":18}],"inheritedFrom":{"type":"reference","name":"Router.ensureConfigured","id":266}},{"id":440,"name":"generate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":441,"name":"generate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Generates a URL fragment matching the specified route pattern.","returns":"A string containing the generated URL fragment.\n"},"parameters":[{"id":442,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the route whose pattern should be used to generate the fragment."},"type":{"type":"intrinsic","name":"string"}},{"id":443,"name":"params","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The route params to be used to populate the route pattern."},"type":{"type":"intrinsic","name":"any"}},{"id":444,"name":"options","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"If options.absolute = true, then absolute url will be generated; otherwise, it will be relative url."},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"string"},"inheritedFrom":{"type":"reference","name":"Router.generate","id":288}}],"sources":[{"fileName":"aurelia-router.d.ts","line":859,"character":10}],"inheritedFrom":{"type":"reference","name":"Router.generate","id":288}},{"id":458,"name":"handleUnknownRoutes","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":459,"name":"handleUnknownRoutes","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Register a handler to use when the incoming URL fragment doesn't match any registered routes."},"parameters":[{"id":460,"name":"config","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The moduleId, or a function that selects the moduleId, or a [[RouteConfig]].\n"},"type":{"type":"union","types":[{"type":"intrinsic","name":"string"},{"type":"reference","name":"Function"},{"type":"reference","name":"RouteConfig","id":33}]}}],"type":{"type":"intrinsic","name":"void"},"inheritedFrom":{"type":"reference","name":"Router.handleUnknownRoutes","id":306}}],"sources":[{"fileName":"aurelia-router.d.ts","line":895,"character":21}],"inheritedFrom":{"type":"reference","name":"Router.handleUnknownRoutes","id":306}},{"id":455,"name":"hasOwnRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":456,"name":"hasOwnRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets a value indicating whether or not this [[Router]] has a route registered with the specified name."},"parameters":[{"id":457,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the route to check.\n"},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.hasOwnRoute","id":303}}],"sources":[{"fileName":"aurelia-router.d.ts","line":888,"character":13}],"inheritedFrom":{"type":"reference","name":"Router.hasOwnRoute","id":303}},{"id":452,"name":"hasRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":453,"name":"hasRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets a value indicating whether or not this [[Router]] or one of its ancestors has a route registered with the specified name."},"parameters":[{"id":454,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the route to check.\n"},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.hasRoute","id":300}}],"sources":[{"fileName":"aurelia-router.d.ts","line":881,"character":10}],"inheritedFrom":{"type":"reference","name":"Router.hasRoute","id":300}},{"id":381,"name":"loadUrl","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":382,"name":"loadUrl","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Loads the specified URL."},"parameters":[{"id":383,"name":"url","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The URL fragment to load.\n"},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"reference","name":"NavigationInstruction","id":112}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":982,"character":9}]},{"id":426,"name":"navigate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":427,"name":"navigate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Navigates to a new location."},"parameters":[{"id":428,"name":"fragment","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The URL fragment to use as the navigation destination."},"type":{"type":"intrinsic","name":"string"}},{"id":429,"name":"options","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The navigation options. See [[History.NavigationOptions]] for all available options.\n"},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.navigate","id":274}}],"sources":[{"fileName":"aurelia-router.d.ts","line":826,"character":10}],"inheritedFrom":{"type":"reference","name":"Router.navigate","id":274}},{"id":435,"name":"navigateBack","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":436,"name":"navigateBack","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Navigates back to the most recent location in history."},"type":{"type":"intrinsic","name":"void"},"inheritedFrom":{"type":"reference","name":"Router.navigateBack","id":283}}],"sources":[{"fileName":"aurelia-router.d.ts","line":841,"character":14}],"inheritedFrom":{"type":"reference","name":"Router.navigateBack","id":283}},{"id":430,"name":"navigateToRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":431,"name":"navigateToRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Navigates to a new location corresponding to the route and params specified. Equivallent to [[Router.generate]] followed\nby [[Router.navigate]]."},"parameters":[{"id":432,"name":"route","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the route to use when generating the navigation location."},"type":{"type":"intrinsic","name":"string"}},{"id":433,"name":"params","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The route parameters to be used when populating the route pattern."},"type":{"type":"intrinsic","name":"any"}},{"id":434,"name":"options","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The navigation options. See [[History.NavigationOptions]] for all available options.\n"},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"boolean"},"inheritedFrom":{"type":"reference","name":"Router.navigateToRoute","id":278}}],"sources":[{"fileName":"aurelia-router.d.ts","line":836,"character":17}],"inheritedFrom":{"type":"reference","name":"Router.navigateToRoute","id":278}},{"id":463,"name":"refreshNavigation","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":464,"name":"refreshNavigation","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Updates the navigation routes with hrefs relative to the current location.\nNote: This method will likely move to a plugin in a future release."},"type":{"type":"intrinsic","name":"void"},"inheritedFrom":{"type":"reference","name":"Router.refreshNavigation","id":311}}],"sources":[{"fileName":"aurelia-router.d.ts","line":906,"character":19}],"inheritedFrom":{"type":"reference","name":"Router.refreshNavigation","id":311}},{"id":384,"name":"registerViewPort","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":385,"name":"registerViewPort","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Registers a viewPort to be used as a rendering target for activated routes."},"parameters":[{"id":386,"name":"viewPort","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The viewPort."},"type":{"type":"intrinsic","name":"any"}},{"id":387,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the viewPort. 'default' if unspecified.\n"},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"any"}]},"overwrites":{"type":"reference","name":"Router.registerViewPort","id":262}}],"sources":[{"fileName":"aurelia-router.d.ts","line":990,"character":18}],"overwrites":{"type":"reference","name":"Router.registerViewPort","id":262}},{"id":379,"name":"reset","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":380,"name":"reset","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Fully resets the router's internal state. Primarily used internally by the framework when multiple calls to setRoot are made.\nUse with caution (actually, avoid using this). Do not use this to simply change your navigation model."},"type":{"type":"intrinsic","name":"any"},"overwrites":{"type":"reference","name":"Router.reset","id":259}}],"sources":[{"fileName":"aurelia-router.d.ts","line":975,"character":7}],"overwrites":{"type":"reference","name":"Router.reset","id":259}},{"id":461,"name":"updateTitle","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":462,"name":"updateTitle","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Updates the document title using the current navigation instruction."},"type":{"type":"intrinsic","name":"void"},"inheritedFrom":{"type":"reference","name":"Router.updateTitle","id":309}}],"sources":[{"fileName":"aurelia-router.d.ts","line":900,"character":13}],"inheritedFrom":{"type":"reference","name":"Router.updateTitle","id":309}},{"id":465,"name":"useViewPortDefaults","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":466,"name":"useViewPortDefaults","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Sets the default configuration for the view ports. This specifies how to\n populate a view port for which no module is specified. The default is\n an empty view/view-model pair."},"parameters":[{"id":467,"name":"viewPortDefaults","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"any"},"inheritedFrom":{"type":"reference","name":"Router.useViewPortDefaults","id":313}}],"sources":[{"fileName":"aurelia-router.d.ts","line":913,"character":21}],"inheritedFrom":{"type":"reference","name":"Router.useViewPortDefaults","id":313}},{"id":371,"name":"inject","kind":2048,"kindString":"Method","flags":{"isStatic":true,"isExported":true},"signatures":[{"id":372,"name":"inject","kind":4096,"kindString":"Call signature","flags":{},"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":968,"character":15}]}],"groups":[{"title":"Constructors","kind":512,"children":[373]},{"title":"Properties","kind":1024,"children":[397,393,409,407,394,398,400,401,399,405,402,404,403,406,417,408,411,410,396,413,412,395]},{"title":"Methods","kind":2048,"children":[388,448,420,437,445,391,418,440,458,455,452,381,426,435,430,463,384,379,461,465,371]}],"sources":[{"fileName":"aurelia-router.d.ts","line":967,"character":30}],"extendedTypes":[{"type":"reference","name":"Router","id":230}]},{"id":225,"name":"BuildNavigationPlanStep","kind":128,"kindString":"Class","flags":{"isExported":true},"children":[{"id":226,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":227,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":228,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":229,"name":"next","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Function"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":685,"character":5}]}],"groups":[{"title":"Methods","kind":2048,"children":[226]}],"sources":[{"fileName":"aurelia-router.d.ts","line":684,"character":44}]},{"id":321,"name":"CanActivateNextStep","kind":128,"kindString":"Class","flags":{"isExported":true},"children":[{"id":322,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":323,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":324,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":325,"name":"next","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Function"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":919,"character":5}]}],"groups":[{"title":"Methods","kind":2048,"children":[322]}],"sources":[{"fileName":"aurelia-router.d.ts","line":918,"character":40}]},{"id":316,"name":"CanDeactivatePreviousStep","kind":128,"kindString":"Class","flags":{"isExported":true},"children":[{"id":317,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":318,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":319,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":320,"name":"next","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Function"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":916,"character":5}]}],"groups":[{"title":"Methods","kind":2048,"children":[317]}],"sources":[{"fileName":"aurelia-router.d.ts","line":915,"character":46}]},{"id":107,"name":"CommitChangesStep","kind":128,"kindString":"Class","flags":{"isExported":true},"children":[{"id":108,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":109,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":110,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":111,"name":"next","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Function"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":369,"character":5}]}],"groups":[{"title":"Methods","kind":2048,"children":[108]}],"sources":[{"fileName":"aurelia-router.d.ts","line":368,"character":38}]},{"id":326,"name":"DeactivatePreviousStep","kind":128,"kindString":"Class","flags":{"isExported":true},"children":[{"id":327,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":328,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":329,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":330,"name":"next","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Function"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":922,"character":5}]}],"groups":[{"title":"Methods","kind":2048,"children":[327]}],"sources":[{"fileName":"aurelia-router.d.ts","line":921,"character":43}]},{"id":342,"name":"LoadRouteStep","kind":128,"kindString":"Class","flags":{"isExported":true},"children":[{"id":345,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"signatures":[{"id":346,"name":"new LoadRouteStep","kind":16384,"kindString":"Constructor signature","flags":{},"parameters":[{"id":347,"name":"routeLoader","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"RouteLoader","id":336}}],"type":{"type":"reference","name":"LoadRouteStep","id":342}}],"sources":[{"fileName":"aurelia-router.d.ts","line":931,"character":23}]},{"id":348,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":349,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":350,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":351,"name":"next","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Function"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":933,"character":5}]},{"id":343,"name":"inject","kind":2048,"kindString":"Method","flags":{"isStatic":true,"isExported":true},"signatures":[{"id":344,"name":"inject","kind":4096,"kindString":"Call signature","flags":{},"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":931,"character":15}]}],"groups":[{"title":"Constructors","kind":512,"children":[345]},{"title":"Methods","kind":2048,"children":[348,343]}],"sources":[{"fileName":"aurelia-router.d.ts","line":930,"character":34}]},{"id":143,"name":"NavModel","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Class for storing and interacting with a route's navigation settings."},"children":[{"id":151,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"signatures":[{"id":152,"name":"new NavModel","kind":16384,"kindString":"Constructor signature","flags":{},"parameters":[{"id":153,"name":"router","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Router","id":230}},{"id":154,"name":"relativeHref","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"reference","name":"NavModel","id":143}}],"sources":[{"fileName":"aurelia-router.d.ts","line":496,"character":17}]},{"id":149,"name":"config","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The route config."},"sources":[{"fileName":"aurelia-router.d.ts","line":491,"character":8}],"type":{"type":"reference","name":"RouteConfig","id":33}},{"id":146,"name":"href","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"This nav item's absolute href."},"sources":[{"fileName":"aurelia-router.d.ts","line":476,"character":6}],"type":{"type":"intrinsic","name":"string"}},{"id":144,"name":"isActive","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if this nav item is currently active."},"sources":[{"fileName":"aurelia-router.d.ts","line":466,"character":10}],"type":{"type":"intrinsic","name":"boolean"}},{"id":147,"name":"relativeHref","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"This nav item's relative href."},"sources":[{"fileName":"aurelia-router.d.ts","line":481,"character":14}],"type":{"type":"intrinsic","name":"string"}},{"id":150,"name":"router","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The router associated with this navigation model."},"sources":[{"fileName":"aurelia-router.d.ts","line":496,"character":8}],"type":{"type":"reference","name":"Router","id":230}},{"id":148,"name":"settings","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Data attached to the route at configuration time."},"sources":[{"fileName":"aurelia-router.d.ts","line":486,"character":10}],"type":{"type":"intrinsic","name":"any"}},{"id":145,"name":"title","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The title."},"sources":[{"fileName":"aurelia-router.d.ts","line":471,"character":7}],"type":{"type":"intrinsic","name":"string"}},{"id":155,"name":"setTitle","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":156,"name":"setTitle","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Sets the route's title and updates document.title.\n If the a navigation is in progress, the change will be applied\n to document.title when the navigation completes."},"parameters":[{"id":157,"name":"title","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The new title.\n"},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":506,"character":10}]}],"groups":[{"title":"Constructors","kind":512,"children":[151]},{"title":"Properties","kind":1024,"children":[149,146,144,147,150,148,145]},{"title":"Methods","kind":2048,"children":[155]}],"sources":[{"fileName":"aurelia-router.d.ts","line":461,"character":29}]},{"id":112,"name":"NavigationInstruction","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Class used to represent an instruction during a navigation."},"children":[{"id":124,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"signatures":[{"id":125,"name":"new NavigationInstruction","kind":16384,"kindString":"Constructor signature","flags":{},"parameters":[{"id":126,"name":"init","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstructionInit","id":23}}],"type":{"type":"reference","name":"NavigationInstruction","id":112}}],"sources":[{"fileName":"aurelia-router.d.ts","line":422,"character":18}]},{"id":117,"name":"config","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The route config for the route matching this instruction."},"sources":[{"fileName":"aurelia-router.d.ts","line":400,"character":8}],"type":{"type":"reference","name":"RouteConfig","id":33}},{"id":113,"name":"fragment","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The URL fragment."},"sources":[{"fileName":"aurelia-router.d.ts","line":380,"character":10}],"type":{"type":"intrinsic","name":"string"}},{"id":123,"name":"options","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":422,"character":9}],"type":{"type":"reference","name":"Object"}},{"id":115,"name":"params","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Parameters extracted from the route pattern."},"sources":[{"fileName":"aurelia-router.d.ts","line":390,"character":8}],"type":{"type":"intrinsic","name":"any"}},{"id":118,"name":"parentInstruction","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The parent instruction, if this instruction was created by a child router."},"sources":[{"fileName":"aurelia-router.d.ts","line":405,"character":19}],"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":122,"name":"plan","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":421,"character":6}],"type":{"type":"reference","name":"Object"}},{"id":119,"name":"previousInstruction","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The instruction being replaced by this instruction in the current router."},"sources":[{"fileName":"aurelia-router.d.ts","line":410,"character":21}],"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":116,"name":"queryParams","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Parameters extracted from the query string."},"sources":[{"fileName":"aurelia-router.d.ts","line":395,"character":13}],"type":{"type":"intrinsic","name":"any"}},{"id":114,"name":"queryString","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The query string."},"sources":[{"fileName":"aurelia-router.d.ts","line":385,"character":13}],"type":{"type":"intrinsic","name":"string"}},{"id":121,"name":"router","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The router instance."},"sources":[{"fileName":"aurelia-router.d.ts","line":420,"character":8}],"type":{"type":"reference","name":"Router","id":230}},{"id":120,"name":"viewPortInstructions","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"viewPort instructions to used activation."},"sources":[{"fileName":"aurelia-router.d.ts","line":415,"character":22}],"type":{"type":"intrinsic","name":"any"}},{"id":131,"name":"addViewPortInstruction","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":132,"name":"addViewPortInstruction","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a viewPort instruction."},"parameters":[{"id":133,"name":"viewPortName","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}},{"id":134,"name":"strategy","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}},{"id":135,"name":"moduleId","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}},{"id":136,"name":"component","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":439,"character":24}]},{"id":127,"name":"getAllInstructions","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":128,"name":"getAllInstructions","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets an array containing this instruction and all child instructions for the current navigation."},"type":{"type":"reference","name":"Array","typeArguments":[{"type":"reference","name":"NavigationInstruction","id":112}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":428,"character":20}]},{"id":129,"name":"getAllPreviousInstructions","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":130,"name":"getAllPreviousInstructions","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets an array containing the instruction and all child instructions for the previous navigation.\nPrevious instructions are no longer available after navigation completes."},"type":{"type":"reference","name":"Array","typeArguments":[{"type":"reference","name":"NavigationInstruction","id":112}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":434,"character":28}]},{"id":141,"name":"getBaseUrl","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":142,"name":"getBaseUrl","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets the instruction's base URL, accounting for wildcard route parameters."},"type":{"type":"intrinsic","name":"string"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":455,"character":12}]},{"id":137,"name":"getWildCardName","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":138,"name":"getWildCardName","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets the name of the route pattern's wildcard parameter, if applicable."},"type":{"type":"intrinsic","name":"string"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":444,"character":17}]},{"id":139,"name":"getWildcardPath","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":140,"name":"getWildcardPath","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets the path and query string created by filling the route\npattern's wildcard parameter with the matching param."},"type":{"type":"intrinsic","name":"string"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":450,"character":17}]}],"groups":[{"title":"Constructors","kind":512,"children":[124]},{"title":"Properties","kind":1024,"children":[117,113,123,115,118,122,119,116,114,121,120]},{"title":"Methods","kind":2048,"children":[131,127,129,141,137,139]}],"sources":[{"fileName":"aurelia-router.d.ts","line":375,"character":42}]},{"id":99,"name":"Pipeline","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"The class responsible for managing and processing the navigation pipeline."},"children":[{"id":100,"name":"steps","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The pipeline steps."},"sources":[{"fileName":"aurelia-router.d.ts","line":352,"character":7}],"type":{"type":"reference","name":"Array","typeArguments":[{"type":"union","types":[{"type":"reference","name":"Function"},{"type":"reference","name":"PipelineStep","id":13}]}]}},{"id":101,"name":"addStep","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":102,"name":"addStep","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a step to the pipeline."},"parameters":[{"id":103,"name":"step","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The pipeline step.\n"},"type":{"type":"reference","name":"PipelineStep","id":13}}],"type":{"type":"reference","name":"Pipeline","id":99}}],"sources":[{"fileName":"aurelia-router.d.ts","line":359,"character":9}]},{"id":104,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":105,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Runs the pipeline."},"parameters":[{"id":106,"name":"instruction","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The navigation instruction to process.\n"},"type":{"type":"reference","name":"NavigationInstruction","id":112}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"reference","name":"PipelineResult","id":18}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":366,"character":5}]}],"groups":[{"title":"Properties","kind":1024,"children":[100]},{"title":"Methods","kind":2048,"children":[101,104]}],"sources":[{"fileName":"aurelia-router.d.ts","line":347,"character":29}]},{"id":352,"name":"PipelineProvider","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Class responsible for creating the navigation pipeline."},"children":[{"id":355,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"signatures":[{"id":356,"name":"new PipelineProvider","kind":16384,"kindString":"Constructor signature","flags":{},"parameters":[{"id":357,"name":"container","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Container"}}],"type":{"type":"reference","name":"PipelineProvider","id":352}}],"sources":[{"fileName":"aurelia-router.d.ts","line":940,"character":23}]},{"id":360,"name":"addStep","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":361,"name":"addStep","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a step into the pipeline at a known slot location."},"parameters":[{"id":362,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}},{"id":363,"name":"step","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"PipelineStep","id":13}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":951,"character":9}]},{"id":358,"name":"createPipeline","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":359,"name":"createPipeline","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Create the navigation pipeline."},"type":{"type":"reference","name":"Pipeline","id":99}}],"sources":[{"fileName":"aurelia-router.d.ts","line":946,"character":16}]},{"id":364,"name":"removeStep","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":365,"name":"removeStep","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Removes a step from a slot in the pipeline"},"parameters":[{"id":366,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}},{"id":367,"name":"step","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"PipelineStep","id":13}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":956,"character":12}]},{"id":368,"name":"reset","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":369,"name":"reset","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Resets all pipeline slots"},"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":961,"character":7}]},{"id":353,"name":"inject","kind":2048,"kindString":"Method","flags":{"isStatic":true,"isExported":true},"signatures":[{"id":354,"name":"inject","kind":4096,"kindString":"Call signature","flags":{},"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":940,"character":15}]}],"groups":[{"title":"Constructors","kind":512,"children":[355]},{"title":"Methods","kind":2048,"children":[360,358,364,368,353]}],"sources":[{"fileName":"aurelia-router.d.ts","line":939,"character":37}]},{"id":158,"name":"Redirect","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Used during the activation lifecycle to cause a redirect."},"children":[{"id":159,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"comment":{},"signatures":[{"id":160,"name":"new Redirect","kind":16384,"kindString":"Constructor signature","flags":{},"comment":{},"parameters":[{"id":161,"name":"url","kind":32768,"kindString":"Parameter","flags":{},"comment":{"shortText":"The URL fragment to use as the navigation destination."},"type":{"type":"intrinsic","name":"string"}},{"id":162,"name":"options","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"shortText":"The navigation options.\n"},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"reference","name":"Redirect","id":158}}],"sources":[{"fileName":"aurelia-router.d.ts","line":526,"character":31}]},{"id":166,"name":"navigate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":167,"name":"navigate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Called by the navigation pipeline to navigate."},"parameters":[{"id":168,"name":"appRouter","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The router to be redirected.\n"},"type":{"type":"reference","name":"Router","id":230}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":546,"character":10}]},{"id":163,"name":"setRouter","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":164,"name":"setRouter","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Called by the activation system to set the child router."},"parameters":[{"id":165,"name":"router","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The router.\n"},"type":{"type":"reference","name":"Router","id":230}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":539,"character":11}]}],"groups":[{"title":"Constructors","kind":512,"children":[159]},{"title":"Methods","kind":2048,"children":[166,163]}],"sources":[{"fileName":"aurelia-router.d.ts","line":526,"character":29}]},{"id":169,"name":"RedirectToRoute","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Used during the activation lifecycle to cause a redirect to a named route."},"children":[{"id":170,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"comment":{},"signatures":[{"id":171,"name":"new RedirectToRoute","kind":16384,"kindString":"Constructor signature","flags":{},"comment":{},"parameters":[{"id":172,"name":"route","kind":32768,"kindString":"Parameter","flags":{},"comment":{"shortText":"The name of the route."},"type":{"type":"intrinsic","name":"string"}},{"id":173,"name":"params","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"shortText":"The parameters to be sent to the activation method."},"type":{"type":"intrinsic","name":"any"}},{"id":174,"name":"options","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"shortText":"The options to use for navigation.\n"},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"reference","name":"RedirectToRoute","id":169}}],"sources":[{"fileName":"aurelia-router.d.ts","line":552,"character":38}]},{"id":178,"name":"navigate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":179,"name":"navigate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Called by the navigation pipeline to navigate."},"parameters":[{"id":180,"name":"appRouter","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The router to be redirected.\n"},"type":{"type":"reference","name":"Router","id":230}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":573,"character":10}]},{"id":175,"name":"setRouter","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":176,"name":"setRouter","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Called by the activation system to set the child router."},"parameters":[{"id":177,"name":"router","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The router.\n"},"type":{"type":"reference","name":"Router","id":230}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":566,"character":11}]}],"groups":[{"title":"Constructors","kind":512,"children":[170]},{"title":"Methods","kind":2048,"children":[178,175]}],"sources":[{"fileName":"aurelia-router.d.ts","line":552,"character":36}]},{"id":336,"name":"RouteLoader","kind":128,"kindString":"Class","flags":{"isExported":true},"children":[{"id":337,"name":"loadRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":338,"name":"loadRoute","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":339,"name":"router","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"any"}},{"id":340,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"any"}},{"id":341,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":928,"character":11}]}],"groups":[{"title":"Methods","kind":2048,"children":[337]}],"sources":[{"fileName":"aurelia-router.d.ts","line":927,"character":32}]},{"id":230,"name":"Router","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"The primary class responsible for handling routing and navigation.","tags":[{"tag":"class","text":"Router"},{"tag":"constructor","text":"\n"}]},"children":[{"id":255,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"comment":{},"signatures":[{"id":256,"name":"new Router","kind":16384,"kindString":"Constructor signature","flags":{},"comment":{},"parameters":[{"id":257,"name":"container","kind":32768,"kindString":"Parameter","flags":{},"comment":{"shortText":"The [[Container]] to use when child routers."},"type":{"type":"reference","name":"Container"}},{"id":258,"name":"history","kind":32768,"kindString":"Parameter","flags":{},"comment":{"shortText":"The [[History]] implementation to delegate navigation requests to.\n"},"type":{"type":"reference","name":"History"}}],"type":{"type":"reference","name":"Router","id":230}}],"sources":[{"fileName":"aurelia-router.d.ts","line":781,"character":46}]},{"id":235,"name":"baseUrl","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The [[Router]]'s current base URL, typically based on the [[Router.currentInstruction]]."},"sources":[{"fileName":"aurelia-router.d.ts","line":703,"character":9}],"type":{"type":"intrinsic","name":"string"}},{"id":231,"name":"container","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":695,"character":11}],"type":{"type":"reference","name":"Container"}},{"id":247,"name":"currentInstruction","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The currently active navigation instruction."},"sources":[{"fileName":"aurelia-router.d.ts","line":763,"character":20}],"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":245,"name":"currentNavigationTracker","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The currently active navigation tracker."},"sources":[{"fileName":"aurelia-router.d.ts","line":753,"character":26}],"type":{"type":"intrinsic","name":"number"}},{"id":232,"name":"history","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":696,"character":9}],"type":{"type":"reference","name":"History"}},{"id":236,"name":"isConfigured","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] has been configured."},"sources":[{"fileName":"aurelia-router.d.ts","line":708,"character":14}],"type":{"type":"intrinsic","name":"boolean"}},{"id":238,"name":"isExplicitNavigation","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating due to explicit call to navigate function(s)."},"sources":[{"fileName":"aurelia-router.d.ts","line":718,"character":22}],"type":{"type":"intrinsic","name":"boolean"}},{"id":239,"name":"isExplicitNavigationBack","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating due to explicit call to navigateBack function."},"sources":[{"fileName":"aurelia-router.d.ts","line":723,"character":26}],"type":{"type":"intrinsic","name":"boolean"}},{"id":237,"name":"isNavigating","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is currently processing a navigation."},"sources":[{"fileName":"aurelia-router.d.ts","line":713,"character":14}],"type":{"type":"intrinsic","name":"boolean"}},{"id":243,"name":"isNavigatingBack","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating back in the browser session history."},"sources":[{"fileName":"aurelia-router.d.ts","line":743,"character":18}],"type":{"type":"intrinsic","name":"boolean"}},{"id":240,"name":"isNavigatingFirst","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating into the app for the first time in the browser session."},"sources":[{"fileName":"aurelia-router.d.ts","line":728,"character":19}],"type":{"type":"intrinsic","name":"boolean"}},{"id":242,"name":"isNavigatingForward","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating forward in the browser session history."},"sources":[{"fileName":"aurelia-router.d.ts","line":738,"character":21}],"type":{"type":"intrinsic","name":"boolean"}},{"id":241,"name":"isNavigatingNew","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating to a page instance not in the browser session history."},"sources":[{"fileName":"aurelia-router.d.ts","line":733,"character":17}],"type":{"type":"intrinsic","name":"boolean"}},{"id":244,"name":"isNavigatingRefresh","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"True if the [[Router]] is navigating due to a browser refresh."},"sources":[{"fileName":"aurelia-router.d.ts","line":748,"character":21}],"type":{"type":"intrinsic","name":"boolean"}},{"id":261,"name":"isRoot","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Gets a value indicating whether or not this [[Router]] is the root in the router tree. I.e., it has no parent."},"sources":[{"fileName":"aurelia-router.d.ts","line":798,"character":8}],"type":{"type":"intrinsic","name":"boolean"}},{"id":246,"name":"navigation","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The navigation models for routes that specified [[RouteConfig.nav]]."},"sources":[{"fileName":"aurelia-router.d.ts","line":758,"character":12}],"type":{"type":"array","elementType":{"type":"reference","name":"NavModel","id":143}}},{"id":249,"name":"options","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":769,"character":9}],"type":{"type":"intrinsic","name":"any"}},{"id":248,"name":"parent","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The parent router, or null if this instance is not a child router."},"sources":[{"fileName":"aurelia-router.d.ts","line":768,"character":8}],"type":{"type":"reference","name":"Router","id":230}},{"id":234,"name":"routes","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":698,"character":8}],"type":{"type":"array","elementType":{"type":"reference","name":"RouteConfig","id":33}}},{"id":251,"name":"transformTitle","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Extension point to transform the document title before it is built and displayed.\nBy default, child routers delegate to the parent router, and the app router\nreturns the title unchanged."},"sources":[{"fileName":"aurelia-router.d.ts","line":781,"character":16}],"type":{"type":"reflection","declaration":{"id":252,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":253,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":254,"name":"title","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"string"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":781,"character":17}]}}},{"id":250,"name":"viewPortDefaults","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The defaults used when a viewport lacks specified content"},"sources":[{"fileName":"aurelia-router.d.ts","line":774,"character":18}],"type":{"type":"intrinsic","name":"any"}},{"id":233,"name":"viewPorts","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":697,"character":11}],"type":{"type":"reference","name":"Object"}},{"id":296,"name":"addRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":297,"name":"addRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Registers a new route with the router."},"parameters":[{"id":298,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The [[RouteConfig]]."},"type":{"type":"reference","name":"RouteConfig","id":33}},{"id":299,"name":"navModel","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The [[NavModel]] to use for the route. May be omitted for single-pattern routes.\n"},"type":{"type":"reference","name":"NavModel","id":143}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":874,"character":10}]},{"id":268,"name":"configure","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":269,"name":"configure","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Configures the router."},"parameters":[{"id":270,"name":"callbackOrConfig","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The [[RouterConfiguration]] or a callback that takes a [[RouterConfiguration]].\n"},"type":{"type":"union","types":[{"type":"reference","name":"RouterConfiguration","id":181},{"type":"reflection","declaration":{"id":271,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":272,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":273,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":818,"character":51}]}}]}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"void"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":818,"character":11}]},{"id":285,"name":"createChild","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":286,"name":"createChild","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Creates a child router of the current router.","returns":"The new child Router.\n"},"parameters":[{"id":287,"name":"container","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The [[Container]] to provide to the child router. Uses the current [[Router]]'s [[Container]] if unspecified."},"type":{"type":"reference","name":"Container"}}],"type":{"type":"reference","name":"Router","id":230}}],"sources":[{"fileName":"aurelia-router.d.ts","line":849,"character":13}]},{"id":293,"name":"createNavModel","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":294,"name":"createNavModel","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Creates a [[NavModel]] for the specified route config."},"parameters":[{"id":295,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The route config.\n"},"type":{"type":"reference","name":"RouteConfig","id":33}}],"type":{"type":"reference","name":"NavModel","id":143}}],"sources":[{"fileName":"aurelia-router.d.ts","line":866,"character":16}]},{"id":266,"name":"ensureConfigured","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":267,"name":"ensureConfigured","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Returns a Promise that resolves when the router is configured."},"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"void"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":811,"character":18}]},{"id":288,"name":"generate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":289,"name":"generate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Generates a URL fragment matching the specified route pattern.","returns":"A string containing the generated URL fragment.\n"},"parameters":[{"id":290,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the route whose pattern should be used to generate the fragment."},"type":{"type":"intrinsic","name":"string"}},{"id":291,"name":"params","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The route params to be used to populate the route pattern."},"type":{"type":"intrinsic","name":"any"}},{"id":292,"name":"options","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"If options.absolute = true, then absolute url will be generated; otherwise, it will be relative url."},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"string"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":859,"character":10}]},{"id":306,"name":"handleUnknownRoutes","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":307,"name":"handleUnknownRoutes","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Register a handler to use when the incoming URL fragment doesn't match any registered routes."},"parameters":[{"id":308,"name":"config","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The moduleId, or a function that selects the moduleId, or a [[RouteConfig]].\n"},"type":{"type":"union","types":[{"type":"intrinsic","name":"string"},{"type":"reference","name":"Function"},{"type":"reference","name":"RouteConfig","id":33}]}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":895,"character":21}]},{"id":303,"name":"hasOwnRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":304,"name":"hasOwnRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets a value indicating whether or not this [[Router]] has a route registered with the specified name."},"parameters":[{"id":305,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the route to check.\n"},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"boolean"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":888,"character":13}]},{"id":300,"name":"hasRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":301,"name":"hasRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets a value indicating whether or not this [[Router]] or one of its ancestors has a route registered with the specified name."},"parameters":[{"id":302,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the route to check.\n"},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"boolean"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":881,"character":10}]},{"id":274,"name":"navigate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":275,"name":"navigate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Navigates to a new location."},"parameters":[{"id":276,"name":"fragment","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The URL fragment to use as the navigation destination."},"type":{"type":"intrinsic","name":"string"}},{"id":277,"name":"options","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The navigation options. See [[History.NavigationOptions]] for all available options.\n"},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"boolean"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":826,"character":10}]},{"id":283,"name":"navigateBack","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":284,"name":"navigateBack","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Navigates back to the most recent location in history."},"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":841,"character":14}]},{"id":278,"name":"navigateToRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":279,"name":"navigateToRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Navigates to a new location corresponding to the route and params specified. Equivallent to [[Router.generate]] followed\nby [[Router.navigate]]."},"parameters":[{"id":280,"name":"route","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the route to use when generating the navigation location."},"type":{"type":"intrinsic","name":"string"}},{"id":281,"name":"params","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The route parameters to be used when populating the route pattern."},"type":{"type":"intrinsic","name":"any"}},{"id":282,"name":"options","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The navigation options. See [[History.NavigationOptions]] for all available options.\n"},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"boolean"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":836,"character":17}]},{"id":311,"name":"refreshNavigation","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":312,"name":"refreshNavigation","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Updates the navigation routes with hrefs relative to the current location.\nNote: This method will likely move to a plugin in a future release."},"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":906,"character":19}]},{"id":262,"name":"registerViewPort","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":263,"name":"registerViewPort","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Registers a viewPort to be used as a rendering target for activated routes."},"parameters":[{"id":264,"name":"viewPort","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The viewPort."},"type":{"type":"intrinsic","name":"any"}},{"id":265,"name":"name","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The name of the viewPort. 'default' if unspecified.\n"},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":806,"character":18}]},{"id":259,"name":"reset","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":260,"name":"reset","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Fully resets the router's internal state. Primarily used internally by the framework when multiple calls to setRoot are made.\nUse with caution (actually, avoid using this). Do not use this to simply change your navigation model."},"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":793,"character":7}]},{"id":309,"name":"updateTitle","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":310,"name":"updateTitle","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Updates the document title using the current navigation instruction."},"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":900,"character":13}]},{"id":313,"name":"useViewPortDefaults","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":314,"name":"useViewPortDefaults","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Sets the default configuration for the view ports. This specifies how to\n populate a view port for which no module is specified. The default is\n an empty view/view-model pair."},"parameters":[{"id":315,"name":"viewPortDefaults","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":913,"character":21}]}],"groups":[{"title":"Constructors","kind":512,"children":[255]},{"title":"Properties","kind":1024,"children":[235,231,247,245,232,236,238,239,237,243,240,242,241,244,261,246,249,248,234,251,250,233]},{"title":"Methods","kind":2048,"children":[296,268,285,293,266,288,306,303,300,274,283,278,311,262,259,309,313]}],"sources":[{"fileName":"aurelia-router.d.ts","line":694,"character":27}],"extendedBy":[{"type":"reference","name":"AppRouter","id":370}]},{"id":181,"name":"RouterConfiguration","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Class used to configure a [[Router]] instance.","tags":[{"tag":"constructor","text":"\n"}]},"children":[{"id":182,"name":"instructions","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":582,"character":14}],"type":{"type":"intrinsic","name":"any"}},{"id":183,"name":"options","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":583,"character":9}],"type":{"type":"intrinsic","name":"any"}},{"id":184,"name":"pipelineSteps","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":584,"character":15}],"type":{"type":"reference","name":"Array","typeArguments":[{"type":"union","types":[{"type":"reference","name":"Function"},{"type":"reference","name":"PipelineStep","id":13}]}]}},{"id":185,"name":"title","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":585,"character":7}],"type":{"type":"intrinsic","name":"string"}},{"id":186,"name":"unknownRouteConfig","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":586,"character":20}],"type":{"type":"intrinsic","name":"any"}},{"id":187,"name":"viewPortDefaults","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":587,"character":18}],"type":{"type":"intrinsic","name":"any"}},{"id":192,"name":"addAuthorizeStep","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":193,"name":"addAuthorizeStep","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a step to be run during the [[Router]]'s authorize pipeline slot.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":194,"name":"step","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The pipeline step."},"type":{"type":"union","types":[{"type":"reference","name":"Function"},{"type":"reference","name":"PipelineStep","id":13}]}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":604,"character":18}]},{"id":188,"name":"addPipelineStep","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":189,"name":"addPipelineStep","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a step to be run during the [[Router]]'s navigation pipeline.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":190,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the pipeline slot to insert the step into."},"type":{"type":"intrinsic","name":"string"}},{"id":191,"name":"step","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The pipeline step."},"type":{"type":"union","types":[{"type":"reference","name":"Function"},{"type":"reference","name":"PipelineStep","id":13}]}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":596,"character":17}]},{"id":201,"name":"addPostRenderStep","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":202,"name":"addPostRenderStep","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a step to be run during the [[Router]]'s postRender pipeline slot.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":203,"name":"step","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The pipeline step."},"type":{"type":"union","types":[{"type":"reference","name":"Function"},{"type":"reference","name":"PipelineStep","id":13}]}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":628,"character":19}]},{"id":195,"name":"addPreActivateStep","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":196,"name":"addPreActivateStep","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a step to be run during the [[Router]]'s preActivate pipeline slot.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":197,"name":"step","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The pipeline step."},"type":{"type":"union","types":[{"type":"reference","name":"Function"},{"type":"reference","name":"PipelineStep","id":13}]}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":612,"character":20}]},{"id":198,"name":"addPreRenderStep","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":199,"name":"addPreRenderStep","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a step to be run during the [[Router]]'s preRender pipeline slot.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":200,"name":"step","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The pipeline step."},"type":{"type":"union","types":[{"type":"reference","name":"Function"},{"type":"reference","name":"PipelineStep","id":13}]}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":620,"character":18}]},{"id":222,"name":"exportToRouter","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":223,"name":"exportToRouter","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Applies the current configuration to the specified [[Router]]."},"parameters":[{"id":224,"name":"router","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The [[Router]] to apply the configuration to.\n"},"type":{"type":"reference","name":"Router","id":230}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":677,"character":16}]},{"id":204,"name":"fallbackRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":205,"name":"fallbackRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Configures a route that will be used if there is no previous location available on navigation cancellation.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":206,"name":"fragment","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The URL fragment to use as the navigation destination."},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":636,"character":15}]},{"id":207,"name":"map","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":208,"name":"map","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Maps one or more routes to be registered with the router.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":209,"name":"route","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The [[RouteConfig]] to map, or an array of [[RouteConfig]] to map."},"type":{"type":"union","types":[{"type":"reference","name":"RouteConfig","id":33},{"type":"array","elementType":{"type":"reference","name":"RouteConfig","id":33}}]}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":644,"character":5}]},{"id":213,"name":"mapRoute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":214,"name":"mapRoute","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Maps a single route to be registered with the router.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":215,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"RouteConfig","id":33}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":661,"character":10}]},{"id":216,"name":"mapUnknownRoutes","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":217,"name":"mapUnknownRoutes","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Registers an unknown route handler to be run when the URL fragment doesn't match any registered routes.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":218,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A string containing a moduleId to load, or a [[RouteConfig]], or a function that takes the\n [[NavigationInstruction]] and selects a moduleId to load."},"type":{"type":"union","types":[{"type":"intrinsic","name":"string"},{"type":"reference","name":"RouteConfig","id":33},{"type":"reflection","declaration":{"id":219,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":220,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":221,"name":"instruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}}],"type":{"type":"union","types":[{"type":"intrinsic","name":"string"},{"type":"reference","name":"RouteConfig","id":33},{"type":"reference","name":"Promise","typeArguments":[{"type":"union","types":[{"type":"intrinsic","name":"string"},{"type":"reference","name":"RouteConfig","id":33}]}]}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":670,"character":49}]}}]}}],"type":{"type":"reference","name":"RouterConfiguration","id":181}}],"sources":[{"fileName":"aurelia-router.d.ts","line":670,"character":18}]},{"id":210,"name":"useViewPortDefaults","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":211,"name":"useViewPortDefaults","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Configures defaults to use for any view ports.","tags":[{"tag":"chainable","text":"\n"}]},"parameters":[{"id":212,"name":"viewPortConfig","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"a view port configuration object to use as a\n default, of the form { viewPortName: { moduleId } }."},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"any"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":653,"character":21}]}],"groups":[{"title":"Properties","kind":1024,"children":[182,183,184,185,186,187]},{"title":"Methods","kind":2048,"children":[192,188,201,195,198,222,204,207,213,216,210]}],"sources":[{"fileName":"aurelia-router.d.ts","line":581,"character":40}]},{"id":85,"name":"ActivationStrategy","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"An optional interface describing the available activation strategies."},"children":[{"id":87,"name":"invokeLifecycle","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Reuse the existing view model, invoking Router lifecycle hooks."},"sources":[{"fileName":"aurelia-router.d.ts","line":297,"character":17}],"type":{"type":"stringLiteral","value":"invoke-lifecycle"}},{"id":86,"name":"noChange","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Reuse the existing view model, without invoking Router lifecycle hooks."},"sources":[{"fileName":"aurelia-router.d.ts","line":292,"character":10}],"type":{"type":"stringLiteral","value":"no-change"}},{"id":88,"name":"replace","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"Replace the existing view model, invoking Router lifecycle hooks."},"sources":[{"fileName":"aurelia-router.d.ts","line":302,"character":9}],"type":{"type":"stringLiteral","value":"replace"}}],"groups":[{"title":"Properties","kind":1024,"children":[87,86,88]}],"sources":[{"fileName":"aurelia-router.d.ts","line":287,"character":43}]},{"id":80,"name":"ConfiguresRouter","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"An optional interface describing the router configuration convention."},"children":[{"id":81,"name":"configureRouter","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":82,"name":"configureRouter","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Implement this hook if you want to configure a router."},"parameters":[{"id":83,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"RouterConfiguration","id":181}},{"id":84,"name":"router","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Router","id":230}}],"type":{"type":"union","types":[{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"void"}]},{"type":"reference","name":"PromiseLike","typeArguments":[{"type":"intrinsic","name":"void"}]},{"type":"intrinsic","name":"void"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":278,"character":17}]}],"groups":[{"title":"Methods","kind":2048,"children":[81]}],"sources":[{"fileName":"aurelia-router.d.ts","line":273,"character":41}]},{"id":93,"name":"IObservable","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A basic interface for an Observable type"},"children":[{"id":94,"name":"subscribe","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":95,"name":"subscribe","kind":4096,"kindString":"Call signature","flags":{},"type":{"type":"reference","name":"ISubscription","id":96}}],"sources":[{"fileName":"aurelia-router.d.ts","line":323,"character":11}]}],"groups":[{"title":"Methods","kind":2048,"children":[94]}],"sources":[{"fileName":"aurelia-router.d.ts","line":322,"character":36}]},{"id":96,"name":"ISubscription","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A basic interface for a Subscription to an Observable"},"children":[{"id":97,"name":"unsubscribe","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":98,"name":"unsubscribe","kind":4096,"kindString":"Call signature","flags":{},"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":333,"character":13}]}],"groups":[{"title":"Methods","kind":2048,"children":[97]}],"sources":[{"fileName":"aurelia-router.d.ts","line":332,"character":38}]},{"id":89,"name":"NavigationCommand","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"When a navigation command is encountered, the current navigation\nwill be cancelled and control will be passed to the navigation\ncommand so it can determine the correct action."},"children":[{"id":90,"name":"navigate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":91,"name":"navigate","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":92,"name":"router","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Router","id":230}}],"type":{"type":"intrinsic","name":"void"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":316,"character":10}]}],"groups":[{"title":"Methods","kind":2048,"children":[90]}],"sources":[{"fileName":"aurelia-router.d.ts","line":315,"character":42}]},{"id":23,"name":"NavigationInstructionInit","kind":256,"kindString":"Interface","flags":{"isExported":true},"children":[{"id":28,"name":"config","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":77,"character":8}],"type":{"type":"reference","name":"RouteConfig","id":33}},{"id":24,"name":"fragment","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":73,"character":10}],"type":{"type":"intrinsic","name":"string"}},{"id":32,"name":"options","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":81,"character":9}],"type":{"type":"reference","name":"Object"}},{"id":26,"name":"params","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":75,"character":8}],"type":{"type":"reference","name":"Object"}},{"id":29,"name":"parentInstruction","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":78,"character":19}],"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":30,"name":"previousInstruction","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":79,"character":21}],"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":27,"name":"queryParams","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":76,"character":13}],"type":{"type":"reference","name":"Object"}},{"id":25,"name":"queryString","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":74,"character":13}],"type":{"type":"intrinsic","name":"string"}},{"id":31,"name":"router","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":80,"character":8}],"type":{"type":"reference","name":"Router","id":230}}],"groups":[{"title":"Properties","kind":1024,"children":[28,24,32,26,29,30,27,25,31]}],"sources":[{"fileName":"aurelia-router.d.ts","line":72,"character":50}]},{"id":2,"name":"Next","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A callback to indicate when pipeline processing should advance to the next step\nor be aborted."},"signatures":[{"id":12,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Indicates the successful completion of the pipeline step."},"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"any"}]}}],"children":[{"id":6,"name":"cancel","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":7,"name":"cancel","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Indicates that the pipeline should cancel processing."},"parameters":[{"id":8,"name":"result","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"any"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":29,"character":8}]},{"id":3,"name":"complete","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":4,"name":"complete","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Indicates the successful completion of the entire pipeline."},"parameters":[{"id":5,"name":"result","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"any"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":24,"character":10}]},{"id":9,"name":"reject","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":10,"name":"reject","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Indicates that pipeline processing has failed and should be stopped."},"parameters":[{"id":11,"name":"result","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"any"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":34,"character":8}]}],"groups":[{"title":"Methods","kind":2048,"children":[6,3,9]}],"sources":[{"fileName":"aurelia-router.d.ts","line":19,"character":29}]},{"id":18,"name":"PipelineResult","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"The result of a pipeline run."},"children":[{"id":22,"name":"completed","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":70,"character":11}],"type":{"type":"intrinsic","name":"boolean"}},{"id":20,"name":"instruction","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":68,"character":13}],"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":21,"name":"output","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":69,"character":8}],"type":{"type":"intrinsic","name":"any"}},{"id":19,"name":"status","kind":1024,"kindString":"Property","flags":{"isExported":true},"sources":[{"fileName":"aurelia-router.d.ts","line":67,"character":8}],"type":{"type":"intrinsic","name":"string"}}],"groups":[{"title":"Properties","kind":1024,"children":[22,20,21,19]}],"sources":[{"fileName":"aurelia-router.d.ts","line":66,"character":39}]},{"id":13,"name":"PipelineStep","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A step to be run during processing of the pipeline."},"children":[{"id":14,"name":"run","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":15,"name":"run","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Execute the pipeline step. The step should invoke next(), next.complete(),\nnext.cancel(), or next.reject() to allow the pipeline to continue."},"parameters":[{"id":16,"name":"instruction","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The navigation instruction."},"type":{"type":"reference","name":"NavigationInstruction","id":112}},{"id":17,"name":"next","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The next step in the pipeline.\n"},"type":{"type":"reference","name":"Next","id":2}}],"type":{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"any"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":57,"character":5}]}],"groups":[{"title":"Methods","kind":2048,"children":[14]}],"sources":[{"fileName":"aurelia-router.d.ts","line":48,"character":37}]},{"id":62,"name":"RoutableComponentActivate","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"An optional interface describing the activate convention."},"children":[{"id":63,"name":"activate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":64,"name":"activate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Implement this hook if you want to perform custom logic just before your view-model is displayed.\nYou can optionally return a promise to tell the router to wait to bind and attach the view until\nafter you finish your work."},"parameters":[{"id":65,"name":"params","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"any"}},{"id":66,"name":"routeConfig","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"RouteConfig","id":33}},{"id":67,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}}],"type":{"type":"union","types":[{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"void"}]},{"type":"reference","name":"PromiseLike","typeArguments":[{"type":"intrinsic","name":"void"}]},{"type":"reference","name":"IObservable","id":93},{"type":"intrinsic","name":"void"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":217,"character":10}]}],"groups":[{"title":"Methods","kind":2048,"children":[63]}],"sources":[{"fileName":"aurelia-router.d.ts","line":210,"character":50}]},{"id":56,"name":"RoutableComponentCanActivate","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"An optional interface describing the canActivate convention."},"children":[{"id":57,"name":"canActivate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":58,"name":"canActivate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Implement this hook if you want to control whether or not your view-model can be navigated to.\nReturn a boolean value, a promise for a boolean value, or a navigation command."},"parameters":[{"id":59,"name":"params","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"any"}},{"id":60,"name":"routeConfig","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"RouteConfig","id":33}},{"id":61,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}}],"type":{"type":"union","types":[{"type":"intrinsic","name":"boolean"},{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"boolean"}]},{"type":"reference","name":"PromiseLike","typeArguments":[{"type":"intrinsic","name":"boolean"}]},{"type":"reference","name":"NavigationCommand","id":89},{"type":"reference","name":"Promise","typeArguments":[{"type":"reference","name":"NavigationCommand","id":89}]},{"type":"reference","name":"PromiseLike","typeArguments":[{"type":"reference","name":"NavigationCommand","id":89}]}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":201,"character":13}]}],"groups":[{"title":"Methods","kind":2048,"children":[57]}],"sources":[{"fileName":"aurelia-router.d.ts","line":195,"character":53}]},{"id":68,"name":"RoutableComponentCanDeactivate","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"An optional interface describing the canDeactivate convention."},"children":[{"id":69,"name":"canDeactivate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":70,"name":"canDeactivate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Implement this hook if you want to control whether or not the router can navigate away from your\nview-model when moving to a new route. Return a boolean value, a promise for a boolean value,\nor a navigation command."},"type":{"type":"union","types":[{"type":"intrinsic","name":"boolean"},{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"boolean"}]},{"type":"reference","name":"PromiseLike","typeArguments":[{"type":"intrinsic","name":"boolean"}]},{"type":"reference","name":"NavigationCommand","id":89}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":233,"character":15}]}],"groups":[{"title":"Methods","kind":2048,"children":[69]}],"sources":[{"fileName":"aurelia-router.d.ts","line":226,"character":55}]},{"id":71,"name":"RoutableComponentDeactivate","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"An optional interface describing the deactivate convention."},"children":[{"id":72,"name":"deactivate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":73,"name":"deactivate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Implement this hook if you want to perform custom logic when your view-model is being\nnavigated away from. You can optionally return a promise to tell the router to wait until\nafter you finish your work."},"type":{"type":"union","types":[{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"void"}]},{"type":"reference","name":"PromiseLike","typeArguments":[{"type":"intrinsic","name":"void"}]},{"type":"reference","name":"IObservable","id":93},{"type":"intrinsic","name":"void"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":249,"character":12}]}],"groups":[{"title":"Methods","kind":2048,"children":[72]}],"sources":[{"fileName":"aurelia-router.d.ts","line":242,"character":52}]},{"id":74,"name":"RoutableComponentDetermineActivationStrategy","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"An optional interface describing the determineActivationStrategy convention."},"children":[{"id":75,"name":"determineActivationStrategy","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":76,"name":"determineActivationStrategy","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Implement this hook if you want to give hints to the router about the activation strategy, when reusing\na view model for different routes. Available values are 'replace' and 'invoke-lifecycle'."},"parameters":[{"id":77,"name":"params","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"any"}},{"id":78,"name":"routeConfig","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"RouteConfig","id":33}},{"id":79,"name":"navigationInstruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}}],"type":{"type":"union","types":[{"type":"stringLiteral","value":"no-change"},{"type":"stringLiteral","value":"invoke-lifecycle"},{"type":"stringLiteral","value":"replace"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":264,"character":29}]}],"groups":[{"title":"Methods","kind":2048,"children":[75]}],"sources":[{"fileName":"aurelia-router.d.ts","line":258,"character":69}]},{"id":33,"name":"RouteConfig","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A configuration object that describes a route."},"indexSignature":[{"id":54,"name":"__index","kind":8192,"kindString":"Index signature","flags":{},"comment":{"shortText":"A configuration object that describes a route."},"parameters":[{"id":55,"name":"x","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"intrinsic","name":"string"}}],"type":{"type":"intrinsic","name":"any"}}],"children":[{"id":50,"name":"activationStrategy","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"Add to specify an activation strategy if it is always the same and you do not want that\nto be in your view-model code. Available values are 'replace' and 'invoke-lifecycle'."},"sources":[{"fileName":"aurelia-router.d.ts","line":170,"character":20}],"type":{"type":"union","types":[{"type":"stringLiteral","value":"no-change"},{"type":"stringLiteral","value":"invoke-lifecycle"},{"type":"stringLiteral","value":"replace"}]}},{"id":49,"name":"caseSensitive","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"When true is specified, this route will be case sensitive."},"sources":[{"fileName":"aurelia-router.d.ts","line":164,"character":15}],"type":{"type":"intrinsic","name":"boolean"}},{"id":45,"name":"generationUsesHref","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"Indicates that when route generation is done for this route, it should just take the literal value of the href property."},"sources":[{"fileName":"aurelia-router.d.ts","line":143,"character":20}],"type":{"type":"intrinsic","name":"boolean"}},{"id":44,"name":"href","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"The URL fragment to use in nav models. If unspecified, the [[RouteConfig.route]] will be used.\nHowever, if the [[RouteConfig.route]] contains dynamic segments, this property must be specified."},"sources":[{"fileName":"aurelia-router.d.ts","line":138,"character":6}],"type":{"type":"intrinsic","name":"string"}},{"id":53,"name":"layoutModel","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"specifies the model parameter to pass to the layout view model's `activate` function."},"sources":[{"fileName":"aurelia-router.d.ts","line":185,"character":13}],"type":{"type":"intrinsic","name":"any"}},{"id":51,"name":"layoutView","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"specifies the file name of a layout view to use."},"sources":[{"fileName":"aurelia-router.d.ts","line":175,"character":12}],"type":{"type":"intrinsic","name":"string"}},{"id":52,"name":"layoutViewModel","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"specifies the moduleId of the view model to use with the layout view."},"sources":[{"fileName":"aurelia-router.d.ts","line":180,"character":17}],"type":{"type":"intrinsic","name":"string"}},{"id":36,"name":"moduleId","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"The moduleId of the view model that should be activated for this route."},"sources":[{"fileName":"aurelia-router.d.ts","line":104,"character":10}],"type":{"type":"intrinsic","name":"string"}},{"id":35,"name":"name","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"A unique name for the route that may be used to identify the route when generating URL fragments.\nRequired when this route should support URL generation, such as with [[Router.generate]] or\nthe route-href custom attribute."},"sources":[{"fileName":"aurelia-router.d.ts","line":99,"character":6}],"type":{"type":"intrinsic","name":"string"}},{"id":43,"name":"nav","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"When specified, this route will be included in the [[Router.navigation]] nav model. Useful for\ndynamically generating menus or other navigation elements. When a number is specified, that value\nwill be used as a sort order."},"sources":[{"fileName":"aurelia-router.d.ts","line":132,"character":5}],"type":{"type":"union","types":[{"type":"intrinsic","name":"boolean"},{"type":"intrinsic","name":"number"}]}},{"id":48,"name":"navModel","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"The navigation model for storing and interacting with the route's navigation settings."},"sources":[{"fileName":"aurelia-router.d.ts","line":159,"character":10}],"type":{"type":"reference","name":"NavModel","id":143}},{"id":38,"name":"navigationStrategy","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"A function that can be used to dynamically select the module or modules to activate.\nThe function is passed the current [[NavigationInstruction]], and should configure\ninstruction.config with the desired moduleId, viewPorts, or redirect."},"sources":[{"fileName":"aurelia-router.d.ts","line":116,"character":20}],"type":{"type":"reflection","declaration":{"id":39,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":40,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":41,"name":"instruction","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"NavigationInstruction","id":112}}],"type":{"type":"union","types":[{"type":"reference","name":"Promise","typeArguments":[{"type":"intrinsic","name":"void"}]},{"type":"intrinsic","name":"void"}]}}],"sources":[{"fileName":"aurelia-router.d.ts","line":116,"character":22}]}}},{"id":37,"name":"redirect","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"A URL fragment to redirect to when this route is matched."},"sources":[{"fileName":"aurelia-router.d.ts","line":109,"character":10}],"type":{"type":"intrinsic","name":"string"}},{"id":34,"name":"route","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The route pattern to match against incoming URL fragments, or an array of patterns."},"sources":[{"fileName":"aurelia-router.d.ts","line":92,"character":7}],"type":{"type":"union","types":[{"type":"intrinsic","name":"string"},{"type":"array","elementType":{"type":"intrinsic","name":"string"}}]}},{"id":47,"name":"settings","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"Arbitrary data to attach to the route. This can be used to attached custom data needed by components\nlike pipeline steps and activated modules."},"sources":[{"fileName":"aurelia-router.d.ts","line":154,"character":10}],"type":{"type":"intrinsic","name":"any"}},{"id":46,"name":"title","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"The document title to set when this route is active."},"sources":[{"fileName":"aurelia-router.d.ts","line":148,"character":7}],"type":{"type":"intrinsic","name":"string"}},{"id":42,"name":"viewPorts","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"The view ports to target when activating this route. If unspecified, the target moduleId is loaded\ninto the default viewPort (the viewPort with name 'default'). The viewPorts object should have keys\nwhose property names correspond to names used by elements. The values should be objects\nspecifying the moduleId to load into that viewPort. The values may optionally include properties related to layout:\n`layoutView`, `layoutViewModel` and `layoutModel`."},"sources":[{"fileName":"aurelia-router.d.ts","line":125,"character":11}],"type":{"type":"intrinsic","name":"any"}}],"groups":[{"title":"Properties","kind":1024,"children":[50,49,45,44,53,51,52,36,35,43,48,38,37,34,47,46,42]}],"sources":[{"fileName":"aurelia-router.d.ts","line":87,"character":36}]},{"id":472,"name":"activationStrategy","kind":32,"kindString":"Variable","flags":{"isExported":true},"comment":{"shortText":"The strategy to use when activating modules during navigation."},"sources":[{"fileName":"aurelia-router.d.ts","line":683,"character":39}],"type":{"type":"reference","name":"ActivationStrategy","id":85}},{"id":468,"name":"pipelineStatus","kind":32,"kindString":"Variable","flags":{"isExported":true},"comment":{"shortText":"The status of a Pipeline."},"sources":[{"fileName":"aurelia-router.d.ts","line":339,"character":35}],"type":{"type":"intrinsic","name":"any"}},{"id":469,"name":"isNavigationCommand","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":470,"name":"isNavigationCommand","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Determines if the provided object is a navigation command.\nA navigation command is anything with a navigate method."},"parameters":[{"id":471,"name":"obj","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The object to check.\n"},"type":{"type":"intrinsic","name":"any"}}],"type":{"type":"intrinsic","name":"boolean"}}],"sources":[{"fileName":"aurelia-router.d.ts","line":521,"character":43}]}],"groups":[{"title":"Classes","kind":128,"children":[331,370,225,321,316,107,326,342,143,112,99,352,158,169,336,230,181]},{"title":"Interfaces","kind":256,"children":[85,80,93,96,89,23,2,18,13,62,56,68,71,74,33]},{"title":"Variables","kind":32,"children":[472,468]},{"title":"Functions","kind":64,"children":[469]}]} \ No newline at end of file diff --git a/package.json b/package.json index 05cf10bc..a195cefc 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "aurelia-router", - "version": "1.4.0", + "version": "1.5.0", "description": "A powerful client-side router.", "keywords": [ "aurelia",