@kitbag/router 0.26.1 → 0.27.0

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.
Files changed (60) hide show
  1. package/dist/components/routerLink.d.ts +4 -4
  2. package/dist/components/routerProgress.d.ts +18 -0
  3. package/dist/components/routerProgressBar.d.ts +12 -0
  4. package/dist/compositions/useLink.d.ts +2 -2
  5. package/dist/compositions/useLink.spec-d.d.ts +1 -0
  6. package/dist/compositions/useNavigation.browser.spec.d.ts +1 -0
  7. package/dist/compositions/useNavigation.d.ts +5 -0
  8. package/dist/errors/contextRedirectError.d.ts +1 -2
  9. package/dist/errors/unreachableRouteError.d.ts +7 -0
  10. package/dist/kitbag-router.js +2100 -1711
  11. package/dist/kitbag-router.umd.cjs +2 -2
  12. package/dist/main.d.ts +25 -1
  13. package/dist/main.spec-d.d.ts +1 -0
  14. package/dist/services/addAlias.d.ts +19 -0
  15. package/dist/services/addAlias.spec-d.d.ts +1 -0
  16. package/dist/services/addAlias.spec.d.ts +1 -0
  17. package/dist/services/createCanonicalUrl.d.ts +14 -0
  18. package/dist/services/createCanonicalUrl.spec.d.ts +1 -0
  19. package/dist/services/createDataStore.d.ts +4 -0
  20. package/dist/services/createNavigationProgress.d.ts +49 -0
  21. package/dist/services/createNavigationProgress.spec.d.ts +1 -0
  22. package/dist/services/createNavigationSignals.d.ts +17 -0
  23. package/dist/services/createNavigationSignals.spec.d.ts +1 -0
  24. package/dist/services/createResolvedRoute.d.ts +10 -1
  25. package/dist/services/createRouteValueStore.d.ts +4 -0
  26. package/dist/services/createRouterAssets.d.ts +19 -0
  27. package/dist/services/createRouterHooks.d.ts +7 -2
  28. package/dist/services/createUniqueIdSequence.d.ts +0 -1
  29. package/dist/services/getMatchesForUrl.d.ts +4 -0
  30. package/dist/services/getRoutesForRouter.d.ts +3 -2
  31. package/dist/services/routeRegex.d.ts +6 -1
  32. package/dist/services/updateResolvedRoute.d.ts +7 -0
  33. package/dist/services/updateResolvedRoute.spec.d.ts +1 -0
  34. package/dist/services/withRouteMethods.d.ts +3 -3
  35. package/dist/tests/loaderPrefetch.browser.spec.d.ts +1 -0
  36. package/dist/tests/navigationProgress.spec.d.ts +1 -0
  37. package/dist/types/addAlias.d.ts +79 -0
  38. package/dist/types/callbackContext.d.ts +0 -5
  39. package/dist/types/createRouteOptions.d.ts +6 -2
  40. package/dist/types/hooks.d.ts +9 -5
  41. package/dist/types/navigation.d.ts +36 -0
  42. package/dist/types/prefetch.d.ts +6 -1
  43. package/dist/types/props.d.ts +1 -0
  44. package/dist/types/redirects.d.ts +4 -0
  45. package/dist/types/resolved.d.ts +22 -2
  46. package/dist/types/route.d.ts +2 -0
  47. package/dist/types/routeAlias.d.ts +41 -0
  48. package/dist/types/routeCallbackContext.d.ts +1 -0
  49. package/dist/types/routeWithMethods.d.ts +3 -2
  50. package/dist/types/routerLink.d.ts +1 -1
  51. package/dist/types/routerNavigationInternal.d.ts +29 -0
  52. package/dist/types/routerRoute.d.ts +5 -1
  53. package/dist/utilities/components.d.ts +6 -2
  54. package/dist/utilities/getRegexMatcher.d.ts +1 -0
  55. package/dist/utilities/getRegexMatcher.spec.d.ts +1 -0
  56. package/dist/utilities/percentEncoding.d.ts +10 -0
  57. package/dist/utilities/percentEncoding.spec.d.ts +1 -0
  58. package/package.json +6 -6
  59. package/dist/services/createNavigationIds.d.ts +0 -6
  60. /package/dist/{services/createNavigationIds.spec.d.ts → components/routerProgress.browser.spec.d.ts} +0 -0
@@ -1,8 +1,7 @@
1
- import { UrlString } from '../types/urlString';
2
1
  import { ResolvedRoute } from '../types/resolved';
3
2
  import { EmitsOptions, InjectionKey, SlotsType, VNode } from 'vue';
4
3
  import { Router } from '../types/router';
5
- import { RouterLinkProps, ToCallback } from '../types/routerLink';
4
+ import { RouterLinkProps } from '../types/routerLink';
6
5
  type RouterLinkSlots = {
7
6
  default?: (props: {
8
7
  route: ResolvedRoute | undefined;
@@ -23,11 +22,12 @@ export declare function createRouterLink<TRouter extends Router>(routerKey: Inje
23
22
  [x: string]: unknown;
24
23
  };
25
24
  state: import('../types/state').ExtractRouteStateParamsAsOptional<Record<string, import('../main').Param>>;
26
- href: UrlString;
25
+ href: import('../main').UrlString;
26
+ canonical: import('../main').UrlString;
27
27
  query: URLSearchParams;
28
28
  hash: string;
29
29
  getTitle: import('../types/routeTitle').GetTitleCallback;
30
- }> | UrlString | ToCallback<TRouter>;
30
+ }> | import('../main').UrlString | import('../types/routerLink').ToCallback<TRouter>;
31
31
  prefetch?: import('../main').PrefetchConfig;
32
32
  target?: string;
33
33
  } & ({
@@ -0,0 +1,18 @@
1
+ import { InjectionKey } from 'vue';
2
+ import { Router } from '../types/router';
3
+ export type RouterProgressProps = {
4
+ /**
5
+ * How long a navigation must be pending before the bar appears, in milliseconds. Fast navigations never
6
+ * flash a bar. Defaults to 150.
7
+ */
8
+ delay?: number;
9
+ /**
10
+ * The color of the bar. Defaults to the `--router-progress-color` custom property, then a blue.
11
+ */
12
+ color?: string;
13
+ /**
14
+ * The accessible name of the bar, read out by screen readers. Defaults to "Loading page".
15
+ */
16
+ label?: string;
17
+ };
18
+ export declare function createRouterProgress<TRouter extends Router>(routerKey: InjectionKey<TRouter>): import('vue').DefineSetupFnComponent<RouterProgressProps, {}, {}, RouterProgressProps & {}, import('vue').PublicProps>;
@@ -0,0 +1,12 @@
1
+ import { UseNavigation } from '../types/navigation';
2
+ export type RouterProgressBarProps = {
3
+ navigation: UseNavigation;
4
+ delay: number;
5
+ color: string | undefined;
6
+ label: string;
7
+ };
8
+ /**
9
+ * The bar itself. RouterProgress mounts one instance per navigation, so the delay, the trickle, and the
10
+ * width all start fresh when the next navigation replaces it.
11
+ */
12
+ export declare const routerProgressBar: import('vue').DefineSetupFnComponent<RouterProgressBarProps, {}, {}, RouterProgressBarProps & {}, import('vue').PublicProps>;
@@ -9,8 +9,8 @@ type UseLinkArgs<TRouter extends Router, TSource extends RouterRouteName<TRouter
9
9
  type UseLinkFunction<TRouter extends Router> = {
10
10
  <TRouteKey extends RouterRouteName<TRouter>>(name: MaybeRefOrGetter<TRouteKey>, ...args: UseLinkArgs<TRouter, TRouteKey>): UseLink;
11
11
  (url: MaybeRefOrGetter<UrlString>, options?: MaybeRefOrGetter<UseLinkOptions>): UseLink;
12
- (resolvedRoute: MaybeRefOrGetter<ResolvedRoute | undefined>, options?: MaybeRefOrGetter<UseLinkOptions>): UseLink;
13
- (source: MaybeRefOrGetter<string | ResolvedRoute | undefined>, paramsOrOptions?: MaybeRefOrGetter<Record<PropertyKey, unknown> | UseLinkOptions>, maybeOptions?: MaybeRefOrGetter<UseLinkOptions>): UseLink;
12
+ (resolvedRoute: MaybeRefOrGetter<ResolvedRoute>, options?: MaybeRefOrGetter<UseLinkOptions>): UseLink;
13
+ (source: MaybeRefOrGetter<UrlString | ResolvedRoute>, options?: MaybeRefOrGetter<UseLinkOptions>): UseLink;
14
14
  };
15
15
  export declare function createUseLink<TRouter extends Router>(routerKey: InjectionKey<TRouter>): UseLinkFunction<TRouter>;
16
16
  export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ import { InjectionKey } from 'vue';
2
+ import { UseNavigation } from '../types/navigation';
3
+ import { Router } from '../types/router';
4
+ export declare const getNavigationProgressKey: (routerKey: InjectionKey<Router>) => InjectionKey<UseNavigation>;
5
+ export declare function createUseNavigation<TRouter extends Router>(routerKey: InjectionKey<TRouter>): () => UseNavigation;
@@ -1,7 +1,6 @@
1
1
  import { CallbackContextRedirect } from '../types/callbackContext';
2
2
  import { ContextError } from './contextError';
3
- import { RedirectStatus } from '../types/router';
4
3
  export declare class ContextRedirectError extends ContextError {
5
4
  response: CallbackContextRedirect;
6
- constructor(to: unknown[], redirectStatus: RedirectStatus | undefined);
5
+ constructor(to: unknown[]);
7
6
  }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * An error thrown when a named route's path does not start with `/`.
3
+ * Url pathnames always start with `/`, so such a route can never match a url.
4
+ */
5
+ export declare class UnreachableRouteError extends Error {
6
+ constructor(name: string, path: string);
7
+ }