Socket
Socket
Sign inDemoInstall

atomic-router

Package Overview
Dependencies
Maintainers
1
Versions
60
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

atomic-router - npm Package Compare versions

Comparing version 0.5.0-dev.17 to 0.5.0-dev.18

2

dist/esm/index.js

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

var ee=Object.defineProperty,te=Object.defineProperties;var ae=Object.getOwnPropertyDescriptors;var M=Object.getOwnPropertySymbols;var re=Object.prototype.hasOwnProperty,oe=Object.prototype.propertyIsEnumerable;var z=(e,t,a)=>t in e?ee(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,j=(e,t)=>{for(var a in t||(t={}))re.call(t,a)&&z(e,a,t[a]);if(M)for(var a of M(t))oe.call(t,a)&&z(e,a,t[a]);return e},B=(e,t)=>te(e,ae(t));import{attach as se,createEffect as ne,createEvent as A,createStore as T,sample as K,split as L}from"effector";var S={ROUTE:Symbol()};var I=(e={})=>{let t=ne(async({params:s,query:c})=>({params:s||{},query:c||{}})),a=se({effect:t,mapParams:s=>({params:s||{},query:{}})}),m=T(!1),o=T({}),i=T({}),u=A(),d=A(),P=A(),R=A();if(m.on(u,()=>!0).on(P,()=>!1),o.on(u,(s,{params:c})=>c).on(d,(s,{params:c})=>c),i.on(u,(s,{query:c})=>c).on(d,(s,{query:c})=>c),L({source:t.doneData,match:m.map(s=>s?"updated":"opened"),cases:{opened:u,updated:d}}),K({clock:R,target:P}),e.filter){let s=e.filter;L({source:K({clock:s}),match:c=>c?"true":"false",cases:{true:u,false:R}})}return{$isOpened:m,$params:o,$query:i,opened:u,updated:d,closed:R,left:P,navigate:t,open:a,kind:S.ROUTE,settings:{derived:Boolean(e.filter)}}};import{match as ce,compile as ue}from"path-to-regexp";var me=e=>{let t=new URL(`http://_${e}`);return[t.pathname,t.hash].join("")};function N({pathCreator:e,params:t,query:a}){let m=ue(e)(t),o=Object.keys(a).length?`?${new URLSearchParams(a)}`:"";return`${m}${o}`}function V({pathCreator:e,actualPath:t}){let a=ce(e)(me(t));return a?{matches:!0,params:a.params}:{matches:!1}}import{attach as D,createEffect as H,guard as v,sample as h,createStore as $,createEvent as W,scopeBind as ie,restore as pe}from"effector";var U=(e,t)=>{if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let a in e)if(`${e[a]}`!=`${t[a]}`)return!1;return!0};var Pe=H(e=>{if(!e.history)throw new Error("[Routing] No history provided");return e.history[e.method](e.path,{}),e}),de=e=>{let t=[];for(let o of e)Array.isArray(o.route)?t.push(...o.route.map(i=>B(j({},o),{route:i}))):t.push(o);let a=[],m=[];for(let o of t)o.route.settings.derived?a.push(o):m.push(o);if(a.length)for(let o of a)console.error(`createHistoryRouter: ${o.path} uses derived route. This won't work`);return m},He=e=>{let t=de(e.routes),a=W(),m=W(),o=$({}),i=$(""),u=$([],{serialize:"ignore"}),d=$(!1),P=$(null,{serialize:"ignore"});P.on(a,(r,n)=>n);let R=D({source:{history:P},effect:Pe,mapParams:(r,{history:n})=>j({history:n},r)}),C=H(({route:r,params:n,query:l})=>({path:N({pathCreator:r.path,params:n,query:l}),params:n,query:l,method:"push"})),s=H(({path:r,query:n,hash:l})=>{let y=[],x=[];for(let b of t){let p=b.path.includes("#")?`${r}${l}`:r,{matches:f,params:Q}=V({pathCreator:b.path,actualPath:p});(f?y:x).push({route:b,params:Q,query:n})}return{opened:y,closed:x}});i.on(s.done,(r,{params:{path:n}})=>n),o.on(s.done,(r,{params:{query:n}})=>n),u.on(s.doneData,(r,{opened:n})=>n.map(l=>l.route.route)),h({clock:C.doneData,target:R}),v({clock:s.doneData,filter:({opened:r})=>r.length===0,target:m});let c=s.doneData.map(({opened:r})=>r),k=s.doneData.map(({closed:r})=>r);for(let r of t){let n=$(!1),l=r.route.navigate.done;h({clock:l,fn:({result:{params:p,query:f}})=>({route:r,params:p,query:f}),target:C});let y=p=>{let f=p.find(Q=>Q.route===r);if(!!f)return{params:f.params,query:f.query}},x={opened:v({clock:c.filterMap(y),filter:r.route.$isOpened.map(p=>!p)}),updated:v({clock:c.filterMap(y),filter:r.route.$isOpened}),closed:v({clock:k.filterMap(y),filter:r.route.$isOpened})};n.on(l,()=>!0);let b=v({clock:x.updated,filter:n.map(p=>!p)});h({source:pe(b,null),clock:v({clock:b,source:[r.route.$params,r.route.$query],filter:([p,f],Q)=>!U(p,Q.params)||!U(f,Q.query)}),fn:p=>p,target:r.route.updated}),v({clock:x.opened,filter:n.map(p=>!p),target:r.route.opened}),h({clock:x.closed,target:r.route.closed}),n.reset(h({clock:c}))}let q=D({source:{history:P},effect:async({history:r})=>{let[n,l,y]=[r.location.pathname,Object.fromEntries(new URLSearchParams(r.location.search)),r.location.hash];return{path:n,query:l,hash:y}}});h({source:q.doneData,target:s});let w=D({source:{history:P},effect:async({history:r})=>{let n=q;try{n=ie(q)}catch{}return r.listen(()=>{n()}),!0}});e.hydrate||h({clock:w.doneData,target:q}),h({clock:P,target:w}),d.on(s.doneData,()=>!0).reset(P);let Z=h({clock:v({clock:d,filter:Boolean}),source:{activeRoutes:u,path:i,query:o}});return{$path:i,$query:o,$activeRoutes:u,$history:P,setHistory:a,push:R,routes:t,initialized:Z,routeNotFound:m}};var G=e=>typeof e=="object"&&e!==null&&"kind"in e&&e.kind===S.ROUTE;import{createEvent as le,createStore as Re,is as ye,sample as J}from"effector";var Ne=e=>{let t=e.clock?J({clock:e.clock}):le(),a=X(e.params||{}),m=X(e.query||{});return J({clock:t,source:{params:a,query:m},fn:({params:o,query:i},u)=>({params:typeof o=="function"?o(u):o,query:typeof i=="function"?i(u):i}),target:e.route.navigate}),t},X=e=>ye.store(e)?e:Re(e);import{is as fe,guard as he,merge as ke,sample as E,combine as _,createStore as Y,createEvent as F}from"effector";var Oe=e=>{if(G(e))return{route:e,chainedRoute:I(),beforeOpen:F(),openOn:[e.opened,e.closed],cancelOn:[F()]};let t=e;if(!("enterOn"in t)&&fe.effect(t.beforeOpen))return{route:t.route,chainedRoute:t.chainedRoute||I(),beforeOpen:t.beforeOpen,openOn:t.beforeOpen.doneData,cancelOn:t.beforeOpen.failData};let a=e;return{route:a.route,chainedRoute:a.chainedRoute||I(),beforeOpen:a.beforeOpen,openOn:E({clock:a.openOn}),cancelOn:E({clock:a.cancelOn||F()})}},tt=e=>{let{route:t,chainedRoute:a,beforeOpen:m,openOn:o,cancelOn:i}=Oe(e),u=Y({}),d=Y({}),P=_(_([t.$params,t.$query]),_([u,d]),(c,k)=>c[0]===k[0]&&c[1]===k[1]),R=E({clock:[t.opened,t.updated]});E({clock:R,target:m}),u.on(R,(c,{params:k})=>k),d.on(R,(c,{query:k})=>k);let C=he({clock:o,source:{params:u,query:d},filter:P});E({clock:C,target:a.navigate});let s=ke([t.closed,i]);return u.reset(s),d.reset(s),E({clock:s,target:a.closed}),a};export{S as Kind,N as buildPath,tt as chainRoute,He as createHistoryRouter,I as createRoute,G as isRoute,V as matchPath,Ne as redirect};
var ee=Object.defineProperty,te=Object.defineProperties;var ae=Object.getOwnPropertyDescriptors;var M=Object.getOwnPropertySymbols;var re=Object.prototype.hasOwnProperty,oe=Object.prototype.propertyIsEnumerable;var z=(e,t,a)=>t in e?ee(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,j=(e,t)=>{for(var a in t||(t={}))re.call(t,a)&&z(e,a,t[a]);if(M)for(var a of M(t))oe.call(t,a)&&z(e,a,t[a]);return e},B=(e,t)=>te(e,ae(t));import{attach as se,createEffect as ne,createEvent as I,createStore as T,sample as K,split as L}from"effector";var S={ROUTE:Symbol()};var A=(e={})=>{let t=ne(async({params:s,query:c})=>({params:s||{},query:c||{}})),a=se({effect:t,mapParams:s=>({params:s||{},query:{}})}),i=T(!1),o=T({}),p=T({}),u=I(),d=I(),l=I(),f=I();if(i.on(u,()=>!0).on(l,()=>!1),o.on(u,(s,{params:c})=>c).on(d,(s,{params:c})=>c),p.on(u,(s,{query:c})=>c).on(d,(s,{query:c})=>c),L({source:t.doneData,match:i.map(s=>s?"updated":"opened"),cases:{opened:u,updated:d}}),K({clock:f,target:l}),e.filter){let s=e.filter;L({source:K({clock:s}),match:c=>c?"true":"false",cases:{true:u,false:f}})}return{$isOpened:i,$params:o,$query:p,opened:u,updated:d,closed:f,left:l,navigate:t,open:a,kind:S.ROUTE,settings:{derived:Boolean(e.filter)}}};import{match as ce,compile as ue}from"path-to-regexp";var me=e=>{let t=new URL(`http://_${e}`);return[t.pathname,t.hash].join("")};function N({pathCreator:e,params:t,query:a}){let i=ue(e)(t),o=Object.keys(a).length?`?${new URLSearchParams(a)}`:"";return`${i}${o}`}function V({pathCreator:e,actualPath:t}){let a=ce(e)(me(t));return a?{matches:!0,params:a.params}:{matches:!1}}import{attach as D,createEffect as H,guard as v,sample as k,createStore as $,createEvent as W,scopeBind as ie,restore as pe}from"effector";var U=(e,t)=>{if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let a in e)if(`${e[a]}`!=`${t[a]}`)return!1;return!0};var le=H(e=>{if(!e.history)throw new Error("[Routing] No history provided");return e.history[e.method](e.path,{}),e}),de=e=>{let t=[];for(let o of e)Array.isArray(o.route)?t.push(...o.route.map(p=>B(j({},o),{route:p}))):t.push(o);let a=[],i=[];for(let o of t)o.route.settings.derived?a.push(o):i.push(o);if(a.length)for(let o of a)console.error(`createHistoryRouter: ${o.path} uses derived route. This won't work`);return i},He=e=>{let t=de(e.routes),a=W(),i=W(),o=$({}),p=$(""),u=$([],{serialize:"ignore"}),d=$(!1),l=$(null,{serialize:"ignore"});l.on(a,(r,n)=>n);let f=D({source:{history:l},effect:le,mapParams:(r,{history:n})=>j({history:n},r)}),C=H(({route:r,params:n,query:P})=>({path:N({pathCreator:r.path,params:n,query:P}),params:n,query:P,method:"push"})),s=H(({path:r,query:n,hash:P})=>{let h=[],R=[];for(let g of t){let m=g.path.includes("#")?`${r}${P}`:r,{matches:y,params:Q}=V({pathCreator:g.path,actualPath:m});(y?h:R).push({route:g,params:Q,query:n})}for(let g in R){let m=g;h.some(y=>y.route.route===R[m].route.route)&&(R[m]=null)}return R=R.filter(Boolean),{opened:h,closed:R}});p.on(s.done,(r,{params:{path:n}})=>n),o.on(s.done,(r,{params:{query:n}})=>n),u.on(s.doneData,(r,{opened:n})=>n.map(P=>P.route.route)),k({clock:C.doneData,target:f}),v({clock:s.doneData,filter:({opened:r})=>r.length===0,target:i});let c=s.doneData.map(({opened:r})=>r),O=s.doneData.map(({closed:r})=>r);for(let r of t){let n=$(!1),P=r.route.navigate.done;k({clock:P,fn:({result:{params:m,query:y}})=>({route:r,params:m,query:y}),target:C});let h=m=>{let y=m.find(Q=>Q.route.route===r.route);if(!!y)return{params:y.params,query:y.query}},R={opened:v({clock:c.filterMap(h),filter:r.route.$isOpened.map(m=>!m)}),updated:v({clock:c.filterMap(h),filter:r.route.$isOpened}),closed:v({clock:O.filterMap(h),filter:r.route.$isOpened})};n.on(P,()=>!0);let g=v({clock:R.updated,filter:n.map(m=>!m)});k({source:pe(g,null),clock:v({clock:g,source:[r.route.$params,r.route.$query],filter:([m,y],Q)=>!U(m,Q.params)||!U(y,Q.query)}),fn:m=>m,target:r.route.updated}),v({clock:R.opened,filter:n.map(m=>!m),target:r.route.opened}),k({clock:R.closed,target:r.route.closed}),n.reset(k({clock:c}))}let q=D({source:{history:l},effect:async({history:r})=>{let[n,P,h]=[r.location.pathname,Object.fromEntries(new URLSearchParams(r.location.search)),r.location.hash];return{path:n,query:P,hash:h}}});k({source:q.doneData,target:s});let w=D({source:{history:l},effect:async({history:r})=>{let n=q;try{n=ie(q)}catch{}return r.listen(()=>{n()}),!0}});e.hydrate||k({clock:w.doneData,target:q}),k({clock:l,target:w}),d.on(s.doneData,()=>!0).reset(l);let Z=k({clock:v({clock:d,filter:Boolean}),source:{activeRoutes:u,path:p,query:o}});return{$path:p,$query:o,$activeRoutes:u,$history:l,setHistory:a,push:f,routes:t,initialized:Z,routeNotFound:i}};var G=e=>typeof e=="object"&&e!==null&&"kind"in e&&e.kind===S.ROUTE;import{createEvent as Pe,createStore as Re,is as ye,sample as J}from"effector";var Ne=e=>{let t=e.clock?J({clock:e.clock}):Pe(),a=X(e.params||{}),i=X(e.query||{});return J({clock:t,source:{params:a,query:i},fn:({params:o,query:p},u)=>({params:typeof o=="function"?o(u):o,query:typeof p=="function"?p(u):p}),target:e.route.navigate}),t},X=e=>ye.store(e)?e:Re(e);import{is as fe,guard as he,merge as ke,sample as E,combine as _,createStore as Y,createEvent as F}from"effector";var Oe=e=>{if(G(e))return{route:e,chainedRoute:A(),beforeOpen:F(),openOn:[e.opened,e.closed],cancelOn:[F()]};let t=e;if(!("enterOn"in t)&&fe.effect(t.beforeOpen))return{route:t.route,chainedRoute:t.chainedRoute||A(),beforeOpen:t.beforeOpen,openOn:t.beforeOpen.doneData,cancelOn:t.beforeOpen.failData};let a=e;return{route:a.route,chainedRoute:a.chainedRoute||A(),beforeOpen:a.beforeOpen,openOn:E({clock:a.openOn}),cancelOn:E({clock:a.cancelOn||F()})}},tt=e=>{let{route:t,chainedRoute:a,beforeOpen:i,openOn:o,cancelOn:p}=Oe(e),u=Y({}),d=Y({}),l=_(_([t.$params,t.$query]),_([u,d]),(c,O)=>c[0]===O[0]&&c[1]===O[1]),f=E({clock:[t.opened,t.updated]});E({clock:f,target:i}),u.on(f,(c,{params:O})=>O),d.on(f,(c,{query:O})=>O);let C=he({clock:o,source:{params:u,query:d},filter:l});E({clock:C,target:a.navigate});let s=ke([t.closed,p]);return u.reset(s),d.reset(s),E({clock:s,target:a.closed}),a};export{S as Kind,N as buildPath,tt as chainRoute,He as createHistoryRouter,A as createRoute,G as isRoute,V as matchPath,Ne as redirect};

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

var A=Object.defineProperty,L=Object.defineProperties,N=Object.getOwnPropertyDescriptor,V=Object.getOwnPropertyDescriptors,W=Object.getOwnPropertyNames,F=Object.getOwnPropertySymbols;var M=Object.prototype.hasOwnProperty,G=Object.prototype.propertyIsEnumerable;var w=(e,t,a)=>t in e?A(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,j=(e,t)=>{for(var a in t||(t={}))M.call(t,a)&&w(e,a,t[a]);if(F)for(var a of F(t))G.call(t,a)&&w(e,a,t[a]);return e},z=(e,t)=>L(e,V(t));var J=(e,t)=>{for(var a in t)A(e,a,{get:t[a],enumerable:!0})},X=(e,t,a,p)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of W(t))!M.call(e,s)&&s!==a&&A(e,s,{get:()=>t[s],enumerable:!(p=N(t,s))||p.enumerable});return e};var Y=e=>X(A({},"__esModule",{value:!0}),e);var ne={};J(ne,{Kind:()=>C,buildPath:()=>T,chainRoute:()=>se,createHistoryRouter:()=>ae,createRoute:()=>q,isRoute:()=>H,matchPath:()=>U,redirect:()=>re});module.exports=Y(ne);var i=require("effector");var C={ROUTE:Symbol()};var q=(e={})=>{let t=(0,i.createEffect)(async({params:n,query:m})=>({params:n||{},query:m||{}})),a=(0,i.attach)({effect:t,mapParams:n=>({params:n||{},query:{}})}),p=(0,i.createStore)(!1),s=(0,i.createStore)({}),d=(0,i.createStore)({}),P=(0,i.createEvent)(),y=(0,i.createEvent)(),R=(0,i.createEvent)(),h=(0,i.createEvent)();if(p.on(P,()=>!0).on(R,()=>!1),s.on(P,(n,{params:m})=>m).on(y,(n,{params:m})=>m),d.on(P,(n,{query:m})=>m).on(y,(n,{query:m})=>m),(0,i.split)({source:t.doneData,match:p.map(n=>n?"updated":"opened"),cases:{opened:P,updated:y}}),(0,i.sample)({clock:h,target:R}),e.filter){let n=e.filter;(0,i.split)({source:(0,i.sample)({clock:n}),match:m=>m?"true":"false",cases:{true:P,false:h}})}return{$isOpened:p,$params:s,$query:d,opened:P,updated:y,closed:h,left:R,navigate:t,open:a,kind:C.ROUTE,settings:{derived:Boolean(e.filter)}}};var I=require("path-to-regexp"),Z=e=>{let t=new URL(`http://_${e}`);return[t.pathname,t.hash].join("")};function T({pathCreator:e,params:t,query:a}){let p=(0,I.compile)(e)(t),s=Object.keys(a).length?`?${new URLSearchParams(a)}`:"";return`${p}${s}`}function U({pathCreator:e,actualPath:t}){let a=(0,I.match)(e)(Z(t));return a?{matches:!0,params:a.params}:{matches:!1}}var r=require("effector");var D=(e,t)=>{if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let a in e)if(`${e[a]}`!=`${t[a]}`)return!1;return!0};var ee=(0,r.createEffect)(e=>{if(!e.history)throw new Error("[Routing] No history provided");return e.history[e.method](e.path,{}),e}),te=e=>{let t=[];for(let s of e)Array.isArray(s.route)?t.push(...s.route.map(d=>z(j({},s),{route:d}))):t.push(s);let a=[],p=[];for(let s of t)s.route.settings.derived?a.push(s):p.push(s);if(a.length)for(let s of a)console.error(`createHistoryRouter: ${s.path} uses derived route. This won't work`);return p},ae=e=>{let t=te(e.routes),a=(0,r.createEvent)(),p=(0,r.createEvent)(),s=(0,r.createStore)({}),d=(0,r.createStore)(""),P=(0,r.createStore)([],{serialize:"ignore"}),y=(0,r.createStore)(!1),R=(0,r.createStore)(null,{serialize:"ignore"});R.on(a,(o,c)=>c);let h=(0,r.attach)({source:{history:R},effect:ee,mapParams:(o,{history:c})=>j({history:c},o)}),E=(0,r.createEffect)(({route:o,params:c,query:f})=>({path:T({pathCreator:o.path,params:c,query:f}),params:c,query:f,method:"push"})),n=(0,r.createEffect)(({path:o,query:c,hash:f})=>{let k=[],b=[];for(let Q of t){let l=Q.path.includes("#")?`${o}${f}`:o,{matches:O,params:$}=U({pathCreator:Q.path,actualPath:l});(O?k:b).push({route:Q,params:$,query:c})}return{opened:k,closed:b}});d.on(n.done,(o,{params:{path:c}})=>c),s.on(n.done,(o,{params:{query:c}})=>c),P.on(n.doneData,(o,{opened:c})=>c.map(f=>f.route.route)),(0,r.sample)({clock:E.doneData,target:h}),(0,r.guard)({clock:n.doneData,filter:({opened:o})=>o.length===0,target:p});let m=n.doneData.map(({opened:o})=>o),v=n.doneData.map(({closed:o})=>o);for(let o of t){let c=(0,r.createStore)(!1),f=o.route.navigate.done;(0,r.sample)({clock:f,fn:({result:{params:l,query:O}})=>({route:o,params:l,query:O}),target:E});let k=l=>{let O=l.find($=>$.route===o);if(!!O)return{params:O.params,query:O.query}},b={opened:(0,r.guard)({clock:m.filterMap(k),filter:o.route.$isOpened.map(l=>!l)}),updated:(0,r.guard)({clock:m.filterMap(k),filter:o.route.$isOpened}),closed:(0,r.guard)({clock:v.filterMap(k),filter:o.route.$isOpened})};c.on(f,()=>!0);let Q=(0,r.guard)({clock:b.updated,filter:c.map(l=>!l)});(0,r.sample)({source:(0,r.restore)(Q,null),clock:(0,r.guard)({clock:Q,source:[o.route.$params,o.route.$query],filter:([l,O],$)=>!D(l,$.params)||!D(O,$.query)}),fn:l=>l,target:o.route.updated}),(0,r.guard)({clock:b.opened,filter:c.map(l=>!l),target:o.route.opened}),(0,r.sample)({clock:b.closed,target:o.route.closed}),c.reset((0,r.sample)({clock:m}))}let S=(0,r.attach)({source:{history:R},effect:async({history:o})=>{let[c,f,k]=[o.location.pathname,Object.fromEntries(new URLSearchParams(o.location.search)),o.location.hash];return{path:c,query:f,hash:k}}});(0,r.sample)({source:S.doneData,target:n});let _=(0,r.attach)({source:{history:R},effect:async({history:o})=>{let c=S;try{c=(0,r.scopeBind)(S)}catch{}return o.listen(()=>{c()}),!0}});e.hydrate||(0,r.sample)({clock:_.doneData,target:S}),(0,r.sample)({clock:R,target:_}),y.on(n.doneData,()=>!0).reset(R);let K=(0,r.sample)({clock:(0,r.guard)({clock:y,filter:Boolean}),source:{activeRoutes:P,path:d,query:s}});return{$path:d,$query:s,$activeRoutes:P,$history:R,setHistory:a,push:h,routes:t,initialized:K,routeNotFound:p}};var H=e=>typeof e=="object"&&e!==null&&"kind"in e&&e.kind===C.ROUTE;var g=require("effector"),re=e=>{let t=e.clock?(0,g.sample)({clock:e.clock}):(0,g.createEvent)(),a=B(e.params||{}),p=B(e.query||{});return(0,g.sample)({clock:t,source:{params:a,query:p},fn:({params:s,query:d},P)=>({params:typeof s=="function"?s(P):s,query:typeof d=="function"?d(P):d}),target:e.route.navigate}),t},B=e=>g.is.store(e)?e:(0,g.createStore)(e);var u=require("effector");var oe=e=>{if(H(e))return{route:e,chainedRoute:q(),beforeOpen:(0,u.createEvent)(),openOn:[e.opened,e.closed],cancelOn:[(0,u.createEvent)()]};let t=e;if(!("enterOn"in t)&&u.is.effect(t.beforeOpen))return{route:t.route,chainedRoute:t.chainedRoute||q(),beforeOpen:t.beforeOpen,openOn:t.beforeOpen.doneData,cancelOn:t.beforeOpen.failData};let a=e;return{route:a.route,chainedRoute:a.chainedRoute||q(),beforeOpen:a.beforeOpen,openOn:(0,u.sample)({clock:a.openOn}),cancelOn:(0,u.sample)({clock:a.cancelOn||(0,u.createEvent)()})}},se=e=>{let{route:t,chainedRoute:a,beforeOpen:p,openOn:s,cancelOn:d}=oe(e),P=(0,u.createStore)({}),y=(0,u.createStore)({}),R=(0,u.combine)((0,u.combine)([t.$params,t.$query]),(0,u.combine)([P,y]),(m,v)=>m[0]===v[0]&&m[1]===v[1]),h=(0,u.sample)({clock:[t.opened,t.updated]});(0,u.sample)({clock:h,target:p}),P.on(h,(m,{params:v})=>v),y.on(h,(m,{query:v})=>v);let E=(0,u.guard)({clock:s,source:{params:P,query:y},filter:R});(0,u.sample)({clock:E,target:a.navigate});let n=(0,u.merge)([t.closed,d]);return P.reset(n),y.reset(n),(0,u.sample)({clock:n,target:a.closed}),a};0&&(module.exports={Kind,buildPath,chainRoute,createHistoryRouter,createRoute,isRoute,matchPath,redirect});
var I=Object.defineProperty,L=Object.defineProperties,N=Object.getOwnPropertyDescriptor,V=Object.getOwnPropertyDescriptors,W=Object.getOwnPropertyNames,F=Object.getOwnPropertySymbols;var M=Object.prototype.hasOwnProperty,G=Object.prototype.propertyIsEnumerable;var w=(e,t,a)=>t in e?I(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,j=(e,t)=>{for(var a in t||(t={}))M.call(t,a)&&w(e,a,t[a]);if(F)for(var a of F(t))G.call(t,a)&&w(e,a,t[a]);return e},z=(e,t)=>L(e,V(t));var J=(e,t)=>{for(var a in t)I(e,a,{get:t[a],enumerable:!0})},X=(e,t,a,p)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of W(t))!M.call(e,s)&&s!==a&&I(e,s,{get:()=>t[s],enumerable:!(p=N(t,s))||p.enumerable});return e};var Y=e=>X(I({},"__esModule",{value:!0}),e);var ne={};J(ne,{Kind:()=>C,buildPath:()=>T,chainRoute:()=>se,createHistoryRouter:()=>ae,createRoute:()=>q,isRoute:()=>H,matchPath:()=>U,redirect:()=>re});module.exports=Y(ne);var i=require("effector");var C={ROUTE:Symbol()};var q=(e={})=>{let t=(0,i.createEffect)(async({params:n,query:m})=>({params:n||{},query:m||{}})),a=(0,i.attach)({effect:t,mapParams:n=>({params:n||{},query:{}})}),p=(0,i.createStore)(!1),s=(0,i.createStore)({}),P=(0,i.createStore)({}),l=(0,i.createEvent)(),y=(0,i.createEvent)(),R=(0,i.createEvent)(),O=(0,i.createEvent)();if(p.on(l,()=>!0).on(R,()=>!1),s.on(l,(n,{params:m})=>m).on(y,(n,{params:m})=>m),P.on(l,(n,{query:m})=>m).on(y,(n,{query:m})=>m),(0,i.split)({source:t.doneData,match:p.map(n=>n?"updated":"opened"),cases:{opened:l,updated:y}}),(0,i.sample)({clock:O,target:R}),e.filter){let n=e.filter;(0,i.split)({source:(0,i.sample)({clock:n}),match:m=>m?"true":"false",cases:{true:l,false:O}})}return{$isOpened:p,$params:s,$query:P,opened:l,updated:y,closed:O,left:R,navigate:t,open:a,kind:C.ROUTE,settings:{derived:Boolean(e.filter)}}};var A=require("path-to-regexp"),Z=e=>{let t=new URL(`http://_${e}`);return[t.pathname,t.hash].join("")};function T({pathCreator:e,params:t,query:a}){let p=(0,A.compile)(e)(t),s=Object.keys(a).length?`?${new URLSearchParams(a)}`:"";return`${p}${s}`}function U({pathCreator:e,actualPath:t}){let a=(0,A.match)(e)(Z(t));return a?{matches:!0,params:a.params}:{matches:!1}}var r=require("effector");var D=(e,t)=>{if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let a in e)if(`${e[a]}`!=`${t[a]}`)return!1;return!0};var ee=(0,r.createEffect)(e=>{if(!e.history)throw new Error("[Routing] No history provided");return e.history[e.method](e.path,{}),e}),te=e=>{let t=[];for(let s of e)Array.isArray(s.route)?t.push(...s.route.map(P=>z(j({},s),{route:P}))):t.push(s);let a=[],p=[];for(let s of t)s.route.settings.derived?a.push(s):p.push(s);if(a.length)for(let s of a)console.error(`createHistoryRouter: ${s.path} uses derived route. This won't work`);return p},ae=e=>{let t=te(e.routes),a=(0,r.createEvent)(),p=(0,r.createEvent)(),s=(0,r.createStore)({}),P=(0,r.createStore)(""),l=(0,r.createStore)([],{serialize:"ignore"}),y=(0,r.createStore)(!1),R=(0,r.createStore)(null,{serialize:"ignore"});R.on(a,(o,c)=>c);let O=(0,r.attach)({source:{history:R},effect:ee,mapParams:(o,{history:c})=>j({history:c},o)}),E=(0,r.createEffect)(({route:o,params:c,query:f})=>({path:T({pathCreator:o.path,params:c,query:f}),params:c,query:f,method:"push"})),n=(0,r.createEffect)(({path:o,query:c,hash:f})=>{let g=[],h=[];for(let v of t){let d=v.path.includes("#")?`${o}${f}`:o,{matches:k,params:$}=U({pathCreator:v.path,actualPath:d});(k?g:h).push({route:v,params:$,query:c})}for(let v in h){let d=v;g.some(k=>k.route.route===h[d].route.route)&&(h[d]=null)}return h=h.filter(Boolean),{opened:g,closed:h}});P.on(n.done,(o,{params:{path:c}})=>c),s.on(n.done,(o,{params:{query:c}})=>c),l.on(n.doneData,(o,{opened:c})=>c.map(f=>f.route.route)),(0,r.sample)({clock:E.doneData,target:O}),(0,r.guard)({clock:n.doneData,filter:({opened:o})=>o.length===0,target:p});let m=n.doneData.map(({opened:o})=>o),b=n.doneData.map(({closed:o})=>o);for(let o of t){let c=(0,r.createStore)(!1),f=o.route.navigate.done;(0,r.sample)({clock:f,fn:({result:{params:d,query:k}})=>({route:o,params:d,query:k}),target:E});let g=d=>{let k=d.find($=>$.route.route===o.route);if(!!k)return{params:k.params,query:k.query}},h={opened:(0,r.guard)({clock:m.filterMap(g),filter:o.route.$isOpened.map(d=>!d)}),updated:(0,r.guard)({clock:m.filterMap(g),filter:o.route.$isOpened}),closed:(0,r.guard)({clock:b.filterMap(g),filter:o.route.$isOpened})};c.on(f,()=>!0);let v=(0,r.guard)({clock:h.updated,filter:c.map(d=>!d)});(0,r.sample)({source:(0,r.restore)(v,null),clock:(0,r.guard)({clock:v,source:[o.route.$params,o.route.$query],filter:([d,k],$)=>!D(d,$.params)||!D(k,$.query)}),fn:d=>d,target:o.route.updated}),(0,r.guard)({clock:h.opened,filter:c.map(d=>!d),target:o.route.opened}),(0,r.sample)({clock:h.closed,target:o.route.closed}),c.reset((0,r.sample)({clock:m}))}let S=(0,r.attach)({source:{history:R},effect:async({history:o})=>{let[c,f,g]=[o.location.pathname,Object.fromEntries(new URLSearchParams(o.location.search)),o.location.hash];return{path:c,query:f,hash:g}}});(0,r.sample)({source:S.doneData,target:n});let _=(0,r.attach)({source:{history:R},effect:async({history:o})=>{let c=S;try{c=(0,r.scopeBind)(S)}catch{}return o.listen(()=>{c()}),!0}});e.hydrate||(0,r.sample)({clock:_.doneData,target:S}),(0,r.sample)({clock:R,target:_}),y.on(n.doneData,()=>!0).reset(R);let K=(0,r.sample)({clock:(0,r.guard)({clock:y,filter:Boolean}),source:{activeRoutes:l,path:P,query:s}});return{$path:P,$query:s,$activeRoutes:l,$history:R,setHistory:a,push:O,routes:t,initialized:K,routeNotFound:p}};var H=e=>typeof e=="object"&&e!==null&&"kind"in e&&e.kind===C.ROUTE;var x=require("effector"),re=e=>{let t=e.clock?(0,x.sample)({clock:e.clock}):(0,x.createEvent)(),a=B(e.params||{}),p=B(e.query||{});return(0,x.sample)({clock:t,source:{params:a,query:p},fn:({params:s,query:P},l)=>({params:typeof s=="function"?s(l):s,query:typeof P=="function"?P(l):P}),target:e.route.navigate}),t},B=e=>x.is.store(e)?e:(0,x.createStore)(e);var u=require("effector");var oe=e=>{if(H(e))return{route:e,chainedRoute:q(),beforeOpen:(0,u.createEvent)(),openOn:[e.opened,e.closed],cancelOn:[(0,u.createEvent)()]};let t=e;if(!("enterOn"in t)&&u.is.effect(t.beforeOpen))return{route:t.route,chainedRoute:t.chainedRoute||q(),beforeOpen:t.beforeOpen,openOn:t.beforeOpen.doneData,cancelOn:t.beforeOpen.failData};let a=e;return{route:a.route,chainedRoute:a.chainedRoute||q(),beforeOpen:a.beforeOpen,openOn:(0,u.sample)({clock:a.openOn}),cancelOn:(0,u.sample)({clock:a.cancelOn||(0,u.createEvent)()})}},se=e=>{let{route:t,chainedRoute:a,beforeOpen:p,openOn:s,cancelOn:P}=oe(e),l=(0,u.createStore)({}),y=(0,u.createStore)({}),R=(0,u.combine)((0,u.combine)([t.$params,t.$query]),(0,u.combine)([l,y]),(m,b)=>m[0]===b[0]&&m[1]===b[1]),O=(0,u.sample)({clock:[t.opened,t.updated]});(0,u.sample)({clock:O,target:p}),l.on(O,(m,{params:b})=>b),y.on(O,(m,{query:b})=>b);let E=(0,u.guard)({clock:s,source:{params:l,query:y},filter:R});(0,u.sample)({clock:E,target:a.navigate});let n=(0,u.merge)([t.closed,P]);return l.reset(n),y.reset(n),(0,u.sample)({clock:n,target:a.closed}),a};0&&(module.exports={Kind,buildPath,chainRoute,createHistoryRouter,createRoute,isRoute,matchPath,redirect});
{
"version": "0.5.0-dev.17",
"version": "0.5.0-dev.18",
"license": "MIT",

@@ -4,0 +4,0 @@ "main": "dist/index.js",

@@ -152,4 +152,4 @@ import { buildPath, matchPath } from './utils/build-path';

>(({ path, query, hash }) => {
const opened = [] as RecheckResult<any>[];
const closed = [] as RecheckResult<any>[];
let opened = [] as RecheckResult<any>[];
let closed = [] as RecheckResult<any>[];

@@ -170,2 +170,16 @@ for (const route of remappedRoutes) {

// Checking for routes we need to close
// Remove all that are marked to be opened
for (const idx in closed) {
// @ts-expect-error
const closedIdx = idx as number;
if (
opened.some(obj => obj.route.route === closed[closedIdx].route.route)
) {
// @ts-expect-error
closed[closedIdx] = null;
}
}
closed = closed.filter(Boolean);
return {

@@ -223,3 +237,3 @@ opened,

const result = recheckResults.find(
recheckResult => recheckResult.route === routeObj
recheckResult => recheckResult.route.route === routeObj.route
);

@@ -226,0 +240,0 @@ if (!result) {

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