You're Invited: Meet the Socket team at BSidesSF and RSAC - April 27 - May 1.RSVP
Socket
Sign inDemoInstall
Socket

react-router-guid

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-router-guid - npm Package Compare versions

Comparing version

to
1.1.7

46

dist/index.d.ts

@@ -8,19 +8,20 @@ /**

*/
import React ,{ReactNode} from 'react'
import { RouteObject } from 'react-router-dom'
interface MetaType {
[propName: string]: any;
[propName: string]: any
}
interface FunctionalImportType {
(): any;
(): any
}
type ReactCompType = JSX.Element
type ReactCompType = ReactNode
interface RoutesItemType extends RouteObject {
redirect?: string;
component?: FunctionalImportType;
meta?: MetaType;
children?: RoutesItemType[];
redirect?: string
component?: FunctionalImportType
meta?: MetaType
children?: RoutesItemType[]
}

@@ -33,28 +34,25 @@

interface OnRouteBeforeType {
(payload: {
pathname: string;
meta: MetaType;
}): OnRouteBeforeResType | Promise<OnRouteBeforeResType>;
(payload: { pathname: string; meta: MetaType }): OnRouteBeforeResType | Promise<OnRouteBeforeResType>
}
interface RouterWaiterPropsType {
routes: RoutesType;
onRouteBefore?: OnRouteBeforeType;
loading?: ReactCompType;
routes: RoutesType
onRouteBefore?: OnRouteBeforeType
loading?: ReactCompType
}
interface RouterWaiterType {
(payload: RouterWaiterPropsType): JSX.Element;
(payload: RouterWaiterPropsType): ReactNode
}
export type {
MetaType, // 路由meta字段类型
FunctionalImportType, // 懒加载函数式导入组件的类型
ReactCompType, // react组件类型
RoutesItemType, // 路由配属数组项类型
RoutesType, // 路由配置数组类型
OnRouteBeforeResType, // 路由拦截函数(实际有效使用的)返回值类型
OnRouteBeforeType, // 路由拦截函数类型
RouterWaiterPropsType, // RouterWaiter主组件props类型
RouterWaiterType, // RouterWaiter主组件类型
MetaType, // 路由meta字段类型
FunctionalImportType, // 懒加载函数式导入组件的类型
ReactCompType, // react组件类型
RoutesItemType, // 路由配属数组项类型
RoutesType, // 路由配置数组类型
OnRouteBeforeResType, // 路由拦截函数(实际有效使用的)返回值类型
OnRouteBeforeType, // 路由拦截函数类型
RouterWaiterPropsType, // RouterWaiter主组件props类型
RouterWaiterType, // RouterWaiter主组件类型
}

@@ -61,0 +59,0 @@

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

!function(){"use strict";var e={n:function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(r,{a:r}),r},d:function(t,r){for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r:function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{default:function(){return d}});var r=require("react-router-dom"),n=require("react"),o=e.n(n);var a={getDataType:function(e){return Object.prototype.toString.call(e).match(/\s(\w+)\]/)[1]}},i=null;var u=function(e){var t=e.element,n=e.meta,u=e.onRouteBefore;n=n||{};var c=(0,r.useLocation)().pathname;if((0,r.useNavigate)(),u){if(i===t)return t;var l=u({pathname:c,meta:n});"Promise"===a.getDataType(l)?l.then((function(e){if(e&&e!==c){var t=window.location.hash;t&&"#"==t[0]?window.location.replace("/#".concat(e)):window.location.replace("/".concat(e))}})):l&&l!==c&&(t=o().createElement(r.Navigate,{to:l,replace:!0}))}return i=t,t};function c(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function l(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?c(Object(r),!0).forEach((function(t){f(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):c(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function f(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function s(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var p=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.routes=t.routes||[],this.onRouteBefore=t.onRouteBefore,this.loading=t.loading||o().createElement("div",null)}var t,n,a;return t=e,n=[{key:"transformRoutes",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.routes,n=[];return t.forEach((function(t){var a=l({},t);void 0!==a.path&&(a.redirect&&(a.element=o().createElement(r.Navigate,{to:a.redirect,replace:!0})),a.component&&(a.element=e.lazyLoad(a.component,a.meta||{})),delete a.redirect,delete a.component,delete a.meta,a.children&&(a.children=e.transformRoutes(a.children)),n.push(a))})),n}},{key:"lazyLoad",value:function(e,t){var r=o().lazy(e),n=o().createElement(o().Suspense,{fallback:this.loading},o().createElement(r,{_meta:t}));return o().createElement(u,{element:n,meta:t,onRouteBefore:this.onRouteBefore})}}],n&&s(t.prototype,n),a&&s(t,a),Object.defineProperty(t,"prototype",{writable:!1}),e}();var d=function(e){var t=e.routes,n=e.onRouteBefore,o=e.loading,a=new p({routes:t,onRouteBefore:n,loading:o}).transformRoutes();return(0,r.useRoutes)(a)};exports.default=t.default,Object.defineProperty(exports,"__esModule",{value:!0})}();
!function(){"use strict";var e={n:function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(r,{a:r}),r},d:function(t,r){for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r:function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{default:function(){return d}});var r=require("react-router-dom"),n=require("react"),o=e.n(n);var a={getDataType:function(e){return Object.prototype.toString.call(e).match(/\s(\w+)\]/)[1]}},u=null;var i=function(e){var t=e.element,n=e.meta,i=e.onRouteBefore;n=n||{};var c=(0,r.useLocation)().pathname;if((0,r.useNavigate)(),i){if(u===t)return t;var l=i({pathname:c,meta:n});"Promise"===a.getDataType(l)?l.then((function(e){if(e&&e!==c){var t=window.location.hash;t&&"#"==t[0]?window.location.replace("/#".concat(e)):window.location.replace("/".concat(e))}})):l&&l!==c&&(t=o().createElement(r.Navigate,{to:l,replace:!0}))}return u=t,t};function c(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function l(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?c(Object(r),!0).forEach((function(t){f(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):c(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function f(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function s(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var p=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.routes=t.routes||[],this.onRouteBefore=t.onRouteBefore,this.loading=t.loading||o().createElement("div",null)}var t,n,a;return t=e,n=[{key:"transformRoutes",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.routes,n=[];return t.forEach((function(t){var a=l({},t);void 0!==a.path&&(a.redirect&&(a.element=o().createElement(r.Navigate,{to:a.redirect,replace:!0})),a.component&&(a.element=e.lazyLoad(a.component,a.meta||{})),a.element&&(a.element=i({element:a.element,meta:a.meta||{},onRouteBefore:e.onRouteBefore})),delete a.redirect,delete a.component,delete a.meta,a.children&&(a.children=e.transformRoutes(a.children)),n.push(a))})),n}},{key:"lazyLoad",value:function(e,t){var r=o().lazy(e),n=o().createElement(o().Suspense,{fallback:this.loading},o().createElement(r,{_meta:t}));return i({element:n,meta:t||{},onRouteBefore:this.onRouteBefore})}}],n&&s(t.prototype,n),a&&s(t,a),Object.defineProperty(t,"prototype",{writable:!1}),e}();var d=function(e){var t=e.routes,n=e.onRouteBefore,o=e.loading,a=new p({routes:t,onRouteBefore:n,loading:o}).transformRoutes();return(0,r.useRoutes)(a)};exports.default=t.default,Object.defineProperty(exports,"__esModule",{value:!0})}();
{
"name": "react-router-guid",
"version": "1.1.6",
"version": "1.1.7",
"description": "react-router v6 路由统一管理及路由拦截方案",

@@ -5,0 +5,0 @@ "author": "neohan",

@@ -8,19 +8,20 @@ /**

*/
import React ,{ReactNode} from 'react'
import { RouteObject } from 'react-router-dom'
interface MetaType {
[propName: string]: any;
[propName: string]: any
}
interface FunctionalImportType {
(): any;
(): any
}
type ReactCompType = JSX.Element
type ReactCompType = ReactNode
interface RoutesItemType extends RouteObject {
redirect?: string;
component?: FunctionalImportType;
meta?: MetaType;
children?: RoutesItemType[];
redirect?: string
component?: FunctionalImportType
meta?: MetaType
children?: RoutesItemType[]
}

@@ -33,28 +34,25 @@

interface OnRouteBeforeType {
(payload: {
pathname: string;
meta: MetaType;
}): OnRouteBeforeResType | Promise<OnRouteBeforeResType>;
(payload: { pathname: string; meta: MetaType }): OnRouteBeforeResType | Promise<OnRouteBeforeResType>
}
interface RouterWaiterPropsType {
routes: RoutesType;
onRouteBefore?: OnRouteBeforeType;
loading?: ReactCompType;
routes: RoutesType
onRouteBefore?: OnRouteBeforeType
loading?: ReactCompType
}
interface RouterWaiterType {
(payload: RouterWaiterPropsType): JSX.Element;
(payload: RouterWaiterPropsType): ReactNode
}
export type {
MetaType, // 路由meta字段类型
FunctionalImportType, // 懒加载函数式导入组件的类型
ReactCompType, // react组件类型
RoutesItemType, // 路由配属数组项类型
RoutesType, // 路由配置数组类型
OnRouteBeforeResType, // 路由拦截函数(实际有效使用的)返回值类型
OnRouteBeforeType, // 路由拦截函数类型
RouterWaiterPropsType, // RouterWaiter主组件props类型
RouterWaiterType, // RouterWaiter主组件类型
MetaType, // 路由meta字段类型
FunctionalImportType, // 懒加载函数式导入组件的类型
ReactCompType, // react组件类型
RoutesItemType, // 路由配属数组项类型
RoutesType, // 路由配置数组类型
OnRouteBeforeResType, // 路由拦截函数(实际有效使用的)返回值类型
OnRouteBeforeType, // 路由拦截函数类型
RouterWaiterPropsType, // RouterWaiter主组件props类型
RouterWaiterType, // RouterWaiter主组件类型
}

@@ -61,0 +59,0 @@

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet