New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

yarr

Package Overview
Dependencies
Maintainers
1
Versions
36
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

yarr - npm Package Compare versions

Comparing version 2.0.0-alpha.7 to 2.0.0-alpha.8

dist/esm/components/Redirect.d.ts

42

dist/cjs/yarr.cjs.development.js

@@ -57,2 +57,3 @@ var __create = Object.create;

Link: () => Link,
Redirect: () => Redirect,
RouteRenderer: () => RouteRenderer,

@@ -190,5 +191,19 @@ RouterProvider: () => RouterProvider,

// src/components/RouteRenderer.tsx
// src/components/Redirect.tsx
var import_react3 = __toModule(require("react"));
var Redirect = ({ exact, push, to }) => {
const { history, isActive } = (0, import_react3.useContext)(RouterContext);
(0, import_react3.useEffect)(() => {
if (!isActive(to, exact)) {
const replaceMethod = push ? "push" : "replace";
history[replaceMethod](to);
}
}, [exact, history, isActive, push, to]);
return null;
};
Redirect.displayName = "Redirect";
// src/components/RouteRenderer.tsx
var import_react4 = __toModule(require("react"));
// src/utils/SuspenseResource.ts

@@ -361,4 +376,4 @@ var SuspenseResource = class {

}) => {
const { awaitComponent, get, history, routeTransitionCompleted, subscribe } = (0, import_react3.useContext)(RouterContext);
const [{ isTransitioning, historyUpdate, routeEntry }, dispatch] = (0, import_react3.useReducer)(reducer, {
const { awaitComponent, get, history, routeTransitionCompleted, subscribe } = (0, import_react4.useContext)(RouterContext);
const [{ isTransitioning, historyUpdate, routeEntry }, dispatch] = (0, import_react4.useReducer)(reducer, {
historyUpdate: {

@@ -371,4 +386,4 @@ action: history.action,

});
const Component = (0, import_react3.useMemo)(() => routeEntry.component.read(), [routeEntry]);
const getPendingRouteEntry = (0, import_react3.useCallback)(async (pendingRouteEntry) => {
const Component = (0, import_react4.useMemo)(() => routeEntry.component.read(), [routeEntry]);
const getPendingRouteEntry = (0, import_react4.useCallback)(async (pendingRouteEntry) => {
const preloaded = {};

@@ -392,3 +407,3 @@ if (pendingRouteEntry.preloaded) {

}, []);
(0, import_react3.useEffect)(() => {
(0, import_react4.useEffect)(() => {
const dispose = subscribe({

@@ -417,3 +432,3 @@ onTransitionStart: async (nextEntry, update) => {

}, [awaitComponent, subscribe, getPendingRouteEntry]);
(0, import_react3.useEffect)(() => {
(0, import_react4.useEffect)(() => {
routeTransitionCompleted(historyUpdate);

@@ -434,5 +449,5 @@ }, [historyUpdate, routeTransitionCompleted]);

// src/hooks/useHistory.ts
var import_react4 = __toModule(require("react"));
var import_react5 = __toModule(require("react"));
var useHistory = () => {
const context = (0, import_react4.useContext)(RouterContext);
const context = (0, import_react5.useContext)(RouterContext);
if (!isRouterContext(context)) {

@@ -446,5 +461,5 @@ throw new Error("`useHistory` can not be used outside of `RouterProvider`.");

// src/hooks/useNavigation.ts
var import_react5 = __toModule(require("react"));
var import_react6 = __toModule(require("react"));
var useNavigation = () => {
const context = (0, import_react5.useContext)(RouterContext);
const context = (0, import_react6.useContext)(RouterContext);
if (!isRouterContext(context)) {

@@ -458,5 +473,5 @@ throw new Error("`useNavigation` can not be used outside of `RouterProvider`.");

// src/hooks/useRouter.ts
var import_react6 = __toModule(require("react"));
var import_react7 = __toModule(require("react"));
var useRouter = () => {
const context = (0, import_react6.useContext)(RouterContext);
const context = (0, import_react7.useContext)(RouterContext);
if (!isRouterContext(context)) {

@@ -743,2 +758,3 @@ throw new Error("`useRouter` can not be used outside of `RouterProvider`.");

Link,
Redirect,
RouteRenderer,

@@ -745,0 +761,0 @@ RouterProvider,

@@ -1,4 +0,4 @@

var Tt=Object.create;var k=Object.defineProperty,At=Object.defineProperties,wt=Object.getOwnPropertyDescriptor,vt=Object.getOwnPropertyDescriptors,bt=Object.getOwnPropertyNames,F=Object.getOwnPropertySymbols,Ot=Object.getPrototypeOf,q=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;var Z=(t,e,o)=>e in t?k(t,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[e]=o,i=(t,e)=>{for(var o in e||(e={}))q.call(e,o)&&Z(t,o,e[o]);if(F)for(var o of F(e))X.call(e,o)&&Z(t,o,e[o]);return t},h=(t,e)=>At(t,vt(e)),D=t=>k(t,"__esModule",{value:!0});var M=(t,e)=>{var o={};for(var r in t)q.call(t,r)&&e.indexOf(r)<0&&(o[r]=t[r]);if(t!=null&&F)for(var r of F(t))e.indexOf(r)<0&&X.call(t,r)&&(o[r]=t[r]);return o};var Ht=(t,e)=>{D(t);for(var o in e)k(t,o,{get:e[o],enumerable:!0})},Nt=(t,e,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of bt(e))!q.call(t,r)&&r!=="default"&&k(t,r,{get:()=>e[r],enumerable:!(o=wt(e,r))||o.enumerable});return t},C=t=>Nt(D(k(t!=null?Tt(Ot(t)):{},"default",t&&t.__esModule&&"default"in t?{get:()=>t.default,enumerable:!0}:{value:t,enumerable:!0})),t);Ht(exports,{Link:()=>K,RouteRenderer:()=>z,RouterProvider:()=>G,SuspenseResource:()=>v,createBrowserRouter:()=>ft,createHashRouter:()=>yt,createMemoryRouter:()=>Pt,useHistory:()=>at,useNavigation:()=>pt,useRouter:()=>ut});var T=C(require("react"));var tt=C(require("history")),et=C(require("react")),y=()=>{throw new Error("RouterContext was called outside of RouterProvider.")},O=t=>t.warmRoute!==y,Ut={assistPreload:!1,awaitComponent:!1,get:y,history:{action:tt.Action.Push,back:y,block:y,createHref:y,forward:y,go:y,listen:y,location:{hash:"",key:"",pathname:"",search:"",state:null},push:y,replace:y},isActive:y,preloadCode:y,routeTransitionCompleted:y,subscribe:y,warmRoute:y},E=(0,et.createContext)(Ut);var It=0,kt=t=>Boolean(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey),Lt=t=>!t.defaultPrevented&&t.button===It&&(!t.currentTarget.target||t.currentTarget.target==="_self")&&!kt(t),K=(0,T.forwardRef)((c,g)=>{var a=c,{activeClassName:t="is-active",children:e,className:o,exact:r=!1,to:s,onClick:p,onFocus:n,onKeyDown:l,onMouseDown:u,onMouseEnter:m}=a,f=M(a,["activeClassName","children","className","exact","to","onClick","onFocus","onKeyDown","onMouseDown","onMouseEnter"]);let{history:d,isActive:R,preloadCode:P,warmRoute:_}=(0,T.useContext)(E),A=d.createHref(s),Q=R(s,r),xt=(0,T.useCallback)(x=>{try{p==null||p(x)}catch(B){throw x.preventDefault(),B}if(Lt(x)){x.preventDefault();let B=R(s,!0)?"replace":"push";d[B](s)}},[d,R,p,s]),Ct=(0,T.useCallback)(x=>{P(A),n==null||n(x)},[A,n,P]),Et=(0,T.useCallback)(x=>{_(A),l==null||l(x)},[A,l,_]),St=(0,T.useCallback)(x=>{P(A),m==null||m(x)},[A,m,P]),Mt=(0,T.useCallback)(x=>{_(A),u==null||u(x)},[A,u,_]);return React.createElement("a",h(i({ref:g},f),{"aria-current":Q?"page":void 0,className:[o,Q?t:null].filter(Boolean).join(" "),href:A,onClick:xt,onFocus:Ct,onKeyDown:Et,onMouseDown:Mt,onMouseEnter:St}),e)});K.displayName="Link";var S=C(require("react"));var v=class{constructor(e){this.result=null;this.error=null;this.promise=null;this.loader=e}async load(){if(this.result!==null)return this.result;if(this.promise!==null)return this.promise;this.promise=this.loader();try{let e=await this.promise;return this.result=e,e}catch(e){throw this.error=e,e}}read(){if(this.result!==null)return this.result;throw this.error!==null?this.error:this.promise!==null?this.promise:this.load()}};var H=t=>{let e=[];for(let o in t)!Object.prototype.hasOwnProperty.call(t,o)||e.push(o);return e.sort((o,r)=>o>r?1:-1).reduce((o,r)=>{let s=t[r];if(!s)return o;let p=Array.isArray(s)?s.sort((n,l)=>n>l?1:-1).map(n=>encodeURIComponent(n)).join(`&${r}=`):encodeURIComponent(s);return`${o}${o?"&":"?"}${r}=${p}`},"")};var b={parametersString:"",pathname:"",value:null},rt=t=>typeof t=="function",Y=t=>t instanceof Map,ot=t=>Y(t.preloaded),Wt=({route:t,params:e,search:o},r)=>{var n;let s=new Map,p=(n=t.preload)==null?void 0:n.call(t,e,o);for(let l in p){if(!Object.prototype.hasOwnProperty.call(p,l))continue;let u=p[l];if(u===void 0)continue;let m=rt(u)?u:u.data,f=new v(m);f.load(),s.set(l,{data:f,defer:!rt(u)&&u.defer!==void 0?u.defer:!r})}return s};function $(t,e=!1,o=!1){var g,c;let{route:r,params:s,search:p,location:n}=t,l=n.pathname===b.pathname,u=H(s);if(e&&l&&u===b.parametersString&&b.value!==null)return b.value;r.component.load();let m={component:r.component,location:n,params:s,search:p};if(e){let a=r.preload&&Wt(t,o),d=h(i({},m),{preloaded:a});return a&&(b.pathname=(g=n.pathname)!=null?g:"",b.parametersString=H(s),b.value=d),d}return h(i({},m),{preloaded:(c=r.preload)==null?void 0:c.call(r,s,p)})}var st=(t,e)=>{switch(e.type){case"START_ROUTE_TRANSITION":return h(i({},t),{isTransitioning:!0});case"FINISH_ROUTE_TRANSITION":return i(h(i({},t),{isTransitioning:!1}),e.payload);default:return t}};var _t=t=>{let e={component:t.component,location:t.location,props:{params:t.params,search:t.search}};if(Y(t.preloaded)){let o={};for(let[r,s]of t.preloaded.entries())o[r]=s.data;return h(i({},e),{props:h(i({},e.props),{preloaded:o})})}return h(i({},e),{props:h(i({},e.props),{preloaded:t.preloaded})})},z=({pendingIndicator:t,routeWrapper:e})=>{let{awaitComponent:o,get:r,history:s,routeTransitionCompleted:p,subscribe:n}=(0,S.useContext)(E),[{isTransitioning:l,historyUpdate:u,routeEntry:m},f]=(0,S.useReducer)(st,{historyUpdate:{action:s.action,location:s.location},isTransitioning:!1,routeEntry:_t(r())}),g=(0,S.useMemo)(()=>m.component.read(),[m]),c=(0,S.useCallback)(async a=>{let d={};if(a.preloaded)for(let[R,P]of a.preloaded.entries())P.defer||await P.data.load(),d[R]=P.data;return{component:a.component,location:a.location,props:{params:a.params,preloaded:a.preloaded&&d,search:a.search}}},[]);return(0,S.useEffect)(()=>{let a=n({onTransitionStart:async(d,R)=>{f({type:"START_ROUTE_TRANSITION"}),o&&await d.component.load();let P=ot(d)?await c(d):{component:d.component,location:d.location,props:{params:d.params,preloaded:d.preloaded,search:d.search}};f({payload:{historyUpdate:R,routeEntry:P},type:"FINISH_ROUTE_TRANSITION"})}});return()=>a()},[o,n,c]),(0,S.useEffect)(()=>{p(u)},[u,p]),React.createElement(React.Fragment,null,l&&t?t:null,e?e({Route:React.createElement(g,i({},m.props))}):React.createElement(g,i({},m.props)))};z.displayName="RouteRenderer";var G=({children:t,router:e})=>React.createElement(E.Provider,{value:e},t);G.displayName="RouterProvider";var nt=C(require("react"));var at=()=>{let t=(0,nt.useContext)(E);if(!O(t))throw new Error("`useHistory` can not be used outside of `RouterProvider`.");let{action:e,listen:o,location:r}=t.history;return{action:e,listen:o,location:r}};var it=C(require("react"));var pt=()=>{let t=(0,it.useContext)(E);if(!O(t))throw new Error("`useNavigation` can not be used outside of `RouterProvider`.");let{back:e,forward:o,go:r,push:s,replace:p}=t.history;return{back:e,forward:o,go:r,push:s,replace:p}};var ct=C(require("react"));var ut=()=>{let t=(0,ct.useContext)(E);if(!O(t))throw new Error("`useRouter` can not be used outside of `RouterProvider`.");let{isActive:e,preloadCode:o,subscribe:r,warmRoute:s}=t;return{isActive:e,preloadCode:o,subscribe:r,warmRoute:s}};var ht=C(require("history"));var J=C(require("history"));var dt=C(require("history")),w=t=>i({hash:"",pathname:"",search:""},typeof t=="string"?(0,dt.parsePath)(t):t);var V=(t,e,o="")=>{let r=decodeURIComponent(o),s=t[e];return s?Array.isArray(s)?s.concat(r):[s,r]:r};var L=t=>t?t.slice(1).split("&").reduce((o,r)=>{let[s,p]=r.split("=");if(s){let n=V(o,s,p);return h(i({},o),{[s]:n})}return o},{}):{};var W=(t,e,o=!1)=>{var p,n;let r=w(t),s=w(e);if(r.pathname!==s.pathname)return!1;if(o){let l=H(L((p=r.search)!=null?p:"")),u=H(L((n=s.search)!=null?n:""));return l===u&&r.hash===s.hash}return!0};var j=t=>t.startsWith("/")?t:`/${t}`;var mt=(t,e)=>{let o=j(e),r=[],s=`^(${t.replace(/[$()*+./?[\\\]^{|}-]/g,"\\$&").replace(/\\\*$/,".*").replace(/:(\w+)|(.\*)/g,(u,m="$rest")=>(r.push(m),`([^${m==="$rest"?":(w+)|(.*)":"\\/"}]+)`))})\\/?$`,n=new RegExp(s).exec(o);return n?{params:r.reduce((u,m,f)=>{let g=n[f+2],c=V(u,m,g);return u[m]=c,u},{})}:null};var N=(t,e)=>{var u,m;let o=w(e),{pathname:r}=o,s={},p=i({},L((u=o.search)!=null?u:""));if(!r)throw new Error("Unable to determine pathname from given location");let n=t.has(r)&&t.get(r);if(!n)for(let[f,g]of t.entries()){if(f!=="/*"){let c=mt(f,r);if(!c)continue;s=i({},c.params)}n=g;break}if(!n)throw new Error("No route found for requested path. Ensure you have a wildcard (*) route to catch-all non-matching paths.");let l=(m=n.redirectRules)==null?void 0:m.call(n,s,p);return l?N(t,l):{location:o,params:s,route:n,search:p}};var lt=t=>{let e=new Map,o=(r,s)=>r.forEach(p=>{let R=p,{path:n,children:l}=R,u=M(R,["path","children"]),{path:m="",redirectRules:f}=s!=null?s:{},g=m==="/"?"":m,c=n?j(n):"",a=[g,c].join(""),d=h(i({redirectRules:f},u),{component:new v(u.component)});e.set(a,d),l&&Array.isArray(l)&&o(l,h(i({redirectRules:f},u),{path:a}))});return o(t),process.env.NODE_ENV!=="production"&&!e.has("/*")&&console.warn(`You didn't set a wildcard (*) route to catch any unmatched path.
var vt=Object.create;var k=Object.defineProperty,wt=Object.defineProperties,bt=Object.getOwnPropertyDescriptor,Ot=Object.getOwnPropertyDescriptors,Ht=Object.getOwnPropertyNames,F=Object.getOwnPropertySymbols,Nt=Object.getPrototypeOf,K=Object.prototype.hasOwnProperty,D=Object.prototype.propertyIsEnumerable;var tt=(t,e,r)=>e in t?k(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,i=(t,e)=>{for(var r in e||(e={}))K.call(e,r)&&tt(t,r,e[r]);if(F)for(var r of F(e))D.call(e,r)&&tt(t,r,e[r]);return t},h=(t,e)=>wt(t,Ot(e)),et=t=>k(t,"__esModule",{value:!0});var M=(t,e)=>{var r={};for(var o in t)K.call(t,o)&&e.indexOf(o)<0&&(r[o]=t[o]);if(t!=null&&F)for(var o of F(t))e.indexOf(o)<0&&D.call(t,o)&&(r[o]=t[o]);return r};var Ut=(t,e)=>{et(t);for(var r in e)k(t,r,{get:e[r],enumerable:!0})},It=(t,e,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Ht(e))!K.call(t,o)&&o!=="default"&&k(t,o,{get:()=>e[o],enumerable:!(r=bt(e,o))||r.enumerable});return t},C=t=>It(et(k(t!=null?vt(Nt(t)):{},"default",t&&t.__esModule&&"default"in t?{get:()=>t.default,enumerable:!0}:{value:t,enumerable:!0})),t);Ut(exports,{Link:()=>Y,Redirect:()=>z,RouteRenderer:()=>J,RouterProvider:()=>Q,SuspenseResource:()=>w,createBrowserRouter:()=>yt,createHashRouter:()=>Pt,createMemoryRouter:()=>Ct,useHistory:()=>pt,useNavigation:()=>ut,useRouter:()=>mt});var T=C(require("react"));var rt=C(require("history")),ot=C(require("react")),y=()=>{throw new Error("RouterContext was called outside of RouterProvider.")},O=t=>t.warmRoute!==y,kt={assistPreload:!1,awaitComponent:!1,get:y,history:{action:rt.Action.Push,back:y,block:y,createHref:y,forward:y,go:y,listen:y,location:{hash:"",key:"",pathname:"",search:"",state:null},push:y,replace:y},isActive:y,preloadCode:y,routeTransitionCompleted:y,subscribe:y,warmRoute:y},x=(0,ot.createContext)(kt);var Lt=0,Wt=t=>Boolean(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey),_t=t=>!t.defaultPrevented&&t.button===Lt&&(!t.currentTarget.target||t.currentTarget.target==="_self")&&!Wt(t),Y=(0,T.forwardRef)((c,g)=>{var a=c,{activeClassName:t="is-active",children:e,className:r,exact:o=!1,to:s,onClick:p,onFocus:n,onKeyDown:l,onMouseDown:u,onMouseEnter:m}=a,f=M(a,["activeClassName","children","className","exact","to","onClick","onFocus","onKeyDown","onMouseDown","onMouseEnter"]);let{history:d,isActive:R,preloadCode:P,warmRoute:_}=(0,T.useContext)(x),A=d.createHref(s),Z=R(s,o),Et=(0,T.useCallback)(E=>{try{p==null||p(E)}catch(q){throw E.preventDefault(),q}if(_t(E)){E.preventDefault();let q=R(s,!0)?"replace":"push";d[q](s)}},[d,R,p,s]),St=(0,T.useCallback)(E=>{P(A),n==null||n(E)},[A,n,P]),Mt=(0,T.useCallback)(E=>{_(A),l==null||l(E)},[A,l,_]),Tt=(0,T.useCallback)(E=>{P(A),m==null||m(E)},[A,m,P]),At=(0,T.useCallback)(E=>{_(A),u==null||u(E)},[A,u,_]);return React.createElement("a",h(i({ref:g},f),{"aria-current":Z?"page":void 0,className:[r,Z?t:null].filter(Boolean).join(" "),href:A,onClick:Et,onFocus:St,onKeyDown:Mt,onMouseDown:At,onMouseEnter:Tt}),e)});Y.displayName="Link";var $=C(require("react"));var z=({exact:t,push:e,to:r})=>{let{history:o,isActive:s}=(0,$.useContext)(x);return(0,$.useEffect)(()=>{s(r,t)||o[e?"push":"replace"](r)},[t,o,s,e,r]),null};z.displayName="Redirect";var S=C(require("react"));var w=class{constructor(e){this.result=null;this.error=null;this.promise=null;this.loader=e}async load(){if(this.result!==null)return this.result;if(this.promise!==null)return this.promise;this.promise=this.loader();try{let e=await this.promise;return this.result=e,e}catch(e){throw this.error=e,e}}read(){if(this.result!==null)return this.result;throw this.error!==null?this.error:this.promise!==null?this.promise:this.load()}};var H=t=>{let e=[];for(let r in t)!Object.prototype.hasOwnProperty.call(t,r)||e.push(r);return e.sort((r,o)=>r>o?1:-1).reduce((r,o)=>{let s=t[o];if(!s)return r;let p=Array.isArray(s)?s.sort((n,l)=>n>l?1:-1).map(n=>encodeURIComponent(n)).join(`&${o}=`):encodeURIComponent(s);return`${r}${r?"&":"?"}${o}=${p}`},"")};var b={parametersString:"",pathname:"",value:null},st=t=>typeof t=="function",G=t=>t instanceof Map,nt=t=>G(t.preloaded),Ft=({route:t,params:e,search:r},o)=>{var n;let s=new Map,p=(n=t.preload)==null?void 0:n.call(t,e,r);for(let l in p){if(!Object.prototype.hasOwnProperty.call(p,l))continue;let u=p[l];if(u===void 0)continue;let m=st(u)?u:u.data,f=new w(m);f.load(),s.set(l,{data:f,defer:!st(u)&&u.defer!==void 0?u.defer:!o})}return s};function V(t,e=!1,r=!1){var g,c;let{route:o,params:s,search:p,location:n}=t,l=n.pathname===b.pathname,u=H(s);if(e&&l&&u===b.parametersString&&b.value!==null)return b.value;o.component.load();let m={component:o.component,location:n,params:s,search:p};if(e){let a=o.preload&&Ft(t,r),d=h(i({},m),{preloaded:a});return a&&(b.pathname=(g=n.pathname)!=null?g:"",b.parametersString=H(s),b.value=d),d}return h(i({},m),{preloaded:(c=o.preload)==null?void 0:c.call(o,s,p)})}var at=(t,e)=>{switch(e.type){case"START_ROUTE_TRANSITION":return h(i({},t),{isTransitioning:!0});case"FINISH_ROUTE_TRANSITION":return i(h(i({},t),{isTransitioning:!1}),e.payload);default:return t}};var $t=t=>{let e={component:t.component,location:t.location,props:{params:t.params,search:t.search}};if(G(t.preloaded)){let r={};for(let[o,s]of t.preloaded.entries())r[o]=s.data;return h(i({},e),{props:h(i({},e.props),{preloaded:r})})}return h(i({},e),{props:h(i({},e.props),{preloaded:t.preloaded})})},J=({pendingIndicator:t,routeWrapper:e})=>{let{awaitComponent:r,get:o,history:s,routeTransitionCompleted:p,subscribe:n}=(0,S.useContext)(x),[{isTransitioning:l,historyUpdate:u,routeEntry:m},f]=(0,S.useReducer)(at,{historyUpdate:{action:s.action,location:s.location},isTransitioning:!1,routeEntry:$t(o())}),g=(0,S.useMemo)(()=>m.component.read(),[m]),c=(0,S.useCallback)(async a=>{let d={};if(a.preloaded)for(let[R,P]of a.preloaded.entries())P.defer||await P.data.load(),d[R]=P.data;return{component:a.component,location:a.location,props:{params:a.params,preloaded:a.preloaded&&d,search:a.search}}},[]);return(0,S.useEffect)(()=>{let a=n({onTransitionStart:async(d,R)=>{f({type:"START_ROUTE_TRANSITION"}),r&&await d.component.load();let P=nt(d)?await c(d):{component:d.component,location:d.location,props:{params:d.params,preloaded:d.preloaded,search:d.search}};f({payload:{historyUpdate:R,routeEntry:P},type:"FINISH_ROUTE_TRANSITION"})}});return()=>a()},[r,n,c]),(0,S.useEffect)(()=>{p(u)},[u,p]),React.createElement(React.Fragment,null,l&&t?t:null,e?e({Route:React.createElement(g,i({},m.props))}):React.createElement(g,i({},m.props)))};J.displayName="RouteRenderer";var Q=({children:t,router:e})=>React.createElement(x.Provider,{value:e},t);Q.displayName="RouterProvider";var it=C(require("react"));var pt=()=>{let t=(0,it.useContext)(x);if(!O(t))throw new Error("`useHistory` can not be used outside of `RouterProvider`.");let{action:e,listen:r,location:o}=t.history;return{action:e,listen:r,location:o}};var ct=C(require("react"));var ut=()=>{let t=(0,ct.useContext)(x);if(!O(t))throw new Error("`useNavigation` can not be used outside of `RouterProvider`.");let{back:e,forward:r,go:o,push:s,replace:p}=t.history;return{back:e,forward:r,go:o,push:s,replace:p}};var dt=C(require("react"));var mt=()=>{let t=(0,dt.useContext)(x);if(!O(t))throw new Error("`useRouter` can not be used outside of `RouterProvider`.");let{isActive:e,preloadCode:r,subscribe:o,warmRoute:s}=t;return{isActive:e,preloadCode:r,subscribe:o,warmRoute:s}};var Rt=C(require("history"));var X=C(require("history"));var lt=C(require("history")),v=t=>i({hash:"",pathname:"",search:""},typeof t=="string"?(0,lt.parsePath)(t):t);var j=(t,e,r="")=>{let o=decodeURIComponent(r),s=t[e];return s?Array.isArray(s)?s.concat(o):[s,o]:o};var L=t=>t?t.slice(1).split("&").reduce((r,o)=>{let[s,p]=o.split("=");if(s){let n=j(r,s,p);return h(i({},r),{[s]:n})}return r},{}):{};var W=(t,e,r=!1)=>{var p,n;let o=v(t),s=v(e);if(o.pathname!==s.pathname)return!1;if(r){let l=H(L((p=o.search)!=null?p:"")),u=H(L((n=s.search)!=null?n:""));return l===u&&o.hash===s.hash}return!0};var B=t=>t.startsWith("/")?t:`/${t}`;var ht=(t,e)=>{let r=B(e),o=[],s=`^(${t.replace(/[$()*+./?[\\\]^{|}-]/g,"\\$&").replace(/\\\*$/,".*").replace(/:(\w+)|(.\*)/g,(u,m="$rest")=>(o.push(m),`([^${m==="$rest"?":(w+)|(.*)":"\\/"}]+)`))})\\/?$`,n=new RegExp(s).exec(r);return n?{params:o.reduce((u,m,f)=>{let g=n[f+2],c=j(u,m,g);return u[m]=c,u},{})}:null};var N=(t,e)=>{var u,m;let r=v(e),{pathname:o}=r,s={},p=i({},L((u=r.search)!=null?u:""));if(!o)throw new Error("Unable to determine pathname from given location");let n=t.has(o)&&t.get(o);if(!n)for(let[f,g]of t.entries()){if(f!=="/*"){let c=ht(f,o);if(!c)continue;s=i({},c.params)}n=g;break}if(!n)throw new Error("No route found for requested path. Ensure you have a wildcard (*) route to catch-all non-matching paths.");let l=(m=n.redirectRules)==null?void 0:m.call(n,s,p);return l?N(t,l):{location:r,params:s,route:n,search:p}};var ft=t=>{let e=new Map,r=(o,s)=>o.forEach(p=>{let R=p,{path:n,children:l}=R,u=M(R,["path","children"]),{path:m="",redirectRules:f}=s!=null?s:{},g=m==="/"?"":m,c=n?B(n):"",a=[g,c].join(""),d=h(i({redirectRules:f},u),{component:new w(u.component)});e.set(a,d),l&&Array.isArray(l)&&r(l,h(i({redirectRules:f},u),{path:a}))});return r(t),process.env.NODE_ENV!=="production"&&!e.has("/*")&&console.warn(`You didn't set a wildcard (*) route to catch any unmatched path.
This is required to make sure you push users to a Not Found page
when they request a route that doesn't exist; e.g. 404.`),e};var U=({assistPreload:t=!1,awaitComponent:e=!1,awaitPreload:o=!1,history:r,routes:s})=>{let p=lt(s),n=N(p,r.location),l=$(n,t,o);W(n.location,r.location,!0)||r.replace(n.location);let u=0,m=new Map;r.listen(c=>{let{location:a}=c;if(W(l.location,a,!0))return;let d=N(p,a),R=$(d,t,o);if(!W(d.location,a,!0)){r.replace(d.location);return}l=R,m.forEach(([P])=>P==null?void 0:P(R,c))});let f=c=>{m.forEach(([,a])=>a==null?void 0:a(c))};return{assistPreload:t,awaitComponent:e,get:()=>l,history:h(i({},r),{push:(c,a)=>r.push(i({hash:"",search:""},typeof c=="string"?(0,J.parsePath)(c):c),a),replace:(c,a)=>r.replace(i({hash:"",search:""},typeof c=="string"?(0,J.parsePath)(c):c),a)}),isActive:(c,a)=>W(r.location,c,a),preloadCode:c=>{let a=w(c);try{let d=N(p,a);d&&d.route.component.load()}catch{}},routeTransitionCompleted:f,subscribe:({onTransitionStart:c,onTransitionComplete:a})=>{let d=u++,R=()=>{m.delete(d)};return m.set(d,[c,a]),R},warmRoute:c=>{let a=w(c);try{let d=N(p,a);d&&$(d,t,o)}catch{}}}};var I=t=>{if(Array.isArray(t)){if(t.length===0)throw new Error("At least one route must be provided.")}else throw new TypeError("Must be an array configuration.");return!0};var ft=(r,o)=>{var s=r,{routes:t}=s,e=M(s,["routes"]);return I(t),U(h(i({},e),{history:(0,ht.createBrowserHistory)(o),routes:t}))};var Rt=C(require("history"));var yt=(r,o)=>{var s=r,{routes:t}=s,e=M(s,["routes"]);return I(t),U(h(i({},e),{history:(0,Rt.createHashHistory)(o),routes:t}))};var gt=C(require("history"));var Pt=(r,o)=>{var s=r,{routes:t}=s,e=M(s,["routes"]);return I(t),U(h(i({},e),{history:(0,gt.createMemoryHistory)(o),routes:t}))};0&&(module.exports={Link,RouteRenderer,RouterProvider,SuspenseResource,createBrowserRouter,createHashRouter,createMemoryRouter,useHistory,useNavigation,useRouter});
when they request a route that doesn't exist; e.g. 404.`),e};var U=({assistPreload:t=!1,awaitComponent:e=!1,awaitPreload:r=!1,history:o,routes:s})=>{let p=ft(s),n=N(p,o.location),l=V(n,t,r);W(n.location,o.location,!0)||o.replace(n.location);let u=0,m=new Map;o.listen(c=>{let{location:a}=c;if(W(l.location,a,!0))return;let d=N(p,a),R=V(d,t,r);if(!W(d.location,a,!0)){o.replace(d.location);return}l=R,m.forEach(([P])=>P==null?void 0:P(R,c))});let f=c=>{m.forEach(([,a])=>a==null?void 0:a(c))};return{assistPreload:t,awaitComponent:e,get:()=>l,history:h(i({},o),{push:(c,a)=>o.push(i({hash:"",search:""},typeof c=="string"?(0,X.parsePath)(c):c),a),replace:(c,a)=>o.replace(i({hash:"",search:""},typeof c=="string"?(0,X.parsePath)(c):c),a)}),isActive:(c,a)=>W(o.location,c,a),preloadCode:c=>{let a=v(c);try{let d=N(p,a);d&&d.route.component.load()}catch{}},routeTransitionCompleted:f,subscribe:({onTransitionStart:c,onTransitionComplete:a})=>{let d=u++,R=()=>{m.delete(d)};return m.set(d,[c,a]),R},warmRoute:c=>{let a=v(c);try{let d=N(p,a);d&&V(d,t,r)}catch{}}}};var I=t=>{if(Array.isArray(t)){if(t.length===0)throw new Error("At least one route must be provided.")}else throw new TypeError("Must be an array configuration.");return!0};var yt=(o,r)=>{var s=o,{routes:t}=s,e=M(s,["routes"]);return I(t),U(h(i({},e),{history:(0,Rt.createBrowserHistory)(r),routes:t}))};var gt=C(require("history"));var Pt=(o,r)=>{var s=o,{routes:t}=s,e=M(s,["routes"]);return I(t),U(h(i({},e),{history:(0,gt.createHashHistory)(r),routes:t}))};var xt=C(require("history"));var Ct=(o,r)=>{var s=o,{routes:t}=s,e=M(s,["routes"]);return I(t),U(h(i({},e),{history:(0,xt.createMemoryHistory)(r),routes:t}))};0&&(module.exports={Link,Redirect,RouteRenderer,RouterProvider,SuspenseResource,createBrowserRouter,createHashRouter,createMemoryRouter,useHistory,useNavigation,useRouter});
//# sourceMappingURL=yarr.cjs.production.min.js.map
export { Link } from './components/Link';
export { Redirect } from './components/Redirect';
export { RouteRenderer } from './components/RouteRenderer';

@@ -3,0 +4,0 @@ export { RouterProvider } from './components/RouterProvider';

// Components
export { Link } from './components/Link';
export { Redirect } from './components/Redirect';
export { RouteRenderer } from './components/RouteRenderer';

@@ -4,0 +5,0 @@ export { RouterProvider } from './components/RouterProvider';

{
"name": "yarr",
"version": "2.0.0-alpha.7",
"version": "2.0.0-alpha.8",
"license": "MIT",

@@ -5,0 +5,0 @@ "author": "Eric Taylor <eric@daxos.com>",

// Components
export { Link } from './components/Link';
export { Redirect } from './components/Redirect';
export { RouteRenderer } from './components/RouteRenderer';

@@ -4,0 +5,0 @@ export { RouterProvider } from './components/RouterProvider';

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc