raviger 5.0.0-0 → 5.0.0-2
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/CHANGELOG.md +5 -0
- 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/querystring.d.ts +11 -1
- package/dist/router.d.ts +5 -1
- package/package.json +7 -6
package/CHANGELOG.md
CHANGED
|
@@ -8,8 +8,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
8
8
|
### Added
|
|
9
9
|
- Added support for `useRoutes` to take an array to specify route matching priority
|
|
10
10
|
### Changed
|
|
11
|
+
- **BREAKING**: changed parameters on `useQueryParams` setter options from `replace, replaceHistory` to `overwrite, replace` to keep consistency with `replace` on other navigation functions.
|
|
11
12
|
- Added support for underscore `_` in path part matchers
|
|
12
13
|
|
|
14
|
+
## [4.2.1] - 2025-04-08
|
|
15
|
+
### Added
|
|
16
|
+
- `historyReplace` to setQuery option on `useQuery` hook result, to control how history is updated
|
|
17
|
+
|
|
13
18
|
## [4.1.2] - 2022-11-02
|
|
14
19
|
### Fixed
|
|
15
20
|
- `useHash` undefined error from missing prop on event
|
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
|
|
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((()=>{(void 0===o||isPredicateActive(o))&&(shouldCancelNavigation()||i.current(getFormattedLocation(a)))}),[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){const e=getFormattedPath(t);return{basePath:t,path:e,pathname:e,fullPath:getCurrentPath(),search:window.location.search,hash:getCurrentHash(),host:window.location.host,hostname:window.location.hostname,href:window.location.href,origin:window.location.origin}}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);(null==e?void 0:e.replace)?window.history.replaceState(null==e?void 0:e.state,"",t):window.history.pushState(null==e?void 0:e.state,"",t);const n=new PopStateEvent("popstate");n.__tag="raviger:navigation",dispatchEvent(n)}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}={}){const s=usePath(),[u]=useQueryParams(),i=getCurrentHash();let c=n;const l=new URLSearchParams({...o?u:{},...r}).toString();l&&(c+="?"+l),o&&i&&i.length&&(c+=i),t.useLayoutEffect((()=>{s===e&&navigate(c,{replace:a})}),[e,c,a,s])}const h=t.forwardRef((function Link({href:e,basePath:n,...r},a){e=getLinkHref(e,n=useLinkBasePath(n));const{onClick:o,target:s}=r,u=t.useCallback((t=>{try{o&&o(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,s)&&(t.preventDefault(),navigate(t.currentTarget.href))}),[o,s]);return t.createElement("a",{...r,href:e,onClick:u,ref:a})}));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}){return useRedirect(usePath(),t,{query:e,replace:n,merge:r}),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","e","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","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","historyReplace","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","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","keys"],"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","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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"}
|
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
|
|
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((()=>{(void 0===i||isPredicateActive(i))&&(shouldCancelNavigation()||c.current(getFormattedLocation(a)))}),[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){const e=getFormattedPath(t);return{basePath:t,path:e,pathname:e,fullPath:getCurrentPath(),search:window.location.search,hash:getCurrentHash(),host:window.location.host,hostname:window.location.hostname,href:window.location.href,origin:window.location.origin}}function isPredicateActive(t){return function isFunction(t){return!!t&&"function"==typeof t}(t)?t():t}const w=[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:w;const[o,i]=getMatchParams(r,a);return o?n?i:[o.path,i]:n?null:w}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 w;const a=r.props.reduce(((t,e,r)=>(t[e]=n[r+1],t)),{});return[r,a]}const v=/:[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(v,"([^/]+)").replace(/\*/g,"")}${"*"===t.substr(-1)?"":"$"}`,"i"),props:(null!==(e=t.match(v))&&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 p="";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()),p=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);(null==e?void 0:e.replace)?window.history.replaceState(null==e?void 0:e.state,"",t):window.history.pushState(null==e?void 0:e.state,"",t);const n=new PopStateEvent("popstate");n.__tag="raviger:navigation",dispatchEvent(n)}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)}(p)};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}){return useRedirect(usePath(),t,{query:e,replace:n,merge:r}),null}function useRedirect(t,e,{query:n,replace:a=!0,merge:o=!0}={}){const i=usePath(),[s]=useQueryParams(),u=getCurrentHash();let c=e;const l=new URLSearchParams({...o?s:{},...n}).toString();l&&(c+="?"+l),o&&u&&u.length&&(c+=u),r((()=>{i===t&&navigate(c,{replace:a})}),[t,c,a,i])}const m=u((function Link({href:e,basePath:n,...r},a){e=getLinkHref(e,n=useLinkBasePath(n));const{onClick:i,target:s}=r,u=o((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,s)&&(t.preventDefault(),navigate(t.currentTarget.href))}),[i,s]);return t.createElement("a",{...r,href:e,onClick:u,ref:a})}));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","e","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","matchers","useMatchers","Object","keys","routeMatch","props","getMatchParams","usePathParams","options","isSingle","isArray","usePathOptions","useMatch","match","find","regex","_a","routeOrRoutes","useMemo","map","createRouteMatcher","params","sort","join","routeMatchers","pathParams","reduce","prop","i","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","cancelNavigation","preventDefault","returnValue","addInterceptor","add","removeInterceptor","delete","useNavigate","optBasePath","base","useQueryParams","parseFn","parseQuery","serializeFn","serializeQuery","querystring","setQuerystring","getQueryString","setQueryParams","historyReplace","serialized","q","fromEntries","entries","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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"}
|
|
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":"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"}
|
package/dist/querystring.d.ts
CHANGED
|
@@ -2,8 +2,18 @@ export interface QueryParam {
|
|
|
2
2
|
[key: string]: any;
|
|
3
3
|
}
|
|
4
4
|
export interface setQueryParamsOptions {
|
|
5
|
+
/**
|
|
6
|
+
* Controls whether the querystring is overwritten or merged into
|
|
7
|
+
*
|
|
8
|
+
* default: true
|
|
9
|
+
*/
|
|
10
|
+
overwrite?: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Controls whether the querystring update causes a history push or replace
|
|
13
|
+
*
|
|
14
|
+
* default: false
|
|
15
|
+
*/
|
|
5
16
|
replace?: boolean;
|
|
6
|
-
historyReplace?: boolean;
|
|
7
17
|
}
|
|
8
18
|
export declare function useQueryParams<T extends QueryParam>(parseFn?: (query: string) => T, serializeFn?: (query: Partial<T>) => string): [T, (query: T, options?: setQueryParamsOptions) => void];
|
|
9
19
|
export declare function getQueryString(): string;
|
package/dist/router.d.ts
CHANGED
|
@@ -15,9 +15,13 @@ type ExtractPathParams<Path extends string, Parts = Split<Path, '/'>> = Parts ex
|
|
|
15
15
|
] ? Head extends `:${infer Name}` ? {
|
|
16
16
|
[N in Name]: string;
|
|
17
17
|
} & ExtractPathParams<Path, Tail> : ExtractPathParams<Path, Tail> : unknown;
|
|
18
|
+
export type Route<Path extends string> = {
|
|
19
|
+
path: Path;
|
|
20
|
+
fn: (params: NonEmptyRecord<ExtractPathParams<Path extends `${infer P1}*` ? P1 : Path>>) => JSX.Element;
|
|
21
|
+
};
|
|
18
22
|
export type Routes<Path extends string> = {
|
|
19
23
|
[P in Path]: (params: NonEmptyRecord<ExtractPathParams<P extends `${infer P1}*` ? P1 : P>>) => JSX.Element;
|
|
20
|
-
};
|
|
24
|
+
} | Route<Path>[];
|
|
21
25
|
export declare function useRoutes<Path extends string>(routes: Routes<Path>, { basePath, routeProps, overridePathParams, matchTrailingSlash, }?: RouteOptionParams): JSX.Element | null;
|
|
22
26
|
export declare function usePathParams<Path extends string>(route: Path, options?: PathParamOptions): NonEmptyRecord<ExtractPathParams<Path extends `${infer P1}*` ? P1 : Path>> | null;
|
|
23
27
|
export declare function usePathParams<Path extends string>(routes: ReadonlyArray<Path>, options?: PathParamOptions): ValueOf<{
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "raviger",
|
|
3
|
-
"version": "5.0.0-
|
|
3
|
+
"version": "5.0.0-2",
|
|
4
4
|
"description": "React routing with hooks",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react",
|
|
@@ -83,8 +83,8 @@
|
|
|
83
83
|
"@size-limit/webpack": "9.x",
|
|
84
84
|
"@testing-library/jest-dom": "^5.16.4",
|
|
85
85
|
"@testing-library/react": "15.x",
|
|
86
|
-
"@types/react": "
|
|
87
|
-
"@types/react-dom": "
|
|
86
|
+
"@types/react": "18",
|
|
87
|
+
"@types/react-dom": "18",
|
|
88
88
|
"eslint": "^9.22.0",
|
|
89
89
|
"eslint-plugin-import": "^2.24.0",
|
|
90
90
|
"eslint-plugin-jest": "^28.11.0",
|
|
@@ -98,8 +98,8 @@
|
|
|
98
98
|
"np": "^10.2.0",
|
|
99
99
|
"npm-run-all": "^4.1.5",
|
|
100
100
|
"prettier": "^3.5.3",
|
|
101
|
-
"react": "
|
|
102
|
-
"react-dom": "
|
|
101
|
+
"react": "18",
|
|
102
|
+
"react-dom": "18",
|
|
103
103
|
"rimraf": "^6.0.1",
|
|
104
104
|
"rollup": "^4.35.0",
|
|
105
105
|
"size-limit": "9.x",
|
|
@@ -108,5 +108,6 @@
|
|
|
108
108
|
"tslib": "^2.8.1",
|
|
109
109
|
"typescript": "^5.8.2",
|
|
110
110
|
"typescript-eslint": "^8.26.1"
|
|
111
|
-
}
|
|
111
|
+
},
|
|
112
|
+
"packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
|
|
112
113
|
}
|