From d5010992ce8989a9eeb64b03f730eaa2fe4b5860 Mon Sep 17 00:00:00 2001 From: Dancespile Date: Sun, 7 Jan 2018 08:37:32 +0100 Subject: [PATCH] add method which wasn't typed in navigo (#22713) * add method which wasn't typed add method lastRouteResolved() which wasn't typed see in https://github.com/krasimir/navigo * add hooks method to generic hooks which were missing in Navigo * add genericHooks interface --- types/navigo/index.d.ts | 16 ++++++++++++++-- types/navigo/navigo-tests.ts | 5 +++++ 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/types/navigo/index.d.ts b/types/navigo/index.d.ts index 3a277711a9..d9e6a43ff7 100644 --- a/types/navigo/index.d.ts +++ b/types/navigo/index.d.ts @@ -4,9 +4,17 @@ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped interface NavigoHooks { - before?(done: (suppress?: boolean) => void): void; - after?(): void; + before?(done: (suppress?: boolean) => void, params?: Params): void; + after?(params?: Params): void; + leave?(params?: Params): void; + already?(params?: Params): void; } + +interface GenericHooks { + before?(done: (suppress?: boolean) => void, params?: Params): void; + after?(params?: Params): void; +} + type RouteHandler = ((parametersObj: any, query: string) => void) | { as: string; uses(parametersObj: any): void }; declare class Navigo { @@ -34,9 +42,13 @@ declare class Navigo { resolve(currentURL?: string): boolean; link(path: string): string; + + lastRouteResolved(): {url: string, query: string}; disableIfAPINotAvailable(): void; + hooks(hooks: GenericHooks): void; + pause(): void; resume(): void; diff --git a/types/navigo/navigo-tests.ts b/types/navigo/navigo-tests.ts index 762c97b6de..a59bf3cfab 100644 --- a/types/navigo/navigo-tests.ts +++ b/types/navigo/navigo-tests.ts @@ -5,6 +5,11 @@ const useHash = false; let router = new Navigo(root, useHash); +router.hooks({ + before: function(done, params) { //do something }, + after: function(params) { //do something } + }); + router .on('/products/list', () => { // display all the products