@shuvi/router-react 1.0.55 → 1.0.56
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/esm/contexts.d.ts +3 -3
- package/esm/hooks.d.ts +3 -3
- package/esm/types.d.ts +2 -3
- package/lib/Link.js +25 -2
- package/lib/MemoryRouter.js +26 -4
- package/lib/Router.js +30 -5
- package/lib/RouterView.js +25 -3
- package/lib/contexts.d.ts +3 -3
- package/lib/contexts.js +24 -1
- package/lib/hooks.d.ts +3 -3
- package/lib/hooks.js +38 -13
- package/lib/types.d.ts +2 -3
- package/lib/utils.js +5 -5
- package/package.json +8 -8
package/esm/contexts.d.ts
CHANGED
|
@@ -6,8 +6,8 @@ export declare const RouteContext: React.Context<IRoute<{
|
|
|
6
6
|
path: string;
|
|
7
7
|
component?: any;
|
|
8
8
|
children?: any[] | undefined;
|
|
9
|
-
props?: import("@shuvi/router").IRouteComponentProps
|
|
10
|
-
redirect?: string
|
|
11
|
-
caseSensitive?: boolean
|
|
9
|
+
props?: import("@shuvi/router").IRouteComponentProps;
|
|
10
|
+
redirect?: string;
|
|
11
|
+
caseSensitive?: boolean;
|
|
12
12
|
}>>;
|
|
13
13
|
export declare const MatchedRouteContext: React.Context<IRouteContextObject<{}>>;
|
package/esm/hooks.d.ts
CHANGED
|
@@ -7,9 +7,9 @@ export declare function useCurrentRoute(): import("@shuvi/router").IRoute<{
|
|
|
7
7
|
path: string;
|
|
8
8
|
component?: any;
|
|
9
9
|
children?: any[] | undefined;
|
|
10
|
-
props?: import("@shuvi/router").IRouteComponentProps
|
|
11
|
-
redirect?: string
|
|
12
|
-
caseSensitive?: boolean
|
|
10
|
+
props?: import("@shuvi/router").IRouteComponentProps;
|
|
11
|
+
redirect?: string;
|
|
12
|
+
caseSensitive?: boolean;
|
|
13
13
|
}>;
|
|
14
14
|
/**
|
|
15
15
|
* Blocks all navigation attempts. This is useful for preventing the page from
|
package/esm/types.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import { IParams, InitialEntry, State, PathRecord, IRouteRecord as IOriginalRouteRecord, IRouter } from '@shuvi/router';
|
|
3
|
-
export
|
|
4
|
-
export
|
|
2
|
+
export type IReactRouteRecord<T = {}> = IOriginalRouteRecord<React.ReactNode, T>;
|
|
3
|
+
export type IReactPartialRouteRecord = Partial<IReactRouteRecord>;
|
|
5
4
|
export interface IRouterContextObject {
|
|
6
5
|
static: boolean;
|
|
7
6
|
router: IRouter;
|
package/lib/Link.js
CHANGED
|
@@ -1,4 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
26
|
var t = {};
|
|
4
27
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
@@ -12,8 +35,8 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
12
35
|
};
|
|
13
36
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
37
|
exports.Link = void 0;
|
|
15
|
-
const React = require("react");
|
|
16
|
-
const PropTypes = require("prop-types");
|
|
38
|
+
const React = __importStar(require("react"));
|
|
39
|
+
const PropTypes = __importStar(require("prop-types"));
|
|
17
40
|
const _1 = require(".");
|
|
18
41
|
const router_1 = require("@shuvi/router");
|
|
19
42
|
const constants_1 = require("./constants");
|
package/lib/MemoryRouter.js
CHANGED
|
@@ -1,8 +1,31 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MemoryRouter =
|
|
4
|
-
const React = require("react");
|
|
5
|
-
const PropTypes = require("prop-types");
|
|
26
|
+
exports.MemoryRouter = MemoryRouter;
|
|
27
|
+
const React = __importStar(require("react"));
|
|
28
|
+
const PropTypes = __importStar(require("prop-types"));
|
|
6
29
|
const router_1 = require("@shuvi/router");
|
|
7
30
|
const Router_1 = require("./Router");
|
|
8
31
|
const constants_1 = require("./constants");
|
|
@@ -19,7 +42,6 @@ function MemoryRouter({ basename, children, routes, initialEntries, initialIndex
|
|
|
19
42
|
}
|
|
20
43
|
return React.createElement(Router_1.Router, { children: children, router: routerRef.current });
|
|
21
44
|
}
|
|
22
|
-
exports.MemoryRouter = MemoryRouter;
|
|
23
45
|
if (constants_1.__DEV__) {
|
|
24
46
|
MemoryRouter.displayName = 'MemoryRouter';
|
|
25
47
|
MemoryRouter.propTypes = {
|
package/lib/Router.js
CHANGED
|
@@ -1,9 +1,35 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
2
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Router =
|
|
4
|
-
const React = require("react");
|
|
5
|
-
const PropTypes = require("prop-types");
|
|
6
|
-
const invariant_1 = require("@shuvi/utils/invariant");
|
|
29
|
+
exports.Router = Router;
|
|
30
|
+
const React = __importStar(require("react"));
|
|
31
|
+
const PropTypes = __importStar(require("prop-types"));
|
|
32
|
+
const invariant_1 = __importDefault(require("@shuvi/utils/invariant"));
|
|
7
33
|
const shim_1 = require("use-sync-external-store/shim");
|
|
8
34
|
const contexts_1 = require("./contexts");
|
|
9
35
|
const hooks_1 = require("./hooks");
|
|
@@ -32,7 +58,6 @@ function Router({ children = null, static: staticProp = false, router }) {
|
|
|
32
58
|
return (React.createElement(contexts_1.RouterContext.Provider, { value: contextVal },
|
|
33
59
|
React.createElement(contexts_1.RouteContext.Provider, { children: children, value: current })));
|
|
34
60
|
}
|
|
35
|
-
exports.Router = Router;
|
|
36
61
|
if (constants_1.__DEV__) {
|
|
37
62
|
Router.displayName = 'Router';
|
|
38
63
|
Router.propTypes = {
|
package/lib/RouterView.js
CHANGED
|
@@ -1,7 +1,30 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RouterView =
|
|
4
|
-
const React = require("react");
|
|
26
|
+
exports.RouterView = RouterView;
|
|
27
|
+
const React = __importStar(require("react"));
|
|
5
28
|
const router_1 = require("@shuvi/router");
|
|
6
29
|
const hooks_1 = require("./hooks");
|
|
7
30
|
const constants_1 = require("./constants");
|
|
@@ -38,7 +61,6 @@ function RouterView() {
|
|
|
38
61
|
}
|
|
39
62
|
return (React.createElement(MatchedRoute, { match: matched, depth: depth, parentPathname: parentPathname, parentParams: parentParams }));
|
|
40
63
|
}
|
|
41
|
-
exports.RouterView = RouterView;
|
|
42
64
|
if (constants_1.__DEV__) {
|
|
43
65
|
RouterView.displayName = 'RouterView';
|
|
44
66
|
}
|
package/lib/contexts.d.ts
CHANGED
|
@@ -6,8 +6,8 @@ export declare const RouteContext: React.Context<IRoute<{
|
|
|
6
6
|
path: string;
|
|
7
7
|
component?: any;
|
|
8
8
|
children?: any[] | undefined;
|
|
9
|
-
props?: import("@shuvi/router").IRouteComponentProps
|
|
10
|
-
redirect?: string
|
|
11
|
-
caseSensitive?: boolean
|
|
9
|
+
props?: import("@shuvi/router").IRouteComponentProps;
|
|
10
|
+
redirect?: string;
|
|
11
|
+
caseSensitive?: boolean;
|
|
12
12
|
}>>;
|
|
13
13
|
export declare const MatchedRouteContext: React.Context<IRouteContextObject<{}>>;
|
package/lib/contexts.js
CHANGED
|
@@ -1,7 +1,30 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
26
|
exports.MatchedRouteContext = exports.RouteContext = exports.RouterContext = void 0;
|
|
4
|
-
const React = require("react");
|
|
27
|
+
const React = __importStar(require("react"));
|
|
5
28
|
const utils_1 = require("./utils");
|
|
6
29
|
const constants_1 = require("./constants");
|
|
7
30
|
exports.RouterContext = React.createContext(null);
|
package/lib/hooks.d.ts
CHANGED
|
@@ -7,9 +7,9 @@ export declare function useCurrentRoute(): import("@shuvi/router").IRoute<{
|
|
|
7
7
|
path: string;
|
|
8
8
|
component?: any;
|
|
9
9
|
children?: any[] | undefined;
|
|
10
|
-
props?: import("@shuvi/router").IRouteComponentProps
|
|
11
|
-
redirect?: string
|
|
12
|
-
caseSensitive?: boolean
|
|
10
|
+
props?: import("@shuvi/router").IRouteComponentProps;
|
|
11
|
+
redirect?: string;
|
|
12
|
+
caseSensitive?: boolean;
|
|
13
13
|
}>;
|
|
14
14
|
/**
|
|
15
15
|
* Blocks all navigation attempts. This is useful for preventing the page from
|
package/lib/hooks.js
CHANGED
|
@@ -1,10 +1,45 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
2
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
|
|
29
|
+
exports.useCurrentRoute = useCurrentRoute;
|
|
30
|
+
exports.useBlocker = useBlocker;
|
|
31
|
+
exports.useHref = useHref;
|
|
32
|
+
exports.useInRouterContext = useInRouterContext;
|
|
33
|
+
exports.useMatch = useMatch;
|
|
34
|
+
exports.useNavigate = useNavigate;
|
|
35
|
+
exports.useParams = useParams;
|
|
36
|
+
exports.useResolvedPath = useResolvedPath;
|
|
37
|
+
exports.useRouter = useRouter;
|
|
38
|
+
exports.useMatchedRoute = useMatchedRoute;
|
|
39
|
+
const React = __importStar(require("react"));
|
|
5
40
|
const react_1 = require("react");
|
|
6
41
|
const router_1 = require("@shuvi/router");
|
|
7
|
-
const invariant_1 = require("@shuvi/utils/invariant");
|
|
42
|
+
const invariant_1 = __importDefault(require("@shuvi/utils/invariant"));
|
|
8
43
|
const contexts_1 = require("./contexts");
|
|
9
44
|
const utils_1 = require("./utils");
|
|
10
45
|
/**
|
|
@@ -13,7 +48,6 @@ const utils_1 = require("./utils");
|
|
|
13
48
|
function useCurrentRoute() {
|
|
14
49
|
return (0, react_1.useContext)(contexts_1.RouteContext);
|
|
15
50
|
}
|
|
16
|
-
exports.useCurrentRoute = useCurrentRoute;
|
|
17
51
|
/**
|
|
18
52
|
* Blocks all navigation attempts. This is useful for preventing the page from
|
|
19
53
|
* changing until some condition is met, like saving form data.
|
|
@@ -37,7 +71,6 @@ function useBlocker(blocker, when = true) {
|
|
|
37
71
|
return unblock;
|
|
38
72
|
}, [router, blocker, when]);
|
|
39
73
|
}
|
|
40
|
-
exports.useBlocker = useBlocker;
|
|
41
74
|
/**
|
|
42
75
|
* Returns the full href for the given "to" value. This is useful for building
|
|
43
76
|
* custom links that are also accessible and preserve right-click behavior.
|
|
@@ -48,14 +81,12 @@ function useHref(to) {
|
|
|
48
81
|
const path = useResolvedPath(to);
|
|
49
82
|
return router.resolve(path).href;
|
|
50
83
|
}
|
|
51
|
-
exports.useHref = useHref;
|
|
52
84
|
/**
|
|
53
85
|
* Returns true if this component is a descendant of a <Router>.
|
|
54
86
|
*/
|
|
55
87
|
function useInRouterContext() {
|
|
56
88
|
return (0, react_1.useContext)(contexts_1.RouterContext) != null;
|
|
57
89
|
}
|
|
58
|
-
exports.useInRouterContext = useInRouterContext;
|
|
59
90
|
/**
|
|
60
91
|
* Returns true if the URL for the given "to" value matches the current URL.
|
|
61
92
|
* This is useful for components that need to know "active" state, e.g.
|
|
@@ -66,7 +97,6 @@ function useMatch(pattern) {
|
|
|
66
97
|
const { pathname } = useCurrentRoute();
|
|
67
98
|
return (0, router_1.matchPathname)(pattern, pathname);
|
|
68
99
|
}
|
|
69
|
-
exports.useMatch = useMatch;
|
|
70
100
|
/**
|
|
71
101
|
* Returns an imperative method for changing the location. Used by <Link>s, but
|
|
72
102
|
* may also be used by other elements to change the location.
|
|
@@ -96,7 +126,6 @@ function useNavigate() {
|
|
|
96
126
|
}, [router, pathname]);
|
|
97
127
|
return navigate;
|
|
98
128
|
}
|
|
99
|
-
exports.useNavigate = useNavigate;
|
|
100
129
|
/**
|
|
101
130
|
* Returns an object of key/value pairs of the dynamic params from the current
|
|
102
131
|
* URL that were matched by the route path.
|
|
@@ -104,7 +133,6 @@ exports.useNavigate = useNavigate;
|
|
|
104
133
|
function useParams() {
|
|
105
134
|
return (0, react_1.useContext)(contexts_1.RouteContext).params;
|
|
106
135
|
}
|
|
107
|
-
exports.useParams = useParams;
|
|
108
136
|
/**
|
|
109
137
|
* Resolves the pathname of the given `to` value against the current location.
|
|
110
138
|
*/
|
|
@@ -113,7 +141,6 @@ function useResolvedPath(to) {
|
|
|
113
141
|
const { pathname } = (0, react_1.useContext)(contexts_1.MatchedRouteContext);
|
|
114
142
|
return React.useMemo(() => router.resolve(to, pathname).path, [to, pathname]);
|
|
115
143
|
}
|
|
116
|
-
exports.useResolvedPath = useResolvedPath;
|
|
117
144
|
/**
|
|
118
145
|
* Returns the current router object
|
|
119
146
|
* two parts, one is router behavior(browser history mode, hash history mode), another is router content
|
|
@@ -122,8 +149,6 @@ function useRouter() {
|
|
|
122
149
|
(0, invariant_1.default)(useInRouterContext(), `useRouter() may be used only in the context of a <Router> component.`);
|
|
123
150
|
return (0, react_1.useContext)(contexts_1.RouterContext).router;
|
|
124
151
|
}
|
|
125
|
-
exports.useRouter = useRouter;
|
|
126
152
|
function useMatchedRoute() {
|
|
127
153
|
return (0, react_1.useContext)(contexts_1.MatchedRouteContext);
|
|
128
154
|
}
|
|
129
|
-
exports.useMatchedRoute = useMatchedRoute;
|
package/lib/types.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import { IParams, InitialEntry, State, PathRecord, IRouteRecord as IOriginalRouteRecord, IRouter } from '@shuvi/router';
|
|
3
|
-
export
|
|
4
|
-
export
|
|
2
|
+
export type IReactRouteRecord<T = {}> = IOriginalRouteRecord<React.ReactNode, T>;
|
|
3
|
+
export type IReactPartialRouteRecord = Partial<IReactRouteRecord>;
|
|
5
4
|
export interface IRouterContextObject {
|
|
6
5
|
static: boolean;
|
|
7
6
|
router: IRouter;
|
package/lib/utils.js
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.readOnly = void 0;
|
|
4
|
+
exports.useIsomorphicEffect = useIsomorphicEffect;
|
|
5
|
+
exports.warning = warning;
|
|
6
|
+
exports.warningOnce = warningOnce;
|
|
7
|
+
exports.generatePath = generatePath;
|
|
4
8
|
const router_1 = require("@shuvi/router");
|
|
5
9
|
const react_1 = require("react");
|
|
6
10
|
const constants_1 = require("./constants");
|
|
@@ -12,7 +16,6 @@ function useIsomorphicEffect(cb, deps) {
|
|
|
12
16
|
(0, react_1.useEffect)(cb, deps);
|
|
13
17
|
}
|
|
14
18
|
}
|
|
15
|
-
exports.useIsomorphicEffect = useIsomorphicEffect;
|
|
16
19
|
exports.readOnly = constants_1.__DEV__
|
|
17
20
|
? obj => Object.freeze(obj)
|
|
18
21
|
: obj => obj;
|
|
@@ -31,7 +34,6 @@ function warning(cond, message) {
|
|
|
31
34
|
catch (e) { }
|
|
32
35
|
}
|
|
33
36
|
}
|
|
34
|
-
exports.warning = warning;
|
|
35
37
|
const alreadyWarned = {};
|
|
36
38
|
function warningOnce(key, cond, message) {
|
|
37
39
|
if (!cond && !alreadyWarned[key]) {
|
|
@@ -39,11 +41,9 @@ function warningOnce(key, cond, message) {
|
|
|
39
41
|
warning(false, message);
|
|
40
42
|
}
|
|
41
43
|
}
|
|
42
|
-
exports.warningOnce = warningOnce;
|
|
43
44
|
/**
|
|
44
45
|
* Returns a path with params interpolated.
|
|
45
46
|
*/
|
|
46
47
|
function generatePath(path, params = {}) {
|
|
47
48
|
return (0, router_1.matchStringify)(path, params);
|
|
48
49
|
}
|
|
49
|
-
exports.generatePath = generatePath;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shuvi/router-react",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.56",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/shuvijs/shuvi.git",
|
|
@@ -17,20 +17,20 @@
|
|
|
17
17
|
],
|
|
18
18
|
"scripts": {
|
|
19
19
|
"dev": "run-p watch:*",
|
|
20
|
-
"watch:esm": "tsc -p tsconfig.build.json -
|
|
21
|
-
"watch:cjs": "tsc -p tsconfig.build.json -
|
|
20
|
+
"watch:esm": "tsc -p tsconfig.build.esm.json -w",
|
|
21
|
+
"watch:cjs": "tsc -p tsconfig.build.cjs.json -w",
|
|
22
22
|
"prebuild": "rimraf lib esm",
|
|
23
23
|
"build": "run-p build:*",
|
|
24
|
-
"build:esm": "tsc -p tsconfig.build.json
|
|
25
|
-
"build:cjs": "tsc -p tsconfig.build.json
|
|
24
|
+
"build:esm": "tsc -p tsconfig.build.esm.json",
|
|
25
|
+
"build:cjs": "tsc -p tsconfig.build.cjs.json"
|
|
26
26
|
},
|
|
27
27
|
"engines": {
|
|
28
28
|
"node": ">= 16.0.0"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@shuvi/router": "1.0.
|
|
32
|
-
"@shuvi/platform-shared": "1.0.
|
|
33
|
-
"@shuvi/utils": "1.0.
|
|
31
|
+
"@shuvi/router": "1.0.56",
|
|
32
|
+
"@shuvi/platform-shared": "1.0.56",
|
|
33
|
+
"@shuvi/utils": "1.0.56",
|
|
34
34
|
"prop-types": "^15.8.1",
|
|
35
35
|
"use-sync-external-store": "1.2.0"
|
|
36
36
|
},
|