@tinkoff/router 0.2.17 → 0.2.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,3 +4,4 @@ import type { NavigationRoute } from '../../types';
4
4
  export declare const RouterContext: import("react").Context<AbstractRouter>;
5
5
  export declare const RouteContext: import("react").Context<NavigationRoute>;
6
6
  export declare const UrlContext: import("react").Context<Url>;
7
+ //# sourceMappingURL=context.d.ts.map
@@ -3,3 +3,4 @@ export { useRouter } from './useRouter';
3
3
  export { useRoute } from './useRoute';
4
4
  export { useUrl } from './useUrl';
5
5
  export { useNavigate } from './useNavigate';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -10,3 +10,4 @@ export declare const Provider: FunctionComponent<{
10
10
  };
11
11
  children?: ReactNode;
12
12
  }>;
13
+ //# sourceMappingURL=provider.d.ts.map
@@ -5,3 +5,4 @@ interface UseNavigate {
5
5
  }
6
6
  export declare const useNavigate: UseNavigate;
7
7
  export {};
8
+ //# sourceMappingURL=useNavigate.d.ts.map
@@ -1 +1,2 @@
1
1
  export declare const useRoute: () => import("../..").NavigationRoute;
2
+ //# sourceMappingURL=useRoute.d.ts.map
@@ -1 +1,2 @@
1
1
  export declare const useRouter: () => import("../..").AbstractRouter;
2
+ //# sourceMappingURL=useRouter.d.ts.map
@@ -1 +1,2 @@
1
1
  export declare const useUrl: () => import("@tinkoff/url").Url;
2
+ //# sourceMappingURL=useUrl.d.ts.map
@@ -16,3 +16,4 @@ export declare abstract class History {
16
16
  listen(listener: Listener): void;
17
17
  setTree(tree: RouteTree): void;
18
18
  }
19
+ //# sourceMappingURL=base.d.ts.map
@@ -20,3 +20,4 @@ export declare class ClientHistory extends History {
20
20
  go(to: number, options?: HistoryOptions): Promise<void>;
21
21
  }
22
22
  export {};
23
+ //# sourceMappingURL=client.d.ts.map
@@ -3,3 +3,4 @@ export declare class ServerHistory extends History {
3
3
  save(): void;
4
4
  go(): Promise<void>;
5
5
  }
6
+ //# sourceMappingURL=server.d.ts.map
@@ -22,3 +22,4 @@ export declare const wrapHistory: <T>({ onNavigate }: {
22
22
  onNavigate: NavigateHandler;
23
23
  }) => Wrapper<T>;
24
24
  export {};
25
+ //# sourceMappingURL=wrapper.d.ts.map
package/lib/index.d.ts CHANGED
@@ -7,3 +7,4 @@ export * from './logger';
7
7
  export * from './components/react';
8
8
  export * from './tree/tree';
9
9
  export * from './tree/utils';
10
+ //# sourceMappingURL=index.d.ts.map
package/lib/logger.d.ts CHANGED
@@ -11,3 +11,4 @@ export interface Logger {
11
11
  }
12
12
  export declare let logger: Logger;
13
13
  export declare const setLogger: (newLogger: Logger) => void;
14
+ //# sourceMappingURL=logger.d.ts.map
@@ -26,6 +26,7 @@ class AbstractRouter {
26
26
  this.onRedirect = onRedirect;
27
27
  this.onNotFound = onNotFound;
28
28
  this.onBlock = onBlock;
29
+ this.currentUuid = 0;
29
30
  }
30
31
  // start is using as marker that any preparation for proper work has done in the app
31
32
  // and now router can manage any navigations
@@ -88,6 +89,7 @@ class AbstractRouter {
88
89
  history,
89
90
  navigateState,
90
91
  code: updateRouteOptions.code,
92
+ key: this.uuid(),
91
93
  };
92
94
  logger.debug({
93
95
  event: 'update-current-route',
@@ -127,6 +129,7 @@ class AbstractRouter {
127
129
  code,
128
130
  redirect,
129
131
  redirectFrom,
132
+ key: this.uuid(),
130
133
  };
131
134
  await this.runHooks('beforeResolve', navigation);
132
135
  const to = this.resolveRoute({ url: resolvedUrl, params, navigateState }, { wildcard: true });
@@ -390,6 +393,9 @@ class AbstractRouter {
390
393
  registerHook(hookName, hook) {
391
394
  return registerHook(this.hooks.get(hookName), hook);
392
395
  }
396
+ uuid() {
397
+ return this.currentUuid++;
398
+ }
393
399
  }
394
400
 
395
401
  export { AbstractRouter };
@@ -34,6 +34,7 @@ export declare abstract class AbstractRouter {
34
34
  protected guards: Set<NavigationGuard>;
35
35
  protected hooks: Map<HookName, Set<NavigationHook>>;
36
36
  protected syncHooks: Map<SyncHookName, Set<NavigationSyncHook>>;
37
+ private currentUuid;
37
38
  constructor({ trailingSlash, mergeSlashes, beforeResolve, beforeNavigate, afterNavigate, beforeUpdateCurrent, afterUpdateCurrent, guards, onChange, onRedirect, onNotFound, onBlock, }: Options);
38
39
  protected onRedirect?: NavigationHook;
39
40
  protected onNotFound?: NavigationHook;
@@ -77,5 +78,7 @@ export declare abstract class AbstractRouter {
77
78
  registerSyncHook(hookName: SyncHookName, hook: NavigationSyncHook): () => void;
78
79
  protected runHooks(hookName: HookName, navigation: Navigation): Promise<void>;
79
80
  registerHook(hookName: HookName, hook: NavigationHook): () => void;
81
+ private uuid;
80
82
  }
81
83
  export {};
84
+ //# sourceMappingURL=abstract.d.ts.map
@@ -26,6 +26,7 @@ class AbstractRouter {
26
26
  this.onRedirect = onRedirect;
27
27
  this.onNotFound = onNotFound;
28
28
  this.onBlock = onBlock;
29
+ this.currentUuid = 0;
29
30
  }
30
31
  // start is using as marker that any preparation for proper work has done in the app
31
32
  // and now router can manage any navigations
@@ -88,6 +89,7 @@ class AbstractRouter {
88
89
  history,
89
90
  navigateState,
90
91
  code: updateRouteOptions.code,
92
+ key: this.uuid(),
91
93
  };
92
94
  logger.debug({
93
95
  event: 'update-current-route',
@@ -127,6 +129,7 @@ class AbstractRouter {
127
129
  code,
128
130
  redirect,
129
131
  redirectFrom,
132
+ key: this.uuid(),
130
133
  };
131
134
  await this.runHooks('beforeResolve', navigation);
132
135
  const to = this.resolveRoute({ url: resolvedUrl, params, navigateState }, { wildcard: true });
@@ -390,6 +393,9 @@ class AbstractRouter {
390
393
  registerHook(hookName, hook) {
391
394
  return registerHook(this.hooks.get(hookName), hook);
392
395
  }
396
+ uuid() {
397
+ return this.currentUuid++;
398
+ }
393
399
  }
394
400
 
395
401
  export { AbstractRouter };
@@ -35,6 +35,7 @@ class AbstractRouter {
35
35
  this.onRedirect = onRedirect;
36
36
  this.onNotFound = onNotFound;
37
37
  this.onBlock = onBlock;
38
+ this.currentUuid = 0;
38
39
  }
39
40
  // start is using as marker that any preparation for proper work has done in the app
40
41
  // and now router can manage any navigations
@@ -97,6 +98,7 @@ class AbstractRouter {
97
98
  history,
98
99
  navigateState,
99
100
  code: updateRouteOptions.code,
101
+ key: this.uuid(),
100
102
  };
101
103
  logger.logger.debug({
102
104
  event: 'update-current-route',
@@ -136,6 +138,7 @@ class AbstractRouter {
136
138
  code,
137
139
  redirect,
138
140
  redirectFrom,
141
+ key: this.uuid(),
139
142
  };
140
143
  await this.runHooks('beforeResolve', navigation);
141
144
  const to = this.resolveRoute({ url: resolvedUrl, params, navigateState }, { wildcard: true });
@@ -399,6 +402,9 @@ class AbstractRouter {
399
402
  registerHook(hookName, hook) {
400
403
  return utils.registerHook(this.hooks.get(hookName), hook);
401
404
  }
405
+ uuid() {
406
+ return this.currentUuid++;
407
+ }
402
408
  }
403
409
 
404
410
  exports.AbstractRouter = AbstractRouter;
@@ -17,3 +17,4 @@ export declare class Router extends ClientRouter {
17
17
  private resolveIfDelayFound;
18
18
  private flattenDelayedNavigation;
19
19
  }
20
+ //# sourceMappingURL=browser.d.ts.map
@@ -10,3 +10,4 @@ export declare abstract class ClientRouter extends AbstractRouter {
10
10
  protected block(navigation: Navigation): Promise<void>;
11
11
  protected redirect(navigation: Navigation, target: NavigateOptions): Promise<void>;
12
12
  }
13
+ //# sourceMappingURL=client.d.ts.map
@@ -4,3 +4,4 @@ export declare class NoSpaRouter extends ClientRouter {
4
4
  protected run(navigation: Navigation): Promise<void>;
5
5
  protected runHooks(): Promise<void>;
6
6
  }
7
+ //# sourceMappingURL=clientNoSpa.d.ts.map
@@ -16,3 +16,4 @@ export declare class Router extends AbstractRouter {
16
16
  protected runHooks(hookName: HookName, navigation: Navigation): Promise<void>;
17
17
  protected runGuards(navigation: Navigation): Promise<void>;
18
18
  }
19
+ //# sourceMappingURL=server.d.ts.map
@@ -3,3 +3,4 @@ export declare const WILDCARD_REGEXP: RegExp;
3
3
  export declare const HISTORY_FALLBACK_REGEXP: RegExp;
4
4
  export declare const PARAM_MATCH_REGEXP: RegExp;
5
5
  export declare const PARAM_PARSER_REGEXP: RegExp;
6
+ //# sourceMappingURL=constants.d.ts.map
@@ -17,3 +17,4 @@ export declare class RouteTree {
17
17
  };
18
18
  private findRoute;
19
19
  }
20
+ //# sourceMappingURL=tree.d.ts.map
@@ -18,3 +18,4 @@ export type ParsedPath = {
18
18
  } | {
19
19
  type: PartType.wildcard;
20
20
  } | Parameter;
21
+ //# sourceMappingURL=types.d.ts.map
@@ -6,3 +6,4 @@ export declare const isWildcard: (part: string) => boolean;
6
6
  export declare const isParameterized: (part: string) => boolean;
7
7
  export declare const parse: (part: string) => ParsedPath;
8
8
  export declare const makePath: (pathname: string, params: Params) => string;
9
+ //# sourceMappingURL=utils.d.ts.map
package/lib/types.d.ts CHANGED
@@ -45,9 +45,15 @@ export interface Navigation {
45
45
  code?: number;
46
46
  redirect?: boolean;
47
47
  redirectFrom?: NavigationRoute;
48
+ /**
49
+ * Helps to separate commandLineRunner launches on navigation processes.
50
+ * Defines internally within the router
51
+ */
52
+ key?: number;
48
53
  }
49
54
  export type NavigationGuard = (navigation: Navigation) => Promise<void | NavigateOptions | string | boolean>;
50
55
  export type NavigationHook = (navigation: Navigation) => Promise<void>;
51
56
  export type NavigationSyncHook = (navigation: Navigation) => void;
52
57
  export type HookName = 'beforeResolve' | 'beforeNavigate' | 'afterNavigate' | 'beforeUpdateCurrent' | 'afterUpdateCurrent';
53
58
  export type SyncHookName = 'change';
59
+ //# sourceMappingURL=types.d.ts.map
package/lib/utils.d.ts CHANGED
@@ -6,3 +6,4 @@ export declare const normalizeManySlashes: (hrefOrPath: string) => string;
6
6
  export declare const isSameHost: import("@tinkoff/utils/typings/types").Func<true> | ((url: Url | URL) => boolean);
7
7
  export declare const makeNavigateOptions: (options: string | NavigateOptions) => NavigateOptions;
8
8
  export declare const registerHook: <T extends NavigationHook | NavigationSyncHook | NavigationGuard>(hooksSet: Set<T>, hook: T) => () => void;
9
+ //# sourceMappingURL=utils.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tinkoff/router",
3
- "version": "0.2.17",
3
+ "version": "0.2.18",
4
4
  "description": "router",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",