raviger 5.2.0 → 5.3.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.
- package/dist/Link.d.ts +3 -2
- package/dist/location.d.ts +3 -0
- package/dist/main.d.ts +2 -2
- package/dist/main.js +1 -1
- package/dist/main.js.map +1 -1
- package/dist/module.js +1 -1
- package/dist/module.js.map +1 -1
- package/dist/redirect.d.ts +6 -15
- package/package.json +3 -4
- package/CHANGELOG.md +0 -269
package/dist/Link.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React, { Ref } from 'react';
|
|
2
|
-
|
|
2
|
+
import { NavigateOptions } from './navigate';
|
|
3
|
+
export interface LinkProps extends React.AnchorHTMLAttributes<HTMLAnchorElement>, NavigateOptions {
|
|
3
4
|
href: string;
|
|
4
5
|
basePath?: string;
|
|
5
6
|
children?: React.ReactNode;
|
|
@@ -9,7 +10,7 @@ export interface ActiveLinkProps extends LinkProps {
|
|
|
9
10
|
activeClass?: string;
|
|
10
11
|
exactActiveClass?: string;
|
|
11
12
|
}
|
|
12
|
-
declare function Link({ href, basePath, ...props }: LinkProps, ref?: Ref<HTMLAnchorElement>): React.JSX.Element;
|
|
13
|
+
declare function Link({ href, basePath, replace, query, state, ...props }: LinkProps, ref?: Ref<HTMLAnchorElement>): React.JSX.Element;
|
|
13
14
|
declare const RefLink: (props: LinkProps & {
|
|
14
15
|
ref?: React.ForwardedRef<HTMLAnchorElement>;
|
|
15
16
|
}) => ReturnType<typeof Link>;
|
package/dist/location.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export type NavigationInitiator = 'push' | 'replace' | 'pop';
|
|
1
2
|
export interface RavigerLocation {
|
|
2
3
|
/** The current path; alias of `pathname` */
|
|
3
4
|
path: string | null;
|
|
@@ -12,6 +13,8 @@ export interface RavigerLocation {
|
|
|
12
13
|
hostname: string;
|
|
13
14
|
href: string;
|
|
14
15
|
origin: string;
|
|
16
|
+
/** How the navigation was initiated: 'push' (history.pushState), 'replace' (history.replaceState), or 'pop' (browser back/forward) */
|
|
17
|
+
initiatedBy?: NavigationInitiator;
|
|
15
18
|
}
|
|
16
19
|
export interface RavigerHistory {
|
|
17
20
|
scrollRestoration: 'auto' | 'manual';
|
package/dist/main.d.ts
CHANGED
|
@@ -2,10 +2,10 @@ export { useRoutes, useMatch, usePathParams } from './router';
|
|
|
2
2
|
export type { Routes, RouteOptionParams, PathParamOptions } from './router';
|
|
3
3
|
export { RouterProvider } from './context';
|
|
4
4
|
export { useRedirect, Redirect } from './redirect';
|
|
5
|
-
export type { RedirectProps
|
|
5
|
+
export type { RedirectProps } from './redirect';
|
|
6
6
|
export { Link, ActiveLink } from './Link';
|
|
7
7
|
export { navigate, useNavigate, useNavigationPrompt } from './navigate';
|
|
8
8
|
export { usePath, useHash, useFullPath, useBasePath, useLocationChange, useHistory, } from './location';
|
|
9
|
-
export type { LocationChangeSetFn, LocationChangeOptionParams } from './location';
|
|
9
|
+
export type { LocationChangeSetFn, LocationChangeOptionParams, RavigerLocation, NavigationInitiator, } from './location';
|
|
10
10
|
export { useQueryParams } from './querystring';
|
|
11
11
|
export type { QueryParam, setQueryParamsOptions } from './querystring';
|
package/dist/main.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var t=require("react");const e=t.createContext(""),n=t.createContext(null);function RouterProvider({basePath:r="",path:a,children:o}){return t.createElement(e.Provider,{value:r},t.createElement(n.Provider,{value:null!=a?a:null},o))}let r=!0;try{r=void 0===window}catch{}const a=new Set;let o=!1,s=!1,u=[0,0];function shouldCancelNavigation(){return u=[window.scrollX,window.scrollY],o?s:Array.from(a).some((t=>{const e=t();return!!e&&(s=!window.confirm(e),o=!0,setTimeout((()=>{o=!1,s=!1}),0),s)}))}function usePath(e){const r=t.useContext(n),a=useBasePath();e=e||a;const[,o]=t.useState(getFormattedPath(e));return useLocationChange(t.useCallback((({path:t})=>o(t)),[]),{basePath:e,inheritBasePath:!e,onInitial:!0}),r||getFormattedPath(e)}function useBasePath(){return t.useContext(e)}function useFullPath(){const[e,n]=t.useState(getCurrentPath());return useLocationChange(t.useCallback((({path:t})=>n(t)),[]),{inheritBasePath:!1}),e||"/"}function getCurrentPath(){return r?"/":window.location.pathname||"/"}function getCurrentHash(){if(r){const t="/",e=t.indexOf("#");return t.substring(e)}return window.location.hash}function useLocationChange(e,{inheritBasePath:n=!0,basePath:a="",isActive:o,onInitial:s=!1}={}){if(r)return;const u=useBasePath();n&&u&&(a=u);const i=t.useRef(e);t.useLayoutEffect((()=>{i.current=e}));const c=t.useCallback((
|
|
1
|
+
"use strict";var t=require("react");const e=t.createContext(""),n=t.createContext(null);function RouterProvider({basePath:r="",path:a,children:o}){return t.createElement(e.Provider,{value:r},t.createElement(n.Provider,{value:null!=a?a:null},o))}let r=!0;try{r=void 0===window}catch{}const a=new Set;let o=!1,s=!1,u=[0,0];function shouldCancelNavigation(){return u=[window.scrollX,window.scrollY],o?s:Array.from(a).some((t=>{const e=t();return!!e&&(s=!window.confirm(e),o=!0,setTimeout((()=>{o=!1,s=!1}),0),s)}))}function usePath(e){const r=t.useContext(n),a=useBasePath();e=e||a;const[,o]=t.useState(getFormattedPath(e));return useLocationChange(t.useCallback((({path:t})=>o(t)),[]),{basePath:e,inheritBasePath:!e,onInitial:!0}),r||getFormattedPath(e)}function useBasePath(){return t.useContext(e)}function useFullPath(){const[e,n]=t.useState(getCurrentPath());return useLocationChange(t.useCallback((({path:t})=>n(t)),[]),{inheritBasePath:!1}),e||"/"}function getCurrentPath(){return r?"/":window.location.pathname||"/"}function getCurrentHash(){if(r){const t="/",e=t.indexOf("#");return t.substring(e)}return window.location.hash}function useLocationChange(e,{inheritBasePath:n=!0,basePath:a="",isActive:o,onInitial:s=!1}={}){if(r)return;const u=useBasePath();n&&u&&(a=u);const i=t.useRef(e);t.useLayoutEffect((()=>{i.current=e}));const c=t.useCallback((t=>{if(void 0!==o&&!isPredicateActive(o))return;if(shouldCancelNavigation())return;const e=t.__method,n="push"===e?"push":"replace"===e?"replace":"pop";i.current(getFormattedLocation(a,n))}),[o,a]);t.useLayoutEffect((()=>(window.addEventListener("popstate",c),()=>window.removeEventListener("popstate",c))),[c]),function useMountedLayout(e,n,{onInitial:r=!1}={}){const a=t.useRef(r);t.useLayoutEffect((()=>{a.current?e():a.current=!0}),n)}((()=>{(void 0===o||isPredicateActive(o))&&i.current(getFormattedLocation(a))}),[a,o],{onInitial:s})}function getRavigerHistory(){return r?{scrollRestoration:"manual",state:null}:{scrollRestoration:window.history.scrollRestoration,state:window.history.state}}function getFormattedPath(t){const e=getCurrentPath(),n=t&&!function isPathInBase(t,e){return!!(t&&e&&e.toLowerCase().startsWith(t.toLowerCase()))}(t,e);return null===e||n?null:decodeURIComponent(t?e.replace(function basePathMatcher(t){return new RegExp("^"+t,"i")}(t),"")||"/":e)}function getFormattedLocation(t,e){const n=getFormattedPath(t);return{basePath:t,path:n,pathname:n,fullPath:getCurrentPath(),search:window.location.search,hash:getCurrentHash(),host:window.location.host,hostname:window.location.hostname,href:window.location.href,origin:window.location.origin,initiatedBy:e}}function isPredicateActive(t){return function isFunction(t){return!!t&&"function"==typeof t}(t)?t():t}const i=[null,null];function usePathOptions(t,{basePath:e,matchTrailingSlash:n=!0}){const r=useMatchers(Array.isArray(t)?t:[t]);return[trailingMatch(usePath(e),n),r]}function useMatchers(e){return t.useMemo((()=>e.map(createRouteMatcher)),[(n=e,[...n].sort().join(":"))]);var n}function getMatchParams(t,e){let n=null;const r=e.find((({regex:e})=>(n=t.match(e),!!n)));if(!r||null===n)return i;const a=r.props.reduce(((t,e,r)=>(t[e]=n[r+1],t)),{});return[r,a]}const c=/:[a-zA-Z_]+/g;function createRouteMatcher(t){var e,n;return{path:t,regex:new RegExp(`${"*"===t.substr(0,1)?"":"^"}${(n=t,n.replace(/[-\\^$+?.()|[\]{}]/g,"\\$&")).replace(c,"([^/]+)").replace(/\*/g,"")}${"*"===t.substr(-1)?"":"$"}`,"i"),props:(null!==(e=t.match(c))&&void 0!==e?e:[]).map((t=>t.substr(1)))}}function trailingMatch(t,e){return null===t||e&&t&&"/"===t[t.length-1]&&t.length>1&&(t=t.substring(0,t.length-1)),t}let l="";function navigate(t,e){if("string"!=typeof t)throw new Error('"url" must be a string, was provided a(n) '+typeof t);if(Array.isArray(null==e?void 0:e.query))throw new Error('"query" a serializable object or URLSearchParams');if(shouldCancelNavigation())return;if((null==e?void 0:e.query)&&(t+="?"+new URLSearchParams(e.query).toString()),l=t,function isAbsolute(t){return/^(?:[a-z]+:)?\/\//i.test(t)}(t)&&!function isCurrentOrigin(t){return window.location.origin===new URL(t).origin}(t))return void window.location.assign(t);const n=!!(null==e?void 0:e.replace);n?window.history.replaceState(null==e?void 0:e.state,"",t):window.history.pushState(null==e?void 0:e.state,"",t);const r=new PopStateEvent("popstate");r.__tag="raviger:navigation",r.__method=n?"replace":"push",dispatchEvent(r)}function useQueryParams(e=parseQuery,n=serializeQuery){const[r,a]=t.useState(getQueryString()),o=t.useCallback(((t,{overwrite:a=!0,replace:o=!1}={})=>{let s=getCurrentPath();t=a?t:{...e(r),...t};const u=n(t).toString();u&&(s+="?"+u),a||(s+=getCurrentHash()),navigate(s,{replace:o})}),[r,e,n]);return useLocationChange(t.useCallback((()=>a(getQueryString())),[])),[e(r),o]}function parseQuery(t){const e=new URLSearchParams(t);return Object.fromEntries(e.entries())}function serializeQuery(t){return new URLSearchParams(Object.entries(t).filter((([,t])=>null!==t))).toString()}function getQueryString(){if(r){const t="/",e=t.indexOf("?");return-1===e?"":t.substring(e+1)}return window.location.search}function useRedirect(e,n,{query:r,replace:a=!0,merge:o=!0,state:s}={}){const u=usePath(),[i]=useQueryParams(),c=getCurrentHash();let l=n;const h=new URLSearchParams({...o?i:{},...r}).toString();h&&(l+="?"+h),o&&c&&c.length&&(l+=c),t.useLayoutEffect((()=>{u===e&&navigate(l,{replace:a,state:s})}),[e,l,a,u,s])}const h=t.forwardRef((function Link({href:e,basePath:n,replace:r,query:a,state:o,...s},u){e=getLinkHref(e,n=useLinkBasePath(n));const{onClick:i,target:c}=s,l=t.useCallback((t=>{try{i&&i(t)}catch(e){throw t.preventDefault(),e}(function shouldTrap(t,e){return!t.defaultPrevented&&0===t.button&&!(e||"_self"===e)&&!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)})(t,c)&&(t.preventDefault(),navigate(t.currentTarget.href,{replace:r,query:a,state:o}))}),[i,c]);return t.createElement("a",{...s,href:e,onClick:l,ref:u})}));const f=t.forwardRef((function ActiveLink({basePath:e,className:n,exactActiveClass:r,activeClass:a,...o},s){e=useLinkBasePath(e);const u=useFullPath();let{href:i}=o;return i=function absolutePathName(t){return t.startsWith("/")?t:new URL(t,document.baseURI).pathname}(getLinkHref(i,e)),r&&u===i&&(n=`${null!=n?n:""} ${r}`.trim()),a&&u.startsWith(i)&&(n=`${null!=n?n:""} ${a}`.trim()),t.createElement(h,{...o,basePath:e,className:n,ref:s})}));function useLinkBasePath(t){const e=useBasePath();return"/"===t?"":t||e}function getLinkHref(t,e=""){return t.startsWith("/")?e+t:t}exports.ActiveLink=f,exports.Link=h,exports.Redirect=function Redirect({to:t,query:e,replace:n=!0,merge:r=!0,state:a}){return useRedirect(usePath(),t,{query:e,replace:n,merge:r,state:a}),null},exports.RouterProvider=RouterProvider,exports.navigate=navigate,exports.useBasePath=useBasePath,exports.useFullPath=useFullPath,exports.useHash=function useHash({stripHash:e=!0}={}){const[n,r]=t.useState(window.location.hash),a=t.useCallback((()=>{const t=window.location.hash;t!==n&&r(t)}),[r,n]);return t.useLayoutEffect((()=>(window.addEventListener("hashchange",a,!1),()=>window.removeEventListener("hashchange",a))),[a]),useLocationChange(a),e?n.substring(1):n},exports.useHistory=function useHistory(){const[e,n]=t.useState(getRavigerHistory());return useLocationChange(t.useCallback((()=>n(getRavigerHistory())),[n])),e},exports.useLocationChange=useLocationChange,exports.useMatch=function useMatch(t,e={}){var n;const[r,a]=usePathOptions(t,e),o=a.find((({regex:t})=>null==r?void 0:r.match(t)));return null!==(n=null==o?void 0:o.path)&&void 0!==n?n:null},exports.useNavigate=function useNavigate(e=""){const n=useBasePath();return t.useCallback(((t,r)=>{const a=e||n;navigate(t.startsWith("/")?a+t:t,r)}),[n,e])},exports.useNavigationPrompt=function useNavigationPrompt(e=!0,n="Are you sure you want to leave this page?"){r||(t.useLayoutEffect((()=>{const onPopStateNavigation=()=>{shouldCancelNavigation()&&function undoNavigation(t){window.history.pushState(null,null,t),setTimeout((()=>{window.scrollTo(...u)}),0)}(l)};return window.addEventListener("popstate",onPopStateNavigation),()=>window.removeEventListener("popstate",onPopStateNavigation)}),[]),t.useLayoutEffect((()=>{const handler=t=>{if(e)return t?function cancelNavigation(t,e){return t.preventDefault(),t.returnValue=e,e}(t,n):n};return function addInterceptor(t){window.addEventListener("beforeunload",t),a.add(t)}(handler),()=>function removeInterceptor(t){window.removeEventListener("beforeunload",t),a.delete(t)}(handler)}),[e,n]))},exports.usePath=usePath,exports.usePathParams=function usePathParams(t,e={}){const n=!Array.isArray(t),[r,a]=usePathOptions(t,e);if(null===r)return n?null:i;const[o,s]=getMatchParams(r,a);return o?n?s:[o.path,s]:n?null:i},exports.useQueryParams=useQueryParams,exports.useRedirect=useRedirect,exports.useRoutes=function useRoutes(e,{basePath:n="",routeProps:r={},overridePathParams:a=!0,matchTrailingSlash:o=!0}={}){const s=usePath(n)&&getFormattedPath(n);!function useRedirectDetection(e,n){const[,r]=t.useState({}),a=t.useCallback((()=>r({})),[]);t.useLayoutEffect((()=>{n!==getFormattedPath(e)&&a()}),[a,e,n])}(n,usePath(n));const u=function useMatchRoute(t,e,{routeProps:n,overridePathParams:r,matchTrailingSlash:a}){e=trailingMatch(e,a);const o=Array.isArray(t)?t:Object.entries(t).reduce(((t,[e,n])=>(t.push({path:e,fn:n}),t)),[]),s=useMatchers(o.map((t=>t.path)));if(null===e)return null;const[u,i]=getMatchParams(e,s);if(!u)return null;const c=o.find((t=>t.path==u.path));return c?c.fn(r?{...i,...n}:{...n,...i}):null}(e,s,{routeProps:r,overridePathParams:a,matchTrailingSlash:o});return u&&null!==s?t.createElement(RouterProvider,{basePath:n,path:s},u):null};
|
|
2
2
|
//# sourceMappingURL=main.js.map
|
package/dist/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sources":["../src/context.tsx","../src/node.ts","../src/intercept.ts","../src/location.ts","../src/hooks.ts","../src/typeChecks.ts","../src/router.tsx","../src/navigate.ts","../src/querystring.ts","../src/redirect.ts","../src/Link.tsx"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["BasePathContext","createContext","PathContext","RouterProvider","basePath","path","children","React","createElement","Provider","value","isNode","undefined","window","interceptors","Set","hasIntercepted","hasUserCancelled","lastScroll","shouldCancelNavigation","scrollX","scrollY","Array","from","some","interceptor","prompt","confirm","setTimeout","usePath","contextPath","useContext","contextBasePath","useBasePath","setPath","useState","getFormattedPath","useLocationChange","useCallback","newPath","inheritBasePath","onInitial","useFullPath","getCurrentPath","location","pathname","getCurrentHash","hashIndex","indexOf","substring","hash","setFn","isActive","routerBasePath","setRef","useRef","useLayoutEffect","current","onPopState","isPredicateActive","getFormattedLocation","addEventListener","removeEventListener","useMountedLayout","fn","deps","hasMounted","getRavigerHistory","scrollRestoration","state","history","baseMissing","isPathInBase","toLowerCase","startsWith","decodeURIComponent","replace","basePathMatcher","RegExp","fullPath","search","host","hostname","href","origin","predicate","isFunction","obj","emptyPathResult","usePathOptions","routeOrRoutes","matchTrailingSlash","matchers","useMatchers","isArray","trailingMatch","routes","useMemo","map","createRouteMatcher","params","sort","join","getMatchParams","routeMatchers","pathParams","routeMatch","find","regex","match","props","reduce","prop","i","pathPartRegex","string","substr","_a","paramName","length","lastPath","navigate","url","options","Error","query","URLSearchParams","toString","isAbsolute","test","isCurrentOrigin","URL","assign","replaceState","pushState","event","PopStateEvent","__tag","dispatchEvent","useQueryParams","parseFn","parseQuery","serializeFn","serializeQuery","querystring","setQuerystring","getQueryString","setQueryParams","overwrite","serialized","q","Object","fromEntries","entries","queryParams","filter","v","ssrPath","queryIndex","useRedirect","predicateUrl","targetUrl","merge","currentPath","currentQuery","targetQuery","RefLink","forwardRef","Link","ref","getLinkHref","useLinkBasePath","onClick","target","handleClick","e","ex","preventDefault","shouldTrap","defaultPrevented","button","metaKey","altKey","ctrlKey","shiftKey","currentTarget","ActiveLinkRef","ActiveLink","className","exactActiveClass","activeClass","absolutePathName","document","baseURI","trim","Redirect","to","useHash","stripHash","setHash","handleHash","newHash","useHistory","setHistory","useMatch","useNavigate","optBasePath","base","useNavigationPrompt","onPopStateNavigation","undoNavigation","scrollTo","handler","cancelNavigation","returnValue","addInterceptor","add","removeInterceptor","delete","usePathParams","isSingle","useRoutes","routeProps","overridePathParams","useRedirectDetection","updateState","forceRender","route","useMatchRoute","mappedRoutes","arr","push","r","pathMatch"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"main.js","sources":["../src/context.tsx","../src/node.ts","../src/intercept.ts","../src/location.ts","../src/hooks.ts","../src/typeChecks.ts","../src/router.tsx","../src/navigate.ts","../src/querystring.ts","../src/redirect.ts","../src/Link.tsx"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["BasePathContext","createContext","PathContext","RouterProvider","basePath","path","children","React","createElement","Provider","value","isNode","undefined","window","interceptors","Set","hasIntercepted","hasUserCancelled","lastScroll","shouldCancelNavigation","scrollX","scrollY","Array","from","some","interceptor","prompt","confirm","setTimeout","usePath","contextPath","useContext","contextBasePath","useBasePath","setPath","useState","getFormattedPath","useLocationChange","useCallback","newPath","inheritBasePath","onInitial","useFullPath","getCurrentPath","location","pathname","getCurrentHash","hashIndex","indexOf","substring","hash","setFn","isActive","routerBasePath","setRef","useRef","useLayoutEffect","current","onPopState","event","isPredicateActive","method","__method","initiatedBy","getFormattedLocation","addEventListener","removeEventListener","useMountedLayout","fn","deps","hasMounted","getRavigerHistory","scrollRestoration","state","history","baseMissing","isPathInBase","toLowerCase","startsWith","decodeURIComponent","replace","basePathMatcher","RegExp","fullPath","search","host","hostname","href","origin","predicate","isFunction","obj","emptyPathResult","usePathOptions","routeOrRoutes","matchTrailingSlash","matchers","useMatchers","isArray","trailingMatch","routes","useMemo","map","createRouteMatcher","params","sort","join","getMatchParams","routeMatchers","pathParams","routeMatch","find","regex","match","props","reduce","prop","i","pathPartRegex","string","substr","_a","paramName","length","lastPath","navigate","url","options","Error","query","URLSearchParams","toString","isAbsolute","test","isCurrentOrigin","URL","assign","replaceState","pushState","PopStateEvent","__tag","dispatchEvent","useQueryParams","parseFn","parseQuery","serializeFn","serializeQuery","querystring","setQuerystring","getQueryString","setQueryParams","overwrite","serialized","q","Object","fromEntries","entries","queryParams","filter","v","ssrPath","queryIndex","useRedirect","predicateUrl","targetUrl","merge","currentPath","currentQuery","targetQuery","RefLink","forwardRef","Link","ref","getLinkHref","useLinkBasePath","onClick","target","handleClick","e","ex","preventDefault","shouldTrap","defaultPrevented","button","metaKey","altKey","ctrlKey","shiftKey","currentTarget","ActiveLinkRef","ActiveLink","className","exactActiveClass","activeClass","absolutePathName","document","baseURI","trim","Redirect","to","useHash","stripHash","setHash","handleHash","newHash","useHistory","setHistory","useMatch","useNavigate","optBasePath","base","useNavigationPrompt","onPopStateNavigation","undoNavigation","scrollTo","handler","cancelNavigation","returnValue","addInterceptor","add","removeInterceptor","delete","usePathParams","isSingle","useRoutes","routeProps","overridePathParams","useRedirectDetection","updateState","forceRender","route","useMatchRoute","mappedRoutes","arr","push","r","pathMatch"],"mappings":"oCAEA,MAAMA,EAAkBC,EAAaA,cAAC,IAChCC,EAAcD,EAAaA,cAAgB,MAU3C,SAAUE,gBAAeC,SAC7BA,EAAW,GAAEC,KACbA,EAAIC,SACJA,IAMA,OAGEC,EAAAC,cAACR,EAAgBS,SAAS,CAAAC,MAAON,GAC/BG,EAAAC,cAACN,EAAYO,UAASC,MAAOL,QAAAA,EAAQ,MAAOC,GAGlD,CC7BA,IACIK,GAAS,EACb,IACEA,OAAoBC,IAAXC,MACX,CAAE,MAAQ,CCJV,MAAMC,EAAe,IAAIC,IAIzB,IAAIC,GAAiB,EACjBC,GAAmB,EACnBC,EAAa,CAAC,EAAG,YAELC,yBAEd,OADAD,EAAa,CAACL,OAAOO,QAASP,OAAOQ,SACjCL,EAAuBC,EAGpBK,MAAMC,KAAKT,GAAcU,MAAMC,IACpC,MAAMC,EAASD,IACf,QAAKC,IAGLT,GAAoBJ,OAAOc,QAAQD,GAGnCV,GAAiB,EAGjBY,YAAW,KACTZ,GAAiB,EACjBC,GAAmB,CAAK,GACvB,GAEIA,EAAgB,GAE3B,CCYM,SAAUY,QAAQzB,GACtB,MAAM0B,EAAcC,EAAUA,WAAC7B,GACzB8B,EAAkBC,cACxB7B,EAAWA,GAAY4B,EASvB,MAAS,CAAAE,GAAWC,EAAQA,SAACC,iBAAiBhC,IAS9C,OAPAiC,kBADiBC,eAAY,EAAGjC,KAAMkC,KAAcL,EAAQK,IAAU,IAC1C,CAC1BnC,WACAoC,iBAAkBpC,EAElBqC,WAAW,IAGNX,GAAeM,iBAAiBhC,EACzC,UAEgB6B,cACd,OAAOF,EAAAA,WAAW/B,EACpB,UAEgB0C,cACd,MAAOrC,EAAM6B,GAAWC,EAAQA,SAAgBQ,kBAIhD,OAFAN,kBADiBC,eAAY,EAAGjC,KAAMkC,KAAcL,EAAQK,IAAU,IAC1C,CAAEC,iBAAiB,IAExCnC,GAAQ,GACjB,UAmBgBsC,iBACd,OAAOhC,EFjGK,IEiGmBE,OAAO+B,SAASC,UAAY,GAC7D,UAEgBC,iBACd,GAAInC,EAAQ,CACV,MAAMN,EFtGI,IEuGJ0C,EAAY1C,EAAK2C,QAAQ,KAC/B,OAAO3C,EAAK4C,UAAUF,GAExB,OAAOlC,OAAO+B,SAASM,IACzB,CAEM,SAAUb,kBACdc,GACAX,gBACEA,GAAkB,EAAIpC,SACtBA,EAAW,GAAEgD,SACbA,EAAQX,UACRA,GAAY,GACkB,CAAA,GAEhC,GAAI9B,EAAQ,OAIZ,MAAM0C,EAAiBpB,cACnBO,GAAmBa,IAAgBjD,EAAWiD,GAElD,MAAMC,EAASC,EAAMA,OAAsBJ,GAC3CK,EAAAA,iBAAgB,KAMdF,EAAOG,QAAUN,CAAK,IAGxB,MAAMO,EAAapB,eAChBqB,IAEC,QAAiB/C,IAAbwC,IAA2BQ,kBAAkBR,GAAW,OAC5D,GAAIjC,yBAA0B,OAE9B,MAAM0C,EAAUF,EAAcG,SACxBC,EACO,SAAXF,EAAoB,OAAoB,YAAXA,EAAuB,UAAY,MAClEP,EAAOG,QAAQO,qBAAqB5D,EAAU2D,GAAa,GAE7D,CAACX,EAAUhD,IAGboD,EAAAA,iBAAgB,KACd3C,OAAOoD,iBAAiB,WAAYP,GAC7B,IAAM7C,OAAOqD,oBAAoB,WAAYR,KACnD,CAACA,ICtJU,SAAAS,iBACdC,EACAC,GACA5B,UAAEA,GAAY,GAAU,IAExB,MAAM6B,EAAaf,EAAMA,OAACd,GAC1Be,EAAAA,iBAAgB,KACTc,EAAWb,QACXW,IADoBE,EAAWb,SAAU,CACrC,GACRY,EACL,CDgJEF,EACE,WACmBvD,IAAbwC,GAA2BQ,kBAAkBR,KACjDE,EAAOG,QAAQO,qBAAqB5D,GAAU,GAEhD,CAACA,EAAUgD,GACX,CAAEX,aAEN,CAQA,SAAS8B,oBACP,OAAI5D,EAAe,CAAE6D,kBAAmB,SAAUC,MAAO,MAClD,CACLD,kBAAmB3D,OAAO6D,QAAQF,kBAClCC,MAAO5D,OAAO6D,QAAQD,MAE1B,CAQM,SAAUrC,iBAAiBhC,GAC/B,MAAMC,EAAOsC,iBACPgC,EAAcvE,IAiCtB,SAASwE,aAAaxE,EAAkBC,GACtC,SAAUD,GAAYC,GAAQA,EAAKwE,cAAcC,WAAW1E,EAASyE,eACvE,CAnCmCD,CAAaxE,EAAUC,GACxD,OAAa,OAATA,GAAiBsE,EAAoB,KAClCI,mBAAoB3E,EAAkBC,EAAK2E,QA2BpD,SAASC,gBAAgB7E,GACvB,OAAO,IAAI8E,OAAO,IAAM9E,EAAU,IACpC,CA7B4D6E,CAAgB7E,GAAW,KAAO,IAAtDC,EACxC,CAEA,SAAS2D,qBACP5D,EACA2D,GAEA,MAAM1D,EAAO+B,iBAAiBhC,GAC9B,MAAO,CACLA,WACAC,OACAwC,SAAUxC,EACV8E,SAAUxC,iBACVyC,OAAQvE,OAAO+B,SAASwC,OACxBlC,KAAMJ,iBACNuC,KAAMxE,OAAO+B,SAASyC,KACtBC,SAAUzE,OAAO+B,SAAS0C,SAC1BC,KAAM1E,OAAO+B,SAAS2C,KACtBC,OAAQ3E,OAAO+B,SAAS4C,OACxBzB,cAEJ,CAEA,SAASH,kBAAkB6B,GACzB,OErNI,SAAUC,WAAWC,GACzB,QAASA,GAAsB,mBAARA,CACzB,CFmNSD,CAAWD,GAAaA,IAAcA,CAC/C,CGhNA,MAAMG,EAAgC,CAAC,KAAM,MAkL7C,SAASC,eACPC,GACA1F,SAAEA,EAAQ2F,mBAAEA,GAAqB,IAEjC,MACMC,EAAWC,YADA3E,MAAM4E,QAAQJ,GAAmCA,EAAlB,CAACA,IAGjD,MAAO,CAACK,cAActE,QAAQzB,GAAW2F,GAAqBC,EAChE,CAEA,SAASC,YAAYG,GACnB,OAAOC,EAAOA,SAAC,IAAMD,EAAOE,IAAIC,qBAAqB,EAsDnCC,EAtD+CJ,EAuD1D,IAAII,GAAQC,OAAOC,KAAK,QADjC,IAAoBF,CArDpB,CAEA,SAASG,eACPtG,EACAuG,GAEA,IAAIC,EAAsC,KAG1C,MAAMC,EAAaF,EAAcG,MAAK,EAAGC,YACvCH,EAAaxG,EAAK4G,MAAMD,KACfH,KAGX,IAAKC,GAA6B,OAAfD,EAAqB,OAAOjB,EAE/C,MAAMsB,EAAQJ,EAAWI,MAAMC,QAAO,CAACD,EAAYE,EAAMC,KAEvDH,EAAME,GAAQP,EAAYQ,EAAI,GACvBH,IACN,IAEH,MAAO,CAACJ,EAAYI,EACtB,CAEA,MAAMI,EAAgB,eAEtB,SAASf,mBAAmBlG,SAyDNkH,EAxDpB,MAAO,CACLlH,OACA2G,MAAO,IAAI9B,OACT,GAAyB,MAAtB7E,EAAKmH,OAAO,EAAG,GAAa,GAAK,OAqDpBD,EArDuClH,EAsDpDkH,EAAOvC,QAAQ,sBAAuB,SArDtCA,QAAQsC,EAAe,WACvBtC,QAAQ,MAAO,MAA0B,MAApB3E,EAAKmH,WAAqB,GAAK,MACvD,KAEFN,OAAqC,QAA7BO,EAAApH,EAAK4G,MAAMK,UAAkB,IAAAG,EAAAA,EAAA,IAAInB,KAAKoB,GAAcA,EAAUF,OAAO,KAEjF,CAmCA,SAASrB,cAAc9F,EAAqB0F,GAC1C,OAAa,OAAT1F,GAEA0F,GAAsB1F,GAAkC,MAA1BA,EAAKA,EAAKsH,OAAS,IAActH,EAAKsH,OAAS,IAC/EtH,EAAOA,EAAK4C,UAAU,EAAG5C,EAAKsH,OAAS,IAHftH,CAM5B,CC7PA,IAAIuH,EAAW,GAEC,SAAAC,SAASC,EAAaC,GACpC,GAAmB,iBAARD,EACT,MAAM,IAAIE,MAAM,oDAAoDF,GAGtE,GAAIxG,MAAM4E,QAAQ6B,aAAO,EAAPA,EAASE,OACzB,MAAM,IAAID,MAAM,oDAGlB,GAAI7G,yBAA0B,OAS9B,IARI4G,aAAO,EAAPA,EAASE,SACXH,GAAO,IAAM,IAAII,gBAAgBH,EAAQE,OAAOE,YAGlDP,EAAWE,EAoEb,SAASM,WAAWN,GAClB,MAAO,qBAAqBO,KAAKP,EACnC,CAlEMM,CAAWN,KAoEjB,SAASQ,gBAAgBR,GACvB,OAAOjH,OAAO+B,SAAS4C,SAAW,IAAI+C,IAAIT,GAAKtC,MACjD,CAtE0B8C,CAAgBR,GAEtC,YADAjH,OAAO+B,SAAS4F,OAAOV,GAIzB,MAAM9C,KAAY+C,aAAA,EAAAA,EAAS/C,SACvBA,EAASnE,OAAO6D,QAAQ+D,aAAaV,aAAA,EAAAA,EAAStD,MAAO,GAAIqD,GACxDjH,OAAO6D,QAAQgE,UAAUX,aAAA,EAAAA,EAAStD,MAAO,GAAIqD,GAElD,MAAMnE,EAAQ,IAAIgF,cAAc,YAG9BhF,EAAciF,MAAQ,qBAEtBjF,EAAcG,SAAWkB,EAAU,UAAY,OACjD6D,cAAclF,EAChB,UClCgBmF,eACdC,EAAgCC,WAChCC,EAA6CC,gBAE7C,MAAOC,EAAaC,GAAkBjH,EAAQA,SAACkH,kBACzCC,EAAiBhH,eACrB,CAACkE,GAAU+C,aAAY,EAAMvE,WAAU,GAAU,MAC/C,IAAI3E,EAAOsC,iBACX6D,EAAS+C,EAAY/C,EAAS,IAAKuC,EAAQI,MAAiB3C,GAC5D,MAAMgD,EAAaP,EAAYzC,GAAQ2B,WAEnCqB,IAAYnJ,GAAQ,IAAMmJ,GACzBD,IAAWlJ,GAAQyC,kBAExB+E,SAASxH,EAAM,CAAE2E,WAAU,GAE7B,CAACmE,EAAaJ,EAASE,IAOzB,OADA5G,kBAFoBC,EAAAA,aAAY,IAAM8G,EAAeC,mBAAmB,KAGjE,CAACN,EAAQI,GAAcG,EAChC,CAEA,SAASN,WAAiCG,GACxC,MAAMM,EAAI,IAAIvB,gBAAgBiB,GAC9B,OAAOO,OAAOC,YAAYF,EAAEG,UAC9B,CAEA,SAASV,eAAqCW,GAC5C,OAAO,IAAI3B,gBAAgBwB,OAAOE,QAAQC,GAAaC,QAAO,EAAC,CAAGC,KAAa,OAANA,KAAa5B,UACxF,UAEgBkB,iBACd,GAAI1I,EAAQ,CACV,MAAMqJ,EP/DI,IOgEJC,EAAaD,EAAQhH,QAAQ,KACnC,OAAsB,IAAfiH,EAAoB,GAAKD,EAAQ/G,UAAUgH,EAAa,GAEjE,OAAOpJ,OAAO+B,SAASwC,MACzB,CC1CM,SAAU8E,YACdC,EACAC,GACAnC,MAAEA,EAAKjD,QAAEA,GAAU,EAAIqF,MAAEA,GAAQ,EAAI5F,MAAEA,GAA8B,CAAA,GAErE,MAAM6F,EAAczI,WACb0I,GAAgBzB,iBACjB5F,EAAOJ,iBAEb,IAAIgF,EAAMsC,EACV,MAAMI,EAAc,IAAItC,gBAAgB,IAClCmC,EAAQE,EAAe,MACxBtC,IACFE,WACCqC,IACF1C,GAAO,IAAM0C,GAEXH,GAASnH,GAAQA,EAAKyE,SACxBG,GAAO5E,GAGTM,EAAAA,iBAAgB,KACV8G,IAAgBH,GAClBtC,SAASC,EAAK,CAAE9C,UAASP,YAE1B,CAAC0F,EAAcrC,EAAK9C,EAASsF,EAAa7F,GAC/C,CCPA,MAAMgG,EAAUC,EAAUA,YA5B1B,SAASC,MACPpF,KAAEA,EAAInF,SAAEA,EAAQ4E,QAAEA,EAAOiD,MAAEA,EAAKxD,MAAEA,KAAUyC,GAC5C0D,GAGArF,EAAOsF,YAAYtF,EADnBnF,EAAW0K,gBAAgB1K,IAG3B,MAAM2K,QAAEA,EAAOC,OAAEA,GAAW9D,EAEtB+D,EAAc3I,eACjB4I,IACC,IACMH,GAASA,EAAQG,GACrB,MAAOC,GAEP,MADAD,EAAEE,iBACID,GA2Dd,SAASE,WAAWH,EAAoDF,GACtE,OACGE,EAAEI,kBACU,IAAbJ,EAAEK,UACAP,GAAqB,UAAXA,MACVE,EAAEM,SAAWN,EAAEO,QAAUP,EAAEQ,SAAWR,EAAES,SAE9C,EAhEUN,CAAWH,EAAGF,KAChBE,EAAEE,iBACFvD,SAASqD,EAAEU,cAAcrG,KAAM,CAAEP,QAASA,EAASiD,MAAOA,EAAOxD,MAAOA,OAG5E,CAACsG,EAASC,IAGZ,OAAOzK,EAAOC,cAAA,IAAA,IAAA0G,EAAO3B,KAAMA,EAAMwF,QAASE,EAAaL,IAAKA,GAC9D,IA2BA,MAAMiB,EAAgBnB,EAAUA,YAlBhC,SAASoB,YACP1L,SAAEA,EAAQ2L,UAAEA,EAASC,iBAAEA,EAAgBC,YAAEA,KAAgB/E,GACzD0D,GAEAxK,EAAW0K,gBAAgB1K,GAC3B,MAAM+E,EAAWzC,cAEjB,IAAI6C,KAAEA,GAAS2B,EAQf,OAPA3B,EA0BF,SAAS2G,iBAAiB3G,GACxB,OAAIA,EAAKT,WAAW,KAAaS,EAC1B,IAAIgD,IAAIhD,EAAM4G,SAASC,SAASvJ,QACzC,CA7BSqJ,CAAiBrB,YAAYtF,EAAMnF,IAEtC4L,GAAoB7G,IAAaI,IACnCwG,EAAY,GAAGA,QAAAA,EAAa,MAAMC,IAAmBK,QACnDJ,GAAe9G,EAASL,WAAWS,KACrCwG,EAAY,GAAGA,QAAAA,EAAa,MAAME,IAAcI,QAE3C9L,gBAACkK,EAAO,IAAKvD,EAAO9G,SAAUA,EAAU2L,UAAWA,EAAWnB,IAAKA,GAC5E,IAQA,SAASE,gBAAgB1K,GACvB,MAAM4B,EAAkBC,cACxB,MAAiB,MAAb7B,EAAyB,GACtBA,GAAY4B,CACrB,CAEA,SAAS6I,YAAYtF,EAAcnF,EAAW,IAC5C,OAAOmF,EAAKT,WAAW,KAAO1E,EAAWmF,EAAOA,CAClD,+DDzEgB+G,UAASC,GACvBA,EAAEtE,MACFA,EAAKjD,QACLA,GAAU,EAAIqF,MACdA,GAAQ,EAAI5F,MACZA,IAGA,OADAyF,YAAYrI,UAAW0K,EAAI,CAAEtE,QAAOjD,UAASqF,QAAO5F,UAC7C,IACT,kJN2DM,SAAU+H,SAAQC,UAAEA,GAAY,GAAS,CAAA,GAC7C,MAAOvJ,EAAMwJ,GAAWvK,EAAQA,SAACtB,OAAO+B,SAASM,MAC3CyJ,EAAarK,EAAAA,aAAY,KAC7B,MAAMsK,EAAU/L,OAAO+B,SAASM,KAC5B0J,IAAY1J,GAChBwJ,EAAQE,EAAQ,GACf,CAACF,EAASxJ,IAQb,OANAM,EAAAA,iBAAgB,KACd3C,OAAOoD,iBAAiB,aAAc0I,GAAY,GAC3C,IAAM9L,OAAOqD,oBAAoB,aAAcyI,KACrD,CAACA,IAEJtK,kBAAkBsK,GACXF,EAAYvJ,EAAKD,UAAU,GAAKC,CACzC,8BAwEgB2J,aACd,MAAOnI,EAASoI,GAAc3K,EAAQA,SAACoC,qBAEvC,OADAlC,kBAAkBC,EAAWA,aAAC,IAAMwK,EAAWvI,sBAAsB,CAACuI,KAC/DpI,CACT,wEGQgBqI,SAAS3G,EAA2B2B,EAA4B,UAC9E,MAAO1H,EAAM2F,GAAYH,eAAeO,EAAQ2B,GAC1Cd,EAAQjB,EAASe,MAAK,EAAGC,WAAY3G,aAAI,EAAJA,EAAM4G,MAAMD,KAEvD,OAAsB,QAAfS,EAAAR,aAAK,EAALA,EAAO5G,YAAQ,IAAAoH,EAAAA,EAAA,IACxB,sBCxFgB,SAAAuF,YAAYC,EAAc,IACxC,MAAM7M,EAAW6B,cASjB,OAR6BK,EAAAA,aAC3B,CAACwF,EAAaC,KACZ,MAAMmF,EAAOD,GAAe7M,EAE5ByH,SADaC,EAAIhD,WAAW,KAAOoI,EAAOpF,EAAMA,EACjCC,EAAQ,GAEzB,CAAC3H,EAAU6M,GAGf,8BA5CM,SAAUE,oBAAoB1H,GAAY,EAAM/D,EL5DzB,6CK6DvBf,IAEJ6C,EAAAA,iBAAgB,KACd,MAAM4J,qBAAuB,KACvBjM,0BLxBJ,SAAUkM,eAAezF,GAC7B/G,OAAO6D,QAAQgE,UAAU,KAAM,KAA2Bd,GAC1DhG,YAAW,KACTf,OAAOyM,YAAYpM,EAAW,GAC7B,EACL,CKoBQmM,CAAezF,IAInB,OADA/G,OAAOoD,iBAAiB,WAAYmJ,sBAC7B,IAAMvM,OAAOqD,oBAAoB,WAAYkJ,qBAAqB,GACxE,IAEH5J,EAAAA,iBAAgB,KACd,MAAM+J,QAAWrC,IACf,GAAIzF,EACF,OAAOyF,EAQf,SAASsC,iBAAiB7J,EAA0BjC,GAMlD,OAJAiC,EAAMyH,iBAENzH,EAAM8J,YAAc/L,EAEbA,CACT,CAfmB8L,CAAiBtC,EAAGxJ,GAAUA,GAI7C,OLjDE,SAAUgM,eAAeH,GAC7B1M,OAAOoD,iBAAiB,eAAgBsJ,GACxCzM,EAAa6M,IAAIJ,EACnB,CK6CIG,CAAeH,SACR,IL5CL,SAAUK,kBAAkBL,GAChC1M,OAAOqD,oBAAoB,eAAgBqJ,GAC3CzM,EAAa+M,OAAON,EACtB,CKyCiBK,CAAkBL,QAAQ,GACtC,CAAC9H,EAAW/D,IACjB,yDDwDgBoM,cACd1H,EACA2B,EAA4B,IAa5B,MAAMgG,GAAYzM,MAAM4E,QAAQE,IACzB/F,EAAM2F,GAAYH,eAAeO,EAA6B2B,GAGrE,GAAa,OAAT1H,EAAe,OAAO0N,EAAW,KAAOnI,EAE5C,MAAOkB,EAAYI,GAASP,eAAetG,EAAM2F,GAEjD,OAAKc,EAGEiH,EAEH7G,EAEC,CAACJ,EAAWzG,KAAM6G,GAPC6G,EAAW,KAAOnI,CAa5C,0FAhIM,SAAUoI,UACd5H,GACAhG,SACEA,EAAW,GAAE6N,WACbA,EAAa,GAAEC,mBACfA,GAAqB,EAAInI,mBACzBA,GAAqB,GACA,CAAA,GAUvB,MAAM1F,EAAOwB,QAAQzB,IAAagC,iBAAiBhC,IAkMrD,SAAS+N,qBAAqB/N,EAAkBC,GAC9C,OAAS+N,GAAejM,EAAQA,SAAC,IAC3BkM,EAAc/L,EAAAA,aAAY,IAAM8L,EAAY,CAAE,IAAG,IAEvD5K,EAAAA,iBAAgB,KACVnD,IAAS+B,iBAAiBhC,IAC5BiO,MAED,CAACA,EAAajO,EAAUC,GAC7B,CAxME8N,CAAqB/N,EAAUyB,QAAQzB,IAGvC,MAAMkO,EAeR,SAASC,cAEPnI,EACA/F,GACA4N,WACEA,EAAUC,mBACVA,EAAkBnI,mBAClBA,IAGF1F,EAAO8F,cAAc9F,EAAM0F,GAC3B,MAAMyI,EAAelN,MAAM4E,QAAQE,GAC/BA,EACAsD,OAAOE,QAAQxD,GAAQe,QAAO,CAACsH,GAAMpO,EAAM+D,MAEzCqK,EAAIC,KAAK,CAAErO,OAAM+D,OACVqK,IACN,IACDzI,EAAWC,YAAYuI,EAAalI,KAAKqI,GAAMA,EAAEtO,QAKvD,GAAa,OAATA,EAAe,OAAO,KAC1B,MAAOuO,EAAW1H,GAASP,eAAetG,EAAM2F,GAEhD,IAAK4I,EAAW,OAAO,KAEvB,MAAM9H,EAAa0H,EAAazH,MAAM4H,GAAMA,EAAEtO,MAAQuO,EAAUvO,OAEhE,OAAKyG,EAEEA,EAAW1C,GAChB8J,EAAqB,IAAKhH,KAAU+G,GAAe,IAAKA,KAAe/G,IAHjD,IAK1B,CAlDgBqH,CAAcnI,EAAQ/F,EAAM,CACxC4N,aACAC,qBACAnI,uBAIF,OAAKuI,GAAkB,OAATjO,EAEZE,EAAAC,cAACL,eAAc,CAACC,SAAUA,EAAUC,KAAMA,GACvCiO,GAH+B,IAMtC"}
|
package/dist/module.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import t,{createContext as e,useRef as n,useLayoutEffect as r,useState as a,useCallback as o,useContext as i,useMemo as s,forwardRef as u}from"react";const c=e(""),l=e(null);function RouterProvider({basePath:e="",path:n,children:r}){return t.createElement(c.Provider,{value:e},t.createElement(l.Provider,{value:null!=n?n:null},r))}let h=!0;try{h=void 0===window}catch{}const d=new Set;let g=!1,f=!1,
|
|
1
|
+
import t,{createContext as e,useRef as n,useLayoutEffect as r,useState as a,useCallback as o,useContext as i,useMemo as s,forwardRef as u}from"react";const c=e(""),l=e(null);function RouterProvider({basePath:e="",path:n,children:r}){return t.createElement(c.Provider,{value:e},t.createElement(l.Provider,{value:null!=n?n:null},r))}let h=!0;try{h=void 0===window}catch{}const d=new Set;let g=!1,f=!1,p=[0,0];function shouldCancelNavigation(){return p=[window.scrollX,window.scrollY],g?f:Array.from(d).some((t=>{const e=t();return!!e&&(f=!window.confirm(e),g=!0,setTimeout((()=>{g=!1,f=!1}),0),f)}))}function usePath(t){const e=i(l),n=useBasePath();t=t||n;const[,r]=a(getFormattedPath(t));return useLocationChange(o((({path:t})=>r(t)),[]),{basePath:t,inheritBasePath:!t,onInitial:!0}),e||getFormattedPath(t)}function useBasePath(){return i(c)}function useFullPath(){const[t,e]=a(getCurrentPath());return useLocationChange(o((({path:t})=>e(t)),[]),{inheritBasePath:!1}),t||"/"}function useHash({stripHash:t=!0}={}){const[e,n]=a(window.location.hash),i=o((()=>{const t=window.location.hash;t!==e&&n(t)}),[n,e]);return r((()=>(window.addEventListener("hashchange",i,!1),()=>window.removeEventListener("hashchange",i))),[i]),useLocationChange(i),t?e.substring(1):e}function getCurrentPath(){return h?"/":window.location.pathname||"/"}function getCurrentHash(){if(h){const t="/",e=t.indexOf("#");return t.substring(e)}return window.location.hash}function useLocationChange(t,{inheritBasePath:e=!0,basePath:a="",isActive:i,onInitial:s=!1}={}){if(h)return;const u=useBasePath();e&&u&&(a=u);const c=n(t);r((()=>{c.current=t}));const l=o((t=>{if(void 0!==i&&!isPredicateActive(i))return;if(shouldCancelNavigation())return;const e=t.__method,n="push"===e?"push":"replace"===e?"replace":"pop";c.current(getFormattedLocation(a,n))}),[i,a]);r((()=>(window.addEventListener("popstate",l),()=>window.removeEventListener("popstate",l))),[l]),function useMountedLayout(t,e,{onInitial:a=!1}={}){const o=n(a);r((()=>{o.current?t():o.current=!0}),e)}((()=>{(void 0===i||isPredicateActive(i))&&c.current(getFormattedLocation(a))}),[a,i],{onInitial:s})}function useHistory(){const[t,e]=a(getRavigerHistory());return useLocationChange(o((()=>e(getRavigerHistory())),[e])),t}function getRavigerHistory(){return h?{scrollRestoration:"manual",state:null}:{scrollRestoration:window.history.scrollRestoration,state:window.history.state}}function getFormattedPath(t){const e=getCurrentPath(),n=t&&!function isPathInBase(t,e){return!!(t&&e&&e.toLowerCase().startsWith(t.toLowerCase()))}(t,e);return null===e||n?null:decodeURIComponent(t?e.replace(function basePathMatcher(t){return new RegExp("^"+t,"i")}(t),"")||"/":e)}function getFormattedLocation(t,e){const n=getFormattedPath(t);return{basePath:t,path:n,pathname:n,fullPath:getCurrentPath(),search:window.location.search,hash:getCurrentHash(),host:window.location.host,hostname:window.location.hostname,href:window.location.href,origin:window.location.origin,initiatedBy:e}}function isPredicateActive(t){return function isFunction(t){return!!t&&"function"==typeof t}(t)?t():t}const P=[null,null];function useRoutes(e,{basePath:n="",routeProps:i={},overridePathParams:s=!0,matchTrailingSlash:u=!0}={}){const c=usePath(n)&&getFormattedPath(n);!function useRedirectDetection(t,e){const[,n]=a({}),i=o((()=>n({})),[]);r((()=>{e!==getFormattedPath(t)&&i()}),[i,t,e])}(n,usePath(n));const l=function useMatchRoute(t,e,{routeProps:n,overridePathParams:r,matchTrailingSlash:a}){e=trailingMatch(e,a);const o=Array.isArray(t)?t:Object.entries(t).reduce(((t,[e,n])=>(t.push({path:e,fn:n}),t)),[]),i=useMatchers(o.map((t=>t.path)));if(null===e)return null;const[s,u]=getMatchParams(e,i);if(!s)return null;const c=o.find((t=>t.path==s.path));return c?c.fn(r?{...u,...n}:{...n,...u}):null}(e,c,{routeProps:i,overridePathParams:s,matchTrailingSlash:u});return l&&null!==c?t.createElement(RouterProvider,{basePath:n,path:c},l):null}function usePathParams(t,e={}){const n=!Array.isArray(t),[r,a]=usePathOptions(t,e);if(null===r)return n?null:P;const[o,i]=getMatchParams(r,a);return o?n?i:[o.path,i]:n?null:P}function useMatch(t,e={}){var n;const[r,a]=usePathOptions(t,e),o=a.find((({regex:t})=>null==r?void 0:r.match(t)));return null!==(n=null==o?void 0:o.path)&&void 0!==n?n:null}function usePathOptions(t,{basePath:e,matchTrailingSlash:n=!0}){const r=useMatchers(Array.isArray(t)?t:[t]);return[trailingMatch(usePath(e),n),r]}function useMatchers(t){return s((()=>t.map(createRouteMatcher)),[(e=t,[...e].sort().join(":"))]);var e}function getMatchParams(t,e){let n=null;const r=e.find((({regex:e})=>(n=t.match(e),!!n)));if(!r||null===n)return P;const a=r.props.reduce(((t,e,r)=>(t[e]=n[r+1],t)),{});return[r,a]}const w=/:[a-zA-Z_]+/g;function createRouteMatcher(t){var e,n;return{path:t,regex:new RegExp(`${"*"===t.substr(0,1)?"":"^"}${(n=t,n.replace(/[-\\^$+?.()|[\]{}]/g,"\\$&")).replace(w,"([^/]+)").replace(/\*/g,"")}${"*"===t.substr(-1)?"":"$"}`,"i"),props:(null!==(e=t.match(w))&&void 0!==e?e:[]).map((t=>t.substr(1)))}}function trailingMatch(t,e){return null===t||e&&t&&"/"===t[t.length-1]&&t.length>1&&(t=t.substring(0,t.length-1)),t}let v="";function navigate(t,e){if("string"!=typeof t)throw new Error('"url" must be a string, was provided a(n) '+typeof t);if(Array.isArray(null==e?void 0:e.query))throw new Error('"query" a serializable object or URLSearchParams');if(shouldCancelNavigation())return;if((null==e?void 0:e.query)&&(t+="?"+new URLSearchParams(e.query).toString()),v=t,function isAbsolute(t){return/^(?:[a-z]+:)?\/\//i.test(t)}(t)&&!function isCurrentOrigin(t){return window.location.origin===new URL(t).origin}(t))return void window.location.assign(t);const n=!!(null==e?void 0:e.replace);n?window.history.replaceState(null==e?void 0:e.state,"",t):window.history.pushState(null==e?void 0:e.state,"",t);const r=new PopStateEvent("popstate");r.__tag="raviger:navigation",r.__method=n?"replace":"push",dispatchEvent(r)}function useNavigationPrompt(t=!0,e="Are you sure you want to leave this page?"){h||(r((()=>{const onPopStateNavigation=()=>{shouldCancelNavigation()&&function undoNavigation(t){window.history.pushState(null,null,t),setTimeout((()=>{window.scrollTo(...p)}),0)}(v)};return window.addEventListener("popstate",onPopStateNavigation),()=>window.removeEventListener("popstate",onPopStateNavigation)}),[]),r((()=>{const handler=n=>{if(t)return n?function cancelNavigation(t,e){return t.preventDefault(),t.returnValue=e,e}(n,e):e};return function addInterceptor(t){window.addEventListener("beforeunload",t),d.add(t)}(handler),()=>function removeInterceptor(t){window.removeEventListener("beforeunload",t),d.delete(t)}(handler)}),[t,e]))}function useNavigate(t=""){const e=useBasePath();return o(((n,r)=>{const a=t||e;navigate(n.startsWith("/")?a+n:n,r)}),[e,t])}function useQueryParams(t=parseQuery,e=serializeQuery){const[n,r]=a(getQueryString()),i=o(((r,{overwrite:a=!0,replace:o=!1}={})=>{let i=getCurrentPath();r=a?r:{...t(n),...r};const s=e(r).toString();s&&(i+="?"+s),a||(i+=getCurrentHash()),navigate(i,{replace:o})}),[n,t,e]);return useLocationChange(o((()=>r(getQueryString())),[])),[t(n),i]}function parseQuery(t){const e=new URLSearchParams(t);return Object.fromEntries(e.entries())}function serializeQuery(t){return new URLSearchParams(Object.entries(t).filter((([,t])=>null!==t))).toString()}function getQueryString(){if(h){const t="/",e=t.indexOf("?");return-1===e?"":t.substring(e+1)}return window.location.search}function Redirect({to:t,query:e,replace:n=!0,merge:r=!0,state:a}){return useRedirect(usePath(),t,{query:e,replace:n,merge:r,state:a}),null}function useRedirect(t,e,{query:n,replace:a=!0,merge:o=!0,state:i}={}){const s=usePath(),[u]=useQueryParams(),c=getCurrentHash();let l=e;const h=new URLSearchParams({...o?u:{},...n}).toString();h&&(l+="?"+h),o&&c&&c.length&&(l+=c),r((()=>{s===t&&navigate(l,{replace:a,state:i})}),[t,l,a,s,i])}const m=u((function Link({href:e,basePath:n,replace:r,query:a,state:i,...s},u){e=getLinkHref(e,n=useLinkBasePath(n));const{onClick:c,target:l}=s,h=o((t=>{try{c&&c(t)}catch(e){throw t.preventDefault(),e}(function shouldTrap(t,e){return!t.defaultPrevented&&0===t.button&&!(e||"_self"===e)&&!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)})(t,l)&&(t.preventDefault(),navigate(t.currentTarget.href,{replace:r,query:a,state:i}))}),[c,l]);return t.createElement("a",{...s,href:e,onClick:h,ref:u})}));const y=u((function ActiveLink({basePath:e,className:n,exactActiveClass:r,activeClass:a,...o},i){e=useLinkBasePath(e);const s=useFullPath();let{href:u}=o;return u=function absolutePathName(t){return t.startsWith("/")?t:new URL(t,document.baseURI).pathname}(getLinkHref(u,e)),r&&s===u&&(n=`${null!=n?n:""} ${r}`.trim()),a&&s.startsWith(u)&&(n=`${null!=n?n:""} ${a}`.trim()),t.createElement(m,{...o,basePath:e,className:n,ref:i})}));function useLinkBasePath(t){const e=useBasePath();return"/"===t?"":t||e}function getLinkHref(t,e=""){return t.startsWith("/")?e+t:t}export{y as ActiveLink,m as Link,Redirect,RouterProvider,navigate,useBasePath,useFullPath,useHash,useHistory,useLocationChange,useMatch,useNavigate,useNavigationPrompt,usePath,usePathParams,useQueryParams,useRedirect,useRoutes};
|
|
2
2
|
//# sourceMappingURL=module.js.map
|
package/dist/module.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.js","sources":["../src/context.tsx","../src/node.ts","../src/intercept.ts","../src/location.ts","../src/hooks.ts","../src/typeChecks.ts","../src/router.tsx","../src/navigate.ts","../src/querystring.ts","../src/redirect.ts","../src/Link.tsx"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["BasePathContext","createContext","PathContext","RouterProvider","basePath","path","children","React","createElement","Provider","value","isNode","undefined","window","interceptors","Set","hasIntercepted","hasUserCancelled","lastScroll","shouldCancelNavigation","scrollX","scrollY","Array","from","some","interceptor","prompt","confirm","setTimeout","usePath","contextPath","useContext","contextBasePath","useBasePath","setPath","useState","getFormattedPath","useLocationChange","useCallback","newPath","inheritBasePath","onInitial","useFullPath","getCurrentPath","useHash","stripHash","hash","setHash","location","handleHash","newHash","useLayoutEffect","addEventListener","removeEventListener","substring","pathname","getCurrentHash","hashIndex","indexOf","setFn","isActive","routerBasePath","setRef","useRef","current","onPopState","isPredicateActive","getFormattedLocation","useMountedLayout","fn","deps","hasMounted","useHistory","history","setHistory","getRavigerHistory","scrollRestoration","state","baseMissing","isPathInBase","toLowerCase","startsWith","decodeURIComponent","replace","basePathMatcher","RegExp","fullPath","search","host","hostname","href","origin","predicate","isFunction","obj","emptyPathResult","useRoutes","routes","routeProps","overridePathParams","matchTrailingSlash","useRedirectDetection","updateState","forceRender","route","useMatchRoute","trailingMatch","mappedRoutes","isArray","Object","entries","reduce","arr","push","matchers","useMatchers","map","r","pathMatch","props","getMatchParams","routeMatch","find","usePathParams","options","isSingle","usePathOptions","useMatch","match","regex","_a","routeOrRoutes","useMemo","createRouteMatcher","params","sort","join","routeMatchers","pathParams","prop","i","pathPartRegex","string","substr","paramName","length","lastPath","navigate","url","Error","query","URLSearchParams","toString","isAbsolute","test","isCurrentOrigin","URL","assign","replaceState","pushState","event","PopStateEvent","__tag","dispatchEvent","useNavigationPrompt","onPopStateNavigation","undoNavigation","scrollTo","handler","e","cancelNavigation","preventDefault","returnValue","addInterceptor","add","removeInterceptor","delete","useNavigate","optBasePath","base","useQueryParams","parseFn","parseQuery","serializeFn","serializeQuery","querystring","setQuerystring","getQueryString","setQueryParams","overwrite","serialized","q","fromEntries","queryParams","filter","v","ssrPath","queryIndex","Redirect","to","merge","useRedirect","predicateUrl","targetUrl","currentPath","currentQuery","targetQuery","RefLink","forwardRef","Link","ref","getLinkHref","useLinkBasePath","onClick","target","handleClick","ex","shouldTrap","defaultPrevented","button","metaKey","altKey","ctrlKey","shiftKey","currentTarget","ActiveLinkRef","ActiveLink","className","exactActiveClass","activeClass","absolutePathName","document","baseURI","trim"],"mappings":"sJAEA,MAAMA,EAAkBC,EAAc,IAChCC,EAAcD,EAA6B,MAU3C,SAAUE,gBAAeC,SAC7BA,EAAW,GAAEC,KACbA,EAAIC,SACJA,IAMA,OAGEC,EAAAC,cAACR,EAAgBS,SAAS,CAAAC,MAAON,GAC/BG,EAAAC,cAACN,EAAYO,UAASC,MAAOL,QAAAA,EAAQ,MAAOC,GAGlD,CC7BA,IACIK,GAAS,EACb,IACEA,OAAoBC,IAAXC,MACX,CAAE,MAAQ,CCJV,MAAMC,EAAe,IAAIC,IAIzB,IAAIC,GAAiB,EACjBC,GAAmB,EACnBC,EAAa,CAAC,EAAG,YAELC,yBAEd,OADAD,EAAa,CAACL,OAAOO,QAASP,OAAOQ,SACjCL,EAAuBC,EAGpBK,MAAMC,KAAKT,GAAcU,MAAMC,IACpC,MAAMC,EAASD,IACf,QAAKC,IAGLT,GAAoBJ,OAAOc,QAAQD,GAGnCV,GAAiB,EAGjBY,YAAW,KACTZ,GAAiB,EACjBC,GAAmB,CAAK,GACvB,GAEIA,EAAgB,GAE3B,CCQM,SAAUY,QAAQzB,GACtB,MAAM0B,EAAcC,EAAW7B,GACzB8B,EAAkBC,cACxB7B,EAAWA,GAAY4B,EASvB,MAAS,CAAAE,GAAWC,EAASC,iBAAiBhC,IAS9C,OAPAiC,kBADiBC,GAAY,EAAGjC,KAAMkC,KAAcL,EAAQK,IAAU,IAC1C,CAC1BnC,WACAoC,iBAAkBpC,EAElBqC,WAAW,IAGNX,GAAeM,iBAAiBhC,EACzC,UAEgB6B,cACd,OAAOF,EAAW/B,EACpB,UAEgB0C,cACd,MAAOrC,EAAM6B,GAAWC,EAAwBQ,kBAIhD,OAFAN,kBADiBC,GAAY,EAAGjC,KAAMkC,KAAcL,EAAQK,IAAU,IAC1C,CAAEC,iBAAiB,IAExCnC,GAAQ,GACjB,CAEM,SAAUuC,SAAQC,UAAEA,GAAY,GAAS,CAAA,GAC7C,MAAOC,EAAMC,GAAWZ,EAAStB,OAAOmC,SAASF,MAC3CG,EAAaX,GAAY,KAC7B,MAAMY,EAAUrC,OAAOmC,SAASF,KAC5BI,IAAYJ,GAChBC,EAAQG,EAAQ,GACf,CAACH,EAASD,IAQb,OANAK,GAAgB,KACdtC,OAAOuC,iBAAiB,aAAcH,GAAY,GAC3C,IAAMpC,OAAOwC,oBAAoB,aAAcJ,KACrD,CAACA,IAEJZ,kBAAkBY,GACXJ,EAAYC,EAAKQ,UAAU,GAAKR,CACzC,UAEgBH,iBACd,OAAOhC,EF7FK,IE6FmBE,OAAOmC,SAASO,UAAY,GAC7D,UAEgBC,iBACd,GAAI7C,EAAQ,CACV,MAAMN,EFlGI,IEmGJoD,EAAYpD,EAAKqD,QAAQ,KAC/B,OAAOrD,EAAKiD,UAAUG,GAExB,OAAO5C,OAAOmC,SAASF,IACzB,CAEM,SAAUT,kBACdsB,GACAnB,gBACEA,GAAkB,EAAIpC,SACtBA,EAAW,GAAEwD,SACbA,EAAQnB,UACRA,GAAY,GACkB,CAAA,GAEhC,GAAI9B,EAAQ,OAIZ,MAAMkD,EAAiB5B,cACnBO,GAAmBqB,IAAgBzD,EAAWyD,GAElD,MAAMC,EAASC,EAA4BJ,GAC3CR,GAAgB,KAMdW,EAAOE,QAAUL,CAAK,IAGxB,MAAMM,EAAa3B,GAAY,WAEZ1B,IAAbgD,GAA2BM,kBAAkBN,MAC7CzC,0BACJ2C,EAAOE,QAAQG,qBAAqB/D,IAAU,GAC7C,CAACwD,EAAUxD,IAEd+C,GAAgB,KACdtC,OAAOuC,iBAAiB,WAAYa,GAC7B,IAAMpD,OAAOwC,oBAAoB,WAAYY,KACnD,CAACA,IC3IU,SAAAG,iBACdC,EACAC,GACA7B,UAAEA,GAAY,GAAU,IAExB,MAAM8B,EAAaR,EAAOtB,GAC1BU,GAAgB,KACToB,EAAWP,QACXK,IADoBE,EAAWP,SAAU,CACrC,GACRM,EACL,CDqIEF,EACE,WACmBxD,IAAbgD,GAA2BM,kBAAkBN,KACjDE,EAAOE,QAAQG,qBAAqB/D,GAAU,GAEhD,CAACA,EAAUwD,GACX,CAAEnB,aAEN,UAEgB+B,aACd,MAAOC,EAASC,GAAcvC,EAASwC,qBAEvC,OADAtC,kBAAkBC,GAAY,IAAMoC,EAAWC,sBAAsB,CAACD,KAC/DD,CACT,CAEA,SAASE,oBACP,OAAIhE,EAAe,CAAEiE,kBAAmB,SAAUC,MAAO,MAClD,CACLD,kBAAmB/D,OAAO4D,QAAQG,kBAClCC,MAAOhE,OAAO4D,QAAQI,MAE1B,CAQM,SAAUzC,iBAAiBhC,GAC/B,MAAMC,EAAOsC,iBACPmC,EAAc1E,IA6BtB,SAAS2E,aAAa3E,EAAkBC,GACtC,SAAUD,GAAYC,GAAQA,EAAK2E,cAAcC,WAAW7E,EAAS4E,eACvE,CA/BmCD,CAAa3E,EAAUC,GACxD,OAAa,OAATA,GAAiByE,EAAoB,KAClCI,mBAAoB9E,EAAkBC,EAAK8E,QAuBpD,SAASC,gBAAgBhF,GACvB,OAAO,IAAIiF,OAAO,IAAMjF,EAAU,IACpC,CAzB4DgF,CAAgBhF,GAAW,KAAO,IAAtDC,EACxC,CAEA,SAAS8D,qBAAqB/D,GAC5B,MAAMC,EAAO+B,iBAAiBhC,GAC9B,MAAO,CACLA,WACAC,OACAkD,SAAUlD,EACViF,SAAU3C,iBACV4C,OAAQ1E,OAAOmC,SAASuC,OACxBzC,KAAMU,iBACNgC,KAAM3E,OAAOmC,SAASwC,KACtBC,SAAU5E,OAAOmC,SAASyC,SAC1BC,KAAM7E,OAAOmC,SAAS0C,KACtBC,OAAQ9E,OAAOmC,SAAS2C,OAE5B,CAEA,SAASzB,kBAAkB0B,GACzB,OEtMI,SAAUC,WAAWC,GACzB,QAASA,GAAsB,mBAARA,CACzB,CFoMSD,CAAWD,GAAaA,IAAcA,CAC/C,CGjMA,MAAMG,EAAgC,CAAC,KAAM,MAyCvC,SAAUC,UACdC,GACA7F,SACEA,EAAW,GAAE8F,WACbA,EAAa,GAAEC,mBACfA,GAAqB,EAAIC,mBACzBA,GAAqB,GACA,CAAA,GAUvB,MAAM/F,EAAOwB,QAAQzB,IAAagC,iBAAiBhC,IAkMrD,SAASiG,qBAAqBjG,EAAkBC,GAC9C,OAASiG,GAAenE,EAAS,IAC3BoE,EAAcjE,GAAY,IAAMgE,EAAY,CAAE,IAAG,IAEvDnD,GAAgB,KACV9C,IAAS+B,iBAAiBhC,IAC5BmG,MAED,CAACA,EAAanG,EAAUC,GAC7B,CAxMEgG,CAAqBjG,EAAUyB,QAAQzB,IAGvC,MAAMoG,EAeR,SAASC,cAEPR,EACA5F,GACA6F,WACEA,EAAUC,mBACVA,EAAkBC,mBAClBA,IAGF/F,EAAOqG,cAAcrG,EAAM+F,GAC3B,MAAMO,EAAerF,MAAMsF,QAAQX,GAC/BA,EACAY,OAAOC,QAAQb,GAAQc,QAAO,CAACC,GAAM3G,EAAMgE,MAEzC2C,EAAIC,KAAK,CAAE5G,OAAMgE,OACV2C,IACN,IACDE,EAAWC,YAAYR,EAAaS,KAAKC,GAAMA,EAAEhH,QAKvD,GAAa,OAATA,EAAe,OAAO,KAC1B,MAAOiH,EAAWC,GAASC,eAAenH,EAAM6G,GAEhD,IAAKI,EAAW,OAAO,KAEvB,MAAMG,EAAad,EAAae,MAAML,GAAMA,EAAEhH,MAAQiH,EAAUjH,OAEhE,OAAKoH,EAEEA,EAAWpD,GAChB8B,EAAqB,IAAKoB,KAAUrB,GAAe,IAAKA,KAAeqB,IAHjD,IAK1B,CAlDgBd,CAAcR,EAAQ5F,EAAM,CACxC6F,aACAC,qBACAC,uBAIF,OAAKI,GAAkB,OAATnG,EAEZE,EAAAC,cAACL,eAAc,CAACC,SAAUA,EAAUC,KAAMA,GACvCmG,GAH+B,IAMtC,UAwDgBmB,cACd1B,EACA2B,EAA4B,IAa5B,MAAMC,GAAYvG,MAAMsF,QAAQX,IACzB5F,EAAM6G,GAAYY,eAAe7B,EAA6B2B,GAGrE,GAAa,OAATvH,EAAe,OAAOwH,EAAW,KAAO9B,EAE5C,MAAO0B,EAAYF,GAASC,eAAenH,EAAM6G,GAEjD,OAAKO,EAGEI,EAEHN,EAEC,CAACE,EAAWpH,KAAMkH,GAPCM,EAAW,KAAO9B,CAa5C,UAEgBgC,SAAS9B,EAA2B2B,EAA4B,UAC9E,MAAOvH,EAAM6G,GAAYY,eAAe7B,EAAQ2B,GAC1CI,EAAQd,EAASQ,MAAK,EAAGO,WAAY5H,aAAI,EAAJA,EAAM2H,MAAMC,KAEvD,OAAsB,QAAfC,EAAAF,aAAK,EAALA,EAAO3H,YAAQ,IAAA6H,EAAAA,EAAA,IACxB,CAEA,SAASJ,eACPK,GACA/H,SAAEA,EAAQgG,mBAAEA,GAAqB,IAEjC,MACMc,EAAWC,YADA7F,MAAMsF,QAAQuB,GAAmCA,EAAlB,CAACA,IAGjD,MAAO,CAACzB,cAAc7E,QAAQzB,GAAWgG,GAAqBc,EAChE,CAEA,SAASC,YAAYlB,GACnB,OAAOmC,GAAQ,IAAMnC,EAAOmB,IAAIiB,qBAAqB,EAsDnCC,EAtD+CrC,EAuD1D,IAAIqC,GAAQC,OAAOC,KAAK,QADjC,IAAoBF,CArDpB,CAEA,SAASd,eACPnH,EACAoI,GAEA,IAAIC,EAAsC,KAG1C,MAAMjB,EAAagB,EAAcf,MAAK,EAAGO,YACvCS,EAAarI,EAAK2H,MAAMC,KACfS,KAGX,IAAKjB,GAA6B,OAAfiB,EAAqB,OAAO3C,EAE/C,MAAMwB,EAAQE,EAAWF,MAAMR,QAAO,CAACQ,EAAYoB,EAAMC,KAEvDrB,EAAMoB,GAAQD,EAAYE,EAAI,GACvBrB,IACN,IAEH,MAAO,CAACE,EAAYF,EACtB,CAEA,MAAMsB,EAAgB,eAEtB,SAASR,mBAAmBhI,SAyDNyI,EAxDpB,MAAO,CACLzI,OACA4H,MAAO,IAAI5C,OACT,GAAyB,MAAtBhF,EAAK0I,OAAO,EAAG,GAAa,GAAK,OAqDpBD,EArDuCzI,EAsDpDyI,EAAO3D,QAAQ,sBAAuB,SArDtCA,QAAQ0D,EAAe,WACvB1D,QAAQ,MAAO,MAA0B,MAApB9E,EAAK0I,WAAqB,GAAK,MACvD,KAEFxB,OAAqC,QAA7BW,EAAA7H,EAAK2H,MAAMa,UAAkB,IAAAX,EAAAA,EAAA,IAAId,KAAK4B,GAAcA,EAAUD,OAAO,KAEjF,CAmCA,SAASrC,cAAcrG,EAAqB+F,GAC1C,OAAa,OAAT/F,GAEA+F,GAAsB/F,GAAkC,MAA1BA,EAAKA,EAAK4I,OAAS,IAAc5I,EAAK4I,OAAS,IAC/E5I,EAAOA,EAAKiD,UAAU,EAAGjD,EAAK4I,OAAS,IAHf5I,CAM5B,CC7PA,IAAI6I,EAAW,GAEC,SAAAC,SAASC,EAAaxB,GACpC,GAAmB,iBAARwB,EACT,MAAM,IAAIC,MAAM,oDAAoDD,GAGtE,GAAI9H,MAAMsF,QAAQgB,aAAO,EAAPA,EAAS0B,OACzB,MAAM,IAAID,MAAM,oDAGlB,GAAIlI,yBAA0B,OAS9B,IARIyG,aAAO,EAAPA,EAAS0B,SACXF,GAAO,IAAM,IAAIG,gBAAgB3B,EAAQ0B,OAAOE,YAGlDN,EAAWE,EAiEb,SAASK,WAAWL,GAClB,MAAO,qBAAqBM,KAAKN,EACnC,CA/DMK,CAAWL,KAiEjB,SAASO,gBAAgBP,GACvB,OAAOvI,OAAOmC,SAAS2C,SAAW,IAAIiE,IAAIR,GAAKzD,MACjD,CAnE0BgE,CAAgBP,GAEtC,YADAvI,OAAOmC,SAAS6G,OAAOT,IAIrBxB,aAAA,EAAAA,EAASzC,SAAStE,OAAO4D,QAAQqF,aAAalC,aAAA,EAAAA,EAAS/C,MAAO,GAAIuE,GACjEvI,OAAO4D,QAAQsF,UAAUnC,aAAA,EAAAA,EAAS/C,MAAO,GAAIuE,GAElD,MAAMY,EAAQ,IAAIC,cAAc,YAG9BD,EAAcE,MAAQ,qBACxBC,cAAcH,EAChB,CAEM,SAAUI,oBAAoBxE,GAAY,EAAMlE,ELzDzB,6CK0DvBf,IAEJwC,GAAgB,KACd,MAAMkH,qBAAuB,KACvBlJ,0BLrBJ,SAAUmJ,eAAepB,GAC7BrI,OAAO4D,QAAQsF,UAAU,KAAM,KAA2Bb,GAC1DtH,YAAW,KACTf,OAAO0J,YAAYrJ,EAAW,GAC7B,EACL,CKiBQoJ,CAAepB,IAInB,OADArI,OAAOuC,iBAAiB,WAAYiH,sBAC7B,IAAMxJ,OAAOwC,oBAAoB,WAAYgH,qBAAqB,GACxE,IAEHlH,GAAgB,KACd,MAAMqH,QAAWC,IACf,GAAI7E,EACF,OAAO6E,EAQf,SAASC,iBAAiBV,EAA0BtI,GAMlD,OAJAsI,EAAMW,iBAENX,EAAMY,YAAclJ,EAEbA,CACT,CAfmBgJ,CAAiBD,EAAG/I,GAAUA,GAI7C,OL9CE,SAAUmJ,eAAeL,GAC7B3J,OAAOuC,iBAAiB,eAAgBoH,GACxC1J,EAAagK,IAAIN,EACnB,CK0CIK,CAAeL,SACR,ILzCL,SAAUO,kBAAkBP,GAChC3J,OAAOwC,oBAAoB,eAAgBmH,GAC3C1J,EAAakK,OAAOR,EACtB,CKsCiBO,CAAkBP,QAAQ,GACtC,CAAC5E,EAAWlE,IACjB,CAWgB,SAAAuJ,YAAYC,EAAc,IACxC,MAAM9K,EAAW6B,cASjB,OAR6BK,GAC3B,CAAC8G,EAAaxB,KACZ,MAAMuD,EAAOD,GAAe9K,EAE5B+I,SADaC,EAAInE,WAAW,KAAOkG,EAAO/B,EAAMA,EACjCxB,EAAQ,GAEzB,CAACxH,EAAU8K,GAGf,UC7EgBE,eACdC,EAAgCC,WAChCC,EAA6CC,gBAE7C,MAAOC,EAAaC,GAAkBvJ,EAASwJ,kBACzCC,EAAiBtJ,GACrB,CAACgG,GAAUuD,aAAY,EAAM1G,WAAU,GAAU,MAC/C,IAAI9E,EAAOsC,iBACX2F,EAASuD,EAAYvD,EAAS,IAAK+C,EAAQI,MAAiBnD,GAC5D,MAAMwD,EAAaP,EAAYjD,GAAQkB,WAEnCsC,IAAYzL,GAAQ,IAAMyL,GACzBD,IAAWxL,GAAQmD,kBAExB2F,SAAS9I,EAAM,CAAE8E,WAAU,GAE7B,CAACsG,EAAaJ,EAASE,IAOzB,OADAlJ,kBAFoBC,GAAY,IAAMoJ,EAAeC,mBAAmB,KAGjE,CAACN,EAAQI,GAAcG,EAChC,CAEA,SAASN,WAAiCG,GACxC,MAAMM,EAAI,IAAIxC,gBAAgBkC,GAC9B,OAAO5E,OAAOmF,YAAYD,EAAEjF,UAC9B,CAEA,SAAS0E,eAAqCS,GAC5C,OAAO,IAAI1C,gBAAgB1C,OAAOC,QAAQmF,GAAaC,QAAO,EAAC,CAAGC,KAAa,OAANA,KAAa3C,UACxF,UAEgBmC,iBACd,GAAIhL,EAAQ,CACV,MAAMyL,EP/DI,IOgEJC,EAAaD,EAAQ1I,QAAQ,KACnC,OAAsB,IAAf2I,EAAoB,GAAKD,EAAQ9I,UAAU+I,EAAa,GAEjE,OAAOxL,OAAOmC,SAASuC,MACzB,CChDgB,SAAA+G,UAASC,GACvBA,EAAEjD,MACFA,EAAKnE,QACLA,GAAU,EAAIqH,MACdA,GAAQ,IAGR,OADAC,YAAY5K,UAAW0K,EAAI,CAAEjD,QAAOnE,UAASqH,UACtC,IACT,UAEgBC,YACdC,EACAC,GACArD,MACEA,EAAKnE,QACLA,GAAU,EAAIqH,MACdA,GAAQ,GACsD,IAEhE,MAAMI,EAAc/K,WACbgL,GAAgBzB,iBACjBtI,EAAOU,iBAEb,IAAI4F,EAAMuD,EACV,MAAMG,EAAc,IAAIvD,gBAAgB,IAClCiD,EAAQK,EAAe,MACxBvD,IACFE,WACCsD,IACF1D,GAAO,IAAM0D,GAEXN,GAAS1J,GAAQA,EAAKmG,SACxBG,GAAOtG,GAGTK,GAAgB,KACVyJ,IAAgBF,GAClBvD,SAASC,EAAK,CAAEjE,cAEjB,CAACuH,EAActD,EAAKjE,EAASyH,GAClC,CClBA,MAAMG,EAAUC,GAzBhB,SAASC,MAAKvH,KAAEA,EAAItF,SAAEA,KAAamH,GAAoB2F,GAErDxH,EAAOyH,YAAYzH,EADnBtF,EAAWgN,gBAAgBhN,IAG3B,MAAMiN,QAAEA,EAAOC,OAAEA,GAAW/F,EAEtBgG,EAAcjL,GACjBmI,IACC,IACM4C,GAASA,EAAQ5C,GACrB,MAAO+C,GAEP,MADA/C,EAAEE,iBACI6C,GA2Dd,SAASC,WAAWhD,EAAoD6C,GACtE,OACG7C,EAAEiD,kBACU,IAAbjD,EAAEkD,UACAL,GAAqB,UAAXA,MACV7C,EAAEmD,SAAWnD,EAAEoD,QAAUpD,EAAEqD,SAAWrD,EAAEsD,SAE9C,EAhEUN,CAAWhD,EAAG6C,KAChB7C,EAAEE,iBACFxB,SAASsB,EAAEuD,cAActI,SAG7B,CAAC2H,EAASC,IAGZ,OAAO/M,EAAOC,cAAA,IAAA,IAAA+G,EAAO7B,KAAMA,EAAM2H,QAASE,EAAaL,IAAKA,GAC9D,IA2BA,MAAMe,EAAgBjB,GAlBtB,SAASkB,YACP9N,SAAEA,EAAQ+N,UAAEA,EAASC,iBAAEA,EAAgBC,YAAEA,KAAgB9G,GACzD2F,GAEA9M,EAAWgN,gBAAgBhN,GAC3B,MAAMkF,EAAW5C,cAEjB,IAAIgD,KAAEA,GAAS6B,EAQf,OAPA7B,EA0BF,SAAS4I,iBAAiB5I,GACxB,OAAIA,EAAKT,WAAW,KAAaS,EAC1B,IAAIkE,IAAIlE,EAAM6I,SAASC,SAASjL,QACzC,CA7BS+K,CAAiBnB,YAAYzH,EAAMtF,IAEtCgO,GAAoB9I,IAAaI,IACnCyI,EAAY,GAAGA,QAAAA,EAAa,MAAMC,IAAmBK,QACnDJ,GAAe/I,EAASL,WAAWS,KACrCyI,EAAY,GAAGA,QAAAA,EAAa,MAAME,IAAcI,QAE3ClO,gBAACwM,EAAO,IAAKxF,EAAOnH,SAAUA,EAAU+N,UAAWA,EAAWjB,IAAKA,GAC5E,IAQA,SAASE,gBAAgBhN,GACvB,MAAM4B,EAAkBC,cACxB,MAAiB,MAAb7B,EAAyB,GACtBA,GAAY4B,CACrB,CAEA,SAASmL,YAAYzH,EAActF,EAAW,IAC5C,OAAOsF,EAAKT,WAAW,KAAO7E,EAAWsF,EAAOA,CAClD"}
|
|
1
|
+
{"version":3,"file":"module.js","sources":["../src/context.tsx","../src/node.ts","../src/intercept.ts","../src/location.ts","../src/hooks.ts","../src/typeChecks.ts","../src/router.tsx","../src/navigate.ts","../src/querystring.ts","../src/redirect.ts","../src/Link.tsx"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["BasePathContext","createContext","PathContext","RouterProvider","basePath","path","children","React","createElement","Provider","value","isNode","undefined","window","interceptors","Set","hasIntercepted","hasUserCancelled","lastScroll","shouldCancelNavigation","scrollX","scrollY","Array","from","some","interceptor","prompt","confirm","setTimeout","usePath","contextPath","useContext","contextBasePath","useBasePath","setPath","useState","getFormattedPath","useLocationChange","useCallback","newPath","inheritBasePath","onInitial","useFullPath","getCurrentPath","useHash","stripHash","hash","setHash","location","handleHash","newHash","useLayoutEffect","addEventListener","removeEventListener","substring","pathname","getCurrentHash","hashIndex","indexOf","setFn","isActive","routerBasePath","setRef","useRef","current","onPopState","event","isPredicateActive","method","__method","initiatedBy","getFormattedLocation","useMountedLayout","fn","deps","hasMounted","useHistory","history","setHistory","getRavigerHistory","scrollRestoration","state","baseMissing","isPathInBase","toLowerCase","startsWith","decodeURIComponent","replace","basePathMatcher","RegExp","fullPath","search","host","hostname","href","origin","predicate","isFunction","obj","emptyPathResult","useRoutes","routes","routeProps","overridePathParams","matchTrailingSlash","useRedirectDetection","updateState","forceRender","route","useMatchRoute","trailingMatch","mappedRoutes","isArray","Object","entries","reduce","arr","push","matchers","useMatchers","map","r","pathMatch","props","getMatchParams","routeMatch","find","usePathParams","options","isSingle","usePathOptions","useMatch","match","regex","_a","routeOrRoutes","useMemo","createRouteMatcher","params","sort","join","routeMatchers","pathParams","prop","i","pathPartRegex","string","substr","paramName","length","lastPath","navigate","url","Error","query","URLSearchParams","toString","isAbsolute","test","isCurrentOrigin","URL","assign","replaceState","pushState","PopStateEvent","__tag","dispatchEvent","useNavigationPrompt","onPopStateNavigation","undoNavigation","scrollTo","handler","e","cancelNavigation","preventDefault","returnValue","addInterceptor","add","removeInterceptor","delete","useNavigate","optBasePath","base","useQueryParams","parseFn","parseQuery","serializeFn","serializeQuery","querystring","setQuerystring","getQueryString","setQueryParams","overwrite","serialized","q","fromEntries","queryParams","filter","v","ssrPath","queryIndex","Redirect","to","merge","useRedirect","predicateUrl","targetUrl","currentPath","currentQuery","targetQuery","RefLink","forwardRef","Link","ref","getLinkHref","useLinkBasePath","onClick","target","handleClick","ex","shouldTrap","defaultPrevented","button","metaKey","altKey","ctrlKey","shiftKey","currentTarget","ActiveLinkRef","ActiveLink","className","exactActiveClass","activeClass","absolutePathName","document","baseURI","trim"],"mappings":"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"}
|
package/dist/redirect.d.ts
CHANGED
|
@@ -1,19 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export interface RedirectProps {
|
|
1
|
+
import { NavigateOptions } from './navigate';
|
|
2
|
+
export interface RedirectProps extends NavigateOptions {
|
|
3
3
|
to: string;
|
|
4
|
-
query?: QueryParam | URLSearchParams;
|
|
5
|
-
replace?: boolean;
|
|
6
4
|
merge?: boolean;
|
|
7
5
|
}
|
|
8
|
-
export
|
|
9
|
-
|
|
10
|
-
targetUrl: string;
|
|
11
|
-
queryParams?: QueryParam | URLSearchParams;
|
|
12
|
-
replace?: boolean;
|
|
13
|
-
}
|
|
14
|
-
export declare function Redirect({ to, query, replace, merge, }: RedirectProps): JSX.Element | null;
|
|
15
|
-
export declare function useRedirect(predicateUrl: string | null, targetUrl: string, { query, replace, merge, }?: {
|
|
16
|
-
query?: QueryParam;
|
|
17
|
-
replace?: boolean;
|
|
6
|
+
export declare function Redirect({ to, query, replace, merge, state, }: RedirectProps): JSX.Element | null;
|
|
7
|
+
export interface UseRedirectOptions extends NavigateOptions {
|
|
18
8
|
merge?: boolean;
|
|
19
|
-
}
|
|
9
|
+
}
|
|
10
|
+
export declare function useRedirect(predicateUrl: string | null, targetUrl: string, { query, replace, merge, state }?: UseRedirectOptions): void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "raviger",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.3.0",
|
|
4
4
|
"description": "React routing with hooks",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
"test:ci": "run-s check:ci test:unit:ci",
|
|
50
50
|
"size": "run-s build size:check",
|
|
51
51
|
"size:check": "size-limit",
|
|
52
|
-
"prepublishOnly": "run-s test:ci",
|
|
52
|
+
"prepublishOnly": "run-s test:ci build",
|
|
53
53
|
"release": "np",
|
|
54
54
|
"analyze": "size-limit --why"
|
|
55
55
|
},
|
|
@@ -112,6 +112,5 @@
|
|
|
112
112
|
"tslib": "^2.8.1",
|
|
113
113
|
"typescript": "^5.8.2",
|
|
114
114
|
"typescript-eslint": "^8.26.1"
|
|
115
|
-
}
|
|
116
|
-
"packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
|
|
115
|
+
}
|
|
117
116
|
}
|
package/CHANGELOG.md
DELETED
|
@@ -1,269 +0,0 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
All notable changes to this project will be documented in this file.
|
|
3
|
-
|
|
4
|
-
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
5
|
-
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
6
|
-
|
|
7
|
-
## [5.2.0] - 2025-12-10
|
|
8
|
-
### Added
|
|
9
|
-
- `<Redirect>` support the `state` param
|
|
10
|
-
|
|
11
|
-
## [5.1.0] - 2025-09-30
|
|
12
|
-
### Added
|
|
13
|
-
- `<Link>` props for `NavigateOptions`
|
|
14
|
-
|
|
15
|
-
## [5.0.0] - 2025-06-29
|
|
16
|
-
### Added
|
|
17
|
-
- Added support for `useRoutes` to take an array to specify route matching priority
|
|
18
|
-
- Support for React 19
|
|
19
|
-
### Changed
|
|
20
|
-
- **BREAKING**: changed parameters on `useQueryParams` setter options from `replace, replaceHistory` to `overwrite, replace` to keep consistency with `replace` on other navigation functions.
|
|
21
|
-
- Added support for underscore `_` in path part matchers
|
|
22
|
-
- Removed support for Node versions older than 20
|
|
23
|
-
|
|
24
|
-
## [4.2.1] - 2025-04-08
|
|
25
|
-
### Added
|
|
26
|
-
- `historyReplace` to setQuery option on `useQuery` hook result, to control how history is updated
|
|
27
|
-
|
|
28
|
-
## [4.1.2] - 2022-11-02
|
|
29
|
-
### Fixed
|
|
30
|
-
- `useHash` undefined error from missing prop on event
|
|
31
|
-
|
|
32
|
-
## [4.1.0] - 2022-04-24
|
|
33
|
-
### Added
|
|
34
|
-
- Support for React 18
|
|
35
|
-
|
|
36
|
-
## [4.0.0] - 2022-03-11
|
|
37
|
-
### Added
|
|
38
|
-
- `useHistory`
|
|
39
|
-
- `usePath`
|
|
40
|
-
### Changed
|
|
41
|
-
- **BREAKING**: `navigate` now has `options` object instead of overloads
|
|
42
|
-
- **BREAKING**: `useNavigate` uses updated `navigate` params
|
|
43
|
-
- **BREAKING**: `useLocationChange` now invokes the setter with a `RavigerLocation` object instead of the `path` string
|
|
44
|
-
### Fixed
|
|
45
|
-
- `usePath` getting an old path if `navigate` was called during the initial render
|
|
46
|
-
|
|
47
|
-
## [3.1.0] - 2022-01-17
|
|
48
|
-
### Added
|
|
49
|
-
- `__tag` to the PopState events dispatched by `navigate`
|
|
50
|
-
|
|
51
|
-
## [3.0.0] - 2021-11-02
|
|
52
|
-
### Changed
|
|
53
|
-
- **BREAKING**: `usePath` returns `decodeURIComponent`-ed path
|
|
54
|
-
- **BREAKING**: `useRoutes`, `useMatch`, and `usePathParams` match paths that have been `decodeURIComponent`-ed (e.g. `/weird (route)` will match a path of `/weird%20(route)`)
|
|
55
|
-
- **BREAKING**: type `RouteParams` renamed to `Routes`
|
|
56
|
-
- **BREAKING**: `usePathParams` return type now depends on the input params. When a string it returns just the props, when an array it returns `[path, props]`
|
|
57
|
-
### Added
|
|
58
|
-
- `RouterProvider`
|
|
59
|
-
### Fixed
|
|
60
|
-
- `useRoutes` function-values to use props type `string` (was `any`)
|
|
61
|
-
|
|
62
|
-
## [2.6.0] - 2021-10-15
|
|
63
|
-
### Added
|
|
64
|
-
- `useMatch` hook
|
|
65
|
-
- `usePathParams` hook
|
|
66
|
-
|
|
67
|
-
## [2.5.5] - 2021-10-03
|
|
68
|
-
### Fixed
|
|
69
|
-
- `<Link basePath='/'>` not skipping context `basePath`
|
|
70
|
-
|
|
71
|
-
## [2.5.4] - 2021-08-27
|
|
72
|
-
### Fixed
|
|
73
|
-
- terser mangling `location` in querystring methods
|
|
74
|
-
|
|
75
|
-
## [2.5.3] - 2021-08-25
|
|
76
|
-
### Changed
|
|
77
|
-
- Updated transpilation to reduce size, remove Babel
|
|
78
|
-
|
|
79
|
-
## [2.5.2] - 2021-08-19
|
|
80
|
-
### Fixed
|
|
81
|
-
- `<ActiveLink>` matching in nested contexts
|
|
82
|
-
- `<ActiveLink>` matching for relative paths
|
|
83
|
-
|
|
84
|
-
## [2.5.0] - 2021-08-15
|
|
85
|
-
### Changed
|
|
86
|
-
- `src/` to typescript
|
|
87
|
-
- types are now natively generated from source and provided as declaration files
|
|
88
|
-
- Minimum NodeJS version is now 12
|
|
89
|
-
|
|
90
|
-
## [2.4.2] - 2021-07-16
|
|
91
|
-
### Fixed
|
|
92
|
-
- `useRoutes` not updating after an internal `<Redirect />` updates the location
|
|
93
|
-
|
|
94
|
-
## [2.4.1] - 2021-06-28
|
|
95
|
-
### Changed
|
|
96
|
-
- Rollup build to `keep_fnames` to retain component name checking
|
|
97
|
-
|
|
98
|
-
## [2.4.0] - 2021-06-28
|
|
99
|
-
### Added
|
|
100
|
-
- `navigate` support for urls with different origins (external navigation)
|
|
101
|
-
|
|
102
|
-
## [2.3.1] - 2021-06-18
|
|
103
|
-
### Added
|
|
104
|
-
- Sourcemaps to published package
|
|
105
|
-
### Changed
|
|
106
|
-
- `useNavigationPrompt` now restores scroll position after undoing navigation
|
|
107
|
-
|
|
108
|
-
## [2.3.0] - 2021-06-18
|
|
109
|
-
### Changed
|
|
110
|
-
- `useNavigationPrompt` now intercepts browser back/forward button navigation
|
|
111
|
-
|
|
112
|
-
## [2.2.0] - 2021-06-07
|
|
113
|
-
### Changed
|
|
114
|
-
- Added support for React@17 in `peerDependencies`
|
|
115
|
-
|
|
116
|
-
## [2.1.0] - 2021-05-02
|
|
117
|
-
### Added
|
|
118
|
-
- `options.onInitial` parameter for `useLocationChange` that controls the first render behavior. `default: false`.
|
|
119
|
-
### Fixed
|
|
120
|
-
- `useLocationChange` invoking the setter on initial render. This was not intended and was an unannounced change from the v1 behavior, so reverting it is not considered an API change but a bugfix.
|
|
121
|
-
|
|
122
|
-
## [2.0.2] - 2021-03-22
|
|
123
|
-
### Added
|
|
124
|
-
- `state` parameter for `navigate`
|
|
125
|
-
|
|
126
|
-
## [2.0.1] - 2021-01-07
|
|
127
|
-
### Removed
|
|
128
|
-
- `engine` requirement for 'less than' Node 15
|
|
129
|
-
|
|
130
|
-
## [2.0.0] - 2020-11-17
|
|
131
|
-
### Changed
|
|
132
|
-
- **BREAKING**: `useRoutes` and `usePath` will return `null` if `basePath` is provided and missing from path
|
|
133
|
-
- **BREAKING**: `useLocationChange` will invoke callback with `null` if `basePath` is provided and missing from path
|
|
134
|
-
- **BREAKING**: `useLocationChange` option `inheritBasePath` now accepts any false value (previously required `false` with `===`)
|
|
135
|
-
- **BREAKING**: `useRoutes` option `matchTrailingSlash` default to `true` (was `false`)
|
|
136
|
-
- **BREAKING**: removed `linkRef` prop from `Link` and `ActiveLink`, replaced with standard React `forwardRef`
|
|
137
|
-
- **BREAKING**: `useQueryParams` setter second argument changed from `replace` to options param with `replace` property
|
|
138
|
-
- **BREAKING**: `useRedirect` parameters changed to match properties on `Redirect` component
|
|
139
|
-
### Added
|
|
140
|
-
- `useFullPath` for getting the full path, ignoring any context-provided `basePath`
|
|
141
|
-
- Support for Node 14
|
|
142
|
-
- Rollup-plugin-terser for builds
|
|
143
|
-
### Removed
|
|
144
|
-
- Support for Node 8
|
|
145
|
-
|
|
146
|
-
## [1.6.0] - 2020-10-22
|
|
147
|
-
### Added
|
|
148
|
-
- `useNavigate` hook
|
|
149
|
-
|
|
150
|
-
## [1.5.1] - 2020-10-09
|
|
151
|
-
### Fixed
|
|
152
|
-
- `matchTrailingSlash` not matching on the root route `/`
|
|
153
|
-
|
|
154
|
-
## [1.5.0] - 2020-10-09
|
|
155
|
-
### Added
|
|
156
|
-
- `query` prop to `<Redirect>`
|
|
157
|
-
|
|
158
|
-
## [1.4.6] - 2020-10-07
|
|
159
|
-
### Fixed
|
|
160
|
-
- `useRoutes` path tracking with `usePath` causing improper child invocations
|
|
161
|
-
|
|
162
|
-
## [1.4.5] - 2020-07-31
|
|
163
|
-
### Fixed
|
|
164
|
-
- `navigate` handling of `replace` in edge cases for `replaceOrQuery`
|
|
165
|
-
|
|
166
|
-
## [1.4.4] - 2020-06-26
|
|
167
|
-
### Fixed
|
|
168
|
-
- `basePath` matches not using case-insensitive like route paths
|
|
169
|
-
|
|
170
|
-
## [1.4.3] - 2020-05-12
|
|
171
|
-
### Fixed
|
|
172
|
-
- `useQueryParam` using a `?` when no query is set
|
|
173
|
-
- typescript declaration for `useNavigationPrompt`
|
|
174
|
-
|
|
175
|
-
## [1.4.2] - 2020-04-30
|
|
176
|
-
### Fixed
|
|
177
|
-
- `useRoutes` error when changing the number of routes
|
|
178
|
-
|
|
179
|
-
## [1.4.1] - 2020-04-28
|
|
180
|
-
### Fixed
|
|
181
|
-
- `usePath` sets `inheritBasePath: false` when using provided `basePath`
|
|
182
|
-
|
|
183
|
-
## [1.4.0] - 2020-03-18
|
|
184
|
-
### Added
|
|
185
|
-
- `<Redirect>` Component
|
|
186
|
-
- `useHash` hook
|
|
187
|
-
|
|
188
|
-
## [1.3.0] - 2020-01-27
|
|
189
|
-
### Added
|
|
190
|
-
- `<Link basePath>` prop override.
|
|
191
|
-
### Fixed
|
|
192
|
-
- double decoding on `useQueryParams`
|
|
193
|
-
|
|
194
|
-
## [1.2.0] - 2020-01-21
|
|
195
|
-
### Changed
|
|
196
|
-
- Internal React-Context setup, reduces wasteful re-renders
|
|
197
|
-
|
|
198
|
-
## [1.1.1] - 2020-01-09
|
|
199
|
-
### Fixed
|
|
200
|
-
- `replace: false` on `setQueryParams` replacing `location.hash`
|
|
201
|
-
|
|
202
|
-
## [1.1.0] - 2019-11-21
|
|
203
|
-
### Added
|
|
204
|
-
- `linkRef` prop to `<Link>`
|
|
205
|
-
|
|
206
|
-
## [1.0.0] - 2019-11-12
|
|
207
|
-
### Added
|
|
208
|
-
- `useLocationChange`: similar to use `usePopState`, but uses different parameters
|
|
209
|
-
### Removed
|
|
210
|
-
- `usePopState` hook
|
|
211
|
-
|
|
212
|
-
## [0.5.9] - 2019-10-28
|
|
213
|
-
### Added
|
|
214
|
-
- `useNavigationPrompt` for confirming navigation changes
|
|
215
|
-
|
|
216
|
-
## [0.5.8] - 2019-10-14
|
|
217
|
-
### Fixed
|
|
218
|
-
- `<Link target="_blank" />` triggering local navigation
|
|
219
|
-
|
|
220
|
-
## [0.5.7] - 2019-09-26
|
|
221
|
-
### Added
|
|
222
|
-
- `<ActiveLink />`
|
|
223
|
-
|
|
224
|
-
## [0.5.5] - 2019-09-23
|
|
225
|
-
### Added
|
|
226
|
-
- `useRoutes` option `matchTrailingSlash`
|
|
227
|
-
|
|
228
|
-
## [0.5.4] - 2019-09-16
|
|
229
|
-
### Added
|
|
230
|
-
- typescript declarations
|
|
231
|
-
|
|
232
|
-
## [0.5.0] - 2019-09-13
|
|
233
|
-
### Changed
|
|
234
|
-
- `useRoutes` second parameter from `basePath` to `options`
|
|
235
|
-
### Added
|
|
236
|
-
- `useRoutes` option `routeProps`
|
|
237
|
-
- `useRoutes` option `overridePathParams`
|
|
238
|
-
|
|
239
|
-
## [0.4.0] - 2019-09-12
|
|
240
|
-
### Added
|
|
241
|
-
- `useBasePath` hook to retrieve the basePath
|
|
242
|
-
|
|
243
|
-
## [0.3.11] - 2019-09-09
|
|
244
|
-
### Fixed
|
|
245
|
-
- `<Link>` cmd key detection
|
|
246
|
-
|
|
247
|
-
## [0.3.9] - 2019-08-29
|
|
248
|
-
### Added
|
|
249
|
-
- `navigate` checks `url` param
|
|
250
|
-
|
|
251
|
-
## [0.3.8] - 2019-08-27
|
|
252
|
-
### Fixed
|
|
253
|
-
- `useRedirect` adding null query
|
|
254
|
-
|
|
255
|
-
## [0.3.6] - 2019-08-27
|
|
256
|
-
### Fixed
|
|
257
|
-
- Rollup dist output
|
|
258
|
-
|
|
259
|
-
## [0.3.4] - 2019-08-21
|
|
260
|
-
### Added
|
|
261
|
-
- `useRedirect` hook
|
|
262
|
-
|
|
263
|
-
## [0.3.3] - 2019-08-21
|
|
264
|
-
### Added
|
|
265
|
-
- `navigate(url, queryStringObj)` overload
|
|
266
|
-
|
|
267
|
-
## [0.3.2] - 2019-08-08
|
|
268
|
-
### Added
|
|
269
|
-
- rollup output for module and cjs
|