@argon-router/react 0.7.0 → 0.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const y=require("react"),be=require("effector-react");var N={exports:{}},S={};/**
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const y=require("react"),ge=require("effector-react");var N={exports:{}},S={};/**
2
2
  * @license React
3
3
  * react-jsx-runtime.production.js
4
4
  *
@@ -6,7 +6,7 @@
6
6
  *
7
7
  * This source code is licensed under the MIT license found in the
8
8
  * LICENSE file in the root directory of this source tree.
9
- */var de;function Oe(){if(de)return S;de=1;var a=Symbol.for("react.transitional.element"),v=Symbol.for("react.fragment");function s(b,l,i){var E=null;if(i!==void 0&&(E=""+i),l.key!==void 0&&(E=""+l.key),"key"in l){i={};for(var m in l)m!=="key"&&(i[m]=l[m])}else i=l;return l=i.ref,{$$typeof:a,type:b,key:E,ref:l!==void 0?l:null,props:i}}return S.Fragment=v,S.jsx=s,S.jsxs=s,S}var O={};/**
9
+ */var ve;function Oe(){if(ve)return S;ve=1;var a=Symbol.for("react.transitional.element"),v=Symbol.for("react.fragment");function s(b,l,i){var E=null;if(i!==void 0&&(E=""+i),l.key!==void 0&&(E=""+l.key),"key"in l){i={};for(var m in l)m!=="key"&&(i[m]=l[m])}else i=l;return l=i.ref,{$$typeof:a,type:b,key:E,ref:l!==void 0?l:null,props:i}}return S.Fragment=v,S.jsx=s,S.jsxs=s,S}var O={};/**
10
10
  * @license React
11
11
  * react-jsx-runtime.development.js
12
12
  *
@@ -14,18 +14,18 @@
14
14
  *
15
15
  * This source code is licensed under the MIT license found in the
16
16
  * LICENSE file in the root directory of this source tree.
17
- */var ve;function Ae(){return ve||(ve=1,process.env.NODE_ENV!=="production"&&function(){function a(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===pe?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case M:return"Fragment";case Te:return"Portal";case K:return"Profiler";case B:return"StrictMode";case V:return"Suspense";case W:return"SuspenseList"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case Z:return(e.displayName||"Context")+".Provider";case I:return(e._context.displayName||"Context")+".Consumer";case $:var r=e.render;return e=e.displayName,e||(e=r.displayName||r.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case U:return r=e.displayName||null,r!==null?r:a(e.type)||"Memo";case q:r=e._payload,e=e._init;try{return a(e(r))}catch{}}return null}function v(e){return""+e}function s(e){try{v(e);var r=!1}catch{r=!0}if(r){r=console;var t=r.error,n=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return t.call(r,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",n),v(e)}}function b(){}function l(){if(p===0){ee=console.log,re=console.info,te=console.warn,oe=console.error,ne=console.group,ae=console.groupCollapsed,ue=console.groupEnd;var e={configurable:!0,enumerable:!0,value:b,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}p++}function i(){if(p--,p===0){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:h({},e,{value:ee}),info:h({},e,{value:re}),warn:h({},e,{value:te}),error:h({},e,{value:oe}),group:h({},e,{value:ne}),groupCollapsed:h({},e,{value:ae}),groupEnd:h({},e,{value:ue})})}0>p&&console.error("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}function E(e){if(J===void 0)try{throw Error()}catch(t){var r=t.stack.trim().match(/\n( *(at )?)/);J=r&&r[1]||"",se=-1<t.stack.indexOf(`
17
+ */var Ee;function Ae(){return Ee||(Ee=1,process.env.NODE_ENV!=="production"&&function(){function a(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===pe?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case M:return"Fragment";case Te:return"Portal";case I:return"Profiler";case K:return"StrictMode";case V:return"Suspense";case W:return"SuspenseList"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case Q:return(e.displayName||"Context")+".Provider";case Z:return(e._context.displayName||"Context")+".Consumer";case $:var r=e.render;return e=e.displayName,e||(e=r.displayName||r.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case U:return r=e.displayName||null,r!==null?r:a(e.type)||"Memo";case q:r=e._payload,e=e._init;try{return a(e(r))}catch{}}return null}function v(e){return""+e}function s(e){try{v(e);var r=!1}catch{r=!0}if(r){r=console;var t=r.error,n=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return t.call(r,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",n),v(e)}}function b(){}function l(){if(p===0){re=console.log,te=console.info,oe=console.warn,ne=console.error,ae=console.group,ue=console.groupCollapsed,se=console.groupEnd;var e={configurable:!0,enumerable:!0,value:b,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}p++}function i(){if(p--,p===0){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:h({},e,{value:re}),info:h({},e,{value:te}),warn:h({},e,{value:oe}),error:h({},e,{value:ne}),group:h({},e,{value:ae}),groupCollapsed:h({},e,{value:ue}),groupEnd:h({},e,{value:se})})}0>p&&console.error("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}function E(e){if(J===void 0)try{throw Error()}catch(t){var r=t.stack.trim().match(/\n( *(at )?)/);J=r&&r[1]||"",le=-1<t.stack.indexOf(`
18
18
  at`)?" (<anonymous>)":-1<t.stack.indexOf("@")?"@unknown:0:0":""}return`
19
- `+J+e+se}function m(e,r){if(!e||L)return"";var t=G.get(e);if(t!==void 0)return t;L=!0,t=Error.prepareStackTrace,Error.prepareStackTrace=void 0;var n=null;n=_.H,_.H=null,l();try{var c={DetermineComponentFrameRoot:function(){try{if(r){var x=function(){throw Error()};if(Object.defineProperty(x.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(x,[])}catch(w){var A=w}Reflect.construct(e,[],x)}else{try{x.call()}catch(w){A=w}e.call(x.prototype)}}else{try{throw Error()}catch(w){A=w}(x=e())&&typeof x.catch=="function"&&x.catch(function(){})}}catch(w){if(w&&A&&typeof w.stack=="string")return[w.stack,A.stack]}return[null,null]}};c.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var u=Object.getOwnPropertyDescriptor(c.DetermineComponentFrameRoot,"name");u&&u.configurable&&Object.defineProperty(c.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var o=c.DetermineComponentFrameRoot(),R=o[0],k=o[1];if(R&&k){var f=R.split(`
19
+ `+J+e+le}function m(e,r){if(!e||L)return"";var t=G.get(e);if(t!==void 0)return t;L=!0,t=Error.prepareStackTrace,Error.prepareStackTrace=void 0;var n=null;n=_.H,_.H=null,l();try{var c={DetermineComponentFrameRoot:function(){try{if(r){var x=function(){throw Error()};if(Object.defineProperty(x.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(x,[])}catch(w){var A=w}Reflect.construct(e,[],x)}else{try{x.call()}catch(w){A=w}e.call(x.prototype)}}else{try{throw Error()}catch(w){A=w}(x=e())&&typeof x.catch=="function"&&x.catch(function(){})}}catch(w){if(w&&A&&typeof w.stack=="string")return[w.stack,A.stack]}return[null,null]}};c.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var u=Object.getOwnPropertyDescriptor(c.DetermineComponentFrameRoot,"name");u&&u.configurable&&Object.defineProperty(c.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var o=c.DetermineComponentFrameRoot(),R=o[0],k=o[1];if(R&&k){var f=R.split(`
20
20
  `),T=k.split(`
21
21
  `);for(o=u=0;u<f.length&&!f[u].includes("DetermineComponentFrameRoot");)u++;for(;o<T.length&&!T[o].includes("DetermineComponentFrameRoot");)o++;if(u===f.length||o===T.length)for(u=f.length-1,o=T.length-1;1<=u&&0<=o&&f[u]!==T[o];)o--;for(;1<=u&&0<=o;u--,o--)if(f[u]!==T[o]){if(u!==1||o!==1)do if(u--,o--,0>o||f[u]!==T[o]){var C=`
22
- `+f[u].replace(" at new "," at ");return e.displayName&&C.includes("<anonymous>")&&(C=C.replace("<anonymous>",e.displayName)),typeof e=="function"&&G.set(e,C),C}while(1<=u&&0<=o);break}}}finally{L=!1,_.H=n,i(),Error.prepareStackTrace=t}return f=(f=e?e.displayName||e.name:"")?E(f):"",typeof e=="function"&&G.set(e,f),f}function j(e){if(e==null)return"";if(typeof e=="function"){var r=e.prototype;return m(e,!(!r||!r.isReactComponent))}if(typeof e=="string")return E(e);switch(e){case V:return E("Suspense");case W:return E("SuspenseList")}if(typeof e=="object")switch(e.$$typeof){case $:return e=m(e.render,!1),e;case U:return j(e.type);case q:r=e._payload,e=e._init;try{return j(e(r))}catch{}}return""}function g(){var e=_.A;return e===null?null:e.getOwner()}function we(e){if(D.call(e,"key")){var r=Object.getOwnPropertyDescriptor(e,"key").get;if(r&&r.isReactWarning)return!1}return e.key!==void 0}function xe(e,r){function t(){le||(le=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",r))}t.isReactWarning=!0,Object.defineProperty(e,"key",{get:t,configurable:!0})}function ye(){var e=a(this.type);return ie[e]||(ie[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function je(e,r,t,n,c,u){return t=u.ref,e={$$typeof:Y,type:e,key:r,props:u,_owner:c},(t!==void 0?t:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:ye}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function F(e,r,t,n,c,u){if(typeof e=="string"||typeof e=="function"||e===M||e===K||e===B||e===V||e===W||e===ke||typeof e=="object"&&e!==null&&(e.$$typeof===q||e.$$typeof===U||e.$$typeof===Z||e.$$typeof===I||e.$$typeof===$||e.$$typeof===Ce||e.getModuleId!==void 0)){var o=r.children;if(o!==void 0)if(n)if(z(o)){for(n=0;n<o.length;n++)H(o[n],e);Object.freeze&&Object.freeze(o)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else H(o,e)}else o="",(e===void 0||typeof e=="object"&&e!==null&&Object.keys(e).length===0)&&(o+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports."),e===null?n="null":z(e)?n="array":e!==void 0&&e.$$typeof===Y?(n="<"+(a(e.type)||"Unknown")+" />",o=" Did you accidentally export a JSX literal instead of a component?"):n=typeof e,console.error("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",n,o);if(D.call(r,"key")){o=a(e);var R=Object.keys(r).filter(function(f){return f!=="key"});n=0<R.length?"{key: someKey, "+R.join(": ..., ")+": ...}":"{key: someKey}",ce[o+n]||(R=0<R.length?"{"+R.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
22
+ `+f[u].replace(" at new "," at ");return e.displayName&&C.includes("<anonymous>")&&(C=C.replace("<anonymous>",e.displayName)),typeof e=="function"&&G.set(e,C),C}while(1<=u&&0<=o);break}}}finally{L=!1,_.H=n,i(),Error.prepareStackTrace=t}return f=(f=e?e.displayName||e.name:"")?E(f):"",typeof e=="function"&&G.set(e,f),f}function j(e){if(e==null)return"";if(typeof e=="function"){var r=e.prototype;return m(e,!(!r||!r.isReactComponent))}if(typeof e=="string")return E(e);switch(e){case V:return E("Suspense");case W:return E("SuspenseList")}if(typeof e=="object")switch(e.$$typeof){case $:return e=m(e.render,!1),e;case U:return j(e.type);case q:r=e._payload,e=e._init;try{return j(e(r))}catch{}}return""}function g(){var e=_.A;return e===null?null:e.getOwner()}function we(e){if(ee.call(e,"key")){var r=Object.getOwnPropertyDescriptor(e,"key").get;if(r&&r.isReactWarning)return!1}return e.key!==void 0}function xe(e,r){function t(){ie||(ie=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",r))}t.isReactWarning=!0,Object.defineProperty(e,"key",{get:t,configurable:!0})}function ye(){var e=a(this.type);return ce[e]||(ce[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function je(e,r,t,n,c,u){return t=u.ref,e={$$typeof:Y,type:e,key:r,props:u,_owner:c},(t!==void 0?t:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:ye}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function H(e,r,t,n,c,u){if(typeof e=="string"||typeof e=="function"||e===M||e===I||e===K||e===V||e===W||e===ke||typeof e=="object"&&e!==null&&(e.$$typeof===q||e.$$typeof===U||e.$$typeof===Q||e.$$typeof===Z||e.$$typeof===$||e.$$typeof===Ce||e.getModuleId!==void 0)){var o=r.children;if(o!==void 0)if(n)if(z(o)){for(n=0;n<o.length;n++)X(o[n],e);Object.freeze&&Object.freeze(o)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else X(o,e)}else o="",(e===void 0||typeof e=="object"&&e!==null&&Object.keys(e).length===0)&&(o+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports."),e===null?n="null":z(e)?n="array":e!==void 0&&e.$$typeof===Y?(n="<"+(a(e.type)||"Unknown")+" />",o=" Did you accidentally export a JSX literal instead of a component?"):n=typeof e,console.error("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",n,o);if(ee.call(r,"key")){o=a(e);var R=Object.keys(r).filter(function(f){return f!=="key"});n=0<R.length?"{key: someKey, "+R.join(": ..., ")+": ...}":"{key: someKey}",fe[o+n]||(R=0<R.length?"{"+R.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
23
23
  let props = %s;
24
24
  <%s {...props} />
25
25
  React keys must be passed directly to JSX without using spread:
26
26
  let props = %s;
27
- <%s key={someKey} {...props} />`,n,o,R,o),ce[o+n]=!0)}if(o=null,t!==void 0&&(s(t),o=""+t),we(r)&&(s(r.key),o=""+r.key),"key"in r){t={};for(var k in r)k!=="key"&&(t[k]=r[k])}else t=r;return o&&xe(t,typeof e=="function"?e.displayName||e.name||"Unknown":e),je(e,o,u,c,g(),t)}function H(e,r){if(typeof e=="object"&&e&&e.$$typeof!==Se){if(z(e))for(var t=0;t<e.length;t++){var n=e[t];P(n)&&X(n,r)}else if(P(e))e._store&&(e._store.validated=1);else if(e===null||typeof e!="object"?t=null:(t=Q&&e[Q]||e["@@iterator"],t=typeof t=="function"?t:null),typeof t=="function"&&t!==e.entries&&(t=t.call(e),t!==e))for(;!(e=t.next()).done;)P(e.value)&&X(e.value,r)}}function P(e){return typeof e=="object"&&e!==null&&e.$$typeof===Y}function X(e,r){if(e._store&&!e._store.validated&&e.key==null&&(e._store.validated=1,r=_e(r),!fe[r])){fe[r]=!0;var t="";e&&e._owner!=null&&e._owner!==g()&&(t=null,typeof e._owner.tag=="number"?t=a(e._owner.type):typeof e._owner.name=="string"&&(t=e._owner.name),t=" It was passed a child from "+t+".");var n=_.getCurrentStack;_.getCurrentStack=function(){var c=j(e.type);return n&&(c+=n()||""),c},console.error('Each child in a list should have a unique "key" prop.%s%s See https://react.dev/link/warning-keys for more information.',r,t),_.getCurrentStack=n}}function _e(e){var r="",t=g();return t&&(t=a(t.type))&&(r=`
27
+ <%s key={someKey} {...props} />`,n,o,R,o),fe[o+n]=!0)}if(o=null,t!==void 0&&(s(t),o=""+t),we(r)&&(s(r.key),o=""+r.key),"key"in r){t={};for(var k in r)k!=="key"&&(t[k]=r[k])}else t=r;return o&&xe(t,typeof e=="function"?e.displayName||e.name||"Unknown":e),je(e,o,u,c,g(),t)}function X(e,r){if(typeof e=="object"&&e&&e.$$typeof!==Se){if(z(e))for(var t=0;t<e.length;t++){var n=e[t];P(n)&&B(n,r)}else if(P(e))e._store&&(e._store.validated=1);else if(e===null||typeof e!="object"?t=null:(t=D&&e[D]||e["@@iterator"],t=typeof t=="function"?t:null),typeof t=="function"&&t!==e.entries&&(t=t.call(e),t!==e))for(;!(e=t.next()).done;)P(e.value)&&B(e.value,r)}}function P(e){return typeof e=="object"&&e!==null&&e.$$typeof===Y}function B(e,r){if(e._store&&!e._store.validated&&e.key==null&&(e._store.validated=1,r=_e(r),!de[r])){de[r]=!0;var t="";e&&e._owner!=null&&e._owner!==g()&&(t=null,typeof e._owner.tag=="number"?t=a(e._owner.type):typeof e._owner.name=="string"&&(t=e._owner.name),t=" It was passed a child from "+t+".");var n=_.getCurrentStack;_.getCurrentStack=function(){var c=j(e.type);return n&&(c+=n()||""),c},console.error('Each child in a list should have a unique "key" prop.%s%s See https://react.dev/link/warning-keys for more information.',r,t),_.getCurrentStack=n}}function _e(e){var r="",t=g();return t&&(t=a(t.type))&&(r=`
28
28
 
29
29
  Check the render method of \``+t+"`."),r||(e=a(e))&&(r=`
30
30
 
31
- Check the top-level render call using <`+e+">."),r}var he=y,Y=Symbol.for("react.transitional.element"),Te=Symbol.for("react.portal"),M=Symbol.for("react.fragment"),B=Symbol.for("react.strict_mode"),K=Symbol.for("react.profiler"),I=Symbol.for("react.consumer"),Z=Symbol.for("react.context"),$=Symbol.for("react.forward_ref"),V=Symbol.for("react.suspense"),W=Symbol.for("react.suspense_list"),U=Symbol.for("react.memo"),q=Symbol.for("react.lazy"),ke=Symbol.for("react.offscreen"),Q=Symbol.iterator,pe=Symbol.for("react.client.reference"),_=he.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,D=Object.prototype.hasOwnProperty,h=Object.assign,Ce=Symbol.for("react.client.reference"),z=Array.isArray,p=0,ee,re,te,oe,ne,ae,ue;b.__reactDisabledLog=!0;var J,se,L=!1,G=new(typeof WeakMap=="function"?WeakMap:Map),Se=Symbol.for("react.client.reference"),le,ie={},ce={},fe={};O.Fragment=M,O.jsx=function(e,r,t,n,c){return F(e,r,t,!1,n,c)},O.jsxs=function(e,r,t,n,c){return F(e,r,t,!0,n,c)}}()),O}var Ee;function Ne(){return Ee||(Ee=1,process.env.NODE_ENV==="production"?N.exports=Oe():N.exports=Ae()),N.exports}var d=Ne();const ge=y.createContext(null),Pe=a=>d.jsx(ge.Provider,{value:a.router,children:a.children});function me(){const a=y.useContext(ge);if(!a)throw new Error("[useRouter] Router not found. Add RouterProvider in app root");return a}function Re(){return be.useUnit(me())}const Ye=y.forwardRef((a,v)=>{const{to:s,params:b,onClick:l,...i}=a,{mappedRoutes:E}=me(),m=E.find(({route:g})=>g===s),{onOpen:j}=be.useUnit(s);if(!m)throw new Error(`[Link] Route with path "${s.path}" not found. Maybe it is not passed into createRouter?`);return d.jsx("a",{...i,ref:v,href:m.build(b??void 0),onClick:g=>{l==null||l(g),!g.defaultPrevented&&(i.target&&i.target!=="_self"||g.metaKey||g.altKey||g.ctrlKey||g.shiftKey||(g.preventDefault(),j({params:b||{}})))}})}),Me=a=>({route:a.route,view:()=>{const{view:v,layout:s}=a;return s?d.jsx(s,{children:d.jsx(v,{})}):d.jsx(v,{})}}),$e=a=>{const{routes:v,otherwise:s}=a;return()=>{const{activeRoutes:b}=Re(),l=b.reduce((E,m)=>E.filter(j=>j!==m.parent),b),i=v.find(E=>E.route===l.at(-1));return i?y.createElement(i.view):s?d.jsx(s,{}):null}},Ve=a=>{a.route.internal.setAsyncImport(a.view);const v=y.lazy(a.view);return{route:a.route,view:()=>{const{layout:s,fallback:b=()=>d.jsx(d.Fragment,{})}=a;return s?d.jsx(s,{children:d.jsx(y.Suspense,{fallback:d.jsx(b,{}),children:d.jsx(v,{})})}):d.jsx(y.Suspense,{fallback:d.jsx(b,{}),children:d.jsx(v,{})})}}};exports.Link=Ye;exports.RouterProvider=Pe;exports.createLazyRouteView=Ve;exports.createRouteView=Me;exports.createRoutesView=$e;exports.useRouter=Re;
31
+ Check the top-level render call using <`+e+">."),r}var he=y,Y=Symbol.for("react.transitional.element"),Te=Symbol.for("react.portal"),M=Symbol.for("react.fragment"),K=Symbol.for("react.strict_mode"),I=Symbol.for("react.profiler"),Z=Symbol.for("react.consumer"),Q=Symbol.for("react.context"),$=Symbol.for("react.forward_ref"),V=Symbol.for("react.suspense"),W=Symbol.for("react.suspense_list"),U=Symbol.for("react.memo"),q=Symbol.for("react.lazy"),ke=Symbol.for("react.offscreen"),D=Symbol.iterator,pe=Symbol.for("react.client.reference"),_=he.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ee=Object.prototype.hasOwnProperty,h=Object.assign,Ce=Symbol.for("react.client.reference"),z=Array.isArray,p=0,re,te,oe,ne,ae,ue,se;b.__reactDisabledLog=!0;var J,le,L=!1,G=new(typeof WeakMap=="function"?WeakMap:Map),Se=Symbol.for("react.client.reference"),ie,ce={},fe={},de={};O.Fragment=M,O.jsx=function(e,r,t,n,c){return H(e,r,t,!1,n,c)},O.jsxs=function(e,r,t,n,c){return H(e,r,t,!0,n,c)}}()),O}var be;function Ne(){return be||(be=1,process.env.NODE_ENV==="production"?N.exports=Oe():N.exports=Ae()),N.exports}var d=Ne();const me=y.createContext(null),Pe=a=>d.jsx(me.Provider,{value:a.router,children:a.children});function F(){const a=y.useContext(me);if(!a)throw new Error("[useRouter] Router not found. Add RouterProvider in app root");return a}function Re(){return ge.useUnit(F())}const Ye=y.forwardRef((a,v)=>{const{to:s,params:b,onClick:l,...i}=a,{mappedRoutes:E}=F(),m=E.find(({route:g})=>g===s),{onOpen:j}=ge.useUnit(s);if(!m)throw new Error(`[Link] Route with path "${s.path}" not found. Maybe it is not passed into createRouter?`);return d.jsx("a",{...i,ref:v,href:m.build(b??void 0),onClick:g=>{l==null||l(g),!g.defaultPrevented&&(i.target&&i.target!=="_self"||g.metaKey||g.altKey||g.ctrlKey||g.shiftKey||(g.preventDefault(),j({params:b||{}})))}})});function Me(a){return{route:a.route,view:()=>{const{view:v,layout:s}=a;return s?d.jsx(s,{children:d.jsx(v,{})}):d.jsx(v,{})}}}const $e=a=>{const{routes:v,otherwise:s}=a;return()=>{const{activeRoutes:b}=Re(),l=b.reduce((E,m)=>E.filter(j=>j!==m.parent),b),i=v.find(E=>E.route===l.at(-1));return i?y.createElement(i.view):s?d.jsx(s,{}):null}};function Ve(a){a.route.internal.setAsyncImport(a.view);const v=y.lazy(a.view);return{route:a.route,view:()=>{const{layout:s,fallback:b=()=>d.jsx(d.Fragment,{})}=a;return s?d.jsx(s,{children:d.jsx(y.Suspense,{fallback:d.jsx(b,{}),children:d.jsx(v,{})})}):d.jsx(y.Suspense,{fallback:d.jsx(b,{}),children:d.jsx(v,{})})}}}exports.Link=Ye;exports.RouterProvider=Pe;exports.createLazyRouteView=Ve;exports.createRouteView=Me;exports.createRoutesView=$e;exports.useRouter=Re;exports.useRouterContext=F;
package/dist/index.d.ts CHANGED
@@ -16,8 +16,8 @@ declare type BaseLinkProps<Params> = {
16
16
  children?: ReactNode;
17
17
  } & AnchorProps;
18
18
 
19
- declare interface CreateBaseRouteViewProps {
20
- route: Route<any>;
19
+ declare interface CreateBaseRouteViewProps<T> {
20
+ route: Route<T>;
21
21
  layout?: ComponentType<{
22
22
  children: ReactNode;
23
23
  }>;
@@ -47,9 +47,9 @@ declare interface CreateBaseRouteViewProps {
47
47
  * });
48
48
  * ```
49
49
  */
50
- export declare const createLazyRouteView: (props: CreateLazyRouteViewProps) => RouteView;
50
+ export declare function createLazyRouteView<T>(props: CreateLazyRouteViewProps<T>): RouteView;
51
51
 
52
- export declare interface CreateLazyRouteViewProps extends CreateBaseRouteViewProps {
52
+ export declare interface CreateLazyRouteViewProps<T> extends CreateBaseRouteViewProps<T> {
53
53
  view: () => Promise<{
54
54
  default: ComponentType;
55
55
  }>;
@@ -107,9 +107,9 @@ declare interface CreateRoutesViewProps {
107
107
  * });
108
108
  * ```
109
109
  */
110
- export declare const createRouteView: (props: CreateRouteViewProps) => RouteView;
110
+ export declare function createRouteView<T>(props: CreateRouteViewProps<T>): RouteView;
111
111
 
112
- export declare interface CreateRouteViewProps extends CreateBaseRouteViewProps {
112
+ export declare interface CreateRouteViewProps<T> extends CreateBaseRouteViewProps<T> {
113
113
  view: ComponentType;
114
114
  }
115
115
 
@@ -177,4 +177,6 @@ export declare function useRouter(): {
177
177
  onNavigate: (payload: NavigatePayload) => NavigatePayload;
178
178
  };
179
179
 
180
+ export declare function useRouterContext(): Router;
181
+
180
182
  export { }
package/dist/index.js CHANGED
@@ -15,22 +15,22 @@ function Me() {
15
15
  if (de) return C;
16
16
  de = 1;
17
17
  var a = Symbol.for("react.transitional.element"), v = Symbol.for("react.fragment");
18
- function s(b, l, i) {
18
+ function l(b, s, i) {
19
19
  var E = null;
20
- if (i !== void 0 && (E = "" + i), l.key !== void 0 && (E = "" + l.key), "key" in l) {
20
+ if (i !== void 0 && (E = "" + i), s.key !== void 0 && (E = "" + s.key), "key" in s) {
21
21
  i = {};
22
- for (var g in l)
23
- g !== "key" && (i[g] = l[g]);
24
- } else i = l;
25
- return l = i.ref, {
22
+ for (var g in s)
23
+ g !== "key" && (i[g] = s[g]);
24
+ } else i = s;
25
+ return s = i.ref, {
26
26
  $$typeof: a,
27
27
  type: b,
28
28
  key: E,
29
- ref: l !== void 0 ? l : null,
29
+ ref: s !== void 0 ? s : null,
30
30
  props: i
31
31
  };
32
32
  }
33
- return C.Fragment = v, C.jsx = s, C.jsxs = s, C;
33
+ return C.Fragment = v, C.jsx = l, C.jsxs = l, C;
34
34
  }
35
35
  var A = {};
36
36
  /**
@@ -89,7 +89,7 @@ function $e() {
89
89
  function v(e) {
90
90
  return "" + e;
91
91
  }
92
- function s(e) {
92
+ function l(e) {
93
93
  try {
94
94
  v(e);
95
95
  var r = !1;
@@ -108,7 +108,7 @@ function $e() {
108
108
  }
109
109
  function b() {
110
110
  }
111
- function l() {
111
+ function s() {
112
112
  if (p === 0) {
113
113
  D = console.log, ee = console.info, re = console.warn, te = console.error, oe = console.group, ne = console.groupCollapsed, ae = console.groupEnd;
114
114
  var e = {
@@ -164,7 +164,7 @@ function $e() {
164
164
  if (t !== void 0) return t;
165
165
  J = !0, t = Error.prepareStackTrace, Error.prepareStackTrace = void 0;
166
166
  var n = null;
167
- n = j.H, j.H = null, l();
167
+ n = j.H, j.H = null, s();
168
168
  try {
169
169
  var c = {
170
170
  DetermineComponentFrameRoot: function() {
@@ -299,7 +299,7 @@ function $e() {
299
299
  }
300
300
  function we(e, r) {
301
301
  function t() {
302
- se || (se = !0, console.error(
302
+ le || (le = !0, console.error(
303
303
  "%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
304
304
  r
305
305
  ));
@@ -311,7 +311,7 @@ function $e() {
311
311
  }
312
312
  function Re() {
313
313
  var e = a(this.type);
314
- return le[e] || (le[e] = !0, console.error(
314
+ return se[e] || (se[e] = !0, console.error(
315
315
  "Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
316
316
  )), e = this.props.ref, e !== void 0 ? e : null;
317
317
  }
@@ -375,7 +375,7 @@ React keys must be passed directly to JSX without using spread:
375
375
  o
376
376
  ), ie[o + n] = !0);
377
377
  }
378
- if (o = null, t !== void 0 && (s(t), o = "" + t), xe(r) && (s(r.key), o = "" + r.key), "key" in r) {
378
+ if (o = null, t !== void 0 && (l(t), o = "" + t), xe(r) && (l(r.key), o = "" + r.key), "key" in r) {
379
379
  t = {};
380
380
  for (var T in r)
381
381
  T !== "key" && (t[T] = r[T]);
@@ -428,7 +428,7 @@ Check the top-level render call using <` + e + ">."), r;
428
428
  }
429
429
  var _e = Ae, P = Symbol.for("react.transitional.element"), he = Symbol.for("react.portal"), Y = Symbol.for("react.fragment"), X = Symbol.for("react.strict_mode"), B = Symbol.for("react.profiler"), K = Symbol.for("react.consumer"), I = Symbol.for("react.context"), M = Symbol.for("react.forward_ref"), $ = Symbol.for("react.suspense"), W = Symbol.for("react.suspense_list"), U = Symbol.for("react.memo"), V = Symbol.for("react.lazy"), Te = Symbol.for("react.offscreen"), Z = Symbol.iterator, pe = Symbol.for("react.client.reference"), j = _e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, Q = Object.prototype.hasOwnProperty, _ = Object.assign, ke = Symbol.for("react.client.reference"), z = Array.isArray, p = 0, D, ee, re, te, oe, ne, ae;
430
430
  b.__reactDisabledLog = !0;
431
- var q, ue, J = !1, G = new (typeof WeakMap == "function" ? WeakMap : Map)(), Ce = Symbol.for("react.client.reference"), se, le = {}, ie = {}, ce = {};
431
+ var q, ue, J = !1, G = new (typeof WeakMap == "function" ? WeakMap : Map)(), Ce = Symbol.for("react.client.reference"), le, se = {}, ie = {}, ce = {};
432
432
  A.Fragment = Y, A.jsx = function(e, r, t, n, c) {
433
433
  return L(e, r, t, !1, n, c);
434
434
  }, A.jsxs = function(e, r, t, n, c) {
@@ -454,10 +454,10 @@ function Ue() {
454
454
  return be(ge());
455
455
  }
456
456
  const Je = Ne((a, v) => {
457
- const { to: s, params: b, onClick: l, ...i } = a, { mappedRoutes: E } = ge(), g = E.find(({ route: m }) => m === s), { onOpen: y } = be(s);
457
+ const { to: l, params: b, onClick: s, ...i } = a, { mappedRoutes: E } = ge(), g = E.find(({ route: m }) => m === l), { onOpen: y } = be(l);
458
458
  if (!g)
459
459
  throw new Error(
460
- `[Link] Route with path "${s.path}" not found. Maybe it is not passed into createRouter?`
460
+ `[Link] Route with path "${l.path}" not found. Maybe it is not passed into createRouter?`
461
461
  );
462
462
  return /* @__PURE__ */ d.jsx(
463
463
  "a",
@@ -466,40 +466,46 @@ const Je = Ne((a, v) => {
466
466
  ref: v,
467
467
  href: g.build(b ?? void 0),
468
468
  onClick: (m) => {
469
- l == null || l(m), !m.defaultPrevented && (i.target && i.target !== "_self" || m.metaKey || m.altKey || m.ctrlKey || m.shiftKey || (m.preventDefault(), y({ params: b || {} })));
469
+ s == null || s(m), !m.defaultPrevented && (i.target && i.target !== "_self" || m.metaKey || m.altKey || m.ctrlKey || m.shiftKey || (m.preventDefault(), y({ params: b || {} })));
470
470
  }
471
471
  }
472
472
  );
473
- }), Ge = (a) => ({
474
- route: a.route,
475
- view: () => {
476
- const { view: v, layout: s } = a;
477
- return s ? /* @__PURE__ */ d.jsx(s, { children: /* @__PURE__ */ d.jsx(v, {}) }) : /* @__PURE__ */ d.jsx(v, {});
478
- }
479
- }), Le = (a) => {
480
- const { routes: v, otherwise: s } = a;
473
+ });
474
+ function Ge(a) {
475
+ return {
476
+ route: a.route,
477
+ view: () => {
478
+ const { view: v, layout: l } = a;
479
+ return l ? /* @__PURE__ */ d.jsx(l, { children: /* @__PURE__ */ d.jsx(v, {}) }) : /* @__PURE__ */ d.jsx(v, {});
480
+ }
481
+ };
482
+ }
483
+ const Le = (a) => {
484
+ const { routes: v, otherwise: l } = a;
481
485
  return () => {
482
- const { activeRoutes: b } = Ue(), l = b.reduce((E, g) => E.filter((y) => y !== g.parent), b), i = v.find(
483
- (E) => E.route === l.at(-1)
486
+ const { activeRoutes: b } = Ue(), s = b.reduce((E, g) => E.filter((y) => y !== g.parent), b), i = v.find(
487
+ (E) => E.route === s.at(-1)
484
488
  );
485
- return i ? Pe(i.view) : s ? /* @__PURE__ */ d.jsx(s, {}) : null;
489
+ return i ? Pe(i.view) : l ? /* @__PURE__ */ d.jsx(l, {}) : null;
486
490
  };
487
- }, Fe = (a) => {
491
+ };
492
+ function Fe(a) {
488
493
  a.route.internal.setAsyncImport(a.view);
489
494
  const v = Ye(a.view);
490
495
  return {
491
496
  route: a.route,
492
497
  view: () => {
493
- const { layout: s, fallback: b = () => /* @__PURE__ */ d.jsx(d.Fragment, {}) } = a;
494
- return s ? /* @__PURE__ */ d.jsx(s, { children: /* @__PURE__ */ d.jsx(fe, { fallback: /* @__PURE__ */ d.jsx(b, {}), children: /* @__PURE__ */ d.jsx(v, {}) }) }) : /* @__PURE__ */ d.jsx(fe, { fallback: /* @__PURE__ */ d.jsx(b, {}), children: /* @__PURE__ */ d.jsx(v, {}) });
498
+ const { layout: l, fallback: b = () => /* @__PURE__ */ d.jsx(d.Fragment, {}) } = a;
499
+ return l ? /* @__PURE__ */ d.jsx(l, { children: /* @__PURE__ */ d.jsx(fe, { fallback: /* @__PURE__ */ d.jsx(b, {}), children: /* @__PURE__ */ d.jsx(v, {}) }) }) : /* @__PURE__ */ d.jsx(fe, { fallback: /* @__PURE__ */ d.jsx(b, {}), children: /* @__PURE__ */ d.jsx(v, {}) });
495
500
  }
496
501
  };
497
- };
502
+ }
498
503
  export {
499
504
  Je as Link,
500
505
  qe as RouterProvider,
501
506
  Fe as createLazyRouteView,
502
507
  Ge as createRouteView,
503
508
  Le as createRoutesView,
504
- Ue as useRouter
509
+ Ue as useRouter,
510
+ ge as useRouterContext
505
511
  };
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "registry": "https://registry.npmjs.org/"
6
6
  },
7
7
  "private": false,
8
- "version": "0.7.0",
8
+ "version": "0.8.1",
9
9
  "description": "React bindings for argon router",
10
10
  "keywords": [
11
11
  "effector",
@@ -44,7 +44,7 @@
44
44
  "url": "https://github.com/movpushmov/argon-router/issues"
45
45
  },
46
46
  "dependencies": {
47
- "@argon-router/core": "^0.7.0"
47
+ "@argon-router/core": "^0.8.0"
48
48
  },
49
49
  "devDependencies": {
50
50
  "@babel/preset-react": "^7.26.3",
@@ -59,5 +59,5 @@
59
59
  "effector-react": ">=23",
60
60
  "react": "18 || 19"
61
61
  },
62
- "gitHead": "c91bd532af8b7bc5fc77a30db15c70e55c3516d8"
62
+ "gitHead": "027a8258dd08c6fe7394b9512f98f833a15b68bf"
63
63
  }